文档介绍:。验证运算功能发生器的组合功能。掌握算术逻辑运算加、减、与的工作原理。验证实验台运算的8位加、减、与、直通功能。按给定数据,完成几种指定的算术和逻辑运算。-1所示。其中运算器ALU181根据74LS181的功能用VHDL硬件描述语言编辑而成,构成8位字长的ALU。参加运算的两个8位数据分别为A[7..0]和B[7..0],运算模式由S[3..0]的16种组合决定,而S[3..0]的值由4位2进制计数器LPM_COUNTER产生,计数时钟是Sclk(图2-1);此外,设M=0,选择算术运算,M=为低位的进位位;F[7..0]为输出结果,CO为运算后的输出进位位。两个8位数据由总线IN[7..0]分别通过两个电平锁存器74373锁入,ALU功能如表2-1所示。表2-1 ALU181的运算功能选择端高电平作用数据S3S2S1S0M=HM==L(=H(有进位)00000001加10010+10011减1(2的补码)0100加10101加加+10**********加11001加11010加110111100*1101加11110加11111注1、*表示每一位都移至下一更高有效位,“+”是逻辑或,“加”是算术加注2、在借位减法表达上,表2-1与标准的74181的真值表略有不同。(1)设计ALU元件在QuartusII环境下,,编译VHDL文件,。(2)以原理图方式建立顶层文件工程选择图形方式。根据图2-1输入实验电路图,从QuartusII的基本元件库中将各元件调入图形编辑窗口、连线,添加输入输出引脚。,将当前文件设置成工程文件,以后的操作就都是对当前工程文件进行的。(3)器件选择选择Cyclone系列,在Devices中选择器件EP1C6QC240C8。编译,引脚锁定,再编译。引脚锁定后需要再次进行编译,才能将锁定信息确定下来,同时生成芯片编程/配置所需要的各种文件。(4)芯片编程Programming(可以直接选择光盘中的示例已完成的设计进行验证实验)打开编程窗口。。(5),验证ALU的运算器的算术运算和逻辑运算功能根据表2-1,从键盘输入数据A[7..0]和B[7..0],并设置S[3..0]、M、Cy,验证ALU运算器的算术运算和逻辑运算功能,记录实验数据。图2-(1)按图2-1所示,在本验证性示例中用数据选择开关(键3控制)的高/低电平选择总线通道上的8位数据进入对应的74373中;即首先将键3输入高电平,用键2、键1分别向A[7..0]置数01010101(55H),这时在数码管4/3上显示输入的数据(55H);然后用键3输入低电平,再用键2、键1分别向B[7..0]置数10101010(AAH),这时在数码管2/1上显示输入的数据(AAH);这时表示在图2-1中的两个74373锁存器中分别被锁入了加数55H和被加数AAH。可双击图2-1的ALU181元件,了解其VHDL描述。(2)设定键8为低电平,即M=0(允许算术操作),键6控制时钟SCLK,可设置表2-1的S[3..0]=0~F。现连续按动键6,设置操作方式选择S[3..0]=9(加法操作),使数码管8显示9,以验证ALU的算术运算功能:=0(最低位无进位)时,数码管7/6/5=0FF(55H+AAH=0FFH);=1(最低位有进位)时,数码管7/6/5=100(55H+AAH+1=100H);(3)若设定键8为高电平,即M=1,键KEY6控制时钟SCLK,设置S[3..0]=0~F,==1,验证ALU的逻辑运算功能,并记录实验数据。表2-2A[7..0],B[7..0]设置值检查F[7..0]SW_B寄存器内容S3S2S1S0MBUSA[7..0]B[7..0]010101011010101001010**********(4)验证ALU181的算术运算和逻辑运算功能,ALU181模块功能可参照表2-1。表2-3给定了寄存器DRl=A[7..0]和DR2=B[7..0]的数据(十六进制),要求根据此数据对照逻辑功能表所得的理论值(要求课前完成)与实验结果值进行比较(均采用正逻辑0)。(5)表2-4列出了8种常用的算术与逻辑运算要求指定的操作内容,正确选择运算器数据通路、控制参数S3、S2、S1、S0、