cpu

8bit CPUの命令長設定

今回のCPUでは、デコード時に命令長を確定させないといけないのだけど、その処理を書いてなかった。 DE0で8bit CPUのデコーダを動かす で、すでに非常に大きなcase文ができあがってて、そこにちくちくと命令長を設定していくのは非常に面倒だしミスも多そう…

DE0で8bit CPUのデコーダを動かす

日曜日にデコーダが動いてたのだけど、動画をとるのがめんどくてブログかいてなかった。 とりあえず、ここで書いた、デコード後の内部命令がLCDに表示される。 ぼくのかんがえたさいきょうのCPU 〜 仕様確定 はっきりいって、命令にバイト数をつかえてきれい…

ぼくのかんがえたさいきょうのCPU 〜 仕様確定

デコーダのコードを書きながら、実装がめんどうなところなどを修正していきました。 0(0000) 1(0001) 2(0010) 3(0011) 4(0100) 5(0101) 6(0110) 7(0111) 0 NOP LD BC,n'n LD (BC),A INC BC INC B DEC B LD B,n RLCA 10 HALT LD DE,n'n LD (DE),A INC DE INC …

ぼくのかんがえたさいきょうのCPU 〜 実行フェーズとオペランド読込み

Z80/8080をベースにしたオリジナルのCPUを考えています。 http://d.hatena.ne.jp/nowokay/20130121#1358765504 これを、次のようなコードに分解するわけです。 http://d.hatena.ne.jp/nowokay/20130122#1358829249 ここで、実行フェーズとメモリ読み込みをど…

ぼくのかんがえたさいきょうのCPU 〜 内部コード

さて、CPUの命令コードができたので、デコードしたときの内部コードを考えてみます。 フェッチした命令コードは、こんな感じの62bitのコードにデコードします。 4bit 1bit 1bit 1bit 3bit 16bit 16bit 4bit 16bit 操作 8/16bit 出力有無 オペランド2バイト目…

ぼくのかんがえたさいきょうのCPU 〜 命令表

FPGAをさわってたら、なんかパイプラインとかキャッシュとか複合命令を考えなければCPUつくるのはそんなに難しくないなーと思い始めて、いろいろぽわわ〜んとなって仕事が手につかないので、とりあえず命令表をまとめてみた。 DE0のFPGA内蔵RAMを前提にする…