CẤU TRÚC BUS TRONG MÁY TÍNH
VŨ NGỌC THANH SANG
TRỊNH TẤN ĐẠT
KHOA CƠNG NGHỆ THƠNG TIN
ĐẠI HỌC SÀI GỊN
Email:
Website: />
CHỨC NĂNG VÀ THƠNG SỐ CỦA BUS
• Bus là đường truyền tín hiệu có chức năng lưu thơng, vận chuyển tín hiệu, dữ liệu
giữa các khối chức năng trong hệ thống máy tính.
• Bus thường có 50 đến 100 dây dẫn được gắn trên mainboard.
• Với các đường dây dẫn, Bus truyền tín hiệu giữa bộ vi xử lý và các bộ phận khác,
hoặc thiết bị này với các thiết bị khác trong hệ thống máy tính.
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
CHỨC NĂNG VÀ THƠNG SỐ CỦA BUS
• Độ rộng bus (bus width, đơn vị bit): là số bit dữ liệu tối đa có thể truyền trong 1
chu kỳ dữ liệu của bus (số bit dữ liệu tối đa trong 1 lần truyền).
• Tốc độ bus (bus speed, đơn vị MHz): tốc độ truyền tối đa của bus.
• Chu kỳ dữ liệu xung nhịp (clock data cycle): số chu kỳ xung nhịp cần thiết để
truyền 1 chu kỳ dữ liệu.
• Băng thông (Bandwidth, đơn vị MBps): Số bit dữ liệu tối đa truyền trên một đơn vị
thời gian (giây).
Băng thông [MB/s] =
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
𝑇ố𝑐 độ 𝐵𝑈𝑆 𝑀𝐻𝑧 ∗𝑆ố 𝑏𝑦𝑡𝑒 𝑡𝑟𝑜𝑛𝑔 1 𝑙ầ𝑛 𝑡𝑟𝑢𝑦ề𝑛 𝑡ả𝑖
𝐶ℎ𝑢 𝑘ỳ 𝑑ữ 𝑙𝑖ệ𝑢 𝑡ℎ𝑒𝑜 𝑥𝑢𝑛𝑔 𝑛ℎị𝑝
Kiến Trúc Máy Tính
HỆ THỐNG ĐƠN BUS
• Có nhiều thành phần nối vào bus chung, một số thiết bị tích tực (active) có thể địi hỏi truyền thơng
trên bus, một số các thiết bị thụ động chờ yêu cầu từ các thiết bị khác ➔ Các thiết bị tích cực được
gọi là chủ (master) cịn thiết bị thụ động là tớ (slave).
• Phân loại các dây dẫn:
o Dây dẫn dữ liệu: Data line.
o Dây dẫn địa chỉ: Address line.
o Dây dẫn điều khiển: Control line.
Sơ đồ kết nối Bus
HỆ THỐNG ĐƠN BUS
• Tại một thời điểm chỉ phục vụ được một yêu cầu trao đổi dữ liệu.
• Các thành phần nối vào Bus có thể có tốc độ khác nhau.
• Các Module nhớ và Module IO phụ thuộc vào cấu trúc của CPU.
• Khắc phục:
o Xây dựng cấu trúc đa Bus bao gồm các hệ thống Bus khác nhau về tốc độ.
o Trong hầu hết các máy PC bus được phân thành 3 cấp và các bus nối với nhau
thông qua cầu nối Bus.
Khoa Công Nghệ Thông Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
PHÂN LOẠI BUS
• Bus thường phân loại theo 3 cách sau:
o Theo tổ chức phần cứng.
o Theo giao thức truyền thông ( bus đồng bộ và không đồng bộ).
o Theo loại tín hiệu truyền trên bus ( bus địa chỉ, bus dữ liệu,…).
• Bus theo tổ chức phần cứng: bên trong (internal bus), bên ngoài (external bus).
Các chip vi xử lý được thiết kế để tùy ý lựa chọn internal bus, với external bus cần
phải thiết kế tuân theo tập các quy tắc của chuẩn còn được gọi là giao thức bus
(bus protocol).
Khoa Công Nghệ Thông Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS PHẦN CỨNG - INTERNAL BUS
• Kết nối các thành phần bên trong vi xử lý:
o Đơn vị điều khiển (CU)
o Đơn vị số học và logic (ALU)
o Các thanh ghi (Registers)
Khoa Công Nghệ Thông Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS PHẦN CỨNG - EXTERNAL BUS
• Các external bus được lắp đặt vào bo mạch chủ, từ đó kết nối với các internal bus
➔ Kết nối bo mạch chủ với các thành phần khác.
• Dây cáp external bus dùng để kết nối thiết bị ngoại vi và thiết bị nội bộ, kết nối
internal buses với thiết bị nội bộ.
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS ĐỒNG BỘ - SYNCHRONOUS BUS
• Bus đồng bộ có một đường điều khiển
bởi một bộ dao động thạch anh, tín
hiệu trên đường dây này có dạng sóng
vng với tần số 5 → 50 MHz.
• Mọi hoạt động bus xảy ra trong một số
ngun lần chu kỳ gọi là chu kỳ bus.
• Ví dụ (hình bên): tấn số xung clock là
4MHz ➔ chu kỳ bus là 250ns
Chu kỳ đọc trong bus đồng bộ
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS ĐỒNG BỘ - SYNCHRONOUS BUS
• Giả sử đọc 1 byte từ bộ nhớ chiếm 3 chu kỳ
bus (750ns), tương ứng với T1, T2, T3.
• Thao tác đọc:
chọn đọc
(Memory Request) - xác
định truy xuất bộ nhớ
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
o T1: bắt đầu bằng cạnh dương xung clock → vi
xử lý đặt địa chỉ byte cần đọc lên bus địa chỉ.
Sau khi tín hiệu địa chỉ được xác lập, vi xử lý
đặt các tín hiệu 𝑀𝑅𝐸𝑄 và RD tích cực (mức
thấp).
o T2: thời gian cần thiết để bộ nhớ giải mã địa
chỉ và đưa dữ liệu lên bus dữ liệu.
o T3: tại cạnh âm của T3, vi xử lý nhận dữ liệu
trên bus dữ liệu, chứa vào thanh ghi bên trong
vi xử lý và chốt dữ liệu → vi xử lý đảo các tín
hiệu 𝑀𝑅𝐸𝑄 và RD.
Kiến Trúc Máy Tính
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS ĐỒNG BỘ - SYNCHRONOUS BUS
• TAD: ≤ 110ns, vi xử lý sẽ đưa ra tín hiệu địa
chỉ khơng nhiều hơn 110 ns tính từ thời
điểm cạnh dương của T1.
• TDS: giá trị nhỏ nhất là 50ns, dữ liệu đã ổn
định trên bus dữ liệu ít nhất là 50ns trước
điểm giữa cạnh âm của T3
➔đảm bảo cho vi xử lý đọc dữ liệu tin cậy.
Khoa Công Nghệ Thông Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS ĐỒNG BỘ - SYNCHRONOUS BUS
• TML: đảm bảo tín hiệu địa chỉ sẽ được xác lập
trước tín hiệu 𝑀𝑅𝐸𝑄 ít nhất 60ns.
• TM, TRL: cho phép 2 tín hiệu 𝑀𝑅𝐸𝑄 và RD tích cực
trong khoảng thời gian 85ns tính từ thời điểm
xuống của xung clock T1.
• TMH, TRH: thời gian để các tín hiệu 𝑀𝑅𝐸𝑄 và
RD. được đảo sau khi dữ liệu đã được vi xử lý
nhận vào.
Trong trường hợp bộ nhớ khơng có khả năng đáp ứng đủ
Nhanh → phát tín hiệu WAIT trước cạnh âm của T2, đưa
thêm vào 1 chu kỳ bus. Khi bộ nhớ đưa tín hiệu ổn định
→ đảo chiều
• TDH: Thời gian bộ nhớ cần giữ data trên bus sau
khi tín hiệu RD đã đảo
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS ĐỒNG BỘ - SYNCHRONOUS BUS
Bảng giá trị tới hạn của các thông số
Ký hiệu
Tham số
Min (ns)
Max (ns)
TAD
Thời gian trễ của địa chỉ
TML
Thời gian địa chỉ ổn định trước 𝑀𝑅𝐸𝑄
TM
Thời gian trễ của 𝑀𝑅𝐸𝑄 so với cạnh âm của T1
85
TRL
Thời gian trễ của RD so với sườn xuống của tín hiệu đồng hồ T1
85
TDS
Thời gian thiết lập dữ liệu trước sườn xuống của tín hiệu xung
clock (tín hiệu đồng hồ)
TMH
Thời gian trễ của 𝑀𝑅𝐸𝑄 so với sườn xuống của tín hiệu đồng hồ
T3
85
TRH
Thời gian trễ của RD so với sườn xuống của tín hiệu đồng hồ T3
85
TDH
Thời gian lưu trữ dữ liệu từ lúc đảo tín hiệu RD
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
110
Kiến Trúc Máy Tính
60
50
0
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS ĐỒNG BỘ - SYNCHRONOUS BUS
• Ngồi các chu kỳ đọc/ghi, một số bus truyền dữ liệu đồng bộ còn hỗ trợ truyền dữ liệu
theo khối.
• Thao tác đọc khối: bus master báo cho slave biết số byte cần được truyền đi , với n+2
chu kỳ clock cho n byte dữ liệu.
Khoa Công Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS BẤT ĐỒNG BỘ - ASYNCHRONOUS BUS
• Khơng sử dụng xung clock đồng bộ, có thể
kéo dài chu kỳ tùy ý.
• Khắc phục nhược điểm của bus đồng bộ
(tốc độ thấp, khó ổn định khi đặt vào các
thiết bị đòi hỏi hoạt động nhanh) bằng
phương pháp bắt tay toàn phần - mỗi sự
kiện được gây ra bởi 1 sự kiện trước đó
chứ khơng phải bởi xung clock.
Chu kỳ đọc trong bus bất đồng bộ
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS GIAO THỨC TRUYỀN THÔNG - BUS BẤT ĐỒNG BỘ - ASYNCHRONOUS BUS
• Tuy ưu điểm của bus bất đồng bộ rất rõ ràng, nhưng trong thực tế phần lớn các bus
đang sử dụng là loại đồng bộ, do:
o Hệ thống sử dụng bus đồng bộ dễ thiết kế hơn.
o Vi xử lý dễ dàng truy cập bộ nhớ mà khơng cần tín hiệu phản hồi.
o Chỉ cần chọn phù hợp thì mọi hoạt động đều trơi chảy, khơng cần phải bắt tay
Khoa Công Nghệ Thông Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS TÍN HIỆU TRUYỀN - BUS DỮ LIỆU
• Cung cấp một đường truyền tải dữ liệu giữa các hệ
thống mơ đun.
o 8086 => m=16
• Bao gồm 32, 64, 128 hoặc hơn các loại dây dẫn riêng
biệt phụ thuộc vào độ rộng bus (vì mỗi dây chỉ có thể
vận tải 1 bit cho mỗi lần truyền tải).
• Độ rộng của bus dữ liệu là tác nhân chính để đánh giá
hiệu suất tổng quát của hệ thống. Ví dụ: Bus dữ liệu có
độ rộng là 32 bits và mỗi lệnh dài 64 bits ➔ Bộ xử lý
phải truy cập bộ nhớ 2 lần cho mỗi chu kỳ lệnh.
• Ví dụ Bus dữ liệu trên 1 số bộ vi xử lý:
Khoa Công Nghệ Thơng Tin – Đại học Sài Gịn
o 8088 => m=8
Kiến Trúc Máy Tính
o 80386 => m=32
o Pentium => m=64
LOẠI BUS TÍN HIỆU TRUYỀN - BUS ĐỊA CHỈ
• Các dây dẫn địa chỉ có chức năng xác định nguồn hoặc vị trí đích của dữ liệu trên bus dữ
liệu, định địa chỉ cho các cổng I/O (input/output). Ví dụ: để đọc một dữ liệu (8, 16 hoặc 32
bits) từ bộ nhớ, bộ vi xử lý sẽ đặt địa chỉ của dữ liệu vào các dây dẫn địa chỉ.
• Độ rộng của bus địa chỉ xác định mức tối đa lưu trữ mà bộ nhớ hệ thống có thể thực hiện
(khả năng quản lý cực đại số các ngăn nhớ).
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS TÍN HIỆU TRUYỀN - BUS ĐỊA CHỈ
• Ví dụ Bus địa chỉ của 1 số bộ vi xử lý:
o 8088/8086
n=20
220 (1MB)
o 80286
n=24
224 (16MB)
o 80386
n=32
232 (4GB)
o Pentium II, III, IV
n=36
2𝑛(64GB)
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS TÍN HIỆU TRUYỀN - BUS ĐIỀU KHIỂN
• Điều khiển phần truy cập và sử dụng của bus dữ liệu và bus địa chỉ. Vì các dây dẫn
dữ liệu và các dây dẫn địa chỉ được chia sẻ qua nhiều thành phần trong hệ thống,
nên cần có bộ phần quản lý khả năng sử dụng các dây dẫn.
• Tín hiệu điều khiển vận chuyển câu lệnh và thời gian tính tốn giữa các hệ thống
mơ đun.
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
LOẠI BUS TÍN HIỆU TRUYỀN - BUS ĐIỀU KHIỂN
• Các loại dây dẫn điều khiển:
o Ghi bộ nhớ (Memory write): chuyển dữ liệu vào vị trí địa chỉ đã định.
o Đọc bộ nhớ (Memory read): chuyển dữ liệu từ địa chỉ lên bus.
o Ghi I/O (I/O write): chuyển dữ liệu trên bus vào địa chỉ cổng I/O.
o Đọc I/O (I/O read): chuyển dữ liệu từ cổng I/O để lưu vào bus.
o Truyền tải ACK (Transfer ACK): trong trường hợp dữ liệu được chấp thuận để lấy hoặc ghi lên bus.
o Yêu cầu bus (bus request): trong trường hợp mô đun cần điều khiển bus.
o Truy cập bus (bus grant): trong trường hợp mô đun yêu cầu được quyền truy cập điều khiển vào bus.
o Ngắt yêu cầu (interrupt request): trong trường hợp ngắt được thêm vào.
o Ngắt ACK (interrupt ACK): Phần ngắt thêm vào đã được nhận biết.
o Xung nhịp (clock): được sử dụng cho các hoạt động đồng bộ.
o Khởi động lại (reset): Khởi động lại tồn bộ mơ đun.
CÁC LOẠI MÁY VI TÍNH VÀ CẤU TRÚC BUS TƯƠNG ỨNG
• Máy PC/XT và bus PC
• Máy PC/AT và bus ISA
• Bus MCA, bus EISA
• Bus PCI
• Bus nối tiếp vạn năng (USB)
• Bus IEEE 1394
• Bus cục bộ
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
MÁY PC/XT VÀ BUS PC
• Ra đời để phục vụ kiến trúc intel 8086.
• Tần số xung nhịp: 8.33 MHz.
• Độ rộng bus: 8 bit.
• Băng thơng tối da: 8.33 MB/s
• Bus địa chỉ: 20 dây.
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
MÁY PC/AT VÀ BUS ISA
• ISA: Industry Standard Architecture.
• Bus ISA dùng cho hệ thống chỉ được điều khiển
bởi 1 CPU trên bảng mạch chính, phục vụ kiến
trúc Intel 80286.
• Tần số làm việc cực đại: 8.33 MHz (tốc độ truyền
tải cực đại là 16.66 MBps với số liệu 2 bytes).
• Độ rộng bus: 8, 16 bits.
• Bus địa chỉ: 24 dây (quản lý được 16 MB bộ nhớ).
• Tương thích 90% với bus AT
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính
BUS MCA
• Bus MCA (Micro Channel Architecture), phục vụ cho
hệ thống IBM PS/2 khơng tương thích với bus ISA.
• Bộ điều khiển bus hoạt động độc lập với bộ VXL.
• Hỗ trợ tự động cấu hình thiết bị (Plug And Play).
• Độ rộng dữ liệu: 16/32 bit.
• Bus khơng đồng bộ.
• Băng thơng: 160MB/s.
Khoa Cơng Nghệ Thơng Tin – Đại học Sài Gịn
Kiến Trúc Máy Tính