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: trinhtandat@sgu.edu.vn
Website: https://sites.google.com/site/ttdat88
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
• Bus thường có 50 đến 100 dây dẫn được gắn trên mainboard.
giữa các khối chức năng trong hệ thống máy tính.
• 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,
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
hoặc thiết bị này với các thiết bị khác trong hệ thống 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).
𝑇ố𝑐 độ 𝐵𝑈𝑆 𝑀𝐻𝑧 ∗𝑆ố 𝑏𝑦𝑡𝑒 𝑡𝑟𝑜𝑛𝑔 1 𝑙ầ𝑛 𝑡𝑟𝑢𝑦ề𝑛 𝑡ả𝑖 𝐶ℎ𝑢 𝑘ỳ 𝑑ữ 𝑙𝑖ệ𝑢 𝑡ℎ𝑒𝑜 𝑥𝑢𝑛𝑔 𝑛ℎị𝑝
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
Băng thông [MB/s] =
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
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
thông qua cầu nối Bus.
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 loại tín hiệu truyền trên bus ( bus địa chỉ, bus dữ liệu,…).
o Theo giao thức truyền thông ( bus đồng bộ và không đồng bộ).
• 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
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
(bus protocol).
LOẠI BUS PHẦN CỨNG - INTERNAL BUS
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
• Kết nối các thành phần bên trong vi xử lý:
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
• 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
➔ Kết nối bo mạch chủ với các thành phần khác.
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 vuông với tần số 5 → 50 MHz.
• Mọi hoạt động bus xảy ra trong một số
nguyên lần chu kỳ gọi là chu kỳ bus.
• Ví dụ (hình bên): tấn số xung clock là
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
4MHz ➔ chu kỳ bus là 250ns
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.
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.
chọn đọc
(Memory Request) - xác định truy xuất bộ nhớ
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.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Thao tác đọc:
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
điểm giữa cạnh âm của T3
định trên bus dữ liệu ít nhất là 50ns trước
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
➔đảm bảo cho vi xử lý đọc dữ liệu tin cậy.
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.
• TDH: Thời gian bộ nhớ cần giữ data trên bus sau
khi tín hiệu RD đã đả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
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)
Thời gian trễ của địa chỉ
110
TAD
60
Thời gian địa chỉ ổn định trước 𝑀𝑅𝐸𝑄
TML
85
Thời gian trễ của 𝑀𝑅𝐸𝑄 so với cạnh âm của T1
TM
85
Thời gian trễ của RD so với sườn xuống của tín hiệu đồng hồ T1
TRL
50
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ồ)
85
TMH
Thời gian trễ của 𝑀𝑅𝐸𝑄 so với sườn xuống của tín hiệu đồng hồ T3
85
Thời gian trễ của RD so với sườn xuống của tín hiệu đồng hồ T3
TRH
0
Thời gian lưu trữ dữ liệu từ lúc đảo tín hiệu RD
TDH
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
• Ngoà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
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
chu kỳ clock cho n byte dữ liệu.
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.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
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
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ệ
o 8088 => m=8
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
o 80386 => m=32
biệt phụ thuộc vào độ rộng bus (vì mỗi dây chỉ có thể
o Pentium => m=64
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
Kiến Trúc Máy Tính
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 toán giữa các hệ thống
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
mô đun.
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 toà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
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Bus cục bộ
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
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Bus địa chỉ: 20 dây.
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
BUS EISA
• Phiên bản cải tiến của bus ISA.
• Hỗ trợ thiết bị ngoại vi 32 bit.
• Tốc độ cao hơn bus ISA.
• Hỗ trợ khe cắm EISA (Extented ISA).
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Tương thích với chuẩn ISA
BUS EISA
• Tần số xung nhịp: 8.33MHz.
• Độ rộng bus: 32.
• Băng thông: 33.32MB/s.
• Quản lí không gian bộ nhớ: 4GB.
inch), dài 333.5 mm (13.13 inch), rộng: 12.7
• Kích thước tiêu chuẩn EISA: cao 127mm (5
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
mm (0.5 inch).
BUS PCI - PERIPHERAL COMPONENT INTERCONNECT
• Chuẩn kết nối thành phần ngoại vi (Peripheral
Component Interconnect).
• Ra đời 1993.
• Khe cắm PCI không tương thích với chuẩn ISA
và EISA.
• Tần số xung nhịp: 33MHz hoặc 66MHz.
• Độ rộng bus: 32/64 bit.
• Băng thông: 132 MB/s, hoặc 264 MB/s.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
BUS PCI - PERIPHERAL COMPONENT INTERCONNECT
• Điểm mạnh: dữ liệu được truyền tải theo kiểu cụm (burst).
→ Địa chỉ chỉ truyền đi 1 lần, những lần còn lại hệ thống sẽ hiểu ngầm bằng cách cho các đơn vị phát hoặc thu đếm lên trong mỗi xung clock.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Tốc độ truyền tối đa trong kiểu burst có thể lên đến 120MBps.
BUS PCI - PERIPHERAL COMPONENT INTERCONNECT
• Nâng cấp PCI thành PCI-X cho phép nâng tốc độ trao đổi dữ liệu gấp đôi so với PCI.
• Ra đời 1999.
• Tần số xung nhịp: 133MHz.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Băng thông: 1GB/s.
BUS NỐI TIẾP ĐA NĂNG
• Bus USB (Univeral Serial Bus).
• Cho phép kết nối với nhiều loại thiết bị: Bàn
phím, con chuột, màn hình, ổ đĩa,…
• Cho phép kết nối 127 thiết bị theo kiểu móc
xích.
• Chuẩn USB 1.0 và 1.1 có băng thông:
12Mbps.
• Chuẩn USB 2.0 băng thông: 480Mbps.
• Chuẩn USB tự nhận diện thiết bị.
• Gắn thêm thiết bị không cần khởi động lại
máy.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
BUS NỐI TIẾP ĐA NĂNG
• USB tuân theo chuẩn truyền thông nối tiếp đồng bộ (Synchronuos serial).
• Thông tin trên USB gồm 3 gói:
o Gói thẻ (token packet): nơi khởi tạo token cho biết các loại truyền tải tiếp theo. o Gói dữ liệu (data packet): Dữ liệu thực tế truyền tải. o Gói thông tin móc nối (handshack packet): cho biết việc truyền tải thất bại hay thành công
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
BUS NỐI TIẾP ĐA NĂNG
• Bắt đầu truyền tin, máy chủ sẽ gửi đi 1 gói thẻ (token packet). Mỗi gói thẻ có
• cấu trúc như sau:
o 8 bit nhận dạng PID. o 7 bit địa chỉ. o 4 bit số hiệu điểm cuối và hướng truyền. o 5 bit kiểm tra lỗi CRC.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
BUS NỐI TIẾP ĐA NĂNG
• Thiết bị ngoại vi trả lời bằng gói có định dạng như sau:
o 8 bit nhận dạng PID.
o 16 bit kiểm tra lỗi CRC.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
o Các byte dữ liệu (1024 byte).
BUS NỐI TIẾP ĐA NĂNG
• Khi nhận được dữ liệu phía chủ sẽ trả lời bằng tín hiệu móc nối
o ACK: Chấp nhận.
o STALL: Tắc nghẽn.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
o NACK: Không chấp nhận.
BUS IEEE 1394
• Bus hỗ trợ truyền thông đa phương tiện.
• Ra đời 1995.
• Băng thông: 100Mbps, 200Mbps, 400 Mbps.
• Tối đa 63 thiết bị được kết nối theo kiểu móc xích.
• Hỗ trợ 2 phương thức truyền: không đồng bộ và
đồng bộ.
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
Bài tập
• Tìm hiểu các chipset và các bus hiện đại
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính
• Xác định ưu và nhược điểm của các loại bus.
THANK YOU FOR YOUR ATTENTIONS
Khoa Công Nghệ Thông Tin – Đại học Sài Gòn
Kiến Trúc Máy Tính