AR# 13920

|

12.1 既知の問題 - Timing Analyzer - FROM-TO 制約に間違ったパス (TNM) が使用される

説明


TNM および TNM_NET グループ制約はどのように使用しますか。たとえば、ネット netand を通過する flopa と flopb 間のパスを無視するために、TIG を使用してタイミング解析から次の点線間の情報を削除します。


TNM 回路
TNM 回路



TNM_NET グループ制約を使用して、FROM および TO フリップフロップを指定します。



使用している UCF :



#PERIOD Constraint
NET "clk" TNM_NET = "clk";

TIMESPEC "TS_clk" = PERIOD "clk" 7 ns HIGH 50 %;



#Create Groups

NET "neta" TNM_NET = "neta_grp";

NET "netand" TPTHRU = "netand_thru";

NET "netb" TNM_NET = "netb_grp";



#Actual Constraint

TIMESPEC "TS_broken_TIG" = FROM "neta_grp" THRU "netand_thru" TO "netb_grp" TIG;










しかし、これは動作しません。 何が問題なのでしょうか。



================================================================

Timing constraint: PATH "FROM neta_grp THRU netand_thru TO netb_grp" TIG ;



0 items analyzed, 0 timing errors detected.

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



何も解析されず、パスにはまだ PERIOD 制約が付いています。



=================================================================

Timing constraint: TS_clk = PERIOD TIMEGRP "clk" 7 nS HIGH 50.000000 % ;


2 items analyzed, 0 timing errors detected.

Minimum period is 1.744ns.

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

Slack: 5.389ns (requirement - (data path - negative clock skew))

Source: flopa

Destination: flopb

Requirement: 7.000ns

Data Path Delay: 1.611ns (Levels of Logic = 3)

Negative Clock Skew: 0.000ns

Source Clock: clk_BUFGP rising at 0.000ns

Destination Clock: clk_BUFGP rising at 7.000ns



Data Path: flopa to flopb

Location Delay type Delay(ns) Physical Resource

Logical Resource(s)

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

SLICE_X4Y0.YQ Tcko 0.449 neta

flopa

SLICE_X0Y0.G4 net (fanout=1) 0.521 neta

SLICE_X0Y0.Y Tilo 0.347 netb

SLICE_X0Y0.DY net (fanout=1) 0.001 netand

SLICE_X0Y0.CLK Tdyck 0.293 netb

flopb

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

Total 1.611ns (1.089ns logic, 0.522ns route)

(67.6% logic, 32.4% route)








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



これはバグですか。

ソリューション


いいえ。ネットに TNM と TNM_NET の両方を配置すると、両方とも 順方向に トレースし、下方向にあるフリップフロップをすべて対象に入れますが、後方にはトレースしません 。上記の例では、neta_grp には flopb が、netb_grp には flopc が含まれます。FROM および TO 制約により緑色の点線は削除されますが、THRU ポイント netand が存在しないため、FROM-THRU-TO 制約は解析されません。



修正方法



Timing Analyzer で [Analyze] -> [Query TimeGroups] をクリックします。



#-------------------------------------------------------------------------------
# TimeGroups Report

# Design: H:\PROJECTS\timing\tnmtest.ncd

# Physical Constraints File: H:\PROJECTS\timing\tnmtest.pcf

# Generated: Tue Jan 22 18:07:58 2002

# Release 4.1.03i - Timing Analyzer E.30

#-------------------------------------------------------------------------------



TimeGroup neta_grp:

BELs:

flopb



TimeGroup netand_thru:

Pins:

xlxi_6.D



TimeGroup netb_grp:

BELs:

flopc






このネットの前にあるフリップフロップを指定します。ネット din および neta を使用してグループを作成します。



#PERIOD Constraint

NET "clk" TNM_NET = "clk";

TIMESPEC "TS_clk" = PERIOD "clk" 7 ns HIGH 50 %;



#Create Groups

NET "din" TNM_NET = "neta_grp";

NET "netand" TPTHRU = "netand_thru";

NET "neta" TNM_NET = "netb_grp";



#Actual Constraint

TIMESPEC "TS_broken_TIG" = FROM "neta_grp" THRU "netand_thru" TO "netb_grp" TIG;



このケースでは問題が起きません。

================================================================

Timing constraint: PATH "FROM neta_grp THRU netand_thru TO netb_grp" TIG ;



1 item analyzed, 0 timing errors detected.

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

Delay: 1.611ns (data path - negative clock skew)

Source: flopa

Destination: flopb

Data Path Delay: 1.611ns (Levels of Logic = 3)

Negative Clock Skew: 0.000ns

Source Clock: clk_BUFGP rising at 0.000ns

Destination Clock: clk_BUFGP rising at 7.000ns



Data Path: flopa to flopb

Location Delay type Delay(ns) Physical Resource

Logical Resource(s)

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

SLICE_X4Y0.YQ Tcko 0.449 neta

flopa

SLICE_X0Y0.G4 net (fanout=1) 0.521 neta

SLICE_X0Y0.Y Tilo 0.347 netb

SLICE_X0Y0.DY net (fanout=1) 0.001 netand

SLICE_X0Y0.CLK Tdyck 0.293 netb

flopb

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

Total 1.611ns (1.089ns logic, 0.522ns route)

(67.6% logic, 32.4% route)

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



さらに、パスが PERIOD 制約から削除されました。



質問 : netand ではなく、neta を使用しなければならない理由を教えてください。TNM_NET は AND ゲートを使用するだけではありませんか。



解答 : いいえ。通常、TNM および TNM_NET は、フリップフロップ、RAM、およびパッドのみを使用します。AND ゲートは識別されません。



質問 : TNM と TNM_NET の違いは何ですか。



解答 : TNM は、IBUF の前にあるネットに設定された場合、IPAD を使用して逆方向にトレースします。入力パッドを駆動するネットがないため、これ以外に入力パッドをグループ化する方法はありません。
AR# 13920
日付 05/13/2012
ステータス アクティブ
種類 既知の問題
ツール 詳細 概略
People Also Viewed