仁木/春のプロジェクト2009/第2回
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[仁木/春のプロジェクト2009]]
*1. 4ビット加算器の設計 [#b2d5de4b]
assign文とalways文の違いは?
assignは右辺の評価値が左辺のネットに断続的に書き込まれ続けることを意味する
ex. X = a | b;
alwaysは@(...)で始まり、括弧内の条件引数値が変化したときにあとに続く
beginからendまでの文が実行される。
レジスタ宣言とは?
ここで宣言されたものはレジスタ型変数となる。
レジスタ型変数は信号線にもレジスタにもなり得る。
always内の代入文の左辺は?
レジスタ宣言で宣言されたレジスタ型変数でなくてはならない。
assign内の代入文の左辺は?
ネット宣言で宣言されたネット型変数でなくてはならない。
*4ビット加算器を3通りの方法で記述する [#t6d8e315]
それぞれの記述方法の違いは?
1,すべての信号線の論理を定義する
最高に面倒且つ効率が悪い
2,以前つくった全比較器をインスタンス化して利用
効率且つ分かりやすい。
3,算術演算子を用いて実現
+などをそのまま使って作成する。簡単だが内部の動きが分かりづらい。
*テストベンチとシミュについて [#j9be2132]
実験済み問題なし
終了行:
[[仁木/春のプロジェクト2009]]
*1. 4ビット加算器の設計 [#b2d5de4b]
assign文とalways文の違いは?
assignは右辺の評価値が左辺のネットに断続的に書き込まれ続けることを意味する
ex. X = a | b;
alwaysは@(...)で始まり、括弧内の条件引数値が変化したときにあとに続く
beginからendまでの文が実行される。
レジスタ宣言とは?
ここで宣言されたものはレジスタ型変数となる。
レジスタ型変数は信号線にもレジスタにもなり得る。
always内の代入文の左辺は?
レジスタ宣言で宣言されたレジスタ型変数でなくてはならない。
assign内の代入文の左辺は?
ネット宣言で宣言されたネット型変数でなくてはならない。
*4ビット加算器を3通りの方法で記述する [#t6d8e315]
それぞれの記述方法の違いは?
1,すべての信号線の論理を定義する
最高に面倒且つ効率が悪い
2,以前つくった全比較器をインスタンス化して利用
効率且つ分かりやすい。
3,算術演算子を用いて実現
+などをそのまま使って作成する。簡単だが内部の動きが分かりづらい。
*テストベンチとシミュについて [#j9be2132]
実験済み問題なし
ページ名: