計(jì)算機(jī)組成原理第二章(第五講)._第1頁
計(jì)算機(jī)組成原理第二章(第五講)._第2頁
計(jì)算機(jī)組成原理第二章(第五講)._第3頁
計(jì)算機(jī)組成原理第二章(第五講)._第4頁
計(jì)算機(jī)組成原理第二章(第五講)._第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、計(jì)算機(jī)組成原理第一章第一章 計(jì)算機(jī)系統(tǒng)概論計(jì)算機(jī)系統(tǒng)概論第二章第二章 運(yùn)算方法和運(yùn)算器運(yùn)算方法和運(yùn)算器第三章第三章 存儲(chǔ)系統(tǒng)存儲(chǔ)系統(tǒng)第四章第四章 指令系統(tǒng)指令系統(tǒng) 第五章第五章 中央處理器中央處理器 第六章第六章 總線系統(tǒng)總線系統(tǒng) 第七章第七章 外圍設(shè)備外圍設(shè)備 第八章第八章 輸入輸出系統(tǒng)輸入輸出系統(tǒng)第九章第九章 并行組織并行組織目錄計(jì)算機(jī)組成原理計(jì)算機(jī)組成原理3 上一講回顧1.1.帶符號(hào)的陣列乘法器帶符號(hào)的陣列乘法器(1 1)對(duì))對(duì)2 2求補(bǔ)電路(圖求補(bǔ)電路(圖2.72.7)(2 2)帶求補(bǔ)級(jí)的陣列乘法器(圖)帶求補(bǔ)級(jí)的陣列乘法器(圖2.82.8)2.2.補(bǔ)碼并行乘法補(bǔ)碼并行乘法(1 1)補(bǔ)

2、碼與真值轉(zhuǎn)換公式)補(bǔ)碼與真值轉(zhuǎn)換公式(2 2)一般化的全加器形式)一般化的全加器形式(3 3)直接補(bǔ)碼陣列乘法器)直接補(bǔ)碼陣列乘法器 2.4.1 原碼除法運(yùn)算原理原碼除法運(yùn)算原理 兩個(gè)原碼表示的數(shù)相除時(shí),商的符號(hào)由兩數(shù)的符號(hào)按位兩個(gè)原碼表示的數(shù)相除時(shí),商的符號(hào)由兩數(shù)的符號(hào)按位相加求得,商的數(shù)值部分由兩數(shù)的數(shù)值部分相除求得。相加求得,商的數(shù)值部分由兩數(shù)的數(shù)值部分相除求得。設(shè)有設(shè)有n位定點(diǎn)小數(shù)位定點(diǎn)小數(shù)(定點(diǎn)整數(shù)也同樣適用定點(diǎn)整數(shù)也同樣適用):被除數(shù),其原碼為被除數(shù),其原碼為原原f .n110除數(shù),其原碼為除數(shù),其原碼為原原f .n110 則有商則有商q/,其原碼為,其原碼為q原原(f f)+(0

3、.n110/0.n110)商的符號(hào)運(yùn)算商的符號(hào)運(yùn)算qff f與原碼乘法一樣,用模與原碼乘法一樣,用模2求和求和得到。商的數(shù)值部分的運(yùn)算,實(shí)質(zhì)上是兩個(gè)正數(shù)求商的運(yùn)算。得到。商的數(shù)值部分的運(yùn)算,實(shí)質(zhì)上是兩個(gè)正數(shù)求商的運(yùn)算。根據(jù)我們所熟知的十進(jìn)制除法運(yùn)算方法,很容易得到二進(jìn)制根據(jù)我們所熟知的十進(jìn)制除法運(yùn)算方法,很容易得到二進(jìn)制數(shù)的除法運(yùn)算方法,所不同的只是在二進(jìn)制中,商的每一位數(shù)的除法運(yùn)算方法,所不同的只是在二進(jìn)制中,商的每一位不是不是“1”就是就是“0”,其運(yùn)算法則更簡單一些。,其運(yùn)算法則更簡單一些。2.4 定點(diǎn)除法運(yùn)算定點(diǎn)除法運(yùn)算 下面僅討論數(shù)值部分的運(yùn)算。設(shè)被除數(shù)下面僅討論數(shù)值部分的運(yùn)算。設(shè)被

4、除數(shù)0.1001,除數(shù),除數(shù)0.1011,模仿十進(jìn)制除法運(yùn)算,以手算方法求,模仿十進(jìn)制除法運(yùn)算,以手算方法求的過程如下的過程如下:0.1 1 0 1商q0.1 0 1 1 0.1 0 0 1 0(r0) 被除數(shù)小于除數(shù),商00.0 1 0 1 121除數(shù)右移1位,減除數(shù),商1 0.0 0 1 1 1 0r1得余數(shù)r10.0 0 1 0 1 122除數(shù)右移1位,減除數(shù),商10.0 0 0 0 1 1 0r2得余數(shù)r20.0 0 0 1 0 1 123除數(shù)右移1位,不減除數(shù),商00.0 0 0 0 1 1 0 0r3得余數(shù)r30.0 0 0 0 1 0 1 124 除數(shù)右移1位,減除數(shù),商10.0

5、 0 0 0 0 0 0 1r4 得余數(shù)r4得的商q0.1101,余數(shù)為r0.00000001。 在計(jì)算機(jī)中,小數(shù)點(diǎn)是固定的,不能簡單地采用手算的辦法。為便在計(jì)算機(jī)中,小數(shù)點(diǎn)是固定的,不能簡單地采用手算的辦法。為便于機(jī)器操作,使于機(jī)器操作,使“除數(shù)右移除數(shù)右移”和和“右移上商右移上商”的操作統(tǒng)一起來。的操作統(tǒng)一起來。事實(shí)上,機(jī)器的運(yùn)算過程和人畢竟不同,人會(huì)心算,一看就知道夠事實(shí)上,機(jī)器的運(yùn)算過程和人畢竟不同,人會(huì)心算,一看就知道夠不夠減。但機(jī)器卻不會(huì)心算,必須先作減法,若余數(shù)為正,才知道夠減;不夠減。但機(jī)器卻不會(huì)心算,必須先作減法,若余數(shù)為正,才知道夠減;若余數(shù)為負(fù),才知道不夠減。不夠減時(shí)必須

6、恢復(fù)原來的余數(shù),以便再繼若余數(shù)為負(fù),才知道不夠減。不夠減時(shí)必須恢復(fù)原來的余數(shù),以便再繼續(xù)往下運(yùn)算。這種方法稱為續(xù)往下運(yùn)算。這種方法稱為恢復(fù)余數(shù)法恢復(fù)余數(shù)法。要恢復(fù)原來的余數(shù),只要當(dāng)前。要恢復(fù)原來的余數(shù),只要當(dāng)前的余數(shù)加上除數(shù)即可。但由于要恢復(fù)余數(shù),使除法進(jìn)行過程的步數(shù)不固的余數(shù)加上除數(shù)即可。但由于要恢復(fù)余數(shù),使除法進(jìn)行過程的步數(shù)不固定,因此控制比較復(fù)雜。實(shí)際中常用定,因此控制比較復(fù)雜。實(shí)際中常用不恢復(fù)余數(shù)法不恢復(fù)余數(shù)法,又稱,又稱加減交替法加減交替法。其特點(diǎn)是運(yùn)算過程中如出現(xiàn)不夠減,則不必恢復(fù)余數(shù),根據(jù)余數(shù)符號(hào),其特點(diǎn)是運(yùn)算過程中如出現(xiàn)不夠減,則不必恢復(fù)余數(shù),根據(jù)余數(shù)符號(hào),可以繼續(xù)往下運(yùn)算,因

7、此步數(shù)固定,控制簡單??梢岳^續(xù)往下運(yùn)算,因此步數(shù)固定,控制簡單。早期計(jì)算機(jī)中,為了簡化結(jié)構(gòu),硬件除法器的設(shè)計(jì)采用串行的早期計(jì)算機(jī)中,為了簡化結(jié)構(gòu),硬件除法器的設(shè)計(jì)采用串行的1 1位除位除法方案。即多次執(zhí)行法方案。即多次執(zhí)行“減法減法移位移位”操作來實(shí)現(xiàn),并使用計(jì)數(shù)器來控制操作來實(shí)現(xiàn),并使用計(jì)數(shù)器來控制移位次數(shù)。由于串行除法器速度太慢,目前已被淘汰。移位次數(shù)。由于串行除法器速度太慢,目前已被淘汰。 1.可控加法可控加法/減法減法(CAS)單元單元 和陣列乘法器非常相似,陣列式除法器也是一種并行運(yùn)算和陣列乘法器非常相似,陣列式除法器也是一種并行運(yùn)算部件,采用大規(guī)模集成電路制造部件,采用大規(guī)模集成電

8、路制造.與早期的串行除法器相比,與早期的串行除法器相比,陣列除法器不僅所需的控制線路少,而且能提供令人滿意的陣列除法器不僅所需的控制線路少,而且能提供令人滿意的高速運(yùn)算速度。高速運(yùn)算速度。陣列除法器有多種多樣形式,如不恢復(fù)余數(shù)陣列除法器,陣列除法器有多種多樣形式,如不恢復(fù)余數(shù)陣列除法器,補(bǔ)碼陣列除法器等等。補(bǔ)碼陣列除法器等等。首先介紹可控加法首先介紹可控加法/減法減法(CAS)單元,它將用于并行除法單元,它將用于并行除法流水邏輯陣列中,它有四個(gè)輸出端和四個(gè)輸入端。當(dāng)輸入線流水邏輯陣列中,它有四個(gè)輸出端和四個(gè)輸入端。當(dāng)輸入線P0時(shí),時(shí),CAS作加法運(yùn)算;當(dāng)作加法運(yùn)算;當(dāng)P1時(shí),時(shí),CAS作減法運(yùn)

9、算。作減法運(yùn)算。2.4.2 并行除法器并行除法器 CAS單元的輸入與輸出的關(guān)系可用如下一組邏輯方程來表示:單元的輸入與輸出的關(guān)系可用如下一組邏輯方程來表示: SiAi (Bi P) Ci Ci1(AiCi)(Bi P)AiCi (2.32) 當(dāng)當(dāng)P0時(shí),方程式時(shí),方程式(2.32)就等于式就等于式(2.23),即得我們熟悉的一位全加器,即得我們熟悉的一位全加器(FA)的公式:的公式:SiAi Bi CiCi1AiBiBiCiAiCi 當(dāng)當(dāng)P1時(shí),則得求差公式:時(shí),則得求差公式: SiAi Bi CiCi1AiBiBiCiAiCi (2.33) 其中其中BiBi 1。在減法情況下,輸入在減法情況

10、下,輸入Ci稱為借位輸入,而稱為借位輸入,而Ci1稱為借位輸出。稱為借位輸出。 為說明為說明CAS單元的實(shí)際內(nèi)部電路實(shí)現(xiàn),將方程式單元的實(shí)際內(nèi)部電路實(shí)現(xiàn),將方程式(2.32)加以變換,可加以變換,可得如下形式:得如下形式: 在這兩個(gè)表達(dá)式中,每一個(gè)都能用一個(gè)三級(jí)組合邏輯電路在這兩個(gè)表達(dá)式中,每一個(gè)都能用一個(gè)三級(jí)組合邏輯電路(包括反向包括反向器器)來實(shí)現(xiàn)。因此每一個(gè)基本的來實(shí)現(xiàn)。因此每一個(gè)基本的CAS單元的延遲時(shí)間為單元的延遲時(shí)間為3T單元。單元。 假定所有被處理的數(shù)都是正的小數(shù)。假定所有被處理的數(shù)都是正的小數(shù)。不恢復(fù)余數(shù)的除法也就是加減交替法。在不恢復(fù)余數(shù)的除法陣列中,不恢復(fù)余數(shù)的除法也就是加

11、減交替法。在不恢復(fù)余數(shù)的除法陣列中,每一行所執(zhí)行的操作究竟是加法還是減法,取決于前一行輸出的符號(hào)與每一行所執(zhí)行的操作究竟是加法還是減法,取決于前一行輸出的符號(hào)與被除數(shù)的符號(hào)是否一致。當(dāng)出現(xiàn)不夠減時(shí),部分余數(shù)相對(duì)于被除數(shù)來說被除數(shù)的符號(hào)是否一致。當(dāng)出現(xiàn)不夠減時(shí),部分余數(shù)相對(duì)于被除數(shù)來說要改變符號(hào)。這時(shí)應(yīng)該產(chǎn)生一個(gè)商位要改變符號(hào)。這時(shí)應(yīng)該產(chǎn)生一個(gè)商位“0”,除數(shù)首先沿對(duì)角線右移,然,除數(shù)首先沿對(duì)角線右移,然后加到下一行的部分余數(shù)上。當(dāng)部分余數(shù)不改變它的符號(hào)時(shí),即產(chǎn)生商后加到下一行的部分余數(shù)上。當(dāng)部分余數(shù)不改變它的符號(hào)時(shí),即產(chǎn)生商位位“1”,下一行的操作應(yīng)該是減法。,下一行的操作應(yīng)該是減法。 下圖示

12、出了下圖示出了4位除位除4位的不恢復(fù)余數(shù)陣列除法器的邏輯原理圖。位的不恢復(fù)余數(shù)陣列除法器的邏輯原理圖。2.不恢復(fù)余數(shù)的陣列除法器不恢復(fù)余數(shù)的陣列除法器 其中其中被除數(shù)被除數(shù)0.123456 (雙倍長雙倍長)除數(shù)除數(shù)0.123商數(shù)商數(shù)0.q1q2q3余數(shù)余數(shù)0.00r3r4r5r6字長字長 n14 由圖看出,該陣列除法器是用一個(gè)可控加法由圖看出,該陣列除法器是用一個(gè)可控加法/減法減法(CAS)單元所組成單元所組成的流水陣列來實(shí)現(xiàn)的。推廣到一般情況,一個(gè)的流水陣列來實(shí)現(xiàn)的。推廣到一般情況,一個(gè)(n1)位除位除(n1)位的加減位的加減交替除法陣列由交替除法陣列由(n1)2個(gè)個(gè)CAS單元組成,其中兩個(gè)

13、操作數(shù)單元組成,其中兩個(gè)操作數(shù)(被除數(shù)與除數(shù)被除數(shù)與除數(shù))都是正的。都是正的。(1)單元之間的互連是用)單元之間的互連是用n3的陣列來表示的。這里被除數(shù)的陣列來表示的。這里被除數(shù)是一是一個(gè)個(gè)6位的小數(shù)位的小數(shù)(雙倍長度值雙倍長度值): 0.123456 它是由頂部一行和最右邊的對(duì)角線上的垂直輸入線來提供的。它是由頂部一行和最右邊的對(duì)角線上的垂直輸入線來提供的。(2)除數(shù)是一個(gè))除數(shù)是一個(gè)3位的小數(shù):位的小數(shù):0.123它沿對(duì)角線方向進(jìn)入這個(gè)陣列。這是因?yàn)椋诔ㄖ兴枰牟糠炙貙?duì)角線方向進(jìn)入這個(gè)陣列。這是因?yàn)椋诔ㄖ兴枰牟糠钟鄶?shù)的左移,可以用下列等效的操作來代替:即讓余數(shù)保持固定,而將

14、余數(shù)的左移,可以用下列等效的操作來代替:即讓余數(shù)保持固定,而將除數(shù)沿對(duì)角線右移。除數(shù)沿對(duì)角線右移。(3)商)商q是一個(gè)是一個(gè)3位的小數(shù):位的小數(shù):q0.q1q2q3它在陣列的左邊產(chǎn)生。它在陣列的左邊產(chǎn)生。(4)余數(shù))余數(shù)r是一個(gè)是一個(gè)6位的小數(shù):位的小數(shù):r0.00r3r4r5r6它在陣列的最下一行產(chǎn)生。它在陣列的最下一行產(chǎn)生。 最上面一行所執(zhí)行的初始操作經(jīng)常是減法。因此最上面一行的控制最上面一行所執(zhí)行的初始操作經(jīng)常是減法。因此最上面一行的控制線線P固定置成固定置成“1”。減法是用。減法是用2的補(bǔ)碼運(yùn)算來實(shí)現(xiàn)的,這時(shí)右端各的補(bǔ)碼運(yùn)算來實(shí)現(xiàn)的,這時(shí)右端各CAS單單元上的反饋線用作初始的進(jìn)位輸入。

15、每一行最左邊的單元的進(jìn)位輸出決元上的反饋線用作初始的進(jìn)位輸入。每一行最左邊的單元的進(jìn)位輸出決定著商的數(shù)值。將當(dāng)前的商反饋到下一行,我們就能確定下一行的操作。定著商的數(shù)值。將當(dāng)前的商反饋到下一行,我們就能確定下一行的操作。由于進(jìn)位輸出信號(hào)指示出當(dāng)前的部分余數(shù)的符號(hào),因此,它將決定下一由于進(jìn)位輸出信號(hào)指示出當(dāng)前的部分余數(shù)的符號(hào),因此,它將決定下一行的操作將進(jìn)行加法還是減法。行的操作將進(jìn)行加法還是減法。對(duì)不恢復(fù)余數(shù)陣列除法器來說,在進(jìn)行運(yùn)算時(shí),沿著每一行都有進(jìn)對(duì)不恢復(fù)余數(shù)陣列除法器來說,在進(jìn)行運(yùn)算時(shí),沿著每一行都有進(jìn)位位(或借位或借位)傳播,同時(shí)所有行在它們的進(jìn)位鏈上都是串行連接。而每個(gè)傳播,同時(shí)所

16、有行在它們的進(jìn)位鏈上都是串行連接。而每個(gè)CAS單元的延遲時(shí)間為單元的延遲時(shí)間為3T單元,因此,對(duì)一個(gè)單元,因此,對(duì)一個(gè)2n位除以位除以n位的不恢復(fù)余位的不恢復(fù)余數(shù)陣列除法器來說,單元的數(shù)量為數(shù)陣列除法器來說,單元的數(shù)量為(n1)2,考慮最大情況下的信號(hào)延遲,考慮最大情況下的信號(hào)延遲,其除法執(zhí)行時(shí)間為其除法執(zhí)行時(shí)間為td3(n1)2T(2.34) 其中其中n為尾數(shù)位數(shù)。為尾數(shù)位數(shù)。 例例20 0.101001, 0.111, 求求。 解:余數(shù)固定,除數(shù)右移。相當(dāng)于除數(shù)固定,余數(shù)左移。解:余數(shù)固定,除數(shù)右移。相當(dāng)于除數(shù)固定,余數(shù)左移。 當(dāng)被除數(shù)和除數(shù)送至陣列除法器輸入端后,當(dāng)被除數(shù)和除數(shù)送至陣列除

17、法器輸入端后,經(jīng)過經(jīng)過3(n1)T時(shí)間延遲,便在除法器輸出端得到穩(wěn)時(shí)間延遲,便在除法器輸出端得到穩(wěn)定的商數(shù)定的商數(shù)q和余數(shù)和余數(shù)r的信號(hào)電平。與串行除法器相比,的信號(hào)電平。與串行除法器相比,明顯的優(yōu)點(diǎn)是省去了復(fù)雜的控制線路,提高了運(yùn)算明顯的優(yōu)點(diǎn)是省去了復(fù)雜的控制線路,提高了運(yùn)算速度。速度。 計(jì)算機(jī)中除了進(jìn)行加、減、乘、除等基本算術(shù)運(yùn)算外,計(jì)算機(jī)中除了進(jìn)行加、減、乘、除等基本算術(shù)運(yùn)算外,還可對(duì)兩個(gè)或一個(gè)邏輯數(shù)進(jìn)行邏輯運(yùn)算。還可對(duì)兩個(gè)或一個(gè)邏輯數(shù)進(jìn)行邏輯運(yùn)算。 所謂邏輯數(shù),是指不帶符號(hào)的二進(jìn)制數(shù)。利用邏輯運(yùn)算所謂邏輯數(shù),是指不帶符號(hào)的二進(jìn)制數(shù)。利用邏輯運(yùn)算可以進(jìn)行兩個(gè)數(shù)的比較,或者從某個(gè)數(shù)中選取某

18、幾位等操作??梢赃M(jìn)行兩個(gè)數(shù)的比較,或者從某個(gè)數(shù)中選取某幾位等操作。 計(jì)算機(jī)中的邏輯運(yùn)算,主要是指邏輯非、邏輯加、邏輯計(jì)算機(jī)中的邏輯運(yùn)算,主要是指邏輯非、邏輯加、邏輯乘、邏輯異四種基本運(yùn)算。乘、邏輯異四種基本運(yùn)算。2.5定點(diǎn)運(yùn)算器的組成定點(diǎn)運(yùn)算器的組成 邏輯非也稱求反。對(duì)某數(shù)進(jìn)行邏輯非運(yùn)算邏輯非也稱求反。對(duì)某數(shù)進(jìn)行邏輯非運(yùn)算,就是按位求它就是按位求它的反,常用變量上方加一橫來表示。的反,常用變量上方加一橫來表示。 1.邏輯邏輯非非運(yùn)算運(yùn)算 2.邏輯邏輯加加運(yùn)算運(yùn)算 對(duì)兩個(gè)數(shù)進(jìn)行邏輯加,就是按位求它們的對(duì)兩個(gè)數(shù)進(jìn)行邏輯加,就是按位求它們的“或或”,所以,所以邏輯加又稱邏輯或,常用記號(hào)邏輯加又稱邏輯或,常用記號(hào)“V”或或“”來表示。來表示。3.邏輯邏輯乘乘運(yùn)算運(yùn)算 對(duì)兩數(shù)進(jìn)行邏輯乘,就是按位求它們的對(duì)兩數(shù)進(jìn)行邏輯乘,就是按位求它們的“與與”,所以邏,所以邏輯乘又稱輯乘又稱“邏輯與邏輯與”,常用記號(hào),常用記號(hào)“”或或“”來表示。來表示。4.邏輯邏輯異異運(yùn)算運(yùn)算 對(duì)兩數(shù)進(jìn)行異就是按位求它們的模對(duì)兩數(shù)進(jìn)行異就是按位求它們的模2和,所以邏輯異又和,所以邏輯異又稱稱“按位加按位加”,常用記號(hào),常用記號(hào)“ ”表示。表示。 由一位全加器由一位全加器(FA)構(gòu)成的行波進(jìn)位加法器,它可以實(shí)現(xiàn)補(bǔ)碼數(shù)的加構(gòu)成的行波進(jìn)位加法器,它可以實(shí)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論