verilog / DE0-CV / installation test1


verilog

LEDbrink(installation tezt1)

これは環境が整備されているかどうかを確認するためのテストです。

1-1.開発環境
1-2.ハードウェアセットアップ
1-3.ソフトウェアセットアップ
1-4.コンフィグレーション
1-5.ファイルコンバージョン
1-6.その他

1-1.開発環境

開発環境PCには、下記をインストール済みである。

添付ファイルの画像

1-2.ハードウェアセットアップ

DE0-CVを用意する。
FPGA:5CEBA4F23C7N CycloneV(win7 64bit以降にのみ対応)
COnfigROM(EPCS64)
onboard COLCK INPUT 50MHz:pinM9,H13,E10,V15

SW10を"RUN"側、写真だと上側である。

添付ファイルの画像

下記はLEDのピン配置。

添付ファイルの画像

QUARTUSにデバイスを設定しておく。下記へ移動。

添付ファイルの画像

Deviceの設定画面が表示されるので、今回の評価ボードDE0-CVの搭載FPGAを指定する。指定したら”OK"で抜ける。

添付ファイルの画像

1-3.ソフトウェアセットアップ

module LEDbrink(
 CLK,
	LED_out
    );
/**********************/
   input  CLK ; 
	output LED_out ;
	 wire LED_out ;
	 
/**********************/
  parameter   F33M000_cnt=32'h007270E0 ;//0.15秒ごとの変化 7500000回×1/(50×10^6) = 0.15sec
 
  reg [31:0] sec_cnt ;//1秒作成用カウンタ
  reg        sec1_flag ;//0.15秒のフラグ
  
  reg        toggle_flag ; //0.15秒ごとにトグルするフラグ
  
  /**********************/
/*1秒カウンタ部         */
/**********************/

always@(posedge CLK)
begin
   if(sec_cnt == F33M000_cnt) begin //もし3300万回数えたらカウンタをリセットする
	   sec_cnt <= 32'h00000000 ; 
	   sec1_flag <= 1'b1; //SEC1_FLAGに1をセットする
	 end else begin
	   sec_cnt <= sec_cnt + 1 ;
	   sec1_flag <= 1'b0 ;
	 end
end
/**********************/
/*1秒検出部           */
/**********************/

always@(posedge CLK)
begin
   if(sec1_flag == 1'b1 )begin
	  toggle_flag <= !toggle_flag ;
	end
end

/**********************/
/*LED出力部           */
/**********************/

   assign LED_out = toggle_flag ; 

/**********************/

endmodule

'1-4.コンフィグレーション'

下記を辿ってコンフィグレーションをする。ピン配はきまっていないが、気にせず実施。

添付ファイルの画像

message windowにいろいろ表示されるが、Compilation was successful 0 errorsとでたらwarningがあっても一応完了とする。

添付ファイルの画像



・PIn configration pin assginを決める。、下記を辿る。

添付ファイルの画像


下記のように設定する。CLK input,LED_outはoutputである。

添付ファイルの画像


もう一度コンフィグレーションをする。

tool->programmarを辿る。

添付ファイルの画像


Programmerのウインドウで、HardwareSetup?をクリック。 USB-BLASTER[USB-0]を選択する。
DE0-CVを先にUSBケーブルでつなぎ、電源を入れておく(赤スイッチSW11 オン)必要があります。
Modeは、JTAGを選択。

添付ファイルの画像


左端中段にAutoDetect?をクリック。SelectDevice?で、今回は5CEBA4を選択し、"ok"をクリック。

添付ファイルの画像


するとウィンドウにデバイスの絵が表示されるようになる。

添付ファイルの画像


左端中段にAddFile?のボタンがあるのでクリック。%プロジェクト名%.sofを指定する。今回はLEDbrink.sofである。
sofファイルは、defaultでは、Pjフォルダ下のoutput_filesの中に格納されている。
選択して"Open"をクリック。

添付ファイルの画像


Fileが指定されたら、ProgramConfigration?にチェックがはいっていることを確認し、Startを押す。
Progressが100%になったら完了である。

添付ファイルの画像



'1-5.ファイルコンバージョン'

上記までは、JTAG書き込みで、直接FPGAに書き込んでいるが、これは揮発性のため、電源OFF、ONで状態が保存できない。
その代わり高速で書き込みが完了するため、デバッグはこれを使い、最終的にFixしたらROMに書く、というやり方が良いと思われます。
ここからはROMに書く方法を記述します。


まずFile->Convert Program Filesを選択。

添付ファイルの画像


下記のように各種設定をして、"Generate"を押す。

添付ファイルの画像


するとoutputfiles下に、output_file.pofが生成される。
これがROM書き用のファイルとなる。

再度、tools->Programmerを開いて、今度は、ModeをActiveSerialProgramming?を選択する。
ファイルは生成した、output_file.pofを選択する。

添付ファイルの画像


DE0-CVはいったん電源をOFFし、SW10をProgに変えて再度SW11をオンして起動させておく。
この状態で、"start"をクリックすると、プログラムのダウンロードが始まる。

Progressが100%になったら完了。

添付ファイルの画像


ここでDE0-CVの電源をいったんOFFとし、SW10をRUNに切り替えて再度SW11赤スイッチ押してオンする。
すると、LED9が0.15sec間隔で点滅することがわかる。

1-6.その他

1.nandc05_03beta

最新の20件

2024-04-08 2024-01-25 2024-01-24 2023-08-09 2023-07-14 2023-06-21 2023-04-22 2022-04-17 2022-02-13 2022-01-31 2021-12-17 2021-12-13 2021-10-27 2021-01-06

今日の4件

  • counter: 139
  • today: 1
  • yesterday: 0
  • online: 1