專利名稱:并行分層預(yù)進(jìn)位alu加法模塊的結(jié)構(gòu)的制作方法
技術(shù)領(lǐng)域:
本實(shí)用新型涉及二進(jìn)制加法器電路結(jié)構(gòu),尤其涉及微處理器(MCU)中高 速二進(jìn)制加法器的電路結(jié)構(gòu)。
背景技術(shù):
在微處理器(MCU)設(shè)計(jì)中算術(shù)邏輯單元(ALU)的執(zhí)行時(shí)間在很大程度 上決定了MCU的運(yùn)行速度,而加法器(通常為二進(jìn)制加法器)又是ALU模塊 中的核心部件,因此加法器模塊設(shè)計(jì)的好壞與否在很大程度上將影響微處理器 的整體性能,特別在寬位寬(例如64位)的情況下該影響更為明顯。對于高性能MPU加法器而言,速度顯然是第一位的,所以多采用并行計(jì)算 的方法,并且在電路的設(shè)計(jì)上只須采用少量的器件即可獲得速度上的巨大提升。 如果僅從面積考量,鏈?zhǔn)竭M(jìn)位加法器(Ripple-Carry Adder——RCA)的器件 最少,面積最小,版圖工作量也最小,可是由于加法器的高位進(jìn)位要等待低位 的運(yùn)算結(jié)束后才能得到,所以沒有辦法在速度上達(dá)到要求,因此通常在高速的 加法器中都不會被采用。附圖1是現(xiàn)有技術(shù)下64位并行預(yù)進(jìn)位加法電路的(CLA)結(jié)構(gòu)示意圖。參 見圖l,該加法器電路具有多個(gè)在功能上完全相同的獨(dú)立分段加法模塊(110), 它們根據(jù)輸入的加數(shù)、被加數(shù)和進(jìn)位輸入計(jì)算分段和,并通過進(jìn)位產(chǎn)生模塊 (120)產(chǎn)生最終進(jìn)位輸出,分段和進(jìn)位輸出和分段和補(bǔ)充熱進(jìn)位輸出反饋到各 分段加法模塊(110),選擇分段和的輸出結(jié)果。
參見圖2,每個(gè)獨(dú)立分段加法模塊(110)內(nèi)部包含了2個(gè)實(shí)質(zhì)相同的CLA 加法電路(210),用于計(jì)算當(dāng)進(jìn)位為0或1兩種情況下的部分和,兩個(gè)部分和 的輸出由進(jìn)位產(chǎn)生模塊(120)的進(jìn)位輸出和補(bǔ)充熱進(jìn)位的輸出進(jìn)行選擇得到所 需的和結(jié)果。雖然采用現(xiàn)有技術(shù)設(shè)計(jì)的二進(jìn)制加法器在性能上己經(jīng)可以滿足很多應(yīng)用上 的需求,但在速度繼續(xù)提升和功耗敏感的應(yīng)用中仍有不足之處。由于在現(xiàn)有技 術(shù)中部分和模塊采用實(shí)質(zhì)相同結(jié)構(gòu),進(jìn)位模塊采用多輸出來進(jìn)行部分和選擇, 這些設(shè)計(jì)雖然在結(jié)構(gòu)上比較簡潔,但會造成邏輯上一些不必要的復(fù)雜性,使芯 片面積和功耗增大,連線復(fù)雜程度提高,不利于加法器的片內(nèi)功耗管理和速度 繼續(xù)提升。要解決現(xiàn)有技術(shù)中的不足必須從邏輯架構(gòu)上著手,優(yōu)化邏輯結(jié)構(gòu)、 簡化連線復(fù)雜程度,進(jìn)一步提升二進(jìn)制加法器的性能。發(fā)明內(nèi)容本實(shí)用新型針對上述CPU中ALU加法模塊在速度與功耗控制方面存在的 問題,公開了一種二進(jìn)制加法器的電路結(jié)構(gòu),使加法器在速度明顯提升的情況 下達(dá)到有效的片內(nèi)功耗管理和較短的連線延時(shí)。并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),該結(jié)構(gòu)包含二個(gè)或多個(gè)獨(dú)立的分段 二進(jìn)制加法器及計(jì)算單元, 一進(jìn)位產(chǎn)生單元,其中每個(gè)分段加法器內(nèi)包含有兩 個(gè)帶預(yù)設(shè)進(jìn)位功能的CLA加法器,每一分段的和由一多路數(shù)據(jù)選擇器通過前一 分段加法器的進(jìn)位選擇,且分段加法器可產(chǎn)生傳播位P和進(jìn)位生成位G。所述的CLA加法器,其特征在于所述進(jìn)位產(chǎn)生單元為基于傳播位P的2n 的組合層次結(jié)構(gòu)。所述的并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),其特征在于該結(jié)構(gòu)采用了 邏輯分層預(yù)進(jìn)位并行方式計(jì)算輸入數(shù)據(jù)的和以及進(jìn)位,所述分段加法器、進(jìn)位產(chǎn)生單元均為預(yù)進(jìn)位電路結(jié)構(gòu)。所述的二個(gè)或多個(gè)獨(dú)立的分段二進(jìn)制加法器,其特征在于分段二進(jìn)制加 法器的個(gè)數(shù)由加法器的位寬決定。本實(shí)用新型的有益效果在于采用了預(yù)進(jìn)位并行結(jié)構(gòu)使加法器速度相對于 沒有采用預(yù)進(jìn)位并行結(jié)構(gòu)的加法器來說得到了顯著的提高,提高了 CPU中ALU 模塊的運(yùn)行效率;另外本實(shí)用新型中對傳播位、各進(jìn)位位的生成采用了基于傳播位p的邏輯簡化結(jié)構(gòu),減少了邏輯門的使用,縮小了芯片的面積,并且芯片 內(nèi)部連線也得到簡化使連線延時(shí)降低,從而使芯片的功耗得到有效控制。
現(xiàn)將結(jié)合參考附圖更詳細(xì)的描述本實(shí)用新型所述的并行分層預(yù)進(jìn)位ALU加 法模塊的結(jié)構(gòu),但并不限于附圖圖形所表達(dá)的形式圖1是使用現(xiàn)有技術(shù)設(shè)計(jì)的包含多個(gè)子加法電路和進(jìn)位產(chǎn)生單元的64位二 進(jìn)制預(yù)進(jìn)位加法器電路的一個(gè)實(shí)施例示意圖;圖2是使用現(xiàn)有技術(shù)設(shè)計(jì)的部分和產(chǎn)生電路及預(yù)進(jìn)位產(chǎn)生電路的一個(gè)實(shí)施 例示意圖;圖3是使用本實(shí)用新型所述結(jié)構(gòu)設(shè)計(jì)的64位二進(jìn)制預(yù)進(jìn)位加法器電路的一 個(gè)實(shí)施例示意圖;圖4是使用本實(shí)用新型所述結(jié)構(gòu)設(shè)計(jì)的部分和產(chǎn)生電路及預(yù)進(jìn)位產(chǎn)生電路 的結(jié)構(gòu)示意圖;圖5是部分和產(chǎn)生電路及預(yù)進(jìn)位產(chǎn)生電路中第一級電路的結(jié)構(gòu)示意圖; 圖6是含有簡化邏輯的分層預(yù)進(jìn)位產(chǎn)生電路的一個(gè)實(shí)施例示意圖; 圖7是現(xiàn)有技術(shù)下預(yù)進(jìn)位產(chǎn)生電路的一個(gè)實(shí)施例示意圖;圖8部分和計(jì)算電路中預(yù)設(shè)進(jìn)位邏輯簡化電路的一個(gè)實(shí)施例示意圖。
具體實(shí)施方式
以下將結(jié)合一個(gè)優(yōu)選實(shí)施例來討論本實(shí)用新型所描述的含分層預(yù)進(jìn)位并行 方式的二進(jìn)制加法器電路結(jié)構(gòu),但要注意的是在具體實(shí)施中并不僅限于以下討 論中的電路結(jié)構(gòu),而應(yīng)該包含其它等效的電路結(jié)構(gòu)。本實(shí)用新型所述的預(yù)進(jìn)位并行二進(jìn)制加法器的具體工作過程如下(1) 加法器接收加數(shù)、被加數(shù)和進(jìn)位位,在內(nèi)部按照具體設(shè)計(jì)的要求分段 以并行方式計(jì)算出各分段數(shù)據(jù)和;(2) 分段和采用預(yù)設(shè)進(jìn)位方式計(jì)算出進(jìn)位為0和1兩種情況下的加數(shù)與被加數(shù)的分段和;(3) 部分和加法器產(chǎn)生傳播位以及進(jìn)位生成位傳遞給進(jìn)位生成單元產(chǎn)生最 終進(jìn)位和各分段和的進(jìn)位;(4) 同時(shí)各分段和的進(jìn)位還會返回到各分段和加法器進(jìn)行分段和結(jié)果的選 擇以生成最終的和輸出。圖3是一個(gè)包含并行分層預(yù)進(jìn)位結(jié)構(gòu)的64位二進(jìn)制加法器電路(300)的 一個(gè)實(shí)施例的示意圖。加法器電路(300)所執(zhí)行的功能是接受從數(shù)據(jù)線發(fā)送來 的64位加數(shù)A[63:0], 64位被加數(shù)B[63:0]和進(jìn)位輸入C0,最終產(chǎn)生加法結(jié)果 S[63:0]以及進(jìn)位輸出C。ut。其中50/64:67 =XZ6K / + fi/6丄力/ + CV ("+"表示算術(shù)加法運(yùn)算) C鄉(xiāng)4/ ,. &/6丄力/ =卿丄.。/二進(jìn)制加法器電路300的第一層由8個(gè)可產(chǎn)生傳播位P (350 357)和進(jìn)位 生成位G (360 367)的8位獨(dú)立CLA加法器模塊(310/320)組成,其中包括
7個(gè)含1對進(jìn)位預(yù)設(shè)的CLA加法器模塊(310)和 -個(gè)普通的CLA加法器模塊 (320),層間的8個(gè)CLA加法器模塊(310/320)之間采用類似RCA結(jié)構(gòu)連接, 只是進(jìn)位輸入C^ (341 347)不直接由上一CLA加法器模塊(310/320)產(chǎn)生, 是由第二層的進(jìn)位產(chǎn)生模塊(330)根據(jù)第一層各模塊傳送的P/G (350 357、 360 367)信號返回相應(yīng)的進(jìn)位值G (340 347)。位于第一層的8個(gè)CLA加法 器模塊(310/320)從輸入數(shù)據(jù)總線上分別獲得一組8位的加數(shù)(A「0:7] A[63:541) 和8位的被加數(shù)(B[0:7] B[63:54p,然后利用輸入的數(shù)據(jù)單獨(dú)生成一組帶預(yù)設(shè) 進(jìn)位結(jié)果的8位和(S1[7:0]/S2[7:0] S1[63:54]/S2[63:54])并最終組成所需要的 64位和S[63:0]的輸出,同時(shí)每一單獨(dú)的CLA加法器模塊(310/320)還將產(chǎn)生 傳播位P G50 357)和進(jìn)位生成位G (360~367)傳送到第二層。但要注意本局 的每個(gè)對立CLA加法器模塊并不直接產(chǎn)生進(jìn)位,而只產(chǎn)生進(jìn)位信號P(350 357) 和進(jìn)位生成信號G (360 367)位。每一個(gè)獨(dú)立的CLA加法器模塊(310/320),在最終執(zhí)行時(shí)都是以位對形式 進(jìn)行運(yùn)算的,對于每一對輸入位來說,傳播位P和進(jìn)位生成位G可由以下式子 表示(其中式子中"+ "表示邏輯或功能," "表示邏輯與功能) =々6丄.0/ +早瑪.但為了實(shí)現(xiàn)較為簡潔的邏輯結(jié)構(gòu)和保證運(yùn)算速度,在實(shí)施例設(shè)計(jì)中采用8 對輸入位為一運(yùn)算單位,因而對于每一 CLA加法器模塊(310/320)產(chǎn)生的傳播 位P (350 357)和進(jìn)位生成位G (360 367)會比上述兩邏輯表達(dá)式復(fù)雜, 一般 最終結(jié)果如下式所示<formula>formula see original document page 7</formula><formula>formula see original document page 8</formula>觀察上式發(fā)現(xiàn)傳播位P產(chǎn)生邏輯相當(dāng)復(fù)雜,而且出現(xiàn)非"個(gè)數(shù)項(xiàng),在電路 實(shí)現(xiàn)中會增加邏輯門的使用數(shù)目,對片內(nèi)的功耗控制和連線延時(shí)都帶來了不利 的影響,這也是本發(fā)明要解決的另外一個(gè)問題。本發(fā)明中拋棄使用傳統(tǒng)的進(jìn)位 生成位中的傳播位組合方式,采用分層簡化邏輯方式產(chǎn)生最終的進(jìn)位生成位G(360 367)以減少邏輯門的使用數(shù)目,并以此減少芯片內(nèi)部連線的復(fù)雜程度, 從而達(dá)到對片內(nèi)功耗的控制目的,其具體原理將在下面進(jìn)位位產(chǎn)生模塊的分析 中進(jìn)行說明。二進(jìn)制加法器電路300的第二層由一 CLA進(jìn)位產(chǎn)生單元(330)構(gòu)成,該 層的CLA進(jìn)位產(chǎn)生單元(330)用于接受來自上一層8個(gè)CLA加法器模塊 (310/320)產(chǎn)生的傳播位P (350 357)和進(jìn)位生成位G (36() 367)生成所有
CLA加法器模塊(310/320)的進(jìn)位結(jié)果C; (341 347)和最終進(jìn)位位C。",的生 成。根據(jù)傳播位P(350 357)、進(jìn)位生成位G(360 367)與各進(jìn)位位G"(341 347) 以及最終進(jìn)位位C。",的關(guān)系,并利用本發(fā)明所提出的邏輯簡化方法可得出各進(jìn) 位位G" (341 347)和最終進(jìn)位C。",的邏輯關(guān)系。圖7是一個(gè)采用了簡化邏輯的4位進(jìn)位單元的內(nèi)部電路結(jié)構(gòu)圖,圖6是采 用傳統(tǒng)方法產(chǎn)生進(jìn)位位的單元電路結(jié)構(gòu)圖。相對于傳統(tǒng)設(shè)計(jì)的電路,采用簡化 邏輯的進(jìn)位產(chǎn)生單元電路在結(jié)構(gòu)上呈現(xiàn)明顯的傳播項(xiàng)P的"層次結(jié)構(gòu),第一層 為單一傳播位P和進(jìn)位生成位G的組合邏輯,生成最基本的^+GwA (x表示P 中的任意一位)項(xiàng),第二層為下一層的輸出與AiV,的邏輯與、或結(jié)果,同理第三層的輸出為第二層的輸出與A/V,/^2/Vj的邏輯與、或結(jié)果,并一直下去直到得到進(jìn)位輸出。對于一個(gè)4位的進(jìn)位輸出當(dāng)層次達(dá)到第三層時(shí)己經(jīng)可以得 到所需的輸出了。簡化邏輯除了呈現(xiàn)層次性以外,由于簡化了傳播位P的的組 合方式,在邏輯門的使用數(shù)目和內(nèi)部連線都明顯的減少了,從而減少了芯片內(nèi) 部功耗與連線延時(shí)。對于8位進(jìn)位單元,其原理與上述討論的結(jié)果相似,只是 由于8位進(jìn)位單元本身的邏輯比較復(fù)雜,能實(shí)現(xiàn)的簡化效果更加明顯。對于每一個(gè)獨(dú)立的部分和CLA加法器(310)采用了 2個(gè)CLA加法模塊 (410/420)以并行方式同時(shí)運(yùn)算,同時(shí)每個(gè)部分和CLA加法器(410/420)都 采用了進(jìn)位預(yù)設(shè)定的方式進(jìn)行運(yùn)算。圖4是^個(gè)部分和產(chǎn)生電路及預(yù)進(jìn)位產(chǎn)生 電路的示意圖,該模塊采用的2個(gè)并行CLA加法器模塊(410/420)分別采用預(yù) 設(shè)進(jìn)位0和1進(jìn)行預(yù)計(jì)算,分別得出輸入的8位加數(shù)A[7:0]和被加數(shù)BI7:()j部分 和在進(jìn)位為0和1時(shí)產(chǎn)生的和的結(jié)果S1[7:0] (440)、 S2[7:0] (450)。最終的輸 出為兩個(gè)結(jié)果中的其中一個(gè),而具體結(jié)果的輸出選擇由第二層CLA進(jìn)位生成模 塊(330)返回的進(jìn)位位G" (340 347)控制一個(gè)二選一數(shù)據(jù)選擇器MUX (430)
選擇輸出。當(dāng)輸入進(jìn)位位(340 347)為0時(shí)選擇采用預(yù)設(shè)進(jìn)位0進(jìn)行預(yù)計(jì) 算的CLA加法器(410)結(jié)果Sl[7:0] (440)輸出,否則部分和的輸出S2[7:0| (450)從另外一個(gè)CLA加法器(420)得到。由于采用了預(yù)設(shè)進(jìn)位方式,CLA加法器的和產(chǎn)生邏輯中每一對輸入位的進(jìn) 位邏輯同樣可用上述的邏輯簡化方法獲得相應(yīng)的簡化。圖8所示的是應(yīng)用了簡 化邏輯的進(jìn)位產(chǎn)生單元(430)部分內(nèi)部電路結(jié)構(gòu)圖。由于第一個(gè)部分和產(chǎn)生模 塊中預(yù)設(shè)進(jìn)位輸入被設(shè)為0,與出示進(jìn)位輸入進(jìn)行邏輯與運(yùn)算的相關(guān)邏輯項(xiàng)都被 置為0,因此可以被省略,從而內(nèi)部CLA產(chǎn)生進(jìn)位邏輯得到簡化,即虛框內(nèi)的 邏輯器件可以去掉。同理,第二個(gè)部分和產(chǎn)生模塊中由于預(yù)設(shè)進(jìn)位輸入被設(shè)為1, 因此與進(jìn)位輸入進(jìn)行邏輯與運(yùn)算的項(xiàng)保持,而進(jìn)位輸入1則在邏輯表達(dá)式中可 以被省略。由于邏輯被簡化,因此內(nèi)部連線得到簡化,對減少片內(nèi)連線延時(shí)和 片內(nèi)功耗控制有不少的幫助。對于計(jì)算最低8位和的CLA模塊由于數(shù)據(jù)輸入的同時(shí)進(jìn)位位G 已經(jīng)在數(shù) 據(jù)輸入時(shí)同時(shí)提供,因此只需要采用普通的CLA模塊即可,而并不需要采用預(yù) 設(shè)進(jìn)位方式進(jìn)行計(jì)算,其模塊結(jié)構(gòu)圖如圖5所示。本實(shí)用新型針對CPU的ALU模塊中的核心模塊之一的加法器速度提升以 及功耗控制提出了一種行之有效的結(jié)構(gòu),該結(jié)構(gòu)采用了預(yù)進(jìn)位并行方式使加法 器速度相對于沒有采用預(yù)進(jìn)位方式的加法器來說得到了顯著的提高,提高了 CPU中ALU模塊的運(yùn)行效率;另外本發(fā)明中對傳播位、進(jìn)位位的生成采用了邏 輯簡化的方法,減少了邏輯門的使用縮小了芯片的面積,并且芯片內(nèi)部連線也 得到簡化使連線延時(shí)降低,從而使芯片的功耗得到有效控制。
權(quán)利要求1、 并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),其特征在于該結(jié)構(gòu)包含二個(gè)或多個(gè)獨(dú)立的分段二進(jìn)制加法器及計(jì)算單元, 一進(jìn)位產(chǎn)生單元,其中每個(gè)分段加法器內(nèi)包含有兩個(gè)帶預(yù)設(shè)進(jìn)位功能的CLA加法器,每一分段的和由一多路數(shù) 據(jù)選擇器通過前一分段加法器的進(jìn)位選擇,且分段加法器可產(chǎn)生傳播位P和進(jìn) 位生成位G。
2、 根據(jù)權(quán)利要求1所述的并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),其特征在于所述進(jìn)位產(chǎn)生單元為基于傳播位P的2n的組合層次結(jié)構(gòu)。
3、 根據(jù)權(quán)利要求1所述的并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),其特征 在于該結(jié)構(gòu)采用了邏輯分層預(yù)進(jìn)位并行方式計(jì)算輸入數(shù)據(jù)的和以及進(jìn)位,所述分段加法器、進(jìn)位產(chǎn)生單元均為預(yù)進(jìn)位電路結(jié)構(gòu)。
4、 根據(jù)權(quán)利要求1所述的并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),其特征 在于所述分段二進(jìn)制加法器的個(gè)數(shù)由加法器的位寬決定。
專利摘要本實(shí)用新型公開了一種并行分層預(yù)進(jìn)位ALU加法模塊的結(jié)構(gòu),該結(jié)構(gòu)包含二個(gè)或多個(gè)獨(dú)立的分段二進(jìn)制加法器及計(jì)算單元,一進(jìn)位產(chǎn)生單元,其中每個(gè)分段加法器內(nèi)包含有兩個(gè)帶預(yù)設(shè)進(jìn)位功能的CLA加法器,每一分段的和由一多路數(shù)據(jù)選擇器通過前一分段加法器的進(jìn)位選擇,且分段加法器可產(chǎn)生傳播位P和進(jìn)位生成位G。本實(shí)用新型由于采用了預(yù)進(jìn)位并行結(jié)構(gòu)使加法器速度得到了顯著的提高,提高了CPU中ALU模塊的運(yùn)行效率;對傳播位、各進(jìn)位位的生成采用了基于傳播位P的邏輯簡化結(jié)構(gòu),減少了邏輯門的使用,縮小了芯片的面積,并且芯片內(nèi)部連線也得到簡化使連線延時(shí)降低,從而使芯片的功耗得到有效控制。
文檔編號G06F7/575GK201021994SQ20062001636
公開日2008年2月13日 申請日期2006年12月8日 優(yōu)先權(quán)日2006年12月8日
發(fā)明者波 劉, 周顯文, 亮 彭, 謝洪德, 濤 鄭, 毅 韋 申請人:深圳艾科創(chuàng)新微電子有限公司