I'm having a problem with synthesizing a project built around a fast clock for a Cmod A7. The code attached (main file RAD_counter, based on Mike Field's "fast_freq_counter", thanks Mike!) creates a 450MHz clock from the on-board 12MHz clock using two MMCMs (12->250, 250->450). It then uses the fast clock to modulate a signal input via pin; this modulated signal is sent into a fast counter to approximate area under the curve of the input signal. A second pipeline counts edges in the original input signal. Both counts are output over a single 16-bit bus using a 2-state mux.
The code behaves precisely as expected in the Vivado simulator.
Synthesis, however, fails: the synthesizer claims that the output from the clock is not used and leaves the pin dangling; the rest of the modulated-signal chain then simply disappears.
I'm new to FPGAs & VHDL -- this is my first significant project -- so no doubt I'm making a very simple mistake. That said, I've spent a lot of time trying to track it down (including replacing the MMCM code with IP from the clock wizard, rewriting basically every file in the project from scratch) and no luck. If anyone has guidance (for this problem, for debugging in general) I'd very much appreciate it.
Question
Allan_Adams
I'm having a problem with synthesizing a project built around a fast clock for a Cmod A7. The code attached (main file RAD_counter, based on Mike Field's "fast_freq_counter", thanks Mike!) creates a 450MHz clock from the on-board 12MHz clock using two MMCMs (12->250, 250->450). It then uses the fast clock to modulate a signal input via pin; this modulated signal is sent into a fast counter to approximate area under the curve of the input signal. A second pipeline counts edges in the original input signal. Both counts are output over a single 16-bit bus using a 2-state mux.
The code behaves precisely as expected in the Vivado simulator.
Synthesis, however, fails: the synthesizer claims that the output from the clock is not used and leaves the pin dangling; the rest of the modulated-signal chain then simply disappears.
I'm new to FPGAs & VHDL -- this is my first significant project -- so no doubt I'm making a very simple mistake. That said, I've spent a lot of time trying to track it down (including replacing the MMCM code with IP from the clock wizard, rewriting basically every file in the project from scratch) and no luck. If anyone has guidance (for this problem, for debugging in general) I'd very much appreciate it.
Thanks,
Allan
sampler_gray4.vhd RAD_Testbench.vhd RAD_Counter.xdc RAD_counter.vhd rad_clock.vhd prescaler_3.vhd output_mux.vhd gray_to_bin_4.vhd counter_gray4.vhd accumulator.vhd
Link to comment
Share on other sites
15 answers to this question
Recommended Posts
Archived
This topic is now archived and is closed to further replies.