Comments
Description
Transcript
電子計算機システム 第1回
電子計算機システム 第1回 2005年4月12日 湯川 高志 2005-04-12 電子計算機システム 第1回 1 注意事項 今年から担当教員が変更(花木→湯川)になった 試験において過去問題等はあてにしないこと ただし 2005-04-12 講義する内容,教科書はこれまでと変わりません ちゃんと宿題をやって,ちゃんと勉強すれば,合格で きるような講義をします そのかわり,「ゲタ」などの救済措置はない 電子計算機システム 第1回 2 この講義で得られるもの --- 受講すると何がわかるようになるか -- 電子計算機システム=コンピュータについて どのような回路構成で造られているか 内部的にどのような動作をしている 周辺機器がどのような構造,動作原理,特徴を持つか プログラムはどのように処理されるのか これらを知ることで コンピュータシステムの設計ができるようになる 2005-04-12 新たなプロセッサの設計ができるようになる 周辺機器やインタフェースの設計ができるようになる それらを制御するプログラム(組込みプログラム,OSのデバイ スドライバ)の設計ができるようになる 電子計算機システム 第1回 3 ハードウェアと組込みソフトウェアの 設計能力の重要性 様々な電子コンポーネント 自動車のスピードメータ 電子炊飯器の制御基盤 はほとんどがコンピュータ制御 生産ライン,検査ラインもコンピュータ制御 誰が設計するのか? 求められているのは, 電気回路,電子回路が設計でき それらとコンピュータとのインターフェースが設計でき 制御プログラムを組める 技術者 2005-04-12 電子計算機システム 第1回 4 達成目標 アセンブリ言語で表現されたプログラムから機械語への 変換ができること ゲートや演算回路ほか計算機を構成する基本要素の構 造,動作,用途を理解し,主要パラメータを決定できるこ と 基本要素間の接続と信号の流れを理解し,動作を実現 する制御信号を発生する具体的な回路やマイクロプロ グラムを理解し,説明できること 周辺機器としての記憶装置やファイルシステムの構成, 動作,特徴を理解し説明できること 基本的な通信や信号伝送の方式,動作の概要,特徴を 理解し説明できること 2005-04-12 電子計算機システム 第1回 5 講義の予定 第1回~第3回 アセンブラとハードウェア (CASL とCOMET ) 第4回~第5回 演算・データ転送回路 (レジスタ、メモリ、ALU 、バス転送) 第6回 中間試験 第7回~第9回 制御回路 (命令フェッチ、解読、実効アドレス、命令の実行、 割込み) 第10回 入出力インタフェース (直列と並列、RS-232C,SCSI ) 2005-04-12 電子計算機システム 第1回 6 講義の予定 (続き) 第11回~第12回 メモリ集積回路とメモリシステム (メモリの分類、ROM 、RAM 、階層構成) 第13回 マイクロプロセッサ(歴史、構成、具体例) 第14回 外部記憶装置(磁気ディスク、光ディスク), 組立てパソコンによる具体的な構成と実装 第15回 期末試験 2005-04-12 電子計算機システム 第1回 7 成績の評価 中間試験と期末試験の得点の平均(70%) 演習と宿題(30%)により評価 60点に満たなかった者には別途試験を行うこと がある テストやレポートでは,達成目標に記した各項目 について記述解答形式の問題や課題を出す. 2005-04-12 電子計算機システム 第1回 8 教科書/教員連絡先/資料の入手先 岩崎一彦ほか著「計算機構成論」昭晃堂 連絡先 湯川 高志 教官室: 電気1号棟 606号室 内線: 9532 Email: [email protected] 資料の入手 2005-04-12 http://kslab.nagaokaut.ac.jp/Course/ から「電子計算機システム」 電子計算機システム 第1回 9 講義の進め方 プレゼンテーション資料を用いて進める 資料はWebで公開 ノートの取り方 2005-04-12 スライドを書き写す必要はない 要点,気が付いた点を記録 宿題(レポート)を出すことがある 電子計算機システム 第1回 10 受講の心構え 講義が聴きやすい,スクリーンが見やすい環境を確保 すること スクリーンが見やすい位置に座る 講義の資料は前日までにWebで公開するので,プロジェクター のスクリーンが見えにくい場合は,印刷するなりノートPCを持ち 込むなりして,手元で見て良い 私語は厳禁 2005-04-12 私語をするくらいなら出席しなくて良い←他人に迷惑がかかる から. 出席しないで授業内容がわからないのは自己責任 講師は必ずしも前でしゃべっているとは限りません 電子計算機システム 第1回 11 受講の心構え (続き) 飲食はしない方が良い コンピュータ科学者(リベラルな人が多い)では,聴講 中の軽い飲食(ペットボトルを持ち込む等)は許容され る傾向にある が,本学は他の分野も多いので,そのような習慣は 持たない方が良い 携帯電話はマナーモードに 疑問点があったら,どんどん質問すること 2005-04-12 電子計算機システム 第1回 12 論理関数 --- 復習をかねて --- 2005-04-12 電子計算機システム 第1回 13 論理代数=ブール代数 「0」と「1」 → 真理値,論理値 「0」を「偽」,「1」を「真」に対応させる 「0」と「1」のどちらかを取る変数 → 論理変数 論理値,論理変数についての代数学 → ブール 代数 2005-04-12 電子計算機システム 第1回 14 ブール代数 (続き) 基本的な関数 2005-04-12 論理積 AND (logical product) 論理和 OR (logical sum) 否定 NOT (logical negation) 電子計算機システム 第1回 15 論理積 C = A・B 2005-04-12 A B C 0 0 0 0 1 0 1 0 0 1 1 1 電子計算機システム 第1回 16 論理和 C = A∨B 2005-04-12 A B C 0 0 0 0 1 1 1 0 1 1 1 1 電子計算機システム 第1回 17 否定 C=A 2005-04-12 A C 0 1 1 0 電子計算機システム 第1回 18 ブール代数の性質 1.結合則 (associative law) ( A ⋅ B) ⋅ C = A ⋅ ( B ⋅ C ) ( A ∨ B) ∨ C = A ∨ ( B ∨ C ) 2. 分配則 (distributive law) A ∨ B ⋅ C = ( A ∨ B) ⋅ ( A ∨ C ) A ⋅ (B ∨ C) = A ⋅ B ∨ A ⋅ C 2005-04-12 電子計算機システム 第1回 19 ブール代数の性質 (続き) 3. 交換則 (commutative law) A⋅ B = B ⋅ A A∨ B = B ∨ A 4. べき等則 (idempotent law) A⋅ A = A A∨ A = A 2005-04-12 電子計算機システム 第1回 20 ブール代数の性質 (続き) 5. 0,1の法則 (identity law) A ∨1 = 1 A∨ 0 = A A ⋅1 = A A⋅0 = 0 2005-04-12 電子計算機システム 第1回 21 ブール代数の性質 (続き) 6. 補元の法則 (complement law) A = ( A) = A A∨ A =1 A⋅ A = 0 1=0 0 =1 2005-04-12 電子計算機システム 第1回 22 ブール代数の性質 (続き) 7. 吸収則 (absorption law) A ⋅ ( A ∨ B) = A A ∨ ( A ⋅ B) = A 2005-04-12 電子計算機システム 第1回 23 ブール代数の性質 (続き) 8. ド・モルガンの法則 (DeMorgan's law) A∨ B = A⋅B A⋅B = A∨ B 2005-04-12 電子計算機システム 第1回 24 ド・モルガンの法則の証明 補元の一意性 X ⋅ Y = 0, X ∨ Y = 1 ⇒ X = Y この性質を用いて ( A ⋅ B) ⋅ ( A ∨ B) = ( A ⋅ B ⋅ A) ∨ ( A ⋅ B ⋅ B) = 0∨0 = 0 ( A ⋅ B) ∨ ( A ∨ B) = ( A ∨ ( A ∨ B)) ⋅ ( B ∨ ( A ∨ B)) = (1 ∨ B) ⋅ (1 ∨ A) = 1⋅1 = 1 2005-04-12 電子計算機システム 第1回 25 ド・モルガンの法則の証明 (続き) まとめると ( A ⋅ B) ⋅ ( A ∨ B) = 0 ( A ⋅ B) ∨ ( A ∨ B ) = 1 だから X ⋅ Y = 0, X ∨ Y = 1 ⇒ X = Y より A⋅B = A∨ B 2005-04-12 電子計算機システム 第1回 26 NAND C = A⋅ B 2005-04-12 A B C 0 0 1 0 1 1 1 0 1 1 1 0 電子計算機システム 第1回 27 NOR C = A∨ B 2005-04-12 A B C 0 0 1 0 1 0 1 0 0 1 1 0 電子計算機システム 第1回 28 排他的論理和 (EORまたはXOR) C = A⊕ B 2005-04-12 A B C 0 0 0 0 1 1 1 0 1 1 1 0 電子計算機システム 第1回 29 ブール代数の性質 (続き) 3. 交換則 (commutative law) A⋅ B = B ⋅ A A∨ B = B ∨ A 4. べき等則 (idempotent law) A⋅ A = A A∨ A = A 2005-04-12 電子計算機システム 第1回 30 ブール代数の性質 (続き) 3. 交換則 (commutative law) A⋅ B = B ⋅ A A∨ B = B ∨ A 4. べき等則 (idempotent law) A⋅ A = A A∨ A = A 2005-04-12 電子計算機システム 第1回 31 排他的論理和の性質 9. 結合則 (associative law) ( A ⊕ B) ⊕ C = A ⊕ ( B ⊕ C ) 10. 交換則 (commutative law) A⊕ B = B ⊕ A 2005-04-12 電子計算機システム 第1回 32 排他的論理和の性質 (続き) 11. ( A ⊕ A) = 0 12. A ⊕1 = A A⊕0 = A 2005-04-12 電子計算機システム 第1回 33 ブール代数はどのように役に立つか 信号や電圧の「あり」「なし」を扱う電気回路は(かなり容 易に)作ることができる 計算をしたい AND,OR,NOTを計算する電気回路も(比較的容易に) 作ることができる ブール代数により このような回路を組合せて,どのようなことができるか ある事をしたいときに,どのように回路を組合せたら良 いか がわかる 2005-04-12 電子計算機システム 第1回 34 ディジタル回路 2005-04-12 電子計算機システム 第1回 35 ANDゲート C = A⋅ B A C B 2005-04-12 電子計算機システム 第1回 36 ORゲート C = A∨ B A C B 2005-04-12 電子計算機システム 第1回 37 NOTゲート C=A C A この丸が重要(NOTの意味を表す) 2005-04-12 電子計算機システム 第1回 38 XORゲート C = A⊕ B A C B 2005-04-12 電子計算機システム 第1回 39 NANDゲート C = A⋅ B A C B 2005-04-12 電子計算機システム 第1回 40 NORゲート C = A∨ B A C B 2005-04-12 電子計算機システム 第1回 41 NAND,NORの別表記 NAND NOR 2005-04-12 A⋅ B = A ∨ B A ∨ B = A⋅ B 電子計算機システム 第1回 42 NANDを用いた他の論理の構成 NANDがあれば,その組合せで他のゲートも作 ることができる NOT A⋅ A = A AND 2005-04-12 電子計算機システム 第1回 43 NANDを用いた他の論理の構成 (続き) OR A ⋅ B = ( A + B) = A + B ド・モルガンの法則より 2005-04-12 電子計算機システム 第1回 44 NANDを用いた他の論理の構成 (続き) NOR 2005-04-12 電子計算機システム 第1回 45 NANDを用いた他の論理の構成 (続き) XOR 2005-04-12 電子計算機システム 第1回 46 組合せ論理回路 AND,OR,NOT (さらに,NAND,NOR)ゲートの組合 せにより与えられた論理関数を実現する回路 いま示した個々のゲートは1入力or2入力だったが,対 象論理回路の入力は1本や2本とは限らない 関数 2005-04-12 真理値表によって与えられる 論理式により与えられる 電子計算機システム 第1回 47 組合せ論理回路の例(1) 入力:A,B,C 出力:X 真になるの は 2005-04-12 少なくともB AND C 上に加え NOT A A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 電子計算機システム 第1回 C 0 1 0 1 0 1 0 1 X 0 0 0 1 0 0 0 0 48 組合せ論理回路の例(1) (続き) 真になるのは 少なくとも B ⋅ C 上に加え A A X B C 2005-04-12 電子計算機システム 第1回 49 組合せ論理回路の例(2) 入力:A,B,C 出力:X 真になるのは 少なくともB さらに,次の いずれか (NOT A) AND C A AND (NOT C) ↓ A XOR C 2005-04-12 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 電子計算機システム 第1回 C 0 1 0 1 0 1 0 1 X 0 0 0 1 0 0 1 0 50 組合せ論理回路の例(2) (続き) 真になるのは 少なくとも B さらに, A⊕C B A X C 2005-04-12 電子計算機システム 第1回 51 任意の関数を実現する 真理値表を書く 入力のあらゆる場合を考える N入力ならば2のN乗通りある それぞれの入力に対し出力(0か1)を決める その真理値表の通りの出力を出せるような論理 回路を考える どうやって? 2005-04-12 電子計算機システム 第1回 52 一番頭を使わない方法 準備 2005-04-12 n入力のAND → ANDゲートの組合せで作ることがで きる n入力のOR → ORゲートの組合せで作ることができ る 電子計算機システム 第1回 53 一番頭を使わない方法 (続き) 真理値表の中で出力が「1」の行を洗い出す それぞれに対する入力を見て,ANDとNOTの組 合せで回路を作る 例えば,A=0,B=1,C=1に対する回路はAをNOTに通 したものとB,CをANDしてやれば良い それぞれの回路の出力をすべてORする回路に する 2005-04-12 電子計算機システム 第1回 54 例(2)の真理値表 (再掲) 入力:A,B,C 出力:X 2005-04-12 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 電子計算機システム 第1回 C 0 1 0 1 0 1 0 1 X 0 0 0 1 0 0 1 0 55 この方法で構成した例(2)の回路 出力が真になるのは A=0,B=1,C=1 A=1,B=1,C=0 A X B C 2005-04-12 電子計算機システム 第1回 56 これだと回路が大きくなって大変!! 1になる行が多いほど回路が大きくなる 良く考えてみると... すべての入力に対して出力が「1」になる関数 今のやり方では,もっとも大きな回路になる しかし,この関数の実現には,単に1を出力するゲート1個だけ あれば良い いろいろな関数に対して回路を簡単にする方法がない だろうか 2005-04-12 電子計算機システム 第1回 57 論理回路の簡単化 真理値表で関数を表現 真理値表 別の表記でも関数を表現してみる 論理式 カルノー図 それぞれの表現を利用した簡単化 簡単化した結果に基づき回路を構成 2005-04-12 電子計算機システム 第1回 58 何に着目するか 真理値表での表現 出力が1の時に必ず1である入力はないか 出力が1の時に必ず現れる入力の組合せはないか : 論理式での表現 ブール代数のいろいろな法則を適用して,論理式を簡単にしてゆく 論理式が簡単ということは,回路も簡単なはず カルノー図 簡単化するパターンを見つけやすいように,真理値表の書き方を変え たもの 4入力程度までは,かなり容易に簡単化できる 詳細は次回 2005-04-12 電子計算機システム 第1回 59 論理式の上での簡単化 真理値表→論理式 真理値表の中で出力が「1」の行を洗い出す それぞれに対応する入力から,否定と論理積からなる論理式を 構成する. 例えばA=0,B=1,C=1に対しては, A⋅ B ⋅C それぞれの論理式を論理和で結合した論理式とする 加法標準系 さまざまな法則を適用し簡単化 2005-04-12 電子計算機システム 第1回 60 みたび例(2) 入力:A,B,C 出力:X A⋅ B ⋅C A⋅ B ⋅C 2005-04-12 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 電子計算機システム 第1回 C 0 1 0 1 0 1 0 1 X 0 0 0 1 0 0 1 0 61 例(2)の論理式による簡単化 加法標準系 A⋅ B ⋅C ∨ A⋅ B ⋅C 簡単化 A⋅ B ⋅C ∨ A⋅ B ⋅C = B ⋅ ( A ⋅ C ∨ A ⋅ C) 2005-04-12 電子計算機システム 第1回 分配法則を適用 62 加法標準系に基づき構成した論理回路 (再掲) A⋅ B ⋅C ∨ A⋅ B ⋅C A X B C 2005-04-12 電子計算機システム 第1回 63 簡単化した論理式に基づき構成した論理 回路 (再掲) B ⋅ ( A ⋅ C ∨ A ⋅ C) B A X C 2005-04-12 電子計算機システム 第1回 64 組合せ論理回路の例(3) 入力:A,B,C 出力:X これは実は, 多数決回路 2005-04-12 A 0 0 0 0 1 1 1 1 B 0 0 1 1 0 0 1 1 電子計算機システム 第1回 C 0 1 0 1 0 1 0 1 X 0 0 0 1 0 1 1 1 65 例(3)の論理式による簡単化 加法標準系 A⋅ B ⋅C ∨ A⋅ B ⋅C ∨ A⋅ B ⋅C ∨ A⋅ B ⋅C 簡単化 = A⋅ B ⋅C ∨ A⋅ B ⋅C ∨ A⋅ B ⋅C ∨ A⋅ B ⋅C + A⋅ B ⋅C ∨ A⋅ B ⋅C 分配法則を適用 = ( A ∨ A) ⋅ B ⋅ C ∨ A ⋅ ( B ∨ B ) ⋅ C ∨ A ⋅ B ⋅ (C ∨ C ) = A⋅ B ∨ B ⋅C ∨ C ⋅ A 2005-04-12 電子計算機システム 第1回 66 ゲートの個数 加法標準系 A⋅ B ⋅C ∨ A⋅ B ⋅C ∨ A⋅ B ⋅C ∨ A⋅ B ⋅C 3入力AND×4=2×(2入力AND)×4=2入力AND×8 4入力OR×1=2入力OR×3 簡単化した論理式 A⋅ B ∨ B ⋅C ∨ C ⋅ A 2005-04-12 2入力AND×3 3入力OR×1=2入力OR×2 電子計算機システム 第1回 67 今日はここまで 次回予告 機械語とアセンブラ 2005-04-12 電子計算機システム 第1回 68