Replies: 3 comments 7 replies
-
Set the clock rate 16 times faster than you need for it then divide it down by 16 for the slower clock. On Apr 5, 2024 1:12 PM, Naveen K R ***@***.***> wrote:
I am trying to run an operation 16 times in one clock cycle. I believe I could achieve this by multiplying the base clock by 16. But how do I do it?
I read online I can use delays to achieve this, but how do I do that? Like how do I use delays in general?
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you are subscribed to this thread.Message ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
If delay elements are used, the generated clock signal depends on the runtime behavior of the gates used. This would not be done in reality, as there would be a very large temperature influence, for example. It could easily be that the multiplied signal "overtakes" the input clock, which could lead to interference. If you wanted to generate a clock signal that is a multiple of an input clock in reality, you would use a PLL instead. This is done in every modern processor in order to generate the actual fast processor clock from the slow board clock by "multiplying" it by a fixed factor. A PLL (phase-locked loop) is a control circuit consisting of a voltage-controlled oscillator and a frequency divider. The voltage and thus the frequency is increased until the divided clock signal is in phase with the input frequency. The oscillator frequency is then a corresponding multiple of the input frequency. In reality, therefore, a frequency division takes place. In this simulator it is not possible to implement something like this because the simulator is event-based and there is no real notion of time. An "overtake" is not possible here, for example, as the clock signal would wait until the propagation times of the delay gates have elapsed. |
Beta Was this translation helpful? Give feedback.
-
I am trying to run an operation 16 times in one clock cycle. I believe I could achieve this by multiplying the base clock by 16. But how do I do it?
Beta Was this translation helpful? Give feedback.
All reactions