Bài giảng Kiến trúc máy tính - Chương 1: Tổng quan về kiến trúc máy tính - Nguyễn Phan Trung
1. Các khái niệm và công nghệ
Máy tính (Computer) là máy xử lý dữ liệu,
hoạt động một cách tự động dưới sự điều khiển
của một danh sách các lệnh (gọi là chương
trình) được lưu trữ trong bộ nhớ chính của nó.
1. Các khái niệm và công nghệ
Một hệ thống máy tính (Computer System)
bao gồm một máy tính và các thiết bị ngoại vi.
Thiết bị ngoại vi (Peripherals) bao gồm các
thiết bị nhập, thiết bị xuất và bộ nhớ thứ cấp

Trang 1

Trang 2

Trang 3

Trang 4

Trang 5

Trang 6

Trang 7

Trang 8

Trang 9

Trang 10
Tải về để xem bản đầy đủ
Bạn đang xem 10 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính - Chương 1: Tổng quan về kiến trúc máy tính - Nguyễn Phan Trung", để 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 1: Tổng quan về kiến trúc máy tính - Nguyễn Phan Trung
u hỏi
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Chương 7 Hệ thống IO
(Input Output System)
1. Tổng quan về hệ thống IO
2. Điều khiển IO
3. Nối ghép thiết bị ngoại vi
4. Các thiết bị ngoại vi thông dụng
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
7.1 Tổng quan về hệ thống IO
Giới thiệu chung
o Chức năng của hệ thống IO: Trao đổi thông tin giữa
máy tính với thế giới bên ngoài
o Các thao tác cơ bản:
• Nhập dữ liệu (Input)
• Xuất dữ liệu (Output)
o Các thành phần chính:
• Các thiết bị ngoại vi
• Các mô-đun IO (IO module)
Tất cả các thiết bị ngoại vi đều chậm hơn CPU và
RAM Cần có các mô-đun IO để nối ghép các thiết
bị ngoại vi với CPU và bộ nhớ chính
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Cấu trúc cơ bản của hệ thống IO
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các thiết bị ngoại vi
o Chức năng: chuyển đổi dữ liệu giữa bên trong và
bên ngoài máy tính
o Phân loại:
• Thiết bị ngoại vi giao tiếp người-máy (người đọc): Bàn
phím, Màn hình, Máy in,...
• Thiết bị ngoại vi giao tiếp máy-máy (máy đọc): Đĩa
cứng, CDROM, USB,
• Thiết bị ngoại vi truyền thông: Modem, Network
Interface Card (NIC)
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Tốc độ 1 số TBNV
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các thành phần của thiết bị ngoại vi
• Bộ chuyển đổi tín hiệu: chuyển đổi dữ liệu giữa bên
ngoài và bên trong máy tính
• Bộ đệm dữ liệu: đệm dữ liệu khi truyền giữa mô-đun
IO và thiết bị ngoại vi
• Khối logic điều khiển: điều khiển hoạt động của thiết
bị ngoại vi đáp ứng theo yêu cầu từ mô-đun IO
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Chức năng của mô-đun IO:
• Điều khiển và định thời
• Trao đổi thông tin với
CPU hoặc bộ nhớ chính
• Trao đổi thông tin với
thiết bị ngoại vi
• Đệm giữa bên trong
máy tính với thiết bị
ngoại vi
• Phát hiện lỗi của thiết bị
ngoại vi
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Không gian địa chỉ của CPU
o Một số CPU quản lý duy nhất một không gian địa chỉ:
• Không gian địa chỉ bộ nhớ: 2M địa chỉ
o Một số CPU quản lý hai không gian địa chỉ tách biệt:
• Không gian địa chỉ bộ nhớ: 2M địa chỉ
• Không gian địa chỉ IO: 2I địa chỉ
• Có tín hiệu điều khiển phân biệt truy nhập không gian địa chỉ
• Tập lệnh có các lệnh IO chuyên dụng
o Ví dụ: CPU Intel Pentium 4
• Không gian địa chỉ bộ nhớ = 236 byte = 64GB
• Không gian địa chỉ IO = 216 byte = 64KB
• Lệnh IO chuyên dụng: IN, OUT
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các phương pháp địa chỉ hoá cổng IO
IO riêng biệt (Isolated IO, IO mapped IO)
o Cổng IO được đánh địa chỉ theo không gian địa chỉ IO
o CPU trao đổi dữ liệu với cổng IO thông qua các lệnh IO
chuyên dụng (IN, OUT)
o Chỉ có thể thực hiện trên các hệ thống có quản lý không
gian địa chỉ IO riêng biệt
IO theo bộ nhớ (Memory mapped IO)
o Cổng IO được đánh địa chỉ theo không gian địa chỉ bộ nhớ
o IO giống như đọc/ghi bộ nhớ
o CPU trao đổi dữ liệu với cổng IO thông qua các lệnh truy
nhập dữ liệu bộ nhớ
o Có thể thực hiện trên mọi hệ thống
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Ví dụ: So sánh 2 phương pháp IO
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
7.2 Điều khiển IO
Các phương pháp điều khiển IO
a. IO bằng chương trình (Programmed IO)
b. IO điều khiển bằng ngắt (Interrupt Driven IO)
c. Truy nhập bộ nhớ trực tiếp DMA (Direct
Memory Access)
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
a.Điều khiển IO bằng chương trình
o Nguyên tắc chung: CPU điều khiển trực tiếp IO
bằng chương trình cần phải lập trình IO.
o Với IO riêng biệt: sử dụng các lệnh IO chuyên
dụng (IN, OUT).
o Với IO theo bản đồ bộ nhớ: sử dụng các lệnh trao
đổi dữ liệu với bộ nhớ để trao đổi dữ liệu với cổng
IO.
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các tín hiệu điều khiển IO
o Tín hiệu điều khiển (Control): kích hoạt & khởi
động thiết bị ngoại vi
o Tín hiệu kiểm tra (Test): kiểm tra trạng thái của
mô-đun IO và thiết bị ngoại vi
o Tín hiệu điều khiển đọc (Read): yêu cầu môđun IO
nhận dữ liệu từ thiết bị ngoại vi và đưa vào thanh
ghi đệm dữ liệu, rồi CPU nhận dữ liệu đó
o Tín hiệu điều khiển ghi (Write): yêu cầu môđun IO
lấy dữ liệu trên bus dữ liệu đưa đến thanh ghi đệm
dữ liệu rồi chuyển ra thiết bị ngoại vi
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Hoạt động của IO bằng chương trình
Hoạt động của IO bằng chương trình
o CPU yêu cầu thao tác IO
o Mô-đun IO thực hiện thao tác
o Mô-đun IO thiết lập các bit trạng thái
o CPU kiểm tra các bit trạng thái:
• Nếu chưa sẵn sàng thì quay lại kiểm tra
• Nếu sẵn sàng thì chuyển sang trao đổi dữ liệu với mô-đun IO
Đặc điểm
o IO do ý muốn của người lập trình
o CPU trực tiếp điều khiển IO
o CPU đợi mô-đun IO tiêu tốn thời gian của CPU
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
b. IO điều khiển bằng ngắt
• Sau khi gửi yêu cầu IO, CPU
không phải đợi trạng thái sẵn
sàng của mô-đun IO, CPU
thực hiện một chương trình
nào đó
• Khi mô-đun IO sẵn sàng thì
nó phát tín hiệu ngắt CPU
• CPU thực hiện chương trình
con IO tương ứng để trao đổi
dữ liệu (trình xử l{ ngắt)
• CPU trở lại tiếp tục thực hiện
chương trình đang bị ngắt
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Hoạt động nhập dữ liệu nhìn từ mô-đun IO
o Mô-đun IO nhận tín hiệu điều khiển đọc từ CPU
o Mô-đun IO nhận dữ liệu từ thiết bị ngoại vi, trong
khi đó CPU làm việc khác
o Khi đã có dữ liệu mô-đun IO phát tín hiệu ngắt
CPU
o CPU yêu cầu dữ liệu
o Mô-đun IO chuyển dữ liệu đến CPU
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
...
Hoạt động nhập dữ liệu: nhìn từ CPU
o Phát tín hiệu điều khiển đọc
o Làm việc khác
o Cuối mỗi chu trình lệnh, kiểm tra tín hiệu ngắt
o Nếu bị ngắt:
• Cất ngữ cảnh (nội dung các thanh ghi)
• Thực hiện chương trình con ngắt để nhập dữ liệu
• Khôi phục ngữ cảnh của chương trình đang thực hiện
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
...
• Các vấn đề nảy sinh khi có ngắt:
– Xác định được mô-đun IO nào phát tín hiệu ngắt ?
– Có nhiều yêu cầu ngắt cùng xảy ra ?
• Các phương pháp nối ghép ngắt
– Sử dụng nhiều đường yêu cầu ngắt
– Hỏi vòng bằng phần mềm (Software Poll)
– Hỏi vòng bằng phần cứng (Daisy Chain or Hardware
Poll)
– Sử dụng bộ điều khiển ngắt lập trình được PIC
(Programmable Interrupt Controller)
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Nhiều đường yêu cầu ngắt
o Mỗi mô-đun IO được nối với một đường yêu cầu ngắt
o CPU phải có nhiều đường tín hiệu yêu cầu ngắt
o Hạn chế số lượng mô-đun IO
o Các đường ngắt được qui định mức ưu tiên
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Hỏi vòng bằng phần mềm
o CPU thực hiện phần mềm hỏi lần lượt từng mô-
đun IO
o Chậm
o Thứ tự các mô-đun được hỏi vòng chính là thứ tự
ưu tiên
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Hỏi vòng bằng phần cứng
• CPU phát tín hiệu chấp nhận ngắt (INTA) đến mô-đun IO đầu tiên
• Nếu mô-đun IO đó không gây ra ngắt thì nó gửi tín hiệu đến
mô-đun kế tiếp cho đến khi xác định được mô-đun gây ngắt
• Thứ tự các mô-đun IO kết nối trong chuỗi xác định thứ tự ưu
tiên
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Bộ điều khiển ngắt lập trình được PIC
o PIC có nhiều đường vào yêu cầu ngắt có qui định
mức ưu tiên
o PIC chọn một yêu cầu gắt không bị cấm có mức
ưu tiên cao nhất gửi tới CPU
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Đặc điểm của IO điều khiển bằng ngắt
o Có sự kết hợp giữa phần cứng và phần mềm
o Phần cứng: gây ngắt CPU
o Phần mềm: trao đổi dữ liệu
o CPU trực tiếp điều khiển IO
o CPU không phải đợi mô-đun IO hiệu quả sử
dụng CPU tốt hơn
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Ví dụ: Hệ thống
ngắt trên máy PC
• CPU Intel x86 có
1 chân tín hiệu
ngắt
• PIC 8259A có 8
đường ngắt
• Có thể đấu nối
nhiều PIC theo
chế độ master/
slaver để tăng số
lượng đường ngắt
phục vụ cho
nhiều thiết bị
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
c. DMA (Direct Memory Access)
IO bằng chương trình và bằng ngắt do CPU trực
tiếp điều khiển:
o Chiếm thời gian của CPU
o Tốc độ truyền bị hạn chế vì phải chuyển dữ liệu qua
CPU (thanh ghi có dung lượng nhỏ)
Để khắc phục dùng DMA
o Thêm mô-đun phần cứng trên bus DMAC (DMA
Controller)
o DMAC điều khiển trao đổi dữ liệu giữa môđun IO với
bộ nhớ chính
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Sơ đồ cấu trúc của DMAC
o Thanh ghi dữ liệu: chứa
dữ liệu trao đổi
o Thanh ghi địa chỉ: chứa
địa chỉ ô nhớ dữ liệu
o Bộ đếm dữ liệu: chứa số
từ dữ liệu cần trao đổi
o Logic điều khiển: điều
khiển hoạt động của
DMAC
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Hoạt động DMA
CPU gửi tín hiệu cho DMAC
o Vào hay Ra dữ liệu
o Địa chỉ thiết bị IO (cổng IO tương ứng)
o Địa chỉ đầu của mảng nhớ chứa dữ liệu nạp vào thanh ghi địa
chỉ
o Số từ dữ liệu cần truyền nạp vào bộ đếm dữ liệu
CPU làm việc khác
DMAC điều khiển trao đổi dữ liệu
Sau khi truyền được một từ dữ liệu thì:
o nội dung thanh ghi địa chỉ tăng
o nội dung bộ đếm dữ liệu giảm
Khi bộ đếm dữ liệu = 0, DMAC gửi tín hiệu ngắt CPU để
báo kết thúc DMA
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các kiểu thực hiện DMA
1. DMA truyền theo khối (Block-transfer DMA):
DMAC sử dụng bus để truyền xong cả khối dữ
liệu
2. DMA lấy lén chu kỳ (Cycle Stealing DMA):
DMAC cưỡng bức CPU treo tạm thời từng chu
kỳ bus, DMAC chiếm bus thực hiện truyền một
từ dữ liệu.
3. DMA trong suốt (Transparent DMA): DMAC
nhận biết những chu kỳ nào CPU không sử dụng
bus thì chiếm bus để trao đổi một từ dữ liệu.
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Đặc điểm của DMA
o CPU không tham gia trong quá trình trao đổi dữ
liệu
o DMAC điều khiển trao đổi dữ liệu giữa bộ nhớ
chính với mô-đun IO (hoàn toàn bằng phần cứng)
tốc độ nhanh
o Phù hợp với các yêu cầu trao đổi mảng dữ liệu có
kích thước lớn (Block devices)
Phân loại TBNV
o Character devices
o Block devices
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Ví dụ: Chip DMA trong máy PC
o Intel 8237A DMA Controller
o Giao tiếp với CPU Intel x86 và DRAM
o Khi DMA cần bus, nó gửi tín hiệu HRQ cho CPU
o CPU trả lời bằng tín hiệu HLDA
o DMA bắt đầu sử dụng bus
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Kênh IO (IO channel)
o Việc điều khiển IO được thực hiện bởi một bộ
xử lý IO chuyên dụng
o Bộ xử lý IO hoạt động theo chương trình của
riêng nó
o Chương trình của bộ xử lý IO có thể nằm trong
bộ nhớ chính hoặc nằm trong một bộ nhớ riêng
o Hoạt động theo kiến trúc đa xử lý
• CPU gửi yêu cầu IO cho kênh IO
• Kênh IO tự thực hiện việc truyền dữ liệu
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Cấu hình DMA 1: Bus chung, DMA tách biệt
o Mỗi lần trao đổi một dữ liệu, DMAC sử dụng bus
hai lần
• Giữa mô-đun IO với DMAC
• Giữa DMAC với bộ nhớ
o CPU bị treo khỏi bus 2 lần
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Cấu hình DMA 2: Bus chung, DMA tích hợp
o DMAC điều khiển một hoặc vài mô-đun IO
o Mỗi lần trao đổi một dữ liệu, DMAC sử dụng bus
một lần
• Giữa DMAC với bộ nhớ
o CPU bị treo khỏi bus 1 lần
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Cấu hình DMA 3: Bus IO riêng
o Bus IO tách rời hỗ trợ tất cả các thiết bị cho phép DMA
o Mỗi lần trao đổi một dữ liệu, DMAC sử dụng bus một
lần
• Giữa DMAC với bộ nhớ
o CPU bị treo khỏi bus 1 lần
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
7.3 Nối ghép thiết bị ngoại vi
o Các kiểu nối ghép
• Nối ghép song song (parallel)
• Nối ghép nối tiếp (serial)
o Nối ghép song song
• Truyền nhiều bit song song
• Cần nhiều đường truyền dữ liệu
• Tốc độ nhanh
• Dễ bị nhiễu giữa các tín hiệu
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
o Nối ghép nối tiếp
• Truyền lần lượt từng bit
• Cần có bộ chuyển đổi từ dữ
liệu song song sang nối tiếp
hoặc/và ngược lại
• Cần ít đường truyền dữ liệu
• Tốc độ chậm hơn
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các cấu hình nối ghép
Điểm tới điểm (Point to Point)
o Mỗi cổng IO nối ghép với một thiết bị ngoại vi
o Ví dụ:
• SATA (Serial ATA)
• SAS (Serial Atache SCSI)
Điểm tới đa điểm (Point to Multipoint)
o Mỗi cổng IO cho phép nối ghép với nhiều thiết bị
ngoại vi
o Ví dụ:
• SCSI (Small Computer System Interface): 7 hoặc 15 thiết bị
• USB (Universal Serial Bus): 127 thiết bị
• IEEE 1394 (FireWire): 63 thiết bị
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các cổng vào ra thông dụng
o PS/2: nối ghép bàn phím và chuột – MiniDIN 6 chân
o RJ45: nối ghép mạng
o LPT (Line Printer): nối ghép với máy in, là cổng song
song (Parallel Port) – 25 chân
o COM (Communication): nối ghép với Modem, là cổng
nối tiếp (Serial Port) - 9 hoặc 25 chân
o USB (Universal Serial Bus): Cổng nối tiếp đa năng, cho
phép nối ghép tối đa 127 thiết bị
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Ví dụ: Các cổng nối ghép trên card màn hình
o VGA: Cổng nối ghép màn hình Analog– 15 chân
o DVI: Cổng nối ghép màn hình Digital
o S-Video
o HDMI
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Ví dụ: Hệ thống bus ngoại vi trên máy PC
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
o ISA (Industry Standard Architecture): Sử dụng trên
máy PC 8086 (8 bit) và AT 80286 (16 bit)
o MCA (Micro Channel Architecture): Sử dụng trên
máy 80386 của IBM (32 bit)
o EISA (Extended ISA) Sử dụng trên các máy 80386
tương thích (32 bit)
o VL bus (VESA Local bus): Sử dụng trên các máy
80486 (32 bit)
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
o AGP (Accelerated Graphics Port): Bus dành riêng
cho card màn hình trên máy Pentium. Bao gồm các
mức tốc độ 1x, 2x, 4x và 8x (1x=266MB/s).
o PCI (Peripheral Component Interconnect): Sử
dụng trên các máy Pentium (32 & 64 bit)
• PCI-X: Sử dụng tần số xung nhịp cao hơn (66-133
MHz) so với PCI 33 MHz
• PCI-E (PCI-Express): Cho phép truyền dữ liệu tốc độ
cao, được sử dụng trong các máy PC đời mới. Gồm
nhiều mức tốc độ: 1x, 2x, , 32x (1x: 1 Lane có 4
đường truyền nối tiếp 250 MB/s)
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các cổng điều khiển đĩa
o Đĩa mềm : Dùng cáp 34 chân kết nối tối đa 2 ổ
mềm
o Đĩa cứng/CD/DVD/SSD :
• Chuẩn ST506
• Chuẩn ESDI
• Chuẩn IDE/UDMA/PATA
• Chuẩn SCSI
• Chuẩn SATA
• Chuẩn SAS
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Các thiết bị ngoại vi thông dụng
Thiết bị nhập
o Bàn phím, chuột, scanner, digitizer, micro, đọc vân
tay, đọc bar-code, camera,
Thiết bị xuất
o Màn hình, máy in, máy vẽ, loa, projector,
Thiết bị mạng & truyền thông
o Modem, Router,
Thiết bị lưu trữ
o Đĩa mềm, đĩa cứng, SSD, CD, DVD, thẻ nhớ,
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính
Câu hỏi
ThS Nguyễn Phan Trung Kiến Trúc Máy Tính File đính kèm:
bai_giang_kien_truc_may_tinh_chuong_1_tong_quan_ve_kien_truc.pdf

