в *.sdc файле описал клоки.
Код
set_time_format -unit ns -decimal_places 3
create_clock -name {clk1} -period 10.000 -waveform { 0.000 5.000 } [get_ports {clk}]
create_generated_clock -name {pll|clk_out[0]} -source [get_pins {pll|clk_in[0]}] -duty_cycle 50.000 -master_clock {clk1} [get_pins {pll|clk_out[0]}]
create_generated_clock -name {pll|clk_out[1]} -source [get_pins {pll|clk_in[0]}] -duty_cycle 50.000 -phase 90.000 -master_clock {clk1} [get_pins {pll|clk_out[1]}]
create_clock -name {clk1} -period 10.000 -waveform { 0.000 5.000 } [get_ports {clk}]
create_generated_clock -name {pll|clk_out[0]} -source [get_pins {pll|clk_in[0]}] -duty_cycle 50.000 -master_clock {clk1} [get_pins {pll|clk_out[0]}]
create_generated_clock -name {pll|clk_out[1]} -source [get_pins {pll|clk_in[0]}] -duty_cycle 50.000 -phase 90.000 -master_clock {clk1} [get_pins {pll|clk_out[1]}]
не могу понять как описывать выходные пины Dout и clkDac? Очевидно нужно описать выходные задержки, но между чем и чем?
мне нужно чтобы передний фронт clkDac был посередине установки данных на Dout. По даташиту, при моих частотах допускается передний фронт clkDac двигать ±2 нс относительно Dout. Как это правильно прописать в констерейнах?
пробовал так
Код
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -max 7 [get_ports {clkDac}]
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -min 3 [get_ports {clkDac}]
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -max 2 [get_ports {Dout[*]}]
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -min -2 [get_ports {Dout[*]}]
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -min 3 [get_ports {clkDac}]
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -max 2 [get_ports {Dout[*]}]
set_output_delay -clock [get_clocks {pll|clk_out[0]}] -min -2 [get_ports {Dout[*]}]
такие констрейны не выполняются. Например по clkAdc такие картинки - рисунок 3. Не понятно по графику.... по идее клок pll|clk_in[0] испустился (Launch Clock), через 5 нс ±2 должен появится клок на выходе плис clkDac (Latch Clock). Но на графике всякие Clok Delay и Data Delay почемуто ДО того, как испустился клок (Launch Clock). Кто-нибудь может пояснить эти диаграммы, плииз.