ひでみのアイデア帳

くだらないことなんだけど、忘れないために・・・

Vivado 2017.1の使ってみた感じ

ログからもう少し詳細に何が増減しているか確認した。

2017.1ではLUT as Logicが14増加し、LUT as Memoryで見てみると、Shift Registerが2017.1で12減少となっている。

その分、Slice Registerで7増加となっている。

LUTで構成したシフトレジスタが組込み回路で構成され、FFが消費されたものと考えられる。

これの影響かわからないが、Slackは0.35ns程度良くなっている。

Viaado 2016.4

+----------------------------+------+-------+-----------+-------+
|          Site Type         | Used | Fixed | Available | Util% |
+----------------------------+------+-------+-----------+-------+
| Slice LUTs                 | 3020 |     0 |     53200 |  5.68 |
|   LUT as Logic             | 2820 |     0 |     53200 |  5.30 |
|   LUT as Memory            |  200 |     0 |     17400 |  1.15 |
|     LUT as Distributed RAM |   10 |     0 |           |       |
|     LUT as Shift Register  |  190 |     0 |           |       |
| Slice Registers            | 3398 |     0 |    106400 |  3.19 |
|   Register as Flip Flop    | 3398 |     0 |    106400 |  3.19 |
|   Register as Latch        |    0 |     0 |    106400 |  0.00 |
| F7 Muxes                   |    2 |     0 |     26600 | <0.01 |
| F8 Muxes                   |    0 |     0 |     13300 |  0.00 |
+----------------------------+------+-------+-----------+-------+

Vivado 2017.1

+----------------------------+------+-------+-----------+-------+
|          Site Type         | Used | Fixed | Available | Util% |
+----------------------------+------+-------+-----------+-------+
| Slice LUTs                 | 3022 |     0 |     53200 |  5.68 |
|   LUT as Logic             | 2834 |     0 |     53200 |  5.33 |
|   LUT as Memory            |  188 |     0 |     17400 |  1.08 |
|     LUT as Distributed RAM |   10 |     0 |           |       |
|     LUT as Shift Register  |  178 |     0 |           |       |
| Slice Registers            | 3405 |     0 |    106400 |  3.20 |
|   Register as Flip Flop    | 3405 |     0 |    106400 |  3.20 |
|   Register as Latch        |    0 |     0 |    106400 |  0.00 |
| F7 Muxes                   |    1 |     0 |     26600 | <0.01 |
| F8 Muxes                   |    0 |     0 |     13300 |  0.00 |
+----------------------------+------+-------+-----------+-------+

配置配線

Impremeted Designを見ると、Vivado 2016.4では少し広がりを見せていたところがVivado 2017.1ではまとまるようになっている雰囲気が見受けられる。

配置配線の効率は向上しているものと見受けられる。

Xilinxのデバイスは横方向には遅延が少なく、縦方向に遅延が大きい。

従って、タイミング収束のために横方向に伸びがちなのだが、Vivado 2017.1では論理合成の精度も上がって、横方向に伸びなくなったのだろう。

まとめ

Vivadoはバージョン間でのプロジェクト移行で問題が出るケースが多くあるが、最新版のVivadoで合成を実行するほうが良い結果を得られることがわかる。

Vivado 2016.2→2016.3以上間のプロジェクト移行には最大限の注意が必要だが、Vivado 2016.3以降のプロジェクトであれば、2017.1に移行しない理由は現時点では見当たらない。