EDA实验报告三(3-8译码器的设计)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
EDA实验报告三(3-8译码器的设计)
实验三:3-8译码器的设计
⼀、实验⽬的
1、学习Quartus II 7.2软件设计平台。
2、了解EDA的设计过程。
3、通过实例,学习和掌握Quartus II 7.2平台下的⽂本输⼊法。
4、学习和掌握3-8译码器的⼯作和设计原理。
5、初步掌握该实验的软件仿真过程。
⼆、实验仪器
PC机,操作系统为Windows7/XP,本课程所⽤系统均为WindowsXP(下同),Quartus II 7.2设计平台。
三、实验步骤
1、创建⼯程,在File菜单中选择New Project Wizard,弹出对话框如下图所⽰
在这个窗⼝中第⼀⾏为⼯程保存路径,第⼆⾏为⼯程名,第三⾏为顶层⽂件实体名,和⼯程名⼀样。
2、新建设计⽂本⽂件,在file中选择new,出现如下对话框:
选择VHDL File 点击OK。
3、⽂本输⼊,在⽂本中输⼊如下程序代码:library ieee;
use ieee.std_logic_1164.all;
entity variable_decoder is
port(A:in STD_LOGIC;
B:in STD_LOGIC;
C:in STD_LOGIC;
Y:out STD_LOGIC_VECTOR(7 downto 0));
end variable_decoder;
architecture rtl of variable_decoder is
begin
process(A,B,C)
variable COMB:std_logic_vector(2 downto 0);
begin
COMB:=C&B&A
case COMB is
when "000"=>Y<="11111110";
when "001"=>Y<="11111101";
when "010"=>Y<="11111011";
when "011"=>Y<="11110111";
when "100"=>Y<="11101111";
when "101"=>Y<="11011111";
when "110"=>Y<="10111111";
when "111"=>Y<="01111111";
when others=>Y<="XXXXXXXX";
end case;
end process;
end rtl;
然后保存到⼯程中,结果如下图所⽰:
4、编译,如果有多个⽂件要把这个⽂件设为当前顶层实体,这样软件编
译时就只编译这个⽂件。
点击projet->Set as Top-level EntityCtrl+Shift+J 接下来进⾏编译,点击processing->Start Compilation ,见下图
5、仿真验证,打开波形编辑器,新建⼀个波形仿真⽂件,如下图:
然后选择菜单“View”→“Utility”→“Node Finder”出现如下对话框,在“Filter”中选择“Pins:all”,再点击“List”即在下边的“Node Found”框中出现本设计项⽬中所有端⼝引脚列表,并逐个拖到波形编辑器的窗⼝中。
真结果如下图所⽰:
图:
7、引脚分配
(1)选择菜单“Assignments”→“Pins”命令,在分配编辑器的“Category”列表→“Location pin”,出现如图引脚分配界⾯:
(2)引脚锁定的器件平⾯视图:
四.⼩结
通过这次上机,在quartus软件平台上对3-8译码器代码实现的操作,我们了解了3-8译码器的原理及VHDL语⾔的特点,对顺序语句运⽤更加熟练。
对报错情况更加了解,能较快的找出并改正。