「MAX 10 NEEK」でストップウォッチを開発し、内蔵メモリから起動する:MAX 10 FPGAで学ぶFPGA開発入門(11)(9/10 ページ)
アルテラのFPGA「MAX 10」を搭載した開発ボード「MAX 10 NEEK」にはLEDやフラッシュメモリなどの各周辺機器が備えられている。今回はLEDを使ったストップウォッチを開発し、内蔵メモリから起動する。
QSYSでハードウェアの構成変更を行ったので、stopwatch_bspのコンテクストメニューから"Nios II" → "Generate BSP"を呼んでBSPの再構成を行う。その後でもう一度"Nios II" → "BSP Editor"を起動する。
ここで左のツリーを下の方までスクロールしてゆくと、"Settings" → "Advanced" → "HAL" → "Linker"という項目がある。このHAL.Linkerの5つのチェックボックスに全てチェックを入れておく(Photo14)。
続いて上のTabを"Main"から"Linker Script"に切り替えると、セクション毎にどこに保存するかの指定があるが、ここで.textを"onchip_memory2_0"から"onchip_flash_0_data"に切り替える(Photo15)。以上でBSPの変更は完了したので、もう一度Generateボタンを押してBSPの再生成を行い、終了する。
続いてEclipseに戻り、まずstopwatch_bspの再ビルドを行った後、stopwatchの方のコンテクストメニューから"Make Targets" → "Build..."を選ぶ(Photo16)。するとTargetメニューが出てくる(Photo17)ので、ここで"mem_init_generate"を選択した上でBuildボタンを押すと、通常のelfファイルではなく、Flashに組み込むためのHEXファイルが生成される。以上でEclipseでの作業は終了し、再びQuartus IIに戻る。
Quartus IIは、"File" → "Convert Programming File..."からConverter画面(Photo18)を立ち上げる。ここでまず"Mode"を"Internal Configuration"に切り替えてから"Options/Boot info..."ボタンを押すと"MAX 10 Device Options"画面が出てくる(Photo19)。
この画面で、
- UFM sourceを"Page_0"から"load memory file"に変更。
- その下のファイル選択ボタンを押し、mem_initフォルダの下に生成されたonchip_flash_0.hexを指定。
を行う(Photo20)。完了したら"OK"ボタンを押してこの画面は終了である。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- 「MAX 10 NEEK」に搭載されたDDR3メモリを使う
MAX10搭載開発ボード「MAX 10 NEEK」には各周辺機器が備えられており、その中にはDDR3メモリも含まれる。ソフトコアCPU「Nios II」からの利用も含めて手順を紹介する。 - 「MAX 10 NEEK」へソフトコアCPUを組み込む
周辺機器の充実したMAX10搭載開発ボード「MAX 10 NEEK」に、ソフトコアCPU「NIOS II」を組み込み、ソフトコアCPUからボード搭載LEDの制御までを紹介する。 - 周辺機器の充実した「MAX 10 NEEK」で本格的な開発を目指す
FPGA開発において周辺機器(回路)は見落とせない要素の1つ。タッチパネルや各種出入力などを備えた「MAX 10 NEEK」を導入して、本格的な開発を目指す。 - FPGAのソフトコアCPUをベンチマークで測定する
FPGA「MAX10」に「NIOS II」と呼ばれるソフトIPコアを導入することで、ソフトコアCPUを構築できる。ではその処理能力はどれほどか。ベンチマークソフトで測定してみよう。 - FPGA上でソフトコアCPUを動かす手引き
これまでFPGAの開発基礎としてLチカなどを紹介してきたが、今回はちょっと目先を変えてFPGA上でのCPUコア動作に取り組む。今回も連載で使う「MAX 10 FPGA 評価キット」の読者プレゼントをご用意。