[Suzaku:01107] Re: UserIPの取り込みについて(Verilog と VHDL の混合)

watabe.kinji email@hidden
2007年 12月 26日 (水) 13:25:36 JST


中島様
渡部です。すばやいご返答ありがとうございます。

component のインスタンス化によりVerilog で記述したIPを取り込もうとしたのですが 

component 宣言がされていないというご指摘とおもい記述を追加してみました。
取り込むことが出来ました。ありがとうございました。

XSTガイド 8章 混合言語のサポート 「VHDLデザインへのVerilogモジュールのインスタンシエーション」にご指摘の事項が掲載されていました。EDKのマニュアルとアンサーデータベースばかり
探していて、XSTガイドまで頭が回りませんでした。
お手数をおかけして申し訳ありませんでした。

> 中島です。
>
>> 渡部@名古屋市工業研究所 と申します。
>>
>> Suzaku Starter Kit FPGA開発編の11章の内容を参考にVerilogモジュールをOPBバスにつなげて制御しようと試みております。
>> [Suzaku:00751] にて中嶋様から問題ないとのコメントがありますが
>> ペリフェラルをインポートする際に
>> ERROR:HDLParsers:820 - "C:/ipif2/pcores/serial/hdl/vhdl/serial.vhd" Line
>> 425. Type of actual ports is not compatible with type of ports of
>> user_logic.
>> ERROR:MDT - Parse Errors encountered in HDL source
>> となりインポートができません。
>>
>> serial.vhd がトップでuser_logic.v をインスタンシエーションしているのですが 
>> 
>>
>>
>> user_logic.v のインターフェースは
>>
>> module user_logic
>> (
>>    xcs,  // 追加した箇所
>>    sin, // 追加した箇所
>>
>>   Bus2IP_Clk,                     // Bus to IP clock
>>   Bus2IP_Reset,                   // Bus to IP reset
>>   Bus2IP_Data,                    // Bus to IP data bus for user logic
>>   Bus2IP_BE,                      // Bus to IP byte enables for user
>> logic
>>   Bus2IP_RdCE,                    // Bus to IP read chip enable for user
>> logic
>>   Bus2IP_WrCE,                    // Bus to IP write chip enable for user
>> logic
>>   IP2Bus_Data,                    // IP to Bus data bus for user logic
>>   IP2Bus_Ack,                     // IP to Bus acknowledgement
>>   IP2Bus_Retry,                   // IP to Bus retry response
>>   IP2Bus_Error,                   // IP to Bus error response
>>   IP2Bus_ToutSup                  // IP to Bus timeout suppress
>> ); // user_logic
>>
>>  output xcs;
>>  output sin;
>>  // 以下略
>>
>> で、serial.vhd で
>>
>>   USER_LOGIC_I : component user_logic.v
>>     generic map
>>     (
>>    -- 省略
>>     )
>>     port map
>>     (
>>      xcs => xcs, -- ここで上記エラーが生ずる
>>        sin => sin,
>>    
>>    -- 以下省略
>>
>> どこかでVHDLファイルにおいてVerilogモジュールをインスタンスかする必要が出てくると
>> 思うのですが、どのように行えばよいかお教えいただけると幸いです。
>>

> 位置はそのままでよさそうです。
> 若干書き方が違うかも?
> 以下のような書き方ではいかがでしょうか。
>
> architecture IMP of XXX is
>
> component user_logic is
> port (
>   xcs : in std_logic;
>   sin : in std_logic
> );
> end component;
>
> begin
>
> user_logic_0 : user_logic
> port map (
>   xcs => xcs,
>   sin => sin
> );
>
> end IMP;
>
> 色々な書き方があるので私の書き方も正確ではないかもしれませんが。。


> 他にエラーになりうる、思い当たるの点は以下の通りです。
>
> verilogファイルは
> C:/ipif2/pcores/serial/hdl/verilog/
> 以下に保存する

大丈夫です。PAOファイルの読み込み時にも認識しているようです。

> mpdファイルで以下のように記載
> OPTION HDL = MIXED

これも大丈夫です。

>
> 以上よろしくお願いします。
>
> _______________________________________________
> suzaku mailing list
> email@hidden
> http://lists.atmark-techno.com/mailman/listinfo/suzaku 




suzaku メーリングリストの案内