1. Trang chủ
  2. » Công Nghệ Thông Tin

Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3

58 63 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 1,91 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

 Dữ liệu và lệnh được lưu trữ trên một bộ nhớ đọc-ghi  Nội dung của bộ nhớ được đánh địa chỉ theo vị trí mà không quan tâm đến kiểu dữ liệu.. 11  Vào đầu mỗi chu kỳ lệnh, bộ xử lý tru

Trang 1

+ Chương 3

Chức năng và kết nối máy tính

1

Trang 2

5 Kết nối điểm-điểm QPI

6 PCI Express

2

Trang 3

 Dữ liệu và lệnh được lưu trữ trên một bộ nhớ đọc-ghi

 Nội dung của bộ nhớ được đánh địa chỉ theo vị trí mà không quan tâm đến kiểu dữ liệu

 Thi hành lệnh một cách tuần tự (trừ khi được thay đổi rõ ràng)

Chương trình nối cứng (Hardwired program)

 Kết quả của quá trình kết nối các thành phần khác nhau theo một cấu hình mong muốn

3

Trang 4

Khái niệm chương trình

• Hệ thống mạch nối cứng không linh hoạt

• Phần cứng đa năng có thể

thực hiện nhiều tác vụ khác

nhau, tạo ra

các tín hiệu

điều khiển

Trang 5

+

 Phần mềm (Software)

 Một chuỗi các mã hoặc câu lệnh

 Một bộ phận phần cứng làm chức năng phiên dịch từng lệnh và tạo ra tín hiệu điều khiển

 Đưa ra chuỗi mã mới cho mỗi chương trình khác nhau thay vì đi lại dây nối phần cứng

5

Phần mềm

Trang 6

 Module xuất: Công cụ để hiện thị kết quả

Trang 8

Cấu tạo máy tính: Nhìn từ trên xuống

I/O AR I/O BR

System Bus

I/O Module

Buffers

Instruction

0 1 2

n – 2

n – 1

Data Data Data Data

Instruction Instruction

PC = Program counter

IR = Instruction register MAR = Memory address register MBR = Memory buffer register I/O AR = Input/output address register I/O BR = Input/output buffer register

Execution

unit

8

Trang 10

hiện từng chu kì lệnh

 Thi hành

Trang 11

11

 Vào đầu mỗi chu kỳ lệnh, bộ xử lý truy xuất một lệnh từ

bộ nhớ

 Thanh ghi bộ đếm chương trình (PC) chứa địa chỉ của

lệnh được truy xuất tiếp theo

 Bộ xử lý sau mỗi lần truy xuất 1 lệnh sẽ tăng bộ đếm lên

do đó nó sẽ truy xuất được lệnh tiếp theo vào lần sau

 Lệnh vừa được truy xuất được tải vào thanh ghi lệnh

 Bộ xử lý biên dịch lệnh và thi hành những hành động cần thiết

Trang 12

 Dữ liệu truyền đến/đi từ thiết bị ngoại vi bằng cách

truyền thông tin giữa bộ xử lý và module I/O

Trang 13

Đặc tính của Máy giả thiết

13

Trang 14

+

thi hành chương trình

Trang 15

15

Sơ đồ trạng thái chu kỳ lệnh

Trang 16

16

Phân loại các gián đoạn

 Gián đoạn chương trình: Gây ra bởi lỗi thi hành lệnh, ví dụ như tràn số học, lỗi chia cho 0, cố tình thực hiện các lệnh máy không hợp lệ, hoặc tham chiếu ngoài phạm vi bộ nhớ mà người sử dụng được phép

 Gián đoạn định thời : Gây ra bởi đồng hồ nằm trong bộ xử

lý Nó cho phép hệ điều hành thực hiện các chức năng cơ bản nhất định

 Gián đoạn I/O : Gây ra bởi bộ điều khiển I/O, để báo hiệu hoàn thành một thao tác, yêu cầu dịch vụ từ bộ xử lý, hoặc báo hiệu các trường hợp lỗi

 Gián đoạn lỗi phần cứng : Gây ra bởi một số lỗi như lỗi

nguồn hay lỗi bộ nhớ

Trang 17

Điều khiển dòng chương trình

I/O Command

END 1

WRITE

WRITE

WRITE

I/O Program

I/O Command

Interrupt Handler

WRITE

WRITE

WRITE

I/O Program

I/O Command

Interrupt Handler

Trang 18

Chu kỳ gián đoạn

 Thêm vào chu kỳ lệnh

 bộ vi xử lý kiểm tra để ngắt

 Được chỉ thị bằng tín hiệu gián đoạn

 Nếu không có gián đoạn, truy xuất lệnh tiếp theo

 Nếu gián đoạn đang chờ xử lý:

 Tạm ngưng thực hiện chương trình hiện tại

Trang 19

19

Truyền điều khiển qua các gián đoạn

B ộ xử lý và hệ điều hành có trách nhiệm dừng chương trình người dùng và sau đó nối lại tại cùng một điểm

Trang 20

Interrupts Disabled

Interrupts Enabled

Execute Instruction

Check for Interrupt;

Process Interrupt

Bộ xử lý được sử dụng hiệu quả hơn khi có hỗ trợ gián đoạn

Trang 21

21

Thời gian chương trình: Đợi I/O ngắn

Trang 22

22

T hời gian chương trình: Đợi I/O dài

Trang 23

Sơ đồ trạng thái chu kỳ lệnh

Operand address calculation

Data Operation

Operand address calculation

Instruction

fetch

Instruction complete, fetch next instruction

Multiple operands

Return for string

or vector data

Figure 3.12 Instruction Cycle State Diagram, With Interrupts

No interrupt

Operand fetch

Operand store

Interrupt check Interrupt

Multiple results

23

Trang 24

+

Nhiều gián đoạn

User program

Interrupt handler X

Interrupt handler Y

(a) Sequential interrupt processing

(b) Nested interrupt processing

User program

Interrupt handler X

Interrupt handler Y

Truyền tín hiệu điều khiển

24

Trang 25

Nhiều gián đoạn

Vô hiệu hoá gián đoạn

 Bộ vi xử lý sẽ bỏ qua các gián đoạn khác trong khi xử lý một gián đoạn

 Các gián đoạn đó chờ xử lý và được kiểm tra sau khi gián đoạn đầu tiên đã được xử lý

 gián đoạn được xử lý theo trình tự xuất hiện

Độ ưu tiên

 Các gián đoạn ưu tiên thấp có thể bị ngắt bởi các gián đoạn ưu tiên cao hơn

 Khi gián đoạn ưu tiên cao hơn đã được xử lý xong, bộ

xử lý quay trở lại gián đoạn trước

Trang 26

+ Trình tự thời gian của nhiều gián đoạn

User program Printer

interrupt service routine

Communication interrupt service routine

Disk interrupt service routine

Trang 27

Chức năng I/O

 Module I/O có thể trao đổi dữ liệu trực tiếp với bộ xử lý

 Bộ xử lý có thể đọc dữ liệu từ/ghi dữ liệu lên module I/O

 Bộ xử lý xác định thiết bị nào được điều khiển bởi module I/O nào

 I/O đưa ra lệnh chứ không phải là bộ nhớ đưa ra lệnh

 Trong một số trường hợp, cần cho phép I/O trao đổi trực tiếp với bộ nhớ

 Bộ xử lý cấp cho module I/O quyền đọc/ghi vào bộ nhớ do đó việc truyền tin giữa module I/O và bộ nhớ có thể diễn ra trực tiếp mà

không cần thông qua bộ xử lý

 Module I/O đưa ra yêu cầu đọc/ghi tới bộ nhớ và giải phóng nhiệm

vụ chuyển dữ liệu cho bộ xử lý

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

Trang 28

Address Write Read

I/O Module

M Ports

External Data

Address

Internal Data

External Data

Interrupt Signals

Internal Data

Write Read

CPU

Data

Data

Address Instructions

Control Signals

Interrupt Signals

3

Cấu trúc kết

nối

28

Trang 29

Cấu trúc kết nối hỗ trợ các hình thức truyền sau:

• Bộ xử lý đọc 1 lệnh hoặc 1 đơn vị dữ liệu từ bộ nhớ

Trang 30

4 BUS kết nối (1)

tin kết nối chung giữa 2 hay nhiều thiết bị

các thiết bị khác cùng kết nối với bus đó

sẽ bị chồng nhau và bị méo

1 và bit 0

30

Trang 31

4 BUS kết nối (2)

cấp đường kết nối giữa các thành phần thuộc các cấp khác nhau của hệ thống máy tính

của máy tính (bộ xử lý, bộ nhớ, I/O)

sử dụng một hoặc nhiều bus hệ thống

31

Trang 32

Bus dữ liệu

giữa các module hệ thống

Trang 33

Bus địa chỉ

 Được sử dụng để xác định địa chỉ nguồn/đích của dữ

liệu trên bus dữ liệu

 Nếu bộ xử lý muốn đọc 1 word từ bộ nhớ, nó sẽ đặt địa chỉ của word đó lên đường bus địa chỉ

 Độ rộng bus xác định dung lượng nhớ tối đa của hệ

thống

 Cũng được sử dụng để xác định cổng vào/ra

 Các bit bậc cao được sử dụng để lựa chọn module cụ

thể trên bus còn bit bậc thấp dùng để chọn vị trí bộ nhớ hoặc cổng vào/ra trong module

33

Trang 34

Bus điều khiển

 Được sử dụng để điều khiển việc truy nhập và sử dụng

bus dữ liệu và bus địa chỉ

 Bởi vì bus dữ liệu và bus địa chỉ được chia sẻ cho tất cả

các thành phần nên cần phải có một công cụ kiểm soát

Trang 35

Sơ đồ kết nối BUS

Trang 36

Vấn đề của đơn BUS 36

suất sẽ bị ảnh hưởng

 Càng nhiều thiết bị gắn vào bus, bus càng dài  trễ

truyền càng lớn

 Bus có thể trở thành nút cổ chai nếu lượng dữ liệu

truyền tổng cộng gần bằng dung lượng bus

đề của đơn bus

Trang 37

System Bus

Processor

Main Memory

Local I/O controller

Expansion bus interface

Cấu hình đa bus

Kiến trúc truyền thống (Có cache)

37

Trang 38

(a) Traditional Bus Architecture

Expansion bus interface FAX

SCSI

Modem

Serial FireWire Graphic

Main Memory

Cache /Bridge Processor Local Bus

Video LAN System Bus

High-Speed Bus

Expansion Bus

Cấu hình đa bus

Kiến trúc hiệu suất cao

38

Trang 39

+

Type

Dedicated Multiplexed

39

Trang 40

Phân chia thời gian hoạt động trên BUS đồng bộ

Figure 3.18 Timing of Synchronous Bus Operations

cycle

Address

lines Address

enable

Read

Valid data out

Data lines Write

cycle

Write

40

Trang 41

(a) System bus read cycle

Trang 42

(b) System bus write cycle

Trang 43

5 Kết nối điểm - điểm

 Lý do chính dẫn tới sự thay đổi từ BUS sang kết nối

điểm-điểm là những hạn chế về điện gặp phải khi tăng tần số của các bus đồng bộ

 Tốc độ dữ liệu càng cao thì càng khó thực hiện chức

năng đồng bộ và phân xử một cách kịp thời

 Chia sẻ bus trên cùng 1 chip làm tăng thêm khó khăn

trong việc tăng tốc độ dữ liệu bus và làm giảm độ trễ trến bus để bắt kịp với vi xử lý

 Có độ trễ thấp, tốc độ dữ liệu cao, và khả năng mở rộng tốt hơn

Trang 44

44

QPI Kết nối đường dẫn nhanh

(Quick Path Interconnect)

 Được giới thiệu vào năm 2008

 Nhiều kết nối trực tiếp

việc phân xử thường thấy trong các hệ thống truyền dẫn chia sẻ

 Kiến trúc giao thức phân lớp

sắp xếp các bus chia sẻ

 Truyền dữ liệu đóng gói

điều khiển (header) và mã kiểm soát lỗi

Trang 45

Cấu hình

dụng QPI

Core A I/O Hub

I/O Hub

Core B

Core C

Core D

Trang 47

Lớp liên kết QPI

 Phát hiện và khắc phục lỗi bit,

do đó tránh cho các lớp cao hơn gặp lỗi bit

 Thực hiện hai chức

năng chính: điều khiển

luồng và điều khiển lỗi

và xoá bộ đệm để nhiều dữ liệu mới đến của phía nhận

Trang 48

một gói tin có thể đi theo

 Gói (packet) là đơn vị truyền

 Một chức năng quan trọng được thực hiện ở lớp này là giao thức liên kết bộ nhớ cache

- đảm bảo rằng các giá trị bộ nhớ chính được giữ trong nhiều cache là phù hợp

 Một tải gói dữ liệu điển hình là một khối dữ liệu được gửi đến hoặc từ một bộ nhớ cache

Lớp Định tuyến Lớp Giao thức

48

Trang 49

+ Kết nối thiết bị ngoại vi

Peripheral Component Interconnect (PCI)

 Một bus băng thông cao, độc lập với bộ xử lý, có thể hoạt động như một bus ngoại vi

 Cung cấp hiệu suất hệ thống tốt hơn cho các hệ thống con I / O tốc độ cao

 Nhóm quan tâm đặc biệt PCI (Special Interest Group - SIG)

 Được tạo ra để phát triển và duy trì tính tương thích của các đặc tính PCI

 PCI Express (PCIe)

 Cơ chế kết nối điểm-điểm nhằm thay thế cơ chế dựa trên bus như PCI

 Yêu cầu chính là dung lượng cao để hỗ trợ nhu cầu của thiết bị I / O tốc độ dữ liệu cao hơn, như Gigabit Ethernet

 Một yêu cầu khác là phải hỗ trợ các luồng dữ liệu phụ thuộc thời gian

49

Trang 50

PCIe

PCIe PCIe

PCIe

PCIe–PCI Bridge

Memory

Memory

Legacy endpoint

PCIe endpoint

PCIe endpoint

PCIe endpoint

Switch

Trang 51

Data link layer packets (DLLP)

Transaction

Data Link

Physical Transaction

51

Trang 52

+

Phân phối đa đường PCIe

B1 B2

B3 B4

B5 B6

byte stream

PCIe lane 0

Figure 3.26 PCIe Multilane Distribution

128b/

130b

PCIe lane 2

128b/

130b

PCIe lane 3

128b/

130b

52

Trang 53

 Các giao dịch sử dụng kỹ thuật giao dịch phân chia (split transaction)

 Một thiết bị PCIe nguồn gửi 1 gói tin yêu cầu đi, sau đó đợi 1 phản hồi gọi

là gói hoàn thành

 Bản tin TL và một số giao dịch ghi là

giao dịch gửi (posted transaction)

không cần phản hồi

 Định dạng gói TL hỗ trợ địa chỉ bộ nhớ 32-bit và địa chỉ bộ nhớ 64-bit

mở rộng

Trang 54

+ TL hỗ trợ bốn không gian địa chỉ:

 Message

 Không gian địa chỉ này dành cho các tín hiệu điều khiển liên quan đến gián đoạn, xử lý lỗi, và quản lý năng lượng

54

Trang 55

Các kiểu giao dịch TLP PCIe

Memory Read Request Memory Read Lock Request

Memory

Memory Write Request

Transfer data to or from a location in the system memory map

I/O Read Request

I/O

I/O Write Request

Transfer data to or from a location in the system memory map for legacy devices Config Type 0 Read Request

Config Type 0 Write Request Config Type 1 Read Request

Configuration

Config Type 1 Write Request

Transfer data to or from a location in the configuration space of a PCIe device

Message Request

Message

Message Request with Data

Provides in-band messaging and event reporting

Completion Completion with Data Completion Locked

Memory, I/O,

Configuration

Completion Locked with Data

Returned for certain requests

55

Trang 56

+

Figure  3.28 PCIe Protocol Data Unit Format

STP framing Sequence number

PCIe

56

Trang 57

 Nhiều phân cấp bus

 Các yếu tố thiết kế bus

Trang 58

+ Câu hỏi chương 3

1 Chức năng chính của máy tính?

2 Xác định các trạng thái trong 1 vòng thực thi lệnh

3 Trình bày hai cách xử lý khi có nhiều gián đoạn

4 Cấu trúc kết nối bên trong máy tính (ví dụ: bus) hỗ trợ

những kiểu truyền gì?

5 Lợi ích của việc sử dụng kiến trúc đa bus so với kiến

trúc đơn bus?

6 Định nghĩa ngắn gọn các lớp giao thức QPI

7 Định nghĩa ngắn gọn các lớp giao thức PCIe

58

Ngày đăng: 28/10/2021, 12:22

HÌNH ẢNH LIÊN QUAN

Cấu trúc kết nối hỗ trợ các hình thức truyền sau: - Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3
u trúc kết nối hỗ trợ các hình thức truyền sau: (Trang 29)
Cấu hình đa bus - Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3
u hình đa bus (Trang 37)
Cấu hình đa bus - Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3
u hình đa bus (Trang 38)
Cấu hình chip  đachip đa - Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3
u hình chip đachip đa (Trang 45)
Cấu hình chip  đachip đa - Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3
u hình chip đachip đa (Trang 45)
Cấu hình - Bài giảng Kiến trúc máy tính (ThS. Nguyễn Hằng Phương) Chương 3
u hình (Trang 50)

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm