Thông tin tài liệu
TRƯỜNG ĐẠI HỌC ĐÀ LẠT
F 7 G
GIÁO TRÌNH
KIẾN TRÚC MÁY TÍNH 02
PHAN VĂN NGHĨA
1998
Kiến trúc máy tính 02
MỤC LỤC
MỤC LỤC 2
CHƯƠNG 1: CẤU TRÚC CƠ BẢN CỦA PHẦN CỨNG & PHẦN MỀM MÁY TÍNH
4
1.1 CÁC THÀNH PHẦN CỦA MÁY TÍNH 4
a) Thiết bò nhập (input device) 5
b) Bộ nhớ (memory) 5
c) Bộ logic và số học (Arithmetic and logic unit - ALU) 6
d) Thiết bò ra (output device) 7
e) Bộ điều khiển (control unit - CU) 7
1.2 HOẠT ĐỘNG CỦA MÁY TÍNH 7
1.3 CẤU TRÚC BUS 10
1.4 PHẦN MỀM (SOFTWARE) 11
1.5 ĐẶC TRƯNG CỦA MÁY TÍNH 13
1.6 ĐÔI NÉT VỀ LỊCH SỬ PHÁT TRIỂN CỦA MÁY TÍNH 15
CHƯƠNG 2: BIỂU DIỄN SỐ LIỆU 17
2.1 CÁC LOẠÏI SỐ LIỆU 17
2.2 HỆ THỐNG SỐ THẬP PHÂN (DECIMAL NUMBER SYSTEM) 17
2.3 HỆ THỐNG SỐ NHỊ PHÂN (BINARY NUMBER SYSTEM) 18
2.4 HỆ THỐNG SỐ BÁT PHÂN (OCTAL NUMBER SYSTEM) 19
2.5 HỆ THỐNG SỐ THẬP LỤC PHÂN ( HEXADECIMAL NUMBER SYSTEM)20
2.6 MÃ BCD 21
2.7 MÃ ALPHANUMERIC 22
2.8 HỆ THỐNG SỐ CÓ DẤU CHẤM ĐỘNG (FLOATING-POINT NUMBER
SYSTEM)
24
2.9 PHƯƠNG PHÁP CHẲN LẺ ( PARITY METHODE ) 26
CHƯƠNG 3 : CỔNG LOGIC & MẠCH SỐ 27
3.1 ĐẠI SỐ BOOL 27
3.2 BẢNG SỰ THẬT (TRUTH TABLE) 28
3.3 PHÉP CỘNG LOGIC (OR) 29
3.4 PHÉP AND LOGIC 29
3.5 PHÉP BÙ (NOT OPERATION) 30
3.6 MÔ TẢ MẠCH LOGIC BẰNG ĐẠI SỐ BOOL 31
3.7 TÍNH GIÁ TRỊ CỦA MỘT BIỂU THỨC BOOL 32
3.8 THỰC HIỆN MẠCH LOGIC TỪ BIỂU THỨC BOOL 32
3.9 CỔNG NOR, NAND VÀ XOR 33
3.10 CÁC ĐỊNH LÝ BOOL 35
3.11 ĐỊNH LÝ DE MORGAN 36
3.12 THIẾT KẾ MẠCH LOGIC TỔ HP 37
3.13 ĐƠN GIẢN HÀM BOOL BẰNG PHƯƠNG PHÁP ĐẠI SỐ 39
3.14 CÁC MẠCH SỐ 40
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
3.15 FLIP - FLOP 40
3.16 ĐỒNG HỒ VÀ FF CÓ ĐỒNG HỒ 42
a) Khái niệm đồng hồ 42
b) FF có đồng hồ (Clocked Flip - Flops) 43
c) Các lối vào không đồng bộ 45
3.17 ỨNG DỤNG CỦA FF 45
a)Lưu trữ và truyền số liệu: 45
b) Mạch đếm (counter) 48
CHƯƠNG 4: BỘ LOGIC SỐ HỌC (ALU) 51
4.1 CẤU TRÚC CỦA ALU 51
4.2 BỘ CỘNG NHỊ PHÂN 51
a) Bộ cộng nhò phân một nửa (half-adder) 52
b) Bộ cộng đầy đủ ( Full - adder) 53
4.3 BIỂU DIỄN SỐ CÓ DẤU 54
4.4 BIỂU DIỄN SỐ CÓ DẤU DÙNG HỆ BÙ 2 55
4.5 PHÉP CỘNG TRONG HỆ BÙ 2 57
4.6 PHÉP TRỪ TRONG HỆ BÙ 2 58
4.7 CỘNG VÀ TRỪ BCD 58
a) Cộng BCD 58
b) Trừ BCD 59
4.8 CỘNG VÀ TRỪ HEX 59
a) Cộng hai số HEX 59
b) Trừ hai số hex 60
BÀI TẬP CHƯƠNG 2,3 & 4 61
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
CHƯƠNG 1: CẤU TRÚC CƠ BẢN CỦA PHẦN CỨNG &
P
HẦN MỀM MÁY TÍNH
1.1 CÁC THÀNH PHẦN CỦA MÁY TÍNH
Máy tính số (digital computer) hay máy tính (computer) là thiết bò tính toán
điện tử có tốc độ rất cao. Máy tính nhận các thông tin đã được số hóa (digitized), xử lý
chúng theo theo một danh sách các lệnh chứa sẵn bên trong máy tính và cho kết quả là
thông tin ra. Danh sách các lệnh gọi là chương trình máy tính (computer program).
Chương trình máy tính được lưu trữ tại một bộ phận bên trong máy tính gọi là bộ nhớ
(memory).
Có nhiều loại máy tính. Chúng khác nhau về kích thước, tốc độ và giá thành.
Loại máy tính thông dụng nhất là máy tính cá nhân (personal computer - PC). PC được
sử dụng rộng rãi ở nhà, trong các cơ quan hay trường học. Máy tính xách tay
(notebook computer) có kích thước rất bé có thể đặt gọn trong vali. Trạm làm việc
(workstations) là các máy tính trong 1 mạng máy tính. Mainframe và Supercomputer
là những máy tính có công suất tính toán cực mạnh. Mainframe dùng để xử lý các bài
toán trong thương mại. Super computer dùng trong các ứng dụng mà ở đó số phép toán
phải tiến hành trong 1 giây là số rất lớn (cỡ 10
13
phép tính/s) như dự báo thời tiết, điều
khiển các chuyến bay vũ trụ, thiết kế máy bay, nghiên cứu hạt nhân
Ở dạng đơn giản nhất, một máy tính bao gồm 5 thành phần chính độc lập
(hình 1-1): thiết bò nhập (input), thiết bò xuất (output), bộ nhớ (memory), bộ logic số
học (ALU) và bộ điều khiển (Control Unit) .
Hình 1-1 : Các thành phần của một máy tính
CU
ALU
MEMORY
OUTPUT
INPUT
Thiết bò nhập nhận thông tin đã được mã hoá từ các hoạt động của con người,
từ các thiết bò cơ điện (chẳng hạn bàn phím) hay từ một máy tính khác thông qua
đường truyền tin kỹ thuật số. Thông tin nhận được hoặc được lưu trữ trong thiết bò nhớ
để sử dụng sau này hoặc được xử lý trực tiếp để thu được kết quả như mong muốn.
Các bước xử lý thông tin được quy đònh bởi chương trình chứa trong bộ nhớ. Cuối cùng
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
kết quả được gửi trở lại thế giới bên ngoài thông qua thiết bò xuất. Tất cả các hoạt
động trên đây được chỉ dẫn bởi bộ điều khiển.
ALU và CU được chế tạo trong 1 chip gọi là bộ xử lý trung tâm (Central
Processing Unit = CPU) hay đơn giản là Processor. Từ trung tâm xuất hiện vào thời kỳ
đầu mới khai sinh máy tính, ở đó các tính toán đều tập trung trong một chip. Các máy
tính hiện đại thường chứa nhiều Processor, nhưng thuật ngữ CPU vẫn được dùng rộng
rãi. Cũng cần nói thêm rằng, trong PC, Processor được gọi là bộ vi xử lý (Micro
Processor Unit =MPU). Các thiết bò dùng để nhập và xuất dữ liệu được gọi chung là
thiết bò vào ra (IO unit).
Lệnh (Instructions) hay lệnh máy (machine instructions) là chỉ dẫn để:
• Truyền thông tin giữa các máy tính hay trong phạm vi một máy tính và
các ngoại vi của nó.
• Chỉ ra các phép toán logic số học phải thực hiện trên số liệu.
Một tập các lệnh để thực hiện một nhiệm vụ gọi là một chương trình
(program). Thông thường chương trình được lưu trữ trong trong bộ nhớ. Bộ xử lý lấy
(fetches) lệnh từ bộ nhớ. Lệnh phải được giải mã (decoded), sau đó nó được thực hiện.
Máy tính thực hiện các lệnh trong chương trình một cách lần lượt, trừ khi nó bò ngắt
(interrupt) bởi người điều khiển hoặc bởi các thiết bò ngoại vi nối với máy tính.
Dữ liệu (data) là các số hoặc ký tự đã được mã hóa mà nó được dùng như là
các toán hạng (operand) của lệnh. Data bao gồm mọi thông tin đã được số hóa. Đôi
khi data cũng được hiểu là một chương trình hoàn chỉnh mà một chương trình khác sử
dụng nó. Ví dụ khi biên dòch một chương trình nguồn (source program) ngôn ngữ cấp
cao thành chương trình ngôn ngữ máy thì chương trình nguồn được xem là data của
trình biên dòch (compiler).
Thông tin đưa vào máy tính phải được mã hóa ở dạng thích hợp. Các số, các ký
tự hoặc lệnh được mã hóa thành một chuỗi số nhò phân gọi là các bits. Mỗi bit chỉ
nhận một trong 2 giá trò khả dó 0 hoặc 1.
Các ký tự Alphanumeric cũng được biễu diễn bởi mã nhò phân. Mã ký tự dùng
phổ biến trong máy tính là mã ASCII.
a) Thiết bò nhập (input device)
Máy tính nhận thông tin đã được mã hóa thông qua thiết bò nhập. Quá trình này
gọi là đọc số liệu. Thiết bò nhập thường dùng nhất là bàn phím (keyboard). Keyboard
được nối sao cho khi một phím được nhấn, ký tự hoặc số tương ứng được tự động
chuyển thành mã nhò phân và được gửi trực tiếp tới bộ nhớ hoặc vi xử lý. Có nhiều
thiết bò nhập khác như: chuột (mouse), máy quét (scanner), ADC.
b) Bộ nhớ (memory)
Chức năng của bộ nhớ là lưu giữ chương trình và số liệu. Có 2 loại bộ nhớ:
bộ nhớ sơ cấp (bộ nhớ chính – bộ nhớ trong - Primary Memory – Main Memory-
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
Internal Memory) và bộ nhớ thứ cấp (bộ nhớ ngoài - bộ nhớ phụ -Secondary Memory -
Auxiliary Memory - External Memory).
Bộ nhớ sơ cấp hay bộ nhớ chính (Main memory) là bộ nhớ nhanh. Các chương
trình được nạp lên bộ nhớ chính trong khi chúng đang được thực hiện. Bộ nhớ chính
bao gồm một số lớn các ô nhớ bán dẫn. Mỗi ô nhớ chứa được một bit thông tin. Việc
đọc hoặc viết thông thường được tiến hành với nhiều ô nhớ gọi là từ nhớ (memory
word). Bộ nhớ chính được tổ chức sao cho nội dung của một từ (n bit) có thể được truy
xuất bằng lệnh đọc hoặc viết bộ nhớù. Số các bit trên một từ nhớ gọi là độ dài từ (word
length) của máy tính. Độ dài từ của các máy tính có thể là 8,16, 32 hoặc 64 bit.
Tổng số ô nhớ trên bộ nhớ gọi là dung lượng (capacity) của bộ nhớ. Dung lượng
bộ nhớ trong của PC có thể là vài MB đến hàng trăm MB.
Để có thể truy xuất tới mọi từ nhớ trên bộ nhớ, mỗi từ nhớ được gán một đòa
chỉ (Address) riêng biệt. Từ nhớ trong bộ nhớ có thể được truy xuất bằng cách chỉ ra
đòa chỉ và lệnh đọc viết tương ứng. Số liệu được xử lý theo một từ, bội của từ hoặc
một phần của từ. Khi bộ nhớ được truy xuất, thông thường một từ của số liệu được đọc
từ bộ nhớ hoặc được viết vào bộ nhớ.
Chương trình phải nằm trên bộ nhớ khi đang thi hành. Lệnh và số liệu có thể
được viết vào bộ nhớ hay đọc ra dưới sự điều khiển của vi xử lý. Thời gian cần thiết
để truy xuất tới một vò trí nhớ trong bộ nhớ gọi là thời gian truy xuất bộ nhớ
(memory access time = Tacc). Các bộ nhớ có Tacc không phụ thuộc vò trí nhớ gọi là
bộ nhớ truy xuất ngẫu nhiên (Random Access Memories = RAM). Tacc có giá trò vài
chục ns (nano second) trong các máy tính hiện đại.
Mặc dù bộ nhớ chính rất quan trọng, nhưng giá thành lại quá cao. Vì vậy người
ta dùng thêm bộ nhớ phụ (secondary memory) khi muốn lưu giữ một lượng lớn thông
tin không sử dụng thường xuyên. Bộ nhớ phụ có thể là đóa từ (magnetic disks) hay đóa
quang (Compact Disc).
c) Bộ logic và số học (Arithmetic and logic unit - ALU)
Hầu hết các hoạt động tính toán của máy tính được thực hiện tại bộ logic số
học có trong vi xử lý. Giả sử rằng cần phải cộng 2 số trên bộ nhớ chính. Hai số này
phải được chuyển vào ALU, ở đây phép cộng được thực hiện. Kết quả của phép cộng
có thể lưu trữ trong bộ nhớ hoặc vẫn giữ lại trong vi xử lý để sử dụng ngay lập tức .
Mọi phép toán logic và số học, ví dụ: nhân, chia hay so sánh 2 số đều được
thực hiện tại ALU. Không phải tất cả các toán hạng cần cho tính toán phải ở trong bộ
nhớ chính. Vi xử lý có những phần tử nhớ tốc độ cao, gọi là các thanh ghi (registers).
Các thanh ghi được dùng để lưu giữ những toán hạng được dùng thường xuyên trong
khi tính toán . Mỗi thanh ghi có thể lưu giữ một từ số liệu. Thời gian truy xuất thanh
ghi là từ 5 đến 10 ns (nhanh hơn thời gian truy xuất bộ nhớ chính)
ALU và bộ điều khiển thường là các thành phần có tốc độ hoạt động nhanh
hơn các thành phần khác nối với hệ máy tính. Điều này cho phép sử dụng chỉ một vi
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
xử lý để điều khiển một số lớn các thiết bò ngoại vi có tốc độ hoạt động khác nhau
như bộ nhớ ngoài, màn hình, máy in …
d) Thiết bò ra (output device).
Thiết bò ra làm việc theo nguyên tắc ngược lại với thiết bò vào. Chức năng của
thiết bò ra là gửi các kết quả đã được xử lý ra ngoài.
Ví dụ điển hình của thiết bò xuất là máy in (printer). Các kết quả đã được xử lý
bởi CPU có thể được gửi ra ngoài thông qua máy in. Máy in có nhiều kiểu: máy in kim
ma trận điểm, máy in phun mực, máy in laser Công nghệ ngày nay cho phép in
khoảng 15 PPM. Đó là tốc độ rất cao của các hệ thống cơ học tuy nhiên nó vẫn là tốc
độ rất chậm đối với vi xử lý.
e) Bộ điều khiển (control unit - CU)
Bộ nhớ, bộ logic số học và các thiết bò nhập xuất lưu giữ và xử lý thông tin,
thực hiện các tác vụ nhập xuất. Hoạt động của các bộ phận này phải được phối hợp
nhòp nhàng với nhau. Bộ điều khiển có chức năng thực hiện việc phối hợp này. Bộ
điều khiển một mặt gửi các tín hiệu điều khiển đến các bộ phận, mặt khác nó luôn
luôn theo dõi trạng thái của các bộ phận đó để cho những tín hiệu điều khiển hợp lý.
Ví dụ việc chuyển số liệu giữa bộ nhớ và các ngoại vi phải được điều khiển bởi bộ
điều khiển . Bộ điều khiển phải tạo ra tín hiệu thời gian mà nhờ tín hiệu này các hành
động của các bộ phận xảy ra đúng vào thời điểm mong đợi. Có thể nói rằng bộ điều
khiển là một đơn vò độc lập và liên quan đến tất cả các bộ phận khác trong máy.
Trên thực tế, mạch điện của bộ điều khiển được phân bố đến khắp nơi trong máy.
Một tập hợp các đường dây điều khiển (control bus) mang các tín hiệu thời gian. Các
tín hiệu này dùng để đồng bộ hoạt động của tất cả các bộ phận trong máy.
Tóm lại, hoạt động tổng quát của một máy tính có thể tóm tắt như sau:
• Máy tính nhận thông tin dưới dạng chương trình và số liệu thông qua thiết bò nhập.
Thông tin được lưu giữ trong bộ nhớ máy tính.
• Thông tin được lưu giữ trong bộ nhớ được lấy vào ALU dưới sự điều khiển của
chương trình. Tại ALU, thông tin được xử lý.
• Thông tin đã được xử lý được đưa ra ngoài thông qua thiết bò xuất.
• Tất cả các hoạt động bên trong máy tính được chỉ dẫn bởi bộ điều khiển.
1.2 HOẠT ĐỘNG CỦA MÁY TÍNH
Trong phần 1.1 chúng ta đã nói rằng hoạt động của máy tính được điều khiển
bởi các lệnh (instructions). Để thực hiện một nhiệm vụ cho trước, một chương trình
tương ứng bao gồm một tập các lệnh sẽ được lưu giữ trong bộ nhớ chính. Các lệnh
riêng rẽ sẽ được đọc từ bộ nhớ vào vi xử lý. Mỗi lệnh sẽ thực hiện một thao tác đã
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
đònh sẳn . Số liệu lưu giữ trên bộ nhớ được sử dụng như các toán hạng (operands). Ví
dụ lệnh:
ADD AX, LOCA
Lệnh này sẽ cộng toán hạng tại vò trí nhớ (đòa chỉ) LOCA với toán hạng chứa
trong thanh ghi AX (trong vi xử lý), kết quả của phép cộng đặt vào AX. Nội dung ban
đầu của ô nhớ tại vò trí LOCA vẫn giữ nguyên, trong khi đó nội dung ban đầu của
thanh ghi AX bò xoá, thay vào đó là kết quả của phép cộng. Lệnh này phải thực hiện
qua vài bước. Trước tiên lệnh được đọc từ bộ nhớ chính vào vi xử lý. Tiếp theo nội
dung của ô nhớ tại vò trí LOCA được đọc vào ALU rồi cộng với nội dung của AX. Cuối
cùng kết quả của phép cộng được lưu giữ trong thanh ghi AX.
Việc chuyển số liệu giữa bộ nhớ chính và vi xử lý được bắt đầu bằng việc vi xử
lý gửi đòa chỉ của ô nhớ cần truy xuất và tín hiệu điều khiển hợp lý tới bộ nhớ. Số
liệu sau đó sẽ được chuyển giữa bộ nhớ và vi xử lý một cách tương ứng.
Hình 1-2 là sơ đồ nối giữa vi xử lý và bộ nhớ chính. Sơ đồ chỉ có ý nghóa trong
việc mô tả các chức năng của vi xử lý và bộ nhớ .
Cùng với ALU và bộ điều khiển, vi xử lý còn có các thanh ghi dùng cho việc
lưu trữ tạm thời số liệu. Thanh ghi lệnh (IR - Instruction Register) giữ lệnh đang được
thực hiện. Bộ đếm chương trình (PC - Program Counter) chứa đòa chỉ bộ nhớ của lệnh
sẽ được thực hiện. Sau khi thực hiện lệnh, nội dung của PC sẽ được cập nhật tới đòa
chỉ của lệnh tiếp theo. Bình thường nội dung của PC sẽ tăng lên 1 nếu chương trình
không bò một lệnh nhảy hay lệnh ngắt nào khác.
Hình 1-2: Sơ đồ nối giữa CPU và bộ nhớ máy tính
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
Bên cạnh IR và PC còn có n thanh ghi đa chức năng (General Purpose
Register): R
0
, R
1 ,
R
N-1
. Các thanh ghi này được sử dụng vào nhiều mục đích khác
nhau.
Có hai thanh ghi dùng để giao tiếp với bộ nhớ là: Thanh ghi đòa chỉ bộ nhớ
(MAR Memory Address Register) và thanh ghi số liệu bộ nhớ (MDR Memory Data
Register). MAR chứa điạ chỉ của ô nhớ cần truy xuất, còn MDR giữ nội dung của số
liệu cần chuyển ( giữa Vi xử lý và bộ nhớ).
Chúng ta hãy xem xét các bước hoạt động cơ bản khi thực hiện 1 chương trình.
Chương trình chứa trong bộ nhớ chính. Việc thực thi chương trình bắt đầu khi PC chỉ
tới vò trí nhớ mà lệnh đầu tiên của chương trình được lưu giữ. Nội dung của PC được
chuyển tới MAR và một tín hiệu điều khiển đọc được gửi tới bộ nhớ. Sau thời gian
cần cho việc truy xuất bộ nhớ (Tacc), nội dung của từ nhớ (lệnh đầu tiên của chương
trình) được đọc vào MDR. Tiếp theo, nội dung của MDR được chuyển đến IR . Tại
thời điểm này lệnh đã sẳn sàng cho việc giải mã và thực hiện .
Nếu lệnh là một phép toán mà ALU phải tính thì cần phải lấy các toán hạng
cần thiết. Nếu toán hạng đã có sẵn bên trong bộ nhớ (các toán hạng cũng có thể được
chứa trong các thanh ghi dùng chung) thì nó phải được đọc vào ALU bằng cách gửi
đòa chỉ toán hạng tới MAR và khởi tạo chu trình đọc (read cycle). Toán hạng sau đó
được đọc từ bộ nhớ vào MDR rồi chuyển tới ALU. Sau khi một hoặc nhiều toán hạng
được đọc theo cách này, ALU có thể thực hiện phép toán. Nếu kết quả phép toán được
lưu trữ trong bộ nhớ thì nó được gửi tới MDR. Đòa chỉ ô nhớ tại đó kết quả được lưu trữ
sẽ được gửi tới MAR và chu trình viết (write cycle) sẽ được bắt đầu. Trong khi một
lệnh đang được thực hiện, nội dung của PC sẽ tăng lên sao cho nó chỉ tới đòa chỉ của
lệnh kế tiếp. Ngay sau khi lệnh hiện hành được hoàn tất, lệnh mới sẽ được lấy vào vi
xử lý để giải mã và thực hiện.
Cùng với việc chuyển số liệu giữa bộ nhớ chính và vi xử lý, máy tính truy xuất
số liệu từ các thiết bò vào và gửi kết quả đến thiết bò ra. Do đó có một số lệnh máy
cho phép chuyển số liệu vào ra.
Việc thực hiện một chương trình có thể bò ngắt nếu một hoặc nhiều thiết bò
ngoại vi yêu cầu được phục vụ. Tín hiệu ngắt được tạo ra bởi các ngoại vi để yêu cầu
vi xử lý phải phục vụ chúng. Ngắt cũng được tạo ra bởi lệnh INT trong các chương
trình. Vi xử lý sẽ cung cấp một dòch vụ theo yêu cầu bằng cách thi hành một chương
trình con phục vụ ngắt (interrupt service routine). Trước khi phục vụ ngắt, trạng thái
bên trong của vi xử lý phải được cất giữ vào bộ nhớ. Bình thường, nội dung của PC,
các thanh ghi đa chức năng và một số thông tin điều khiển phải được cất giữ. Khi
chương trình con phục vụ ngắt kết thúc, trạng thái của chương trình chính sẽ được
phục hồi sao cho chương trình chính đã bò ngắt có thể tiếp tục.
Bộ vi xử lý trên hình 1-2 có thể thực hiện theo vài cách. Trong các máy tính cở
nhỏ và cở trung, tất cả các thành phần của vi xử lý được chế tạo trên một chip VLSI
(Very Large Scale Intergrated ).
Phan Văn Nghóa Khoa Vật Lý
Kiến trúc máy tính 02
1.3 CẤU TRÚC BUS
Chúng ta đã phân tích các thành phần riêng biệt của máy tính. Để toàn bộ hệ
thống có thể hoạt động được cần phải nối các thành phần ấy lại với nhau. Có nhiều
cách để làm điều này. Chúng ta sẽ xem xét ở đây cách làm đơn giản nhất và cũng
thường dùng nhất.
Để đạt được tốc độ hoạt động cao, máy tính phải được tổ chức sao cho tất cả
các đơn vò được nối song song với nhau thông qua một bus chung của toàn hệ thống
(system bus). Bus là một tập hợp các đường dây dùng để nối các thiết bò với nhau.
Trong kiến trúc máy tính 1 bus, tại một thời điểm chỉ có một thiết bò chiếm quyền điều
khiển bus mà thôi. Khi một từ số liệu được chuyển giữa các đơn vò, tất cả các bit
được chuyển song song (mỗi bit được truyền đồng thời với các bit khác trên những
đường dây riêng). Các đường dây dùng để truyền số liệu gọi là bus số liệu (data bus).
Cùng với bus số liệu còn có các đường dây dùng cho đòa chỉ và điều khiển. Chúng
được gọi tương ứng là bus đòa chỉ (address bus) và bus điều khiển (control bus).
Hình 1-3 là sơ đồ nối các bộ phận của máy tính bằng một bus duy nhất.
Bởi vì bus được dùng chung nên tại một thời điểm chỉ có 2 thiết bò được phép dùng
bus . Ưu điểm chủ yếu của cấu trúc 1 bus là giá thành thấp và nó cho phép nối hệ vi
xử lý máy tính với các ngoại vi một cách mềm dẻo (có thể thêm hoặc bớt dễ dàng).
Hình 1-3: Cấu trúc một bus của máy tính
Các thiết bò ngoại vi nối với bus có thể có tốc độ làm việc rất khác nhau: bàn
phím và máy in tương đối chậm còn các ổ đóa thì nhanh hơn. Vi xử lý và bộ nhớ chính
làm việc với tốc độ rất cao. Vì tất cả các thiết bò liên lạc với nhau thông qua bus, nên
cơ chế truyền thông tin một cách hiệu quả là không cưỡng bức các thiết bò chậm làm
việc nhanh lên mà cần có biện pháp dung hòa sự khác biệt về tốc độ của các thiết bò.
Giải pháp chung là dùng các thanh ghi đệm (buffer registers) để giữ thông tin trong
khi truyền. Để mô tả kỹ thuật này chúng ta hãy xem xét việc truyền các ký tự giữa vi
xử lý và máy in. Vi xử lý gửi các ký tự dọc theo bus tới bộ đệm của máy in. Do thanh
ghi đệm trên máy in có tốc độ rất nhanh nên việc truyền các ký tự giữa vi xử lý và bộ
đệm chiếm rất ít thời gian. Khi bộ đệm máy in đã có số liệu, máy in bắt đầu in. Trong
khi máy in tiến hành in, bus và vi xử lý hoàn toàn rãnh rỗi, lúc này trên bus có thể
Phan Văn Nghóa Khoa Vật Lý
[...]... nghóa là một số thập phân có 2 chữ số biểu thò được 100 giá trò, từ 0 đến 99, một số thập phân có 4 chữ số biểu thò được 1000 giá trò, từ 0 đến 999 Giá trò bằng số của một số thập phân được tính như sau: an-110n-1 + an -2 10n -2 + … + a1101 + a0100 + a-11 0-1 Ví dụ: số 125 = 1x100 + 2x10 + 5x 1 số 45 .2 = 4x10 + 5x1 + 2x10 -1 = 45 .2 Phan Văn Nghóa Khoa Vật Lý Kiến trúc máy tính 02 2.3 HỆ THỐNG SỐ NHỊ PHÂN... 11 bit) F (23 hoặc 52 bit) Giá trò bằng số của số dấu chấm động theo nguyên tắc ẩn số 1 là: V= (-1 )Sx2E- 127 x1.F cho số dài 32 bit V= (-1 )Sx2E-1 023 x1.F cho số dài 64 bit Sau đây là vài ví dụ Ví dụ 1: Số có dấu chấm động 32 bit (-1 )Sx2E- 127 x1.F 1x20x1.0 -1 x20x1.0 1x21x1.5 Floating-point format (Hex) 3F800000 BF800000 40400000 Decimal value +1 -1 +3 Ví dụ 2: Số có dấu chấm động 64 bit Floating-point format(HEX)... lợi hơn dùng hệ nhò phân mặc dù máy tính chỉ có thể làm việc với số nhò phân Có thể biến đổi dễ dàng một số bát phân thành một số thập phân bằng cách nhân các digit với trọng số tương ứng như bảng sau đây 84 83 82 81 80 8-1 8 -2 8-3 Ví dụ: 3 728 = 3x 82 + 7x81 + 2x80 = 3x 64 +7x8 + 2 = 25 010 24 .68 = 2x8 + 4x1 +6x 8-1 = 20 .7510 Phan Văn Nghóa Khoa Vật Lý Kiến trúc máy tính 02 Đổi từ thập phân sang bát phân... của các thừa số là bội số của 2 Căn cứ kết quả có được để viết ra số nhò phân ví dụ : 1010 = 8 + 0 + 2 + 0 = 23 + 0 + 22 + 0 = 101 02 Cách 2: Chia lặp số thập phân cho 2 (cơ số của hệ 2) rồi viết số dư theo trật tự ngược lại ví dụ : 10 :2 = 5 dư 0 LSB 5 : 2 = 2 dư 1 2 : 2 = 1 dư 0 1 : 2 = 0 dư 1 MSB Phan Văn Nghóa Khoa Vật Lý Kiến trúc máy tính 02 Kết quả là 1010 = 101 02 Đối với các số có phần thập phân... 2: Số có dấu chấm động 64 bit Floating-point format(HEX) 3FD000 00 C03E00 00 401C00…00 Phan Văn Nghóa (-1 )Sx2E-1 023 x1.F 1x 2-2 x1.0 -1 x24x1.875 1x22x1.75 Decimal value 0 .25 -3 0 7 Khoa Vật Lý Kiến trúc máy tính 02 2.9 PHƯƠNG PHÁP CHẲN LẺ ( PARITY METHODE ) Có một phương pháp được dùng phổ biến để tìm lổi trong quá trình truyền số liệu là phương pháp chẳn lẻ Người ta thêm 1 bit chẳn lẻ (parity bit) vào... phân chỉ sử dụng 2 số là 0 và 1 để biểu thò các số Một số nhò phân được viết dưới dạng sau: bn-1 bn -2 …b1 b 0 b-1 Các bi gọi là các bit (binary digit) Trong đó bn-1 là bit có trọng số lớn nhất MSB, còn b 0 là bit có trọng số bé nhất LSB Giá trò bằng số của nó trong hệ 10 được tính như sau: bn-12n-1+ bn -2 2n -2 +… +b1 21 + b 0 20 + b- 1 2- 1 Một số nhò phân n bit có thể biểu diễn được 2n giá trò khác nhau... diễn được 16, 32, 64, 28 và 25 6 trạng thái (kể cả trạng thái 0) Bảng sau đây cho thấy 8 số nhò phân đầu tiên: DECIMAL 0 1 2 3 BINARY 000 001 010 011 DECIMAL 4 5 6 7 BINARY 100 101 110 111 Lưu ý rằng các số không nguyên vẫn được biểu diễn như trong hệ 10 Ví dụ: 0. 123 = 1x1 0-1 +2x10 -2 + 3x 1 0-3 trong hệ 10 0.101= 1x 2-1 + 0x2 -2 + 1x 2-3 trong hệ 2 Biến đổi từ thập phân sang nhò phân Có 2 cách biến đổi... quan trọng về phương diện phần cứng vì trong máy tính các mạch logic thường xuyên phải biến đổi từ BCD sang thập phân và ngược lại 2. 7 MÃ ALPHANUMERIC Số liệu và chương trình thường được đưa vào máy tính dưới dạng alphanumeric Có nhiều bộ mã alphanumeric đã được đề nghò và đang được sử dụng rộng rãi trong PC Phan Văn Nghóa Khoa Vật Lý Kiến trúc máy tính 02 0000 0001 0010 0011 0100 0101 0110 0111 1000... (Exclusive - OR) được thực hiện từ các 2 cổng AND, 2 cổng NOT và 1 cổng OR theo sơ đồ nối sau đây: Hình 3-1 1: Sơ đồ nối bên trong cổng XOR Hình 3- 12: Ký hiệu cổng XOR Phan Văn Nghóa Khoa Vật Lý Kiến trúc máy tính 02 Bảng sự thật của XOR như sau A 0 0 1 1 B 0 1 0 1 A+B 0 1 1 1 A⊕B 0 1 1 0 Tính chất của XOR là nếu 2 biến vào giống nhau (cùng bằng 0 hoặc cùng bằng 1) thì lối ra bằng 0, nếu 2 biến vào... dấu bằng 1 là số âm Phan Văn Nghóa Khoa Vật Lý Kiến trúc máy tính 02 • Các bit từ 1 đến 7 là phần đặc trưng (Charateritic) gọi là C Giá trò bằng số thập phân của C là từ 0 đến 127 • Các bit từ 8 đến 31 (trong máy có độ dài từ là 32 bit) và từ 8 đến 63 (trong máy có độ dài từ 64 bit) gọi là phần đònh trò (phần sau dấu chấm) Giá trò bằng số trong hệ 10 được tính như sau: (-1 )S x 16C-64 x Fraction với .
GIÁO TRÌNH
KIẾN TRÚC MÁY TÍNH 02
PHAN VĂN NGHĨA
1998
Kiến trúc máy tính 02
MỤC LỤC
MỤC LỤC 2
CHƯƠNG 1: CẤU TRÚC CƠ BẢN. 8
3
8
2
8
1
8
0
8
-1
8
-2
8
-3
Ví dụ: 3 72
8
= 3x 8
2
+ 7x8
1
+ 2x8
0
= 3x 64 +7x8 + 2 = 25 0
10
24 .6
8
= 2x8 + 4x1 +6x 8
-1
= 20 .75
10
Ngày đăng: 17/02/2014, 15:11
Xem thêm: giáo trình kiến trúc máy tính 2 - phan văn nghĩa, giáo trình kiến trúc máy tính 2 - phan văn nghĩa, 1 CÁC THÀNH PHẦN CỦA MÁY TÍNH, e) Bộ điều khiển (control unit - CU)., 2 HOẠT ĐỘNG CỦA MÁY TÍNH., CHƯƠNG 2: BIỂU DIỄN SỐ LIỆU., 5 HỆ THỐNG SỐ THẬP LỤC PHÂN ( HEXADECIMAL NUMBER SYSTEM)., CHƯƠNG 3 : CỔNG LOGIC & MẠCH SỐ, 13 ĐƠN GIẢN HÀM BOOL BẰNG PHƯƠNG PHÁP ĐẠI SỐ, 16 ĐỒNG HỒ VÀ FF CÓ ĐỒNG HỒ, 17 ỨNG DỤNG CỦA FF., a)Lưu trữ và truyền số liệu:, 2 BỘ CỘNG NHỊ PHÂN., b) Bộ cộng đầy đủ ( Full - adder), 8 CỘNG VÀ TRỪ HEX.