Giáo trình Kiến trúc máy tính - Vũ Đức Lung

Thế hệ II – transistor (1955-1965)

Sự thay ñổi ñầu tiên trong lĩnh vực máy tính ñiện tử xuất

hiện khi có sự thay thế ñèn chân không bằng ñèn bán dẫn. ðèn bán

dẫn nhỏ hơn, rẻ hơn, tỏa nhiệt ít hơn trong khi vẫn có thể ñược sử

dụng theo cùng cách thức của ñèn chân không ñể tạo nên máy tính.

Không như ñèn chân không vốn ñòi hỏi phải có dây, có bảng kim

loại, có bao thủy tinh và chân không, ñèn bán dẫn là một thiết bị ở

trạng thái rắn ñược chế tạo từ silicon có nhiều trong cát trong tự

nhiên.

ðèn bán dẫn là phát minh lớn của phòng thí nghiệm Bell

Labs trong năm 1947 bởi Bardeen, Brattain và Shockley. Nó ñã

tạo ra một cuộc cách mạng ñiện tử trong những năm 50 của thế kỷ

Bộ

Logic-số học

ALU

Bộ

ñiều khiển

CU

Bộ

nhớ

chính

Thiết

bị

nhập

xuất

Chương I: Giới thiệu

10

20. Dù vậy, mãi ñến cuối những năm 50, các máy tính bán dẫn hóa

hoàn toàn mới bắt ñầu xuất hiện trên thị trường máy tính.

Việc sử dụng ñèn bán dẫn trong chế tạo máy tính ñã xác

ñịnh thế hệ máy tính thứ hai, với ñại diện tiêu biểu là máy PDP-1

của công ty DEC (Digital Equipment Corporation) và IBM 7094

của IBM. DEC ñược thành lập vào năm 1957 và sau ñó 4 năm cho

ra ñời sản phẩm ñầu tiên của mình là máy PDP-1 như ñã ñề cập ở

trên. ðây là chiếc máy mở ñầu cho dòng máy tính mini của DEC,

vốn rất phổ biến trong các máy tính thế hệ thứ ba.

pdf 143 trang kimcuc 1720
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Kiến trúc máy tính - Vũ Đức Lung", để 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: Giáo trình Kiến trúc máy tính - Vũ Đức Lung

Giáo trình Kiến trúc máy tính - Vũ Đức Lung
ðẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH 
TRƯỜNG ðẠI HỌC CÔNG NGHỆ THÔNG TIN 
----------o0o---------- 
Giáo trình 
KIẾN TRÚC MÁY TÍNH 
Biên soạn: TS. Vũ ðức Lung 
2009 
 1 
LỜI NÓI ðẦU 
 Với mục tiêu ñưa các môn học chuyên ngành công nghệ 
thông tin vào học ngay từ những học kỳ ñầu trong trường ðại học 
Công nghệ thông tin, giáo trình Kiến trúc máy tính ñược biên 
soạn ñặc biệt cho mục ñích này và ñược ñịnh hướng cho sinh viên 
nghành công nghệ thông tin năm thứ nhất. 
 Giáo trình Kiến trúc máy tính này trình bày các vấn ñề 
chung nhất, các thành phần cơ bản nhất cấu thành nên máy tính 
hiện ñại nhằm trang bị cho sinh viên các nội dung chủ yếu trong 8 
chương sau: 
 Chương I: Trình bày lịch sử phát triển của máy tính cũng 
như các tích năng mới của máy tính trong từng giai ñoạn, các thế 
hệ máy tính, ñịnh hướng phát triển của máy tính và cách phân loại 
máy tính. 
 Chương II: Giới thiệu các nguyên lý hoạt ñộng chung và 
các tính chất cơ bản của các bộ phận chính yếu trong máy tính 
như: bộ xử lý (CPU), bản mạch chính (Mainboard), các thiết bị 
lưu trữ dữ liệu, các loại bộ nhớ RAM, Card ñồ họa, màn hình. 
Ngoài ra còn cho thấy ñược những hình dáng và sự tích hợp của 
các bộ phận với nhau nhằm giúp sinh viên có thể tự mua sắm, lắp 
ráp một máy tính cho mình. 
 Chương III: Trình bày cách biến ñổi cơ bản của hệ thống 
số (như hệ thập phân, hệ nhị phân, hệ bát phân, hệ thập lục phân), 
các cách cơ bản ñể biểu diễn dữ liệu, cách thực hiện các phép tính 
số học cho hệ nhị phân. 
 Chương IV: Các cổng và ñại số Boolean, các ñịnh lý trong 
ñại số Boolean, cách ñơn giản các hàm Boolean cũng như các 
mạch số, cách biểu diễn các mạch số qua các hàm Boolean và 
ngược lại, các mạch tổ hợp cơ bản, cách thiết kế các mạch ñơn 
giản. 
 Chương V: Trình bày nguyên lý họat ñộng của các mạch 
lật, các flip-flop, qui trình thiết kế một mạch tuần tự và ñưa ra ví 
dụ cụ thể cho việc thiết kế này. 
Simpo PDF Merge and Split Unregistered Version - 
 2 
 Chương VI: Phân loại kiến trúc bộ lệnh, cách bố trí ñịa 
chỉ bộ nhớ, các cách mã hóa tập lệnh, các lệnh cơ bản của máy 
tính qua các lệnh hợp ngữ assembler 
 Chương VII: Giới thiệu cấu trúc của bộ xử lý trung tâm: 
tổ chức, chức năng và nguyên lý hoạt ñộng của các bộ phận bên 
trong bộ xử lý như bộ tính toán logic số học, bộ ñiều khiển, tập 
các thanh ghi. Ngoài ra còn trình bày cách tổ chức ñường ñi dữ 
liệu, diễn biến quá trình thi hành lệnh và kỹ thuật ống dẫn. 
 Chương VIII: Trình bày các cấp bộ nhớ, thiết kế và 
nguyên lý hoạt ñộng của các loại bộ nhớ. Phương pháp ñánh giá 
hiệu năng của các cấp bộ nhớ. Các chiến thuật thay thế khối nhớ, 
trang nhớ cũng như các chiến thuật ghi vào bộ nhớ. 
 Như ñã nói ở trên, giáo trình nhằm giảng dạy cho sinh viên 
năm thứ nhất do ñó những kiến thức ñưa ra chỉ là cơ bản. ðể hiểu 
sâu hơn mọi vấn ñề nên xem thêm trong các sách tham khảo ở 
cuối quyển giáo trình này. 
 Mặc dù ñã cố gắng biên soạn rất công phu và kỹ lưỡng, 
tuy nhiên cũng khó tránh khỏi những thiếu sót. Chúng tôi mong 
ñược ñón nhận các ñóng góp ý kiến của các Thầy, các bạn ñồng 
nghiệp, các bạn sinh viên và các bạn ñọc nhằm chỉnh sửa giáo 
trình ñược hoàn thiện hơn. 
 Cuối cùng xin chân thành cảm ơn những góp ý quí giá của 
các ñồng nghiệp khi biên soạn giáo trình này. 
Vũ ðức Lung. 
Simpo PDF Merge and Split Unregistered Version - 
Chương I: Giới thiệu 
 3 
Chương I: Giới thiệu 
1.1. Lịch sử phát triển của máy tính 
 Trong quá trình phát triển của công nghệ máy tính, con 
người ñã chế tạo ra hàng ngàn loại máy tính khác nhau. Rất nhiều 
trong số những máy tính này ñã bị quên lãng ñi, chỉ một số ít còn 
ñược nhắc lại cho ñến ngày nay. ðó là các máy tính với những ý 
tưởng thiết kế và nguyên lý hoạt ñộng ñộc ñáo tạo nên một tầm ảnh 
hưởng lớn ñến các máy tính thế hệ sau nó. ðể giúp sinh viên có 
ñược những khái niệm cơ bản về máy tính và hiểu rõ hơn bằng 
cách nào mà con người ñã phát minh ra những máy tính hiện ñại, 
dễ sử dụng như ngày nay, trong phần này sẽ trình bày những chi 
tiết quan trọng về lịch sử quá trình phát triển của máy tính. 
 Máy tính thường ñược phân loại thành các thế hệ dựa trên 
nền tảng công nghệ phần cứng ñược sử dụng trong quá trình chế 
tạo. Lịch sử phát triển máy tính có thể ñược chia thành các thế hệ 
máy tính sau: 
1.1.1. Thế hệ zero –máy tính cơ học (1642-1945) 
 Mốc lịch sử máy tính phải nhắc ñến ñầu tiên là khi nhà bác 
học người Pháp Blez Pascal (1626-1662) vào năm 1642 ñã phát 
minh ra máy tính toán ñầu tiên – máy tính cơ học với 6 bánh quay 
và bộ dẫn ñộng bằng tay. Máy của ông chỉ cho phép thực hiện các 
phép tính cộng và trừ. 
Sau 30 năm, vào năm 1672 một nhà bác học khác, Gotfrid 
Vilgelm Leibnits ñã chế tạo ra máy tính với 4 phép tính cơ bản (+ - 
* /) sử dụng 12 bánh quay. Từ khi 
còn là sinh viên cho ñến hết cuộc 
ñời, ông ñã nghiên cứu các tính 
chất của hệ nhị phân và là người 
ñã ñưa ra các nguyên lý cũng như 
khái niệm cơ bản nhất cho hệ nhị 
Chương I: Giới thiệu 
 4 
phân ñược dùng ngày nay trong máy tính ñiện tử. 
Năm 1834 giáo sư toán học trường ðH Cambridge (Anh), 
Charles Babbage (người phát minh ra ñồng hồ công tơ mét) ñã thiết 
kế ra máy tính với chỉ 2 phép tính + và – nhưng có một cấu trúc 
ñáng ñể ý thời bấy giờ – máy tính có 4 bộ phận: 
- bộ nhớ, 
- bộ tính toán, 
- thiết bị nhập ñể ñọc các phiếu ñục lỗ, 
- thiết bị xuất ñể khoan lỗ lên các tấm ñồng. 
Chính ý tưởng của ông là tiền ñề cho các máy tính hiện ñại 
sau này. 
ðể máy tính hoạt ñộng nó cần phải có chương trình, và ông 
ñã thuê cô Ada làm chương trình cho máy tính này. Cô Ada chính 
là lập trình viên ñầu tiên và ñể tưởng nhớ tới cô ta sau này Ada 
ñược ñặt tên cho 1 ngôn ngữ lập trình. Tuy nhiên máy tính ñã 
không hoạt ñộng ñược vì ñòi hỏi quá phức tạp và thời bấy giờ con 
người và kỹ thuật chưa cho phép. 
Năm 1936 К. Zus (người ðức) ñã thiết kế một vài máy ñếm 
tự ñộng trên cơ sở rơle (relay). Tuy nhiên ông không biết gì về máy 
tính của Babbage và máy tính của ông ñã bị phá hủy trong một trận 
bom vào Berlin khi chiến tranh thế giới lần thứ 2 - 1944. Vì vậy 
những phát minh của ông ta ñã không ảnh hưởng ñến sự phát triển 
của kỹ thuật máy tính sau này. 
Năm 1944 G. Iken (thuộc ðH Havard Mỹ) ñã ñọc về công 
trình của Babbage và ông ñã cho ra ñời Mark I sau ñó là Mark II. 
Máy Mark I ra ñời với mục ñích chính là phục vụ chiến tranh. Nó 
nặng 5 tấn, cao 2.4 m, dài 15 m, chứa 800 km dây ñiện. Tuy nhiên 
vào thời ñiểm ñó máy tính relay ñã qua thời và ñã bắt ñầu kỷ 
nguyên của máy tính ñiện tử. 
 1.1.2. Thế hệ I – bóng ñèn ñiện (1945-1955) 
 Chiến tranh thế giới thứ 2 bắt ñầu và vào ñầu thời kỳ chiến 
tranh tàu ngầm của ðức ñã phá hủy nhiều tàu của Anh, nhờ những 
Simpo PDF Merge and Split Unregistered Version - 
Chương I: Giới thiệu 
 5 
tín hiệu mã hóa ñược chuyền ñi bởi thiết bị ENIGMA mà quân ñội 
Anh ñã không thể giải mã ñược. ðể giải mã ñòi hỏi một số lượng 
tính toán rất lớn và mất nhiều thời gian, trong khi chiến tranh thì 
không cho phép chờ ñợi. Vì vậy chính phủ Anh ñã cho thành lập 
một phòng thí nghiệm bí mật nhằm chế tạo ra một máy tính ñiện 
phục vụ cho việc giải mã những thông tin này. Năm 1943 máy tính 
COLOSSUS ra ñời với 2000 ñèn chân không và ñược giữ bí mật 
suốt 30 năm và nó ñã không thể trở thành cơ sở cho sự phát triển 
của máy tính. Một trong những người sáng lập ra COLOSSUS là 
nhà toán học nổi tiếng Alain Turing. Trong hình 1.1 là bức chân 
dung của Alain Turing và một bóng ñèn chân không. 
Bóng ñèn chân không 
Hình 1.1. Alain Turing với bóng ñèn chân không 
 Chiến tranh thế giới ñã có ảnh hưởng lớn ñến phát triển kỹ 
thuật máy tính ở Mỹ. Quân ñội Mỹ cần các bảng tính toán cho pháo 
binh và hàng trăm phụ nữ ñã ñược thuê cho việc tính toán này trên 
các máy tính tay (người ta cho rằng phụ nữ trong tính toán cẩn thận 
hơn nam giới). Tuy nhiên quá trình tính toán này vẫn ñòi hỏi thời 
gian khá lâu và nhằm ñáp ứng yêu cầu của BRL (Ballistics 
Research Laboratory – Phòng nghiên cứu ñạn ñạo quân ñội Mỹ) 
trong việc tính toán chính xác và nhanh chóng các bảng số liệu ñạn 
ñạo cho từng loại vũ khí mới, dự án chế tạo máy ENIAC ñã ñược 
bắt ñầu vào năm 1943. 
Chương I: Giới thiệu 
 6 
Máy ENIAC (Electronic Numerical Integrator And 
Computer), do John Mauchly và John Presper Eckert (ñại học 
Pensylvania, Mỹ) thiết kế và chế tạo, là chiếc máy số hoá ñiện tử 
ña năng ñầu tiên trên thế giới (hình 1.2). 
 Số liệu kỹ thuật: ENIAC là một chiếc máy khổng lồ 
với hơn 18000 bóng ñèn chân không, nặng hơn 30 tấn, 
tiêu thụ một lượng ñiện năng vào khoảng 140kW và 
chiếm một diện tích xấp xỉ 1393 m2. Mặc dù vậy, nó 
làm việc nhanh hơn nhiều so với các loại máy tính ñiện 
cơ cùng thời với khả năng thực hiện 5000 phép cộng 
trong một giây ñồng hồ. 
Hình 1.2. Máy tính ENIAC 
 ðiểm khác biệt giữa ENIAC & các máy tính khác: 
ENIAC sử dụng hệ ñếm thập phân chứ không phải nhị 
phân như ở tất cả các máy tính khác. Với ENIAC, các 
con số ñược biểu diễn dưới dạng thập phân và việc tính 
Simpo PDF Merge and Split Unregistered Version - 
Chương I: Giới thiệu 
 7 
toán cũng ñược thực hiện trên hệ thập phân. Bộ nhớ của 
máy gồm 20 "bộ tích lũy", mỗi bộ có khả năng lưu giữ 
một số thập phân có 10 chữ số. Mỗi chữ số ñược thể 
hiện bằng một vòng gồm 10 ñèn chân không, trong ñó 
tại mỗi thời ñiểm, chỉ có một ñèn ở trạng thái bật ñể thể 
hiện một trong mười chữ số từ 0 ñến 9 của hệ thập phân. 
Việc lập trình trên ENIAC là một công việc vất vả vì 
phải thực hiện nối dây bằng tay qua việc ñóng/mở các 
công tắc cũng như cắm vào hoặc rút ra các dây cáp ñiện. 
 Hoạt ñộng thực tế: Máy ENIAC bắt ñầu hoạt ñộng vào 
tháng 11/1945 với nhiệm vụ ñầu tiên không phải là tính 
toán ñạn ñạo (vì chiến tranh thế giới lần thứ hai ñã kết 
thúc) mà ñể thực hiện các tính toán phức tạp dùng trong 
việc xác ñịnh tính khả thi của bom H. Việc có thể sử 
dụng máy vào mục ñích khác với mục ñích chế tạo ban 
ñầu cho thấy tính ña năng của ENIAC. Máy tiếp tục 
hoạt ñộng dưới sự quản lý của BRL cho ñến khi ñược 
tháo rời ra vào năm 1955. 
Với sự ra ñời và thành công của máy ENIAC, năm 1946 
ñược xem như năm mở ñầu cho kỷ nguyên máy tính ñiện 
tử, kết thúc sự nỗ lực nghiên cứu của các nhà khoa học ñã 
kéo dài trong nhiều năm liền trước ñó 
Máy tính Von Neumann 
Như ñã ñề cập ở trên, việc lập trình trên máy ENIAC là một 
công việc rất tẻ nhạt và tốn kém nhiều thời gian. Công việc này có 
lẽ sẽ ñơn giản hơn nếu chương trình có thể ñược biểu diễn dưới 
dạng thích hợp cho việc lưu trữ trong bộ nhớ cùng với dữ liệu cần 
xử lý. Khi ñó máy tính chỉ cần lấy chỉ thị bằng cách ñọc từ bộ nhớ, 
ngoài ra chương trình có thể ñược thiết lập hay thay ñổi thông qua 
sự chỉnh sửa các giá trị lưu trong một phần nào ñó của bộ nhớ. 
Ý tưởng này, ñược biết ñến với tên gọi "khái niệm chương 
trình ñược lưu trữ", do nhà toán học John von Neumann (Hình 
Chương I: Giới thiệu 
 8 
1.3), một cố vấn của dự án ENIAC, ñưa ra ngày 8/11/1945, trong 
một bản ñề xuất về một loại máy tính mới có tên gọi EDVAC 
(Electronic Discrete Variable Computer – do Ekert và Moyshly ñã 
bắt ñầu làm rồi ngừng lại ñi thành lập công ty, sau này là Unisys 
Corporation). Máy tính này cho phép nhiều thuật toán khác nhau 
có thể ñược tiến hành trong máy tính mà không cần phải nối dây lại 
như máy ENIAC nhờ vào khái niệm chương trình lưu trữ. 
John von Neumann 
Hình 1.3. Von Neumann với máy tính EDVAC 
Máy IAS 
Tiếp tục với ý tưởng của mình, vào năm 1946, von Neuman 
cùng các ñồng nghiệp bắt tay vào thiết kế một máy tính mới có 
chương trình ñược lưu trữ với tên gọi IAS (Institute for Advanced 
Studies) tại học viện nghiên cứu cao cấp Princeton, Mỹ. Mặc dù 
mãi ñến năm 1952 máy IAS mới ñược hoàn tất, nó vẫn là mô hình 
cho tất cả các máy tính ña năng sau này. 
Cấu trúc tổng quát của máy IAS, như ñược minh họa trên 
hình 1.4, gồm có: 
Simpo PDF Merge and Split Unregistered Version - 
Chương I: Giới thiệu 
 9 
 Một bộ nhớ chính ñể lưu trữ dữ liệu và chương trình. 
 Một bộ logic-số học (ALU – Arithmetic and Logic Unit) 
có khả năng thao tác trên dữ liệu nhị phân. 
 Một bộ ñiều khiển chương trình có nhiệm vụ thông dịch 
các chỉ thị trong bộ nhớ và làm cho chúng ñược thực thi. 
 Thiết bị nhập/xuất ñược vận hành bởi ñơn vị ñiều khiển. 
Hầu hết các máy tính hiện nay ñều có chung cấu 
trúc và chức năng tổng quát như trên. Do vậy chúng còn có 
tên gọi chung là các máy von Neumann. 
Hình 1.4. Cấu trúc của máy IAS 
1.1.3. Thế hệ II – transistor (1955-1965) 
Sự thay ñổi ñầu tiên trong lĩnh vực máy tính ñiện tử xuất 
hiện khi có sự thay thế ñèn chân không bằng ñèn bán dẫn. ðèn bán 
dẫn nhỏ hơn, rẻ hơn, tỏa nhiệt ít hơn trong khi vẫn có thể ñược sử 
dụng theo cùng cách thức của ñèn chân không ñể tạo nên máy tính. 
Không như ñèn chân không vốn ñòi hỏi phải có dây, có bảng kim 
loại, có bao thủy tinh và chân không, ñèn bán dẫn là một thiết bị ở 
trạng thái rắn ñược chế tạo từ silicon có nhiều trong cát trong tự 
nhiên. 
ðèn bán dẫn là phát minh lớn của phòng thí nghiệm Bell 
Labs trong năm 1947 bởi Bardeen, Brattain và Shockley. Nó ñã 
tạo ra một cuộc cách mạng ñiện tử trong những năm 50 của thế kỷ 
Bộ 
Logic-số học 
ALU 
Bộ 
ñiều khiển 
CU 
Bộ 
nhớ 
chính 
Thiết 
bị 
nhập 
xuất 
Chương I: Giới thiệu 
 10 
20. Dù vậy, mãi ñến cuối những năm 50, các máy tính bán dẫn hóa 
hoàn toàn mới bắt ñầu xuất hiện trên thị trường máy tính. 
Việc sử dụng ñèn bán dẫn trong chế tạo máy tính ñã xác 
ñịnh thế hệ máy tính thứ hai, với ñại diện tiêu biểu là máy PDP-1 
của công ty DEC (Digital Equipment Corporation) và IBM 7094 
của IBM. DEC ñược thành lập vào năm 1957 và sau ñó 4 năm cho 
ra ñời sản phẩm ñầu tiên của mình là máy PDP-1 như ñã ñề cập ở 
trên. ðây là chiếc máy mở ñầu cho dòng máy tính mini của DEC, 
vốn rất phổ biến trong các máy tính thế hệ thứ ba. 
Các máy IBM-709,7090,7094 có chu kỳ thời gian là 2 
microsecond, bộ nhớ 32 K word 16 bit. Hình 1.5 mô tả một cấu 
hình với nhiều thiết bị ngoại vi của máy IBM 7094. 
Hình 1.5 Một cấu trúc máy IBM 7094 
CPU 
Bộ 
dồn 
kênh 
Memory 
Kênh dữ liệu 
Băng từ 
Kênh dữ liệu 
Kênh dữ liệu 
Trống từ 
Phiếu ñục lỗ 
Máy in dòng 
Hypertape 
Bộ ñọc thẻ 
ðĩa 
Simpo PDF Merge and Split Unregistered Version - 
Chương I: Giới thiệu 
 11 
Ở ñây có nhiều ñiểm khác biệt so với máy IAS mà chúng ta 
cần lưu ý. ðiểm quan trọng nhất trong số ñó là việc sử dụng các 
kênh dữ liệu. Một kênh dữ liệu là một module nhập/xuất ñộc lập 
có bộ xử lý và tập lệnh riêng. Trên một hệ thống máy tính với các 
thiết bị như thế, CPU sẽ không thực thi các chỉ thị nhập/xuất chi 
tiết. Những chỉ thị ñó ñược lưu trong bộ nhớ chính và ñược thực thi 
bởi một bộ xử lý chuyên dụng trong chính kênh dữ liệu. CPU chỉ 
khởi ñộng một sự kiện truyền nhập/xuất bằng cách gửi tín hiệu ñiều 
khiển ñến kênh dữ liệu, ra lệnh cho nó thực thi một dãy các chỉ thị 
trong máy tính. Kênh dữ liệu thực hiện nhiệm vụ của nó ñộc lập 
với CPU và chỉ cần gửi tín hiệu báo cho CPU khi thao tác ñã hoàn 
tất. Cách sắp xếp này làm giảm nhẹ công việc cho CPU rất nhiều. 
Một ñặc trưng khác nữa là bộ ña công, ñiểm kết thúc trung 
tâm cho các kênh dữ liệu, CPU và bộ nhớ. Bộ ña công lập lịch các 
truy cập ñến bộ nhớ từ C ... .12. Cấu tạo ô nhớ SRAM và DRAM 
Chương VIII: Hệ thống bộ nhớ 
 268 
 DDR SDRAM (Double Data Rate SDRAM) là cải tiến của bộ 
nhớ SDRAM với tốc ñộ truyền tải gấp ñôi SDRAM nhờ vào 
việc truyền tải hai lần trong một chu kỳ bộ nhớ. Tốc ñộ DDR 
SDRAM ñạt từ 200-400MHz. Trong thời gian gần ñây xuất 
hiện chuẩn RAM mới dựa trên nền tảng DDR là DDR-II, DDR-
III có tốc ñộ cao hơn nhờ cải tiến thiết kế. 
 RDRAM (Rambus RAM) là một loại DRAM ñược thiết kế với 
kỹ thuật hoàn toàn mới so với kỹ thuật SDRAM. RDRAM hoạt 
ñộng ñồng bộ theo một hệ thống lặp và truyền dữ liệu theo một 
hướng. Một kênh bộ nhớ RDRAM có thể hỗ trợ ñến 32 chip 
DRAM. Mỗi chip ñược ghép nối tuần tự trên một module gọi là 
RIMM (Rambus Inline Memory Module) nhưng việc truyền dữ 
liệu giữa các mạch ñiều khiển và từng chíp riêng biệt chứ 
không truyền giữa các chip với nhau. Bus bộ nhớ RDRAM là 
ñường dẫn liên tục ñi qua các chip và module trên bus, mỗi 
module có các chân vào và ra trên các ñầu ñối diện. Do ñó, nếu 
các khe cắm không chứa RIMM sẽ phải gắn một module liên 
tục ñể ñảm bảo ñường truyền ñược nối liền. Tốc ñộ RDRAM 
ñạt từ 400-800MHz 
8.4. BỘ NHỚ ẢO 
 Người ta ñã sử dụng cơ chế bộ nhớ ảo nhằm giải quyết vấn 
ñề về kích thước bộ nhớ vật lý không ñủ chứa cả hệ ñiều hành cùng 
với các chương trình của người sử dụng, ñồng thời vấn ñề các vùng 
nhớ phải ñược bảo vệ một cách chắc chắn ñể khỏi bị chương trình 
của người sử dụng làm hỏng. Bộ nhớ ảo có ñược dựa trên sự kết 
hợp các bộ nhớ với tốc ñộ rất cao như bộ nhớ trong (RAM) và bộ 
nhớ có tốc ñộ chậm như bộ nhớ phụ ( ổ ñĩa cứng), hoạt ñộng dưới 
sự quản lý của MMU, sao cho dưới quan ñiểm của người lập trình 
và ñối với người sử dụng thì tập hợp các bộ nhớ trên ñược quan 
niệm là một bộ nhớ thuần nhất với dung lượng lớn (gần hoặc bằng 
dung lượng ổ ñĩa cứng) nhưng lại làm việc ở tốc ñộ cao (gần bằng 
tốc ñộ bộ nhớ trong). 
Simpo PDF Merge and Split Unregistered Version - 
Chương VIII: Hệ thống bộ nhớ 
 269 
 Cấu trúc phân cấp bộ nhớ ñược minh họa như sơ ñồ hình 
8.13. 
 Bộ nhớ ảo có thể ñược quản lý bằng cách chia bộ nhớ thành 
các mảng nhỏ có ñộ lớn tính theo ñoạn, cơ chế này gọi là phân 
ñoạn (ñối với họ Intel có từ các bộ VXL 80286 trở ñi) hoặc trang, 
cơ chế này gọi là phân trang ( ñối với họ Intel có từ các bộ VXL 
80386) trở ñi. Trong bộ nhớ ảo như vậy, từng mảng mã lệnh và 
mảng dữ liệu dùng cho chương trình hiện tại ñược tải từ ổ ñĩa vào 
bộ nhớ trong (RAM) và ñược truy nhập ñến bởi bộ ñiều khiển của 
bộ nhớ khi cần thiết. Nếu chương trình ñang chạy cần ñến một 
mảng mã lệnh hay một mảng dữ liệu nào ñó mà không chứa trong 
RAM thì nó sẽ ñược tải vào RAM. Nếu RAM không còn ñủ không 
gian ñể chứa thì một mảng nào ñó của RAM sẽ ñược xác ñịnh theo 
các tiêu chuẩn nhất ñịnh ñể bị ñẩy lại ổ ñĩa, nhường chỗ cho mảng 
ñang cần lấy vào. 
 Cách hoạt ñông của bộ nhớ ảo giữa bộ nhớ chính và bộ nhớ 
phụ rất giống nguyên lý hoạt ñông giữa bộ nhớ cache và bộ nhớ 
chính mà ta ñã trình bày trong phần trên. Bộ nhớ RAM ñóng vai trò 
là bộ nhớ chứa bản sao của một phần bộ nhớ phụ, bộ nhớ cache 
dóng vai trò là bộ nhớ chứa bản sao của một phần bộ nhớ chính. 
Tuy có nguyên lý hoạt ñông giống nhau nhưng sự khác biệt lớn 
nhất là khi thất bại cache, sự thay thế một khối trong cache ñược 
ñiều khiển bằng phần cứng, trong khi sự thay thế trong bộ nhớ ảo là 
chủ yếu do hệ ñiều hành. Ngoài ra khi thất bại cache thì thời gian bị 
phạt chỉ tương ñương với khoảng 5-10 lần trong trường hợp thành 
Chương VIII: Hệ thống bộ nhớ 
 270 
công cache, trong khi nếu có lỗi trang thì có thể phải mất một thời 
gian gấp 1000 lần khi không có lỗi trang. 
 Trong các máy tính hiện ñại 1 ñoạn có thể có ñộ lớn từ 1 
byte ñến 4GB còn 1 trang thông thường có ñộ lớn từ 2KB ñến 16 K 
bytes. 
 ðể truy cập ñến bộ nhớ ảo ta dùng ñịa chỉ ảo (ñịa chỉ lôgic), 
còn truy nhập ñến bộ nhớ vật lý ta phải dùng ñịa chỉ vật lý. Khi cần 
truy cập ñến một ñoạn dữ liệu nào ñó thì CPU phát ra một yêu cầu 
truy cập ñến một ñịa chỉ, ñó chính là ñịa chỉ ảo. MMU nhận ñịa chỉ 
ảo và dịch (chuyển ñổi) nó ra ñịa chỉ vật lý, ñịa chỉ này ñược ñưa 
lên bus ñịa chỉ ñể truy nhập bộ nhớ vật lý. 
Tương tự như khi làm việc với cache, ñể hiểu rõ nguyên lý 
vận hành của bộ nhớ ảo, ta cũng phải trả lời ñược 4 câu hỏi cơ bản 
sau: 
- Một khối bộ nhớ ngoài sẽ ñược ñặt tại ñâu trong bộ nhớ 
trong? 
- Làm thế nào ñể tìm một khối khi nó ñang nằm trong bộ 
nhớ trong? 
- Khối nào phải ñược thay thế khi có thất bại trang? 
- Việc gì xảy ra khi cần ghi số liệu? 
ðể ñặt một khối nhớ vào trong bộ nhớ trong cũng có 3 kỹ 
thuật là tương ứng trực tiếp, hoàn toàn phối hợp và phối hợp theo 
tập hợp. Việc trừng phạt bộ nhớ ảo khi có thất bại, tương ứng với 
việc phải thâm nhập vào ổ ñĩa. Việc thâm nhập này rất chậm nên 
người ta chọn phương án hoàn toàn phối hợp trong ñó các khối 
(trang) có thể nằm ở bất kỳ vị trí nào trong bộ nhớ trong. Cách này 
cho tỉ lệ thất bại thấp. 
 ðể tìm một khối nhớ ta cần phân biệt hai dạng ñịnh vị, ñó là 
ñịnh vị trang và ñịnh vị ñoạn. ðịa chỉ phát ra bởi CPU là ñịa chỉ ảo 
và trong cả hai loại ñịnh vị, ñịa chỉ này ñều chứa một trường ñể lưu 
số thứ tự trang hoặc số thứ tự ñoạn. 
Simpo PDF Merge and Split Unregistered Version - 
Chương VIII: Hệ thống bộ nhớ 
 271 
Trong trường hợp ñịnh vị trang, dựa vào bảng trang, ñịa chỉ 
trong bộ nhớ vật lý ñược xác ñịnh bằng cách ñặt kề nhau số thứ của 
trang vật lý với ñịa chỉ trong trang như trong hình 8.14. 
Trong trường hợp ñịnh vị ñoạn, dựa vào thông tin trên bảng 
ñoạn, việc kiểm tra tính hợp lệ của ñịa chỉ ñược tiến hành. ðịa chỉ 
vật lý ñược xác ñịnh bằng cách cộng ñịa chỉ ñoạn và ñộ dời trong 
ñoạn như trong hình 8.15. 
 Khi có thất bại trang thì khối cần ñược thay thế sẽ tuân theo 
các chiến thuật thay thế trang giống như các chiến thuật thay thế 
khối trong cache gồm có: Thay thế ngẫu nhiên, Khối xưa nhất, Vào 
trước ra trước, Tần số sử dụng ít nhất. tuy nhiên hầu hết các hệ 
ñiều hành ngày nay ñều cố gắng dùng chiến thuật thay thế 
khối ít dùng gần ñây nhất (LRU: Least Recent Utilized) vì cho 
rằng ñây là khối ít cần nhất. 
ðối với chiến thuật trong bộ nhớ ảo thì luôn sử dụng chiến 
thuật ghi lại (write-back), nghĩa là thông tin chỉ ñược viết vào trong 
CPU p d 
f 
f d 
Bộ nhớ 
vật lý 
ðịa chỉ ảo 
ðịa chỉ vật lý 
Hình 8.14. Ánh xạ ñịa chỉ ảo sang ñịa chỉ vật lý trong 
ñịnh vị trang 
p – chỉ số trang d – ñộ dời trang 
f – chỉ số khung trang (frame) 
Chương VIII: Hệ thống bộ nhớ 
 272 
khối của bộ nhớ trong. Khối có thay ñổi thông tin, ñược chép vào 
ñĩa từ nếu khối này bị thay thế. 
• TỔNG KẾT 
 Trong chương này ñã trình bày các kiến thức cơ bản về tổ 
chức bộ nhớ trong máy tính. Qua ñó cho thấy sự khác biệt giữa các 
loại bộ nhớ trong máy tính và các kỹ thuật kết hợp các loại bộ nhớ, 
từ bộ nhớ lớn chậm, ñến các bộ nhớ rất nhỏ nhưng cực nhanh thành 
một không gian nhớ chung với tốc ñộ cao và giá cả phải chăng. 
Ngoài ra còn cung cấp các kiến thức về thiết kế và cấu tạo của các 
loại bộ nhớ, qua ñó cung cấp cho sinh viên các hiểu biết cơ bản về 
hệ thống bộ nhớ trong máy tính. 
CPU s d 
Limit 
Bộ nhớ 
trong 
ðịa chỉ 
Vật lý 
Hình 8.15. Ánh xạ ñịa chỉ ảo sang ñịa chỉ vật lý trong 
ñịnh vị ñoạn 
s – chỉ số ñoạn d – ñộ dời ñoạn 
Limit – Giới hạn tối ña của ñoạn 
Base – ñịa chỉ cơ sở của ñoạn 
Base 
< + 
ðúng 
Sai 
TRAP 
Simpo PDF Merge and Split Unregistered Version - 
Chương VIII: Hệ thống bộ nhớ 
 273 
CÂU HỎI VÀ BÀI TẬP CHƯƠNG VIII 
1. Mục tiêu chính của các cấp bộ nhớ trong máy tính là gì? Vẽ sơ 
ñồ các cấp bộ nhớ cơ bản. 
2. Tính thời gian truy cập trung bình của một hệ thống bộ nhớ có 3 
cấp: cache, bộ nhớ trong và bộ nhớ phụ nếu thời gian truy cập 
vào từng loại bộ nhớ tương ứng là 20 ns, 100 ns và 1 ms biết 
rằng tỷ số thành công của cache là 90% và bộ nhớ trong là 95%. 
3. Hãy xác ñịnh số bit của các trường trong ñịa chỉ bộ nhớ trong ở 
ví dụ 1 trong 3 trường hợp ánh xạ. Trong trường hợp phối hợp 
theo tập hợp, giả sử mỗi tập hợp gồm 2 khối nhớ. 
4. Nêu và giải thích các nguyên tắc vận hành của cache. 
5. Vẽ sơ ñồ chuyển ñổi ñịa chỉ cho ví dụ 2 trong trường hợp phối 
hợp hoàn toàn như trên hình 8.7 và giải thích cơ chế hoạt ñộng 
của nó. 
6. Vẽ sơ ñồ chuyển ñổi ñịa chỉ cho ví dụ 2 trong trường hợp phối 
hợp theo tập hợp nếu mỗi tập hợp gồm 4 khối như trên hình 8.7 
và giải thích cơ chế hoạt ñộng của nó. 
7. Cho một bộ nhớ cache tương ứng trực tiếp có 8 khối, mỗi khối 
có 16 byte. Bộ nhớ trong có 64 khối. Giả sử lúc khởi ñộng máy, 
8 khối ñầu tiên của bộ nhớ trong ñược ñưa lên cache. 
a. Viết bảng nhãn của các khối hiện ñang nằm trong cache 
b. CPU lần lượt ñưa các ñịa chỉ sau ñây ñể ñọc số liệu: O4AH, 
27CH, 3F5H. Nếu thất bại thì cập nhật bãng nhãn. 
c. CPU dùng cách ghi lại. Khi thất bại cache, CPU dùng cách 
ghi có nạp. Mô tả công việc của bộ quản lý cache khi CPU 
ñưa ra các từ sau ñây ñể ghi vào bộ nhớ trong: 0C3H, 05AH, 
1C5H. 
Chương VIII: Hệ thống bộ nhớ 
 274 
8. Hãy nêu các nguyên nhân chính gây thất bại cache và cách hạn 
chế nó? 
9. Xét một ma trận số có kích thước 4x8. Giả sử mỗi số ñược lưu 
trong một từ và các phần tử của ma trận ñược lưu theo thứ tự cột 
trong bộ nhớ từ ñịa chỉ 1000 ñến ñịa chỉ 1031. Bộ nhớ cache 
gồm 8 khối với mỗi khối chứa ñược 2 từ. Ta cũng giả sử dùng 
chiến thuật thay thế khối là LRU. Hãy khảo sát sự thay ñổi trong 
cache (sự thay ñổi trong các khối nhớ trong cache) trong 3 kỹ 
thuật tổ chức bộ nhớ nếu CPU yêu cầu truy cập lần lượt ñến các 
phần từ theo thứ tự sau: 
a0,0, a0,1, a0,2, a0,3, a0,4, a0,5, a0,6, a0,7 
 a1,0, a1,1, a1,2, a1,3, a1,4, a1,5, a1,6, a1,7 
10. Hãy cho biết sự khác nhau giữa SRAM và DRAM? 
11. Tại sao phải dùng bộ nhớ ảo?cho biết sự khác biệt cơ bản giữa 
cache và bộ nhớ ảo? 
Simpo PDF Merge and Split Unregistered Version - 
Kiến trúc máy tính – Vũ ðức Lung 
 275 
PHỤ LỤC 
 Trang 
Lời nói ñầu 1 
Chương I: Giới thiệu 3 
1.1. Lịch sử phát triển của máy tính 
1.1.1. Thế hệ zero-máy tính cơ học (1642-1945) 
1.1.2. Thế hệ I – bóng ñèn ñiện (1945-1955) 
1.1.3. Thế hệ II – transistor (1955-1965) 
1.1.4. Thế hệ III – mạch tích hợp (1965-1980) 
1.1.5. Thế hệ IV – máy tính cá nhân (1980-ñến nay) 
1.2. Khối các nước XHCN và Việt Nam 
1.3. Khuynh hướng hiện tại 
1.4. Phân loại máy tính 
1.5. Các dòng Intel 
Câu hỏi và bài tập chương I 
3 
3 
4 
9 
13 
16 
18 
21 
23 
24 
31 
Chương II: Các bộ phận cơ bản của máy tính 32 
2.1. Bộ xử lý (CPU) 
2.2. Bản mạch chính (Mainboard) 
2.3. Ổ ñĩa mềm (FDD) 
2.4. Ổ ñĩa cứng (HDD) 
2.5. Ổ CD và DVD 
2.6. Bộ nhớ RAM và ROM 
2.7. Bàn phím (Keyboard) 
2.8. Chuột (Mouse) 
2.9. Card màn hình (VGA Card) 
2.10. Màn hình (Monitor) 
2.11. Card mạng (Network adapter) và Modem 
Câu hỏi và bài tập chương II 
32 
41 
48 
50 
 53 
55 
59 
60 
63 
66 
74 
76 
Chương III: Biểu diễn dữ liệu 77 
3.1. Khái niệm thông tin 77 
Kiến trúc máy tính – Vũ ðức Lung 
 276 
3.2. Lượng thông tin và sự mã hóa thông tin 
3.3. Hệ thống số 
3.4. Các phép tính số học cho hệ nhị phân 
3.4.1. Phép cộng nhị phân không dấu 
3.4.2. Phép trừ nhị phân không dấu 
3.4.3. Phép nhân và chia hai số nhị phân không dấu 
3.4.4. Biểu diễn số nguyên có dấu 
3.4.5. Số bù của một số 
3.4.6. Phép cộng trừ nhị phân dùng bù 1 
3.4.7. Phép cộng trừ nhị phân dùng bù 2 
3.5. Số quá n (excess-n) 
3.6. Cách biểu diễn số với dấu chấm ñộng 
3.7. Biểu diễn số BCD 
3.8. Biểu diễn các ký tự 
Câu hỏi và bài tập chương III 
78 
79 
85 
85 
86 
87 
88 
89 
92 
93 
94 
95 
98 
100 
101 
Chương IV: Mạch Logic số 103 
4.1. Cổng và ñại số Boolean 
4.1.1. Cổng (Gate) 
4.1.2. ðại số Boolean 
4.2. Bản ñồ Karnaugh 
4.3. Những mạch Logic số cơ bản 
4.3.1. Mạch tích hợp (IC-Intergrate Circuit) 
4.3.2. Mạch kết hợp (Combinational Circuit) 
4.3.3. Bộ dồn kênh-bộ phân kênh 
4.3.4. Mạch cộng (Adder) 
4.3.5. Mạch giải mã và mã hóa 
Câu hỏi và bài tập chương IV 
103 
103 
108 
122 
135 
135 
137 
138 
142 
144 
151 
Chương V: Mạch tuần tự 155 
5.1. Xung ñồng hồ 
5.2. Mạch lật (chốt – latch) 
5.2.1. Mạch lật SR (SR-latch) 
5.2.2. Mạch lật D 
5.2.3. Mạch lật JK 
5.3.4. Mạch lật T 
155 
156 
157 
160 
161 
161 
Si
m
po
 P
DF
 M
er
ge
 a
nd
 S
pl
it 
Un
re
gi
st
er
ed
 V
er
sio
n 
- h
ttp
://
ww
w.
sim
po
pd
f.c
om
Kiến trúc máy tính – Vũ ðức Lung 
 277 
5.3. Mạch lật lề (Flip-flop) 
5.4. Mạch tuần tự 
Bài tập chương V 
162 
165 
173 
Chương VI: Kiến trúc bộ lệnh 175 
6.1. Phân loại kiến trúc bộ lệnh 
6.2. ðịa chỉ bộ nhớ 
6.3. Mã hóa tập lệnh 
6.3.1. Các tiêu chuẩn thiết kế dạng thức lệnh 
6.3.2. Opcode mở rộng 
6.3.3. Ví dụ về dạng thức lệnh 
6.3.4. Các chế ñộ lập ñịa chỉ 
6.4. Bộ lệnh 
6.4.1. Nhóm lệnh truyền dữ liệu 
6.4.2. Nhóm lệnh tính toán số học 
6.4.3. Nhóm lệnh Logic 
6.4.4. Nhóm các lệnh dịch chuyển 
6.4.5. Nhóm các lệnh có ñiều kiện và lệnh nhảy 
6.5. Cấu trúc lệnh CISC và RISC 
Câu hỏi và bài tập chương VI 
175 
179 
181 
182 
184 
187 
191 
201 
203 
204 
206 
207 
209 
212 
216 
Chương VII: Tổ chức bộ xử lý 218 
7.1. Tổ chức bộ xử lý trung tâm 
7.2. Bộ ñiều khiển 
7.3. Bộ thanh ghi 
7.4. ðường ñi dữ liệu (Datapath) 
7.4.1. Tổ chức One-Bus 
7.4.2. Tổ chức Two-Bus, Three-Bus 
7.5. Diễn tiến thi hành lệnh mã máy 
7.6. Xử lý ngắt (Interrupt Handling) 
7.7. Kỹ thuật ống dẫn (Pipeline) 
Câu hỏi và bài tập chương VII 
218 
221 
224 
227 
228 
229 
231 
236 
238 
244 
Chương VIII: Hệ thống bộ nhớ 245 
8.1. Các cấp bộ nhớ 
8.2. Bộ nhớ cache (Cache memory) 
8.2.1. Tồ chức bộ nhớ cache 
245 
248 
251 
Kiến trúc máy tính – Vũ ðức Lung 
 278 
8.2.2. Kỹ thuật thay thế khối nhớ 
8.2.3. Chiến thuật ghi 
8.2.4. Các loại cache 
8.3. Bộ nhớ trong (Main memory) 
8.4. Bộ nhớ ảo (Virtual memory) 
Câu hỏi và bài tập chương VIII 
259 
260 
262 
263 
268 
273 
Phụ lục 
Tài liệu tham khảo 
275 
279 
Si
m
po
 P
DF
 M
er
ge
 a
nd
 S
pl
it 
Un
re
gi
st
er
ed
 V
er
sio
n 
- h
ttp
://
ww
w.
sim
po
pd
f.c
om
Kiến trúc máy tính – Vũ ðức Lung 
 279 
TÀI LIỆU THAM KHẢO 
1. Nguyễn Minh Tuấn, Kiến trúc máy tính (giáo trình lược giản), 
V3.7, Trường ðH Khoa học tự nhiên tp. HCM 
2. Cấu trúc máy tính cơ bản, tổng hợp và biên dịch VN-Guide, nhà 
xuất bản thống kê. 
3. Võ ðức Khánh ,Kiến trúc máy tính, ThS. Võ ðức Khánh 
4. Võ Văn Chín, Nguyễn Hồng Vân, Phạm Hữu Tài. Giáo trình 
kiến trúc máy tính. ðH Cần Thơ, 2003. 
5. M. Abd-El-Barr, H. El-Rewini, Fundamentals of Computer 
Organization and Architecture, Wiley, 2005 
6. Patterson, D. A., and J. L. Hennessy. Computer Organization 
and Design: The Hardware/Software Interface, 3rd ed. San Mateo, 
CA: Morgan Kaufman, 2004 
7. Robert Bruce Thompson, Barbara Fritchman Thompson, 
Repairing and Upgrading Your PC, O’Reilly, 2006 
8. William Stallings. Computer Organization & Architecture 
(Designing for performance), Sixth edition, Pearson Education, 
2003 
9. M. Abd-El-Barr, H. El-Rewini, Advanced Computer 
Architecture and Parallel Processing, Wiley, 2005 
Si
m
po
 P
DF
 M
er
ge
 a
nd
 S
pl
it 
Un
re
gi
st
er
ed
 V
er
sio
n 
- h
ttp
://
ww
w.
sim
po
pd
f.c
om

File đính kèm:

  • pdfgiao_trinh_kien_truc_may_tinh_vu_duc_lung.pdf