《計算機組成原理(白中英)第二章.ppt》由會員分享,可在線閱讀,更多相關《計算機組成原理(白中英)第二章.ppt(5頁珍藏版)》請在裝配圖網上搜索。
1、2.2.4 基本的二進制加法/減法器,圖2.2(a)示出了補碼運算的二進制加法減法器邏輯結構圖.由圖看到,n個1位的全加器(FA)可級聯(lián)成一個n位的行波進位加法器.M為方式控制輸入線,當M=0時,做加法(AB)運算;當M=l時,做減法(A-B)運算,在后一種情況下, A-B運算轉化成A 補+-B 補運算,求補過程由B1來實現(xiàn).因此圖中是右邊的全加器的起始進位輸入端被連接到功能方式線M上,做減法時M=l,相當于在加法器的最低位上加1.另外圖中左邊還表示出單符號位法的溢出檢測邏輯:當Cn=Cn-1時,運算無溢出;而當CnCn-1時,運算有溢出,經異或門產生溢出信號.,圖2.2 (a) 行波進位的補
2、碼加法/減法器,兩個二進制數字Ai,Bi和一個進位輸入Ci相加,產生一個和輸出Si,以及一個進位輸出Ci1。表2.2中列出一位全加器進行加法運算的輸入輸出真值表。 根據表2.2 所示的真值表,三個輸入端和兩個輸入端可按如下邏輯方程進行聯(lián)系:,按此表達式組成的一位全加器示圖2.2(b)。,表2.2 一位全加器真值表,圖2.2(b)行波進位的補碼加法減法器,對一位全加器(FA)來說,Si的時間延遲為6T(每級異或門延遲3T),Ci1的時間延遲為5T,其中T被定義為相應于單級邏輯電路的單位門延遲。T通常采用一個“與非”門或一個“或非”門的時間延遲來作為度量單位。,現(xiàn)在我們計算一個n位的行波進位加法器
3、的時間延遲。假如采用圖2.2(b)所示的一位全加器并考慮溢出檢測,那么n位行波進位加法器的延遲時間ta為,9T為最低位上的兩極“異或”門再加上溢出“異或”門的總時間,2T為每級進位鏈的延遲時間。 當不考慮溢出檢測時,有 ta(n-1)2T9T(2.23) ta意味著加法器的輸入端輸入加數和被加數后,在最壞情況下加法器輸出端得到穩(wěn)定的求和輸出所需的最長時間。顯然這個時間越小越好。注意,加數、被加數、進位與和數都是用電平來表示的,因此,所謂穩(wěn)定的求和輸出,就是指穩(wěn)定的電平輸出。,2.2.5 十進制加法器 十進制加法器可由BCD碼(二十進制碼)來設計,它可以在二進制加法器的基礎上加上適當的“校正”邏
4、輯來實現(xiàn),該校正邏輯可將二進制的“和”改變成所要求的十進制格式。 n位BCD碼行波式進位加法器的一般結構如圖2.3(a)所示,它由n級組成,每一級將一對4位的BCD數字相加,并通過一位進位線與其相鄰級連接。而每一位十進制數字的BCD加法器單元的邏輯結構示于圖2.3(b)。,圖2.3十進制加法器,在十進制運算時,當相加二數之和大于9時,便產生進位。可是用BCD碼完成十進制數運算時,當和數大于9時,必須對和數進行加6修正。這是因為,采用BCD碼后,在二數相加的和數小于等于9時,十進制運算的結果是正確的;而當相加的和數大于9時,結果不正確,必須加6修正后才能得出正確的結果。因此,當第一次近似求值時,可將它看成每一級是一個4位二進制加法器來執(zhí)行,就好像i和i是普通4位二進制數一樣。,設Si代表這樣得到的4位二進制數和, Ci1為輸出進位,而Si代表正確的BCD和, Ci1代表正確的進位,那么當iiCi10時, SiSi 當XiYiCi10時, SiSi6 顯然,當Ci11或Si10時,輸出進位Ci11。因此,可利用Ci1的狀態(tài)來產生所要求的校正因子; Ci11時校正因子為6; Ci10時校正因子為0。在圖2.3(b)中,4位行波式進位的二進制加法器計算出和Si,然后Si經過第二級二進制加法器加上0或6,則產生最終結果Si。,