1. Trang chủ
  2. » Luận Văn - Báo Cáo

Bài giảng môn Kiến trúc máy tính: Chương 3 - Chức năng và kết nối máy tính

58 3 0
Tài liệu đã được kiểm tra trùng lặp

Đ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

Tiêu đề Chức năng và kết nối máy tính
Trường học Viện Nghiên Cứu Cao Cấp Princeton
Chuyên ngành Kiến trúc máy tính
Thể loại bài giảng
Định dạng
Số trang 58
Dung lượng 2,27 MB

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

Nội dung

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 ng

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

1 Các thành phần máy tính

John von Neumann tại Viện nghiên cứu cao cấp Princeton

chính:

quan tâm đến kiểu dữ liệu

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

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ả

Bộ nhớ để lưu trữ mã và kết quả tạm thời

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

Figure 3.2 Computer Components: Top-Level View

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 9

+

2 Chức năng máy tính

9 Chức năng cơ bản của máy tính là

thực thi một chương trình!

Trang 10

10

Chu kỳ lệnh cơ bản

Fetch Cycle Execute Cycle

Execute Instruction

Figure 3.3 Basic Instruction Cycle

 Thực thi một chương trình là lặp lại quá trình thực

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

 2 bước:

 Truy xuất

 Thi hành

Trang 11

11

Chu kỳ truy xuất

 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

+

Ví dụ 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

END

5

(c) Interrupts; long I/O wait

Figure 3.7 Program Flow of Control Without and With Interrupts

17

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

Fetch Cycle Execute Cycle Interrupt Cycle

Interrupts Disabled

Interrupts Enabled

Execute Instruction

Check for Interrupt;

Process Interrupt

Figure 3.9 Instruction Cycle with Interrupts

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

Thờ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

Figure 3.13 Transfer of Control with Multiple Interrupts

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 interrupt service routine Printer interrupt service routine Communication

Disk interrupt service routine

Figure 3.14 Example Time Sequence of Multiple Interrupts

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

+

Các module máy tính

Address Write Read

I/O Module

M Ports

External Data

Address

Internal Data

External Data

Interrupt Signals

Internal Data

Write Read

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)

 Bus là phương tiện truyền dẫn chung, là đường thông 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

 Bus hệ thống: Đường bus kết nối các thành phần chí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ỉ

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ỉ

thống

 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

Figure 3.16 Bus Interconnection Scheme

Bus

I/O

Control lines Address lines Data lines

Trang 36

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

 Khi số lượng lớn thiết bị được kết nối với bus, hiệu

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ác hệ thống sử dụng đa bus để khắc phục các vấn

đề của đơn bus

Trang 37

System Bus

Processor

Main Memory

Local I/O controller

Expansion bus interface

Cache /Bridge Processor Local Bus

Trang 38

System Bus

Processor

Main Memory

Local I/O controller

Expansion bus interface

Cache /Bridge Processor Local Bus

Video LAN System Bus

Trang 39

+

Các yếu tố trong thiết kế Bus

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

Status signals Stable address

Read

cycle

Address

lines Address

enable

Read

Valid data out

Data lines

Write

cycle

Write

40

Trang 41

(a) System bus read cycle

Figure 3.19 Timing of Asynchronous Bus Operations

Acknowledge

Status

(b) System bus write cycle

Trang 42

(a) System bus read cycle

Figure 3.19 Timing of Asynchronous Bus Operations

Acknowledge

Status

(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

 Các kết nối từng cặp trực tiếp tới các thành phần khác giúp loại bỏ 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

không chỉ đơn giản sử dụng tín hiệu điều khiển thường thấy trong 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 chip đa nhân sử dụng QPI

Figure 3.20 Multicore Configuration Using QPI

Core A I/O Hub

I/O Hub

Core B

Core C

Core D

Trang 47

Lớp liên kết QPI

Chức năng điều khiển lỗi

 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

đượ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

 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)

PCI

 PCI Express (PCIe)

tốc độ dữ liệu cao hơn, như Gigabit Ethernet

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)

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

 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

57

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: 14/10/2023, 14:06

HÌNH ẢNH LIÊN QUAN

Sơ đồ trạng thái chu kỳ lệnh - Bài giảng môn Kiến trúc máy tính: Chương 3 - Chức năng và kết nối máy tính
Sơ đồ tr ạng thái chu kỳ lệnh (Trang 15)
Sơ đồ trạng thái chu kỳ lệnh - Bài giảng môn Kiến trúc máy tính: Chương 3 - Chức năng và kết nối máy tính
Sơ đồ tr ạng thái chu kỳ lệnh (Trang 23)
Sơ đồ kết nối BUS - Bài giảng môn Kiến trúc máy tính: Chương 3 - Chức năng và kết nối máy tính
Sơ đồ k ết nối BUS (Trang 35)

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

w