吉田/日誌/2009-04-15
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[吉田>吉田]]/[[日誌>吉田/日誌]]
&size(18){春眠暁を過ぎても。};
「百回連続でひゃっくりすると死ぬ」って寓話がありますが、~
「百回連続であくびすると……」どうなんでしょう?(さぁねぇ
昨日から唐突に寒いねぇ寒いわ。~
花見的には眺められればいい&葉桜も好きだから個人的には問題ないケド。~
> 明日は昼から校庭で花見をするらしい。~
・現状課題(2009/04/14 22:43)
-授業予習。
-輪講資料。
・今日の何か。~
--まだ痛い。~
昨日の続き。不明分は明日にでも訊こう、~
''1.3 - コンピューター・アーキテクチャの定義''
-コンピュータ設計者が直面しているタスクは以下の混ざり合った複雑なもの。
--新しい設計にどんな仕様が必要であるかの決定。
--設計において、コスト、パワー、有用性を保ちつつ最大の性能を得ること。
-このタスクには次のような多くの課題がある
--命令セットの設計
--専門の組織(?
--論理設計および''実現''
-この実現には以下も含むかもしれない。
--集積回路設計
--パッケージ(規格と訳すのだろうか
--パワー(前で言ってるじゃないか
--回路の冷却
-デザインを最適化するのには非常に広範囲の技能を必要とする
--コンパイラ
--OS
--論理設計
--パッケージ
=命令セットアーキテクチャ=
-この本では命令セットを可視的に示すのに、インストラクション・セット・アーキテクチャ(ISA)を使用している
-ISAはソフトウェアとハードウェアの中間として機能する
-ここでは、ISAの7つのdimension(どう訳そうか)を説明するために、例としてMIPSと80×86を使用する
++ISAのクラス(分類か
---今日、ほとんどのISAが汎用レジスタ構造として分類される(汎用レジスタ構造>オペランドはレジスタか記憶域のどちらか)
---80x86が汎用レジスタと浮動小数点用レジスタを各16個ずつ持っているのに対し、
---MIPSはそれぞれ32個ずつ持っている(図1.4に汎用レジスタの用途を示す)
---ISAのポピュラーなクラスとしてregister-memory方式とload-store方式がある
---register-memory方式は多くの命令でメモリアクセスが可能で、80x86などが採用している
---load-store方式ではメモリにアクセスできるのはロード・ストア命令のみで、MIPSなどが採用している
---最近のものはほぼ全てload-store方式である
++メモリ・アドレッシング
---80×86やMIPSを含むほぼ全てのデスクトップ、サーバー・コンピュータは、メモリオペランドにアクセスするのにバイト単位アドレシングを使用する
---MIPSのような幾つかのアーキテクチャはオブジェクトが連続していることが必要です(? 後で再訳
---サイズsバイト、アドレスAのオブジェクトへのアクセスが「A mod s = 0」の時に配置される(? 再訳
---80×86はオブジェクトの整列を必要としないが、一般的にオペランドが並んでいるほうがアクセスはより速い
++アドレッシング・モード
---アドレッシング・モードはレジスタと一定のオペランドを指定することに加えて、メモリオブジェクトのアドレスを指定する
---MIPSのアドレッシング・モードは、レジスタと即値、そしてメモリアドレス算出のためレジスタに加算される即値オフセットであるディスプレース(定数値)がある(? はて、)
---80x86hはアドレッシング・モードを3個+定数値使用の3個(計6個)をサポートしている~
・1、レジスタ未使用、つまりアドレス値直接入力か(絶対アドレス方式)~
・2、レジスタ2個使用(ベースレジスタ値とインデックスレジスタ値と定数値を加算。?再訳。相対アドレス方式?)~
・3、レジスタ2個のうちの1つにオペランドのデータサイズを掛けたものと定数値を全て加算(インデックス付きアドレス・レジスタ間接モードとかあった)~
---残りの3つは定数値を使わないもので、レジスタ間接、インデックスレジスタ、レジスタ間接・インデックス付き、となる
++オペランドのタイプと大きさ(素直にサイズか
---ほとんどのISAの様に、MIPSや80×86は次のオペランドサイズをサポートする~
(MIPSや80×86を含むほとんどのISAがサポートしているオペランドサイズ)~
・8bit(ASCII文字)、~
・16bit(Unicode文字かハーフワード)、~
・32-bit(INT型整数かワード)、~
・64-bit(ダブルワードかLONG型整数)、~
---上に加えて以下のIEEE754浮動小数点型をサポートする~
・32bit(単精度)、~
・64bit(倍精度)、~
---80x86は80bitの浮動小数点型(拡張倍精度)もサポートする
++オペレーション(演算、か?
---オペレーションの一般的なカテゴリは、データ転送、論理演算、制御(次で述べる)、そして浮動小数点を扱うものである(微妙
---MIPSは単純でパイプライン化しやすい酩酊セット構造であり、2006年におけるRISCアーキテクチャの代表である
---80x86はより高価で大きなオペレーション・セットを持っている(別に命令セットでいいか?
++移行制御用命令
---80x86やMIPSを含むほぼ全てのISAが、条件分岐、無条件ジャンプ、関数コール及びリターンをサポートしている
---80x86、MIPSの両方がPC相対アドレス指定方式を用いている~
これは、分岐先アドレスをPCとアドレス・フィールドの和によって指定するものである~
---80x86とMIPSでは幾つか小さい違いがある~
・MIPSの条件分岐命令(BE,BNE,など)はレジスタの内容によって分岐判定する、~
・80×86の条件分岐(JE,JNE,など)では算術/論理演算の副作用としてセットされる条件コードビットによって判定する~
さらに、~
・MIPSの関数コール(JAL)時は戻りアドレス値をレジスタに格納する~
・80x86の関数コール(CALLF)時は戻りアドレス値をメモリのスタックに格納する~
++命令のエンコーディング
---エンコーディングには基本的に固定長と可変長の2種類がある
---MIPSの全ての命令はデコード簡略のため32bitに統一してある(固定長)
---80x86のエンコーディングは1bitから18bitの可変長
---可変長命令は固定長命令に比べてより少ないコード量で済む(スキマ無く詰められる)~
(だからx86用にコンパイルしたコードは同じものをMIPS用にコンパイルしたものより小さい)
---前述の方法により命令がどのようにして2進数表記されるのかには注意が必要
---レジスタ数とアドレッシング・モードの数はどちらも命令長に密接に関わる~
・レジスタ領域とアドレッシング・モード領域が1命令内に何度も現れることが出来るため(? 再訳
-命令セット間の違いが小さく、汎用化されている現在、ISAデザインを超えるコンピュータ設計への挑戦が特に盛んである~
(異なる応用分野がある == 汎用化 ? 是 : 非)~
(ISAデザインを超える、では無く、ISAデザインにおける、ではないか)~
-(この版ではISAの例としてMIPS64のサブセットを用いる)
=コンピュータ・アーキテクチャの基礎=~
(目標と機能要求を満たすよう構成とハードウェアを設計する)
-コンピュータの設計には、2つの要素がある: 構成とハードウェア
-「構成」にはコンピュータ設計のハイレベルな面を含む
--メモリ・システム
--メモリの相互接続
--内部プロセッサやCPUの設計
---CPU(中央演算処理装置):算術、論理、分岐演算およびデータ転送を実装
-AMD Opteron64 と Intel Pentium4
--同じ命令セットながら非常に異なった構成を持つ
--両方ともx86命令セットを使用
--パイプラインとキャッシュの実装方式が非常に異なる
-ハードウェアは、コンピューターの詳細(核心?)に関わる
-大体の場合コンピュータの系統(?)は同じ命令セットを持ち似通った構成をしているが、ハードウェアの詳細な実装時には異なる
--例としてPentium4とModeile Pentium4はほぼ同じだがクロックレートやメモリシステムが異なる~
(Modeile Pentium4は低性能のマシンで力を発揮する)(?~
-(この本では「アーキテクチャ」とは、コンピュータ設計の3つの面:命令セットアーキテクチャ、構成、およびハードウェアを全て含むものとする)
-コンピュータ設計者は要求される機能はもちろん、価格、パワー、性能、および有用性を満たすよう設計する必要がある
-設計者はその時々で要求機能が何で、主タスクが何かを選択しなければならない
-要求される機能は市場の需要により特化する
-コンピュータの使用目的によってアプリケーション・ソフトは確定した要求性能を揺るがせる(?
-ソフトウェアの大半がある命令セット構造を元にするなら設計者は新しいコンピュータが既存の命令セットを実装するはずだと判断するかもしれない
-特定用途のアプリケーション市場の存在は設計者に(それを)必要要件に組み入れさせるかも知れない(詳細は後に)(? 微妙
-設計者は技術とコンピュータ使用の双方で将来的コストとアーキテクチャの限界に影響する重要な動向を知っている必要がある(??
-
#comment
__________________________________________________________________________________
#comment
終了行:
[[吉田>吉田]]/[[日誌>吉田/日誌]]
&size(18){春眠暁を過ぎても。};
「百回連続でひゃっくりすると死ぬ」って寓話がありますが、~
「百回連続であくびすると……」どうなんでしょう?(さぁねぇ
昨日から唐突に寒いねぇ寒いわ。~
花見的には眺められればいい&葉桜も好きだから個人的には問題ないケド。~
> 明日は昼から校庭で花見をするらしい。~
・現状課題(2009/04/14 22:43)
-授業予習。
-輪講資料。
・今日の何か。~
--まだ痛い。~
昨日の続き。不明分は明日にでも訊こう、~
''1.3 - コンピューター・アーキテクチャの定義''
-コンピュータ設計者が直面しているタスクは以下の混ざり合った複雑なもの。
--新しい設計にどんな仕様が必要であるかの決定。
--設計において、コスト、パワー、有用性を保ちつつ最大の性能を得ること。
-このタスクには次のような多くの課題がある
--命令セットの設計
--専門の組織(?
--論理設計および''実現''
-この実現には以下も含むかもしれない。
--集積回路設計
--パッケージ(規格と訳すのだろうか
--パワー(前で言ってるじゃないか
--回路の冷却
-デザインを最適化するのには非常に広範囲の技能を必要とする
--コンパイラ
--OS
--論理設計
--パッケージ
=命令セットアーキテクチャ=
-この本では命令セットを可視的に示すのに、インストラクション・セット・アーキテクチャ(ISA)を使用している
-ISAはソフトウェアとハードウェアの中間として機能する
-ここでは、ISAの7つのdimension(どう訳そうか)を説明するために、例としてMIPSと80×86を使用する
++ISAのクラス(分類か
---今日、ほとんどのISAが汎用レジスタ構造として分類される(汎用レジスタ構造>オペランドはレジスタか記憶域のどちらか)
---80x86が汎用レジスタと浮動小数点用レジスタを各16個ずつ持っているのに対し、
---MIPSはそれぞれ32個ずつ持っている(図1.4に汎用レジスタの用途を示す)
---ISAのポピュラーなクラスとしてregister-memory方式とload-store方式がある
---register-memory方式は多くの命令でメモリアクセスが可能で、80x86などが採用している
---load-store方式ではメモリにアクセスできるのはロード・ストア命令のみで、MIPSなどが採用している
---最近のものはほぼ全てload-store方式である
++メモリ・アドレッシング
---80×86やMIPSを含むほぼ全てのデスクトップ、サーバー・コンピュータは、メモリオペランドにアクセスするのにバイト単位アドレシングを使用する
---MIPSのような幾つかのアーキテクチャはオブジェクトが連続していることが必要です(? 後で再訳
---サイズsバイト、アドレスAのオブジェクトへのアクセスが「A mod s = 0」の時に配置される(? 再訳
---80×86はオブジェクトの整列を必要としないが、一般的にオペランドが並んでいるほうがアクセスはより速い
++アドレッシング・モード
---アドレッシング・モードはレジスタと一定のオペランドを指定することに加えて、メモリオブジェクトのアドレスを指定する
---MIPSのアドレッシング・モードは、レジスタと即値、そしてメモリアドレス算出のためレジスタに加算される即値オフセットであるディスプレース(定数値)がある(? はて、)
---80x86hはアドレッシング・モードを3個+定数値使用の3個(計6個)をサポートしている~
・1、レジスタ未使用、つまりアドレス値直接入力か(絶対アドレス方式)~
・2、レジスタ2個使用(ベースレジスタ値とインデックスレジスタ値と定数値を加算。?再訳。相対アドレス方式?)~
・3、レジスタ2個のうちの1つにオペランドのデータサイズを掛けたものと定数値を全て加算(インデックス付きアドレス・レジスタ間接モードとかあった)~
---残りの3つは定数値を使わないもので、レジスタ間接、インデックスレジスタ、レジスタ間接・インデックス付き、となる
++オペランドのタイプと大きさ(素直にサイズか
---ほとんどのISAの様に、MIPSや80×86は次のオペランドサイズをサポートする~
(MIPSや80×86を含むほとんどのISAがサポートしているオペランドサイズ)~
・8bit(ASCII文字)、~
・16bit(Unicode文字かハーフワード)、~
・32-bit(INT型整数かワード)、~
・64-bit(ダブルワードかLONG型整数)、~
---上に加えて以下のIEEE754浮動小数点型をサポートする~
・32bit(単精度)、~
・64bit(倍精度)、~
---80x86は80bitの浮動小数点型(拡張倍精度)もサポートする
++オペレーション(演算、か?
---オペレーションの一般的なカテゴリは、データ転送、論理演算、制御(次で述べる)、そして浮動小数点を扱うものである(微妙
---MIPSは単純でパイプライン化しやすい酩酊セット構造であり、2006年におけるRISCアーキテクチャの代表である
---80x86はより高価で大きなオペレーション・セットを持っている(別に命令セットでいいか?
++移行制御用命令
---80x86やMIPSを含むほぼ全てのISAが、条件分岐、無条件ジャンプ、関数コール及びリターンをサポートしている
---80x86、MIPSの両方がPC相対アドレス指定方式を用いている~
これは、分岐先アドレスをPCとアドレス・フィールドの和によって指定するものである~
---80x86とMIPSでは幾つか小さい違いがある~
・MIPSの条件分岐命令(BE,BNE,など)はレジスタの内容によって分岐判定する、~
・80×86の条件分岐(JE,JNE,など)では算術/論理演算の副作用としてセットされる条件コードビットによって判定する~
さらに、~
・MIPSの関数コール(JAL)時は戻りアドレス値をレジスタに格納する~
・80x86の関数コール(CALLF)時は戻りアドレス値をメモリのスタックに格納する~
++命令のエンコーディング
---エンコーディングには基本的に固定長と可変長の2種類がある
---MIPSの全ての命令はデコード簡略のため32bitに統一してある(固定長)
---80x86のエンコーディングは1bitから18bitの可変長
---可変長命令は固定長命令に比べてより少ないコード量で済む(スキマ無く詰められる)~
(だからx86用にコンパイルしたコードは同じものをMIPS用にコンパイルしたものより小さい)
---前述の方法により命令がどのようにして2進数表記されるのかには注意が必要
---レジスタ数とアドレッシング・モードの数はどちらも命令長に密接に関わる~
・レジスタ領域とアドレッシング・モード領域が1命令内に何度も現れることが出来るため(? 再訳
-命令セット間の違いが小さく、汎用化されている現在、ISAデザインを超えるコンピュータ設計への挑戦が特に盛んである~
(異なる応用分野がある == 汎用化 ? 是 : 非)~
(ISAデザインを超える、では無く、ISAデザインにおける、ではないか)~
-(この版ではISAの例としてMIPS64のサブセットを用いる)
=コンピュータ・アーキテクチャの基礎=~
(目標と機能要求を満たすよう構成とハードウェアを設計する)
-コンピュータの設計には、2つの要素がある: 構成とハードウェア
-「構成」にはコンピュータ設計のハイレベルな面を含む
--メモリ・システム
--メモリの相互接続
--内部プロセッサやCPUの設計
---CPU(中央演算処理装置):算術、論理、分岐演算およびデータ転送を実装
-AMD Opteron64 と Intel Pentium4
--同じ命令セットながら非常に異なった構成を持つ
--両方ともx86命令セットを使用
--パイプラインとキャッシュの実装方式が非常に異なる
-ハードウェアは、コンピューターの詳細(核心?)に関わる
-大体の場合コンピュータの系統(?)は同じ命令セットを持ち似通った構成をしているが、ハードウェアの詳細な実装時には異なる
--例としてPentium4とModeile Pentium4はほぼ同じだがクロックレートやメモリシステムが異なる~
(Modeile Pentium4は低性能のマシンで力を発揮する)(?~
-(この本では「アーキテクチャ」とは、コンピュータ設計の3つの面:命令セットアーキテクチャ、構成、およびハードウェアを全て含むものとする)
-コンピュータ設計者は要求される機能はもちろん、価格、パワー、性能、および有用性を満たすよう設計する必要がある
-設計者はその時々で要求機能が何で、主タスクが何かを選択しなければならない
-要求される機能は市場の需要により特化する
-コンピュータの使用目的によってアプリケーション・ソフトは確定した要求性能を揺るがせる(?
-ソフトウェアの大半がある命令セット構造を元にするなら設計者は新しいコンピュータが既存の命令セットを実装するはずだと判断するかもしれない
-特定用途のアプリケーション市場の存在は設計者に(それを)必要要件に組み入れさせるかも知れない(詳細は後に)(? 微妙
-設計者は技術とコンピュータ使用の双方で将来的コストとアーキテクチャの限界に影響する重要な動向を知っている必要がある(??
-
#comment
__________________________________________________________________________________
#comment
ページ名: