Đại học Công nghiệp Thực phẩm
Khoa Công nghệ Thông tin
BÀI GIẢNG KIẾN TRÚC MÁY TÍNH
9/2012
Lưu hành nội bộ
Mục Lục
Đại học Công nghiệp Thực phẩm 1
Khoa Công nghệ Thông tin 1
1
BÀI GIẢNG KIẾN TRÚC MÁY TÍNH 1
9/2012 1
Lưu hành nội bộ 1
Chương 1 1
1. Máy tính và phân loại 2
a)Máy tính(Computer): là thiết bị điện tử thực hiện các công việc sau: 2
b)Phân loại máy tính 2
2. Kiến trúc máy tính 5
a)Kiến trúc tập lệnh (Intruction Set Architecture): nghiên cứu máy tính theo cách
nhìn của người lập trình 5
b)Tổ chức máy tính (Computer Organization): nghiên cứu cấu trúc phần cứng máy
tính. 5
3. Sự tiến hóa của máy tính 6
Chương 2 9
1. Các thành phần của máy tính 10
a)Bộ xử lý trung tâm (CPU) 10
b)Bộ nhớ máy tính (Memory) 12
c)Hệ thống vào-ra (Input-Output) 13
2. Hoạt động của máy tính 17
a)Thực hiện chương trình 17
b)Ngắt 18
a)Nhiệm vụ và cấu trúc của CPU 37
b)Đơn vị số học và logic 37
c)Đơn vị điều khiển 38
d)Tập thanh ghi 39
2. Tập lệnh 43
a)Giới thiệu chung về tập lệnh 43
b)Các kiểu thao tác 44
c)Các phương pháp định địa chỉ (addressing modes) 46
3. Hoạt động của CPU 50
a)Chu trình lệnh 50
4. Cấu trúc chung của các bộ xử lý tiên tiến 52
a)Các đơn vị xử lý dữ liệu 52
b)Các đơn vị chức năng đặc biệt 52
c)Bộ nhớ cache 52
d)Đơn vị quản lý bộ nhớ 52
5. Kiến trúc Intel 52
a)Kiến trúc 16-bit (IA-16) 52
b)Kiến trúc 32-bit (IA-32) 53
Chương 5 54
1. Tổng quan về hệ thống nhớ 55
a)Các đặc trưng của hệ thống nhớ 55
b)Phân cấp hệ thống nhớ 55
2. Bộ nhớ bán dẫn 56
a)Phân loại 56
b)Tổ chức của chip nhớ 58
3. Bộ nhớ chính 59
a)Các đặc trưng cơ bản 59
b)Tổ chức bộ nhớ đan xen 59
4. Bộ nhớ đệm nhanh (cache memory) 59
a)Nguyên tắc chung 59
GIỚI THIỆU CHUNG
Mục đích:
Giới thiệu lịch sử phát triển của máy tính,
Giới thiệu các thế hệ máy tính
Cách phân loại máy tính.
Yêu cầu:
Sinh viên được trang bị kiến thức về lịch sử phát triển của máy tính, các thế hệ
máy tính và cách phân loại máy tính.
1 | P a g e
Trường Đại học Công Nghiệp Thực Phẩm Chương 1: Giới thiệu chung
1. Máy tính và phân loại
a) Máy tính(Computer): là thiết bị điện tử thực hiện các công việc sau:
• Nhận thông tin vào
• Xử lý thông tin theo dãy các lệnh được nhớ sẵn bên trong: Dãy các lệnh nằm
trong bộ nhớ để yêu cầu máy tính thực hiện công việc cụ thể được gọi là
chương trình (program)
• Đưa thông tin ra.
Hình 1.1 Quy trình thực hiện công việc máy tính
b) Phân loại máy tính
• Phân loại truyền thống:
− Microcomputer: Còn gọi là PC (personal computer), là những máy tính nhỏ,
có 1 chip vi xử lý và một số thiết bị ngoại vi. Thường dùng cho một người, có
thể dùng độc lập hoặc dùng trong mạng máy tính.
− Minicomputer: Là những máy tính cỡ trung bình, kích thước thường lớn hơn
PC. Nó có thể thực hiện được các ứng dụngmà máy tính cỡ lớn thực hiện. Nó
có khả năng hỗ trợ hàng chục đến hàng trăm người làm việc. Minicomputer
được sử dụng rộng rãi trong các ứng dụng thời gian thực, ví dụ trong điều
khiển hàng không, trong tự động hoá sản xuất.
2 | P a g e
Trường Đại học Công Nghiệp Thực Phẩm Chương 1: Giới thiệu chung
+ Ví dụ: . Điện thoại di động, bộ điều khiển trong máy giặt, điều hoà nhiệt
độ, Router -bộ định tuyến trên mạng
+ Giá thành: Vài USD đến hàng trăm nghìn USD.
• Phân loại theo kiến trúc
Dựa vào kiến trúc của máy tính người ta cũng phân máy tính ra các loại khác nhau
như sau:
− Kiến trúc SISD (single instruction - single data, đơn dòng lệnh - đơn dòng dữ
liệu), sơ đồ như hình 1-2
Hình 1-2: Kiến trúc máy tính SISD.
− Kiến trúc CIMD (Single Instruction Multiple Data, đơn dòng lệnh- đa dữ liệu),
sơ đồ như hình 1-3.
Hình 1-3: Kiến trúc SIMD.
− Kiến trúc MIMD (Multiple Instruction Multiple Data, đa dòng lệnh- đa dữ
liệu), sơ đồ như hình 1-4.
4 | P a g e
Khối điều khiển Khối chấp hành
Hệ thống nhớ
lệnh dữ liệu
Các tín hiệu điều khiển
dữ liệu
Khối điều khiển Khối chấp hành 2
Hệ thống nhớ
lệnh
Các tín hiệu điều khiển
Khối chấp hành 1 Khối chấp hành n
Trường Đại học Công Nghiệp Thực Phẩm Chương 1: Giới thiệu chung
Hình 1-4: Kiến trúc MIMD.
2. Kiến trúc máy tính
Kiến trúc máy tính bao gồm hai khía cạnh:
Lịch sử phát triển của máy tính điện tử có thể chia làm bốn thế hệ như sau:
- Thế hệ 1: (1945-1955). Máy tính được xây dựng trên cơ sở đèn điện tử mà mỗi đèn
tượng trưng cho 1 bit nhị phân. Do đó máy có khối lượng rất lớn, tốc độ chậm và tiêu
thụ điện năng lớn. Như máy ENIAC có khối lượng 30 tấn, tiêu thụ công suất 140KW.
6 | P a g e
Trường Đại học Công Nghiệp Thực Phẩm Chương 1: Giới thiệu chung
Hình 1.6 Máy tính ENIAC
- Thế hệ thứ 2: (1955-1965). Máy tính được xây dựng trên cơ sở là các đèn bán dẫn
(transistor), máy tính đầu tiên thế hệ này có tênlà TX-0 (transistorized experimental
computer 0).
- Thế hệ thứ ba: (1965-1980). Máy tính được xây dựng trên các vi mạch cỡ nhỏ (SSI) và
cỡ vừa (MSI), điển hình là thế hệ máy System/360 của IBM. Thế hệ máy tính này có
những bước đột phá mới như sau:
+ Tính tương thích cao: Các máy tính trong cùng một họ có khả năng chạy các
chương trình, phần mềm của nhau.
+ Đặc tính đa chương trình: Tại một thời điểm có thể có vài chương trình nằm
trong bộ nhớ và một trong số đó được cho chạy trong khi các chương trình khác chờ hoàn
thành các thao tác vào/ra.
+ Không gian địa chỉ rất lớn.
- Thế hệ thứ tư: (1980- ). Máy tính được xây dựng trên các vi mạch cỡ lớn (LSI) và cực
lớn (VLSI).
+ Đây là thế hệ máy tính số ngày nay, nhờ công nghệ bán dẫn phát triển vượt bậc,
mà người ta có thể chế tạo các mạch tổ hợp ở mức độ cực lớn. Nhờ đó máy tính ngày
7 | P a g e
Trường Đại học Công Nghiệp Thực Phẩm Chương 1: Giới thiệu chung
càng nhỏ hơn, nhẹ hơn, mạnh hơn và giá thành rẻ hơn. Máy tính cá nhân bắt đầu xuất
hiện và phát triển trong thời kỳ này.
+ Dựa vào kích thước vật lý, hiệu suất và lĩnh vực sử dụng, hiện nay người ta
thường chia máy tính số thế hệ thứ tư thành 5 loại chính, các loại có thể trùm lên nhau
một phần:
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Hình 2.2 Bên trong CPU
• 8 bước thực hiện lệnh của CPU
1. Lấy lệnh kế tiếp từ bộ nhớ vào thanh ghi lệnh IR.
2. Thay đổi bộ đếm chương trình PC để trỏ tới lệnh tiếp sau nữa.
3. Xác định loại của lệnh vừa lấy (làm gì?).
4. Nếu lệnh sử dụng dữ liệu trong bộ nhớ thì xác định xem nó ở đâu.
5. Lấy dữ liệu (nếu có) vào thanh ghi của CPU.
6. Thi hành lệnh.
7. Cất kết quả vào nơi cần lưu trữ.
8. Trở lại bước 1 để làm lệnh kế.
• Tốc độ của bộ xử lý
− Tính bằng số lệnh được thực hiện trong 1 giây - MIPS (Millions of
Instructions per Second)
− Khó đánh giá chính xác
− Tần số xung nhịp của bộ xử lý:Bộ xử lý hoạt động theo một xung nhịp
(Clock) có tần số xác định.Tốc độ của bộ xử lý được đánh giá gián tiếp
thông qua tần số của xung nhịp.
− Dạng xung nhịp:
− T0 - chu kỳ xung nhịp
11 | P a g e
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Tần số xung nhịp: f0 = 1/T0
Mỗi thao tác của bộ xử lý cần kT0
T0 càng nhỏ thì bộ xử lý chạy càng nhanh
Ví dụ: Máy tính dùng bộ xử lý Pentium IV 2GHz: Ta có f0 = 2 GHz =
2x109 Hz. T0 = 1/f0 = 1/(2x109) = 0,5 ns
b) Bộ nhớ máy tính (Memory)
Hình 2.3 Bộ nhớ máy tính
• Chức năng: lưu trữ chương trình và dữ liệu.
• Chức năng: trao đổi thông tin giữa máy tính với thế giới bên ngoài.
13 | P a g e
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Hình 2.4: Cấu trúc cơ bản của hệ thống vào ra
• Các thao tác cơ bản:
− Vào dữ liệu (Input)
− Ra dữ liệu (Output)
• Các thành phần chính:
− Các thiết bị ngoại vi (Peripheral Devices)
+ Chức năng: chuyển đổi dữ liệu giữa bên trong và bên ngoài máy tính.
Các loại thiết bị ngoại vi (TBNV) cơ bản: như thiết bị vào: bàn phím,
chuột, máy quét …, thiết bị ra: màn hình, máy in …
14 | P a g e
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Hình 2.5 Tổ chức ma trận bàn phím
Hình 2.6 Ma trận ký tự trên màn hình
15 | P a g e
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Hình 2.7 Chế độ đồ họa
Hình 2.8 Máy in
Thiết bị nhớ: các ổ đĩa …
16 | P a g e
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Hình 2.9 Ổ cứng
Thiết bị truyền thông: MODEM …
− Các môđun vào-ra (IO Modules)
+ Chức năng: nối ghép các TBNV với máy tính. Mỗi môđun vào-ra có
một hoặc một vài cổng vào-ra (I/O Port). Mỗi cổng vào-ra được đánh
một địa chỉ xác định.
Các TBNV được kết nối và trao đổi dữ liệu với máy tính thông qua các
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
Khái niệm: Ngắt là cơ chế cho phép CPU tạm dừng chương trình đang thực hiện để
chuyển sang thực hiện một chương trình khác, gọi là chương trình con phục vụ ngắt.
Các loại ngắt:
• Ngắt do lỗi khi thực hiện chương trình, ví dụ:tràn số, chia cho 0…
• Ngắt do lỗi phần cứng, ví dụ: lỗi bộ nhớ RAM
• Ngắt do môđun vào-ra phát tín hiệu ngắt đến CPU yêu cầu trao đổi dữ liệu.
Hình 2.11 Tiến trình ngắt
Xử lý ngắt tuần tự
Khi một ngắt đang được thực hiện, các ngắt khác sẽ bị cấm
Bộ xử lý sẽ bỏ qua các ngắt tiếp theo trong khi đang xử lý một ngắt
Các ngắt vẫn đang đợi và được kiểm tra sau khi ngắt đầu tiên được xử lý xong
Các ngắt được thực hiện tuần tự
Xử lý ngắt ưu tiên
Các ngắt được định nghĩa mức ưu tiên khác nhau
Ngắt có mức ưu tiên thấp hơn có thể bị ngắt bởi ngắt ưu tiên cao hơn xảy ra ngắt
lồng nhau
• Sau khi hoàn thành một lệnh, bộ xử lý kiểm tra tín hiệu ngắt.
• Nếu không có ngắt bộ xử lý nhận lệnh tiếp theo của chương trình hiện tại.
• Nếu có tín hiệu ngắt:
− Tạm dừng chương trình đang thực hiện
19 | P a g e
Trường Đại Học Công Nghiệp Thực Phẩm Chương 2: Hệ thống máy tính
− Cất ngữ cảnh (các thông tin liên quan đến chương trình bị ngắt)
− Thiết lập PC trỏ đến chương trình con phục vụ ngắt
− Chuyển sang thực hiện chương trình con phục vụ ngắt
− Cuối chương trình con phục vụ ngắt, khôi phục ngữ cảnh và tiếp tục
chương trình đang bị tạm dừng.
• Sau khi hoàn thành một lệnh, bộ xử lý kiểm tra tín hiệu ngắt. Nếu không có
ngắt bộ xử lý nhận lệnh tiếp theo của chương trình hiện tại.
− Chức năng: vận chuyển địa chỉ để xác định ngăn nhớ hay cổng vào-ra.
− Độ rộng bus địa chỉ: xác định dung lượng bộ nhớ cực đại của hệ thống. Nếu
độ rộng bus địa chỉ là N bit: AN-1, AN-2, A2, A1, A0 dung lượng bộ nhớ
cực đại là 2N byte (còn gọi là không gian địa chỉ bộ nhớ)
− Ví dụ: Bộ xử lý Intel Pentium có bus địa chỉ 32 bit không gian địa chỉ là 232
byte =4 GB.
• Bus dữ liệu
− Chức năng:vận chuyển lệnh từ bộ nhớ đến CPU vận chuyển dữ liệu giữa CPU,
các môđun nhớ và môđun vào-ra.
− Độ rộng bus dữ liệu: xác định số bit dữ liệu có thể được trao đổi đồng thời.
M bit: DM-1, DM-2, …D2, D1, D0 M thường là 8, 16, 32, 64, 128 bit
− Ví dụ: Các bộ xử lý Pentium có bus dữ liệu là 64 bit.
• Bus điều khiển
21 | P a g e