亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種乘法器裝置和實現(xiàn)乘法運算的方法

文檔序號:6492201閱讀:225來源:國知局
一種乘法器裝置和實現(xiàn)乘法運算的方法
【專利摘要】本發(fā)明提供了一種乘法器裝置,包括:比較器、第一選擇器、第二選擇器以及乘法單元;比較器用于將第一乘數(shù)的高k位與0比較,如果不相等,則乘法單元將第一乘數(shù)和第二乘數(shù)的低(c-a+k-1)位數(shù)據(jù)進行乘法運算后輸出,如果相等,則乘法單元將第一乘數(shù)的低(a-k)位數(shù)據(jù)和第二乘數(shù)進行乘法運算后輸出,其中,第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,第一乘數(shù)和第二乘數(shù)的乘積的位寬的最大值為c。可知,當(dāng)滿足c>a+b,并且2b≥c時,則可在開區(qū)間(a-b,a+b-c+1)內(nèi)任選一自然數(shù)k,組成一a×s的乘法器,可以保證s小于b。本發(fā)明實現(xiàn)了結(jié)構(gòu)更加優(yōu)化、占用面積小的乘法器裝置。本發(fā)明還提供了一種實現(xiàn)乘法運算的方法。
【專利說明】一種乘法器裝置和實現(xiàn)乘法運算的方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及硬件設(shè)計領(lǐng)域,尤其是涉及一種乘法器裝置和實現(xiàn)乘法運算的方法?!颈尘凹夹g(shù)】
[0002]乘法器是一種常用的邏輯器件,通過硬件電路實現(xiàn)對兩個數(shù)的乘法運算。隨著硬件電路的高速發(fā)展和對各種終端運算能力需求的不斷提高,對乘法器的要求也在不斷的提高。根據(jù)不同的應(yīng)用場合,設(shè)計者對乘法器的速度、面積、功耗等提出了不同的要求,然而,在很多情況下,可能需要犧牲某一方面的性能來得到更優(yōu)的另一方面性能,例如需要達到較高的運算速度時,需要面積更大的乘法器才能實現(xiàn)。在現(xiàn)有技術(shù)中,根據(jù)不同的應(yīng)用需求衍生出了如Wallace Tree乘法器,Booth乘法器等多種乘法器。其中,Synopsys公司利用其在邏輯綜合(logic synthesis)方面累積的優(yōu)勢,在其Designware產(chǎn)品中在網(wǎng)表級對通用乘法器進行了很好的優(yōu)化,在乘法器的面積和速度兩方面的性能上都獲得了較大的優(yōu)勢。
[0003]這些現(xiàn)有技術(shù)中,設(shè)計和優(yōu)化的目標(biāo)都是通用乘法器。所謂“通用”,意思是乘法器的兩個乘數(shù)完全無關(guān),一旦確定兩個乘數(shù)的位寬,則乘數(shù)的取值范圍就是位寬范圍內(nèi)的任意可能取值。例如,對于位寬分別為a和b的兩個乘數(shù),采用的通用乘法器的結(jié)構(gòu)為aXb。實際上,在現(xiàn)實應(yīng)用中,很多情況是兩個乘數(shù)之間具有負(fù)相關(guān)的關(guān)系,即一個乘數(shù)增大時另一乘數(shù)必然減小,一個乘數(shù)減小時另一個乘數(shù)必然增大,并且兩個乘數(shù)的乘積的位寬小于兩個乘數(shù)的位寬之和。目前,即使乘數(shù)滿足負(fù)相關(guān)關(guān)系時,也仍然采用通用乘法器。然而,通用乘法器往往占用面積較大,并且結(jié)構(gòu)復(fù)雜。

【發(fā)明內(nèi)容】

[0004]本發(fā)明解決的技術(shù)問題在于提供一種能夠在乘數(shù)滿足負(fù)相關(guān)關(guān)系時減小乘法器面積、優(yōu)化乘法器結(jié)構(gòu)的乘法器裝置和實現(xiàn)乘法運算的方法。
[0005]為此,本發(fā)明解決技術(shù)問題的技術(shù)方案是:
[0006]本發(fā)明提供了一種乘法器裝置,所述裝置包括:比較器、第一選擇器、第二選擇器以及乘法單元;
[0007]所述比較器用于將第一乘數(shù)的高k位與O比較,如果不相等,則發(fā)送第一控制信號至第一選擇器和第二選擇器,如果相等,則發(fā)送第二控制信號至第一選擇器和第二選擇器;
[0008]所述第一選擇器的第一輸入端的輸入數(shù)據(jù)為第一乘數(shù),第一選擇器的第二輸入端的輸入數(shù)據(jù)為第二乘數(shù),所述第一選擇器用于接收到第一控制信號后選擇第一輸入端作為輸入端,接收到第二控制信號后選擇第二輸入端作為輸入端,將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第五輸入端;其中,所述第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,第一乘數(shù)和第二乘數(shù)的乘積的位寬的最大值為C,且(a+b)大于c,a不小于
b,2b不小于c ;[0009]所述第二選擇器的第三輸入端的輸入數(shù)據(jù)為第二乘數(shù)的低m位數(shù)據(jù),第二選擇器的第四輸入端的輸入數(shù)據(jù)為第一乘數(shù)的低η位數(shù)據(jù),所述第二選擇器用于接收到第一控制信號后選擇第三輸入端作為輸入端,接收到第二控制信號后選擇第四輸入端作為輸入端,將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第六輸入端;其中,m =c-a+k-Ι且n = a_k, k為大于a_b且小于a+b-c+1的任一自然數(shù);
[0010]所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出,所述第五輸入端的位寬為a,第六輸入端的位寬為m和η中最大的數(shù)。
[0011]優(yōu)選地,其中,
[0012]所述c為奇數(shù)時,k= (2a_c+l)/2,則所述第六輸入端的位寬為(c_l)/2。
[0013]優(yōu)選地,其中,
[0014]所述c為偶數(shù)時,k= (2a_c)/2+l或(2a_c)/2,則所述第六輸入端的位寬為c/2~l。
[0015]優(yōu)選地,所述裝置還包括:第一寄存器、第二寄存器和第三寄存器;
[0016]所述第一寄存器用于對第一乘數(shù)進行寄存后將第一乘數(shù)發(fā)送至第一選擇器的第一輸入端、將第一乘數(shù)的低η位數(shù)據(jù)發(fā)送至第二選擇器的第四輸入端、以及將第一乘數(shù)的高k位數(shù)據(jù)發(fā)送至所述比較器;
[0017]所述第二寄存器用于對第二乘數(shù)進行寄存后將所述第二乘數(shù)發(fā)送至所述第一選擇器的第二輸入端和將第二乘數(shù)的低m位數(shù)據(jù)發(fā)送至第二選擇器的第三輸入端;
[0018]所述比較器用于將第一乘數(shù)的高k位與O比較包括:所述比較器用于對第一寄存器發(fā)送的第一乘數(shù)的高k位與O比較;
[0019]所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出包括:所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出至所述第三寄存器;
[0020]所述第三寄存器用于對所述乘法單元乘法運算后的數(shù)據(jù)進行寄存后輸出。
[0021]優(yōu)選地,所述裝置還包括:第四寄存器、第五寄存器、第六寄存器和第三寄存器;
[0022]所述第四寄存器用于對第一乘數(shù)進行寄存后將第一乘數(shù)發(fā)送至第一選擇器的第一輸入端和將第一乘數(shù)的低η位數(shù)據(jù)發(fā)送至第二選擇器的第四輸入端;
[0023]所述第五寄存器用于對第二乘數(shù)進行寄存后將所述第二乘數(shù)發(fā)送至所述第一選擇器的第二輸入端和將第二乘數(shù)的低m位數(shù)據(jù)發(fā)送至第二選擇器的第三輸入端;
[0024]所述比較器發(fā)送第一控制信號至第一選擇器和第二選擇器包括:
[0025]所述比較器發(fā)送第一控制信號至第六寄存器;
[0026]所述比較器發(fā)送第二控制信號至第一選擇器和第二選擇器包括:
[0027]所述比較器發(fā)送第二控制信號至第六寄存器;
[0028]所述第六寄存器用于對比較器發(fā)送的信號進行寄存并將寄存后的信號分別發(fā)送至第一選擇器和第二選擇器;
[0029]所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出包括:所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出至所述第三寄存器;
[0030]所述第三寄存器用于對所述乘法單元乘法運算后的數(shù)據(jù)進行寄存后輸出。[0031]優(yōu)選地,所述裝置還包括:第七寄存器、第八寄存器和第三寄存器;
[0032]所述第一選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單兀的第五輸入端包括:所述第一選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至第七寄存器;
[0033]第七寄存器用于對第一選擇器發(fā)送的數(shù)據(jù)進行寄存并將寄存后的數(shù)據(jù)發(fā)送至所述乘法單元的第五輸入端;
[0034]所述第二選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第六輸入端包括:所述第二選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至第八寄存器;
[0035]第八寄存器用于對第二選擇器發(fā)送的數(shù)據(jù)進行寄存并將寄存后的數(shù)據(jù)發(fā)送至所述乘法單元的第六輸入端;
[0036]所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出包括:所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出至所述第三寄存器;
[0037]所述第三寄存器用于對所述乘法單元乘法運算后的數(shù)據(jù)進行寄存后輸出。
[0038]本發(fā)明還提供了一種實現(xiàn)乘法運算的方法,第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,第一乘數(shù)和第二乘數(shù)的乘積的位寬的最大值為c,且a+b大于c,a不小于b, 2b不小于
c,所述方法包括:
[0039]將第一乘數(shù)的高k位與O比較,如果不相等,則通過乘法單元將所述第二乘數(shù)的低m位與所述第一乘數(shù)作乘法運算,如果相等,則通過所述乘法單元將所述第一乘數(shù)的低η位與所述第二乘數(shù)作乘法運算;
[0040]其中,m = c-a+k-Ι且n = a_k, k為大于a_b且小于a+b-c+1的任一自然數(shù)。
[0041]優(yōu)選地,其中,
[0042]所述c 為奇數(shù)時,k = (2a_c+l)/2。
[0043]優(yōu)選地,其中,
[0044]所述c 為偶數(shù)時,k = (2a-c) /2+1 或 k = (2a_c) /2。
[0045]優(yōu)選地,所述將第一乘數(shù)的高k位與O比較包括:通過比較器將第一乘數(shù)的高k位與O比較。
[0046]通過以上技術(shù)方案可知,第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,a不小于b,第一乘數(shù)與第二乘數(shù)的乘積的位寬最大值為C,當(dāng)滿足c大于(a+b),并且2b不小于c時,則可在開區(qū)間(a-b,a+b-c+1)內(nèi)任選一自然數(shù)k,組成一 aX s的乘法器,其中s為a_k和c-a+k-Ι中最大的數(shù),由于k位于開區(qū)間(a_b, a+b-c+1)內(nèi),因此可以保證s小于b。從而本發(fā)明的乘法器裝置的主要部件乘法單元的邏輯結(jié)構(gòu)由通用乘法器的aXb降低到了 aXs,而增加的一個比較器和兩個多路選擇器都是面積小,邏輯通路短的基本器件,因此本發(fā)明實現(xiàn)了結(jié)構(gòu)更加優(yōu)化、占用面積更小的乘法器裝置。
【專利附圖】

【附圖說明】
[0047]圖1為本發(fā)明提供的乘法器裝置的具體實施例結(jié)構(gòu)示意圖;
[0048]圖2為本發(fā)明提供的乘法器裝置的另一具體實施例結(jié)構(gòu)示意圖;[0049]圖3為本發(fā)明提供的乘法器裝置的另一具體實施例結(jié)構(gòu)示意圖;
[0050]圖4為本發(fā)明提供的乘法器裝置的另一具體實施例結(jié)構(gòu)示意圖;
[0051]圖5為本發(fā)明提供的乘法器裝置的另一具體實施例結(jié)構(gòu)示意圖;
[0052]圖6為本發(fā)明提供的實現(xiàn)乘法運算方法的流程示意圖。
【具體實施方式】
[0053]在現(xiàn)實應(yīng)用中,很多情況是兩個乘數(shù)之間具有負(fù)相關(guān)的關(guān)系,即一個乘數(shù)增大時另一乘數(shù)必然減小,一個乘數(shù)減小時另一個乘數(shù)必然增大,并且兩個乘數(shù)的乘積的位寬小于兩個乘數(shù)的位寬之和,這種關(guān)系往往可以使乘法器的結(jié)構(gòu)和面積具有一些特定的優(yōu)化空間。本發(fā)明就是基于兩個乘數(shù)具有負(fù)相關(guān)關(guān)系時,提供一種能夠?qū)崿F(xiàn)結(jié)構(gòu)和占用面積得到優(yōu)化的乘法器裝置。
[0054]請參閱圖1,本發(fā)明提供了一種乘法器裝置,所述裝置包括:比較器101、第一選擇器102、第二選擇器103以及乘法單元104。
[0055]所述比較器101用于將第一乘數(shù)的高k位與O比較,如果不相等,則發(fā)送第一控制信號至第一選擇器102以及發(fā)送第一控制信號至第二選擇器103,如果相等,則發(fā)送第二控制信號至第一選擇器102和發(fā)送第二控制信號至第二選擇器103。
[0056]所述第一選擇器102的第一輸入端的輸入數(shù)據(jù)為第一乘數(shù),第一選擇器102的第二輸入端的輸入數(shù)據(jù)為第二乘數(shù),所述第一選擇器用于接收到第一控制信號后選擇第一輸入端作為輸入端,接收到第二控制信號后選擇第二輸入端作為輸入端,將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元104的第五輸入端;其中,所述第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,第一乘數(shù)和第二乘數(shù)的乘積的位寬的最大值為C,即該乘積的所有可能的位寬均不大于c,即a+b大于c, a不小于b, 2b不小于C。
[0057]所述第二選擇器103的第三輸入端的輸入數(shù)據(jù)為第二乘數(shù)的低m位數(shù)據(jù),第二選擇器103的第四輸入端的輸入數(shù)據(jù)為第一乘數(shù)的低η位數(shù)據(jù),所述第二選擇器103用于接收到第一控制信號后選擇第三輸入端作為輸入端,接收到第二控制信號后選擇第四輸入端作為輸入端,將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元104的第六輸入端;其中,m = c-a+k-Ι且n = a_k, k為大于a_b且小于a+b-c+1的任一自然數(shù)。
[0058]所述乘法單元104用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出,所述第五輸入端的位寬為a,第六輸入端的位寬為m和η中最大的數(shù)S。
[0059]通過以上技術(shù)方案可知,該實施例中,第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,a不小于b,第一乘數(shù)與第二乘數(shù)的乘積的位寬最大值為C,當(dāng)滿足c大于(a+b),并且2b不小于c時,貝U可在開區(qū)間(a-b, a+b-c+1)內(nèi)任選一自然數(shù)k,組成一 aX s的乘法器,其中s為a_k和c-a+k-Ι中最大的數(shù),由于k位于開區(qū)間(a_b,a+b-c+1)內(nèi),因此可以保證s小于b。從而該實施例中的乘法器裝置的主要部件乘法單元的邏輯結(jié)構(gòu)由通用乘法器的aXb降低到了 aX s,而增加的一個比較器和兩個多路選擇器都是面積小,邏輯通路短的基本器件,因此本發(fā)明實現(xiàn)了結(jié)構(gòu)更加優(yōu)化、占用面積更小的乘法器裝置。
[0060]下面分別介紹c為偶數(shù)和奇數(shù)時,乘法單元104的結(jié)構(gòu)最優(yōu)、占用面積最小時k的取值。
[0061]所述c為偶數(shù)時,k= (2a_c)/2或k= (2a_c)/2+1時乘法單元104的結(jié)構(gòu)最優(yōu)、占用面積最小,并且,k= (2a_c)/2時滿足所述第六輸入端的位寬為c/2-1, k = (2a-c)/2+1時同樣滿足所述第六輸入端的位寬為c/2-l。此時乘法單元104的結(jié)果為aX (c/2-l)。
[0062]所述c為奇數(shù)時,k= (2a_c+l)/2時乘法單元104的結(jié)構(gòu)最優(yōu)、占用面積最小,并且此時滿足:所述第六輸入端的位寬為(c-l)/2。此時乘法單元104的結(jié)構(gòu)為aX [(c-1)/2]。
[0063]下面介紹乘法器的兩個乘數(shù)具有負(fù)相關(guān)關(guān)系時,所采用的乘法器的結(jié)構(gòu)實現(xiàn)優(yōu)化的推導(dǎo)過程。由于乘法器的輸入、輸出均為整數(shù),因此本發(fā)明中涉及的數(shù)均為整數(shù)。
[0064]兩個乘數(shù)X和Y之間具有負(fù)相關(guān)的關(guān)系,即一個乘數(shù)增大時另一乘數(shù)必然減小,一個乘數(shù)減小時另一個乘數(shù)必然增大,并且兩個乘數(shù)的乘積的位寬小于兩個乘數(shù)的位寬之和。
[0065]第一乘數(shù)X的位寬為a,第二乘數(shù)Y的位寬為b,不妨假設(shè)a≥b。第一乘數(shù)X和第二乘數(shù)Y的乘積的最大值為C,C需要滿足c < a+b,否則需使用通用乘法器。
[0066]設(shè)X[al]表示數(shù)X的第al比特的二進制數(shù)的數(shù)值;X[al:a2]表示數(shù)X從第al比特到第a2比特組成的二進制數(shù)的數(shù)值。
[0067]先以第一乘數(shù)X的最高比特是否為O作為選擇條件。當(dāng)X[a_l] = O時,乘法器變成X[a_2:0] XY[b-l:0],記為(a-1)位乘b位的乘法器I ;當(dāng)X[a_l] = I時,表示X的a比特均為有效位,則Y的有效位最多為c-a位,即Y[c-a_l:0]為有效位,更高的位數(shù)無效,此時乘法器變成乂[3-1]\¥[^_1:0],記為3位乘(c-a)位的乘法器2。用同樣的方法繼續(xù)推導(dǎo),可以得知,若用a的最高2比特作為選擇條件,則乘法器I為(a-2)位乘b位,乘法器2為a位乘(c-a+1)位。
[0068]將結(jié)論推導(dǎo)到用X的最高k比特作為選擇條件,則乘法器I為(a_k)位乘b位,乘法器2為a位乘(c-a+k-Ι)位。如表1所不。
[0069]表1
[0070]
【權(quán)利要求】
1.一種乘法器裝置,其特征在于,所述裝置包括:比較器、第一選擇器、第二選擇器以及乘法單元; 所述比較器用于將第一乘數(shù)的高k位與O比較,如果不相等,則發(fā)送第一控制信號至第一選擇器和第二選擇器,如果相等,則發(fā)送第二控制信號至第一選擇器和第二選擇器; 所述第一選擇器的第一輸入端的輸入數(shù)據(jù)為第一乘數(shù),第一選擇器的第二輸入端的輸入數(shù)據(jù)為第二乘數(shù),所述第一選擇器用于接收到第一控制信號后選擇第一輸入端作為輸入端,接收到第二控制信號后選擇第二輸入端作為輸入端,將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第五輸入端;其中,所述第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,第一乘數(shù)和第二乘數(shù)的乘積的位寬的最大值為c,且(a+b)大于c, a不小于b, 2b不小于c ; 所述第二選擇器的第三輸入端的輸入數(shù)據(jù)為第二乘數(shù)的低m位數(shù)據(jù),第二選擇器的第四輸入端的輸入數(shù)據(jù)為第一乘數(shù)的低η位數(shù)據(jù),所述第二選擇器用于接收到第一控制信號后選擇第三輸入端作為輸入端,接收到第二控制信號后選擇第四輸入端作為輸入端,將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第六輸入端;其中,m =c-a+k-Ι且n = a_k, k為大于a_b且小于a+b-c+1的任一自然數(shù); 所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出,所述第五輸入端的位寬為a,第六輸入端的位寬為m和η中最大的數(shù)。
2.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中, 所述c為奇數(shù)時,k= (2a-c+l)/2,則所述第六輸入端的位寬為(c-1)/2。
3.根據(jù)權(quán)利要求1所述的裝置,其特征在于,其中, 所述c為偶數(shù)時,k= (2a_·c)/2+l或(2a_c)/2,則所述第六輸入端的位寬為c/2-l。
4.根據(jù)權(quán)利要求1至3任意一項所述的裝置,其特征在于,所述裝置還包括:第一寄存器、第二寄存器和第三寄存器; 所述第一寄存器用于對第一乘數(shù)進行寄存后將第一乘數(shù)發(fā)送至第一選擇器的第一輸入端、將第一乘數(shù)的低η位數(shù)據(jù)發(fā)送至第二選擇器的第四輸入端、以及將第一乘數(shù)的高k位數(shù)據(jù)發(fā)送至所述比較器; 所述第二寄存器用于對第二乘數(shù)進行寄存后將所述第二乘數(shù)發(fā)送至所述第一選擇器的第二輸入端和將第二乘數(shù)的低m位數(shù)據(jù)發(fā)送至第二選擇器的第三輸入端; 所述比較器用于將第一乘數(shù)的高k位與O比較包括:所述比較器用于對第一寄存器發(fā)送的第一乘數(shù)的高k位與O比較; 所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出包括:所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出至所述第三寄存器; 所述第三寄存器用于對所述乘法單元乘法運算后的數(shù)據(jù)進行寄存后輸出。
5.根據(jù)權(quán)利要求1至3任意一項所述的裝置,其特征在于,所述裝置還包括:第四寄存器、第五寄存器、第六寄存器和第三寄存器; 所述第四寄存器用于對第一乘數(shù)進行寄存后將第一乘數(shù)發(fā)送至第一選擇器的第一輸入端和將第一乘數(shù)的低η位數(shù)據(jù)發(fā)送至第二選擇器的第四輸入端; 所述第五寄存器用于對第二乘數(shù)進行寄存后將所述第二乘數(shù)發(fā)送至所述第一選擇器的第二輸入端和將第二乘數(shù)的低m位數(shù)據(jù)發(fā)送至第二選擇器的第三輸入端; 所述比較器發(fā)送第一控制信號至第一選擇器和第二選擇器包括: 所述比較器發(fā)送第一控制信號至第六寄存器; 所述比較器發(fā)送第二控制信號至第一選擇器和第二選擇器包括: 所述比較器發(fā)送第二控制信號至第六寄存器; 所述第六寄存器用于對比較器發(fā)送的信號進行寄存并將寄存后的信號分別發(fā)送至第一選擇器和第二選擇器; 所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出包括:所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出至所述第三寄存器; 所述第三寄存器用于對所述乘法單元乘法運算后的數(shù)據(jù)進行寄存后輸出。
6.根據(jù)權(quán)利要求1至3任意一項所述的裝置,其特征在于,所述裝置還包括:第七寄存器、第八寄存器和第三寄存器; 所述第一選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第五輸入端包括:所述第一選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至第七寄存器; 第七寄存器用于對第一選擇器發(fā)送的數(shù)據(jù)進行寄存并將寄存后的數(shù)據(jù)發(fā)送至所述乘法單元的第五輸入端;· 所述第二選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至所述乘法單元的第六輸入端包括:所述第二選擇器用于將選擇后的輸入端的輸入數(shù)據(jù)通過輸出端輸出至第八寄存器; 第八寄存器用于對第二選擇器發(fā)送的數(shù)據(jù)進行寄存并將寄存后的數(shù)據(jù)發(fā)送至所述乘法單元的第六輸入端; 所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出包括:所述乘法單元用于將第五輸入端和第六輸入端的數(shù)據(jù)進行乘法運算后輸出至所述第三寄存器; 所述第三寄存器用于對所述乘法單元乘法運算后的數(shù)據(jù)進行寄存后輸出。
7.一種實現(xiàn)乘法運算的方法,其特征在于,第一乘數(shù)的位寬為a,第二乘數(shù)的位寬為b,第一乘數(shù)和第二乘數(shù)的乘積的位寬的最大值為c,且a+b大于c,a不小于b, 2b不小于c,所述方法包括: 將第一乘數(shù)的高k位與O比較,如果不相等,則通過乘法單元將所述第二乘數(shù)的低m位與所述第一乘數(shù)作乘法運算,如果相等,則通過所述乘法單元將所述第一乘數(shù)的低η位與所述第二乘數(shù)作乘法運算; 其中,m = c-a+k-Ι且n = a_k, k為大于a_b且小于a+b-c+1的任一自然數(shù)。
8.根據(jù)權(quán)利要求7所述的方法,其特征在于,其中, 所述c為奇數(shù)時,k = (2a-c+l)/2。
9.根據(jù)權(quán)利要求7所述的方法,其特征在于,其中, 所述 c 為偶數(shù)時,k = (2a-c)/2+l 或 k = (2a_c)/2。
10.根據(jù)權(quán)利要求7至9任意一項所述的方法,其特征在于,所述將第一乘數(shù)的高k位與O比較包括:通過比較器將 第一乘數(shù)的高k位與O比較。
【文檔編號】G06F7/523GK103853524SQ201210509001
【公開日】2014年6月11日 申請日期:2012年11月30日 優(yōu)先權(quán)日:2012年11月30日
【發(fā)明者】陳智德, 胡勝發(fā) 申請人:安凱(廣州)微電子技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1