2016-12-03 3 views
1

次のエラーが表示されます。この構成はVHDL 1076-2008でのみサポートされています。どうしてか分かりません。私はこのコードを合成しますが、フラグは問題を引き起こす可能性があります。VHDL:この構成はVHDL 1076-2008でのみサポートされています

フラグの目的は、データが出力されるとすぐに、それ以降の反復で上書きすることができないことです。理想的には、データが出力されるとすぐに内部ループを終了したいが、それは合成されない。

enter image description here

for j in 0 to n-1 loop --For loop outputting data 
     flag:='0'; --reset the flag 
     for i in 0 to n-1 loop 

      flag:='1' when (a=b) else '0'; 
      Output(j)<=a when flag='1' else '0'; 


     end loop; 
    end loop; 

答えて

1

whenelse構築物を、VHDL-2008まで、プロセス内では許されませんでした。これを解決するには、ifステートメントに置き換えてください。