Nios II/economy や Nios II/standard で動作実績のあるデザインにて、Nios II プロセッサ・コアだけを Nios II/first にアップグレードしたところ、誤動作いたしました。 何が原因でしょうか?
Nios II
Nios II/first では、Nios II/standard や Nios II/economy とは異なり、データ・キャッシュ・メモリが実装されます。
データ・キャッシュのライト・ポリシーは、ライトバック方式を採用しておりますので、メイン・メモリとキャッシュ・メモリとではデータの一貫性が取れないことがあります。このときに DMA 転送や、デュアルポート・メモリ等の共有メモリにアクセスしますと誤動作に繋がる可能性が高くなります。
これらの動作を行なう前に、メイン・メモリにデータを書き戻すか、キャッシュをバイパスするようにソフトウェアを変更することで対処できます。