旋轉因子乘法器

旋轉因子乘法器

ID:41492434

大?。?0.24 KB

頁數(shù):6頁

時間:2019-08-26

旋轉因子乘法器_第1頁
旋轉因子乘法器_第2頁
旋轉因子乘法器_第3頁
旋轉因子乘法器_第4頁
旋轉因子乘法器_第5頁
資源描述:

《旋轉因子乘法器》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在工程資料-天天文庫

1、旋轉因子乘法器的設計2008年10月16日星期四一、高效乘法器設計原理:復數(shù)旋轉因子乘法R+j*I=(X+j*I)*(C+j*S)是可以化簡的,因為C和S可以預先計算,并存儲在一個表中。而且還可以存儲下面的3個系數(shù):C、C+S和C?S有了這3個預先計算的因子,我們首先可以計算:E=X-Y和Z二C*E=C*(X?Y)然后用:R二(C?S)*Y+ZI=(C+S)*X-Z計算最后的乘積。檢驗:R=(C-S)*Y+C*(X-Y)=C*Y?S*Y+C*X?C*Y二C*X?S*YI=(C+S)*X?C*(X?Y)二C*X+S*X?C*X+C*Y二C*Y+S*X這種算法使用的3次乘法,1次加法和2次

2、減法,其代價是額外的第三個表。二、實現(xiàn)過程:首先給旋轉因子乘法器選擇一些具體的設計參數(shù)。假設有8位二進制數(shù)據(jù),系數(shù)就應該有8位(也就是7位數(shù)字和一位符號位),并且乘以exp(j*pi/9)=exp(j*20°)。量化成8位,旋轉因子就變成了:C+j*S=128*exp(j*pi/9)=l21+j*39如果輸入值是70+j*50,則所期望的結果是:(70+j*50)*exp(j*pi/9)=(70+j*50)*(121+j*39)/128=(6520+j*8780)/128=50+j*68這樣,3個因子就變成了:0121,C+S二160和C?S二82從上面可以看到,一般情況下C+S和C-

3、S的表必須比C和S的表多一位精度。下面是VHDL代碼實現(xiàn)了旋轉因子乘法器:程序說明—程序名:ccmul.vhd—-程序作用:旋轉因子乘法器,實現(xiàn)兩個復數(shù)相乘,--輸入、輸出均為8位數(shù)據(jù)。--編寫時間:2008/10/16-librarylpm;use1pm」pm_componentSeall;libraryieee;useieee.std_logic_1164.all;useieee.std_logic_arith.all;實體entityccmulisgeneric(W2:integer:=17;一乘法器的寬度Wl:integer:=9;一c+s的寬度W:integer:=8);-輸

4、入數(shù)據(jù)的寬度port(clk:std」ogic;x_in,y_in,c_in:instd_logic_vector(W-1downto0);一數(shù)據(jù)輸入端口cps_in,cms_in:instd_logic_vector(W1-1downto0);一數(shù)據(jù)輸入端Ur_out,i_out:outstd_logic_vector(W-1downto0));一結果輸出端口endccmul;結構體architectureflexofccmulissignalx,y,c:std_logic_vector(W-1downto0);一輸入屮間信號signalr,i,cmsy,cpsx,xmyc:std_

5、logic_vector(W2-ldownto0);signalxmy,cps,cms,sxtx,sxty:std_logic_vector(Wl-ldownto0);beginX<=x_in;—xy<=yjn;-j*ycv=c_in;-ccps<=cps_in;—c+sems<=cms_in;--C-Sprocessbeginwaituntilelk-I1;r_out<=r(W2-3downtoW-l);■■去符號位,取8位輸出i_out<=i(W2-3downtoW-l);endprocess;sxtxv=x(x*high)&x;一符號擴展sxty<=y(y'high)&y;3個乘

6、法器,2個減法器,1個加法器sub_l:lpm_add_sub一減法器1,實現(xiàn):x-ygenericmap(LPM_WIDTH二〉W1,LPM_DIRECTION二〉”SUB”,LPM_REPRESENTATION二『SIGNED”)portmap(dataa=>sxtx,datab=>sxty,result=>xmy);mul_I:lpm_mult■■乘法器1,實現(xiàn):(x?y)*c二xmycgenericmap(LPM_WIDTHA=>Wl,LPM_WIDTHB=>W,LPM_WIDTHP=>W2,LPM_WIDTHS=>W2,LPM_REPRESENTATION=>HSIGNEDH

7、)portmap(dataa=>xmy,datab=>c,result=>xmyc);mul_2:lpm_mult一乘法器2,實現(xiàn):(c?s)*y二cmsygenericmap(LPM_WIDTHA=>Wl,LPM_WIDTHB=>W,LPM_WIDTHP=>W2,LPM_WIDTHS=>W2,LPM_REPRESENTATI0N=>”SIGNED”)portmap(dataa=>cms,datab=>y,result=>cmsy);mul_3

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。