一、加法運算器
1、半加器
● 功能特性
半加器是在加法中不考慮進位的一種加法器。
一位半加器有兩個輸入端X和Y,一個輸出端S。
輸出方程爲:S = X ⊕ Y。
真值表如下:
2、全加器
● 功能特性
全加器是在半加器基礎上,考慮進位的加法器。
一位全加器有三個輸入端X,Y和Ci-1,兩個輸出端S和Ci。
輸出方程爲:S = X ⊕ Y ⊕ Ci-1 ;Ci=!Ci-1·X·Y + !X·Y·Ci-1 + !Y·X·Ci-1 + X·Y·Ci-1
真值表如下:
3、串行進位加法器
● 組成
通過將n個全加器相連,可以得到串行進位加法器。
● 功能
串行進位加法器可以進行n位數字的算術加運算。
● 特點
本位全加的結果需要等待低位進位Ci-1的到來後才能進行,運算時間受位數影響。
4、超前進位加法器
● 原理
若想加快加法器的運算速度,需要改變逐位進位的傳送路徑。解決辦法之一是採用超前進位電路。
設Gn爲進位產生函數,Gn=Xn·Yn,代表當X和Y均爲1時,無論Cn-1是否爲1,都必定產生進位;
設Pn爲進位傳遞函數,Pn=Xn+Yn,代表當X和Y有一個爲1時,若低位有進位,則本位也會產生進位,相當於將進位傳遞至高位。
對於4位加法器,其進位Cn有如下關係方程:
C1 = G1 + P1C0
C2 = G2 + P2C1 = G2 + P2G1 + P2P1C0
C3 = G3 + P3C2 = G3 + P3G2 + P3P2G1 + P3P2P1C0
C4 = G4 + P4G3 + P4P3G2 + P4P3P2G1 + P4P3P2P1C0
由此可以發現,所有的進位信號Cn均可以轉化成僅關於C0和XnYn的表達式。可以由此設計額外的電路,達到超前進位的目的。
● 組成
超前進位加法器由四個全加器外加一個超前進位電路組成。
● 功能
超前進位加法器可以在級間、組間做到並行加法運算。影響運算速度的因素不再是數字位數,而是進位信號的產生和傳遞問題。
5、74SL181ALU
算術邏輯運算單元是計算機中組成運算器的核心部件。其不僅需要執行大量算術運算,同時也要執行邏輯運算。
74LS181是一個4位超前進位的ALU。它能夠進行16種邏輯運算和16種算術運算,輸入端M是狀態控制端,控制進行的運算類型;S3S2S1S0是運算選擇控制端,控制具體進行的運算。其具體功能表如下:
其中H表示高電平,等效爲1;L表示低電平,等效爲0;符號 + 表示邏輯或運算,漢字加表示算術加運算。
● 16位快速ALU
使用4片74LS181算術邏輯運算器,並採用類似4位超前運算加法器的方法將這4片運算器連接,就可以得到一個16位快速ALU。
由一位進位產生函數和進位傳遞函數的概念,可以得到四位一組的進位產生函數和進位傳遞函數如下:
Gn = G3 + P3G2 + P3P2G1 + P3P2P1G0
Pn = P3P2P1P0
通過此邏輯關係式,可以設計電路,達到4組超前進位的目的。
74LS182是專門與74SL181配套使用的超前進位擴展器。它是實現上述邏輯關係式的集成電路。74LS182可以爲4片74LS181提供超前進位支持,實現16位快速ALU。
二、其它運算部件
1、譯碼器
譯碼器有n個輸入端,2n及以內個輸出端。每個根據輸入端的輸入組合,只有一個輸出端被選通。
譯碼器將二進制數字轉爲十進制,下標等於輸入數字的輸出端被選通。這麼理解雖然不準確,但比較易懂。
下圖是一個兩輸入四輸出譯碼器,譯碼器常設置一個使能端E,設置譯碼器是否處於工作狀態。
使能端可以用於擴展譯碼器。下圖是使用兩片三輸入八輸出譯碼器組成的四輸入十六輸出譯碼器:
2、數據選擇器
數據選擇器又稱多路開關,是以與或門或與或非門爲主的電路。他在選擇信號的作用下,從多個輸入信號中選擇一個作爲輸出信號。
下圖是雙四通道選一數據選擇器的邏輯電路與真值表。使能端的功能與譯碼器相似。
3、寄存器
● 寄存器
寄存器是計算機的一個重要部件,用於暫存數據、指令等。它由觸發器和一些控制門組成。在寄存器中,常用的是正邊沿觸發D觸發器和鎖存器。
下圖是一個正沿觸發的D觸發器組成的四位寄存器。在CP正沿作用下,外部數據才能進入寄存器。
● 移位寄存器
爲適應計算機的乘除操作,計算機中的寄存器需要移位功能,稱爲移位寄存器。
下圖是一個雙向四位移位寄存器。它有左移、右移、並行輸入及保持功能,採用主-從R-S觸發器作寄存元件。