UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 8788

C_IP4 COREGEN: DA_FIR_V1_0: Warning! Port sizes differ in port connection (port 4) [Verilog-PCDPC]

説明

キーワード: Distributed Arithmetic FIR Filter, Verilog

重要度 : 重要

概要:

Virtex デバイスを使った CORE Generator の DA FIR Filter で Verilog のビヘイビア シミュレーションを実行中、次のようなエラーが表示される:

"Warning! Port sizes differ in port connection (port 4) [Verilog-PCDPC] "top_dafir.v", 111: DIN"

このような警告は通常、インターコネクトしたモジュールのインターフェイス ポートの接続上の問題から起こるエラーですが、ここでは CORE Generator DA FIR モジュールでカスタム パラメータの順序が VEO テンプレート ファイルに送り込まれるという問題も考えられます。この 2 つ目の問題が原因の場合、VEO テンプレート ファイルのモジュール宣言セクションに送り込まれたパラメータの一部が不正な場所に置かれます。

つまり Verilog の 3 番目と 5 番目のパラメータ C_COEFF_WIDTH および C_DATA_WIDTH が、VEO ファイルで 4 番目および 6 番目のパラメータとして送り込まれます。その結果 3 番目および 4 番目のパラメータは 5 番目および 6 番目と入れ替わります。

ソリューション

次は VEO ファイルのパラメータ リストで、値が送り込まれるビヘイビア モデルのパラメータを示しています。// はコメント マーカーです。

// synopsys translate_off

C_DA_FIR_V1_0 #(
1, // C_BAAT
1, // C_CHANNELS
0, // C_COEFF_WIDTH parameter #3
16, // C_COEFF_TYPE parameter #4
0, // C_DATA_WIDTH parameter #5
10, // C_DATA_TYPE parameter #6
0, // C_ENABLE_RLOCS
0, // C_FILTER_
...

また次の例では、データ タイプ Signed および Unsigned の定義もモデルで宣言しています。

`define c_signed 0 // for c_data_type
`define c_unsigned 1


VEO パラメータの設定を決定するには、XCO ファイルで生成したコアに対応する設定を確認します。各コアの XCO はプロジェクト ディレクトリにあります。

# Xilinx CORE Generator 2.1i
# Username = karlton
# COREGenPath = h:\f2_1i\coregen
# ProjectPath = H:\f2_1i\Active\projects\testvir
# ExpandedProjectPath = H:\f2_1i\Active\projects\testvir
SET BusFormat = BusFormatAngleBracket
SET SimulationOutputProducts = VHDL Verilog
SET ViewlogicLibraryAlias = "karlton"
SET XilinxFamily = Virtex
SET DesignFlow = VHDL
SET FlowVendor = Synopsys
SELECT Distributed_Arithmetic_FIR_Filter Virtex Xilinx,_Inc. 1.0
CSET coefficient_file = H:\f2_1i\coregen\data\vsdafir.coe
CSET coefficient_data_type = signed <-------------------------------------
CSET number_of_taps = 10
CSET register_output = FALSE
CSET optimize_coefficients = TRUE
CSET component_name = vsdafir
CSET zero_packing_factor = 2
CSET impulse_response = non_symmetric
CSET number_of_channels = 1
CSET filter_type = single_rate_fir
CSET coefficient_width = 16 <-----------------------------------
CSET input_data_width = 10 <-------------------------------------
CSET input_data_type = signed <-------------------------------------

生成

これに基づき、VEO テンプレート ファイルの関連行を次のように修正します。COEFF_WIDTH は 16 に、COEFF_TYPE は 0 (Signed) に、C_DATA_WIDTH は 10 に、C_DATA_TYPE は 0 (Signed) に設定します。

C_DA_FIR_V1_0 #(
1, // C_BAAT
1, // C_CHANNELS
16, // C_COEFF_WIDTH parameter #3 - corresponds to CSET coefficient_data_width=10
0, // C_COEFF_TYPE parameter #4 -- corresponds to SIGNED data type for coefficients -
10, // C_DATA_WIDTH parameter #5 -- corresponds to CSET input_data_width = 16
0, // C_DATA_TYPE paramepter #6 -- corresponds to CSET input_data_type = signed
AR# 8788
作成日 08/21/2007
最終更新日 09/10/2008
ステータス アーカイブ
タイプ 一般