|  | 21 | GameFSMの改良 (16) |  | 
2番目にボディが厚い関数の最適化をトライします。対象はupdatePlayerBullet()(自弾処理関数)で、64行あります。
| 自弾処理関数(updatePlayerBullet())の最適化前後 | 前 | 後 | 比較 | |
|---|---|---|---|---|
| BSV合成 | コンパイル時間 | 1'15'' | 1'03'' | ▲16.0% | 
| Verilog合成 | ファイルサイズ[KB] | 5,253 | 4,283 | ▲18.5% | 
| 合成時間 | 0'52'' | 0'58'' | 11.5% | |
| Vivado LUT数 | 5,490 | 5,582 | 1.7% | |
| Vivado FF数 | 1,894 | 1,907 | 0.7% | |
結果としては、おなじくFSMオーバヘッドが想定されそのとおりになりました。一方、ボディが厚かったため、bscコンパイル時間とverilog量の削減となりました。
