...

Vivado Design Suite プロパティ リファレンス ガイド (UG912)

by user

on
Category: Documents
97

views

Report

Comments

Transcript

Vivado Design Suite プロパティ リファレンス ガイド (UG912)
Vivado Design Suite
プ ロパテ ィ リ フ ァ レ ン ス
ガイ ド
UG912 (v2014.2) 2014 年 8 月 5 日
本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先しま
す。資料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用
の上、最新情報につきましては、必ず最新英語版をご参照ください。
改訂履歴
次の表に、 こ の文書の改訂履歴を示 し ます。
日付
バージ ョ ン
改訂内容
2014 年 8 月 5 日
2014.2
44 ページの 「ハー ド ウ ェ ア マネージ ャ ー オブジ ェ ク ト 」 お よ び82 ページの 「hw_sysmon」
を追加
2014 年 6 月 4 日
2014.2
136 ページの 「IP_REPO_PATHS」 お よ び146 ページの 「KEEP_COMPATIBLE」 を追加
current_design を使用す る ために 「POST_CRC_ACTION」 の XDC 構文を変更
get_ports を使用す る ために 「PULLUP」 お よ び 「PULLDOWN」 の XDC 構文 と 例を変更
2014 年 5 月 9 日
2014.1
第 1 章 「Vivado の第一級オブジ ェ ク ト 」 に26 ページの 「ブ ロ ッ ク デザ イ ン オブジ ェ ク ト 」
お よ び44 ページの 「ハー ド ウ ェ ア マネージ ャ ー オブジ ェ ク ト 」 を追加
第 2 章 「主 な プ ロ パ テ ィ の 説 明」 に 「BLACK_BOX」 、 「CLOCK_BUFFER_TYPE」 、
「C O N TA I N _ R O U T I N G 」 、 「E X C L U D E _ P L A C E M E N T 」 、 「I O _ B U F F E R _ T Y P E 」 、
「MAX_FANOUT」、 「PATH_MODE」 お よ び 「USE_DSP48」 プ ロ パテ ィ を追加
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
2
目次
改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
第一級オブジ ェ ク ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
本書か ら 例を コ ピーす る 場合 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
BEL (基本エ レ メ ン ト ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
セル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
ネ ッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
ピ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
ポー ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
サ イ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
ブ ロ ッ ク デザ イ ン オブジ ェ ク ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
DIAGRAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
BD_ADDR_SEG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
BD_ADDR_SPACE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
BD_CELL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
BD_INTF_NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
BD_INTF_PIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
BD_INTF_PORT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
BD_NET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
BD_PIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
BD_PORT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
ハー ド ウ ェ ア マネージ ャ ー オブジ ェ ク ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_AXI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_BITSTREAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_CFGMEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_DEVICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_ILA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_ILA_DATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_PROBE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SERVER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SIO_GT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SIO_GTGROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SIO_IBERT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SIO_PLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SIO_RX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_SIO_TX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
hw_sysmon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_TARGET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HW_VIO. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
44
45
47
48
50
53
55
56
57
58
68
69
71
73
79
82
85
87
3
第 2 章 : 主な プ ロパテ ィ の説明
プ ロ パテ ィ 情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
ASYNC_REG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
BEL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
BLACK_BOX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95
BUFFER_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96
CFGBVS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
CLOCK_BUFFER_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
CLOCK_DEDICATED_ROUTE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
CLOCK_ROOT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
CONFIG_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
CONFIG_VOLTAGE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
CONTAIN_ROUTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
DCI_CASCADE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
DIFF_TERM. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
DIFF_TERM_ADV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
DONT_TOUCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
DRIVE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115
EQUALIZATION. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117
EXCLUDE_PLACEMENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
FSM_ENCODING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
FSM_SAFE_STATE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
H_SET お よ び HU_SET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HIODELAY_GROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
HLUTNM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IBUF_LOW_PWR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IN_TERM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
INTERNAL_VREF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IP_REPO_PATHS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IO_BUFFER_TYPE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IOB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IOBDELAY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IODELAY_GROUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
IOSTANDARD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KEEP_COMPATIBLE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KEEP_HIERARCHY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
KEEPER . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LOCK_PINS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LUTNM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LVDS_PRE_EMPHASIS. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MARK_DEBUG. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MAX_FANOUT. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ODT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
OFFSET_CNTRL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PACKAGE_PIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PATH_MODE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PBLOCK. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
POST_CRC. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
POST_CRC_ACTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
122
126
128
131
133
135
136
137
139
140
142
144
146
148
150
152
154
157
160
161
162
164
165
167
168
170
172
173
4
POST_CRC_FREQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
POST_CRC_INIT_FLAG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
POST_CRC_SOURCE. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PRE_EMPHASIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PROHIBIT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PULLDOWN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
PULLUP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
REF_NAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
REF_PIN_NAME. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RLOC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RLOCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RLOC_ORIGIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ROUTE_STATUS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
RPM_GRID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
SLEW . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
U_SET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
USE_DSP48 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
USED_IN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
VCCAUX_IO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
174
176
177
178
179
180
182
183
184
185
188
190
192
194
195
197
200
203
204
206
付録 A : その他の リ ソ ース
ザ イ リ ン ク ス リ ソ ース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ソ リ ュ ーシ ョ ン セ ン タ ー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
208
208
208
209
5
第 1章
Vivado の第一級オブ ジ ェ ク ト
概要
本書では、 第一級オブジ ェ ク ト 、 ザ イ リ ン ク ス Vivado® Design Suite で使用可能なオブジ ェ ク ト のプ ロ パテ ィ につい
て説明 し ます。 含ま れ る 内容は次の と お り です。
•
第 1 章「Vivado の第一級オブジ ェ ク ト 」 : FPGA デザ イ ン デー タ ベース をモデル化す る ため Vivado Design Suite で
使用 さ れ る さ ま ざ ま なデザ イ ンお よ びデバ イ ス のオブジ ェ ク ト について説明 し ます。 オブジ ェ ク ト の定義、 関連
オブジ ェ ク ト の リ ス ト 、 オブジ ェ ク ト に関連付け ら れてい る プ ロ パテ ィ の リ ス ト が こ れに含まれます。
•
第 2 章 「主なプ ロ パテ ィ の説明」 : Vivado Design Suite プ ロ パテ ィ に対 し 、 プ ロ パテ ィ の説明、 サポー ト さ れてい
る アーキ テ ク チ ャ 、 適用可能エ レ メ ン ト 、 値、 構文例 (Verilog、 VHDL、 XDC)、 影響の あ る デザ イ ン フ ロ ー ス
テ ッ プ、 と いっ た項目に分けて説明があ り ます。
•
付録 A 「その他の リ ソ ース」 : http://japan.xilinx.com/support のザ イ リ ン ク ス サポー ト ウ ェ ブサ イ ト か ら 入手可能
な リ ソ ースお よ び資料が リ ス ト さ れてい ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
6
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
第一級オブ ジ ェ ク ト
Vivado Design Suite では、イ ン メ モ リ デザ イ ン デー タ ベース で数多 く の第一級オブジ ェ ク ト がサポー ト さ れてい ます。
こ れ ら のオブジ ェ ク ト は、 デザ イ ン ま たは論理ネ ッ ト リ ス ト 、 お よ び タ ーゲ ッ ト のザ イ リ ン ク ス FPGA ま たはデバ イ
ス を表 し ます。 ネ ッ ト リ ス ト オブジ ェ ク ト と デバ イ ス オブジ ェ ク ト と の関係は、 デザ イ ン をデバ イ ス にマ ッ プす る
のに使用 さ れます。 図 1-1 は一部の Vivado 第一級オブジ ェ ク ト の関連性を示 し た も のです。
X-Ref Target - Figure 1-1
1HW
3RUW
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
6LWH3LS
3LS
,2%DQN
7LOH
,2
6WDQGDUG
図 1‐1 : Vivado の第一級オブ ジ ェ ク ト
図 1-1 に表示 さ れてい る オブジ ェ ク ト は、 ネ ッ ト リ ス ト オブジ ェ ク ト ま たはデバ イ ス オブジ ェ ク ト と し て定義 さ れ
てい ます。 上の図で ピ ン ク 色で表示 さ れてい る ネ ッ ト リ ス ト オブジ ェ ク ト は、 FPGA にプ ロ グ ラ ムす る ロ ジ ッ ク デ
ザ イ ン の一部で、 ロ ジ ッ ク セル、 ピ ン、 ポー ト 、 ネ ッ ト が含ま れ ます。 青色で表示 さ れてい る デバ イ ス オブジ ェ ク
ト は、 実際の物理的な FPGA デバ イ ス の一部で、 ク ロ ッ ク 領域、 タ イ ル、 サ イ ト 、 BEL (基本エ レ メ ン ト ) な ど の リ
ソ ース が含まれます。 ま た、 図 1-1 のデバ イ ス オブジ ェ ク ト には、 緑色で表示 さ れ る パ ッ ケージ ピ ンお よ び I/O バン
ク 、 紫色で表示 さ れてい る ノ ー ド 、 ワ イ ヤ、 PIP な ど の配線 リ ソ ース も 含まれてい ます。
オブジ ェ ク ト 間の関連性は、 オブジ ェ ク ト 同士を結ぶ矢印で示 さ れてい ます。 矢印が両方のオブジ ェ ク ト を指 し てい
る 場合は、 ク エ リ ーを ど ち ら の方向か ら も 指定で き る 関係であ る こ と を示 し てい ます。 た と えば、 特定ネ ッ ト に接続
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
7
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
さ れて い る セル (get_cells -of_objects [get_nets]) を ク エ リ ー処理 し た り 、 特定セルに接続 さ れて い る ネ ッ ト (get_nets
-of_objects [get_cells]) を ク エ リ ー処理す る こ と がで き ます。
矢印が一方のみを指 し てい る 場合は、 その矢印の方向にのみ ク エ リ ーを指定で き る 関係であ る こ と を示 し てい ます。
た と えば、 7 ページの図 1-1 の例を使用 し て説明す る と 、 特定 ク ロ ッ ク 領域にあ る 基本エ レ メ ン ト は取得で き ますが
(get_bels -of_objects [get_clock_regions])、 特定の基本エ レ メ ン ト に関連付け ら れた ク ロ ッ ク 領域を取得す る こ と はで き
ま せん。 ま た、 特定基本エ レ メ ン ト を タ イ ルに関連付け る こ と はで き ま すが (get_tiles -of_objects [get_bels])、 タ イ ル
を基本エ レ メ ン ト に関連付け る こ と はで き ません。
こ の図は説明用の も のであ り 、 Vivado 第一級オブジ ェ ク ト すべて を網羅 し た も のではな く 、 ま たその関連性をすべて
説明 し てい る わけではあ り ません。
第一級オブジ ェ ク ト の説明、 ほかのオブジ ェ ク ト と の関係、 オブジ ェ ク ト で定義 さ れてい る プ ロ パテ ィ については、
こ の章の後で説明 し ます。
Vivado Design Suite には、 タ イ ミ ン グ オブジ ェ ク ト な ど、 オブジ ェ ク ト に関す る カ テ ゴ リ がほかに も あ り ます。 タ イ
ミ ン グ オブジ ェ ク ト は暫定的な タ イ ミ ン グ レ ポー ト を作成す る ためネ ッ ト リ ス ト デザ イ ンに ま と め ら れてい ます。
ネ ッ ト リ ス ト お よ びデバ イ ス オブジ ェ ク ト に関連付け ら れてい る タ イ ミ ン グ オブジ ェ ク ト を利用す る こ と で、 イ ン
プ リ メ ン ト さ れたデザ イ ン の タ イ ミ ン グ解析を完全に行 う こ と がで き ま す。 タ イ ミ ン グ オブジ ェ ク ト には、 ク ロ ッ
ク 、 タ イ ミ ン グ パ ス、 遅延オブジ ェ ク ト があ り ます。
本書から例を コ ピーする場合
注意 : 本書か ら コ ー ド に構文ま たは コ ー ド 例を コ ピーする 前に、 こ のセ ク シ ョ ン を注意 し てお読み く だ さ い。
本書には、 構文お よ び コ ー ド 例が多 く 含 ま れ、 コ ー ド にプ ロ パテ ィ を挿入で き る よ う にな っ てい ま す。 こ れ ら の コ
ピーを PDF か ら 直接 コ ー ド に コ ピーす る 場合、 次の よ う な問題があ り ます。
•
PDF か ら Vivado Tcl コ ン ソ ール、 Tcl ス ク リ プ ト 、 XDC フ ァ イ ルへ コ ー ド 例を コ ピー し て貼 り 付け る 場合、 ダ ッ
シ ュ (-) がエ ヌ ダ ッ シ ュ ま たはエム ダ ッ シ ュ に置き 換え ら れ る 可能性があ り ます。
•
PDF 資料の改行マー ク が例に挿入 さ れて し ま い、 Tcl ス ク リ プ ト や XDC フ ァ イ ルでエ ラ ーを引 き 起 こ し ます。
•
次のページに ま たが る よ う な例を コ ピーす る と 、PDF のヘ ッ ダーお よ びフ ッ タ ー情報 も 一緒に コ ピー さ れて し ま
い、 Tcl ス ク リ プ ト や XDC フ ァ イ ルでエ ラ ーを引 き 起 こ し ます。
こ れ ら の問題を回避す る には、 ASCII テ キ ス ト エデ ィ タ ーで コ ー ド 例にあ る 不必要なマーカーや情報を削除 し てか
ら 、 コ ー ド 、 Vivado Design Suite の Tcl シ ェ ル、 ま たは Tcl コ ン ソ ールに貼 り 付け る よ う に し て く だ さ い。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
8
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BEL (基本エ レ メ ン ト )
説明
BEL ま たは基本エ レ メ ン ト は、 デザ イ ンのネ ッ ト リ ス ト ビ ュ ーの リ ーフ セルに該当する も ので、 タ ーゲ ッ ト ザ イ リ
ン ク ス FPGA のデバ イ ス オブジ ェ ク ト で、 フ リ ッ プ フ ロ ッ プ、 LUT、 キ ャ リ ー ロ ジ ッ ク な ど の基本ネ ッ ト リ ス ト オ
ブジ ェ ク ト をデバ イ ス に配置ま たはマ ッ プす る ための も のです。
BEL はデバ イ ス上で ス ラ イ スや I/O ブ ロ ッ ク (IOB) な ど の 「サ イ ト 」 オブジ ェ ク ト に ま と め ら れてい ます。 1 つのサ
イ ト には BEL が 1 つま たは複数存在 し ます。 こ の BEL を使用 し て、デザ イ ン ネ ッ ト リ ス ト を タ ーゲ ッ ト デバ イ ス の
特定の ロ ケーシ ョ ンやデバ イ ス リ ソ ース に ロ ジ ッ ク を割 り 当て ます。
ザ イ リ ン ク ス FPGA ご と に さ ま ざ ま な異な る BEL タ イ プがあ り ます。 次は、 Kintex-7 パーツ、 XC7K325TFFG900 の
BEL の タ イ プです。 BEL には、 次の よ う に さ ま ざ ま な タ イ プがあ り ます。
BSCAN_BSCAN
BUFFER BUFGCTRL_BUFGCTRL BUFHCE_BUFHCE BUFIO_BUFIO BUFMRCE_BUFMRCE BUFR_BUFR
CAPTURE_CAPTURE
CARRY4
DCIRESET_DCIRESET
DNA_PORT_DNA_PORT
DSP48E1_DSP48E1
EFUSE_USR_EFUSE_USR
FF_INIT
FIFO18E1_FIFO18E1
FRAME_ECC_FRAME_ECC
GTXE2_CHANNEL_GTXE2_CHANNEL GTXE2_COMMON_GTXE2_COMMON
HARD0 HARD1
IBUFDS_GTE2_IBUFDS_GTE2
ICAP_ICAP
IDELAYCTRL_IDELAYCTRL IDELAYE2_FINEDELAY_IDELAYE2_FINEDELAY IDELAYE2_IDELAYE2
ILOGICE2_IFF ILOGICE3_IFF ILOGICE3_ZHOLD_DELAY
INVERTER
IN_FIFO_IN_FIFO
IOB18M_INBUF_DCIEN IOB18M_OUTBUF_DCIEN IOB18M_TERM_OVERRIDE
IOB18S_INBUF_DCIEN IOB18S_OUTBUF_DCIEN IOB18S_TERM_OVERRIDE
IOB18_INBUF_DCIEN IOB18_OUTBUF_DCIEN IOB18_TERM_OVERRIDE
IOB33M_INBUF_EN IOB33M_OUTBUF IOB33M_TERM_OVERRIDE
IOB33S_INBUF_EN IOB33S_OUTBUF IOB33S_TERM_OVERRIDE
IOB33_INBUF_EN IOB33_OUTBUF IOB33_TERM_OVERRIDE
LUT5 LUT6 LUT_OR_MEM5 LUT_OR_MEM6
MMCME2_ADV_MMCME2_ADV
ODELAYE2_ODELAYE2
OLOGICE2_MISR OLOGICE2_OUTFF OLOGICE2_TFF
OLOGICE3_MISR OLOGICE3_OUTFF OLOGICE3_TFF
OUT_FIFO_OUT_FIFO
PAD
PCIE_2_1_PCIE_2_1
PHASER_IN_PHY_PHASER_IN_PHY PHASER_OUT_PHY_PHASER_OUT_PHY PHASER_REF_PHASER_REF
PHY_CONTROL_PHY_CONTROL
PLLE2_ADV_PLLE2_ADV
PMV2_PMV2
PULL_OR_KEEP1
RAMB18E1_RAMB18E1
RAMBFIFO36E1_RAMBFIFO36E1
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
9
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
REG_INIT
SELMUX2_1
SLICEL_CARRY4_AMUX SLICEL_CARRY4_AXOR
SLICEL_CARRY4_BMUX SLICEL_CARRY4_BXOR
SLICEL_CARRY4_CMUX SLICEL_CARRY4_CXOR
SLICEL_CARRY4_DMUX SLICEL_CARRY4_DXOR
SLICEM_CARRY4_AMUX SLICEM_CARRY4_AXOR
SLICEM_CARRY4_BMUX SLICEM_CARRY4_BXOR
SLICEM_CARRY4_CMUX SLICEM_CARRY4_CXOR
SLICEM_CARRY4_DMUX SLICEM_CARRY4_DXOR
STARTUP_STARTUP
USR_ACCESS_USR_ACCESS
XADC_XADC
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-2
1HW
3RUW
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
6LWH3LS
3LS
,2%DQN
7LOH
,2
6WDQGDUG
図 1‐2 : BEL オブ ジ ェ ク ト
図 1-2 にあ る よ う に、ネ ッ ト リ ス ト デザ イ ンの リ ーフ セルは タ ーゲ ッ ト パーツの BEL にマ ッ プす る こ と がで き ます。
BEL は タ ーゲ ッ ト ザ イ リ ン ク ス FPGA のサ イ ト に ま と め ら れ、 BEL と サ イ ト の両方が ク ロ ッ ク 領域 と タ イ ルに ま と
め ら れ ます。 各 BEL にはセルの ピ ン にマ ッ プす る BEL ピ ンがあ り 、 ま た BEL がネ ッ ト リ ス ト オブジ ェ ク ト であ る
ネ ッ ト への接続点にな り ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
10
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
サ イ ト 、 セル、 ク ロ ッ ク 領域、 ネ ッ ト オブジ ェ ク ト の BEL は取得で き ます。 次は、 その例です。
get_bels -of [get_clock_regions X1Y3]
セル、 サ イ ト 、 タ イ ル、 BEL オブジ ェ ク ト のBEL ピ ン も 次の よ う に取得で き ます。
get_cells -of [get_bels SLICE_X104Y100/B6LUT]
プ ロパテ ィ
BEL オブジ ェ ク ト に割 り 当て ら れ る プ ロ パテ ィ は タ イ プに よ っ て異な り ます。 次は、 BEL の BUFIO タ イ プに割 り 当
て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
BUFIO_X0Y25/BUFIO のプ ロ パテ ィ
Property
Type
CLASS
string
CONFIG.DELAY_BYPASS.VALUES string
IS_RESERVED
bool
IS_TEST
bool
IS_USED
bool
NAME
string
NUM_BIDIR
int
NUM_CONFIGS
int
NUM_INPUTS
int
NUM_OUTPUTS
int
NUM_PINS
int
PROHIBIT
bool
TYPE
string
Read-only
true
true
true
true
true
true
true
true
true
true
true
false
true
Visible Value
true
bel
true
FALSE, TRUE
true
0
true
0
true
0
true
BUFIO_X0Y25/BUFIO
true
0
true
1
true
1
true
1
true
2
true
0
true
BUFIO_BUFIO
BEL オブジ ェ ク ト に割 り 当て ら れ る プ ロ パテ ィ は TYPE に よ っ て異な り ます。 上記に リ ス ト さ れてい る BEL の各 タ
イ プのプ ロ パテ ィ を確認す る には、 report_property コ マ ン ド を使用 し ます。
report_property -all [lindex [get_bels -filter {TYPE == <BEL_TYPE>}] 0]
<BEL_TYPE> には リ ス ト さ れてい る BEL タ イ プの 1 つが入 り ます。 次は、 その例です。
report_property -all [lindex [get_bels -filter {TYPE == SLICEM_CARRY4_AXOR}] 0]
report_property -all [lindex [get_bels -filter {TYPE == LUT5}] 0]
report_property -all [lindex [get_bels -filter {TYPE == IOB33S_OUTBUF}] 0]
ヒ ン ト : report_property コ マ ン ド は、 現在のデザ イ ン で関連オブジ ェ ク ト が見つか ら なか っ た場合、 オブジ ェ ク ト が
見つか ら ない と い う 内容の警告 メ ッ セージ を返す こ と があ り ます。 こ の コ マ ン ド の詳細は、 『Vivado Design Suite Tcl
コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参照 し て く だ さ い。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
11
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
セル
説明
セルは、 ネ ッ ト リ ス ト ロ ジ ッ ク オブジ ェ ク ト の イ ン ス タ ン ス で、 リ ーフ セルであ っ た り 、 階層セルであ っ た り し ま
す。 リ ーフ セルはプ リ ミ テ ィ ブ ま たはプ リ ミ テ ィ ブ マ ク ロ で、 ネ ッ ト リ ス ト には ロ ジ ッ ク の詳細はあ り ません。 階
層セルはモジ ュ ールま たはブ ロ ッ ク で、 1 つ以上の レベルの ロ ジ ッ ク を含み、 最終的には リ ーフ セル も 含みます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-3
1HW
3RUW
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
6LWH3LS
3LS
図 1‐3 : セル オブ ジ ェ ク ト
図 1-3 にあ る よ う に、 セルには外部ネ ッ ト リ ス ト を定義す る ためネ ッ ト に接続 さ れてい る ピ ンがあ り ます。 階層セル
にはピ ンに関連付け ら れてい る ポー ト も 含まれ、 階層の内部ネ ッ ト リ ス ト を定義す る ためネ ッ ト に内部接続 さ れてい
ます。
リ ーフ セルは タ ーゲ ッ ト のザ イ リ ン ク ス FPGA のデバ イ ス リ ソ ース に配置ま たはマ ッ プ さ れます。 フ リ ッ プ フ ロ ッ
プ、 LUT、 MUX な ど の基本 ロ ジ ッ ク の場合、 セルは BEL オブジ ェ ク ト に配置 さ れ、 BRAM や DSP な ど の大型 ロ ジ ッ
ク セルの場合、 セルはサ イ ト オブジ ェ ク ト に配置 さ れます。 BEL は さ ら に大 き なサ イ ト であ る ス ラ イ ス に も ま と め
ら れ る ので、 セルは BEL お よ びサ イ ト オブジ ェ ク ト に関連付け る こ と がで き る のです。 サ イ ト は ク ロ ッ ク 領域お よ
び タ イ ルに ま と め ら れます。
ま た、 セルはデザ イ ンの タ イ ミ ン グ パ ス に関連付け ら れ る ので、 DRC 違反に も 関連付け る こ と がで き 、 デザ イ ンに
関す る 問題をすばや く 見つけ出 し 解決す る のに役立ち ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
12
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ リ ーフ セル オブジ ェ ク ト には、PRIMITIVE_GROUP、PRIMITIVE_SUBGROUP、PRIMITIVE_TYPE と い う プ ロ パテ ィ
で定義 さ れてい る タ イ プがあ り ます。 た と えば、 ザ イ リ ン ク ス UltraScale™ アーキ テ ク チ ャ デバ イ ス の場合のセルの
さ ま ざ ま な グループ、 下位グループ を次に リ ス ト し ます。
表 1‐1 : UltraScale デバイ スの PRIMITIVE_GROUP および PRIMITIVE_SUBGROUP
PRIMITIVE_GROUP
PRIMITIVE_SUBGROUP
ADVANCED
MAC
GT
INTERLAKEN
PCIE
SYSMON
PROCESSOR
ARITHMETIC
DSP
BLOCKRAM
FIFO
BRAM
CLB
CARRY
LUT
MUXF
SRL
LUTRAM
CLOCK
BUFFER
MUX
PLL
CONFIGURATION
BSCAN
DNA
EFUSE
ECC
ICAP
MASTER_JTAG
STARTUP
I/O
IMPEDANCE
INPUT_BUFFER
WEAK_DRIVER
OUTPUT_BUFFER
BIDIR_BUFFER
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
13
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DELAY
SERDES
DCI_RESET
BITSLICE
REGISTER
SDR
DDR
METASTABILITY
LATCH
すべてのセルに共通のプ ロ パテ ィ セ ッ ト があ る ほか、 セルの各グループ、 サブグループお よ び タ イ プご と に も 独自の
プ ロ パテ ィ があ る 場合 も あ り ます。 PRIMITIVE_GROUP、 PRIMITIVE_SUBGROUP ま たは PRIMITIVE_TYPE プ ロ パ
テ ィ の値で フ ィ ル タ ーす る と 、 特定 タ イ プのセル オブジ ェ ク ト のプ ロ パテ ィ を確認で き ます。
次の Tcl コ ー ド では、 デザ イ ン中の階層が検索 さ れ、 デザ イ ン のすべてのセルの PRIMITIVE_TYPE プ ロ パテ ィ の独
自の発生が戻 さ れます。
foreach x [get_cells -hierarchical *] {
lappend primTypes [get_property PRIMITIVE_TYPE $x] }
join [lsort -unique $primTypes] \n
次 の コ マ ン ド を 使 用 す る と 、 戻 さ れ た PRIMITIVE_TYPE プ ロ パ テ ィ
PRIMITIVE_TYPE のすべてのプ ロ パテ ィ を レ ポー ト で き ます。
($primTypes)
の リ ス ト か ら 特定 の
report_property -all [lindex [get_cells -hier -filter {PRIMITIVE_TYPE == <val>}] 0]
<val> は該当す る PRIMITIVE_TYPE に な り ま す。 た と えば、 BLOCKRAM.BRAM.RAM18E2 タ イ プのセルのプ ロ パ
テ ィ を戻すには、 次を使用 し ます。
report_property -all [lindex [get_cells -hier -filter {PRIMITIVE_TYPE ==
"BLOCKRAM.BRAM.RAMB18E2"}] 0]
ヒ ン ト : report_property コ マ ン ド は、 現在のデザ イ ン で関連オブジ ェ ク ト が見つか ら なか っ た場合、 オブジ ェ ク ト が
見つか ら ない と い う 内容の警告 メ ッ セージ を返す こ と があ り ます。 こ の コ マ ン ド の詳細は、 『Vivado Design Suite Tcl
コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参照 し て く だ さ い。
次の Tcl コ マ ン ド を使用す る と 、 階層セルま たは非 リ ーフ セルか ら プ ロ パテ ィ を戻す こ と も で き ます。
report_property -all [lindex [get_cells -hier -filter {!IS_PRIMITIVE}] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
14
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ネッ ト X-Ref Target - Figure 1-4
1HW
3RUW
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
6LWH3LS
3LS
,2%DQN
7LOH
,2
6WDQGDUG
図 1‐4 : ネ ッ ト オブ ジ ェ ク ト 説明
ネ ッ ト と い う のは、 イ ン タ ー コ ネ ク ト さ れた ピ ン、 ポー ト お よ びワ イ ヤのセ ッ ト を指 し ます。 ど の ワ イ ヤに も ネ ッ ト
名があ り 、その名前で ワ イ ヤ を区別 し ます。2 本以上の ワ イ ヤに同 じ ネ ッ ト 名が付いてい る こ と があ り ます。同 じ ネ ッ
ト 名が付いてい る ワ イ ヤは、 1 つのネ ッ ト に含まれてい る こ と を示 し 、 こ う し た ワ イ ヤに接続 さ れてい る ピ ン ま たは
ポー ト はすべて電気的に接続 さ れてい ます。
RTL ソ ース フ ァ イ ルを 1 つのネ ッ ト リ ス ト デザ イ ンにエ ラ ボ レーシ ョ ン ま たは コ ンパ イ ル し てい る と き 、 ネ ッ ト リ
ス ト デザ イ ンにネ ッ ト オブジ ェ ク ト が追加 さ れ る たびにデフ ォ ル ト ネ ッ ト 名がそのオブジ ェ ク ト に割 り 当て ら れま
す。 手動でネ ッ ト に名前を付け る こ と も で き ます。
ネ ッ ト は 1 つの信号か ら 成 る ス カ ラ ー ネ ッ ト であ っ た り 、 複数の信号か ら 成 る ス カ ラ ー ネ ッ ト のグループであ る バ
ス ネ ッ ト であ る 場合があ り ます。 バ ス を使用す る と 関連信号を便利に ま と め る こ と がで き 、 回路図を簡潔で理解 し や
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
15
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
すい も のにす る こ と がで き ます。 ま た、 主 と な る 回路 と ブ ロ ッ ク シ ン ボル と の接続 も 明確にな り ます。 バ ス は特に次
の場合において便利です。
•
回路図のあ る サ イ ド か ら 、 も う 一方へ と 多数の信号を配線する 場合
•
1 つのブ ロ ッ ク シ ン ボルに複数の信号を接続する 場合
•
1 つの I/O マーカーに接続す る こ と で、 階層レベルを ま た ぐ 複数の信号を接続する 場合
関連オブ ジ ェ ク ト デザ イ ン ネ ッ ト リ ス ト で、 ネ ッ ト を セルの ピ ン ま たはポー ト に接続で き ます。 デザ イ ンが タ ーゲ ッ ト のザ イ リ ン ク ス
FPGA にマ ッ プ さ れ る と 、 ネ ッ ト は、 デバ イ ス の ワ イ ヤ、 ノ ー ド 、 PIP な ど の配線 リ ソ ース にマ ッ プ さ れ、 BEL ピ ン
を介 し て BE:L へ、 サ イ ト ピ ン を介 し てサ イ ト へ と 接続 さ れます。
ま た、 ポー ト を介 し てデザ イ ンに供給 さ れ る ク ロ ッ ク にネ ッ ト は関連付け ら れ、 デザ イ ンの タ イ ミ ン グ パ スへ と 接続
さ れます。
デザ イ ンに関す る 問題をすばや く 見つけ出 し 解決で き る よ う に、 DRC 違反にネ ッ ト を関連付け る こ と も で き ます。
プ ロパテ ィ ネ ッ ト オブジ ェ ク ト の特定のプ ロ パテ ィ は、 そのオブジ ェ ク ト の示すネ ッ ト の タ イ プに よ っ て異な り ます。 次の表に
は、 Vivado Design Suite でネ ッ ト オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ の一部を その値の例 と 共に リ ス ト し てい
ます。
Property
AREA_GROUP
BEL
BLKNM
BUFFER_TYPE
BUFG
BUS_NAME
BUS_START
BUS_STOP
BUS_WIDTH
CLASS
CLOCK_BUFFER_TYPE
CLOCK_DEDICATED_ROUTE
CLOCK_REGION_ASSIGNMENT
CLOCK_ROOT
COLLAPSE
COOL_CLK
DATA_GATE
DCI_VALUE
DIFF_TERM
DONT_TOUCH
DRIVE
DRIVER_COUNT
ESSENTIAL_CLASSIFICATION_VALUE
FILE_NAME
FIXED_ROUTE
FLAT_PIN_COUNT
FLOAT
GATED_CLOCK
HBLKNM
HIERARCHICALNAME
HU_SET
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
Type
string
string
string
enum
enum
string
int
int
int
string
enum
enum
string
string*
bool
bool
bool
int
bool
bool
int
int
int
string
string
int
bool
bool
string
string
string
Read-only
true
true
true
false
true
true
true
true
true
true
false
false
false
false
true
true
true
false
false
false
true
true
false
true
false
true
true
false
true
true
true
japan.xilinx.com
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
true
true
true
true
true
true
true
true
false
false
Value
net
0
1
1
CLK_P
16
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
IBUF_DELAY_VALUE
IBUF_LOW_PWR
IFD_DELAY_VALUE
IN_TERM
IOB
IOBDELAY
IOSTANDARD
IO_BUFFER_TYPE
IS_CONTAIN_ROUTING
IS_REUSED
IS_ROUTE_FIXED
KEEP
KEEPER
LINE_NUMBER
LOC
MARK_DEBUG
MAXDELAY
MAXSKEW
MAX_FANOUT
METHODOLOGY_DRC_VIOS
NAME
NODELAY
NOREDUCE
OUT_TERM
PARENT
PARENT_CELL
PIN_COUNT
PULLDOWN
PULLUP
PWR_MODE
RAM_STYLE
REUSE_STATUS
RLOC
RLOC_ORIGIN
RLOC_RANGE
ROM_STYLE
ROUTE
ROUTE_STATUS
RPM_GRID
RTL_KEEP
RTL_MAX_FANOUT
S
SCHMITT_TRIGGER
SLEW
SUSPEND
TYPE
USELOWSKEWLINES
USE_DSP48
U_SET
WEIGHT
WIREAND
XBLKNM
XLNX_LINE_COL
XLNX_LINE_FILE
double
bool
double
enum
enum
enum
string
enum
bool
bool
bool
bool
bool
int
string
bool
double
double
string
string
string
bool
bool
enum
string
string
int
bool
bool
enum
enum
enum
string
string
string
enum
string
enum
enum
string
string
bool
bool
string
string
enum
bool
enum
string
int
bool
string
int
long
true
false
true
true
false
false
true
false
true
true
false
true
true
true
true
false
true
true
false
false
true
true
true
true
true
true
true
true
true
true
false
true
true
true
true
false
false
true
true
true
true
true
true
true
true
true
true
false
true
false
true
true
false
false
true
true
true
true
true
true
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
false
true
true
true
true
false
false
true
true
true
true
true
true
true
false
true
true
true
false
false
1
LVDS
0
0
0
0
CLK_P
CLK_P
1
INTRASITE
SIGNAL
ネ ッ ト オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル
ま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_nets] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
17
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ピ ン X-Ref Target - Figure 1-5
1HW
3RUW
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
図 1‐5 : ピ ン オブ ジ ェ ク ト 説明
ピ ンはプ リ ミ テ ィ ブ ま たは階層セルの論理的な接続点です。 セルの内容はピ ン を介 し て抽出で き 、 ロ ジ ッ ク は簡単に
使用で き る よ う に簡易化 さ れます。 ま た、 ピ ンは接続を 1 つ含むス カ ラ ー と し て、 ま たは複数の信号を ま と め る バ ス
ピ ン と し て定義す る こ と がで き ます。
関連オブ ジ ェ ク ト
ピ ン はセルに接続 さ れ ま す。 ま た ネ ッ ト に よ り ほかのセルの ピ ン に接続す る こ と がで き ま す。 ま た、 セルの ピ ン は
BEL オブジ ェ ク ト の BEL ピ ンに関連付け ら れ、 セルがマ ッ プ さ れてい る サ イ ト のサ イ ト ピ ンに も 関連付け ら れてい
ます。 ク ロ ッ ク ド メ イ ンの一部 と し て ピ ンは ク ロ ッ ク に関連付け ら れてお り 、 パ ス の起点、 終点、 中間点 と し て定義
さ れてい る 場合は タ イ ミ ン グ パス の一部にな り ます。
ま た、デザ イ ンに関す る 問題をすばや く 見つけ出 し 解決で き る よ う に、DRC 違反に ピ ン を関連付け る こ と も で き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
18
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ
ピ ンのプ ロ パテ ィ には次の も のがあ り ます。
Property
BEL
BUS_DIRECTION
BUS_NAME
BUS_START
BUS_STOP
BUS_WIDTH
CLASS
CLOCK_DEDICATED_ROUTE
DCI_VALUE
DIRECTION
ESSENTIAL_CLASSIFICATION_VALUE
FB_ACTIVE
HD.ASSIGNED_PPLOCS
HD.CLK_SRC
HD.LOC_FIXED
HD.PARTPIN_LOCS
HD.PARTPIN_RANGE
HIERARCHICALNAME
HOLD_DETOUR
HOLD_SLACK
IS_CLEAR
IS_CLOCK
IS_CONNECTED
IS_ENABLE
IS_INVERTED
IS_LEAF
IS_PRESET
IS_RESET
IS_REUSED
IS_SETRESET
LOGIC_VALUE
NAME
PARENT_CELL
REF_NAME
REF_PIN_NAME
SETUP_SLACK
TARGET_SITE_PINS
XLNX_LINE_COL
XLNX_LINE_FILE
Type
string
enum
string
int
int
int
string
enum
int
enum
int
bool
string*
string
bool
string*
string*
string
int
double
bool
bool
bool
bool
bool
bool
bool
bool
bool
bool
string
string
cell
string
string
double
string*
int
long
Read-only
false
true
true
true
true
true
true
false
false
true
false
false
true
false
false
false
false
true
false
true
true
true
true
true
false
true
true
true
true
true
true
true
true
true
true
true
false
false
false
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
true
true
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
false
Value
pin
IN
0
sinegen.DONT_EAT_reg.C
needs timing update***
0
1
1
0
0
1
0
0
0
0
needs timing update***
DONT_EAT_reg/C
DONT_EAT_reg
FDRE
C
needs timing update***
次の コ マ ン ド を使用 し て ピ ンのプ ロ パテ ィ は確認で き ます。
report_property -all [lindex [get_pins] 0 ]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
19
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ポー ト
X-Ref Target - Figure 1-6
1HW
3RUW
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
6LWH3LS
3LS
,2%DQN
7LOH
,2
6WDQGDUG
図 1‐6 : ポー ト オブ ジ ェ ク ト 説明 ポー ト は特殊 タ イ プの階層ピ ン で、 階層デザ イ ン の最上位で外部 と の接続点 と な り 、 ま た階層セルの ピ ン に内部 ロ
ジ ッ ク を接続す る ため、 階層セルやブ ロ ッ ク モジ ュ ールの内部接続点 と な り ます。 ま た、 ポー ト は接続を 1 つ含むス
カ ラ ー と し て、 ま たは複数の信号を ま と め る バ ス ポー ト と し て定義する こ と がで き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
20
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
関連オブ ジ ェ ク ト デザ イ ンの最上位にあ る ポー ト は、 IOSTANDARD が指定 さ れた状態で、 デバ イ ス パ ッ ケージのパ ッ ケージ ピ ン を介
し て、 デバ イ ス の IOBANK を介 し て FPGA 外部へ接続 し ます。
ま た、 ポー ト はシ ス テ ム ま たはボー ド か ら デザ イ ンに ク ロ ッ ク 定義を マ ッ プす る こ と がで き 、 set_input_delay ま たは
set_output_delay 制約を使用 し て タ イ ミ ン グ パ ス に割 り 当て る 必要が あ り ま す。 制約の詳細は、 『Vivado Design Suite
ユーザー ガ イ ド : 制約の使用』 (UG903) を参照 し て く だ さ い。
階層セル内部では、 ポー ト はセルに割 り 当て ら れ、 セル内のネ ッ ト に接続 し ます。
プ ロパテ ィ 次は、 ポー ト オブジ ェ ク ト で検出 さ れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
Type
BOARD_PART_PIN
string
BOARD_PIN
string
BUFFER_TYPE
enum
BUS_DIRECTION
enum
BUS_NAME
string
BUS_START
int
BUS_STOP
int
BUS_WIDTH
int
CLASS
string
CLOCK_BUFFER_TYPE
enum
DIFFTERMTYPE
bool
DIFF_PAIR_PORT
port
DIFF_PAIR_TYPE
enum
DIFF_TERM
bool
DIFF_TERM_ADV
enum
DIRECTION
enum
DQS_BIAS
enum
DRIVE
enum
DRIVE_ADV
enum
DRIVE_STRENGTH
enum
EQUALIZATION
enum
ESSENTIAL_CLASSIFICATION_VALUE int
HD.ASSIGNED_PPLOCS
string*
HD.CLK_SRC
string
HD.LOC_FIXED
bool
HD.PARTPIN_LOCS
string*
HD.PARTPIN_RANGE
string*
HOLD_SLACK
double
IBUF_LOW_PWR
bool
INTERFACE
string
INTERMTYPE
enum
IN_TERM
enum
IOB
enum
IOBANK
int
IOSTANDARD
enum
IOSTD
enum
IO_BUFFER_TYPE
enum
IS_BEL_FIXED
bool
IS_FIXED
bool
IS_GT_TERM
bool
IS_LOC_FIXED
bool
IS_REUSED
bool
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
Read-only Visible Value
false
true
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
port
false
true
false
false
0
true
true
CLK_P
true
true
N
false
true
0
false
true
false
true
IN
false
true
false
true
0
false
false
false
false
0
false
true
false
true
true
true
false
true
false
false
0
false
true
false
true
true
true
needs timing update***
false
true
1
false
true
false
false
NONE
false
true
NONE
false
true
true
true
33
false
true
LVDS
false
false
LVDS
false
true
false
false
1
false
false
1
true
true
0
false
true
1
true
true
21
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
KEEPER
LOAD
LOC
LOGIC_VALUE
LVDS_PRE_EMPHASIS
NAME
ODT
OFFCHIP_TERM
OFFSET_CNTRL
OUTPUT_IMPEDANCE
OUT_TERM
PACKAGE_PIN
PIN_TYPE
PIO_DIRECTION
PRE_EMPHASIS
PULLDOWN
PULLTYPE
PULLUP
SETUP_SLACK
SITE
SLEW
SLEWTYPE
SLEW_ADV
UNCONNECTED
USE_INTERNAL_VREF
VCCAUX_IO
XLNX_LINE_COL
XLNX_LINE_FILE
X_IFC_LOGICAL_NAME
x_interface_info
bool
false
double
false
site
false
string
true
enum
false
string
false
enum
false
string
false
enum
false
enum
false
enum
false
package_pin false
enum
true
enum
false
enum
false
bool
false
string
false
bool
false
double
true
site
false
enum
false
enum
false
enum
false
bool
true
enum
false
enum
false
int
false
long
false
string
true
string
false
false
0
true
true
IOB_X1Y75
true
needs timing update***
true
true
CLK_N
true
true
NONE
true
true
true
true
AD11
false
true
true
false
0
true
false
0
true
needs timing update***
false
IOB_X1Y75
true
false
false
true
0
true
true
false
false
139264
true
CLK
true
次の コ マ ン ド を使用 し てポー ト のプ ロ パテ ィ は確認で き ます。
report_property -all [lindex [get_ports] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
22
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
サイ ト
X-Ref Target - Figure 1-7
3LQ
&ORFN
7LPLQJ
3DWK
1RGH
&HOO
%HO3LQ
&ORFN
5HJLRQ
%HO
:LUH
3DFNDJH
3LQ
6LWH
6LWH3LQ
6LWH3LS
3LS
,2%DQN
7LOH
,2
図 1‐7 : サイ ト オブ ジ ェ ク ト 説明
サ イ ト は、 タ ーゲ ッ ト のザ イ リ ン ク ス FPGA で使用可能な さ ま ざ ま な タ イ プの ロ ジ ッ ク リ ソ ース の 1 つを表すデバ
イ ス オブジ ェ ク ト です。
ル ッ ク ア ッ プテーブル (LUT)、 フ リ ッ プ フ ロ ッ プ、 マルチプ レ ク サ、 キ ャ リ ー ロ ジ ッ ク リ ソ ース な ど の基本エ レ メ
ン ト (BEL) の集合体であ る ス ラ イ ス がサ イ ト に含まれてお り 、 ス ラ イ ス か ら ス ラ イ ス を垂直方向に結ぶ専用キ ャ リ ー
チ ェ ーン を使用 し て、 高速な加算、 減算、 比較演算を イ ン プ リ メ ン ト す る ために使用 さ れ ます。 2 つの ス ラ イ ス が 7
シ リ ーズ FPGA の 1 つの コ ン フ ィ ギ ャ ブル ロ ジ ッ ク ブ ロ ッ ク (CLB) に ま と め ら れますが、 こ れはデバ イ ス の タ イ ル
オブジ ェ ク ト の 1 タ イ プです。
SLICEM は分散 RAM と し て コ ン フ ィ ギ ュ レーシ ョ ン可能です。分散 メ モ リ は一部の LUT の コ ン フ ィ ギ ュ レーシ ョ ン
機能で、 小型の 64 ビ ッ ト メ モ リ と し て動作 し ます。 SLICEL LUT は ロ ジ ッ ク と し てのみ機能 し 、 メ モ リ と し ては機
能 し ません。
サ イ ト には、 ブ ロ ッ ク RAM、 I/O ブ ロ ッ ク 、 ク ロ ッ ク リ ソ ース、 GT ブ ロ ッ ク な ど さ ま ざ ま なオブジ ェ ク ト も 含まれ
てい ます。
Vivado 合成を 使用 し て HDL ソ ー ス か ら 推論 し た り 、 FPGA ラ イ ブ ラ リ か ら プ リ ミ テ ィ ブやマ ク ロ を イ ン ス タ ン シ
エー ト し た り 、 Vivado IP カ タ ロ グか ら IP コ ア を使用 し て、 ス ラ イ ス リ ソ ース を利用す る こ と がで き ます。 『 ラ イ ブ
ラ リ ガ イ ド 』 には、 イ ン ス タ ン シエー ト 可能なプ リ ミ テ ィ ブの リ ス ト があ り ます。
使用可能な SITE タ イ プは、 使用 さ れ る ザ イ リ ン ク ス FPGA に よ っ て変わ り ます。 使用可能な SITE タ イ プには、 次が
含まれます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
23
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
AMS_ADC AMS_DAC
BSCAN BSCAN_JTAG_MONE2
BUFG BUFGCTRL BUFG_LB BUFHCE
BUFIO BUFMRCE BUFR
CAPTURE
DCIRESET DNA_PORT
DRP_AMS_ADC DRP_AMS_DAC
DSP48E1
EFUSE_USR
FIFO18E1 FIFO36E1
FRAME_ECC
GLOBALSIG
GTHE2_CHANNEL GTHE2_COMMON
GTPE2_CHANNEL GTPE2_COMMON
GTXE2_CHANNEL GTXE2_COMMON
GTZE2_OCTAL
IBUFDS_GTE2
ICAP
IDELAYCTRL IDELAYE2 IDELAYE2_FINEDELAY
ILOGICE2 ILOGICE3
IN_FIFO
IOB IOB18 IOB18M IOB18S
IOB33 IOB33M IOB33S
IOBM IOBS
IPAD ISERDESE2
KEY_CLEAR
MMCME2_ADV
ODELAYE2 ODELAYE2_FINEDELAY
OLOGICE2 OLOGICE3
OPAD
OSERDESE2
OUT_FIFO
PCIE_2_1 PCIE_3_0
PHASER_IN PHASER_IN_ADV PHASER_IN_PHY
PHASER_OUT PHASER_OUT_ADV PHASER_OUT_PHY
PHASER_REF
PHY_CONTROL
PLLE2_ADV
PMV2
RAMB18E1
RAMB36E1
RAMBFIFO36E1
SLICEL SLICEM
STARTUP
TIEOFF
USR_ACCESS
XADC
関連オブ ジ ェ ク ト
23 ページの図 1-7にあ る よ う に、サ イ ト は さ ま ざ ま なネ ッ ト リ ス ト お よ びデバ イ ス オブジ ェ ク ト に関連付け ら れてい
ます。 リ ーフ セルの フ リ ッ プ フ ロ ッ プお よ び ラ ッ チは、 ス ラ イ ス な ど のサ イ ト にマ ッ プ さ れてい る BEL にマ ッ プ さ
れてい る か、 BRAM や DSP な ど のサ イ ト に直接マ ッ プ さ れてい ます。 BEL お よ びサ イ ト は タ イ ルに ま と め ら れ、 デ
バ イ ス の ク ロ ッ ク 領域に割 り 当て ら れます。
ポー ト 、 ピ ン、 I/O バン ク 、 パ ッ ケージ ピ ンは I/O ブ ロ ッ ク (IOB) に関連 し てい ますが、 こ の IOB も サ イ ト です。 さ
ら に、 サ イ ト にはピ ン ま たはサ イ ト ピ ンがあ り 、 こ れ ら は ノ ー ド 、 ピ ン、 ネ ッ ト にマ ッ プ さ れます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
24
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ
ザ イ リ ン ク ス FPGA には 80 種類を越え る サ イ ト があ り ますが、 すべて次のプ ロ パテ ィ を共有 し てい ます。 値の例 も
示 し ます。
Property
ALTERNATE_SITE_TYPES
CLASS
CLOCK_REGION
IS_BONDED
IS_CLOCK_BUFFER
IS_CLOCK_PAD
IS_GLOBAL_CLOCK_BUFFER
IS_GLOBAL_CLOCK_PAD
IS_PAD
IS_REGIONAL_CLOCK_BUFFER
IS_REGIONAL_CLOCK_PAD
IS_RESERVED
IS_TEST
IS_USED
MANUAL_ROUTING
NAME
NUM_ARCS
NUM_BELS
NUM_INPUTS
NUM_OUTPUTS
NUM_PINS
PRIMITIVE_COUNT
PROHIBIT
PROHIBIT_FROM_PERSIST
RPM_X
RPM_Y
SITE_PIPS
SITE_TYPE
Type
string
string
string
bool
bool
bool
bool
bool
bool
bool
bool
bool
bool
bool
string
string
int
int
int
int
int
int
bool
bool
int
int
string
enum
Read-only
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
true
true
true
true
true
true
true
false
true
true
true
false
true
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
IOB33S IOB33M
site
X0Y6
1
0
0
0
0
1
0
0
0
0
0
IOB_X0Y349
9
7
12
5
17
0
0
0
1
698
IOB33
サ イ ト オブジ ェ ク ト に割 り 当て ら れてい る プ ロ パテ ィ はど のサ イ ト タ イ プで も 同 じ です。24 ページの表 に リ ス ト さ
れてい る サ イ ト タ イ プのプ ロ パテ ィ を確認する には、 report_property コ マ ン ド を使用 し ます。
report_property -all [lindex [get_sites -filter {SITE_TYPE == <SITE_TYPE>}] 0]
<SITE_TYPE> には リ ス ト さ れてい る サ イ ト タ イ プの 1 つが入 り ます。 次は、 その例です。
report_property -all [lindex [get_sites -filter {SITE_TYPE == DSP48E1}] 0]
report_property -all [lindex [get_sites -filter {SITE_TYPE == RAMB36E1}] 0]
report_property -all [lindex [get_sites -filter {SITE_TYPE == IBUFDS_GTE2}] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
25
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ブ ロ ッ ク デザイ ン オブ ジ ェ ク ト
ブ ロ ッ ク デザ イ ンは、 イ ン タ ーコ ネ ク ト さ れた IP コ アか ら 成 り 立つ複雑なサブシ ス テ ム デザ イ ンで、 ス タ ン ド ア ロ
ン デザ イ ン と し て使用で き る ほか、 その他のデザ イ ン に統合す る こ と も で き ます。 ブ ロ ッ ク デザ イ ン ま たはダ イ ア
グ ラ ム は、 Vivado Design Suite の IP イ ン テ グ レ ー タ ー機能を使用 し て作成で き ま す。 こ れ ら は、 Vivado Design Suite
IDE の IP イ ン テ グ レー タ ーのキ ャ ンバ ス、 ま たは Tcl コ マ ン ド を使用 し て イ ン タ ラ ク テ ィ ブに作成で き ます。
ブ ロ ッ ク デザ イ ン ダ イ ア グ ラ ム オブジ ェ ク ト は、 前に説明 し たネ ッ ト リ ス ト オブジ ェ ク ト に構造的にかな り 類似 し
てい ます。 図 1-8 は、 ブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ム を構成す る 異な る デザ イ ン オブジ ェ ク ト 間の関係を示
し てい ます。
X-Ref Target - Figure 1-8
EGBSLQ
GLDJUDP
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
EGBLQWIBSLQ
EGBFHOO
EGBDGGUBVSDFH
EGBDGGUBVHJ
図 1‐8 : ブ ロ ッ ク デザイ ン オブ ジ ェ ク ト 次の図に示す よ う に、 ブ ロ ッ ク ダ イ ア グ ラ ム オブジ ェ ク ト には次が含まれます。
「DIAGRAM」
「BD_ADDR_SEG」
「BD_ADDR_SPACE」
「BD_CELL」
「BD_INTF_NET」
「BD_INTF_PIN」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
26
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
「BD_INTF_PORT」
「BD_NET」
「BD_PIN」
「BD_PORT」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
27
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DIAGRAM
説明
ブ ロ ッ ク デザ イ ン (.bd) は、 Vivado Design Suite の IP イ ン テ グ レー タ ー機能で作成 さ れた イ ン タ ー コ ネ ク ト さ れた IP
コ アの複雑なシ ス テ ムです。 Vivado IP イ ン テ グ レー タ ー機能を使用する と 、 Vivado IP カ タ ロ グか ら の IP を イ ン ス タ
ン シエー ト お よ び イ ン タ ー コ ネ ク ト し て、 複雑なデザ イ ン を作成で き ます。 ブ ロ ッ ク デザ イ ンは、 デ ィ ス ク 上の フ ァ
イ ル (.bd) に書 き 込む こ と ので き る 階層デザ イ ン ですが、 Vivado ツール メ モ リ 内で diagram オブジ ェ ク ト と し て格納
さ れます。
ブ ロ ッ ク デザ イ ンは、 通常 イ ン タ ーフ ェ イ ス レベルで構築 さ れて生産性が増す よ う にな っ てい ますが、 ポー ト ま た
はピ ン レベルで編集す る こ と で よ り 詳細に制御す る こ と も で き ます。 Vivado プ ロ ジ ェ ク ト には さ ま ざ ま なデザ イ ン
階層レベルで複数のダ イ ア グ ラ ムが含まれ る こ と があ る ほか、 最上位デザ イ ン と し て 1 つのダ イ ア グ ラ ムだけ を含む
こ と も あ り ます。
関連オブ ジ ェ ク ト
26 ページの図 1-8 に示す よ う に、 diagram オブジ ェ ク ト には bd_cells、 bd_nets、 お よ び bd_ports な ど、 その他の IP イ
ン テ グ レー タ ー ブ ロ ッ ク デザ イ ン (bd) オブジ ェ ク ト が含まれます。 こ れ ら のオブジ ェ ク ト 間の関係は、 セル、 ピ ン、
ネ ッ ト な ど の標準的な ネ ッ ト リ ス ト オブジ ェ ク ト 間の関係 と 類似 し てい ま す。 ユーザーは、 指定 し た ダ イ ア グ ラ ム
オブジ ェ ク ト か ら セル、 ア ド レ ス空間、 ア ド レ ス セグ メ ン ト 、 ネ ッ ト 、 ピ ン、 ポー ト 、 イ ン タ ーフ ェ イ ス ネ ッ ト 、 イ
ン タ ーフ ェ イ ス ピ ンお よ び イ ン タ ーフ ェ イ ス ポー ト な ど のブ ロ ッ ク デザ イ ンの各オブジ ェ ク ト を取得で き ます。
た と えば、 ブ ロ ッ ク デザ イ ンのネ ッ ト を取得する には、 次の Tcl コ マ ン ド を使用 し ます。
get_bd_nets -of_objects [current_bd_design]
プ ロパテ ィ
次の表には、 Vivado Design Suite でダ イ ア グ ラ ム オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を その値の例 と 共に リ ス
ト し てい ます。
Property
CLASS
COLOR
FILE_NAME
NAME
USE_IP_SHARED_DIR
Type
string
string
string
string
bool
Read-only
true
false
true
true
false
Visible
true
true
true
true
true
Value
diagram
design_1.bd
design_1
1
ダ イ ア グ ラ ム オブジ ェ ク ト のプ ロ パテ ィ は、 次の コ マ ン ド を使用 し て確認で き ます。
report_property -all [get_bd_designs]
ま たは、 Vivado Design Suite に複数のブ ロ ッ ク デザ イ ンがあ る 場合は、 次を使用 し ます。
report_property -all [lindex [get_bd_designs] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
28
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BD_ADDR_SEG
説明
ブ ロ ッ ク デザ イ ン ア ド レ ス セグ メ ン ト (bd_addr_seg オブジ ェ ク ト ) は、 それの含まれ る ブ ロ ッ ク デザ イ ンのア ド レ
ス空間にエ リ アの ロ ケーシ ョ ンお よ びサ イ ズ を示 し ます。 ア ド レ ス セグ メ ン ト は、 指定 し たア ド レ ス オ フ セ ッ ト で
開始 さ れ、 該当す る 範囲で続行 さ れ る ア ド レ ス空間の一部を示 し てい ます。
さ ま ざ ま な メ モ リ マ ッ プ さ れたマ ス タ ーお よ びス レーブ イ ン タ ーフ ェ イ ス の場合、 IP イ ン テ グ レー タ ーは業界標準
の IP-XACT デー タ フ ォ ーマ ッ ト に従っ て、 エ ン ド ポ イ ン ト のマ ス タ ーお よ び ス レ ーブの メ モ リ 要件お よ び機能を
キ ャ プチ ャ し ます。 ス レーブ イ ン タ ーフ ェ イ ス には、 ス レーブ を それに関連す る マ ス タ ーのア ド レ ス空間にマ ッ プす
る ために、 メ モ リ マ ッ プ と い う address_space コ ン テナーが含まれます。 こ れ ら の メ モ リ マ ッ プには、た と えば S_AXI
の よ う に、 通常ス レーブ イ ン タ ーフ ェ イ ス ピ ンに従っ て名前がつけ ら れます (必須ではあ り ません)。
各ス レーブ イ ン タ ーフ ェ イ ス ピ ンの メ モ リ マ ッ プには、 ア ド レ ス セグ メ ン ト (bd_addr_seg オブジ ェ ク ト ) が含まれ
ます。 ア ド レ ス セグ メ ン ト は、 create_bd_addr_seg コ マ ン ド を使用 し て ア ド レ ス空間に割 り 当て る こ と がで き ます。 こ
れ ら のア ド レ ス セグ メ ン ト は、AXI ス レーブのア ド レ ス デコ ー ド ウ ィ ン ド ウ に該当 し ます。た と えば、通常 AXI4-Lite
ス レーブにはア ド レ ス範囲を示すア ド レ ス セグ メ ン ト が 1 つだけ含まれますが、 ブ リ ッ ジの よ う に、 ス レーブの中に
は複数のア ド レ ス セグ メ ン ト が含まれた り 、 各ア ド レ ス デ コ ー ド ウ ィ ン ド ウ のア ド レ ス範囲が含まれ る も のがあ り
ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-9
EGBLQWIBQHW
EGBLQWIBSLQ
BFHOO
EGBDGGUBVSDFH
EGBDGGUBVHJ
図 1‐9 : ブ ロ ッ ク デザイ ンのア ド レ ス空間およびア ド レ ス セグ メ ン ト
ブ ロ ッ ク デザ イ ンのア ド レ ス セグ メ ン ト オブジ ェ ク ト の bd_addr_seg は、 ブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ム で
見つか っ た AXI マ ス タ ー ブ ロ ッ ク デザ イ ン セルのア ド レ ス空間に関連付け ら れます。 ア ド レ ス空間は、 セル上の イ
ン タ ーフ ェ イ ス ピ ン (bd_intf_pin) に、 外部 AXI マ ス タ ーの場合は イ ン タ ーフ ェ イ ス ポー ト (bd_intf_port) に関連付け
ら れます。 ア ド レ ス空間は、 マ ッ プ さ れた ス レーブ イ ン タ ーフ ェ イ ス の メ モ リ 空間であ る bd_addr_segs にセグ メ ン ト
分け さ れます。 こ れ ら の関連オブジ ェ ク ト の bd_addr_space オブジ ェ ク ト は取得で き ます。
get_bd_addr_segs -of_objects [get_bd_addr_spaces /mdm_1/S_AXI]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
29
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
次を使用す る と 、 ブ ロ ッ ク デザ イ ンのア ド レ ス セグ メ ン ト に関連す る オブジ ェ ク ト を取得す る こ と も で き ます。
get_bd_intf_pin -of [get_bd_addr_segs /microblaze*]
プ ロパテ ィ
次に、 ブ ロ ッ ク デザ イ ンのア ド レ ス セグ メ ン ト オブジ ェ ク ト (bd_addr_seg) のプ ロ パテ ィ と 値の例を示 し ます。
Property
ACCESS
CLASS
NAME
OFFSET
PATH
RANGE
USAGE
Type
string
string
string
string
string
string
string
Read-only
true
true
false
false
true
false
true
Visible
true
true
true
true
true
true
true
Value
read-write
bd_addr_seg
Reg
65536
register
bd_addr_seg オブ ジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピ ー し て Vivado Design Suite の Tcl
シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_addr_segs ] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
30
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BD_ADDR_SPACE 説明
ア ド レ ス空間 (bd_addr_space オブジ ェ ク ト ) は、 マ ス タ ー イ ン タ ーフ ェ イ ス、 ま たはブ ロ ッ ク デザ イ ン外部の AXI マ
ス タ ーへ接続 さ れた AXI イ ン タ ーフ ェ イ ス ポー ト 、 ま たはダ イ ア グ ラ ム で論理的にア ド レ ス指定可能な メ モ リ 空間
です。
Vivado Design Suite の IP イ ン テ グ レー タ ーは、 業界標準の IP-XACT デー タ フ ォーマ ッ ト に従っ て、 メ モ リ 要件お よ
び機能を キ ャ プチ ャ し ます。ブ ロ ッ ク の中には複数のマ ス タ ー イ ン タ ーフ ェ イ ス に関連す る ア ド レ ス空間が 1 つ含ま
れ る も のがあ り ま す。 た と えば、 シ ス テ ム バ ス お よ び高速 メ モ リ バ ス の付いたプ ロ セ ッ サな ど です。 その他の コ ン
ポーネ ン ト には、 複数のマ ス タ ー イ ン タ ーフ ェ イ ス (命令用 1 つ、 デー タ 用 1 つ) に関連す る ア ド レ ス空間が複数含
まれ る も のがあ り ます。
マ ス タ ー イ ン タ ーフ ェ イ ス には、 ア ド レ ス空間 (bd_addr_space オブジ ェ ク ト ) が含まれます。 ス レーブがマ ス タ ー ア
ド レ ス空間にマ ッ プ さ れ る 場合、 ア ド レ ス セグ メ ン ト オブジ ェ ク ト (bd_addr_seg) が作成 さ れ、 ス レーブのア ド レ ス
セグ メ ン ト がマ ス タ ーへマ ッ プ さ れます。
関連オブ ジ ェ ク ト
29 ページの図 1-9 に示す よ う に、 ブ ロ ッ ク デザ イ ンのア ド レ ス空間セグ メ ン ト (bd_addr_seg) は、 ブ ロ ッ ク デザ イ ン
ま たはダ イ ア グ ラ ム で見つか っ た AXI マ ス タ ー イ ン タ ーフ ェ イ ス のア ド レ ス空間に関連付け ら れます。 ア ド レ ス空
間 は、 セ ル上 の イ ン タ ー フ ェ イ ス ピ ン (bd_intf_pin) に、 外部 AXI マ ス タ ー の 場合は イ ン タ ー フ ェ イ ス ポ ー ト
(bd_intf_port) に関連付け ら れ ま す。 ア ド レ ス空間は、 マ ッ プ さ れた ス レーブ イ ン タ ーフ ェ イ ス の メ モ リ 空間で あ る
bd_addr_segs にセグ メ ン ト 分け さ れます。 こ れ ら の関連オブジ ェ ク ト の bd_addr_space オブジ ェ ク ト は、 次を使用す る
と 取得で き ます。
get_bd_addr_spaces -of_objects [get_bd_cells /microblaze_0]
次を使用す る と 、 ブ ロ ッ ク デザ イ ンのア ド レ ス空間に関連する オブジ ェ ク ト を取得する こ と も で き ます。
get_bd_intf_pins -of_objects [get_bd_addr_spaces *SLMB]
プ ロパテ ィ 次に、 ブ ロ ッ ク デザ イ ンのア ド レ ス空間オブジ ェ ク ト (bd_addr_space) のプ ロ パテ ィ と 値の例を示 し ます。
Property Type
Read-only Visible Value
CLASS
string true
true
bd_addr_space
NAME
string false
true
S_AXI_CTRL
OFFSET
string false
true
PATH
string true
true
/microblaze_0_local_memory/dlmb_bram_if_cntlr/S_AXI_CTRL
RANGE
string false
true
4096
TYPE
string false
true
bd_addr_space オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl
シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_addr_spaces] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
31
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BD_CELL 説明
ブ ロ ッ ク デザ イ ン セル (bd_cell オブジ ェ ク ト ) は、 IP イ ン テ グ レー タ ーの IP コ ア オブジ ェ ク ト の イ ン ス タ ン ス、 ま
たは階層ブ ロ ッ ク デザ イ ン セルです。 リ ーフ セルは、 IP カ タ ロ グか ら の コ アです。 階層セルはモジ ュ ールま たはブ
ロ ッ ク で、 1 つ以上の レベルの ロ ジ ッ ク を含み、 リ ーフ セル も 含みます。
bd_cell オブジ ェ ク ト の TYPE プ ロ パテ ィ では、ブ ロ ッ ク デザ イ ン セルが IP カ タ ロ グか ら の リ ーフ セル と し て (TYPE
== IP)、 ま たは追加 ロ ジ ッ ク を含む階層モジ ュ ール と し て (TYPE == HIER) 識別 さ れます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-10
EGBSLQ
GLDJUDP
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
EGBLQWIBSLQ
EGBFHOO
EGBDGGUBVSDFH
図 1‐10 : ブ ロ ッ ク デザイ ン セル 図 1-10 に示す よ う に、 ブ ロ ッ ク デザ イ ン セル (bd_cell) はブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ム オブジ ェ ク ト に含
まれます。 セルには、 ブ ロ ッ ク デザ イ ン ピ ン (bd_pin) と イ ン タ ーフ ェ イ ス ピ ン (bd_intf_pin) が含まれます。 階層的に
はブ ロ ッ ク デザ イ ン ポー ト (bd_port) お よ び イ ン タ ーフ ェ イ ス ポー ト (bd_intf_port) を含め る こ と がで き ます。こ れ ら
は、 ネ ッ ト (bd_net) お よ び イ ン タ ーフ ェ イ ス ネ ッ ト (bd_intf_net) に よ り 接続 さ れます。 メ モ リ 関連のブ ロ ッ ク デザ イ
ン セルには、ア ド レ ス空間 (bd_addr_space) と ア ド レ ス セグ メ ン ト (bd_addr_seg) も 含め る こ と がで き ます。た と えば、
次を使用す る と 、 こ れ ら のオブジ ェ ク ト に関連す る ブ ロ ッ ク デザ イ ン セルを取得で き ます。
get_bd_cells -of_objects [get_bd_addr_spaces]
次を使用す る と 、 ブ ロ ッ ク デザ イ ン セルに関連す る オブジ ェ ク ト を取得で き ます。
get_bd_addr_spaces -of_objects [get_bd_cells]
ま た、 次を使用す る と 、 別のブ ロ ッ ク デザ イ ン セルの階層的オブジ ェ ク ト であ る ブ ロ ッ ク デザ イ ン セルを取得す る
こ と も で き ます。
get_bd_cells -of_objects [get_bd_cells microblaze_0_axi_periph]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
32
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ
ブ ロ ッ ク デザ イ ン セル オブジ ェ ク ト の特定のプ ロ パテ ィ は、 そのオブジ ェ ク ト の示すネ ッ ト の タ イ プに よ っ て異な
り ます。 次の表には、 Vivado Design Suite で bd_cell オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ の一部を その値の例 と
共に リ ス ト し てい ます。
Property
CLASS
CONFIG.C_BRK
CONFIG.C_DATA_SIZE
CONFIG.C_DBG_MEM_ACCESS
CONFIG.C_DBG_REG_ACCESS
CONFIG.C_INTERCONNECT
CONFIG.C_JTAG_CHAIN
CONFIG.C_MB_DBG_PORTS
CONFIG.C_M_AXI_ADDR_WIDTH
CONFIG.C_M_AXI_DATA_WIDTH
CONFIG.C_M_AXI_THREAD_ID_WIDTH
CONFIG.C_S_AXI_ACLK_FREQ_HZ
CONFIG.C_S_AXI_ADDR_WIDTH
CONFIG.C_S_AXI_DATA_WIDTH
CONFIG.C_TRIG_IN_PORTS
CONFIG.C_TRIG_OUT_PORTS
CONFIG.C_USE_BSCAN
CONFIG.C_USE_CONFIG_RESET
CONFIG.C_USE_CROSS_TRIGGER
CONFIG.C_USE_UART
CONFIG.C_XMTC
CONFIG.Component_Name
LOCATION
NAME
PATH
SCREENSIZE
TYPE
VLNV
Type
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
Read-only
true
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
false
true
true
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
bd_cell
0
32
0
0
2
2
1
32
32
1
100000000
32
32
1
1
0
0
0
1
0
design_1_mdm_0_0
4 1524 450
mdm_0
/mdm_0
220 100
ip
xilinx.com:ip:mdm:3.1
bd_cell オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル
ま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_cells] 0]
BD_INTF_NET 説明
イ ン タ ーフ ェ イ ス と は共通の フ ァ ン ク シ ョ ン を共有す る 信号を グループ化 し た も ので、 個別信号 と 複数バ ス の両方が
含まれす。 た と えば、 AXI4-Lite マ ス タ ーには多 く の信号 と 複数のバ ス が含まれ、 こ れ ら はすべて接続に必要です。 こ
れ ら の信号お よ びバ ス を イ ン タ ーフ ェ イ ス にグループ化す る と 、Vivado IP イ ン テ グ レー タ ーで共通の イ ン タ ーフ ェ イ
ス が識別で き る よ う にな り 、 自動的に 1 つの手順で自動的に複数の接続が実行 さ れます。
イ ン タ ーフ ェ イ ス は、 IP-XACT 規格を使用 し て定義 さ れます。 ザ イ リ ン ク ス に よ る 標準 イ ン タ ーフ ェ イ ス は、 Vivado
イ ン ス ト ール デ ィ レ ク ト リ の data/ip/interfaces に含まれます。 イ ン タ ーフ ェ イ ス ネ ッ ト 、 ピ ンお よ びポー ト の詳細は、
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
33
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テ グ レー タ ーを使用 し た IP サブシ ス テ ムの設計』 (UG994) を参照 し て く
だ さ い。
ブ ロ ッ ク デザ イ ンの イ ン タ ーフ ェ イ ス ネ ッ ト (bd_intf_net オブジ ェ ク ト ) は、 ブ ロ ッ ク デザ イ ン セルの イ ン タ ーフ ェ
イ ス ピ ン を ほかの イ ン タ ーフ ェ イ ス ピ ン ま たは外部 イ ン タ ーフ ェ イ ス ポー ト に接続 し ます。 bd_intf_net オブジ ェ ク
ト は、複数レベルのデザ イ ン階層を介 し て接続 さ れ、 ブ ロ ッ ク デザ イ ン セルが接続 さ れます。すべての イ ン タ ーフ ェ
イ ス ネ ッ ト には、 デザ イ ン で識別で き る よ う な名前が付 き ます。 こ れ ら のネ ッ ト へ接続 さ れ る すべてのブ ロ ッ ク デ
ザ イ ン セル、 イ ン タ ーフ ェ イ ス ピ ン、 お よ び イ ン タ ーフ ェ イ ス ポー ト は電気的に接続 さ れてい ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-11
EGBSLQ
GLDJUDP
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
EGBLQWIBSLQ
EGBFHOO
EGBDGGUBVSDFH
図 1‐11 : ブ ロ ッ ク デザイ ン イ ン タ ー フ ェ イ ス ネ ッ ト
34 ページの図 1-11 に示す よ う に、 ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ネ ッ ト (bd_intf_net オブジ ェ ク ト ) はブ ロ ッ
ク デザ イ ン ま たはダ イ ア グ ラ ムで発生 し 、 イ ン タ ーフ ェ イ ス ポー ト (bd_intf_port) に接続 さ れ、 イ ン タ ーフ ェ イ ス ピ
ン (bd_intf_pin) を 介 し て ダ イ ア グ ラ ム の ブ ロ ッ ク デ ザ イ ン セ ル (bd_cell) に 接続 さ れ ま す。 ダ イ ア グ ラ ム の
bd_intf_nets、 bd_cell、 bd_intf_pin、 お よ び bd_intf_port オブジ ェ ク ト は次の よ う に取得で き ます。
get_bd_intf_nets -of_objects [get_bd_ports]
ま た、 特定の bd_intf_net に接続 さ れ る ブ ロ ッ ク デザ イ ン セル (bd_cell)、 bd_intf_pins、 ま たは bd_intf_port オブジ ェ ク
ト は次の よ う に取得で き ます。
get_bd_cells -of_objects [get_bd_intf_nets /INTERRUPT_1_1]
プ ロパテ ィ
bd_intf_net オブジ ェ ク ト のプ ロ パテ ィ には、 次が含まれます。
Property Type
Read-only Visible Value
CLASS
string true
true
bd_intf_net
NAME
string false
true
microblaze_0_axi_periph_to_s00_couplers
PATH
string true
true
/microblaze_0_axi_periph/microblaze_0_axi_periph_to_s00_couplers
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
34
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
bd_intf_net オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_intf_nets] 0]
BD_INTF_PIN
説明
イ ン タ ーフ ェ イ ス と は共通の フ ァ ン ク シ ョ ン を共有す る 信号を グループ化 し た も ので、 個別信号 と 複数バ ス の両方が
含まれす。 た と えば、 AXI4-Lite マ ス タ ーには多 く の信号 と 複数のバ ス が含まれ、 こ れ ら はすべて接続に必要です。 こ
れ ら の信号お よ びバ ス を イ ン タ ーフ ェ イ ス にグループ化す る と 、Vivado IP イ ン テ グ レー タ ーで共通の イ ン タ ーフ ェ イ
ス が識別で き る よ う にな り 、 自動的に 1 つの手順で自動的に複数の接続が実行 さ れます。
イ ン タ ーフ ェ イ ス は、 IP-XACT 規格を使用 し て定義 さ れます。 ザ イ リ ン ク ス に よ る 標準 イ ン タ ーフ ェ イ ス は、 Vivado
イ ン ス ト ール デ ィ レ ク ト リ の data/ip/interfaces に含まれます。 イ ン タ ーフ ェ イ ス ネ ッ ト 、 ピ ンお よ びポー ト の詳細は、
『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テ グ レー タ ーを使用 し た IP サブシ ス テ ムの設計』 (UG994) を参照 し て く
だ さ い。
ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ピ ン (bd_intf_pin オブジ ェ ク ト ) は、 ブ ロ ッ ク デザ イ ン セルの論理的接続ポ イ
ン ト です。 イ ン タ ーフ ェ イ ス ピ ン では、 セルの内部は取 り 除いて、 使用 し やすい よ う に簡素化 さ れ ま す。 イ ン タ ー
フ ェ イ ス ピ ンは、 階層ブ ロ ッ ク デザ イ ン セルま たは リ ーフ レベル セルに使用 さ れます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-12
EGBQHW
EGBLQWIBQHW
EGBLQWIBSLQ
EGBFHOO
EGBDGGUBVSDFH
EGBDGGUBVHJ
図 1‐12 : ブ ロ ッ ク デザイ ン イ ン タ ー フ ェ イ ス ピ ン
ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ピ ンは、 ブ ロ ッ ク デザ イ ン セル (bd_cell) に接続 さ れ、 ブ ロ ッ ク デザ イ ン ま た
は ダ イ ア グ ラ ム の イ ン タ ー フ ェ イ ス ネ ッ ト (bd_intf_net) を 使用す る こ と で、 そ の 他 の イ ン タ ー フ ェ イ ス ピ ン
(bd_intf_pin) ま たは イ ン タ ーフ ェ イ ス ポー ト (bd_intf_port) に接続で き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
35
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
bd_addr_space、 bd_addr_seg、 bd_cell、 お よ び bd_intf_net オブジ ェ ク ト の bd_intf_pins は、 次の よ う に取得で き ます。
get_bd_intf_pins -of_objects [get_bd_cells clk_wiz_1]
ま た、 次を使用す る と 、 特定の bd_intf ピ ンの bd_addr_spaces、 bd_addr_segs, bd_cells、 お よ び bd_intf_nets を取得す る
こ と も で き ます。
get_bd_addr_spaces -of_objects [get_bd_intf_pins microblaze_0/*]
プ ロパテ ィ ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ピ ン オブジ ェ ク ト の特定のプ ロ パテ ィ は、 その ピ ンの タ イ プに よ っ て変わ る こ
と があ り ます。 次の表には、 マ ス タ ー AXI イ ン タ ーフ ェ イ ス の ピ ン オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ の一
部を その値の例 と 共に リ ス ト し てい ます。
Property
Type
BRIDGES
string
CLASS
string
CONFIG.ADDR_WIDTH
string
CONFIG.ARUSER_WIDTH
string
CONFIG.AWUSER_WIDTH
string
CONFIG.BUSER_WIDTH
string
CONFIG.CLK_DOMAIN
string
CONFIG.DATA_WIDTH
string
CONFIG.FREQ_HZ
string
CONFIG.ID_WIDTH
string
CONFIG.MAX_BURST_LENGTH
string
CONFIG.NUM_READ_OUTSTANDING
string
CONFIG.NUM_WRITE_OUTSTANDING string
CONFIG.PHASE
string
CONFIG.PROTOCOL
string
CONFIG.READ_WRITE_MODE
string
CONFIG.RUSER_WIDTH
string
CONFIG.SUPPORTS_NARROW_BURST string
CONFIG.WUSER_WIDTH
string
LOCATION
string
MODE
string
NAME
string
PATH
string
TYPE
string
VLNV
string
xilinx.com:interface:aximm_rtl:1.0
Read-only
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
true
false
true
true
true
Visible
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
bd_intf_pin
32
0
0
0
32
100000000
0
1
1
1
0.000
AXI4LITE
READ_WRITE
0
0
0
Master
M_AXI_DP
/microblaze_0/M_AXI_DP
ip
bd_intf_pin オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト する には、次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_intf_pins */*] 0]
ま たは、 次の Tcl ス ク リ プ ト を使用す る と 、 各ブ ロ ッ ク デザ イ ン セルの bd_intf_pin オブジ ェ ク ト それぞれのプ ロ パ
テ ィ が レ ポー ト さ れます。
foreach x [get_bd_intf_pins -of_objects [get_bd_cells]] {
puts "Next Interface Pin starts here
..............................................."
report_property -all $x
}
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
36
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BD_INTF_PORT
説明 イ ン タ ーフ ェ イ ス と は共通の フ ァ ン ク シ ョ ン を共有す る 信号を グループ化 し た も ので、 個別信号 と 複数バ ス の両方が
含まれす。 た と えば、 AXI4-Lite マ ス タ ーには多 く の信号 と 複数のバ ス が含まれ、 こ れ ら はすべて接続に必要です。 こ
れ ら の信号お よ びバ ス を イ ン タ ーフ ェ イ ス にグループ化す る と 、Vivado IP イ ン テ グ レー タ ーで共通の イ ン タ ーフ ェ イ
ス が識別で き る よ う にな り 、 自動的に 1 つの手順で自動的に複数の接続が実行 さ れます。
イ ン タ ーフ ェ イ ス は、 IP-XACT 規格を使用 し て定義 さ れます。 ザ イ リ ン ク ス に よ る 標準 イ ン タ ーフ ェ イ ス は、 Vivado
イ ン ス ト ール デ ィ レ ク ト リ の data/ip/interfaces に含まれます。 イ ン タ ーフ ェ イ ス ネ ッ ト 、 ピ ンお よ びポー ト の詳細は、
『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テ グ レー タ ーを使用 し た IP サブシ ス テ ムの設計』 (UG994) を参照 し て く
だ さ い。
ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ポー ト は、特別な タ イ プの階層ピ ン (ブ ロ ッ ク ダ イ ア グ ラ ムの最上位の ピ ン) で
す。 ブ ロ ッ ク デザ イ ンでは、 ポー ト お よ び イ ン タ ーフ ェ イ ス が FPGA デザ イ ン全体ま たはシ ス テ ム レベル デザ イ ン
内外のブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ム と 外部接続 と の通信に使用 さ れ る 主なポー ト にな り ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-13
EGBSLQ
GLDJUDP
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
EGBLQWIBS
EGBFHOO
EGBDGGUBVSDFH
図 1‐13 : ブ ロ ッ ク デザイ ン イ ン タ ー フ ェ イ ス ポー ト
ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ポー ト (bd_intf_port オブジ ェ ク ト ) はブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ム で
発生 し 、ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ネ ッ ト (bd_intf_net) に よ っ てブ ロ ッ ク デザ イ ン セル (bd_cell) の ピ ン ま
でに接続 さ れ ます。 ダ イ ア グ ラ ム の bd_intf_ports、 ま たはブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ネ ッ ト へ接続 さ れ る
も のは、 次の よ う に取得で き ます。
get_bd_intf_ports -of_objects [get_bd_intf_nets]
次を使用す る と 、 bd_intf_port に接続 さ れ る イ ン タ ーフ ェ イ ス ネ ッ ト を取得す る こ と も で き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
37
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
get_bd_intf_nets -of_objects [get_bd_intf_ports CLK*]
プ ロパテ ィ ブ ロ ッ ク デザ イ ン イ ン タ ーフ ェ イ ス ポー ト オブジ ェ ク ト の特定のプ ロ パテ ィ は、 そのポー ト の タ イ プに よ っ て変わ
る こ と があ り ます。 次の表には、 ク ロ ッ ク の bd_intf_port オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ の一部を その値
の例 と 共に リ ス ト し てい ます。
Property
CLASS
CONFIG.FREQ_HZ
LOCATION
MODE
NAME
PATH
VLNV
Type
string
string
string
string
string
string
string
Read-only
true
false
false
true
false
true
true
Visible
true
true
true
true
true
true
true
Value
bd_intf_port
100000000
130 460
Slave
CLK_IN1_D
/CLK_IN1_D
xilinx.com:interface:diff_clock_rtl:1.0
bd_intf_port オブ ジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピ ー し て Vivado Design Suite の Tcl
シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_ports] 0]
BD_NET
説明
ブ ロ ッ ク デザ イ ン ネ ッ ト (bd_net オブジ ェ ク ト ) は、 IP イ ン テ グ レー タ ー ブ ロ ッ ク デザ イ ン セルの ピ ン を その他の
ピ ン ま たは外部ポー ト に接続 し ます。 bd_net オブジ ェ ク ト は、 複数レベルのデザ イ ン階層を介 し て接続 さ れ、 ブ ロ ッ
ク デザ イ ン セルが接続 さ れます。すべてのネ ッ ト には、デザ イ ン で識別で き る よ う な名前が付 き ます。 こ れ ら のネ ッ
ト へ接続 さ れ る すべてのブ ロ ッ ク デザ イ ン セル、 ピ ン、 お よ びポー ト は電気的に接続 さ れてい ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
38
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-14
EGBSLQ
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
GLDJUDP
EGBLQWI
EGBFHOO
EGBDGGUBVSDFH
図 1‐14 : ブ ロ ッ ク デザイ ン ネ ッ ト
ブ ロ ッ ク デザ イ ン ネ ッ ト (bd_net オブジ ェ ク ト ) はブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ムで発生 し 、 ポー ト (bd_port)
に接続 さ れ、 ピ ン (bd_pin) を介 し てダ イ ア グ ラ ムのブ ロ ッ ク デザ イ ン セル (bd_cell) に接続 さ れます。 ダ イ ア グ ラ ム
の bd_nets、 bd_cell、 bd_pin、 お よ び bd_port オブジ ェ ク ト は次の よ う に取得で き ます。
get_bd_nets -of_objects [get_bd_ports]
ま た、 特定の bd_net に接続 さ れ る bd_cells、 bd_pins、 ま たは bd_port オブジ ェ ク ト は次の よ う に取得で き ます。
get_bd_cells -of_objects [get_bd_nets clk_wiz*]
プ ロパテ ィ
bd_net オブジ ェ ク ト のプ ロ パテ ィ には、 次が含まれます。
Property
CLASS
NAME
PATH
Type
string
string
string
Read-only
true
false
true
Visible
true
true
true
Value
bd_net
clk_wiz_1_locked
/clk_wiz_1_locked
bd_pin オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル
ま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_nets] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
39
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BD_PIN
説明
ブ ロ ッ ク デザ イ ン ピ ン (bd_pin オブジ ェ ク ト ) は、 ブ ロ ッ ク デザ イ ン セルの論理的接続ポ イ ン ト です。 ブ ロ ッ ク デ
ザ イ ン ピ ン を使用す る と 、 セルの内部 ロ ジ ッ ク を取 り 除いて、 使用 し やすい よ う に簡素化で き ま す。 ピ ンは、 ス カ
ラ ーま たはバ ス ピ ンで、 階層ブ ロ ッ ク デザ イ ン セルま たは リ ーフ レベル セルで使用で き ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-15
EGBSLQ
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
GLDJUDP
EGBLQWIBS
EGBFHOO
EGBDGGUBVSDFH
図 1‐15 : ブ ロ ッ ク デザイ ン ピ ン
図 1-15 に示す よ う に、 ブ ロ ッ ク デザ イ ン ピ ンは、 ブ ロ ッ ク デザ イ ン セル (bd_cell) に接続 さ れ、 ブ ロ ッ ク デザ イ ン
ま たはダ イ ア グ ラ ムのネ ッ ト (bd_net) を使用する こ と で、その他の ピ ン (bd_pin) ま たはポー ト (bd_port) に接続で き ま
す。
bd_cell お よ び bd_net オブジ ェ ク ト の bd_pins は、 次の よ う に取得で き ます。
get_bd_pins -of_objects [get_bd_cells clk_wiz_1]
ま た、 次を使用す る と 、 特定の bd_pin の bd_cell ま たは bd_net を取得する こ と も で き ます。
get_bd_cells -of [get_bd_pins */Reset]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
40
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ
ブ ロ ッ ク デザ イ ン ピ ン オブジ ェ ク ト の特定のプ ロ パテ ィ は、 その ピ ンの タ イ プに よ っ て変わ る こ と があ り ます。 次
の表には、 Vivado Design Suite で CLK タ イ プの bd_pin オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ の一部を その値の
例 と 共に リ ス ト し てい ます。
Property
CLASS
CONFIG.ASSOCIATED_BUSIF
CONFIG.ASSOCIATED_RESET
CONFIG.CLK_DOMAIN
CONFIG.FREQ_HZ
CONFIG.PHASE
DIR
INTF
LEFT
LOCATION
NAME
PATH
RIGHT
TYPE
Type
string
string
string
string
string
string
string
string
string
string
string
string
string
string
Read-only
true
true
true
true
true
true
true
true
true
false
false
true
true
true
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
bd_pin
design_1_clk_wiz_1_0_clk_out1
100000000
0.0
O
FALSE
clk_out1
/clk_wiz_1/clk_out1
clk
bd_net オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル
ま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_pins */*] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
41
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
BD_PORT
説明
ブ ロ ッ ク デザ イ ン ポー ト は、特別な タ イ プの階層ピ ン (ダ イ ア グ ラ ムの最上位の ピ ン) です。ブ ロ ッ ク デザ イ ン では、
ポー ト は、 FPGA デザ イ ン全体ま たはシ ス テ ム レベル デザ イ ン内外のブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ム と の外
部接続 と の通信に使用 さ れ る 主なポー ト です。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-16
EGBSLQ
EGBSRUW
EGBLQWIBSRUW
EGBQHW
EGBLQWIBQHW
GLDJUDP
EGBFHOO
EGBDGGUBVSDFH
図 1‐16 : ブ ロ ッ ク デザイ ン ピ ン
ブ ロ ッ ク デザ イ ン ポー ト (bd_port オブジ ェ ク ト ) はブ ロ ッ ク デザ イ ン ま たはダ イ ア グ ラ ムで発生 し 、 ブ ロ ッ ク デザ
イ ン ネ ッ ト (bd_net) に よ っ て、 ダ イ ア グ ラ ム のブ ロ ッ ク デザ イ ン セル (bd_cell) の ピ ン (bd_pin) ま で接続 さ れ ます。
ダ イ ア グ ラ ムの bd_ports、 ま たはブ ロ ッ ク デザ イ ン ネ ッ ト へ接続 さ れ る も のは、 次の よ う に取得で き ます。
get_bd_ports -of_objects [get_bd_nets]
次を使用す る と 、 bd_port オブジ ェ ク ト に接続 さ れ る イ ン タ ーフ ェ イ ス ネ ッ ト を取得で き ます。
get_bd_nets -of_objects [get_bd_ports aux_reset_in]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
42
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ ブ ロ ッ ク デザ イ ン ポー ト オブジ ェ ク ト の特定のプ ロ パテ ィ は、そのポー ト の タ イ プに よ っ て変わ る こ と があ り ます。
次の表には、 Vivado Design Suite で RESET タ イ プの bd_port オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ の一部を その
値の例 と 共に リ ス ト し てい ます。
Property
CLASS
CONFIG.POLARITY
DIR
INTF
LEFT
LOCATION
NAME
PATH
RIGHT
TYPE
Type
string
string
string
string
string
string
string
string
string
string
Read-only
true
false
true
true
false
false
false
true
false
true
Visible
true
true
true
true
true
true
true
true
true
true
Value
bd_port
ACTIVE_LOW
I
FALSE
130 560
aux_reset_in
/aux_reset_in
rst
bd_port オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト する には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル
ま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_bd_ports] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
43
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ハー ド ウ ェ ア マネージ ャ ー オブ ジ ェ ク ト
ハー ド ウ ェ ア マネージ ャ ーは Vivado Design Suite の機能で、 デバ イ ス プ ロ グ ラ マーま たはデバ ッ グ ボー ド へ接続 し
た り 、 プ ロ グ ラ ム さ れたハー ド ウ ェ ア デバ イ ス を実行 し た り で き ます。 ハー ド ウ ェ ア マネージ ャ ーを使用す る と 、デ
バ イ ス上のデバ ッ グ ロ ジ ッ ク を実行 し て、現在の値を設定ま たは取 り 出す信号にア ク セ ス で き る よ う にな り ます。 プ
ロ グ ラ ム さ れたデバ イ ス のデバ ッ グ コ アには、「HW_ILA」, 「HW_VIO」、「HW_AXI」, 「hw_sysmon」、「HW_SIO_IBERT」
コ ア な ど があ り ます (図 1-17)。
X-Ref Target - Figure 1-17
KZBFIJPHP
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
KZBVLRBVZHHS
KZBVLRBVFDQ
KZBD[L
KZBV\VPRQ
KZBLOD
KZBVLRBLEHUW
KZBYLR
KZBVLRBOLQN
KZBV\VPRQBUHJ
KZBSUREH
KZBVLRBJW
KZBVLRBSOO
KZBVLRBOLQNJURXS
KZBD[LBW[Q
KZBLODBGDWD
KZBVLRBW[
KZBVLRBU[
KZBVLRBJWJURXS
図 1‐17 : ハー ド ウ ェ ア マネージ ャ ー オブ ジ ェ ク ト デバ ッ グ コ アは、ザ イ リ ン ク ス IP カ タ ロ グ を使用 し て RTL デザ イ ンに イ ン ス タ ン シエー ト で き ます。 ILA の場合は、
ネ ッ ト リ ス ト ベー ス のデバ ッ グ フ ロ ーを使用 し て合成済みネ ッ ト リ ス ト に挿入で き ま す。 詳細は、 『Vivado Design
Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) [参照 16] を参照 し て く だ さ い。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
44
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_AXI
説明 JTAG-to-AXI Master コ ア (ハー ド ウ ェ ア AXI オブジ ェ ク ト ) は、 AXI ト ラ ンザ ク シ ョ ン を駆動 し 、 ザ イ リ ン ク ス FPGA
デバ イ ス (ハー ド ウ ェ ア デバ イ ス オブジ ェ ク ト ) 上の AXI 信号を駆動す る AXI マ ス タ ー と し て機能す る カ ス タ マ イ
ズ可能な IP コ ア です。 AXI Master コ アは、 AXI4 イ ン タ ー フ ェ イ ス お よ び AXI-Lite プ ロ ト コ ル を サポー ト し ま す。
AXI デー タ バ ス の幅は設定可能 です。 AXI コ ア で は、 AXI4 イ ン タ ー コ ネ ク ト を 介 し て メ モ リ に マ ッ プ さ れ た
AXI4-Lite ま たは AXI4 ス レーブ を駆動で き ます。 こ の コ アは、 マ ス タ ー と し て イ ン タ ー コ ネ ク ト に接続す る こ と も 可
能です。
JTAG to AXI Master コ アは、 ザ イ リ ン ク ス IP カ タ ロ グ か ら RTL コ ー ド に イ ン ス タ ン シエー ト す る 必要があ り ま す。
JTAG-to-AXI コ アの詳細は、 『LogiCORE IP JTAG to AXI Master 製品ガ イ ド 』 (PG174) [参照 20] を参照 し て く だ さ い。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-18
KZBFIJ
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWV
KZBLOD
KZBYLR
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
K
KZBSUREH
KZBVLRBJW
KZBV
ZBLODBGDWD
KZBD[LBW[Q
KZBVLRBW[
KZBVLRBU[
図 1‐18 : ハー ド ウ ェ ア AXI オブ ジ ェ ク ト AXI マ ス タ ー コ アは、 ザ イ リ ン ク ス IP カ タ ロ グか ら RTL ソ ース フ ァ イ ルのデザ イ ンに追加で き ます。 AXI コ アは、
get_debug_cores コ マ ン ド を使用 し て合成済みネ ッ ト リ ス ト デザ イ ンで検索で き ます。 こ れ ら は Vivado Design Suite の
ハー ド ウ ェ ア マネージ ャ ーで検索 さ れ る AXI マ ス タ ー コ ア オブジ ェ ク ト (hw_axi) ではあ り ませんが、関連は し てい
ます。
hw_axi コ アは、 プ ロ グ ラ ム済みのハー ド ウ ェ ア デバ イ ス オブジ ェ ク ト (hw_device) のハー ド ウ ェ ア マネージ ャ ーに
含まれます。 hw_device の hw_axi は次の よ う に取得で き ます。
get_hw_axis -of [get_hw_devices]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
45
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ま た、 hw_axi コ アには関連す る AXI ト ラ ンザ ク シ ョ ン も 含まれ、 次の よ う に取得で き ます。
get_hw_axi_txns -of [get_hw_axis]
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 hw_axi コ アに割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と がで き ます。 詳
細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。 次は hw_axi オブジ ェ ク
ト に割 り 当て ら れたプ ロ パテ ィ と その値の例です。
Property
CLASS
HW_CORE
NAME
PROTOCOL
STATUS.AXI_READ_BUSY
STATUS.AXI_READ_DONE
STATUS.AXI_WRITE_BUSY
STATUS.AXI_WRITE_DONE
STATUS.BRESP
STATUS.RRESP
Type
string
string
string
string
bool
bool
bool
bool
string
string
Read-only
true
true
true
true
true
true
true
true
true
true
Visible
true
false
true
true
true
true
true
true
true
true
Value
hw_axi
core_8
hw_axi_1
AXI4_Full
0
0
0
0
OKAY
OKAY
特定の hw_axi のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま たは
Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_axis] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
46
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_BITSTREAM
説明 ハー ド ウ ェ ア ビ ッ ト ス ト リ ーム オブジ ェ ク ト (hw_bitstream) は、 ビ ッ ト ス ト リ ーム フ ァ イ ルか ら 作成 さ れ、 Vivado
Design Suite のハー ド ウ ェ ア マネージ ャ ー機能でハー ド ウ ェ ア デバ イ ス オブジ ェ ク ト (hw_device) に関連付け ら れま
す。
ビ ッ ト ス ト リ ーム フ ァ イ ルは、 write_bitstream コ マ ン ド を使用 し て配置配線済みデザ イ ンか ら 作成 さ れます。 ハー ド
ウ ェ ア ビ ッ ト ス ト リ ーム オブジ ェ ク ト は、 create_hw_bitstream コ マ ン ド を使用す る と ビ ッ ト ス ト リ ーム フ ァ イ ルか
ら 手動で作成 さ れます。 ハー ド ウ ェ ア デバ イ ス が program_hw_device コ マ ン ド でプ ロ グ ラ ム さ れ る 場合は、 自動で作
成 さ れます。
ハー ド ウ ェ ア ビ ッ ト ス ト リ ーム オブジ ェ ク ト は、 デバ イ ス の PROGRAM.HW_BITSTREAM プ ロ パテ ィ を使用 し て指
定のハー ド ウ ェ ア デバ イ ス に関連付け ら れます。 こ のプ ロ パテ ィ は、 create_hw_bitstream コ マ ン ド に よ り 自動的に設
定 さ れます。 PROGRAM.FILE プ ロ パテ ィ には、 指定のビ ッ ト ス ト リ ーム フ ァ イ ルのフ ァ イ ル パ ス も 含まれます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-19
KZBFIJPHP
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
KZBVLRBVZHHS
KZBVLRBVFDQ
KZBLOD
KZBYLR
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
図 1‐19 : ハー ド ウ ェ ア ビ ッ ト ス ト リ ーム オブ ジ ェ ク ト hw_bitstream オブジ ェ ク ト は PROGRAM.BITSTREAM プ ロ パテ ィ を使用 し て hardware_device に関連付け ら れます。次
の よ う に get_property コ マ ン ド を使用 し て hw_bitstream オブジ ェ ク ト を ク エ リ ーす る と 、 プ ロ パテ ィ にオブジ ェ ク ト
を戻す こ と がで き ます。
get_property PROGRAM.HW_BITSTREAM [current_hw_device]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
47
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 ハー ド ウ ェ ア ビ ッ ト ス ト リ ーム オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を
レ ポー ト す る こ と がで き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て
く だ さ い。 hw_bitsream オブジ ェ ク ト には次の よ う なプ ロ パテ ィ が含まれます。
Property Type
Read-only Visible Value
CLASS
string true
true
hw_bitstream
DESIGN
string true
true
ks_counter2
DEVICE
string true
true
xc7k325t
NAME
string true
true
C:/Data/ks_counter2_k7/project_1/project_1.runs/impl_1/ks_counter2.bit
PART
string true
true
xc7k325tffg900-3
SIZE
string true
true
11443612
USERCODE string true
true
0XFFFFFFFF
hw_bitsream オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト する には、Vivado ロ ジ ッ ク 解析で get_property コ マ ン ド を使用 し て
hw_device の PROGRAM.HW_BITSTREAM プ ロ パテ ィ で定義 さ れたオブジ ェ ク ト が戻 さ れ る よ う に し ます。次の コ マ
ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [get_property PROGRAM.HW_BITSTREAM [current_hw_device]]
HW_CFGMEM
説明 ザ イ リ ン ク ス FPGA を コ ン フ ィ ギ ュ レーシ ョ ンす る には、 ハー ド ウ ェ ア デバ イ ス の内部 メ モ リ にデザ イ ン特定の コ
ン フ ィ ギ ュ レ ーシ ョ ン デー タ を ビ ッ ト ス ト リ ーム フ ァ イ ルの形で読み込み ま す。 hw_cfgmem では、 Vivado Design
Suite のハー ド ウ ェ ア マネージ ャ ー機能でザ イ リ ン ク ス FPGA デバ イ ス を コ ン フ ィ ギ ュ レーシ ョ ンお よ びブー ト す る
ために使用 さ れ る フ ラ ッ シ ュ メ モ リ デバ イ ス が定義 さ れます。
hw_cfgmem オブジ ェ ク ト を プ ロ グ ラ ムす る には、 create_hw_cfgmem コ マ ン ド を使用 し ます。 create_hw_cfgmem オブ
ジ ェ ク ト を作成 し 、 ハー ド ウ ェ ア デバ イ ス に関連付けた ら 、 program_hw_cfgmem コ マ ン ド を使用 し て コ ン フ ィ ギ ュ
レーシ ョ ン メ モ リ を ビ ッ ト ス ト リ ームお よ びその他のデー タ でプ ロ グ ラ ムで き ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-20
KZBFIJPHP
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
KZBVLRBVZHHS
図 1‐20 : ハー ド ウ ェ ア CFGMEM オブ ジ ェ ク ト Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
48
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
hw_cfgmem オブジ ェ ク ト は、 デバ イ ス オブジ ェ ク ト の PROGRAM.HW_CFGMEM プ ロ パテ ィ を使用 し て指定のハー
ド ウ ェ ア デバ イ ス オブジ ェ ク ト に関連付け ら れます。 hw_cfgmem オブジ ェ ク ト を操作する には、 get_property コ マ ン
ド を使用 し てハー ド ウ ェ ア デバ イ ス か ら オブジ ェ ク ト を取得 し ます。
get_property PROGRAM.HW_CFGMEM [current_hw_device]
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 hw_cfgmem オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と が
で き ます。詳細は、『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。hw_cfgmem
オブジ ェ ク ト には次の よ う なプ ロ パテ ィ が含まれます。
Property
Type
CFGMEM_NAME
string
CFGMEM_PART
cfgmem_part
CLASS
string
NAME
string
PROGRAM.ADDRESS_RANGE string
PROGRAM.BIN_OFFSET
int
PROGRAM.BLANK_CHECK
bool
PROGRAM.BPI_RS_PINS
string
PROGRAM.CFG_PROGRAM
bool
PROGRAM.ERASE
bool
PROGRAM.FILE
string
C:/Data/Vivado_Debug/kc705_8led.mcs
PROGRAM.FILE_1
string
C:/Data/Vivado_Debug/kc705_8led.mcs
PROGRAM.FILE_2
string
PROGRAM.VERIFY
bool
PROGRAM.ZYNQ_FSBL
string
Read-only
true
false
true
false
false
false
false
false
false
false
false
Visible
true
true
true
true
true
true
true
true
true
true
true
false
true
false
false
false
true
true
true
Value
28f00ap30t-bpi-x16_0
28f00ap30t-bpi-x16
hw_cfgmem
28f00ap30t-bpi-x16_0
use_file
0
0
NONE
0
1
0
hw_cfgmem オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト する には、ハー ド ウ ェ ア マネージ ャ ー機能が開いてい る と き に、次
の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [get_property PROGRAM.HW_CFGMEM [current_hw_device] ]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
49
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_DEVICE
説明 Vivado Design Suite のハー ド ウ ェ ア マネージ ャ ー機能内では、 各ハー ド ウ ェ ア タ ーゲ ッ ト にプ ロ グ ラ ム ま たはデバ ッ
グ目的で使用す る ザ イ リ ン ク ス FPGA デバ イ ス を 1 つま たは複数含め る こ と がで き ます。hw_device オブジ ェ ク ト は、
開いたハー ド ウ ェ ア タ ーゲ ッ ト の物理的パーツ です。 current_hw_device コ マ ン ド では、 現在のデバ イ ス が指定 さ れ る
か、 戻 さ れます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-21
KZBFIJPHP
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
KZ
KZBVLRBVFD
KZBLOD
KZBYLR
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
KZBVLRBOLQN
図 1‐21 : ハー ド ウ ェ ア デバイ ス オブ ジ ェ ク ト ハー ド ウ ェ ア デバ イ ス はハー ド ウ ェ ア タ ーゲ ッ ト に関連付け ら れてお り 、 次の よ う に hw_target オブジ ェ ク ト のオブ
ジ ェ ク ト と し て取得で き ます。
get_hw_devices -of [get_hw_targets]
次を使用す る と 、 ハー ド ウ ェ ア デバ イ ス オブジ ェ ク ト にプ ロ グ ラ ム さ れ る デバ ッ グ コ ア を取得で き ます。
get_hw_ilas -of [current_hw_device]
プ ロパテ ィ hw_device オブジ ェ ク ト のプ ロ パテ ィ は、 選択 し た タ ーゲ ッ ト パーツ に よ っ て変わ り ます。 report_property コ マ ン ド
を使用す る と 、hw_device オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト する こ と がで き ます。詳細は、『Vivado
Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。
次は hw_device オブジ ェ ク ト に割 り 当て ら れ る プ ロ パテ ィ と その値の例を示 し てい ます。
プ ロ パテ ィ
CLASS
タ イプ
string
DID
string
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
50
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
IDCODE
string
INDEX
int
IR_LENGTH
int
IS_SYSMON_SUPPORTED
bool
MASK
int
NAME
string
PART
string
PROBES.FILE
string
PROGRAM.FILE
string
PROGRAM.HW_BITSTREAM
hw_bitstream
PROGRAM.HW_CFGMEM
hw_cfgmem
PROGRAM.HW_CFGMEM_BITFILE
string
PROGRAM.HW_CFGMEM_TYPE
string
PROGRAM.IS_SUPPORTED
bool
PROGRAM.OPTIONS
string
REGISTER.BOOT_STATUS
string
REGISTER.BOOT_STATUS.BIT00_0_STATUS_VALID
string
REGISTER.BOOT_STATUS.BIT01_0_FALLBACK
string
REGISTER.BOOT_STATUS.BIT02_0_INTERNAL_PROG
string
REGISTER.BOOT_STATUS.BIT03_0_WATCHDOG_TIMEOUT_ERROR
string
REGISTER.BOOT_STATUS.BIT04_0_ID_ERROR
string
REGISTER.BOOT_STATUS.BIT05_0_CRC_ERROR
string
REGISTER.BOOT_STATUS.BIT06_0_WRAP_ERROR
string
REGISTER.BOOT_STATUS.BIT07_RESERVED
string
REGISTER.BOOT_STATUS.BIT08_1_STATUS_VALID
string
REGISTER.BOOT_STATUS.BIT09_1_FALLBACK
string
REGISTER.BOOT_STATUS.BIT10_1_INTERNAL_PROG
string
REGISTER.BOOT_STATUS.BIT11_1_WATCHDOG_TIMEOUT_ERROR
string
REGISTER.BOOT_STATUS.BIT12_1_ID_ERROR
string
REGISTER.BOOT_STATUS.BIT13_1_CRC_ERROR
string
REGISTER.BOOT_STATUS.BIT14_1_WRAP_ERROR
string
REGISTER.BOOT_STATUS.BIT15_RESERVED
string
REGISTER.CONFIG_STATUS
string
REGISTER.CONFIG_STATUS.BIT00_CRC_ERROR
string
REGISTER.CONFIG_STATUS.BIT01_DECRYPTOR_ENABLE
string
REGISTER.CONFIG_STATUS.BIT02_PLL_LOCK_STATUS
string
REGISTER.CONFIG_STATUS.BIT03_DCI_MATCH_STATUS
string
REGISTER.CONFIG_STATUS.BIT04_END_OF_STARTUP_(EOS)_STATUS
string
REGISTER.CONFIG_STATUS.BIT05_GTS_CFG_B_STATUS
string
REGISTER.CONFIG_STATUS.BIT06_GWE_STATUS
string
REGISTER.CONFIG_STATUS.BIT07_GHIGH_STATUS
string
REGISTER.CONFIG_STATUS.BIT08_MODE_PIN_M[0]
string
REGISTER.CONFIG_STATUS.BIT09_MODE_PIN_M[1]
string
REGISTER.CONFIG_STATUS.BIT10_MODE_PIN_M[2]
string
REGISTER.CONFIG_STATUS.BIT11_INIT_B_INTERNAL_SIGNAL_STATUS
string
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
51
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
REGISTER.CONFIG_STATUS.BIT12_INIT_B_PIN
string
REGISTER.CONFIG_STATUS.BIT13_DONE_INTERNAL_SIGNAL_STATUS
string
REGISTER.CONFIG_STATUS.BIT14_DONE_PIN
string
REGISTER.CONFIG_STATUS.BIT15_IDCODE_ERROR
string
REGISTER.CONFIG_STATUS.BIT16_SECURITY_ERROR
string
REGISTER.CONFIG_STATUS.BIT17_SYSTEM_MONITOR_OVER-TEMP_ALARM_S
TATUS
REGISTER.CONFIG_STATUS.BIT18_CFG_STARTUP_STATE_MACHINE_PHASE
string
string
REGISTER.CONFIG_STATUS.BIT21_RESERVED
string
REGISTER.CONFIG_STATUS.BIT25_CFG_BUS_WIDTH_DETECTION
string
REGISTER.CONFIG_STATUS.BIT27_HMAC_ERROR
string
REGISTER.CONFIG_STATUS.BIT28_PUDC_B_PIN
string
REGISTER.CONFIG_STATUS.BIT29_BAD_PACKET_ERROR
string
REGISTER.CONFIG_STATUS.BIT30_CFGBVS_PIN
string
REGISTER.CONFIG_STATUS.BIT31_RESERVED
string
REGISTER.IR
string
REGISTER.IR.BIT0_ALWAYS_ONE
string
REGISTER.IR.BIT1_ALWAYS_ZERO
string
REGISTER.IR.BIT2_ISC_DONE
string
REGISTER.IR.BIT3_ISC_ENABLED
string
REGISTER.IR.BIT4_INIT_COMPLETE
string
REGISTER.IR.BIT5_DONE
string
REGISTER.USERCODE
string
SET_UNKNOWN_DEVICE
bool
USER_CHAIN_COUNT
string
hw_device のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま たは Tcl
コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_devices] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
52
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_ILA
説明 Integrated Logic Analyzer (ILA) デバ ッ グ コ ア を使用する と 、 コ アのデバ ッ グ プ ロ ーブ を介 し て イ ンプ リ メ ン ト さ れた
デザ イ ン の信号の イ ン シ ス テ ム モニ タ リ ン グ を実行で き ます。 ILA コ アは、 特定のハー ド ウ ェ ア イ ベン ト が リ アル
タ イ ムで ト リ ガー さ れて、 シ ス テ ム速度でプ ロ ーブのデー タ がキ ャ プチ ャ さ れ る よ う に コ ン フ ィ ギ ュ レーシ ョ ン で き
ます。
ILA デバ ッ グ コ ア をデザ イ ンに追加す る には、 IP カ タ ロ グか ら ILA コ ア を RTL デザ イ ンに イ ン ス タ ン シエー ト す る
か、 create_debug_core コ マ ン ド を使用 し て合成済みネ ッ ト リ ス ト に ILA コ ア を追加 し ます。 ILA デバ ッ グ コ アのデザ
イ ンへの追加に関す る 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) を参照 し
て く だ さ い。
デザ イ ン か ら ビ ッ ト ス ト リ ー ム を 生成 し 、 program_hw_devices コ マ ン ド を 使用 し てデバ イ ス を プ ロ グ ラ ム す る と 、
get_hw_ilas コ マ ン ド を使用 し てハー ド ウ ェ ア マネージ ャ ーか ら デザ イ ンに含まれ る ILA デバ ッ グ コ アにア ク セ ス で
き ます。 デザ イ ンの ILA デバ ッ グ コ アに割 り 当て ら れてい る デバ ッ グ プ ロ ーブは、 get_hw_probes コ マ ン ド を使用 し
て取得で き ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-22
KZBFIJPHP
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
KZBVLRBVF
KZBLOD
KZBYLR
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
KZBVLRBOLQN
KZBSUREH
KZBVLRBJW
KZBVLRBSOO
KZBLODBGDWD
K
KZBD[LBW[Q
KZBVLRBW[
KZBVLRBU[
図 1‐22 : ハー ド ウ ェ ア ILA オブ ジ ェ ク ト ILA デバ ッ グ コ アは、 RTL ソ ース フ ァ イ ルま たは create_debug_core コ マ ン ド でデザ イ ンに追加で き ます。 デバ ッ グ
コ アは、get_debug_cores コ マ ン ド を使用 し て合成済みネ ッ ト リ ス ト デザ イ ン で検索で き ます。 こ れ ら は Vivado Design
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
53
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
Suite のハー ド ウ ェ ア マネージ ャ ーに含まれ る ILA デバ ッ グ オブジ ェ ク ト (hw_ila) ではあ り ませんが、 関連は し てい
ます。
ハー ド ウ ェ ア ILA デバ ッ グ コ アは、プ ロ グ ラ ム済みのハー ド ウ ェ ア デバ イ ス オブジ ェ ク ト (hw_device) のハー ド ウ ェ
ア マネージ ャ ーに含まれます。 hw_device の hw_ila は次の よ う に取得で き ます。
get_hw_ilas -of [current_hw_device]
ハー ド ウ ェ ア プ ロ ーブの よ う なハー ド ウ ェ ア ILA デバ ッ グ コ ア と 関連する オブジ ェ ク ト と コ アか ら キ ャ プチ ャ さ れ
たデー タ サンプル も あ り ます。 ILA デバ ッ グ コ アに関連す る オブジ ェ ク ト は、 次の よ う に取得で き ます。
get_hw_ila_datas -of_objects [get_hw_ilas hw_ila_2]
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 特定の hw_ila に割 り 当て ら れた実際のプ ロ パテ ィ を レ ポー ト す る こ と がで き
ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。
次は hw_ila オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例です。
Property
CLASS
CONTROL.CAPTURE_CONDITION
CONTROL.CAPTURE_MODE
CONTROL.DATA_DEPTH
CONTROL.IS_ILA_TO_DRIVE_TRIG_OUT_ENABLED
CONTROL.IS_TRIG_IN_TO_DRIVE_TRIG_OUT_ENABLED
CONTROL.IS_TRIG_IN_TO_ILA_ENABLED
CONTROL.TRIGGER_CONDITION
CONTROL.TRIGGER_MODE
CONTROL.TRIGGER_POSITION
CONTROL.TRIG_OUT_MODE
CONTROL.TSM_FILE
CONTROL.WINDOW_COUNT
CORE_REFRESH_RATE_MS
HW_CORE
INSTANCE_NAME
NAME
STATIC.IS_ADVANCED_TRIGGER_MODE_SUPPORTED
STATIC.IS_BASIC_CAPTURE_MODE_SUPPORTED
STATIC.IS_TRIG_IN_SUPPORTED
STATIC.IS_TRIG_OUT_SUPPORTED
STATIC.MAX_DATA_DEPTH
STATIC.TSM_COUNTER_0_WIDTH
STATIC.TSM_COUNTER_1_WIDTH
STATIC.TSM_COUNTER_2_WIDTH
STATIC.TSM_COUNTER_3_WIDTH
STATUS.CORE_STATUS
STATUS.DATA_DEPTH
STATUS.IS_TRIGGER_AT_STARTUP
STATUS.SAMPLE_COUNT
STATUS.TRIGGER_POSITION
STATUS.TSM_FLAG0
STATUS.TSM_FLAG1
STATUS.TSM_FLAG2
STATUS.TSM_FLAG3
STATUS.TSM_STATE
STATUS.WINDOW_COUNT
TRIGGER_START_TIME_SECONDS
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
Type
string
enum
enum
int
bool
bool
bool
string
enum
int
enum
string
int
int
string
string
string
bool
bool
bool
bool
int
int
int
int
int
string
int
bool
int
int
bool
bool
bool
bool
int
int
string
Read-only
true
false
false
false
true
true
true
false
false
false
true
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
hw_ila
AND
ALWAYS
1024
0
0
0
AND
BASIC_ONLY
0
DISABLED
1
500
core_1
u_ila_0
hw_ila_1
1
1
0
0
1024
15
15
15
15
IDLE
2147483647
0
0
2147483647
1
1
1
1
0
2147483647
54
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
TRIGGER_STOP_TIME_SECONDS
string
true
true
特定の HW_ILA のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま た
は Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_ilas] 0]
HW_ILA_DATA
説明 ハー ド ウ ェ ア ILA デー タ オブジ ェ ク ト は、 現在のハー ド ウ ェ ア デバ イ ス にプ ロ グ ラ ム さ れた ILA デバ ッ グ コ ア で
キ ャ プチ ャ さ れたデー タ リ ポジ ト リ です。 hw_ila_data オブジ ェ ク ト は、 upload_hw_ila_data コ マ ン ド に よ る FPGA デ
バ イ ス (hw_device) 上の ILA デバ ッ グ コ ア (hw_ila) か ら のデー タ を キ ャ プチ ャ す る プ ロ セ ス で作成 さ れます。
ま た、 read_hw_ila_data コ マ ン ド でデ ィ ス ク か ら ILA デー タ フ ァ イ ルを読み込んだ と き に も 作成 さ れます。
hw_ila_data オブジ ェ ク ト は、display_hw_ila_data コ マ ン ド を使用 し て Vivado ロ ジ ッ ク 解析機能の波形ウ ィ ン ド ウ に表
示で き 、 write_hw_ila_data コ マ ン ド を使用 し てデ ィ ス ク に保存で き ます。
関連オブ ジ ェ ク ト 53 ページの図 1-22 に示す よ う に、ハー ド ウ ェ ア ILA デー タ オブジ ェ ク ト はハー ド ウ ェ ア デバ イ ス にプ ロ グ ラ ム さ れ
た ILA デバ ッ グ コ アに関連 し てい ます。 デー タ オブジ ェ ク ト は次の よ う に取得で き ます。
get_hw_ila_datas -of_objects [get_hw_ilas]
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 hw_ila_data オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と が
で き ます。詳細は、『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。プ ロ パテ ィ
は、 次の と お り です。
Property
CLASS
HW_ILA
NAME
TIMESTAMP
Type
string
string
string
string
Read-only
true
true
true
true
Visible
true
true
true
true
Value
hw_ila_data
hw_ila_1
hw_ila_data_1
Sat Mar 08 11:05:49 2014
hw_ila_data オブ ジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピ ー し て Vivado Design Suite の Tcl
シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
-all [lindex [get_hw_ila_datas] 0]
japan.xilinx.com
55
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_PROBE
説明 ハー ド ウ ェ ア プ ロ ーブ オブジ ェ ク ト (hw_probe) は、 デザ イ ン内の信号へのア ク セ ス に使用 さ れ、 信号の値を監視お
よ び駆動 し 、 FPGA デバ イ ス のハー ド ウ ェ ア イ ベン ト を ト ラ ッ ク し ます。 ハー ド ウ ェ ア プ ロ ーブは、 ILA お よ び VIO
デバ ッ グ コ アの両方に追加で き ます。
デバ ッ グ プ ロ ーブは、 コ ア と 一緒に RTL デザ イ ン ソ ース の ILA デバ ッ グ コ アに追加する か、 合成済みネ ッ ト リ ス ト
デザ イ ンの ILA コ アに追加で き (create_debug_probe コ マ ン ド を使用)、 その後 connect_debug_probe コ マ ン ド を使用 し
てデザ イ ンの信号に接続で き ます。
RTL デザ イ ンで VIO デバ ッ グ コ アにプ ロ ーブ を追加で き る のは、IP カ タ ロ グか ら IP コ ア を カ ス タ マ イ ズ ま たは再カ
ス タ マ イ ズす る 際に信号がその コ アに接続 さ れてい る 場合のみです。 デザ イ ンへの ILA お よ び VIO デバ ッ グ コ ア と
信号プ ロ ーブの追加に関す る 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908) を
参照 し て く だ さ い。
デバ ッ グ コ ア と プ ロ ーブは write_debug_probes コ マ ン ド を使用 し てプ ロ ーブ フ ァ イ ル (.ltx) に記述 し 、 ハー ド ウ ェ ア
デバ イ ス オブジ ェ ク ト の PROBES.FILE お よ び PROGRAM.FILE プ ロ パテ ィ を使用 し て ビ ッ ト ス ト リ ーム フ ァ イ ル と
共 に ハ ー ド ウ ェ ア デ バ イ ス に 関 連 付 け ま す。 ハ ー ド ウ ェ ア デ バ イ ス に こ の 情報 を プ ロ グ ラ ム す る に は、
program_hw_devices コ マ ン ド を使用 し ます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-23
KZBLOD
KZBYLR
KZBD
KZBSUREH
KZBLODBGDWD
KZBD[LB
図 1‐23 : ハー ド ウ ェ ア プ ローブ オブ ジ ェ ク ト ハー ド ウ ェ ア プ ロ ーブ オブジ ェ ク ト は、 開いたハー ド ウ ェ ア タ ーゲ ッ ト でハー ド ウ ェ ア デバ イ ス にプ ロ グ ラ ム さ れ
た ILA お よ び VIO デバ ッ グ コ アに関連付け ら れてい ます。こ れ ら のデバ ッ グ コ ア オブジ ェ ク ト に関連する hw_probe
オブジ ェ ク ト は、 次の よ う に取得で き ます。
get_hw_probes -of [get_hw_ilas hw_ila_2]
get_hw_probes -of [get_hw_vios]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
56
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ デバ ッ グ プ ロ ーブには、 ILA、 VIO_INPUT、 お よ び VIO_OUTPUT の 3 つの タ イ プがあ り ます。 hw_probe オブジ ェ ク
ト に割 り 当て ら れ る プ ロ パテ ィ は、 プ ロ ーブの タ イ プに よ っ て異な り ま す。 report_property コ マ ン ド を使用す る と 、
hw_probe オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト する こ と がで き ます。詳細は、『Vivado Design Suite Tcl
コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。 次は、 ILA タ イ プの hw_probe オブジ ェ ク ト に割 り 当
て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
CAPTURE_COMPARE_VALUE
CLASS
COMPARATOR_COUNT
COMPARE_VALUE.0
CORE_LOCATION
DISPLAY_HINT
DISPLAY_VISIBILITY
HW_ILA
NAME
PROBE_PORT
PROBE_PORT_BITS
PROBE_PORT_BIT_COUNT
TRIGGER_COMPARE_VALUE
TYPE
Type
string
string
int
string
string
string
string
string
string
int
int
int
string
string
Read-only
false
true
true
false
true
false
false
true
true
true
true
true
false
true
Visible
true
true
true
false
false
false
false
true
true
true
true
true
true
true
Value
eq2'hX
hw_probe
4
eq2'hX
1:0
hw_ila_1
GPIO_BUTTONS_dly
3
0
2
eq2'hX
ila
特定の hw_probe オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の
Tcl シ ェ ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_probes -filter {TYPE == ila}] 0]
report_property -all [lindex [get_hw_probes -filter {TYPE == vio_input}] 0]
report_property -all [lindex [get_hw_probes -filter {TYPE == vio_output}] 0]
HW_SERVER
説明 ハー ド ウ ェ ア サーバーは、FPGA デザ イ ン をプ ロ グ ラ ムお よ びデバ ッ グす る ために使用す る 1 つま たは複数のザ イ リ
ン ク ス FPGA デバ イ ス で構成 さ れた JTAG チ ェ ーン を含むハー ド ウ ェ ア ボー ド ハー ド ウ ェ ア タ ーゲ ッ ト への接続を
制御 し ます。
open_hw コ マ ン ド でハー ド ウ ェ ア マ ネージ ャ ー を 開い た ら 、 connect_hw_server コ マ ン ド を 使用 し てハー ド ウ ェ ア
サーバーに ロ ーカル ま たは リ モー ト のいずれかで接続で き ます。 こ れに よ り 、 hw_server アプ リ ケーシ ョ ンが起動 さ
れ、 hw_server オブジ ェ ク ト が作成 さ れます。
関連オブ ジ ェ ク ト 44 ページの図 1-17 に示す よ う に、 ハー ド ウ ェ ア サーバーは、 ハー ド ウ ェ ア マネージ ャ ーの先端のオブジ ェ ク ト で、
ハー ド ウ ェ ア タ ーゲ ッ ト への接続を管理 し ます。 hw_server に関す る オブジ ェ ク ト は、 次の よ う に取得で き ます。
get_hw_targets -of [get_hw_servers]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
57
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 hw_server オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と がで
き ます。詳細は、『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。次は、hw_target
オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
CLASS
HOST
NAME
PASSWORD
PORT
SID
VERSION
Type
string
string
string
string
string
string
string
Read-only
true
true
true
true
true
true
true
Visible
true
true
true
true
true
true
true
Value
hw_server
localhost
localhost
60001
TCP:xcoatslab-1:3121
20
hw_target のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル ま たは Tcl
コ ン ソ ールに貼 り 付け ます。
report_property -all [get_hw_servers]
HW_SIO_GT
説明 カ ス タ マ イ ズ可能なザ イ リ ン ク ス FPGA 用の LogiCORE™ IP Integrated Bit Error Ratio Tester (IBERT) コ アは、ギガ ビ ッ
ト ト ラ ン シーバー (GT) を評価お よ び監視す る ために設計 さ れてい ます。 IBERT コ アは イ ン シ ス テ ム シ リ アル I/O の
検証お よ びデバ ッ グ を イ ネーブルに し 、 FPGA ベース シ ス テ ムの高速シ リ アル I/O リ ン ク を計測お よ び最適化で き る
よ う に し ます。 詳細は、 『LogiCORE IP Integrated Bit Error Ratio Tester (IBERT) for 7 Series GTX Transceivers v3.0 製品ガ
イ ド 』 (PG132) を参照 し て く だ さ い。
IBERT デバ ッ グ コ ア を使用す る と 、 GTX ト ラ ン シーバーのダ イ ナ ミ ッ ク リ コ ン フ ィ ギ ュ レーシ ョ ン ポー ト (DRP)
ポー ト を介 し て GT ト ラ ン ス ミ ッ タ ー と レ シーバーを設定お よ び調整で き ます。 こ れに よ り 、 GT のプ ロ パテ ィ 設定
を変更 し た り 、 ポー ト 上の値を制御す る レ ジ ス タ を変更で き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
58
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-24
KZBVLRBVFDQ
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
KZBVLRBOLQN
KZBVLRBJW
KZBVLRBOLQNJURXS
KZBVLRBSOO
KZBD[LBW[Q
KZBVLRBW[
KZBVLRBU[
KZBVLRBJWJURXS
図 1‐24 : hw_sio_gt オブ ジ ェ ク ト hw_sio_gt オ ブ ジ ェ ク ト は、 hw_server、 hw_target、 hw_device、 hw_sio_gt、 hw_sio_common、 hw_sio_pll、 hw_sio_tx、
hw_sio_rx、 ま たは hw_sio_link オブジ ェ ク ト に接続 さ れます。 こ れ ら のオブジ ェ ク ト に関連付け ら れた GT オブジ ェ
ク ト は、 次の よ う に取得で き ます。
get_hw_sio_gts -of_objects [get_hw_sio_links]
次を使用す る と 、 hw_sio_gt オブジ ェ ク ト に関連付け ら れたオブジ ェ ク ト を取得す る こ と も で き ます。
get_hw_sio_gtgroups -of [get_hw_sio_gts *MGT_X0Y9]
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、特定の hw_sio_gt に割 り 当て ら れた実際のプ ロ パテ ィ を レ ポー ト す る こ と がで
き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。
次は hw_sio_gt オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例です。
Property
CLASS
CPLLREFCLKSEL
CPLL_FBDIV
CPLL_FBDIV_45
CPLL_REFCLK_DIV
DISPLAY_NAME
DRP.ALIGN_COMMA_DOUBLE
DRP.ALIGN_COMMA_ENABLE
DRP.ALIGN_COMMA_WORD
DRP.ALIGN_MCOMMA_DET
DRP.ALIGN_MCOMMA_VALUE
DRP.ALIGN_PCOMMA_DET
DRP.ALIGN_PCOMMA_VALUE
DRP.CBCC_DATA_SOURCE_SEL
DRP.CHAN_BOND_KEEP_ALIGN
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
Type
string
enum
enum
enum
enum
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
Read-only
true
false
false
false
false
true
false
false
false
false
false
false
false
false
false
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
hw_sio_gt
GTREFCLK0
1
4
1
MGT_X0Y8
0
07F
1
1
283
1
17C
1
0
59
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DRP.CHAN_BOND_MAX_SKEW
DRP.CHAN_BOND_SEQ_1_1
DRP.CHAN_BOND_SEQ_1_2
DRP.CHAN_BOND_SEQ_1_3
DRP.CHAN_BOND_SEQ_1_4
DRP.CHAN_BOND_SEQ_1_ENABLE
DRP.CHAN_BOND_SEQ_2_1
DRP.CHAN_BOND_SEQ_2_2
DRP.CHAN_BOND_SEQ_2_3
DRP.CHAN_BOND_SEQ_2_4
DRP.CHAN_BOND_SEQ_2_ENABLE
DRP.CHAN_BOND_SEQ_2_USE
DRP.CHAN_BOND_SEQ_LEN
DRP.CLK_CORRECT_USE
DRP.CLK_COR_KEEP_IDLE
DRP.CLK_COR_MAX_LAT
DRP.CLK_COR_MIN_LAT
DRP.CLK_COR_PRECEDENCE
DRP.CLK_COR_REPEAT_WAIT
DRP.CLK_COR_SEQ_1_1
DRP.CLK_COR_SEQ_1_2
DRP.CLK_COR_SEQ_1_3
DRP.CLK_COR_SEQ_1_4
DRP.CLK_COR_SEQ_1_ENABLE
DRP.CLK_COR_SEQ_2_1
DRP.CLK_COR_SEQ_2_2
DRP.CLK_COR_SEQ_2_3
DRP.CLK_COR_SEQ_2_4
DRP.CLK_COR_SEQ_2_ENABLE
DRP.CLK_COR_SEQ_2_USE
DRP.CLK_COR_SEQ_LEN
DRP.CPLL_CFG
DRP.CPLL_FBDIV
DRP.CPLL_FBDIV_45
DRP.CPLL_INIT_CFG
DRP.CPLL_LOCK_CFG
DRP.CPLL_REFCLK_DIV
DRP.DEC_MCOMMA_DETECT
DRP.DEC_PCOMMA_DETECT
DRP.DEC_VALID_COMMA_ONLY
DRP.DMONITOR_CFG
DRP.ES_CONTROL
DRP.ES_CONTROL_STATUS
DRP.ES_ERRDET_EN
DRP.ES_ERROR_COUNT
DRP.ES_EYE_SCAN_EN
DRP.ES_HORZ_OFFSET
DRP.ES_PMA_CFG
DRP.ES_PRESCALE
DRP.ES_QUALIFIER
DRP.ES_QUAL_MASK
DRP.ES_RDATA
DRP.ES_SAMPLE_COUNT
DRP.ES_SDATA
DRP.ES_SDATA_MASK
DRP.ES_UT_SIGN
DRP.ES_VERT_OFFSET
DRP.FTS_DESKEW_SEQ_ENABLE
DRP.FTS_LANE_DESKEW_CFG
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
7
17C
100
100
100
F
100
100
100
100
F
0
0
0
0
13
0F
1
00
11C
100
100
100
F
100
100
100
100
F
0
0
BC07DC
10
0
00001E
01C0
10
0
0
0
000A01
00
0
0
0000
1
000
000
00
00000000000000000000
00000000000000000000
00000000000000000000
0000
00000000000000000000
00000000000000000000
0
000
F
F
60
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DRP.FTS_LANE_DESKEW_EN
DRP.GEARBOX_MODE
DRP.OUTREFCLK_SEL_INV
DRP.PCS_PCIE_EN
DRP.PCS_RSVD_ATTR
DRP.PD_TRANS_TIME_FROM_P2
DRP.PD_TRANS_TIME_NONE_P2
DRP.PD_TRANS_TIME_TO_P2
DRP.PMA_RSV
DRP.PMA_RSV2
DRP.PMA_RSV2_BIT4
DRP.PMA_RSV3
DRP.PMA_RSV4
DRP.RXBUFRESET_TIME
DRP.RXBUF_ADDR_MODE
DRP.RXBUF_EIDLE_HI_CNT
DRP.RXBUF_EIDLE_LO_CNT
DRP.RXBUF_EN
DRP.RXBUF_RESET_ON_CB_CHANGE
DRP.RXBUF_RESET_ON_COMMAALIGN
DRP.RXBUF_RESET_ON_EIDLE
DRP.RXBUF_RESET_ON_RATE_CHANGE
DRP.RXBUF_THRESH_OVFLW
DRP.RXBUF_THRESH_OVRD
DRP.RXBUF_THRESH_UNDFLW
DRP.RXCDRFREQRESET_TIME
DRP.RXCDRPHRESET_TIME
DRP.RXCDR_CFG
DRP.RXCDR_FR_RESET_ON_EIDLE
DRP.RXCDR_HOLD_DURING_EIDLE
DRP.RXCDR_LOCK_CFG
DRP.RXCDR_PH_RESET_ON_EIDLE
DRP.RXDFELPMRESET_TIME
DRP.RXDLY_CFG
DRP.RXDLY_LCFG
DRP.RXDLY_TAP_CFG
DRP.RXGEARBOX_EN
DRP.RXISCANRESET_TIME
DRP.RXLPM_HF_CFG
DRP.RXLPM_LF_CFG
DRP.RXOOB_CFG
DRP.RXOUT_DIV
DRP.RXPCSRESET_TIME
DRP.RXPHDLY_CFG
DRP.RXPH_CFG
DRP.RXPH_MONITOR_SEL
DRP.RXPMARESET_TIME
DRP.RXPRBS_ERR_LOOPBACK
DRP.RXSLIDE_AUTO_WAIT
DRP.RXSLIDE_MODE
DRP.RX_BIAS_CFG
DRP.RX_BUFFER_CFG
DRP.RX_CLK25_DIV
DRP.RX_CLKMUX_PD
DRP.RX_CM_SEL
DRP.RX_CM_TRIM
DRP.RX_DATA_WIDTH
DRP.RX_DDI_SEL
DRP.RX_DEBUG_CFG
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
0
0
3
0
000000000000
03C
3C
64
001E7080
2070
1
0
00000000
01
1
8
0
1
1
0
0
1
3D
0
04
01
01
0B800023FF10200020
0
0
15
0
0F
001F
030
0000
0
01
00F0
00F0
06
0
01
084020
000000
00
03
0
7
0
004
00
04
1
3
4
5
00
000
61
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DRP.RX_DEFER_RESET_BUF_EN
DRP.RX_DFE_CTLE_STAGE1
DRP.RX_DFE_CTLE_STAGE2
DRP.RX_DFE_CTLE_STAGE3
DRP.RX_DFE_GAIN_CFG
DRP.RX_DFE_H2_CFG
DRP.RX_DFE_H3_CFG
DRP.RX_DFE_H4_CFG
DRP.RX_DFE_H5_CFG
DRP.RX_DFE_KL_CFG
DRP.RX_DFE_KL_CFG2
DRP.RX_DFE_LPM_CFG
DRP.RX_DFE_LPM_HOLD_DURING_EIDLE
DRP.RX_DFE_UT_CFG
DRP.RX_DFE_VP_CFG
DRP.RX_DFE_XYD_CFG
DRP.RX_DISPERR_SEQ_MATCH
DRP.RX_INT_DATAWIDTH
DRP.RX_OS_CFG
DRP.RX_SIG_VALID_DLY
DRP.RX_XCLK_SEL
DRP.SAS_MAX_COM
DRP.SAS_MIN_COM
DRP.SATA_BURST_SEQ_LEN
DRP.SATA_BURST_VAL
DRP.SATA_CPLL_CFG
DRP.SATA_EIDLE_VAL
DRP.SATA_MAX_BURST
DRP.SATA_MAX_INIT
DRP.SATA_MAX_WAKE
DRP.SATA_MIN_BURST
DRP.SATA_MIN_INIT
DRP.SATA_MIN_WAKE
DRP.SHOW_REALIGN_COMMA
DRP.TERM_RCAL_CFG
DRP.TERM_RCAL_OVRD
DRP.TRANS_TIME_RATE
DRP.TST_RSV
DRP.TXBUF_EN
DRP.TXBUF_RESET_ON_RATE_CHANGE
DRP.TXDLY_CFG
DRP.TXDLY_LCFG
DRP.TXDLY_TAP_CFG
DRP.TXGEARBOX_EN
DRP.TXOUT_DIV
DRP.TXPCSRESET_TIME
DRP.TXPHDLY_CFG
DRP.TXPH_CFG
DRP.TXPH_MONITOR_SEL
DRP.TXPMARESET_TIME
DRP.TX_CLK25_DIV
DRP.TX_CLKMUX_PD
DRP.TX_DATA_WIDTH
DRP.TX_DEEMPH0
DRP.TX_DEEMPH1
DRP.TX_DRIVE_MODE
DRP.TX_EIDLE_ASSERT_DELAY
DRP.TX_EIDLE_DEASSERT_DELAY
DRP.TX_INT_DATAWIDTH
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
1
8
3
0
020FEA
000
040
0F0
0E0
00FE
3010D90C
0954
0
11E00
03F03
0000
1
1
0080
09
0
40
24
F
4
0
4
08
15
07
04
0C
04
1
10
0
0E
00000000
1
0
001F
030
0000
0
0
01
084020
0780
00
01
04
1
5
00
00
00
6
4
1
62
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DRP.TX_LOOPBACK_DRIVE_HIZ
DRP.TX_MAINCURSOR_SEL
DRP.TX_MARGIN_FULL_0
DRP.TX_MARGIN_FULL_1
DRP.TX_MARGIN_FULL_2
DRP.TX_MARGIN_FULL_3
DRP.TX_MARGIN_FULL_4
DRP.TX_MARGIN_LOW_0
DRP.TX_MARGIN_LOW_1
DRP.TX_MARGIN_LOW_2
DRP.TX_MARGIN_LOW_3
DRP.TX_MARGIN_LOW_4
DRP.TX_PREDRIVER_MODE
DRP.TX_QPI_STATUS_EN
DRP.TX_RXDETECT_CFG
DRP.TX_RXDETECT_REF
DRP.TX_XCLK_SEL
DRP.UCODEER_CLR
ES_HORZ_MIN_MAX
GT_TYPE
LINE_RATE
LOGIC.DEBUG_CLOCKS
LOGIC.ERRBIT_COUNT
LOGIC.ERR_INJECT_CTRL
LOGIC.FRAME_LEN
LOGIC.GT_SOURCES_SYSCLK
LOGIC.IDLE_DETECTED
LOGIC.IFG_LEN
LOGIC.LINK
LOGIC.MAX_LINERATE
LOGIC.MAX_REFCLK_FREQ
LOGIC.MGT_COORDINATE
LOGIC.MGT_ERRCNT_RESET_CTRL
LOGIC.MGT_ERRCNT_RESET_STAT
LOGIC.MGT_NUMBER
LOGIC.MGT_RESET_CTRL
LOGIC.MGT_RESET_STAT
LOGIC.PROTOCOL_ENUM
LOGIC.RXPAT_ID
LOGIC.RXRECCLK_FREQ_CNT
LOGIC.RXRECCLK_FREQ_TUNE
LOGIC.RXUSRCLK2_FREQ_CNT
LOGIC.RXUSRCLK2_FREQ_TUNE
LOGIC.RXUSRCLK_FREQ_CNT
LOGIC.RXUSRCLK_FREQ_TUNE
LOGIC.RXWORD_COUNT
LOGIC.RX_DCM_LOCK
LOGIC.RX_DCM_RESET_CTRL
LOGIC.RX_DCM_RESET_STAT
LOGIC.RX_FRAMED
LOGIC.SILICON_VERSION
LOGIC.TIMER
LOGIC.TXOUTCLK_FREQ_CNT
LOGIC.TXOUTCLK_FREQ_TUNE
LOGIC.TXPAT_ID
LOGIC.TXUSRCLK2_FREQ_CNT
LOGIC.TXUSRCLK2_FREQ_TUNE
LOGIC.TXUSRCLK_FREQ_CNT
LOGIC.TXUSRCLK_FREQ_TUNE
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
0
0
4E
49
45
42
40
46
44
42
40
40
0
0
1832
4
0
0
32
7 Series GTX
0.000
0
000000000000
0
0000
0
0
00
0
0001DCD65000
07735940
0008
0
0
0075
0
0
0000
1
0000
4000
0000
4000
0000
4000
000000000000
1
0
0
0
0300
009736E7B9BC
0000
4000
1
0000
4000
0000
4000
63
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
LOGIC.TX_DCM_LOCK
string false
true
1
LOGIC.TX_DCM_RESET_CTRL
string false
true
0
LOGIC.TX_DCM_RESET_STAT
string false
true
1
LOGIC.TX_FRAMED
string false
true
0
LOOPBACK
enum
false
true
None
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/MGT_X0Y8
PARENT
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT
PLL_STATUS
string false
true
LOCKED
PORT.CFGRESET
string false
true
0
PORT.CLKRSVD
string false
true
0
PORT.CPLLFBCLKLOST
string false
true
0
PORT.CPLLLOCK
string false
true
1
PORT.CPLLLOCKDETCLK
string false
true
0
PORT.CPLLLOCKEN
string false
true
1
PORT.CPLLPD
string false
true
0
PORT.CPLLREFCLKLOST
string false
true
0
PORT.CPLLREFCLKSEL
string false
true
1
PORT.CPLLRESET
string false
true
0
PORT.DMONITOROUT
string false
true
1F
PORT.EYESCANDATAERROR
string false
true
0
PORT.EYESCANMODE
string false
true
0
PORT.EYESCANRESET
string false
true
0
PORT.EYESCANTRIGGER
string false
true
0
PORT.GTREFCLKMONITOR
string false
true
1
PORT.GTRESETSEL
string false
true
0
PORT.GTRSVD
string false
true
0000
PORT.GTRXRESET
string false
true
0
PORT.GTTXRESET
string false
true
0
PORT.LOOPBACK
string false
true
0
PORT.PCSRSVDIN
string false
true
0000
PORT.PCSRSVDIN2
string false
true
00
PORT.PCSRSVDOUT
string false
true
01F3
PORT.PHYSTATUS
string false
true
1
PORT.PMARSVDIN
string false
true
00
PORT.PMARSVDIN2
string false
true
00
PORT.RESETOVRD
string false
true
0
PORT.RX8B10BEN
string false
true
0
PORT.RXBUFRESET
string false
true
0
PORT.RXBUFSTATUS
string false
true
0
PORT.RXBYTEISALIGNED
string false
true
0
PORT.RXBYTEREALIGN
string false
true
0
PORT.RXCDRFREQRESET
string false
true
0
PORT.RXCDRHOLD
string false
true
0
PORT.RXCDRLOCK
string false
true
0
PORT.RXCDROVRDEN
string false
true
0
PORT.RXCDRRESET
string false
true
0
PORT.RXCDRRESETRSV
string false
true
0
PORT.RXCHANBONDSEQ
string false
true
0
PORT.RXCHANISALIGNED
string false
true
0
PORT.RXCHANREALIGN
string false
true
0
PORT.RXCHARISCOMMA
string false
true
00
PORT.RXCHARISK
string false
true
00
PORT.RXCHBONDEN
string false
true
0
PORT.RXCHBONDI
string false
true
10
PORT.RXCHBONDLEVEL
string false
true
0
PORT.RXCHBONDMASTER
string false
true
0
PORT.RXCHBONDO
string false
true
00
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
64
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.RXCHBONDSLAVE
PORT.RXCLKCORCNT
PORT.RXCOMINITDET
PORT.RXCOMMADET
PORT.RXCOMMADETEN
PORT.RXCOMSASDET
PORT.RXCOMWAKEDET
PORT.RXDATAVALID
PORT.RXDDIEN
PORT.RXDFEAGCHOLD
PORT.RXDFEAGCOVRDEN
PORT.RXDFECM1EN
PORT.RXDFELFHOLD
PORT.RXDFELFOVRDEN
PORT.RXDFELPMRESET
PORT.RXDFETAP2HOLD
PORT.RXDFETAP2OVRDEN
PORT.RXDFETAP3HOLD
PORT.RXDFETAP3OVRDEN
PORT.RXDFETAP4HOLD
PORT.RXDFETAP4OVRDEN
PORT.RXDFETAP5HOLD
PORT.RXDFETAP5OVRDEN
PORT.RXDFEUTHOLD
PORT.RXDFEUTOVRDEN
PORT.RXDFEVPHOLD
PORT.RXDFEVPOVRDEN
PORT.RXDFEVSEN
PORT.RXDFEXYDEN
PORT.RXDFEXYDHOLD
PORT.RXDFEXYDOVRDEN
PORT.RXDISPERR
PORT.RXDLYBYPASS
PORT.RXDLYEN
PORT.RXDLYOVRDEN
PORT.RXDLYSRESET
PORT.RXDLYSRESETDONE
PORT.RXELECIDLE
PORT.RXELECIDLEMODE
PORT.RXGEARBOXSLIP
PORT.RXHEADER
PORT.RXHEADERVALID
PORT.RXLPMEN
PORT.RXLPMHFHOLD
PORT.RXLPMHFOVRDEN
PORT.RXLPMLFHOLD
PORT.RXLPMLFKLOVRDEN
PORT.RXMCOMMAALIGNEN
PORT.RXMONITOROUT
PORT.RXMONITORSEL
PORT.RXNOTINTABLE
PORT.RXOOBRESET
PORT.RXOSHOLD
PORT.RXOSOVRDEN
PORT.RXOUTCLKFABRIC
PORT.RXOUTCLKPCS
PORT.RXOUTCLKSEL
PORT.RXPCOMMAALIGNEN
PORT.RXPCSRESET
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
00
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
7F
0
FF
0
0
0
0
0
1
0
0
65
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.RXPD
PORT.RXPHALIGN
PORT.RXPHALIGNDONE
PORT.RXPHALIGNEN
PORT.RXPHDLYPD
PORT.RXPHDLYRESET
PORT.RXPHMONITOR
PORT.RXPHOVRDEN
PORT.RXPHSLIPMONITOR
PORT.RXPMARESET
PORT.RXPOLARITY
PORT.RXPRBSCNTRESET
PORT.RXPRBSERR
PORT.RXPRBSSEL
PORT.RXQPIEN
PORT.RXQPISENN
PORT.RXQPISENP
PORT.RXRATE
PORT.RXRATEDONE
PORT.RXRESETDONE
PORT.RXSLIDE
PORT.RXSTARTOFSEQ
PORT.RXSTATUS
PORT.RXSYSCLKSEL
PORT.RXUSERRDY
PORT.RXVALID
PORT.SETERRSTATUS
PORT.TSTIN
PORT.TSTOUT
PORT.TX8B10BBYPASS
PORT.TX8B10BEN
PORT.TXBUFDIFFCTRL
PORT.TXBUFSTATUS
PORT.TXCHARDISPMODE
PORT.TXCHARDISPVAL
PORT.TXCHARISK
PORT.TXCOMFINISH
PORT.TXCOMINIT
PORT.TXCOMSAS
PORT.TXCOMWAKE
PORT.TXDEEMPH
PORT.TXDETECTRX
PORT.TXDIFFCTRL
PORT.TXDIFFPD
PORT.TXDLYBYPASS
PORT.TXDLYEN
PORT.TXDLYHOLD
PORT.TXDLYOVRDEN
PORT.TXDLYSRESET
PORT.TXDLYSRESETDONE
PORT.TXDLYUPDOWN
PORT.TXELECIDLE
PORT.TXGEARBOXREADY
PORT.TXHEADER
PORT.TXINHIBIT
PORT.TXMAINCURSOR
PORT.TXMARGIN
PORT.TXOUTCLKFABRIC
PORT.TXOUTCLKPCS
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
0
0
0
0
0
0
00
0
04
0
0
0
0
0
0
0
0
0
0
0
0
0
0
3
1
0
0
FFFFF
000
FF
0
4
0
00
00
00
0
0
0
0
0
0
C
0
1
0
0
0
0
0
0
0
0
0
0
00
0
1
0
66
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.TXOUTCLKSEL
PORT.TXPCSRESET
PORT.TXPD
PORT.TXPDELECIDLEMODE
PORT.TXPHALIGN
PORT.TXPHALIGNDONE
PORT.TXPHALIGNEN
PORT.TXPHDLYPD
PORT.TXPHDLYRESET
PORT.TXPHDLYTSTCLK
PORT.TXPHINIT
PORT.TXPHINITDONE
PORT.TXPHOVRDEN
PORT.TXPISOPD
PORT.TXPMARESET
PORT.TXPOLARITY
PORT.TXPOSTCURSOR
PORT.TXPOSTCURSORINV
PORT.TXPRBSFORCEERR
PORT.TXPRBSSEL
PORT.TXPRECURSOR
PORT.TXPRECURSORINV
PORT.TXQPIBIASEN
PORT.TXQPISENN
PORT.TXQPISENP
PORT.TXQPISTRONGPDOWN
PORT.TXQPIWEAKPUP
PORT.TXRATE
PORT.TXRATEDONE
PORT.TXRESETDONE
PORT.TXSEQUENCE
PORT.TXSTARTSEQ
PORT.TXSWING
PORT.TXSYSCLKSEL
PORT.TXUSERRDY
RXDFEENABLED
RXOUTCLKSEL
RXOUT_DIV
RXPLL
RXRATE
RXTERM
RXTERMMODE
RXUSRCLK2_FREQ
RXUSRCLK_FREQ
RX_BER
RX_DATA_WIDTH
RX_DFE_CTLE
RX_INTERNAL_DATAPATH
RX_PATTERN
RX_RECEIVED_BIT_COUNT
STATUS
SYSCLK_FREQ
TXDIFFSWING
TXOUTCLKSEL
TXOUT_DIV
TXPLL
TXPOST
TXPRE
TXRATE
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
enum
enum
enum
enum
enum
enum
enum
string
string
string
enum
enum
enum
enum
string
string
string
enum
enum
enum
enum
enum
enum
enum
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
2
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
03
0
0
0
07
0
0
0
0
0
0
0
0
0
00
0
0
3
1
1
RXOUTCLKPCS
1
QPLL
Use RX_OUT_DIV
900 mV
Programmable
0.048828
0.048828
inf
40
4-byte
PRBS 7-bit
0
NO LINK
100.000000
1.018 V (1100)
TXOUTCLKPMA
1
QPLL
0.68 dB (00011)
1.67 dB (00111)
Use TXOUT_DIV
67
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
TXUSRCLK2_FREQ
TXUSRCLK_FREQ
TX_DATA_WIDTH
TX_INTERNAL_DATAPATH
TX_PATTERN
string
string
enum
enum
enum
false
false
false
false
false
true
true
true
true
true
0.048828
0.048828
40
4-byte
PRBS 7-bit
hw_sio_gt オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sio_gts] 0]
HW_SIO_GTGROUP
説明 GT グループはハー ド ウ ェ ア デバ イ ス 上の GT IO バ ン ク に関連 し てい る ので、 使用可能な GT ピ ンお よ びバ ン ク は
タ ーゲ ッ ト のザ イ リ ン ク ス FPGA に よ っ て決ま り ます。 た と えば、 Kintex-7 XC7K325 パーツには 4 つのグループがあ
り 、 それぞれに 4 つの差動 GT ピ ンのペアが含まれます。 各 GT ピ ンには、 独自の レ シーバー (hw_sio_rx) と ト ラ ン ス
ミ ッ タ ー (hw_sio_tx) が含まれ ます。 GT グループには、 区画ご と に共有 PLL ( ク ワ ッ ド PLL) も 1 つ含ま れます。 GT
グループは IBERT デバ ッ グ コ アで定義 さ れてお り 、 IBERT を RTL デザ イ ンに追加す る と き に多数の設定を使用 し て
カ ス タ マ イ ズで き ます。詳細は、『LogiCORE IP Integrated Bit Error Ratio Tester (IBERT) for 7 Series GTX Transceivers v3.0
製品ガ イ ド 』 (PG132) を参照 し て く だ さ い。
関連オブ ジ ェ ク ト GT グ ル ー プ は、 hw_device、 hw_sio_ibert、 hw_sio_gt、 hw_sio_common、 hw_sio_pll、 hw_sio_tx、 hw_sio_rx、 お よ び
hw_sio_link オブジ ェ ク ト に接続 さ れます。
こ れ ら のグループに接続 さ れた GT オブジ ェ ク ト は、 次の よ う に取得で き ます。
get_hw_sio_gtgroups -of [get_hw_sio_gts *MGT_X0Y9]
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、hw_sio_gtgroup オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と
がで き ま す。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を 参照 し て く だ さ い。 次は
hw_sio_gtgroup オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例です。
プ ロ パテ ィ
タ イプ
読み出 し 専用 表示可能 値
CLASS
string true
true
hw_sio_gtgroup
DISPLAY_NAME string true
true
Quad_117
GT_TYPE
string true
true
7 Series GTX
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117
PARENT
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT
特定の hw_sio_gtgroup のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sio_gtgroups] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
68
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_SIO_IBERT
説明 カ ス タ マ イ ズ可能なザ イ リ ン ク ス FPGA 用の LogiCORE™ IP Integrated Bit Error Ratio Tester (IBERT) コ アは、ギガ ビ ッ
ト ト ラ ン シーバー (GT) を評価お よ び監視す る ために設計 さ れてい ます。 IBERT コ アは イ ン シ ス テ ム シ リ アル I/O の
検証お よ びデバ ッ グ を イ ネーブルに し 、 FPGA ベース シ ス テ ムの高速シ リ アル I/O リ ン ク を計測お よ び最適化で き る
よ う に し ます。 詳細は、 『LogiCORE IP Integrated Bit Error Ratio Tester (IBERT) for 7 Series GTX Transceivers v3.0 製品ガ
イ ド 』 (PG132) を参照 し て く だ さ い。
IBERT デバ ッ グ コ ア を使用す る と 、 次の よ う なデバ イ ス の主な GT 機能を設定お よ び制御で き ます。
•
TX プ リ エン フ ァ シ スお よ びポ ス ト エン フ ァ シ ス
•
TX 差動振幅
•
RX イ コ ラ イ ゼーシ ョ ン
•
判定帰還等化 (DFE)
•
位相 ロ ッ ク ループ (PLL) の分周設定
IBERT コ アは、 単純な ク ロ ッ ク や接続の問題か ら 複雑なマージ ン解析お よ びチ ャ ネル最適化の問題ま で、 さ ま ざ ま な
イ ン シ ス テ ム デバ ッ グお よ び検証の問題を解決する ために使用で き ます。
関連オブ ジ ェ ク ト 70 ペ ー ジ の 図 1-25 に 示す よ う に、 SIO IBERT デ バ ッ グ コ ア は、 hw_server、 hw_target、 hw_device、 hw_sio_gt、
hw_sio_common、 hw_sio_pll、 hw_sio_tx、 hw_sio_rx、 ま たは hw_sio_link オブジ ェ ク ト に接続 さ れます。
接続 さ れたオブジ ェ ク ト の IBERT デバ ッ グ コ アは、 次の よ う に取得で き ます。
get_hw_sio_iberts -of [get_hw_sio_plls *MGT_X0Y8/CPLL_0]
次を使用す る と 、 特定の IBERT コ アに接続 さ れたオブジ ェ ク ト も 取得で き ます。
get_hw_sio_commons -of [get_hw_sio_iberts]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
69
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
X-Ref Target - Figure 1-25
KZBFIJPHP
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
KZBVLRBVZHHS
KZBVLRBVFDQ
KZBYLR
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
KZBVLRBOLQN
REH
KZBVLRBJW
KZBVLRBSOO
KZBVLRBOLQNJURXS
KZBD[LBW[Q
KZBVLRBW[
KZBVLRBU[
KZBVLRBJWJURXS
図 1‐25 : hw_sio_ibert オブ ジ ェ ク ト プ ロパテ ィ report_property コ マ ン ド を使用す る と 、特定の hw_sio_ibert に割 り 当て ら れた実際のプ ロ パテ ィ を レ ポー ト す る こ と が
で き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。
次は hw_sio_ibert オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例です。
Property
Type
Read-only Visible Value
CLASS
string true
true
hw_sio_ibert
CORE_REFRESH_RATE_MS int
false
true
0
DISPLAY_NAME
string true
true
IBERT
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT
USER_REGISTER
int
true
true
1
特定の hw_sio_ibert のプ ロ パテ ィ を レ ポー ト す る には、次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま
たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sio_iberts] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
70
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_SIO_PLL
説明 ギガ ビ ッ ト ト ラ ン シーバー (GT) を含むザ イ リ ン ク ス デバ イ ス の場合、 シ リ アル ト ラ ン シーバー チ ャ ネルそれぞれ
に Channel PLL (CPLL) と い う リ ン グ PLL (位相 ロ ッ ク ループ) が含まれます。ザ イ リ ン ク ス UltraScale お よ び 7 シ リ ー
ズ FPGA では、 GTX の各区画に ク ワ ッ ド PLL (QPLL) と 呼ばれ る 追加の共有 PLL があ り ます。 こ の QPLL は、 高速、
高パフ ォーマ ン ス、 低消費電力のマルチ レーン アプ リ ケーシ ョ ン をサポー ト す る ための共有 LC PLL です。
関連オブ ジ ェ ク ト
hw_sio_pll オブジ ェ ク ト は、 hw_server、 hw_target、 hw_device、 hw_sio_ibert、 hw_sio_gt、 ま たは hw_sio_common に接
続 さ れます。
接続 さ れたオブジ ェ ク ト の PLL は次の よ う に取得で き ます。
get_hw_sio_plls -of [get_hw_sio_commons]
次を使用す る と 、 PLL に接続 さ れたオブジ ェ ク ト も 取得で き ます。
get_hw_sio_iberts -of [get_hw_sio_plls *MGT_X0Y8/CPLL_0]
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、 特定の hw_sio_pll に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と がで き ま
す。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。 次は、 QPLL タ
イ プの hw_sio_pll オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
Type
Read-only Visible Value
CLASS
string true
true
hw_sio_pll
DISPLAY_NAME
string true
true
COMMON_X0Y2/QPLL_0
DRP.QPLL_CFG
string false
true
06801C1
DRP.QPLL_CLKOUT_CFG
string false
true
0
DRP.QPLL_COARSE_FREQ_OVRD
string false
true
10
DRP.QPLL_COARSE_FREQ_OVRD_EN string false
true
0
DRP.QPLL_CP
string false
true
01F
DRP.QPLL_CP_MONITOR_EN
string false
true
0
DRP.QPLL_DMONITOR_SEL
string false
true
0
DRP.QPLL_FBDIV
string false
true
0E0
DRP.QPLL_FBDIV_MONITOR_EN
string false
true
1
DRP.QPLL_FBDIV_RATIO
string false
true
1
DRP.QPLL_INIT_CFG
string false
true
000028
DRP.QPLL_LOCK_CFG
string false
true
21E8
DRP.QPLL_LOWER_BAND
string false
true
1
DRP.QPLL_LPF
string false
true
F
DRP.QPLL_REFCLK_DIV
string false
true
10
LOGIC.QPLLRESET_CTRL
string false
true
0
LOGIC.QPLLRESET_STAT
string false
true
0
LOGIC.QPLL_LOCK
string false
true
0
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/COMMON_X0Y2/QPLL_0
PARENT
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/COMMON_X0Y2
PORT.QPLLDMONITOR
string false
true
EC
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
71
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.QPLLFBCLKLOST
PORT.QPLLLOCK
PORT.QPLLLOCKEN
PORT.QPLLOUTRESET
PORT.QPLLPD
PORT.QPLLREFCLKLOST
PORT.QPLLREFCLKSEL
PORT.QPLLRESET
PORT.QPLLRSVD1
PORT.QPLLRSVD2
QPLLREFCLKSEL
QPLL_N_DIVIDER
QPLL_REFCLK_DIV
STATUS
string
string
string
string
string
string
string
string
string
string
enum
enum
enum
string
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
0
1
1
0
0
0
1
0
0000
1F
GTREFCLK0
64
1
LOCKED
hw_sio_pll オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト する には、次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sio_gts] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
72
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_SIO_RX
説明 ハー ド ウ ェ ア デバ イ ス上では、 各 GT に PCS お よ び PMA で構成 さ れ る 独立 し た レ シーバー (hw_sio_rx) が含ま れま
す。 高速シ リ アル デー タ は、 ボー ド 上の ト レー ス か ら GTX/GTH ト ラ ン シーバー RX の PMA、 PCS、 そ し て最後に
FPGA ロ ジ ッ ク に送信 さ れます。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-26
KZBELWVWUHDP
KZBVLRBVZHHS
KZBVLRBVFDQ
KZBD[L
KZBV\VPRQ
KZBVLRBLEHUW
KZBVLRBOLQN
KZBVLRBJW
KZBVLRBSOO
KZBVLRBOLQNJURXS
ZBD[LBW[Q
KZBVLRBW[
KZBVLRBU[
KZBVLRBJWJURXS
図 1‐26 : ハー ド ウ ェ ア SIO RX お よび TX オブ ジ ェ ク ト hw_sio_rx オブジ ェ ク ト は、 hw_server、 hw_target、 hw_device、 hw_sio_ibert、 hw_sio_gt、 ま たは hw_sio_link に接続 さ
れます。
接続 さ れたオブジ ェ ク ト の hw_sio_rx オブジ ェ ク ト は、 次の よ う に取得で き ます。
get_hw_sio_rxs -of [get_hw_sio_gts]
次を使用す る と 、 特定の hw_sio_rx に接続 さ れたオブジ ェ ク ト も 取得で き ます。
get_hw_sio_links -of [get_hw_sio_rxs]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
73
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、特定の hw_sio_rx オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ
と がで き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。 次は、
hw_sio_rx オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
CLASS
DISPLAY_NAME
DRP.ES_CONTROL
DRP.ES_CONTROL_STATUS
DRP.ES_ERRDET_EN
DRP.ES_ERROR_COUNT
DRP.ES_EYE_SCAN_EN
DRP.ES_HORZ_OFFSET
DRP.ES_PMA_CFG
DRP.ES_PRESCALE
DRP.ES_QUALIFIER
DRP.ES_QUAL_MASK
DRP.ES_RDATA
DRP.ES_SAMPLE_COUNT
DRP.ES_SDATA
DRP.ES_SDATA_MASK
DRP.ES_UT_SIGN
DRP.ES_VERT_OFFSET
DRP.FTS_DESKEW_SEQ_ENABLE
DRP.FTS_LANE_DESKEW_CFG
DRP.FTS_LANE_DESKEW_EN
DRP.RXBUFRESET_TIME
DRP.RXBUF_ADDR_MODE
DRP.RXBUF_EIDLE_HI_CNT
DRP.RXBUF_EIDLE_LO_CNT
DRP.RXBUF_EN
DRP.RXBUF_RESET_ON_CB_CHANGE
DRP.RXBUF_RESET_ON_COMMAALIGN
DRP.RXBUF_RESET_ON_EIDLE
DRP.RXBUF_RESET_ON_RATE_CHANGE
DRP.RXBUF_THRESH_OVFLW
DRP.RXBUF_THRESH_OVRD
DRP.RXBUF_THRESH_UNDFLW
DRP.RXCDRFREQRESET_TIME
DRP.RXCDRPHRESET_TIME
DRP.RXCDR_CFG
DRP.RXCDR_FR_RESET_ON_EIDLE
DRP.RXCDR_HOLD_DURING_EIDLE
DRP.RXCDR_LOCK_CFG
DRP.RXCDR_PH_RESET_ON_EIDLE
DRP.RXDFELPMRESET_TIME
DRP.RXDLY_CFG
DRP.RXDLY_LCFG
DRP.RXDLY_TAP_CFG
DRP.RXGEARBOX_EN
DRP.RXISCANRESET_TIME
DRP.RXLPM_HF_CFG
DRP.RXLPM_LF_CFG
DRP.RXOOB_CFG
DRP.RXOUT_DIV
DRP.RXPCSRESET_TIME
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
Type
Read-only
string true
string true
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
string false
japan.xilinx.com
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
hw_sio_rx
MGT_X0Y8/RX
00
0
0
0000
1
000
000
00
00000000000000000000
00000000000000000000
00000000000000000000
0000
00000000000000000000
00000000000000000000
0
000
F
F
0
01
1
8
0
1
1
0
0
1
3D
0
04
01
01
0B800023FF10200020
0
0
15
0
0F
001F
030
0000
0
01
00F0
00F0
06
0
01
74
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DRP.RXPHDLY_CFG
DRP.RXPH_CFG
DRP.RXPH_MONITOR_SEL
DRP.RXPMARESET_TIME
DRP.RXPRBS_ERR_LOOPBACK
DRP.RXSLIDE_AUTO_WAIT
DRP.RXSLIDE_MODE
DRP.RX_BIAS_CFG
DRP.RX_BUFFER_CFG
DRP.RX_CLK25_DIV
DRP.RX_CLKMUX_PD
DRP.RX_CM_SEL
DRP.RX_CM_TRIM
DRP.RX_DATA_WIDTH
DRP.RX_DDI_SEL
DRP.RX_DEBUG_CFG
DRP.RX_DEFER_RESET_BUF_EN
DRP.RX_DFE_CTLE_STAGE1
DRP.RX_DFE_CTLE_STAGE2
DRP.RX_DFE_CTLE_STAGE3
DRP.RX_DFE_GAIN_CFG
DRP.RX_DFE_H2_CFG
DRP.RX_DFE_H3_CFG
DRP.RX_DFE_H4_CFG
DRP.RX_DFE_H5_CFG
DRP.RX_DFE_KL_CFG2
DRP.RX_DFE_KL_CFG
DRP.RX_DFE_LPM_CFG
DRP.RX_DFE_LPM_HOLD_DURING_EIDLE
DRP.RX_DFE_UT_CFG
DRP.RX_DFE_VP_CFG
DRP.RX_DFE_XYD_CFG
DRP.RX_DISPERR_SEQ_MATCH
DRP.RX_INT_DATAWIDTH
DRP.RX_OS_CFG
DRP.RX_SIG_VALID_DLY
DRP.RX_XCLK_SEL
DRP.TXBUF_RESET_ON_RATE_CHANGE
DRP.TXPCSRESET_TIME
DRP.TXPMARESET_TIME
DRP.TX_LOOPBACK_DRIVE_HIZ
DRP.TX_RXDETECT_CFG
DRP.TX_RXDETECT_REF
ES_HORZ_MIN_MAX
LINE_RATE
LOGIC.ERRBIT_COUNT
LOGIC.GT_SOURCES_SYSCLK
LOGIC.LINK
LOGIC.MGT_ERRCNT_RESET_CTRL
LOGIC.MGT_ERRCNT_RESET_STAT
LOGIC.MGT_RESET_CTRL
LOGIC.MGT_RESET_STAT
LOGIC.RXPAT_ID
LOGIC.RXRECCLK_FREQ_CNT
LOGIC.RXRECCLK_FREQ_TUNE
LOGIC.RXUSRCLK2_FREQ_CNT
LOGIC.RXUSRCLK2_FREQ_TUNE
LOGIC.RXUSRCLK_FREQ_CNT
LOGIC.RXUSRCLK_FREQ_TUNE
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
084020
000000
00
03
0
7
0
004
00
04
1
3
4
5
00
000
1
8
3
0
020FEA
000
040
0F0
0E0
3010D90C
00FE
0954
0
11E00
03F03
0000
1
1
0080
09
0
0
01
01
0
1832
4
32
0.000
000000000000
0
0
0
0
0
0
1
0000
4000
0000
4000
0000
4000
75
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
LOGIC.RXWORD_COUNT
string false
true
000000000000
LOGIC.RX_DCM_LOCK
string false
true
1
LOGIC.RX_DCM_RESET_CTRL
string false
true
0
LOGIC.RX_DCM_RESET_STAT
string false
true
0
LOGIC.RX_FRAMED
string false
true
0
LOGIC.TX_DCM_RESET_CTRL
string false
true
0
LOGIC.TX_DCM_RESET_STAT
string false
true
1
LOOPBACK
enum
false
true
Near-End PCS
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/MGT_X0Y8/RX
PARENT
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/MGT_X0Y8
PORT.CFGRESET
string false
true
0
PORT.CPLLRESET
string false
true
0
PORT.EYESCANDATAERROR
string false
true
0
PORT.EYESCANMODE
string false
true
0
PORT.EYESCANRESET
string false
true
0
PORT.EYESCANTRIGGER
string false
true
0
PORT.GTRESETSEL
string false
true
0
PORT.GTRXRESET
string false
true
0
PORT.GTTXRESET
string false
true
0
PORT.LOOPBACK
string false
true
1
PORT.RESETOVRD
string false
true
0
PORT.RX8B10BEN
string false
true
0
PORT.RXBUFRESET
string false
true
0
PORT.RXBUFSTATUS
string false
true
0
PORT.RXBYTEISALIGNED
string false
true
0
PORT.RXBYTEREALIGN
string false
true
0
PORT.RXCDRFREQRESET
string false
true
0
PORT.RXCDRHOLD
string false
true
0
PORT.RXCDRLOCK
string false
true
0
PORT.RXCDROVRDEN
string false
true
0
PORT.RXCDRRESET
string false
true
0
PORT.RXCDRRESETRSV
string false
true
0
PORT.RXCHANBONDSEQ
string false
true
0
PORT.RXCHANISALIGNED
string false
true
0
PORT.RXCHANREALIGN
string false
true
0
PORT.RXCHARISCOMMA
string false
true
00
PORT.RXCHARISK
string false
true
00
PORT.RXCHBONDEN
string false
true
0
PORT.RXCHBONDI
string false
true
10
PORT.RXCHBONDLEVEL
string false
true
0
PORT.RXCHBONDMASTER
string false
true
0
PORT.RXCHBONDO
string false
true
00
PORT.RXCHBONDSLAVE
string false
true
0
PORT.RXCLKCORCNT
string false
true
0
PORT.RXCOMINITDET
string false
true
0
PORT.RXCOMMADET
string false
true
0
PORT.RXCOMMADETEN
string false
true
0
PORT.RXCOMSASDET
string false
true
0
PORT.RXCOMWAKEDET
string false
true
0
PORT.RXDATAVALID
string false
true
0
PORT.RXDDIEN
string false
true
0
PORT.RXDFEAGCHOLD
string false
true
0
PORT.RXDFEAGCOVRDEN
string false
true
0
PORT.RXDFECM1EN
string false
true
0
PORT.RXDFELFHOLD
string false
true
0
PORT.RXDFELFOVRDEN
string false
true
0
PORT.RXDFELPMRESET
string false
true
0
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
76
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.RXDFETAP2HOLD
PORT.RXDFETAP2OVRDEN
PORT.RXDFETAP3HOLD
PORT.RXDFETAP3OVRDEN
PORT.RXDFETAP4HOLD
PORT.RXDFETAP4OVRDEN
PORT.RXDFETAP5HOLD
PORT.RXDFETAP5OVRDEN
PORT.RXDFEUTHOLD
PORT.RXDFEUTOVRDEN
PORT.RXDFEVPHOLD
PORT.RXDFEVPOVRDEN
PORT.RXDFEVSEN
PORT.RXDFEXYDEN
PORT.RXDFEXYDHOLD
PORT.RXDFEXYDOVRDEN
PORT.RXDISPERR
PORT.RXDLYBYPASS
PORT.RXDLYEN
PORT.RXDLYOVRDEN
PORT.RXDLYSRESET
PORT.RXDLYSRESETDONE
PORT.RXELECIDLE
PORT.RXELECIDLEMODE
PORT.RXGEARBOXSLIP
PORT.RXHEADER
PORT.RXHEADERVALID
PORT.RXLPMEN
PORT.RXLPMHFHOLD
PORT.RXLPMHFOVRDEN
PORT.RXLPMLFHOLD
PORT.RXLPMLFKLOVRDEN
PORT.RXMCOMMAALIGNEN
PORT.RXMONITOROUT
PORT.RXMONITORSEL
PORT.RXNOTINTABLE
PORT.RXOOBRESET
PORT.RXOSHOLD
PORT.RXOSOVRDEN
PORT.RXOUTCLKFABRIC
PORT.RXOUTCLKPCS
PORT.RXOUTCLKSEL
PORT.RXPCOMMAALIGNEN
PORT.RXPCSRESET
PORT.RXPD
PORT.RXPHALIGN
PORT.RXPHALIGNDONE
PORT.RXPHALIGNEN
PORT.RXPHDLYPD
PORT.RXPHDLYRESET
PORT.RXPHMONITOR
PORT.RXPHOVRDEN
PORT.RXPHSLIPMONITOR
PORT.RXPMARESET
PORT.RXPOLARITY
PORT.RXPRBSCNTRESET
PORT.RXPRBSERR
PORT.RXPRBSSEL
PORT.RXQPIEN
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
japan.xilinx.com
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
00
1
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
7F
0
FF
0
0
0
1
0
1
0
0
0
0
0
0
0
0
00
0
04
0
0
0
0
0
0
77
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.RXQPISENN
string false
true
0
PORT.RXQPISENP
string false
true
0
PORT.RXRATE
string false
true
0
PORT.RXRATEDONE
string false
true
0
PORT.RXRESETDONE
string false
true
0
PORT.RXSLIDE
string false
true
0
PORT.RXSTARTOFSEQ
string false
true
0
PORT.RXSTATUS
string false
true
0
PORT.RXSYSCLKSEL
string false
true
3
PORT.RXUSERRDY
string false
true
1
PORT.RXVALID
string false
true
0
PORT.TXDETECTRX
string false
true
0
PORT.TXDLYSRESET
string false
true
0
PORT.TXDLYSRESETDONE
string false
true
0
PORT.TXPCSRESET
string false
true
0
PORT.TXPHDLYRESET
string false
true
0
PORT.TXPMARESET
string false
true
0
PORT.TXRESETDONE
string false
true
0
RXDFEENABLED
enum
false
true
1
RXOUTCLKSEL
enum
false
true
RXOUTCLKPCS
RXOUT_DIV
enum
false
true
1
RXPLL
enum
false
true
QPLL
RXRATE
enum
false
true
Use RX_OUT_DIV
RXTERM
enum
false
true
900 mV
RXTERMMODE
enum
false
true
Programmable
RXUSRCLK2_FREQ
string false
true
0.048828
RXUSRCLK_FREQ
string false
true
0.048828
RX_BER
string false
true
inf
RX_DATA_WIDTH
enum
false
true
40
RX_DFE_CTLE
enum
false
true
RX_INTERNAL_DATAPATH
enum
false
true
4-byte
RX_PATTERN
enum
false
true
PRBS 7-bit
RX_PLL
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/COMMON_X0Y2/QPLL_0
RX_RECEIVED_BIT_COUNT
string false
true
0
STATUS
string false
true
NO LINK
hw_sio_rx オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sio_rxs] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
78
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_SIO_TX
説明 ハー ド ウ ェ ア デバ イ ス上では、 各 GT に PCS お よ び PMA で構成 さ れ る 独立 し た ト ラ ン ス ミ ッ タ ー (hw_sio_tx) が含
まれます。 パ ラ レル デー タ は、 デバ イ ス ロ ジ ッ ク か ら FPGA TX イ ン タ ーフ ェ イ ス に送信 さ れ、 PCS お よ び PMA を
介 し て TX ド ラ イ バーか ら 高速シ リ アル デー タ と し て出力 さ れます。
関連オブ ジ ェ ク ト
73 ペー ジ の図 1-26 は、 hw_sio_tx オ ブ ジ ェ ク ト と そ の 他の ハー ド ウ ェ ア オ ブ ジ ェ ク ト の関係 を 示 し て い ま す。
hw_sio_tx オブジ ェ ク ト は、 hw_server、 hw_target、 hw_device、 hw_sio_ibert、 hw_sio_gt、 ま たは hw_sio_link に接続 さ
れます。
接続 さ れたオブジ ェ ク ト の hw_sio_tx オブジ ェ ク ト は、 次の よ う に取得で き ます。
get_hw_sio_txs -of [get_hw_sio_gts]
次を使用す る と 、 特定の hw_sio_tx に接続 さ れたオブジ ェ ク ト も 取得で き ます。
get_hw_sio_links -of [get_hw_sio_txs]
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、特定の hw_sio_tx オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ
と がで き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。 次は、
hw_sio_tx オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
CLASS
DISPLAY_NAME
DRP.TXBUF_EN
DRP.TXBUF_RESET_ON_RATE_CHANGE
DRP.TXDLY_CFG
DRP.TXDLY_LCFG
DRP.TXDLY_TAP_CFG
DRP.TXGEARBOX_EN
DRP.TXOUT_DIV
DRP.TXPCSRESET_TIME
DRP.TXPHDLY_CFG
DRP.TXPH_CFG
DRP.TXPH_MONITOR_SEL
DRP.TXPMARESET_TIME
DRP.TX_CLK25_DIV
DRP.TX_CLKMUX_PD
DRP.TX_DATA_WIDTH
DRP.TX_DEEMPH0
DRP.TX_DEEMPH1
DRP.TX_DRIVE_MODE
DRP.TX_EIDLE_ASSERT_DELAY
DRP.TX_EIDLE_DEASSERT_DELAY
DRP.TX_INT_DATAWIDTH
DRP.TX_LOOPBACK_DRIVE_HIZ
DRP.TX_MAINCURSOR_SEL
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
Type
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
string
Read-only
true
true
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
false
japan.xilinx.com
Visible
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
true
Value
hw_sio_tx
MGT_X0Y8/TX
1
0
001F
030
0000
0
0
01
084020
0780
00
01
04
1
5
00
00
00
6
4
1
0
0
79
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
DRP.TX_MARGIN_FULL_0
string false
true
4E
DRP.TX_MARGIN_FULL_1
string false
true
49
DRP.TX_MARGIN_FULL_2
string false
true
45
DRP.TX_MARGIN_FULL_3
string false
true
42
DRP.TX_MARGIN_FULL_4
string false
true
40
DRP.TX_MARGIN_LOW_0
string false
true
46
DRP.TX_MARGIN_LOW_1
string false
true
44
DRP.TX_MARGIN_LOW_2
string false
true
42
DRP.TX_MARGIN_LOW_3
string false
true
40
DRP.TX_MARGIN_LOW_4
string false
true
40
DRP.TX_PREDRIVER_MODE
string false
true
0
DRP.TX_QPI_STATUS_EN
string false
true
0
DRP.TX_RXDETECT_CFG
string false
true
1832
DRP.TX_RXDETECT_REF
string false
true
4
DRP.TX_XCLK_SEL
string false
true
0
LOGIC.ERR_INJECT_CTRL
string false
true
0
LOGIC.TXOUTCLK_FREQ_CNT
string false
true
0000
LOGIC.TXOUTCLK_FREQ_TUNE
string false
true
4000
LOGIC.TXPAT_ID
string false
true
1
LOGIC.TXUSRCLK2_FREQ_CNT
string false
true
0000
LOGIC.TXUSRCLK2_FREQ_TUNE
string false
true
4000
LOGIC.TXUSRCLK_FREQ_CNT
string false
true
0000
LOGIC.TXUSRCLK_FREQ_TUNE
string false
true
4000
LOGIC.TX_DCM_LOCK
string false
true
1
LOGIC.TX_DCM_RESET_CTRL
string false
true
0
LOGIC.TX_DCM_RESET_STAT
string false
true
1
LOGIC.TX_FRAMED
string false
true
0
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/MGT_X0Y8/TX
PARENT
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/MGT_X0Y8
PORT.GTTXRESET
string false
true
0
PORT.TX8B10BBYPASS
string false
true
FF
PORT.TX8B10BEN
string false
true
0
PORT.TXBUFDIFFCTRL
string false
true
4
PORT.TXBUFSTATUS
string false
true
0
PORT.TXCHARDISPMODE
string false
true
00
PORT.TXCHARDISPVAL
string false
true
00
PORT.TXCHARISK
string false
true
00
PORT.TXCOMFINISH
string false
true
0
PORT.TXCOMINIT
string false
true
0
PORT.TXCOMSAS
string false
true
0
PORT.TXCOMWAKE
string false
true
0
PORT.TXDEEMPH
string false
true
0
PORT.TXDETECTRX
string false
true
0
PORT.TXDIFFCTRL
string false
true
C
PORT.TXDIFFPD
string false
true
0
PORT.TXDLYBYPASS
string false
true
1
PORT.TXDLYEN
string false
true
0
PORT.TXDLYHOLD
string false
true
0
PORT.TXDLYOVRDEN
string false
true
0
PORT.TXDLYSRESET
string false
true
0
PORT.TXDLYSRESETDONE
string false
true
0
PORT.TXDLYUPDOWN
string false
true
0
PORT.TXELECIDLE
string false
true
0
PORT.TXGEARBOXREADY
string false
true
0
PORT.TXHEADER
string false
true
0
PORT.TXINHIBIT
string false
true
0
PORT.TXMAINCURSOR
string false
true
00
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
80
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
PORT.TXMARGIN
string false
true
0
PORT.TXOUTCLKFABRIC
string false
true
1
PORT.TXOUTCLKPCS
string false
true
0
PORT.TXOUTCLKSEL
string false
true
2
PORT.TXPCSRESET
string false
true
0
PORT.TXPD
string false
true
0
PORT.TXPDELECIDLEMODE
string false
true
0
PORT.TXPHALIGN
string false
true
0
PORT.TXPHALIGNDONE
string false
true
0
PORT.TXPHALIGNEN
string false
true
0
PORT.TXPHDLYPD
string false
true
0
PORT.TXPHDLYRESET
string false
true
0
PORT.TXPHDLYTSTCLK
string false
true
0
PORT.TXPHINIT
string false
true
0
PORT.TXPHINITDONE
string false
true
0
PORT.TXPHOVRDEN
string false
true
0
PORT.TXPISOPD
string false
true
0
PORT.TXPMARESET
string false
true
0
PORT.TXPOLARITY
string false
true
0
PORT.TXPOSTCURSOR
string false
true
03
PORT.TXPOSTCURSORINV
string false
true
0
PORT.TXPRBSFORCEERR
string false
true
0
PORT.TXPRBSSEL
string false
true
0
PORT.TXPRECURSOR
string false
true
07
PORT.TXPRECURSORINV
string false
true
0
PORT.TXQPIBIASEN
string false
true
0
PORT.TXQPISENN
string false
true
0
PORT.TXQPISENP
string false
true
0
PORT.TXQPISTRONGPDOWN
string false
true
0
PORT.TXQPIWEAKPUP
string false
true
0
PORT.TXRATE
string false
true
0
PORT.TXRATEDONE
string false
true
0
PORT.TXRESETDONE
string false
true
0
PORT.TXSEQUENCE
string false
true
00
PORT.TXSTARTSEQ
string false
true
0
PORT.TXSWING
string false
true
0
PORT.TXSYSCLKSEL
string false
true
3
PORT.TXUSERRDY
string false
true
1
TXDIFFSWING
enum
false
true
1.018 V (1100)
TXOUTCLKSEL
enum
false
true
TXOUTCLKPMA
TXOUT_DIV
enum
false
true
1
TXPLL
enum
false
true
QPLL
TXPOST
enum
false
true
0.68 dB (00011)
TXPRE
enum
false
true
1.67 dB (00111)
TXRATE
enum
false
true
Use TXOUT_DIV
TXUSRCLK2_FREQ
string false
true
0.048828
TXUSRCLK_FREQ
string false
true
0.048828
TX_DATA_WIDTH
enum
false
true
40
TX_INTERNAL_DATAPATH
enum
false
true
4-byte
TX_PATTERN
enum
false
true
PRBS 7-bit
TX_PLL
string true
true
localhost/xilinx_tcf/Digilent/210203327463A/0_1/IBERT/Quad_117/COMMON_X0Y2/QPLL_0
hw_sio_tx オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ
ルま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sio_txs] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
81
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
hw_sysmon
説明 シ ス テ ム モニ タ ー (hw_sysmon) は、 ザ イ リ ン ク ス デバ イ ス上の Analog-to-Digital Converter (ADC) 回路で、 温度お よ
び電圧な ど の動作状況を測定す る ために使用 さ れます。 hw_sysmon は、 オンチ ッ プ温度お よ び供給セ ンサーを使用 し
て物理的な環境を監視 し ます。 ADC は、 広範囲のアプ リ ケーシ ョ ンに高精度のアナ ロ グ イ ン タ ーフ ェ イ ス を提供 し
ます。 ADC は最大で 17 の外部アナ ロ グ入力チ ャ ネルにア ク セ ス で き ます。
hw_sysmon には、 デー タ レ ジ ス タ (hw_sysmon_reg オブジ ェ ク ト ) が含まれ、 温度お よ び電圧の現在の値が格納 さ れま
す。現在の hw_device での こ れ ら の レ ジ ス タ の値には、ハー ド ウ ェ ア サーバー と タ ーゲ ッ ト に接続 さ れ る 場合、Vivado
Design Suite のハー ド ウ ェ ア マネージ ャ ー機能を使用 し て ア ク セ ス で き ます。 hw_sysmon は、 Virtex-7 と UltraScale で
異な り ます。 XADC の専用レ ジ ス タ お よ びそれ ら の読み出 し 方法の詳細は、 『UltraScale アー ク テ ク チ ャ ク ロ ッ キ ン
グ リ ソ ース Advance 仕様ユーザー ガ イ ド 』 (UG580)[参照 8] ま たは『7 シ リ ーズ FPGA の XADC 12 ビ ッ ト 1MSPS デ ュ
アル アナ ロ グ-デジ タ ル コ ンバー タ ー ユーザー ガ イ ド 』 (UG480)[参照 4] を参照 し て く だ さ い。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-27
KZBVHUYHU
KZBD[L
KZBWDUJHW
KZBV\VPRQ
KZBGHYLFH
KZBLOD
KZBYLR
KZBV\VPRQBUHJ
KZBSUREH
KZBVLR
図 1‐27 : hw_sysmon オブ ジ ェ ク ト
hw_sysmon オブジ ェ ク ト は、 現在のhw_target お よ び hw_server にプ ロ グ ラ ム さ れた hw_device のハー ド ウ ェ ア マネー
ジ ャ ーに含まれます。 hw_device の hw_sysmon は次の よ う に取得で き ます。
get_hw_sysmons -of [get_hw_devices]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
82
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ま た、 hw_sysmon には複数の ス テー タ ス レ ジ ス タ (hw_sysmon_reg オブジ ェ ク ト ) が含まれ、 それぞれでデバ イ ス の動
作温度お よ び電源レールが監視 さ れます。 こ れ ら の レ ジ ス タ に格納 さ れた値は、次の よ う に hw_sysmon オブジ ェ ク ト
で レ ジ ス タ を読み出す と 戻す こ と がで き ます。
get_hw_sysmon_reg [get_hw_sysmons] 00
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、 hw_sysmon オブジ ェ ク ト に割 り 当て ら れた実際のプ ロ パテ ィ を レ ポー ト す る
こ と がで き ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。
hw_sysmon のプ ロ パテ ィ を レ ポー ト す る には、次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ルま たは Tcl
コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_sysmons] 0]
Property
Type
Read-only Visible
ADC_A_GAIN
hex
true
true
ADC_A_OFFSET
hex
true
true
ADC_B_GAIN
hex
true
true
ADC_B_OFFSET
hex
true
true
CLASS
string true
true
CONFIG_REG.ACQ
binary false
true
CONFIG_REG.ALM0
binary false
true
CONFIG_REG.ALM1
binary false
true
CONFIG_REG.ALM2
binary false
true
CONFIG_REG.ALM3
binary false
true
CONFIG_REG.ALM4
binary false
true
CONFIG_REG.ALM5
binary false
true
CONFIG_REG.ALM6
binary false
true
CONFIG_REG.AVG
binary false
true
CONFIG_REG.BU
binary false
true
CONFIG_REG.CAL0
binary false
true
CONFIG_REG.CAL1
binary false
true
CONFIG_REG.CAL2
binary false
true
CONFIG_REG.CAL3
binary false
true
CONFIG_REG.CAVG
binary false
true
CONFIG_REG.CD
binary false
true
CONFIG_REG.CH
binary false
true
CONFIG_REG.EC
binary false
true
CONFIG_REG.MUX
binary false
true
CONFIG_REG.OT
binary false
true
CONFIG_REG.PD
binary false
true
CONFIG_REG.SEQ
binary false
true
DESCRIPTION
string true
true
FLAG.ALM0
binary true
true
FLAG.ALM1
binary true
true
FLAG.ALM2
binary true
true
FLAG.ALM3
binary true
true
FLAG.ALM4
binary true
true
FLAG.ALM5
binary true
true
FLAG.ALM6
binary true
true
FLAG.JTGD
binary true
true
FLAG.JTGR
binary true
true
FLAG.OT
binary true
true
FLAG.REF
binary true
true
LOWER_TEMPERATURE
string false
true
LOWER_TEMPERATURE_SCALE enum
false
true
LOWER_VCCAUX
string false
true
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
Value
0000
007e
0000
ffbb
hw_sysmon
0
0
0
0
0
0
0
0
00
0
0
0
0
0
0
00000000
00000
0
0
0
00
0000
XADC
0
0
0
0
0
0
0
0
0
0
0
-273.1
CELSIUS
0.000
83
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
LOWER_VCCBRAM
string false
true
0.000
LOWER_VCCINT
string false
true
0.000
LOWER_VCCO_DDR
string false
true
0.000
LOWER_VCCPAUX
string false
true
0.000
LOWER_VCCPINT
string false
true
0.000
MAX_TEMPERATURE
string true
true
41.7
MAX_TEMPERATURE_SCALE
enum
false
true
CELSIUS
MAX_VCCAUX
string true
true
1.805
MAX_VCCBRAM
string true
true
0.997
MAX_VCCINT
string true
true
1.000
MAX_VCCO_DDR
string true
true
0.000
MAX_VCCPAUX
string true
true
0.000
MAX_VCCPINT
string true
true
0.000
MIN_TEMPERATURE
string true
true
37.3
MIN_TEMPERATURE_SCALE
enum
false
true
CELSIUS
MIN_VCCAUX
string true
true
1.800
MIN_VCCBRAM
string true
true
0.993
MIN_VCCINT
string true
true
0.997
MIN_VCCO_DDR
string true
true
2.999
MIN_VCCPAUX
string true
true
2.999
MIN_VCCPINT
string true
true
2.999
NAME
string true
true
localhost/xilinx_tcf/Digilent/210203336599A/xc7k325t_0/SYSMON
SUPPLY_A_OFFSET
hex
true
true
006b
SUPPLY_B_OFFSET
hex
true
true
ffa9
SYSMON_REFRESH_RATE_MS
int
false
true
0
TEMPERATURE
string true
true
37.8
TEMPERATURE_SCALE
enum
false
true
CELSIUS
UPPER_TEMPERATURE
string false
true
-273.1
UPPER_TEMPERATURE_SCALE enum
false
true
CELSIUS
UPPER_VCCAUX
string false
true
0.000
UPPER_VCCBRAM
string false
true
0.000
UPPER_VCCINT
string false
true
0.000
UPPER_VCCO_DDR
string false
true
0.000
UPPER_VCCPAUX
string false
true
0.000
UPPER_VCCPINT
string false
true
0.000
VAUXP0_VAUXN0
string true
true
0.000
VAUXP1_VAUXN1
string true
true
0.000
VAUXP2_VAUXN2
string true
true
0.000
VAUXP3_VAUXN3
string true
true
0.000
VAUXP4_VAUXN4
string true
true
0.000
VAUXP5_VAUXN5
string true
true
0.000
VAUXP6_VAUXN6
string true
true
0.000
VAUXP7_VAUXN7
string true
true
0.000
VAUXP8_VAUXN8
string true
true
0.000
VAUXP9_VAUXN9
string true
true
0.000
VAUXP10_VAUXN10
string true
true
0.000
VAUXP11_VAUXN11
string true
true
0.000
VAUXP12_VAUXN12
string true
true
0.000
VAUXP13_VAUXN13
string true
true
0.000
VAUXP14_VAUXN14
string true
true
0.000
VAUXP15_VAUXN15
string true
true
0.000
VCCAUX
string true
true
1.802
VCCBRAM
string true
true
0.995
VCCINT
string true
true
0.999
VCCO_DDR
string true
true
0.000
VCCPAUX
string true
true
0.000
VCCPINT
string true
true
0.000
VP_VN
string true
true
0.000
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
84
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
VREFN
VREFP
string
string
true
true
true
true
0.000
0.000
HW_TARGET
説明 ハー ド ウ ェ ア タ ーゲ ッ ト (hw_target) と は、 ビ ッ ト ス ト リ ーム フ ァ イ ルを使用 し てプ ロ グ ラ ム、 ま たはデザ イ ン をデ
バ ッ グす る ために使用す る 、 1 つ以上のザ イ リ ン ク ス FPGA デバ イ ス か ら 構成 さ れ る JTAG チ ェーン を含むシ ス テ ム
ボー ド です。シ ス テ ム ボー ド 上のハー ド ウ ェ ア タ ーゲ ッ ト と Vivado Design Suite と の接続は、ハー ド ウ ェ ア サーバー
オブジ ェ ク ト (hw_server) で制御 さ れます。
使用可能なハー ド ウ ェ ア タ ーゲ ッ ト の 1 つへの接続を開 く には、 open_hw_target コ マ ン ド を使用 し ます。 開いた タ ー
ゲ ッ ト は、 自動的に現在のハー ド ウ ェ ア タ ーゲ ッ ト と な り ます。 Vivado の ロ ジ ッ ク 解析では、 プ ロ グ ラ ムお よ びデ
バ ッ グ コ マ ン ド が hw_server 接続を使用 し て開いた タ ーゲ ッ ト の FPGA デバ イ ス オブジ ェ ク ト (hw_device) に使用 さ
れます。
サポー ト さ れ る JTAG ダ ウ ン ロ ー ド ケーブルお よ びデバ イ ス の リ ス ト は、『Vivado Design Suite ユーザー ガ イ ド : プ ロ
グ ラ ムお よ びデバ ッ グ』 (UG908) を参照 し て く だ さ い。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-28
KZBFIJPHP
KZBVHUYHU
KZBWDUJHW
KZBGHYLFH
KZBELWVWUHDP
図 1‐28 : ハー ド ウ ェ ア タ ーゲ ッ ト オブ ジ ェ ク ト ハー ド ウ ェ ア タ ーゲ ッ ト はハー ド ウ ェ ア サーバーに接続 さ れてお り 、次の よ う に hw_server オブジ ェ ク ト のオブジ ェ
ク ト と し て取得で き ます。
get_hw_target -of [get_hw_servers]
ま た、 次を使用す る と 、 ハー ド ウ ェ ア タ ーゲ ッ ト に接続 さ れたハー ド ウ ェ ア デバ イ ス を取得で き ます。
get_hw_devices -of [current_hw_target]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
85
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
プ ロパテ ィ
report_property コ マ ン ド を使用す る と 、 hw_target オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と がで
き ます。詳細は、『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。次は、hw_target
オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ と その値の例を示 し てい ます。
Property
Type
Read-only Visible
CLASS
string
true
true
DEVICE_COUNT
int
true
true
HW_JTAG
hw_jtag true
true
IS_OPENED
bool
true
true
NAME
string
true
true
localhost/xilinx_tcf/Digilent/210203327463A
PARAM.DEVICE
string
true
true
PARAM.FREQUENCY enum
true
true
PARAM.TYPE
string
true
true
TID
string
true
true
UID
string
true
true
Value
hw_target
1
1
jsn-JTAG-SMT1-210203327463A
15000000
xilinx_tcf
jsn-JTAG-SMT1-210203327463A
Digilent/210203327463A
hw_target のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル ま たは Tcl
コ ン ソ ールに貼 り 付け ます。
report_property -all [get_hw_targets]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
86
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
HW_VIO
説明 VIO (Virtual Input/Output) デバ ッ グ コ ア (hw_vio) は、 ザ イ リ ン ク ス FPGA デバ イ ス にプ ロ グ ラ ム さ れてい る 内部信号
を リ アル タ イ ム で監視お よ び駆動で き ま す。 タ ーゲ ッ ト ハー ド ウ ェ アへの物理的な ア ク セ ス がない場合は、 こ のデ
バ ッ グ機能を使用 し て、 物理デバ イ ス上の信号を駆動お よ び監視で き ます。
VIO コ アは、 ハー ド ウ ェ ア プ ロ ーブ オブジ ェ ク ト を使用 し てデザ イ ンの特定の信号を監視お よ び駆動 し ます。 入力
プ ロ ーブは、 VIO コ アへの入力 と し て信号を監視 し ます。 出力プ ロ ーブは、 VIO コ アか ら 信号を指定の値に駆動 し ま
す。 プ ロ ーブの値は set_property コ マ ン ド で定義 さ れ、 commit_hw_vio コ マ ン ド でプ ロ ーブの信号に駆動 さ れます。
VIO デバ ッ グ コ アは、 ザ イ リ ン ク ス IP カ タ ロ グか ら RTL コ ー ド に イ ン ス タ ン シエー ト す る 必要があ り ます。 こ のた
め、 デザ イ ン をデバ ッ グす る 前に ど のネ ッ ト を監視お よ び駆動す る のかわか っ てお く 必要があ り ます。 VIO コ アは、
IP カ タ ロ グの [Debug & Verification] → [Debug] カ テ ゴ リ に含ま れます。 VIO コ ア IP の詳細は、 『LogiCORE IP Virtual
Input/Output 製品ガ イ ド 』 (PG159) を参照 し て く だ さ い。
関連オブ ジ ェ ク ト X-Ref Target - Figure 1-29
KZBVHUYHU
KZBLOD
KZBWDUJHW
KZBYLR
KZBD[L
KZBGHYLFH
KZBV\VPRQ
KZBSUREH
KZBVLRBLE
KZBVLRBJW
図 1‐29 : hw_vio オブ ジ ェ ク ト VIO デバ ッ グ コ アは、 ザ イ リ ン ク ス IP カ タ ロ グか ら RTL ソ ース フ ァ イ ルのデザ イ ンに追加で き ます。 デバ ッ グ コ
アは、 get_debug_cores コ マ ン ド を使用 し て合成済みネ ッ ト リ ス ト デザ イ ン で検索で き ます。 こ れ ら は Vivado Design
Suite のハー ド ウ ェ ア マネージ ャ ーに含ま れ る VIO デバ ッ グ コ ア オブジ ェ ク ト (hw_vio) ではあ り ませんが、 関連は
し てい ます。
ハー ド ウ ェ ア VIO デバ ッ グ コ アは、プ ロ グ ラ ム済みのハー ド ウ ェ ア デバ イ ス オブジ ェ ク ト (hw_device) のハー ド ウ ェ
ア マネージ ャ ーに含まれます。 hw_device の hw_vio は次の よ う に取得で き ます。
get_hw_vios -of [current_hw_device]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
87
第 1 章 : Vivado の第一級オブ ジ ェ ク ト
ま た、 hw_vio デバ ッ グ コ アには、 それに接続 さ れたプ ロ ーブが含まれてお り 、 次の よ う に取得で き ます。
get_hw_probes -of [get_hw_vios]
プ ロパテ ィ report_property コ マ ン ド を使用す る と 、 hw_vio オブジ ェ ク ト に割 り 当て ら れたプ ロ パテ ィ を レ ポー ト す る こ と がで き
ます。 詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835) を参照 し て く だ さ い。
Property
CLASS
CORE_REFRESH_RATE_MS
HW_CORE
INSTANCE_NAME
IS_ACTIVITY_SUPPORTED
NAME
Type
string
int
string
string
bool
string
Read-only
true
false
true
true
true
true
Visible
true
true
false
true
true
true
Value
hw_vio
500
core_1
i_vio_new
1
hw_vio_1
hw_vio オブジ ェ ク ト のプ ロ パテ ィ を レ ポー ト す る には、 次の コ マ ン ド を コ ピー し て Vivado Design Suite の Tcl シ ェ ル
ま たは Tcl コ ン ソ ールに貼 り 付け ます。
report_property -all [lindex [get_hw_vios] 0]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
88
第 2章
主な プ ロパテ ィ の説明
プ ロパテ ィ 情報
本章では、 ザ イ リ ン ク ス Vivado® Design Suite プ ロ パテ ィ について説明 し ます。 各プ ロ パテ ィ の説明には、 該当す る
場合は次の情報が含ま れます。
•
主な使用方法を含むプ ロ パテ ィ の説明
•
プ ロ パテ ィ をサポー ト す る ザ イ リ ン ク ス FPGA デバ イ ス アーキ テ ク チ ャ (UltraScale™を含む)。 例外は注記 さ れ
てい ます。
•
プ ロ パテ ィ をサポー ト す る オブジ ェ ク ト ま たはデバ イ ス リ ソ ース。
•
プ ロ パテ ィ に割 り 当て可能な値
•
Verilog、 VHDL、 XDC の構文
•
プ ロ パテ ィ の影響を受け る デザ イ ン フ ロ ーの ス テ ッ プ
•
関連プ ロ パテ ィ への相互参照
重要 : HDL と XDC の両方でプ ロ パテ ィ が定義 さ れてい る 場合は、 XDC のほ う が優先 さ れ、 HDL プ ロ パテ ィ は上書
き さ れます。
Vivado Design Suite での こ れ ら のプ ロ パテ ィ の使用については、 『Vivado Design Suite ユーザー ガ イ ド : 制約の使用』
(UG903) を[参照 12]参照 し て く だ さ い。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
89
第 2 章 : 主な プ ロパテ ィ の説明
ASYNC_REG
ASYNC_REG 属性は、 Vivado ツール フ ロ ーの さ ま ざ ま なプ ロ セ ス に影響 し ます。 ASYNC_REG では、 次が指定 さ れ
ます。
•
非同期デー タ が ソ ース ク ロ ッ ク と 接続 さ れ る D 入力ピ ンで レ ジ ス タ が受信で き る 。
ま たは
•
レ ジ ス タ が同期チ ェーン内の同期レ ジ ス タ にな る 。
シ ミ ュ レ ーシ ョ ン中に タ イ ミ ン グ違反が発生す る と 、 デ フ ォ ル ト では レ ジ ス タ エ レ メ ン ト か ら X ま たは未知の ス
テー ト (1 で も 0 で も ない値) が出力 さ れます。 こ の場合、 エ レ メ ン ト の駆動する も のすべての入力が X と 表示 さ れ、
未知の ス テー ト にな り ます。 こ の状態の ま ま に し てお く と 、 デザ イ ンの大 き なセ ク シ ョ ンが未知にな っ た り 、 シ ミ ュ
レー タ で こ の ス テー ト か ら 回復で き ない こ と があ り ます。 ASYNC_REG では、 タ イ ミ ン グ違反が発生 し て も 最後の既
知の値を出力す る よ う に レ ジ ス タ が変更 さ れます。
Vivado 合成では、 こ の属性は 「DONT_TOUCH」 属性 と し て処理 さ れ、 ASYNC_REG プ ロ パテ ィ を ネ ッ ト リ ス ト に挿
入 し ます。 こ れに よ り 、 合成で レ ジ ス タ ま たは周囲の ロ ジ ッ ク が最適化 さ れな く な り 、 フ ロ ーの後のほ う の ツールで
適切に処理 さ れ る よ う にな り ます。
ASYNC_REG を指定す る と 、 最適化、 配置、 配線に も 影響 し 、 メ タ ス テーブルにな る 可能性のあ る MTBF (平均故障
間隔) が改善 さ れます。 ASYNC_REG が指定 さ れてい る と 、 配置ツールで非同期チ ェーンの フ リ ッ プ フ ロ ッ プ同士が
近 く に配置 さ れ、 MTBF を最長にで き ます。 ASYNC_REG が設定 さ れ直接接続 さ れてい る レ ジ ス タ に、 互換性のあ る
制御セ ッ ト があ り 、 ま た レ ジ ス タ 数が ス ラ イ ス の使用可能な リ ソ ース数を超え ない場合は、 グループに ま と め ら れて
1 つの ス ラ イ ス に一緒に配置 さ れます。
X-Ref Target - Figure 2-1
図 2‐1 : ク ロ ッ ク ド メ イ ンの同期
重要 : ASYNC_REG と IOB の両方が レ ジ ス タ に割 り 当て ら れ る と 、 IOB プ ロ パテ ィ が ASYNC_REG よ り も 優先 さ れ、
レ ジ ス タ が SLICE ロ ジ ッ ク ではな く 、 ILOGIC ブ ロ ッ ク に配置 さ れます。
次は、 90 ページの図 2-1 にあ る フ リ ッ プ フ ロ ッ プを 2 つ使用 し た、 ま たは 1 段のシ ン ク ロ ナ イ ザーの Verilog 例です。
レ ジ ス タ は、 個別の ク ロ ッ ク ド メ イ ン か ら の値を同期 さ せます。 ASYNC_REG プ ロ パテ ィ の値が TRUE なのでシ ン
ク ロ ナ イ ザー段に適用 さ れます。
(* ASYNC_REG = "TRUE" *) reg sync_0, sync_1;
always @(posedge clk) begin
sync_1 <= sync_0;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
90
第 2 章 : 主な プ ロパテ ィ の説明
sync_0 <= en;
...
ASYNC_REG プ ロ パテ ィ を使用す る と 、 レ ジ ス タ がグループ化 さ れ る ので、 で き る だけ近 く に配置す る こ と がで き ま
す。
X-Ref Target - Figure 2-2
図 2‐2 : レ ジ ス タ のグループ化
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ソ ース RTL で宣言 さ れた信号
•
イ ン ス タ ン シエー ト さ れた レ ジ ス タ セル (get_cells)
°
レ ジ ス タ (FD、 FDCE、 FDPE、 FDRE、 FDSE)
値
•
FALSE (デフ ォ ル ト ) : レ ジ ス タ は最適化で削除 さ れ る か、 SRL、 DSP、 ま たは RAMB な ど のブ ロ ッ ク に吸収 さ れ
ます。 特殊なシ ミ ュ レーシ ョ ン、 配置、 配線規則は適用 さ れません。
•
TRUE : レ ジ ス タ は同期チ ェーンの一部で、 イ ンプ リ メ ン テーシ ョ ン中 も 保持 さ れ、 チ ェーンのその他の レ ジ ス
タ の近 く に配置 さ れて、 MTBF レ ポー ト に使用 さ れます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
91
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
Verilog 属性はレ ジ ス タ の イ ン ス タ ン シエーシ ョ ン ま たは reg 宣言の直前に配置 し ます。
(* ASYNC_REG = "{TRUE|FALSE}" *)
Verilog の構文例
// Designates sync_regs as receiving asynchronous data
(* ASYNC_REG = "TRUE" *) reg [2:0] sync_regs;
VHDL 構文
推論 さ れた ロ ジ ッ ク に対 し て次の よ う に VHDL 属性を宣言お よ び指定 し ます。
attribute ASYNC_REG : string;
attribute ASYNC_REG of name: signal is "{TRUE}";
ま たは、 イ ン ス タ ン シエー ト さ れた ロ ジ ッ ク に対 し て次の よ う に VHDL 属性を指定 し ます。
attribute ASYNC_REG of name: label is "{TRUE|FALSE}";
name は、 次のいずれかにな り ます。
•
シ ン ク ロ ナ イ ザー レ ジ ス タ に推論 さ れ る 宣言済みの信号
•
イ ン ス タ ン シエー ト さ れた レ ジ ス タ の イ ン ス タ ン ス名
VHDL の構文例
attribute ASYNC_REG : string;
signal sync_regs : std_logic_vector(2 downto 1);
-- Designates sync_regs as receiving asynchronous data
attribute ASYNC_REG of sync_regs: signal is "TRUE";
XDC 構文
set_property ASYNC_REG value [get_cells instance_name]
説明 :
•
instance_name はレ ジ ス タ セルです。
XDC の構文例
# Designates sync_regs as receiving asynchronous data
set_property ASYNC_REG TRUE [get_cells sync_regs*]
影響を受ける ス テ ッ プ
•
launch_xsim
•
synth_design
•
place_design
•
route_design
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
92
第 2 章 : 主な プ ロパテ ィ の説明
•
phys_opt_design
•
power_opt_design
•
report_drc
•
write_verilog
•
write_vhdl
関連項目
139 ページの 「IOB」
BEL
BEL では レ ジ ス タ ま たは LUT の ス ラ イ ス内での特定の配置を指定 し ます。 通常 LOC プ ロ パテ ィ と 一緒に使用 し て、
レ ジ ス タ ま たは LUT の正確な配置を指定 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
レ ジ ス タ (FD、 FDCE、 FDPE、 FDRE、 FDSE)
°
LUT (LUT1、 LUT2、 LUT3、 LUT4、 LUT5、 LUT6、 LUT6_2)
°
SRL (SRL16E、 SRLC32E)
°
LUTRAM (RAM32X1S、 RAM64X1S)
値
•
BEL = <name>
BEL の ロ ジ ッ ク コ ン テ ン ツ次第で、 BEL の名前は変わ り ます。 ま た、 BEL 名には BEL のサ イ ト 名を含め る こ と
も で き ま す。 た と え ば、 BSCAN_X0Y0/BSCAN、 IPAD_X0Y54/IPAD、 BUFGCTRL_X0Y16/BUFG、
SLICE_X1Y199/A5FF な ど が有効な BEL 名です。
構文
Verilog 構文 Verilog 属性は LUT ま たは レ ジ ス タ の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。推論 さ れた レ ジ ス タ の SRL ま たは
LUTRAM の reg 宣言前に配置す る こ と も で き ます。
(* BEL = "site_name" *)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
93
第 2 章 : 主な プ ロパテ ィ の説明
Verilog の構文例
// Designates placed_reg to be placed in FF site A5FF
(* BEL = "A5FF" *) reg placed_reg;
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute BEL : string;
イ ン ス タ ン シエー ト 済み イ ン ス タ ン ス の場合は、 次の よ う に指定 し ます。
attribute BEL of instance_name : label is "site_name";
説明 :
•
instance_name は LUT、 SRL、 LUTRAM な ど の イ ン ス タ ン シエー ト 済みレ ジ ス タ の イ ン ス タ ン ス名です。
VHDL の構文例
-- Designates instantiated register instance placed_reg to be placed in FF site A5FF
attribute BEL of placed_reg : label is "A5FF";
推論済み イ ン ス タ ン ス の場合、 VHDL 属性は次の よ う に指定 し ます。
attribute BEL of signal_name : signal is "site_name";
説明 :
•
signal_name は LUT、 SRL、 LUTRAM な ど の推論済みレ ジ ス タ の信号名です。
VHDL の構文例
-- Designates instantiated register instance placed_reg to be placed in FF site A5FF
attribute BEL of placed_reg : signal is "A5FF";
XDC 構文
set_property BEL site_name [get_cells instance_name]
説明 :
•
instance_name はレ ジ ス タ、 LUT、 SRL、 ま たは LUTRAM イ ン ス タ ン ス です。
XDC の構文例
# Designates placed_reg to be placed in FF site A5FF
set_property BEL A5FF [get_cells placed_reg]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
94
第 2 章 : 主な プ ロパテ ィ の説明
影響を受ける ス テ ッ プ
•
デザ イ ンの フ ロ アプ ラ ン
•
place_design
関連項目
152 ページの 「LOC」
BLACK_BOX
BLACK_BOX 属性は、 すべての階層レベルをオ フ に し 、 合成でそのモジ ュ ールま たはエン テ ィ テ ィ に対 し てブ ラ ッ ク
ボ ッ ク ス を作成で き る よ う にす る デバ ッ グ用の属性です。 こ の属性を指定する と 、 モジ ュ ールま たはエン テ ィ テ ィ に
対 し て有効な ロ ジ ッ ク があ っ た と し て も 、 合成ツールでその レベルに対 し てブ ラ ッ ク ボ ッ ク ス が作成 さ れます。 こ の
属性はモジ ュ ール、 エン テ ィ テ ィ 、 コ ン ポーネ ン ト に設定で き ます。
こ の属性は合成 コ ンパ イ ラ に影響す る ので、 RTL でのみ設定可能です。
ブ ラ ッ ク ボ ッ ク ス の コ ーデ ィ ン グ ス タ イ ルの詳細については、 『Vivado Design Suite ユーザー ガ イ ド : 合成』 (UG901)
[参照 11] を参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
•
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ソ ース RTL のモジ ュ ール、 エン テ ィ テ ィ 、 ま たは コ ン ポーネ ン ト
値
•
TRUE (ま たは YES) : 合成中に コ ン ポーネ ン ト ま たはモジ ュ ールをブ ラ ッ ク ボ ッ ク ス と し てマー ク し ます。
•
FALSE (ま たは NO) : コ ン ポーネ ン ト ま たはモジ ュ ールを ブ ラ ッ ク ボ ッ ク ス と し てマー ク し ません。 こ れがデ
フ ォ ル ト です。
構文
Verilog 構文
Verilog の場合、 モジ ュ ールの BLACK_BOX 属性には値が必要な く 、 その存在自体でブ ラ ッ ク ボ ッ ク ス が定義 さ れま
す。
(* black_box *) module test(in1, in2, clk, out1);
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
95
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 構文
attribute black_box
attribute black_box
: string;
of beh : architecture is "yes";
XDC 構文
該当な し
影響を受ける ス テ ッ プ
•
合成
BUFFER_TYPE
重要 : BUFFER_TYPE よ り も 「CLOCK_BUFFER_TYPE」 お よ び 「IO_BUFFER_TYPE」 プ ロ パテ ィ を使用 し た方がバ ッ
フ ァ ーの推論が制御 し やす く な り ます。
デ フ ォ ル ト で は、 Vivado 合成は、 ク ロ ッ ク ポ ー ト に対 し 、 入力バ ッ フ ァ ー と グ ロ ーバル ク ロ ッ ク バ ッ フ ァ ー
(IBUF/BUFG) の組み合わせた も の を推論 し 、 入力ポー ト に対 し て入力バ ッ フ ァ ーを、 出力ポー ト に対 し て出力バ ッ
フ ァ ーを推論 し ますが、 手動で BUFFER_TYPE プ ロ パテ ィ を指定 し 、 Vivado 合成のデフ ォ ル ト 動作を上書 き す る こ
と も で き ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
BUFFER_TYPE 属性は最上位ポー ト (all_inputs、 all_outputs、 get_ports) に設定で き ます。
値
•
IBUF : デフ ォ ル ト の IBUF/BUFG ペアが不要な ク ロ ッ ク ポー ト に こ の値を指定 し ます。 こ の場合は ク ロ ッ ク に対
し て IBUF のみが推論 さ れます。 デフ ォ ル ト で推論 さ れ る のは IBUF と OBUF だけなので、 こ れに よ り 、 入力ま
たは出力ポー ト が影響を受け る こ と はあ り ません。
•
NONE : こ の値を ク ロ ッ ク ポー ト 、 入力ポー ト 、 ま たは出力ポー ト に指定す る と 、 入力ま たは出力バ ッ フ ァ ーは
推論 さ れな く な り ます。 ク ロ ッ ク ポー ト に none を指定する と 、 バ ッ フ ァ ーは使用 さ れません。
構文
Verilog 構文 (* buffer_type = "none" *) input in1; //this will result in no buffers
(* buffer_type = "ibuf" *) input clk1; //this will result in a clock with no bufg
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
96
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 構文
entity test is port(
in1 : std_logic_vector (8 downto 0);
clk : std_logic;
out1 : std_logic_vector(8 downto 0));
attribute buffer_type : string;
attribute buffer_type of in1 : signal is "none";
end test;
XDC 構文
BUFFER_TYPE プ ロ パテ ィ は、 XDC 制約フ ァ イ ルのポー ト オブジ ェ ク ト に も 使用で き ます。
set_property BUFFER_TYPE <value> [get_ports <port_name>]
説明 :
•
<value> には、 BUFFER_TYPE の有効な値を指定 し ます。
•
<port_name> には、 プ ロ パテ ィ を設定す る ポー ト 名を指定 し ます。
影響を受ける ス テ ッ プ
•
合成
関連項目 99 ページの 「CLOCK_BUFFER_TYPE」
137 ページの 「IO_BUFFER_TYPE」
CFGBVS
ザ イ リ ン ク ス デバ イ ス では 3.3V、 2.5V、 1.8V、 ま たは 1.5V の I/O を使用 し た コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ
イ ス がサポー ト さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス には、 バン ク 0 の JTAG ピ ン、 バン ク 0 の専用
コ ン フ ィ ギ ュ レーシ ョ ン ピ ンが含ま れ る ほか、 特定 コ ン フ ィ ギ ュ レーシ ョ ン モー ド に関連 し た ピ ンが 7 シ リ ーズの
場合はバン ク 14 と 15 に、 UltraScale アーキ テ ク チ ャ の場合はバン ク 65 に含まれます。
バン ク 0 で適切な コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス電圧をサポー ト する には、 I/O バン ク を 3.3V/2.5 ま たは
1.8V/1.5V 操作用に コ ン フ ィ ギ ュ レーシ ョ ンす る ため、 CFGBVS (Configuration Bank Voltage Select) ピ ン を VCC_0 ま た
は GND に それぞれ設定す る 必要が あ り ま す。 CFGBVS は、 VCCO_0 と GND を 参照す る ロ ジ ッ ク 入力 ピ ン です。
CFGBVS ピ ンが VCCO_0 電源に接続 さ れてい る 場合、 コ ン フ ィ ギ ュ レーシ ョ ン中、 バン ク 0 の I/O は 3.3V ま たは 2.5
V での操作をサポー ト し ます。 CFGBVS ピ ン が GND に接続 さ れてい る 場合、 コ ン フ ィ ギ ュ レーシ ョ ン中、 バン ク 0
の I/O は 1.8V ま たは 1.5V での操作をサポー ト し ます。
CFGBVS ピ ン の設定に よ り 常にバン ク 0 の I/O 電圧サポー ト が決ま り ま す。 7 シ リ ーズ デバ イ ス の場合はバン ク 14
お よ びバン ク 15 が、 UltraScale アーキテ ク チ ャ の場合はバン ク 65 が HR バン ク タ イ プなので、 CFGBVS ピ ン と それ
に該当す る 「CONFIG_VOLTAGE」 プ ロ パテ ィ に よ り 、 コ ン フ ィ ギ ュ レーシ ョ ン中にサポー ト さ れ る I/O 電圧が決ま
り ます。
重要 : 1.8V/1.5V I/O 操作の場合に CFGBVS が GND に設定 さ れてい る 場合、 ザ イ リ ン ク ス FPGA への損傷を避け る た
め、 バン ク 0 への VCCO_0 電源お よ び I/O 信号は 1.8V 以下にする 必要があ り ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
97
第 2 章 : 主な プ ロパテ ィ の説明
CFGBVS の詳細につい ては、 『7 シ リ ーズ FPGA コ ン フ ィ ギ ュ レ ーシ ョ ン ユーザー ガ イ ド 』 (UG470)[参照 1] ま たは
『UltraScale アーキ テ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG570)[参照 5] を参照 し て く だ さ い。
デ ザ イ ン の CONFIG_MODE 設 定 の 互 換性 を 確認す る た め、 Report
CONFIG_VOLTAGE をチ ェ ッ ク し ます。
DRC
コマン ド が
CFGBVS
および
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design、 get_designs)
値
•
VCCO : 3.3V/2.5V 操作用に I/O バン ク 0 を コ ン フ ィ ギ ュ レーシ ョ ン
•
GND : 1.8V/1.5V 操作用に I/O バン ク 0 を コ ン フ ィ ギ ュ レーシ ョ ン
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property CFGBVS [VCCO | GND] [current_design]
XDC の構文例
# Configure I/O Bank 0 for 3.3V/2.5V operation
set_property CFGBVS VCCO [get_designs impl_1]
影響を受ける ス テ ッ プ
•
I/O 配置
•
DRC レ ポー ト
•
write_bitstream
関連項目
103 ページの 「CONFIG_MODE」
104 ページの 「CONFIG_VOLTAGE」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
98
第 2 章 : 主な プ ロパテ ィ の説明
CLOCK_BUFFER_TYPE
重要 : ク ロ ッ ク 入力ポー ト には、 BUFFER_TYPE ではな く CLOCK_BUFFER_TYPE プ ロ パテ ィ を使用 し て く だ さ い。
デ フ ォ ル ト で は、 Vivado 合成 で は、 ク ロ ッ ク ポ ー ト に対 し 入力バ ッ フ ァ ー と グ ロ ーバル ク ロ ッ ク バ ッ フ ァ ー
(IBUF/BUFG) の組み合わせた も のが推論 さ れますが、 CLOCK_BUFFER_TYPE プ ロ パテ ィ を使用する と 、 Vivado 合成
ツールで IBUF/BUFR ペア ま たは IBUF/BUFIO ペア な ど の異な る タ イ プの ク ロ ッ ク バ ッ フ ァ が推論 さ れ る か、 バ ッ
フ ァ ーがすべて削除 さ れ る か を指定で き ます。
CLOCK_BUFFER_TYPE は、 RTL でのみ設定で き ます。 .XDC では現在の と こ ろサポー ト さ れてい ません。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
CLOCK_BUFFER_TYPE 属性は最上位 ク ロ ッ ク ポー ト にに設定 し 、 使用する ク ロ ッ ク バ ッ フ ァ ー タ イ プ を指定
し ます。
値
•
BUFG、 BUFH、 BUFIO、 BUFMR、 BUFR : ク ロ ッ ク ポー ト に対 し て入力バ ッ フ ァ ーお よ び指定 し た ク ロ ッ ク
バ ッ フ ァ ーを組み合わせた も のが推論 さ れます。
•
NONE : ク ロ ッ ク に対 し てバ ッ フ ァ ーは推論 さ れません。
構文
Verilog 構文
(* clock_buffer_type = "none" *) input clk1;
VHDL 構文
entity test is port(
in1 : std_logic_vector (8 downto 0);
clk : std_logic;
out1 : std_logic_vector(8 downto 0));
attribute clock_buffer_type : string;
attribute clock_buffer_type of clk: signal is "BUFR";
end test;
XDC 構文
該当な し
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
99
第 2 章 : 主な プ ロパテ ィ の説明
影響を受ける ス テ ッ プ
•
合成
関連項目 96 ページの 「BUFFER_TYPE」
137 ページの 「IO_BUFFER_TYPE」
CLOCK_DEDICATED_ROUTE
CLOCK_DEDICATED_ROUTE プ ロ パテ ィ は、 タ ーゲ ッ ト デバ イ ス に対す る ク ロ ッ ク 配置ルールに厳密に従 う べ き か
ど う か を設定 し ます。
外部ユーザー ク ロ ッ ク は、 ク ロ ッ ク 対応入力 (CCIO) と 呼ばれ る 差動 ク ロ ッ ク ピ ンのペアか ら FPGA に供給す る 必要
があ り ます。 こ れ ら の CCIO は、 さ ま ざ ま な ク ロ ッ ク 供給機能の タ イ ミ ン グ を確約する ため、 内部のグ ロ ーバルお よ
び リ ージ ョ ナル ク ロ ッ ク リ ソ ースへの専用、 高速配線を提供 し ます。 ク ロ ッ ク 配置ルールの詳細については、 『7 シ
リ ーズ FPGA ク ロ ッ キ ン グ ユーザー ガ イ ド 』 (UG472)[参照 3]ま たは 『UltraScale アーキ テ ク チ ャ ク ロ ッ キ ン グ ユー
ザー ガ イ ド 』 (UG572)[参照 7] を参照 し て く だ さ い。
通常、 タ ーゲ ッ ト の FPGA の専用 ク ロ ッ ク ツ リ ーか ら ク ロ ッ ク 配線を外 し た り 、標準配線チ ャ ネルを使用す る と いっ
た目的で、 ク ロ ッ ク コ ン ポーネ ン ト を配置す る 必要が出て き た と き に、 CLOCK_DEDICATED_ROUTE プ ロ パテ ィ は
使用 さ れ ま す。 専用配線が使用で き ない場合は、 CLOCK_DEDICATED_ROUTE を FALSE に設定す る と 、 ク ロ ッ ク
ソ ース が ロ ー ド ク ロ ッ ク バ ッ フ ァ ーに比べて最適ではない位置に配置 さ れてい る と き 、 ク ロ ッ ク 配置 DRC がエ ラ ー
か ら 警告にな り ます。
注意 : CLOCK_DEDICATED_ROUTE を False にす る と 、 ク ロ ッ ク 遅延が最適ではな く な る 可能性があ り 、 タ イ ミ ン グ
な ど の問題が発生す る こ と があ り ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
グ ロ ーバル ク ロ ッ ク バ ッ フ ァ ー (BUFG、BUFGCE、BUFGMUX、BUGCTRL) の入力に接続 さ れたネ ッ ト (get_nets)
値
•
TRUE : ク ロ ッ ク 配置 DRC 違反がエ ラ ー と し て レ ポー ト さ れます (デフ ォ ル ト )。
•
FALSE : ク ロ ッ ク 配置 DRC 違反が警告に格下げ さ れます。 専用高速 ク ロ ッ ク 配線が使用 さ れない よ う にす る た
め、 ク ロ ッ ク コ ン ポーネ ン ト (BUFG、 MMCM、 PLL な ど) が配置 さ れ る たびに こ れを使用する 必要があ り ます。
•
BACKBONE : 基本的な ク ロ ッ ク 配置ルールに違反す る ロ ケーシ ョ ン制約を割 り 当て る 場合は こ の値を使用す る
必要があ る こ と があ り ますが、 通常は推奨 さ れません。 MMCM ま たは PLL が ソ ース の CCIO ピ ンか ら かな り 離
れた位置に配置 さ れ る 場合は こ の値を使用 し ます。 ワ イ ヤの長 さ が長 く な る 分、 CCIO か ら MMCM ま での タ イ
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
100
第 2 章 : 主な プ ロパテ ィ の説明
ミ ン グ パ ス に遅延が追加 さ れ ますが、 こ れは MMCM や PLL フ ィ ー ド バ ッ ク に よ っ ては完全には削除 さ れ ませ
ん。 遅延が追加 さ れて も デザ イ ンの タ イ ミ ン グが満た さ れ る 場合は BACKBONE を使用 し ます。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property CLOCK_DEDICATED_ROUTE [TRUE | FALSE | BACKBONE] [get_nets net_name]
説明 :
•
net_name は、 グ ロ ーバル ク ロ ッ ク バ ッ フ ァ ーの入力に接続 さ れた信号名です。
XDC の構文例
# Designates clk_net to have relaxed clock placement rules
set_property CLOCK_DEDICATED_ROUTE FALSE [get_nets clk_net]
影響のある処理
•
place_design
•
report_drc
CLOCK_ROOT
ク ロ ッ ク ド ラ イ バー、 ま たはルー ト を タ ーゲ ッ ト デバ イ ス の特定 ク ロ ッ ク 領域に割 り 当て る ために使用 し ます。
CLOCK_ROOT プ ロ パテ ィ はデバ イ ス全体で ク ロ ッ ク ス キ ュ ーを管理 し やす く する こ と を目的に使用 し ます。デフ ォ
ル ト では、 すべての ロ ー ド に対 し 、 ベス ト な状態で ク ロ ッ ク 遅延のバ ラ ン ス を取 る こ と がで き る よ う 、 ク ロ ッ ク ルー
ト が ク ロ ッ ク ネ ッ ト ワ ー ク の中央に自動的に配置配線ツールに よ り 割 り 当て ら れます。CLOCK_ROOT プ ロ パテ ィ を
使用す る と 、 こ の ク ロ ッ ク ルー ト を手動で割 り 当て る こ と がで き ます。
CLOCK_ROOT プ ロ パテ ィ は、 グ ロ ーバル ネ ッ ト 、 ま たはそれを駆動す る セルに設定す る こ と がで き ます。 階層ネ ッ
ト の場合は、 ネ ッ ト の任意箇所に こ のプ ロ パテ ィ を割 り 当て る こ と がで き ますが、 プ ロ パテ ィ は最上位 ク ロ ッ ク ネ ッ
ト に設定 さ れます。 こ の割 り 当て を知 ら せ る メ ッ セージが表示 さ れます。
CLOCK_ROOT プ ロ パテ ィ は ク ロ ッ ク リ ソ ース の配置中に検証 ・ 使用 さ れ る ため、 配置前に割 り 当ててお く 必要があ
り ます。 し か し 、 配置後に割 り 当て る 場合は、 配置を実行 し てそれをデザ イ ンに反映 さ せ る 必要があ り ます。
アーキテ ク チ ャ サポー ト
UltraScale デバ イ ス
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
101
第 2 章 : 主な プ ロパテ ィ の説明
適用可能なオブ ジ ェ ク ト
•
ネ ッ ト - グ ロ ーバル ク ロ ッ ク ネ ッ ト (get_nets)
•
セル - ク ロ ッ ク ネ ッ ト を駆動す る グ ロ ーバル ク ロ ッ ク バ ッ フ ァ ー (get_cells)
°
BUFGCE
°
BUFGCTRL
°
BUFGCE_DIV
°
BUFG_GT
値
•
<clock_region>
タ ーゲ ッ ト デバ イ ス の ク ロ ッ ク 領域の名前を指定 し ま す。 ま たは get_clock_regions コ マ ン ド に よ り 渡 さ れ る ク
ロ ッ ク 領域オブジ ェ ク ト にな り ます。
•
<object>
ク ロ ッ ク ネ ッ ト ま たはネ ッ ト セグ メ ン ト 、 ま たは ク ロ ッ ク ネ ッ ト を駆動する セル (複数指定可能)
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property CLOCK_ROOT <clock_region> <List of clock nets>
ま たは
set_property CLOCK_ROOT <clock_region> <List of cells driving clock nets>
XDC の構文例
set_property CLOCK_ROOT X0Y0 [get_nets {clk1 clk2}]
set_property CLOCK_ROOT [get_clock_regions X0Y0] [get_nets {clk1 clk2}]
set_property CLOCK_ROOT X0Y0 [get_cells {clk1_BUFGCE}]
影響のある処理
•
配置
•
配線
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
102
第 2 章 : 主な プ ロパテ ィ の説明
CONFIG_MODE
CONFIG_MODE プ ロ パテ ィ は、 ピ ン割 り 当て、 DRC レ ポー ト 、 ビ ッ ト ス ト リ ーム生成に対 し 、 ど のデバ イ ス コ ン
フ ィ ギ ュ レーシ ョ ン モー ド を使用す る か を定義 し ます。
重要 : COMPATIBLE_CONFIG_MODES プ ロ パテ ィ は 2013. 3 リ リ ース で中止 と な り 、こ の CONFIG_MODE プ ロ パテ ィ
に置 き 換え ら れてい ます。
ザ イ リ ン ク ス FPGA は、 特別な コ ン フ ィ ギ ュ レーシ ョ ン ピ ン を使用 し て、 アプ リ ケーシ ョ ン別の コ ン フ ィ ギ ュ レー
シ ョ ン デー タ ま たはビ ッ ト ス ト リ ーム を内部 メ モ リ に読み込む こ と に よ っ て、 コ ン フ ィ ギ ュ レーシ ョ ン さ れます。 コ
ン フ ィ ギ ュ レーシ ョ ン デー タ パ ス には一般的に 2 種類あ り ます。 必要なデバ イ ス ピ ンの数を最小限に抑え る ために
使用 さ れ る シ リ ア ル デー タ パ ス、 よ り 高速 な コ ン フ ィ ギ ュ レ ー シ ョ ン 用 の パ ラ レ ル デー タ パ ス の 2 つ で す。
CONFIG_MODE プ ロ パテ ィ を使用 し て、 デザ イ ンに対 し ど のモー ド を使用す る か を定義 し ます。
デバ イ ス コ ン フ ィ ギ ュ レーシ ョ ン モー ド の詳細については、『7 シ リ ーズ FPGA コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ
イ ド 』 (UG470)[参照 1]ま たは 『UltraScale アーキ テ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG570)[参照 5]
を参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design)
値
•
S_SERIAL
•
M_SERIAL
•
S_SELECTMAP
•
M_SELECTMAP
•
B_SCAN
•
S_SELECTMAP+READBACK
•
M_SELECTMAP+READBACK
•
B_SCAN+READBACK
•
S_SELECTMAP32
•
S_SELECTMAP32+READBACK
•
S_SELECTMAP16
•
S_SELECTMAP16+READBACK
•
SPIx1
•
SPIx2
•
SPIx4
•
BPI8
•
BPI16
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
103
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property CONFIG_MODE <value> [current_design]
<value> には コ ン フ ィ ギ ュ レーシ ョ ン モー ド を指定 し ます。
XDC の構文例
# Specify using Configuration Mode Serial Peripheral Interface, 4-bit width
set_property CONFIG_MODE {SPIx4} [current_design]
影響のある処理
•
I/O 配置
•
place_design
•
report_drc
•
write_bitstream
CONFIG_VOLTAGE
ザ イ リ ン ク ス デバ イ ス では 3.3V、 2.5V、 1.8V、 ま たは 1.5V の I/O を使用 し た コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ
イ ス がサポー ト さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン イ ン タ ーフ ェ イ ス には、 バン ク 0 の JTAG ピ ン、 バン ク 0 の専用
コ ン フ ィ ギ ュ レーシ ョ ン ピ ンが含ま れ る ほか、 特定 コ ン フ ィ ギ ュ レーシ ョ ン モー ド に関連 し た ピ ンが 7 シ リ ーズの
場合はバ ン ク 14 と 15 に、 UltraScale アーキ テ ク チ ャ の場合はバ ン ク 65 に含 ま れ ま す。 CONFIG_VOLTAGE プ ロ パ
テ ィ や VCCO_0 電圧は 3.3、 2.5、 1.8、 ま たは 1.5 に設定で き ます。
バン ク 0 の ピ ンの I/O 電圧サポー ト を決め る には、 CONFIG_VOLTAGE を正 し い コ ン フ ィ ギ ュ レーシ ョ ン電圧に設定
す る 必要があ り ま す。 コ ン フ ィ ギ ュ レーシ ョ ン電圧の詳細については、 『7 シ リ ーズ FPGA コ ン フ ィ ギ ュ レーシ ョ ン
ユーザー ガ イ ド 』 (UG470)[参照 1] ま た は 『UltraScale ア ー キ テ ク チ ャ コ ン フ ィ ギ ュ レ ー シ ョ ン ユーザー ガ イ ド 』
(UG570)[参照 5] を参照 し て く だ さ い。
CFGBVS ピ ン の設定に よ り 常にバン ク 0 の I/O 電圧サポー ト が決ま り ま す。 7 シ リ ーズ デバ イ ス の場合はバン ク 14
お よ びバン ク 15 が、 UltraScale アーキテ ク チ ャ の場合はバン ク 65 が HR バン ク タ イ プなので、 CFGBVS ピ ン と それ
に該当す る CONFIG_VOLTAGE プ ロ パテ ィ に よ り 、 コ ン フ ィ ギ ュ レーシ ョ ン中にサポー ト さ れ る I/O 電圧が決ま り ま
す。
デザ イ ンで CONFIG_MODE 設定の互換性を確認する ため、 Report DRC チ ェ ッ ク がバン ク 0、 14、 15 (7 シ リ ーズ)、 65
(UltraScale ア ー キ テ ク チ ャ ) で実行 さ れ ま す。 DRC の メ ッ セー ジ は、 そ のバ ン ク に対す る IOSTANDARD お よ び
CONFIG_VOLTAGE 設定に基づいて表示 さ れます。 コ ン フ ィ ギ ュ レーシ ョ ン電圧は、 IBIS モデルを エ ク ス ポー ト す る
際に も 使用 さ れます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
104
第 2 章 : 主な プ ロパテ ィ の説明
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design、 get_designs)
値
•
1.5、 1.8、 2.5、 ま たは 3.3
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property CONFIG_VOLTAGE {1.5 | 1.8 | 2.5 | 3.3} [current_design]
XDC の構文例
# Configure I/O Bank 0 for 1.8V operation
set_property CONFIG_VOLTAGE 1.8 [get_designs impl_1]
影響のある処理
•
place_design
•
report_drc
•
write_bitstream
関連項目
97 ページの 「CFGBVS」
103 ページの 「CONFIG_MODE」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
105
第 2 章 : 主な プ ロパテ ィ の説明
CONTAIN_ROUTING
CONTAIN_ROUTING プ ロ パテ ィ は、 Pblock 内に含 ま れ る 信号の配線を その Pblock で定義 さ れ る エ リ ア内の配線 リ
ソ ース に制限す る ために使用 し ます。 こ れに よ り 、 Pblock 内の信号が Pblock 外に配線 さ れ る こ と はな く な る ので、 デ
ザ イ ンの再利用性が増 し ます。
デフ ォ ル ト では、 Pblock の定義に よ り Pblock に割 り 当て ら れ る ロ ジ ッ ク の配置が Pblock で定義 さ れたエ リ ア内に制
限 さ れます。 こ のプ ロ パテ ィ には、 配線 と 同 じ 効果があ り ます。 CONTAIN_ROUTING は Pblock 専用のプ ロ パテ ィ で、
XDC フ ァ イ ルで create_pblock コ マ ン ド の後に指定す る 必要があ り ます。
ヒ ン ト : CONTAIN_ROUTING は、 階層デザ イ ン フ ロ ーの OOC モジ ュ ールに関連す る すべての Pblock に使用する こ
と をお勧め し ます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : 階層デザ イ ン』 (UG905) [参照 14] を参照 し て く だ
さ い。
Pblock で し か使用 さ れない信号のみが Pblock に含まれます。 た と えば、 Pblock 内に BUFGMUX リ ソ ース がない場合
は、 BUFGMUX か ら のパ ス ま たは BUFGMUX へのパ ス は含め る こ と がで き ません。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
PBlock (get_pblocks)
値
•
TRUE : Pblock 内の信号の配線が Pblock 範囲で定義 さ れたエ リ アに含まれます。
•
FALSE : Pblock 内に信号の配線は含まれません。 こ れがデフ ォ ル ト です。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property CONTAIN_ROUTING <TRUE | FALSE> [get_pblocks <pblock_name>]
説明 :
•
<pblock_name> には、 プ ロ パテ ィ を設定する Pblock 名を指定 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
106
第 2 章 : 主な プ ロパテ ィ の説明
XDC の例
set_property CONTAIN_ROUTING true [get_pblocks pblock_usbEngine0]
set_property CONTAIN_ROUTING true [get_pblocks pblock_usbEngine1]
影響のある処理
•
配線
関連項目 118 ページの 「EXCLUDE_PLACEMENT」
170 ページの 「PBLOCK」
DCI_CASCADE
DCI_CASCADE は、 ハ イ パフ ォーマ ン ス (HP) I/O バン ク のグループ内でのマ ス タ ー /ス レーブ関係を定義 し ます。 デ
ジ タ ル制御 イ ン ピーダ ン ス (DCI) の基準電圧は、 マ ス タ ーの I/O バン ク か ら ス レーブの I/O バン ク ま でチ ェーン接続
さ れてい ます。
DCI_CASCADE は、 ど の隣接バン ク が DCI カ ス ケー ド 機能を使用す る か を指定す る ので、 基準抵抗器を マ ス タ ー バ
ン ク と 共有す る こ と にな り ます。 同 じ I/O バン ク 列にあ る 複数の I/O バン ク が DCI を使用 し ていて、 同 じ VRN/VRP
抵抗値を使用す る 場合、 1 ペアの ピ ンだけ を高精度抵抗器に接続すれば よ い よ う にす る ため、 内部 VRN お よ び VRP
ノ ー ド がカ ス ケー ド さ れ ます。 DCI_CASCADE はマ ス タ ー バン ク 、 お よ び こ の機能に関連付け ら れてい る すべての
ス レーブ バン ク を識別 し ます。 詳細については、 『7 シ リ ーズ FPGA SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG471)[参
照 2]ま たは 『UltraScale アーキ テ ク チ ャ SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571)[参照 6] を参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
•
Kintex®-7 デバ イ ス
•
Kintex UltraScale デバ イ ス
•
Virtex®-7 デバ イ ス
•
Virtex UltraScale デバ イ ス
•
大型の Zynq® デバ イ ス
適用可能なオブ ジ ェ ク ト
•
I/O バン ク (get_iobanks)
°
High Performance (HP) バン ク タ イ プ
値
有効なハ イ パフ ォーマ ン ス (HP) バン ク 番号
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
107
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property DCI_CASCADE {slave_banks} [get_iobanks master_bank]
説明 :
•
slave_banks は ス レーブ バン ク のバン ク 番号の リ ス ト です。
•
master_bank は指定 さ れたマ ス タ ー バン ク のバン ク 番号です。
XDC の構文例
# Designate Bank 14 as a master DCI Cascade bank and Banks 15 and 16 as its slaves
set_property DCI_CASCADE {15 16} [get_iobanks 14]
影響のある処理
•
I/O 配置
•
place_design
•
DRC
•
write_bitstream
•
report_power
DIFF_TERM
差動終端 (DIFF_TERM) プ ロ パテ ィ は入力お よ び双方向ポー ト の差動 I/O 規格をサポー ト し ます。 ビル ト イ ン さ れた、
100オームの差動終端を イ ネーブル/デ ィ ス エーブルす る のに使用 し ます。 詳細は、 『7 Series FPGAs SelectIO リ ソ ース
ユーザー ガ イ ド 』 (UG471) [参照 2]を参照 し て く だ さ い。
DIFF_TERM は、 差動の入力お よ び双方向ポー ト バ ッ フ ァ ーに差動終端を使用す る 必要があ り 、 ま た Vivado ツール
がポー ト にオンチ ッ プ終端を追加す る 必要のあ る こ と を示 し ます。
アーキテ ク チ ャ サポー ト
7 シ リ ーズ デバ イ ス
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
108
第 2 章 : 主な プ ロパテ ィ の説明
推奨 : UltraScale アーキ テ ク チ ャ デバ イ ス の場合は、 差動終端を イ ネーブルにす る ため、 「DIFF_TERM_ADV」 を使用
す る 必要があ り ます。
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
•
差動入力バ ッ フ ァ ーに接続 さ れた入力ポー ト ま たは双方向ポー ト
次の I/O 規格のいずれか を使用 し てい る エ レ メ ン ト :
°
LVDS
°
LVDS_25
°
MINI_LVDS_25
°
PPDS_25
°
RSDS_25
値
•
FALSE (デフ ォ ル ト )
差動終端はデ ィ ス エーブルにな り ます。
•
TRUE
差動終端は イ ネーブルにな り ます。
構文
推奨 : 言語テ ン プ レー ト ま たは 『Vivado Design Suite 7 シ リ ーズ ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17]か ら の イ ン ス
タ ン シエーシ ョ ン テ ンプ レー ト を使用 し て、 適切な構文を指定 し て く だ さ い。
Verilog 構文
DIFF_TERM パ ラ メ ー タ ーを ポー ト 宣言の直前に配置 し ます。
(* DIFF_TERM = "TRUE" *) input PORT
Verilog の構文例
// Enables differential termination on the specified port
(* DIFF_TERM = "TRUE" *) input CLK;
VHDL 構文
VHDL 属性は次の よ う に宣言 し て指定 し ます。
attribute DIFF_TERM : string;
attribute DIFF_TERM of port_name : signal is "TRUE";
VHDL の構文例
-- Designates differential termination on the specified port
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
109
第 2 章 : 主な プ ロパテ ィ の説明
attribute DIFF_TERM of CLK : signal is "TRUE";
XDC 構文
set_property DIFF_TERM TRUE [get_ports port_name]
説明 :
•
set_property DIFF_TERM はポー ト オブジ ェ ク ト に割 り 当て る こ と がで き ます。
•
port_name は差動バ ッ フ ァ ーに接続 さ れ る 入力ポー ト ま たは双方向ポー ト です。
XDC の構文例
# Enables differential termination on port named CLK_p
set_property DIFF_TERM TRUE [get_ports CLK_p]
影響のある処理
•
I/O 配置
•
report_ssn
•
report_power
関連項目
•
110 ページの 「DIFF_TERM_ADV」
•
131 ページの 「IBUF_LOW_PWR」
•
144 ページの 「IOSTANDARD」
DIFF_TERM_ADV
ア ド バン ス差動終端 (DIFF_TERM_ADV) プ ロ パテ ィ は UltraScale アーキ テ ク チ ャ でのみ使用す る も ので、 入力ま たは
双方向ポー ト の、 ビル ト イ ン さ れた 100 オームの差動終端を イ ネーブル/デ ィ ス エーブルする ために使用 し ます。
DIFF_TERM_ADV は入力お よ び双方向ポー ト にのみ使用で き 、 ま た適切な VCCO 電圧で し か使用で き ま せん。 100
オームの実効差動終端を提供す る には、 I/O バン ク の VCCO は、 HP I/O バン ク の場合は 1.8V に接続 し 、 HR I/O バン ク
の場合は 2.5V に接続す る 必要が あ り ま す。 詳細は、 『UltraScale Series FPGAs SelectIO リ ソ ー ス ユーザー ガ イ ド 』
(UG571) [参照 6]を参照 し て く だ さ い。
ヒ ン ト : 7 シ リ ーズ デザ イ ン を UltraScale アーキ テ ク チ ャ に移行する には、「DIFF_TERM」 プ ロ パテ ィ を使用す る と 適
切な DIFF_TERM_ADV 値に自動的にア ッ プデー ト さ れます。
DIFF_TERM_ADV お よ び DIFF_TERM は、 差動の入力お よ び双方向ポー ト バ ッ フ ァ ーに差動終端を使用す る 必要が
あ り 、 ま た Vivado Design Suite がポー ト にオンチ ッ プ終端を追加する 必要のあ る こ と を示 し ます。
アーキテ ク チ ャ サポー ト
UltraScale
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
110
第 2 章 : 主な プ ロパテ ィ の説明
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
•
差動入力バ ッ フ ァ ーに接続 さ れた入力ポー ト ま たは双方向ポー ト
次の I/O 規格のいずれか を使用 し てい る オブジ ェ ク ト :
°
LVDS、 LVDS_25、 MINI_LVDS_25、 SUB_LVDS、 お よ び SUB_LVDS_25
°
LVPECL
°
PPDS_25
°
RSDS_25
°
SLVS_400_25、 お よ び SLVS_400_18
値
•
TERM_100 - オンチ ッ プ差動終端で100 オーム を使用す る 。
•
TERM_NONE (デフ ォ ル ト ) - オンチ ッ プ差動終端を使用 し ない。
注記 : UltraScale デバ イ ス には DIFF_TERM プ ロ パテ ィ も 使用で き ます。
°
DIFF_TERM = TRUE の場合、 DIFF_TERM_ADV = TERM_100 にな り ます。
°
DIFF_TERM = FALSE の場合、 DIFF_TERM_ADV = TERM_NONE にな り ます。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property DIFF_TERM_ADV TERM_100 [get_ports port_name]
説明 :
•
set_property DIFF_TERM_ADV は入力ま たは双方向ポー ト に割 り 当て る こ と がで き ます。
•
port_name は差動バ ッ フ ァ ーに接続 さ れ る 入力ポー ト ま たは双方向ポー ト です。
XDC の構文例
# Enables differential termination on port named CLK_p
set_property DIFF_TERM_ADV TERM_100 [get_ports CLK_p]
影響のある処理
•
I/O 配置
•
report_ssn
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
111
第 2 章 : 主な プ ロパテ ィ の説明
•
report_power
関連項目
•
108 ページの 「DIFF_TERM」
•
144 ページの 「IOSTANDARD」
DONT_TOUCH
重要 : KEEP お よ び KEEP_HIERARCHY 属性を DONT_TOUCH に置換 し ます。
DONT_TOUCH は、 ユーザー階層ま たは イ ン ス タ ン シエー ト 済み コ ン ポーネ ン ト を最適化 し ない よ う に指定す る も の
で、 こ れに よ り 最適化がバ ウ ン ダ リ を超えて実行 さ れない よ う にな り ます。 こ れで フ ロ アプ ラ ン、 解析、 デバ ッ グが
し やす く な り ますが、 最適化が抑止 さ れ る ので、 デザ イ ンが大 き く 、 遅 く な っ て し ま う こ と があ り ます。
KEEP ま たは KEEP_HIERARCHY の代わ り に DONT_TOUCH プ ロ パテ ィ を使用 し て く だ さ い。DONT_TOUCH プ ロ パ
テ ィ は KEEP ま たは KEEP_HIERARCHY プ ロ パテ ィ と 同 じ よ う に機能 し ますが、KEEP お よ び KEEP_HIERARCHY と
は異な り 配置配線に フ ォ ワー ド ア ノ テー ト さ れ る ので、イ ンプ リ メ ン テーシ ョ ン中に ロ ジ ッ ク 最適化で削除 さ れ る こ
と はあ り ません。
推奨 : DONT_TOUCH が適用 さ れてい る モジ ュ ール イ ン ス タ ン ス の出力すべてに レ ジ ス タ を付け ます。 こ の属性は、
合成前に適用す る と 最 も 効果的です。
注記 : モ ジ ュ ール ま たはエ ン テ ィ テ ィ のポー ト には設定で き ま せん。 特定のポー ト を 保持す る 必要が あ る 場合は、
flatten_hierarchy = “none” 設定を使用す る か、 モジ ュ ールま たはエン テ ィ テ ィ 自体に DONT_TOUCH を設定 し ます。
推奨 : こ の属性は RTL で設定す る こ と をお勧め し ます。 XDC フ ァ イ ルが読み込まれ る 前に、 保持す る 必要のあ る 信
号が最適化で削除 さ れて し ま う こ と があ り ます。 こ の属性を RTL で設定 し ておけば、 必ず適用 さ れます。
DONT_TOUCH、 KEEP、 ま たは KEEP_HIERARCHY を使用す る 場合は注意が必要です。 ほかの属性が DONT_TOUCH
属性 と 競合す る 場合は、 DONT_TOUCH 属性が優先 さ れます。
ま た、 合 成 お よ び バ ッ ク エ ン ド の 最 適 化 ま で ネ ッ ト を 保 持 で き る よ う に す る た め、 デ バ ッ グ 用 に ネ ッ ト に
DONT_TOUCH を設定す る こ と も で き ます。ネ ッ ト に設定 さ れた DONT_TOUCH はそのネ ッ ト が保持 さ れ る こ と のみ
を確約 し 、 ド ラ イ バーや駆動 さ れてい る ロ ジ ッ ク は変更する 可能性があ り ます。階層ネ ッ ト の場合は、DONT_TOUCH
が設定 さ れてい る 部分のみが保持 さ れ る ので、保持す る 必要のな る セグ メ ン ト にはすべて DONT_TOUCH を設定す る
必要があ り ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
こ の属性は信号、 モジ ュ ール、 エン テ ィ テ ィ 、 コ ン ポーネ ン ト に設定で き ます。
•
セル (get_cells)
•
ネ ッ ト (get_nets)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
112
第 2 章 : 主な プ ロパテ ィ の説明
値
•
FALSE : 階層を超え て最適化 さ れます。 こ れがデフ ォ ル ト 設定です。
•
TRUE : 最適化が階層バ ウ ン ダ リ を超えない よ う にな り 、 階層が保持 さ れます。 イ ン ス タ ン シエー ト さ れた コ ン
ポーネ ン ト ま たはネ ッ ト が最適化に よ り 削除 さ れて し ま わない よ う 、 保持 さ れます。
構文
Verilog 構文
Verilog 属性をユーザーの階層 イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。
(* DONT_TOUCH = "{TRUE|FALSE}" *)
Verilog の構文例
// Preserve the hierarchy of instance CLK1_rst_sync
(* DONT_TOUCH = "TRUE" *) reset_sync #(
.STAGES(5)
) CLK1_rst_sync (
.RST_IN(RST | ~LOCKED),
.CLK(clk1_100mhz),
.RST_OUT(rst_clk1)
);
ワ イ ヤの例
(* dont_touch = "true" *) wire sig1;
assign sig1 = in1 & in2;
assign out1 = sig1 & in2;
モ ジ ュ ールの例
(* DONT_TOUCH = "true|yes" *)
module example_dt_ver
(clk,
In1,
In2,
out1);
イ ン ス タ ン スの例
(* DONT_TOUCH = "true|yes" *) example_dt_ver U0
(.clk(clk),
.in1(a),
.in2(b),
out1(c));
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute DONT_TOUCH : string;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
113
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 属性は次の よ う に指定 し ます。
attribute DONT_TOUCH of name: label is "{TRUE|FALSE}";
説明 :
•
name はユーザー定義の イ ン ス タ ン ス の名前です。
VHDL の構文例
attribute DONT_TOUCH : string;
-- Preserve the hierarchy of instance CLK1_rst_sync
attribute DONT_TOUCH of CLK1_rst_sync: label is "TRUE";
…
CLK1_rst_sync : reset_sync
PORT MAP (
RST_IN => RST_LOCKED,
CLK => clk1_100mhz,
RST_OUT
=> rst_clk1
);
XDC 構文
set_property DONT_TOUCH {TRUE|FALSE} [get_cells <instance_name>]
set_property DONT_TOUCH {TRUE|FALSE} [get_nets <net_name>]
説明 :
•
instance_name は リ ーフ セルま たは階層セルにな り ます。
•
net_name は階層ネ ッ ト の名前にな り ます。
XDC の構文例
# Preserve the hierarchy of instance CLK1_rst_sync
set_property DONT_TOUCH TRUE [get_cells CLK1_rst_sync]
# Preserve all segments of the hierarchical net named by the Tcl variables
set_property DONT_TOUCH [get_nets -segments $hier_net]
影響のある処理
•
synth_design
•
opt_design
•
phys_opt_design
•
floorplanning
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
114
第 2 章 : 主な プ ロパテ ィ の説明
DRIVE
プ ロ グ ラ マブル出力駆動電流をサポー ト す る I/O 規格で コ ン フ ィ ギ ュ レーシ ョ ン さ れた出力バ ッ フ ァ ーに対 し 、 出力
バ ッ フ ァ ーの駆動電流を mA で指定 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
出力バ ッ フ ァ ーに接続 さ れた出力ま たは双方向ポー ト
値
整数値 :
•
2
•
4
•
6
•
8
•
12 (デフ ォ ル ト )
•
16
•
24 (UltraScale アーキテ ク チ ャ には こ の値は使用で き ません)
構文
Verilog 構文
推論 さ れて イ ン ス タ ン シエー ト さ れた出力バ ッ フ ァ ーの場合、 適切な Verilog 属性構文を最上位出力ポー ト 宣言の前
に配置 し ます。
(* DRIVE = "{2|4|6|8|12|16|24}" *)
Verilog の構文例
// Sets the drive strength on the STATUS output port to 2 mA
(* DRIVE = "2" *) output STATUS,
VHDL 構文
推論 さ れて イ ン ス タ ン シエー ト さ れた出力バ ッ フ ァ ーの場合、適切な VHDL 属性構文を最上位出力ポー ト 宣言の前に
配置 し ます。
VHDL 属性は次の よ う に宣言 し て指定 し ます。
attribute DRIVE : integer;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
115
第 2 章 : 主な プ ロパテ ィ の説明
attribute DRIVE of port_name : signal is value;
説明 :
•
port_name は最上位出力ポー ト です。
VHDL の構文例
STATUS : out std_logic;
attribute DRIVE : integer;
-- Sets the drive strength on the STATUS output port to 2 mA
attribute DRIVE of STATUS : signal is 2;
XDC 構文
set_property DRIVE value [get_ports port_name]
説明 :
•
port_name は出力ま たは双方向ポー ト です。
XDC の構文例
# Sets the drive strength of the port STATUS to 2 mA
set_property DRIVE 2 [get_ports STATUS]
影響のある処理
•
I/O 配置
•
ノ イ ズ レ ポー ト
•
消費電力レ ポー ト
関連項目
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま たは 『UltraScale アーキ テ ク
チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]を参照 し て く だ さ い。
•
OBUF
•
OBUFT
•
IOBUF
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
116
第 2 章 : 主な プ ロパテ ィ の説明
EQUALIZATION
EQUALIZATION は伝送 ラ イ ン での周波数に依存 し た減衰を な く すめ、 差動レ シーバーで使用で き 、 特定の I/O 規格
を イ ンプ リ メ ン ト し ます。
リ ニア レ シーバーの EQUALIZATION は レ シーバーで AC ゲ イ ン を提供 し 、伝送 ラ イ ン での高周波 ロ ス を補正 し ます。
ヒ ン ト : 全体的なシ グナル イ ン テ グ リ テ ィ を向上 さ せ る ため、 レ シーバーでの イ コ ラ イ ゼーシ ョ ンは、 ト ラ ン ス ミ ッ
タ ーでの 「PRE_EMPHASIS」 と 組み合わせる こ と がで き ます。
アーキテ ク チ ャ サポー ト
UltraScale デバ イ ス
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
値
重要 : EQUALIZATION の値は特にキ ャ リ ブ レーシ ョ ン さ れてい ません。 デザ イ ン で使用 さ れてい る 周波数 と 伝送 ラ
イ ンに合わせたベス ト な設定を決め る には、 シ ミ ュ レーシ ョ ン を実行す る こ と を推奨 し ます。 場合に よ っ ては、 イ コ
ラ イ ゼーシ ョ ンの レベルが低いほ う が高い場合 よ り も よ い結果を生む こ と があ り ます。 イ コ ラ イ ゼーシ ョ ンの レベル
を上げ過ぎ る と 、 信号の質を改善す る よ り も 悪化 さ せ る こ と があ り ます。
EQUALIZATION 属性に使用で き る 値は次の と お り です。
•
•
HP I/O バン ク
°
EQ_LEVEL0
°
EQ_LEVEL1
°
EQ_LEVEL2
°
EQ_LEVEL3
°
EQ_LEVEL4
°
EQ_NONE (デフ ォ ル ト )
HR I/O バン ク
°
EQ_LEVEL0、 EQ_LEVEL0_DC_BIAS
°
EQ_LEVEL1、 EQ_LEVEL1_DC_BIAS
°
EQ_LEVEL2、 EQ_LEVEL2_DC_BIAS
°
EQ_LEVEL3、 EQ_LEVEL3_DC_BIAS
°
EQ_LEVEL4、 EQ_LEVEL4_DC_BIAS
°
EQ_NONE (デフ ォ ル ト )
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
117
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
XDC フ ァ イ ルでは EQUALIZATION 属性を次の よ う な構文で使用 し ます。
set_property EQUALIZATION value [get_ports port_name]
説明 :
•
set_property EQUALIZATION は入力バ ッ フ ァ ーでの リ ニ ア イ コ ラ イ ゼーシ ョ ン を イ ネーブルに し ます。
•
<Value> には指定のポー ト に対 し サポー ト さ れてい る EQUALIZATION 値の 1 つが入 り ます。
•
port_name は差動バ ッ フ ァ ーに接続 さ れ る 入力ポー ト ま たは双方向ポー ト です。
関連項目 •
160 ページの 「LVDS_PRE_EMPHASIS」
•
178 ページの 「PRE_EMPHASIS」
EXCLUDE_PLACEMENT
EXCLUDE_PLACEMENT は、 Pblock で定義 さ れたエ リ ア内のデバ イ ス リ ソ ース を Pblock に含まれ る ロ ジ ッ ク にのみ
使用す る こ と を示すためのプ ロ パテ ィ です。
デフ ォ ル ト では、 Vivado 配置ツールで Pblock に割 り 当て ら れない ロ ジ ッ ク を Pblock で予約 さ れた リ ソ ース範囲内に
配置で き ます。 こ のプ ロ パテ ィ を使用す る と それがで き な く な り 、 Pblock 用に ロ ジ ッ ク リ ソ ース が予約 さ れます。
ヒ ン ト : こ れは P b l o c k の ロ ジ ッ ク リ ソ ース を限定す る だけで、 外部の ロ ジ ッ ク では、 Pblock で定義 さ れたエ
リ ア内の配線 リ ソ ース が ま だ使用で き ます。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
•
Pblock (get_pblocks)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
118
第 2 章 : 主な プ ロパテ ィ の説明
値
•
TRUE : Pblock 内のデバ イ ス ロ ジ ッ ク リ ソ ース を Pblock に割 り 当て ら れた ロ ジ ッ ク で使用 さ れ る よ う に予約 し 、
それ以外の外部 ロ ジ ッ ク には配置 さ れない よ う に し ます。
•
FALSE : Pblock 内で ロ ジ ッ ク リ ソ ース は予約 さ れません。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property EXCLUDE_PLACEMENT TRUE [get_pblocks test]
影響のある処理
•
フ ロ アプ ラ ン
•
配置
関連項目
106 ページの 「CONTAIN_ROUTING」
170 ページの 「PBLOCK」
FSM_ENCODING
FSM_ENCODING は、 合成中の ス テー ト マシ ンのエン コ ー ド 方法を指定 し ます。
デフ ォ ル ト では、 デザ イ ンに対 し ベス ト な ソ リ ュ ーシ ョ ン を決め る 内部アルゴ リ ズ ムに基づいて、 Vivado 合成ツール
が ス テー ト マシ ン のエ ン コ ーデ ィ ン グ プ ロ ト コ ルを選択 し ます。 し か し 、 FSM_ENCODING プ ロ パテ ィ を使用す る
場合は、 ユーザーが ス テー ト マシ ンのエン コ ーデ ィ ン グ を指定する こ と がで き ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
119
第 2 章 : 主な プ ロパテ ィ の説明
適用可能なオブ ジ ェ ク ト
•
ス テー ト マシ ン レ ジ ス タ
値
•
AUTO : FSM_ENCODING を指定 し ない場合、 こ れがデフ ォ ル ト です。 Vivado 合成ツールで最適な ス テー ト マシ
ン エン コ ーデ ィ ン グ方式が決定 さ れ る よ う にな り ます。同 じ デザ イ ン で も ス テー ト マシ ン レ ジ ス タ が異な る と 、
別のエン コ ーデ ィ ン グ ス タ イ ルが使用 さ れ る こ と があ り ます。
•
ONE_HOT
•
SEQUENTIAL
•
JOHNSON
•
GRAY
•
NONE : Vivado 合成ツール内で指定 し た ス テー ト マシ ン レ ジ ス タ の ス テー ト マシ ン エン コ ーデ ィ ン グがデ ィ ス
エーブルにな り ます。 こ の場合、 ス テー ト マシ ンは ロ ジ ッ ク と し て合成 さ れます。
Verilog 構文
(* fsm_encoding = "one_hot" *) reg [7:0] my_state;
VHDL 構文
type count_state is (zero, one, two, three, four, five, six, seven);
signal my_state : count_state;
attribute fsm_encoding : string;
attribute fsm_encoding of my_state : signal is "sequential";
XDC 構文
該当な し
影響のある処理
•
合成
関連項目
•
121 ページの 「FSM_SAFE_STATE」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
120
第 2 章 : 主な プ ロパテ ィ の説明
FSM_SAFE_STATE RTL でのみ設定可能です。 XDC ではサポー ト さ れてい ません。
Vivado 合成は、 「FSM_ENCODING」 プ ロ パテ ィ ま たは Vivado 合成の -fsm_extraction コ マ ン ド ラ イ ン オプシ ョ ン で指
定 さ れ る さ ま ざ ま な コ ン フ ィ ギ ュ レーシ ョ ンで、 有限ス テー ト マシ ン (FSM) の抽出をサポー ト し てい ます。 詳細は、
『Vivado Design Suite ユーザー ガ イ ド : 合成』 (UG901)[参照 11] を参照 し て く だ さ い。
し か し 、 ス テー ト マシ ンは、 デザ イ ンがエ ラ ーにな っ て し ま う 無効ス テー ト 、 ま たは到達不可能な ス テー ト に遷移す
る こ と があ り ます。 FSM_SAFE_STATE 属性は、 ス テー ト マシ ンが不正な ス テー ト にな っ た と き に次の ク ロ ッ ク サ イ
ク ルで既知の ス テー ト にす る ロ ジ ッ ク を、 ス テー ト マ シ ン に挿入 し ま す。 FSM が無効な ス テー ト に遷移 し た場合、
FSM_SAFE_STATE プ ロ パテ ィ で FSM が Vivado 合成で合成 さ れ る と き に使用 さ れ る 回復ス テー ト が定義 さ れます。
ヒ ン ト : FSM ス テー ト を セーフ リ カバ リ にす る だけでな く 、合成結果の質に も 影響する こ と があ り ます。 通常はエ リ
アが大 き く な っ てパフ ォーマ ン ス が落ち る こ と があ り ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ス テー ト マシ ン レ ジ ス タ
値
•
reset_state - Vivado 合成で指定 さ れてい る よ う に RESET ス テー ト ま で ス テー ト マシ ン を再実行 し ます。
•
power_on_state - Vivado 合成で指定 さ れてい る よ う に POWER_ON ス テー ト ま で ス テー ト マシ ン を再実行し ます。
•
default - Vivado 合成で指定 さ れてい る よ う にデフ ォ ル ト ス テー ト ま で ス テー ト マシ ン を再実行 し ます。
•
auto - Hamming-3 エン コーデ ィ ン グ を暗示 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
121
第 2 章 : 主な プ ロパテ ィ の説明
構文
RTL ソ ース でのみ設定可能です。 XDC では現在の と こ ろサポー ト さ れてい ません。
Verilog 構文
(* fsm_safe_state = "reset_state" *) reg [2:0] state;
(* fsm_safe_state = "reset_state" *) reg [7:0] my_state;
VHDL 構文
type count_state is (zero, one, two, three, four, five, six, seven);
signal my_state : count_state;
attribute fsm_safe_state : string;
attribute fsm_safe_state of my_state : signal is "power_on_state";
XDC 構文
該当な し
影響のある処理
•
合成
関連項目
•
119 ページの 「FSM_ENCODING」
H_SET および HU_SET
HDL ソ ース フ ァ イ ルで定義 さ れてい る よ う に、 デザ イ ンの階層に基づいて ま と め ら れた ロ ジ ッ ク エ レ メ ン ト の集合
体が階層セ ッ ト です。 H_SET、 HU_SET、 U_SET は HDL デザ イ ン ソ ース フ ァ イ ル内の属性で、 合成 さ れたデザ イ ン
や イ ン プ リ メ ン ト さ れたデザ イ ンには現われ ません。 こ れ ら は、 RPM (Relatively Placed Macro) を RTL デザ イ ン で定
義す る と き に使用 さ れます。こ れ ら のプ ロ パテ ィ の使用お よ び RPM の定義については、『Vivado Design Suite ユーザー
ガ イ ド : 制約の使用』 (UG903) を[参照 12]参照 し て く だ さ い。
デザ イ ンの階層にあ る ロ ジ ッ ク セルに RLOC プ ロ パテ ィ が設定 さ れてい る と 、 H_SET は暗示的に使用 さ れます。 あ
る 階層ブ ロ ッ ク 内の ロ ジ ッ ク エ レ メ ン ト で、RLOC プ ロ パテ ィ が設定 さ れてい る も のは、同 じ 階層セ ッ ト (H_SET) に
自動的に割 り 当て ら れます。
モ ジ ュ ールの イ ン ス タ ン ス 名に基づい て、 各階層モ ジ ュ ールに H_SET プ ロ パテ ィ が割 り 当て ら れ ま す。 各階層モ
ジ ュ ールに H_SET 名は 1 つ し かない場合があ り 、 ま たその階層内のすべての ロ ジ ッ ク エ レ メ ン ト は、 その H_SET の
エ レ メ ン ト にな り ます。
注記 : HU_SET ま たは U_SET が定義 さ れていないが、 RLOC が定義 さ れてい る 場合は、 H_SET のみが定義 さ れます。
ま た、 デザ イ ン の階層に依存 し ない ユーザー定義階層セ ッ ト (HU_SET) ま たはユーザー定義セ ッ ト (U_SET) を手動
で作成す る こ と がで き ます。
1 つの階層モジ ュ ールに対 し 複数の HU_SET 名を定義 し 、特定階層の イ ン ス タ ン ス を特定 HU_SET に割 り 当て る こ と
がで き ます。 こ れで、 1 つの階層モジ ュ ールの ロ ジ ッ ク エ レ メ ン ト を複数の HU_SET に分け る こ と がで き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
122
第 2 章 : 主な プ ロパテ ィ の説明
重要 : H_SET ま たは HU_SET を使用 し てい る 場合、 合成 さ れたデザ イ ンで RPM の階層を保持する には、 Vivado 合成
で KEEP_HIERARCHY プ ロ パテ ィ も 必要にな り ます。
RTL ソ ー ス フ ァ イ ルに RLOC も あ る 場合は、 H_SET、 HU_SET、 U_SET プ ロ パテ ィ は、 合成後ネ ッ ト リ ス ト でセル
に対す る 読み出 し 専用の RPM プ ロ パテ ィ に変換 さ れます。 Vivado Design Suite のテ キ ス ト エデ ィ タ ーで RTL ソ ース
フ ァ イ ルを開 く と 、 HU_SET お よ び U_SET が表示 さ れますが、 セル オブジ ェ ク ト の [Properties] ビ ュ ーでは RPM プ
ロ パテ ィ が表示 さ れます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
次のデザ イ ン エ レ メ ン ト 、 ま たはその カ テ ゴ リ ーで HU_SET は使用す る こ と がで き ま す。 詳細は、 『Vivado Design
Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17]ま たは 『UltraScale アーキ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』
(UG974) [参照 18]を参照 し て く だ さ い。
•
レジス タ
•
LUT
•
マク ロ インスタンス
•
RAMS
•
RAMD
•
RAMB18/FIFO18
•
RAMB36/FIFO36
•
DSP48
値
•
NAME :HU_SET の名前
構文
Verilog 構文
こ れは、 合成後ネ ッ ト リ ス ト で RPM を定義す る 階層ブ ロ ッ ク のセ ッ ト の内容を定義す る ため、 RLOC プ ロ パテ ィ と
組み合わせた Verilog 構文です。 Verilog 属性は ロ ジ ッ ク エ レ メ ン ト の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。
(* RLOC = "X0Y0", HU_SET = "h0" *) FD sr0 (.C(clk), .D(sr_1n), .Q(sr_0));
Verilog 例
こ れは、モジ ュ ールでのシ フ ト レ ジ ス タ フ リ ッ プ フ ロ ッ プの RLOC お よ び HU_SET プ ロ パテ ィ を定義する Verilog モ
ジ ュ ールです。
module ffs (
input clk,
input d,
output q
);
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
123
第 2 章 : 主な プ ロパテ ィ の説明
wire
wire
wire
wire
wire
wire
wire
wire
sr_0,
sr_1,
sr_2,
sr_3,
sr_4,
sr_5,
sr_6,
sr_7,
wire
inr, inrn, outr;
inv
inv
inv
inv
inv
inv
inv
inv
inv
(sr_0, sr_0n);
(sr_1, sr_1n);
(sr_2, sr_2n);
(sr_3, sr_3n);
(sr_4, sr_4n);
(sr_5, sr_5n);
(sr_6, sr_6n);
(sr_7, sr_7n);
(inr, inrn);
(*
(*
(*
(*
(*
(*
(*
(*
(*
FD
i0
i1
i2
i3
i4
i5
i6
i7
i8
sr_0n;
sr_1n;
sr_2n;
sr_3n;
sr_4n;
sr_5n;
sr_6n;
sr_7n;
RLOC = "X0Y0", HU_SET = "h0" *) FD sr0
RLOC = "X0Y0", HU_SET = "h0" *) FD sr1
RLOC = "X0Y1", HU_SET = "h0" *) FD sr2
RLOC = "X0Y1", HU_SET = "h0" *) FD sr3
RLOC = "X0Y0", HU_SET = "h1" *) FD sr4
RLOC = "X0Y0", HU_SET = "h1" *) FD sr5
RLOC = "X0Y1", HU_SET = "h1" *) FD sr6
RLOC = "X0Y1", HU_SET = "h1" *) FD sr7
LOC = "SLICE_X0Y0" *) FD inq (.C(clk),
outq (.C(clk), .D(sr_0n), .Q(outr));
(.C(clk), .D(sr_1n), .Q(sr_0));
(.C(clk), .D(sr_2n), .Q(sr_1));
(.C(clk), .D(sr_3n), .Q(sr_2));
(.C(clk), .D(sr_4n), .Q(sr_3));
(.C(clk), .D(sr_5n), .Q(sr_4));
(.C(clk), .D(sr_6n), .Q(sr_5));
(.C(clk), .D(sr_7n), .Q(sr_6));
(.C(clk), .D(inrn), .Q(sr_7));
.D(d), .Q(inr));
assign q = outr;
endmodule // ffs
先ほ ど の例では、 ffs モジ ュ ールの イ ン ス タ ン ス に KEEP_HIERARCHY プ ロ パテ ィ を指定 し て、 階層を保持 し 、 合成
さ れたデザ イ ンで RPM を定義す る 必要があ り ます。
module top (
input clk,
input d,
output q
);
wire
c1, c2;
(* KEEP_HIERARCHY = "YES" *) ffs u0 (clk, d, c1);
(* KEEP_HIERARCHY = "YES" *) ffs u1 (clk, c1, c2);
(* KEEP_HIERARCHY = "YES" *) ffs u2 (clk, c2, q);
endmodule // top
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute HU_SET : string;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
124
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 制約は次の よ う に指定 し ます。
attribute HU_SET of {component_name | entity_name | label_name}
:{component|entity|label} is "NAME";
説明 :
•
{component_name | entity_name | label_name} にはデザ イ ン エ レ メ ン ト を指定 し ます。
•
{component|entity|label} は指定 し たデザ イ ン エ レ メ ン ト の イ ン ス タ ン ス ID です。
•
"NAME" には HU_SET の名前を指定 し ます。
XDC 構文
HU_SET プ ロ パテ ィ は XDC 制約を使用 し ては定義で き ません。 RLOC と と も に ロ ジ ッ ク エ レ メ ン ト に設定 さ れてい
る HU_SET プ ロ パテ ィ は、 RPM を定義 し 、 その結果合成 さ れたデザ イ ンのネ ッ ト リ ス ト に読み出 し 専用の RPM プ ロ
パテ ィ が設定 さ れます。
ヒ ン ト : デ ザ イ ン 内 で RPM の よ う に 機能す る マ ク ロ オ ブ ジ ェ ク ト を Vivado Design Suite で 定義す る に は、
create_macro ま たは update_macro を使用 し ます。 こ れ ら の コ マ ン ド の詳細は、 『Vivado Design Suite Tcl コ マ ン
ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参照 し て く だ さ い。
影響のある処理
•
デザ イ ンの フ ロ アプ ラ ン
•
place_design
•
synth_design
関連項目
•
148 ページの 「KEEP_HIERARCHY」
•
185 ページの 「RLOC」
•
188 ページの 「RLOCS」
•
190 ページの 「RLOC_ORIGIN」
•
194 ページの 「RPM」
•
195 ページの 「RPM_GRID」
•
200 ページの 「U_SET」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
125
第 2 章 : 主な プ ロパテ ィ の説明
HIODELAY_GROUP
HIODELAY_GROUP は IDELAYCTRL コ ン ポーネ ン ト を関連す る IDELAY ま たは ODELAY イ ン ス タ ン ス と と も にグ
ループに ま と め、 配置お よ び複製が正 し く 行われ る よ う にす る プ ロ パテ ィ です。
HIODELAY_GROUP を使用 し て IDELAYCTRL にグループ名を割 り 当て る 場合は、 同 じ HIODELAY_GROUP プ ロ パ
テ ィ を使用 し てそのグループに IDELAY ま たは ODELAY セル も 関連付け る 必要があ り ます。
重要 : HIODELAY_GROUP には複数のセルを含め る こ と がで き ますが、1 つのセルに 1 つの HIODELAY_GROUP し か
割 り 当て ら れません。
次の例は、 set_property を使用 し て、 特定の IDELAYCTRL に関連付け ら れてい る IDELAY/ODELAY エ レ メ ン ト をす
べて グループに ま と めてい ます。
set_property HIODELAY_GROUP IO_DLY1 [get_cells MY_IDELAYCTRL_inst]
set_property HIODELAY_GROUP IO_DLY1 [get_cells MY_IDELAY_inst]
set_property HIODELAY_GROUP IO_DLY1 [get_cells MY_ODELAY_inst]
HIODELAY_GROUP と IODELAY_GROUP の相違点
HIODELAY_GROUP は各階層に 1つ し か使用で き ません。 HIODELAY_GROUP は、 次の場合に使用 し ます。
•
IDELAYCTRL を含む 1 モジ ュ ールの イ ン ス タ ン ス が複数あ る 場合
および
•
ほかの論理階層にあ る IDELAY ま たは ODELAY と 、 その イ ン ス タ ン ス を ま と め る つ も り がない場合
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
IDELAY、 ODELAY、 ま たは IDELAYCTRL イ ン ス タ ン ス
値
指定 し た グループ名
構文
Verilog 構文
Verilog 属性は IDELAY、 ODELAY、 ま たは IDELAYCTRL の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。
(* HIODELAY_GROUP = "value" *)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
126
第 2 章 : 主な プ ロパテ ィ の説明
Verilog の構文例
//
//
//
//
//
Specifies a group name of DDR_INTERFACE to an instantiated IDELAYCTRL
IDELAYCTRL:IDELAYE2/ODELAYE2 Tap Delay Value Control
Virtex-7
Xilinx HDL Language Template, version 2014.1
Specifies DDR_INTERFACE group name for IDELAYs/ODELAYs and IDELAYCTRL
(* HIODELAY_GROUP = “DDR_INTERFACE” *)
IDELAYCTRL DDR_IDELAYCTRL_inst (
.RDY(),
// 1-bit output:Ready output
.REFCLK(REFCLK), // 1-bit input:Reference clock input
.RST(1’b0)
// 1-bit input:Active high reset input
);
// End of DDR_IDELAYCTRL_inst instantiation
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute HIODELAY_GROUP : string;
イ ン ス タ ン シエー ト 済み イ ン ス タ ン ス の場合は、 次の よ う に指定 し ます。
attribute HIODELAY_GROUP of instance_name : label is "group_name";
説明 :
•
instance_name は イ ン ス タ ン シエー ト 済みの IDELAY、 ODELAY、 ま たは IDELAYCTRL の イ ン ス タ ン ス名です。
VHDL の構文例
// Specifies a group name of DDR_INTERFACE to an instantiated IDELAYCTRL
attribute HIODELAY_GROUP :STRING;
attribute HIODELAY_GROUP of DDR_IDELAYCTRL_inst: label is "DDR_INTERFACE";
begin
-- IDELAYCTRL:IDELAYE2/ODELAYE2 Tap Delay Value Control
-Virtex-7
-- Xilinx HDL Language Template, version 2014.1
DDR_IDELAYCTRL_inst :IDELAYCTRL
port map (
RDY => open,
-- 1-bit output:Ready output
REFCLK => REFCLK, -- 1-bit input:Reference clock input
RST => ‘0’
-- 1-bit input:Active high reset input
);
-- End of DDR_IDELAYCTRL_inst instantiation
XDC 構文
set_property HIODELAY_GROUP group_name [get_cells instance_name]
説明 :
•
instance_name は IDELAY、 ODELAY、 ま たは IDELAYCTRL の イ ン ス タ ン ス名です。
XDC の構文例
# Specifies a group name of DDR_INTERFACE to an instantiated IDELAYCTRL
set_property HIODELAY_GROUP DDR_INTERFACE [get_cells DDR_IDELAYCTRL_inst]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
127
第 2 章 : 主な プ ロパテ ィ の説明
影響のある処理
place_design
関連項目
142 ページの 「IODELAY_GROUP」
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま たは 『UltraScale アーキ テ ク
チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]を参照 し て く だ さ い。
•
IDELAYCTRL
•
IDELAYE2
•
ODELAYE2
HLUTNM
HLUTNM を使用す る と 、互換性のあ る 入力を持つ 2 つの LUT5、SRL16 ま たは LUTRAM コ ン ポーネ ン ト が同 じ LUT6
サ イ ト に配置 さ れます。 階層ご と に HLUTNM を使用 し て、 ど ち ら も 同 じ グループ名で互換性のあ る イ ン ス タ ン ス タ
イ プであ る 必要があ り ます。
HLUTNM と LUTNM の相違点
HLUTNM は各階層に 1 つ し か使用で き ません。
•
複数の LUT コ ン ポーネ ン ト を含む 1 モジ ュ ールの複数の イ ン ス タ ン ス を グループに ま と め る 場合に HLUTNM
を使用 し ます。
•
別の階層にあ る 2 つの LUT コ ン ポーネ ン ト を同 じ グループに ま と め る 場合は LUTNM を使用 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
LUT (LUT1、 LUT2、 LUT3、 LUT4、 LUT5)
°
SRL (SRL16E)
°
LUTRAM (RAM32X1S)
値
一意のグループ名
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
128
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
Verilog 属性は LUT の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。
Verilog 属性は、 同 じ 論理階層のペアで使用する 必要があ り ます。
(* HLUTNM = "group_name" *)
Verilog の構文例
// Designates state0_inst to be placed in same LUT6 as state1_inst
// LUT5:5-input Look-Up Table with general output (Mapped to a LUT6)
//
Virtex-7
// Xilinx HDL Language Template, version 2014.1
(* HLUTNM = "LUT_group1" *) LUT5 #(
.INIT(32'ha2a2aea2) // Specify LUT Contents
) state0_inst (
.O(state_out[0]), // LUT general output
.I0(state_in[0]), // LUT input
.I1(state_in[1]), // LUT input
.I2(state_in[2]), // LUT input
.I3(state_in[3]), // LUT input
.I4(state_in[4]) // LUT input
);
// End of state0_inst instantiation
// LUT5:5-input Look-Up Table with general output (Mapped to a LUT6)
//
Virtex-7
// Xilinx HDL Language Template, version 2014.1
(* HLUTNM = "LUT_group1" *) LUT5 #(
.INIT(32'h00330073) // Specify LUT Contents
) state1_inst (
.O(state_out[1]), // LUT general output
.I0(state_in[0]), // LUT input
.I1(state_in[1]), // LUT input
.I2(state_in[2]), // LUT input
.I3(state_in[3]), // LUT input
.I4(state_in[4]) // LUT input
);
// End of state1_inst instantiation
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute HLUTNM : string;
イ ン ス タ ン シエー ト 済み イ ン ス タ ン ス の場合は、 次の よ う に指定 し ます。
attribute HLUTNM of instance_name : label is "group_name";
説明 :
•
instance_name は LUT1、 LUT2、 LUT3、 LUT4、 LUT5、 SRL16、 ま たは LUTRAM イ ン ス タ ン ス です。
VHDL 属性は、 同 じ 論理階層のペアで使用する 必要があ り ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
129
第 2 章 : 主な プ ロパテ ィ の説明
VHDL の構文例
-- Designates state0_inst to be placed in same LUT6 as state1_inst
attribute HLUTNM : string;
attribute HLUTNM of state0_inst : label is "LUT_group1";
attribute HLUTNM of state1_inst : label is "LUT_group1";
begin
-- LUT5:5-input Look-Up Table with general output (Mapped to SliceM LUT6)
-Virtex-7
-- Xilinx HDL Language Template, version 2014.1
state0_inst :LUT5
generic map (
INIT => X"a2a2aea2") -- Specify LUT Contents
port map (
O => state_out(0), -- LUT general output
I0 => state_in(0), -- LUT input
I1 => state_in(1), -- LUT input
I2 => state_in(2), -- LUT input
I3 => state_in(3), -- LUT input
I4 => state_in(4)
-- LUT input
);
-- End of state0_inst instantiation
-- LUT5:5-input Look-Up Table with general output (Mapped to SliceM LUT6)
-Virtex-7
-- Xilinx HDL Language Template, version 2014.1
State1_inst :LUT5
generic map (
INIT => X"00330073") -- Specify LUT Contents
port map (
O => state_out(1), -- LUT general output
I0 => state_in(0), -- LUT input
I1 => state_in(1), -- LUT input
I2 => state_in(2), -- LUT input
I3 => state_in(3), -- LUT input
I4 => state_in(4)
-- LUT input
);
-- End of state1_inst instantiation
XDC 構文
set_property HLUTNM group_name [get_cells instance_name]
説明 :
•
instance_name は LUT1、 LUT2、 LUT3、 LUT4、 LUT5、 SRL16、 ま たは LUTRAM イ ン ス タ ン ス です。
XDC の構文例
# Designates state0_inst LUT5 to be placed in same LUT6 as state1_inst
set_property HLUTNM LUT_group1 [get_cells state0_inst]
set_property HLUTNM LUT_group1 [get_cells state1_inst]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
130
第 2 章 : 主な プ ロパテ ィ の説明
影響のある処理
•
place_design
関連項目
•
157 ページの 「LUTNM」
IBUF_LOW_PWR
IBUF_LOW_PWR プ ロ パテ ィ は、 パフ ォーマ ン ス と 消費電力の ト レー ド オ フ を オプシ ョ ンで提供 し ます。
IBUF_LOW_PWR プ ロ パテ ィ は入力ポー ト に適用 さ れます。 デフ ォ ル ト では TRUE に設定 さ れ、 低電力モー ド でその
ポー ト に対 し て入力バ ッ フ ァ ーが イ ンプ リ メ ン ト さ れ ます。 FALSE に設定 し た場合は、 ハ イ パフ ォ ーマ ン ス モー ド
にな り ます。
消費電力の変更は XPE (XPower Estimator) ま たは Vivado Design Suite の report_power コ マ ン ド を使用 し て予測で き
ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
SSTL や HSTL な ど の VREF ベース の I/O 規格、ま たは LVDS や DIFF_HSTL な ど の差動規格が指定 さ れてい る 入
力ポー ト (get_ports)
値
•
TRUE :低電力モー ド でそのポー ト に対 し て入力ま たは双方向バ ッ フ ァ ーを イ ンプ リ メ ン ト し ます。 こ れがデフ ォ
ル ト 値です。
•
FALSE :ハ イ パフ ォーマ ン ス モー ド で入力ま たは双方向バ ッ フ ァ ーを イ ンプ リ メ ン ト し ます。
構文
Verilog 構文
推論 さ れて イ ン ス タ ン シエー ト さ れた入力バ ッ フ ァ ーお よ び双方向バ ッ フ ァ ーの場合、 適切な Verilog 属性構文を最
上位出力ポー ト 宣言の前に配置 し ます。
(* IBUF_LOW_PWR = "FALSE" *)
Verilog の構文例
// Sets the input buffer to high performance
(* IBUF_LOW_PWR = "FALSE" *) input STATE,
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
131
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 構文
推論 さ れて イ ン ス タ ン シエー ト さ れた入力バ ッ フ ァ ーの場合、適切な VHDL 属性構文を最上位出力ポー ト 宣言の前に
配置 し ます。
VHDL 属性は次の よ う に宣言 し て指定 し ます。
attribute IBUF_LOW_PWR : boolean;
attribute IBUF_LOW_PWR of port_name : signal is TRUE | FALSE;
説明 :
•
port_name は最上位出力ポー ト です。
VHDL の構文例
STATE : in std_logic;
attribute IBUF_LOW_PWR : boolean;
-- Sets the input buffer to high performance
attribute IBUF_LOW_PWR of STATE : signal is FALSE;
XDC 構文
DIRECTION が IN ま たは INOUT のポー ト オブジ ェ ク ト に IBUF_LOW_PWR をプ ロ パテ ィ と し て割 り 当て ます。
set_property IBUF_LOW_PWR TRUE [get_ports port_name]
説明 :
•
set_property IBUF_LOW_PWR はポー ト オブジ ェ ク ト に割 り 当て る こ と がで き ます。
•
port_name は入力ま たは双方向ポー ト です。
影響のある処理
•
report_power
•
report_timing
関連項目
•
144 ページの 「IOSTANDARD」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
132
第 2 章 : 主な プ ロパテ ィ の説明
IN_TERM
IN_TERM は、 キ ャ リ ブ レー ト さ れない入力終端の イ ン ピーダ ン ス値を指定 し 、 ハ イ レ ン ジ (HR) バン ク 入力でのみ
サ ポ ー ト さ れ て い ま す。 ハ イ パ フ ォ ー マ ン ス (HP) バ ン ク の入力に は、 オ ン チ ッ プ終端の DCI (Digital Controlled
Impedance) の 「IOSTANDARD」 を使用 し ます。
重要 : UltraScale アーキ テ ク チ ャ の場合、 キ ャ リ ブ レー ト さ れない終端を指定する には、 IN_TERM ではな く 「ODT」
を使用 し て く だ さ い。
終端は常に入力にあ り 、 ま た出力バ ッ フ ァ ーが ト ラ イ ス テー ト にな っ てい る 場合は双方向ピ ンにあ り ます。 し か し 、
キ ャ リ ブ レー ト さ れない分割終端オプシ ョ ン と 、 ト ラ イ ス テー ト の分割終端 DCI と の重要な違いは、 DCI の場合は、
VRN お よ び VRP ピ ン での外部基準抵抗にキ ャ リ ブ レー ト す る のですが、 こ の機能の場合は、 温度、 プ ロ セ ス、 電圧
の変動を補正す る ためのキ ャ リ ブ レーシ ョ ン ルーチンのない内部抵抗を使用す る 点です。 こ のオプシ ョ ンには、 40、
50、 60オームのテブナン等価抵抗値を指定で き ます。 詳細は、 『7 シ リ ーズ FPGA SelectIO リ ソ ース ユーザー ガ イ ド 』
(UG471) [参照 2] を参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
ハ イ レ ン ジ (HR) バン ク 入力でのみ 7 シ リ ーズ デバ イ ス はサポー ト さ れてい ます。
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
接続 さ れた入力ポー ト ま たは双方向ポー ト
値
•
NONE (デフ ォ ル ト )
•
UNTUNED_SPLIT_40
•
UNTUNED_SPLIT_50
•
UNTUNED_SPLIT_60
構文
Verilog 構文
こ の属性を設定す る には、 適切な Verilog 属性構文を最上位入力ま たは双方向ポー ト 宣言の前に配置 し ます。
(* IN_TERM = "{NONE|UNTUNED_SPLIT_40|UNTUNED_SPLIT_50|UNTUNED_SPLIT_60}" *)
Verilog の構文例
// Sets an on-chip input impedance of 50 Ohms to input ACT5
(* IN_TERM = "UNTUNED_SPLIT_50" *) input ACT5,
VHDL 構文
こ の属性を設定す る には、 適切な VHDL 属性構文を最上位入力ま たは双方向ポー ト 宣言の前に配置 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
133
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 属性は次の よ う に宣言 し ます。
attribute IN_TERM : string;
VHDL 属性は次の よ う に指定 し ます。
attribute IN_TERM of
port_name : signal is value;
説明 :
•
port_name は最上位の入力ま たは双方向ポー ト です。
VHDL の構文例
ACT5 : in std_logic;
attribute IN_TERM : string;
-- Sets an on-chip input impedance of 50 Ohms to input ACT5
attribute IN_TERM of ACT5 : signal is “UNTUNED_SPLIT_50”;
XDC 構文
set_property IN_TERM value [get_ports port_name]
説明 :
•
IN_TERM はポー ト オブジ ェ ク ト 、 お よ びポー ト オブジ ェ ク ト に接続 さ れてい る ネ ッ ト に割 り 当て る こ と がで
き ます。
•
port_name は入力ま たは双方向ポー ト です。
XDC の構文例
# Sets an on-chip input impedance of 50 Ohms to input ACT5
set_property IN_TERM UNTUNED_SPLIT_50 [get_ports ACT5]
影響のある処理
•
I/O 配置
•
ノ イ ズ レ ポー ト
•
消費電力レ ポー ト
関連項目
•
107 ページの 「DCI_CASCADE」
•
108 ページの 「DIFF_TERM」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
134
第 2 章 : 主な プ ロパテ ィ の説明
INTERNAL_VREF
INTERNAL_VREF は、 バン ク の内部レ ギ ュ レ ー タ ーの使用を指定 し て、 基準電圧を必要 と す る 規格の基準電圧を供
給 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
I/O バン ク (get_iobanks)
値
•
0.60
•
0.675
•
0.75
•
0.90
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property INTERNAL_VREF {value} [get_iobanks bank]
説明 :
•
value は基準電圧値です。
XDC の構文例
# Designate Bank 14 to have a reference voltage of 0.75 Volts
set_property INTERNAL_VREF 0.75 [get_iobanks 14]
影響のある処理
•
I/O 配置
•
place_design
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
135
第 2 章 : 主な プ ロパテ ィ の説明
•
DRC
•
report_power
IP_REPO_PATHS
こ のプ ロ パテ ィ を使用す る と 、 Vivado Design Suite で使用す る カ ス タ ム IP カ タ ロ グ を作成で き ます。
IP_REPO_PATHS プ ロ パテ ィ は、 サー ド パーテ ィ ま たはユーザー定義の IP を含む 1 つま たは複数のデ ィ レ ク ト リ への
パ ス を定義 し ま す。 指定 し たデ ィ レ ク ト リ お よ び下位デ ィ レ ク ト リ で IP 定義が検索 さ れ、 Vivado Design Suite IP カ
タ ロ グに追加 さ れ、 デザ イ ン入力や IP イ ン テ グ レー タ ー機能で使用で き る よ う にな り ます。
こ のプ ロ パテ ィ は、 現在のプ ロ ジ ェ ク ト の現在の フ ァ イ ルセ ッ ト に割 り 当て ら れます。
ヒ ン ト : IP_REPO_PATHS プ ロ パ テ ィ が作成時に そ れぞれの の新規プ ロ ジ ェ ク ト に割 り 当 て ら れ る よ う に Vivado
Design Suite を 設定す る に は、 Vivado IDE で [Tools] →[Options] → [General] → [IP Catalog] フ ィ ール ド の [Default IP
Repository Search Paths] でパ ス を指定 し ます。 こ のデフ ォ ル ト の IP リ ポジ ト リ 検索パ ス は、 vivado.ini フ ァ イ ルに
保存 さ れ、 IP_REPO_PATHS を使用 し て新 し いプ ロ ジ ェ ク ト に追加 さ れます。
IP_REPO_PATHS は <component>.xml フ ァ イ ルを検索 し ま す。 こ の <component> はカ タ ロ グ に追加す る IP の名前で
す。 XML フ ァ イ ルでは、 IP を定義する さ ま ざ ま な フ ァ イ ルが識別 さ れます。 IP_REPO_PATHS プ ロ パテ ィ では、 リ ポ
ジ ト リ の各 IP の XML フ ァ イ ルを直接指定する 必要はあ り ません。 IP カ タ ロ グが指定 し た IP リ ポジ ト リ の下位フ ォ
ルダーか ら 、 カ タ ロ グに追加す る IP が検索 さ れます。
重要 : IP_REPO_PATHS プ ロ パテ ィ に IP カ タ ロ グへ追加 さ れ る 新 し い IP リ ポジ ト リ デ ィ レ ク ト リ が含ま れ る よ う に
設定 し た ら 、 update_ip_catalog コ マ ン ド を使用す る 必要があ り ます。
リ ポジ ト リ のサー ド パーテ ィ ま たはユーザー定義 IP で現在のプ ロ ジ ェ ク ト ま たはデザ イ ン で使用中のデバ イ ス の製
品 フ ァ ミ リ がサポー ト さ れ る 場合、 その IP はカ タ ロ グ に互換性の あ る IP と し て追加 さ れ ま す。 IP の互換性に タ ー
ゲ ッ ト パーツ が含まれない場合、 その IP が現在のプ ロ ジ ェ ク ト ま たはデザ イ ン と 互換性がな く 、 IP カ タ ロ グには表
示 さ れない こ と があ り ます。 詳細は、 『Vivado Design Suite ユーザー ガ イ ド : IP を使用 し た設計』 (UG896) [参照 10] を
参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
UltraScale デバ イ ス
適用可能なオブ ジ ェ ク ト
•
current_fileset
値
•
<dir_name> - ユーザー定義 IP が格納 さ れ る 1 つま たは複数のデ ィ レ ク ト リ 名を指定 し ます。 デ ィ レ ク ト リ 名は、
相対的ま たは絶対的に指定で き 、 別々に指定す る か、 スペース で区切っ て指定 し 、 波か っ こ { } か二重引用符 " "
で囲む必要があ り ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
136
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property IP_REPO_PATHS {<ip_directories>} [current_fileset]
説明 :
•
<ip_directories> は、 サー ド パーテ ィ ま たはユーザー定義のパ ッ ケージ さ れた IP 定義を含むデ ィ レ ク ト リ を 1 つ
ま たは複数指定 し ます。
XDC の構文例
set_property IP_REPO_PATHS {c:/Data/Designs C:/myIP} [current_fileset]
update_ip_catalog
使用可能な段階
デザ イ ン入力
IO_BUFFER_TYPE
重要 : 入力お よ び出力ポー ト には、 「BUFFER_TYPE」 ではな く IO_BUFFER_TYPE プ ロ パテ ィ を使用 し て く だ さ い。
IO_BUFFER_TYPE は最上位ポー ト に設定 し 、 バ ッ フ ァ ーを使用す る か ど う か を指定 し ます。
デフ ォ ル ト では、 Vivado 合成で入力ポー ト には入力バ ッ フ ァ ーが、 出力ポー ト には出力バ ッ フ ァ ーが推論 さ れ ま す
が、 IO_BUFFER_TYPE プ ロ パテ ィ を使用す る と 、 こ のデフ ォ ル ト ビヘ イ ビ アーを無効にで き ます。
IO_BUFFER_TYPE 属性は最上位 ク ロ ッ ク ポー ト に設定で き ます。RTL でのみ設定可能で、XDC では現在の と こ ろサ
ポー ト さ れてい ません。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
BUFFER_TYPE 属性は最上位ポー ト (all_inputs、 all_outputs、 get_ports) に設定で き ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
137
第 2 章 : 主な プ ロパテ ィ の説明
値 •
NONE : こ の値を入力ポー ト ま たは出力ポー ト に指定す る と 、 入力ま たは出力バ ッ フ ァ ーは推論 さ れな く な り ま
す。
構文 Verilog 構文
(* io_buffer_type = "none" *) input in1;
VHDL 構文
entity test is port(
in1 : std_logic_vector (8 downto 0);
clk : std_logic;
out1 : std_logic_vector(8 downto 0));
attribute io_buffer_type : string;
attribute io_buffer_type of out1: signal is "none";
end test;
XDC 構文
該当な し
影響のある処理
•
合成
関連項目 96 ページの 「BUFFER_TYPE」
99 ページの 「CLOCK_BUFFER_TYPE」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
138
第 2 章 : 主な プ ロパテ ィ の説明
IOB
IOB を使用す る と 、Vivado ツールで入力ま たは出力 ロ ジ ッ ク ブ ロ ッ ク (I/O ブ ロ ッ ク ま たは IOB) に接続 さ れた レ ジ ス
タ が配置 さ れ る よ う にな り 、 タ イ ミ ン グが改善 さ れ ます。 こ の属性は、 I/O バ ッ フ ァ ーに配置す る レ ジ ス タ に接続 さ
れたポー ト に設定 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
レ ジ ス タ に接続 さ れ る ポー ト すべて
値
•
FALSE (デフ ォ ル ト )
•
TRUE
構文
Verilog 構文
こ の属性を設定す る には、 適切な Verilog 属性構文を最上位ポー ト 宣言の前に配置 し ます。
(* IOB = "{TRUE|FALSE}" *)
Verilog の構文例
// Place the register connected to ACK in the input logic site
(* IOB = "TRUE" *) input ACK,
VHDL 構文
こ の属性を設定す る には、 適切な VHDL 属性構文を最上位ポー ト 宣言の前に配置 し ます。
VHDL 属性は次の よ う に宣言 し て指定 し ます。
attribute IOB : string;
attribute IOB of <port_name>: signal is "{TRUE|FALSE}";
説明 :
•
port_name は最上位ポー ト です。
VHDL の構文例
ACK : in std_logic;
attribute IOB : string;
-- Place the register connected to ACK in the input logic site
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
139
第 2 章 : 主な プ ロパテ ィ の説明
attribute IOB of ACK: signal is "TRUE";
XDC 構文
set_property IOB value [get_ports port_name]
説明 :
•
value は TRUE ま たは FALSE です。
XDC の構文例
# Place the register connected to ACK in the input logic site
set_property IOB TRUE [get_ports ACK]
影響のある処理
•
place_design
IOBDELAY
IOBDELAY (Input Output Block Delay) プ ロ パテ ィ は、 シ ス テ ム同期デー タ 入力を取 り 込むための入力ホール ド タ イ ム
を緩和す る ため、 ILOGIC ブ ロ ッ ク の遅延の追加 ・ 削除を指定 し ます。
ILOGIC ブ ロ ッ ク は I/O ブ ロ ッ ク (IOB) の隣にあ り 、 IOB を介 し て FPGA にデー タ が入 る たびにそのデー タ を取 り 込
む同期エ レ メ ン ト を含んでい ます。7 シ リ ーズ デバ イ ス の ILOGIC ブ ロ ッ ク は、HP I/O バン ク では ILOGICE2 と し て、
HR I/O バン ク では ILOGICE3 と し て コ ン フ ィ ギ ュ レーシ ョ ンする こ と がで き ます。 ILOGICE2 と ILOGICE3 は機能的
には同 じ ですが、 ILOGICE3 には IOBDELAY と と も に コ ン フ ィ ギ ュ レーシ ョ ン で き る ゼ ロ ホール ド 遅延エ レ メ ン ト
(ZHOLD) があ る のが違いです。 IOBDELAY の使用については、 『7 シ リ ーズ FPGA SelectIO リ ソ ー ス ユーザー ガ イ
ド 』 (UG471)[参照 2]ま たは 『UltraScale アーキテ ク チ ャ SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571)[参照 6] を参照 し
て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
入力バ ッ フ ァ ー (get_cells)
•
ネ ッ ト (get_nets)
値
•
NONE :IBUF お よ び入力フ リ ッ プ フ ロ ッ プ (IFD) パ ス の両方に対 し 、 遅延を OFF に設定 し ます。
•
IBUF
•
°
I/O コ ン ポーネ ン ト 内の任意の レ ジ ス タ に対 し 、 遅延を OFF に設定 し ます。
°
ILOGIC ブ ロ ッ ク ま でのバ ッ フ ァ ーの付いたパ ス に対 し 、 遅延を ON に設定 し ます。
IFD
°
I/O コ ン ポーネ ン ト 内の IFF レ ジ ス タ に対 し 、 遅延を ON に設定 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
140
第 2 章 : 主な プ ロパテ ィ の説明
ILOGIC ブ ロ ッ ク ま でのバ ッ フ ァ ーの付いたパ ス に対 し 、 遅延を OFF に設定 し ます。
°
•
BOTH :IBUF お よ び IFD パ ス の両方に対 し 、 遅延を ON に設定 し ます。
構文
Verilog 構文
Verilog 制約をモジ ュ ールま たは イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。
Verilog 制約は次の よ う に指定 し ます。
(* IOBDELAY = {NONE|BOTH|IBUF|IFD} *)
VHDL 構文
VHDL 制約は次の よ う に宣言 し ます。
attribute iobdelay: string;
VHDL 制約は次の よ う に指定 し ます。
attribute iobdelay of {component_name |label_name }:{component|label} is
“{NONE|BOTH|IBUF|IFD}”;
XDC 構文
set_property IOBDELAY value [get_cells cell_name]
説明 :
•
value には、 NONE、 IBUF、 IFD、 BOTH のいずれかが入 り ます。
XDC の構文例
set_property IOBDELAY "BOTH" [get_nets
{data0_I}]
影響のある処理
•
タ イ ミ ング
•
配置
•
配線
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
141
第 2 章 : 主な プ ロパテ ィ の説明
IODELAY_GROUP
IODELAY_GROUP は IDELAYCTRL セルを関連す る IDELAY お よ び ODELAY セル と と も にグループに ま と め、 配置
お よ び複製が正 し く 行われ る よ う に し ます。
IODELAY_GROUP を使用 し て IDELAYCTRL にグループ名を割 り 当て る 場合は、 同 じ IODELAY_GROUP プ ロ パテ ィ
を使用 し てそのグループに IDELAY ま たは ODELAY セル も 関連付け る 必要があ り ます。
重要 : IODELAY_GROUP には複数のセルを含め る こ と がで き ますが、 1 つのセルに 1 つの IODELAY_GROUP し か割
り 当て ら れません。 .
次の例は、 set_property を使用 し て、 特定の IDELAYCTRL に関連付け ら れてい る IDELAY/ODELAY エ レ メ ン ト をす
べて グループに ま と めてい ます。
set_property IODELAY_GROUP IO_DLY1 [get_cells MY_IDELAYCTRL_inst]
set_property IODELAY_GROUP IO_DLY1 [get_cells MY_IDELAY_inst]
set_property IODELAY_GROUP IO_DLY1 [get_cells MY_ODELAY_inst]
IODELAY_GROUP と HIODELAY_GROUP の相違点 IODELAY_GROUP では階層を越え て複数のエ レ メ ン ト を グループに ま と め る こ と がで き ます。 階層の異な る I/O 遅
延 コ ン ポーネ ン ト を グループに ま と め る には IODELAY_GROUP を使用 し ます。
HIODELAY_GROUP は、 同 じ 階層モジ ュ ールにあ る I/O 遅延コ ン ポーネ ン ト を グループに ま と め ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
IDELAY、 ODELAY、 ま たは IDELAYCTRL イ ン ス タ ン ス
値
指定 し た グループ名
構文
Verilog 構文
Verilog 属性は IDELAY、 ODELAY、 ま たは IDELAYCTRL の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。
(* IODELAY_GROUP = "value" *)
Verilog の構文例
// Specifies a group name of DDR_INTERFACE to an instantiated IDELAYCTRL
// IDELAYCTRL:IDELAYE2/ODELAYE2 Tap Delay Value Control
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
142
第 2 章 : 主な プ ロパテ ィ の説明
//
Virtex-7
// Xilinx HDL Language Template, version 2014.1
// Specifies DDR_INTERFACE group name for IDELAYs/ODELAYs and IDELAYCTRL
(* IODELAY_GROUP = “DDR_INTERFACE” *)
IDELAYCTRL DDR_IDELAYCTRL_inst (
.RDY(),
// 1-bit output:Ready output
.REFCLK(REFCLK), // 1-bit input:Reference clock input
.RST(1’b0)
// 1-bit input:Active high reset input
);
// End of DDR_IDELAYCTRL_inst instantiation
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute IODELAY_GROUP : string;
イ ン ス タ ン シエー ト 済み イ ン ス タ ン ス の場合は、 次の よ う に指定 し ます。
attribute IODELAY_GROUP of instance_name : label is "group_name";
説明 :
•
instance_name は イ ン ス タ ン シエー ト 済みの IDELAY、 ODELAY、 ま たは IDELAYCTRL の イ ン ス タ ン ス名です。
VHDL の構文例
// Specifies a group name of DDR_INTERFACE to an instantiated IDELAYCTRL
attribute IODELAY_GROUP :STRING;
attribute IODELAY_GROUP of DDR_IDELAYCTRL_inst: label is "DDR_INTERFACE";
begin
-- IDELAYCTRL:IDELAYE2/ODELAYE2 Tap Delay Value Control
-Virtex-7
-- Xilinx HDL Language Template, version 2014.1
DDR_IDELAYCTRL_inst :IDELAYCTRL
port map (
RDY => open,
-- 1-bit output:Ready output
REFCLK => REFCLK, -- 1-bit input:Reference clock input
RST => ‘0’
-- 1-bit input:Active high reset input
);
-- End of DDR_IDELAYCTRL_inst instantiation
XDC 構文
set_property IODELAY_GROUP group_name [get_cells instance_name]
説明 :
•
group_name はユーザー指定の IODELAY_GROUP 名です。
•
instance_name は IDELAY、 ODELAY、 ま たは IDELAYCTRL の イ ン ス タ ン ス名です。
XDC の構文例
# Specifies a group name of DDR_INTERFACE to an instantiated IDELAYCTRL
set_property IODELAY_GROUP DDR_INTERFACE [get_cells DDR_IDELAYCTRL_inst]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
143
第 2 章 : 主な プ ロパテ ィ の説明
影響のある処理
•
配置
関連項目
•
126 ページの 「HIODELAY_GROUP」
•
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17]ま たは 『UltraScale アーキ テ
ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]を参照 し て く だ さ い。
°
IDELAYCTRL
°
IDELAYE2
°
ODELAYE2
IOSTANDARD
IOSTANDARD は、 タ ーゲ ッ ト デバ イ ス で入力、 出力、 ま たは双方向ポー ト を コ ン フ ィ ギ ュ レーシ ョ ンす る のに ど の
プ ロ グ ラ マブル I/O 規格を使用す る か を指定 し ます。
重 要 : Vivado Design Suite が デ ザ イ ン か ら ビ ッ ト ス ト リ ー ム を 生成す る 前 に、 I/O バ ン ク の す べ て の ポ ー ト で
IOSTANDARD を定義す る 必要があ り ます。 ただ し 、 IOSTANDARD は GT ま たは XADC には適用で き ません。
1 つの I/O バン ク に複数の異な る IOSTANDARD を含め る こ と がで き ますが、 こ れ ら の IOSTANDARD には互換性が
な く てはな り ません。 1 つの I/O バン ク に異な る 入力、 出力、 双方向 I/O 規格を組み合わせ る 場合は、 次のルールに
従っ て く だ さ い。
1.
同 じ 出力 CCO 要件を持つ出力規格は、 同 じ バン ク に ま と め る こ と がで き ます。
2.
同 じ CCO お よ び VREF要件を持つ入力規格は、 同 じ バン ク に ま と め る こ と がで き ます。
3.
同 じ CCO 要件を持つ入力規格お よ び出力規格は、 同 じ バン ク に ま と め る こ と がで き ます。
4.
ほかの規格 と 双方向 I/O 規格を組み合わせる 場合は、 双方向規格が最初の 3 つのルールに沿っ てい る こ と を確認
し て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
任意のポー ト - I/O ポー ト の RTL ソ ース で IOSTANDARD を定義す る か、 ポー ト セルの XDC 制約 と し て定
義 し ます。
値
タ ーゲ ッ ト にす る ザ イ リ ン ク ス FPGA に よ っ て有効な I/O 規格は異な り ます。 デバ イ ス別の IOSTANDARD 値につい
て は、 『7 シ リ ー ズ FPGA SelectIO リ ソ ー ス ユーザー ガ イ ド 』 (UG471)[参照 2] ま た は 『UltraScale ア ー キ テ ク チ ャ
SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571)[参照 6] を参照 し て く だ さ い。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
144
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
こ のパ ラ メ ー タ ーを設定す る には、 適切な Verilog 構文を最上位ポー ト 宣言の前に配置 し ます。
(* IOSTANDARD = "value" *)
Verilog の構文例
// Sets the I/O Standard on the STATUS output to LVCMOS12
(* IOSTANDARD = "LVCMOS12" *) output STATUS,
VHDL 構文
適切な VHDL 属性構文を最上位ポー ト 宣言の前に配置 し ます。
VHDL 属性は次の よ う に宣言 し て指定 し ます。
attribute IOSTANDARD : string;
attribute IOSTANDARD of <port_name>: signal is "<standard>";
説明 :
•
port_name は最上位出力ポー ト です。
VHDL の構文例
STATUS : out std_logic;
attribute IOSTANDARD : string;
-- Sets the I/O Standard on the STATUS output to LVCMOS12
attribute IOSTANDARD of STATUS: signal is "LVCMOS12";
XDC 構文
IOSTANDARD は、 デザ イ ン内のポー ト オブジ ェ ク ト に XDC 制約 と し て定義する こ と も で き ます。
set_property IOSTANDARD value [get_ports port_name]
説明 :
•
port_name は最上位ポー ト です。
XDC の構文例
# Sets the I/O Standard on the STATUS output to LVCMOS12
set_property IOSTANDARD LVCMOS12 [get_ports STATUS]
影響のある処理
•
I/O 配置
•
ノ イ ズ レ ポー ト
•
消費電力レ ポー ト
•
DRC レ ポー ト
•
place_design
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
145
第 2 章 : 主な プ ロパテ ィ の説明
関連項目
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま たは 『UltraScale アーキ テ ク
チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]を参照 し て く だ さ い。
•
OBUF
•
OBUFT
•
IOBUF
KEEP_COMPATIBLE
FPGA デザ イ ン プ ロ セ ス 中に、 デバ イ ス を よ り 大 き い も のや、 別のパーツ に変更す る 必要が出て く る こ と があ り ま
す。 KEEP_COMPATIBLE プ ロ パテ ィ では、 必要に応 じ てデザ イ ンの タ ーゲ ッ ト デバ イ ス を変更す る こ と がで き る よ
う に、 現在のデザ イ ン と 互換性があ る はずの 1 つま たは複数のザ イ リ ン ク ス FPGA パーツの リ ス ト を定義 し ます。 こ
れに よ り 、 指定 し たデバ イ ス間には互換性のない IO ま たは PACKAGE_PINS が使用 さ れない よ う にな り 、 デザ イ ン
が現在のパーツ ま たは互換性のあ る パーツにマ ッ プで き る よ う にな り ます。
KEEP_COMPATIBLE プ ロ パテ ィ を使用する と 、 I/O ピ ン割 り 当てが指定 し た互換性のあ る デバ イ ス の リ ス ト 間で動作
す る よ う に、 デザ イ ン フ ロ ーの早期段階で互換性のあ る 代替デバ イ ス を定義で き ます。 Vivado Design Suite では、 全
パーツ で共通ではない ピ ンへ I/O ポー ト が割 り 当て ら れない よ う にパ ッ ケージ ピ ン に PROHIBIT プ ロ パテ ィ が定義
さ れます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
current_design
値
COMPATIBLE_PART は、 現在の タ ーゲ ッ ト パーツのデバ イ ス と パ ッ ケージ を組み合わせて定義 さ れます。 た と えば、
xc7k70tfbg676-2 パーツには、 次の よ う なプ ロ パテ ィ があ り ます。
NAME xc7k325tffg676-2
DEVICE xc7k325t
PACKAGE ffg676
COMPATIBLE_PARTS xc7k160tfbg676 xc7k160tffg676 xc7k325tfbg676
xc7k410tfbg676 xc7k410tffg676 xc7k70tfbg676
パーツ オブジ ェ ク ト の COMPATIBLE_PARTS プ ロ パテ ィ では、 さ ま ざ ま な DEVICE お よ び PACKAGE が リ ス ト さ れ
ます。 SPEED は指定 さ れません。 こ の結果、 互換性のあ る パーツは次の よ う にな り ます。
xc7k160tfbg676-1
xc7k160tfbg676-2
xc7k160tfbg676-2L
xc7k160tfbg676-3
xc7k160tffg676-1
xc7k160tffg676-2
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
146
第 2 章 : 主な プ ロパテ ィ の説明
xc7k160tffg676-2L
xc7k160tffg676-3
xc7k325tfbg676-1
xc7k325tfbg676-2
xc7k325tfbg676-2L
xc7k325tfbg676-3
xc7k410tfbg676-1
xc7k410tfbg676-2
xc7k410tfbg676-2L
xc7k410tfbg676-3
xc7k410tffg676-1
xc7k410tffg676-2
xc7k410tffg676-2L
xc7k410tffg676-3
xc7k70tfbg676-1
xc7k70tfbg676-2
xc7k70tfbg676-2L
xc7k70tfbg676-3
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property KEEP_COMPATIBLE {value1 value2 valueN} [current_design]
{value1 value2 valueN} は、 PART オブジ ェ ク ト に定義 さ れ る 、 1 つま たは複数の COMPATIBLE_PARTS にな り ます。 現
在のデザ イ ンの タ ーゲ ッ ト パーツ に対する COMPATIBLE_PART は、 次の Tcl コ マ ン ド を使用する と 取得で き ます。
get_property COMPATIBLE_PARTS [get_property PART [current_design]]
XDC の構文例
set_property KEEP_COMPATIBLE {xc7k160tfbg676 xc7k410tffg676} [current_design]
使用可能な段階
•
I/O 配置
•
配置
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
147
第 2 章 : 主な プ ロパテ ィ の説明
KEEP_HIERARCHY
KEEP_HIERARCHY は、 最適化がバ ウ ン ダ リ を越えて実行 さ れない よ う にす る ため、 ユーザー階層の保持を指示 し ま
す。 こ れで フ ロ アプ ラ ン、 解析、 デバ ッ グが し やす く な り ますが、 最適化が抑止 さ れ る ので、 デザ イ ンが大き く 、 遅
く な っ て し ま う こ と があ り ます。
推奨 : 悪影響が出ない よ う にす る には、KEEP_HIERARCHY が適用 さ れてい る モジ ュ ール イ ン ス タ ン ス の出力すべて
に レ ジ ス タ を付け ます。 こ の属性は、 合成前に適用す る と 最 も 効果的です。
KEEP_HIERARCHY は、 階層レベルが変更 さ れない よ う にす る ためのプ ロ パテ ィ です。 Vivado 合成では、 RTL で指定
さ れたの と 同 じ 階層が保持 さ れ る よ う 試み ら れますが、QoR (結果の品質) を改善す る ために階層が フ ラ ッ ト に さ れた
り 、 変更 さ れ る こ と も あ り ます。
イ ン ス タ ン ス に KEEP_HIERARCHY を指定す る と 、 合成でその階層レベルは変更 さ れません。
こ れが QoR に影響を与え る 場合があ り ます。 ま た、 ト ラ イ ス テー ト 出力お よ び I/O バ ッ フ ァ ーの制御 ロ ジ ッ ク を記述
す る モジ ュ ールには使用 し ないで く だ さ い。 KEEP_HIERARCHY は、 モジ ュ ール、 アーキ テ ク チ ャ レベル、 ま たは
イ ン ス タ ン ス に指定で き ます。 RTL でのみ設定可能です。
アーキテ ク チ ャ サポー ト
すべて
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
ユーザー定義の イ ン ス タ ン ス
値
•
FALSE (デフ ォ ル ト )
階層を超え て最適化 さ れます。
•
TRUE
最適化が階層バ ウ ン ダ リ を超え ない よ う にな り 、 階層が保持 さ れます。
構文
Verilog 構文
Verilog 属性をユーザーの階層 イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。
(* KEEP_HIERARCHY = "{TRUE|FALSE}" *)
Verilog の構文例
// Preserve the hierarchy of instance CLK1_rst_sync
(* KEEP_HIERARCHY = "TRUE" *) reset_sync #(
.STAGES(5)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
148
第 2 章 : 主な プ ロパテ ィ の説明
) CLK1_rst_sync (
.RST_IN(RST | ~LOCKED),
.CLK(clk1_100mhz),
.RST_OUT(rst_clk1)
);
モ ジ ュ ールの場合
(* keep_hierarchy = "yes" *) module bottom (in1, in2, in3, in4, out1, out2);
イ ン ス タ ン スの場合
(* keep_hierarchy = "yes" *)bottom u0 (.in1(in1), .in2(in2), .out1(temp1));
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute KEEP_HIERARCHY : string;
VHDL 属性は次の よ う に指定 し ます。
attribute KEEP_HIERACHRY of name: label is "{TRUE|FALSE}";
説明 :
•
name はユーザー定義の イ ン ス タ ン ス の名前です。
VHDL の構文例
attribute KEEP_HIERARCHY : string;
-- Preserve the hierarchy of instance CLK1_rst_sync
attribute KEEP_HIERARCHY of CLK1_rst_sync: label is "TRUE";
…
CLK1_rst_sync : reset_sync
PORT MAP (
RST_IN => RST_LOCKED,
CLK => clk1_100mhz,
RST_OUT
=> rst_clk1
);
モ ジ ュ ールの場合
attribute keep_hierarchy : string;
attribute keep_hierarchy of beh : architecture is "yes";
イ ン ス タ ン スの場合
attribute keep_hierarchy : string;
attribute keep_hierarchy of u0 : label is "yes";
XDC 構文
set_property KEEP_HIERARCHY {TRUE|FALSE} [get_cells instance_name]
説明 :
•
instance_name はレ ジ ス タ イ ン ス タ ン ス です。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
149
第 2 章 : 主な プ ロパテ ィ の説明
XDC の構文例
# Preserve the hierarchy of instance CLK1_rst_sync
set_property KEEP_HIERARCHY TRUE [get_cells CLK1_rst_sync]
影響のある処理
•
デザ イ ンの フ ロ アプ ラ ン
•
opt_design
•
phys_opt_design
•
synth_design
KEEPER
KEEPER は、 ト ラ イ ス テー ト 出力ま たは双方向ポー ト に ウ ィ ー ク ド ラ イ バーを適用 し 、駆動 さ れていない と き に値を
保持 し ます。 ポー ト に接続 さ れ る 出力ネ ッ ト の値が保持 さ れます。
た と えば、 指定 し たポー ト を介 し て ロ ジ ッ ク 1 が駆動 さ れ る 場合、 KEEPER は ウ ィ ー ク ま たは抵抗 1 を そのポー ト ま
で駆動 し ま す。 その後ネ ッ ト ド ラ イ バーが ト ラ イ ス テー ト 状態に な る と 、 KEEPER は接続 さ れた ポー ト を 介 し て
ウ ィ ー ク ま たは抵抗 1 を ネ ッ ト に駆動 し 続け、 値を保持 し ます。
入力バ ッ フ ァ ー (IBUF な ど)、 ト ラ イ ス テー ト 出力バ ッ フ ァ ー (OBUFT な ど)、 お よ び双方向バ ッ フ ァ ー (IOBUF な ど
) には、 ウ ィ ー ク プルア ッ プ抵抗、 ウ ィ ー ク プルダ ウ ン抵抗、 ま たは ウ ィ ー ク キーパー回路を含め る こ と がで き ま
す。 バ ッ フ ァ ーに接続 さ れてい る ポー ト オブジ ェ ク ト に次のプ ロ パテ ィ の 1 つを加え る こ と で、 こ の機能を使用で き
ます。
•
PULLUP
•
PULLDOWN
•
KEEPER
アーキテ ク チ ャ サポー ト
すべて
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
最上位ポー ト
値
•
TRUE | YES :指定 し たポー ト に接続 さ れたネ ッ ト の値を保持す る ためキーパー回路を使用 し ます。
•
FALSE | NO :キーパー回路を使用 し ません。 デフ ォ ル ト です。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
150
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
Verilog 制約を ポー ト 宣言の直前に配置 し ます。
Verilog 制約は次の よ う に指定 し ます。
(* KEEPER = " {YES|NO|TRUE|FALSE}" *)
VHDL 構文
VHDL 制約は次の よ う に宣言 し て指定 し ます。
attribute keeper: string;
attribute keeper of signal_name : signal is “{YES|NO|TRUE|FALSE}”;
XDC 構文
set_property KEEPER {TRUE|FALSE} [get_ports port_name]
説明 :
•
port_name は、 入力、 出力、 入出力ポー ト の名前です。
XDC の構文例
# Use a keeper circuit to preserve the value on the specified port
set_property KEEPER TRUE [get_ports wbWriteOut]
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
関連項目
180 ページの 「PULLDOWN」
182 ページの 「PULLUP」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
151
第 2 章 : 主な プ ロパテ ィ の説明
LOC
LOC は、 タ ーゲ ッ ト のザ イ リ ン ク ス FPGA のデバ イ ス リ ソ ース に ロ ジ ッ ク セルを配置 し ます。
推奨 : デバ イ ス パ ッ ケージの物理的ピ ン に I/O ポー ト を割 り 当て る には、 LOC ではな く PACKAGE_PIN プ ロ パテ ィ
を使用 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
プ リ ミ テ ィ ブ セルすべて
値
サ イ ト 名 (SLICE_X15Y14 ま たは RAMB18_X6Y9 な ど)
構文
Verilog 構文
Verilog 属性は コ ン ポーネ ン ト の イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。
推論 さ れた レ ジ ス タ の SRL ま たは LUTRAM の reg を 1 つのデバ イ ス サ イ ト に配置で き る 場合は、 こ の Verilog 属性
はその reg 宣言前に も 配置で き ます。
(* LOC = "site_name" *)
// Designates placed_reg to be placed in Slice site SLICE_X0Y0
(* LOC = "SLICE_X0Y0" *) reg placed_reg;
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute LOC : string;
イ ン ス タ ン シエー ト 済み イ ン ス タ ン ス の場合は、 次の よ う に指定 し ます。
attribute LOC of instance_name : label is "site_name";
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
152
第 2 章 : 主な プ ロパテ ィ の説明
説明 :
•
instance_name は イ ン ス タ ン シエー ト 済みプ リ ミ テ ィ ブの イ ン ス タ ン ス名です。
VHDL の構文例
-- Designates instantiated register instance placed_reg to be placed
-- in Slice site SLICE_X0Y0
attribute LOC of placed_reg : label is "SLICE_X0Y0";
推論済み イ ン ス タ ン ス の場合、 VHDL 属性は次の よ う に指定 し ます。
attribute LOC of signal_name : signal is "site_name";
説明 :
•
signal_name は 1 つのサ イ ト に配置可能な推論済みプ リ ミ テ ィ ブの信号名です。
VHDL の構文例
-- Designates inferred register placed_reg to be placed in Slice site SLICE_X0Y0
attribute LOC of placed_reg : signal is "SLICE_X0Y0";
XDC 構文
set_property LOC site_name [get_cells instance_name]
説明 :
•
instance_name はプ リ ミ テ ィ ブ イ ン ス タ ン ス です。
XDC の構文例
# Designates placed_reg to be placed in Slice site SLICE_X0Y0
set_property LOC SLICE_X0Y0 [get_cells placed_reg]
影響のある処理
•
デザ イ ンの フ ロ アプ ラ ン
•
place_design
関連項目
•
93 ページの 「BEL」
•
167 ページの 「PACKAGE_PIN」
•
170 ページの 「PBLOCK」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
153
第 2 章 : 主な プ ロパテ ィ の説明
LOCK_PINS
LOCK_PINS はセル プ ロ パテ ィ で、 ザ イ リ ン ク ス FPGA デバ イ ス リ ソ ース の物理 LUT 入力 (A6、 A5、 A4...) への論理
LUT 入力 (I0、 I1、 I2...) のマ ッ ピ ン グ を指定 し ます。 タ イ ミ ン グ ク リ テ ィ カルな LUT 入力を、 最高速の A6 お よ び A5
の物理 LUT 入力にマ ッ プす る ために使用す る のが一般的です。
デフ ォ ル ト では、 LUT ピ ンは番号の大 き い も のか ら 小 さ い も のへ順番にマ ッ プ さ れます。 最大番号の論理ピ ンは最大
番号の物理ピ ンにマ ッ プ さ れます。
•
A6LUT に配置 さ れた LUT6 のデフ ォ ル ト の ピ ン マ ッ ピ ン グは次の よ う にな り ます。
I5:A6 I4:A5 I3:A4 I2:A3 I1:A2 I0:A1
•
A5LUT に配置 さ れた LUT5 のデフ ォ ル ト の ピ ン マ ッ ピ ン グは次の よ う にな り ます。
I5:A5 I4:A4 I3:A3 I2:A2 I1:A1
•
A6LUT に配置 さ れた LUT2 のデフ ォ ル ト の ピ ン マ ッ ピ ン グは次の よ う にな り ます。
I1:A6 I0:A5
LOCK_PINS プ ロ パテ ィ は Vivado 配線で使用 さ れますが、 タ イ ミ ン グ を改善で き る よ う な場合で も 、 ロ ッ ク さ れてい
る LUT での ピ ン マ ッ ピ ン グは変更 さ れ ません。 LOCK_PINS は指定配線で も 重要です。 指定配線に よ り 接続 さ れて
い る ピ ンが別の ピ ン と ス ワ ッ プ さ れ る 場合、 指定配線はその LUT の接続 と 一致 し な く な り 、 エ ラ ーにな り ます。 指
定配線ネ ッ ト に よ り 駆動 さ れ る LUT セルすべての ピ ンは、 LOCK_PINS を使用 し て ロ ッ ク し てお く 必要があ り ます。
指定配線の詳細は、 『Vivado Design Suite ユーザー ガ イ ド : イ ンプ リ メ ン テーシ ョ ン』 (UG904) [参照 13]を参照 し て く
だ さ い。
注記 : DONT_TOUCH は LOCK_PINS を暗示 し ません。
「phys_opt_design -critical_pin_opt」 と い う コ マ ン ド で最適化を実行する 場合、 LOCK_PINS プ ロ パテ ィ が
設 定 さ れ て い る セ ル は 最 適 化 さ れ ず、 LOCK_PINS
で 指定 さ れ て い る ピ ン
マ ッ ピ ン グ は 保 持 さ れ ま す。
phys_opt_design コ マ ン ド の詳細は、『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参
照 し て く だ さ い。
LOCK_PINS プ ロ パテ ィ がセルか ら 削除 さ れ る と 、 ピ ン マ ッ ピ ン グは消去 さ れ、 ピ ン を自由に ス ワ ッ プで き る よ う に
な り ます。 し か し 、 現行の ピ ン割 り 当てはす ぐ に変更にはな り ません。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
LUT セル (get_cells)
値
•
LOCK_PINS {I0:A6 I1:A5} :1 つま たは複数の ピ ン マ ッ ピ ン グ ペア。論理ピ ン と 物理ピ ンのペア を使用 し て、
LUT 論理ピ ンが LUT 物理ピ ンに割 り 当て ら れます。
°
LOCK_PINS の値にはピ ン マ ッ ピ ン グ を順不同に リ ス ト で き 、 HDL の場合はカ ン マで、 XDC の場合はホ ワ
イ ト スペース で区切 り ます。
°
イ ン ス タ ン ス ピ ンの範囲は LUT1 の場合は I0、 LUT6 の場合は I0 か ら I5 ま でにな り ます。 物理ピ ンの範囲
は、 LUT6 の場合は A6 (最速) か ら A1 ま で、 LUT5 の場合は A5 (最速) か ら A1 ま でにな り ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
154
第 2 章 : 主な プ ロパテ ィ の説明
ヒ ン ト : ISE でサポー ト さ れてい る ALL の値、 ま たは ALL を暗示す る 値な し は、 Vivado Design Suite ではサポー ト さ
れてい ません。 すべての ピ ン を ロ ッ ク す る には、 各ピ ン を明示的に指定す る 必要があ り ます。 リ ス ト さ れていない論
理ピ ンは、 デフ ォ ル ト のマ ッ ピ ン グで物理ピ ンにマ ッ プ さ れます。
構文
Verilog 構文
LOCK_PINS の値は Verilog 属性 と し て、 イ ン ス タ ン シエー ト さ れた LUT セル (LUT6、 LUT5 な ど) に配置 し て割 り 当
て る こ と がで き ます。
次の例は、 LOCK_PINS を使用 し て、 I1 を A5 に、 I2 を A6 に ピ ン マ ッ プ し 、 LUT_inst_0 と い う LUT セルに配置 し て
い ます。
(* LOCK_PINS = "I1:A5, I2:A6" *) LUT6 #(.INIT(64'h1) ) LUT_inst_0 (...
Verilog 例
module top (
i0,
i1,
i2,
i3,
i4,
i5,
o0);
input i0;
input i1;
input i2;
input i3;
input i4;
input i5;
output o0;
(* LOCK_PINS = "I1:A5,I2:A6" *)
LUT6 #(
.INIT(64'h0000000000000001))
LUT_inst_0
(.I0(i0),
.I1(i1),
.I2(i2),
.I3(i3),
.I4(i4),
.I5(i5),
.O(o0));
endmodule
VHDL 構文
LOCK_PINS の値は VHDL 属性 と し て、 イ ン ス タ ン シエー ト さ れた LUT セル (LUT6、 LUT5 な ど) に配置 し て割 り 当
て る こ と がで き ます。
次の例は、 LOCK_PINS を使用 し て、 I1 を A5 に、 I2 を A6 に ピ ン マ ッ プ し 、 LUT_inst_0 と い う LUT セルに配置 し て
い ます。
attribute LOCK_PINS : string;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
155
第 2 章 : 主な プ ロパテ ィ の説明
attribute LOCK_PINS of LUT_inst_0 : label is "I1:A5, I2:A6";
...
VHDL の例
entity top is port (
i0, i1, i2, i3, i4, i5 : in std_logic;
o0 : out std_logic
);
end entity top;
architecture struct of top is
attribute lock_pins : string;
attribute lock_pins of LUT_inst_0 : label is "I1:A5, I2:A6";
begin
LUT_inst_0 :LUT6 generic map (
INIT => "1"
) port map (
I0 => i0,
I1 => i1,
I2 => i2,
I3 => i3,
I4 => i4,
I5 => i5,
O => o0
);
end architecture struct;
XDC 構文
Vivado Design Suite で set_property と い う Tcl コ マ ン ド を使用 し 、LUT セルに LOCK_PINS プ ロ パテ ィ を設定で き ます。
set_property LOCK_PINS {pin pairs} [get_cells instance_name]
説明 :
•
instance_name には LUT セルが 1 つま たは複数入 り ます。
重要 : XDC の場合は Tcl リ ス ト 構文に合わせ る ため、ピ ン ペア を ホ ワ イ ト スペース で区切る 必要があ り ますが、HDL
構文の場合はカ ン マで値を区切 る 必要があ り ます。
XDC の構文例
% set myLUT2 [get_cells u0/u1/i_365]
% set_property LOCK_PINS {I0:A5 I1:A6} $myLUT2
% get_property LOCK_PINS $myLUT2
I0:A5 I1:A6
% reset_property LOCK_PINS $myLUT2
% set myLUT6 [get_cells u0/u1/i_768]
% set_property LOCK_PINS I0:A6 ; # mapping of I1 through I5 are dont-cares
影響のある処理
•
phys_opt_design
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
156
第 2 章 : 主な プ ロパテ ィ の説明
•
route_design
関連項目
•
93 ページの 「BEL」
•
112 ページの 「DONT_TOUCH」
•
152 ページの 「LOC」
LUTNM
LUTNM を使用す る と 、 互換性のあ る 入力を持つ 2 つの LUT5、 SRL16 ま たは LUTRAM コ ン ポーネ ン ト が同 じ LUT6
サ イ ト に配置 さ れます。 LUTNM はペアで指定する 必要があ り 、 ど ち ら も 同 じ グループ名で互換性のあ る イ ン ス タ ン
ス タ イ プであ る 必要があ り ます。
LUTNM と HLUTNM の相違点 HLUTNM は、 別のユーザー階層にあ る 2 つの LUT コ ン ポーネ ン ト を統合する ために使用で き ます。 同 じ ユーザー階
層にあ る 2 つの LUT コ ン ポーネ ン ト を一緒のグループにす る 場合は LUTNM を使用 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
°
LUT (LUT1、 LUT2、 LUT3、 LUT4、 LUT5)
°
SRL (SRL16E)
°
LUTRAM (RAM32X1S)
値
一意のグループ名
構文
Verilog 構文
Verilog 属性は LUT の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。 Verilog 属性は、 同 じ 論理階層のペアで使用す る 必
要があ り ます。
(* LUTNM = "group_name" *)
Verilog の構文例
// Designates state0_inst to be placed in same LUT6 as state1_inst
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
157
第 2 章 : 主な プ ロパテ ィ の説明
// LUT5:5-input Look-Up Table with general output (Mapped to a LUT6)
(* LUTNM = "LUT_group1" *) LUT5 #(
.INIT(32'ha2a2aea2) // Specify LUT Contents
) state0_inst (
.O(state_out[0]), // LUT general outpu
.I0(state_in[0]), // LUT input
.I1(state_in[1]), // LUT input
.I2(state_in[2]), // LUT input
.I3(state_in[3]), // LUT input
.I4(state_in[4]) // LUT input
);
// End of state0_inst instantiation
// LUT5:5-input Look-Up Table with general output (Mapped to a LUT6)
//
Virtex-7
// Xilinx HDL Language Template, version 2014.1
(* LUTNM = "LUT_group1" *) LUT5 #(
.INIT(32'h00330073) // Specify LUT Contents
) state1_inst (
.O(state_out[1]), // LUT general output
.I0(state_in[0]), // LUT input
.I1(state_in[1]), // LUT input
.I2(state_in[2]), // LUT input
.I3(state_in[3]), // LUT input
.I4(state_in[4]) // LUT input
);
// End of state1_inst instantiation
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute LUTNM : string;
イ ン ス タ ン シエー ト 済み イ ン ス タ ン ス の場合は、 次の よ う に指定 し ます。
attribute LUTNM of instance_name : label is "group_name";
説明 :
•
instance_name は LUT1、 LUT2、 LUT3、 LUT4、 LUT5、 SRL16、 ま たは LUTRAM イ ン ス タ ン ス です。
VHDL 属性は、 同 じ 論理階層のペアで使用する 必要があ り ます。
VHDL の構文例
-- Designates state0_inst to be placed in same LUT6 as state1_inst
attribute LUTNM : string;
attribute LUTNM of state0_inst : label is "LUT_group1";
attribute LUTNM of state1_inst : label is "LUT_group1";
begin
-- LUT5:5-input Look-Up Table with general output (Mapped to SliceM LUT6)
state0_inst :LUT5
generic map (
INIT => X"a2a2aea2") -- Specify LUT Contents
port map (
O => state_out(0), -- LUT general output
I0 => state_in(0), -- LUT input
I1 => state_in(1), -- LUT input
I2 => state_in(2), -- LUT input
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
158
第 2 章 : 主な プ ロパテ ィ の説明
I3 => state_in(3),
I4 => state_in(4)
-- LUT input
-- LUT input
);
-- End of state0_inst instantiation
-- LUT5:5-input Look-Up Table with general output (Mapped to SliceM LUT6)
-Virtex-7
-- Xilinx HDL Language Template, version 2014.1
State1_inst :LUT5
generic map (
INIT => X"00330073") -- Specify LUT Contents
port map (
O => state_out(1), -- LUT general output
I0 => state_in(0), -- LUT input
I1 => state_in(1), -- LUT input
I2 => state_in(2), -- LUT input
I3 => state_in(3), -- LUT input
I4 => state_in(4)
-- LUT input
);
-- End of state1_inst instantiation
XDC 構文
set_property LUTNM group_name [get_cells instance_name]
説明 :
•
instance_name は LUT1、 LUT2、 LUT3、 LUT4、 LUT5、 SRL16、 ま たは LUTRAM イ ン ス タ ン ス です。
XDC の構文例
# Designates state0_inst LUT5 to be placed in same LUT6 as state1_inst
set_property LUTNM LUT_group1 [get_cells U1/state0_inst]
set_property LUTNM LUT_group1 [get_cells U2/state1_inst]
影響のある処理
•
place_design
関連項目
•
「HLUTNM」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
159
第 2 章 : 主な プ ロパテ ィ の説明
LVDS_PRE_EMPHASIS
UltraScale で は、 伝送 ラ イ ン で 高周波 ロ ス が 発生す る 高周波信号 の シ グ ナ ル イ ン テ グ リ テ ィ を 改善す る た め、
LVDS_PRE_EMPHASIS プ ロ パテ ィ が使用 さ れます。
あ る I/O 規格を イ ンプ リ メ ン ト す る ド ラ イ バーでの伝送 ラ イ ン ロ ス を補 う ため、 LVDS ト ラ ン ス ミ ッ タ ーのプ リ エン
フ ァ シ ス は信号遷移で電圧をブース ト し ます。DDR4 HP I/O バン ク お よ び LVDS TX HP/HR I/O バン ク のプ リ エン フ ァ
シ ス は、 シ ン ボル間の干渉を低減 し 、 伝送 ラ イ ン ロ ス の影響を最低限に抑え る ために使用で き ます。
ヒ ン ト : 全体的な シ グナル イ ン テ グ リ テ ィ を向上 さ せ る ため、 ト ラ ン ス ミ ッ タ ーでのプ リ エ ン フ ァ シ ス は、 レ シー
バーでの 「EQUALIZATION」 と 組み合わせ る こ と がで き ます。
ト ラ ン ス ミ ッ タ ーのプ リ エン フ ァ シ ス は、 レ シーバー側でのシ グナル イ ン テ グ リ テ ィ に も 重要です。 プ リ エン フ ァ シ
ス は信号エ ッ ジ レー ト を高め、 それは周辺信号の ク ロ ス ト ー ク も 高め ます。
プ リ エ ン フ ァ シ ス の影響は伝送 ラ イ ン特性に依存 し てい る ため、 影響が最小限の も ので あ る こ と を確認す る にはシ
ミ ュ レーシ ョ ンが必要です。 信号をオーバーエン フ ァ シ スする と 、 信号の質は改善 さ れ る よ り む し ろ悪化す る 可能性
があ り ます。
アーキテ ク チ ャ サポー ト
UltraScale デバ イ ス
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
値
•
TRUE - 差動入力お よ び双方向バ ッ フ ァ ーのプ リ エン フ ァ シ ス を イ ネーブルに し 、 LVDS I/O を イ ンプ リ メ ン ト し
ます。
•
FALSE (デフ ォ ル ト ) - プ リ エン フ ァ シ ス を イ ネーブルに し ません。
構文
Verilog 構文 該当な し
VHDL 構文 該当な し
XDC 構文
XDC フ ァ イ ルでは LVDS_PRE_EMPHASIS 属性を次の よ う な構文で使用 し ます。
set_property LVDS_PRE_EMPHASIS <TRUE|FALSE> [get_ports port_name]
説明 :
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
160
第 2 章 : 主な プ ロパテ ィ の説明
•
set_property LVDS_PRE_EMPHASIS は、 ト ラ ン ス ミ ッ タ ーでプ リ エン フ ァ シ ス を イ ネーブルに し ます。
•
port_name は差動バ ッ フ ァ ーに接続 さ れ る 出力ポー ト ま たは双方向ポー ト です。
関連項目 •
117 ページの 「EQUALIZATION」
•
178 ページの 「PRE_EMPHASIS」
MARK_DEBUG
Vivado ツールのハー ド ウ ェ ア マネージ ャ ー機能を使用 し て、 デバ ッ グ用に保持す る 必要があ る ネ ッ ト を指定 し ます。
こ れに よ り 、 最適化で指定 し た信号が削除 さ れな く な り ます。 MARK_DEBUG は、 信号を保持 し て、 FPGA 操作中に
その信号の値を簡単に観察で き る よ う にす る ためのプ ロ パテ ィ です。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ネ ッ ト (get_nets)
°
内部配列にア ク セ ス可能なネ ッ ト すべて
注記 : 一部のネ ッ ト には専用 コ ネ ク テ ィ ビ テ ィ な ど があ り 、 デバ ッ グの と き に表示 さ れな く な る よ う な も の
があ り ます。
値
•
TRUE
•
FALSE
構文
Verilog 構文
こ の属性を設定す る には、 適切な Verilog 属性構文を最上位出力ポー ト 宣言の前に配置 し ます。
(* MARK_DEBUG = "{TRUE|FALSE}" *)
Verilog の構文例
// Marks an internal wire for ChipScope debug
(* MARK_DEBUG = "TRUE" *) wire debug_wire,
VHDL 構文
こ の属性を設定す る には、 適切な VHDL 属性構文を最上位出力ポー ト 宣言の前に配置 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
161
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 属性は次の よ う に宣言 し ます。
attribute MARK_DEBUG : string;
VHDL 属性は次の よ う に指定 し ます。
attribute MARK_DEBUG of signal_name : signal is “{TRUE|FALSE}”;
説明 :
•
signal_name は内部信号です。
VHDL の構文例
signal debug_wire : std_logic;
attribute MARK_DEBUG : string;
-- Marks an internal wire for ChipScope debug
attribute MARK_DEBUG of debug_wire : signal is “TRUE”;
XDC 構文
set_property MARK_DEBUG value [get_nets net_name]
説明 :
•
net_name は信号名です。
XDC の構文例
# Marks an internal wire for ChipScope debug
set_property MARK_DEBUG TRUE [get_nets debug_wire]
影響のある処理
•
place_design
•
ChipScope
関連項目
•
「DONT_TOUCH」
MAX_FANOUT
MAX_FANOUT は、 レ ジ ス タ お よ び信号の フ ァ ン ア ウ ト の制限を設定 し ます。 整数値を指定 し ます。
MAX_FANOUT は、 合成のグ ロ ーバル オプシ ョ ン -fanout_limit のデフ ォ ル ト 値 よ り も 優先 さ れます。 デザ イ ン全体の
デ フ ォ ル ト 値 は、 [Project Settings] ダ イ ア ロ グ ボ ッ ク ス の [Synthesis] ペー ジ ま た は synth_design コ マ ン ド の
-fanout_limit オプシ ョ ン を使用 し て設定 し ます。
重要 : MAX_FANOUT 属性は強制的に適用 さ れ ま すが、 -fanout_limit はガ イ ド ラ イ ン と し て使用 さ れ、 強制 さ れ ませ
ん。 フ ァ ン ア ウ ト を厳密に制御す る 必要があ る 場合は、 MAX_FANOUT を使用 し て く だ さ い。 ま た、 -fanout_limit オ
プシ ョ ン と は異な り 、 MAX_FANOUT は制御信号に も 適用 さ れます。 -fanout_limit オプシ ョ ンは制御信号 (セ ッ ト 、 リ
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
162
第 2 章 : 主な プ ロパテ ィ の説明
セ ッ ト 、ク ロ ッ ク イ ネーブルな ど) には適用 さ れないので、こ れ ら の信号を複製す る 必要があ る 場合は MAX_FANOUT
を使用 し て く だ さ い。
こ の属性は、 レ ジ ス タ お よ び組み合わせ信号にのみ使用で き ます。 フ ァ ン ア ウ ト の制限に従 う ため、 レ ジ ス タ ま たは
組み合わせ信号を駆動す る 信号が複製 さ れます。 こ の属性は RTL ま たは XDC で設定で き ます。
アーキテ ク チ ャ
すべてのデバ イ ス
適用可能エ レ メ ン ト
•
レ ジ ス タ お よ び組み合わせ信号
値
•
<Integer> : 信号を分配す る ために、 ド ラ イ バーを複製する 回数の最大値を指定 し ます。
構文
Verilog 構文
信号
(* max_fanout = 50 *) reg sig1;
VHDL 構文 signal sig1 : std_logic;
attribute max_fanout : integer;
attribute max_fanout : signal is 50;
XDC 構文
set_property MAX_FANOUT <number> [get_nets -hier <net_name>]
影響のある処理
•
合成
•
最適化
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
163
第 2 章 : 主な プ ロパテ ィ の説明
ODT
ODT (On-Die Termination) プ ロ パテ ィ は、 サポー ト さ れてい る I/O 規格の DCI (digitally controlled impedance) お よ び非
DCI バージ ョ ンの両方に対 し 、 ODT の値を定義する のに使用 し ます。 外部抵抗ではな く ODT を使用す る 利点は、 レ
シーバー側の ス タ ブ を完全に除去す る こ と でシ グナル イ ン テ グ リ テ ィ が改善 さ れ る 点です。
ODT は、 HSTL、 SSTL、 POD、 お よ び HSUL 規格の入力で分割終端ま たはシ ン グル終端をサポー ト し てい ます。 I/O
バン ク の VCCO は、 予期どお り の動作を得 る ため、 ODT 属性に合わせた電圧レベルに接続 し てお く 必要があ り ます。
I/O 規格に必要な VCCO レベルの詳細については、 『UltraScale SelectIO ユーザー ガ イ ド 』 (UG571) [参照 6]を参照 し て
く だ さ い。
パ ラ レル終端をサポー ト す る I/O 規格の場合は、 DCI は VCCO /2 の電圧レベルのテブナン等価抵抗ま たは分割終端抵
抗を作成 し ます。 POD お よ び HSUL 規格の場合は、 DCI は VCCO 電圧レベルのシ ン グル終端をサポー ト し てい ます。
終端抵抗の正確な値は ODT の値に よ っ て決ま り ます。 分割抵抗の DCI に使用可能な ODT 値は、 RTT_40、 RTT_48、
RTT_60、 RTT_NONE です。
注記 : DCI はハ イ パフ ォーマ ン ス (HP) I/O バン ク でのみ使用可能です。ハ イ レ ン ジ (HR) I/O バン ク では DCI はサポー
ト さ れてい ません。
HR お よ び HP の I/O バン ク の両方に、 オプシ ョ ンのキ ャ リ ブ レーシ ョ ン な し のオンチ ッ プ分割終端機能があ り 、 こ れ
は、 HSTL お よ び SSTL 規格に対 し 、 タ ーゲ ッ ト 抵抗値の 2 倍の抵抗を付加す る 2 つの内部抵抗器を使用 し てテブナ
ン等価回路を作成 し ます。 POD お よ び HSUL の I/O 規格の場合は、 キ ャ リ ブ レーシ ョ ン な し のオンチ ッ プ シ ン グル
終端機能があ り ます。 終端は常に入力にあ り 、 ま た出力バ ッ フ ァ ーが ト ラ イ ス テー ト にな っ てい る 場合は双方向ポー
ト にあ り ます。
DCI ベース の I/O 規格を使用す る こ と に よ り 、デザ イ ン で DCI ま たはキ ャ リ ブ レー ト な し の終端の ど ち ら が使用 さ れ
る かが決ま り ます。 DCI と キ ャ リ ブ レー ト な し の両方の I/O 規格で、 終端抵抗の値は ODT 属性に よ っ て決ま り ます。
し か し 、 キ ャ リ ブ レー ト な し のオプシ ョ ン と DCI と の重要な違いは、 DCI の場合は、 VRN お よ び VRP ピ ン での外部
基準抵抗にキ ャ リ ブ レー ト す る のですが、 キ ャ リ ブ レー ト な し の入力終端機能の場合は、 温度、 プ ロ セ ス、 電圧の変
動を補正す る ためのキ ャ リ ブ レーシ ョ ン ルーチンのない、ODT 属性に よ っ て決定 さ れ る 内部抵抗を使用する 点です。
アーキテ ク チ ャ サポー ト
UltraScale デバ イ ス
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
入力お よ び双方向バ ッ フ ァ ーに接続 さ れてい る も の
値
•
RTT_40
•
RTT_48
•
RTT_60
•
RTT_120
•
RTT_240
•
RTT_NONE
注記 : 使用可能な I/O 規格お よ び コ ン フ ィ ギ ュ レーシ ョ ンすべてに対 し 、 すべての値が使用で き る わけではあ り
ません。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
164
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文 該当な し
VHDL 構文 該当な し
XDC 構文
XDC フ ァ イ ルでは ODT 属性を次の よ う な構文で使用 し ます。
set_property ODT <VALUE> [get_ports port_name]
説明 :
•
set_property ODT は ODT を イ ネーブルに し ます。
•
<Value> には指定の IOSTANDARD に対 し サポー ト さ れてい る ODT 値の 1 つが入 り ます。
•
port_name は差動バ ッ フ ァ ーに接続 さ れ る 入力ポー ト ま たは双方向ポー ト です。
関連項目
•
144 ページの 「IOSTANDARD」
OFFSET_CNTRL
レ シーバー オ フ セ ッ ト 制御であ る OFFSET_CNTRL は、 プ ロ セ ス変動を補正す る ため、 UltraScale デバ イ ス で一部の
I/O 規格に対 し 使用で き ます。 OFFSET_CNTRL はハ イ パフ ォーマ ン ス (HP) I/O にのみ割 り 当て る こ と がで き ます。
I/O 規格のサブセ ッ ト の場合、 HP I/O バン ク で、 ±35 mV ま でのプ ロ セ ス変動が原因で発生す る 入力バ ッ フ ァ ーのオ フ
セ ッ ト を キ ャ ン セルす る オプシ ョ ンが UltraScale アーキ テ ク チ ャ にはあ り ます。
こ の機能は入力お よ び双方向バ ッ フ ァ ー プ リ ミ テ ィ ブに対 し 使用で き ます。
オ フ セ ッ ト キ ャ リ ブ レーシ ョ ン では、 ユーザーの イ ン タ ー コ ネ ク ト ロ ジ ッ ク デザ イ ンに制御 ロ ジ ッ ク を構築す る こ
と が求め ら れます。 詳細は、 『UltraScale Series FPGAs SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571) [参照 6]を参照 し
て く だ さ い。
アーキテ ク チ ャ サポー ト
UltraScale デバ イ ス
適用可能なオブ ジ ェ ク ト
•
入力ま たは双方向バ ッ フ ァ ー (get_cells) :
°
IBUFE3
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
165
第 2 章 : 主な プ ロパテ ィ の説明
°
IBUFDSE3
°
IOBUFE3
°
IOBUFDSE3
値
OFFSET_CNTRL 属性に使用で き る 値は次の と お り です。
•
CNTRL_NONE (デフ ォ ル ト ) - オ フ セ ッ ト キ ャ ン セルを イ ネーブルに し ません。
•
FABRIC - 任意の I/O バン ク でオ フ セ ッ ト キ ャ ン セルを実行 し ます。
重要 : オ フ セ ッ ト キ ャ ン セルを実行す る には、 デバ イ ス にオ フ セ ッ ト 制御回路が必要です。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
XDC フ ァ イ ルでは OFFSET_CNTRL 属性を次の よ う な構文で使用 し ます。
set_property OFFSET_CNTRL value [get_ports port_name]
説明 :
•
set_property OFFSET_CNTRL はオ フ セ ッ ト キ ャ ン セル機能を イ ネーブルに し ます。
•
<Value> には有効な OFFSET_CNTRL 値のいずれかが入 り ます。
•
port_name は接続 さ れてい る 入力ま たは双方向ポー ト です。
影響のある処理
•
配置
•
配線
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
166
第 2 章 : 主な プ ロパテ ィ の説明
PACKAGE_PIN
PACKAGE_PIN では、デバ イ ス の物理的なパ ッ ケージ ピ ンへの論理デザ イ ンの最上位ポー ト の割 り 当て ま たは配置を
定義ます。
推奨 : デバ イ ス パ ッ ケージの物理的ピ ン に I/O ポー ト を割 り 当て る には、 LOC ではな く PACKAGE_PIN プ ロ パテ ィ
を使用 し ます。 タ ーゲ ッ ト ザ イ リ ン ク ス FPGA のデバ イ ス リ ソ ース に ロ ジ ッ ク セルを割 り 当て る には、 LOC プ ロ パ
テ ィ を使用 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
最上位ポー ト
値
パ ッ ケージ ピ ン名
構文
Verilog 構文
Verilog 属性を ポー ト 宣言の直前に配置 し ます。
(* PACKAGE_PIN = "pin_name" *)
Verilog の構文例
// Designates port CLK to be placed on pin B26
(* PACKAGE_PIN = "B26" *) input CLK;
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute PACKAGE_PIN : string;
VHDL 属性は次の よ う に指定 し ます。
attribute PACKAGE_PIN of port_name : signal is "pin_name";
VHDL の構文例
-- Designates CLK to be placed on pin B26
attribute PACKAGE_PIN of CLK : signal is "B26";
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
167
第 2 章 : 主な プ ロパテ ィ の説明
XDC 構文
set_property PACKAGE_PIN pin_name [get_ports port_name]
XDC の構文例
# Designates CLK to be placed on pin B26
set_property PACKAGE_PIN B26 [get_ports CLK]
影響のある処理
•
ピ ン配置
•
place_design
関連項目
「LOC」
PATH_MODE
PATH_MODE は、フ ァ イ ルを探す際ま たはパ ス ベース の制約ま たはプ ロ パテ ィ を読み出す際に Vivado Design Suite で
パ ス が ど の よ う に処理 さ れ る か を決定す る プ ロ パテ ィ です。
Vivado Design Suite では、 プ ロ ジ ェ ク ト のすべての フ ァ イ ル、 お よ びフ ァ イ ル と デ ィ レ ク ト リ を参照す る ほ と ん ど の
プ ロ パテ ィ に対 し て、 その フ ァ イ ルま たはデ ィ レ ク ト リ への相対パ ス と 絶対パ ス の両方を格納お よ び維持 し よ う と さ
れ ま す。 プ ロ ジ ェ ク ト を開 く と 、 その フ ァ イ ルお よ びデ ィ レ ク ト リ を探すために こ れ ら のパ ス が使用 さ れ ま す。 デ
フ ォ ル ト では、 Vivado Design Suite は こ れ ら のパ ス の検索に [RelativeFirst] が使用 さ れ る ので、 最初に相対パ ス が、 そ
の後に絶対パ ス が検索 さ れます。 PATH_MODE プ ロ パテ ィ を使用す る と 、 Vivado ツールでの指定 し たオブジ ェ ク ト の
フ ァ イ ル パ ス ま たはプ ロ パテ ィ の処理方法を変更で き ます。
ヒ ン ト : 一部のパ ス では、 特に Windows でパス の ド ラ イ ブが異な る 場合、 Vivado では相対パス が維持で き ません。 こ
れ ら の場合、 絶対パ ス のみが格納 さ れます。
[RelativeFirst] ま たは [AbsoluteFirst] 設定が使用 さ れ る と 、 オブジ ェ ク ト を見つけ る のに代替パ ス ま たは 2 つ目のパ ス
を使用す る 必要があ る 場合、 Vivado ツールで警告が表示 さ れます。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
•
ソ ース フ ァ イ ル (get_files)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
168
第 2 章 : 主な プ ロパテ ィ の説明
値
•
RelativeFirst : プ ロ ジ ェ ク ト ま での相対パ ス を使用 し て フ ァ イ ルを見つけ ます。 こ のパ ス を使用 し て フ ァ イ ルを
見つけ る こ と がで き ない場合は、 絶対パ ス を使用 し ます。 こ れは、 デフ ォ ル ト の値で、 ほ と ん ど の場合に適 し た
方法です。
•
AbsoluteFirst : 絶対パス を使用 し て フ ァ イ ルを見つけ ます。 フ ァ イ ルを見つけ る こ と がで き ない場合は、 相対パ
ス を使用 し ます。 [AbsoluteFirst] ま たは [AbsoluteOnly] は、 フ ァ イ ルが決ま っ た リ ポジ ト リ に格納 さ れてい る 場合
(た と えば、 デザ イ ン グループ ま たは企業内全員で使用 さ れ る 標準的な フ ァ イ ル) や IP の ラ イ ブ ラ リ に向いてい
ます。
•
RelativeOnly : 相対パス のみを使用 し て フ ァ イ ルを見つけ ます。 フ ァ イ ルを見つけ る こ と がで き ない場合は、 そ
れ を 示す メ ッ セ ー ジ が 表示 さ れ、 フ ァ イ ル が 存在 し な い も の と し て 処理 さ れ ま す。 [RelativeOnly] ま た は
[AbsoluteOnly] 設定は、 同 じ フ ァ イ ル名の フ ァ イ ルが複数あ り 、 正 し い フ ァ イ ルを必ず見つけ る 必要のあ る 場合
に向いてい ます。
•
AbsoluteOnly : 絶対パス のみを使用 し て フ ァ イ ルを見つけ ます。 フ ァ イ ルを見つけ る こ と がで き ない場合は、 そ
れを示す メ ッ セージが表示 さ れ、 フ ァ イ ルが存在 し ない も の と し て処理 さ れます。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property PATH_MODE AbsoluteFirst [get_files *IP/*]
影響のある処理
•
プ ロ ジ ェ ク ト 管理お よ びフ ァ イ ルの位置
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
169
第 2 章 : 主な プ ロパテ ィ の説明
PBLOCK
PBLOCK は Vivado Design Suite で Pblock に割 り 当て ら れ る セルに設定する 読み出 し 専用のプ ロ パテ ィ です。
Pblock と はセルの集合体で、 1 つま たは複数の長方形のエ リ ア/領域を指 し 、 こ のエ リ アで Pblock に含め ら れ る デバ
イ ス リ ソ ース を指定 し ます。 Pblock は、 関連 ロ ジ ッ ク を グループに ま と めて、 タ ーゲ ッ ト デバ イ ス のあ る 領域にそ
れを割 り 当て る ため、 フ ロ アプ ラ ン ニ ン グ中に使用 さ れます。デザ イ ンの フ ロ アプ ラ ン ニ ン グでの Pblock の使用につ
いては、 『Vivado Design Suite ユーザー ガ イ ド : デザ イ ン解析お よ び ク ロ ージ ャ テ ク ニ ッ ク 』 (UG906) [参照 15] を参
照 し て く だ さ い。
Pblock は create_pblock Tcl コ マ ン ド を使用 し て作成 し 、 add_cells_to_pblock コ マ ン ド を使用 し てセルに追
加 し ます。 次の コ ー ド で Pblock を定義 し ます。
create_pblock Pblock_usbEngine
add_cells_to_pblock [get_pblocks Pblock_usbEngine] [get_cells -quiet [list
usbEngine1]]
resize_pblock [get_pblocks Pblock_usbEngine] -add {SLICE_X8Y105:SLICE_X23Y149}
resize_pblock [get_pblocks Pblock_usbEngine] -add {DSP48_X0Y42:DSP48_X1Y59}
resize_pblock [get_pblocks Pblock_usbEngine] -add {RAMB18_X0Y42:RAMB18_X1Y59}
resize_pblock [get_pblocks Pblock_usbEngine] -add {RAMB36_X0Y21:RAMB36_X1Y29}
1 行目は Pblock を作成 し 、 それに名前を指定 し ます。
2 行目は Pblock に ロ ジ ッ ク セルを割 り 当て ます。 こ の場合、 指定の階層モジ ュ ールにあ る セルがすべて Pblock に割
り 当て ら れます。 特定の Pblock に割 り 当て ら れたセルには PBLOCK プ ロ パテ ィ が割 り 当て ら れます。
後続の コ マ ン ド resize_pblock は、 Pblock 内に含まれ る デバ イ ス リ ソ ース の範囲を指定 し て、 Pblock のサ イ ズ を
定義 し ます。 Pblock には、 SLICE、 DSP48、 RAMB18、 RAMB36 と い う 4 つのデバ イ ス リ ソ ース タ イ プのグ リ ッ ド に
分かれてい ます。 こ れ ら の タ イ プに当てはま ら ない ロ ジ ッ ク は、 デバ イ ス の任意位置に配置す る こ と がで き ます。 特
定の階層レベルにブ ロ ッ ク RAM のみを制約す る には、 それ以外の Pblock グ リ ッ ド をデ ィ ス エーブルに し ます (ま た
は単に定義 し ない)。
上記の Tcl コ マ ン ド の詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参照 し て く
だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
値
•
<NAME> : セルが割 り 当て ら れ る Pblock の名前です。 こ の Pblock 名は、 create_pblock コ マ ン ド で Pblock を
作成す る と き に定義 し ます。
構文
Verilog 構文
該当な し
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
170
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 構文
該当な し
XDC 構文
Pblock は 次の Tcl コ マ ン ド を使用 し て、 XDC フ ァ イ ルあ る いは直接デザ イ ン で定義す る こ と がで き ます。
create_pblock <pblock_name>
XDC の例
次の コ ー ド で Pblock を定義 し ます。
create_pblock Pblock_usbEngine
add_cells_to_pblock [get_pblocks Pblock_usbEngine] [get_cells -quiet [list
usbEngine1]]
resize_pblock [get_pblocks Pblock_usbEngine] -add {SLICE_X8Y105:SLICE_X23Y149}
resize_pblock [get_pblocks Pblock_usbEngine] -add {DSP48_X0Y42:DSP48_X1Y59}
resize_pblock [get_pblocks Pblock_usbEngine] -add {RAMB18_X0Y42:RAMB18_X1Y59}
resize_pblock [get_pblocks Pblock_usbEngine] -add {RAMB36_X0Y21:RAMB36_X1Y29}
影響のある処理
•
デザ イ ンの フ ロ アプ ラ ン
•
place_design
関連項目
93 ページの 「BEL」
106 ページの 「CONTAIN_ROUTING」
152 ページの 「LOC」
118 ページの 「EXCLUDE_PLACEMENT」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
171
第 2 章 : 主な プ ロパテ ィ の説明
POST_CRC
POST_CRC は、コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク の巡回冗長検査 (CRC) と い う エ ラ ー検出機能のオン/オ フ を設定 し 、
コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ への変更があれば通知 さ れ る よ う に し ます。
POST_CRC プ ロ パテ ィ を イ ネーブルにす る と 、 ビ ッ ト ス ト リ ーム にあ ら か じ め計算 さ れた CRC 値が生成 さ れ ま す。
コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームが読み込まれ る と 、 デバ イ ス は コ ン フ ィ ギ ュ レーシ ョ ン デー タ パケ ッ ト か
ら CRC 値を計算 し ます。 コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームの読み込みが終了する と 、 コ ン フ ィ ギ ュ レーシ ョ
ン ビ ッ ト ス ト リ ームはデバ イ ス に対 し Check CRC 命令を出力 し 、 それに続いて あ ら か じ め計算 さ れた CRC 値が出力
さ れます。デバ イ ス に よ り 計算 さ れた CRC 値がビ ッ ト ス ト リ ームの期待 CRC 値に一致 し ない と 、デバ イ ス は INIT_B
を Low に し 、 コ ン フ ィ ギ ュ レーシ ョ ン を中止 し ます。 詳細については、 『7 シ リ ーズ FPGA コ ン フ ィ ギ ュ レーシ ョ ン
ユーザー ガ イ ド 』 (UG470)[参照 1] ま た は 『UltraScale アーキ テ ク チ ャ コ ン フ ィ ギ ュ レ ーシ ョ ン ユーザー ガ イ ド 』
(UG570) [参照 5] を参照 し て く だ さ い。
CRC がデ ィ ス エーブルの場合、 CRC 値の代わ り に定数値が ビ ッ ト ス ト リ ームに挿入 さ れ、 デバ イ ス で CRC 値は算出
さ れません。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス 適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design)
°
現在の イ ンプ リ メ ン ト 済みのデザ イ ン
値
•
DISABLE :Post CRC チ ェ ッ ク 機能をデ ィ ス エーブルに し ます (デフ ォ ル ト )。
•
ENABLE :Post CRC チ ェ ッ ク 機能を イ エーブルに し ます。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property POST_CRC ENABLE | DISABLE [current_design]
XDC の構文例
set_property POST_CRC Enable [current_design]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
172
第 2 章 : 主な プ ロパテ ィ の説明
影響のある処理
•
write_bitstream
•
launch_runs
関連項目
•
173 ページの 「POST_CRC_ACTION」
•
174 ページの 「POST_CRC_FREQ」
•
176 ページの 「POST_CRC_INIT_FLAG」
•
177 ページの 「POST_CRC_SOURCE」
POST_CRC_ACTION POST_CRC_ACTION は コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク CRC エ ラ ー検出モー ド に使用 さ れ ま す。 こ のプ ロ パテ ィ
は、 CRC の不一致が検出 さ れた と き のデバ イ ス の対処方法を決め る も ので、 その対処方法には、 エ ラ ー訂正、 操作実
行、 コ ン フ ィ ギ ュ レーシ ョ ン停止があ り ます。
リ ー ド バ ッ ク 中、 シ ン ド ロ ーム ビ ッ ト は毎フ レーム計算 さ れます。 シ ン グル ビ ッ ト エ ラ ーが検出 さ れ る と 、 リ ー ド
バ ッ ク はす ぐ に中止 さ れ ま す。 POST_CRC_ACTION プ ロ パテ ィ に よ り 訂正が行われ る 場合、 リ ー ド バ ッ ク CRC ロ
ジ ッ ク がシ ン グル ビ ッ ト エ ラ ーの訂正を実行 し ます。 エ ラ ーが出てい る フ レームは再度 リ ー ド バ ッ ク さ れ、 シ ン ド
ロ ームの情報を使用 し て、 エ ラ ーにな っ てい る ビ ッ ト は修正 さ れて フ レームに書 き 戻 さ れます。 POST_CRC_ACTION
が Correct_And_Continue に設定 さ れ て い る 場合は、 リ ー ド バ ッ ク ロ ジ ッ ク が最初の ア ド レ ス か ら 再開始 し ま す。
Correct_And_Halt に設定 さ れてい る 場合は、 リ ー ド バ ッ ク ロ ジ ッ ク は訂正後に停止 し ま す。 詳細については、 『7 シ
リ ーズ FPGA コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG470)[参照 1] ま たは『UltraScale アーキ テ ク チ ャ コ ン フ ィ
ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG570) [参照 5] を 参照 し て く だ さ い。
「POST_CRC」 が ENABLE に設定 さ れてい る 場合にのみ こ のプ ロ パテ ィ は使用で き ます。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design)
°
現在の イ ンプ リ メ ン ト 済みのデザ イ ン
値
•
HALT :CRC の不一致が検出 さ れ る と 、 ビ ッ ト ス ト リ ームの リ ー ド バ ッ ク 、 比較 CRC の計算、 そ し て あ ら か じ め
計算 さ れた CRC と の比較が中止にな り ます。
•
CONTINUE :CRC の比較に よ り CRC の不一致が検出 さ れ る と 、 ビ ッ ト ス ト リ ームの リ ー ド バ ッ ク 、 比較 CRC の
計算、 あ ら か じ め計算 さ れた CRC と の比較は続行 し ます。
•
CORRECT_AND_CONTINUE :CRC の比較に よ り CRC の不一致が検出 さ れ る と 、 それは訂正 さ れ、 ビ ッ ト ス ト
リ ームの リ ー ド バ ッ ク 、 比較 CRC の計算、 あ ら か じ め計算 さ れた CRC と の比較は続行 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
173
第 2 章 : 主な プ ロパテ ィ の説明
•
CORRECT_AND_HALT :CRC の不一致が検出 さ れ る と 、 それは訂正 さ れ、 ビ ッ ト ス ト リ ームの リ ー ド バ ッ ク 、
比較 CRC の計算、 あ ら か じ め計算 さ れた CRC と の比較は中止にな り ます。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property POST_CRC_ACTION <VALUE> [current_design]
説明 :
•
<VALUE> には POST_CRC_ACTION プ ロ パテ ィ で使用可能な値の 1 つが入 り ます。
XDC の構文例
set_property POST_CRC_ACTION correct_and_continue [current_design]
影響のある処理
•
write_bitstream
•
launch_runs
関連項目
•
172 ページの 「POST_CRC」
•
174 ページの 「POST_CRC_FREQ」
•
176 ページの 「POST_CRC_INIT_FLAG」
•
177 ページの 「POST_CRC_SOURCE」
POST_CRC_FREQ
POST_CRC_FREQ は、 現在のデザ イ ンに対 し 、 コ ン フ ィ ギ ュ レーシ ョ ン CRC チ ェ ッ ク が実行 さ れ る 周波数を設定 し
ます。
「POST_CRC」 が ENABLE に設定 さ れてい る 場合にのみ こ のプ ロ パテ ィ は使用で き ます。 POST_CRC プ ロ パテ ィ を イ
ネーブルにす る と 、ビ ッ ト ス ト リ ームの予め計算 さ れてい る 値 と 、コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ セルを リ ー ド バ ッ
ク す る こ と で計算 さ れ る 内部 CRC 値を周期的に比較で き る よ う にな り ます。
POST_CRC_FREQ は、 リ ー ド バ ッ ク の周波数を MHz で定義 し 、 デフ ォ ル ト 値は 1MHz です。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
174
第 2 章 : 主な プ ロパテ ィ の説明
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design)
°
現在の イ ンプ リ メ ン ト 済みのデザ イ ン
値
•
MHz で周波数を定数で指定 し ます。 使用で き る 値は次の と お り です。
°
1 2 3 4 6 7 8 10 12 13 16 17 22 25 26 27 33 40 44 50 66 100
°
デフ ォ ル ト = 1 MHz
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property POST_CRC_FREQ <VALUE> [current_design]
説明 :
•
<VALUE> には POST_CRC_FREQ プ ロ パテ ィ で使用可能な値の 1 つが入 り ます。
XDC の構文例
set_property POST_CRC_FREQ 50 [current_design]
影響のある処理
•
write_bitstream
•
launch_runs
関連項目
•
172 ページの 「POST_CRC」
•
173 ページの 「POST_CRC_ACTION」
•
176 ページの 「POST_CRC_INIT_FLAG」
•
177 ページの 「POST_CRC_SOURCE」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
175
第 2 章 : 主な プ ロパテ ィ の説明
POST_CRC_INIT_FLAG
POST_CRC_INIT_FLAG は、SEU (Single Event Upset) エ ラ ー信号の出力 と し て INIT_B ピ ン を イ ネーブルにす る か ど う
か を決定 し ます。
エ ラ ー コ ンデ ィ シ ョ ンは常に FRAME_ECC サ イ ト か ら 出力 さ れ ます。 し か し 、 POST_CRC_INIT_FLAG が イ ネーブ
ルにな っ てい る 場合 (デフ ォ ル ト )、 CRC エ ラ ーが発生する と INIT_B ピ ン も それを フ ラ グ し ます。
「POST_CRC」 が ENABLE に設定 さ れてい る 場合にのみ こ のプ ロ パテ ィ は使用で き ます。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design)
°
現在の イ ンプ リ メ ン ト 済みのデザ イ ン
値
•
DISABLE :INIT_B ピ ン を使用せず、 FRAME_ECC サ イ ト が CRC エ ラ ー信号の ソ ース にな り ます。
•
ENABLE :INIT_B ピ ンは イ ネーブルにな り 、 こ れが CRC エ ラ ー信号の ソ ース にな り ます。 こ れがデフ ォ ル ト 設
定です。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property POST_CRC_INIT_FLAG ENABLE | DISABLE [curent_design]
XDC の構文例
set_property POST_CRC_INIT_FLAG Enable [current_design]
影響のある処理
•
write_bitstream
•
launch_runs
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
176
第 2 章 : 主な プ ロパテ ィ の説明
関連項目
•
172 ページの 「POST_CRC」
•
173 ページの 「POST_CRC_ACTION」
•
174 ページの 「POST_CRC_FREQ」
•
177 ページの 「POST_CRC_SOURCE」
POST_CRC_SOURCE
POST_CRC_SOURCE は、 コ ン フ ィ ギ ュ レーシ ョ ン メ モ リ への変更通知用に コ ン フ ィ ギ ュ レーシ ョ ン ロ ジ ッ ク CRC
のエ ラ ー検出機能が使用 さ れ る と き の、 CRC 値の ソ ース を指定 し ます。
「POST_CRC」 が ENABLE に設定 さ れてい る 場合にのみ こ のプ ロ パテ ィ は使用で き ます。
POST_CRC プ ロ パテ ィ を イ ネーブルにす る と 、 ビ ッ ト ス ト リ ーム にあ ら か じ め計算 さ れた CRC 値が生成 さ れ ま す。
コ ン フ ィ ギ ュ レーシ ョ ン デー タ フ レームが読み込まれ る と 、 デバ イ ス は コ ン フ ィ ギ ュ レーシ ョ ン デー タ パケ ッ ト か
ら CRC 値を計算 し ます。 POST_CRC_SOURCE プ ロ パテ ィ は、 期待 CRC 値が予め計算 さ れた値か ら く る も のなのか、
ま たは最初の リ ー ド バ ッ ク の コ ン フ ィ ギ ュ レーシ ョ ン デー タ か ら 得 ら れ る も のなのか を定義 し ます。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
•
デザ イ ン (current_design)
°
現在の イ ンプ リ メ ン ト 済みのデザ イ ン
値
•
PRE_COMPUTED :ビ ッ ト ス ト リ ームか ら 期待 CRC 値を決定 し ます。 こ れがデフ ォ ル ト 設定です。
•
FIRST_READBACK : こ の後繰 り 返 さ れ る リ ー ド バ ッ ク での比較用に、 最初の リ ー ド バ ッ ク か ら 実際の CRC 値を
取得 し ます。
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property POST_CRC_SOURCE FIRST_READBACK | PRE_COMPUTED [current_design]
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
177
第 2 章 : 主な プ ロパテ ィ の説明
XDC の構文例
set_property POST_CRC_SOURCE PRE_COMPUTED [current_design]
影響のある処理
•
write_bitstream
•
launch_runs
関連項目
•
172 ページの 「POST_CRC」
•
173 ページの 「POST_CRC_ACTION」
•
174 ページの 「POST_CRC_FREQ」
•
176 ページの 「POST_CRC_INIT_FLAG」
PRE_EMPHASIS
伝送 ラ イ ンで高周波 ロ ス が発生す る 高周波信号のシ グナル イ ン テ グ リ テ ィ を改善する ため、 PRE_EMPHASIS プ ロ パ
テ ィ が使用 さ れ ます。 ト ラ ン ス ミ ッ タ ー プ リ エ ン フ ァ シ ス (PRE_EMPHASIS) 機能に よ り 、 あ る I/O 規格の信号 ド ラ
イ バーにプ リ エン フ ァ シ ス を使用で き る よ う にな り ます。
ヒ ン ト : 全体的な シ グナル イ ン テ グ リ テ ィ を向上 さ せ る ため、 ト ラ ン ス ミ ッ タ ーでのプ リ エ ン フ ァ シ ス は、 レ シー
バーでの 「EQUALIZATION」 と 組み合わせ る こ と がで き ます。
理想的な信号は、 周波数のシ ン ボル間隔内で ロ ジ ッ ク 遷移を実行 し ます。 し か し ロ ス の多い伝送 ラ イ ン ではシ ン ボル
間隔が長 く な る 可能性があ り ます。 伝送 ラ イ ン ロ ス を踏ま え、 プ リ エン フ ァ シ ス は遷移で電圧ゲ イ ン を提供 し ます。
周波数 ド メ イ ンでは、 プ リ エン フ ァ シ ス に よ り デー タ ス ト リ ームの各遷移で高周波が引き 上げ ら れます。
プ リ エン フ ァ シ ス の選択は、 レ シーバー側でのシ グナル イ ン テ グ リ テ ィ に も 重要です。 プ リ エン フ ァ シ ス は信号エ ッ
ジ レー ト を高め、 それは周辺信号の ク ロ ス ト ー ク も 高め ます。
プ リ エン フ ァ シ ス の ク ロ ス ト ー ク お よ び信号不連続性の影響は伝送 ラ イ ン特性に依存 し てい る ため、 影響が最小限の
も のであ る こ と を確認す る にはシ ミ ュ レーシ ョ ンが必要です。 信号をオーバーエン フ ァ シ スする と 、 信号の質は改善
さ れ る よ り む し ろ悪化す る 可能性があ り ます。
アーキテ ク チ ャ サポー ト
UltraScale
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
178
第 2 章 : 主な プ ロパテ ィ の説明
値
PRE_EMPHASIS 属性に使用で き る 値は次の と お り です。
•
RDRV_NONE (デフ ォ ル ト ) - ト ラ ン ス ミ ッ タ ーのプ リ エン フ ァ シ ス を イ ネーブルに し ません。
•
RDRV_240 - プ リ エン フ ァ シ ス を イ ネーブルに し ます。
構文
Verilog 構文 該当な し
VHDL 構文 該当な し
XDC 構文
XDC フ ァ イ ルでは PRE_EMPHASIS 属性を次の よ う な構文で使用 し ます。
set_property PRE_EMPHASIS value [get_ports port_name]
説明 :
•
set_property PRE_EMPHASIS は、 ト ラ ン ス ミ ッ タ ーでプ リ エン フ ァ シ ス を イ ネーブルに し ます。
•
port_name は差動バ ッ フ ァ ーに接続 さ れ る 出力ポー ト ま たは双方向ポー ト です。
関連項目 •
117 ページの 「EQUALIZATION」
•
160 ページの 「LVDS_PRE_EMPHASIS」
PROHIBIT
PROHIBIT では、 配置に使用で き ない ピ ン ま たはサ イ ト を指定 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
サ イ ト (get_sites)
•
BEL (get_bels)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
179
第 2 章 : 主な プ ロパテ ィ の説明
値
1
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property PROHIBIT 1 [get_sites site]
XDC の構文例
# Prohibit the use of package pin Y32
set_property prohibit 1 [get_sites Y32]
影響のある処理
•
I/O 配置
•
place_design
PULLDOWN
PULLDOWN は ト ラ イ ス テー ト 出力ま たは双方向ポー ト に ウ ィ ー ク Low を適用 し 、 フ ロ ーテ ィ ン グ し ない よ う に し 、
ト ラ イ ス テー ト ネ ッ ト が駆動 さ れていない と き に フ ロ ーテ ィ ン グ し ない よ う 、 ロ ジ ッ ク Low に確約 し ます。
入力バ ッ フ ァ ー (IBUF な ど)、 ト ラ イ ス テー ト 出力バ ッ フ ァ ー (OBUFT な ど)、 お よ び双方向バ ッ フ ァ ー (IOBUF な ど
) には、 ウ ィ ー ク プルア ッ プ抵抗、 ウ ィ ー ク プルダ ウ ン抵抗、 ま たは ウ ィ ー ク キーパー回路を含め る こ と がで き ま
す。 バ ッ フ ァ ーに接続 さ れてい る ネ ッ ト オブジ ェ ク ト に次のプ ロ パテ ィ の 1 つを加え る こ と で、 こ の機能を使用で き
ます。
•
PULLUP
•
PULLDOWN
•
KEEPER
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま たは 『UltraScale アーキ テ
ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18] を参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
180
第 2 章 : 主な プ ロパテ ィ の説明
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
最上位ポー ト
値
•
TRUE | YES :駆動 さ れていない と き に信号が フ ロ ーテ ィ ン グ し ない よ う プルダ ウ ン回路を使用 し ます。
•
FALSE | NO :プルダ ウ ン回路を使用 し ません。 デフ ォ ル ト です。
構文
Verilog 構文
Verilog 属性をモジ ュ ールま たは イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。 次の よ う に指定 し ます。
(* PULLDOWN = " {YES|NO|TRUE|FALSE}" *)
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute pulldown: string;
VHDL 属性は次の よ う に指定 し ます。
attribute pulldown of signal_name : signal is “{YES|NO|TRUE|FALSE}”;
XDC 構文
set_property PULLDOWN {TRUE|FALSE} [get_ports port_name]
説明 :
•
port_name は、 入力、 出力、 入出力ポー ト の名前です。
XDC の構文例
# Use a pulldown circuit
set_property PULLDOWN TRUE [get_ports wbWriteOut]
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
関連項目
•
150 ページの 「KEEPER」
•
182 ページの 「PULLUP」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
181
第 2 章 : 主な プ ロパテ ィ の説明
PULLUP
PULLUP は ト ラ イ ス テー ト 出力ま たは双方向ポー ト に ウ ィ ー ク High を適用 し 、 フ ロ ーテ ィ ン グ し ない よ う に し ます。
ト ラ イ ス テー ト ネ ッ ト が駆動 さ れていない と き に フ ロ ーテ ィ ン グ し ない よ う 、 ロ ジ ッ ク High に確約 し ます。
入力バ ッ フ ァ ー (IBUF な ど)、 ト ラ イ ス テー ト 出力バ ッ フ ァ ー (OBUFT な ど)、 お よ び双方向バ ッ フ ァ ー (IOBUF な ど
) には、 ウ ィ ー ク プルア ッ プ抵抗、 ウ ィ ー ク プルダ ウ ン抵抗、 ま たは ウ ィ ー ク キーパー回路を含め る こ と がで き ま
す。 バ ッ フ ァ ーに接続 さ れてい る ネ ッ ト オブジ ェ ク ト に次のプ ロ パテ ィ の 1 つを加え る こ と で、 こ の機能を使用で き
ます。
•
PULLUP
•
PULLDOWN
•
KEEPER
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま たは 『UltraScale アーキ テ ク
チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]を参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
最上位ポー ト
値
•
TRUE | YES :駆動 さ れていない と き に信号が フ ロ ーテ ィ ン グ し ない よ う プルア ッ プ回路を使用 し ます。
•
FALSE | NO :プルア ッ プ回路を使用 し ません。 デフ ォ ル ト です。
構文
Verilog 構文
Verilog 属性をモジ ュ ールま たは イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。 次の よ う に指定 し ます。
(* PULLUP = " {YES|NO|TRUE|FALSE}" *)
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute pullup: string;
VHDL 属性は次の よ う に指定 し ます。
attribute pullup of signal_name : signal is “{YES|NO|TRUE|FALSE}”;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
182
第 2 章 : 主な プ ロパテ ィ の説明
XDC 構文
set_property PULLUP {TRUE|FALSE} [get_ports port_name]
説明 :
•
port_name は、 入力、 出力、 入出力ポー ト の名前です。
XDC の構文例
set_property PULLUP TRUE [get_ports wbWriteOut]
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
関連項目
•
150 ページの 「KEEPER」
•
180 ページの 「PULLDOWN」
REF_NAME
こ れはデザ イ ンのセルに設定す る 読み出 し 専用のプ ロ パテ ィ で、 セルを識別す る 論理セル名を指定 し ます。
こ の REF_NAME プ ロ パテ ィ は Vivado Design Suite に よ り 自動的に定義 さ れ、 HDL や XDC でユーザーが変更す る こ
と はで き ません。 参照用に使用 し ます。
こ のプ ロ パテ ィ はデザ イ ン フ ロ ーには影響 し ませんが、特定セルやほかのオブジ ェ ク ト を識別す る ため、 フ ィ ル タ ー
お よ び Vivado Tcl コ マ ン ド ク エ リ ーを定義す る のに非常に便利です。
た と えば、 RAM セルの ク ロ ッ ク ピ ン を選択す る には、 セルの REF_NAME プ ロ パテ ィ に基づいて ピ ン オブジ ェ ク ト
を フ ィ ル タ ーにかけ ます。
get_pins -hier */*W*CLK -filter {REF_NAME =~ *RAM* && IS_PRIMITIVE}
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
値
該当な し
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
183
第 2 章 : 主な プ ロパテ ィ の説明
構文
該当な し
影響のある処理
なし
REF_PIN_NAME
こ れはデザ イ ンの ピ ンに設定す る 読み出 し 専用のプ ロ パテ ィ で、 ピ ン を識別す る 論理セル名を指定 し ます。
REF_PIN_NAME は、 ピ ンの NAME ま たは HIERARCHICAL NAME か ら 自動的に定義 さ れ、 HDL や XDC でユーザー
が変更す る こ と はで き ません。 参照用に使用 し ます。
こ のプ ロ パテ ィ はデザ イ ン フ ロ ーには影響 し ませんが、特定セルやほかのオブジ ェ ク ト を識別す る ため、 フ ィ ル タ ー
お よ び Vivado Tcl コ マ ン ド ク エ リ ーを定義す る のに非常に便利です。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ピ ン (get_pins)
値
該当な し
構文
該当な し
影響のある処理
なし
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
184
第 2 章 : 主な プ ロパテ ィ の説明
RLOC
H_SET、 HU_SET、 U_SET な ど のセ ッ ト に割 り 当て ら れてい る ロ ジ ッ ク エ レ メ ン ト の相対的な配置を RLOC 制約は
定義 し ます。
RLOC が RTL ソ ース フ ァ イ ルにあ る 場合、 H_SET、 HU_SET、 U_SET プ ロ パテ ィ は、 合成後のネ ッ ト リ ス ト でセル
の読み出 し 専用に RPM プ ロ パテ ィ に変換 さ れ ます。 RLOC プ ロ パテ ィ は保持 さ れ ますが、 合成後には読み出 し 専用
プ ロ パテ ィ にな り ます。 こ れ ら のプ ロ パテ ィ の使用お よ び RPM の定義については、 『Vivado Design Suite ユーザー ガ
イ ド : 制約の使用』 (UG903) [参照 12]を参照 し て く だ さ い。
タ ーゲ ッ ト デバ イ スへのセ ッ ト 全体の実際の配置には関係な く 、セ ッ ト に含まれ る ほかのエ レ メ ン ト に相対 し てセ ッ
ト 内のエ レ メ ン ト の配置を定義で き ます。 た と えば、 RLOC 制約が 1 列に ま と め ら れた 8 個の フ リ ッ プ フ ロ ッ プか ら
成 る グループに適用 さ れてい る 場合、 マ ッ プ プ ロ グ ラ ムはその列を維持 し 、 1 つのユニ ッ ト と し て フ リ ッ プ フ ロ ッ プ
のグループ全体を移動 し ます。 それ と は対照的に、 LOC 制約は、 ほかのデザ イ ン エ レ メ ン ト への参照な し に、 タ ー
ゲ ッ ト デバ イ ス にデザ イ ン エ レ メ ン ト の絶対 ロ ケーシ ョ ン を定義 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
RTL ソ ース フ ァ イ ルの イ ン ス タ ン ス ま たはモジ ュ ール
値
ス ラ イ ス ベース の XY 軸を使用 し て RLOC は指定 さ れます。
RLOC=XmYn
説明 :
•
m は X 軸の値を示す整数です。
•
n は Y 軸の値を示す整数です。
ヒ ン ト : RLOC 制約の X お よ び Y の値はデザ イ ン エ レ メ ン ト 間の順序お よ び関連性を定義 し 、 タ ーゲ ッ ト デバ イ ス
での絶対 ロ ケーシ ョ ン を定義す る も のではないため、 こ れ ら の値は負の値にな る 場合があ り ます。
構文
Verilog 構文
RLOC プ ロ パテ ィ は、 RTL ソ ース フ ァ イ ル内で H_SET、 HU_SET、 ま たは U_SET で指定 さ れ る セ ッ ト 内のデザ イ ン
エ レ メ ン ト の相対配置を定義す る Verilog 属性です。 Verilog 属性は ロ ジ ッ ク エ レ メ ン ト の イ ン ス タ ン シエーシ ョ ン直
前に配置 し ます。
(* RLOC = "XmYn", HU_SET = "h0" *) FD sr0 (.C(clk), .D(sr_1n), .Q(sr_0));
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
185
第 2 章 : 主な プ ロパテ ィ の説明
Verilog 例
こ れは、 ffs 階層モジ ュ ールでシ フ ト レ ジ ス タ フ リ ッ プ フ ロ ッ プの RLOC プ ロ パテ ィ を定義す る Verilog モジ ュ ール
です。
module inv (input a, output z);
LUT1 #(.INIT(2'h1)) lut1 (.I0(a), .O(z));
endmodule // inv
module ffs
(
input clk,
input d,
output q
);
wire
wire
wire
wire
wire
wire
wire
wire
sr_0,
sr_1,
sr_2,
sr_3,
sr_4,
sr_5,
sr_6,
sr_7,
wire
inr, inrn, outr;
inv
inv
inv
inv
inv
inv
inv
inv
inv
(sr_0, sr_0n);
(sr_1, sr_1n);
(sr_2, sr_2n);
(sr_3, sr_3n);
(sr_4, sr_4n);
(sr_5, sr_5n);
(sr_6, sr_6n);
(sr_7, sr_7n);
(inr, inrn);
(*
(*
(*
(*
(*
(*
(*
(*
(*
FD
i0
i1
i2
i3
i4
i5
i6
i7
i8
sr_0n;
sr_1n;
sr_2n;
sr_3n;
sr_4n;
sr_5n;
sr_6n;
sr_7n;
RLOC = "X0Y0" *) FD sr0 (.C(clk), .D(sr_1n), .Q(sr_0));
RLOC = "X0Y1" *) FD sr1 (.C(clk), .D(sr_2n), .Q(sr_1));
RLOC = "X0Y2" *) FD sr2 (.C(clk), .D(sr_3n), .Q(sr_2));
RLOC = "X0Y3" *) FD sr3 (.C(clk), .D(sr_4n), .Q(sr_3));
RLOC = "X0Y4" *) FD sr4 (.C(clk), .D(sr_5n), .Q(sr_4));
RLOC = "X0Y5" *) FD sr5 (.C(clk), .D(sr_6n), .Q(sr_5));
RLOC = "X0Y6" *) FD sr6 (.C(clk), .D(sr_7n), .Q(sr_6));
RLOC = "X0Y7" *) FD sr7 (.C(clk), .D(inrn), .Q(sr_7));
LOC = "SLICE_X0Y0" *) FD inq (.C(clk), .D(d), .Q(inr));
outq (.C(clk), .D(sr_0n), .Q(outr));
assign q = outr;
endmodule // ffs
ヒ ン ト : 先の例では、RLOC プ ロ パテ ィ があ る ので、ffs 階層モジ ュ ールの FD イ ン ス タ ン ス に H_SET プ ロ パテ ィ が使
用 さ れてい る こ と が暗示 さ れてい ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
186
第 2 章 : 主な プ ロパテ ィ の説明
先の例では、 ffs モジ ュ ールの イ ン ス タ ン ス に KEEP_HIERARCHY プ ロ パテ ィ を指定 し て、 合成 さ れたデザ イ ンで 階
層を保持 し 、 RPM を定義す る 必要があ り ます。
module top
(
input clk,
input d,
output q
);
wire
c1, c2;
(* RLOC_ORIGIN = "X1Y1", KEEP_HIERARCHY = "YES" *) ffs u0 (clk, d, c1);
(* RLOC_ORIGIN = "X3Y3", KEEP_HIERARCHY = "YES" *) ffs u1 (clk, c1, c2);
(* RLOC_ORIGIN = "X5Y5", KEEP_HIERARCHY = "YES" *) ffs u2 (clk, c2, q);
endmodule // top
VHDL 構文
VHDL 制約は次の よ う に宣言 し ます。
attribute RLOC: string;
VHDL 制約は次の よ う に指定 し ます。
attribute RLOC of {component_name | entity_name | label_name} :
{component|entity|label} is “XmYn”;
説明 :
•
{component_name | entity_name | label_name} にはデザ イ ン エ レ メ ン ト を指定 し ます。
•
{component|entity|label} は指定 し たデザ イ ン エ レ メ ン ト の イ ン ス タ ン ス ID です。
•
XmYn は指定 さ れたデザ イ ン エ レ メ ン ト の RLOC 値を定義 し ます。
XDC 構文
RLOC プ ロ パテ ィ は XDC 制約を使用 し ては定義で き ません。 RLOC プ ロ パテ ィ は相対的に配置 さ れたマ ク ロ (RPM)
のオブジ ェ ク ト の相対 ロ ケーシ ョ ン を定義 し 、 ま た合成 さ れたデザ イ ンのネ ッ ト リ ス ト では読み出 し 専用の RPM お
よ び RLOC プ ロ パテ ィ にな り ます。
ヒ ン ト : デ ザ イ ン 内 で RPM の よ う に 機能す る マ ク ロ オ ブ ジ ェ ク ト を Vivado Design Suite で 定義す る に は、
create_macro ま たは update_macro を使用 し ます。 こ れ ら の コ マ ン ド の詳細は、 『Vivado Design Suite Tcl コ マ ン
ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参照 し て く だ さ い。
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
•
place_design
•
synth_design
関連項目
•
122 ページの 「H_SET お よ び HU_SET」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
187
第 2 章 : 主な プ ロパテ ィ の説明
•
185 ページの 「RLOC」
•
188 ページの 「RLOCS」
•
190 ページの 「RLOC_ORIGIN」
•
194 ページの 「RPM」
•
195 ページの 「RPM_GRID」
•
200 ページの 「U_SET」
RLOCS
RLOCS は、Vivado Design Suite の create_macro Tcl コ マ ン ド に よ り 作成 さ れた XDC マ ク ロ オブジ ェ ク ト に割 り 当
て ら れ る 読み出 し 専用のプ ロ パテ ィ です。RLOCS が update_macro コ マ ン ド でア ッ プデー ト さ れ る と マ ク ロ に割 り
当て ら れます。 こ れ ら の コ マ ン ド の詳細は、 『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9]
を参照 し て く だ さ い。
RPM と 同様に、 XDC マ ク ロ はセル グループ を相対的に配置 し ます。 マ ク ロ は多 く の点で RPM の類似 し てい ますが、
大 き な違い も あ り ます。
•
RLOC プ ロ パテ ィ と 、 H_SET、 HU_SET、 ま たは U_SET プ ロ パテ ィ の組み合わせで RTL ソ ース フ ァ イ ルで RPM
は定義 さ れます。
•
RPM は合成後のデザ イ ン では変更で き ません。
•
マ ク ロ は、 相対配置制約に よ り グループ化 さ れた リ ーフ セルか ら 作成 さ れ、 合成後に変更で き ます。
•
RPM を自動的にマ ク ロ に変換す る こ と はで き ません。
•
RPM はデザ イ ン オブジ ェ ク ト ではな く 、 XDC マ ク ロ コ マ ン ド を RPM に使用す る こ と はで き ません。
rlocs 引数にあ る よ う に、 update_macro コ マ ン ド でRLOCS プ ロ パテ ィ の相対配置の値を指定 し ます。
"cell0 rloc0 cell1 rloc1 … cellN rlocN"
XDC マ ク ロ オブジ ェ ク ト の割 り 当て ら れてい る RLOCS プ ロ パテ ィ を変更する には、 update_macro コ マ ン ド を使
用 し ます。
RLOCS プ ロ パテ ィ は XDC マ ク ロ の一部であ る 個々のセルそれぞれに対 し RLOC プ ロ パテ ィ に変換 さ れ ま す。 こ の
後、RLOC プ ロ パテ ィ は、マ ク ロ のセルの相対配置を定義す る こ と に よ り 、RPM に対す る の と 同 じ よ う に機能 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
値
•
Cell1 RLOC1 Cell2 RLOC2 Cell3 RLOC3...:マ ク ロ のセルの名前 と 、 その相対 ロ ケーシ ョ ンがペアにな っ てい ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
188
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
XDC マ ク ロ が作成 さ れ、 セルお よ び相対 ロ ケーシ ョ ンが自動入力 さ れ る と き 、 RLOCS プ ロ パテ ィ が間接的に定義 さ
れます。
XDC の例
create_macro macro1
update_macro macro1 {u1/sr3 X0Y0 u1/sr4 X1Y0 u1/sr5 X0Y1}
report_property -all [get_macros macro1]
Property
Type
Read-only Visible
ABSOLUTE_GRID bool
true
true
CLASS
string
true
true
NAME
string
true
true
RLOCS
string* true
true
Value
0
macro
macro1
u1/sr3 X0Y0 u1/sr4 X1Y0 u1/sr5
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
•
place_design
•
synth_design
関連項目
•
122 ページの 「H_SET お よ び HU_SET」
•
185 ページの 「RLOC」
•
190 ページの 「RLOC_ORIGIN」
•
194 ページの 「RPM」
•
195 ページの 「RPM_GRID」
•
200 ページの 「U_SET」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
189
第 2 章 : 主な プ ロパテ ィ の説明
RLOC_ORIGIN
RTL デザ イ ンで相対配置マ ク ロ (RPM) の絶対 ロ ケーシ ョ ン、 ま たは LOC を決め る のが RLOC_ORIGIN プ ロ パテ ィ で
す。 RPM の定義お よ び RLOC_ORIGIN プ ロ パテ ィ の使用については、 『Vivado Design Suite ユーザー ガ イ ド : 制約の
使用』 (UG903) [参照 12]を参照 し て く だ さ い。
RPM は、 RTL デザ イ ンで H_SET、 HU_SET、 ま たは U_SET プ ロ パテ ィ を使用 し て、 セ ッ ト にデザ イ ン エ レ メ ン ト を
割 り 当て る こ と で定義 さ れます。 こ の後、 RLOC プ ロ パテ ィ を使用 し て、 相互相対的にデザ イ ン エ レ メ ン ト の配置が
割 り 当て ら れます。 タ ーゲ ッ ト デバ イ スへのセ ッ ト 全体の実際の配置には関係な く 、 セ ッ ト に含まれ る ほかのエ レ メ
ン ト に相対 し てセ ッ ト 内のエ レ メ ン ト の配置を定義で き ます。
RPM のエ レ メ ン ト 、その相対的配置を定義 し 終え る と 、RLOC_ORIGIN プ ロ パテ ィ で、タ ーゲ ッ ト デバ イ スへの RPM
の絶対配置を定義で き ます。 RLOC_ORIGIN プ ロ パテ ィ は、 合成中に LOC 制約に変換 さ れます。
Vivado Design Suite では、 RLOC_ORIGIN プ ロ パテ ィ は RPM の左下 を定義 し ま す。 こ れは、 RLOC_ORIGIN プ ロ パ
テ ィ が X0Y0 のデザ イ ン エ レ メ ン ト であ る こ と が一般的です。 RPM の残 り のセルは、 グループの原点を基準 と し た
相対 ロ ケーシ ョ ン (RLOC) を使用 し て配置 さ れます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
RTL ソ ース フ ァ イ ル内の イ ン ス タ ン ス
値
ス ラ イ ス ベース の XY 軸を使用 し て RLOC は指定 さ れます。
RLOC_ORIGIN=XmYn
説明 :
•
m は整数の値で、 RPM の左下、 タ ーゲ ッ ト デバ イ ス の X 軸の絶対値を表 し ます。
•
n は整数の値で、 RPM の左下、 タ ーゲ ッ ト デバ イ ス の Y 軸の絶対値を表 し ます。
構文
Verilog 構文
RLOC_ORIGIN プ ロ パテ ィ は、 タ ーゲ ッ ト デバ イ ス での RPM の絶対配置を定義す る Verilog 属性です。 Verilog 属性
は ロ ジ ッ ク エ レ メ ン ト の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。
(* RLOC_ORIGIN = "XmYn", HU_SET = "h0" *) FD sr0 (.C(clk), .D(sr_1n), .Q(sr_0));
Verilog 例
次の最上位 Verilog モジ ュ ールは、 デザ イ ンの ffs モジ ュ ールの RLOC_ORIGIN プ ロ パテ ィ を定義 し てい ます。
module top
(
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
190
第 2 章 : 主な プ ロパテ ィ の説明
input clk,
input d,
output q
);
wire
c1, c2;
(* RLOC_ORIGIN = "X1Y1", KEEP_HIERARCHY = "YES" *) ffs u0 (clk, d, c1);
(* RLOC_ORIGIN = "X3Y3", KEEP_HIERARCHY = "YES" *) ffs u1 (clk, c1, c2);
(* RLOC_ORIGIN = "X5Y5", KEEP_HIERARCHY = "YES" *) ffs u2 (clk, c2, q);
endmodule // top
次の例は最初の例 と 非常に類似 し てい ますが、RLOC_ORIGIN は最初の ffs モジ ュ ール u0 だけに割 り 当て ら れていて、
残 り は相対配置用に RLOC プ ロ パテ ィ で定義 さ れてい る 点が異な り ます。
module top
(
input clk,
input d,
output q
);
wire
c1, c2;
// what would happen if the origin places the RPM outside
// device?
(* RLOC_ORIGIN = "X74Y15", RLOC = "X0Y0" *) ffs u0 (clk, d, c1);
(* RLOC = "X1Y1" *) ffs u1 (clk, c1, c2);
(* RLOC = "X2Y2" *) ffs u2 (clk, c2, q);
endmodule // top
VHDL 構文
VHDL 制約は次の よ う に宣言 し ます。
attribute RLOC_ORIGIN: string;
VHDL 制約は次の よ う に指定 し ます。
attribute RLOC_ORIGIN of {component_name | entity_name | label_name} :
{component|entity|label} is “XmYn”;
説明 :
•
{component_name | entity_name | label_name} にはデザ イ ン エ レ メ ン ト を指定 し ます。
•
{component|entity|label} は指定 し たデザ イ ン エ レ メ ン ト の イ ン ス タ ン ス ID です。
•
XmYn は指定 さ れたデザ イ ン エ レ メ ン ト の RLOC_ORIGIN 値を定義 し ます。
XDC 構文
RLOC_ORIGIN プ ロ パテ ィ は合成 さ れたデザ イ ンで LOC プ ロ パテ ィ に変換 さ れます。タ ーゲ ッ ト デバ イ ス に RPM の
エ レ メ ン ト の 1 つを配置す る こ と で、 RPM の LOC プ ロ パテ ィ は指定で き ます。 RPM のほかにエ レ メ ン ト は、 こ の ロ
ケーシ ョ ンに相対的に配置 さ れ、 LOC プ ロ パテ ィ に割 り 当て ら れます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
191
第 2 章 : 主な プ ロパテ ィ の説明
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
•
place_design
•
synth_design
関連項目
•
122 ページの 「H_SET お よ び HU_SET」
•
185 ページの 「RLOC」
•
188 ページの 「RLOCS」
•
194 ページの 「RPM」
•
195 ページの 「RPM_GRID」
•
200 ページの 「U_SET」
ROUTE_STATUS
ROUTE_STATUS は読み出 し 専用のプ ロ パテ ィ で、 ネ ッ ト 配線の最新情報を反映 さ せる ため、 Vivado 配線プ ロ グ ラ ム
でネ ッ ト に割 り 当て ます。
こ のプ ロ パテ ィ は、 get_property ま たは report_property コ マ ン ド を使用 し て、 個々のネ ッ ト 別ま たはネ ッ ト
のグループ別に検索で き ます。
デザ イ ン全体の ROUTE_STATUS を確認する には、 report_route_status コ マ ン ド を使用 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ネ ッ ト (get_nets)
値
•
ROUTED :ネ ッ ト が完全に配置配線 さ れてい ます。
•
PARTIAL :ネ ッ ト のすべての ピ ンお よ びポー ト が配置 さ れ、 ネ ッ ト の一部は配線 さ れてい ますが、 配線 さ れてい
ない部分があ る ので route_design を実行する 必要があ り ます。
•
UNPLACED :配置 さ れていない ピ ンやポー ト があ り 、 配置を完了 さ せ る ため place_design を実行す る 必要が
あ り ます。
•
UNROUTED :ネ ッ ト のすべての ピ ンお よ びポー ト が配置 さ れてい ますが、 ネ ッ ト に配線デー タ がないため、 配線
を完了 さ せ る のに route_design 実行する 必要があ り ます。
•
INTRASITE : タ ーゲ ッ ト デバ イ ス の同 じ サ イ ト 内で配線全体が完了 し ていて、 接続を完了 さ せ る のに配線 リ ソ ー
ス は不要です。 こ れはエ ラ ーではあ り ません。
•
NOLOADS :配線に論理 ロ ー ド がないか、 配線可能な ロ ー ド ピ ンがないので、 配線は不要です。 こ れはエ ラ ーで
はあ り ません。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
192
第 2 章 : 主な プ ロパテ ィ の説明
•
NODRIVER :配線に論理 ド ラ イ バーがないか、 配線可能な ド ラ イ バーがないので、 配線は不要です。 こ れはデザ
イ ン エ ラ ーです。
•
HIERPORT :配線可能な ロ ー ド ま たは ド ラ イ バーのない最上位階層ポー ト に配線が接続 さ れてい ます。 こ れはエ
ラ ーではあ り ません。
•
ANTENNAS :配線に最低 1 つのア ン テナがあ る (ア ン テナ と はサ イ ト ピ ンに接続す る 枝葉を指すが、 そのサ イ ト
ピ ンが こ の論理ネ ッ ト に接続 さ れてい る こ と を表 し ていない)、 ま たは配線に少な く と も 1 つの島があ る (島 と は
論理ネ ッ ト に関連付け ら れてい る サ イ ト ピ ン のいずれに も 接続 さ れていない配線の一部を指す)。 こ れは配線エ
ラ ーです。
•
CONFLICTS :配線プ ロ グ ラ ムに次の配線エ ラ ーが 1 つ以上見 ら れます。
°
配線の競合 : こ の配線の ノ ー ド が 1 つ以上、 ほかの配線、 ま たは同 じ 配線の別の分岐で も 使用 さ れてい ます。
°
サ イ ト ピ ンの競合 :サ イ ト 内のサ イ ト ピ ンに接続 さ れてい る 論理ピ ン と 、 サ イ ト 外に配線を介 し て接続 さ れ
てい る 論理ネ ッ ト が異な り ます。
°
無効サ イ ト の競合 :サ イ ト のプ ロ グ ラ ミ ン グが無効な状態であ る サ イ ト のサ イ ト のサ イ ト ピ ンに配線が接続
さ れていて、 サ イ ト 内の配線が正 し く 接続 さ れてい る か判断で き ない状態です。
•
ERROR :配線ス テー タ ス を判断す る にあ た っ て内部エ ラ ーが発生 し た状態です。
•
NONET :配線ス テー タ ス用に指定 さ れてい る ネ ッ ト オブジ ェ ク ト が存在 し ないか、ま たは入力 し た よ う には検出
さ れません。
•
NOROUTE :エ ラ ーのため、 指定のネ ッ ト に対 し 配線オブジ ェ ク ト を検出で き ません。
•
NOROUTESTORAGE :エ ラ ーのため、 こ のデバ イ ス に対 し ては配線ス ト レージ オブジ ェ ク ト は使用で き ません。
•
UNKNOWN :エ ラ ーのため、 配線ス テー ト は計算で き ません。
構文
ROUTE_STATUS プ ロ パテ ィ の値は、 先に説明 し た値の 1 つにな り ます。 ま た、 Vivado 配線に よ り 割 り 当て ら れ る 読
み出 し 専用プ ロ パテ ィ で、 直接変更はで き ません。
影響のある処理
•
デザ イ ンの配線
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
193
第 2 章 : 主な プ ロパテ ィ の説明
RPM
RTL ソ ース フ ァ イ ルで H_SET、 HU_SET、 ま たは U_SET プ ロ パテ ィ を使用 し て定義 さ れたセ ッ ト の ロ ジ ッ ク エ レ メ
ン ト に RPM は割 り 当て ら れ、 読み出 し 専用にな っ てい ます。
RTL ソ ー ス フ ァ イ ルに RLOC も あ る 場合は、 H_SET、 HU_SET、 U_SET プ ロ パテ ィ は、 合成後ネ ッ ト リ ス ト でセル
に対す る 読み出 し 専用の RPM プ ロ パテ ィ に変換 さ れます。 Vivado Design Suite のテ キ ス ト エデ ィ タ ーで RTL ソ ース
フ ァ イ ルを開 く と 、 HU_SET お よ び U_SET が表示 さ れますが、 セル オブジ ェ ク ト の [Properties] ビ ュ ーでは RPM プ
ロ パテ ィ が表示 さ れます。 こ れ ら のプ ロ パテ ィ の使用お よ び RPM の定義については、 『Vivado Design Suite ユーザー
ガ イ ド : 制約の使用』 (UG903) を[参照 12]参照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
合成 さ れたデザ イ ンのセル (get_cells)
値
•
NAME :RTL ソ ース フ ァ イ ルに H_SET、 HU_SET、 ま たは U_SET プ ロ パテ ィ と と も に RLOC があ る 場合のセ ッ
ト 定義か ら く る RPM の名前です。
構文
RPM を定義す る ための H_SET、 HU_SET、 ま たは U_SET と RLOC が あ る RTL デザ イ ン を合成す る と RPM プ ロ パ
テ ィ は派生 し 、 読み出 し 専用です。 RPM プ ロ パテ ィ を直接定義 し た り 変更す る こ と はで き ません。
関連項目
•
122 ページの 「H_SET お よ び HU_SET」
•
185 ページの 「RLOC」
•
188 ページの 「RLOCS」
•
190 ページの 「RLOC_ORIGIN」
•
195 ページの 「RPM_GRID」
•
200 ページの 「U_SET」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
194
第 2 章 : 主な プ ロパテ ィ の説明
RPM_GRID
RPM_GRID プ ロ パテ ィ は RLOC グ リ ッ ド を相対座標ではな く 絶対座標で定義 し ます。 RPM_GRID シ ス テ ムは、 セル
が異な る サ イ ト タ イ プ (ス ラ イ ス、 ブ ロ ッ ク RAM、 DSP な ど の組み合わせ) に属す RPM に使用 さ れます。 セルは さ
ま ざ ま なサ イ ズのサ イ ト に配置 さ れ る 可能性があ る ので、 タ ーゲ ッ ト デバ イ ス に直接配置で き る RPM_GRID シ ス テ
ムでは絶対座標の RPM_GRID を使用 し ます。
RPM_GRID 値は、 Vivado IDE でサ イ ト を選択す る と 、 [Site Properties] ビ ュ ーに表示 さ れます。 座標は、 RPM_X お よ
び RPM_Y サ イ ト プ ロ パテ ィ を使用 し て Tcl コ マ ン ド で検索す る こ と も で き ます。 RPM_GRID プ ロ パテ ィ の使用、 絶
対座標を使用 し た RPM の定義については、『Vivado Design Suite ユーザー ガ イ ド : 制約の使用』 (UG903) [参照 12]を参
照 し て く だ さ い。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
セル (get_cells)
値
•
”GRID” :指定のRLOC が、 通常 RLOC で指定 さ れ る 相対座標ではな く 、 タ ーゲ ッ ト デバ イ ス か ら の絶対座標であ
る こ と を Vivado Design Suite に知 ら せ る ため、 RPM_GRID プ ロ パテ ィ と GRID キーワー ド を組み合わせます。
構文
Verilog 構文
Verilog 属性をモジ ュ ールま たは イ ン ス タ ン シエーシ ョ ンの直前に配置 し ます。 次の よ う に指定 し ます。
(* RPM_GRID = "GRID" *)
Verilog 例
module iddr_regs
(
input clk, d,
output y, z
);
(* RLOC = "X130Y195" *) IDDR ireg (.C(clk_i), .D(d), .Q1(q1), .Q2(q2));
defparam ireg.DDR_CLK_EDGE = "SAME_EDGE";
(* RLOC = "X147Y194" *) FD q1reg (.C(clk_i), .D(q1), .Q(y));
(* RLOC = "X147Y194", RPM_GRID = "GRID" *) FD q2reg (.C(clk_i), .D(q2), .Q(z));
endmodule // iddr_regs
VHDL 構文
RPM_GRID シ ス テ ム を使用す る には、 まず属性を定義 し 、 それをデザ イ ン エ レ メ ン ト の 1 つに追加 し ます。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
195
第 2 章 : 主な プ ロパテ ィ の説明
attribute RPM_GRID of ram0 : label is "GRID";
VHDL 制約は次の よ う に宣言 し ます。
attribute RPM_GRID : string;
VHDL 制約は次の よ う に指定 し ます。
attribute RPM_GRID of {component_name | entity_name} :
{component|entity} is “GRID”;
XDC 構文
RPM_GRID プ ロ パテ ィ は RTL ソ ース フ ァ イ ルで割 り 当て ら れ、 XDC フ ァ イ ルや Tcl コ マ ン ド では定義す る こ と はで
き ません。し か し 、XDC マ ク ロ の場合は、update_macros コ マ ン ド に -absolute_grid オプシ ョ ン を使用 し ます。
影響のある処理
•
論理か ら 物理へのマ ッ ピ ン グ
•
place_design
•
synth_design
関連項目
•
122 ページの 「H_SET お よ び HU_SET」
•
185 ページの 「RLOC」
•
188 ページの 「RLOCS」
•
190 ページの 「RLOC_ORIGIN」
•
194 ページの 「RPM」
•
200 ページの 「U_SET」
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
196
第 2 章 : 主な プ ロパテ ィ の説明
SLEW
SLEW は、 プ ロ グ ラ ム可能な出力 ス ルー レ ー ト を サポー ト す る I/O 規格で コ ン フ ィ ギ ュ レ ーシ ョ ン さ れた出力バ ッ
フ ァ ーに対 し 、 出力バ ッ フ ァ ーの スルー レー ト を指定 し ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
°
•
接続 さ れた出力ポー ト ま たは双方向ポー ト
セル (get_cells)
°
出力バ ッ フ ァ ー (すべての OBUF)
値
•
SLOW (デフ ォ ル ト )
•
MEDIUM - UltraScale アーキ テ ク チ ャ の場合は、 ハ イ パフ ォーマ ン ス (HP) I/O でのみ使用で き ます。
•
FAST
構文
Verilog 構文
I/O バ ッ フ ァ ーを推論す る 際に こ の属性を設定す る には、適切な Verilog 属性構文を最上位出力ポー ト 宣言の前に配置
し ます。
(* DRIVE = "{SLOW|FAST}" *)
Verilog の構文例
// Sets the Slew rate to be FAST
(* SLEW = "FAST" *) output FAST_DATA,
その他の Verilog の構文例
出力ま たは双方向バ ッ フ ァ ーが イ ン ス タ ン シエー ト さ れた と き に SLEW を設定す る には、イ ン ス タ ン シエー ト さ れた
出力バ ッ フ ァ ーに SLEW パ ラ メ ー タ ーを割 り 当て ます。
推奨 : 言語 テ ン プ レ ー ト ま た は 『Vivado Design Suite 7 シ リ ー ズ ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17]、 ま た は
『UltraScale アーキ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]か ら の イ ン ス タ ン シエーシ ョ ン テ ン プ レー ト を使
用 し て、 正 し い構文を指定 し て く だ さ い。
次の例では、 fast_data_obuf と い う 名前の OBUF イ ン ス タ ン ス の スルー レー ト を FAST に設定 し てい ます。
// OBUF:Single-ended Output Buffer
//
Virtex-7
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
197
第 2 章 : 主な プ ロパテ ィ の説明
// Xilinx HDL Language Template, version 2014.1
OBUF #(
.DRIVE(12),
// Specify the output drive strength
.IOSTANDARD("DEFAULT"), // Specify the output I/O standard
.SLEW("FAST") // Specify the output slew rate
) fast_data_obuf (
.O(FAST_DATA),
// Buffer output (connect directly to top-level port)
.I(fast_data_int) // Buffer input
);
// End of fast_data_obuf instantiation
VHDL 構文
I/O バ ッ フ ァ ーを推論す る 際に こ の属性を設定す る には、 適切な VHDL 属性構文を最上位出力ポー ト 宣言の前に配置
し ます。
VHDL 属性は次の よ う に宣言 し ます。
attribute SLEW : string;
VHDL 属性は次の よ う に指定 し ます。
attribute SLEW of port_name : signal is value;
説明 :
•
port_name は最上位出力ポー ト です。
VHDL の構文例
FAST_DATA : out std_logic;
attribute SLEW : string;
-- Sets the Slew rate to be FAST
attribute SLEW of STATUS : signal is “FAST”;
その他の VHDL の構文例
出力ま たは双方向バ ッ フ ァ ーが イ ン ス タ ン シエー ト さ れた と き に SLEW を設定す る には、イ ン ス タ ン シエー ト さ れた
出力バ ッ フ ァ ーに SLEW ジ ェ ネ リ ッ ク を割 り 当て ます。
推奨 : 言語 テ ン プ レ ー ト ま た は 『Vivado Design Suite 7 シ リ ー ズ ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17]、 ま た は
『UltraScale アーキ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]か ら の イ ン ス タ ン シエーシ ョ ン テ ン プ レー ト を使
用 し て、 正 し い構文を指定 し て く だ さ い。
次の例では、 fast_data_obuf と い う 名前の OBUF イ ン ス タ ン ス の スルー レー ト を FAST に設定 し てい ます。
-- OBUF:Single-ended Output Buffer
-Virtex-7
-- Xilinx HDL Language Template, version 2014.1
Fast_data_obuf :OBUF
generic map (
DRIVE => 12,
IOSTANDARD => "DEFAULT",
SLEW => "FAST")
port map (
O => FAST_DATA, -- Buffer output (connect directly to top-level port)
I => fast_data_int -- Buffer input
);
-- End of fast_data_obuf instantiation
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
198
第 2 章 : 主な プ ロパテ ィ の説明
XDC 構文
set_property SLEW value [get_ports port_name]
説明 :
•
port_name は出力ま たは双方向ポー ト です。
XDC の構文例
# Sets the Slew rate to be FAST
set_property SLEW FAST [get_ports FAST_DATA]
影響のある処理
•
I/O 配置
•
ノ イ ズ レ ポー ト
•
消費電力レ ポー ト
関連項目
詳細は、 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま たは 『UltraScale アーキ テ
ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974) [参照 18]を参照 し て く だ さ い。
•
OBUF
•
OBUFT
•
IOBUF
•
IOBUF_DCIEN
•
IOBUF_INTERMDISABLE
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
199
第 2 章 : 主な プ ロパテ ィ の説明
U_SET
RLOC 制約を使用 し て、 デザ イ ン階層を ま たいで分散 し てい る デザ イ ン エ レ メ ン ト を 1 つのセ ッ ト に ま と め ます。
U_SET は HDL デザ イ ン ソ ー ス フ ァ イ ル内の属性で、 合成 さ れたデザ イ ンや イ ン プ リ メ ン ト さ れたデザ イ ンには現
われません。 U_SET は、 RPM (Relatively Placed Macro) を RTL デザ イ ン で定義す る と き に使用 さ れます。 こ れ ら のプ
ロ パテ ィ の使用お よ び RPM の定義については、『Vivado Design Suite ユーザー ガ イ ド : 制約の使用』 (UG903) [参照 12]
を参照 し て く だ さ い。
H_SET ま た は HU_SET はデザ イ ン 階層に基づい て ロ ジ ッ ク エ レ メ ン ト のセ ッ ト を 定義す る のに使用 さ れ ま すが、
U_SET を使用す る と 、 ユーザー定義の ロ ジ ッ ク エ レ メ ン ト を手動で作成で き 、 こ のセ ッ ト はデザ イ ンの階層には依
存 し ません。
RTL ソ ー ス フ ァ イ ルに RLOC も あ る 場合は、 H_SET、 HU_SET、 U_SET プ ロ パテ ィ は、 合成後ネ ッ ト リ ス ト でセル
に対す る 読み出 し 専用の RPM プ ロ パテ ィ に変換 さ れます。 Vivado Design Suite のテ キ ス ト エデ ィ タ ーで RTL ソ ース
フ ァ イ ルを開 く と 、 HU_SET お よ び U_SET が表示 さ れますが、 セル オブジ ェ ク ト の [Properties] ビ ュ ーでは RPM プ
ロ パテ ィ が表示 さ れます。
重要 : 階層モジ ュ ールに U_SET 制約を設定す る と 、 それ以下の階層にあ る RLOC 制約が設定 さ れたすべてのプ リ ミ
テ ィ ブ シ ン ボルに U_SET 制約が適用 さ れます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
次のデザ イ ン エ レ メ ン ト 、 ま たはそのカ テ ゴ リ ーで U_SET は使用する こ と がで き ます。詳細は、『Vivado Design Suite
7 シ リ ー ズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953) [参照 17] ま た は 『UltraScale ア ー キ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』
(UG974) [参照 18] を参照 し て く だ さ い。
•
レジス タ
•
FMAP
•
マク ロ インスタンス
•
ROM
•
RAMS
•
RAMD
•
MULT18X18S
•
RAMB4_Sm_Sn
•
RAMB4_Sn
•
RAMB16_Sm_Sn
•
RAMB16_Sn
•
RAMB16
•
DSP48
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
200
第 2 章 : 主な プ ロパテ ィ の説明
値
•
NAME :U_SET の名前
構文
Verilog 構文
こ れは、 合成後ネ ッ ト リ ス ト で RPM を定義す る 階層ブ ロ ッ ク のセ ッ ト の内容を定義す る ため、 RLOC プ ロ パテ ィ と
組み合わせた Verilog 構文です。 Verilog 属性は ロ ジ ッ ク エ レ メ ン ト の イ ン ス タ ン シエーシ ョ ン直前に配置 し ます。
(* RLOC = "X0Y0", HU_SET = "h0" *) FD sr0 (.C(clk), .D(sr_1n), .Q(sr_0));
Verilog 例
こ れは、 モジ ュ ールでのシ フ ト レ ジ ス タ フ リ ッ プ フ ロ ッ プの RLOC お よ び U_SET プ ロ パテ ィ を定義す る Verilog モ
ジ ュ ールです。
module ffs (
input clk,
input d,
output q
);
wire
wire
wire
wire
wire
wire
wire
wire
sr_0,
sr_1,
sr_2,
sr_3,
sr_4,
sr_5,
sr_6,
sr_7,
wire
inr, inrn, outr;
inv
inv
inv
inv
inv
inv
inv
inv
inv
(sr_0, sr_0n);
(sr_1, sr_1n);
(sr_2, sr_2n);
(sr_3, sr_3n);
(sr_4, sr_4n);
(sr_5, sr_5n);
(sr_6, sr_6n);
(sr_7, sr_7n);
(inr, inrn);
(*
(*
(*
(*
(*
(*
(*
(*
(*
FD
i0
i1
i2
i3
i4
i5
i6
i7
i8
sr_0n;
sr_1n;
sr_2n;
sr_3n;
sr_4n;
sr_5n;
sr_6n;
sr_7n;
RLOC = "X0Y0", U_SET = "Uset0" *) FD sr0 (.C(clk), .D(sr_1n), .Q(sr_0));
RLOC = "X0Y0", U_SET = "Uset0" *) FD sr1 (.C(clk), .D(sr_2n), .Q(sr_1));
RLOC = "X0Y1", U_SET = "Uset0" *) FD sr2 (.C(clk), .D(sr_3n), .Q(sr_2));
RLOC = "X0Y1", U_SET = "Uset0" *) FD sr3 (.C(clk), .D(sr_4n), .Q(sr_3));
RLOC = "X0Y0", U_SET = "Uset1" *) FD sr4 (.C(clk), .D(sr_5n), .Q(sr_4));
RLOC = "X0Y0", U_SET = "Uset1" *) FD sr5 (.C(clk), .D(sr_6n), .Q(sr_5));
RLOC = "X0Y1", U_SET = "Uset1" *) FD sr6 (.C(clk), .D(sr_7n), .Q(sr_6));
RLOC = "X0Y1", U_SET = "Uset1" *) FD sr7 (.C(clk), .D(inrn), .Q(sr_7));
LOC = "SLICE_X0Y0" *) FD inq (.C(clk), .D(d), .Q(inr));
outq (.C(clk), .D(sr_0n), .Q(outr));
assign q = outr;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
201
第 2 章 : 主な プ ロパテ ィ の説明
endmodule // ffs
定義 さ れてい る 特定の階層に設定す る HU_SET プ ロ パテ ィ と は異な り 、 U_SET プ ロ パテ ィ は階層全体に設定で き ま
す。 こ の例では、最上位モジ ュ ールに よ り ffs モジ ュ ールの イ ン ス タ ン ス が 3 つ定義 さ れてい ますが、U_SET は Uset_0
お よ び Uset_1 の 2 つ し か作成 さ れてい ません。 こ の 2 つのセ ッ ト に次に定義 さ れてい る 3 つの ffs モジ ュ ール イ ン ス
タ ン ス か ら の フ リ ッ プ フ ロ ッ プが含まれてい ます。
module top (
input clk,
input d,
output q
);
wire
c1, c2;
ffs u0 (clk, d, c1);
ffs u1 (clk, c1, c2);
ffs u2 (clk, c2, q);
endmodule // top
VHDL 構文
VHDL 属性は次の よ う に宣言 し ます。
attribute U_SET : string;
VHDL 制約は次の よ う に指定 し ます。
attribute U_SET of {component_name | entity_name | label_name}
:{component|entity|label} is "NAME";
説明 :
•
{component_name | entity_name | label_name} にはデザ イ ン エ レ メ ン ト を指定 し ます。
•
{component|entity|label} は指定 し たデザ イ ン エ レ メ ン ト の イ ン ス タ ン ス ID です。
•
"NAME" には U_SET の名前を指定 し ます。
XDC 構文
U_SET プ ロ パテ ィ は XDC 制約を使用 し ては定義で き ません。 RLOC と と も に ロ ジ ッ ク エ レ メ ン ト に設定 さ れてい る
U_SET プ ロ パテ ィ は、 RPM を定義 し 、 その結果合成 さ れたデザ イ ン のネ ッ ト リ ス ト に読み出 し 専用の RPM プ ロ パ
テ ィ が設定 さ れます。
ヒ ン ト : デ ザ イ ン 内 で RPM の よ う に 機能す る マ ク ロ オ ブ ジ ェ ク ト を Vivado Design Suite で 定義す る に は、
create_macro ま たは update_macro を使用 し ます。 こ れ ら の コ マ ン ド の詳細は、 『Vivado Design Suite Tcl コ マ ン
ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)[参照 9] を参照 し て く だ さ い。
影響のある処理
•
デザ イ ンの フ ロ アプ ラ ン
•
place_design
•
synth_design
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
202
第 2 章 : 主な プ ロパテ ィ の説明
関連項目
•
148 ページの 「KEEP_HIERARCHY」
•
122 ページの 「H_SET お よ び HU_SET」
•
185 ページの 「RLOC」
USE_DSP48
USE_DSP48 プ ロ パテ ィ を使用す る と 、 Vivado Design Suite で数学モジ ュ ールが タ ーゲ ッ ト デバ イ ス で DSP48 ブ ロ ッ
ク に合成 さ れ る よ う にな り ます。
デ フ ォ ル ト では、 乗算器、 乗加算器、 乗減算器、 乗累算器 タ イ プ の構造が DSP48 ブ ロ ッ ク に割 り 当 て ら れ ま す。
USE_DSP48 プ ロ パテ ィ を指定 し ない場合、 Vivado 合成では ロ ジ ッ ク が自動的に正 し く 推論 さ れます。 加算器、 減算
器、 ア キ ュ ム レー タ も こ れ ら のブ ロ ッ ク に含め る こ と はで き ますが、デフ ォ ル ト では DSP48 ブ ロ ッ ク ではな く ロ ジ ッ
ク を使用 し て イ ン プ リ メ ン ト さ れ ます。 USE_DSP48 属性を使用す る と 、 こ のデフ ォ ル ト 動作が変更 さ れ、 デバ イ ス
で DSP48 ブ ロ ッ ク を使用 し て こ れ ら の構造が定義 さ れ る よ う に も な り ます。
DSP48 は、 カ ウ ン タ ー、 マルチプ レ ク サー、 お よ びシ フ ト レ ジ ス タ な ど、 数学以外のその他多 く の ロ ジ ッ ク フ ァ ン
ク シ ョ ン を イ ンプ リ メ ン ト さ れ る ために も 使用で き ます。 ただ し 、 マルチプ レ ク サーな ど の複雑なモジ ュ ールの場合
は、 手動で DSP48 を手動で イ ン ス タ ン シエー ト する 必要があ り ます。
こ のプ ロ パテ ィ は、 次の よ う に RTL で信号上の属性 と し て設定で き ます。
(* use_dsp48 = "yes" *) module test(clk, in1, in2, out1);
USE_DSP48 は RTL ソ ース でモジ ュ ールに適用で き ますが、 それが指定 さ れたモジ ュ ールにのみ適用 さ れ ます。 下位
モジ ュ ールには個別に指定す る か、 指定 し ないで く だ さ い。 こ れは、 デザ イ ンの階層セルに XDC 制約 と し て適用す
る こ と も で き ます。
アーキテ ク チ ャ サポー ト
すべてのデバ イ ス
適用可能なオブ ジ ェ ク ト
こ の属性は、 RTL の信号、 アーキ テ ク チ ャ お よ び コ ン ポーネ ン ト 、 エ ン テ ィ テ ィ お よ びモジ ュ ールに指定で き ます。
優先順位は次の と お り です。
1.
信号
2.
アーキ テ ク チ ャ お よ び コ ン ポーネ ン ト
3.
モジ ュ ールお よ びエン テ ィ テ ィ
値
•
YES : DSP48 ブ ロ ッ ク を使用 し て数学フ ァ ン ク シ ョ ン を イ ンプ リ メ ン ト し ます。
•
NO : Vivado 合成のデフ ォ ル ト ビヘ イ ビ アーは変更 さ れません。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
203
第 2 章 : 主な プ ロパテ ィ の説明
構文
Verilog 構文
(* use_dsp48 = "yes" *) module test(clk, in1, in2, out1);
VHDL 構文
attribute use_dsp48 : string;
attribute use_dsp48 of P_reg : signal is "no"
XDC 構文
set_property use_dsp48 yes [get_cells -hier ….]
影響のある処理
•
合成
USED_IN
USED_IN プ ロ パテ ィ は Vivado Design Suite のデザ イ ン フ ァ イ ル (v、 vhd、 xdc、 tcl) に設定 し 、 こ れ ら の フ ァ イ ルが
FPGA デザ イ ンの ど の段階で使用 さ れ る か を指定 し ます。
た と えば、 イ ンプ リ メ ン テーシ ョ ンではな く 、 Vivado 合成で XDC フ ァ イ ルを使用す る よ う 、 USED_IN プ ロ パテ ィ で
指定で き ます。 ま た、 合成ではな く シ ミ ュ レーシ ョ ンで HDL ソ ース フ ァ イ ル (v ま たは vhd) を使用す る よ う 指定す
る こ と も で き ます。
ヒ ン ト : USED_IN_SYNTHESIS、 USED_IN_SIMULATION、 USED_IN_IMPLEMENTATION プ ロ パテ ィ は USED_IN プ
ロ パテ ィ に関連付け ら れてお り 、 ツールに よ り 自動的に USED_IN ({synthesis, simulation, implementation} に変換 さ れ
ます。
ま た、 Tcl フ ァ イ ル を 単に イ ン プ リ メ ン テ ー シ ョ ン で使用す る 設定す る の で は な く 、 USED_IN opt_design ま た は
place_design で使用す る よ う に細か く 設定する こ と も で き ます。
アーキテ ク チ ャ サポー ト
すべてのアーキ テ ク チ ャ
適用可能なオブ ジ ェ ク ト
•
フ ァ イル
値
•
synthesis
•
implementation
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
204
第 2 章 : 主な プ ロパテ ィ の説明
•
simulation
•
out_of_context
•
opt_design
•
power_opt_design
•
place_design
•
phys_opt_design
•
route_design
•
write_bitstream
•
post_write_bitstream
•
synth_blackbox_stub
•
testbench
•
board
•
single_language
構文
Verilog 構文
該当な し
VHDL 構文
該当な し
XDC 構文
set_property USED_IN {<value>} [get_files <files>]
説明 :
•
<value> には有効な USED_IN 値が 1 つま たは複数入 り ます。
•
<files> には USED_IN プ ロ パテ ィ を設定す る フ ァ イ ル名が入 り ます。
XDC の構文例
# Designates the specified files as used in simulation
set_property USED_IN {synthesis simulation} [get_files *.vhdl]
影響のある処理
•
合成
•
シ ミ ュ レーシ ョ ン
•
イ ンプ リ メ ン テーシ ョ ン
•
ビ ッ ト ス ト リ ーム生成
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
205
第 2 章 : 主な プ ロパテ ィ の説明
VCCAUX_IO
VCCAUX_IO は、 指定 し た I/O の VCCAUX_IO レールの動作電圧を指定 し ます。
VCCAUX_IO プ ロ パテ ィ の割 り 当てが正 し い こ と をチ ェ ッ ク す る DRC があ り ます。
•
VCCAUXIOBT (警告) : VCCAUX_IO の値が NORMAL ま たは HIGH にな っ てい る ポー ト が HP バン ク のみに配置
さ れてい る こ と を確認 し ます。
•
VCCAUXIOSTD (警告) : VCCAUX_IO の値が NORMAL ま たは HIGH にな っ てい る ポー ト が HR バン ク でのみサ
ポー ト さ れてい る IOSTANDARD を使用 し ていない こ と を確認 し ます。
•
VCCAUXIO (エ ラ ー ) : VCCAUX_IO の値が NORMAL にな っ てい る ポー ト が、 VCCAUX_IO の値が HIGH にな っ
てい る ポー ト と し て同 じ バン ク に制約/配置 さ れていない こ と を確認 し ます。
アーキテ ク チ ャ サポー ト
7 シ リ ーズお よ び Zynq デバ イ ス (High Performance (HP) バン ク の I/O のみ)
適用可能なオブ ジ ェ ク ト
•
ポー ト (get_ports)
•
セル (get_cells)
°
I/O バ ッ フ ァ ー
値
•
DONTCARE (デフ ォ ル ト )
•
NORMAL
•
HIGH
構文
Verilog 構文
こ の属性を設定す る には、 適切な Verilog 属性構文を最上位出力ポー ト 宣言の前に配置 し ます。
(* VCCAUXIO = "{DONTCARE|NORMAL|HIGH}" *)
Verilog の構文例
// Specifies a “HIGH” voltage for the VCCAUX_IO rail connected to this I/O
(* VCCAUX_IO = "HIGH" *) input ACT3,
VHDL 構文
こ の属性を設定す る には、 適切な VHDL 属性構文を最上位出力ポー ト 宣言の前に配置 し ます。
VHDL 属性は次の よ う に宣言 し ます。
attribute VCCAUX_IO : string;
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
206
第 2 章 : 主な プ ロパテ ィ の説明
VHDL 属性は次の よ う に指定 し ます。
attribute VCCAUX_IO of port_name : signal is value;
説明 :
•
port_name は最上位ポー ト です。
VHDL の構文例
ACT3 : in std_logic;
attribute VCCAUX_IO : string;
-- Specifies a HIGH voltage for the VCCAUX_IO rail connected to this I/O
attribute VCCAUX_IO of ACT3 : signal is “HIGH”;
XDC 構文
set_property VCCAUX_IO value [get_ports port_name]
説明 :
•
port_name は最上位ポー ト です。
XDC の構文例
# Specifies a HIGH voltage for the VCCAUX_IO rail connected to this I/O
set_property VCCAUX_IO HIGH [get_ports ACT3]
影響のある処理
•
I/O 配置
•
place_design
•
消費電力レ ポー ト
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
207
付録 A
その他の リ ソ ース
ザイ リ ン ク ス リ ソ ース
ア ンサー、 資料、 ダ ウ ン ロ ー ド 、 フ ォー ラ ム な ど のサポー ト リ ソ ース は、 次のザ イ リ ン ク ス サポー ト サ イ ト を参照
し て く だ さ い。
ザ イ リ ン ク ス で使用 さ れ る 技術用語については、 ザ イ リ ン ク ス用語集を参照 し て く だ さ い。
ソ リ ュ ーシ ョ ン セ ン タ ー
デバ イ ス、 ツール、 IP のサポー ト については、 ザ イ リ ン ク ス ソ リ ュ ーシ ョ ン セ ン タ ーを参照 し て く だ さ い。 ト ピ ッ
ク には、 デザ イ ン ア シ ス タ ン ト 、 ア ド バ イ ザ リ 、 ト ラ ブルシ ュ ー ト ヒ ン ト な ど が含まれます。
参考資料
こ のガ イ ド の補足情報は、 次の資料を参照 し て く だ さ い。
1.
『7 シ リ ーズ FPGA コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG470)
2.
『7 シ リ ーズ FPGA SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG471)
3.
『7 シ リ ーズ FPGA ク ロ ッ ク リ ソ ース ユーザー ガ イ ド 』 (UG472)
4.
『7 シ リ ーズ FPGA の XADC 12 ビ ッ ト 1MSPS デュ アル アナ ロ グ-デジ タ ル コ ンバー タ ー ユーザー ガ イ ド 』
(UG480)
5.
『UltraScale アーキ テ ク チ ャ コ ン フ ィ ギ ュ レーシ ョ ン ユーザー ガ イ ド 』 (UG570)
6.
『UltraScale アー ク テ ク チ ャ SelectIO リ ソ ース ユーザー ガ イ ド 』 (UG571)
7.
『UltraScale アーキ テ ク チ ャ ク ロ ッ キ ン グ リ ソ ース ユーザー ガ イ ド 』 (UG572)
8.
『UltraScale アー ク テ ク チ ャ シ ス テ ム モニ タ ー ユーザー ガ イ ド 』 (UG580)
9.
『Vivado Design Suite Tcl コ マ ン ド リ フ ァ レ ン ス ガ イ ド 』 (UG835)
10. 『Vivado Design Suite ユーザー ガ イ ド : IP を使用 し た設計』 (UG896)
11. 『Vivado Design Suite ユーザー ガ イ ド : 合成』 (UG901)
12. 『Vivado Design Suite ユーザー ガ イ ド : 制約の使用』 (UG903)
13. 『Vivado Design Suite ユーザー ガ イ ド : イ ンプ リ メ ン テーシ ョ ン』 (UG904)
14. 『Vivado Design Suite ユーザー ガ イ ド : 階層デザ イ ン』 (UG905)
15. 『Vivado Design Suite ユーザー ガ イ ド : デザ イ ン解析お よ び ク ロ ージ ャ ー テ ク ニ ッ ク 』 (UG906)
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
208
16. 『Vivado Design Suite ユーザー ガ イ ド : プ ロ グ ラ ムお よ びデバ ッ グ』 (UG908)
17. 『Vivado Design Suite 7 シ リ ーズ FPGA ラ イ ブ ラ リ ガ イ ド 』 (UG953)
18. 『UltraScale アーキ テ ク チ ャ ラ イ ブ ラ リ ガ イ ド 』 (UG974)
19. 『Vivado Design Suite ユーザー ガ イ ド : IP イ ン テ グ レー タ ーを使用 し た IP サブシ ス テ ムの設計』 (UG995)
20. 『LogiCORE IP JTAG to AXI Master 製品ガ イ ド 』 (PG174)
21. Vivado Design Suite ビデオ チ ュ ー ト リ アル
22. Vivado Design Suite の資料
法的通知
The information disclosed to you hereunder (the “Materials”) is provided solely for the selection and use of Xilinx products.To the maximum extent
permitted by applicable law:(1) Materials are made available "AS IS" and with all faults, Xilinx hereby DISCLAIMS ALL WARRANTIES AND
CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY,
NON-INFRINGEMENT, OR FITNESS FOR ANY PARTICULAR PURPOSE; and (2) Xilinx shall not be liable (whether in contract or tort,
including negligence, or under any other theory of liability) for any loss or damage of any kind or nature related to, arising under, or in connection
with, the Materials (including your use of the Materials), including for any direct, indirect, special, incidental, or consequential loss or damage
(including loss of data, profits, goodwill, or any type of loss or damage suffered as a result of any action brought by a third party) even if such
damage or loss was reasonably foreseeable or Xilinx had been advised of the possibility of the same.Xilinx assumes no obligation to correct any
errors contained in the Materials or to notify you of updates to the Materials or to product specifications.You may not reproduce, modify, distribute,
or publicly display the Materials without prior written consent.Certain products are subject to the terms and conditions of Xilinx’s limited warranty,
please refer to Xilinx’s Terms of Sale which can be viewed at http://www.xilinx.com/legal.htm#tos; IP cores may be subject to warranty and
support terms contained in a license issued to you by Xilinx.Xilinx products are not designed or intended to be fail-safe or for use in any application
requiring fail-safe performance; you assume sole risk and liability for use of Xilinx products in such critical applications, please refer to Xilinx’s
Terms of Sale which can be viewed at http://www.xilinx.com/legal.htm#tos.
© Copyright 2012-2014 Xilinx, Inc. Xilinx, the Xilinx logo, Artix, ISE, Kintex, Spartan, UltraScale, Virtex, Vivado, Zynq, and other designated
brands included herein are trademarks of Xilinx in the United States and other countries.All other trademarks are the property of their respective
owners.
こ の資料に関す る フ ィ ー ド バ ッ ク お よ び リ ン ク な ど の問題につ き ま し ては、 [email protected] ま で、 ま たは各ページの
右下にあ る [フ ィ ー ド バ ッ ク 送信] ボ タ ン を ク リ ッ ク す る と 表示 さ れ る フ ォ ームか ら お知 ら せ く だ さ い。 フ ィ ー ド バ ッ ク は日本語で
入力可能です。 いただ き ま し た ご意見を参考に早急に対応 さ せていただ き ます。 なお、 こ の メ ール ア ド レ スへのお問い合わせは受
け付けてお り ません。 あ ら か じ めご了承 く だ さ い。
Vivado プ ロパテ ィ リ フ ァ レ ン ス
UG912 (v2014.2) 2014 年 8 月 5 日
japan.xilinx.com
209
Fly UP