詳細目次
第1章 コンピュータアーキテクチャとMIPSの構成,命令の動作
1節 マイクロプロセッサの歴史と身近な組込みプロセッサ
◇コンピュータアーキテクチャ
◇4004からのマイコンの歴史
◇マイクロプロセッサの技術
◇CISCとRISCの方式
◇コンピュータの基本原理
◇メモリアーキテクチャ
◇代表的なマイクロプロセッサ
◇PIC,dsPICアーキテクチャ
◇ゲーム機のマイクロプロセッサ
◇ARM,MIPSアーキテクチャ
2節 MIPSプロセッサのレジスタ構成と命令セット
◇MIPSプロセッサの構成
◇レジスタの構成
◇メモリのアドレス
◇メモリの階層構造
◇命令のタイプ
◇基本命令
◇命令セットRタイプ
◇命令セットIタイプ
◇命令セットJタイプ
◇その他のアセンブリ言語
3節 MIPSの構成部品と代表的な命令の動作
◇MIPSの構成部品
◇1クロックの動作
◇ステージの処理
◇命令フェッチの処理
◇命令の動作(add)
◇命令の動作(addi)
◇命令の動作(lw)
◇命令の動作(sw)
◇命令の動作(beq, j)
◇制御信号
4節 サブルーチンコールの原理とMIPS命令による実現
◇サブルーチンコール
◇サブルーチンの原理
◇サブルーチンの命令
◇サブルーチンの例
◇命令の動作(jal, jr)
◇制御信号(分岐関連)
◇レジスタの退避(スタック)
◇局所変数(フレーム)
◇サブルーチンの実行とメモリ
◇コンパイラの最適化
5節 パイプライン処理の特徴と割込み処理の活用
◇パイプライン処理
◇ハザード(障害)
◇ストール,フラッシュ
◇フォワーディング
◇分岐予測
◇パイプライン処理の効果
◇割込みの処理
◇割込みの動作
◇マルチタスクの概念
◇マルチタスクの処理
VHDLのまとめ①
第2章 MIPSシミュレータSPIMによるアセンブリ言語の活用
1節 SPIMシミュレータとアセンブリ言語の基礎
◇SPIMの概要
◇SPIMの仕様
◇PCSpimの操作
◇PCSpimの画面
◇スタートアップ
◇main関数の引数
◇アセンブリ言語の規則
◇擬似命令(1)
◇基本命令の記述
◇レジスタの用途
2節 アセンブリ言語によるアルゴリズム記述
◇加算処理
◇マクロ命令
◇変数とポインタ
◇変数とポインタの例
◇配列の合計
◇配列の合計の例
◇繰返しループ(for)
◇繰返しループ(for)の例
◇繰返しループ(while)
◇繰返しループ(while)の例
3節 メモリの利用とサブルーチンの動作
◇メモリセグメント
◇サブルーチンの戻り番地
◇サブルーチンの引数
◇スタックポインタの例
◇フレームポインタの例
◇スタックフレームのまとめ
◇メモリのバイト順
◇エンディアンの例
◇追加命令一覧(1)
◇乗算・除算・転送命令
4節 再帰呼出しと浮動小数点演算
◇再帰呼出し
◇階乗計算のメイン処理
◇階乗計算1
◇階乗計算2
◇追加命令一覧(2)
◇条件分岐命令
◇浮動小数点規格(IEEE754)
◇追加命令一覧(3)
◇浮動小数点(単精度)の例
◇浮動小数点(倍精度)の例
5節 システムコールと例外処理,割込み処理
◇システムコール
◇擬似命令(2)
◇文字列の出力
◇整数の入出力
◇例外処理の種類
◇例外処理の例
◇割込み関連レジスタ
◇割込み処理の例
◇追加命令一覧(4)
◇アセンブリ言語の必要性
VHDLのまとめ②
第3章 VHDLによるMIPSノンパイプラインの設計と命令の拡張
1節 ハードウェア設計のためのVHDL記述と構造
◇ハードウェア設計
◇やわらかいハードウェア
◇ハードウェア記述言語
◇半加算器の記述例
◇VHDL記述(1)
◇VHDL記述(2)
◇階層構造設計(1)
◇階層構造設計(2)
◇テストベンチ(1)
◇テストベンチ(2)
2節 コンピュータの構成部品とVHDLによる設計
◇コンピュータの構成
◇ALUの設計
◇セレクタの設計
◇レジスタの設計
◇メモリの設計
◇VHDLによる設計
◇データパス部
◇完全同期回路設計
◇制御部
◇制御回路
3節 MIPSノンパイプラインの制御とマイクロプログラム制御信号
◇MIPSノンパイプライン設計
◇マイクロプログラム制御
◇命令の制御信号(R, I)
◇命令の制御信号(I, J, R)
◇IFステージの制御信号
◇IDステージの制御信号
◇EXステージの制御信号
◇MEMステージの制御信号
◇WBステージの制御信号
◇制御回路のVHDL設計
4節 MIPSのIF部,ID部のVHDL設計
◇MIPSのVHDL設計
◇マイクロプログラムの制御信号
◇IF部の処理
◇IF部のVHDL設計(1)
◇IF部のVHDL設計(2)
◇IF部のVHDL設計(3)
◇ID部の処理
◇ID部のVHDL設計(1)
◇ID部のVHDL設計(2)
◇ID部のVHDL設計(3)
5節 MIPSのEX部,MEM部,WB部のVHDL設計
◇EX部の処理
◇EX部のVHDL設計
◇MEM部の処理
◇MEM部のVHDL設計
◇WB部の処理
◇WB部のVHDL設計
◇テストプログラム
◇FPGAへの実装
◇実際の命令コード
◇命令の拡張
VHDLのまとめ③
第4章 VHDLによるMIPSパイプラインの設計と高速化技術
1節 MIPSパイプライン処理とハザード対策
◇MIPSパイプライン設計
◇パイプライン処理
◇パイプラインレジスタの構成
◇パイプラインレジスタの動作
◇パイプライン処理の例
◇パイプラインハザード
◇データハザードの例
◇データハザードの対策
◇制御ハザードの例
◇制御ハザードの対策
2節 パイプラインレジスタとパイプライン処理
◇パイプラインレジスタの情報
◇IF部のパイプライン処理
◇ID部のパイプライン処理
◇IF/ID部のパイプライン仕様
◇EX部のパイプライ処理
◇EX部のパイプライン仕様
◇MEM部のパイプライン処理
◇MEM部のパイプライン仕様
◇WB部のパイプライン仕様
◇パイプラインレジスタPR
3節 パイプライン設計とVHDL記述
◇IF部のパイプライン設計
◇IF部のパイプライン記述
◇ID部のパイプライン設計
◇ID部のパイプライン記述
◇EX部のパイプライン設計
◇EX部のパイプライン記述
◇MEM部のパイプライン設計
◇MEM部のパイプライン記述
◇WB部のパイプライン設計
◇WB部のパイプライン記述
4節 ハザード検出とハードウェアによる対策方法
◇MIPSパイプライン記述
◇テスト命令(パイプライン)
◇データハザード検出
◇ストール,フラッシュの方法
◇フォワーディングの例
◇フォワーディングのパス
◇フォワーディング(1)
◇フォワーディング(2)
◇分岐予測
◇分岐履歴情報
5節 マイクロプロセッサの高速化技術
◇キャッシュメモリ
◇キャッシュ書込み方式
◇仮想記憶
◇仮想記憶の原理
◇MMU
◇TLBの構造
◇スーパーパイプライン
◇スーパースカラ
◇マルチプロセッサ
◇ソフトコアプロセッサ
VHDLのまとめ④
付録 MIPS設計のVHDL記述
参考文献
あとがき