教学文库网 - 权威文档分享云平台
您的当前位置:首页 > 精品文档 > 建筑文档 >

常用EDA工具软件操作指南(5)

来源:网络收集 时间:2026-01-22
导读: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY COUNT_T IS PORT (CLK : IN STD_LOGIC; CLK_S: OUT STD_LOGIC; SCAN_CLK : OUT STD_LOGIC_VE

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY COUNT_T IS

PORT (CLK : IN STD_LOGIC; CLK_S: OUT STD_LOGIC;

SCAN_CLK : OUT STD_LOGIC_VECTOR(1 DOWNTO 0)); END COUNT_T;

ARCHITECTURE BEHAVIORAL OF COUNT_T IS

SIGNALCNT1 : STD_LOGIC_VECTOR(21 DOWNTO 0):=\SIGNAL CLK1 : STD_LOGIC:='0'; BEGIN

--10HZ时钟形成进程 PROCESS(CLK) BEGIN

IF CLK='1' AND CLK'EVENT THEN

IF CNT1=\ CNT1<=(OTHERS =>'0'); CLK1<=NOT CLK1; ELSE

CNT1<=CNT1+1; END IF; END IF;

END PROCESS; CLK_S<=CLK1;

SCAN_CLK<=CNT1(15 DOWNTO 14); END BEHAVIORAL;

-- LED_2.VHD LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY LED_2 IS

PORT ( SCAN_CLK : IN STD_LOGIC_VECTOR(1 DOWNTO 0); L1 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); L2 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); L3 : IN STD_LOGIC_VECTOR(3 DOWNTO 0); SEG : OUT STD_LOGIC_VECTOR(7 DOWNTO 0); A : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END LED_2;

ARCHITECTURE BEHAVIORAL OF LED_2 IS

SIGNAL LED1,LED2,LED3 :STD_LOGIC_VECTOR(7 DOWNTO 0); BEGIN

WITH L1 SELECT --十位 LED1<= \, --1 \, --2 \, --3 \, --4 \, --5 \, --6

\, --7 \, --8 \, --9 \ --0

WITH L2 SELECT --个位 LED2<= \, --1 \, --2 \, --3 \, --4 \, --5 \, --6 \, --7 \, --8 \, --9 \ --0

WITH L3 SELECT --小数 LED3<= \, --1 \, --2 \, --3 \, --4 \, --5 \, --6 \, --7 \, --8 \, --9 \ --0

PROCESS(SCAN_CLK,LED1,LED2,LED3) BEGIN

CASE SCAN_CLK IS

WHEN \ A<=\ WHEN \ A<=\ WHEN \ A<=\ WHEN \ A<=\

WHEN OTHERS => SEG<=\ A<=\ END CASE; END PROCESS;

END BEHAVIORAL;

--SEC_1.VHD LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY SEC_1 IS

PORT (CLK_S : IN STD_LOGIC; K1 : IN STD_LOGIC;

K2 : IN STD_LOGIC; K3 : IN STD_LOGIC; L1 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); L2 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0); L3 : OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END SEC_1;

ARCHITECTURE BEHAVIORAL OF SEC_1 IS TYPE STATES IS (S0,S1,S2); SIGNAL ST : STATES:=S0;

SIGNAL CNT3 : STD_LOGIC_VECTOR(3 DOWNTO 0):=\SIGNAL CNT4 : STD_LOGIC_VECTOR(3 DOWNTO 0):=\SIGNAL CNT5 : STD_LOGIC_VECTOR(3 DOWNTO 0):=\BEGIN

--24秒倒计时

-- K1: 设置24秒,并暂停,进入状态S2; -- K2: 停表,强制进入状态S0 (什么也不做);

-- K3: 开始倒计时 S1,至0秒时自动停止,进入状态S0; PROCESS(CLK_S) BEGIN

IF CLK_S='1' AND CLK_S'EVENT THEN

IF K1='1'AND K2='0'AND K3='1' THEN ST<=S0; END IF;

IF K1='0'AND K2='1'AND K3='1' THEN ST<=S2; END IF;

IF K1='1'AND K2='1'AND K3='0' THEN ST<=S1; END IF;

CASE ST IS

WHEN S0=> NULL; WHEN S1=> IF CNT5=\ IF CNT4=\ IF CNT3=\ ST<=S0; ELSE CNT4<=\ CNT5<=\ CNT3<=CNT3-1; END IF; ELSE CNT5<=\ CNT4<=CNT4-1; END IF; ELSE CNT5<=CNT5-1; END IF; WHEN S2 => CNT5<=\ CNT3<=\--十位 CNT4<=\ WHEN OTHERS => NULL; END CASE; END IF;

END PROCESS; L3<=CNT5;

L2<=CNT4; L1<=CNT3;

END BEHAVIORAL;

3)逻辑综合(Synthesize)

选中Synthesize选项,点进行参数设置,可以对任何操作进行参数设置。设置完成后,双击Synthesize选项,或右键选择Run选项。对其他两个VHDL程序进行同样的操作。

图4.35 综合参数设置示意图

图4.36 综合完成后界面

4)设计中的有关仿真

(1) 创建Testbench波形源文件

在工程项窗口Project Window的源文件中选中count_t.vhd ,用鼠标右点,在弹出的窗口中选择New Source(如图4.37所示),出现New对话框,再选择Test Bench Waveform文件类型,并输入文件名wave_1,点击下一步,再点击下一步,完成创建并进行初始化时间设置(如图4.38所示)。

图4.37 选中源文件并创建Testbench波形文件

图4.38 创建Testbench波形文件的初始化时间设置

(2) 设置输入信号初始值

根据被仿真模块的设计要求,对各个输入信号进行初始化设置(如图4.39所示)。初始化设置完毕后将testbench文件存盘,这时HDL Bencher会提示我们设置希望仿真的时钟周期数(默认值为1),设置完毕后点击OK退出HDL Bencher。

…… 此处隐藏:747字,全部文档内容请下载后查看。喜欢就下载吧 ……
常用EDA工具软件操作指南(5).doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.jiaowen.net/wendang/438726.html(转载请注明文章来源)
Copyright © 2020-2025 教文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:78024566 邮箱:78024566@qq.com
苏ICP备19068818号-2
Top
× 游客快捷下载通道(下载后可以自由复制和排版)
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能出现无法下载或内容有问题,请联系客服协助您处理。
× 常见问题(客服时间:周一到周五 9:30-18:00)