FPGA開発日記

カテゴリ別記事インデックス https://msyksphinz.github.io/github_pages , English Version https://fpgadevdiary.hatenadiary.com/

LiteXによるSoC環境構築を試行する (7. FPGAの論理合成確認)

https://raw.githubusercontent.com/enjoy-digital/litex/master/doc/litex.png

LiteXでの論理合成にて、ターゲットのFPGAボードに入りきらないので、面積の解析を行った。 以下のグラフは、問題となっているLUTの面積だけ取り出したものになっている。

かなり面積大きめになっているのはLSUとBRU。BRUがなぜ大きくなっているのかはよくわからない。

思いっきり、もう少しリソースを絞ってどうにかしてFPGAに載るようにしてみたほうがいいかもしれないが、これ以上リソースを削りまくってもやはりだめだ。Arty-A7の35Tでは資源が入りきらない。

仕方がないので、もう少し大きめのFPGA(Nexy4DDR)で論理合成を試してみた。こっちならちゃんと入ったようだ。

+----------------------------+-------+-------+-----------+-------+
|          Site Type         |  Used | Fixed | Available | Util% |
+----------------------------+-------+-------+-----------+-------+
| Slice LUTs                 | 27910 |     0 |     63400 | 44.02 |
|   LUT as Logic             | 25413 |     0 |     63400 | 40.08 |
|   LUT as Memory            |  2497 |     0 |     19000 | 13.14 |
|     LUT as Distributed RAM |  2494 |     0 |           |       |
|     LUT as Shift Register  |     3 |     0 |           |       |
| Slice Registers            | 25021 |     0 |    126800 | 19.73 |
|   Register as Flip Flop    | 24914 |     0 |    126800 | 19.65 |
|   Register as Latch        |   107 |     0 |    126800 |  0.08 |
| F7 Muxes                   |  2348 |     0 |     31700 |  7.41 |
| F8 Muxes                   |   244 |     0 |     15850 |  1.54 |
+----------------------------+-------+-------+-----------+-------+

問題は動作周波数だな。Nexy4DDRの動作周波数にはMetしていない。

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com

msyksphinz.hatenablog.com