脉冲后产生持续10个时钟周期的时钟

时间:2012-09-20 16:23:02

标签: vhdl

我正在尝试创建一个仅从100 MHz信号持续10个时钟周期的时钟。时钟将通过脉冲信号启用。

- 每次脉冲信号达到1 clock2时,100 MHz clock1持续10个周期

  • 我在VHDL工作

1 个答案:

答案 0 :(得分:0)

你的意思是100 MHz时钟作为输入吗?

假设它是,一个小型状态机和一个计数器将是一个很好的方法来解决这个问题。状态机可能有两种状态:空闲计数。如果脉冲信号为高,则下一个状态逻辑会将状态从空闲改变为计数。在计数状态下,计数器将递增,当计数器达到10时,状态将返回空闲。当处于 count 状态时,输出逻辑将时钟信号转发到输出。在空闲时,输出将为“0”。

有关制作状态机的更多信息:How to implement state machines in VHDL

有关制作计数器的更多信息:Counters in VHDL

clock_input是100 MHz时钟,是输入,clock_generated是输出。

输出逻辑将涉及多路复用器:

clock_generated <= clock_input when state=count else '0';