基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计.docx
《基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计.docx》由会员分享,可在线阅读,更多相关《基于可编程逻辑器件和VHDL语言实现算术逻辑单元的设计.docx(6页珍藏版)》请在第一文库网上搜索。
1、基于可编程逻辑器件和VHD1语言实现算术逻辑单元的设计1、引言随着可辘逻辑器件的发展,FPGA的应用已经越来越广泛,且用可编程逻辑器件代替传统的普通集成电谿已成为一种发展的趋势。可编程逻辑器件FPGA以其高集成度、高速度、开发周期短、稳定性好而受到了人们的青睐,并得到了广泛的应用。由于算术逻辑单元(A1U)在运算中对系统性能要求很高,而采用中小规模的集成电路设计的系统既庞大又存在稳定性的问题。因此,用可编程逻辑器件FPGA来实现算术逻辑单元是一个很好的选择。而硬件描述语言(HD1)是使用可编程逻辑器件的不可缺少的工具,所以本文选用VHD1语言。并以设计4位算术逻辑单元为例,来实现算术逻辑单元的
2、功能,又通过纯组合逻辑电路和超级进位方法的应用,使得在高速可编程逻辑器件FPGA的基础上,实现了算术逻辑单元在速度上的进一步优化。2、电路设计本算术逻辑运算单元可实现与、或、非、异或、逻辑左移、逻辑右移的逻辑运算和加、减、乘、除的算术运算等10种功能,也可以根据需要进行功能的增减,这也体现出了用VHD1语言设计硬件系统的灵活性。2.1设计思想该A1U单元采用模块化设计。共划分了4个模块:控制与逻辑运算电路模块(COntrO1)、加减法电路模块(如dsub)、乘法电路模块(MUI)和除法电路模块(div)。总体构成如图1所示。A1U模块图如图2所示。图中A,B为2个4位的输入;CommanC1为
3、功能选择输入;C1N为加减法的进位和借位输入;COUT为加减法的进位和借位的输出;ReSUIta和ReSUItb为2个4位的输出,乘法时ReSUItb存放积的高4位,ReSUIta存放积的低4位,除法时ReSU1ta存放商,ReSUItb存放余数。2.2各模块分析(1)控制模块(Contro1)该模块对系统的工作进行总体控制。根据对COmmand输入的信号分析来决定A1U执行的功能,并进行加减法模块、乘法模块、除法模块的选择和输出的控制。在程序中使用3个CASE语句来实现。第1个CASE语句控制逻辑运算的实现,第2个CASE语句控制加减法模块、乘法模块、除法模块的选择,第3个CASE语句控制输
4、出的选择。(2)加减法模块(Addsub)本设计中减法运算通过加补码的方式由加法器实现,这样可以简化系统前进位(有关超前进位的内容可参阅文献1的应用,使得加法器速度受进位限制的问题得到解决。1jWdsUbcmftddsubiAddSUb_cresu1t(3】antICOfnmnd3Ojqutnto3Ojrmndr_o(30)OPM30)OPbP0PO1b(30)contro1dtvapO)dvb(3O)(30mu1b(30470b3.0command(3O)addsub-resu1t(30rtU(33rendri(X.O)ProduCU170】图1G依构BV图resu1t)resu1tfXdW
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 可编程 逻辑 器件 VHDL 语言 实现 算术 单元 设计