1.3 列真值表並寫出狀態方程
將化簡後的狀態轉換為表中各狀態,用編碼表示即得到真值表,如圖3所示。其中表示Q1Q0的下一狀態。寫出關於X,Q1,Q0的方程,即電路的狀態方程,如式(1)所示。
圖3 真值表
1.4 作邏輯電路圖
由於D觸發器的特性方程為Q*=D,從而,根據該方程就可以畫出邏輯電路圖,如圖4所示。
圖4 序列碼檢測器邏輯電路圖
2 將觸發器接成移位寄存器進行設計
以上設計方法主要依靠電路的狀態轉換實現序列碼檢測,雖然所得電路簡單,但是設計過程較複雜,特別是當需要檢測的序列碼位數較長時,工作量較大。為此,將觸發器接成移位寄存器的方式,可簡化電路設計,同時也便於擴展成位數更多的序列碼檢測器。用4個D觸發器接成的向右移位寄存器。電路如圖5所示。
圖5 移位寄存器型序列碼檢測器
由圖5可知,。在移位脈衝clk作用下,輸入端X輸入的二進位碼依次向右移動,每當出現一個完整的1001序列時,輸出端Z便出現高電平。這樣就實現了序列碼檢測的功能。
3 用中規模集成電路進行設計
既然用移位寄存器可以實現序列信號檢測,那麼用集成移位寄存器加少量門電路同樣可以實現,而且電路可靠性更高。用4位集成移位寄存器74LS194,實現的序列1001檢測器,如圖6所示。
圖6 用集成移位寄存器構成序列碼檢測器
4 當序列不可重疊時的電路設計
用以上3種方法設計出的電路,都是可序列重疊的序列碼檢測器,若要求被檢測的序列不可重疊,則在方法1中,只需要根據實際情況修改狀態轉換表即可。後面的設計原理及步驟不變。這種設計方法存在的問題仍然是當待檢測的序列位數較長時,設計工作量大、電路可靠性降低。在採用第2、第3種方法設計時,需增加部分控制電路,為保證輸入與時鐘的同步性,需要使得每當檢測出一個序列時,直接將序列的下一位置入寄存器最低位,同時置寄存器其餘各位為序列碼最後一位的反碼以消除重疊代碼的影響。此外再用一個鎖存器使輸出高電平多保持0.5個時鐘周期,其優點是:可以消除移位過程中的競爭冒險,使得輸出波形更穩定、電路可靠性更高,電路如圖7所示。
圖7 用移位寄存器構成的序列不可重疊的序列碼檢測器