发布网友 发布时间:2022-04-20 08:52
共1个回答
热心网友 时间:2023-07-19 10:05
library ieee;
use ieee.std_logic_11.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity shier is
port(clk,enable: in std_logic;
tp : out std_logic_vector(0 to 3);
count :out std_logic_vector(0 to 7));
end shier;
architecture xu of shier is
signal temp :std_logic_vector(0 to 3);
signal count1:std_logic_vector(0 to 7);
begin
process(clk,enable)
begin
if (enable='0')then temp<= "1010";count1<="00000000";
elsif (clk' event and clk='1')
then if (temp<="1010") then temp<=temp+1;
else temp<="0000"; count1<=count1+1;
end if;
end if;
end process;
tp<=temp;count<=count1;
end xu;
说明:clk是时钟信号,enable同步置数,count是进位标志,temp是计数
我是学电子专业的 开了EDA这门课,有机会相互讨论讨论相关知识。
上面的代码是我自己写的,运行没有问题 有QUARTUSII9.0进行功能波行仿真,合题目要求。
有什么问题可以联系我!