next up previous contents index
Next: シフタ Up: データ処理部 Previous: レジスタ   Contents   Index

制御線

制御線については,どの図でもあまり詳細を示していない。 それはあまりにも本数が多いからである。 しかし,いろいろな方法で,その本数を減らすことも可能である。

まず,レジスタを見てみよう。 レジスタは1bitメモリー16個が組になって,動作する。 書き込みも読み出しも16個を一緒に動作させてよい。 したがって,書き込み制御線も読み出し制御線もまとめて1本でよい。 レジスタはこのような16bitのものが全部で16個あるので, 書き込み制御線も読み出し制御線もそれぞれ計16本でよい。 このように,他の機能ブロックでも, 16bit分のゲートを同時にまとめて動作させてよいものは,すべてまとめることにする。

さて,レジスタを一度に複数選択することは少ない。 多くても,入力用に1個,出力用に1個といった具合であろう。 このような場合,どのレジスタを選ぶかだけを指定すればよい。 16個のいずれかを選ぶには, 0から15を2進表現して0000から1111を指定すればよい。 つまり制御部からデータ処理部に対し,4bitの情報を指定するだけでよい。 入力用と出力用を同時に指定しても,8bitで十分である。 もちろん,レジスタのすぐ傍で,このレジスタ番号をデコードして, 16本の線のいずれかを選択できるようにする必要があるが, 制御線としてはかなりの本数節減が果たせることになる。 同様に,シフタのシフト量も0から15であるので,2進化すれば4bitで可能である。

その他,後述するALUではK,P,Rの動作決定のためそれぞれに4本ずつの計12, 入力レジスタには読み込み先に対応してそれぞれ4(バス2,シフタ出力1, シフト量1)あるが,2進化できるので3となり2台で計6。 フラグ関連の制御信号などを加えるとおよそ二十数本となる。 二つの出力レジスタはそれぞれ2の計4であるが, これらは汎用レジスタなどとのデータ移動命令側で設定することにする。

合計して50本程度となるが,パイプライン処理をすれば, 二つのタイミングでALU情報と移動情報を分けて送れるので, 二十数本でよいことになる。 それにしてもかなりの本数となる。 詳細は,本章第9.7節で述べる。 将来,制御部の設計の際に, この多くの制御線が必要であるという事実が重い意味を持ってくる。


next up previous contents index
Next: シフタ Up: データ処理部 Previous: レジスタ   Contents   Index
Yoichi OKABE 2010-04-20