• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于FPGA的雙符號數(shù)128位寬位乘法運算器件的設計

      2015-05-04 12:28:55朱偉
      科技創(chuàng)新與應用 2015年13期

      摘 要:文章提出了一種由128位雙符號數(shù)全加器構成的以時序邏輯移位方式設計的雙符號數(shù)128位寬位乘法器,此乘法器比與邏輯陣列和加全加器構成的乘法陣列占用宏單元硬件資源少,結(jié)構簡單,由于使用基于VHDL語言模塊化設計和現(xiàn)場可編程門陣列FPGA的電子實現(xiàn),有利于器件性能的升級與位數(shù)擴充,所以本設計具有經(jīng)濟性和實用性兩大特性。

      關鍵詞:FPGA;寬位乘法器;運算器件

      引言

      雙符號數(shù)寬位乘法運算器使用EDA平臺軟件QuartusⅡ在計算機上制作了基于現(xiàn)場可編程門陣列FPGA的雙符號數(shù)128位寬位乘法運算器,以組合邏輯電路的觀點分析,肯定是使用與邏輯陣列和全加器構成的乘法陣列構成的乘法器工作速度最快,但由于占用FPGA宏單元硬件資源多,難以實現(xiàn)高于128雙符號數(shù)寬位乘法器。由128位雙符號數(shù)全加器構成的以時序邏輯移位方式設計的雙符號數(shù)128位乘法器,占用硬件宏單元資源比較少,運算速度能夠滿足實際使用要求,具有經(jīng)濟性和實用性兩大特性。為了實現(xiàn)128位乘法,通過雙符號數(shù)全加器先計算一位的位積,然后逐位移位相加,實現(xiàn)了被乘數(shù)128位X與乘數(shù)128位Y的雙符號數(shù)寬位乘法。最后乘積是256位包括雙符號為兩位。

      1 寬位乘法運算器各個模塊的 VHDL源程序設計

      1.1 128位數(shù)據(jù)信息選通邏輯門器件模塊的源程序XTXXYDFM.VHD

      LIBRARY IEEE;

      USE IEEE.STD,_LOGIC,1164.ALL; ENTITY',XT XXYDFM, IS PORT,'·(ABIN:IN STD_LOGIC; DIN:IN STD·_LOGIC_XVECTOR (127 DOWNTO 0), TDOUT:·ZXOUT STD_·XTLOGIC_VECTOR (7 DOWNTO 0)); END; XXYDFM·' XTARCHI'TECTURE ·ART OF' XTANDARITH IS BEGIN"XTPROCESS(ABIN,DIN)' XTBEGIN 'FOR I IN 0 TO 127 LOOP X"TDOUT '(I)<=DIN (I)AND XTABIN;' END LOOP;END XTPRZXOCESS';END CVART;"

      1.2 128位雙向鎖存邏輯器件的源程序SXREG128B.VHD

      LIBRARY IEEE;

      USE' IEEE.STD_LOGIC'_1164.ALL;ENTITY' SXXREG128B IS' 'PORT(CLK:INZC STD_LOGIC;CLR:'N STD_LOGI'C;D:IN ST'D'_LO

      GIC_VECTZXOR(127 DOWNTO 0) Q:OUT STD_LOGIC'_VEC'TOR(1127 DOWNTO 0));END' REG128B;SXARCHZZ'XCITECTURE AR

      T OF REG1286B 'ISIGNAL R16S:STD_LOGIC_VECTOR(15 DOWNTO 0);'XSBEGINPROCESS (CLK,CLR)BEGINIFCLRTHENR1286S<=

      "000000000000000000000000000000000000000000000000000000000

      0000000000000000000000000000000000000000000000000000";'ELSIF CLK'EVENT AND CLK = '1' THEN 'ZCSXR1127S(127 DOWNTO 0)<=R1276S(127 'DOWNTO 1);R16S(15 DOWNTO 7)<=D;' END IFEND 'PROCESS Q<=R16S;' END CVART;

      1.3 128位單向右移移位邏輯寄存器器件的源程序YYSREG8B.VHD

      LIBRARY IEEE;

      USE IEEE.STD'_LOGIC_1164.ALL; ENTITCVY YYSRXEG8B 'ISPORT (CLK:IN ST'D_LOGIC;' LO'AD :IN STD' _LOGIC B'IN:IN STD_'LOGIC_VEZXCTOR(7DOWNTO 0);QB:ZXOU'T STD_L'OGIC);END' YYSREXG8B; 'ARCHITE'CTUZZXCREYY AR'T OF SREG8'B IS YYSIGNAL YYREG128B:STD_LOGIC_VE'CTOR(127 DOWNTO 0);' 'YYBE'GIZCNPROCESS (CLK,LOAD) 'BEG'IN IF CLK'EVENT AND CLK='1' THENIF LXOAD='1' THEN RE"G1278<=DIN;' ELSE' XREG8(127 DOWNTO0)YY

      1.4 128位乘法運算邏輯控制器的源程序KZCFNGFS128L.VHD

      LIBRARY IEEE;

      USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTICVTY CFNGFS128L IS CZ PCORT(CLK:IN' STD_LOGIC;CZSTART:IN CSTD_LOGIC;"ZCCLKOUT:OUT STD_LO

      GIC;RSTALL:OUTZC STCD_LOGIC;CARZCXIEND:OUT STCD_LOG

      IC);END ZC NG'FZCS128L;CFARCH'ICVTECTURE ART O'F CFAR

      ICTL IZCSZC" 'XSIGNAL CNT4BCZ:STD_LOGIC_VECTOR(64 DOW

      NTO 0);" BEGIN RSTALL<=START;PROCESS (CZCLK,START)BEGIN IF START='1' 'THEN CNT4B<="00000000000'000000000000";ELSIFZX CLK'EVEZCNT AND ZCCLCVK='1' TZCHEN IF CN"T4B127<1278 ZCTHEZCNCNT4B=CN'T4B+1;"ECND IF;END IF;EN'D PRO'CESS;PROZCCESS(CLK,CNT4B,START)' BEGCIZCNIF START='0' THENIF CNT564B127<8 T'HEN CLKOUT<=CLK; ARIZCEND<='0'; ELSE ZCCLKOUT<='0'; ARIEND<='1';' CVEND IF; ELSE CLKOUT<=CLK;' CZARIEND<='0';END IF;END PROCESS;END CVART;

      1.5 128位乘法器運算邏輯器件的源程序CVTI128X8.VHD

      LIBRARY IEEE;

      'USE IEEE.STD_LOGIC_1164.ALL;"ENTCVITY CVTI128X8 IS "CVPORT(CLK:IN STD_LOGIC;START":IN STD_LOGIC;A:I'N STD_LOGIC'_VVECTOR(127 DOWNTO 0);B:CVICVN STD_LOGIC_VECTOR(127 DOWNTO 0);CVARIEND:OUT STD_LOGIC; DOUT:OUT STD_LOGIC_VECTOR(127 DOWNTO 0);END CVTI128X8;'VC ARCHITECTURE ART OFCVTI128X8 IS COMPONCENT CVARICTL POR"T(CLK:IN CVSTDVCV_LOGIC;START:IN STD'_LOGIC; CVCLKOUT:OUT STD_LOGIC;RSTALLCV:OUT 'STDCV_LOGICCVCVACVRIEND:'OUT STD_LOGIC); END COMPONENT;COMPOCVNEN'T ANDARITHPORT(ABIN:IN STD'_LCVO

      GIC;DINCV:IN STD_LOGIC_VECTOR(CV127 DOWNTO 0);DOUT':OUT_STD_LOGIC_VECTOR(127DOWNTO 0); END COMPONENT;CVCOMP'OCVNENT CVADDCVER128B DOUTINTCLK, RSTALL=>RST"ALL, CVARIEN

      D'=>ARIEND);U2:CVSREG8B PORT MAP(CLK=>INTCLK,LOAD=CV>CVRSTALL.DINCV=>B,QCVB=>QB);U3:ANDCVARITH PORT MAPCV(ABIN=>QB,CVDIN=>A,DOUT'=>ANDSD);U4CVADDE''R128

      B PORT MAP(CIN=>GNDINT,A=>DTBOUT(128DOWNTO68) CVB=>CVNDSD,S=>DTVCBIN(127 DOWNTO 0),CVCOUT =>DTBIN(68); U5:CVREG126B CVPORT MAPCV(CLK =CV>VCINTCLK,CLR='>CVRSTALL,=CV>DTBIN, Q=>VCDTBOUT);END XXCART;

      2 結(jié)束語

      文章探討了基于FPGA的128位寬位乘法運算器件的設計, 此乘法器的優(yōu)點是節(jié)省芯片宏單元資源,它的核心運算元件是一個128位全加器構成的加法器,運算器運算速度取決于輸入系統(tǒng)的時鐘主頻。如果系統(tǒng)時鐘主頻為400MHz,則乘法運算器每一次乘法運算周期僅需20ns。雙符號數(shù)128位寬位乘法運算器件運行速度比較高,乘法運行狀況穩(wěn)定。因此,可以利用此乘法器及其組成原理構成更高位如256位和512位的乘法器,能夠十分可靠地完成一些大規(guī)模寬位數(shù)字信號處理方面的雙符號數(shù)運算任務。

      參考文獻

      [1]陳云恰,保延翔.CPLD應用技術與數(shù)字系統(tǒng)統(tǒng)計[M].電子工業(yè)出版社,2006.

      [2]姜雪松,吳鈺淳.VHDL設計實例與仿真[M].機械工業(yè)出版社,2007.

      [3]羅朝霞,高書莉.CPLD/FPGA設計及應用[M].北京:人民郵電出版社,2007.

      作者簡介:朱偉(1959-),男,副教授,工作于江漢大學數(shù)學與計算機科學學院,主要從事計算機體系結(jié)構和智能儀器的設計。

      澄迈县| 玉门市| 漾濞| 包头市| 汝城县| 普格县| 连江县| 滨州市| 嘉黎县| 建宁县| 股票| 郁南县| 枣阳市| 渑池县| 乌兰察布市| 宣化县| 腾冲县| 武川县| 德惠市| 施秉县| 蓬莱市| 安乡县| 东乌珠穆沁旗| 安西县| 西乡县| 南宫市| 齐齐哈尔市| 师宗县| 登封市| 乐平市| 二手房| 浪卡子县| 应城市| 绥芬河市| 峨边| 和平县| 黄山市| 洪泽县| 防城港市| 奉新县| 班戈县|