Bài giảng Kiến trúc máy tính - Chương 3: Tổng quan về máy tính và hệ thống kết nối trong máy tính

Chương 3. Tổng quan về máy tính và

hệ thống kết nối trong máy tính

Phần I. Tổng quan về máy tính

3.1 Các thành phần của máy tính

3.2 Hoạt động của máy tính

Phần II. Hệ thống kết nối

3.3 Cấu trúc kết nối

3.4 Hệ thống bus

3.5 Kết nối điểm-điểm (Point-To-Point)

3.6 PCI Express

pdf 68 trang phuongnguyen 8960
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính - Chương 3: Tổng quan về máy tính và hệ thống kết nối trong máy tính", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Bài giảng Kiến trúc máy tính - Chương 3: Tổng quan về máy tính và hệ thống kết nối trong máy tính

Bài giảng Kiến trúc máy tính - Chương 3: Tổng quan về máy tính và hệ thống kết nối trong máy tính
+ Chương 3
Tổng quan về máy tính và hệ thống kết nối 
trong máy tính
+
Chương 3. Tổng quan về máy tính và 
hệ thống kết nối trong máy tính
Phần I. Tổng quan về máy tính
3.1 Các thành phần của máy tính
3.2 Hoạt động của máy tính
Phần II. Hệ thống kết nối
3.3 Cấu trúc kết nối
3.4 Hệ thống bus
3.5 Kết nối điểm-điểm (Point-To-Point)
3.6 PCI Express
+
3.1. Các thành phần của máy tính
Máy tính hiện đại ngày nay được thiết kế dựa trên
kiến trúc von Neumann (Viện nghiên cứu Princeton)
Kiến trúc Von Neumann có 3 điểm chính:
Dữ liệu và lệnh được lưu trữ trên cùng một bộ nhớ đọc-ghi 
(RAM)
Nội dung của dữ liệu được định vị theo vị trí (địa chỉ) mà
không phụ thuộc vào kiểu dữ liệu.
Các lệnh được thực thi một cách tuần tự (trừ trong một số
trường hợp yêu cầu gọi đến câu lệnh khác).
+
Các thành phần của máy tính (tiếp)
 Phần mềm
 Một chuỗi các lệnh
 Khối CU 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
 Quá trình thực hiện chương trình là truy xuất lệnh từ bộ nhớ và thực thi lệnh của 
CPU
 Phần cứng (3 thành phần chính)
 CPU
 CU: Khối điều khiển thực hiện chức năng biên dịch và thực thi lệnh
 ALU: Khối tính toán số học và logic
 Các Module vào/ra (I/O module)
 Module vào: bao gồm các thành phần cơ bản cho việc nhận vào dữ liệu và lệnh; 
chuyển đổi chúng thành dạng tín hiệu sử dụng bên trong hệ thống
 Module ra: công cụ để hiện thị kết quả
 Bộ nhớ trong (bộ nhớ chính): bộ nhớ ROM, RAM: lưu trữ lệnh, dữ liệu
 Bộ nhớ Cache: cải thiện hiệu suất của hệ thống
Các thành
phần của
máy tính
+
Giải thích một số thanh ghi trong hình:
 Thanh ghi MAR (Memory Address Register) chứa địa chỉ trong 
bộ nhớ cho lần đọc hoặc ghi tiếp theo
 Thanh ghi MBR (Memory Buffer Register) dữ liệu được ghi vào 
bộ nhớ hoặc nhận dữ liệu được đọc từ bộ nhớ.
 Thanh ghi I/OAR (I/O Address Register) xác định một thiết bị 
I/O cụ thể. 
 Thanh ghi I/O BR (I/O Buffer Register) được sử dụng để trao 
đổi dữ liệu giữa một mô-đun I/O và CPU.
 Thanh ghi PC (Program counter Register) chứa địa chỉ lệnh tiếp
theo
 Thanh ghi IR (Instruction Register) chứa lệnh đang được thực thi
+ 3.2. Hoạt động của máy tính
Hoạt động cơ bản của máy tính là thực hiện chương trình:
a. Thực hiện lệnh: chu kỳ lệnh
b. Thực hiện lệnh có xử lý ngắt
c. Thực hiện các chức năng vào ra
+
3.2. Hoạt động của máy tính
 Chức năng chính của máy tính là thực thi chương trình (một tập
lệnh lưu trữ trong BN): VXL phải thực hiện lần lượt các lệnh
 Quá trình VXL thực hiện 1 lệnh gồm 2 bước: lấy lệnh (truy
xuất) từ bộ nhớ và thực thi lệnh.
 Việc thực thi một chương trình là quá trình lặp đi lặp lại việc
truy xuất và thực thi lệnh
 Quá trình thực hiện một lệnh được gọi là chu kỳ lệnh
(instruction cycle)
 Quá trình truy xuất lệnh từ bộ nhớ được gọi là chu kỳ truy xuất (fetch 
cycle)
 Quá trình thực thi lệnh được gọi là chu kỳ thực thi (execute cycle)
a. Thực hiện lệnh: chu kỳ lệnh 
+ a. Truy xuất và thực thi lệnh
 Vào đầu mỗi chu kỳ lệnh, bộ xử lý truy xuất một lệnh từ bộ nhớ
 Thanh ghi PC (Program Counter) giữ địa chỉ của lệnh được truy
xuất tiếp theo
 Bộ xử lý tăng PC sau mỗi lần truy xuất lệnh 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 IR (Instruction 
Register)
 Bộ xử lý biên dịch lệnh và thi hành những hành động cần thiết
Chu kỳ truy xuất
Chu kỳ lệnh cơ bản
+ CPU giải mã và thực hiện các hoạt động (action) tương
ứng được chỉ ra trong mã lệnh (Opcode)
 Có 4 nhóm hoạt động chính của một CPU:
Chu kỳ thực thi
a. Truy xuất và thực thi lệnh
• Dữ liệu truyền từ bộ xử lý đến bộ nhớ
hoặc ngược lại
Bộ xử lý – bộ nhớ
• 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/OBộ xử lý – I/O
• Bộ xử lý có thể thực hiện một số phép
toán số học hoặc logic trên dữ liệu
Xử lý dữ liệu
• Đưa ra lệnh chỉ rõ thứ tự thực hiện các
lệnh bị thay đổi
Điều khiển
+
Ví dụ việc thực hiện lệnh
Máy giả thiết gồm một số thông tin cấu hình như sau:
+Ví dụ
Thực hiện lệnh
Dữ liệu và lệnh được biểu diễn dưới dạng mã thập lục
phân
+
Sơ đồ trạng thái chu kỳ lệnh
+
Ví dụ
 Máy giả thiết trong ví dụ trên có hai lệnh vào/ra sau:
0011 = Đọc dữ liệu từ module I/O vào thanh ghi AC
0111 = Ghi dữ liệu từ AC ra module I/O
Biết các thiết bị ngoại vi được đánh địa chỉ 12b. Giải thích hoạt động của 
chương trình sau (giống Ví dụ 3.5):
1. Đọc dữ liệu từ thiết bị 5 vào thanh ghi AC.
2. Cộng AC với địa chỉ 940 của bộ nhớ.
3. Ghi AC ra thiết bị 6.
Giả sử giá trị được lấy từ thiết bị 5 là 5 và địa chỉ bộ nhớ 940 có giá trị 7.
+
3.2. Hoạt động của máy tính
b. Xử lý ngắt
 Ngắt là một cơ chế máy tính cho phép các module khác (I/O,
bộ nhớ có thể ngắt quá trình xử lý thông thường của BXL. Một số
ngắt:
 Ngắt chương trình: Sinh 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
 Ngắt định thời: Sinh 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.
 Ngắt I/O: Sinh 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ớ
+
Quá trình xử lý ngắt
Ngắt được đưa vào chủ yếu như là 1 cách để để cải thiện 
hiệu quả xử lý: 
 Trong trường hợp VXL thực hiện chương trình có trao đổi dữ liệu 
với I/O
 Do tốc độ của I/O chậm hơn rất nhiều so với VXL VXL phải đợi 
I/O
 Giải pháp: trong lúc chờ đợi I/O, VXL thực hiện tiếp các phần 
công việc khác đến khi I/O xong, nó sẽ gửi tín hiệu đến VXL 
(tín hiệu y/c ngắt) VXL dừng công việc đang làm (ngắt), phục 
vụ I/O VXL tiếp tục cv đang thực hiện
Điều khiển dòng chương trình
+
Điều khiển ngắt
+
Chu kỳ lệnh có ngắt
Sơ đồ trạng thái chu kỳ lệnh 
Có ngắt
+Minh họa 
thời gian 
thực hiện 
chương 
trình
+Định thời
chương
trình: 
Đợi I/O dài
+
Xử lý nhiều ngắt
Trong trường hợp có nhiều ngắt, hai phương pháp để 
xử lý:
 Tắt ngắt
 Bộ vi xử lý sẽ bỏ qua các tín hiệu ngắt khác trong khi xử lý một 
yêu cầu ngắt
 Các yêu cầu ngắt đó sẽ phải chờ đến khi bộ xử lý xử lý xong 
ngắt hiện tại
 Sau khi thực thi xong một ngắt, bộ xử lý sẽ kiểm tra xem có 
ngắt nào đang chờ không. Các ngắt sẽ được xử lý lần lượt
 Xác định ưu tiên
 Cho phép các ngắt có mức độ ưu tiên cao hơn được ngắt các 
ngắt có mức độ ưu tiên thấp hơn
+ 
Nhiều ngắt
Điều khiển 
ngắt
+ Trình tự thời gian của xử lý nhiều ngắt
+ c. Chức năng I/O
Module I/O có thể chuyển dữ liệu trực tiếp với bộ xử lý
 Bộ xử lý có thể đọc dữ liệu từ hoặc 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
 Khi làm việc với module I/O, một chuỗi lệnh tương tự như
P13 có thể được thực hiện chỉ khác ở các lệnh I/O chứ không
phải là các lệnh tham chiếu đến bộ nhớ
 Cơ chế truy cập bộ nhớ trực tiếp (Direct Memory Access -
DMA): cho phép I/O trao đổi dữ liệu 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ý
 Giải phóng bộ XL khỏi nhiệm vụ điều khiển việc chuyển dữ
liệu
+
3.3 Cấu trúc kết nối
Các thành phần chính (bộ vi xử lý, bộ nhớ, I /O) của máy 
tính cần được kết nối để trao đổi dữ liệu với nhau
Một tập các đường kết nối tạo thành cấu trúc kết nối
(Interconnection Structures)
Cấu trúc này được thiết kế phụ thuộc vào cơ chế trao đổi 
dữ liệu giữa các thành phần máy tính.
Cấu trúc kết nối hỗ trợ các hình thức truyền sau:
Bộ nhớ 
tới bộ 
xử lý
Bộ xử lý 
đọc 1 lệnh 
hoặc 1 
đơn vị dữ 
liệu từ bộ 
nhớ
Bộ xử lý 
tới bộ 
nhớ
Bộ xử lý 
ghi 1 đơn 
vị dữ liệu 
vào bộ 
nhớ
I/O tới 
bộ xử lý
Bộ xử lý 
đọc dữ 
liệu từ 
thiết bị 
I/O thông 
qua I/O 
module
Bộ xử lý 
tới I/O
Bộ xử lý 
gửi dữ 
liệu tới 
thiết bị 
I/O
I/O 
tới/từ 
bộ nhớ
Module 
I/O được 
phép trao 
đổi dữ liệu 
trực tiếp 
với bộ nhớ 
mà không 
cần đi qua 
bộ xử lý 
nhờ DMA
+
Các dạng dữ liệu đến/đi từ các thành 
phần máy tính
Bộ nhớ:
 T/h điều khiển đọc/ghi
 T/h địa chỉ
 Dữ liệu đi vào/ra
Module I/O
 T/h điều khiển đọc/ghi
 T/h địa chỉ
 Dữ liệu bên trong (ngoài): dữ liệu 
đến từ CPU(thiết bị ngoại vi)
 Tín hiệu ngắt: phát ra từ module 
I/O gửi đến CPU
Memory
N Words
0
N – 1
Data
Data
Address
Write
Read
I/O Module
M Ports
External
Data
Address
Internal
Data
External
Data
Interrupt
Signals
Internal
DataWrite
Read
CPU
Figure 3.15 Computer Modules
Data
Data
AddressInstructions
Control
Signals
Interrupt
Signals
+
Các dạng dữ liệu đến/đi từ các thành 
phần máy tính
 CPU
 Lệnh: truy xuất từ bộ nhớ
 Dữ liệu đến hoặc đi từ bộ nhớ hoặc 
I/O
 T/h ngắt: do I/O module gửi tới
 T/h địa chỉ: định vị một ô nhớ hoặc 
một tb ngoại vi
 T/h điều khiển
Memory
N Words
0
N – 1
Data
Data
Address
Write
Read
I/O Module
M Ports
External
Data
Address
Internal
Data
External
Data
Interrupt
Signals
Internal
DataWrite
Read
CPU
Figure 3.15 Computer Modules
Data
Data
AddressInstructions
Control
Signals
Interrupt
Signals
+
Một số cấu trúc kết nối
Cấu trúc kết nối phổ biến nhất: cấu trúc bus 
và cấu trúc đa bus (phần 3.4)
Cấu trúc kết nối điểm – điểm: QPI (phần
3.5) và PCIe (phần 3.6)
+ 3.4 Kết nối Bus (hệ thống Bus)
 Bus: đường thông tin kết nối giữa 2 hay nhiều thiết bị. 
 Là đường truyền chia sẻ: Tín hiệu truyền bởi 1 thiết bị bất kì có thể 
được nhận bởi tất cả các thiết bị khác kết nối với bus đó
 Nếu 2 thiết bị cùng truyền 1 lúc, tín hiệu của chúng sẽ bị chồng nhau và bị 
méo
 Một bus thường gồm nhiều đường, mỗi đường có khả năng truyền tín 
hiệu dưới dạng bit 1 và bit 0
 Hệ thống máy tính có một số loại bus khác nhau cung 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
 Kết nối các thành phần chính của máy tính (bộ xử lý, bộ nhớ, module I/O)
 Gồm 50 đến 100 đường: 
 Data bus (bus dữ liệu): gồm các đường truyền dữ liệu
 Address bus (bus địa chỉ): gồm các đường địa chỉ
 Control bus (bus điều khiển): các đường truyền tín hiệu điều khiển
+
a. Cấu trúc bus
Gồm các đường dữ liệu (data lines) để truyền dữ liệu
giữa các module hệ thống: data bus
Data bus bao gồm 32, 64, 128 đường hay nhiều hơn
 Số lượng đường được xem là độ rộng của bus dữ liệu
 Số lượng đường nối quyết định bao nhiêu bit có thể
truyền đi cùng một lúc
Độ rộng bus dữ liệu là
yếu tố chính quyết
định hiệu suất toàn hệ thống
Bus dữ liệu (data bus)
+ Bus địa chỉ Bus điều khiển
 Đượ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 (I/O port) trên module 
I/O.
 Các bit cao được sử dụng để lựa
chọn module cụ thể trên bus còn
bit thấp dùng để chọn vị trí bộ nhớ
hoặc cổng vào/ra trong module.
 Được sử dụng để điều khiển việc truy
nhập và sử dụng dữ liệu và bus địa chỉ.
 Bởi vì 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 việc sử dụng
chúng.
 Các tín hiệu điều khiển truyền cả thông
tin lệnh và định thời giữa các mô đun hệ
thống.
 Tín hiệu định thời xác định tính hợp lệ
của dữ liệu và thông tin địa chỉ.
 Tín hiệu lệnh chỉ ra thao tác (operation) 
cần được thực hiện.
 VD: t/h điều khiển read/write
+
Ví dụ: đọc dữ liệu từ Bộ nhớ vào VXL
CPU gửi:
 Địa chỉ qua bus địa chỉ
 Tín hiệu yêu cầu đọc (READ) qua bus điều 
khiển
RAM: 
 Nhận địa chỉ từ bus địa chỉ, giải mã địa chỉ
 Xác định yêu cầu: đọc dữ liệu
 Lấy dữ liệu từ ngăn nhớ đó đặt lên bus dữ 
liệu
CPU: đọc dữ liệu từ bus dữ liệu, ghi 
vào thanh ghi. Loại bỏ các tín hiệu 
điều khiển và địa chỉ.
Sơ đồ kết nối BUS
CPU Memory Memory I/O
Figure 3.16 Bus Interconnection Scheme
Bus
I/O
Control lines
Address lines
Data lines
Hoạt động của bus như sau: 
• Nếu một module muốn gửi dữ liệu đến một module khác nó
phải làm ha việc: (1) yêu cầu việc sử dụng bus và (2) truyền
dữ liệu qua bus. 
• Nếu một module yêu cầu dữ liệu từ một module khác, nó phải
(1) yêu cầu sử dụng bus và (2) chuyển yêu cầu tới module khác
qua bus điều khiển và địa chỉ. Sau đó phải chờ cho module thứ
hai gửi dữ liệu.
+ b. Cấu trúc bus phân cấp
Nếu một số lượng lớn các thiết bị được kết nối với bus, 
hiệu suất sẽ giảm. Hai nguyên nhân chính:
1. Nhiều thiết bị gắn vào bus, chiều dài bus càng dài và do đó trễ
truyền càng lớn.
2. Hiện tượng nút cổ chai: lượng dl cần truyền quá lớn so với khả
năng của bus. 
Khắc phục nhược điểm trên: Cấu trúc bus phân cấp
Bus địa phương kết nối bộ vi xử lý với bus hệ thống qua cache: 
cách li bộ XL và bộ nhớ thực hiện DMA
Bus hệ thống liên kết tất cả các module bộ nhớ chính
Bus mở rộng kết nối các thiết bị ngoại vi: cho phép nối đc với
nhiều tb ngoại vi hơn nhưng vẫn đảm bảo ko làm ảnh hưởng đến
bus hệ thống khi dl truyền từ tb ngoại vi quá lớn
+
Kiến trúc truyền thống (Có cache)
Cache
System Bus
Processor
Main
Memory
Local I/O
controller
Expansion
bus interface
Network
SCSI
Modem
Serial
(a) Traditional Bus Architecture
Expansion Bus
Figure 3.17 Example Bus Configurations
Local Bus
Expansion
bus interface
FAX
SCSI
Modem
Serial
(b) High-Performance Architecture
FireWire Graphic
Main
Memory
Cache
/BridgeProcessor
Local Bus
Video LAN
System Bus
High-Speed Bus
Expansion Bus
Cache
System Bus
Processor
Main
Memory
Local I/O
controller
Expansion
bus interface
Network
SCSI
Modem
Serial
(a) Traditional Bus Architecture
Expansion Bus
Figure 3.17 Example Bus Configurations
Local Bus
Expansion
bus interface
FAX
SCSI
Modem
Serial
(b) High-Performance Architecture
FireWire Graphic
Main
Memory
Cache
/BridgeProcessor
Local Bus
Video LAN
System Bus
High-Speed Bus
Expansion Bus
Kiến trúc hiệu suất cao
+
c. Các yếu tố trong thiết kế Bus
Loại
Dành 
riêng
Ghép 
kênh
Phương pháp trọng tài
Tập trung
Phân tán
Định thời
Đồng bộ
Bất đồng 
bộ
Độ rộng bus
Địa chỉ
Dữ liệu
Loại truyền dữ liệu
Đọc
Ghi
Đọc thay 
đổi ghi
Đọc sau 
khi ghi
Khối
1. Loại bus
Chuyên dụng
Ghép kênh
2. Phương pháp trọng tài
Tập trung
Phân tán
3. Định thời
Đồng bộ
Bất đồng bộ
4. Độ rộng bus
Địa chỉ
Dữ liệu
5. Loại truyền dữ liệu
Đọc
Ghi
Đọc thay đổi ghi
Đọc sau khi ghi
Khối
+
1. Các loại bus: chuyên dụng và ghép 
kênh. 
 Bus chuyên dụng sử dụng cho một chức năng cụ thể: vd: bus dữ liệu, bus địa
chỉ, bus điều khiển
 Ưu điểm: nhanh hơn, ít có xung đột bus
 Nhược điểm: tăng kích thước và chi phí
 Bus ghép kênh: các thông tin (dữ liệu, địa chỉ) được truyền trên cùng một
đường. 
 Sử dụng đường điều khiển AV (Address Valid control line). 
 Khi bắt đầu, đ/c được đưa vào bus và đường AV được kích hoạt. 
 Các module nhận địa chỉ, kiểm tra xem có phải đ/c của nó không. 
 Thông tin đ/c được loại bỏ và một kênh truyền được thiết lập để truyền dữ liệu đọc
hoặc ghi
 Ưu điểm: ít đường hơn, tiết kiệm không gian và chi phí
 Nhược điểm: mạch phức tạp hơn
+
2. Phương pháp phân xử (trọng tài)
Đôi khi, tại một thời điểm có nhiều module cần 
chiếm bus cần quyết định xem module nào có 
quyền sử dụng bus: phân xử (trọng tài) bus
 Phương pháp phân xử bus: tập trung và phân tán
Phân xử tập trung: bộ điều khiển (bộ phân xử) phân 
bổ thời gian trên bus. Bộ điều khiển này có thể là 
một thiết bị riêng hoặc một phần của bộ XL
Phân xử phân tán: mỗi module chứa một access 
control logic và chúng làm việc cùng nhau để chia 
sẻ đường truyền
+
3. Định thời
Định thời là cách các sự kiện được 
phối hợp truyền trên bus
Hai loại: đồng bộ và không đồng bộ
Định thời đồng bộ: 
 Mỗi hoạt động truyền trên bus được thực 
hiện theo các xung đồng hồ
 Bus chứa một đường xung đồng hồ (clock 
line) truyền liên tiếp một chuỗi các bit 0, 1
 Khoảng thời gian T được gọi là chu kỳ 
đồng hồ
 Tất cả các thiết bị trong máy tính đều đọc 
được và đồng bộ các hoạt động truyền 
theo xung này
Figure 3.18 Timing of Synchronous Bus Operations
Status signals
Stable address
Valid data in
T1 T2 T3
Clock
Status
lines
Data
linesRead
cycle
Address
lines
Address
enable
Read
Valid data out
Data
linesWrite
cycle
Write
+
3. Định thời (tiếp)
 Định thời không đồng bộ
 Không sử dụng tín hiệu đồng hồ.
 Sau khi dữ liệu được đưa vào bus, bộ nhớ gửi một tín hiệu ACK để báo cho VXL 
biết việc đọc hoặc ghi dữ liệu
 Truyền đồng bộ: thực hiện đơn 
giản tuy nhiên ít linh hoạt hơn 
truyền không đồng bộ
 Việc truyền theo xung đồng hồ 
đôi khi làm giảm hiệu suất hệ 
thống
 Truyền không đồng bộ: hiệu 
quả hơn trong trường hợp nhiều 
thiết bị có tốc độ xử lý khác nhau 
chia sẻ chung bus
Status
lines
Status signals
(a) System bus read cycle
Address
lines
Read
Stable address
Data
lines Valid data
Figure 3.19 Timing of Asynchronous Bus Operations
Acknowledge
Status
lines
Status signals
(b) System bus write cycle
Address
lines
Write
Stable address
Data
lines Valid data
Acknowledge
Status
lines
Status signals
(a) System bus read cycle
Address
lines
Read
Stable address
Data
lines Valid data
Figure 3.19 Timing of Asynchronous Bus Operations
Acknowledge
Status
lines
Status signals
(b) System bus write cycle
Address
lines
Write
Stable address
Data
lines Valid data
Acknowledge
+
Bài tập
1. Xét một hệ thống máy tính có độ rộng bus địa 
chỉ là 16b, bus dữ liệu là 16b.
a. Không gian địa chỉ bộ nhớ là bao nhiêu?
b. Dung lượng tối đa của bộ nhớ là bao nhiêu nếu kích 
thước mỗi ngăn nhớ là 16b
2. Xét VXL 32b, với bus dữ liệu có độ rộng 16b, 
hoạt động với tốc độ đồng hồ 8MHz. Giả sử một 
chu kỳ bus = 4 chu kỳ đồng hồ. Tính tốc độ dữ 
liệu tối đa được truyền qua bus (theo B/s). Nếu 
tăng bus dữ liệu lên 32 đường, liệu hiệu suất của 
hệ thống có được cải thiện?
+ 3.5. Kết nối điểm - điểm
Nhược điểm của hệ thống kết nối bus:
 Tốc độ của bus đồng bộ không cao do khó khăn trong 
việc tăng tần số tín hiệu đồng hồ.
Khi tốc độ dữ liệu cao, việc thực hiện các chức năng
đồng bộ và phân xử bus một cách kịp thời trở nên khó 
khăn hơn
Với chip đa nhân, nếu sử dụng bus để kết nối, trao đổi 
dữ liệu giữa các nhân sẽ không đáp ứng được tốc độ 
VXL giảm hiệu suất.
Giải pháp: kết nối điểm-điểm: có độ trễ thấp, tốc
độ dữ liệu cao, và khả năng mở rộng tốt hơn.
2 loại kết nối điểm – điểm: QPI và PCIe
+Đườ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
 Những kết nối của bộ xử lý sử dụng kiến trúc giao
thức phân lớp chứ 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 gói
 Dữ liệu được gửi thành 1 chuỗi các gói chứa tiêu đề
điều khiển (header) và mã kiểm soát lỗi.
QPI
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
D
R
A
M
I/
O
 d
e
v
ic
e
I/
O
 d
e
v
ic
e
D
R
A
M
D
R
A
M
D
R
A
M
I/
O
 d
e
v
ic
e
I/
O
 d
e
v
ic
e
QPI PCI Express Memory bus
+
Các lớp QPI
QPI được định nghĩa là một kiến 
trúc bốn lớp, bao gồm các lớp sau:
 Vật lý: Bao gồm dây dẫn mang tín 
hiệu, cũng như mạch và logic để hỗ 
trợ các tính năng truyền và nhận các 
bit 1 và 0. Đơn vị chuyển giao ở lớp 
này 20 bit, được gọi là Phit (physical 
unit).
 Liên kết: Chịu trách nhiệm truyền tin cậy và điều khiển luồng. Đơn 
vị dữ liệu của lớp Liên kết là một Flit 80-bit (flow control unit)
 Định tuyến: Cung cấp một framework để chuyển các gói dữ liệu
 Giao thức: Bộ quy tắc để trao đổi các gói tin dữ liệu giữa các thiết 
bị. Một gói bao gồm một số không đổi các Flit.
+
a. Lớp vật lý
Transmission Lanes
Intel QuickPath Interconnect Port
COMPONENT A
COMPONENT B
F
w
d
 C
lk
Reception Lanes
R
cv
 C
lk
Reception Lanes
R
cv
 C
lk
Transmission Lanes
F
w
d
 C
lk
Figure 3.22 Physical Interface of the Intel QPI Interconnect
Intel QuickPath Interconnect Port
+ b. Lớp liên kết
#2n+1 #2n #n+2 #n+1 #n #2 #1
bit stream of flits
#2n+1 #n+1 #1 QPI
lane 0
#2n+2 #n+2 #2 QPI
lane 1
#3n #2n #n QPI
lane 19
Figure 3.23 QPI Multilane Distribution 
+ b. Lớp liên kết (tiếp)
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ận hành trên cấp flit (flow 
control unit – đơn vị điều
khiển luồng)
 Mỗi flit gồm 1 bản tin 72-
bit và một mã kiểm soát lỗi
8-bit được gọi là cyclic 
redundancy check (CRC)
Chức năng điều khiển
luồng
 Cần thiết để đảm bảo rằng 1 
thực thể QPI gửi không áp 
đảo 1 thực thể QPI nhận 
bằng cách gửi dữ liệu nhanh 
hơn khả năng xử lý dữ liệu 
và xoá bộ đệm để nhiều dữ 
liệu mới đến của phía nhận 
+
c. Lớp giao thức và lớp định tuyến
 Được sử dụng để xác định 
đường đi mà một gói sẽ đi 
qua các kết nối hệ thống 
có sẵn
 Xác định bởi phần sụn và 
mô tả các đường dẫn mà 
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 gói dữ liệu thông thường 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
+
3.6. 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
 PCI cung cấp hiệu suất cao hơn cho các thiết bị I/O tốc độ cao (vd: 
card mạng, card màn hình, card ổ cứng)
 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 ứng dụng với luồng dữ liệu thời
gian thực
+Cấu hình 
PCIe
Figure 3.24 Typical Configuration Using PCIe
Chipset
Core Core
Gigabit
Ethernet
PCIe
PCIe
PCIe PCIe
PCIePCIe
PCIe
PCIe–PCI
Bridge
Memory
Memory
Legacy
endpoint
PCIe
endpoint
PCIe
endpoint
PCIe
endpoint
Switch
+
Lớp giao thức PCIe
Kiến trúc giao thức PCIe
bao gồm các lớp sau:
a. Vật lý (Physical): Bao gồm các
dây dẫn thực tế mang tín hiệu, 
cũng như mạch và logic để hỗ
trợ các tính năng cần thiết trong
việc truyền và nhận các bit 1 và
0.
b. Liên kết dữ liệu (Data link layer – DLL): Chịu trách nhiệm truyền tin cậy và 
điều khiển luồng. Các gói dữ liệu được tạo ra và được xử lý bởi DLL được gọi là 
gói DLLP.
c. Giao dịch (Transaction Layer): Tạo ra và xử lý các gói dữ liệu được sử dụng 
để thực hiện các cơ chế truyền dữ liệu được tải/lưu trữ và cũng quản lý điều 
khiển luồng của các gói tin giữa hai thiết bị. Các gói dữ liệu của lớp này được 
gọi là gói TLP.
+
a. Lớp vật lý
Phân phối đa tuyến PCIe
B1B2B3B4B5B6B7 B0
byte stream
PCIe
lane 0
Figure 3.26 PCIe Multilane Distribution 
B4 B0
B5 B1
B6 B2
B7 B3
128b/
130b
PCIe
lane 1
128b/
130b
PCIe
lane 2
128b/
130b
PCIe
lane 3
128b/
130b
Sơ đồ khối
Truyền và
nhận PCIe
Figure 3.27 PCIe Transmit and Receive Block Diagrams
Scrambler
Differential
Receiver
Data recovery
circuit
Clock recovery
circuit
D+
8b
130b
128b
130b1b
1b
1b
D–
128b/130b Encoding
Parallel to serial
(a) Transmitter
Serial to parallel
Transmitter Differential
Driver
128b/130b Decoding
Descrambler
(b) Receiver
8b
8b
D+ D–
+b. Lớp giao dịch
PCIe 
Transaction Layer (TL)
 Nhận các yêu cầu đọc và ghi từ 
phần mềm phía trên TL và tạo ra 
các gói tin yêu cầu để truyền tới 
đích qua lớp liên kết (link layer)
 Hầu hết các giao dịch sử dụng kỹ 
thuật giao dịch phân chia 
 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
(completion packet)
 Bản tin TL và một số giao dịch ghi 
là giao dịch gửi (nghĩa là không 
cần có 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 
+
TL hỗ trợ bốn không gian địa chỉ:
 Bộ nhớ
 Không gian bộ nhớ bao 
gồm bộ nhớ chính của hệ 
thống và thiết bị I/O PCIe
 Các khoảng địa chỉ bộ 
nhớ nhất định được ánh 
xạ vào các thiết bị I/O
 Cấu hình
 Không gian địa chỉ này 
cho phép TL đọc/ghi các 
thanh ghi cấu hình kết hợp 
với các thiết bị I/O
 I/O
 Không gian địa chỉ này 
được sử dụng cho thiết bị 
PCI kế thừa, với dải địa 
chỉ dành riêng dùng để 
xác định các thiết bị I/O kế 
thừa
 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
Các kiểu giao dịch TLP PCIe
Address Space TLP Type Purpose 
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. 
+Figure 3.28 PCIe Protocol Data Unit Format
STP framing
Sequence number
ECRC
LCRC
(a) Transaction Layer Packet (b) Data Link Layer Packet
STP framing
A
p
p
e n
d
ed
 b
y
 P
h
y
si
ca
l 
L
a
y
er
A
p
p
en
d
ed
 b
y
 D
a
ta
 L
in
k
 L
a
y
er
C
re
a
te
d
 b
y
 T
ra
n
sa
ct
io
n
 L
a
y
er
C
re
a
te
d
b
y
 D
L
L
1
2
12 or 16
0 to 4096
0 or 4
4
1
Number
of octets
Data
Header
Start
DLLP
End
1
4
1
CRC2
A
p
p
en
d
ed
 b
y
 P
L
Định dạng 
Đơn vị dữ liệu 
Giao thức PCIe 
+
Định dạng TLP - Yêu cầu bộ nhớ
Figure 3.29 TLP Memory Request Format 
Type
Requestor ID Tag
Address [63:32]
Address [31:2]
R
R
Fmt Length
32 bits
1
6
 o
ct
et
s
Attr RRR
Traffic
Class
T
E
Last
DW BE
First
DW BE
E
P
+ Tổng kết
 Thành phần máy tính
 Chức năng máy tính
 Lệnh truy xuất và thi hành
 Gián đoạn
 Chức năng I / O
 Cấu trúc kết nối
 Kết nối bus 
 Cấu trúc bus 
 Nhiều phân cấp bus 
 Các yếu tố thiết kế bus 
 Kết nối điểm-điểm
 Lớp vật lý QPI
 Lớp liên kết QPI
 Lớp định tuyến QPI
 Lớp giao thức QPI
 PCI Express
 Kiến trúc vật lý và logic PCI
 Lớp vật lý PCIe
 Lớp giao dịch PCIe
 Lớp liên kết dữ liệu PCIe
Chương 3
Chức năng máy 
tính và kết nối
+
Câu hỏi
1. Nêu các nhóm chức năng chính của một hệ thống máy tính
2. Các bước thực hiện một lệnh được diễn ra như thế nào?
3. Hai phương pháp xử lý đa ngắt là gì?
4. Các loại tín hiệu truyền nào cần được hệ thống bus hỗ trợ?
5. Các ưu điểm của kiến trúc đa bus so với kiến trúc đơn bus là gì?
6. Các đặc điểm của kết nối điểm – điểm là gì?
7. Liệt kê các lớp của QPI.
8. Liệt kê các lớp của PCIe.

File đính kèm:

  • pdfbai_giang_kien_truc_may_tinh_chuong_3_tong_quan_ve_may_tinh.pdf