Verilogによる簡単な組み合わせ回路

Download Report

Transcript Verilogによる簡単な組み合わせ回路

Verilog HDL
12月21日(月)
Verilog HDLとは
•
•
•
•
シミュレーション言語として生まれる
その後、論理合成にも使われるようになる
現在、多くのCADツールがサポートしている
C言語に似た簡単で表現力の高い記述言語
簡単な例から覚えよう
• 組合わせ回路(8bit加算回路)の記述例です。
• Verilog-HDLでは、まとまった一つの回路をモ
ジュール(module)と呼びます。
module add8(a, b, s);
input [7:0] a, b;
a
add8
8
output [8:0] s;
s
assign s = a + b;
9
b
8
endmodule
モジュールの書き方
• module ではじまり endmodule で終わる
• 回路の名前(モジュール名)を付ける
• 入出力信号の名前(ポートリスト)を書く
モジュール名
ポートリスト
module add8(a, b, s);
input [7:0] a, b;
output [8:0] s;
assign s = a + b;
endmodule
入出力の書き方
• 入力は input
• 出力は output
• 複数ビット信号は [最上位ビット:最下位ビット]
入力信号
出力信号
module add8(a, b, s);
input [7:0] a, b;
output [8:0] s;
assign s = a + b;
endmodule
回路記述本体
• assign は継続的代入文
• 簡単な組合わせ回路を記述するのに使用する
回路記述本体
module add8(a, b, s);
input [7:0] a, b;
output [7:0] s;
assign s = a + b;
endmodule
演算子
• 使用できる演算子
+ 加算
- 減算
* 掛算
論理合成に使用できない
• / 割り算
回路規模を調べる
クリック
ダブルクリック
Total logic cells used: の部分が使用セル数です。
Total logic cells used:
15/576
( 2%)
15セルを使っていることがわかる
演習
• 次の回路をVerilogにより記述し、シミュレー
ションにより動作を確認せよ。また、回路規模
を(使用セル数)比較せよ。
• 8ビット加算器
(8ビット入力 9ビット出力)
• 8ビット減算器
(8ビット入力 9ビット出力)
• 8ビット乗算器
(8ビット入力 16ビット出力)
今までの宿題
回路図設計
• フリップフロップ(Lach、D、JK, T)のシミュレーション
• 同期式8進カウンタ or 同期式16進カウンタ
• 同期式10進カウンタ
言語設計 回路規模も調べてください
• 8進カウンタ or 16進カウンタ
• 10進カウンタ
• 12進カウンタ
• 8ビット加算器
(8ビット入力 9ビット出力)
• 8ビット減算器
(8ビット入力 9ビット出力)
• 8ビット乗算器
(8ビット入力 16ビット出力)