移位寄存器是指寄存器中所存的代碼能夠在移位脈沖的作用下依次左移或右移。74LS194是一個4位雙向移位寄存器,最高時鐘脈沖為36MHZ
74LS194引腳功能
圖1 74 LS194邏輯符號及引腳排列
其中:D0~D1為并行輸入端;Q0~Q3為并行輸出端;SR--右移串引輸入端;SL--左移串引輸入端;S1、S0-操作模式控制端; -為直接無條件清零端;CP-為時鐘脈沖輸入端。
74LS194功能特征
根據上面的描述,需要重點考慮的是置位、左移、右移、保持功能(異步清零不受時鐘控制),一個時刻只能執行一個功能,需要一個4選1的選擇器,確定執行什么功能。其電路圖下圖1所示(具體的功能可自行分析):
其中,S1和S0是控制端,對應的功能描述如下圖2所示:
74ls194串行數據到并行數據的轉換
用194可以做很多事情,如典型的環形移位器、扭環形移位器,其邏輯圖如下圖4所示:
如果把圖4中的QA的輸出變為非,則為扭環形移位器。當然,也可以利用194完成串行數據到并行數據的轉換(這種轉換的本質是:輸入數據一位一位讀取,而輸出數據則一次讀取),如下圖5所示:
分析圖5,由于S0值始終為1,S1S0有兩種取值,一種為11,一種為01,當為11時,做置位操作,當為01時,做右移操作,具體分析如下(假設RxD的數據為A7A6A5A4A3AA2A1,A7先輸入):
step1: 初始時,同時清零,此時右邊的194的QD為0,經過一個非門后,取值為1,導致S1S0為11,做置位操作,置位為:A70111111;
step2:當時鐘脈沖來臨時,由于右邊的194的QD為1,此時S1S0取值為01,實現右移,其狀態遷移序列為:
A70111111 --》 A6A7011111 --》 A5A6A701111 --》 A4A5A6A70111 --》 A3A4A5A6A7011 --》 A2A3A4A5A6A701 --》 A1A2A3A4A5A6A70
step3:當時鐘脈沖再來是,由于右邊的194的QD為0,S1S0取值為11,進行置位,回到Step2,進入狀態遷移循環。