始める電子回路 CPUを作る 回路がわかる本 始める電子工作 

CPUの4つのレジスタ


        

4つのレジスタ

ここから理解するのにさらっと読んでもあまり深く考えなかったところでした。
4つのレジスタが回路図にはあります。

 本書P189 ブロック図

最初にこんなのを見てCPUといわれてもあまりに複雑です、でも一部を理解しようとそこばかり繰り返し立ち止まることなく、なぜかさらりと読み進めていくことになるこの本の文章とつくりと構成は不思議で、楽しくて巧妙です
このへんは1度目に読んでまた次2周目と読んでだんだんと構造がわかってくるようにる(気がする)CPUの構造です。

実際には信号を追いかけるように見ていくとさらに複雑。そして、だんだんとこのCPUの構成が見えてきた。
同じようにA,B,C,D 4つのレジスタが回路に入っています。でも実際プログラムで作業レジスタみたいに使うのはA,B2つのレジスタ

あとの2つは? 同じタイプのレジスタがあと2つ。
説明では、3つめ=Cレジスタ は IOレジスタ として使用、、、ここまではいいんです、一応そのまますんなり理解できる。

最後のDレジスタ?
4つめ=Dレジスタは 最終的にプログラムカウンター(PC)として使うとあります・・・
ここが謎としてずっと残ります。なぜかPCが通常のレジスタと同じ回路で同様に扱われている。。どうも違和感を感じました。

ややこしいので、ん? と引っかかることはよくありますが、謎を解くには、、放っておくことです(^^;
あんまりその場でわかろうとせず、そのまま読み進める。なぜかぐるっと回ってまた読み返したくなる本なのです。
(おかげで何度も冗談に付き合うことにもなるが)
何度も読み返すうちにだんだんわかってくるようになる。。つまり全体を読んでるとすこしずつ見えてくる というのがこの本のいいところだと思います。


プログラムカウンター(PC)

ROMでも出てきた重要なプログラムカウンター(PC)ですが、ROMのところの記事では後で登場となっています。
それが他のレジスタと同じ構造のレジスタの1つなっている、というのはなんともわかりにくいままです。

このレジスタのICはカウンタICとしても使えるので、カウンタ機能があるのはPCとして使えて当然。。
でもなぜPCが他と同様のレジスタの1つにされているのか、
またカウントアップの他にジャンプ命令も持たないとCPUにならない、それをどういう方法で実現するのか、ROMブロックを作っていて気になったところで後が楽しみといったところでした。

それはこの説明でわかりました。

P217 ジャンプ命令 の部分 (以下引用   
JMP  Im        Im番地へジャンプ
MOV PC , Im     Imをプログラムカウンターへ転送

この2つは全く同じことです。このトリックさえ理解してしまえばジャンプ命令は・・
とあり、この命令で全部がわかりました。
Dレジスタはカウンタ機能を持つレジスタとして扱われてジャンプ命令は転送命令の1つで転送先がプログラムカウンタと考えるとこんなところにDレジスタとしてある理由がわかる。

後ろに謎解きの答えがあったりするのでまだまだ先に進む。
さて、そろそろ制作に向かうころです。。ゆっくりきたぶん、ここからは速度を上げて。


始める電子回路 CPUを作る 回路がわかる本 始める電子工作 
        メインページへ