Professional Documents
Culture Documents
GIÁO TRÌNH
KIẾN TRÚC MÁY TÍNH
VÀ HỆ ĐIỀU HÀNH
Người
Người
sử dụng
Lập trình
ENIAC
Alan Turing
UNIVAC II:
Hãng IBM
• IBM - International Business Machine
• 1953 - IBM 701
o Máy tính lưu trữ chương trình đầu tiên của IBM
o Sử dụng cho tính toán khoa học
• 1955 – IBM 702
o Các ứng dụng thương mại
IBM 701:
PDP-11 (1973):
VAX-11 (1981):
Micro VAX:
Để có cái nhìn bao quát hơn, chúng ta xem quá trình phát triển của CPU Intel
trong các thời kỳ như sau:
Năm 1971: Bộ vi xử lý 4004
4004 là bộ vi xử lý đ ầ u tiên của Intel. Phát minh đ ột phá này nhằm tăng sức
mạnh cho máy tính Busicom và dọn đường cho khả năng nhúng trí thông minh của con
người vào trong các thiết bị vô tri cũng như các hệ thống máy tính cá nhân.
Số lượng bóng bán dẫn: 2.300
Bộ vi xử lý Pentium® II có 7,5 triệu bóng bán dẫn này được tích hợp công nghệ Intel
MMX, một công nghệ được thiết kế đặc biệt để xử lý các dữ liệu video, audio và đồ họa một
cách hiệu quả.
Số lượng bóng bán dẫn: 7,5 triệu
Tốc độ: 200MHz, 233MHz, 266MHz, 300MHz
Năm 1999: Bộ vi xử lý Pentium® III
Bộ vi xử lý Pentium® III có 70 lệnh xử lý mới – những mở rộng Internet Streaming
SIMD – giúp tăng cường mạnh mẽ hiệu suất hoạt động của các ứng dụng xử lý ảnh tiên
tiến, 3-D, streaming audio, video và nhận dạng giọng nói. Bộ vi xử lý này được giới thiệu
sử dụng công nghệ 0,25 micron.
Số lượng bóng bán dẫn: 9,5 triệu
Tốc độ: 650MHz tới 1,2GHz
Năm 2000: Bộ vi xử lý Pentium® 4
Bộ vi xử lý này đ ược giới thiệu với 42 triệu bóng bán dẫn và các mạch 0,18
micron. Bộ vi xử Pentium® 4 có tần số hoạt động là 1,5 gigahertz (1,5 tỷ hertz), nhanh
hơn gấp 10 nghìn lần so với bộ vi xử lý đầu tiên của Intel, bộ vi xử lý 4004, chạy ở tốc độ
108 kilohertz (108.000 hertz).
Số lượng bóng bán dẫn: 42 triệu
Tốc độ: 1.30GHz, 1.40GHz, 1.50GHz, 1.70GHz, 1.80Ghz
Tháng 8 năm 2001: Bộ vi xử lý Pentium 4 đạt mốc 2 GHz
Tháng 11 năm 2002: Bộ vi xử lý Intel Pentium 4 hỗ trợ Công nghệ Siêu phân luồng
Intel giới thiệu Công nghệ Siêu phân luồng đột phá cho bộ vi xử lý Intel®
Pentium® 4 mới có tốc độ 3,06 GHz. Công nghệ Siêu phân luồng có thể tăng tốc hiệu
suất hoạt đ ộng của máy tính lên tới 25%. Intel đạt mốc tốc độ mới cho máy tính với việc
giới thiệu bộ vi xử lý Pentium 4 tốc độ 3,06 GHz. Đây là bộ vi xử lý thương mại đầu tiên
có thể xử lý 3 tỷ chu trình một giây và được hiện thực hóa thông qua việc sử dụng công
nghệ sản xuất 0,13 micron tiên tiến nhất của ngành công nghiệp.
Tháng 11 năm 2003: Bộ vi xử lý Intel® Pentium® 4 Extreme Edition hỗ trợ Công nghệ
Siêu phân luồng tốc độ 3,20 GHz được giới thiệu. Sử dụng công nghệ xử lý 0,13 micron
của Intel, bộ vi xử lý Intel Pentium 4 Extreme Edition có bộ nhớ đệm L2 dung lượng 512
kilobyte, một bộ nhớ đệm L3 dung lượng 2 megabyte và một kênh truyền hệ thống tốc độ
800 Mhz. Bộ vi xử lý này tương thích với họ chipset hiện tại Intel® 865 và Intel® 875
cũng như bộ nhớ hệ thống chuẩn.
Tháng 6 năm 2004: Bộ vi xử lý Intel Pentium 4 hỗ trợ Công nghệ Siêu phân luồng đạt
mốc 3,4 GHz
Tháng 4 năm 2005: Giới thiệu nền tảng sử dụng bộ vi xử lý hai nhân đầu tiên của Intel
gồm bộ vi xử lý Intel® Pentium® Extreme Edition 840 chạy ở tốc độ 3,2 GHz và một
chipset Intel® 955X Express. Các bộ vi xử lý hai nhân hoặc đa nhân được phát triển bằng
cách đưa hai hay nhiều nhân xử lý hoàn chỉnh vào trong một bộ vi xử lý đơn nhất giúp
quản lý đồng thời nhiều tác vụ.
Tháng 5 năm 2005: Bộ vi xử lý Intel® Pentium® D với hai nhân xử lý – hay còn gọi là
“các bộ não” – được giới thiệu cùng với họ chipset Intel® 945 Express có khả năng hỗ trợ
những tính năng của các thiết bị điện tử tiêu dùng như âm thanh vòm, video có độ phân giải
cao và các khả năng xử lý đồ họa tăng cường.
Tháng 5 năm 2006: Nhãn hiệu Intel Core 2 Duo được công bố ra thế giới và sau đó 5
tháng chính hãng Intel đã đến Việt Nam để quảng bá cho sản phẩm mới này.
Tháng 7 năm 2006: Tập đoàn Intel công bố 10 bộ vi xử lý mới Intel Core 2 Duo và
Core Extreme cho các hệ thống máy tính đ ể bàn và máy tính xách tay. Những bộ vi xử
lý mới này nâng cao tới 40% hiệu suất hoạt động và nhiều hơn 40% hiệu quả tiết kiệm
điện năng so với bộ vi xử lý Intel® Pentium® tốt nhất. Các bộ vi xử lý Core 2 Duo có 291
triệu bóng bán dẫn.
Bảng dưới đây sẽ giúp chúng ta hiểu được sự khác biệt giữa các bộ xử lý mà Intel
đã giới thiệu qua các năm:
nay người ta dùng MFLOPS (Mera Floating Point Operations Per Second) hoặc TFLOPS
(Tera Floating Point Operations Per Second) để đánh giá hiệu năng của máy tính. Tuy
nhiên, chúng ta có thể có đ ược phán đoán chung về sức mạnh tương đối của các CPU
từ cột cuối trong bảng trên.
Bộ nhớ trong:
• Chức năng và đặc điểm:
o Chứa các thông tin mà CPU có thể trao đổi trực
tiếp
o Tốc độ rất nhanh
o Dung lượng không lớn
o Sử dụng bộ nhớ bán dẫn: ROM và RAM
• Các loại bộ nhớ trong:
o Bộ nhớ chính
o Bộ nhớ cache (bộ nhớ đệm)
Bộ nhớ chính (Main Memory):
• Chứa các chương trình và dữ liệu đang được CPU sử
dụng.
• Tổ chức thành các ngăn nhớ được đánh địa chỉ.
• Ngăn nhớ thường được tổ chức theo byte.
• Nội dung của ngăn nhớ có thể thay đổi, song địa chỉ
vật lý của ngăn nhớ luôn cố định
Bộ nhớ cache:
• Bộ nhớ có tốc độ nhanh được đặt đệm giữa CPU và bộ
• Mỗi cổng vào-ra được đánh một địa chỉ xác định.
• Các thiết bị ngoại vi được kết nối và trao đổi dữ liệu với máy tính thông qua các cổng
vào-ra.
2. Các hoạt động cơ bản của máy tính
2.1. Nhận lệnh và thực hiện lệnh
Thực hiện chương trình:
• Là hoạt động cơ bản của máy tính
• Máy tính lặp đi lặp lại hai bước:
Nhaän leänh
chu trình leänh
Thöïc hieän leänh
• Thực hiện chương trình bị dừng nếu thực hiện lệnh bị lỗi hoặc gặp lệnh dừng.
Chu trình lệnh:
Nhận lệnh:
• Bắt đầu mỗi chu trình lệnh, CPU nhận lệnh từ bộ nhớ chính.
• Bộ đếm chương trình PC (Program Counter) của CPU giữ địa chỉ của lệnh sẽ được
nhận.
• CPU nhận lệnh từ ngăn nhớ được trỏ bởi PC.
• Lệnh được nạp vào thanh ghi lệnh IR (Instruction Register).
• Sau khi lệnh được nhận vào, nội dung PC tự động tăng để trỏ sang lệnh kế tiếp.
• Phát địa chỉ đến các mô-đun nhớ hay các mô-đun vào-ra
• Đọc lệnh và dữ liệu
• Đưa dữ liệu ra (sau khi xử lý)
• Phát tín hiệu điều khiển đến các mô-đun nhớ và các mô-đun vào-ra
• Nhận các tín hiệu ngắt
3.2. Cấu trúc bus cơ bản
• Bus: tập hợp các đường kết nối dùng để vận chuyển thông tin giữa các mô-đun của
máy tính với nhau.
• Các bus chức năng:
o Bus địa chỉ
o Bus dữ liệu
o Bus điều khiển
• Độ rộng bus: là số đường dây của bus có thể truyền các bit thông tin đồng thời (chỉ
dùng cho bus địa chỉ và bus dữ liệu)
Sơ đồ cấu trúc bus cơ bản:
• Bus bộ nhớ chính và các bus vào-ra không phụ thuộc vào bộ xử lý cụ thể.
Một số bus điển hình trong PC:
• Bus của bộ xử lý (Front Side Bus - FSB): có tốc độ nhanh nhất
• Bus của bộ nhớ chính (nối ghép với các mô-đun RAM)
• AGP bus (Accelerated Graphic Port) - Bus đồ họa tăng tốc: nối ghép card màn hình
tăng tốc.
• PCI bus(Peripheral Component Interconnect): nối ghép với các thiết bị ngoại vi có tốc
độ trao đổi dữ liệu nhanh.
• IDE (Integrated Device Electronics): Bus kết nối với ổ đĩa cứng hoặc ổ đĩa CD, DVD
• USB (Universal Serial Bus): Bus nối tiếp đa năng
Máy tính Pentium 4 dùng Chipset 845:
Chipset 865:
Chipset 955:
Ví dụ về bo mạch chính:
Giản đồ định thời thao tác đọc của Bus không đồng bộ:
Giản đồ định thời thao tác ghi của Bus không đồng bộ:
Control
Block
Bus
A: Máy nhà B dùng CPU gì vậy ? Máy tôi dùng Pentium 4 2GHz. B: Máy của tôi dùng CPU
Pentium 4 3GHz.
A: Vậy là máy bạn nhanh hơn máy tôi rồi.
Cách nghĩ và gọi tên như vậy là do thói quen dùng CPU Intel . Cách so sánh hiệu năng như
trên sẽ đúng nếu 2 CPU đó được sản xuất theo cùng 1 công nghệ , vì khi đó, CPU nào có
xung nhịp cao hơn sẽ có hiệu năng tốt hơn. Nhưng nếu ta so sánh 2 CPU của 2 hãng khác
nhau, công nghệ chế tạo khác nhau thì hiệu năng không còn đi đôi với xung nhịp.
Ví dụ như khi so sánh 2 CPU AMD và Intel có cùng tốc độ 1,8GHz, CPU AMD có
hiệu năng vượt trội hoàn toàn so với CPU Intel. Chính từ điều trên mà hãng AMD đã không
còn đặt tên CPU của mình dựa theo xung nhịp nữa. Bắt đầu từ dòng Athlon XP của thế hệ
K7 trở đi, AMD đã đặt tên sản phẩm của mình là tên sản phẩm cộng với 1 con số phía sau.
Vd: AMD Athlon XP 2500+ : con số 2500+ có ý nghĩa là CPU Athlon XP này có hiệu năng
tương đương 1 CPU 2500MHz cùng cấp của Intel.
Tương tự như vậy, CPU Athlon 64 3000+ 1800MHz được AMD xác định là có hiệu năng
tương đương CPU 3000MHz của Intel. Sự tương đương ở đây được đánh giá trên nhiều mặt
và có giá trị tương đối.
Intel
Sau một thời gian AMD đưa ra cách đặt tên mới cho dòng CPU để bàn, Intel cũng đã nhận ra
khuyết điểm về tên gọi CPU có kèm theo xung nhịp. Khuyết điểm đó là họ không thể đưa ra
thị trường các CPU có tốc độ ngày càng cao được. Vi kiến trúc NetBurst được Intel áp dụng
cho dòng CPU Pentium 4 có thể áp dụng để sản xuất các CPU có xung nhịp cao như 4-5GHz
hoặc hơn nữa nhưng xung nhịp cao luôn đi đôi với vấn đề như lượng điện năng tiêu thụ, hiệu
năng không tỉ lệ thuận với mức xung tăng thêm, và đặc biệt là vấn đề tản nhiệt.
Khi tung ra dòng CPU Pentium 4 dùng đế cắm LGA 775, Intel đã không còn kèm theo xung
nhịp trong tên gọi CPU nữa. Họ đặt tên CPU theo từng serie như hãng xe hơi BMW thường
làm. Ví dụ như Pentium 4 630. 630 là tên 1 model CPU thuộc serie 6xx.
b)Các công nghệ tiêu biểu
AMD
- Tích hợp Memory Controller (Hình 2.4): Trong hầu hết các CPU mới, Memory Controller
nằm trong nhân CPU, có cùng xung nhịp với CPU (CPU có tốc độ 1,8GHz thì Memory
Controller cũng có tốc độ 1,8GHz). Dữ liệu từ RAM sẽ được truyền trực tiếp vào CPU, độ
trễ thấp, không còn hiện tượng thắt cổ chai nữa. Lúc này người dùng càng sử dùng RAM tốc
độ cao thì càng có lợi.
- Intel vẫn sử dụng kiểu thiết kế Memory Controller nằm tại chipset (Hình 2.5), Memory
Controller này có tốc độ nhất định ,có tên là Front Side Bus. Dữ liệu từ RAM bắt buộc phải
đến chipset rồi mới vào được CPU. Độ trễ của thiết kế này lớn và luôn tồn tại nút thắt cổ
chai tại chipset.
- Công nghệ Hyper Threading Sử dụng công nghệ này giúp tận dụng hiệu quả hơn
tài nguyên dư thừa của CPU, CPU Intel có Hyper Threading sẽ chạy nhanh hơn CPU
Intel không có Hyper Threading khoảng từ 10%-20%. CPU 1 nhân có Hyper Threading
sẽ được hệ điều hành nhận diện thành 2 CPU (1 physical, 1 logical) nhưng đó vẫn là 1 CPU
đơn luồng, tại 1 thời điểm thì CPU chỉ thực hiện được duy nhất 1 tác vụ.
c) Tỏa nhiệt
Đây là một thông số mà ở Việt Nam đáng được quan tâm vì điều kiện khí hậu nước
ta rất nóng. Các bộ CPU của AMD trước đây thường tỏa nhiệt nhiều hơn và không thích
hợp cho khí hậu nóng như ở nước ta. Có thể chính vì diểm này mà AMD không có đầu tư
quảng bá sản phẩm ở Việt Nam. Tuy nhiên từ AMD K8 với công nghệ 90nm hiện nay rất
mát, không còn nóng như thế hệ K6, K7. CPU Athlon 64 3000+ cũng không là ngoại lệ.
Trong khi đó do Intel chú trọng việc tăng xung tần đã làm cho các CPU của mình tỏa
ra một nhiệt độ không thể chấp nhận được. Trong thời gian gần đây Intel cũng đã nhận ra
điều này và đang đầu tư nhiều vào giải quyết vấn đề này.
Trong điều kiện khí hậu nhiệt đới Việt Nam, 360C của AMD là một nhiệt độ rất lí
tưởng, CPU tỏa nhiệt ít, người dùng không phải lo lắng về tiếng ồn, về vấn đề quạt tản nhiệt
một khi sử dụng CPU AMD. Lúc nào hệ thống dùng AMD cũng mát và tĩnh lặng.
Còn đối với Intel, nhiệt độ CPU cao góp phần làm nhiệt độ thùng máy và môi trường
tăng lên. Người sử dụng cũng phải lưu ý đến vấn đề quạt tản nhiệt vì quạt tản nhiệt của Intel
quay với tốc độ cao, đặc biệt là khi hoạt động vào ban đêm, tiếng ồn do hệ thống dùng Intel
phát ra sẽ gây khó chịu đối với người dùng.
Tóm lại khi mua CPU thì ngoài việc cần chú ý các thông số về giá cả, công nghệ, tốc
độ xử lý thì còn cần lưu ý đến loại socket để đảm bảo sự tương thích của các thiết bị khi lắp
ráp. Vấn đề tỏa nhiệt ở Việt Nam là quan trọng cho nên cũng cần chú ý.
4.2. Bản mạch chính (Mainboard)
Mainboard là trung tâm điều khiển mọi hoạt động của một máy tình và đóng vai trò
là trung gian giao tiếp giữa CPU và các thiết bị khác của máy tính. Bản mạch chính là nơi
để chứa đựng (cắm) những linh kiện điện tử và những chi tiết quan trọng nhất của một máy
tính cá nhân như: bộ vi xử lý CPU (central processing unit), các thành phần của CPU, hệ
thống bus, bộ nhớ, các thiết bị lưu trữ (đĩa cứng, ổ CD,…), các card cắm (card màn hình,
thông giao tiếp qua khe cắm, so với AGP 8X, 4X mà bạn có thể thấy trên một số bo mạch
chủ cũ. Tuy băng thông giao tiếp trên lý thuyết là gấp X lần, thế nhưng tốc độ hoạt động
thực tế không phải như vậy mà còn phụ thuộc vào rất nhiều yếu tố khác như lượng RAM
trên card, loại GPU (CPU trung tâm của card màn hình).
- Sound& Vga, Lan onboard: bo mạch chủ này đã được tích hợp sẵn card âm
thanh, card màn hình và card mạng phục vụ cho việc kết nối giữa các máy tính với nhau.
- Dual 4DDR400: trên bo mạch chủ này có 4 khe cắm Bộ nhớ (RAM), hỗ trợ tốc
độ giao tiếp 400 Mhz. Dựa vào thông số này, bạn có thể lựa chọn loại bộ nhớ
(RAM) với tốc độ thích hợp để nâng cao tính đồng bộ và hiệu suất của máy tính. Chữ
Dual là viết tắc của Dual Chanel, tức là bo mạch chủ hỗ trợ chế độ chạy 2 thanh RAM
song song. Với công nghệ này, có thể nâng cao hiệu suất và tốc độ chuyển dữ liệu của
RAM.
- 3PCI, 4SATA, 8 USB 2.0: trên bo mạch chủ có 3 khe cắm PCI dành để lắp thêm
các thiết bị giao tiếp với máy tính như card âm thanh, modem gắn trong... 4SATA là 4
khe cắm SATA, một loại chuẩn giao tiếp dành cho đĩa cứng. SATA thì nhanh hơn và ổn
định hơn so với chuẩn IDE. 8 cổng cắm USB 2.0 được hỗ trợ trên bo mạch chủ. USB 2.0
thì nhanh hơn USB 1.1. USB 2.0 thì tương thích luôn với các thiết bị chỉ có USB 1.1.
4.3. Ổ đĩa mềm (FDD)
Cùng với sự xuất hiện của máy tính cá nhân thì một vấn đề nan giải cũng xuất hiện.
Đó là làm thế nào để phổ biến những chương trình ứng dụng đến người dùng? để giải quyết
vấn đề này, đầu tiên con người đã phát minh ra đĩa mềm (floppy disk).
ổ đĩa FDD
Hãng IBM đã nghĩ ra công nghệ này đầu tiên. ổ đĩa mềm bao gồm phần cơ khí
và phần điện tử điều khiển tự động cũng như bộ phận đọc/ghi và giải mã. Ổ đĩa phải đảm
bảo độ quay chính xác (300 hoặc 360 vòng/phút với sai số 1 đến 2%). Khả năng định vị
của đầu từ cũng rất chính xác đến vài micromet chỉ trong thời gian vài miligiây rất ngắn.
Đĩa mềm có các tính chất chung rất giống với HDD. Điểm khác nhau đặc biệt là đầu từ
của HDD di chuyển trên bề mặt đĩa nhờ một đệm không khí, trong khi trên đĩa mềm thì đầu
từ trực tiếp trượt trên bề mặt đĩa. Kết quả là cả đầu từ và đĩa bị ma sát làm cho nhanh
chóng bị hỏng. Chính vì thế nên khi không có đòi hỏi đọc/ghi lên đĩa thì đầu từ được cất
đi và đĩa dừng lại không quay như trong trường hợp HDD. Điều này làm ảnh hưởng lớn đến
tốc độ của đĩa vì phải mất một khoảng thời gian để kích hoạt đĩa quay trở lại khi cần thiết.
Có 2 loại đĩa mềm: 5,25 inch và 3,5 inch. Cả hai đều có thể tích hợp mật độ ghi thấp
(Low Density - LD), hoặc cao (High Density - HD). Những thông số chính của 4 loại đĩa
mềm đưa ra trong bảng 2.2.
Mật độ lưu trữ trên đĩa cứng rất lớn (10000 bit/inch), vì thế vật liệu từ như ôxyt sắt
không dùng được cho đĩa cứng và được thay thế bởi một lớp kim loại từ như cobalt hay
Nicken. Các ổ đĩa cứng hiện đại ngày nay có mật độ thông tin vào khoảng 100 đến 300
Mbit trong một inch vuông. Hai yếu tố quan trọng quyết định đến mật độ lưu trữ cao là:
- Cấu trúc hạt của vật liệu từ thật nhỏ,
- Bề mặt đĩa thật phẳng để giữ khoảng cách giữa đầu đọc và mặt đĩa tại giá trị tối
thiểu.
Khác với đĩa mềm, do tốc độ quay nhanh, đầu đọc/ghi không được tiếp xúc
với bề mặt đĩa cứng. Ðầu đọc được giữ cách xa mặt đĩa qua một lớp đệm không khí. Lớp
đệm không khí này được hình thành khi dĩa quay với tốc độ cao.
Khoảng cách giữa đầu từ và mặt đĩa chỉ vào khoảng vài micrômét, nhỏ hơn rất
nhiều một hạt bụi khói trung bình. Vì thế phía bên trong ổ đĩa cứng cần được giữ thật
sạch. Người sử dụng không được phép mở ổ đĩa trong môi trường bình thường. Ðể sản
xuất hoặc sửa chữa đĩa cứng người ta cần đến môi trường siêu sạch như thường gặp trong
công nghiệp vi điện tử.
HDD đựơc làm từ một hay nhiều đĩa nhôm (platter) với một lớp từ (hình 2.9). Ban
đầu nó có kích thước 50cm, còn bây giờ từ 3 đến 12 cm, còn ở máy sách tay thì nhỏ hơn
3cm, kích thước này vẫn ngày càng được thu nhỏ. Mỗi platter được chia thành từng rãnh
(track), mỗi rãnh lại được chia thành từng sector.
Ví dụ những thông số chính của 1 đĩa cứng như trong bảng sau.
RAM luôn có cần gạt ở 2 đầu. Tùy loại RAM (SDRAM, DDRAM, RDRAM) mà giao diện
khe cắm khác nhau => Mua RAM cho máy thì phải biết máy có slot cho loại nào.
này tương ứng với logic 1 hoặc logic 0. Do tụ điện nhỏ nên điện tích được nạp và
phóng rất nhanh, cỡ chục nanô giây. Bởi kích thước nhỏ và hầu như không tiêu thụ
điện nên DRAM có mật độ lưu trữ khá cao và giá rẻ. Nhược điểm duy nhất của DRAM
là không giữ được thông tin lâu quá vài miligiây, nên phải thường xuyên nạp lại năng
lượng cho nó gọi là làm tươi hay hồi phục (refresh), thực chất là làm đầy lại điện tích
cho các tụ điện nhớ tí hon.
• DDR SDRAM (Double Data Rate SDRAM) SDRAM là tên gọi chung của một dòng
bộ nhớ máy tính, nó được phân ra SDR (Single Data Rate) và DDR (Double Data
Rate). Do đó nếu gọi một cách chính xác, chúng ta sẽ có hai loại RAM chính là SDR
SDRAM và DDR SDRAM. Cấu trúc của hai loại RAM này tương đối giống nhau,
nhưng DDR có khả năng truyền dữ liệu ở cả hai điểm lên và xuống của tín hiệu nên tốc
độ nhanh gấp đôi. 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-II có tốc độ cao hơn nhờ cải tiến thiết kế.
• Bộ nhớ ROM thực chất là một tổ chức ghép nối sẵn các mạch điện để thể hiện các
trạng thái có nối (logic 0) hoặc không nối (logic 1). Cách bố trí các trạng thái 1 và 0
như thế nào là tùy yêu cầu, và được chế tạo sẵn trong ROM khi sản xuất. Khi vi
mạch ROM được chế tạo xong thì nội dung của nó không thể thay đổi nữa. ROM
dùng trong hệ BIOS cũ thuộc loại này cho nên khi bật máy tính là các chương
trình chứa sẵn trong đó
được lấy ra để chạy khởi động máy (bao gồm các bước kiểm tra chẩn đoán, hỗ trợ
phần mềm cơ sở và hợp nhất các bộ phận trong hệ thống máy). Ta không muốn
và cũng không thể thay đổi bất cứ điều gì đối với các chương trình cốt tử này.
Tuy nhiên khi phát hiện có một lỗi trong ROM hoặc cần đưa vào một thông số
BIOS mới để phù hợp với thiết bị ngoại vi mới thì thật là tai họa. Gần đây có một giải
pháp là dùng flash BIOS, nó thay một phần ROM bằng loại EEPROM, đó là vi mạch
ROM có thể lập trình và xóa bằng điện (Electrically Erasable Programmable
ROM). Phương pháp này cho phép chỉ xóa ở một số địa chỉ, không phải toàn bộ
trong khi vi mạch vẫn giữ nguyên trên board.
• SIMM (single in-line memory module). Ðây là loại mô đun nhớ một hàng chân ra
để dễ cắm vào các ổ cắm thích hợp trên board mẹ. SIMM gồm nhiều vi mạch nhỏ
DRAM được gắn trên một tấm mạch in nhỏ, để tổ chức thành các loại môđun từ 1MB
đến 16MB hoặc hơn. SIMM loại cũ có 30 chân, phổ biến hiện nay là 72 chân nên
các nhà thiết kế có nhiều phương án cấu hình hơn. Ðây là loại thuận lợi nhất cho
việc nâng cấp bộ nhớ của ta.
Cần lưu ý là có rất nhều loại RAM khác nhau, do đó khi mua RAM thì phải biết
loại nào có thể dùng được cho máy của mình và tốc độ BUS tối đa cho RAM mà
mainboard hỗ trợ là bao nhiêu thì chỉ nên lựa loại RAM có tốc độ đó là đủ.
c)Thời gian truy cập:
Một bộ nhớ lý tưởng phải đưa dữ liệu được chọn ngay tức khắc lên các đường dữ
liệu của vi mạch nhớ đó. Tuy nhiên trong thực tế luôn tồn tại một thời gian trễ giữa thời
điểm tín hiệu địa chỉ lối vào có hiệu lực và thời điểm dữ liệu có mặt trên các đường dữ liệu,
gọi là thời gian truy cập (access time). Mặc dù thời gian này được tính bằng nanô giây
nhưng cũng làm chậm tốc độ hoạt động chung của toàn hệ thống, nên bộ xử lý phải đợi, có
khi đến 4 hoặc 5 xung nhịp.
Các máy PC loại cũ có thể sử dụng các chip DRAM có thời gian truy cập trong vòng
60-80 nanôgiây. Các máy tính hiện nay dùng loại nhanh hơn 60 nanôgiây. Thời gian truy
cập càng nhanh thì DRAM càng đắt.
Ðể giải quyết vấn đề này, nhiều nhà sản xuất cho ra thị trường thẻ điều hợp hiển thị
có tên là bộ gia tốc (accelerator). Những thẻ này có bộ vi điều khiển của nó, các phép tính
liên quan đến điều hợp hiển thị được tiến hành trên thẻ, giảm gánh nặng cho bộ vi xử lý.
Thay vì phải tính toàn bộ các điểm ảnh cần hiển thị, bộ vi xử lý chỉ cần gửi một lệnh ngắn
về thẻ điều hợp hiển thị, phần còn lại được bộ vi xử lý đồ họa GPU(Graphics Processing
Unit) của thẻ thực hiện. Vi xử lý của thẻ điều hợp hiển thị được thiết kế đặc biệt cho nhiệm
vụ này nên làm việc hiệu quả hơn nhiều bộ vi xử lý
> Bộ nhớ video
Bộ nhớ video (VRAM) chứa nội dung hình ảnh được hiển thị và các thông tin liên
quan đến nó. Chỉ riêng các điểm ảnh một màn hình 1600x1200 màu thực đã cần đến 8MB
bộ nhớ (xem bảng 2.5). Nhu cầu về bộ nhớ hiển thị khiến phải cắm thêm bộ nhớ video dành
riêng cho mục đích này.
vào cuối thế kỷ 1 9 . Một thời gian ngắn sau, khái niệm tinh thể lỏng được nhà vật lý
học người Ðức Otto Lehmann nhắc đến lần đầu tiên.
Từ năm 1971, màn hình tinh thể lỏng được ứng dụng trong nhiều lĩnh vực: TV, máy
ảnh số, màn hình máy tính v.v... Ngày nay, màn hình tinh thể lỏng để bàn hay màn hình máy
tính xách tay được chế tạo từ hai nguyên tắc chính:
• DSTN (dual-scan twisted nematic)
• TFT (thin film transistor)
Tinh thể lỏng LCD (liquid crystal display) là chất lỏng hữu cơ mà phân tử của nó có
khả năng phân cực ánh sáng dẫn đến thay đổi cường độ sáng. Trường tĩnh điện được dùng
để điều khiển hướng phân tử tinh thể lỏng.
MÀN HÌNH TFT
Màn hình LCD màu hay còn gọi là màn hình ma trận chấm (dot matrix display) có
điện cực và bộ lọc màu riêng cho từng điểm tinh thể lỏng. Mỗi điểm ảnh sẽ bao gồm ba
điểm màu riêng biệt. Màn hình ma trận chủ động (active matrix display) tối ưu hoá quá trình
định địa chỉ và nạp từng điểm ảnh. Màn hình ma trận chủ động dùng một transistor
màng mỏng TFT (thin-film transistor) làm công tắc chuyển mạch cho từng điểm màu.
Transistor đóng mạch rất nhanh (trong vài micrô giây), tụ điện mắc song song với nó sẽ
giữ trạng thái dòng mạch lâu hơn trong khi transistor của các dòng khác tiếp tục đóng mạch.
Màn hình TFT được sản xuất theo công nghệ vi điện tử và chứa vi mạch điều khiển ngay
trên màn hình.
MÀN HÌNH PLASMA
Nguyên tắc màn hình plasma giống nguyên tắc đèn Neon. Màn hình plasma thường
có màu đặc trưng là xanh hay vàng đỏ. Màn hình plasma gồm nhiều ô khí trơ được hàn kín
tương ứng với các điểm ảnh. Mỗi Ô khí trơ có hai điện cực. Khi hiệu điện thế vượt quá một
giới hạn nhất định, khí trơ sẽ ion hóa và phát sáng. Nguyên tắc điều khiển màn hình loại này
đơn giản hơn màn hình LCD. Nhược điểm của màn hình loại này là thời gian làm việc ngắn,
tiêu thụ nhiều năng lượng. Ðộ tương phản vào khoảng 10:1. Màn hình plasma từng được
dùng cho máy tính xách tay của Toshiba và Compaq. Ngày nay chúng hầu như không thể
cạnh tranh được với màn hình tinh thể lỏng tiên tiến. Màn hình LCD có thể dùng trong máy
chiếu ảnh (có vai trò như phim trong máy chiếu bóng) để có được hình trên màn ảnh rộng.
4.11. Card mạng (Network adapter) và Modem
Thiết bị đầu tiên cần để xây dựng mạng là card mạng (Network Interface – Card
NIC). Mỗi máy tính trong mạng cần một NIC. NIC cùng với driver thực hiện 2 chức năng
chính: truyền và nhậ thông tin ở dạng data frame. Trên NIC phải có một đầu nối với cáp
mạng, thông dụng nhất là loại BNC (viết tắt của bayoner connector) dùng cho cáp
đồng trục và RJ45, dùng cho cáp dạng dây đên thoại. NIC còn phụ thuộc vào loại mạng
dùng mà thông dụng nhất ngày nay là loại Ethernet (10Mbit/s), Fast Ethernet
(100Mbit/s) và Gigabit Ethernet (1000Mbit/s).
Modem
Cùng với đà sử dụng máy tính trong những năm qua, việc máy tính này cần giao tiếp
với máy tính khác là chuyện hiển nhiên xảy ra. Modem ra đời với việc ứng dụng mạng
lưới điện thoại có sẵn để kết nối các máy tính đặt xa nhau. Ví dụ, kết nối một máy tính
cá nhân tại nhà với máy tính đặt tại nơi làm việc, với hệ thống ngân hàng trong nước, hoặc
với bảng thông báo điện tử, mà phổ biến nhất ngày nay là truy cập Internet.
Những modem hiện đại truyền dữ liệu với tốc độ từ 28800 bit/s đến 57600 bit/s, tốc
độ này hiện nay được coi là hơi chậm, do vậy mới ra đời modem với công nghệ ADSL .
Ví dụ số thập phân:
472.38 = 4x102 + 7x101 + 2x100 + 3x10-1 + 8x10-2
Các chữ số của phần nguyên:
472 : 10 = 47 dư 2
47 : 10 = 4 dư 7
4 : 10 = 0 dư 4
Các chữ số của phần lẻ:
0.38 x 10 = 3.8 phần nguyên = 3
0.8 x 10 = 8.0 phần nguyên = 8
Ví dụ số nhị phân:
1101001.1011(2) =26 + 25 + 23 + 20 + 2-1 + 2-3 + 2-4
6 5 4 3 2 1 0 -1-2-3-4
= 105.6875(10)
Chuyển đổi số nguyên thập phân sang nhị phân:
• Phương pháp 1: chia dần cho 2 rồi lấy phần dư
• Phương pháp 2: Phân tích thành tổng của các số 2i nhanh hơn
Phương pháp chia dần cho 2
Ví dụ: chuyển đổi 105(10)
105 : 2 = 52 dư 1
52 : 2 = 26 dư 0
26 : 2 = 13 dư 0
13 : 2 = 6 dư 1
6:2 = 3 dư 0
3:2 = 1 dư 1
1:2 = 0 dư 1
Kết quả: 105(10) = 1101001(2)
Phương pháp phân tích thành tổng của các 2i
Ví dụ 1: chuyển đổi 105(10)
105 = 64 + 32 + 8 +1 = 26 + 25 + 23 + 20
27 26 25 24 23 22 21 20
128 64 32 16 8 4 2 1
0 1 1 0 1 0 0 1
Hệ 10 Hệ 2 Hệ 8 Hệ 16
0 0000 00 0
1 0001 01 1
2 0010 02 2
3 0011 03 3
4 0100 04 4
5 0101 05 5
6 0110 06 6
7 0111 07 7
8 1000 10 8
9 1001 11 9
10 1010 12 A
11 1011 13 B
12 1100 14 C
13 1101 15 D
Độ dài từ dữ liệu:
Độ dài từ dữ liệu là số bit được sử dụng
để mã hóa loại dữ liệu tương ứng
Thường là bội của 8-bit
VD: 8, 16, 32, 64 bit
2.2. Thứ tự lưu trữ các byte trong bộ nhớ chính
Bộ nhớ chính thường tổ chức theo byte
Hai cách lưu trữ dữ liệu nhiều byte:
Đầu nhỏ (Little-endian): Byte có ý nghĩa thấp được lưu trữ ở ngăn nhớ có địa chỉ nhỏ,
byte có ý nghĩa cao được lưu trữ ở ngăn nhớ có địa chỉ lớn.
Đầu to (Big-endian): Byte có ý nghĩa cao được lưu trữ ở ngăn nhớ có địa chỉ nhỏ, byte có ý
nghĩa thấp được lưu trữ ở ngăn nhớ có địa chỉ lớn.
Ví dụ lưu trữ dữ liệu 32-bit:
0001 1010 0010 1011 0011 1100 0100 1101
a n−1 a n− 2 ...a 2 a1 a 0
Giá trị của A được tính như sau:
n −1
A = ∑ ai 2
i =0
Dải biểu diễn của A: từ 0 đến 2n – 1
Các ví dụ:
Ví dụ 1. Biểu diễn các số nguyên không dấu sau đây bằng 8-bit:
A = 41 ; B = 150
Giải:
A = 41 = 32 + 8 + 1 = 25 + 23 + 20
41 = 0010 1001
B = 150 = 128 + 16 + 4 + 2 = 27 + 24 + 22 + 21
150 = 1001 0110
Ví dụ 2. Cho các số nguyên không dấu M, N được biểu diễn bằng 8-bit như sau:
M = 0001 0010
N = 1011 1001
Xác định giá trị của chúng ? Giải:
M = 0001 0010 = 24 + 21 = 16 +2 = 18
N = 1011 1001 = 27 + 25 + 24 + 23 + 20
= 128 + 32 + 16 + 8 + 1 = 185
Với n = 8 bit
Biểu diễn được các giá trị từ 0 đến 255
0000 0000 = 0
0000 0001 = 1
0000 0010 = 2
0000 0011 = 3
...
1111 1111 = 255
Chú ý:
1111 1111
+ 0000 0001
1 0000 0000
Vậy: 255 + 1 = 0 ?
do tràn nhớ ra ngoài
Trục số học với n = 8 bit
Trục số học:
Nhận xét:
A =
0010 0101
Số bù hai =
+ 1101 1011
1 0000 0000 = 0 (bỏ qua bit nhớ ra ngoài)
Số bù hai của A = -A
3.2.3. Biểu diễn số nguyên có dấu bằng mã bù hai
Nguyên tắc tổng quát: Dùng n bit biểu diễn số nguyên có dấu A:
an−1an−2 ...a2a1a0
• Với A là số dương: bit an-1 = 0, các bit còn lại biểu diễn độ lớn như số không dấu
• Với A là số âm: được biểu diễn bằng số bù hai của số dương tương ứng, vì vậy bit an-1
=1
Biểu diễn số dương:
• Dạng tổng quát của số dương A:
0a n −2 ...a 2 a1 a0
• Giá trị của số dương A:
n−2
A = ∑ ai 2i
i =0
• Dải biểu diễn cho số dương: 0 đến 2n-1-1
Biểu diễn số âm:
• Dạng tổng quát của số âm A:
1a n −2 ...a 2 a1 a0
• Giá trị của số âm A:
n−2
A = −2 n −1
+ ∑ ai 2i
i =0
• Dải biểu diễn cho số âm: -1 đến -2n-1-1
Biểu diễn tổng quát cho số nguyên có dấu:
• Dạng tổng quát của số nguyên A:
a n−1 a n−2 ...a 2 a1 a 0
• Giá trị của A được xác định như sau:
n−2
A = − an −1 2 n −1
+ ∑ ai 2i
i =0
B = -80
Ta có: + 80 = 0101 0000
Số bù một = 1010 1111
+ 1
Số bù hai = 1011 0000
0000 0000 = 0
0000 0001 = +1
0000 0010 = +2
0000...0011 = +3
0111 1111 = +127
1000 0000 = - 128
1000 0001 = - 127
...
1111 1110 = -2
1111 1111 = -1
Chú ý:
+127 + 1 = -128
-128 - 1 = +127
do tràn xảy ra
Trục số học số nguyên có dấu với n = 8 bit
Trục số học:
Khi cộng hai số nguyên không dấu n-bit, kết quả nhận được là n-bit:
Nếu Cout=0 nhận được kết quả đúng.
Nếu Cout=1 nhận được kết quả sai, do tràn nhớ ra ngoài (Carry Out).
Tràn nhớ ra ngoài khi: tổng > (2n – 1)
57 = 0011 1001
+ 34 = + 0010 0010
91 0101 1011 = 64+16+8+2+1=91 đúng
- 37 = 1101 1011
bù một = 0010 0100
+ 1
Bù hai = 0010 0101 = +37
Kết luận: Phép đảo dấu trong máy tính thực chất là lấy bù hai
4.2. Cộng và trừ số nguyên có dấu
Khi cộng hai số nguyên có dấu n-bit, kết quả nhận được là n-bit và không cần quan tâm đến
bit Cout
Cộng hai số khác dấu: kết quả luôn luôn đúng.
Cộng hai số cùng dấu:
nếu dấu kết quả cùng dấu với các số hạng thì kết quả là đúng.
nếu kết quả có dấu ngược lại, khi đó có tràn xảy ra
(Overflow) và kết quả bị sai.
Tràn xảy ra khi tổng nằm ngoài dải biểu diễn: [ -(2n-1),+(2n-1-1)]
Ví dụ cộng số nguyên có dấu không tràn
Dạng 32 bit
S là bit dấu:
S = 0 số dương
S = 1 số âm
e (8 bit) là mã excess-127 của phần mũ E:
e = E+127 E = e – 127
giá trị 127 gọi là là độ lệch (bias)
m (23 bit) là phần lẻ của phần định trị M:
M = 1.m
Công thức xác định giá trị của số thực:
* X = (-1)S 1.m* 2e-127
Ví dụ 1
Xác định giá trị của số thực được biểu diễn bằng 32-bit như sau:
1100 0001 0101 0110 0000 0000 0000 0000
S = 1 số âm
e = 1000 00102 = 130 E = 130-127=3
Vậy
X = -1.10101100 * 23 = -1101.011 = -13.375
0011 1111 1000 0000 0000 0000 0000 0000 = ?
= +1.0
Ví dụ 2
Biểu diễn số thực X= 83.75 về dạng số dấu phẩy
động IEEE754 32-bit
Giải:
X = 83.75(10) = 1010011.11(2) = 1.01001111 x 26
Ta có:
S = 0 vì đây là số dương
E = e-127 = 6 e = 127 + 6 = 133(10) = 1000 0101(2)
Vậy:
X = 0100 0010 1010 0111 1000 0000 0000 0000
Ví dụ 3
Biểu diễn số thực X= -0,2 về dạng số dấu phẩy
động IEEE754 32-bit
Giải:
X = -0,2(10) = - 0.00110011...0011...(2) =
= - 1.100110011..0011... x 2-3
Ta có:
S = 1 vì đây là số âm
E = e-127 = -3 e = 127 -3 = 124(10) = 0111 1100(2)
Vậy:
Các bit của e bằng 1, còn m có ít nhất một bit bằng 1, thì nó không biểu diễn cho số nào
cả (NaN - not a number)
Dải giá trị biểu diễn
2-127 đến 2+127
10-38 đến 10+38
Dạng 64-bit
S là bit dấu
e (11 bit): mã excess-1023 của phần mũ E E = e – 1023
m (52 bit): phần lẻ của phần định trị M
Giá trị số thực:
X = (-1)S 1.m* 2e-1023
Dải giá trị biểu diễn: 10-308 đến 10+308
Dạng 80-bit
S là bit dấu
e (15 bit): mã excess-16383 của phần mũ E E = e – 16383
m (64 bit): phần lẻ của phần định trị M
Giá trị số thực:
X = (-1)S*1.m* 2e-16383
Dải giá trị biểu diễn: 10-4932 đến 10+4932
5.3. Thực hiện phép toán với số dấu phẩy động
X1 = M1 * RE1
X2 = M2 * RE2
Ta có
X1 * X2 = (M1* M2) * RE1+E2
X1 / X2 = (M1 / M2) * R
X1 ± X2 = (M1*RE1-E2 ± M2) * RE2 , với E2 ≥ E1
Các khả năng tràn số
Tràn trên số mũ (Exponent Overflow): mũ dương vượt ra khỏi giá trị cực đại của số mũ
dương có thể. ( ∞)
Tràn dưới số mũ (Exponent Underflow): mũ âm vượt ra khỏi giá trị cực đại của số mũ âm có
thể ( 0).
Tràn trên phần định trị (Mantissa Overflow): cộng hai phần định trị có cùng dấu, kết quả bị
nhớ ra ngoài bit cao nhất.
Tràn dưới phần định trị (Mantissa Underflow): Khi hiệu chỉnh phần định trị, các số bị mất ở
bên phải phần định trị.
Phép cộng và phép trừ
Kiểm tra các số hạng có bằng 0 hay không
Hiệu chỉnh phần định trị
Cộng hoặc trừ phần định trị
Chuẩn hoá kết quả
Thuật toán cộng/trừ số dấu phẩy động
6. Biểu diễn ký tự
Bộ mã ASCII (American Standard Code for Information Interchange)
Bộ mã Unicode
6.1. Nguyên tắc chung về mã hoá
Mã hóa (Encryption) là một trong những công cụ bảo mật đa năng và chúng ta có thể
sử dụng nó để đạt được mục tiêu đề ra. Có thể xem mã hóa là một vũ khí cực mạnh, và phức
tạp trong cuộc chiến bảo vệ an toàn cho máy tính.
Có nhiều hệ thống mật mã, và cách thiết lập cũng khác nhau. Tuy nhiên có sự tương đồng
giữa tất cả các hệ thống mã hóa, điều mà các nhà bảo mật nên nắm vững.
Mã hóa là một kỹ thuật bảo mật làm biến đổi (converts) dữ liệu từ hình
thức đơn giản, rõ ràng (plain hoặc cleartext form) sang hình thức dữ liệu biến hành mật mã
(coded, hoặc ciphertext form). Chỉ những ai có được thông tin giải mã cần thiết mới có thể
giải mã và đọc nội dung dữ liệu. Mã hóa có thể là một chiều, có nghĩa là mã hóa được thiết kế
để ẩn cleartext đi và không bao giờ có thể giải mã được. Hoặc có thể 2 chiều chuỗi ki tự được
mã hóa (ciphertext) có thể chuyển trở lại thành cleartext và đọc được.
6.2. Bộ mã ASCII
Do ANSI (American National Standard
Institute) thiết kế
Bộ mã 8-bit có thể mã hóa được 28
ký tự, có mã từ: 0016 ÷ FF16 , trong đó:
128 ký tự chuẩn có mã từ 0016 ÷ 7F16
128 ký tự mở rộng có mã từ 8016 ÷ FF16
Các ký tự chuẩn
Các ký tự hiển thị chuẩn:
Các chữ cái Latin
Các chữ số thập phân
các dấu câu: . , : ; ...
các dấu phép toán: + - * / % ...
một số ký hiệu thông dụng: &, $,@, #
dấu cách
Các mã điều khiển
Các mã điều khiển định dạng văn bản
Các mã điều khiển truyền số liệu
Các mã điều khiển phân tách thông tin
Các mã điều khiển khác
Hex 0 1 2 3 4 5 6 7
0 NUL DLE SP 0 @ P ` p
0 16 32 48 64 80 96 112
1 SOH DC1 ! 1 A Q a q
1 17 33 49 65 81 97 113
2 STX DC2 “ 2 B R b r
2 18 34 50 66 82 98 114
♥ DC3 # 3 C S c s
3 3 19 35 51 67 83 99 115
4 ♦ DC4 $ 4 D T d t
4 20 36 52 68 84 100 116
5 ♣ NAK % 5 E U e u
5 21 37 53 69 85 101 117
6 ♠ SYN & 6 F V f v
6 22 38 54 70 86 102 118
7 BEL ETB ‘ 7 G W g w
7 23 39 55 71 87 103 119
8 BS CAN ( 8 H X h x
8 24 40 56 72 88 104 120
9 HT EM ) 9 I Y I y
9 25 41 57 73 89 105 121
A LF SUB * : J Z j z
10 26 42 58 74 90 106 122
B VT ESC + ; K [ k {
11 27 43 59 75 91 107 123
C FF FS , < L \ l |
12 28 44 60 76 92 108 124
D CR GS - = M ] m }
13 29 45 61 77 93 109 125
E SO RS . > N ^ n ~
14 30 46 62 78 94 110 126
F SI US / ? O _ o DEL
15 31 47 63 79 95 111 127
Các mã điều khiển: có mã 0016 ÷ 1F16 và 7F16
Các ký tự mở rộng
Các ký tự mở rộng được định nghĩa bởi:
nhà chế tạo máy tính
người phát triển phần mềm.
Ví dụ:
Bộ mã ký tự mở rộng của IBM IBM-PC.
Bộ mã ký tự mở rộng của Apple Macintosh.
Bộ mã tiếng Việt TCVN3.
6.3. Unicode
Do các hãng máy tính hàng đầu thiết kế
Bộ mã 16-bit
Bộ mã đa ngôn ngữ
Có hỗ trợ các ký tự tiếng Việt
2) Ký hiệu:
3) Đặc điểm:
Nếu tất cả ngõ vào có giá trị 1 thì ngõ ra có giá trị 1
5) Ví dụ:
Xét mạch truyền dữ liệu sau:
Y Y Y Y Y Y
5 4 3 2 1 0
Dùng cổng AND để lưu hoặc truyền dữ liệu
2) Ký hiệu:
3) Đặc điểm:
Nếu chỉ một trong các ngõ vào có giá trị 1 thì ngõ ra có giá trị 1
( hay nếu tất cả ngõ vào có giá trị 0 thì ngõ ra có giá trị 0)
A B A OR B A B C A OR B OR C
0 0 0 0 0 0 0
0 1 1 0 0 1 1
1 0 1 0 1 0 1
1 1 1 0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 1
1 1 1 1
2) Ký hiệu:
Vin Vout
3) Đặc điểm:
Trạng thái ngõ ra trái ngược trạng thái ngõ vào
Khi ta ghép 2 cổng đảo ta được cổng không đảo
Vin Vout
5) Nhận xét:
Cổng không đảo có giá trị ngõ vào và ngõ ra giống nhau
4. Cổng NOR (Not OR)
1) Khái niệm:
Là cổng có 2 hay nhiều ngõ vào và chỉ có một ngõ ra.
2) Ký hiệu:
3) Đặc điểm:
Nếu tất cả giá trị ngõ vào là 0 thì giá trị ngõ ra là 1
2) Ký hiệu:
3) Đặc điểm:
Nếu tất cả giá trị ngõ vào là 1 thì giá trị ngõ ra là 0
2) Ký hiệu:
3) Đặc điểm:
Với cổng XOR có 2 ngõ vào, giá trị ngõ ra là 1 khi 2 ngõ vào có giá trị khác nhau.
0 1 1 0 0 1 1
1 0 1 0 1 0 1
1 1 0 0 1 1 0
1 0 0 1
1 0 1 0
1 1 0 0
1 1 1 1
7. Cổng XNOR (Exclusive Not OR)
1) Khái niệm:
Là cổng có 2 hay nhiều ngõ vào và chỉ có một ngõ ra.
2) Ký hiệu:
3) Đặc điểm:
Nếu ngõ tất cả ngõ vào có giá trị giống nhau thì có giá trị 1 (hay nếu chỉ 1 ngõ vào
có trị khác với các ngõ còn lại thì ngõ ra có trị là 0). Do đó, cổng XNOR còn dùng
để so sánh 2 bit với nhau
Khi số bit 1 ở ngõ vào là chẵn thì giá trị ngõ ra là 1. Do đó, cổng XNOR còn dùng
để kiểm tra tính chẵn lẻ.
A+ B = A. B
Chứng minh:
Để chứng minh định lý này ta xét 2 phương trình boole sau:
Y1 = A + B và Y2= A . B
A B Y1 Y2
0 0 1 1
0 1 0 0
1 0 0 0
1 1 0 0
9. Định lý De Morgan 2
Định lý này phát biểu như sau:
AB = A + B
Việc chứng minh định lý này tương tự như chứng minh định lý 1 (có thể dùng bảng
chân trị để chứng minh)
Mở rộng:
Đối với các cổng có 3 hay 4 ngõ vào. Định lý De Morgan được biểu thị như sau:
Mạch có 3 cổng vào A, B, C:
ABC = A + B + C
ABCD = A+ B +C + D
A Y
A Y
B
Y= A AND B
Y có trị 1 (đúng) khi cả A và B có trị 1 (đúng)
Phương trình boole của mạch AND:
Phương trình luận lý:
Y = A AND B
Phương trình boole:
Y = A B hay Y = A.B
Và được thể hiện bởi mạch sau:
A Y
B
A
Y
B
A B A Y
0 0 1 1
0 1 1 1
1 0 0 0
1 1 0 1
Ví dụ 2:
Tìm phương trình boole và thiết lập bảng chân trị cho mạch sau:
A
B
Y
C
D
A B C D A OR B C OR D Y
0 0 0 0 0 0 0
0 0 0 1 0 1 0
0 0 1 0 0 1 0
0 0 1 1 0 1 0
0 1 0 0 1 0 0
0 1 0 1 1 1 1
0 1 1 0 1 1 1
0 1 1 1 1 1 1
1 0 0 0 1 0 0
1 0 0 1 1 1 1
1 0 1 0 1 1 1
1 0 1 1 1 1 1
1 1 0 0 1 0 0
1 1 0 1 1 1 1
1 1 1 0 1 1 1
1 1 1 1 1 1 1
Ví dụ 3:
Tìm phương trình boole và thiết lập bảng chân trị cho mạch sau:
A
B
Y
C
D
A B C D A AND C AND Y
B D
0 0 0 0 0 0 0
0 0 0 1 0 0 0
0 0 1 0 0 0 0
0 0 1 1 0 1 1
0 1 0 0 0 0 0
0 1 0 1 0 0 0
0 1 1 0 0 0 0
0 1 1 1 0 1 1
1 0 0 0 0 0 0
1 0 0 1 0 0 0
1 0 1 0 0 0 0
1 0 1 1 0 1 1
1 1 0 0 1 0 1
1 1 0 1 1 0 1
1 1 1 0 1 0 1
1 1 1 1 1 1 1
A + (B + C) = (A + B) + C
A (B C) = (A B) C
B A
C Y = Y
A B C
A (B + C) = AB + AC
B
B
C Y = A Y
A
C
3. Các quan hệ trên đại số boole
Các mối quan hệ này từ trên cơ sở các cổng
Chứng minh:
A+0=A:
Rõ ràng nếu A =1 ta được 1 + 0 =1 (=A)
Nếu A = 0 ta được 0 + 0 = 0 ( =A)
Các quan hệ bên dưới tương tự
A.A=A
A . A= 0
Y= A B A
Y có trị 1 khi A = 0 và B = 0 Y
A
B
Y= AB A
Y
Y có trị 1 khi A = 1 và B = 0 B
Y= AB A
Y
Y có trị 1 khi A =0 và B = 1 B
Y = AB A
Y
Y có trị 1 khi A =1 và B = 1 B
Trong đó: Các giá trị A B , A B , A B, AB được gọi là các tích cơ bản.
Ta có bảng chân trị 2 biến và các tích cơ bản như sau:
A B Tích cơ bản Y
0 0 A B 0
0 1 AB 0
1 0 AB 0
1 1 AB 1
A B C Tích cơ bản Y
0 0 0 ABC 0
0 0 1 A BC 0
0 1 0 A BC 0
0 1 1 A BC 0
1 0 0 AB C 0
1 0 1 ABC 0
1 1 0 AB C 0
1 1 1 ABC 1
Để thiết lập phương trình boole và vẽ mạch luận lý từ bảng chân trị ta cần theo 2
bước sau:
Bước 1: Xác định các giá trị 1
Bước 2: Thiết lập phương trình boole bằng cách cộng tất cả các tích cơ bản
này lại
Bước 3: Vẽ mạch luận lý
Ví dụ: Xét bảng chân trị 3 biến được cho như sau:
A B C Y
0 0 0 1 -> A B C
0 0 1 0
0 1 0 0
0 1 1 1-> A BC
1 0 0 0
1 0 1 0
1 1 0 1->AB C
1 1 1 1->ABC
Mạch 1:
A A B B C C
Mạch 2:
A A B B C C
Ta có:
- Số cổng vào ở mạch 1 là 16
- Số cổng vào ở mạch 2 là 12
Như vậy : Mạch 2 đơn giản hơn
5.2. Đơn giản phương trình boole:
Ví dụ 1:
Cho pương trình boole Y = AB + A B
Áp dụng quan hệ boole ta có:
Y = A(B + B ) = A.1 = A
Bước đơn giản trên được mô tả bằng hình vẽ như sau:
Ban đầu: Y = AB + A B
A A B B
Lúc Y = A (B + B )
A A B B
Cuối cùng:
A A B B
Như vậy: Mạch cuối cùng có phương trìnhYY = A (có 1 ngõ vào và 1 ngõ
ra)
Ví dụ 2:
C D CD CD CD
A B 0 0 0 0
AB 0 1 1 0
AB 0 0 0 0
AB 0 0 0 0
C D CD CD CD
A B 0 0 0 0
AB 0 1 1 0
AB 1 0 0 0
AB 1 0 0 0
Y1 = A B C D + A BCD
= A BD (dùng các quan hệ boole)
Y2 = AB C D + A B C D = A C D
Y = A BD + A C D
Nhận xét: Ứng với mỗi cặp ta bỏ được một biến mà không ảnh hưởng gì đến
phương trình
7. Bộ bốn
7.1. Khái niệm:
Là 4 giá trị 1 “liên tiếp” trong bản đồ Karnaugh
7.2. Các ví dụ:
a. Ví dụ 1: Bản đò sau có một bộ bốn
C D CD CD CD
A B 0 0 0 0
AB 0 1 0 0
AB 1 1 1 1
AB 0 0 0 0
C D CD CD CD
A B 0 0 0 0
AB 0 1 1 0
AB 0 1 1 0
AB 0 0 0 0
C D CD CD CD
A B 0 0 0 0
AB 0 0 0 0
AB 1 1 1 1
AB 1 1 1 1
C D CD CD CD
A B 0 1 1 0
AB 0 1 1 0
AB 0 1 1 0
AB 0 1 1 0
=D
BẢN ĐỒ KARNAUGH
Chúng ta vừa nghiên cứu xong về một số qui tắc để đơn giản phương trình boole,
bằng cách dùng các phép toán quan hệ hay bản đồ. Đối với việc dùng bản đồ để đơn
giản phương trình boole, điều cần thiết chính là việc chuyển đổi từ bảng chân trị sang
bản đồ Karnaugh
Phần tiếp sau đây, chúng ta sẽ tiếp tục nghiên cứu về cách chuyển từ bảng chân trị
sang bản đồ.
A B Y
0 0 0
0 1 1
1 0 0
1 1 1
B B
A 0 1
A 0 1
9.2. Bản đồ 3 biến:
Giả sử ta có bảng chân trị như sau:
A B C Y
0 0 0 0
0 0 1 0
0 1 0 1
0 1 1 1
1 0 0 0
1 0 1 0
1 1 0 1
1 1 1 0
Từ bảng chân trị trên ta được bản đồ Karnaugh tương ứng như sau:
C C
A B 0 0
AB 1 1
AB 1 0
AB 0 0
9.3. Bản đồ 4 biến:
Giả sử ta có bảng chân trị như sau:
A B C D Y
0 0 0 0 0
0 0 0 1 1
0 0 1 0 0
0 0 1 1 0
0 1 0 0 0
0 1 0 1 0
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 0
1 0 1 0 0
1 0 1 1 0
1 1 0 0 0
1 1 0 1 0
1 1 1 0 1
1 1 1 1 0
C D C D CD C D
A B 0 1 1 1
AB 0 0 0 1
AB 1 1 0 1
AB 1 1 0 1
C D C D CD C D
A B 0 0 0 0
AB 0 1 0 0
AB 1 1 1 1
AB 1 1 1 1
Ta xác định đươc một bộ tám và một cặp (nhóm phủ) như hình vẽ
C D C D CD C D
A B 0 0 0 0
AB 1 0 0 1
AB 1 0 0 1
AB 0 0 0 0
Với bản đồ này ta được 2 cặp.
Phương trình boole trong trường hợp này:
Y = B C D + BC D
Tuy nhiên, khi ta gấp 2 mép của bản đồ lại ta được 1 bộ bốn.
⇒ ⇐
C D C D CD C D
A B 0 0 0 0
AB 0 1 0 0
AB 0 1 1 0
AB 0 0 1 0
Trong trường hợp này, rõ ràng ta xác định được 3 cặp như hình vẽ bên dưới.
Cặp 1
Cặp 2
Cặp 3
(Nhóm thừa)
Nhưng cặp thứ 3 rõ ràng nằm trong 2 cặp 1 và 2 và ta loại bỏ chúng đi. Vì nó là nhóm
thừa.
Phương trình boole: Y = B C D + ACD
10.5. Các giá trị tuỳ chọn:
Trong một số trường hợp, một tín hiệu không yêu cầu 1 giá trị cụ thể nào, khi đó
chúng được gọi là trị “tuỳ chọn” và được ghi bằng dấu x trong bảng chân trị (hay
trong bản đồ). Với trường hợp này, ta nên lợi dụng lợi thế của yêu cầu để đơn giản
mạch.
Ví dụ: Cho bảng chân trị như sau
A B C D Y
0 0 0 0 1
0 0 0 1 0
0 0 1 0 0
0 0 1 1 1
0 1 0 0 1
0 1 0 1 1
0 1 1 0 0
0 1 1 1 1
1 0 0 0 x
1 0 0 1 x
1 0 1 0 x
1 0 1 1 x
1 1 0 0 x
1 1 0 1 x
1 1 1 0 x
1 1 1 1 x
C D C D CD C D
A B 1 0 1 0
AB 1 1 1 0
AB x x x x
AB x x x x
Bộ bốn thứ
nhất
Bộ bốn thứ 2
Bộ bốn thứ 3
A B CARRY SUM
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0
CARRY
SUM
A B C CARRY SUM
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1
2.3. Hình vẽ:
A BC
CARRY
SUM
Hình vẽ mạch toàn cộng
3. Mạch cộng nhị phân
3.1. Khái niệm:
Mạch cộng nhị phân là mạch được xây dựng từ mạch nữa cộng và mạch toàn cộng.
Ta có mạch cộng 2 từ (word) có chiều dài 4 bit:
A3 A2 A1 A0
B3 B2 B1 B0
C4 S3 S2 S1 S0
C4
FA FA FA HA
S3 S2S1 S0
Mạch cộng nhị phân
Trong đó, FA là mạch toàn cộng và HA là mạch nửa cộng
4. Mạch cộng - trừ bù 2
Khi cần cộng và trừ số bù 2 người ta thiết kế mạch sau:
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 100
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
A3 A2 A1 A0
B3 B2 B1 B0
SUB
CARRY FA FA FA HA
(Không dùng)
S3 S2 S1 S0
Hình vẽ mạch cộng - trừ bù 2
Với :
SUB = 0 S= A + B
SUB = 1 S = A – B
5. Mạch giải mã thập - nhị phân
Ứng với kết quả thập phân ta thu được giá trị nhị phân tươn ứng thông qua mạch này.
Mạch giải mã thập nhị là sự kết hợp của cổng OR
Y3 Y2 Y1 Y0
Mạch giải mã thập nhị
Ví dụ minh hoạ:
Giả sử: Khi ta gõ phím số 8, căn cứ theo mạch trên ta được:
Y0 = 0
Y1 = 0
Y2 = 0
Y3 = 1
Như vậy dãy số nhị phân sẽ là: 1000
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 101
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 102
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
A B C D
Y0
Y1
Y2
Y3
Y4
Y5
Y6
Y7
Y8
Y9
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 103
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 104
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Ứng dụng của mạch này dùng để kiểm tra việc truyền dữ liệu, vì khi truyền dữ liệu đi,
dữ liệu nhận được có thể bị sai (do nhiễu hay vì lý do nào đó). Và người ta dùng mạch này để
phát hiện khi nhận kết quả sai.
Ví dụ: Khi truyền A (1000001) và nhận được C (1000011) ta phát hiện có dự truyền
sai do ta truyền đi tín hiệu chẵn nhưng nhận được tín hiệu lẻ
9. Mạch đảo có điều khiển
Khi truyền tín hiệu qua mạch này, ta nhận được kết quả tuỳ thuộc vào sự điều khiển
của khoá.
Ví dụ: Khi truyền đi một từ (word) có tín hiệu là A. Ta nhận được một trong 2 giá trị
sau:
Nếu Key = 0, tín hiệu nhận được là A
Nếu Key = 1, tín hiệu nhận được là bù của A
Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 105
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
7 6 5 4 3 2 1 0 <- Bit
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 <- Bit
7 6 5 4 3 2 1 0 <- Bit
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 106
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 <- Bit
Ví dụ: Giả sử ta có lệnh đầu tiên nằm trong bộ nhớ tại địa chỉ 0400, do đó nội dung của
mạch đếm chương trình (PC) là 0400.
địa chỉ
bộ nhớ
0400 9C
0401 0A lệnh 1
0402 30
Vùng 0403 40 lệnh 2
nhớ 0404 9C
chương 0405 0A lệnh 3
trình 0406 31
0407 80 lệnh 4
0408 60 lệnh 5
0409
0A30 7A
Vùng
0A31 2F
nhớ dữ
0A32
liệu
A
DC
IR
04 00 PC
A
DC
9C IR
04 01 PC
Nạp mã lệnh vào IR và tăng PC lên 1
CPU giải mã lệnh (9C) và thi hành lệnh đưa 2 byte kế tiếp vào DC. Qui trình như sau:
o Căn cứ vào địa chỉ ghi ở PC, CPU nạp nội dung ô nhớ tương ứng vào byte cao của
DC và tăng PC lên 1.
A
0A DC
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 107
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
9C IR
04 02 PC
A
0A 30 DC
9C IR
04 03 PC
A
0A 30 DC
40 IR
04 04 PC
7A A
0A 30 DC
40 IR
04 04 PC
Lưu ý rằng nội dung DC và PC không tăng. PC không tăng vì 7A không phải là dữ liệu
hay lệnh trực kiện mà nó được tìm từ vùng nhớ dữ liệu. DC không tăng vì dữ liệu cần xử
lý kế tiếp không nhất thiết phải nằm ở vùng nhớ kế tiếp.
7A A
0A 30 DC
9C IR
04 05 PC
b) Tìm lệnh 0A trong địa chỉ 0405 và nạp vào byte cao của DC
7A A
0A 30 DC
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 108
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
9C IR
04 06 PC
c) Tìm lệnh 31 trong địa chỉ 0406 và nạp vào byte thấp của DC
7A A
0A 31 DC
9C IR
04 07 PC
Lệnh 4 có mã 80 lấy nội dung vùng nhớ có địa chỉ chứa trong DC cộng vào A. Qui
trình được thực hiện như sau:
a) Nạp lệnh vào IR
7A A
0A 31 DC
80 IR
04 08 PC
A9 A
0A 31 DC
80 IR
04 08 PC
Lệnh 5 có mã 60 lưu nội dung của A vào vùng nhớ định bởi DC. Qui trình như sau:
a) Tìm lệnh (Nạp lệnh vào IR):
A9 A
0A 31 DC
60 IR
04 09 PC
0A30 7A 7A A
0A31 A9 31 DC
0A32 0A
80 IR
04 08 PC
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 109
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Làm bù số.
Dịch chuyển các bit trong dữ liệu
4. Thanh ghi địa chỉ bộ nhớ (MAR – Memory Address Register)
Thanh ghi này dùng để giữ địa chỉ của dữ kiện trong bộ nhớ. Địa chỉ này có thể là một
phần của lệnh hay do chương trình cung cấp. Lệnh nạp thanh ghi tích luỹ (A) từ bộ nhớ có
địa chỉ giả sử là 300 thì sẽ nạp A và nội dung của ô nhớ có địa chỉ 300 (do lệnh nào vào MAR
giá trị 300). Nội dung của A sẽ tăng lên 1 và cất lại ô nhớ 300. Như vậy, CPU có thể truy xuất
đến ô nhớ 300 một số lần mà không cần chỉ ra địa chỉ của nó (ở đây là 300) trong lệnh (vì đã
chứa sẵn trong MAR). Ngoài ra còn có thể dùng ô nhớ kế tiếp (có địa chỉ là 301) bằng cách
đơn giản là cộng vào MAR.
5. Mạch điều khiển (CU – Control Unit)
Mạch điều kiểm có nhiệm vụ chủ yếu là giải mã lệnh đang chứa trong IR và phát tín hiệu
truyền dữ liệu vào ALU đồng thời nó ra lệnh cho ALU thực hiện.
liệu
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 110
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
2 0000 0010
+ 2 0000 0010
4 0000 0100 Cp=0, Cs=0 không tràn
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 111
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Chu kỳ Chu kỳ
Chu kỳ Chu kỳ
Dạng tín hiệu Ф2
Chu kỳ Chu kỳ
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 112
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Tìm lệnh:
CPU xuất nội dung của PC cùng với tín hiệu yêu cầu đọc nội dung ô nhớ có địa
chỉ chứa trong PC. Sau khi đọc xong, CPU lưu nội dung vào IR và tăng PC lên 1.
Chu kỳ lệnh
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 113
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Vdd 1
Nguồn Vss 2
Vgg 3
-> Đồng hồ Ф 4
1 D0 Ф
2 D1
3 D2 địa chỉ
4 D3 A0 –A15
A0 D4 Dữ liệu ↔
A1 D5
A2 D6
D7
R READ → READ
D0 – D7
A13
A14
A15
Kế tiếp là chu kỳ thực hiên lệnh. Như hình CPU chip 40 chân ta có 4 loại lệnh:
Nạp địa chỉ ô nhớ vào DC (lệnh 1 và 3)
Tìm nội dung ô nhớ có địa chỉ chứa trong DC và nập vào A (lệnh 2)
Tìm nội dung ô nhớ có địa chỉ chứa trong DC cộng với nội dung của A và chứa
kết quả vào A (lệnh 4)
Lưu nội dung của A vào ô nhớ có địa chỉ chứa trong DC (lệnh 5)
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 114
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Với 4 loại lệnh này ta khảo sát các chu kỳ lệnh và tín hiệu điều khiển.
Trước tiên là lệnh đơn giản nhất. Lệnh A0 (lệnh 2) yêu cầu tìm dữ liệu trong bộ nhớ, việc
tìm tương tự như tìm lệnh do đó lệnh đọc bộ nhớ như sau:
D0 – D7 Mã lệnh Dữ liệu
1 D0
2 D1
3 D2
-> Đồng hồ 4 D3
Ф Dữ liệu
A0 D4
A1 D5
A2 D6
D7
Địa R READ
chỉ W WRITE
A13
A14
A15
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 115
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
READ
READ
WRITE
D0 – D7 Mã lệnh Dữ liệu
• A A
• DC • • DC
ALU IR ALU IR
PC
• PC
•
CU CU
A0-A15 D0-
A0-A15 D0-D7
D7
••
Đối với CPU thông minh chỉ cần 3 chu kỳ để thực hiện lệnh nạp DC
A0-
Địa chỉ lệnh Địa chỉ lệnh 1 Địa chỉ lệnh 2
A15
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 116
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Tìm lệnh Tìm địa chỉ đầu Tìm địa chỉ sau
Lệnh nạp DC có 3 chu kỳ
Mặt khác, để đơn giản hoá CPU, nội dung của PC chỉ xuất ở chu kỳ đầu (tương tự DC
chỉ xuất ở chu kỳ sau) do đó, lệnh nạp DC thường chiếm 6 chu kỳ (xem hình vẽ trang sau)
Dữ Dữ
liệu liệu
A Vĩ
Đường trình
truyền
ALU DC
dữ liệu
trong PC
IR
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 117
Trường ĐH Tài Chính - Marketing Giáo Trình kiến trúc máy tính và hệ điều hành
Vĩ
Dữ liệu CU
trình
CU
Vi
trình
Nguyễn Thanh Trường - Khoa Công nghệ thông tin Trang 118