AR# 11132

|

回路図 - EDIF ネットリスト (.edn) の ISE 回路図シンボルを作成する方法(ブラック ボックス)

説明

EDIF ネットリストのシンボルを作成する方法を教えてください。

ソリューション

ECS 回路図ツールには /Verilog ネットリスト出力があります。このため、このネットリストに対しては次のようにブラック ボックスを作成する必要があります。   

 

VHDL 

1) EDIF ファイルを開き、最上位コンポーネントのポート宣言を検索します。これらのポート名は VHDL ファイルに入力します。 

例: 

(cell rom2x1 

(cellType GENERIC) 

(view NetList 

(viewType NETLIST) 

(interface 

(port a0 (direction INPUT)) 

. . .  

 

2)EDIF ファイルでのエンティティおよびポート名を使用して VHDL ファイルを作成し、architecture 文はブランクにしておきます。 

例:

library IEEE; 

use IEEE.STD_LOGIC_1164.ALL; 

use IEEE.STD_LOGIC_ARITH.ALL; 

use IEEE.STD_LOGIC_UNSIGNED.ALL; 

 

entity rom2x1 is 

Port (a0 : in std_logic; 

d0 : out std_logic); 

end rom2x1; 

 

architecture behavioral of rom2x1 is 

 

begin 

end behavioral; 

 

3) この VHDL ファイルを VHDL モジュールとしてプロジェクトに追加します。 

VHDL ファイルをハイライトし、[Design Entity Utilities] → [Create Schematic Symbol] をクリックします。

5) 回路図でこのシンボルを使用します。デザインをインプリメントする際、このネットリストが同じプロジェクト ディレクトリにあることを確認します。NGDBuild により外部ネットリストが最上位デザインにマージされます。

 

次の手順に従い回路図シンボルを作成します。

1) EDIF2NGD を使用して EDIF ネットリストから <filename>.ngo ファイルを作成します。EDIF2NGD.exe は EDIF ネットリスト (.edn、.edo、.edf) を NGO ファイルに変換します。 

NGD2SPL を使用して、新しく作成された <filename>.ngo ファイルから <filename>.spl ファイルを作成します。NGD2SPL.exe は NGO ファイルを解析し SPL ファイルを作成します。このファイルはシンボルの入力、出力、双方向ピン、および属性を記述したテキスト形式のファイルです。また、XST でこのシンボルが ブラック ボックスとして処理されるように、NGD2SPL は BOX_TYPE=BLACK_BOX 属性を追加します。 

SPL2SYM を使用して、新しく作成された <filename>.sym ファイルから <filename>.v ファイルを作成します。SPL2SYM.exe は SPL ファイルを読み込み ECS シンボル ファイル (SYM) を作成します。 

このアンサーには、1 つのステップで 3 つのプログラムをすべて実行するバッチ ファイルが含まれています。

Project Navigator のシミュレーション言語を Verilog に設定している場合、モジュール宣言ファイルも作成してプロジェクトに追加する必要があります。 

 

4) Sym2Verilog を使用して、新しく作成された <filename>.sym ファイルから <filename>.v ファイルを作成します。 

Sym2Verilog.exe には、最初の引数にシンボル ファイル (.sym) の基本名が必要です。Sym2Verilog は SYM ファイルを読み込み、モジュール インスタンシエーションを含む Verilog ファイルを作成します。 

<filename>.v ファイルは、[Project] → [Add Source] をクリックして Project Navigator プロジェクトに追加する必要があります。 

 

メモ 1: この方法は、Aldec、BLIF2Net、CORE Generator、Exemplar、OrCAD、および Viewlogic で作成された EDIF ファイルでテスト済みです。 NGD2EDIF で作成された EDIF ファイルは EDIF2NGD では使用できないので、この方法でシンボルを作成することはできません。

メモ 2: 最上位 EDIF ファイルはこのフローでは使用できない場合があります。上述のフローで最上位ネットリストに対して回路図シンボルを裂く作成することができますが、ネットリストにポート定義ではなく I/O バッファ (IBUF、OBUF など) および I/O パッド (IPAD、OPAD など) が含まれている場合、インプリメンテーションは NGDBuild 実行中にエラーが発生します。このフローをエラーなしにインプリメントするには、最上位 CELL のインターフェイス セクションにポート文を含めるよう、EDIF ネットリストを変更する必要があります。 

メモ 3: Foundation 3.3i およびそれ以前のバージョンの BLIF2Net (ABL2EDIF の下位プログラム) から生成した EDIF ファイルには、現在のバージョンの NGDBuild では処理できない暗号化されたセル名が含まれています。詳細は、(Xilinx Answer 13507) を参照してください。

メモ 4: 既存の NGO または NGC ファイルがある場合は、手順 1 の EDIF2NGD をスキップできません。

メモ 5: シンボル バス ピンのインデックスは括弧で囲っておく必要があります。ネットリストのバスに < > または [ ] の括弧が使用されている場合、シンボルを変更して、バス名で括弧を使用するように (「 Q(3:0)」など) 変換する必要があります。

 

  1. [File] → [New] → [Symbol] をクリックしてシンボルを作成します。
  2. シンボルを編集するウィンドウで、該当ピンを追加します ([Add] → [Pin])。追加したピン名が EDIF ファイルのポート名と一致していることを確認します。 
  3. シンボル シートを右クリックして [Object Properties]をクリックします。
  4. [Symbol Properties] ウィンドウで [New] をクリックします。
  5. [New Attribute] ウィンドウの [Attribute Name] および [Attribute Value] フィールドで「black_box」と入力します。[Attribute Value Type] は「String」のままにしておきます。[OK] をクリックします。 
  6. [Symbol Properties] ウィンドウで新しく追加したブラック ボックスを選択し、[Edit Traits] をクリックします。
  7. ISE プロジェクトの中間 HDL の設定により、Verilog または VHDL を選択します。どちらか分からない場合は両方を選択します。[Write this attribute] オプションをオンにします。 
  8. 適宜シンボルの図およびテキストを設定して終了します。シンボル シートを保存して閉じます。 
  9. 新しく作成したシンボルを回路図シートに追加して適宜接続します。 

 

メモ: Verilog が中間 HDL 言語に使用されている場合は、モジュール ポートを宣言する必要があります。この確認を行うには、[Design Utilities] を右クリックし [View HDL Functional Model] → [Properties] をクリックします。

モジュールと同じ基本名で Verilog ファイルを作成して、それをプロジェクト ディレクトリに保存すると、モジュール ポートを宣言することができます。ラッパー ファイルに ポート名を含むモジュール宣言が含まれます。 

 

例: ファイル名は tenths.v 

module tenths (AINIT, CE, CLK, Q, Q_THRESH0); 

input AINIT;  

input CE;  

input CLK;  

output [3:0] Q;  

output Q_THRESH0;  

endmodule

添付ファイル

関連添付ファイル

タイトル サイズ ファイルタイプ
edif2sym.zip 1 KB ZIP
AR# 11132
日付 03/12/2018
ステータス アクティブ
種類 一般
ツール 詳細 概略
People Also Viewed