新・標準プログラマーズライブラリシリーズ新・標準プログラマーズライブラリ
RISC-Vで学ぶコンピュータアーキテクチャ 完全入門

[表紙]新・標準プログラマーズライブラリ RISC-Vで学ぶコンピュータアーキテクチャ 完全入門

紙版発売
電子版発売

B5変形判/320ページ

定価3,300円(本体3,000円+税10%)

ISBN 978-4-297-14008-3

電子版

→学校・法人一括購入ご検討の皆様へ

書籍の概要

この本の概要

コンピュータアーキテクチャとは,より良いコンピュータの構成を模索し,設計し,実現するための方式です。学習には,重要概念の理解とハードウェアの設計,実装,そのシミュレーションによる動作確認と性能評価,また,FPGAなどにハードウェアを実装し,動作・検証・性能確認することが大切です。本書は,これらを通じてコンピュータアーキテクチャの本質を学ぶことを目指します。特に,オープンな命令セットアーキテクチャとして注目されているRISC-Vの採用,Verilog HDLによるハードウェアの記述,FPGAによるハードウェア動作まで,広い範囲を扱っている点が特徴です。

こんな方におすすめ

  • コンピュータアーキテクチャの初学者および再入門者
  • コンピュータサイエンスをしっかり身につけたい学生の方
  • RISC-Vの入門者

本書のサンプル

本書の紙面イメージは次のとおりです。画像をクリックすることで拡大して確認することができます。

サンプル画像1

サンプル画像2

サンプル画像3

サンプル画像4

サンプル画像5

目次

第1章 イントロダクション

  • 1-1 コンピュータの基本構成
  • 1-2 コンピュータの性能
  • 1-3 特定用途向け半導体とFPGA

第2章 ディジタル回路の基礎

  • 2-1 組み合わせ回路
  • 2-2 順序回路
  • 2-3 やわらかいハードウェアとしてのFPGA

第3章 ハードウェア記述言語Verilog HDL

  • 3-1 ANDゲートのモジュール記述
  • 3-2 記述したモジュールのインスタンス化とシミュレーション
  • 3-3 文字列を表示するシステムタスク$display
  • 3-4 ブロックの指定
  • 3-5 指定した時間が経過するまで待たせる命令#
  • 3-6 システムタスク$finishと$time
  • 3-7 不定値xとハイインピーダンスz
  • 3-8 複数本の信号線,数値の表現,default_nettype
  • 3-9 三項演算子とマルチプレクサ
  • 3-10 ビット選択
  • 3-11 ビットの連結と複製
  • 3-12 論理演算子と算術演算子
  • 3-13 関係演算子
  • 3-14 論理シフト,算術シフトの演算子
  • 3-15 リダクション演算子
  • 3-16 if文とcase文
  • 3-17 クロック信号とカウンタ回路
  • 3-18 シフトレジスタと波形ビューア
  • 3-19 一定の間隔で生じる動作の記述とdefine文
  • 3-20 ランダムアクセスメモリ(RAM)とinclude文
  • 3-21 いくつかの代入の違い

第4章 RISC-V命令セットアーキテクチャ

  • 4-1 RISC-V RV32I命令セットアーキテクチャの概要
  • 4-2 データ形式,負の整数の表現
  • 4-3 命令形式
  • 4-4 R形式の算術演算命令,論理演算命令,シフト命令
  • 4-5 I形式の算術演算命令,論理演算命令,シフト命令
  • 4-6 ロード命令,ストア命令,エンディアンと整列
  • 4-7 条件分岐命令とプログラムカウンタ
  • 4-8 lui,auipc,jal,jalr命令とその他の命令

第5章 単一サイクルのプロセッサ

  • 5-1 単一サイクルのプロセッサの設計方針
  • 5-2 最初の版のプロセッサを設計するための構成要素
  • 5-3 add命令を処理するx1のみの単一サイクルのプロセッサ
  • 5-4 add命令を処理する単一サイクルのプロセッサ
  • 5-5 addとaddi命令を処理する単一サイクルのプロセッサ
  • 5-6 add,addi,lw,sw命令を処理する単一サイクルのプロセッサ
  • 5-7 add,addi,lw,sw,bne命令を処理する単一サイクルのプロセッサ
  • 5-8 シミュレーションの工夫と例題

第6章 プロセッサの高性能化の手法

  • 6-1 回路の動作周波数とパイプライン処理
  • 6-2 パイプライン処理(2段)のプロセッサの設計と実装
  • 6-3 パイプライン処理(3段)のプロセッサの設計と実装
  • 6-4 パイプライン処理(4段)のプロセッサの設計と実装
  • 6-5 パイプライン処理のプロセッサと同期式メモリ
  • 6-6 パイプライン処理(5段)のプロセッサの設計と実装
  • 6-7 ここまでのプロセッサの性能

第7章 分岐予測

  • 7-1 分岐予測の枠組み
  • 7-2 分岐先バッファ
  • 7-3 分岐の成立/不成立の予測
  • 7-4 bimodal分岐予測
  • 7-5 gshare分岐予測

第8章 キャッシュメモリ

  • 8-1 メインメモリとキャッシュ
  • 8-2 容量が大きくて遅いメモリ
  • 8-3 プロセッサのストール
  • 8-4 ダイレクトマップ方式のキャッシュメモリ
  • 8-5 マルチワードのダイレクトマップ方式のキャッシュメモリ
  • 8-6 セットアソシアティブ方式のキャッシュメモリ
  • 8-7 データキャッシュ

第9章 FPGA評価ボードを利用した動作の確認

  • 9-1 ファイルの準備
  • 9-2 Vivadoで論理合成,配置・配線してFPGAで動作確認

著者プロフィール

吉瀬謙二(きせけんじ)

東京工業大学教授。アダプティブコンピューティング研究推進体の代表,ACRiブログの編集長を務める。コンピュータアーキテクチャとFPGAシステムの研究と教育に従事している。