UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 52953

AXI VDMA - このコアに追加する必要のある CDC (クロック ドメイン交差) 制約

説明

このコアには多くのクロックおよびインターフェイスがあります。また、非同期モードであるため、一部のインターフェイスには他のものとは異なるクロックがあります。EDK の場合、制約の一部が自動的に Tcl により書き出されますが、すべての CDC (クロック ドメイン交差) パスが制約の適用範囲内にあるわけではありません。これらのパスに対して正しい制約は何ですか。どれかフォルス パスで TIG を適用しても問題がないのでしょうか。

ソリューション


XPS では、このコアの Tcl により、フォルス パスであると分かっているフリップフロップ インスタンスに対し、クロック ドメインを交差する TIG 制約が書き出されます。しかし、AXI VDMA コアの場合、非同期バッファーのバックエンド操作で FIFO Generator が使用されます。FIFO Generator はクロック ドメインを交差するパスに対して制約を設定せず、また AXI VDMA コアには危険な想定で CDC パスを制約する機能しかありません (アンサー 46044 を参照)。このため、これらのパスは制約が設定されておらず、デザインのクロック トポロジに基づいてユーザーが制約を設定する必要があります。

このため、FIFO 内の CDC パスに対して次のようなエラーが発生したときは、TIG 制約を設定しても問題はありません。

--------------------------------------------------------------------------------
Slack: -2.620ns (requirement - (data path - clock path skew + uncertainty))
Source: axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/rd_pntr_gc_1 (FF)
Destination: axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/gsync_stage[1].wr_stg_inst/Q_1 (FF)
Requirement: 0.205ns
Data Path Delay: 0.685ns (Levels of Logic = 0)(Component delays alone exceeds constraint)
Clock Path Skew: -1.097ns (3.519 - 4.616)
Source Clock: clk148 rising at 639.795ns
Destination Clock: Internal_BRAM_port_a_BRAM_Clk rising at 640.000ns
Clock Uncertainty: 1.043ns

Clock Uncertainty: 1.043ns ((TSJ^2 + DJ^2)^1/2) / 2 + PE
Total System Jitter (TSJ): 0.070ns
Discrete Jitter (DJ): 0.388ns
Phase Error (PE): 0.845ns

Maximum Data Path at Slow Process Corner: axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/rd_pntr_gc_1 to axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/gsync_stage[1].wr_stg_inst/Q_1
Location Delay type Delay(ns) Physical Resource
Logical Resource(s)
------------------------------------------------- -------------------
SLICE_X27Y1.AMUX Tshcko 0.422 axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/rd_q<0><3>
axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/rd_pntr_gc_1
SLICE_X24Y1.BX net (fanout=1) 0.248 axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/rd_q<0><1>
SLICE_X24Y1.CLK Tdick 0.015 axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/rd_q<1><3>
axi_vdma_out/axi_vdma_out/GEN_SG_ENGINE.I_SG_ENGINE/I_SG_FETCH_QUEUE/GEN_CH1_FTCH_Q_IF.GEN_CH1_QUEUE.FTCH_QUEUE_I/GEN_FIFO_FOR_ASYNC.I_CH1_FTCH_FIFO/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/gntv_or_sync_fifo.gcx.clkx/gsync_stage[1].wr_stg_inst/Q_1
------------------------------------------------- ---------------------------
Total 0.685ns (0.437ns logic, 0.248ns route)
(63.8% logic, 36.2% route)
--------------------------------------------------------------------------------


非同期クロック ドメイン グループ間に標準の TIG を適用するようにしてください。

また、AXI VDMA のリセット モジュールから FIFO のリセット ピンまでの非同期リセット パスにも制約が設定されていない可能性があります。このパスは FIFO Generator コア内で同期化しているので、フォルス パスです。これに TIG を設定しても問題はありません。たとえば、タイミング レポートでこのパスは次のように表示されます。


--------------------------------------------------------------------------------

Slack: -3.657ns (requirement - (data path - clock path skew + uncertainty))
Source: axi_vdma_master/axi_vdma_master/I_RST_MODULE/GEN_RESET_FOR_S2MM.RESET_I/GEN_RESET_FOR_ASYNC.AXIS_RESET_CDC_I/GENERATE_LEVEL_P_S_CDC_NO_RST.s_level_out_d2 (FF)
Destination: axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/GEN_S2MM_FLUSH_SOF_LOGIC.GEN_LINEBUFFER_FLUSH_SOF.GEN_ASYNC_FIFO_FLUSH_SOF.I_LINEBUFFER_ASYNC_FIFO_FLUSH_SOF/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/rstblk/rd_rst_asreg (FF)
Requirement: 0.020ns
Data Path Delay: 3.093ns (Levels of Logic = 1)(Component delays alone exceeds constraint)
Clock Path Skew: -0.147ns (2.569 - 2.716)
Source Clock: Output_Video_Clk rising at 459.980ns
Destination Clock: clk_200_0000MHzMMCM0 rising at 460.000ns
Clock Uncertainty: 0.437ns

Clock Uncertainty: 0.437ns ((TSJ^2 + DJ^2)^1/2) / 2 + PE
Total System Jitter (TSJ): 0.070ns
Discrete Jitter (DJ): 0.143ns
Phase Error (PE): 0.356ns

Maximum Data Path at Slow Process Corner: axi_vdma_master/axi_vdma_master/I_RST_MODULE/GEN_RESET_FOR_S2MM.RESET_I/GEN_RESET_FOR_ASYNC.AXIS_RESET_CDC_I/GENERATE_LEVEL_P_S_CDC_NO_RST.s_level_out_d2 to axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/GEN_S2MM_FLUSH_SOF_LOGIC.GEN_LINEBUFFER_FLUSH_SOF.GEN_ASYNC_FIFO_FLUSH_SOF.I_LINEBUFFER_ASYNC_FIFO_FLUSH_SOF/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/rstblk/rd_rst_asreg
Location Delay type Delay(ns) Physical Resource
Logical Resource(s)
------------------------------------------------- -------------------
SLICE_X21Y71.AQ Tcko 0.337 axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_VID_CDC_I/GEN_CDC_FOR_ASYNC.SOF_CDC_I/GENERATE_PULSE_CDC_S_P.s_pulse_out_s_h_d1_cdc_to
axi_vdma_master/axi_vdma_master/I_RST_MODULE/GEN_RESET_FOR_S2MM.RESET_I/GEN_RESET_FOR_ASYNC.AXIS_RESET_CDC_I/GENERATE_LEVEL_P_S_CDC_NO_RST.s_level_out_d2
SLICE_X8Y48.D4 net (fanout=40) 1.403 axi_vdma_master/axi_vdma_master/I_RST_MODULE/GEN_RESET_FOR_S2MM.sig_s2mm_axis_resetn
SLICE_X8Y48.DMUX Tilo 0.218 axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/GEN_S2MM_FLUSH_SOF_LOGIC.GEN_LINEBUFFER_FLUSH_SOF.I_MSTR_SKID_FLUSH_SOF/sig_reset_reg
axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/s_axis_fifo_ainit1
SLICE_X7Y42.SR net (fanout=34) 0.714 axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/s_axis_fifo_ainit
SLICE_X7Y42.CLK Trck 0.421 axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/GEN_S2MM_FLUSH_SOF_LOGIC.GEN_LINEBUFFER_FLUSH_SOF.GEN_ASYNC_FIFO_FLUSH_SOF.I_LINEBUFFER_ASYNC_FIFO_FLUSH_SOF/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/rstblk/rd_rst_asreg
axi_vdma_master/axi_vdma_master/GEN_SPRT_FOR_S2MM.S2MM_LINEBUFFER_I/GEN_S2MM_FLUSH_SOF_LOGIC.GEN_LINEBUFFER_FLUSH_SOF.GEN_ASYNC_FIFO_FLUSH_SOF.I_LINEBUFFER_ASYNC_FIFO_FLUSH_SOF/I_ASYNC_FIFOGEN_FIFO/USE_2N_DEPTH.V6_S6_AND_LATER.I_ASYNC_FIFO_BRAM/U0/xst_fifo_generator/gconvfifo.rf/grf.rf/rstblk/rd_rst_asreg
------------------------------------------------- ---------------------------
Total 3.093ns (0.976ns logic, 2.117ns route)
(31.6% logic, 68.4% route)

--------------------------------------------------------------------------------


FIFO Generator での CDC パスに AXI VDMA コアにより正しく制約を設定できるようにするため、Vivado Design Suite で XDC を使用してコア レベルの制約を適用する機能も検討中です。

また、CORE Generator からのコアを使用している場合は、すべての CDC 制約はユーザーが設定する点に注意してください。
AR# 52953
日付 11/30/2012
ステータス アクティブ
種類 一般
IP
  • Video DMA
このページをブックマークに追加