大和田/DE2
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[大和田]]
*DE2 [#j9dace27]
DE2ボードを使いこなすための技など。
----
#contents
**DE2スターターパッケージ [#ed04a50d]
入出力ポート宣言、ピンアサイン、未使用ポートの初期化などを行ったモジュール及び、プロジェクトファイルを用意しました。~
DE2ボードに回路を載せる際にトップモジュールとして使用できます。
|パッケージ名|概要|ダウンロード|
|DE2_SAMPLE|全ての入出力を定義|&ref(DE2_SAMPLE.zip);|
|DE2_SAMPLE_SFL|DE2_SAMPLEのSFL版|&ref(DE2_SAMPLE_SFL.zip);|
|DE2_SAMPLE_BASIC|基本的な入出力に限定|&ref(DE2_SAMPLE_BASIC.zip);|
|DE2_SAMPLE_BASIC_SFL|DE2_SAMPLE_BASICのSFL版|&ref(DE2_SAMPLE_BASIC_SFL.zip);|
BASICパッケージは以下の入出力を宣言しています。
-入力
--50MHzのクロック
--プッシュボタン
--スライドスイッチ
-出力
--LED
--7セグメントLED
***使用例(全加算器を例に) [#y22b96c6]
全加算器を動作させる例。
+fa.vとして全加算器を設計する。
module fa (/*AUTOARG*/
// Outputs
sout, carry_out,
// Inputs
ina, inb, carry_in
);
input ina, inb, carry_in;
output sout, carry_out;
assign sout = ina ^ inb ^ carry_in;
assign carry_out = (ina & inb) | (inb & carry_in) | (carry_in & ina);
endmodule // fa
+DE2_TOP.vにfaを組み込む。
module DE2_TOP (
...
assign HEX6 = 7'h7f;
assign HEX7 = 7'h7f;
// assign LEDG = 9'h000;
assign LEDR = 18'h00000;
fa fa1 (
// Outputs
.sout (LEDG[0]),
.carry_out (LEDG[1]),
// Inputs
.ina (SW[17]),
.inb (SW[16]),
.carry_in (SW[15])
);
endmodule // DE2_TOP
+Quartusでプロジェクトを開き、"Assignments -> Settings..."を選択する。~
~
CENTER:&ref(quartus_1.png);~
~
+CategoryからFilesを選び、Fileを追加する。~
~
CENTER:&ref(quartus_2.png);
~
+使用する全てのファイルを選択してOpenをクリック。~
~
CENTER:&ref(quartus_3.png);~
~
+全てのファイルがリストに入ったことを確認してOKをクリック。~
~
CENTER:&ref(quartus_4.png);~
~
+論理合成のために"Processing -> Start Compilation"を選択する。~
~
CENTER:&ref(quartus_5.png);~
~
+DE2ボードに回路をダウンロードして動作確認する。
終了行:
[[大和田]]
*DE2 [#j9dace27]
DE2ボードを使いこなすための技など。
----
#contents
**DE2スターターパッケージ [#ed04a50d]
入出力ポート宣言、ピンアサイン、未使用ポートの初期化などを行ったモジュール及び、プロジェクトファイルを用意しました。~
DE2ボードに回路を載せる際にトップモジュールとして使用できます。
|パッケージ名|概要|ダウンロード|
|DE2_SAMPLE|全ての入出力を定義|&ref(DE2_SAMPLE.zip);|
|DE2_SAMPLE_SFL|DE2_SAMPLEのSFL版|&ref(DE2_SAMPLE_SFL.zip);|
|DE2_SAMPLE_BASIC|基本的な入出力に限定|&ref(DE2_SAMPLE_BASIC.zip);|
|DE2_SAMPLE_BASIC_SFL|DE2_SAMPLE_BASICのSFL版|&ref(DE2_SAMPLE_BASIC_SFL.zip);|
BASICパッケージは以下の入出力を宣言しています。
-入力
--50MHzのクロック
--プッシュボタン
--スライドスイッチ
-出力
--LED
--7セグメントLED
***使用例(全加算器を例に) [#y22b96c6]
全加算器を動作させる例。
+fa.vとして全加算器を設計する。
module fa (/*AUTOARG*/
// Outputs
sout, carry_out,
// Inputs
ina, inb, carry_in
);
input ina, inb, carry_in;
output sout, carry_out;
assign sout = ina ^ inb ^ carry_in;
assign carry_out = (ina & inb) | (inb & carry_in) | (carry_in & ina);
endmodule // fa
+DE2_TOP.vにfaを組み込む。
module DE2_TOP (
...
assign HEX6 = 7'h7f;
assign HEX7 = 7'h7f;
// assign LEDG = 9'h000;
assign LEDR = 18'h00000;
fa fa1 (
// Outputs
.sout (LEDG[0]),
.carry_out (LEDG[1]),
// Inputs
.ina (SW[17]),
.inb (SW[16]),
.carry_in (SW[15])
);
endmodule // DE2_TOP
+Quartusでプロジェクトを開き、"Assignments -> Settings..."を選択する。~
~
CENTER:&ref(quartus_1.png);~
~
+CategoryからFilesを選び、Fileを追加する。~
~
CENTER:&ref(quartus_2.png);
~
+使用する全てのファイルを選択してOpenをクリック。~
~
CENTER:&ref(quartus_3.png);~
~
+全てのファイルがリストに入ったことを確認してOKをクリック。~
~
CENTER:&ref(quartus_4.png);~
~
+論理合成のために"Processing -> Start Compilation"を選択する。~
~
CENTER:&ref(quartus_5.png);~
~
+DE2ボードに回路をダウンロードして動作確認する。
ページ名: