專利名稱:多數(shù)據(jù)通道的中央處理器(cpu)結(jié)構(gòu)的制作方法
本發(fā)明是關(guān)于數(shù)據(jù)處理系統(tǒng)中的中央處理器(CPU)。更確切地說,本發(fā)明是關(guān)于各種功能單元的組織,其中包括中央處理器(CPU)并能使主運算器(ALU)和各種特殊功能單元訪問數(shù)據(jù)寄存器,從高速緩沖存儲器中存取文字常數(shù)和數(shù)據(jù)。
在數(shù)據(jù)處理系統(tǒng)中,中央處理器是系統(tǒng)進行數(shù)據(jù)處理、邏輯、算術(shù)運算和其它數(shù)據(jù)變換的部分。CPU中各部件的物理和邏輯連接、即CPU中運算器和各種寄存器及多路轉(zhuǎn)換器的物理和邏輯連接是稱為數(shù)據(jù)通道。
大多數(shù)先有技術(shù)的CPU有一個單數(shù)據(jù)通道結(jié)構(gòu),即這種結(jié)構(gòu)使得通過CPU的數(shù)據(jù)流只經(jīng)過一條通道。
有些先有技術(shù)的CPU的設(shè)計是具有多數(shù)據(jù)通道的。這些CPU采用了很多多端口寄存器。然而,這樣的布局需要用大的多路轉(zhuǎn)換器。例如,在一個有30個寄存器的CPU中,每個多路轉(zhuǎn)換器都需裝有寬度為30行的輸入口,才能對所有的寄存器服務(wù)。
此外,先有技術(shù)的CPU可以是也可以不是流水線結(jié)構(gòu),也就是在時間上要分成兩級或多級,這樣通過數(shù)據(jù)通道執(zhí)行一條微指令要分幾步進行。流水線結(jié)構(gòu)使通過CPU的數(shù)據(jù)吞吐量加快,這是由于允許不同的連續(xù)指令的某些部分同時執(zhí)行。比如,當正在執(zhí)行第一條指令的后段時候,也可執(zhí)行第二條指令的前段。
就發(fā)明者所知的采用上述先有技術(shù)的數(shù)據(jù)通道對一般任務(wù)來說是可以勝任的,然而每種方式都有如下一個或多個缺點。采用多端口的寄存器和多路轉(zhuǎn)換器的多數(shù)據(jù)通道的CPU通常特點是由于使用了寬度較大的多路轉(zhuǎn)換器就需要相對大量的部件。此外,這種多路轉(zhuǎn)換器的使用對CPU的周期時間有限制作用,因為通常多路轉(zhuǎn)換器越寬,其相應(yīng)的選通時間就必定越長。
先有技術(shù)中非流水線結(jié)構(gòu)的CPU通常不能達到流水線結(jié)構(gòu)的指令吞吐量。
先有技術(shù)中使用寬多路轉(zhuǎn)換器的多數(shù)據(jù)通道CPU的另一特點是具有能同時對兩個以上的數(shù)據(jù)寄存器內(nèi)容進行存取的靈活性。然而,這個靈活性,只是一種虛假的優(yōu)點,因為統(tǒng)計的結(jié)果表明最常用的操作數(shù)是上一次操作的結(jié)果。
因此,盡管先有技術(shù)中有可利用的數(shù)據(jù)通道方案,但從性能和性能與價格比的觀點看還有改進的余地。
在大多數(shù)先有技術(shù)系統(tǒng)中,CPU部分是不進行檢查的,否則就需要另加昂貴的用于檢查的硬件。進而,先有技術(shù)的CPU通常為完成微轉(zhuǎn)移,在檢測邏輯和各種功能單元之間需要有更多的連接。
因此,本發(fā)明的目的是提供CPU的數(shù)據(jù)通道結(jié)構(gòu),此種結(jié)構(gòu)能克服一個或更多先有技術(shù)數(shù)據(jù)通道結(jié)構(gòu)的缺點。
本發(fā)明的另一個目的是提供一具有多數(shù)據(jù)通道的CPU數(shù)據(jù)通道結(jié)構(gòu)。
本發(fā)明進一步的目的是提供一個多數(shù)據(jù)通道的CPU結(jié)構(gòu),這種結(jié)構(gòu)能夠減少寄存器的端口和減少使用寬的多路轉(zhuǎn)換器。
本發(fā)明的另一個目的是提供一個多數(shù)據(jù)通道的CPU結(jié)構(gòu),這種結(jié)構(gòu)允許CPU在每個指令周期內(nèi)進行一個以上的操作。
對于那些在本技術(shù)方面有一般技術(shù)的人,只要審閱一下本說明書和附圖及隨附的權(quán)項,就能了解本發(fā)明的這些目的及優(yōu)點是很明顯的。
已公布了一種多數(shù)據(jù)通道的CPU,其中數(shù)據(jù)源,如多寄存器文件,高速緩沖寄存器,文學(xué)常數(shù)寄存器,ALU輸出和特別功能輸出寄存器構(gòu)成了兩組操作數(shù)總線,一組供給ALU,另一組供給特殊功能單元組,此組單元的功能是由微碼控制的。
每個操作總線來自多路轉(zhuǎn)換器,這個多路轉(zhuǎn)換器匯集了可能的數(shù)據(jù)來源,包括保存上一次ALU和特別功能部件運算結(jié)果的寄存器。
先有技術(shù)多數(shù)據(jù)通道結(jié)構(gòu)通常使用一個或多個大的多路轉(zhuǎn)換器將數(shù)據(jù)源進行單級的多路轉(zhuǎn)換,而本發(fā)明是使用兩級流水線,其中第一級完成寄存器組和其它寄存器多路轉(zhuǎn)換器的譯碼,第二列對主多路轉(zhuǎn)換器尋址并控制ALU和特殊功能單元的功能。特殊功能的控制包括從N個特殊功能單元中選擇一個并定義其功能。
特殊功能是以緊密偶合的方式排列的,其中有一條輔助數(shù)據(jù)通道和一組N個特殊功能單元,每個單元能執(zhí)行多項功能,并與主ALU數(shù)據(jù)通道相接。實際上能實現(xiàn)任何特殊功能,如,作為輔助的ALU;存取中間結(jié)果寄存器組;桶式移位器;在多處理器系統(tǒng)中通過處理機間的總線與其它處理器接口;與主存接口;執(zhí)行中斷;對可寫控制存儲器的讀寫存取;區(qū)間計時器;I/O通道接口等。
由于存在多條數(shù)據(jù)通道,就有可能實現(xiàn)對各種CPU子系統(tǒng)的檢查。這種檢查對系統(tǒng)用戶來說是透明的。在某些操作中,可選擇某些未用的微碼以使當兩條總線失比時,停止CPU運轉(zhuǎn)。
圖1是本發(fā)明CPU的框圖。
圖2是實現(xiàn)特殊功能的輔助ALU的框圖。
圖3是實現(xiàn)特殊功能單元的中間結(jié)果寄存器陣列的框圖。
圖4是特殊功能的奇偶校驗產(chǎn)生器的硬件框圖。
圖5是特殊功能模塊條件檢查硬件的框圖。
在圖1中描述了整個數(shù)據(jù)通道的結(jié)構(gòu)框圖。在此較佳實施方案中,有兩單元是作為資源來源的。ALU10和特殊功能單元12a、12b、12c……12n是由可用的數(shù)據(jù)資源供給的。ALU10的輸出進入主結(jié)線14,而12個特殊功能單元的輸出是進入特殊主總線16。(即一次只能有一個單元的輸出)這兩個數(shù)據(jù)源的來源是兩組總線即分別為主總線J和K,18和20,分別以4∶1多路轉(zhuǎn)換器22和24為源,專用總線分別為SJ和SK,26和28,分別以4∶1多路轉(zhuǎn)換器30和32為源。多路轉(zhuǎn)換器的選擇是通過微碼字段來實現(xiàn)的,這對那些在該領(lǐng)域內(nèi)具有一般技術(shù)水平的人來說是很容易理解的。在這個較佳實施方案中,使用了4∶1多路轉(zhuǎn)換器,那些對本技術(shù)熟悉的人將會容易地觀察到,它能提供一個具有較多輸入連接的系統(tǒng),但這要增加硬件的復(fù)雜性而靈活性卻不一定會增加。
每個多路轉(zhuǎn)換器不能同時得到多種數(shù)據(jù)源的。供給J總線18和SJ總線26數(shù)據(jù)的4∶1多路轉(zhuǎn)換器22和30是有幾個數(shù)據(jù)來源的;即J寄存器34,CD寄存器36,M寄存器38和SM寄存器40。供給K總線20和SK總線28數(shù)據(jù)的4∶1多路轉(zhuǎn)換器24和32是以M寄存器38,SM寄存器40,K寄存器42和LIT寄存器44為源的。注意由于到M和SM數(shù)據(jù)通道的數(shù)據(jù)源寄存器M38和SM40可公用,數(shù)據(jù)通道而得到充實,即數(shù)據(jù)源寄存器M38和SM40通過ALU10的任何一邊,經(jīng)由J寄存器34和K寄存器42跨過J總線18和K總線20,也可以通過特別功能模塊12a到12n任何一個的任何一邊,經(jīng)由SJ4∶1多路轉(zhuǎn)換器30和SK4∶1多路轉(zhuǎn)換器32及SJ總線26和SK總線28。
在這方面介紹一下本發(fā)明較佳實施方案中使用的各種寄存器和總線的功能將是有好處的。雖然那些在本領(lǐng)域具有一般技術(shù)水平的人很容易觀察到這些規(guī)定有某種程度的任意性,而且在本發(fā)明的精神和范圍內(nèi)還可給各種總線和寄存器指定其它的功能和各種布局,以及其他的優(yōu)先級。
M寄存器38存放原先主ALU的結(jié)果,經(jīng)由M總線14將ALU10的輸出傳送到其輸入。SM寄存器40存放的是原先從12a到12n中選擇的任何一特殊功能模塊的結(jié)果。
J寄存器34和K寄存器42各自存放著由多個寄存器中選出的一個內(nèi)容,主要是從寄存器組46中選出的內(nèi)容。寄存器組可從M寄存器38裝入。熟悉此領(lǐng)域技術(shù)的人會了解到J和K寄存器還可從其它寄存器中提取數(shù)據(jù),比如通過多路轉(zhuǎn)換器從程序計數(shù)器或存儲器地址寄存器中提取數(shù)據(jù)。
CD寄存器36存放著可尋址的超高速緩沖存儲器48的輸出內(nèi)容,此超高速緩沖存儲器是從由SM寄存器40通過線49送入的,在這些寄存器中最后一個主要寄存器是LIT寄存器44,這個寄存器如其名字所指的存放由微碼字段50提供的文學(xué)常數(shù)。
寄存器組46是由幾個微碼字段控制的,它說明某一寄存器,為任何一個,發(fā)送到J寄存器34和K寄存器42;從M寄存器38輸入到那個寄存器組中的某一個寄存器中。指示器存器(未示出)與微碼一起來選擇要寫入和讀出的寄存器。這個寄存器可從M總線14輸入或可由微碼段來使其或增或減。所有用于裝入這些寄存器的字段是在微指令的第二級,所有用于讀出的字段在第一級。
如前邊提到的,圖1中數(shù)據(jù)通道的操作最好是由一個至少有二級微碼組成的流水線來完成,如相關(guān)的未決申請書所敘述的,該申請書序號為537,038申請日為,1983年9月29日,另一個的序號為537,429,申請日同前一個,這兩個申請轉(zhuǎn)讓給同樣的受讓人,顯然,這已結(jié)合在本發(fā)明中。
本發(fā)明較佳實施方案中,一條微指令的第一級微碼位字段譯出微碼的尋址功能來選通寄存器組46,多路轉(zhuǎn)換器52從多個寄存器中選出一個放到J寄存器34的輸入中,對K寄存器42輸入,多路轉(zhuǎn)換器54具有上述相似功能。多路轉(zhuǎn)換器52和54形成了通往不常存取的寄存器的通道,如程序計數(shù)器,存儲器地址寄存器,或狀態(tài)寄存器。那些在此領(lǐng)域中具有一般技術(shù)水平的人會認識到其特點是在不妨害使主寄存器通道情況下允許對更多寄存器存取。
微指令的第二級微碼位字段是對4∶1多路轉(zhuǎn)換器22、24、30和32譯碼并控制和確定ALU10和12a到12n的特別功能單元的操作。關(guān)于特別功能單元,第二級微碼位字段的一部分用以控制12a到12n的n個特殊功能單元的選擇,并確定其功能在本領(lǐng)域具有一般技術(shù)水平的人將會認識到使用的微碼字段中的任何位的位置都可使用。除了CD寄存器36只是當從高速緩沖存儲器取數(shù)時才能激勵以外,所有的寄存器都是同時被激勵。微碼字段能對CD寄存器36發(fā)送禁止信號((未示出)。某些寄存器(M、SM、CD和多寄存器文件)可在微轉(zhuǎn)移中有選擇地被禁止。見未決申請,序號537,886。
在前敘述過的這種數(shù)據(jù)通道的布局是本發(fā)明的較佳實施,從減少花費和提高性能的觀點,提供了某種程度的靈活性,這給硬件復(fù)雜情況和多功能之間提供了調(diào)解,這對那些在此領(lǐng)域具有一般技術(shù)水平的人是很明顯的。
從12a到12n中每一特殊功能單元都可用于執(zhí)行有關(guān)的一組工作。比如,可以是輔助ALU用于邏輯或算術(shù)運算并將結(jié)果送回SM總線。
圖2是特殊功能單元作為ALU的實施方案。ALU單元100具有連接到SJ總線26的輸入102和連接到SK總線28的輸入104,ALU單元100也有其自己的輸出106,是連接到緩沖器108的。緩沖器108將ALU的結(jié)果送回SM總線16。由于有二個以上的特殊功能單元連接到SM總線上,緩沖器108有辦法防止總線爭用,是通過只有當一個特殊功能單元被選中時才能控制SM16總線來保證的。這樣,緩沖器108有一個OE(允許輸出)的輸入端,這是由譯碼單元110驅(qū)動的。在微碼的第二級中的字段112驅(qū)動譯碼單元110并對所有連接到SM總線16的特殊功能單元驅(qū)動相似的譯碼單元。每一譯碼單元在某種條件下只辨認出現(xiàn)在微碼字段112中的所有的可能的微碼結(jié)合中的一個。這樣,只有一個譯碼單元能起動一個緩沖器將特殊功能單元接到SM16上。
在微碼的第二級中第二個微碼字段114與ALU單元100連接。這個微碼字段定義由ALU單元100進行的操作。
在運行中,任何特殊單元,如ALU單元100總是連接于SJ和SK總線的,這樣總是為了完成其功能作好準備的。任何時候只能有一個功能能控制SM總線。這個選擇是由微碼字段112決定的并且由譯碼器110譯碼,并使緩沖器108驅(qū)動SM總線16。
ALU100有可能產(chǎn)生ALU=0(用數(shù)字116表示)的輸出,這可用于進行某種檢測。如前面提到的,可以選擇在原來的指令中不用的微碼通過CPU產(chǎn)生操作,如在圖1中所示,其結(jié)果就放在SJ和SK總線上。如果這些微碼檢測子程序是這樣設(shè)計的,即同時出現(xiàn)在SJ和SK總線上的結(jié)果假設(shè)是相等的,那么ALU100的輸出116可作為該檢測中的最后一步來確定由該微碼檢查的硬件工作是否正確。在程序中的這點的結(jié)果除了ALU=0以外都可用來停止處理器,這是因為SJ26和SK28產(chǎn)生了失比。這就提供一種驗證CPU的各個部分是否正常運行的方法,這些部分沒有其它的檢查方式(如奇偶校驗),也不需要增加大量的電路。檢查與正常系統(tǒng)運轉(zhuǎn)同時進行,不影響性能。比如簡單的ADD宏指令不需要使用12a到12n的特殊功能模塊。
兩個相加的操作數(shù)在J總線18和K總線20上被送到ALU10。此外由于數(shù)據(jù)通道的靈活性,同樣的操作數(shù)可同時被送到特殊功能ALU100。下一個時鐘時,主ALU和特殊ALU的結(jié)果就可送入M寄存器38和SM寄存器40中。然后,這些結(jié)果會通過多路轉(zhuǎn)換器30和32輸送到特殊功能ALU的輸入102和104。微指令字段114執(zhí)行檢查功能,即讓ALU100執(zhí)行一次減法,如果在線116所指示的結(jié)果不是零,那么就停止CPU。這樣,就驗證了ALU和許多控制通道的正確運轉(zhuǎn)。
另一個特殊功能單元的例子已在本發(fā)明的CPU中實施的是多地址的中間結(jié)果存儲器。中間結(jié)果存儲器120可由RAM和其它的合適的存儲器或寄存器器件構(gòu)成,如所示,分別與SJ26,SK28和SM16總線連接。SJ總線作為中間結(jié)果存儲器120的數(shù)據(jù)輸入口使用,SK總線是作為對中間結(jié)果存儲器120存取時所使用的一部分地址。中間結(jié)果存儲器120的另一部分地址來源于微碼字段114。
如在ALU的例子中,譯碼單元122檢查微碼字段112以確定是否有特定位模式選中了能到SM總線16的中間結(jié)果存儲120。然而,不象譯碼單元110與ALU100那樣譯碼單元122有兩個輸出。其中之一是線124,只提供一位信息并接在中間結(jié)果存儲器120的允許輸出端上。這個允許輸入的輸出端是用來禁止中間結(jié)果存儲器120的輸出。這樣,就可有選擇地與SM總線16連接。第二個輸出線126,用來驅(qū)動中間結(jié)果存儲器120的讀寫輸入,并確定中間結(jié)果存儲器是否將進行讀或?qū)懖僮鳌?br>總的來講,可從上邊的例子中看出,微指令字段112通常是用來選擇特殊功能單元,并將其輸出送至SM總線16上。微碼字段114是由于執(zhí)行特殊尋址功能或為特殊功能單元確定其功能的。
奇偶校驗通常是隨數(shù)據(jù)輸送而傳送的,12a到12n的特殊功能單元傳送奇偶校驗要晚一時鐘周期。否則,若12a到12n的特殊功能單元產(chǎn)生奇偶校驗與特殊功能單元來輸出的數(shù)據(jù)串行,則奇偶校驗的產(chǎn)生將減慢機器的周期時間。
防止周期時間的減慢,12a到12n的特殊功能單元將奇偶校驗信息比數(shù)據(jù)信息晚一個時鐘發(fā)送。這樣奇偶校驗產(chǎn)生的時間不影響CPU的最小周期時間。
在圖4中描述了特殊功能單元產(chǎn)生奇偶校驗的機構(gòu)。
圖4說明了12a到12n的特殊功能單元,其輸入與SJ總線26,SK總線28相連接,其輸出與SM總線16相連接。除這些總線以外,圖4說明了SJ奇偶校驗總線26a和SK奇偶校驗總線28a驅(qū)動特殊功能模件和SM奇偶校驗總線16a的輸入,它是由12a到12n特殊功能單元有選擇地驅(qū)動的。特殊功能單元12a如所示的所有特殊功能單元一樣(包含)有通過或產(chǎn)生奇偶校驗單元202以及特殊功能的操作單元200,比如它們可是圖2中ALU100,或圖3中中間結(jié)果存儲器120。一個單元的奇偶校驗是通過還是產(chǎn)生取決于特別功能單元的性質(zhì)。比如,如果特殊功能單元是一個中間結(jié)果存儲器,奇偶校驗只是隨著要存儲到中間結(jié)果存儲器中的數(shù)據(jù)一起通過。如果特殊功能操作200是ALU,奇偶校驗將根據(jù)ALU的結(jié)果產(chǎn)生。
其它情況,如特殊功能單元包含一計數(shù)操作,如果輸入狀態(tài)和輸入奇偶校驗是已知的,可采用一種算法來予測該功能結(jié)果是什么樣的奇偶校驗。如本技術(shù)中人所共知的,有許多硬件設(shè)計可根據(jù)輸入操作數(shù)和所進行的操作予測奇偶校驗。奇偶校驗通過或產(chǎn)生單元202也可采用這些奇偶校驗予測的方式。
由奇偶校驗通過或產(chǎn)生單元202產(chǎn)生的奇偶校驗位在其產(chǎn)生后的第一個有效時鐘脈沖到來時將其放在SM奇偶校驗總線延遲寄存器204中。
現(xiàn)會注意到微碼字段112,如前面討論過的它是用來選通12a到12n中的一個特定的特殊功能單元,在圖中它是用來驅(qū)動譯碼單元206。譯碼單元206在功能上與圖2和圖3中的譯碼單元110和122相似,然而,在這兒它還要處理與奇偶校驗有關(guān)的另一種功能。譯碼單元206的輸出的一部分是經(jīng)由緩沖器208執(zhí)行SM總線輸出的功能,在圖中它作為一種人所共知的禁止功能。譯碼單元206的輸出也對SM奇偶校驗驅(qū)動延遲寄存器210提供數(shù)據(jù)輸入。SM奇偶校驗驅(qū)動延遲寄存器210驅(qū)動輸出緩沖器212的允許/禁止,緩沖器212將SM奇偶校驗總線延遲寄存器的結(jié)果傳送到SM奇偶校驗總線16a。
那些在此領(lǐng)域中有一般技術(shù)水平的人將會了解到在方框200中的特殊功能操作的結(jié)果是通過緩沖器208到SM總線16的,因此通過寄存器204和210時鐘延遲,所以要比奇偶位到達SM奇偶校驗總線16a提前一個時鐘周期。然而,為補償這個奇偶校驗總線16a驅(qū)動奇偶校驗檢查216。SM寄存器214的輸出作為從SM奇偶校驗總線16a來的未被寄存的奇偶校驗位傳送到奇偶校驗檢查器216。因為在SM總線奇偶校驗總線16a上的奇偶校驗位已被延遲一個時鐘周期,加到奇偶校驗數(shù)據(jù)總線的SM寄存器214使SM總線16上的數(shù)據(jù)輸出延遲一個時鐘周期,這樣奇偶校驗檢查單元216就能同時接受數(shù)據(jù)和奇偶校驗位。
本發(fā)明的公布已一般地說明了奇偶校驗的概念,即每個字有一個校驗位,那些在此領(lǐng)域中有一般技術(shù)水平人會看出也可采用其它的方法。比如,可用多個奇偶校驗位復(fù)蓋整個字的不同字段。用兩個奇偶校驗位,每一個復(fù)蓋一個字的一半(下部者上部)。
圖5示出了特殊功能模件的條件檢查硬件能力的框圖,其硬件結(jié)構(gòu)允許CPU定序器根據(jù)不同檢測條件來轉(zhuǎn)移。
如前邊敘述過的位于12a到12n中每一特殊功能模塊單元是各種特殊功能的單元,它們能對其操作需要的參數(shù)進行各種檢測。比如,如果特殊功能單元是ALU,能進行的各種檢測可包括進位位的設(shè)置,ALU=0,正或負的ALU結(jié)果。
每個特殊功能單元12中都裝備有兩個多路轉(zhuǎn)換器130和132,經(jīng)由微碼字段114部分,分別為其從許多可用的檢測條件中進行選擇,114微碼字段早在圖2、3、4中討論過。在此領(lǐng)域中有一般技術(shù)水平的人將會認識到選擇兩個特別的測試有某種程度的任意,而且可從中選擇數(shù)目較多或較少的檢測,這樣可以改變多路轉(zhuǎn)換器的數(shù)目(如130和132)。多路轉(zhuǎn)換器130和132的輸出分別經(jīng)由緩沖器138和140來驅(qū)動兩條總線,即STESTA總線134和STESTB總線136。與在圖2到圖4中描述的形式相似,在當12個特殊功能單元與其相關(guān)部分既不驅(qū)動SM總線也不驅(qū)動STESTA線134或STESTB線136時就將緩沖器138和140的輸出禁止。緩沖器138和140的禁止輸入由譯碼電路110驅(qū)動,譯碼電路110為微碼位字段112譯碼。這在前面談及這些特殊功能單元時已討論過。
這樣,在當選定了一個特殊功能單元并且微碼字段114部分也確定了一個或一組檢測,這些測試的結(jié)果通過多路轉(zhuǎn)換器130和132和緩沖器138和140被放置在STESTA線134和STESTB線136上。
STESTA線134和STESTB線136的終端是定序條件轉(zhuǎn)移硬件單元139。定序轉(zhuǎn)移硬件單元139的功能是使用由STESTA和STESTB總線提供的檢測結(jié)果進行微轉(zhuǎn)移并且當產(chǎn)生某些微轉(zhuǎn)移時有選擇地禁止某些微碼線。定序條件轉(zhuǎn)移硬件單元139的結(jié)構(gòu)和功能已在未決申請案,序號為537,886,申請日1983、9、29中完全公開,如本發(fā)明一樣讓給同樣的受讓人,顯然,這已結(jié)合在本發(fā)明中。
這里示出的特定的總線寬度是考慮到特定的使用而確定的。發(fā)明人采用的是16位寬的加兩位奇偶校驗位,本發(fā)明中使用的實際總線寬度只是一種設(shè)計的選擇。
各種寄存器的數(shù)目和使用只是作為例子,并非表明局限于這些例子。那些在本領(lǐng)域中有一般技術(shù)水平的人會明白,如果遵循設(shè)計技術(shù)的內(nèi)在規(guī)則,本發(fā)明可以采用TTL、ECL、CMOS、MOS、NMOS或其它技術(shù)也能得到此功能。
寄存器,多路轉(zhuǎn)換器,ALU和特殊功能邏輯可用分離的邏輯元件或門陣列的一部分或一般的LSI來實現(xiàn)。
權(quán)利要求
1.用于數(shù)據(jù)處理系統(tǒng)中的流水線CPU的結(jié)構(gòu)包括用于第一數(shù)據(jù)通道中的算術(shù)邏輯運算裝置,對操作數(shù)進行算術(shù)邏輯處理;在第二數(shù)據(jù)通道中用于處理操作數(shù)的多個可選擇特殊功能的裝置;多個第一寄存器裝置,用于存儲要處理的操作數(shù)。多個第一多路轉(zhuǎn)換器裝置,用于從上述第一寄存器裝置中挑選出一個上述操作數(shù)。多個第二寄存器裝置,是連接上述第一多路轉(zhuǎn)換器裝置,用于存放上述選出的操作數(shù)的;多個第二多路轉(zhuǎn)換器裝置,是為在上述選出的操作數(shù)中作進一步選擇并將其選擇的結(jié)果放到上述的第一和第二通道上;總線裝置,是用于將上述的算術(shù)邏輯和上述的特別功能裝置的結(jié)果送回到上述的第一和第二寄存器裝置。
專利摘要
將各種功能單元包括計算機的中央處理器組織在一起使主運算器和包括一個輔助運算器在內(nèi)的特別功能單元能訪問數(shù)據(jù)寄存器,并能從高速緩沖存儲器中存取文學(xué)常數(shù)和數(shù)據(jù)。由一條通用總線使功能單元與主數(shù)據(jù)通道緊密地偶合,同時允許CPU定序器根據(jù)多種情況進行轉(zhuǎn)移,這些情況可由檢測線來判別。功能單元發(fā)出的奇偶校驗要比結(jié)果晚一個時鐘周期,因此奇偶校驗通道不會影響機器的周期。該結(jié)構(gòu)允許選擇某些未用的微碼來檢查CPU運行是否正確,即當兩總線失比時可以停止CPU的運行。
文檔編號G06F9/38GK85101348SQ85101348
公開日1987年1月31日 申請日期1985年4月1日
發(fā)明者羅伯特·威汀·霍斯特, 向能·約瑟夫·林奇, 雪里洛·洛諾·康斯坦丁諾, 約翰·馬丁·彭斯 申請人:坦德姆計算機有限公司導(dǎo)出引文BiBTeX, EndNote, RefMan