Vivado HLSのメモ

最近Vivado HLSで高位合成を使い始めました。やっぱり、HDLを生で書くよりも圧倒的に早くコーディング・検証できるので、計算処理の記述ではとても助かっています。もしかすると、他の人の参考になるかもしれないので、作業していて気がついた点をまとめておきます。間違った記述があったらコメント欄で指摘してください。 Co-simulationでhandshake signals are not bundled to AXI_lite slaveというエラーが出る…

【PIC】XC8で使用するRAM領域を制限する

自分用メモ。ちゃんと動くようになったら、サンプルをまとめたいと思います。 高エネルギー実験用のFlashADC FPGAボードのかなり大規模なVHDLコードの開発をしているのですが、FT2232D経由のシリアルデバッグを簡単化するために、CQPIC (PIC16F84のVHDL実装)をソフトコアCPUとして用いてソフトウエア制御しようと思っています。 まずは練習として、MPLAB Xで簡単なmain関数をC言語で記述し、コンパイルして生成されるHEXファイルを用いてXilinx ISEで動作シミュレーションするところまでは動きました。 外部IOの数が限られているので、今後、RAMをdual portにして特定領域にVHDL IPコア側からデータを書き込んで、PICに処理させるということをしてみたいと思います。そのために、XC8…

VHDLを整形(format)したい

VHDLを記述していると、とくにXilinxのISEではコードの整形が結構めんどうです。EclipseだとShift+Command+Fとすると、自動的に指定したルールにもとづいてフォーマットしてくれて、authorによらず統一的な見た目にできますが、残念ながらEclipseのVHDLプラグインはいいものがありません。 そこへくると、Emacsはさすが機能豊富で、整形機能付きの「VHDLモード」を持っています。 MacにインストールされているEmacsでは、.vhdや.vhdlという拡張子のファイルを開くと自動的にVHDLモードになり、 syntax coloringをしてくれます。このモード内で、 Ctrl+C をしたあと、 Ctrl+B すると、コードが整形されます。以下がその例。 Emacs…