世界足球俱乐部杯

可编程逻辑在数字信号处理系统中的应用

出处:computer00 发布于:2010-05-12 16:57:07

  摘要:介绍了在数字信号处理系统中的应用。并运用VHDL语言对采用Lattice公司的ispLSI1032E可编程逻辑器件所构成的乘法器的结构、原理及各位加法器的VHDL作了详细的描述。该乘法器的是大特点是节省资源,而且其运算速度取决于输入的时钟频率。

  1、引言

  随着半导体技术的发展,可编程逻辑器件在结构、工艺、集成度、功能、速度和灵活性等方面有了很大的改进和提高,从而为高效率、高质量、灵活地设计数字系统提供了可靠性。CPLD或FPGA技术的出现,为DSP系统的设计又提供了一种崭新的方法。利用CPLD或FPGA设计的DSP系统具有良好的灵活性和极强的实时性。同时,其价格又可以被大众接受。由于乘法器在数字信号处理系统中具有广泛的应用,所以本文以乘法器的处理系统中具有广泛的应用,所以本文以乘法器的设计为例,来说明采用可编程逻辑器件设计数字系统的方法。如果想使系统具有较快的工作速度,可以采用组合构成的乘法器,但是,这样的乘法器需占用大量的硬件资源,因而很难实现宽位乘法器功能。本文这种用于序逻辑电路构成的乘法器,既节省了芯片资源,又能满足工作速度及原理的要求,因而具有一定的实用价值。

  2、系统构成

  该乘法器通过逐项移位相加来实现乘法功能。它从被乘数的开始,若为1,则乘数左移后再与上的和相加;若为0,左移后与0相加,直到移到被乘数的位。图1是该乘法器的系统组成框图。该的STAR输入有两个功能:个功能是将16位移位寄存器清零和被乘数A[7…0]向8位移位寄存器加载;第二个功能为输入乘法使能信号。乘法时钟信号从CLK输入,当被乘数加载于8位移位寄存器后,它由低位到高位逐位移出,当QB=1时,选通模块打开,8位乘数B[8…0]被送入加法器,并与上锁存在16位锁存器中的高8位相加,其和在下一个时钟上升沿被锁存到锁存器内;当QB=0时,选通模块输出为全0。如此循环8个时钟脉冲后,由控制模块控制的乘法运算过程自动中止。该乘法器的元件是8位加法器,其运算速度取决于时钟频率。

  图1 乘法器的系统组成框图(8×8位)

  3、加法器的实现

  加法器的设计需要考虑资源利用率和进位速度这两个相互矛盾的问题,通常取两个问题的折衷。多位加法器的构成有并行进位和串行进位两方式,前者运算速度快,但需占用较多的硬件资源,而且随着位数的增加,相同位数的并行加法器和串行加法器的硬件资源占用差距快速增大。实践证明,4位二进制并行加法器和串行加法器占用的资源几乎相同,因此,由4位二进制并行加法器级联来构成多位加法器是较好的折衷选择。以下为由两个4位二进制并行加法器级联构成8位二进制加法器的 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是一个4位二进制加法器,其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,: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、结束语

  本文采用基于EDA技术的自上而下的系统设计方法,其设计流程如图2所示。该乘法器的优点是节省芯片资源,其运算速度取决于输入的时钟频率。如若时钟频率为100MHz,则每个运算周期仅需80ns,因而具有一定的实用价值。

  图2 VHDL设计流程


  
关键词:可编程逻辑在数字信号处理系统中的应用ISPLSI1032E数字信号信号处理系统可编程逻辑

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,//domainnameq.cn,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
 一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:
技术客服:

0571-85317607

网站技术支持

13606545031

客服在线时间周一至周五
9:00-17:30 

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!