當(dāng)前位置:機(jī)電之家首頁 >> PLC技術(shù)>> plc應(yīng)用 >> 其它PLC應(yīng)用 >> 可編程邏輯在數(shù)字信號處理系統(tǒng)中的應(yīng)用
可編程邏輯在數(shù)字信號處理系統(tǒng)中的應(yīng)用

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ù)字信號處理系統(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è)功能為輸入乘法使能信號。乘法時(shí)鐘信號從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)算過程自動中止。該乘法器的核心元件是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)制并行加法器級聯(lián)來構(gòu)成多位加法器是較好的折衷選擇。以下為由兩個(gè)4位二進(jìn)制并行加法器級聯(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à)值。
 
作者:未知 點(diǎn)擊:934次 [打印] [關(guān)閉] [返回頂部]
本文標(biāo)簽:可編程邏輯在數(shù)字信號處理系統(tǒng)中的應(yīng)用
* 由于無法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報(bào)酬未能及時(shí)支付,在此深表歉意,請《可編程邏輯在數(shù)字信號處理系統(tǒng)中的應(yīng)用》相關(guān)權(quán)利人與機(jī)電之家網(wǎng)取得聯(lián)系。
電子樣本

SN系列樣冊
:鞏經(jīng)理
:13915946763
:南京塞姆泵業(yè)有限公司
個(gè)人求購

A 【求購】  鐵路接觸網(wǎng)...  2025-12-11
 【求購】  西門子ET...  2025-12-11
唐多 【求購】  DCS系統(tǒng)...  2025-12-11
康經(jīng)理 【求購】  鈦1混合器  2025-12-10
陳圣英 【求購】  金剛石刻刀  2025-12-10
汪先生 【求購】  變壓器套管  2025-12-10
武女士 【求購】  循環(huán)冷卻水...  2025-12-9
朱經(jīng)理 【求購】  華乘局放  2025-12-9
VIP公司推薦