Microsoft PowerPoint - Sol7 [Compatibility Mode]

Similar documents
Microsoft PowerPoint - Chap5 [Compatibility Mode]

Microsoft PowerPoint - Chap4 [Compatibility Mode]

この方法では, 複数のアドレスが同じインデックスに対応づけられる可能性があるため, キャッシュラインのコピーと書き戻しが交互に起きる性のミスが発生する可能性がある. これを回避するために考案されたのが, 連想メモリアクセスができる形キャッシュである. この方式は, キャッシュに余裕がある限り主記憶の

6. パイプライン制御

Microsoft PowerPoint - Chap3 [Compatibility Mode]

ソフトウェア基礎技術研修

Microsoft PowerPoint - Chap2 [Compatibility Mode]

MIPSのマイクロアーキテクチャ

計算機アーキテクチャ

< B8CDD8AB B83685D>

スライド 1

スライド 1

スライド 1

Microsoft PowerPoint - Lec ppt [互換モード]

計算機アーキテクチャ

スライド 1

-2 外からみたプロセッサ GND VCC CLK A0 A1 A2 A3 A4 A A6 A7 A8 A9 A10 A11 A12 A13 A14 A1 A16 A17 A18 A19 D0 D1 D2 D3 D4 D D6 D7 D8 D9 D10 D11 D12 D13 D14 D1 MEMR

スライド 1

スライド 1

Microsoft PowerPoint - NxLecture ppt [互換モード]

コンピュータ工学Ⅰ

Microsoft PowerPoint - 11Web.pptx

Microsoft PowerPoint - NxLec ppt

ソフトウェア基礎技術研修

スライド 1

Microsoft PowerPoint - Lec pptx

コンピュータ工学Ⅰ

2ALU 以下はデータ幅 4ビットの ALU の例 加算, 減算,AND,OR の4つの演算を実行する 実際のプロセッサの ALU は, もっと多種類の演算が可能 リスト 7-2 ALU の VHDL 記述 M use IEEE.STD_LOGIC_1164.ALL; 00 : 加算 use IEE

講義計画 1. コンピュータの歴史 1 2. コンピュータの歴史 2 3. コンピュータの歴史 3 4. 論理回路と記憶, 計算 : レジスタとALU 5. 主記憶装置とALU, レジスタの制御 6. 命令セットアーキテクチャ 7. 演習問題 8. パイプライン処理 9. メモリ階層 : キャッシュ

ex04_2012.ppt

ディジタル回路 第1回 ガイダンス、CMOSの基本回路

スライド 1

Microsoft PowerPoint - 01-VerilogSetup-2019.pptx

hard5.pptx

Microsoft PowerPoint - 3.3タイミング制御.pptx

の 内 容 の 一 貫 性 )を 保 つために 用 いられるのが スヌープ キャッシュ 方 式 である. キャッシュメモリにおいて, 主 記 憶 のアドレスの 下 部 (インデックス)を 用 いてキャッシュメモリ 上 のインデックスを 求 める 方 法 を ダイレクトマッピング と 呼 ぶ.キャッシ

QuartusII SOPC_Builderで利用できるGPIF-AVALONブリッジとは?

1. ボードの複数台制御 コンフィグ ROM から FPGA が起動できる場合を想定しています FPGA 回路には 特定のレジスタアドレスにプリセットしたデータが必要です 製品出荷時のサンプル FPGA 回路では レジスタ No.3 を 8bit 幅に設定し FPGA 外部の 4bit ディップスイ

コンピュータの仕組み(1)ハードウェア

QuartusII SOPC_Builderで利用できるGPIF-AVALONブリッジとは?

命令セットの構成例 a) 算術 演算命令 例 )ADD dest, source : dest dest + source SUB dest, source : dest dest - source AND dest, source : dest dest AND source SHR reg, c

スライド 1

Microsoft Word - HW06K doc

DRAM SRAM SDRAM (Synchronous DRAM) DDR SDRAM (Double Data Rate SDRAM) DRAM 4 C Wikipedia 1.8 SRAM DRAM DRAM SRAM DRAM SRAM (256M 1G bit) (32 64M bit)

出 アーキテクチャ 誰が 出 装置を制御するのか 1

Microsoft PowerPoint - ProcML-12-3.ppt

Microsoft PowerPoint - CompArch_Exercise3.pptx

Microsoft PowerPoint - arc5

<4D F736F F D208AC888D B836A F C91808DEC837D836A B81698AC7979D8ED A E646F6

目次 1. はじめに 1 2. マルチALUプロセッサ MAP MAP の構成 MAP 命令セットアーキテクチャ 並列 連鎖判定のアルゴリズムについて 5 3. Booth 乗算のアルゴリズム 次 Booth アルゴリズム 次 Bo

PIC の書き込み解説 PICライターを使うときに間違った使い方を見受ける 書き込み失敗の原因は知識不足にある やってはいけないことをしている 単に失敗だけならまだしも部品を壊してしまう 正しい知識を身に着けよう 書き込みに必要なピンと意味 ICSPを意識した回路設計の必要性 ICSP:In Cir

スライド 1

ディジタル回路 第1回 ガイダンス、CMOSの基本回路

PowerPoint プレゼンテーション

修士論文 各種プロセッサアーキテクチャの設計に基づいた デザインパターンの検討 氏名 : 安倍厚志 学籍番号 : 指導教員 : 山崎勝弘教授 提出日 : 2011 年 2 月 14 日 立命館大学大学院理工学研究科創造理工学専攻

COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1

1) 書込 読出機器構成 KEYENCE KV-7500~MPC 接続 KV-7500 の PLC リンクモードを用いて MPC と通信します KV STUDIO Ver9 KV-7500 KV-XL202 Ref No:ti2K Last Modify バス接続ユニット

MIPSのマルチサイクル マイクロアーキテクチャ

スライド 1

Microsoft Word - ランチョンプレゼンテーション詳細.doc

PLCシリアル通信 MODBUS通信 データ送信/受信プログラム例

Microsoft PowerPoint - NxLec ppt

ソフトウェア基礎技術研修

スライド 1

問 2. タイミングチャート以下に示す VHDL コードで記述されている回路に関するタイミングチャートを完成させよ ) レジスタの動作 use IEEE.std_logic_64.all; entity RegN is generic (N : integer := 8 port ( CLK, EN

計算機アーキテクチャ特論 後半第2回 アウトオブオーダー実行 Out-of-Order Execution

PowerPoint プレゼンテーション

Microsoft PowerPoint - vlsi4.ppt [互換モード]

VLSI工学

サイボウズモバイル KUNAI Lite for Android マニュアル

PowerPoint プレゼンテーション

1 はじめに このアプリケーションは 計算機ハードウェア論 のアセンブリ言語 ( 超簡単命令セット ) の理解を助けるために製作されました 便宜的に機能を追加 削除した箇所があるため このアプリケーション上での動き方が実際のCPUでの動き方と異なる場合があることに留意してください このアプリケーショ

C に必要なコンピュータ知識 C はコンピュータの力を引き出せるように設計 コンピュータの知識が必要

- 1 -

%

ID010-2

2

CommCheckerManual_Ver.1.0_.doc

Microsoft PowerPoint - NxLec ppt

020105.メモリの高機能化

スライド 1

も 常に 2 つのコイルに電圧を印加する 2 層励磁方式や 1 つのコイルと 2 つのコイルに交互に電圧を印 2

SiTCP ユーティリティユーザガイド 2014 年 6 月 18 日 0.73 版 Bee Beans Technologies 1

スライド 1

PowerPoint プレゼンテーション

key

5-1_a-kanaoka_JPNICSecSemi_Phish_Tech_ _3.PDF


「東京こどもネット・ケータイヘルプデスク(こたエール)」平成22年度相談実績の概要


スライド 1

ターゲット項目の設定について

また RLF 命令は 図 2 示す様に RRF 命令とは逆に 各ビットを一つずつ 左方向に回転 ( ローテイト ) する命令である 8 ビット変数のアドレスを A とし C フラグに 0 を代入してから RLF A,1 を実行すると 変数の内容が 左に 1 ビットシフトし 最下位ビット (LSB)

Microsoft Word - マイコン実験 doc

untitled

untitled


untitled

Nios II - PIO を使用した I2C-Bus (2ワイヤ)マスタの実装

内容概要本論文では 割込みの目的や原理を理解するとともに ハード / ソフト協調学習システムを用いて割込みプロセッサを設計することで ハードウェアとソフトウェアの両方の観点から知識を得ることを目的とし Verilog HDL によるシングルサイクルの割込みプロセッサを設計した 設計したプロセッサは

Transcription:

ミニクイズ 4 E ハザード ( つ前の命令の結果を必要とする状況 ) が発生する条件を つ挙げよ. また それぞれの時に 制御線 ForwardA, ForwardB はどのように設定すれば良いか? ( 回答 ) E/.RegWrite= かつ E/.RegisterRd = ID/.RegisterRs この時,ForwardA = と制御すれば良い. E/.RegWrite= かつ E/.RegisterRd = ID/.Register この時,ForwardB = と制御すれば良い. ( 解説 ) E/.RegisterRd は, 今 ステージにある命令 ( 先行命令 ) の書き込みレジスタ番号 * 教科書には E/.RegisterRd も条件に書かれていますが, 本質でないので割愛します.

ミニクイズ 5 前ページのミニクイズ 4 の回答は, 実は不完全です. どのような場合に正しく動作しないか? そして, 正しい回答を示せ. ( 回答 ) E/.RegWrite= かつ E/.RegisterRd = ID/.RegisterRs に加えて, /E.RegisterRd ID/.RegisterRs この時,ForwardA = と制御すれば良い. E/.RegWrite= かつ E/.RegisterRd = ID/.Register に加えて, /E.RegisterRd ID/.Register この時,ForwardB = と制御すれば良い. ( 前ページのままではうまくいかない例 ) add $, $, $ add $, $, $3 3add $, $, $4 3 の実行時に, フォワードしないといけないのは, それとも どちらの結果でしょう? 4

重要問題 クロックサイクル で, 以下の命令列の最初の sub 命令のフェッチを開始するとする 最初に $=, $=, $3=3 であったとする それ以前の命令は全て無視することにする クロックサイクル,,3,4 のそれぞれの時刻に, 図 6.36 の回路の各結線の値とレジスタ $ の値を述べよまた,ALU の入力となっている が何を選択しているかも回答せよ. ( この問題の設定だけでは値が不明な結線は答える必要はない ) sub $, $, $3 #$に引き算の結果を格納 and $, $, $5 # 第 オペランドがsubに依存 or $3, $6, $ # 第 オペランドがsubに依存 add $4, $, $ # 第, オペランドがsubに依存 sw $5, ($) # インデックスがsubに依存

IF/IDWrite 重要問題 回答 clock= ハザード 検出ユニット ID/.emRead 現在の $= PCWrite and IF/ID 制御 sub ID/ /E E/ PC 命令メモリ 3 reg 書込 reg reg レジスタ IF/ID.RegisterRs IF/ID.Register IF/ID.RegisterRd 3 3 ForwardB Rd ALU ForwardA アドレス データメモリ データ /E.RegisterRd ID/.Register Rs フォワーディング ユニット E/.RegisterRd sub 命令は 番レジスタ 3 番レジスタから読み出し その値の と 3 は次のステージで使うためにパイプラインレジスタにいったん覚えられる IF/ID.Register の Rs,, Rd は sub 命令の rs, rt, rd フィールドで指定されたレジスタ番号で これがパイプラインレジスタを介して 次のステージに渡される

IF/IDWrite 重要問題 回答 clock= ハザード 検出ユニット ID/.emRead $5 の値は不明 現在の $= PCWrite or IF/ID 制御 and ID/ sub /E E/ PC 命令メモリ 5 reg 書込 reg reg レジスタ IF/ID.RegisterRs IF/ID.Register IF/ID.RegisterRd ID/.Register $5 5 3 3 Rs ALU ForwardA ForwardB Rd フォワーディング ユニット - アドレス データメモリ データ /E.RegisterRd E/.RegisterRd sub 命令は と 3 の引き算をして結果の - をパイプラインレジスタに保存 ALU の入力の は上下とも 番ポートを選択 Sub の書き込みレジスタの番号は rd で指定された 番であるため 一番下の は Rd の を選択して この情報は 書き込みレジスタ番号 (Rd) としてパイプラインレジスタを介して次の段に送られる

IF/IDWrite 重要問題 回答 clock=3 ハザード 検出ユニット ID/.emRead $6 の値は不明 現在の $= PCWrite add IF/ID 制御 or ID/ and /E sub E/ PC 命令メモリ 6 reg 書込 reg reg レジスタ IF/ID.RegisterRs IF/ID.Register IF/ID.RegisterRd ID/.Register $6 6 3 $5 5 - ALU ForwardA ForwardB Rd Rs フォワーディング ユニット - アドレス データメモリ データ /E.RegisterRd E/.RegisterRd sub 命令の結果の-は 次のステージで書き込むためにE/レジスタに書き込まれる また 番レジスタに書き込まないといけないが その の情報は 上記 /E.RegisterRdを通してパイプラインレジスタに書き込まれる ステージは ALUの上側の入力には $が来ないといけないが これはレジスタから読み出したではなく 先行命令の結果の-をフォワードしてくる そのため 上側のはポートを選択している フォワーディングユニットへの入力 Rs, /E.RegisterRdがともにで等しいため 上側のはポートを選択するようにForwardAを設定する 3

IF/IDWrite 重要問題 回答 clock=4 ハザード 検出ユニット ID/.emRead 現在の $=- ( このクロックの途中で - に更新され 新しい値が add 命令のために正しくパイプラインレジスタに保存される :Chap5 p 参照 ) PCWrite sw IF/ID 制御 add ID/ or /E and E/ sub PC 命令メモリ reg 書込 reg reg レジスタ IF/ID.RegisterRs IF/ID.Register IF/ID.RegisterRd ID/.Register - - 4 $6 6 - ALU ForwardA ForwardB Rd 3 Rs 3 フォワーディング ユニット アドレス データメモリ データ /E.RegisterRd E/.RegisterRd - sub 命令の結果の - は このステージでやっと書き込まれる レジスタを高速なものを使うようにしたので (Chap5 p 参照 ) このステージで書き込んだと同時にステージの後半では その新しい - という値はレジスタの読み出しポートに出てくる ( 上図はその様子 ) そのため add 命令の ID ステージの最後には正しく読み出せて パイプラインレジスタには - が書き込まれる ステージは ALU の下側の入力には clock=4 で読み出した $ の値ではなく E/ レジスタから適切にフォワードされた sub の結果の - が選ばれるように は設定される 4

章末問題 の回答その 単一サイクルの 命令の実行時間 +5+++5 = 7ps ( 命令フェッチ + レジスタ読み出し +ALU+ メモリアクセス + レジスタ書き込みの時間 ) マルチサイクルの クロックは 各ステップのうち時間が一番長いものにあわせないといけないので ps となる また ロード (5%) は 5 サイクルストア (%) は 4 サイクル分岐 (%) は 3 サイクルジャンプ (%) は 3 サイクル ALU 命令 (5%) は 4 サイクルそれぞれかかるので 命令にかかるサイクル数は平均で 5x.5 + 4 x. + 3x. + 3x. + 4 x.5 = 4. サイクルである そのため 命令にかかる平均時間は x4.=84ps 5

章末問題 の回答その パイプラインの クロックは マルチサイクル同様 ps 基本的に平均すると クロックで 命令の処理が終わる しかし ハザードで以下の場合は余分なクロックがかかる. lw 命令の半分はその結果を使用する命令が直後に続く クロックストール. ジャンプ命令, 分岐命令の予測が外れた場合は,3 クロック分ストールする ( 講義で行った単純な方式 ) とする. ロード全体の半分なので 5/ =.5% の命令は余分に クロックかかる ジャンプ命令は その後余分に 3 クロックかかり それは全体の % 分岐命令のうち /4 は予測に失敗して そのとき余分に 3 クロックかかる そのような命令の割合は 全体の /4=.75 % 以上を考えると 平均 クロックでは命令は終了せず 全体の平均では x.5 + 3 x. + 3 x.75 =.675 つまり 命令にかかるクロック数は平均で.675 クロックのため そのため 命令にかかる平均時間は x.675 = 53.5 ps と他の方式の 倍以上早いことになります 6