AR# 7879

F2.1i XABEL - 「Internal Error 0001:assert event at line 359 in file "Z:\Lib\tsokit\TSOCELL\TSO_SIG.C"」というエラー メッセージが表示される。

説明

キーワード:Xabel, ABEL, abl2edif, Z:\Lib\tsokit\TSOCELL\TSO_SIG.C, Blif2Net, Foundation, CPLD, 9500, macro, マクロ

重要度 :標準

概要:

ABEL デザインをコンパイルする際、abl2edif が blif2net までプロセスを完了すると、次のようなエラー メッセージが表示されます。

Executing...
blif2net bjack.bl4 -o bjack.edn -str top -inc bjack.if -idev
C:\fndtn\data\xlnxlib\xlnx_edf.rul -lib C:\fndtn\data\xlnxlib -err bjack.err

Error: The executable "blif2net" exited with error code 2.

Blif2Net Open-Abel 2 To Netlist Translator
ABEL 6.30 Copyright 1983-1996 Data I/O Corp. All Rights Reserved.
Acknowledgments:
This program is based on MISII, a UC Berkeley optimization tool.

Internal Error 0001: assert event at line 359 in file "Z:\Lib\tsokit\TSOCELL\TSO_SIG.C"
abl2edif has failed.

ソリューション

1

このエラーは、次の 4 つの状況で発生します。
1) Foundation 2.1 に含まれている XABEL 6.4 を使用してコンパイルする。
2) ターゲット デバイスが CPLD (9500 シリーズなど) である。
3) ABL ファイルがマクロとしてコンパイルされている。
4) ABEL デザインに、別の論理式の出力を含む論理式が含まれている。

この問題は ABEL のバージョン 7.2 で修正されています。
ABEL 7.2 は WEPACK (www.xilinx.com/sxpresso/webpack.htm) から入手可能です。
また、この問題はFoundation 3.1i リリースで修正される予定です。

Foundation の回路図と WebPACK でコンパイルされた ABEL のマクロを一緒に使用するには次を実行します。

1) WebPACK の Project Nabigator に新規プロジェクトを作成します。
2) [Source] → [Add] をクリックし、[Browse] から使用する ABEL マクロ ファイルを選択し追加します。
3) ウィンドウ左上にある [Virtual Device] を反転表示します。
4) ウィンドウ右上にある [EDIF Netlist For External Fitter] をマウスの右ボタンでクリックします。
5) [Menu] → [Properties] をクリックします。
6) [Process Progerties] ウィンドウで I/O バッファ挿入値を [Macro-Level] に変更します。
7) [EDIF Netlist For External Fitter] をダブルクリックし、EDIF ネットリストを作成します。
8) EDIF ネットリストを Foundation のプロジェクト ディレクトリにコピーします。
9) マクロのシンボル プロパティを編集し、.EDN ファイルを指定します。
a) "$FILE= <macro>.abl" を $FILE=<macro>.edn に変更する。
b) "$DEF=ABEL を削除する。


または、次の方法でこの問題を回避できる場合もあります。
1) プロジェクト タイプを XC4000E デバイスをターゲットにしたプロジェクトに変更する。
2) ABEL マクロを EDIF にコンパイルする。
3) マクロのシンボル プロパティを編集し、.EDN ファイルを指定します。
a) "$FILE= <macro>.abl" を $FILE=<macro>.edn に変更する。
b) "$DEF=ABEL を削除する。
4) プロジェクト タイプを XC9500 に変更し直して、通常どおりの操作を続ける。

2

この問題は通常、以下のような組み合わせフィードバック論理式によって発生します。

fb = A & B;
output = fb;

コードを以下のように変更することで、コンパイルがエラーなしに完了します。

fb = A & B;
output = A & B;
AR# 7879
日付 06/10/2002
ステータス アーカイブ
種類 一般