見出し画像

de10-nano, SoCモジュールで遊ぶ [FPGA編-02]

足らないIPライブラリの追加に関して記述致しますが、
その前にWindows版Quartus 21.1は単純なインストールだけでは調子が良くないので、まずはQuartus 21.1での動作確認をする事をお勧めいたします。

Quartus 21.1の動作確認は、"Platform Generater"で、簡単なddr3を使ったシステムで"Generate HDL"が出来る事の確認です。これが失敗すると、WSLが動作していなか、パッチが足らない可能性があります。

さて、本題ですが、Quartus 21.1では、(たぶん、v19以降は)下記のIPライブラリが不足しています。
 ・clocked_video_output
 ・frame_reader
これらは、Quartus v14.1~v18.1には存在するようです。そこで、ここから取り出して、v21.1に追加します。(あくまで自己責任でお願い致します)
手順は以下の通りです。

① Quartus v14.1~18.1のいずれかを一度インストールする。(Lite版でOK)
  Windows版の場合、バージョンごとにdirectoryが作られるので混在可
② (例えばv18.1の場合だと) デフォルトでインストールすると、
  "C:\intelFPGA_lite\18.1\ip\altera"のようなディレクトリができます。
  下記の2つのディレクトリを探してください。
  ・clocked_video_output
  ・frame_reader
③ 上記の2組のディレクトリを、v21.1の同じ所にコピーします。
  標準だと"C:\intelFPGA_lite\21.1\ip\altera\"です。
  (ファイルの属性を変えないと、保存出来ないかも)
④ テキストエディタで、下記のファイルを追記修正します。
  "C:\intelFPGA_lite\21.1\ip\altera\altera_components.ipx"
  私の場合は、8416行目あたりの行で、
   </component>
   <component
  とあります。
  ちょっと長いですが、この2行の間に
  下記の複数行を挿入してください。
  (これも、ファイルの属性を変えないと、保存出来ないかも)

  <component
   name="alt_vip_vfr"
   file="frame_reader/full_ip/frame_reader/alt_vip_vfr_hw.tcl"
   displayName="Frame Reader"
   version="14.0"
   description="The Frame Reader Megacore can be used to read a video stream from video frames stored a memory buffer"
   tags="AUTHORSHIP=Altera Corporation /// CONNECTION_TYPES=avalon,clock,interrupt"
   categories="Video and Image Processing"
   factory="TclModuleFactory">
  <tag2 key="COMPONENT_EDITABLE" value="false" />
  <tag2 key="COMPONENT_HIDE_FROM_QUARTUS" value="true" />
  <tag2 key="ELABORATION_CALLBACK" value="vfr_elaboration_callback" />
  <tag2 key="TCL_PACKAGE_VERSION" value="10.0" />
  <documentUrl
     displayName="DATASHEET"
     type="DATASHEET"
     url="http://www.altera.com/literature/ug/ug_vip.pdf" />
 </component>
 <component
   name="alt_vip_itc"
   file="clocked_video_output/alt_vip_itc_hw.tcl"
   displayName="Clocked Video Output Intel FPGA IP"
   version="14.0"
   description="The Clocked Video Output converts Avalon-ST Video to standard video formats such as BT656 or VGA."
   tags="AUTHORSHIP=Intel Corporation /// CONNECTION_TYPES=clock"
   categories="DSP/Video and Image Processing/Legacy"
   factory="TclModuleFactory">
  <tag2 key="COMPONENT_EDITABLE" value="false" />
  <tag2 key="COMPONENT_HIDE_FROM_QUARTUS" value="true" />
  <tag2 key="ELABORATION_CALLBACK" value="cvo_elaboration_callback" />
  <tag2 key="TCL_PACKAGE_VERSION" value="11.0" />
  <documentUrl
     displayName="DATASHEET"
     type="DATASHEET"
     url="http://www.altera.com/literature/ug/ug_vip.pdf" />
 </component>
 <plugin
   name="alt_vip_itc.qprs"
   file="clocked_video_output/alt_vip_itc.qprs"
   displayName="alt_vip_itc.qprs"
   version="0.0"
   description=""
   tags=""
   categories=""
   type="com.altera.sopcmodel.util.IElementPresetList"
   subtype=""
   factory="PresetFactory">
  <tag2 key="PRESET_TYPE" value="alt_vip_itc" />
 </plugin>

  挿入する上記は、v18.1側の"altera_components.ipx"にも入っています。
  (と言うか私は、単にそこからコピーしました)
  他のバージョン(v18.1以外)から抜き出した場合は、
  "Intel"ではなく"Altera"と記述されている可能性があります。
  違いはそれしか無いと思いますが、その場合は、そのバージョンの
  "altera_components.ipx"から取り出した方が、安心かもしれませんね。

 上記の対策で、v21.1の"Platform Designer"で"再Generate"できると思います。もし、この先で"v21.1"を"uninstall"する事があれば、これらのファイルは残ってしまう可能性が有るので、その際には手動で削除してください。
 次回は、再Generateして全体をコンパイルしてsofが出来た後、動作確認について書いてゆきます。

この記事が気に入ったらサポートをしてみませんか?