”
Altera Wiki , BeMicro Max 10 の Finger Temperature Tutorial をやってみた2(Qsys) ”の続き。
・IP を生成して、qip ファイルと sip ファイルを生成したよというダイアログが表示された。
・Qsys をプロジェクトに追加する。Quartus II のProject メニューからAdd/Remove Files in Project... を選択した。
・File name の横の ... ボタンをクリックして、fingertemp_adc.qsys を選択してから、Add ボタンをクリックした。
・fingertemp_adc.qsys がリストに入った。OKボタンをクリックした。
・Quartus II のFiles タブに、fingertemp_adc.qsys が入った。
・fingertemp_lab_top.vhd のGENERIC を編集して、NUM_LEDS を 0 に設定した。
・コンパイルを行った。
・fingertemp_lab_top ファイルを右クリックし、右クリックメニューから Locate -> Locate in RTL Viewer を選択した時のRTL 図を下に示す。
・Quartus II でProgrammer アイコンをクリックした。
・Programmer が立ち上がった。Add File... ボタンをクリックした。
・Select Programming File ダイアログで fingertemp_lab_top.sof をクリックし、Open ボタンをクリックした。
・Programmer に fingertemp_lab_top.sof ファイルが読み込まれた状態を示す。
・start ボタンをクリックした。
・コンフィギュレーションが成功した。
コンフィギュレーションは成功したのだが、LEDが全く点灯しない。NUM_LEDS を 0 に設定したので当たり前か?
温度センサのADT7420 を触っても変化は起きない。
次に、NUM_LEDS を 8 に戻してコンパイルし、コンフィギュレーションしてみた。今度はLEDが8個全て点灯した。
やはり、温度センサのADT7420 を触っても変化は起きない。
2014年10月22日 04:26 |
Altera_MAX10
| トラックバック:0
| コメント:1
”
Altera Wiki , BeMicro Max 10 の Finger Temperature Tutorial をやってみた1 ”の続き。
前回は、fingertemp_pll を作製して、Qsys を立ちあげた所で終了したので、その続きから。
・前回は、下の図のQsys を立ちあげた所で終了した。
・IP Catalog の検索フィールドに ADC と入力した(上図参照)。
・Altera Moduler ADC core をダブルクリックした(上図参照)。
・Altera Moduler ADC core の設定画面が立ち上がった。
・General タブの Core Configuration -> Core Variant を Standard sequencer with external sample storage に変更した。
・Channels タブでは、CH12タブをクリックして、Use Channel 12 にチェックを入れた。CH12 は、BeMicro MAX10 ボードの温度センサに接続されているそうだ。
・Sequencer タブで、Conversion Sequence Channels を CH 12 に変更した。Finish ボタンをクリックした。
・Qsys 画面にAltera Moduler ADC core が入った。
・Altera Moduler ADC core を選択して右クリックし、右クリックメニューからRename を選択した。
・名前を fingertemp_adc に変更した。
・fingertemp_adc の response の Exprot をダブルクリックした(上図参照)。
・自動的に、fingertemp_adc_response と名前が入った。
・adc_pll_clock と ad_pll_locked も同様に export をダブルクリックした。したのエラー個数が減っていく。
・IP Catalog の検索に jtag と入力した。
・JTAG to Avalon Master Bridge をダブルクリックした。
・JTAG to Avalon Master Bridge の設定ダイアログが立ち上がった。Finish ボタンをクリックした。
・master_0 という名前の JTAG to Avalon Master Bridge が Qsys に入った。
・master_0 の master と fingertemp_adc の sequencer_csr を接続した。配線の白丸をクリックすると簡単に配線を接続できる。
・IP Catalog の検索に pipeline と入力した。
・Avalon-MM Pipline Bridge をダブルクリックした。
・Avalon-MM Pipline Bridge の設定ダイアログが表示された。
・Data width を 16 に設定した。Finish ボタンをクリックした。
・Avalon-MM Pipline Bridge が mm_bridge_0 という名前でインスタンスされた。
・mm_bridge の m0 と fingertemp_adc の sequencer_csr を接続した。配線の白丸をクリックすると簡単に配線を接続できる。
・mm_bridge の s0 の export をダブルクリックした。 mm_bridge_0_s0 という名前でインスタンスされた。
・下図の様に配線してエラーが無くなった。
・File メニューから Save As... を選択した。
・fingertemp_adc という名前でセーブした。
・Generate メニューから Generate HDL... を選択した。
・Generation ダイアログで、Create HDL design files for synthesis にVHDL を選択した。Generate ボタンをクリックした。
・生成が完了した。
・Finish ボタンをクリックした。これで、Qsys での作業は終了した。
2014年10月21日 04:52 |
Altera_MAX10
| トラックバック:0
| コメント:0
Altera Wiki , BeMicro Max 10 の
Finger Temperature Tutorial をやってみた。
Quartus II の BeMicro MAX 10 の Intro to FPGA Simple PWM Tutorial をやったので、今度はQsys を使ったチュートリアルをやってみることにした。
この演習は8個のLEDが指の温度でPWMを使って明るさを変化させるチュートリアルの様だ?
・最初は、
Fingertemp Lab Files (QAR) をダウンロードして、Quartus II で読み込んだ。
・最初にコンパイルを行ったが、いくつかのファイルが無いと言われてエラーになった。
・右の IP Catalog を展開して ALTPLL をダブルクリックした。
・Save IP Variation ダイアログが立ち上がった。fingertemp_pll と名前を指定した。
・VHDLを選択して、OKボタンをクリックした。
・MegaWizard Plug-In Manager (ALTPLL) が立ち上がった。
・What is the frequency of the inclk0 input? に 50.000 MHz を入力した。Next > ボタンをクリックした。
・Bandwidth/SS タブで、How would you like to specify the bandwidth setting? のPreset のラジオボタンをクリックして選択し、High に設定した。Next > ボタンをクリックした。
・3. Output Clocks -> clk_c0 タブで、c0 をEnter output clock parameter -> Clock division factor を 5 に変更した。
・3. Output Clocks -> clk_c1 タブで、c1 の Use this clock にチェックを入れて、下図のように設定した。
・5. Summary で Finish ボタンをクリックした。
・Quartus II IP Files ダイアログが表示されたので、Yes ボタンをクリックした。
・Quartus II のProject Navigator -> Files タブに、fingertemp_pll.qip が表示された。
・上の図で Qsys アイコンをクリックした。
・Qsys 画面が表示された。
2014年10月20日 04:40 |
Altera_MAX10
| トラックバック:0
| コメント:0
”
BeMicro MAX 10 の Intro to FPGA Simple PWM Tutorial をやってみた1 ”の続き。
今回も、
Altera Wiki の BeMicro MAX 10 の Intro to FPGA Simple PWM Tutorial の続きをやってみた。前回は実機動作まで終了しているが、今回は、コンパイル後のFPGA配線の様子の見方やタイミング制約の書け方を実習する。
・
BeMicro Max 10 Simple PWM Tutorial (PDF) 23ページの MODULE 3.EXPLORING THE DETAILS OF YOUR DESIGN で、top ファイルを右クリックし、右クリックメニューから Locate -> Locate in RTL Viewer を選択した時のRTL 図を下に示す。
・24ページ Part B: Explore design in device with the Chip Planer の top ファイルを右クリックし、右クリックメニューから Locate in Chip Planer (Florplan and Chip Editor) を選択した時の画面を下に示す。
・25ページ Part C: Explore design in device with the Resource Property Editor。すでに、Resource Property Editor は表示されていた。これはshiftreg を見ている。
・26ページ、3.1 Part D: Gather information from the Compilation Report で、Compilation Report -> Fiter -> Resource Utilzation by Entity を選択して、リソースの使用状況を表示した。
MODULE 4. SETING UP TIMING CONSTRAINTS (27ページ)
・Quartus II の Tools -> TimeQuest Timinig Analyzer を選択した。
・TimeQuest GUI の Tools -> TimeQuest Timinig Analyzer Wizard を選択した。
・28ページ 5) でクロック周期に 20ns を入力している。
・29ページの Summary を下に示す。クロックの制約のみ追加している。
・30ページの図。Qurtus II の Assignments -> Settings -> TimeQuest Timing Analyzer で pwm_led.sdc を使用する。
・TimeQuest で、Tasks -> Report Clocks を見ると、PLLから出力するクロックも見ることができた。これは便利だ。(31ページ)
・TimeQuest で、Report Fmax Summary を見た。(31ページ)
・Time Quest を閉じて、Quartus II でコンパイルしてから、1200mV 85C Model の Fmax Summary を見た。(32ページ)
2014年10月17日 04:31 |
Altera_MAX10
| トラックバック:0
| コメント:0
Altera Wiki の BeMicro MAX 10 の Intro to FPGA Simple PWM Tutorial をやってみた。
今回は、
BeMicro Max 10 Simple PWM Tutorial (PDF) の出来が良く、そのままやれば大丈夫ということで、要点のみの画像をブログ記事に貼ることにした。
・最初の画像は、
BeMicro Max 10 Simple PWM Tutorial (PDF) の9ページ 2.3 Examine the Design Files の辺り、pwm_led_top.bdf を開いたところだ。
・次は、ALTPLLをインスタンス、その他のHDLファイルのシンボルをインスタンスして、pwm_led_top.bdf を完成させたところだ。
BeMicro Max 10 Simple PWM Tutorial (PDF) の 2.6 Complete the Schematic が終了した17ページ。
・18ページの Part D: Analyze the Design and Asign Pin で、Analysis and Elaboration を行った。
・19ページの信号割り当て表を元に、信号ピンの割り当てを行った。
・20ページのコンパイルを行った。
・BeMicro MAX 10 をUSBで接続して、コンフィギュレーションを行った(22ページ)
・BeMicro MAXI 10 のLEDは全消灯している。 SW1 を押すと、D1が点灯し D5 が暗く点灯する。SW2を押すとD1が消灯して、D5も消灯する。SW1 が +1 ならば、SW2 は -1 だ。
・SW1を押していくごとに、D1 ~ D4 がバイナリで点灯して行って、値が大きくなるごとに D5 の明るさが明るくなる。下の写真はD5の明るさが最大の時だ。
2014年10月16日 06:00 |
Altera_MAX10
| トラックバック:0
| コメント:0
”
BeMicro MAX 10 の Full featured Reference Design をやってみた3(MAX10をコンフィグレーション) ”の続き。
前回は、Nios II からMAX10 をコンフィグレーションした。今回は、Nios II からソフトウェアを実行してリファレンス・デザインを実行した。
・Nios II の Run As -> 3 Nios II Hardware を選択した。
・Run Configurations ダイアログで、adc_example2_Nios II Hardware configuration ができた。
・Target Connection タブに x 印が付いていたので、Target Connection タブに移り、Refresh Connections ボタンをクリックすると x 印が消えた。
・Download の Download ELF to selected target system にチェックが入っていることを確認しよう。
・Apply ボタンをクリックした。
・Debugger タブ。
・Source タブ。
・Common タブ。Apply ボタンをクリックして、Run ボタンをクリックした。
・adc_example が実行された。
・Nios II Console を最大化した。
次からは、Example を次々同様に試してみた。Nios II Console を最大化した時の表示を下に示す。
・dac_loopback
・serial_flash_example
・temp_sense_example
・timer_example これは、表示が少ないので、Nios II Console を最大化していない。
・最後に、Nios II Hardware の configuration を下に示す。
2014年10月15日 04:18 |
Altera_MAX10
| トラックバック:0
| コメント:0
”
BeMicro MAX 10 の Full featured Reference Design をやってみた2(Nios II) ”の続き。
Nios II で、コンパイルすることができたので、BeMicro MAX10 をパソコンに接続して確かめてみた。
・BeMicro MAX10 をUSBに接続した。これで電源が入る。
・USB電流計を接続して、電流を測定したら、0.11A 消費していた。ソフトウェアを起動するときには、0.12Aになった。十分にUSBの規格内だ。
・Nios II のNios II -> Quartus II Programmer を選択した。
・Quartus II 64-bit Programmer が立ち上がった。 Hardware Setup... ボタンをクリックした。
・Hardware Setup ダイアログが立ち上がった。Currently selected hardware をクリックして、USB-Blaster [USB-0] を選択した。
・Currently selected hardware が、USB-Blaster [USB-0] に変更された。OKボタンをクリックした。
・Quartus II 64-bit Programmer の Hardware Setup が USB-Blaster [USB-0] に変更された。
・Add File... ボタンをクリックした。
・Select Programming File ダイアログが開いた。C:\HDL\altera\Altera_work\BeMicro_MAX10\BeMicro_Max10_restored\output_files に行って、top.sof を選択した。Open ボタンをクリックした。
・上のペインに、top.sof が入った。Start ボタンをクリックした。
・MAX10がコンフィグレーションされた。成功だ。
2014年10月14日 04:47 |
Altera_MAX10
| トラックバック:0
| コメント:0