專利名稱:一種并行處理除法電路的制作方法
技術領域:
本發明涉及一種并行處理除法電路,特別涉及由于被除數小于除數而使得商數小于1的一種并行處理除法電路。
通常,計算機器使用軟件去執行加、減、乘和除計算,這是由于雖然使用硬件計算比使用軟件計算要快,但要構成一使用硬件的機器卻相當復雜。用來執行其商數為小于1的值的除法-數字電路尤其復雜。
本發明的目的是提供一種執行除法的簡單的并行處理電路,這種電路由硬件構成并被設計成執行商數小于1(即被除數小于除數)的除法計算。
為了實現上述目的本發明提供了一種并行處理除法電路其接收被除數數據、大于被除數數據的除數數據、一起始信號和一復位信號,并輸出商數。
該電路包括一時間控制電路,該時間控制電路接收該起始信號和一時鐘信號并輸出一時間控制信號,該時間控制信號控制輸出結果數據的時間。
一數據寄存器,其接收該除數數據并輸出除數存貯數據,該除數存貯數據與該除數數據反相并且按照起始信號而與該時鐘信號同步;一數據選擇電路,其接收被除數數據、起始信號和時鐘信號,并選擇被除數數據或選擇根據該起始信號左移一比特的現有選擇的數據,或從被左移一比特的現有選擇的數據減去除數數據的數據,并且隨后輸出選擇的數據和控制數據;一減法器,其接收該除數存貯數據和該選擇數據以執行減法計算,并輸出減法結果數據和一表明作為減法的一結果是否出現溢出的輸出進位。
一控制信號產生電路,其接收該時間控制信號、該控制數據和輸出進位,并且當該時間控制信號具有一高邏輯電平值和當該控制數據和該輸出進位之一具有一高邏輯電平值時輸出一具有一高邏輯電平值的選擇控制信號。
一結果數據產生電路,其接收該時間控制信號,選擇控制信號,根據該時間控制信號與該時鐘信號同步,存貯該選擇控制信號并通過一比特一比特地將該選擇控制信號左移而輸出數據。
參照附圖對本發明的最佳實施例進一步作出詳細說明
圖1是說明本發明的并行處理除法電路的一最佳實施例的框圖;圖2是說明由圖1所示本發明的該實施例所使用的并行處理除法電路的一時間控制電路100的框圖;圖3是說明由圖1所示本發明的該實施例所使用的并行處理除法電路的一鎖存電路;圖4是說明由圖1所示本發明的該實施例所使用的并行處理除法電路的一數據寄存器;圖5是說明由圖1所示本發明的該實施例所使用的并行處理除法電路的一數據選擇電路;圖6A和6B共同構成一說明由圖1所示本發明的該實施例所使用的并行處理除法電路的一結果數據產生電路的電路;和圖7是說明由圖1所示的本發明該實施例所使用的并行處理除法電路的操作定時的圖。
圖1是說明本發明的并行處理除法電路的方框圖。如圖1所示,最佳并行處理除法電路包括有一接收復位信號RSB、起始信號S和時鐘信號CK的時間控制電路100。該時間控制電路輸出一時間控制信號TL以控制輸出除法結果數據的時間;一數據寄存器200接收除數數據BDAT<80>、起始信號S和時鐘信號CK,并且按照起始信號與時鐘信號CK同步輸出與除數數據BDAT<80>反相的除數存貯數據REG<80>;一數據選擇電路300接收被除數數據ADAT<80>、減法輸出數據S<80>、起始信號S和時鐘信號CK,和選擇等于被除數數據ADAT<80>的數據或選擇按照該起始信號S被左移一位的在前已有的減法輸出數據,并輸出一選擇數據ACC<80>和控制數據ACC<9>。
一減法器400,其接收來自數據寄存器200的除數存貯數據REG<80>和來自數據選擇電路300的選擇數據ACC<80>,以執行減法計算并輸出減法結果數據S<80>和輸出進位S<9>;一控制信號產生電路500,其接收一時間控制信號TL、來自數據選擇器300的控制數據ACC<9>和來自減法器400的輸出進位S<9>,并且當時間控制信號TL具有一高邏輯電平和當控制數據ACC<9>或輸出進位S<9>具有一高邏輯電平時輸出一具有高邏輯電平的選擇控制信號SC;一結果數據產生電路600,其接收該時間控制信號TL、選擇控制信號SC和時鐘信號CK,按照該時間控制信號TL與時鐘信號CK相同步,存貯將其左移一位的選擇控制信號SC并輸出結果數據QUO<80>。
圖2是說明本發明并行處理除法電路的時間控制電路100的框圖。如圖2所示,該時間控制電路100包括一根據時鐘信號CK向下遞增計數的遞降計數器(down-counter)110。
當該遞降計數器110具有一固定值的輸出時,通過對該值的檢測,檢測器120輸出一第一復位信號FR。
一鎖存電路130,其接收一復位信號RSB、一起始信號S和該第一復位信號FR。這個鎖存電路130被設置得在當復位信號RSB或第一復位信號FR有效時輸出一低邏輯電平,而當該起動信號S有效時輸出一高邏輯電平。
一觸發器,其接收該鎖存器130的輸出和時鐘信號CK并且與該時鐘信號CK同步地輸出一時間控制信號TL。
該時間控制信號TL被連接到遞降計數器110的復位支路RB并且當該時間控制信號TL具有低邏輯電平值時導致該遞降計數器復位。
檢測器120可以由一“與非”電路構成。由于如圖1所示的本發明并行處理除法電路中該除數數據具有9比特,所以該檢測器120檢測自遞降計數器110輸出的值并當該輸出等于十進制值10時輸出一低邏輯電平值。
如圖3所示,該鎖存電路130具有一含有第一、第二和第三輸入端的第一“或非”門131以及含有第一和第二輸入端的第二“或非”門132。該第一“或非”門131的第一輸入端連接有一與復位信號RSB反相的信號。該第一“或非”門131的第二輸入端連接有第一復位信號FR。該第一“或非”門131的第三輸入端與第二“或非”門132的輸出相連。該第二“或非”門132的第一輸入端被連接到第一“或非”門131的輸出端,并且第二“或非”門132的第二輸入端接有一起始信號S。
圖4示出了本發明的并行處理除法電路的一數據寄存器。該數據寄存器200包括有反相器240;用來接收除數數據BDAT<80>的幾位比特數據和起始信號S和將它們反相并輸出。每個寄存器210、220、230分別包括有一除數數據邏輯250、一時鐘分支C、一輸入分支D、一復位分支R、一第一輸出Q和具有與第一輸出Q反相的第二輸出QB的觸發器。
除數數據邏輯250包括有第一和第二“與”門251、252和具有第一及第二輸入端的第三“或非”門253。第一“與”門251的第一輸入端接有起始信號S,而第一“與”門251的第二輸入端與除數數據BDAT<80>的一比特相連。第二“與”門252的第一輸入端連接到反相器240的輸出,并且第二“與”門252的第二輸入端與觸發器260的第二輸出端QB相連接。第三“或非”門253的第一輸入端與第一“與”門251的輸出端相連接,并且第三“或非”門253的第二輸入端連接到第二“與”門252的輸出端。
圖5示出了本發明的并行處理除法電路的一數據選擇電路300。該數據選擇電路包括有接收一起始信號S和一選擇控制信號SC并輸出一選擇控制信號SP的一選擇控制信號產生電路340。
提供有選擇寄存器310、320、330,以使其具有比被除數數據ADAT<80>的比特數要多1的選擇寄存器。該選擇寄存器輸出選擇數據ACC<80>和控制數據ACC<9>。
該選擇控制產生電路340包括有第一和第二反相器341、342和第三及第四“與”門343、344。第一反相器341接收起始信號S并輸出其反相信號。第二反相器342接收選擇控制信號SC,將其反相并輸出一移位控制信號SH。第三“與”門343在來自第一和第二反相器的輸出信號之間執行一邏輯“與”操作并輸出一第一控制信號SHF。第四“與”門344在第一反相器341的輸出和選擇控制信號SC之間執行邏輯“與”操作,并且輸出一第二控制信號SP。
每個選擇寄存器310、320、330分別具有一被除數數據邏輯310a、320a、330a和具有一時鐘分支C、一輸入分支D、一復位分支R及一輸出分支Q的觸發器310b、320b、330b。該時鐘分支C和復位分支R分別連接到時鐘信號CK及復位信號RSB。
各個觸發器310b、320b、330b的輸入分支D與被除數邏輯310a、320a、330a的各個輸出端相連接。各自的觸發器的輸出分支Q被輸出到相繼的被除數數據邏輯。
該被除數數據邏輯310a是由在起始信號和最低數據比特ADAT<0>之間執行邏輯“與”功能的一“與”門構成的。
最后的被除數數據邏輯330a包括有接收來自前面最接近它的觸發器的輸出分支Q和第一控制信號SHF并且在這兩個信號之間執行邏輯“與非”操作的第一“與非”門331。還提供有接收來自減法器400的減法結果數據S<80>的最高比特S<8>和第二控制信號SP并在這兩個信號之間執行邏輯“與非”操作的第二“與非”門332。一第三“與非”門333其接收第一和第二“與非”門331、332的輸出并對該信號執行邏輯“與非”操作。
其余的被除數數據邏輯每一個具有一接收來自觸發器的在先分支的輸出Q和第一控制信號SHF并在這兩個信號之間執行邏輯“與非”操作的“與非”門321。一“與”門322,其接收來自減法器400的減法結果數據S<0>-S<7>但不是最高比特S<8>和第二控制信號SP并且對這兩個信號執行邏輯“與”操作。
另一個“與”門323,其接收起始信號S和被除數數據ADAT<1>-ADAT<8>的一比特但不是最低位比特ADAT<0>,并且對這兩個信號執行邏輯“與”操作。一“或非”門324接收“與”門322、323的輸出,并且對它們執行邏輯“或非”操作。一“與非”門325接收自“與非”門321和“或非”門324的輸出并對這些信號執行邏輯“與非”操作。
圖6A和6B表明了在圖1所示本發明的實施例中所使用的一結果數據產生電路600的一個實施例。該結果數據產生電路600包括一反相器601,其接收時間控制信號TL,對其反相,并輸出一反相的控制信號ITL。
該結果數據產生電路600還包括分別具有結果數據邏輯610a-690a和觸發器610b-690b的多個結果數據寄存器610-690,其中每個觸發器具有一時鐘分支C,一輸入分支D、一復位分支R和一輸出分支Q。
該觸發器的輸出Q形成結果數據QUO<80>。每個觸發器的輸入分支D被連接到它的各個結果數據邏輯610a-690a。該復位分支R和時鐘分支C分別連接到復位信號RSB和時鐘信號CK。
該第一結果數據寄存器610的結果數據邏輯610a包括有一“與”門611,其接收輸入的選擇控制信號SC和時間控制信號TL并對這兩個輸入信號執行邏輯“與”操作。
該結果數據邏輯610a進一步包括有接收該反相時間控制信號ITL和觸發器610b的輸出QUO<2>作為輸入并對這二個信號執行邏輯“與”操作的“與”門612。一接收“與”門611、612的輸出并對這二個信號執行邏輯“或非”操作的“或非”門613。
除了輸入到“與”門621-691的是來自相鄰的較低比特位上工作的結果數據邏輯的觸發器的輸出而不是該選擇控制信號SC之外,其余結果數據寄存器620-690的每個結果數據邏輯620a-690a與第一結果數據寄存器610的結果數據邏輯610a是相同的。
在圖2中所示的并行處理除法電路的時間控制電路100中,在初始時復位信號RSB具有一用來進行更新的低邏輯電平值,這樣鎖存電路130的輸出端就可輸出一低邏輯電平值,觸發器140輸出的時間控制信號可以是一低邏輯電平值,并且遞降計數器110可以復位并輸出十進制的0。
如果在一時鐘信號CK被輸入的一個期間內該復位信號RSB具有一高邏輯電平值并且起始信號S具有一高邏輯電平值,則該鎖存電路130的輸出具有一高邏輯電平值,與時鐘信號CK同步的時間控制信號TL輸出一高邏輯電平值,并且該遞降計數器110開始計數。
如果該遞降計數器110輸出十進制10,則該檢測器120從一高邏輯電平值變為一低邏輯電平值,這樣鎖存電路130將輸出一低邏輯電平值,觸發器140將與時鐘信號CK同步并輸出一低邏輯電平值,并且該遞降計數器110將被復位。也就是,根據起始信號S該時間控制信號TL輸出一高邏輯電平值,在具有高邏輯電平值之后與時鐘信號CK相同步,并輸出一低邏輯電平值。
當上述時間控制信號TL具有一高邏輯電平值時,該并行處理除法電路接收被除數數據ADA<80>和除數數據BAT<80>并輸出該除法結果的結果數據QUO<80>。
在如圖4所示的數據寄存器200中,如果復位信號RSB為低,則所有除數存貯數據REG<80>均被復位。如果復位信號RSB為高并且起始信號具有一高邏輯電平值,則每個寄存器210、220、230接收該除數存貯數據REG<80>,將其反相,與一時鐘信號CK相同步并且當起始信號S為一低邏輯電平值時輸出在每個寄存器210、220、230中存貯的數據。也就是,在該并行處理除法電路中,每個寄存器與時鐘信號CK同步并且當一起始信號S通過一表示除法開始的除數數據BAT<80>被激勵時接收一除數數據BAT<80>,并且輸出除數存貯數據REG<80>,其是除數數據BAT<80>的反相數據,直至輸出除法的結果數據。
在圖5所示的數據選擇電路中,當起始信號是一高邏輯電平值時,選擇控制產生電路340輸出的第一和第二控制信號SHF、SP均具有一低邏輯電平值,這樣每個被除數據邏輯310a、320a可選擇一被除數數據ADA<80>,在該被除數數據邏輯310a、320a之中該最高比特的一被除數數據邏輯330a可輸出一低邏輯電平值,作為幾個觸發器310b、320b的輸出的一選擇數據ACC<80>可與一時鐘信號CK同步并輸出ADA<80>,并且作為最后觸發器330b的輸出的一控制數據ACC<9>可輸出一低邏輯電平值。
當起始信號S是一低邏輯電平值和選擇控制信號SC是一高邏輯電平值時,第二選擇信號SP輸出一高邏輯電平值并且第一選擇信號SHF輸出一低邏輯電平值。這就允許該最低比特的被除數數據邏輯310a具有一低邏輯電平值,其余比特的被除數數據邏輯320a、330a選擇一減法結果數據S<80>,作為幾個觸發器320b、330b的輸出的一選擇數據ACC<81>和控制數據ACC<9>與時鐘信號CK同步并輸出一減法結果數據S<80>,并且具有該最低比特的作為一選擇寄存器310的輸出的一選擇數據ACC<0>輸出一低邏輯電平值。
當起始信號S是一低邏輯電平值和選擇控制信號SC是一低邏輯電平值時,作為選擇控制信號產生電路的輸出之一的第一控制信號SHF輸出一高邏輯電平值。第二控制信號SP輸出一高邏輯電平值,這樣該最低比特的被除數數據邏輯310a可具有一低邏輯電平值,其它比特位的被除數數據邏輯320a、330a可選擇前面分支的觸發器的輸出,該最低比特的選擇數據ACC<0>可與時鐘信號CK同步并輸出一低邏輯電平值,并且作為其余比特的選擇數據ACC<81>和控制數據ACC<9>可與時鐘信號CK同步,將存貯在幾個觸發器310b、320b中的數據被左移一位并將它們輸出。
如圖1所示,減法器400接收一具有高邏輯電平值的輸入進位比特、選擇數據ACC<80>和除數存貯數據REG<80>,相加每個比特并且輸出一表明是否產生溢出的輸出進位比特S<9>。如上所述,因為除數存貯數據REG<80>是該除數數據BAT<80>的反相的數據,所以減法器400輸出一從選擇數據ACC<80>減去該除數數據BAT<80>的結果。也就是,減法器400執行“選擇數據ACC<80>一除數數據BAT<80>”的功能。
如圖1中所示,控制信號產生電路500接收選擇數據ACC<9>、輸出進位S<9>和時間控制信號TL并且當時間控制信號TL具有高邏輯電平值和當選擇數據ACC<9>或輸出進位S<9>具有高邏輯電平值時輸出一具有高邏輯電平值的選擇控制信號SC,而在所有其它情況下輸出一具有低邏輯電平值選擇控制信號SC。
在圖6中所示的結果數據產生電路600中,當時間控制信號TL為高時,第一結果數據邏輯610a選擇和輸出一選擇控制信號SC。其余結果數據邏輯620a-690a分別選擇和輸出存貯在以下一較低比特工作的鄰接的觸發器中的數據。觸發器610b-690b接收與時鐘信號CK同步的結果數據邏輯610a-690a的輸出,并且輸出一結果數據QUO<80>。也就是,當時間控制信號TL為高時,它接收與時鐘信號CK同步的選擇控制信號SC并且一比特一比特地左移。
移位順序如下所述從結果數據QUO<80>被存貯在第三比特QUO<2>中的選擇信號SC的數據與時鐘信號CK同步地被一比特一比特地左移到在下一較高位置的比特,因而,在移位到結果數據QUO<80>之中的最高比特QUO<8>之后,它可被移位到最低比特QUO<0>并且隨后被移位到第二比特QUO<1>。
另外,在圖1所示的本發明并行處理除法電路中,當被除數數據ADA<80>由除數數據BAT<80>相除并且從結果數據QUO<80>丟掉最高比特QUO<8>時,表示該結果的結果數據QUO<70>的誤差約在+1.5%和-1.5%之間。
圖7示出了本發明并行處理除法電路的操作定時。在該所示例子中,被除數數據ADA<80>是十進制數10(16進制的04E)和除數數據BAT<80>是十進制數112(16進制的070)。在以下說明中,所有數據均以16進制表示。
首先,復位信號RSB輸入一低邏輯電平值以更新該觸發器和該鎖存電路。在該更新周期期間,來自時間控制電路100的時間控制信號TL和自控制信號產生電路500輸出的選擇控制信號SC輸出低邏輯電平值。從數據寄存器200輸出的除數存貯數據REG<80>、從數據選擇電路300輸出的選擇數據S<80>、從控制數據ACC<9>和減法器400輸出的減法結果數據S<80>、從結果數據產生電路600輸出的結果數據QUO<80>、和輸出進位S<9>均被復位。
在這種更新周期之后,該復位信號RSB輸入一高邏輯電平值。
起始信號S接收被除數數據ADA<80>和除數數據BAT<80>,并指明這個數據接收的開始。時間控制電路100的鎖存電路130具有一高邏輯電平值,時間控制信號TL與時鐘信號CK同步并具有一高邏輯電平值,和遞降計數器110與下一時鐘信號CK同步并開始計數。當該遞降計數器110的輸出達到十進制數10時,檢測器120從高邏輯電平值轉接到低邏輯電平值,鎖存電路130被復位,時間控制信號TL輸出一低邏輯電平值,并且該遞降計數器110的輸出DCO被復位。如果被除數數據和除數數據每一個是N比特數據,則在N-2時鐘周期期間該時間控制信號TL將保持一高邏輯電平值。因此,在被除數數據和除數數據每個為9比特的數據的情況下,在7個時鐘周期期間內該時間控制信號TL保持一高邏輯電平值。
當起始信號S為高時自數據寄存器200輸出的除數存貯數據REG<80>與該時鐘信號CK同步,并且當起始信號為低時輸出18F(010的反相)直到用鎖存的該數據作為除法結果的結果數據QUO<80>被輸出為止。
當起始信號S為高時,選擇數據ACC<80>與第一時鐘CK同步并選擇一被除數數據ADA<80>,04E,并且該控制數據ACC<9>具有一低邏輯電平值。減法器400將04E與上述選擇數據ACC<80>相加18F為除數存貯數據REG<80>,并且該減法器400的輸出進位是一高邏輯電平值。
也就是,減法器400從作為選擇數據ACC<80>的04E中減去作為除數數據BAT<80>的010。另外,減法器400的減法結果數據S<80>是1DF并且該輸出進位S<9>具有一低邏輯電平值。當時間控制信號TL具有一高邏輯電平值時,控制信號產生電路500輸出的選擇控制信號SC分別根據上述控制數據ACC<9>和上述輸出進位S<9>而輸出一低邏輯電平值。結果數據產生電路600輸出的結果數據QUO<80>輸出與前面數據相同數值的000。
該數據選擇電路300輸出的選擇數據ACC<81>和控制數據ACC<9>根據具有上述低邏輯電平值的選擇控制信號而與第二時鐘信號CK同步并輸出左移一比特位的數據。在該選擇數據ACC<80>中的該最低比特ACC<0>輸出一低邏輯電平值。也就是,選擇數據ACC<80>輸出09C和控制數據ACC<9>輸出一低邏輯電平值。減法器400的減法結果數據S<80>是02C并且其一輸出進位具有一高邏輯電平值。該控制數據ACC<9>具有一低邏輯電平值,輸出進位S<9>具有一高邏輯電平值和時間控制信號TL具有一低邏輯電平值,這樣該選擇控制信號SC輸出一高邏輯電平值,并且結果數據QUO<80>與第三時鐘信號同步并輸出數據004。
根據具有上述高邏輯電平值的選擇控制信號SC,該選擇數據ACC<81>和控制數據ACC<9>與第三時鐘信號CK同步,選擇02C和在選擇數據之中的該最低比特ACC<9>具有一低邏輯電平值。也就是,選擇數據ACC<80>是058和選擇數據ACC<9>具有一低邏輯電平值。該減法結果數據S<80>是1E8和輸出進位S<9>具有一低邏輯電平值。上述控制數據ACC<9>和輸出進位S<9>分別具有低邏輯電平值,并且還有時間控制信號TL具有一低邏輯電平值,這樣該選擇控制信號SC輸出一低邏輯電平值,并且該結果數據QUO<80>與第四時鐘信號CK同步并輸出一數據008。
根據如上所述的方法,該數據選擇電路300輸出的選擇數據ACC<80>與第四時鐘信號CK同步,輸出一數據0B0,并且該控制數據ACC<9>具有一低邏輯電平值。減法器400的減法結果數據S<80>是040并且該輸出進位S<9>具有一高邏輯電平值。上述控制數據ACC<9>和輸出進位S<9>具有一高邏輯電平值,這樣該選擇控制信號SC輸出一高邏輯電平值,并且該結果數據QUO<80>與第五時鐘信號CK同步并輸出一數據014。
數據選擇電路300輸出的選擇數據ACC<80>與第五時鐘信號CK同步,輸出一數據080,并且該控制數據ACC<9>輸出一低邏輯電平值。減法器400的減法結果數據S<80>是010和該輸出進位S<9>具有一高邏輯電平值。控制數據ACC<9>具有一低邏輯電平值和輸出進位S<9>具有一高邏輯電平值,這樣該選擇控制信號SC輸出一高邏輯電平值,并且該結果數據QUO<80>與第二時鐘信號同步并輸出一數據02C。
數據選擇電路300輸出的選擇數據ACC<80>與第六時鐘信號CK同步,輸出一數據020,并且該控制數據ACC<9>輸出一低邏輯電平值。減法器400的減法結果數據S<80>是1B0并且該輸出進位S<9>具有一低邏輯電平值,這樣該選擇控制信號SC輸出一低邏輯電平值,并且該結果數據QUO<80>與第七時鐘信號CK同步并輸出一數據058。
數據選擇電路300輸出的選擇數據ACC<80>與第七時鐘信號CK同步,輸出數據040,并且該控制數據ACC<9>輸出一低邏輯電平值。減法器400的減法結果數據S<80>是1D0和輸出進位S<9>具有一低邏輯電平值,這樣選擇控制信號輸出一低邏輯值并且該結果數據QUO<80>與第八時鐘信號CK同步并輸出一數據0B0。
數據選擇電路300輸出的選擇數據ACC<80>與第八時鐘信號CK同步,輸出數據080,并且該控制數據ACC<9>輸出一低邏輯電平值。該減法器400的減法結果數據S<80>是010,該輸出進位S<9>具有一高邏輯電平值,并且上述時間控制信號TL具有一低邏輯電平值,這樣該選擇控制信號SC輸出一低邏輯電平值。
作為一結果數據QUO<80>所產生的0B0與第八時鐘信號同步,并且等于二進制形式的010110000。這時,將該最高比特丟掉,剩下為10110000,以十進制形式可表示為1*1/2+1*1/8+1*1/16=0.6875。另外,在上述例子中,因為被除數數據ADA<80>是十進制數76和除數數據BAT<80>是十進制數112,該除法的結果是76/112=0.6785。
因此,可以構成用于執行除法且與理想結果相比較其相關誤差僅為±1.5%的簡單電路。
很明顯本技術領域的技術人員在不違背本發明的范圍和構思情況下可容易地做出各種其它的改進。因此,本發明權利要求的范圍并不僅限于上述的說明內容,而是包括了本發明所屬的所有新穎的可專利的特征,包含該技術領域中等同對待的所有特征。
權利要求
1.一種并行處理除法電路,其接收被除數數據、大于被除數數據的除數數據、一起始信號和一復位信號,所述并行處理除法電路包括一時間控制電路,其接收所述起始信號和一時鐘信號并且輸出用來控制輸出除法結果數據的時間的時間控制信號;一數據寄存器,其接收所述除數數據并輸出反相于所述除數數據的除數存貯數據并根據該起始信號與該時鐘信號同步;一數據選擇電路,其接收所述被除數數據,減法結果數據、所述起始信號和所述時鐘信號,并且其選擇所述被除數數據和根據所述起始信號左移一比特位的當前減法結果數據之一的數據,因此,輸出選擇數據和控制數據;一減法器,其接收所述除數存貯數據和所述選擇數據,執行減法計算,并輸出所述減法結果數據和一輸出進位,其指明是否該減法結果呈現溢出;一控制信號產生電路,其接收所述時間控制信號、所述控制數據和所述輸出進位,并且當所述時間控制信號具有一高邏輯電平值和當所述控制數據和所述輸出進位之一具有一高邏輯電平值時輸出一具有一高邏輯電平值的選擇控制信號;和一結果數據產生電路,其接收所述時間控制信號、所述選擇控制信號和所述時鐘信號,根據該時間控制信號與所述時鐘信號同步,在該第三比特上存貯所述選擇控制信號并且通過一比特一比特地將選擇控制信號左移而輸出結果數據。
2.如權利要求1所述的并行處理除法電路,其中,包括一遞降計算器,根據所述時鐘信號一個一個地減少它的內容;一檢測器,當所述遞降計數器的輸出具有一固定值時輸出一第一復位信號;一鎖存器,當所述復位信號或所述第一復位信號被激勵時其具有一低邏輯電平值,和當所述起始信號被激勵時其輸出一高邏輯電平值;和一觸發器,接收所述鎖存器的輸出,其與所述時鐘信號同步,并且輸出一時間控制信號。
3.如權利要求1所述的并行處理除法電路,其中,當所述除數數據具有N比特時,在所述時鐘信號的N-2時鐘周期內所述時間控制信號具有一高邏輯電平值。
4.如權利要求2所述的并行處理除法電路,其中,當所述除數數據具有N比特時在所述時鐘信號的N-2時鐘周期內所述時間控制信號具有一高邏輯電平值。
5.如權利要求2所述的并行處理除法電路,其中,當所述時鐘控制信號是一低邏輯電平值時所述遞降計數器被復位。
6.如權利要求2所述的并行處理除法電路,其中,所述檢測器包括一“與非”電路。
7.如權利要求2所述的并行處理除法電路,其中,如果該除數數據具有9比特,則當所述遞降計數器的輸出是十進制10時所述檢測器輸出一低邏輯電平值。
8.如權利要求6所述的并行處理除法電路,其中,如果該除數數據具有9比特,則當所述遞降計數器的輸出是十進制10時所述檢測器輸出一低邏輯電平值。
9.如權利要求2所述的并行處理除法電路,其中,所述鎖存電路包括一具有第一輸入端、第二輸入端和第三輸入端的第一“或非”門,和具有第一輸入端和第二輸入端的第二“或非”門,所述第一“或非”門的第一輸入端被與一復位信號反相的信號相連,所述第一“或非”門的第二輸入端被與所述第一復位信號反相的一信號相連,和所述第一“或非”門的第三輸入端被與第二“或非”門的輸出端相連;所述第二“或非”門的第一輸入端被與所述第一“或非”門的輸出端相連和所述第二“或非”門的第二輸入端被與一起始信號相連。
10.如權利要求1所述的并行處理除法電路,其中,當所述起始信號是一高邏輯電平值時所述寄存器輸出除數存貯數據。
11.如權利要求1所述的并行處理除法電路,其中,所述數據寄存器包括一除數數據邏輯,該除數數據邏輯當所述起始信號是一高邏輯電平值時接收所述除數數據的一比特,反相于所述比特并將其輸出,當所述起始信號是一低邏輯電平值時輸出每級的數據,還包括一與一時鐘信號同步的觸發器它輸出所述除數數據邏輯的輸出。
12.如權利要求10所述的并行處理除法電路,其中,所述數據寄存器包括一除數數據邏輯,該除數數據邏輯當所述起始信號是一高邏輯電平值時接收所述除數數據的一比特,反相于所述比特并將其輸出當所述起始信號是一低邏輯電平值時輸出每級的數據,還包括一與一時鐘信號同步的觸發器它輸出所述除數數據邏輯的輸出。
13.如權利要求12所述的并行處理除法電路,其中,所述除數數據邏輯包括第一“與”門其接收所述起始信號和所述除數數據的一比特并執行一邏輯“與”操作;一第二“與”門其接收反相的起始信號和反相的所述觸發器的輸出信號并執行邏輯“與”操作;一第三“或非”門其接收所述第一“與”門的輸出和所述第二“與”門的輸出并執行邏輯“或非”操作。
14.如權利要求13所述的并行處理除法電路,其中,所述除數數據邏輯包括第一“與”門其接收所述起始信號和所述除數數據的一比特并執行一邏輯“與”操作;一第二“與”門其接收反相的起始信號和反相的所述觸發器的輸出信號并執行邏輯“與”操作;一第三“或非”門其接收所述第一“與”門的輸出和所述第二“與”門的輸出并執行邏輯“或非”操作。
15.如權利要求1所述的并行處理除法電路,其中,所述數據選擇電路當所述起始信號是高邏輯電平值時選擇所述被除數數據,當所述起始信號是低邏輯電平值和所述選擇控制信號是一低邏輯電平值時選擇一將已有的被選擇數據一比特一比特地左移的數據,和當所述起始信號是一低邏輯電平值并且所述控制信號是一高邏輯電平值時選擇將減法結果數據一比特一比特地左移的一數據。
16.如權利要求1所述的并行處理除法電路,其中,所述數據選擇電路包括一選擇控制信號產生電路,它接收一反相的所述選擇控制信號和一反相的所述起始信號,執行一邏輯“與”操作,并輸出一第一控制信號,以及它接收所述選擇控制信號和反相的所述起始信號,執行一邏輯“與”操作并輸出一第二控制信號;和觸發器,它接收比所述被除數數據比特多1的多個被除數邏輯,并且它們的每個輸出與所述時鐘信號同步并將它們輸出,此時,根據所述第一控制信號、所述第二控制信號和所述起始信號,所述被除數邏輯選擇所述被除數數據、所述減法結果數據或該分支的觸發器的輸出。
17.如權利要求11所述的并行處理除法電路,其中,所述數據選擇電路包括一選擇控制信號產生電路,它接收一反相的所述選擇控制信號和一反相的所述起始信號,執行一邏輯“與”操作,并輸出一第一控制信號,以及接收所述選擇控制信號和反相的所述起始信號,執行一邏輯“與”操作并輸出一第二控制信號,和觸發器,它接收比所述被除數數據比特多1的多個被除數邏輯,并且它們的每個輸出與所述時鐘信號同步并將它們輸出,此時,根據所述第一控制信號,所述第二控制信號和所述起始信號,所述被除數邏輯選擇所述被除數數據、所述減法結果數據或該分支的觸發器的輸出。
18.如權利要求16所述的并行處理除法電路,其中,所述被除數邏輯之中的最低比特的邏輯包括一接收所述被除數數據的最低比特和所述起始信號并執行邏輯“與”操作的第三“與”門;該最高比特的邏輯包括一第一“與非”門其接收相鄰分支的觸發器的輸出和所述第一控制信號并執行一邏輯“與非”操作;一第二“與非”門其接收所述減法結果數據的最高比特和所述第二控制信號并執行一邏輯“與非”操作;和一第三“與非”門其接收所述第一“與非”門和第二“與非”門的輸出并執行一邏輯“與非”操作;和其中其余的被除數數據邏輯包括一第四“與非”門其接收相鄰分支的觸發器的輸出和所述第一控制信號并執行一邏輯“與非”操作;一第四“與”門其接收所述減法結果數據的一比特但不是所述減法結果數據的最高比特和所述第二控制信號并執行一邏輯“與”操作;一第五“與”門其接收所述起始信號和被除數數據的一比特但不是所述被除數數據的最低比特位并執行一邏輯“與”操作;一第四“或非”門其接收所述第四“與”門的輸出和所述第五“與”門輸出并執行一邏輯“或非”操作;和一第五“與非”門其接收所述第四“與非”門的輸出和所述第四“或非”門的輸出并執行一邏輯“與非”操作。
19.如權利要求1所述的并行處理除法電路,其中,所述控制信號產生電路包括第五“或非”門其接收所述控制數據和所述輸出進位并執行一邏輯“或非”操作;和一第六“或非”門其接收反相的所述時間控制信號和所述第五“或非”門的輸出并執行一邏輯“或非”操作。
20.如權利要求1所述的并行處理除法電路,其中,所述結果數據產生電路與該時鐘信號同步,當該時間控制信號是高邏輯電平值時在第三比特存貯所述結果數據并且一比特一比特地被左移,和當所述時間控制信號是一低邏輯電平值時鎖存一已有存貯的數據。
21.如權利要求1所述的并行處理除法電路,其中,當所述除數數據包含N比特數據時所述結果數據產生電路移位N-2次。
22.如權利要求20所述的并行處理除法電路,其中,當所述除數數據包含N比特數據時所述結果數據產生電路移位N-2次。
23.如權利要求1所述的并行處理除法電路,其中,所述結果數據產生電路包括觸發器其接收結果數據邏輯和它們的每個輸出且與所述時鐘信號同步并將它們輸出;在所述結果數據邏輯之中第一結果數據邏輯包括一第六“與”門其接收所述時間控制信號和所述選擇控制信號并執行一邏輯“與”操作;一第七“與”門其接收反相的所述時間控制信號和來自所述幾個觸發器的第二觸發器的輸出并執行一邏輯“與”操作;和一第一“或”門其接收所述第六“與”門的輸出和所述第七“與”門的輸出并執行一邏輯“或”操作;和其中另外的結果數據邏輯分別包括一第八“與”門其接收所述時間控制信號和來自一相鄰分支的一觸發器的輸出并執行邏輯“與”操作;一第九“與”門其接收反相的所述時間控制信號和存貯所述結果數據邏輯的輸出的觸發器的輸出并執行一邏輯“與”操作;和一第二“或”門其接收所述第八“與”門的輸出和所述第九“與”門的輸出并執行一邏輯“或”操作。
24.如權利要求20所述的并行處理除法電路,其中,所述結果數據產生電路包括觸發器其接收結果數據邏輯和它們的每個輸出且與所述時鐘信號同步并將它們輸出;在所述結果數據邏輯之中第一結果數據邏輯包括一第六“與”門其接收所述時間控制信號和所述選擇控制信號并執行一邏輯“與”操作;一第七“與”門其接收反相的所述時間控制信號和來自所述幾個觸發器的第二觸發器的輸出并執行一邏輯“與”操作;和一第一“或”門其接收所述第六“與”門的輸出和所述第七“與”門的輸出并執行一邏輯“或”操作;和其中另外的結果數據邏輯分別包括一第八“與”門其接收所述時間控制信號和來自一相鄰分支的一觸發器的輸出并執行一邏輯“與”操作;一第九“與”門其接收反相的所述時間控制信號和存貯所述結果數據邏輯的輸出的觸發器的輸出并執行一邏輯“與”操作;和一第二“或”門其接收所述第八“與”門的輸出和所述第九“與”門的輸出并執行一邏輯“或”操作。
25.一種并行處理除法電路,其接收被除數數據、大于該被除數據的除數數據、一起始信號和一復位信號,所述并行處理除法電路,包括一時間控制產生電路級,當所述起始信號被激勵時其產生一與時鐘信號同步并具有一高邏輯電平值的信號,并且當所述起始信號具有一低邏輯電平值時執行除法操作;一第一減法級,當所述起始信號被激勵時接收所述被除數數據,從所述被除數數據中減去所述除數數據,并輸出減法結果數據和一表明溢出的輸出進位;一第一移位級,如果在所述第一減法級中所述輸出進位有一低邏輯電平值則將所述被除數數據向左移位1比特,并輸出一低邏輯電平值的并被輸入到該最低比特的第一被除數數據;一第二移位級,如果所述輸出進位具有一高邏輯電平值時將所述減法結果數據左移1比特,并且輸出一低邏輯電平值的及輸入到該最低比特的第二被除數數據;一第二減法級,從所述第一被除數數據和第二被除數數據之一中減去所述除數數據;和一循環移位級,如果一輸出進位具有一高邏輯電平值或所述第一被除數數據的最高比特或在所述第二減法級中第二被除數數據具有一高邏輯電平值則執行所述第一移位級和所述第二減法級直到所述時間控制信號具有一低邏輯電平值為止,如果所述輸出進位和所述第一被除數或第二被除數數據的最高比特均具有一低邏輯電平值則執行所述第一移位級和所述第二減法級,如果所述第一移位級被執行則向一第三比特輸入一低邏輯電平值直到所述時間控制信號具有一低邏輯電平值為止,和如果所述第二移位級被執行則向該第三比特輸入一高邏輯電平值并且1比特一比特地向左執行該循環移位。
26.如權利要求25所述的并行處理除法電路,其中,如果所述除數數據包括N比特,所述循環移位級執行N-2移位。
全文摘要
一種并行處理除法電路,其接收被除數數據,大于該被除數數據的除數數據、一起始信號和一復位信號,并輸出其商數。其包括一時間控制電路;一數據寄存器;一數據選擇電路;一減法器,其執行減法計算,并輸出減法結果數據和表明出現的減法結果是否溢出的一輸出進位。一控制信號產生電路,當該時間控制信號和該控制數據及輸出進位均具有一高邏輯電平值時輸出一具有高邏輯電平值的選擇控制信號。以及,一結果數據產生電路。
文檔編號G06F7/537GK1149734SQ9610388
公開日1997年5月14日 申請日期1996年5月3日 優先權日1995年10月31日
發明者金永哲 申請人:三星電子株式會社