25
Bài ging tóm tt Kiến trúc máy tính 25 Oct 2013 Nguyn Kim Khánh - SoICT-HUST 1 Bài ging tóm tt KIN TRÚC MÁY TÍNH Computer Architecture Nguyn Kim Khánh Bmôn Kthut máy tính Vin Công nghthông tin và Truyn thông Trường Đại hc Bách Khoa Hà Ni Department of Computer Engineering (DCE) School of Information and Communication Technology (SoICT) Hanoi University of Science and Technology (HUST) NKK-HUST [1] William Stallings - Computer Organization and Architecture – Designing for Performance – 2009 (8 th edition) [2] David A. Patterson & John L. Hennessy - Computer Organization and Design: The Hardware/Software Interface – 2011 (4 th revised edition) Tài liu tham kho chính 25 Oct 2013 Kiến trúc máy tính 2 NKK-HUST Ni dung 1. Máy tính và hiu năng 2. Bxlý trung tâm 3. Bnhmáy tính 4. Hthng vào-ra 5. Gii thiu kiến trúc song song 25 Oct 2013 Kiến trúc máy tính 3 NKK-HUST Kiến trúc máy tính MÁY TÍNH VÀ HIU NĂNG Nguyn Kim Khánh Trường Đại hc Bách khoa Hà Ni 25 Oct 2013 Kiến trúc máy tính 4

ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Embed Size (px)

Citation preview

Page 1: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 1

Bài giảng tóm tắt KIẾN TRÚC MÁY TÍNH Computer Architecture

Nguyễn Kim Khánh Bộ môn Kỹ thuật máy tính Viện Công nghệ thông tin và Truyền thông Trường Đại học Bách Khoa Hà Nội Department of Computer Engineering (DCE) School of Information and Communication Technology (SoICT) Hanoi University of Science and Technology (HUST)

NKK-HUST

[1] William Stallings - Computer Organization and Architecture – Designing for Performance – 2009 (8th edition)

[2] David A. Patterson & John L. Hennessy -

Computer Organization and Design: The Hardware/Software Interface – 2011 (4th revised edition)

Tài liệu tham khảo chính

25 Oct 2013 Kiến trúc máy tính 2

NKK-HUST

Nội dung

1.  Máy tính và hiệu năng 2.  Bộ xử lý trung tâm 3.  Bộ nhớ máy tính 4.  Hệ thống vào-ra 5.  Giới thiệu kiến trúc song song

25 Oct 2013 Kiến trúc máy tính 3

NKK-HUST

Kiến trúc máy tính

MÁY TÍNH VÀ HIỆU NĂNG

Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội

25 Oct 2013 Kiến trúc máy tính 4

Page 2: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 2

NKK-HUST

n  Thiết bị di động cá nhân (Personal Mobile Device): n  Smartphone, Tablet,…

n  Máy tính để bàn/xách tay (Desktop/Laptop) n  Máy chủ (Server)

n  Thực chất là Máy phục vụ n  Dùng trong mạng theo mô hình Client/Server

n  Máy tính cụm/máy tính qui mô lớn (Clusters/Warehouse Scale Computers): n  Sử dụng tại các trung tâm tính toán lớn n  Siêu máy tính

n  Máy tính nhúng (Embedded Computers) n  Đặt ẩn trong thiết bị khác n  Thiết kế chuyên dụng

Phân loại máy tính hiện đại

25 Oct 2013 Kiến trúc máy tính 5

NKK-HUST

Kiến trúc máy tính [Hennessy/ Patterson]

n  Kiến trúc máy tính bao gồm: n  Kiến trúc tập lệnh (Instruction Set Architecture):

nghiên cứu máy tính theo cách nhìn của người lập trình (hardware/software interface).

n  Tổ chức máy tính (Computer Organization): nghiên cứu thiết kế máy tính ở mức cao,chẳng hạn như hệ thống nhớ, cấu trúc bus, thiết kế bên trong CPU.

n  Phần cứng (Hardware): nghiên cứu thiết kế logic chi tiết và công nghệ đóng gói của máy tính.

n  Kiến trúc tập lệnh thay đổi chậm, tổ chức và phần cứng máy tính thay đổi rất nhanh.

25 Oct 2013 Kiến trúc máy tính 6

NKK-HUST

Cấu trúc cơ bản của máy tính

CPU Bộ nhớ chính

Bus liên kết hệ thống

Hệ thống vào-ra

25 Oct 2013 Kiến trúc máy tính 7

n  Bộ xử lý trung tâm (Central Processing Unit): Điều khiển hoạt động của máy tính và xử lý dữ liệu.

n  Bộ nhớ chính (Main Memory): Chứa các chương trình và dữ liệu đang được sử dụng.

n  Hệ thống vào-ra (Input/Output System): Trao đổi thông tin giữa máy tính với bên ngoài.

n  Bus liên kết hệ thống (System Interconnection Bus): Kết nối và vận chuyển thông tin giữa các thành phần với nhau.

NKK-HUST

Mô hình phân lớp của máy tính

n  Phần cứng (Hardware): hệ thống vật lý của máy tính. n  Phần mềm (Software): các chương trình và dữ liệu.

Các phần mềm ứng dụng

Các phần mềm trung gian

Hệ điều hành

Phần cứng

Người sử dụng Người lập

trình

Người thiết kế

HĐH

Phần mềm ứng dụng

Phần mềm trung gian

Hệ điều hành

Kiến trúc tập lênh

Vi kiến trúc

Logic-số

Mạch điện tử

25 Oct 2013 Kiến trúc máy tính 8

Page 3: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 3

NKK-HUST

Hiệu năng máy tính

n  Định nghĩa hiệu năng P(Performance): P = 1/ t

trong đó: t là thời gian thực hiện n  “Máy tính A nhanh hơn máy B n lần” PA / PB = tB / tA = n n  Ví dụ: Thời gian chạy chương trình:

n  10s trên máy A, 15s trên máy B n  tB / tA = 15s / 10s = 1.5 n  Vậy máy A nhanh hơn máy B 1.5 lần

25 Oct 2013 Kiến trúc máy tính 9

NKK-HUST

Xung nhịp của CPU n  Hoạt động của CPU được điều khiển bởi xung

nhịp có tần số xác định

n  Chu kỳ xung nhịp T0(Clock period): thời gian của một chu kỳ

n  Tần số xung nhịp f0 (Clock rate): số chu kỳ trong 1 giây. n  f0 = 1/T0

n  VD: Bộ xử lý có f0 = 4GHz = 4000MHz = 4×109Hz T0 = 1/(4x109) = 0.25x10–9s = 0.25ns

T0

25 Oct 2013 Kiến trúc máy tính 10

NKK-HUST

Thời gian CPU (tCPU)

n  trong đó: n là số chu kỳ xung nhịp n  Hiệu năng được tăng lên bằng cách:

n  Giảm số chu kỳ xung nhịp n n  Tăng tần số xung nhịp f0

00 f

nTntCPU =×=

25 Oct 2013 Kiến trúc máy tính 11

NKK-HUST

Số lệnh và số chu kỳ trên một lệnh

n  Trong trường hợp các lệnh khác nhau có CPI khác nhau, cần tính CPI trung bình

n  Số chu kỳ = Số lệnh x Số chu kỳ trên một lệnh CPIICn ×=

n - số chu kỳ, IC - số lệnh (Instruction Count), CPI - số chu kỳ trên một lệnh (Cycles per Instruction)

n  Thời gian thực hiện của CPU:

00 f

CPIICTCPIICtCPU×

=××=

25 Oct 2013 Kiến trúc máy tính 12

Page 4: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 4

NKK-HUST

Tóm tắt về Hiệu năng

n  Hiệu năng phụ thuộc vào: n  Thuật toán n  Ngôn ngữ lập trình n  Chương trình dịch n  Kiến trúc tập lệnh

cycle ClockSeconds

nInstructiocycles Clock

ProgramnsInstructioTime CPU ××=

00 f

CPIICTCPIICtCPU×

=××=

25 Oct 2013 Kiến trúc máy tính 13

NKK-HUST

MIPS như là thước đo hiệu năng

n  MIPS: Millions of Instructions Per Second (Số triệu lệnh trên 1 giây)

10CPIrate Clock

10rate Clock

CPIcount nInstructiocount nInstructio

10time Executioncount nInstructioMIPS 6

66 ×

×=

×=

60

10MIPSfCPI×

=60

10CPIfMIPS×

=

25 Oct 2013 Kiến trúc máy tính 14

NKK-HUST

MFLOPS

Millions of Floating Point Operations per Second (Số triệu phép toán số dấu phẩy động trên một giây)

GFLOPS(109 ) TFLOPS(1012)

610time Executionoperations point floating ExecutedMFLOPS×

=

25 Oct 2013 Kiến trúc máy tính 15

NKK-HUST

Kiến trúc máy tính

BỘ XỬ LÝ TRUNG TÂM - CPU

Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội

25 Oct 2013 Kiến trúc máy tính 16

Page 5: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 5

NKK-HUST

17

n  Chức năng: n  điều khiển hoạt động của máy tính n  xử lý dữ liệu

n  Nguyên tắc hoạt động cơ bản: CPU hoạt động theo chương trình nằm trong bộ nhớ chính.

n  Cấu trúc cơ bản

Bộ xử lý trung tâm

Đơn vị điều khiển

(CU)

Đơn vị số học

và logic(ALU)

Tậpthanh ghi

(RF)

Đơn vị nối ghép bus (BIU)

bus địa chỉ

bus bên trong

bus dữ liệu bus điều khiển

25 Oct 2013 Kiến trúc máy tính

NKK-HUST

Đơn vị số học và logic (ALU)

n  Arithmetic and Logic Unit n  Thực hiện các phép toán số học và

phép toán logic: n  Số học: cộng, trừ, nhân, chia, tăng, giảm, đảo dấu

n  Logic: AND, OR, XOR, NOT, phép dịch bit. n  FPU (Floating Point Unit) – Đơn vị xử lý

số dấu phẩy động

25 Oct 2013 Kiến trúc máy tính 18

NKK-HUST

Đơn vị điều khiển (Control Unit)

n  Điều khiển nhận lệnh từ bộ nhớ đưa vào thanh ghi lệnh

n  Giải mã lệnh đã được nhận để xác định thao tác mà lệnh yêu cầu

n  Phát ra các tín hiệu điều khiển thực hiện lệnh

n  Nhận các tín hiệu yêu cầu từ bus hệ thống và đáp ứng với các yêu cầu đó.

25 Oct 2013 Kiến trúc máy tính 19

NKK-HUST

Tập thanh ghi (Register File)

n  Chứa các thông tin (dữ liệu, địa chỉ, trạng thái) cho hoạt động điều khiển và xử lý dữ liệu của CPU ở thời điểm hiện tại

n  Số lượng thanh ghi nhiều à tăng hiệu năng của CPU

n  Có hai loại thanh ghi: n  Các thanh ghi lập trình được n  Các thanh ghi không lập trình được

25 Oct 2013 Kiến trúc máy tính 20

Page 6: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 6

NKK-HUST

Một số thanh ghi điển hình

n  Bộ đếm chương trình PC (Program Counter) hay là con trỏ lệnh IP (Instruction Pointer)

n  Con trỏ dữ liệu DP (Data Pointer) n  Con trỏ ngăn xếp SP (Stack Pointer) n  Thanh ghi cơ sở và Thanh ghi chỉ số

(Base Register & Index Register) n  Các thanh ghi dữ liệu n  Thanh ghi trạng thái

25 Oct 2013 Kiến trúc máy tính 21

NKK-HUST

Mô hình lập trình của máy tính

PC: Program Counter IR: Instruction Register

25 Oct 2013 Kiến trúc máy tính 22

NKK-HUST

Thứ tự lưu trữ các byte trong bộ nhớ chính

n  Bộ nhớ chính thường đánh địa chỉ theo byte

n  Dữ liệu, lệnh có thể 1 đến nhiều byte n  Hai cách lưu trữ thông tin nhiều byte:

n  Đầu nhỏ (Little-endian): Byte có ý nghĩa thấp được lưu trữ ở ngăn nhớ có địa chỉ nhỏ, byte có ý nghĩa cao được lưu trữ ở ngăn nhớ có địa chỉ lớn.

n  Đầu to (Big-endian): Byte có ý nghĩa cao được lưu trữ ở ngăn nhớ có địa chỉ nhỏ, byte có ý nghĩa thấp được lưu trữ ở ngăn nhớ có địa chỉ lớn.

25 Oct 2013 Kiến trúc máy tính 23

NKK-HUST

Ví dụ lưu trữ dữ liệu 32-bit

1A 2B 3C 4D

4D

1A2B3C

little-endian

3000

300330023001

1A

4D3C2B

big-endian

3000

300330023001

0001 1010 0010 1011 0011 1100 0100 1101

25 Oct 2013 Kiến trúc máy tính 24

Page 7: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 7

NKK-HUST

Tập lệnh

n  Mỗi bộ xử lý có một tập lệnh xác định n  Tập lệnh thường có hàng chục đến hàng

trăm lệnh n  Mỗi lệnh là một chuỗi số nhị phân mà bộ xử

lý hiểu được để thực hiện một thao tác xác định.

n  Các lệnh được mô tả bằng các ký hiệu gợi nhớ dạng text à chính là các lệnh của hợp ngữ (assembly language)

25 Oct 2013 Kiến trúc máy tính 25

NKK-HUST

Các thành phần của lệnh máy

n  Mã thao tác (operation code à opcode): mã hóa cho thao tác mà bộ xử lý phải thực hiện

n  Địa chỉ toán hạng: chỉ ra nơi chứa các toán hạng mà thao tác sẽ tác động n  Toán hạng nguồn (source operand): dữ liệu vào của

thao tác n  Toán hạng đích (destination operand): dữ liệu ra của

thao tác

Mã thao tác Địa chỉ của các toán hạng

25 Oct 2013 Kiến trúc máy tính 26

NKK-HUST

Các kiểu lệnh thông dụng của tập lệnh

n  Các lệnh chuyển dữ liệu n  Các lệnh số học n  Các lệnh logic n  Các lệnh chuyển điều khiển (rẽ nhánh, nhảy) n  Các lệnh điều khiển hệ thống

25 Oct 2013 Kiến trúc máy tính 27

NKK-HUST

Số lượng địa chỉ toán hạng trong lệnh n  Ba địa chỉ toán hạng:

n  Các kiến trúc tiên tiến n  ADD R1, R2, R3 # R1 ß R2+R3

n  Hai địa chỉ toán hạng: n  Phổ biến trước đây n  ADD R1, R2 # R1 ß R1+R2

n  Một địa chỉ toán hạng: n  Ít sử dụng n  ADD R1 # Acc ß Acc+R1

n  0 địa chỉ toán hạng: n  Rất ít sử dụng n  Các toán hạng đều được ngầm định ở Stack

25 Oct 2013 Kiến trúc máy tính 28

Page 8: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 8

NKK-HUST

Ví dụ lệnh máy và cách thực hiện

25 Oct 2013 Kiến trúc máy tính 29

Assembly language instruction:

Machine language instruction:

High-level language statement:

000000 10010 10001 11000 00000 100000

add $t8, $s2, $s1

a = b + c

ALU-type instruction

Register 18

Register 17

Register 24 Unused

Addition opcode

ALU

Instruction fetch

Register readout

Operation

Data read/store

Register writeback

Register file

Instruction

cache

Data cache (not used)

Register file

P C

$17 $18

$24

NKK-HUST

CISC và RISC

n  CISC: Complex Instruction Set Computer: n  Máy tính với tập lệnh phức tạp n  Các bộ xử lý truyền thống: Intel x86, Motorola

680x0 n  RISC: Reduced Instruction Set Computer:

n  Máy tính với tập lệnh thu gọn n  SunSPARC, Power PC, MIPS, ARM ... n  RISC đối nghịch với CISC n  Kiến trúc tập lệnh tiên tiến

25 Oct 2013 Kiến trúc máy tính 30

NKK-HUST

Các đặc trưng của RISC

n  Số lượng lệnh ít n  Hầu hết các lệnh truy nhập toán hạng ở các

thanh ghi n  Truy nhập bộ nhớ bằng các lệnh LOAD/STORE n  Thời gian thực hiện lệnh là một chu kỳ máy n  Các lệnh có độ dài cố định (32 bit) n  Số lượng dạng lệnh ít n  CPU có tập thanh ghi lớn n  Có ít phương pháp định địa chỉ toán hạng n  Hỗ trợ các thao tác của ngôn ngữ bậc cao

25 Oct 2013 Kiến trúc máy tính 31

NKK-HUST

Hoạt động của CPU

n  Chu trình lệnh đầy dủ n  Nhận lệnh: CPU nhận lệnh từ bộ nhớ n  Giải mã lệnh n  Nhận toán hạng: nhận từ bộ nhớ hoặc cổng

vào-ra n  Thực hiện lệnh n  Cất kết quả: cất ra bộ nhớ hoặc cổng vào-ra

n  Hoạt động tuần tự

25 Oct 2013 Kiến trúc máy tính 32

Page 9: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 9

NKK-HUST

Kỹ thuật đường ống lệnh (Instruction Pipelining)

n  Chia chu trình lệnh thành các công đoạn và cho phép thực hiện gối lên nhau (như dây chuyền lắp ráp)

n  Chẳng hạn có 6 công đoạn: n  Nhận lệnh (Fetch Instruction - FI) n  Giải mã lệnh (Decode Instruction - DI) n  Tính địa chỉ toán hạng (Calculate Operand Address-CO) n  Nhận toán hạng (Fetch Operands - FO) n  Thực hiện lệnh (Execute Instruction - EI) n  Ghi toán hạng (Write Operands - WO)

25 Oct 2013 Kiến trúc máy tính 33

NKK-HUST

Biểu đồ thời gian của đường ống lệnh 1 109875432 6 t131211

FI EIFOCODI WO

FI EIFOCODI WO

FI EIFOCODI WO

FI EIFOCODI WO

FI EIFOCODI WO

FI EIFOCODI WO

FI EIFOCODI WO

FI EIFOCODI WO

lệnh 1

lệnh 2

lệnh 3

lệnh 4

lệnh 5

lệnh 6

lệnh 7

lệnh 8

25 Oct 2013 Kiến trúc máy tính 34

NKK-HUST

Các Hazard (trở ngại) của đường ống lệnh

n  Hazard: Tình huống ngăn cản bắt đầu của lệnh tiếp theo ở chu kỳ tiếp theo. n  Hazard cấu trúc: do tài nguyên được yêu

cầu đang bận n  Hazard dữ liệu: cần phải đợi để lệnh trước

hoàn thành việc đọc/ghi dữ liệu n  Hazard điều khiển: do rẽ nhánh gây ra

25 Oct 2013 Kiến trúc máy tính 35

NKK-HUST

Các kiến trúc song song mức lệnh n  Siêu đường ống (Superpipeline & Hyperpipeline)

25 Oct 2013 Kiến trúc máy tính 36

COLệnh 1 FI DI FO EI WO

COFI DI FO EI WO

COFI DI FO EI WO

COFI DI FO EI WOLệnh 4

Lệnh 3

Lệnh 2

n  Siêu vô hướng (Superscalar) COLệnh 1 FI DI FO EI WO

COFI DI FO EI WO

COFI DI FO EI WO

COFI DI FO EI WOLệnh 4

Lệnh 3

Lệnh 2

COFI DI FO EI WO

COFI DI FO EI WOLệnh 6

Lệnh 5

Page 10: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 10

NKK-HUST

Bộ xử ly đa lõi (multicores)

n  Thay đổi của bộ xử lý: n  Tuần tự n  Pipeline n  Siêu vô hướng n  Đa luồng đan xen n  Đa lõi

n  Bộ xử lý đa lõi là bộ xử lý có nhiều CPU trên một chip à multiprocessors

25 Oct 2013 Kiến trúc máy tính 37

NKK-HUST

Kiến trúc máy tính

BỘ NHỚ MÁY TÍNH

Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội

25 Oct 2013 Kiến trúc máy tính 38

NKK-HUST

39

Bộ nhớ máy tính

n  Chức năng: nhớ chương trình và dữ liệu.

n  Các thao tác cơ bản với bộ nhớ: n  Thao tác ghi (Write) n  Thao tác đọc (Read)

n  Các thành phần chính: n  Bộ nhớ trong (Internal Memory) n  Bộ nhớ ngoài (External Memory)

25 Oct 2013 Kiến trúc máy tính

NKK-HUST

40

n  Chức năng và đặc điểm: n  Chứa các thông tin mà CPU có thể trao đổi

trực tiếp n  Tốc độ rất nhanh n  Dung lượng không lớn n  Sử dụng bộ nhớ bán dẫn: ROM và RAM

n  Các loại bộ nhớ trong: n  Bộ nhớ chính n  Bộ nhớ cache (bộ nhớ đệm)

Bộ nhớ trong

25 Oct 2013 Kiến trúc máy tính

Page 11: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 11

NKK-HUST

41

Bộ nhớ ngoài n  Chức năng và đặc điểm

n  Lưu giữ tài nguyên phần mềm của máy tính n  Được kết nối với hệ thống dưới dạng các

thiết bị vào-ra n  Dung lượng lớn n  Tốc độ chậm

n  Các loại thông dụng n  Ổ đĩa cứng (HDD) n  Đĩa quang (CD, DVD) n  Thẻ nhớ SD (Secure Digital), USB flash, SSD

(Solid State Drive) 25 Oct 2013 Kiến trúc máy tính

NKK-HUST

Phân cấp hệ thống nhớ

Từ trái sang phải: •  dung lượng tăng dần •  tốc độ giảm dần •  giá thành cùng dung lượng giảm dần

Bộ vi xử lýCPU

Cahe L1

Tập thanh

ghi

Bộ nhớ

chính

Bộ nhớ

ngoài

Cache L2

Bộ nhớ mạng

25 Oct 2013 Kiến trúc máy tính 42

NKK-HUST

Công nghệ bộ nhớ

n  Static RAM (SRAM) n  0.5ns – 2.5ns, $2000 – $5000 per GB

n  Dynamic RAM (DRAM) n  50ns – 70ns, $20 – $75 per GB

n  Ổ đĩa từ n  5ms – 20ms, $0.20 – $2 per GB

n  Bộ nhớ lý tưởng n  Thời gian truy nhập như SRAM n  Dung lượng và giá thành như ổ đĩa cứng

25 Oct 2013 Kiến trúc máy tính 43

NKK-HUST

Bộ nhớ chính

n  Chứa các chương trình đang thực hiện và các dữ liệu đang được sử dụng

n  Tồn tại trên mọi hệ thống máy tính n  Bao gồm các ngăn nhớ được đánh địa chỉ trực

tiếp bởi CPU n  Dung lượng của bộ nhớ chính nhỏ hơn không

gian địa chỉ bộ nhớ mà CPU quản lý. n  Việc quản lý logic bộ nhớ chính tuỳ thuộc vào

hệ điều hành

25 Oct 2013 Kiến trúc máy tính 44

Page 12: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 12

NKK-HUST

Tổ chức bộ nhớ đan xen (interleaved memory)

n  Độ rộng của bus dữ liệu để trao đổi với bộ nhớ: m = 8, 16, 32, 64,128 ... bit

n  Các ngăn nhớ được tổ chức theo byte à tổ chức bộ nhớ vật lý khác nhau

25 Oct 2013 Kiến trúc máy tính 45

NKK-HUST

m=8bit à một băng nhớ tuyến tính

6543210

. . .

. . .AN-1 - A0

D7 - D0

i

25 Oct 2013 Kiến trúc máy tính 46

NKK-HUST

m = 16bit à hai băng nhớ đan xen

97531

. . .

. . .

AN-1 - A1

D15 - D8

86420

. . .

. . .

D7 - D0

2i2i+1

Bộ tạotín hiệu chọn byte

A0

B

WBE1

BE0

Băng 1 Băng 0

BE0BE11

1

0

0BE1

1

0

1

0BE0

không chọn

Chọn byte thấp

Chọn byte cao

Chọn cả hai byte

Chọn byteCCác tín hiệu chọn byte

25 Oct 2013 Kiến trúc máy tính 47

NKK-HUST

m = 32bit à bốn băng nhớ đan xen

1713951

. . .

. . .

AN-1 - A2

D15 - D8

1612840

. . .

. . .

D7 - D0

BE1 BE0

4i4i+1

Bộ tạo tín

hiệu chọn byte

A0

BW

BE1

19151173

. . .

. . .

D31-D24

18141062

. . .

. . .

D23-D16

BE3 BE2

4i+24i+3

A1

DW

BE0

BE2

BE3

băng 3 băng 2 băng 1 băng 0

25 Oct 2013 Kiến trúc máy tính 48

Page 13: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 13

NKK-HUST

m = 64bit à tám băng nhớ đan xen

1791

. . .

. . .

AN-1 - A3

D15 - D8

1680

. . .

. . .

D7 - D0

BE1 BE0

8i8i+1

23157

. . .

. . .

D63-D56

BE7

8i+7

băng 7 băng 1 băng 0

. . .

25 Oct 2013 Kiến trúc máy tính 49

NKK-HUST

Bộ nhớ đệm nhanh (cache memory)

Nguyên tắc chung của cache n  Cache có tốc độ nhanh hơn bộ nhớ chính n  Cache được đặt giữa CPU và bộ nhớ chính nhằm

giảm thời gian CPU truy cập bộ nhớ n  Cache có thể được đặt trên chip CPU

cacheCPU Bộ nhớ chính

truyền theo từ nhớ truyền theo block nhớ

25 Oct 2013 Kiến trúc máy tính 50

NKK-HUST

Cấu trúc chung của cache / bộ nhớ chính

L0

CPU

L1

L2

L3

Li

Lm-1

B0

B1

B2

B3

Bj

BP-1

CacheTagBộ nhớ chính

. . .

. . .. . .

. . .

25 Oct 2013 Kiến trúc máy tính 51

NKK-HUST

Cấu trúc chung của cache / bộ nhớ chính (tiếp)

n  Bộ nhớ chính có 2N byte nhớ n  Bộ nhớ chính và cache được chia thành

các khối có kích thước bằng nhau n  Bộ nhớ chính: B0, B1, B2, ... , Bp-1 (p Blocks) n  Bộ nhớ cache: L0, L1, L2, ... , Lm-1 (m Lines) n  Kích thước của Block = 8,16,32,64,128 byte

25 Oct 2013 Kiến trúc máy tính 52

Page 14: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 14

NKK-HUST

Cấu trúc chung của cache / bộ nhớ chính (tiếp)

n  Một số Block của bộ nhớ chính được nạp vào các Line của cache.

n  Nội dung Tag (thẻ nhớ) cho biết Block nào của bộ nhớ chính hiện đang được chứa ở Line đó.

n  Khi CPU truy nhập (đọc/ghi) một từ nhớ, có hai khả năng xảy ra: n  Từ nhớ đó có trong cache (cache hit) n  Từ nhớ đó không có trong cache (cache

miss).

25 Oct 2013 Kiến trúc máy tính 53

NKK-HUST

Các phương pháp ánh xạ

n  Ánh xạ trực tiếp (Direct mapping)

n  Ánh xạ liên kết toàn phần (Fully associative mapping)

n  Ánh xạ liên kết tập hợp (Set associative mapping)

25 Oct 2013 Kiến trúc máy tính 54

NKK-HUST

Ánh xạ trực tiếp n  Mỗi Block của bộ nhớ chính chỉ có thể được nạp

vào một Line của cache: n  B0 à L0 n  B1 à L1 n  .... n  Bm-1 à Lm-1 n  Bm à L0 n  Bm+1 à L1 n  ....

n  Tổng quát n  Bj chỉ có thể nạp vào L j mod m n  m là số Line của cache.

25 Oct 2013 Kiến trúc máy tính 55

NKK-HUST

Minh hoạ ánh xạ trực tiếp

Tag

CacheTagBộ nhớ chính

. . .

. . .

Line Word

Nbit địa chỉ bộ nhớ

T bit L bit W bit

So sánh

cache hit

L0

L1

Li

Lm-1

cache miss

. . .

. . .

B0

B1

Bj

Bm-1

XX

25 Oct 2013 Kiến trúc máy tính 56

Page 15: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 15

NKK-HUST

Đặc điểm của ánh xạ trực tiếp

n  Mỗi một địa chỉ N bit của bộ nhớ chính gồm ba trường: n  Trường Word gồm W bit xác định một từ nhớ

trong Block hay Line: 2W = kích thước của Block hay Line

n  Trường Line gồm L bit xác định một trong số các Line trong cache: 2L = số Line trong cache = m

n  Trường Tag gồm T bit: T = N - (W+L)

n  Bộ so sánh đơn giản n  Xác suất cache hit thấp

25 Oct 2013 Kiến trúc máy tính 57

NKK-HUST

Ánh xạ liên kết toàn phần

n  Mỗi Block có thể nạp vào bất kỳ Line nào của cache.

n  Địa chỉ của bộ nhớ chính bao gồm hai trường: n  Trường Word giống như trường hợp ở

trên. n  Trường Tag dùng để xác định Block của

bộ nhớ chính. n  Tag xác định Block đang nằm ở Line đó

25 Oct 2013 Kiến trúc máy tính 58

NKK-HUST

Minh hoạ ánh xạ liên kết toàn phần

Tag

CacheTag Bộ nhớ chính

. . .

. . .

Word

N bit địa chỉ bộ nhớ

T bit W bit

So sánh

cache hit

L0

L1

Li

Lm-1

cache miss

. . .

. . .

B0

B1

Bj

Bm-1

X

X

25 Oct 2013 Kiến trúc máy tính 59

NKK-HUST

Đặc điểm của ánh xạ liên kết toàn phần

n  So sánh đồng thời với tất cả các Tag à mất nhiều thời gian

n  Xác suất cache hit cao. n  Bộ so sánh phức tạp. n  Ít được sử dụng

25 Oct 2013 Kiến trúc máy tính 60

Page 16: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 16

NKK-HUST

Ánh xạ liên kết tập hợp

n  Cache đươc chia thành các Tập (Set) n  Mỗi một Set chứa một số Line n  Ví dụ:

n  4 Line/Set à 4-way associative mapping n  Ánh xạ theo nguyên tắc sau:

n  B0 à S0

n  B1 à S1

n  B2 à S2 n  .......

25 Oct 2013 Kiến trúc máy tính 61

NKK-HUST

Minh hoạ ánh xạ liên kết tập hợp

Tag

CacheTagBộ nhớ chính

. . .

Set Word

Nbit địa chỉ bộ nhớ

T bit S bit W bit

So sánh

cache hit

S0

S1

Sk

Sv-1

cache miss

XX

L0

L1

L2

L3

L4

L5

L6

L7

. . .

. . .

B0

B1

B2

B3

B4

B5

. . .

25 Oct 2013 Kiến trúc máy tính 62

NKK-HUST

Đặc điểm của ánh xạ liên kết tập hợp

n  Kích thước Block = 2W Word n  Trường Set có S bit dùng để xác định

một trong số V = 2S Set n  Trường Tag có T bit: T = N - (W+S) n  Tổng quát cho cả hai phương pháp trên n  Thông thường 2,4,8,16Lines/Set

25 Oct 2013 Kiến trúc máy tính 63

NKK-HUST

Thay thế block trong cache (1)

Ánh xạ trực tiếp: n  Không phải lựa chọn n  Mỗi Block chỉ ánh xạ vào một Line xác định

n  Thay thế Block ở Line đó

25 Oct 2013 Kiến trúc máy tính 64

Page 17: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 17

NKK-HUST

Thay thế block trong cache (2)

Ánh xạ liên kết – cần có thuật giải thay thế: n  Random: Thay thế ngẫu nhiên n  FIFO (First In First Out): Thay thế Block nào

nằm lâu nhất ở trong Set đó n  LFU (Least Frequently Used): Thay thế Block

nào trong Set có số lần truy nhập ít nhất trong cùng một khoảng thời gian

n  LRU (Least Recently Used): Thay thế Block ở trong Set tương ứng có thời gian lâu nhất không được tham chiếu tới.

n  Tối ưu nhất: LRU 25 Oct 2013 Kiến trúc máy tính 65

NKK-HUST

Phương pháp ghi dữ liệu khi cache hit

n  Ghi xuyên qua (Write-through): n  ghi cả cache và cả bộ nhớ chính n  tốc độ chậm

n  Ghi trả sau (Write-back): n  chỉ ghi ra cache n  tốc độ nhanh n  khi Block trong cache bị thay thế cần phải

ghi trả cả Block về bộ nhớ chính

25 Oct 2013 Kiến trúc máy tính 66

NKK-HUST

Hệ thống lưu trữ dung lượng lớn - RAID

n  Redundant Array of Inexpensive Disks n  Redundant Array of Independent Disks n  Tập các ổ đĩa cứng vật lý được OS coi như một ổ logic duy nhất à dung lượng lớn

n  Dữ liệu được lưu trữ phân tán trên các ổ đĩa vật lý à truy cập song song (nhanh)

n  Lưu trữ thêm các thông tin dư thừa, cho phép khôi phục lại thông tin trong trường hợp đĩa bị hỏng à an toàn thông tin

n  7 loại phổ biến (RAID 0 – 6)

25 Oct 2013 Kiến trúc máy tính 67

NKK-HUST

RAID 0, 1, 2

25 Oct 2013 Kiến trúc máy tính 68

Page 18: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 18

NKK-HUST

RAID 3 & 4

25 Oct 2013 Kiến trúc máy tính 69

NKK-HUST

RAID 5 & 6

25 Oct 2013 Kiến trúc máy tính 70

NKK-HUST

Bộ nhớ ảo (Virtual Memory)

n  Khái niệm bộ nhớ ảo: gồm bộ nhớ chính và bộ nhớ ngoài mà được CPU coi như là một bộ nhớ duy nhất (bộ nhớ chính).

n  Các kỹ thuật thực hiện bộ nhớ ảo: n  Kỹ thuật phân trang: Chia không gian địa

chỉ bộ nhớ thành các trang nhớ có kích thước bằng nhau và nằm liền kề nhau

Thông dụng: kích thước trang = 4KBytes n  Kỹ thuật phân đoạn: Chia không gian nhớ

thành các đoạn nhớ có kích thước thay đổi, các đoạn nhớ có thể gối lên nhau.

25 Oct 2013 Kiến trúc máy tính 71

NKK-HUST

Phân trang

n  Phân chia bộ nhớ thành các phần có kích thước bằng nhau gọi là các khung trang

n  Chia chương trình (tiến trình) thành các trang n  Cấp phát số hiệu khung trang yêu cầu cho

tiến trình n  HĐH duy trì danh sách các khung trang nhớ

trống n  Tiến trình không yêu cầu các khung trang liên

tiếp n  Sử dụng bảng trang để quản lý

25 Oct 2013 Kiến trúc máy tính 72

Page 19: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 19

NKK-HUST

Cấp phát các khung trang

25 Oct 2013 Kiến trúc máy tính 73

NKK-HUST

Địa chỉ logic và địa chỉ vật lý của phân trang

25 Oct 2013 Kiến trúc máy tính 74

NKK-HUST

Nguyên tắc làm việc của bộ nhớ ảo phân trang

n  Phân trang theo yêu cầu n  Không yêu cầu tất cả các trang của tiến trình nằm

trong bộ nhớ n  Chỉ nạp vào bộ nhớ những trang được yêu cầu

n  Lỗi trang n  Trang được yêu cầu không có trong bộ nhớ n  HĐH cần hoán đổi trang yêu cầu vào n  Có thể cần hoán đổi một trang nào đó ra để lấy

chỗ n  Cần chọn trang để đưa ra

25 Oct 2013 Kiến trúc máy tính 75

NKK-HUST

Thất bại

n  Quá nhiều tiến trình trong bộ nhớ quá nhỏ n  HĐH tiêu tốn toàn bộ thời gian cho việc hoán đổi

n  Có ít hoặc không có công việc nào được thực hiện

n  Đĩa luôn luôn sáng n  Giải pháp:

n  Thuật toán thay trang n  Giảm bớt số tiến trình đang chạy n  Thêm bộ nhớ

25 Oct 2013 Kiến trúc máy tính 76

Page 20: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 20

NKK-HUST

Lợi ích

n  Không cần toàn bộ tiến trình nằm trong bộ nhớ để chạy

n  Có thể hoán đổi trang được yêu cầu n  Như vậy có thể chạy những tiến trình

lớn hơn tổng bộ nhớ sẵn dùng n  Bộ nhớ chính được gọi là bộ nhớ thực n  Người dùng cảm giác bộ nhớ lớn hơn

bộ nhớ thực

25 Oct 2013 Kiến trúc máy tính 77

NKK-HUST

Kiến trúc máy tính

HỆ THỐNG VÀO-RA

Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội

78 25 Oct 2013 Kiến trúc máy tính 78

NKK-HUST

Tổng quan về vào-ra

n  Chức năng của vào-ra: Trao đổi thông tin giữa máy tính với thế giới bên ngoài

n  Các thao tác cơ bản: n  Vào dữ liệu (Input) n  Ra dữ liệu (Output)

n  Các thành phần chính: n  Các thiết bị ngoại vi n  Các mô-đun vào-ra

25 Oct 2013 Kiến trúc máy tính 79

NKK-HUST

Cấu trúc cơ bản của hệ thống vào-ra

Mô-đun vào-ra

Mô-đun vào-ra

Cổngvào-ra

Thiết bị ngoại vi

Thiết bị ngoại vi

Thiết bị ngoại vi

nối ghép với CPU

và bộ nhớ

chính

Cổngvào-ra

Cổngvào-ra

bus hệ

thống

25 Oct 2013 Kiến trúc máy tính 80

Page 21: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 21

NKK-HUST

Kết nối memory-I/O

25 Oct 2013 Kiến trúc máy tính 81

NKK-HUST

Địa chỉ hoá cổng vào-ra

n  Vào-ra riêng biệt (Isolated IO hay IO mapped IO)

n  Vào-ra theo bản đồ bộ nhớ (Memory mapped IO)

25 Oct 2013 Kiến trúc máy tính 82

NKK-HUST

Các phương pháp điều khiển vào-ra

n  Vào-ra bằng chương trình (Programmed IO)

n  Vào-ra điều khiển bằng ngắt (Interrupt Driven IO)

n  Truy nhập bộ nhớ trực tiếp - DMA (Direct Memory Access)

n  Sử dụng bộ xử lý vào-ra (IO processor)

25 Oct 2013 Kiến trúc máy tính 83

NKK-HUST

Vào-ra bằng chương trình

n  CPU điều khiển trực tiếp vào-ra bằng chương trình à cần phải lập trình vào-ra.

n  Vào-ra do ý muốn của người lập trình

n  CPU trực tiếp điều khiển vào-ra

n  CPU đợi mô-đun vào-ra à tiêu tốn thời gian của CPU

25 Oct 2013 Kiến trúc máy tính 84

Đọc trạng thái của TBNV

Trao đổi dữ liệu với TBNV

TBNV sẵn sàng?

Y

N

Page 22: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 22

NKK-HUST

Vào-ra điều khiển bằng ngắt

n  Nguyên tắc chung: n  CPU không phải đợi trạng thái sẵn sàng của mô-đun

vào-ra, CPU thực hiện một chương trình nào đó n  Khi mô-đun vào-ra sẵn sàng thì nó phát tín hiệu ngắt

CPU n  CPU thực hiện chương trình con vào-ra tương ứng để

trao đổi dữ liệu n  CPU trở lại tiếp tục thực hiện chương trình đang bị ngắt

n  Có sự kết hợp giữa phần cứng và phần mềm n  Phần cứng: gây ngắt CPU n  Phần mềm: trao đổi dữ liệu

25 Oct 2013 Kiến trúc máy tính 85

NKK-HUST

Chuyển điều khiển đến chương trình con ngắt

lệnh i+1

lệnh i

lệnh

lệnh

lệnh

lệnh

Ngắt ở đây

. . .

lệnh

lệnh

lệnh

RETURN

. . .

lệnh

lệnh

Chương trình đang thực hiên

Chương trình con phục vụ ngắt

25 Oct 2013 Kiến trúc máy tính 86

NKK-HUST

Truy nhập bộ nhớ trực tiếp

n  Vào-ra bằng chương trình và bằng ngắt do CPU trực tiếp điều khiển: n  Chiếm thời gian của CPU

n  Để khắc phục dùng DMA (Direct Memory Access) n  Thêm mô-đun phần cứng trên bus à DMAC

(Controller) n  DMAC điều khiển trao đổi dữ liệu giữa mô-đun vào-ra

với bộ nhớ chính n  Phù hợp với các yêu cầu trao đổi mảng dữ liệu

có kích thước lớn

25 Oct 2013 Kiến trúc máy tính 87

NKK-HUST

Bộ xử lý vào-ra

n  Việc điều khiển vào-ra được thực hiện bởi một bộ xử lý vào-ra chuyên dụng

n  Bộ xử lý vào-ra hoạt động theo chương trình của riêng nó

n  Chương trình của bộ xử lý vào-ra có thể nằm trong bộ nhớ chính hoặc nằm trong một bộ nhớ riêng

25 Oct 2013 Kiến trúc máy tính 88

Page 23: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 23

NKK-HUST

Nối ghép thiết bị ngoại vi §  Các kiểu nối ghép vào-ra

§  Nối ghép song song §  Truyền nhiều bit song song §  Tốc độ nhanh §  Cần nhiều đường truyền dữ liệu

§  Nối ghép nối tiếp §  Truyền lần lượt từng bit §  Cần chuyển đổi từ dữ liệu song song sang nối

tiếp hoặc/và ngược lại §  Tốc độ chậm hơn §  Cần ít đường truyền dữ liệu

25 Oct 2013 Kiến trúc máy tính 89

NKK-HUST

Các cấu hình nối ghép

n  Điểm tới điểm (Point to Point) n  Thông qua một cổng vào-ra nối ghép với một

thiết bị ngoại vi n  Điểm tới đa điểm (Point to Multipoint)

n  Thông qua một cổng vào-ra cho phép nối ghép được với nhiều thiết bị ngoại vi

n  Ví dụ: n  SCSI (Small Computer System Interface): 7 hoặc

15 thiết bị n  USB (Universal Serial Bus): 127 thiết bị

25 Oct 2013 Kiến trúc máy tính 90

NKK-HUST

Kiến trúc máy tính

GIỚI THIỆU KIẾN TRÚC SONG SONG

Nguyễn Kim Khánh Trường Đại học Bách khoa Hà Nội

25 Oct 2013 Kiến trúc máy tính 91

NKK-HUST

Phân loại kiến trúc máy tính (Flynn 1966)

n  SISD - Single Instruction Stream, Single Data Stream n  SIMD - Single Instruction Stream, Multiple Data Stream n  MISD - Multiple Instruction Stream, Single Data Stream n  MIMD - Multiple Instruction Stream, Multiple Data Stream

25 Oct 2013 Kiến trúc máy tính 92

Page 24: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 24

NKK-HUST

SISD

n  CU: Control Unit n  PU: Processing Unit n  MU: Memory Unit n  Một bộ xử lý n  Đơn dòng lệnh n  Dữ liệu được lưu trữ trong một bộ nhớ n  Chính là Kiến trúc von Neumann

CU PU MUIS DS

25 Oct 2013 Kiến trúc máy tính 93

NKK-HUST

SIMD

.  .  .

CUPE2 LM2IS

DS

PE1 LM1DS

PEn LMnDS

25 Oct 2013 Kiến trúc máy tính 94

NKK-HUST

SIMD (tiếp)

n  Đơn dòng lệnh điều khiển đồng thời các phần tử xử lý PE (processing elements)

n  Mỗi phần tử xử lý có một bộ nhớ dữ liệu riêng LM (local memory)

n  Mỗi lệnh được thực hiện trên một tập các dữ liệu khác nhau

n  Các mô hình SIMD n  Vector Computer n  Array processor

25 Oct 2013 Kiến trúc máy tính 95

NKK-HUST

MISD

n  Một luồng dữ liệu cùng được truyền đến một tập các bộ xử lý

n  Mỗi bộ xử lý thực hiện một dãy lệnh khác nhau.

n  Chưa tồn tại máy tính thực tế n  Có thể có trong tương lai

25 Oct 2013 Kiến trúc máy tính 96

Page 25: ảng tóm tắt Kiến trúc máy tính 25 Oct 2013iza.namdinh.gov.vn/AttachFiles/CA-Tomtat-4s.pdf · KIẾN TRÚC MÁY TÍNH Computer Architecture Nguyễn Kim Khánh Bộ môn

Bài giảng tóm tắt Kiến trúc máy tính 25 Oct 2013

Nguyễn Kim Khánh - SoICT-HUST 25

NKK-HUST

MIMD

n  Tập các bộ xử lý n  Các bộ xử lý đồng thời thực hiện các

dãy lệnh khác nhau trên các dữ liệu khác nhau

n  Các mô hình MIMD n  Multiprocessors (Shared Memory) n  Multicomputers (Distributed Memory)

25 Oct 2013 Kiến trúc máy tính 97

NKK-HUST

MIMD - Shared Memory

. . .

CU

PE2

IS

DS

PE1

Bộ nhớ dùng chung

DS

PEnDS

CU

CU

. . .

IS

IS

25 Oct 2013 Kiến trúc máy tính 98

NKK-HUST

MIMD - Distributed Memory

. . .

CU

PE2 LM2

IS

DS

PE1 LM1DS

PEn LMnDS

CU

CU

. . .

. . .

Mạng liên kết

tốc độ cao

IS

IS

25 Oct 2013 Kiến trúc máy tính 99

NKK-HUST

Hết

25 Oct 2013 Kiến trúc máy tính 100