• 締切済み

CPUの回路について教えてほしいです!

・5ビットCPU:CPUが5ビットずつ読み出し専用メモリからデータを取り込む。 ・レジスタ:2ビットを記憶できるレジスタを1つ持っている。 ・アドレス空間:CPUは2ビットの異なるアドレスを参照できる。 ・メモリ:読み出し専用メモリと書き込み専用メモリを持っている。読み出し専用は5ビット、4ワード。書き込み専用は2ビット、1ワード ・機械語:5ビット中、上位3ビットがOPコード、下位2ビットがオペランドとなる。 ・命令:CPUの命令は以下の5種類。 ・加算命令:レジスタの値とオペランドの値を加算し、その値をレジスタにセット。 ・減算命令:レジスタの値からオペランドの値を減算し、その値をレジスタにセット。 ・ロード命令:オペランドの値をレジスタにセット。 ・ストア命令:書き込み専用メモリにレジスタの数値を書き込む。下位2ビットは無視される。 ・ジャンプ命令:オペランドの値が示す読み出し専用メモリのアドレスに書かれた命令を次に実行する命令とする。 このような仕様にに基づくUPUの回路図を教えてください。 また減算命令、ジャンプ命令、メモリへの書き込みをするような回路について文章でよいので説明していただけるとありがたいです。

みんなの回答

回答No.3

あまりにも膨大なので最後だけ。 減算命令 ⇒加算回路と同じです。2の補数をみっちり勉強してください。 ジャンプ命令 ⇒ジャンプ命令が来たときにプログラム・カウンタをオペランド値(もしくは参照先レジスタ値)に書き換えればいいだけですよね?? メモリへの書き込み ⇒フリップフロップにラッチ。

tommbokki
質問者

お礼

回答ありがとうございました。 教えていただいたものを参考に自分でしっかり調べてみます。

noname#215107
noname#215107
回答No.2

課題の丸投げではありませんか? >・5ビットCPU:CPUが5ビットずつ読み出し専用メモリからデータを取り込む。 >・レジスタ:2ビットを記憶できるレジスタを1つ持っている。 ↑メモリから5ビット取り出して、2ビットのレジスタにどうやって入れるのでしょうか・・・・

noname#194317
noname#194317
回答No.1

それって、全部まとめると一冊の本が出来上がると思いますけど…率直に言って、非常に無謀な質問と感じました。本当にこの場だけで回答できる内容だと思っていますか? まずは一番基本となる、フリップフロップ回路から勉強されてはいかがでしょう。この辺を理解できたとして、質問内容を全て解決するには、みっちり勉強して一ヶ月くらい必要じゃないでしょうか。

参考URL:
http://ja.wikipedia.org/wiki/%E3%83%95%E3%83%AA%E3%83%83%E3%83%97%E3%83%95%E3%83%AD%E3%83%83%E3%83%97
tommbokki
質問者

お礼

しっかり勉強します。 ありがとうございました。

関連するQ&A