实验七-4选1多路选择器设计实验_第1页
实验七-4选1多路选择器设计实验_第2页
实验七-4选1多路选择器设计实验_第3页
实验七-4选1多路选择器设计实验_第4页
实验七-4选1多路选择器设计实验_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验七4选1多路选择器设计实验实验目的进一步熟悉QuartusII的VHDL文本设计流程、组合电路的设计仿真和测试。实验原理四选一多路选择器设计时,试分别用IF_THEN语句、WHEN_ELSE和CASE语句的表达方式写出此电路的VHDL程序,要求选择控制信号s1和s2的数据类型为STD_LOGIC;当s1=‘0’,s0=‘0’;s1=‘0’,s0=‘1’;s1=‘1’,s0=‘0’和s1=‘1’,s0=‘1’时,分别执行y<=a、y<=b、y<=c、y<=d。三、程序设计其示意框图如下:其中输入数据端口为a、b、c、d,s1、s2为控制信号,Y为输出。令s0s1=“00〞时,输出y=a;令s0s1=“01〞时,输出y=b;令s0s1=“10〞时,输出y=c;令s0s1=“11’时,输出y=d;4选14选1数据选择器a输入by数据cds0s1真值表如下:输入输出xs0s1ya00ab01bc10cd11dVHDL仿真实验〔1〕用IF_THEN语句设计4选1多路选择器1.建立文件夹D:\alteral\EDAzuoye\if_mux41,启动QuartusII软件工作平台,翻开并建立新工程管理窗口,完成创立工程。图1利用NewProjectWizard创立工程mux412.翻开文本编辑。NEW→VHDLFile→相应的输入源程序代码→存盘为mux41.vhd.。图2选择编辑文件类型源程序代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux41ISPORT(a,b,c,d:INSTD_LOGIC;s0:INSTD_LOGIC;s1:INSTD_LOGIC;y:OUTSTD_LOGIC);ENDENTITYmux41;ARCHITECTUREif_mux41OFmux41ISSIGNALs0s1:STD_LOGIC_VECTOR(1DOWNTO0);BEGINs0s1<=s0&s1;PROCESS(s0s1,a,b,c,d)BEGINIFs0s1="00"THENy<=a;ELSIFs0s1="01"THENy<=b;ELSIFs0s1="10"THENy<=c;ELSEy<=d;ENDIF;ENDPROCESS;ENDARCHITECTUREif_mux41;3.综合运行,检查设计是否正确。图3全程编译无错后的报告信息4.生成symbol。图4生成symbol5.建立波形编辑文件进行功能仿真,仿真结果如下列图所示。图5设置时钟CLK的周期图6仿真波形输出报告从上图时序仿真可以看出:s0s1=“00〞时,输出y=a;s0s1=“01〞时,输出y=b;s0s1=“10〞时,输出y=c;s0s1=“11’时,输出y=d;6.查看RTL电路。选择Tools->NetlistViewers->RTLViewers命令,即HDL的RTL级图形观测器,选择好后即自动弹出计数器设计的RTL电路,如下列图:图7RTL电路图(2)用WHEN_ELSE语句设计4选1多路选择器1.建立文件夹D:\alteral\EDAzuoye\when_mux41,启动QuartusII软件工作平台,翻开并建立新工程管理窗口,完成创立工程。图1利用NewProjectWizard创立工程mux412.翻开文本编辑。NEW→VHDLFile→相应的输入源程序代码→存盘为mux41.vhd.。图2选择编辑文件类型源程序代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux41ISPORT(a,b,c,d:INSTD_LOGIC;s0:INSTD_LOGIC;s1:INSTD_LOGIC;y:OUTSTD_LOGIC);ENDENTITYmux41;ARCHITECTUREwhen_mux41OFmux41ISSIGNALs:STD_LOGIC_VECTOR(1DOWNTO0);BEGINs<=s0&s1;y<=aWHENs="00"ELSEbWHENs="01"ELSEcWHENs="10"ELSEdWHENs="11"ELSE'0';ENDwhen_mux41;3.综合运行,检查设计是否正确。图3全程编译无错后的报告信息4.生成symbol。图4生成symbol5.建立波形编辑文件进行功能仿真,仿真结果如下列图所示。图5设置时钟CLK的周期图6仿真波形输出报告从上图时序仿真可以看出:s0s1=“00〞时,输出y=a;s0s1=“01〞时,输出y=b;s0s1=“10〞时,输出y=c;s0s1=“11’时,输出y=d;6.查看RTL电路。选择Tools->NetlistViewers->RTLViewers命令,即HDL的RTL级图形观测器,选择好后即自动弹出计数器设计的RTL电路,如下列图:图7RTL电路图(3)用CASE语句设计4选1多路选择器1.建立文件夹D:\alteral\EDAzuoye\case_mux41,启动QuartusII软件工作平台,翻开并建立新工程管理窗口,完成创立工程。图1利用NewProjectWizard创立工程mux412.翻开文本编辑。NEW→VHDLFile→相应的输入源程序代码→存盘为mux41.vhd.。图2选择编辑文件类型源程序代码如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYmux41ISPORT(a,b,c,d:INSTD_LOGIC;s0:INSTD_LOGIC;s1:INSTD_LOGIC;y:OUTSTD_LOGIC);ENDENTITYmux41;ARCHITECTUREcase_mux41OFmux41ISSIGNALs0s1:STD_LOGIC_VECTOR(1DOWNTO0);BEGINs0s1<=s0&s1;PROCESS(s0s1,a,b,c,d)BEGINCASEs0s1ISWHEN"00"=>y<=a;WHEN"01"=>y<=b;WHEN"10"=>y<=c;WHEN"11"=>y<=d;WHENOTHERS=>NULL;ENDCASE;ENDPROCESS;ENDARCHITECTUREcase_mux41;3.综合运行,检查设计是否正确。图3全程编译无错后的报告信息4.生成symbol。图4生成symbol5.建立波形编辑文件进行功能仿真,仿真结果如下列图所示。图5设置时钟CLK的周期图6仿真波形输出报告从上图时序仿真可以看出:s0s1=“00〞时,输出y=a

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论