Forum Discussion
About Virtual Clocks in Constraints
- 3 years ago
Virtual clocks represent the clocks that drive external devices, those that drive into the FPGA on inputs (upstream) and those that drive devices fed by the FPGA on outputs (downstream). I'm not sure what you mean by "limit the data output from the FPGA to the external clock." On outputs, the virtual clock is used as the latch clock and the setup and hold timing requirements at the downstream device are based off of it. On inputs, the virtual clock acts as the launch clock and the tco of the upstream device is based off of it.
For synchronous I/O timing analysis, the virtual clock is always the clock that is referenced when creating your set_input_delay and set_output_delay constraints so even if the same physical clock drives both the external device and the FPGA, you should always create a separate virtual clock with create_clock. Virtual clocks are created with create_clock by not specifying a target (but including a name), something like:
create_clock -name virt_clock -period 10
Hello,
I’m glad that your question has been addressed, I now transition this thread to community support. If you have a new question, please login to https://supporttickets.intel.com , view details of the desire request, and post a feed/response within the next 15 days to allow me to continue to support you. After 15 days, this thread will be transitioned to community support. The community users will be able to help you on your follow-up questions.
p/s: If any answer from community or Intel support are helpful, please feel free to mark as solution, give Kudos and rate 4/5 survey
Regards,
Nurina