vhdl 16位二进制计数器不能计数LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY counter16 ISPORT(CLK,RST,EN,SET:IN STD_LOGIC;CHOOSE:IN BIT;SETDATA:IN STD_LOGIC_VECTOR(15 DOWNTO 0);COUT:OUT STD_LOGIC_VECTOR(15 D
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/16 22:19:26
vhdl 16位二进制计数器不能计数LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY counter16 ISPORT(CLK,RST,EN,SET:IN STD_LOGIC;CHOOSE:IN BIT;SETDATA:IN STD_LOGIC_VECTOR(15 DOWNTO 0);COUT:OUT STD_LOGIC_VECTOR(15 D
vhdl 16位二进制计数器不能计数
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY counter16 IS
PORT(
CLK,RST,EN,SET:IN STD_LOGIC;
CHOOSE:IN BIT;
SETDATA:IN STD_LOGIC_VECTOR(15 DOWNTO 0);
COUT:OUT STD_LOGIC_VECTOR(15 DOWNTO 0)
);
END counter16;
ARCHITECTURE ONE OF counter16 IS
SIGNAL Q1:STD_LOGIC_VECTOR(15 DOWNTO 0);
BEGIN
PROCESS(CLK,RST,SETDATA,EN,CHOOSE,SET,Q1)
BEGIN
IF RST='1' THEN --qingling
Q1
vhdl 16位二进制计数器不能计数LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY counter16 ISPORT(CLK,RST,EN,SET:IN STD_LOGIC;CHOOSE:IN BIT;SETDATA:IN STD_LOGIC_VECTOR(15 DOWNTO 0);COUT:OUT STD_LOGIC_VECTOR(15 D
1,你说的这个问题只会出现在仿真里,因为VHDL是硬件语言,你用VHDL语句赋的初值没用.所以,仿真中要想实现理想效果,需要:计数之前先reset,把计数初值设为0;置数之前把SETDATA值在仿真激励文件中给出来.
2,你所用器件不同,使用的软件就不同,一般软件是供应商提供的,可以试试下载最新版本,另外,就是养成良好的变成习惯.