You are using a deprecated Browser. Internet Explorer is no longer supported by Xilinx.
ソリューション
製品
サポート
ソリューション
製品
サポート
テクノロジー別ソリューション
AI 推論の高速化
戻る
AI 推論の高速化
ザイリンクス AI の利点
ザイリンクス AI ソリューション
ザイリンクス AI で開発を開始
ビデオ AI 分析
ネットワーキング
アプリ ストア
戻る
アプリ ストア
アプリ ストア概要
Alveo データセンター アクセラレータ アプリ
Kria システム オン モジュール アプリ
各業界向けのソリューション
航空宇宙/高信頼性製品
戻る
航空宇宙/防衛
概要
アビオニクス/UAV
デジタル レーダー/EW
軍用通信と衛星通信
宇宙
オートモーティブ
戻る
オートモーティブ
概要
ADAS
自動運転
電動化とネットワーク
車載システム
ブロードキャストと業務用 A/V
戻る
ブロードキャストと業務用 A/V
概要
AV over IP
カメラ
コンバーターおよび KVM
エンコーダー/デコーダー
プロフェッショナル オーディオ システム
業務用ディスプレイ/サイネージ
プロジェクション システム
ルーター/スイッチャー
サーバーおよびストレージ
伝送および変調
ビデオ会議システム
ビデオ プロセッシング カード
民生電子機器
戻る
民生電子機器
概要
AV & エンターテイメント
プリンター
ホーム & ライスタイル
データセンター
戻る
データセンター
概要
計算用ストレージ
データベースおよびデータ分析
金融テクノロジ
高性能コンピューティング
ネットワーキング
ビデオおよび画像処理
エミュレーション/プロトタイピング
戻る
エミュレーション/プロトタイピング
概要
ASIC のエミュレーション
FPGA ベースのプロトタイピング
産業用機器
戻る
産業機器
概要
3D プリンターと積層造形技術
ヒューマン マシン インターフェイス
I/O モジュールおよびスマート センサー
IIoT ゲートウェイとエッジ アプライアンス
IIoT エッジ ノードを使用する産業用制御
マシンおよびコンピューター ビジョン
駆動装置およびモーター制御
ロボット産業
スマート グリッド
電車/鉄道
ビデオ監視システム
ヘルスケア / 医療機器
戻る
ヘルスケア / 医療機器
概要
医療施設用除細動器および自動体外式除細動器 (AED)
診断および臨床用の内視鏡画像処理
ヘルスケア AI
CT、MRI、PET 医療画像処理
医療用超音波画像処理
マルチパラメーター患者モニターと心電図 (ECG)
その他の医療機器
ロボット支援手術
医療機器の安全性/セキュリティ/パートナー ソリューション
テストおよび計測機器
戻る
テストおよび計測機器
概要
半導体自動テスト装置
テストおよび測定装置
ワイヤード/ワイヤレス テスト装置
ワイヤード/ワイヤレス 通信
戻る
ワイヤード/ワイヤレス 通信
概要
ネットワーク セキュリティ
テレコム アクセラレーション
テレコミュニケーション
ワイヤレス
ソリューション
製品
サポート
製品カテゴリ
デバイス
戻る
デバイス
シリコン デバイス
ACAP
FPGA および 3D IC
SoC、MPSoC、RFSoC
コスト重視製品ポートフォリオ
アクセラレータ
戻る
アクセラレータ
データセンター アクセラレータ カード
計算用ストレージ
テレコム アクセラレータ
システム オン モジュール (SOM)
戻る
システム オン モジュール (SOM)
SOM 概要
Kria システム オン モジュール
Kria SOM リソース
Kria SOM アプリ ストア
Kria ビジョン AI SOM で設計開始
ボードとキットの評価
戻る
ボードとキットの評価
ボードとキット検索
評価ボード
FPGA メザニン カード
ボードとキットの付属品
イーサネット アダプター
戻る
イーサネット アダプター
Alveo SN1000 SmartNIC
Alveo U25 SmartNIC
NIC X2 シリーズ オフロード
NIC 8000 シリーズ オフロード
ソフトウェア開発
戻る
ソフトウェア開発ツール
Vitis™ ソフトウェア プラットフォーム
Vitis™ AI
Vitis™ アクセラレーション ライブラリ
レガシ ツール
ソフトウェア開発リソース
開発者サイト - developer.xilinx.com
ザイリンクスのアクセラレータ プログラム
ザイリンクス コミュニティ ポータル
リファレンス アプリ
ハードウェア開発
戻る
ハードウェア開発ツール
Vivado® Design Suite
IP
System Generator
MATLAB & Simulink アドオン
ハードウェア開発リソース
開発者サイト - developer.xilinx.com
シリコン評価ボード
デザイン ハブ
デザインおよびデバッグ ブログ
エンベデッド開発
戻る
エンベデッド開発
エンベデッド ソフトウェア/エコシステム
Xilinx Wiki デザイン サンプル
Xilinx GitHub
ザイリンクス コミュニティ ポータル
コア テクノロジ
戻る
コア テクノロジ
コア テクノロジ一覧
3D IC
コンフィギュレーション ソリューション
コネクティビティ
デザイン セキュリティ
DSP
DFX (Dynamic Function eXchange)
イーサネット
機能安全
高速シリアル
機械学習
メモリ
画像処理向け MIPI コネクティビティ
PCI Express
消費電力削減
プロセッシング ソリューション
RF サンプリング
シグナル インテグリティ
システム モニター/XADC
アプリ ストア
戻る
アプリ ストア
アプリ ストア概要
Alveo データセンター アクセラレータ アプリ
Kria システム オン モジュール アプリ
製品の詳細
開発者サイト - developer.xilinx.com
品質と信頼性
Powered By Xilinx
ソリューション
製品
サポート
サポートおよびサービス
サポート
戻る
サポート
サポート ホームページ
ナレッジ ベース
資料
コミュニティ フォーラム
サービス ポータル
デザイン ハブ
Versal ACAP デザイン プロセス資料
ダウンロードとライセンス
サービス
戻る
サービス
トレーニング
ダウンロードとライセンス
製品の返品
ユニバーシティ プログラム
パートナー デザイン サービス
採用情報
会社概要
戻る
会社概要
事業概要
役員紹介
IR 情報
ザイリンクス ベンチャー
地域社会への貢献
企業責任
コーポレート ブリーフィング センター
採用情報
パートナー
戻る
パートナー
ザイリンクス パートナー プログラム概要
アクセラレータ パートナー プログラム
Alveo アクセラレータ カード パートナー ネットワーク
デザイン サービス パートナー
すべてのエコシステム パートナー
お問い合わせ
戻る
お問い合わせ
お問い合わせ
販売代理店に問い合わせ
日本法人について
販売代理店
ニュースルームおよびメディア
ニュースルーム
プレス リリース
ウェビナー
ビデオ ポータル
Powered By Xilinx
コミュニティ
ザイリンクス ブログ
イベント
コミュニティ フォーラム
ショッピング カート
Sub Total
送料
Calculated at Checkout
税
Calculated at Checkout
Secure Checkout
Your cart is empty
Looks like you have no items in your shopping cart.
Click here
to continue shopping
アカウント
ログイン | 登録
サイン アウト
検索
すべて
シリコン デバイス
ボードとキット
IP
サポート
資料
ナレッジ ベース
コミュニティ フォーラム
パートナー
ビデオ
プレス リリース
検索
サポート
AR# 9782: 4.1i Constraints - Virtex/Virtex-E BlockRam - How do I use the "BRAMS_PORTA" and "BRAMS_PORTB" keywords in the 3.1i software?
AR# 9782
更新を電子メールで連絡
|
購読解除
Virtex/Virtex-E BlockRAM – 3.1i ソフトウェアで新しく追加された BRAMS_PORTA および BRAMS_PORTB 属性を使用する方法について
説明
ソリューション
説明
キーワード : Virtex, Virtex-E, Block, BlockRAM, RAM, BRAMS_PORTA, FIFO, BRAMS_PORTB, constraint, ブロック, 制約
重要度 : 標準
概要 :
3.1i 以前のバージョンでは、TNM または TNM_NET プロパティがデュアル ポート Virtex ブロック RAM に付けられていたため、ブロック RAM インスタンスは TNM グループに追加されていました。 つまりブロック RAM の両方のポート (BEL) はそのグループに属しており、 TNM グループをトレースすると、TNM プロパティのトレースする入力ピンに関係なく、常にインスタンスがマークされていました。
この場合、2 つのポートが異なる周波数でアクセスされるデュアル ポート ブロック RAM のタイミング指定が困難でした。 3.1i では BRAMS_PORTA と BRAMS_PORTB という 2 つのタイムスペックが新しく追加され、デュアル ポート RAM で異なるタイム グループを指定できるようになりました。
このソリューションではこの 2 つの属性の使用方法および使用の際に発生する可能性のあるエラーについて記述します。
メモ : バージョン 4.1 では、デュアル ポート RAM に付けられた TNM プロパティは適正に解析されます。 UCF 構文例については、(ザイリンクス アンサー #12852) を参照してください。
ソリューション
1
BRAMS_PORTA および BRAMS_PORTB 属性は UCF または NCF ファイルに入力できます。 次に使用方法の例を示します。
1. NET "X" TNM_NET = BRAMS_PORTA groupA;
TNM グループ groupA にはネット X で駆動されるすべての A ポートが含まれます。ネット X がB ポートの入力にトレースされる場合、シングル ポート RAM のエレメントまたは Select RAM のエレメントは groupA には含まれません。
2. NET "X" TNM_NET=BRAMS_PORTB (dob*) groupB;
B ポートの出力のうち最低 1 つでもパターンが dob* の信号を駆動している場合、TNM グループ groupB にネット X で駆動される B ポートが含まれます。
3. INST "Y" TNM=BRAMS_PORTB groupC;
TNM グループ groupC にはインスタンス Y 内のすべての B ポートが含まれます。インスタンス Y がデュアル ポート RAM プリミティブの場合、groupC にはそのインスタンスの B ポートも含まれます。
4. INST "Y" TNM=BRAMS_PORTA (doa*) groupD;
A ポートの出力のうち最低 1 つでもパターンが doa* の信号を駆動している場合、TNM グループ groupD にはインスタンス Y ないの A ポートが含まれます。
5. TIMEGRP groupE = BRAMS_PORTA;
ユーザー グループ groupE にはデザイン内のすべてのブロック RAM エレメントの A ポートが含まれます。 この設定は、BRAMS_PORTA (*) と同等です。
6. TIMEGRP groupF = BRAMS_PORTB (mem/dob*);
ユーザー グループ groupF にはデザイン内でパターンが mem/dob* の信号を駆動するすべての B ポートが含まれます。
7. TIMESPEC TS01 = FROM BRAMS_PORTA TO BRAMS_PORTB (dob*);
仕様 TS01 では A ポートからパターンが dob* の信号を駆動する B ポートまでのパスを制御します。
これらの属性を使用する際には、次のことにも注意してください。
1. 属性 BRAMS_PORTA および BRAMS_PORTB は Virtex ファミリのデュアル ポート RAM にのみ使用でき、 シングル ポート ブロック RAM および、その他のデバイスのデュアル ポート Select RAM には使用できません。 これらのタイプの RAM エレメントには RAMS 属性を使用する必要があります。
2. Constraints Editor では現在のところこの 2 つの属性はサポートされていません。 制約は、UCF または NCF 制約ファイルに入力する必要があります。
3. これらの属性で定義されたパターン グループには RAM ベースのパターン グループにも属するエレメントが含まれる場合があります。 例 :
TIMEGRP ALL_RAMS = RAMS;
TIMEGRP ALL_APORTS = BRAMS_PORTA;
この例では、すべてのデュアル ポート ブロック RAM エレメントの A ポートが ALL_RAMS および ALL_PORTS の両方のグループに属しています。
4. 重要 : ポートは BRAMS_PORT グループで定義される出力を駆動する必要があります。
出力ポートが接続されていない場合、デザインが NGDBuild で解析される際に BRAMS_PORT グループはすべての適用可能な制約から削除されます。
2
これらの属性を使用した際に起こる可能性のあるエラーについて記述します。
1. デュアル ポート ブロック RAM が CLKA と CLKB の 2 つのクロックで制御されており、その 2 つのクロックに対し異なる周期制約がある場合、TRCE は TWR ファイルにブロック RAM のパスを UCF または NCF ファイルに表示されている順番でレポートします。
たとえば、UCF ファイルに次が表示されている場合、
NET clka PERIOD = 20 ns;
NET clkb PERIOD = 15 ns;
ブロック RAM のパスは CLKB のクロック周期制約の次に表示されます。
ブロック RAM のパスが正しいタイムスペックの下に表示されるようにするには、BRAMS_PORTA および BRAMS_PORTB 属性を使用しブロック RAM をグループ化してください。 たとえば、次の構文を使用するとブロック RAM および FF をグループ化できます。
NET clka TNM_NET = BRAMS_PORTA groupA;
NET clka TNM_NET = FFS groupA;
NET clkb TNM_NET = BRAMS_PORTB groupB;
NET clkb TNM_NET = FFS groupB;
TIMESPEC TS01 = PERIOD groupA 20ns;
TIMESPEC TS02 = PERIOD groupB 15ns;
3
これらの 2 つの属性を使用した際に起こる可能性のあるエラーについて記述します。
2. デザインにデュアル ポート RAM とクロックを共有する LUT RAMが含まれる場合、RAM グループから不正なブロック RAM ポートを除外できません。
たとえば、次の TIMEGRP が制約ファイルにあるとします。
NET clka TNM_NET = RAMS all_ram;
この場合、すべての LUT RAM だけでなく、ブロック RAM の両方のポートもグループに含まれてしまいます。 これは、グループが RAM グループのサブグループであるためです。
LUT RAM がデザインに含まれる場合は、ユーザー タイム グループを定義し、制約ファイルで EXCEPT 節を使用してください。 CLKDLL がデザインで使用される場合は、これらのタイム グループを指定するために CLKDLL 出力の全てのネットを使用する必要があります。 これは、ユーザー定義のタイム グループ名が CLKDLL を介して付けることができないためです。
次の例の制約ファイルでは、LUT RAM、FF、およびデュアル ポート ブロック RAM のポート A が同じ TIMEGRP にグループ化されるよう EXCEPT 節が使用されています。
NET "clka" TNM_NET = "FFS:clka_nolutrams";
NET "clka" TNM_NET = "BRAMS_PORTA:clka_nolutrams";
NET "clka" TNM_NET = "RAMS:clka_allrams";
TIMEGRP "clka_lutrams" = "clka_allrams EXCEPT BRAMS_PORTA BRAMS_PORTB";
TIMEGRP "clka" = "clka_nolutrams clka_lutrams";
このアンサー レコードはお役に立ちましたか?
はい
いいえ
AR# 9782
日付
08/22/2003
ステータス
アーカイブ
種類
一般
People Also Viewed
フィードバック
閉じる