基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计

1、引言

随着可编程     逻辑器件   的发展,     FPGA   的应用已经越来越广泛,且用可编程逻辑器件代替传统的普通     集成电路   已成为一种发展的趋势。可编程逻辑器件FPGA以其高集成度、高速度、开发周期短、稳定性好而受到了人们的青睐,并得到了广泛的应用。由于算术逻辑单元(ALU)在运算中对系统性能要求很高,而采用中小规模的集成     电路   设计的系统既庞大又存在稳定性的问题。因此,用可编程逻辑器件FPGA来实现算术逻辑单元是一个很好的选择。而硬件描述语言(HDL)是使用可编程逻辑器件的不可缺少的工具,所以本文选用VHDL语言。并以设计4位算术逻辑单元为例,来实现算术逻辑单元的功能,又通过纯组合逻辑电路和超级进位方法的应用,使得在高速可编程逻辑器件FPGA的基础上,实现了算术逻辑单元在速度上的进一步优化。

2、电路设计

本算术逻辑运算单元可实现与、或、非、异或、逻辑左移、逻辑右移的逻辑运算和加、减、乘、除的算术运算等10种功能,也可以根据需要进行功能的增

减,这也体现出了用VHDL语言设计硬件系统的灵活性。

2.1设计思想

该ALU单元采用     模块化   设计。共划分了4个模块:控制与逻辑运算电路模块(Control)、加减法电路模块(Addsub)、乘法电路模块(Mul)和除法电路模块(div)。总体构成如图1所示。

ALU模块图如图2所示。图中A,B为2个4位的输入;Command为功能选择输入;CIN为加减法的进位和借位输入;COUT为加减法的进位和借位的输出;Resulta和Resultb为2个4位的输出,乘法时Resultb存放积的高4位,Resulta存放积的低4位,除法时Resulta存放商,Resultb存放余数。

2.2各模块分析

(1)控制模块(Control)该模块对系统的工作进行总体控制。根据对Command输入的信号分析来决定ALU执行的功能,并进行加减法模块、乘法模块、除法模块的选择和输出的控制。在程序中使用3个CASE语句来实现。第1个CASE语句控制逻辑运算的实现,第2个CASE语句控制加减法模块、乘法模块、除法模块的选择,第3个CASE语句控制输出的选择。

(2)加减法模块(Addsub)本设计中减法运算通过加补码的方式由加法器实现,这样可以简化系统前进位(有关超前进位的内容可参阅文献[1]的应用,使得加法器速度受进位限制的问题得到解决。

 基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计_设计制作_RF/无线

 基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计_设计制作_RF/无线

 基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计_设计制作_RF/无线

(3)乘法模块和除法模块(Mul,Div)乘法、除法模块也采用了纯组合逻辑电路的设计。比时序逻辑构成的乘除法器在速度上具有优势。编程原理采用通过逐位相加减的方法来实现。乘法模块源程序如下:

 基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计_设计制作_RF/无线

 基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计_设计制作_RF/无线

2.3系统仿真

最后采用VHDL语言中的例化语句对上述各模块进行整合,并对其进行仿真,得到了预期的效果。实现了ALU的各项功能。仿真图如图3所示。

 基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计_设计制作_RF/无线

3、结语

随着     EDA   技术的发展,可编程逻辑器件FPGA和VHDL语言在硬件电路设计中,越来越显示出其优越性,本设计即是一个很好的验证。通过实际的应用和日常的实验中的使用,该ALU系统体现出了良好的稳定性,在速度上也能很好的满足系统的要求。

责任编辑:gt

47
128
0
64

相关资讯

  1. 1、吴京票房口碑双扑街?最惨时期他无戏可拍,没成绩不算打击_甄子丹2535
  2. 2、胡东出演《神都龙王》转战大银幕备受期待2682
  3. 3、《冰封》将映黄圣依展甄功夫圆“功夫梦”846
  4. 4、《延禧攻略》皇帝最爱的女人为啥不是富察皇后,不是璎珞而是她?4126
  5. 5、律师爆王宝强将马蓉父母上告法庭,马蓉懒理继续与新男友秀恩爱!90
  6. 6、巡回检察组:证物直接用手拿?张一苇背锅为何郑锐还在笑?1738
  7. 7、《北京青年》浙视热播台词受追捧剧情遭吐槽337
  8. 8、《赘婿》领衔,先婚后爱的戏码成为影视圈新宠,你最喜欢哪一部?2936
  9. 9、古天乐“强压”高圆圆,看他五根手指放的位置,暴露人品4393
  10. 10、传与余咏珊不和,曾志伟倒戈支持ViuTV2180
全部评论(0)
我也有话说
0
收藏
点赞
顶部