春のプロジェクト2010/第9回
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[春のプロジェクト2010]]
*第9回 バスと命令フェッチ回路[#ka1114e7]
#contents
*概要[#u6982e16]
-バスとは
--各回路がデータを交換するために使う共通の経路
-バスを使うメリット
--信号線の数の削減
--設計も簡単に
-図でみるバスの有無:"複数の組み合わせ信号が同時に起ることは無いとする"
--図1-(a)バスを使わない場合
--図2-(b)バスを使った場合
**バスの設計方法[#wae5490a]
-バスをVerilog HDLで設計する場合、どのデータをバスへ書き込むかを制御する必要がある。その方法として以下の2つの方法がある。
-マルチプレクサを用いる方法
reg[15:0] abus;
always @ (a or b or c or asel or bsel or csel)
if(asel) sbus = a;
else if(bsel) sbus = b;
else if(csel) sbus = c;
else sbus = 16'hxxxx;
-3ステート・バスを用いる方法
wire[15:0] sbus;
assign sbus = (asel ? a : 16'hzzzz);
assign sbus = (bsel ? b : 16'hzzzz);
assign sbus = (csel ? c : 16'hzzzz);
**命令フェッチ回路の仕様 [#d56fcc95]
-今回設計する命令フェッチ回路の仕様
|>|CENTER:命令レジスタir0|動作|
|上位8ビット|下位8ビット|~|
|CENTER:0|CENTER:0|IDLEに遷移|
|CENTER:A(!=0)|CENTER:0|A番地を読み出しobuf0に出力|
|CENTER:A|CENTER:B(!=0)|A番地にBを書き込み|
** 命令フェッチ回路のVerilog HDL[#f7dc9a1c]
-リスト3を参考につくってみましょう!
** 命令フェッチ回路のシミュレーション[#pab1c803]
-リスト4と5を参考にシミュレーションして、自分でつくった命令フェッチ回路が正しいか確認しましょう!
-----------------------
#comment
終了行:
[[春のプロジェクト2010]]
*第9回 バスと命令フェッチ回路[#ka1114e7]
#contents
*概要[#u6982e16]
-バスとは
--各回路がデータを交換するために使う共通の経路
-バスを使うメリット
--信号線の数の削減
--設計も簡単に
-図でみるバスの有無:"複数の組み合わせ信号が同時に起ることは無いとする"
--図1-(a)バスを使わない場合
--図2-(b)バスを使った場合
**バスの設計方法[#wae5490a]
-バスをVerilog HDLで設計する場合、どのデータをバスへ書き込むかを制御する必要がある。その方法として以下の2つの方法がある。
-マルチプレクサを用いる方法
reg[15:0] abus;
always @ (a or b or c or asel or bsel or csel)
if(asel) sbus = a;
else if(bsel) sbus = b;
else if(csel) sbus = c;
else sbus = 16'hxxxx;
-3ステート・バスを用いる方法
wire[15:0] sbus;
assign sbus = (asel ? a : 16'hzzzz);
assign sbus = (bsel ? b : 16'hzzzz);
assign sbus = (csel ? c : 16'hzzzz);
**命令フェッチ回路の仕様 [#d56fcc95]
-今回設計する命令フェッチ回路の仕様
|>|CENTER:命令レジスタir0|動作|
|上位8ビット|下位8ビット|~|
|CENTER:0|CENTER:0|IDLEに遷移|
|CENTER:A(!=0)|CENTER:0|A番地を読み出しobuf0に出力|
|CENTER:A|CENTER:B(!=0)|A番地にBを書き込み|
** 命令フェッチ回路のVerilog HDL[#f7dc9a1c]
-リスト3を参考につくってみましょう!
** 命令フェッチ回路のシミュレーション[#pab1c803]
-リスト4と5を参考にシミュレーションして、自分でつくった命令フェッチ回路が正しいか確認しましょう!
-----------------------
#comment
ページ名: