コンピュータアーキテクチャ 第 7 回.

Slides:



Advertisements
Similar presentations
平成 27 年 10 月 21 日. 【応用課題 2-1 】 次のビット列は、ある 10 進数を 8 ビット固定小数点表示で表した時の ものです。ただし、小数点の位置は 3 ビット目と 4 ビット目の間としてお り、負数は2の補数で表しています。このとき、元の 10 進数を求めてく ださい。
Advertisements

論理回路 第 11 回
第7章 計算の機構.
基本情報技術概論(第2回) 埼玉大学 理工学研究科 堀山 貴史
10進数 Digits: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 例: 3271 = (3×103) + (2×102) + (7×101) + (1×100) 8進数 Digits: 0, 1, 2, 3, 4, 5, 6, 7 例: 3271 = (3×83) + (2×82)
計算機工学特論A 10/17  テキスト内容 1.1~1.4.
全加算回路 A, Bはそれぞれ0または1をとるとする。 下位桁からの繰り上がりをC1とする。(0または1)
計算機システムⅡ 主記憶装置とALU,レジスタの制御
Verilog HDL 12月21日(月).
テープ(メモリ)と状態で何をするか決める
オリジナルなCPUの開発 指導教授:笠原 宏 05IE063 戸塚 雄太 05IE074 橋本 将平 05IE089 牧野 政道
4.2.2 4to1セレクタ.
プログラムはなぜ動くのか.
計算機基礎Ⅱ,Ⅲ (指導書 pp. 76~94) 改訂:佐竹 純二 (作成:岡本 吉央).
第10回 Dフリップフロップ ディジタル回路で特に重要な D-FF 仕組みを理解する タイミング図を読み書きできるようにする 瀬戸
補数 n:桁数、b:基数 bの補数 bn-x 253(10進数)の10の補数は、 =747
基本情報技術概論(第3回) 埼玉大学 理工学研究科 堀山 貴史
8. 順序回路の簡単化,機能的な順序回路 五島 正裕.
ハードウェア記述言語による 論理回路設計とFPGAへの実装 2
計算機科学実験及演習 3A SIMPLEアーキテクチャ のプロセッサの実装
ICトレーナーの構成 7セグメントLED ブレッドボード XOR OR AND NAND 電源端子 スイッチ端子 LED端子 データLED
第6回 よく使われる組合せ回路 瀬戸 重要な組合せ回路を理解し、設計できるようにする 7セグディスプレイ用デコーダ 加算回路・減算回路
アルゴリズムとチューリングマシン 「もの」(商品)としてのコンピュータ 「こと」(思想)としてのコンピュータ アルゴリズム
高速剰余算アルゴリズムとそのハードウェア実装についての研究
1.コンピュータと情報処理 p.18 第1章第1節 2.コンピュータの動作のしくみ CPUと論理回路
第5回 今日の目標 §1.6 論理演算と論理回路 ブール代数の形式が使える 命題と論理関数の関係を示せる
プログラミング演習Ⅱ 課題4第3週 画像処理 (1) ビット演算子.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
ICトレーナーの構成 7セグメントLED ブレッドボード XOR OR AND NAND 電源端子 スイッチ端子 LED端子 データLED
第3章 演算装置.
ディジタル回路の設計と CADによるシステム設計
計算機構成 第2回 ALUと組み合わせ回路の記述
ICトレーナーの構成 7セグメントLED ブレッドボード XOR OR AND NAND 電源端子 スイッチ端子 LED端子 データLED
Ibaraki Univ. Dept of Electrical & Electronic Eng.
9. 演算回路 五島 正裕.
コンピュータアーキテクチャ 第 7 回.
7. 機能的な組み合わせ回路 五島 正裕.
ディジタル回路 7. 機能的な組み合わせ回路 五島 正裕.
第11回 よく使われる順序回路 複数のFFを接続した回路を解析する際の考え方を学ぶ カウンタ回路の仕組みを理解し,設計できるようにする 瀬戸.
コンピュータアーキテクチャ 第 11 回.
コンピュータアーキテクチャ 第 10 回.
ディジタル回路 9. 演算回路 五島 正裕.
基本情報技術概論(第2回) 埼玉大学 理工学研究科 堀山 貴史
基本情報技術概論(第2回) 埼玉大学 理工学研究科 堀山 貴史
論理回路 第12回
  第3章 論理回路  コンピュータでは,データを2進数の0と1で表現している.この2つの値,すなわち,2値で扱われるデータを論理データという.論理データの計算・判断・記憶は論理回路により実現される.  コンピュータのハードウェアは,基本的に論理回路で作られている。              論理積回路.
コンピュータアーキテクチャ 第 9 回.
データの表現 2進数 0と1を使う。 基数(基準になる数)が2. 101(2) かっこで2進数と示すことがある。
計算機工学特論 スライド 電気電子工学専攻 修士1年 弓仲研究室 河西良介
コンピュータアーキテクチャ 第 10 回.
コンピュータアーキテクチャ 第 2 回.
コンピュータアーキテクチャ 第 4 回.
コンピュータアーキテクチャ 第 3 回.
基本情報技術概論(第13回) 埼玉大学 理工学研究科 堀山 貴史
コンピュータアーキテクチャ 第 2 回.
コンピュータアーキテクチャ 第 5 回.
メカトロニクス 12/15 デジタル回路 メカトロニクス 12/15.
計算機アーキテクチャ1 (計算機構成論(再)) 第二回 命令の種類と形式
コンピュータアーキテクチャ 第 4 回.
Ibaraki Univ. Dept of Electrical & Electronic Eng.
9. 演算回路 五島 正裕.
コンピュータアーキテクチャ 第 9 回.
コンピュータアーキテクチャ 第 3 回.
コンピュータアーキテクチャ 第 5 回.
コンピュータアーキテクチャ 第 11 回.
ディジタル回路 8. 機能的な順序回路 五島 正裕.
ca-9. 数の扱い (コンピュータアーキテクチャとプロセッサ)
論理回路(and,or,not)を作成. 回路を組み合わせ半/全加算器.
2008年7月11日 論理回路(and,or,not)を作成. 回路を組み合わせ半/全加算器.
Presentation transcript:

コンピュータアーキテクチャ 第 7 回

演算回路(算術論理演算ユニットとシフタ) 算術論理演算ユニットの構成モジュール 加算器 足し算をつかさどる組み合せ回路 減算器にも拡張可 フリップフロップ を付け加えることでカウンタを構成 論理演算器(AND, OR, XOR) 論理加減算器(16 ビットの符号なし 2 進数の加減算) シフタ シフト演算を実現する組合せ回路 今回の内容 ~以下の各要素と全体構成の例~ 半加算器と全加算器: 並列加算器: 加減算器: カウンタ: 書き換え機能つきカウンタ,ダウンカウンタ シフタ: 1 ビットシフタに限定 1 ビットの加算 * N ビットの加算 * 2の補数による負数の加算 *

ハードウェアモデルにおける位置付け 書き換え機能付きダウンカウンタ * * 並列加減算器 書き換え機能付きカウンタ *

半加算器 (HA: Half Adder) 演算データ a, b (1 ビット)を入力 演算結果 f, c を出力 c : 桁上げ出力 *

全加算器 (FA: Full Adder) 演算データ a, b, cin (1 ビット)を入力 演算結果 f, cout を出力 cin : 桁上げ入力, cout : 桁上げ出力 * *

論理演算の性質

演習問題 7.1

2進数の加算はどのように実行されるか? A + B = 3 + 2 = (0011)2 + (0010)2 4 ビットの例 (1) A + B = 3 + 2 = (0011)2 + (0010)2 * A ・・・ B ・・・ キャリー(桁上り) ・・・ 0 0 1 1 0 0 1 0 1 オーバフローなし ( -8 < 5 < 7 ) 1 1 4 ビットの例 (2) A + B = 7 + 3 = (0111)2 + (0011)2 * A ・・・ B ・・・ キャリー(桁上り) ・・・ 0 1 1 1 0 0 1 1 1 1 1 オーバフローあり ( 7 < 10 ) 1 1

並列加算器(parallel adders) * リップルキャリー方式: 下位ビットから上位ビットへ 順次桁上げを伝える方式

結果的にキャリー c1~c4 は, a0~a3 , b0~b3 で決定できる * *

ルックアヘッドキャリー (look-ahead carry) リップルキャリー方式     より高速 * リップルキャリー方式     よりハードウェア量大 *

演習問題 7.2

減算をどうやって実現するか? A – B = 7 – 5 = (0111)2 – (0101)2 4 ビットの例 A – B = 7 – 5 = (0111)2 – (0101)2 = (0111)2 + (0101)2 の2の補数 = (0111)2 + (0101)2 の1の補数 + 1 A ・・・ Bの1の補数 ・・・ キャリー(桁上り) ・・・ 0 1 1 1 * 1 0 1 0 1 1 1 1 1 +1 1

加減算器 (adder-subtractor)          のとき加算器,         のとき減算器 * 制御入力 * * s0 = 0, c0 = 0 s0 = 1, c0 = 1

4 ビット加減算器の真理値表 *

演習問題 7.3 前記の 4 ビット加減算器において,A 入力または B 入力をすべて 1 としたとき,どのような演算が おこなわれるか?それぞれ s0, c0 の組み合せごと に示せ.また,それらを確かめる具体的な数値例を 示せ.

カウンタ (counter) (1) * (a) 4 ビット 2 進数に 1 を加える加算器

カウンタ (counter) (2) * (b) 半加算器と基本ゲートによる置き換え

カウンタ (counter) (3) (c) フリップフロップを追加してできた 4 ビットカウンタ * インクリメンタ (incrementer) とも呼ばれる clock 信号がハイレベルに変わるごとに2進数 f3 f2 f1 f0 の値が 1 増加

演習問題 7.4 前述のように, 4 ビット 2 進数に 1 を加える加算器を,半加算器と基本ゲートによって置き換えられることを示せ.

書き換え機能つきカウンタ s がハイレベルのときは ,ローレベルのときは プログラムカウンタに使用される カウンタ データ取り込み inc * * カウンタ データ取り込み inc

書き換え機能つきダウンカウンタ s がハイレベルで ,ローレベルでは 本講義ではスタックポインタに使用 ダウンカウンタ データ取り込み * * ダウンカウンタ データ取り込み dcr

4 ビット書き換え機能つきカウンタのタイムチャート例

演習問題 7.5 右の 4 ビット ダウンカウンタの タイムチャート例を 完成せよ.

算術論理演算ユニット (ALU: Arithmetic Logic Unit) * COMET II の ALU構成例

算術論理演算ユニットの真理値表

演習問題 7.6 4 ビットの符号なし 2 進数の減算は,5 ビットの符号つき 2 進 数の減算として実行できる.これが実際には, 4 ビットの符号 つき 2 進数用加減算器で実行可能であることを示せ.

シフタ (Shifter) データ幅 4 ビットの 1 ビットシフタ構成例 sari がハイレベルで算術シフト sL がハイレベルで左シフト * sL がハイレベルで左シフト *

データ幅 4 ビットの 1 ビットシフタの真理値表

シフト命令の実行概念 1ビットシフタ: 1 クロックで 1 ビットシフトする バレルシフタ(barrel shifter): 1 クロックで * バレルシフタ(barrel shifter):  1 クロックで  ハードウェア量大 * 任意の ビット数シフトする

算術左シフト命令実行例

演算回路の構成