简体   繁体   中英

Verilog, handshakes and clock rates

OK, I'm new to this.

Just wondering, when designing modules, do I have to do handshakes between modules?

Or can I just assume that combinational logic in an 'always' block will always finish before the next clock - that the compiler (or what have you) will select a suitable clock rate.

When designing a hardware based system you usually define you clock frequency, for certain platforms it may be predefined 50MHz, 100MHz etc.

In RTL or behavioural simulations the combinatorial logic will have no time delay through it. When synthesising the RTL in to gates, you apply constraints, eg clock frequency. To be timing safe the synthesis tool must create combinatorial logic with a lower propagation delay than your clock period.

If you are not timing clean, then this constraint is broken and you have to slow your clock down giving you more time or break up the logic by inserting flip-flops.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM