マイクロプロセッサ応用(1) - 坂井修一研究室

Download Report

Transcript マイクロプロセッサ応用(1) - 坂井修一研究室

工学部講義
マイクロプロセッサ応用(1)
坂井
修一
東京大学 大学院 情報理工学系研究科 電子情報学専攻
東京大学 工学部 電気工学科
• はじめに
• 講義概要
• マイクロプロセッサのモデル
•フォンノイマン計算機とその動作
• 命令セットと機械語
マイクロプロセッサ応用
東大・坂井
はじめに

本講義の目的
– マイクロプロセッサのハード・ソフトの基本を実践的に学習する
– 前半:講義
• 坂井 (ソフトの基本:機械語プログラミング)
• 三田先生(ハードの基本)
– 後半:実習


時間・場所:火曜日 8:30 - 10:00、3-31
ホームページ(坂井分:ダウンロード可能)
– url: http://www.mtl.t.u-tokyo.ac.jp/~sakai/micro/

教科書・参考書
– Patterson and Hennessy: Computer Organization and Design:The Hardware/Software
Interface 2nd Ed. (邦訳 「コンピュータの構成と設計」(第2版)日経BP)
マイクロプロセッサ応用
東大・坂井
講義の概要と予定(坂井分)
1.マイクロプロセッサのモデルと命令
はじめに、プロセッサのモデル、命令とは何か、命令セット、命令
型式、フォンノイマン計算機とその動作、機械語とアセンブリ言語
2.命令とプログラム
RISCとCISC、算術論理演算命令、データ移動命令、ジャンプと
ブランチ、スタック、サブルーチンコール
3.アドレス指定方式
4.入出力、例外処理等
5.課題出題:
2月15日: 坂井分課題レポート提出期限(仮)
マイクロプロセッサ応用
東大・坂井
利用する設備、成績など

設備
– 実験用ボード:一人一台を貸し出す:TAが担当
– PC: 個人用の計算機(+貸し出し)

成績
– プログラミング+レポート(坂井分)
• 出題:11月26日予定
• 提出期限:2月15日
– 実作+レポート(三田先生)
マイクロプロセッサ応用
東大・坂井
TAなど

TA
– 岡部淳君(電子情報学大学院生)が担当
– Mail address : [email protected]

坂井連絡先: [email protected]
http://www.mtl.t.u-tokyo.ac.jp/~sakai/
マイクロプロセッサ応用
東大・坂井
1.マイクロプロセッサのモデルと命令

マイクロプロセッサ
– VLSI上に実装されたコンピュータ
マ
イ
ク
ロ
プ
ロ
セ
ッ
サ
演算実行部
(ALU)
マイクロプロセッサ応用
レジスタ群
メモリ
東大・坂井
1.1 マイクロプロセッサの基本動作

データ移動
–
–
–
–
マ
イ
ク
ロ
プ
ロ
セ
ッ
サ
レジスタ ← メモリ: 読み出し
メモリ ← レジスタ: 書き込み
レジスタ ←→ 入出力装置
メモリ ←→ 入出力装置
演算実行部
(ALU)
マイクロプロセッサ応用
レジスタ群
メモリ
東大・坂井
マイクロプロセッサの基本動作(続き)

算術演算
– 加減乗除

論理演算
– AND, OR, NOT, Shift…

分岐命令
– 無条件ジャンプ、 条件分岐
マ
イ
ク
ロ
プ
ロ
セ
ッ
サ
演算実行部
(ALU)
マイクロプロセッサ応用
レジスタ群
メモリ
東大・坂井
1.2 命令

命令(instruction)
–

計算機の基本動作を指示するもの
命令セット(instruction set)
– 命令の集合

命令形式(instruction format)
– 命令を表現する形式。2進数で表現する

計算機とは何か?
– 「命令を次々に解釈実行する機械」
マイクロプロセッサ応用
東大・坂井
1.3 フォンノイマン計算機の動作

フォンノイマン計算機
–
定義
•
機械語のプログラムがデータと同じようにメモリに格納され
ている計算機
–
–
プログラムカウンタ(PC)
•

機械語プログラム: 命令の列
命令の格納されている番地を格納しているレジスタ
フォンノイマン計算機の動作
1.
2.
3.
4.
PCの指す命令を読み出す
命令を解釈する
命令を実行する
結果を格納し、PCの値を更新する(通常PC =
PC+1)

計算機はフォンノイマン型である必要はないが、現在
の商用計算機はすべてこの型である
東大・坂井
マイクロプロセッサ応用
1.4 命令形式
MIPS(RISC型計算機の典型:次回解説)の命令形式
– R型:
OP
rs
rt
• 算術命令:rd <- rs op rt
はシフト量)
– I型:
OP
rs
rt
rd
shamt
func
(funcは実行細則。shamt
address/immediate
• データ転送命令: rt <- (rs + address)等
• 即値命令: rt <- rs op immediate等
• 分岐命令: if (rt <=> rs) then PC = PC + address等
– J型:
•
OP
target address
PC = target address等
マイクロプロセッサ応用
東大・坂井
1.5 言語とソフトウェア
応用プログラマ
応用プログラム
プログラム言語
コンパイラ
アセンブラプログラム
アセンブリ言語
アセンブラ
機械語プログラム
機械語
ローダ
ハードウェア
マイクロプロセッサ応用
東大・坂井
アセンブリ言語とアセンブラ、ローダ

アセンブリ言語
– 機械語を人間に読みやすい形になおした言語
• add rd rs rt,

ld rt rs など
アセンブラ
– アセンブリ言語で書かれたプログラムを機械
語に翻訳するプログラム

ローダ
– 機械語を実際に実行する形式に修正するプロ
グラム(アドレスの付け替えなどを行う)
マイクロプロセッサ応用
東大・坂井