(2)、设计文件存盘与语法检查
图13 图14
完成程序代码输入后单击高亮“ls74138-behavioral(LS74138.vhdl)”标签(图13),此时工具窗口将显示 “Process for Source(ls74138-behavioral)”。用鼠标右键点击Process窗口中【Check Syntax】标签,点击运行选项,进行程序语法检查,当显示一绿色对号标志时即表示程序中不存在语法问题,如图14所示。
(3)、仿真文件设计
为了验证所设计电路功能,需要输入测试文件对电路程序功能进行测试。在【Process】菜单中选择【New Source】选项,即可弹出如图5所示对话框,选择【VHDL Test Bench】添加测试向量文件,并将文件添加到LS74138模块中,如图15所示
图15 图16
运行行为仿真选项卡,Xilinx ISE自动调用ModelSim SE 6.1c仿真平台作为仿真工具。运行ModelSim SE 6.1c菜单【Simulate】->【Run】->【Restart】,将仿真时间点置零。在【transcript】窗口中输入仿真时间
。在波形【Wave】窗口内使用
按钮实现仿真图的“放
大”“缩小”“全局”功能。图17即为电路仿真结果,由图中时序及逻辑关系可知该三线八线译码器行为仿真正常。
6
图17
测试向量参考程序如下:
LIBRARY ieee;
USE ieee.std_logic_1164.ALL; USE ieee.numeric_std.ALL;
ENTITY ls74138_tb_74138_vhd_tb IS END ls74138_tb_74138_vhd_tb;
ARCHITECTURE behavior OF ls74138_tb_74138_vhd_tb IS
COMPONENT ls74138 PORT(
G1 : IN std_logic; G2 : IN std_logic;
INP : IN std_logic_vector( 2 downto 0); Y : OUT std_logic_vector(7 downto 0) );
END COMPONENT;
SIGNAL G1 : std_logic; SIGNAL G2 : std_logic;
SIGNAL INP : std_logic_vector( 2 downto 0); SIGNAL Y : std_logic_vector(7 downto 0);
BEGIN
uut: ls74138 PORT MAP( G1 => G1, G2 => G2, INP => INP, Y => Y
);
-- *** Test Bench - User Defined Section *** u1:PROCESS BEGIN G1<='0';
wait for 10 us;
7
G1<='1';
wait for 90 us; G1<='0'; wait;
END PROCESS u1;
u2:PROCESS BEGIN G2<='0';
wait for 10 us; G2<='1';
wait for 90 us; G2<='0'; wait;
END PROCESS u2;
u3:PROCESS BEGIN
INP<=\ wait for 20 us; INP<=\ wait for 10 us; INP<=\ wait for 10 us; INP<=\ wait for 10 us; INP<=\ wait for 10 us; INP<=\ wait for 10 us; INP<=\ wait for 10 us; INP<=\ wait;
end PROCESS u3;
-- *** End Test Bench - User Defined Section *** END behavior ; (4)芯片管脚定义
如前所述添加用户定义限制文件,运行【Assign Package Pins】选项卡,Xilinx ISE将弹出管脚分配窗口,在如图19,输入各个端口管脚位置并保存,完成芯片管脚定义。
8
图18 图19
(5)编译与综合
图20 图21
运行【Process for Source】中的【Implement Design】(图20),ISE将自动完成编译并调用内嵌的综合工具XST完成综合过程,运行结果如图21所示。
编译通过后即自动生成了电路烧录下载文件(*.jed)以及资源消耗报告,通过该报告即可了解所设计电路的资源消耗情况。
图22
由图22可知,在三线八线译码器(74LS138)的设计中使用了8个宏单元,9个乘积项,8个寄存器单元,13个用户引脚及5个功能输入块。
9
(5)、编程下载
本试验用并行电缆将开发实验平台与计算机接在一起。确认下载电缆连接无误后执行Xilinx ISE的【iMPACT】命令,将三线八线译码器(74LS138)设计文件下载到目标芯片XC2C256-7PQ208中,硬件验证所设计电路功能。
2、元件的生成、调用和仿真
1、新建原理图文件,命名为 “Sch_LS74138”并添加到工程“Shiyan”中,如图23。点击【下一步】完成原理图文件的创建。在弹出的原理图编辑框内选择【Symbols】标签,在其目录列表内显示了所有可用电路器件,其中包括了我们所设计的LS74138(图24)。
图23 图24
双击“ls74138”将其放置到原理图编辑区内。点击为器件添加外围端口,如图25所示。
图25
将原理图文件保存后返回【Xilinx Project Navigator】平台,此时已经将程序所设计的器件
10