ぱたへね

はてなダイアリーはrustの色分けができないのでこっちに来た

Lispマシーンの制御パス

AIM-528_CADR.pdfからLispマシーンCADRの制御バスの図を抜き出してみました。中央右側にPC(プログラムカウンター)があります。
 普通のプロセッサと明らかに違う所は、ビット幅の違う小さなメモリが複数あることです。PCは14bit幅、スタックは19bi幅t、dispatch メモリは17bit幅です。CADR自体の演算単位は32bitなのですが、instruction memoryが48bitであるところも、最近のプロセッサには無い特徴です。instruction memoryの値を書き換えるときには、32bitのMバスに、8bit分のAバスを接続して48bitを作ります。
 もう一つの特徴は、PCがPDP-11とやりとりできるようになっているところです。OLD PC RING BUFFERと書かれているメモリは、矢印を見る限りFIFOとして機能し、PDP-11へPCの履歴を送っています。逆にPDP-11からPCにデバッグ用の値を設定できるようになっています。今でいうJTAG ICE的なデバッグ機能を備えているのでしょう。
 それ以外では、スタックに専用のメモリと専用の制御回路を持っています。instruction memoryのサイズがかぎられているので、オーバーレイしながら使い回すのかなという構成になっています。