數位電子學 - 移位暫存器



觸發器是一個1位儲存單元,可用於儲存數字資料。為了增加儲存容量(以位數表示),我們必須使用一組觸發器。這樣一組觸發器稱為暫存器n位暫存器將包含n個觸發器,並且能夠儲存n位字。

暫存器中的二進位制資料可以在暫存器內從一個觸發器移動到另一個觸發器。允許這種資料傳輸的暫存器稱為移位暫存器。移位暫存器有四種工作模式。

  • 序列輸入-序列輸出(SISO)移位暫存器
  • 序列輸入-並行輸出(SIPO)移位暫存器
  • 並行輸入-序列輸出(PISO)移位暫存器
  • 並行輸入-並行輸出(PIPO)移位暫存器

序列輸入-序列輸出(SISO)移位暫存器

假設所有觸發器最初都處於復位狀態,即Q3 = Q2 = Q1 = Q0 = 0。如果將一個四位二進位制數1 1 1 1輸入暫存器,則應將此數應用於Din位,最低有效位先應用。FF-3的D輸入即D3連線到序列資料輸入Din。FF-3的輸出即Q3連線到下一個觸發器的輸入即D2,依此類推。

框圖

Block Diagram of SISO Register

操作

在應用時鐘訊號之前,令Q3 Q2 Q1 Q0 = 0000,並將要輸入的數的最低有效位應用於Din。所以Din = D3 = 1。應用時鐘。在時鐘的第一個下降沿,FF-3被置位,暫存器中儲存的字為Q3 Q2 Q1 Q0 = 1000。

SISO Operation step 1

將下一位應用於Din。所以Din = 1。當下一個時鐘下降沿到來時,FF-2將被置位,儲存的字將變為Q3 Q2 Q1 Q0 = 1100。

SISO Operation step 2

將要儲存的下一位即1應用於Din。應用時鐘脈衝。當第三個時鐘下降沿到來時,FF-1將被置位,輸出將修改為Q3 Q2 Q1 Q0 = 1110。

SISO Operation step 3

類似地,當Din = 1且第四個時鐘下降沿到來時,暫存器中儲存的字為Q3 Q2 Q1 Q0 = 1111。

SISO Operation step 4

真值表

Truth Table of SISO Register

波形

Waveform of SISO Register

序列輸入-並行輸出(SIPO)移位暫存器

  • 在這種型別的操作中,資料以序列方式輸入並以並行方式輸出。
  • 資料逐位載入。在資料載入期間,輸出被停用。
  • 一旦資料載入完成,所有觸發器都包含它們所需的資料,輸出被使能,以便所有載入的資料同時在所有輸出線上可用。
  • 載入一個四位字需要4個時鐘週期。因此,SIPO模式的操作速度與SISO模式相同。

框圖

Block Diagram of SIPO Register

並行輸入-序列輸出(PISO)移位暫存器

  • 資料位以並行方式輸入。
  • 下面所示的電路是一個四位並行輸入序列輸出暫存器。
  • 前一個觸發器的輸出透過組合電路連線到下一個觸發器的輸入。
  • 二進位制輸入字B0、B1、B2、B3透過相同的組合電路應用。
  • 此電路可以工作在兩種模式下,即移位模式或載入模式。

載入模式

當移位/載入禁止線為低電平(0)時,與門2、4和6被使能,它們將B1、B2、B3位傳遞到相應的觸發器。在時鐘的下降沿,二進位制輸入B0、B1、B2、B3將被載入到相應的觸發器中。因此,發生並行載入。

移位模式

當移位/載入禁止線為高電平(1)時,與門2、4和6被停用。因此,資料並行載入變得不可能。但是,與門1、3和5被使能。因此,在應用時鐘脈衝時,資料逐位從左到右移動。因此,發生並行輸入序列輸出操作。

框圖

Block Diagram of PISO Register

並行輸入-並行輸出(PIPO)移位暫存器

在這種模式下,四位二進位制輸入B0、B1、B2、B3分別應用於四個觸發器的D0、D1、D2、D3資料輸入。一旦應用時鐘下降沿,輸入二進位制位將同時載入到觸發器中。載入的位將同時出現在輸出端。載入所有位只需要時鐘脈衝。

框圖

Block Diagram of PIPO Register

雙向移位暫存器

  • 如果一個二進位制數左移一位,則相當於將原始數乘以2。類似地,如果一個二進位制數右移一位,則相當於將原始數除以2。
  • 因此,如果我們想使用移位暫存器來乘除給定的二進位制數,那麼我們應該能夠向左或向右移動資料。
  • 這樣的暫存器稱為雙向暫存器。一個四位雙向移位暫存器如圖所示。
  • 有兩個序列輸入,即序列右移資料輸入DR和序列左移資料輸入DL,以及一個模式選擇輸入(M)。

框圖

Block Diagram of Bidirectional Shift Register

操作

序號 條件 操作
1 當M = 1 - 右移操作

如果M = 1,則與門1、3、5和7被使能,而其餘與門2、4、6和8被停用。

在應用時鐘脈衝時,DR處的資料從FF-3到FF-0逐位右移。因此,當M = 1時,我們得到序列右移操作。

2 當M = 0 - 左移操作

當模式控制M連線到0時,與門2、4、6和8被使能,而1、3、5和7被停用。

在應用時鐘脈衝時,DL處的資料從FF-0到FF-3逐位左移。因此,當M = 0時,我們得到序列右移操作。

通用移位暫存器

只能沿一個方向移位資料的移位暫存器稱為單向移位暫存器。可以沿兩個方向移位資料的移位暫存器稱為雙向移位暫存器。應用相同的邏輯,一個既可以沿兩個方向移位資料又可以並行載入資料的移位暫存器稱為通用移位暫存器。移位暫存器能夠執行以下操作:

  • 並行載入
  • 左移

  • 右移

模式控制輸入連線到邏輯1用於並行載入操作,而連線到0用於序列移位。當模式控制引腳連線到地時,通用移位暫存器充當雙向暫存器。對於序列左移操作,輸入應用於序列輸入,該輸入進入圖中所示的與門1。而對於右移操作,序列輸入應用於D輸入。

框圖

Block Diagram of Universal Shift Register
廣告