專利名稱:大規(guī)模集成電路的算術(shù)/邏輯運算部件的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于大規(guī)模集成電路和高速計算機設(shè)計領(lǐng)域。
集成電路的速度是限制計算機速度的關(guān)鍵因素。為了提高速度,高速計算機多采用流水線技術(shù)。在傳統(tǒng)的流水線計算機中時鐘周期Tclk=T+tr,其中T為站間集成電路和連線所造成的鏈路最大延遲時間,tr為站寄存器所需的時間,一般T>>tr,故時鐘周期受鏈路的絕對延時的限制。為了進一步提高計算機的速度計算機界不得不采用速度快但功耗大、集成度低的ECL電路,而半導(dǎo)體廠家則千方百計采用新工藝以降低電路的延遲時間。盡管這些努力曾有效地提高了計算機的速度,但在器件速度已近極限的今天,進一步的提高就很困難了。
1969年L.W.Cotton提出了最大速率計算機的設(shè)想,其基本原理是將流水線各站寄存器間的組合邏輯網(wǎng)絡(luò)設(shè)計成均質(zhì)的,即各位數(shù)據(jù)/控制信號在組合邏輯網(wǎng)絡(luò)中的傳送是齊頭并進的,輸出信號在時間上是一致的。這樣在同一組合邏輯網(wǎng)絡(luò)中可有多組數(shù)據(jù)/控制信號依次傳送,以達到提高時鐘頻率的目的。但是到目前為止尚無據(jù)此原理設(shè)計的計算機和相應(yīng)的大規(guī)模集成電路出現(xiàn)。1981年P(guān).M.Kogge著文稱Cotton的設(shè)想是很難實現(xiàn)的,參見文獻1和2。
文獻1L.W.Cotton,“Maximum-ratePipelineSystems”,AFIPSProc.SJCC,1969581-586文獻2P.M.Kogge,“TheArchitec-tureofPipelinedComputers”,McGraw-Hill1981本發(fā)明目的是設(shè)計一種適用于最大速率計算機的關(guān)鍵集成電路,算術(shù)邏輯運算部件ALU(Arithmetic-LogicUnit)。該器件的設(shè)計不是著眼于降低邏輯鏈路的絕對延遲時間,而是追求盡可能小的輸出信號相對延遲時間,即輸出信號的一致性,其最大時間差等于、小于5ns,使用該器件的計算機可以在200MHZ或稍低的時鐘頻率下工作。
本發(fā)明ALU16是一個16位的算術(shù)/邏輯運算部件,它對兩個16位的操作數(shù)A,B進行32種操作,產(chǎn)生16位的結(jié)果F。ALU16的總框圖和各模塊的邏輯圖分別示于
圖1至圖6。
圖1ALU16總框2輸入模塊(101)、(102)、(103)、(104)邏輯3組間先行進位鏈模塊(200)邏輯4輸出模塊(301)、(302)、(303)、(304)邏輯5延時模塊(401)、(402)、(403)邏輯6延時(兼均分負載)模塊(404)、(405)邏輯7信號相互關(guān)系和時間均衡設(shè)計示意中輸入、輸出端命名和功能說明如下A0-A15 第1操作數(shù)(加于電路的實際信號為A0-A15)B0-B15 第2操作數(shù)(加于電路的實際信號為B0-B15)F0-F15結(jié)果數(shù)M算術(shù)/邏輯操作選擇碼S0-S3功能選擇碼Cin最低位的進位/借位輸入端Cout向高位的進位/借位輸出端在功能上Cin和Cout只與算術(shù)運算有關(guān)。它們的電位在加法和減法操作時的含義如表1所示。
表1
ALU16的32種算術(shù)/邏輯操作功能見附表。
邏輯說明1.ALU16總框圖說明ALU16的邏輯電路由4塊相同、4位一組的輸入模塊(101)、(102)、(103)、(104),組間先行進位鏈模塊(200),4塊相同、4位一組的輸出模塊(301)、(302)、(303)、(304),以及延時模塊(401)、(402)、(403)、(404)、(405)組成。
輸入模塊一方面生成中間數(shù)據(jù)Pi和Gi,并通過延時模塊(401)連至輸出模塊的輸入端Pi和Gi,另一方面生成進位傳播函數(shù)PGi和進位產(chǎn)生函數(shù)GGi,并接至組間先行進位鏈模塊(200)的相應(yīng)端。另外功能選擇碼SO-S3經(jīng)過延時(兼均分負載)模塊(404)分別接至(101)、(102)、(103)、(104)的S0-S3端。
組間先行進位鏈模塊(200)接收輸入模塊產(chǎn)生的PGi和GGi和進位輸入信號Cin,輸出并行的向第4位、第8位、第12位和第16位的進位信號,分別記為C4、C8、C12和Cout。C4、C8和C12分別接至輸出模塊(302)、(303)和(304)的進位輸入端,Cout用于多個ALU16相連時作為下一級的進位輸入信號使用。要指出的是為了達到時間均衡,成組先行進位鏈模塊的Cin是經(jīng)過延時模塊(402)后得到的,而輸出模塊(301)的輸入Cin則是經(jīng)過延時模塊(402)和(403)得到的。
輸出模塊(301)、(302)、(303)、(304)產(chǎn)生結(jié)果數(shù)F0-F15。它的輸入信號除Pi、Gi和進位信號(Cin,C4,C8,C12)外還有算術(shù)/邏輯選擇信號M。后者經(jīng)延時(兼均分負載)模塊(405)產(chǎn)生的輸出分別接至輸出模塊(301)、(302)、(303)、(304)的M端。
2.輸入模塊邏輯說明輸入模塊(101)、(102)、(103)、(104)由輸入門函數(shù)(見圖2虛線以下部分)和進位傳播/產(chǎn)生函數(shù)(見圖2虛線以上部分)兩部分邏輯電路組成。輸入門函數(shù)邏輯接收兩個操作數(shù)A,B,并在功能選擇碼S0-S3的控制下生成不同操作功能所需要的中間函數(shù)Pi和Gi,且有Gi=Ai+Bi·S0+Bi·SiPi=Ai·Bi·S2+Ai·Bi·S3式中i為各位的序號(下同)。函數(shù)Pi和Gi一方面作為輸出模塊的輸入信號(經(jīng)過延遲和反相),另一方面又在輸入模塊內(nèi)生成成組進位傳播函數(shù)PGi和成組進位產(chǎn)生函數(shù)GGi。對于輸入模塊(101)有PG0=P3·P2·P1·P0GG0=G3+P3·G2+P3·P2·G1+P3·P2·P1·G0同樣對于輸入模塊(102)、(103)、(104)分別有PG1=P7·P6·P5·P4GG1=G7+P7·G6+P7·P6·G5+P7·P6·P5·G4PG2=P11·P10·P9·P8GG2=G11+P11·G10+P11·P10·G9+P11·P10·P9·G8PG3=P15·P14·P13·P12GG3=G15+P15·G14+P15·P14·G13+P15·P14·P13·G123.組間先行進位鍵模塊(200)邏輯說明組間先行進位鏈模塊生成向第4、8、12和16位的進位信號,且有G4=GG0+PG0·CinC8=GG1+PG1·GG0+PG1·PG0·CinC12=GG2+PG2·GG1+PG2·PG1·GG0+PG2·PG1·PG0·CinC16=Cout=GG3+PG3·GG2+PG3·PG2·GG1+PG3·PG2·PG1·GG0+PG3·PG2·PG1·PG0·Cin4.輸出模塊(301)、(302)、(303)、(304)邏輯說明。
輸出模塊由組內(nèi)先行進位邏輯和兩級半加和邏輯組成。組內(nèi)進位函數(shù)Zi滿足Z0=M·CinZ1=M·(G0+P0·Cin)Z2=M·(G1+P1·G0+P1·P0·Cin)Z3=M·(G2+P2·G1+P2·P1·G0+P2·P1·P0·Cin)Z4=M·C4Z5=M·(G4+P4·C4)Z6=M·(G5+P5·G4+P5·P4·C4)Z7=M·(G6+P6·G5+P6·P5·G4+P6·P5·P4·C4)Z8=M·C8
Z9=M·(G8+P8·C8)Z10=M·(G9+P9·G8+P9·P8·C8)Z11=M·(G10+P10·G9+P10·P9·G8+P10·P9·P8.C8)Z12=M·C12Z13=M·(G12+P12·C12)Z14=M·(G13+P13·G12+P13·P12·C12)Z15=M·(G14+P14·G13+P14·P13·G12+P14·P13·P12·C12)第一級半加邏輯和第二級半加邏輯分別滿足Hi=Pi·GiFi=Hi ZiFi(i=0-15)即結(jié)果數(shù)。
5.延時模塊說明延時模塊(401)、(402)、(403)(見圖5)為時間補償而設(shè)。(401)有反相作用,其鏈路延時為7t.(402)、(403)僅起時間補償作用,其鏈路延時分別為6t和4t。
6.延時(兼均分負載)模塊說明。
延時(兼均分負載)模塊(404)、(405)(見圖6)一方面起分散負載作用,另一方起時間補償作用,其鏈路延時分別為2t和10t。
時間均衡設(shè)計上述所有模塊和模塊間的連接都精心地進行了時間均衡設(shè)計,設(shè)計規(guī)范如下.
1.信號負載個數(shù)限制在4個以內(nèi).
2.門的輸入端個數(shù)限制在3個以內(nèi).
3.根據(jù)工藝所給出的時間參數(shù)選用適當(dāng)?shù)拈T電路,并根據(jù)邏輯鏈路的最大延時對各平行鏈路進行時間補償。
圖7是ALU16各信號間的相互關(guān)系和時間均衡設(shè)計的示意圖。圖中弧形框中的字母為信號名,帶箭頭的曲線表示兩組信號的因果關(guān)系。曲線下邊的數(shù)字表示信號所通過的鏈路所在的模塊號,曲線上邊標(biāo)出了該鏈路所需的延遲時間。如果視橫軸為時間軸,單位為t,則曲線在橫軸上的投影為因果信號所需的延遲時間。圖中實曲線表示三個基本模塊,即輸入模塊、組間先行進位鏈模塊和輸出模塊的時間關(guān)系,虛曲線則表示時間均衡設(shè)計后相應(yīng)信號間的時間關(guān)系。
時間均衡設(shè)計分兩步進行,一是模塊的所有輸入信號應(yīng)盡可能在時間上取齊,例如輸出模塊的輸入信號Pi、Gi、C4、C8、C12、Cin和M到輸出信號Fi的延遲時間均為6t-7t,這是在模塊設(shè)計時實現(xiàn)的;二是所有原始輸入信號Ai、Bi、S0-S3、Cin和M應(yīng)在時間上取齊,以使它們到輸出信號Fi的延遲時間與最長鏈路(由Ai、Bi至Fi)的延遲時間16t-17t大致相等。這是在模塊互連時實現(xiàn)的。
由圖7可知,原始輸入信號M僅是輸出模塊的輸入信號,但為了與最長鏈路的延遲時間一致,增設(shè)了延時(兼均分負載)模塊(405),其延時為10t。又如原始輸入信號Cin作為輸出模塊的輸入也應(yīng)延遲10t,而作為組間先行進位鏈模塊(200)的輸入則要求延遲6t,所以原始輸入信號Cin首先通過延時模塊(402)延遲6t,形成組間先行進位鏈模塊(200)的輸入信號Cin,再通過延時模塊(403)延遲4t以形成輸出模塊的輸入信號Cin。再者在輸入模塊(101)、(102)、(103)、(104)中由S0-S3到Pi、Gi的鏈路延時為2t,較平行的最長鏈路(Ai,Si至Pi,Gi)延時少1t-2t,故另增設(shè)了延時(兼均分負載)模塊(404),其延時為2t.又由Pi、Gi至輸出模塊的輸入信號C4、C8、C12的鏈路延時為7t,故為了由Pi、Gi形成輸出模塊的另一組輸入信號Pi、Gi不能只簡單地使用反相器,而是增設(shè)了延時(兼反相)模塊(401),其延時為7t精心的時間均衡設(shè)計使得在原始信號的任何組合下ALU16的輸出信號F0-F15達到高度的一致,其最大時間差等于、小于5ns,使用該集成電路的計算機的時鐘頻率可達當(dāng)前國際上高速計算機的數(shù)倍到十幾倍.另外,用ALU16可很容易地構(gòu)造32位、64位或位數(shù)更多的算術(shù)/邏輯運算部件.
實施例本發(fā)明的時間均衡設(shè)計原則,已通過模型機的實驗得到了充分的驗證.該模型機時鐘周期為9.8ns而本發(fā)明ALU16則是一個集成化的16位的算術(shù)/邏輯運算部件.它對兩個16位的操作數(shù)A,B進行32種操作,產(chǎn)生16位的結(jié)果F.通過計算機對大量數(shù)據(jù)的功能模擬充分驗證了設(shè)計的正確性,該電路采用CMOS工藝,溝道長度1.5um,雙層鋁布線,外殼PLCC封裝,68個輸入輸出引出端.由于精心的設(shè)計,集成化和微細化,使用該發(fā)明的計算機可有比模型機更高的速度.
附表
表中輸出數(shù)據(jù)F=表達式(F即F0-15)A=A0-15B=B0-1權(quán)利要求
1.一種大規(guī)模集成電路的算術(shù)/邏輯運算部件(ALU16),主要由輸入模件(101)、(102)、(103)、(104),組間先行進位鏈模塊(200),輸出模塊(301)、(302)、(303)、(304)組成,其特征在于輸入模塊的門函數(shù)輸出信號(P1-P15,GO-G15)通過32個相同的延時模塊(401)再分別連至輸出模塊(301)、(302)、(303)、(304)的輸入端(P0-P15,G0-G15);進位輸入信號Cin通過延時模塊(402)與組間先行進位鏈(200)相連,且Cin經(jīng)過延時模塊(402)和(403)再與輸出模塊(301)的輸入端Cin相連;功能選擇信號S0-S3通過延時(兼均分負載)模塊(404)再與輸入模塊(101)、(102)、(103)、(104)的S0-S3相連;算術(shù)/邏輯選擇信號M通過延時(兼均分負載)模塊(405)再與輸出模塊(301)、(302)、(303)、(304)的M端相連;各模塊之間的連接與模塊內(nèi)部邏輯均采用時間均衡設(shè)計,其設(shè)計規(guī)范是(1)信號負載個數(shù)限制在4個范圍以內(nèi);(2)門輸入端個數(shù)限制在3個以內(nèi);(3)根據(jù)工藝所給出的時間參數(shù)選用適當(dāng)?shù)拈T電路,并根據(jù)邏輯鏈路的最大延時,對各平行鏈路進行時間補償。根據(jù)上述規(guī)范各基本門電路的延遲時間基本相等,即級延時為t。
2.根據(jù)權(quán)利要求1所述的部件,其特征在于輸入模塊(101)、(102)、(103)、(104)由實現(xiàn)輸入門函數(shù)和進位函數(shù)的門電路組成,其輸出信號Pi和Gi的鏈路延時為3t-4t,其輸出信號PGi、GGi的鏈路延時為7t。
3.根據(jù)權(quán)利要求1所述的部件,其特征在于組間先行進位鏈模塊(200)由實現(xiàn)進位功能的門電路組成,其鏈路延時為4t。
4.根據(jù)權(quán)利要求1所述的部件,其特征在于輸出模塊(301)、(302)、(303)、(304)由實現(xiàn)組內(nèi)先行進位邏輯和兩級半加和的門電路組成,其鏈路延時為6t-7t。
5.根據(jù)權(quán)利要求1所述的部件,其特征在于32個相同的延時模塊(401)的鏈路延時為7t,延時模塊(402)和(403)的鏈路延時分別為6t和4t。
6.根據(jù)權(quán)利要求1所述的部件,其特征在于延時(兼均分負載)模塊(404)和(405)的鏈路延時分別為2t和10t。
全文摘要
大規(guī)模集成電路的算術(shù)/邏輯運算部件ALU16屬于大規(guī)模集成電路和高速計算機設(shè)計領(lǐng)域。該部件由輸入模塊,組間先行進位鏈模塊,輸出模塊和延遲模塊組成。該電路采用了時間均衡設(shè)計技術(shù),使輸出信號最大時間差等于、小于5ns,適于構(gòu)造最大速率流水線計算機,大大提高計算機的運算速度。
文檔編號H03K19/173GK1033722SQ88108339
公開日1989年7月5日 申請日期1988年12月9日 優(yōu)先權(quán)日1988年12月9日
發(fā)明者夏培肅, 王玉祥 申請人:中國科學(xué)院計算技術(shù)研究所