Presentation is loading. Please wait.

Presentation is loading. Please wait.

オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道

Similar presentations


Presentation on theme: "オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道"— Presentation transcript:

1 オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道

2 概要 1.ディジタル回路設計CADについて 2.設計した演算制御システムについて 3.各機構の設計について 4.デモンストレーション
5.まとめと今後の課題

3 研究の目的 ディジタルシステムの設計と開発 マイクロプロセッサの解析 CADを用いた演算制御システムの設計 計画 解析 設計 検討
1.ディジタル回路設計CADについて 研究の目的 ディジタルシステムの設計と開発 マイクロプロセッサの解析 CADを用いた演算制御システムの設計 計画 解析          設計 検討

4 利用するCADシステム CAD コンピュータ上におけるソフトウェアを用いたディジタル回路の設計支援システム 設計ツール:
1.ディジタル回路設計CADについて 利用するCADシステム CAD  コンピュータ上におけるソフトウェアを用いたディジタル回路の設計支援システム 設計ツール: Xilinx社 ISE Foundation 9.1i Mentor Graphics社 ModelSimXE 6.2c FPGAダウンロード基板(40万ゲート規模)

5 演算制御システムの概要 8ビットデータバス(単一・固定長命令) ALUによる演算処理 2層クロックを使用 制御回路による単一バスの制御
2.設計した演算制御システムについて 演算制御システムの概要 8ビットデータバス(単一・固定長命令) 制御回路による単一バスの制御 ALUによる演算処理 四則演算と論理演算 フラグ判定つきの演算処理 2層クロックを使用 各機構同期用と制御回路の命令同期用 1:2の周波数のクロックを発生 クロック同期によるゲート解放 立ち下り・・・入力命令 立ち上り・・・出力命令 機構同期用 制御回路同期用

6 基本構成と動作 信号の流れ ① PC ⇒ MAR ② MAR ⇒ 主記憶 ③ 主記憶 ⇒ MDR ④ MDR ⇒ IR ⇒ ID
2.設計した演算制御システムについて 信号の流れ ① PC ⇒ MAR ② MAR ⇒ 主記憶 ③ 主記憶 ⇒ MDR ④ MDR ⇒ IR ⇒ ID ⑤ 制御回路へ   (命令の実行) ⑥ PC ← PC + 1 ①~⑥の繰り返し 単一バス方式CPU

7 命令の実行 ・・・・・ 命令サイクル ・・・・・ ・・・・・ Tステート (=周期) 命令1 命令2 命令3 フェッチ デコード 実行
2.設計した演算制御システムについて 命令の実行 ・・・・・ 命令1 命令2 命令3 命令サイクル ・・・・・ フェッチ デコード 実行 フェッチ ・・・・・ マシンサイクル M1 M2 M3 Mn Tステート (=周期) T1 T2 T3 T4

8 CPU構成図 2.設計した演算制御システムについて 赤線はデータバス(8bit) 総ゲート数:約15,000ゲート

9 各機構説明表 項目 名称 機能 MDR 記憶データ用レジスタ 入出力データを一時保存するレジスタ MAR 記憶番地用レジスタ
2.設計した演算制御システムについて 各機構説明表 項目 名称 機能 MDR 記憶データ用レジスタ 入出力データを一時保存するレジスタ MAR 記憶番地用レジスタ 記憶番地を指定するレジスタ PC プログラムカウンタ 次の命令の番地を指定するレジスタ ALU 算術論理演算装置 各演算処理を行う装置 Acc アキュムレータ 演算結果を一時的に保存するレジスタ Temp 一時保存レジスタ 演算数を一時保存するレジスタ R0~R2 汎用レジスタ 命令を実行する為に使用するレジスタ IR 命令用レジスタ 実行中の命令内容を保持するレジスタ ID デコーダ 命令を解析して受け渡す装置 CTRL 制御回路 バスの制御を行い命令を実行する装置

10 命令表 ●・・・変化せず ⇔・・・操作の結果でセット またはリセットされる 2.設計した演算制御システムについて 対応表 ニーモニック
シンボリックオペレーション OPコード HEXコード フラグ Mサイクル数 Tステート数 O C Z S  NOP 99 00H 1 4  HLT END FF 01H  LD r, r' r ← r' A0 02H 3 5  LDM r, (mem) r ← (mem) A1 03H  ST (mem) (mem) ← Acc B0 04H 2 7  JMP (mem) PC ← (mem) C0 05H  ADD r, r' Acc ← r + r' E0 06H 6  SUB r, r' Acc ← r - r' E1 07H  MUL r, r' Acc ← r * r' E2 08H  DIV  r, r' Acc ← r / r' E3 09H  AND r, r' Acc ← r & r' E4 0AH  OR r, r' Acc ← r | r' E5 0BH  NOT r Acc ← !r E6 0CH ●・・・変化せず ⇔・・・操作の結果でセット     またはリセットされる 対応表 機構 HEXコード レジスタ0 10H レジスタ1 11H レジスタ2 12H アキュムレータ 40H

11 レジスタ・PC・IR・ID(クロック同期)
3.各機構の設計について レジスタ・PC・IR・ID(クロック同期) R0~R2(汎用レジスタ) バスから受け取ったデータを保持 制御回路からの命令によりバスにデータを出力 PC(プログラムカウンタ) 実行する命令の番地を記憶 次に実行する命令の番地をバスへ出力(カウントアップ) IR(インストラクションレジスタ) バスから受け取った命令やデータをIDへ出力 ID(インストラクションデコーダ) IRから受け取った命令コードを制御回路が   認識可能な機械語へ変換 バスと制御回路に対してデータの入出力

12 ACC・TMP・ALUの構成 ACC(アキュムレータ):クロック同期 TMP(一時記憶レジスタ):クロック同期
3.各機構の設計について ACC(アキュムレータ):クロック同期 演算などデータの一時保持に特化したレジスタ TMP(一時記憶レジスタ):クロック同期 バスとデータを切り離し、ALUを演算のみに特化させるための一時記憶レジスタ ALU(演算処理装置):クロック非同期 非演算数・演算数・演算オペレーションの3データがそろい次第、演算処理を開始し、解をACCに出力 FR(フラグレジスタ) 演算の結果、出力されたフラグ情報を記憶 O:オーバーフロー(ビット溢れ判定)  Z:ゼロ(0判定) C:キャリー(桁上げ判定)  S:サイン(マイナス判定)

13 メモリユニット(MAR,MDR,メモリ) MAR(メモリアドレスレジスタ) MDR(メモリデータレジスタ) メインメモリ(主記憶)
2.設計する演算制御システムについて メモリユニット(MAR,MDR,メモリ) MAR(メモリアドレスレジスタ) 実行する命令データ(命令コード+オペランド)の   ある番地を入力、記憶 番地データをアドレスラインによりメモリに出力 MDR(メモリデータレジスタ) メモリから実行する命令データを入力、記憶 記憶している命令データをバスへ出力 メモリに書き込む演算結果をデータラインにより出力 メインメモリ(主記憶) 32バイト(8ビット×32番地) 実行する命令データを各番地に記憶 オペレーションにより、読出し、書込み、初期化を実行

14 メモリユニットの記述 MAR,MDR⇒クロックに同期 メインメモリ⇒メモリクロックに同期 制御回路からの命令による入出力
2.設計する演算制御システムについて メモリユニットの記述 MAR,MDR⇒クロックに同期 制御回路からの命令による入出力 クロック立ち下り時にバスからデータを入力 クロック立ち上り時にバスやメモリへデータを出力 メインメモリ⇒メモリクロックに同期 命令表に従い、実行する命令を記述 制御回路からの動作命令を受信(クロック立ち上り) 読出し・・・番地をデータに変換 書込み・・・番地にデータを上書き(1Tステート必要) 初期化・・・各番地のデータを初期値に戻す

15 制御回路 システム全体の制御 各機構へ個別の信号(ゲート解放命令)を送信することによりシステム全体を制御 電源、リセットスイッチ
3.各機構の設計について 制御回路 システム全体の制御 各機構へ個別の信号(ゲート解放命令)を送信することによりシステム全体を制御 電源、リセットスイッチ powerスイッチにより、システム全体の起動とリセットが可能 2層クロックの使用 メインクロックの周波数の2倍に設定したクロックを制御回路が使用することで、高い安定性を確保 

16 制御回路の構成 4層に分けて記述 各命令ごとに記述 制御回路を管理するカウンタ層 制御回路の中枢であるメイン記述層
3.各機構の設計について 制御回路の構成 4層に分けて記述 制御回路を管理するカウンタ層 制御回路の中枢であるメイン記述層 基本動作を記述したCPUサイクル層 各命令を記述した命令サイクル層 各命令ごとに記述 各命令ごとに記述することで、命令の追加・修正など、容易な管理が可能 

17 演算処理のデモンストレーション 作成したCPUを用いた演算処理 デモ用命令の内容 スイッチによりレジスタの 値の表示を切り替え
4.デモンストレーション 作成したCPUを用いた演算処理 スイッチによりレジスタの   値の表示を切り替え デモ用命令の内容 R0 ← [24番地] + [25番地] LDM R0, mem[24] ST mem[30] LDM R1, mem[30] LDM R2, mem[25] ADD R1, R2 LD R0, ACC HLT

18 まとめと今後の課題 ディジタル回路設計CADの使用法の習得 オリジナルCPUの設計と製作 今後
5.まとめと今後の課題 まとめと今後の課題 ディジタル回路設計CADの使用法の習得 オリジナルCPUの設計と製作 今後 命令の実装(フラグを考慮した演算命令、条件付きジャンプ命令など) 回路規模の削減 3バス方式による演算制御システムの検討


Download ppt "オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道"

Similar presentations


Ads by Google