実行環境をソースから生成する場合の手順
NiosII Command Shellを起動します。
OpenCoresのサイトからUSB 1.1 Host and Function IP core (http://opencores.org/project,usbhostslave)の最新データ(Latest version) usbhostslave_latest.tar.gzをダウンロードします。
ダウンロード後、usbhostslave_latest.tar.gzを展開して、trunkディレクトリの内容を本サンプルデータのopencores/usb以下にコピーします。コピー後、本サンプルデータのディレクトリの構成は以下のようになります。赤文字部分がコピー対象です。
(usbhostslave_latestのディレクトリ構成) usbhostslave branches tags trunk bench doc model RTL sim syn usbDevice web_uploads (本サンプルデータのディレクトリ構成) doc qtproject opencores usb bench doc model RTL sim syn usbDevice readme.txt rtl de0_run.sh |
NiosII Command Shellのカレントディレクトリを生成するデモデータのディレクトリに移動します。
●デモが「完全ロジック制御型CDC」の場合は、qtproject_cdc
●デモが「ロジック+プロセッサ制御型CDC」の場合は、qtproject_tgt
●デモがOpenCores USB IPコア付属のHIDマウスの場合は、qtproject_hid
「ロジック+プロセッサ制御型CDC」(qtproject_tgt)を例に説明を進めます。
NiosII Command Shellからqsys-editを起動します。
ポップアップウィンドウでusbslave_system.qsysを選択して「開く」をクリックします。
Qsysにusbslave_system.qsysで読み込んだシステム設定が表示されます。
メニューのGenerate->Generate…を選択します。
Genetateをクリックします。
システムのGenerateが始まります。
Generate Completedと表示されてからCloseをクリックします。
File->ExitでQsysを終了します。
NiosII Command Shellのカレントディレクトリを本データのルートに移動します。
(この例ではC:\work\usbcdc\nios2_usbcdc)
NiosII Command Shellからスクリプトを実行します。
●デモが「完全ロジック制御型CDC」の場合は、run_cdc.sh
●デモが「ロジック+プロセッサ制御型CDC」の場合は、run_tgt.sh
●デモがOpenCores USB IPコア付属のHIDマウスの場合は、run_hid.sh
ここでは、例としてrun_tgt.shを実行します。
正常終了時は、次のようなログで論理合成とフィッティングが終了します。
処理が正常に終了すると、output_filesディレクトリにusbslave.sofが生成されます。(この例の場合、qtproject_tgt\output_files\usbslave.sofが生成されます。)
これ以降の手順は、「ロジック+プロセッサ制御型CDC」の場合のみ必要な処理です。
「ロジック+プロセッサ制御型CDC」と「OpenCores USB IPコア付属のHIDマウス」の場合は、プロセッサを含んでいないので必要ありません。
NiosII Command Shellからeclipse-nios2を実行します。
Workspaceとしてqtproject_tgt\softwareを選択してOKをクリックします。
Eclipseの起動後、File->New->NiosII Application and BSP from Templateを選択します。
以下の設定を行った後、Finishをクリックします。
-Target hardware informationにusbslave_system.sopcinfoを設定
-Application Projectにtestを設定
-Project templateにHello
World Smallを選択
EclipseのFile->Importを選択します。
ImportウィンドウでGeneral->Existing
Projects into Workspaceを選択してNextをクリックします。
Select root directoryにqtproject_tgt\softwareを選択してFinishをクリックします。
プロジェクトがインポートされます。
Project->Clean…を選択します。
Clean all projectsを選択してOKをクリックします。
Cleanの処理終了後、Project->Build
Allを選択してBuildを実行します。
必要な機材の接続を行ってDE0の電源を投入します。次にEclipseのNiosII->QuartusII ProgrammerからQuartusII Programmerを起動してDE0にsofをダウンロードします。
Programmerの手順はこちらを参照してください。
(ここではrom\usbslave_tgt.sofではなく、qtproject_tgt\output_files\usbslave.sofをDE0にダウンロードしてください。)
次に、プロジェクトを選択してプログラムを実行します。
EclipseのProject Explorerからusb_slave_testを選択後、右クリックでRun As->NiosII Hardwareを選択します。
Run ConfigurationポップアップウィンドウのTarget Connectionタブを選択して、Refresh Connectionsをクリックします。
USB-Blasterが認識されているのを確認してApplyをクリックします。次に、Runをクリックします。
プログラムの実行が始まり、コンソールに実行ログが表示されます。