資料介紹
1 引言
隨著半導(dǎo)體技術(shù)的發(fā)展,可編程邏輯器件在結(jié)構(gòu)、工藝、集成度、功能、速度和靈活性等方面有了很大的改進(jìn)和提高,從而為高效率、高質(zhì)量、靈活地設(shè)計(jì)數(shù)字系統(tǒng)提供了可靠性。CPLD或FPGA技術(shù)的出現(xiàn),為DSP系統(tǒng)的設(shè)計(jì)又提供了一種嶄新的方法。利用CPLD或FPGA設(shè)計(jì)的DSP系統(tǒng)具有良好的靈活性和極強(qiáng)的實(shí)時(shí)性。同時(shí),其價(jià)格又可以被大眾接受。由于乘法器在數(shù)字信號(hào)處理系統(tǒng)中具有廣泛的應(yīng)用,所以本文以乘法器的處理系統(tǒng)中具有廣泛的應(yīng)用,所以本文以乘法器的設(shè)計(jì)為例,來說明采用可編程邏輯器件設(shè)計(jì)數(shù)字系統(tǒng)的方法。如果想使系統(tǒng)具有較快的工作速度,可以采用組合邏輯電路構(gòu)成的乘法器,但是,這樣的乘法器需占用大量的硬件資源,因而很難實(shí)現(xiàn)寬位乘法器功能。本文這種用于序邏輯電路構(gòu)成的乘法器,既節(jié)省了芯片資源,又能滿足工作速度及原理的要求,因而具有一定的實(shí)用價(jià)值。
2 系統(tǒng)構(gòu)成
該乘法器通過逐項(xiàng)移位相加來實(shí)現(xiàn)乘法功能。它從被乘數(shù)的最低開始,若為1,則乘數(shù)左移后再與上一次的和相加;若為0,左移后與0相加,直到移到被乘數(shù)的最高位。圖1是該乘法器的系統(tǒng)組成框圖。該控制模塊的STAR輸入有兩個(gè)功能:第一個(gè)功能是將16位移位寄存器清零和被乘數(shù)A[7…0]向8位移位寄存器加載;第二個(gè)功能為輸入乘法使能信號(hào)。乘法時(shí)鐘信號(hào)從CLK輸入,當(dāng)被乘數(shù)加載于8位移位寄存器后,它由低位到高位逐位移出,當(dāng)QB=1時(shí),選通模塊打開,8位乘數(shù)B[8…0]被送入加法器,并與上一次鎖存在16位鎖存器中的高8位相加,其和在下一個(gè)時(shí)鐘上升沿被鎖存到鎖存器內(nèi);當(dāng)QB=0時(shí),選通模塊輸出為全0。如此循環(huán)8個(gè)時(shí)鐘脈沖后,由控制模塊控制的乘法運(yùn)算過程自動(dòng)中止。該乘法器的核心元件是8位加法器,其運(yùn)算速度取決于時(shí)鐘頻率。
3 加法器的實(shí)現(xiàn)
加法器的設(shè)計(jì)需要考慮資源利用率和進(jìn)位速度這兩個(gè)相互矛盾的問題,通常取兩個(gè)問題的折衷。多位加法器的構(gòu)成有并行進(jìn)位和串行進(jìn)位兩方式,前者運(yùn)算速度快,但需占用較多的硬件資源,而且隨著位數(shù)的增加,相同位數(shù)的并行加法器和串行加法器的硬件資源占用差距快速增大。實(shí)踐證明,4位二進(jìn)制并行加法器和串行加法器占用的資源幾乎相同,因此,由4位二進(jìn)制并行加法器級(jí)聯(lián)來構(gòu)成多位加法器是較好的折衷選擇。以下為由兩個(gè)4位二進(jìn)制并行加法器級(jí)聯(lián)構(gòu)成8位二進(jìn)制加法器的 VHDL程序:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ADDER8B IS
PORT (CIN:IN STD_LOGIC;
A :IN STD_LOGIC_VECTOR(7 DOWNTO 0);
B :IN STD_LOGIC_VECTOR(7 DOWNTO 0);
S :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
OUT :OUT STD_LOGIC);
END ADDER8B;
ARCHITECTURE struc OF ADDER8B IS
COMPONENT ADDER4B
PORT (CIN4: IN STD_LOGIC;
A4 : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
B4 :IN STD_LOGIC_VECTOR(3 DOWNTO 0);
S4 : OUT ST_D_LOGIC_VECTOR(3 DOWN-TO 0);
COUT4 : OUT STD_LOGIC);
END COMPONENT;
SIGNAL CARRY_OUT : STD_LOGIC;
BEGIN
U1:ADDER4B
PORT MAP(CIN4=》CIN,A4=》A(3 DOWNTO 0),B4=》B(3 DOWNTO 0),S4=》S(3 DOWNTO 0),COUT4=》CARRY_OUT);
U2 :ADDER4B
PORT MAP(CIN4=》CARRY_OUT,A4=》A(7 DOWNTO 4),B4=》B(7 DOWNTO 4),S4=》S(7 DOWNTO 4),COUT4=》COUT);
END struc;
在上面的VHDL描述中,ADDER4B是一個(gè)4位二進(jìn)制加法器,其VHDL描述是:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ADDER4B IS
PORT (CIN4 :IN STD_LOGIC;
A4 :IN STD_LOGIC_VECTOR(3 DOWNTO 0);
B4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
S4:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
COUT4:OUT STD_LOGIC;
EAND ADDER4B;
ARCHITEC_TURE behav OF ADDER4B IS
SIGNAL SINT :STD_LOGIC_VECTOR(4 DOWNTO 0);
SIGNAL AA,BB:STD_LOGIC_VECTOR(4 DOWNTO 0);
BEGIN
AA《=‘0’&A4;
BB《=‘0’&B4;
SINT《=AA+BB+CIN4;
S4《=SINT(3 DOWNTO 0);
COUT4《=SINT(4);
END behav;
4 結(jié)束語
本文采用基于EDA技術(shù)的自上而下的系統(tǒng)設(shè)計(jì)方法,其設(shè)計(jì)流程如圖2所示。該乘法器的最大優(yōu)點(diǎn)是節(jié)省芯片資源,其運(yùn)算速度取決于輸入的時(shí)鐘頻率。如若時(shí)鐘頻率為100MHz,則每個(gè)運(yùn)算周期僅需80ns,因而具有一定的實(shí)用價(jià)值。
?
隨著半導(dǎo)體技術(shù)的發(fā)展,可編程邏輯器件在結(jié)構(gòu)、工藝、集成度、功能、速度和靈活性等方面有了很大的改進(jìn)和提高,從而為高效率、高質(zhì)量、靈活地設(shè)計(jì)數(shù)字系統(tǒng)提供了可靠性。CPLD或FPGA技術(shù)的出現(xiàn),為DSP系統(tǒng)的設(shè)計(jì)又提供了一種嶄新的方法。利用CPLD或FPGA設(shè)計(jì)的DSP系統(tǒng)具有良好的靈活性和極強(qiáng)的實(shí)時(shí)性。同時(shí),其價(jià)格又可以被大眾接受。由于乘法器在數(shù)字信號(hào)處理系統(tǒng)中具有廣泛的應(yīng)用,所以本文以乘法器的處理系統(tǒng)中具有廣泛的應(yīng)用,所以本文以乘法器的設(shè)計(jì)為例,來說明采用可編程邏輯器件設(shè)計(jì)數(shù)字系統(tǒng)的方法。如果想使系統(tǒng)具有較快的工作速度,可以采用組合邏輯電路構(gòu)成的乘法器,但是,這樣的乘法器需占用大量的硬件資源,因而很難實(shí)現(xiàn)寬位乘法器功能。本文這種用于序邏輯電路構(gòu)成的乘法器,既節(jié)省了芯片資源,又能滿足工作速度及原理的要求,因而具有一定的實(shí)用價(jià)值。
2 系統(tǒng)構(gòu)成
該乘法器通過逐項(xiàng)移位相加來實(shí)現(xiàn)乘法功能。它從被乘數(shù)的最低開始,若為1,則乘數(shù)左移后再與上一次的和相加;若為0,左移后與0相加,直到移到被乘數(shù)的最高位。圖1是該乘法器的系統(tǒng)組成框圖。該控制模塊的STAR輸入有兩個(gè)功能:第一個(gè)功能是將16位移位寄存器清零和被乘數(shù)A[7…0]向8位移位寄存器加載;第二個(gè)功能為輸入乘法使能信號(hào)。乘法時(shí)鐘信號(hào)從CLK輸入,當(dāng)被乘數(shù)加載于8位移位寄存器后,它由低位到高位逐位移出,當(dāng)QB=1時(shí),選通模塊打開,8位乘數(shù)B[8…0]被送入加法器,并與上一次鎖存在16位鎖存器中的高8位相加,其和在下一個(gè)時(shí)鐘上升沿被鎖存到鎖存器內(nèi);當(dāng)QB=0時(shí),選通模塊輸出為全0。如此循環(huán)8個(gè)時(shí)鐘脈沖后,由控制模塊控制的乘法運(yùn)算過程自動(dòng)中止。該乘法器的核心元件是8位加法器,其運(yùn)算速度取決于時(shí)鐘頻率。
3 加法器的實(shí)現(xiàn)
加法器的設(shè)計(jì)需要考慮資源利用率和進(jìn)位速度這兩個(gè)相互矛盾的問題,通常取兩個(gè)問題的折衷。多位加法器的構(gòu)成有并行進(jìn)位和串行進(jìn)位兩方式,前者運(yùn)算速度快,但需占用較多的硬件資源,而且隨著位數(shù)的增加,相同位數(shù)的并行加法器和串行加法器的硬件資源占用差距快速增大。實(shí)踐證明,4位二進(jìn)制并行加法器和串行加法器占用的資源幾乎相同,因此,由4位二進(jìn)制并行加法器級(jí)聯(lián)來構(gòu)成多位加法器是較好的折衷選擇。以下為由兩個(gè)4位二進(jìn)制并行加法器級(jí)聯(lián)構(gòu)成8位二進(jìn)制加法器的 VHDL程序:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ADDER8B IS
PORT (CIN:IN STD_LOGIC;
A :IN STD_LOGIC_VECTOR(7 DOWNTO 0);
B :IN STD_LOGIC_VECTOR(7 DOWNTO 0);
S :OUT STD_LOGIC_VECTOR(7 DOWNTO 0);
OUT :OUT STD_LOGIC);
END ADDER8B;
ARCHITECTURE struc OF ADDER8B IS
COMPONENT ADDER4B
PORT (CIN4: IN STD_LOGIC;
A4 : IN STD_LOGIC_VECTOR(3 DOWNTO 0);
B4 :IN STD_LOGIC_VECTOR(3 DOWNTO 0);
S4 : OUT ST_D_LOGIC_VECTOR(3 DOWN-TO 0);
COUT4 : OUT STD_LOGIC);
END COMPONENT;
SIGNAL CARRY_OUT : STD_LOGIC;
BEGIN
U1:ADDER4B
PORT MAP(CIN4=》CIN,A4=》A(3 DOWNTO 0),B4=》B(3 DOWNTO 0),S4=》S(3 DOWNTO 0),COUT4=》CARRY_OUT);
U2 :ADDER4B
PORT MAP(CIN4=》CARRY_OUT,A4=》A(7 DOWNTO 4),B4=》B(7 DOWNTO 4),S4=》S(7 DOWNTO 4),COUT4=》COUT);
END struc;
在上面的VHDL描述中,ADDER4B是一個(gè)4位二進(jìn)制加法器,其VHDL描述是:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY ADDER4B IS
PORT (CIN4 :IN STD_LOGIC;
A4 :IN STD_LOGIC_VECTOR(3 DOWNTO 0);
B4:IN STD_LOGIC_VECTOR(3 DOWNTO 0);
S4:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
COUT4:OUT STD_LOGIC;
EAND ADDER4B;
ARCHITEC_TURE behav OF ADDER4B IS
SIGNAL SINT :STD_LOGIC_VECTOR(4 DOWNTO 0);
SIGNAL AA,BB:STD_LOGIC_VECTOR(4 DOWNTO 0);
BEGIN
AA《=‘0’&A4;
BB《=‘0’&B4;
SINT《=AA+BB+CIN4;
S4《=SINT(3 DOWNTO 0);
COUT4《=SINT(4);
END behav;
4 結(jié)束語
本文采用基于EDA技術(shù)的自上而下的系統(tǒng)設(shè)計(jì)方法,其設(shè)計(jì)流程如圖2所示。該乘法器的最大優(yōu)點(diǎn)是節(jié)省芯片資源,其運(yùn)算速度取決于輸入的時(shí)鐘頻率。如若時(shí)鐘頻率為100MHz,則每個(gè)運(yùn)算周期僅需80ns,因而具有一定的實(shí)用價(jià)值。
?
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 可編程邏輯器件PLD課件下載 31次下載
- 如何使用FPGA實(shí)現(xiàn)數(shù)字信號(hào)處理算法的研究 17次下載
- 如何使用DSP和CPLD進(jìn)行語音處理系統(tǒng)的設(shè)計(jì)資料說明 6次下載
- 數(shù)字信號(hào)處理在數(shù)字化醫(yī)療儀器中的應(yīng)用 8次下載
- 可編程邏輯的多媒體信號(hào)處理 0次下載
- DSPBuilder在數(shù)字信號(hào)處理中的應(yīng)用 3次下載
- 基于DSP的數(shù)字信號(hào)采集處理系統(tǒng)設(shè)計(jì) 25次下載
- 基于FPGA進(jìn)行可編程邏輯設(shè)計(jì) 14次下載
- 用于語音和音頻應(yīng)用的可編程混合信號(hào)數(shù)字信號(hào)處理器 4次下載
- 數(shù)字電子技術(shù)--可編程邏輯器件 0次下載
- 數(shù)字電子技術(shù)--可編程邏輯器件 0次下載
- Bootloader技術(shù)在數(shù)字信號(hào)控制器中的應(yīng)用 32次下載
- 基于雙數(shù)字信號(hào)處理器(DSP)的實(shí)時(shí)相關(guān)圖像處理系統(tǒng)的設(shè)計(jì) 60次下載
- 基于ADSP2106X的高速并行雷達(dá)數(shù)字信號(hào)處理系統(tǒng)
- 基于FPGA的數(shù)字信號(hào)顯示系統(tǒng)軟硬件設(shè)計(jì)
- 什么是現(xiàn)場(chǎng)可編程邏輯陣列?它有哪些特點(diǎn)和應(yīng)用? 1050次閱讀
- 頻譜分析儀怎么測(cè)量數(shù)字信號(hào) 1070次閱讀
- 基于MATLAB的信號(hào)處理系統(tǒng)與分析 1175次閱讀
- 可編程片上系統(tǒng)是什么 707次閱讀
- 可編程邏輯器件測(cè)試方法 1574次閱讀
- 可編程邏輯器件和ASIC對(duì)比介紹 2761次閱讀
- 利用可編程邏輯控制器CPLD實(shí)現(xiàn)數(shù)據(jù)采集系統(tǒng)的總體設(shè)計(jì) 1545次閱讀
- 基于FPGA技術(shù)和AD9833芯片實(shí)現(xiàn)可編程遙測(cè)信號(hào)源的設(shè)計(jì) 3332次閱讀
- 可編程邏輯控制器是什么_可編程邏輯控制器原理 1w次閱讀
- 淺談數(shù)字信號(hào)處理器的分類及選擇 6349次閱讀
- 可編程邏輯器件改變數(shù)字系統(tǒng)設(shè)計(jì)方法 1666次閱讀
- 干貨!使用嵌入式處理器對(duì)可編程邏輯器件重編程 1682次閱讀
- 基于信號(hào)處理和嵌入式應(yīng)用的音頻處理系統(tǒng)的設(shè)計(jì)和實(shí)現(xiàn) 2357次閱讀
- 數(shù)字信號(hào)處理技術(shù)的優(yōu)點(diǎn)分析 1.2w次閱讀
- 通過可編程邏輯來提高器件處理系統(tǒng)的性能 997次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1489次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識(shí)別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費(fèi)
- 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 7基于單片機(jī)和 SG3525的程控開關(guān)電源設(shè)計(jì)
- 0.23 MB | 3次下載 | 免費(fèi)
- 8基于單片機(jī)的紅外風(fēng)扇遙控
- 0.23 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論
查看更多