VHDLによるアーキテクチャ 学習支援ソフトの開発 研究者名 サデック 指導教官 青山 義弘 モハメド ハニフ 研究の背景 ❐ CPUアーキテクチャは机上で考えるだ けでは分かりにくい 研究の背景 ❐ CPUアーキテクチャは机上で考えるだ けでは分かりにくい ❐ VHDLツールを使用して理解を深める ための教材開発 シミュレーション 論理合成 → 実装実験 VHDLとは ❐集積回路設計用ハードウェア記述言語 VHDLとは ❐集積回路設計用ハードウェア記述言語 ブール代数やゲートレベル設計 VHDLとは ❐集積回路設計用ハードウェア記述言語 ブール代数やゲートレベル設計 ❐動作に注目した設計 VHDLでの回路設計過程 プログラム入力 シミュレーション NO Results OK? YES 論理合成 NO Results OK ? YES FPGAへの実装 教材としてVHDL ❐ 高級言語 解しやすい 記述から回路の動作が理 ❐ 難しい論理式を考えず動作に注目 ❐ 記述上の変数名を実際の素子や信号に合わせ てやるとその動作や構成が直感的に分かる。 教材としてVHDL ❐ 高級言語 解しやすい 記述から回路の動作が理 ❐ 難しい論理式を考えず動作に注目 ❐ 記述上の変数名を実際の素子や信号に合わせ てやるとその動作や構成が直感的に分かる 教材としてVHDL ❐ 高級言語 解しやすい 記述から回路の動作が理 ❐ 難しい論理式を考えず動作に注目 ❐ 記述上の変数名を実際の素子や信号に合わせ てやるとその動作や構成が直感的に分かる 教材としてVHDL ❐ 高級言語 解しやすい 記述から回路の動作が理 ❐ 難しい論理式を考えず動作に注目 ❐ 記述上の変数名を実際の素子や信号に合わせ てやるとその動作や構成が直感的に分かる CPUアーキテクチャと動作 CPUアーキテクチャと動作 HTML VHDLで設計した CPUのシミュレーション や論理合成 学生に分かりやすく説明 教材構成 前書き FPGAとは VHDLとは VHDLの基礎 HOME VHDLの応用例 演習問題 VHDLの演算子リスト VHDLシミュレーション とFPGAマニュアル CPUアーキテクチャ学習 ヘルプ ヘルプ 教材用回路作成 ❐ VHDL学習用教材 ❐ CPU設計とアーキテクチャ 学習用教材 各種論理回路と学習用CPU設計 教材用回路作成 ❐ VHDL学習用教材 ❐ CPU設計とアーキテクチャ 学習用教材 各種論理回路と学習用CPU設計 教材用回路作成 ❐ VHDL学習用教材 ❐ CPU設計とアーキテクチャ 学習用教材 各種論理回路と学習用CPU設計 教材用回路作成 ❐ VHDL学習用教材 ❐ CPU設計とアーキテクチャ 学習用教材 各種論理回路と学習用CPU設計 VHDL学習用教材 1.組み合わせ回路: 16ビット加減算器、4ビット比較器。 2.順序回路: D二安定回路、プッシュボタン回路、 2ビット16進カウンタ。 3.VHDL応用例: 60進カウンタ、自動販売機。 VHDL学習用教材 1.組み合わせ回路: 16ビット加減算器、4ビット比較器。 2.順序回路: D二安定回路、プッシュボタン回路、 2ビット16進カウンタ。 3.VHDL応用例: 60進カウンタ、自動販売機。 VHDL学習用教材 1.組み合わせ回路: 16ビット加減算器、4ビット比較器。 2.順序回路: D二安定回路、プッシュボタン回路、 2ビット16進カウンタ。 3.VHDL応用例: 60進カウンタ、自動販売機。 VHDL学習用教材 1.組み合わせ回路: 16ビット加減算器、4ビット比較器。 2.順序回路: D二安定回路、プッシュボタン回路、 2ビット16進カウンタ。 3.VHDL応用例: 60進カウンタ、自動販売機。 教材用CPUの仕様 ❐ 命令長:命令コード(4bit)+オペランド (12bit) OP(4) reserved(4 (1 reg2(3 (1 reg1(3) ) ) ) ) OP(4) Address or Immediate (12) ❐ アドレス長:12bit ❐データ長: 16bit ❐ レジスタ(16bit×8) 教材用CPUの仕様 ❐ 命令長:命令コード(4bit)+オペランド (12bit) OP(4) reserved(4 (1 reg2(3 (1 reg1(3) ) ) ) ) OP(4) Address or Immediate (12) ❐ アドレス長:12bit ❐データ長: 16bit ❐ レジスタ(16bit×8) 教材用CPUの仕様 ❐ 命令長:命令コード(4bit)+オペランド (12bit) OP(4) reserved(4 (1 reg2(3 (1 reg1(3) ) ) ) ) OP(4) Address or Immediate (12) ❐ アドレス長:12bit ❐データ長: 16bit ❐ レジスタ(16bit×8) 教材用CPUの仕様 ❐ 命令長:命令コード(4bit)+オペランド (12bit) OP(4) reserved(4 (1 reg2(3 (1 reg1(3) ) ) ) ) OP(4) Address or Immediate (12) ❐ アドレス長:12bit ❐データ長: 16bit ❐ レジスタ(16bit×8) 教材用CPUの仕様 ❐ 命令長:命令コード(4bit)+オペランド (12bit) OP(4) reserved(4 (1 reg2(3 (1 reg1(3) ) ) ) ) OP(4) Address or Immediate (12) ❐ アドレス長:12bit ❐データ長: 16bit ❐ レジスタ(16bit×8) 命令仕様 ❐ 16(24)個の命令 a. 転送命令 LD, ST ,MV, SET b.制御命令 JMP, JNZ,JPZ c.演算命令 ADD, SUB, AND, OR, XOR,NOT,SRL, SLL, NOP 命令仕様 ❐ 16(24)個の命令 a. 転送命令 LD, ST ,MV, SET b.制御命令 JMP, JNZ,JPZ c.演算命令 ADD, SUB, AND, OR, XOR,NOT,SRL, SLL, NOP 命令仕様 ❐ 16(24)個の命令 a. 転送命令 LD, ST ,MV, SET b.制御命令 JMP, JNZ,JPZ c.演算命令 ADD, SUB, AND, OR, XOR,NOT,SRL, SLL, NOP 命令仕様 ❐ 16(24)個の命令 a. 転送命令 LD, ST ,MV, SET b.制御命令 JMP, JNZ,JPZ c.演算命令 ADD, SUB, AND, OR, XOR,NOT,SRL, SLL, NOP CPU設計上工夫した点 ❐構造のわかり易さを最重視 ❐信号のやり取りとその順番の明確な表示 CPU設計上工夫した点 ❐構造のわかり易さを最重視 各コンポネントを独立に設計 [階層設計] ❐信号のやり取りとその順番の明確な表示 CPU設計上工夫した点 ❐構造のわかり易さを最重視 各コンポネントを独立に設計 [階層設計] その動作を個別に確認 ❐信号のやり取りとその順番の明確な表示 CPU設計上工夫した点 ❐構造のわかり易さを最重視 各コンポネントを独立に設計 [階層設計] その動作を個別に確認 ❐信号のやり取りとその順番の明確な表示 CPUの構成図 メモリ プログラムカウンタ 制御回路 命令レジスタ データレジスタ デコーダ 制御信号 フラッグレジスタ 演算とシフト データ又は アドレス 教材による学習の流れ 1.VHDLの学習 「 VHDL の 基 礎 」 ~ 「 演 習 問 題」 その他、 VHDL、ツール等の解説 2.CPUの各モジュールの動作と構成の 学習 3.CPU全体の構成の学習 4.シミュレーションによりCPU動作の 学習 教材による学習の流れ 1.VHDLの学習 「 VHDL の 基 礎 」 ~ 「 演 習 問 題」 その他、 VHDL、ツール等の解説 2.CPUの各モジュールの動作と構成の 学習 3.CPU全体の構成の学習 4.シミュレーションによりCPU動作の 学習 教材による学習の流れ 1.VHDLの学習 「 VHDL の 基 礎 」 ~ 「 演 習 問 題」 その他、 VHDL、ツール等の解説 2.CPUの各モジュールの動作と構成の 学習 3.CPU全体の構成の学習 4.シミュレーションによりCPU動作の 学習 教材による学習の流れ 1.VHDLの学習 「 VHDL の 基 礎 」 ~ 「 演 習 問 題」 その他、 VHDL、ツール等の解説 2.CPUの各モジュールの動作と構成の 学習 3.CPU全体の構成の学習 4.シミュレーションによりCPU動作の 学習 教材による学習の流れ 1.VHDLの学習 「 VHDL の 基 礎 」 ~ 「 演 習 問 題」 その他、 VHDL、ツール等の解説 2.CPUの各モジュールの動作と構成の 学習 3.CPU全体の構成の学習 4.シミュレーションによりCPU動作の 学習 まとめ シミュレーションと論理合成によって 1.CPUの各モジュールの a.入出力 b.動作 c.構成 の理解を助けることができる 2.CPU全体の a.回路構成の明示 b.命令実行サイクルの動作観察 c.信号とデータのやり取りの観察 により、理解を助けることができる 以上のような特徴をもつ学習支援ソフトを開発した まとめ シミュレーションと論理合成によって 1.CPUの各モジュールの a.入出力 b.動作 c.構成 の理解を助けることができる 2.CPU全体の a.回路構成の明示 b.命令実行サイクルの動作観察 c.信号とデータのやり取りの観察 により、理解を助けることができる 以上のような特徴をもつ学習支援ソフトを開発した まとめ シミュレーションと論理合成によって 1.CPUの各モジュールの a.入出力 b.動作 c.構成 の理解を助けることができる 2.CPU全体の a.回路構成の明示 b.命令実行サイクルの動作観察 c.信号とデータのやり取りの観察 により、理解を助けることができる 以上のような特徴をもつ学習支援ソフトを開発した まとめ シミュレーションと論理合成によって 1.CPUの各モジュールの a.入出力 b.動作 c.構成 の理解を助けることができる 2.CPU全体の a.回路構成の明示 b.命令実行サイクルの動作観察 c.信号とデータのやり取りの観察 により、理解を助けることができる 以上のような特徴をもつ学習支援ソフトを開発した 今後の課題 1.現在のメモリ部分はFPGAボードへ実装不可能 :インタフェース部を改良し、実部品で確認要 2. 乗算や多ビットシフト、ローテート等の命令 :モジュールを新たに設計し 接続とタイミング制御をやり直し 今後の課題 1.現在のメモリ部分はFPGAボードへ実装不可能 :インタフェース部を改良し、実部品で確認要 2. 乗算や多ビットシフト、ローテート等の命令 :モジュールを新たに設計し 接続とタイミング制御をやり直し 今後の課題 1.現在のメモリ部分はFPGAボードへ実装不可能 :インタフェース部を改良し、実部品で確認要 2. 乗算や多ビットシフト、ローテート等の命令 :モジュールを新たに設計し 接続とタイミング制御をやり直し 教材概要 (1)FPGAやVHDLの紹介、 (2)VHDL例題、 (3)合成ツールやFPGAの使い方、 (4)CPUアーキテクチャの学習。 教材概要 (1)FPGAやVHDLの紹介、 (2)VHDL例題、 (3)合成ツールやFPGAの使い方、 (4)CPUアーキテクチャの学習。 教材概要 (1)FPGAやVHDLの紹介、 (2)VHDL例題、 (3)合成ツールやFPGAの使い方、 (4)CPUアーキテクチャの学習。 教材概要 (1)FPGAやVHDLの紹介、 (2)VHDL例題、 (3)合成ツールやFPGAの使い方、 (4)CPUアーキテクチャの学習。 教材概要 (1)FPGAやVHDLの紹介、 (2)VHDL例題、 (3)合成ツールやFPGAの使い方、 (4)CPUアーキテクチャの学習。
© Copyright 2024 ExpyDoc