谁能帮我解释一下这段代码的意思啊?万分感谢!
时间:10-02
整理:3721RD
点击:
process(tclkin)
begin
if tclkin'event and tclkin = '0' then
if counter = "1111111111111111111111111" then
counter <= (others => '1');
elsif counter < "1111111111111111111111111" then
counter <= counter + '1';
elsecounter <= (others => '0');
end if;
end if;
end process;
begin
if tclkin'event and tclkin = '0' then
if counter = "1111111111111111111111111" then
counter <= (others => '1');
elsif counter < "1111111111111111111111111" then
counter <= counter + '1';
elsecounter <= (others => '0');
end if;
end if;
end process;
在时钟下降沿计数的计数器,计数到全1后维持不变
你这段代码是不能综合
你这段代码是不能综合,想想,电路上电后计数器就自加,到全1后就永远保持,只能运行一次,综合工具是不认的,会被cut way,实现上电只工作一次,应该采用其他的方法,例如模拟电路实现,典型的就是MCU中的上电复位,那个就不是用代码写的,而是使用晶体管电路搭出来的。