この回避策では、SOPC Builder によって生成された VHDL ソースコードを変更します。ModelSim ツールでエラーを生成する VHDL ソースコードの行番号を参照します。このエラーは、コンポーネントのインスタンス化における「data_in」バスへの割り当てによって発生します。エラーを生成するソースコードは次のようになります。
data_in => std_logic_vector("0000000000000000") & (slave_address);
問題を解決するには、コンポーネントのインスタンス化と同じレベルで新しい内部信号を作成する必要があります。例えば、「internal_slave_address」と呼ばれる信号を作成します。次に、以下を割り当てます。
internal_slave_address <= std_logic_vector("0000000000000000") & (slave_address);
コンポーネントのインスタントでポートマッピングを変更して、以下のように読み取ります。
data_in => internal_slave_address;
この問題は Nios II 5.0 で修正されています。