130
Chƣơng 1: Kiến trúc máy vi tính PC và Đơn vị xử lý trung tâm 1. Các thành phần cơ bản của máy tính số 2. Biểu diễn thông tin trong máy tính số 3. Kiến trúc cơ bản máy vi tính PC 4. Đơn vị xử lý trung tâm CPU (Central Processing Unit) 5. Kỹ thuật đƣờng ống và kỹ thuật xử lý song song mức lệnh 1/31

1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

  • Upload
    others

  • View
    8

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Chƣơng 1: Kiến trúc máy vi tính PC và Đơn vị xử lý trung tâm

1. Các thành phần cơ bản của máy tính số

2. Biểu diễn thông tin trong máy tính số

3. Kiến trúc cơ bản máy vi tính PC

4. Đơn vị xử lý trung tâm CPU (Central Processing

Unit)

5. Kỹ thuật đƣờng ống và kỹ thuật xử lý song song mức

lệnh

1/31

Page 2: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.1. Các thành phần cơ bản của máy tính số

- CPU: + Điều khiển quá trình ghi/đọc thông tin lên bộ nhớ

+ Điều khiển quá trình ghi/đọc thông tin lên thiết bị ngoại vi

+ Thực hiện chương trình theo cơ chế tuần hoàn (nhập lệnh – giải mã-thực hiện)

+ Hiểu và thực hiện được 1 tập hữu hạn các phép toán (nhờ vào ALU)

Gồm 3 tp chính: Thanh ghi + CU + ALU

2/31

Page 3: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Bộ nhớ ROM-RAM

Nội dung chứa: Đặc điểm

- ROM (read only memory):

+ Đặc điểm: thao tác đọc; không mất tt khi mất nguồn nuôi; truy xuất chậm hơn RAM.

+ Nội dung: - chương trình kiểm tra cấu hình hệ thống (Post)

- Chương trình xác lập cấu hình hệ thống

- Chương trình tìm cung đĩa khởi động hệ thống

- Chương trình vào/ra cơ bản (BIOS)

- Quét Rom mở rộng.

- Ram (random access memory):

+ Đặc điểm: ghi/đọc; mất thông tin khi mất nguồn nuôi.

+ Nội dung: Chứa các chương trình của HĐH, và các chương trình ứng dụng đang chạy

hiện thời.

- Bộ nhớ ngoài (ổ cứng, usb, cd, ổ cứng di động,…)

- Cache:

3/31

Page 4: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.1. Các thành phần cơ bản của máy vi tính (tiếp)

• Thiết bị ngoại vi: Thiết bị vào-Thiết bị ra

Thiết bị vào: nhập thông tin cho máy tính xử lý

Vd: cd/usb/chuột/bàn phím/màn hình cảm ứng,..

Thiết bị ra: hiển thị thông tin

Vd: máy chiếu, màn hình, máy in,…

• Khối phối ghép vào/ra (thiết bị giao diện):

Kết nối thiết bị ngoại vi với máy tính

Vì: Tốc độ + Dạng thức thông tin

Vd: CRTC, KC8042, HDC, PPI, UART, USB,…

• Hệ thống bus: gồm 3 loại (Dữ liệu + điều khiển + địa chỉ)

Dữ liệu + điều khiển: 2 chiều

Địa chỉ: 1 chiều (chiều đi ra so với CPU)

4/31

Page 5: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.2. Biểu diễn thông tin trong máy tính số

Để biểu giá trị của một số N bất kỳ ta dùng ký pháp vị trí như sau:

anan-1….a1a0a-1a-2…a-(m-1)a-m=an*bn+an-1*bn-1+…+a1*b1+a0*b0+a-1*b-1+a-2*b-2 +…+a-(m-

1)*b-(m-1)+a-m*b-m

Trong đó:

b : là cơ số ;

bn-1,…,b2,b1,b0,b-1,b-2,…,b-(m-1),b-m là các trọng số.

an , an-1,an-2,…,a1,a0,a-1,a-2,…a-(m-1),a-m : là các số nằm ở vị trí tương ứng với trọng

số

Hiện nay có 4 hệ đếm hay được dùng trong những bài toán liên quan đến máy tính

đó là :

Hệ mười (decimal) b=10 a={0,1,2,3,4,5,6,7,8,9}

Hệ nhị phân (binary) b=2 a={0,1}

Hệ tám (octal) b=8 a={0,1,2,3,4,5,6,7}

Hệ mười sáu (hexaldecimal) b=16 a={0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F}

5/31

Page 6: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.1. (tiếp)

ABCD=1010 1011 1100 1101

78 1011

79 1101

157 11000

Vd: chuyển số 16(10)=?(2)

2^4=16

1 0 0 0 0 = 1*2^4 + 0*2^3+0*2^2+0*2^1+0*2^0

Vd: 25 (10)=?(2)

25- 2^4=9

9-2^3=1

1-2^0

1 1 0 0 1

6/31

Page 7: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2. Biểu diễn thông tin trong máy tính số (tiếp)

Các phép toán đối với các số nhị phân: Cộng, trừ, nhân, chia.

Biểu diễn số nguyên không dấu:

Số bit Khoảng giá trị

n bit: 0 2n - 1

8 bit (Byte) 0255

16 bit(Word) 065535

Biểu diễn số nguyên có dấu:

Các số nguyên có dấu dùng bit tận cùng bên trái làm bit dấu : bit bằng 0 biểu diễn cho

dấu (+) và bằng 1 cho dấu (-). Một cách tổng quát ta có

Số bit Khoảng giá trị

n bit: -(2n-1) +(2n-1-1)

8 bit -128 +127

7/31

Page 8: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Biểu diễn số nguyên có dấu trong máy tính

Một số nguyên âm: sẽ được biểu diễn theo mã số bù 2 của

số nguyên dương tương ứng.

Ví dụ : +2510 = 000110012 +6510=0100 00012

Số bù 2 của -2510 = 111001112 -6510=1011 1111

Số bù 2 của một số nhị phân được tạo ra bằng cách lấy 1

trừ mỗi chữ số và cộng 1 vào chữ số có ý nghĩa thấp

nhất của số vừa được tạo ra. Phương pháp tạo số bù 2

của một số trên thực tế đuợc thực hiện bằng cách đổi số

0 thành số 1, đổi số 1 thành số 0 và cộng 1 vào chữ số

có ý nghĩa thấp nhất của số vừa được tạo ra.

Hay số biểu diễn ở dạng bù 2 là số biểu diễn ở bù 1 rồi

sau đó cộng thêm 18/31

Page 9: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Biểu diễn số thực trong máy tính

Biểu diễn số có dấu chấm cố định

Biểu diễn số có dấu chấm động:

± Định trị *Cơ số± số mũ

Giá trị dấu chấm động được biểu diễn ở dạng mã nhị phân tuân theo chuẩn IEEE754

Dạng đơn giản : Số dấu chấm động được lưu trữ dưới dạng dữ liệu 32bit :

Dữ liệu này biểu diễn giá trị : V=(-1)S*2E-127*1.F

V : giá trị của số dấu chấm động

S : bit dấu

E : Số nguyên nhị phân

F : Phần sau dấu chấm nhị phân (dạng mã nhị phân). Phần định trị có dạng

1.F

Dạng độ chính xác gấp đôi : Giá trị dấu chấm động độ chính xác gấp đôi được

lưu trữ dưới dạng dữ liệu 64bit :

Dữ liệu này biểu diễn giá trị : V=(-1)S*2E-1023*1.F

1 10000001 110100000000000000000009/31

Page 10: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

1026,025(10)=?(2/8/16)

111001+11110(2)=

11011-1000(2)=

ABCDF-BBCDE (16)=

ABCFF + FFFF=

1 1 1 1

A B C D E

A B C D E

1 5 7 9 B C

Biểu diễn giá trị sau sang dạng dấu chấm động 32bit: 101010,0011

Chuyển sang hệ bù 2: 01011001 11011001

10/31

ABCFF

FFFF

BBCFE

Page 11: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Biểu diễn số thực trong máy tính

Ví dụ các bước biến đổi số thập phân -12.62510 sang số chấm động

chuẩn IEEE 754 chính xác đơn (32 bit):

Bước 1: Đổi số -12.62510 sang nhị phân: -12.62510 = -1100.1012.

Bước 2: Chuẩn hoá: -1100.1012 = -1.1001012 * 23 (Số 1.1001012

dạng 1.f)

Bước 3: Điền các bit vào các trường theo chuẩn:

Số âm: bit dấu S có giá trị 1. Phần mũ E với số thừa K=127, ta có: E-

127=3

⇒ E = 3 + 127 = 130 (1000 00102).

11/31

Page 12: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.3. Kiến trúc cơ bản máy vi tính PC

12/31

Page 13: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

4. Đơn vị xử lý trung tâm CPU-Central Processing Unit

1.4.1 Cấu hình bên ngoài:

Page 14: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

4. Đơn vị xử lý trung tâm CPU-Central Processing Unit

1.4.2 Cấu trúc bên trong

14/31

AU- Đơn vị địa chỉ

IU- Đơn vị lệnh

Page 15: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.3. Quản lý bộ nhớ trong chế độ thực

- Bô nhơ được quản ly theo cơ chê phân đoạn.Đoạn nhơ sẽ mang tên của loại modul nó

chứa. Môi đoạn có kích thước 64KB.

- Tồn tại 4 loại đoạn:

CS (code segment): Quản ly mã lệnh của ctrình

DS(data segment): Quản ly dư liệu của chương trình

SS (stack segment): Quản ly thông tin liên quan tới chương trình con.

ES (Extra segment): Quản ly dư liệu mơ rộng (ví dụ: chuôi, mảng,…)

- Môi đoạn được gán 1 địa chỉ (địa chỉ đoạn) va được quản ly thông qua các thanh ghi

đoạn tương ứng: CS-CS; DS-DS; SS-SS; ES – ES.

- Các ô nhơ trong đoạn được quản ly thông qua địa chỉ offset (đô lệch so với ô nhơ đầu đoạn)

Ô nhơ trong bô nhơ được quản ly thông qua 2 tham sô là địa chỉ đoạn va địa chỉ offset.

Được biểu diễn theo định dạng Địa chỉ đoan: địa chỉ offset (gọi là địa chỉ logic của

ô nhơ)

-Chuyển đổi tư địa chỉ logic sang địa chỉ vật ly: Địa chỉ vật ly=Địa chỉ đoan * 10 + địa

chỉ offset

15/31

Page 16: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.3. Quản lý bộ nhớ trong chế độ thực (tiếp)

Vd: cho địa chỉ logic của ô nhớ là: ABCD:ABCD

Hãy tính địa chỉ vật lý?

KQ= ABCD *10 + ABCD

B689D: ABCD: ABCD

B010:679D

16/31

Page 17: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.3. Quản lý bộ nhớ trong chế độ thực (tiếp)

:

-

17/31

Đoan dữ liệu 64k

Nền đoan mã lệnh

Đoan mã lệnh 64K

Nền đoan dƣ liệu

Đoan dƣ liệu 64K

Nền đoan mơ rộng

Đoan mơ rộng 64K

Nền đoan ngăn xếp

Đoan ngăn xếp 64K

Địa chỉ cao

Page 18: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

4. Đơn vị xử lý trung tâm CPU-Central Processing Unit

+ Các đoạn không được xếp tuần tự nhau mà được xếp chồng gối lên nhau

+ Khoảng cách tối thiểu của môi đoạn là cách nhau 16 ô nhớ hay cách nhau

16bytes.18/31

Page 19: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4. Đơn vị xử lý trung tâm CPU-Central Processing Unit

1.4.4. Các thanh ghi:

Nằm trong CPU có tốc độ truy cập nhanh, dùng để chứa các toán hạng

của lệnh, các kết quả tạm thời của các quá trình tính toán

Các thanh ghi đa năng AX, BX, CX, DX :

- 16 bit, được dùng để chứa các toán hạng của lệnh hoặc các kết quả của

phép tính .

- Có thể truy nhập từng thanh ghi này như là các thanh ghi 16 bit AX,

BX, CX, DX hoặc như các thanh ghi 8 bit.

19/31

Page 20: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.4. Các thanh ghi

20/31

Page 21: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.4. Các thanh ghi

Chức năng riêng:

AX: Khi gọi các hàm chức năng của hệ điều hành qua lệnh INT, thanh ghi AX

hoặc AH được dùng để chứa con số xác định một chức năng cụ thể cần thực hiện

của hàm này.

VD : INT 21 thực hiện hàm 5B- Tạo tập tin mới thì AH=5B

BX (Base): Khi thực hiện các lệnh truy nhập đoạn dữ liệu, BX được dùng để xác

định địa chỉ offset hoặc địa chỉ offset nền của ô nhớ trong đoạn.

CX (Counter): Khi thực hiện các lệnh LOOP hoặc REP, CX đóng vai trò một

bộ đếm (chứa số đếm), xác định số lần thực hiện lặp.

VD : Để lặp 1 vòng n lần CX=n. Giá trị này được giảm đi 1 khi thực hiện song

1 lần lặp và cứ tiếp tục như vậy cho tới khi CX=0 thì kết thúc.

DX (Data) : Được dùng để chứa hai byte cao kết quả phép nhân hoặc phần dư của

phép chia 16 bit. Khi truy nhập các cổng vào/ra có địa chỉ lớn hơn 255, DX được

dùng để chứa địa chỉ (xác định địa chỉ) các công này.

VD : DX=378H là địa chỉ của cổng máy in

21/31

Page 22: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Các thanh ghi địa chỉ BP, SI, DI, SP: là các thanh ghi 16 bit

BP (Base Pointer): chứa địa chỉ offset hoặc địa chỉ offset nền của

ô nhớ khi thực hiện các lệnh truy nhập các đoạn dữ liệu,

ngăn xếp.

SI (Source Index) : chứa địa chỉ offset hoặc một phần của địa chỉ

offset khi truy nhập đoạn dữ liệu.

DI (Destination Index) : Chứa địa chỉ offset hoặc một phần của địa

chỉ offset khi truy nhập đoạn dữ liệu, đoạn dữ liệu mở rộng.

(ES: DI khi thực hiện lệnh thao tác xâu).

SP (Stack Pointer) : chứa địa chỉ offset của ô nhớ trong đoạn ngăn

xếp. SP luôn trỏ đến đỉnh ngăn xếp

22/31

Page 23: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

Hãy xác định các cặp địa chỉ logic đúng/sai sau đây:

CS:IP CS:DI CS:SP CS:BP CS:SI CS:BX

DS:IP DS:DI DS:SP DS:BP DS:SI DS:BX

SS:IP SS:DI SS:SP SS:BP SS:SI SS:BX

ES:IP ES:DI ES:SP ES:BP ES:SI ES:BX

23/31

Page 24: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thanh ghi cờ

- CF (Carry Flag) : nhớ từ bit cao nhất khi thực hiện phép tính thì CF = 1.

- PF (Parity Flag) : Nếu lượng các bit 1 trong kết quả chẵn thì PF=1.

- AF(Auxiliary Flags) : sử dụng trong các phép tính số học với các số BCD (Binary Cođe Decimal).

Nếu có nhớ hay có mượn đối với 4 bit thấp thì AF= 1

- ZF (Zero Flag) : Nếu kết quả phép tính bằng không thì ZF = 1.

- SF (Sign Flag): Nếu kết qủa âm (bít cao nhất của kết quả có giá trị 1) thì SF =1

- TF (Trap Flag) : cờ bẫy ; Nếu TF = 1, CPU được đặt ở chế độ chạy từng lệnh phục vụ hiệu chỉnh

chương trình (debug). Trong chế độ này môi lệnh khi được thực hiện xong sẽ gây ra một ngắt logic

(ngắt 01H) kích hoạt chương trình hiệu chỉnh.

- IF (Interrupt Flag) : cờ ngắt ; Nếu IF = 1, cho phép CPU phản ứng với tín hiệu báo ngắt INT.

- DF (Direction Flag): cờ hướng ; DF xác định hướng tăng hoặc giảm của các thanh ghi SI. DI khi

thực hiện các lệnh thao tác xâu ký tự.

Nếu DF = 1 thì SI và DI giảm.

Nếu DF = 0 thì SI và DI tăng

- OF (Overflow Flag) : cờ tràn ; OF được dùng trong các phép tính số học dấu chấm động. OF = 1

nếu kết quả quá lớn hoặc quá nhỏ, vượt quá khả năng biểu diễn của máy tính (bị tràn).

- Hai cờ NT và IOPL (I/O Privilege Level) chỉ được dùng trong chế độ bảo vệ

24/31

Page 25: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

Thực hiện các phép toán sau:

1111+ 1101 1101-1111

10101010 chứa trong AL + 10101011 chứa trong BL sau khi

thực hiện phép toán kết quả được chứa trong AL.

Hãy cho biết những bit cờ nào bị tác động

25/31

Page 26: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

CPU 80286 còn có các thanh ghi khác nhƣ sau : (Hoạt động

trong chế độ bảo vệ)

- Thanh ghi nhiệm vụ TR (Task Register)

- Thanh ghi bảng mô tả cục bộ LDT (Local Descriptor Table)

- Thanh ghi bảng mô tả ngắt IDT (Interrupt Descriptor Table)

- Thanh ghi bảng bộ mô tả toàn cục GDT (Global Descriptor

Table)

- Thanh ghi từ trạng thái máy MSW (Machine Status Word).

26/31

Page 27: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Quản lý bộ nhớ trong chế độ bảo vệ

Mục đích

• + Cách ly và bảo vệ hệ điều hành khỏi các truy nhập trái phép của chương trình ứng dụng.

• + Cách ly và bảo vệ chương trình ứng dụng này khỏi sự truy nhập trái phép của chương trình ứng dụng khác.

1.4.5.1. Các mức đặc quyền và luật về quyền truy nhập

Các mức đặc quyền (ký hiệu là PL - Privilege Level): 4 mức.

+ Đặc quyền mức PL = 0 (max): gắn cho các chương trrình quản lý thiết bị và quản lý bộ nhớ.

+ Đặc quyền mức PL = 1: được gắn cho các chương trình thiết lập mức ưu tiên giữa các nhiệm vụ, chương trình hoàn

đổi dữ liệu giữa bộ nhớ chính và bộ nhớ thứ cấp (đĩa từ, chương trình quản lý các cổng vào/ra và các dịch vụ hệ thống

khác.

+ Đặc quyền mức PL = 2: được gắn cho các chương trình quản lý tệp, thư mục và các chức năng mở rộng của hệ điều

hành.

+ Đặc quyền mức PL = 3(min) :được gán cho các chương trình ứng dụng.

Các luật về quyền truy nhập: luật về quyền truy nhập xác định quy tắc truy nhập đoạn nhớ.

Luật 1:

Dữ liệu được lưu trữ trong đoạn nhớ coa mức đặc quyền PL = P chỉ có thể bị truy nhập bởi mã lệnh có mức đặc quyền bằng

hoặc cao hơn P (CPL <= DPL, CPL là mức đặc quyền của nhiệm vụ đang thực hiện, DPL là mức đặc quyền của đoạn dữ

liệu bị truy nhập).

Luật 2:

Đoạn mã lệnh có mức đặc quyền PL = P có thể bị gọi hoặc truy nhập bởi nhiệm vụ có mức đặc quyền bắc hoặc thấp

hơn P. đoạn mã lệnh có mức đặc quyền thấp có thể gọi hoặc truy nhập đoạn mã lệnh có mức đặc quyền cao hơn

thông qua cổng gọi. 27/31

Page 28: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

Cho chương trình A,B,C,D được gán mức đặc quyền lần lượt là 3,0,1,2.

Hãy cho biết những chương trình nào được truy nhập tới đoạn dữ liệu/mã

lệnh của chương trình A.

28/31

Page 29: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.5.2. Quản lý bộ nhớ theo phân đoan trong chế độ bảo vệ

Các đoạn nhớ trong chế độ bảo vệ được quản lý theo ba thông số:

+ Địa chỉ nền

+ Giới hạn đoạn

+ Quyền truy nhập.

Gọi là bộ mô tả đoan

Có ba loại bảng bộ mô tả.

- Bảng bộ mô tả toàn cục GDT (bảng GDT - Global Descriptor Table): Quản lý các đoạn

(các vùng nhớ) chứa các chương trình của hệ điều hành và dữ liệu của hệ thống (các vùng

nhớ chứa các thông tin có tính chất toàn cục, thuộc không gian nhớ toàn cục). Các chương

trình ứng dụng có thể truy nhập vùng nhớ này.

+ Bảng bộ mô tả cục bộ LDT (bảng LDT - Local Desriptor Table): quản lý các vùng nhớ

thuộc một nhiệm vụ (các vùng nhớ chứa các thông tin có tính chất cục bộ, thuộc không gian

nhớ cục bộ). Các bảng LDT thuộc GDT.

+ Bảng bộ mô tả ngắt (bảng IDT - Interrupt Descriptor Table): chứa các bộ mô tả trỏ đến 256

chương trình phục vụ ngắt. Bảng IDT đóng vai trò bảng vectơ ngắt, trong đó môi véc tơ ngắt

là một bộ mô tả.

Tất cả các Bảng bộ mô tả đều nằm trong bộ nhớ chính

29/31

Page 30: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Bộ chọn đoan 16 bits

Bộ chọn đoạn có ba phần :

30/31

+ Phần Index: 13 bít, dùng để xác định

vị trí của Bộ mô tả đoạn, tính từ nền

của Bảng bộ mô tả.

+ TI : xác định loại Bảng bộ mô tả cần

truy nhập.

TI = 1 truy nhập các bảng LDT

TI = 0 truy nhập bảng GDT

+ RPL (Requested Privilege Level) :

mức đặc quyền yêu cầu. Mức đặc

quyền RPL được sinh ra bởi người nạp

bộ chọn đoạn

Page 31: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Bộ mô tả đoan

Trường địa chỉ nền đoạn (24 bít : A23 - A0) xác định địa chỉ

nền của đoạn. ở hệ 16 bít thì địa chỉ này cũng là địa chỉ vật lý nền

của đoạn. Trường giới hạn đoạn (16 bit : L15 - L0) xác định kích

thước của đoạn từ 1 byte đến 64Kb).

VD: Cho bộ mô tả đoạn có giá trị: AABBAABBAABBAABBh

Hãy cho biết địa chỉ nền đoạn có giá trị=?

Kích thước đoạn có giá trị=?

31/31

Page 32: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Lƣợc đồ truy nhập đoan nhớ nhờ Bộ chọn đoan và Bộ mô tả đoan :

• Trong chế độ bảo vệ CPU 80286 có thể quản lý được bộ nhớ kích

thước: 2*213*216 = 230 = 1 Gbyte

32/31

Page 33: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

Tìm giá trị của bộ chọn đoạn, tìm địa chỉ vật lý của ô nhớ CPU

cần truy xuất thỏa mãn các điều kiện sau:

- CPU truy xuất bảng GDT

- Chương trình được gán mức đặc quyền yêu cầu là: 1

- Vị trí bộ mô tả đoạn được chọn ra là: 1111000010101

- Địa chỉ nền đoạn=ABCDEFh

- Cho địa chỉ offset của ô nhớ trong đoạn là BX=1234h.

33/31

Page 34: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

Cho địa chỉ offset BX=ABCDh

Bộ mô tả đoạn lấy ra có giá trị: ABCDABCDABCDABCDh

Hãy tính toán địa chỉ vật lý của ô nhớ lấy ra trong đoạn dữ liệu?

KQ=CDABCD+ABCD= CE

C D A B C D

A B C D

C E 5 7 9 A

34/31

Page 35: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Cơ chế truy nhập bộ nhớ (ô nhớ) qua bảng GDT

• Bảng GDT được hệ điều hành tạo ra khi khởi động hệ thống và được quản lý bằng thanh ghi

GDTR.

• Khi có yêu cầu truy nhập đoạn, người yêu cầu cung cấp Bộ chọn đoạn, CPU thực hiện

thao tác kiểm tra quyền truy nhập đoạn trước khi cho truy nhập.

35/31

Page 36: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

kiểm tra quyền truy nhập đoan

Khi truy nhập đoan dữ liệu:

EPL = max (CPL, RPL) <= DPL

+ CPL là mức đặc quyền của nhiệm vụ đang thực hiện

+ RPL là mức đặc quyền yêu cầu và là mức đặc quyền của bộ chọn. Mức đặc

quyền RPL được sinh ra bởi người nạp bộ chọn đoạn.

+ EPL là mức đặc quyền hiệu dụng.

+ DPL là mức đặc quyền của đoạn bị truy nhập

Khi truy nhập đoan mã lệnh: ngược lại với điều kiện của đoạn dữ liệu

36/31

Page 37: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Cơ chế chuyển điều khiển và gọi chƣơng trình con trong chế độ bảo vệ

Việc chuyển điều khiển xẩy ra khi thực hiện các lệnh nhảy (lệnh JMP) hoặc

lệnh gọi chương trình con (lệnh CALL).

trong cùng đoạn mã lệnh của nhiệm vụ đang chạy (lệnh nhảy ngắn, lệnh gọi ngắn).

Khi thực hiện lệnh nhảy gần (NEAR JUMP), con trỏ lệnh IP được nạp giá trị mới.

Chương trình tiếp tục được thực hiện từ vị trí mới do IP trỏ đến.

Khi thực hiện lệnh gọi gần (NEAR, CALL), bộ xử lý trung tâm thực hiện các thao

tác sau:

+ Cất giá trị hiện thời của IP vào ngăn xếp.

+ Nạp địa chỉ offset của chương trình con được gọi (đich) vào IP.

+ Thực hiện chương trình con (đích).

37/31

Page 38: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Cơ chế chuyển điều khiển và gọi chƣơng trình con trong chế độ bảo vệ

Trường hợp chuyển điều khiển đến những đoạn mã lệnh

khác khi thực hiện lệnh gọi xa (FAR CALL) thì có hai tình

huống:

Đoạn mã lệnh đích có mức đặc quyền thấp hơn hoặc bằng

mức đặc quyền của đoạn mã lệnh nguồn hiện tại. Khi đó bộ xử lý

trung tâm thực hiện các thao tác sau:

+ Cất giá trị hiện thời của CS và IP vào ngăn xếp.

+ Nạp bộ chọn đoạn mã lệnh chứa chương trình con (đích) vào CS

+ Nạp địa chỉ offset của chương trình con (đích vào IP

+ Thực hiện chương trình đích

Lệnh RET cho phép rời khỏi chương trình con để trở về chương

trình gọi nó

38/31

Page 39: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Cơ chế chuyển điều khiển và gọi chƣơng trình con trong chế độ bảo vệ

Đoạn mã lệnh chương trình con (đích) có mức đặc quyền cao hơn mức đặc quyền của

đoạn mã lệnh nguồn hiện tại. Khi đó việc gọi chương trình con (đích) phải thực hiện

qua cổng gọi. Bộ chọn đoạn lúc này không trỏ đến bộ mô tả đoạn mã lệnh chứa chương

trình con (đích), mà trỏ đến cổng gọi (bộ mô tả cổng gọi). Cổng gọi trỏ đến bộ mô tả đoạn

mã lệnh của chương trình con (đích), cổng gọi cũng chứa địa chỉ offset bắt đầu chương

trình con (đích), qua đó gọi được chương trình con (đích). Bộ xử lý trung tâm thực hiện

quá trình này như sau:

+ Tạm lưu giữ nội dung CS, IP, SS, SP hiện thời (thuộc chương trình nguồn).

+ Nạp bộ chọn cổng gọi và kiểm tra quyền truy nhập.

+ Cất giữ giá trị tạm lưu của SS và SP nguồn vào ngăn xếp đích

+ Chuyển các tham số từ ngăn xếp nguồn sang ngăn xếp đích

+ Cất giữ giá trị tạm lưu của CS và IP nguồn vào ngăn xếp đích.

+ Nạp bộ chọn bộ mô tả đoạn mã lệnh đích và địa chỉ offset (lấy từ cổng gọi), qua đó nạp bộ

mô tả đoạn mã lệnh đích.

+ Thực hiện chương trình con (đích).

Khi bộ xử lý trung tâm gặp lệnh RET thì việc trở về chương trình nguồn được thực

hiện bắt đầu bằng việc kiểm tra quyền truy nhập, sau đó là khôi phục nội dung các thanh

ghi CS, IP, SS, SP theo một trình tự ngược lại.39/31

Page 40: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.6. Cơ chế đa nhiệm

40/31

Page 41: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.7 Các chế độ xác định địa chỉ toán hạng

Cấu trúc lệnh:

Mã lệnh: là phần chứa thông tin xác định các thao tác hoặc

công việc cần được thực hiện.

Phần địa chỉ: là phần thông tin xác định nơi chứa toán hạng.

Các nơi có thể chứa toán hạng:

+ Tức thời trong lệnh (giá trị toán hạng nằm ngay trong lệnh).

+ Các thanh ghi của CPU.

+ Bộ nhớ.

41/31

Page 42: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.7 Các chế độ xác định địa chỉ toán hạng

Có ba nhóm chế độ định vị toán hạng

+ Định vị tức thời

+ Định vị thanh ghi

+ Định vị bộ nhớ.

- Định vị trực tiếp

- Định vị gián tiếp.

- Định vị cơ sở

- Định vị chỉ số

- Định vị cơ sở chỉ số

- Định vị đầy đủ.

42/31

Page 43: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.7 Các chế độ xác định địa chỉ toán hạng

Định vị tức thời: Dữ liệu nằm ngay trong câu lệnh

Ví dụ: MOV AX. 0F000h: đưa giá trị F000h vào AX

- Định vị thanh ghi: Các thanh ghi đa năng, các thanh ghi địa chỉ hoặc các thanh ghi đoạn

của CPU là nơi chứa dữ liệu.

Ví dụ: MOV AX. BX: đưa giá trị ở BX vào AX

- Định vị bộ nhớ: Phương pháp định vị bộ nhớ cho phép xác định địa chỉ offset (địa chỉ

lệch) của ô nhớ chứa toán hạng, ô nhớ mặc định nằm trong đoạn dữ liệu.

Có các phương pháp định vị bộ nhớ sau:

- Định vị trực tiếp

- Định vị gián tiếp.

- Định vị cơ sở

- Định vị chỉ số

- Định vị cơ sở chỉ số

- Định vị đầy đủ.

43/31

Page 44: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.7 Các chế độ xác định địa chỉ toán hạng

Định vị trực tiếp: Địa chỉ ô nhớ chứa dữ liệu nằm ngay trong lệnh.

Địa chỉ offset = [giá trị cụ thể]

VD: MOV AX, [1000h]: Đưa nội dung ô nhớ có địa chỉ

DS: 1000h vào AX

Định vị gián tiếp (thanh ghi): Các thanh ghi BX, BP, SI, DI, SP là nơi chứa

địa chỉ offset của ô nhớ chứa dữ liệu.

VD: MOV AX, [BX] ;

Trong đó [BX]: = 1000h : lệnh thực hiện đưa nội dung ô nhớ có địa chỉ

DS:1000h vào AX..

44/31

Page 45: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.7 Các chế độ xác định địa chỉ toán hạng

Định vị cơ sở :

Ví dụ: MOV AX, [BX + 10h] ;

Trong đó [BX] = 1000h, lệnh thực hiện đưa nội dung ô nhớ có địa chỉ

DS:1010h vào AX.

Định vị chỉ số :

45/31

Page 46: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.4.7 Các chế độ xác định địa chỉ toán hạng

Định vị cơ sở chỉ số :

Ví dụ: MOV AX, [BX + SI] ; trong đó [BX] =1000h, [SI] =10h. Lệnh

thực hiện đưa nội dung ô nhớ có địa chỉ DS:1010h vào AX.

Định vị đầy đủ : Địa chỉ offset= [Thanh ghi cơ sở + Thanh ghi chỉ số +

khoảng dịch].

46/31

Page 47: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Bài tập

Hãy cho biết ý nghĩa từng câu lệnh và chế độ định vị toán hạng

nguồn cho các câu lệnh ASM sau:

1. Mov AX,1000H; 10. Mov AX,[BX+SI];

2. MOV AX, [BX];

3. MOV [1000H],AX;

4. MOV AX,[1000H];

5. MOV AX,[CX]

6. MOV AX, CX;

7. MOV AX, [SI+30H];

8. MOV BX,[BP+03H];

9. MOV DX,[BX+DI+01H];47/31

Page 48: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.5. Kỹ thuật đƣờng ống và kỹ thuật xử lý song song mức lệnh

Việc thi hành một lệnh mã máy thường được chia thành 5 giai đoạn:

1. Nhập lệnh (FI Fetch the Instruction)

2. Giải mã lệnh (DI Decode the Instruction)

3. Tạo địa chỉ toán hạng (GOA Generate Operand Address)

4. Nhập toán hạng (FO Fetch Operands)

5. Thực hiện lệnh (EI Execute Instruction)

Theo cách thông thường: thường là sau 5 chu kỳ máy, rồi mới chuyển

sang nhập và thực hiện lệnh tiếp theo

Để tăng tốc độ xử lý lệnh mà không nhất thiết phải tăng tần số nhịp

của máy, người ta sử dụng các kỹ thuật khác như kỹ thuật xử lý lệnh

kiểu đường ống (Pipeline) và kỹ thuật xử lý lệnh song song (ILP).

48/31

Page 49: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.5.1. Kỹ thuật xử lý lệnh kiểu đường ống (Pipeline)

Đường ống tương tự như dây chuyền sản xuất nhiều công đoạn. Sản phẩm được chuyển và

hình thành dần sau môi công đoạn.

Với một đường ống 5-giai đoạn, tại môi chu kỳ máy có 5 bộ dữ liệu thuộc 5 giai đoạn khác

nhau được gửi vào đường ống và thực hiện đồng thời tính từ khi thực thi xong lệnh đầu

tiên thì sau môi chu kỳ máy lại có một lệnh được hoàn thành và một lệnh mới được nhập.

Ưu điểm: cho phép tăng tốc độ thực hiện lệnh lên gấp nhiều lần: So sánh với kiểu xử lý tuần

tự thông thường, 5 lệnh được thực hiện trong 25 chu kỳ xung nhịp, còn theo kỹ thuật

đường ống chỉ trong 9 chu kỳ xung nhịp.

Nhược điểm: Xảy ra hiện tượng thải nạp đường ống ko hiệu quả

49/31

Page 50: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

VD:

1- a=2

2- b=3

3- c=a+b

4- d=4

5- e=d*a

6- f=7

.....

50/31

Page 51: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

1.5.2. Kỹ thuật ILP (xử lý song song mức lệnh)

Kỹ thuật ILP là kỹ thuật thiết kế đơn vị xử lý trung tâm và chương trình dịch

nhằm làm tăng tốc độ các thao tác máy, thực hiện các phép tính.

Trong các kỹ thuật ILP có kỹ thuật superscalar, trong đó tại một chu kỳ máy,

nhiều lệnh được nhập và được thực hiện đồng thời trên nhiều đường ống khác

nhau.

Pentium là loại đơn vị xử lý trung tâm được thiết kế theo kỹ thuật superscalar,

trong đó hai lệnh được nhập và giải mã đồng thời. Pentium có hai đường ống thực

hiện lệnh song song U và V. Quá trình thực hiện lệnh được mô tả như sau :

51/31

Chu kỳ 1 2 3 4 5 6 7

FI DIGOA FO EI

GOA FO EI

FI DIGOA FO EI

GOA FO EI

FI DIGOA FO EI

GOA FO EI

Page 52: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Chƣơng 2: Tổ chức bộ nhớ trong máy vi tính PC

2.1. Tổ chức bộ nhớ theo phân cấp

2.2. Tổ chức cache

2.3 Tổ chức quản lý bộ nhớ máy vi tính PC

52/31

Page 53: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.1. Tổ chức bộ nhớ theo phân cấp

Hệ thống nhớ của máy tính ngày nay gồm các loại sau:

+ Các thanh ghi bên trong CPU

+ Bộ nhớ trong (bộ nhớ chính): có RAM +ROM

+ Bộ nhớ ngoài: có ổ đĩa cứng, ổ đĩa mềm, ổ đĩa quang, đĩa

CD,…

+ Bộ nhớ cache

Mỗi loại bộ nhớ có vai trò thế nào? và các loại bộ nhớ này

được tổ chức như thế nào?

53/31

Page 54: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.1. Tổ chức bộ nhớ theo phân cấp

Tốc độ truy nhập bộ nhớ chính (bộ nhớ thao tác) tương đối

chậm so với khả năng của CPU.Ví dụ với Pentium IV 3,4 GHz thì tần số xung nhịp trong là tần số xung nhịp

ngoài 200MHz * 17.

Để giảm thời gian trung bình truy nhập bộ nhớ chính là

thêm bộ nhớ SRAM (bộ nhớ cache /bộ nhớ ẩn).

Dung lượng nhớ của bộ nhớ chính cũng khá hạn chế cũng

sẽ hạn chế khả năng của CPU, và không đáp ứng được nhu

cầu lưu trữ bộ nhớ ngoài.

54/31

Page 55: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.1. Tổ chức bộ nhớ theo phân cấp

Tại một thời khoảng thì các lệnh và dữ liệu được sử dụng thường

đều nằm ở một khu vực tương đối nhỏ trong bộ nhớ chính. Các

vùng này luôn chuyển dịch khi chạy chương trình thường tổ

chức hệ thống bộ nhớ theo kiểu phân cấp.

55/31

Page 56: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.1. Tổ chức bộ nhớ theo phân cấp

Cơ sở của việc quản lý hệ thống bộ nhớ có phân cấp là

dựa trên nguyên lý quy chiếu phân vùng (Mọi dữ liệu

trong một cấp thì được gặp lại trong cấp thấp hơn và

có thể tiếp tục gặp lại trong cấp thấp nhất), như hình

sau:

56/31

Theo từng

byte

Theo từng

Khối

Theo từng

trang

Page 57: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.1. Tổ chức bộ nhớ theo phân cấp

Tại sao lại ra đời bộ nhớ cache và bộ nhớ ngoài?

57/31

Page 58: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.2. Tổ chức cache

Thủ tục quản lý bộ nhớ phân cấp có cache là nạp từng đoạn (từng

khối) từ bộ nhớ chính vào cache. Phương pháp đơn giản nhất

được dùng là ánh xạ trực tiếp.

Việc quy chiếu đến cache sẽ "trúng" (hit) nếu truy nhập được

thông tin, và là "trượt" (miss) nếu không truy nhập được thông tin.

Bộ nhớ chính được chia thành nhiều khối, môi khối bao gồm

nhiều từ hoặc nhiều byte.

58/31

Địa chỉ thấp

Khối 0 1từ (1byte) 00

Khối 1 1từ (1byte) 01

Khối 2 1từ (1byte) 10

Khối 3 1 từ (1byte) 11

Khối 4 1 từ (1byte) 00

Khối 5 1 từ (1byte) 01

Khối 6 1 từ (1byte) 10

Page 59: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.2. Tổ chức cache

Bộ nhớ cache có thể chứa nhiều khối, gọi là khối cache. Môi

khối cache nằm ở một vị trí xác định trong cache

Cấu trúc một khối cache như sau:

Số hiệu thẻ: Vị trí khối nhớ trong bộ nhớ chính

F=0: Khối dl trong khối cache giống với dl trong RAM

F=1: Khối dl trong khối cache ko giống với dl trong RAM

Khối dữ liệu: Có thể là bản sao của dl trong RAM

Giả thiết bộ nhớ có 224 ô nhớ. Nếu cache có 22 vị trí chứa (khối

cache) thì số lượng thẻ sẽ là 224/22 = 222 (=4triệu thẻ).

59/31

Số hiệu thẻ F Khối dữ liệu

Page 60: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.2.1. Trường hợp mỗi khối chứa một từ (hoặc 1 byte) dữ liệu

(Thao tác đọc bộ nhớ))

Giả sử có bộ nhớ chính có BUS địa chỉ 24 bít

và cache có 4 khối.

Bộ điều khiển bộ nhớ tách địa chỉ 24 bit làm

hai phần như hình dưới:

2 bit địa chỉ thấp nhất: xác định vị trí khối cần

tìm trong cache.

22 bit địa chỉ : xác định vị trí của khối nhớ

trong bộ nhớ chính.

Thao tác đọc dữ liệu từ bộ nhớ được tiến hành

như sau:

Bước 1: khối dữ liệu trong cache tại vị trí có

số thứ tự trùng với phân số thứ tự khối trong

địa chỉ trên BUS được đọc.

Bước 2: so sánh 2 số hiệu thẻ của khối trong

cache với số hiệu thẻ trong địa chỉ BUS.

60/31

Page 61: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.2.1. Trường hợp mỗi khối chứa một từ (hoặc 1 byte) dữ liệu

(Thao tác đọc bộ nhớ)

Bước 3:

nếu trùng (hit) thì dữ liệu được đọc từ

cache vào CPU. Nếu không trùng (trường

hợp "trượt") thì từ dữ liệu phải được lấy từ

bộ nhớ chính.

Nếu "trượt“ (miss) cần phải sao lưu dữ liệu

trong cache vào bộ nhớ chính theo địa chỉ

của nó, sau đó mới nạp dữ liệu mới cùng

với thẻ của nó vào cache và đặt bit cờ F =

0và dữ liệu được cung cấp cho CPU.

Số thẻ cache trong các khối cache có thể

trùng nhau (khi khối cache chưa bị thay

thế) và có thể khác nhau (khi nội dung

khối cache bị thay)

61/31

Page 62: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ (1)

Giả sử CPU phát ra địa chỉ là: AAAAAA (h)

Và cache gồm 4 khối, bộ nhớ chính chia thành nhiều khối, môi khối gồm 1

ô nhớ.

Nội dung của bộ nhớ cache là:

CPU có tìm thấy dữ liệu trong cache không? Nếu có thì dữ liệu =?

Nếu không thì sẽ diễn ra các thao tác nào?

62/31

Sô hiệu the (SHT2) F Khối dƣ liệu

1010 1010 1010 1010 1010 00 0 10000000

1010 1010 1010 1010 1010 01 0 10000001

1010 1010 1010 1010 1010 10 0 10000101

1010 1010 1010 1010 1010 11 0 10000101

Page 63: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ (2)

Giả sử CPU phát ra địa chỉ là: AAAAAA (h)

Và cache gồm 4 khối, bộ nhớ chính chia thành nhiều khối, môi

khối gồm 1 ô nhớ.

Nội dung của bộ nhớ cache là:

CPU có tìm thấy dữ liệu trong cache không? Nếu có thì dữ liệu

=? Nếu không thì sẽ diễn ra các thao tác nào?

63/31

Sô hiệu the (SHT2) F Khối dƣ liệu

1010 1010 1010 1010 1010 00 0 10000000

1010 1010 1010 1010 1010 01 0 10000001

1010 1010 1010 1010 1010 11 0 10000101

1010 1010 1010 1010 1010 11 0 10000101

Page 64: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

1. Giả sử cache gồm 8 khối, CPU phát ra địa chỉ rộng 20bits

Số hiệu thẻ chiếm bao nhiêu bit?

Số thứ tự khối chiếm bao nhiêu bit?

2. Cho địa chỉ CPU phát ra là: ABABABABh. Cache gồm 8 khối

Số hiệu thẻ có giá trị =?

Khối cache ở vị trí nào sẽ được truy nhập? =\

3. CPU phát ra địa chỉ AAAAA , Cache có 4 khối thì:

a. Số hiệu thẻ chiếm 18bit trong địa chỉ c. Khối cache có vị trí 10b được

chọn

b. Số hiệu thẻ là 1010101010101010 d. b và c đều đúng

4. Số lƣợng số hiệu the là bao nhiêu nếu biết CPU phát ra địa chỉ rộng

24bit, cache gồm 8 khối

a. 224 b. 222 c. 221 d. 223

64/31

Page 65: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.2.1. Trường hợp mỗi khối chứa một từ (hoặc 1 byte) dữ liệu

(Thao tác ghi bộ nhớ)

Ở loại cache ghi xuyên (write through): dữ liệu được ghi lên cả cache lẫn

bộ nhớ chính cùng một lúc, không dùng đến bit cờ F thời gian ghi bộ

nhớ tăng lên.

Ở loại cache sao lưu (copy back) thì dữ liệu chỉ được ghi vào cache và bit

cờ F được lập (F = 1), ghi nhận nội dung cache khác với nội dung bộ nhớ

chính. Sau đó nếu khối dữ liệu cần được thay thế bằng khối dữ liệu khác từ

bộ nhớ chính (trường hợp "trượt") thì bit cờ F được kiểm tra để xác định

xem có cần thực hiện thao tác sao lưu này không, nếu F = 1 thì cần thực

hiện sao lưu, nếu F = 0 thì không cần sao lưu

tăng tốc độ thao tác với bộ nhớ và được gọi là kỹ thuật sao lưu có dựng cờ.

65/31

Page 66: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.2.2. Trƣờng hợp mỗi khối chứa nhiều byte dữ liệu

Tự nghiên cứu

66/31

Page 67: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.3 Tổ chức quản lý bộ nhớ máy vi tính PC

Có hai cách tổ chức quản lý bộ nhớ: tổ chức theo phân đoạn và tổ chức tuyến

tính.

Ở cách tiếp cận theo phân đoạn chương trình và dữ liệu được người lập trình

chia thành các modul, được nạp vào bộ nhớ chính và được quản lý theo cơ chế

phân đoạn.

Ở cách tiếp cận tuyến tính: một bộ nhớ với không gian địa chỉ rất lớn (ảo)

được cung cấp cho chương trình. Chương trình được chia thành các khuc nhỏ

có kích thước cố định (trang) và được nạp vào bộ nhớ vật lý. Các khúc chương

trình chứa trong bộ nhớ được quản lý theo cơ chế phân trang.

có thể kết hợp cả hai cách nói trên để quản lý bộ nhớ.

67/31

Page 68: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.3.1. Cơ chế quản lý bộ nhớ theo phân trang

Cấu trúc của hệ thống quản lý gồm 3 phần: thư mục trang (Page Directory),

bảng trang (Page Table) và trang (Page). Thư mục trang, bảng trang và trang

đều có cùng một kích thước là 4Kbyte.

Thư mục trang: có kích thước 4Kbyte, chứa tới 1024 Lối vào thư mục trang

PDE (Page Directory Entry).

• PDE có kích thước 32 bit (4 byte). Môi PDE chứa 20 bít địa chỉ nền bảng

trang. Môi một thư mục trang có thể quản lý được tới 1024 bảng trang.

• Cấu trúc một PDE trong thư mục trang:

Phần địa chỉ bảng trang chứa 20 bit cao của địa chỉ nền bảng trang(12 bít thấp của địa chỉ

nền bảng trang luôn bằng 0).

Phần thông tin về bảng trang chứa các thông tin về quyền truy nhập bảng trang và một số

thuộc tính khác của trang.

68/31

Địa chỉ bảng trang (20bit) Thông tin về bảng trang

Page 69: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.3.1. Cơ chế quản lý bộ nhớ theo phân trang

Bảng trang: có kích thước 4 Kbyte., chứa 1024 lối vào bảng

trang PTE (Page Table Entry).

1 PTE có kích thước 32 bit (4 byte): chứa địa chỉ nền của một

trang 4Kbyte, do vậy một bảng trang có thể quản lý được tới

1024 trang.

Cấu trúc một PTE:

Phần Địa chỉ trang chứa 20 bit cao của địa chỉ vật lý nền trang (địa chỉ

vật lý bắt đầu một trang), 12 bít thấp của địa chỉ nền trang luôn bằng 0.

Phần Thông tin về trang chứa các thông tin về quyền truy nhập trang

và một số thuộc tính khác của trang.

69/31

Địa chỉ trang (20bit) Thông tin về trang

Page 70: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

2.3.2 Cơ chế truy nhập bộ nhớ theo trang

• Khi truy nhập theo cơ chế phân

trang địa chỉ tuyến tính được tách

thành 3 phần:

• + A31 ÷ A22: 10bit chỉ số PDE,

xác định vị trí PDE trong thư mục

trang.

• + A21 ÷ A12: 10 bit chỉ số PTE,

xác định vị trí PTE trong bảng

trang.

• + A11 ÷ A0: là 12 bít địa chỉ

offset của ô nhớ trong trang.

• Địa chỉ vật lý của ô nhớ trong

trang được tính bằng cách kết hợp

20 bit cao (phần địa chỉ trang)

trong PTE với 12 bit thấp

(A11÷A0) nằm trong địa chỉ

tuyến tính này70/31

Cho CPU phát ra địa chỉ tuyến

tính là: BBBBBBBBh

Giá trị phần tử PTE lấy ra là:

AAAAAAAAh

Tính địa chỉ vật lý của ô nhớ chứa

dữ liệu mà CPU cần truy xuất?

Page 71: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ví dụ

VD1:

Cho CPU phát ra địa chỉ tuyến tính là: BBBBBBBBh

Giá trị phần tử PTE lấy ra là: AAAAAAAAh

Tính địa chỉ vật lý của ô nhớ chứa dữ liệu mà CPU cần truy xuất?

Giải:

Địa chỉ vật lý = AAAAABBB

VD2:

Cho CPU phát ra địa chỉ tuyến tính là: 12345678h

Giá trị phần tử PTE lấy ra là: 87654321h

Tính địa chỉ vật lý của ô nhớ chứa dữ liệu mà CPU cần truy xuất?

71/31

Page 72: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Nội dung ôn tập

Chương 1

- Các thành phần cơ bản của máy tính số

- Biểu diễn thông tin trong máy tính số : Bài tập (Chuyển đổi các hệ cơ số 2,8,10,16, cộng trừ

các số, biểu diễn số theo dạng dấu chấm động 32bit, tìm số bù 2)

- Đơn vị xử lý trung tâm: cấu hình bên ngoài + cấu hình bên trong

- Cơ chế quản lý bộ nhớ trong chế độ thực (lý thuyết + bài tập),cơ chế quản lý bộ nhớ trong

chế độ bảo vệ.

- Bộ chọn đoạn CS/DS/ES/SS

- Mục đích của chế độ bảo vệ? Bài tập có liên quan tới 2 luật truy nhập

- Các thanh ghi và vai trò của chúng + bài tập (xác định cặp địa chỉ logic đúng/sai)

- Các phương pháp xác định địa chỉ toán hạng + bài tập

- Kỹ thuật đường ống + bài tập

Chương 2

- Tổ chức bộ nhớ theo kiểu phân cấp

- Tổ chức và vai trò của bộ nhớ cache + bài tập

- Cơ chế quản lý bộ nhớ theo phân trang + bài tập72/31

Page 73: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Chƣơng 3

Các phƣơng pháp vào ra dữ liệu trong máy vi tính

3.1. Cấu trúc phần cứng của hệ thống vào/ra dữ liệu

3.2. Các phƣơng pháp vào/ra dữ liệu

3.2.1 Phân loại

3.2.2 Phương pháp vào/ra dữ liệu theo định trình

3.2.3 Phương pháp vào/ra dữ liệu theo kiểu thăm dò

3.2.4 Phương pháp vào/ra dữ liệu theo ngắt cứng

3.2.5 Phương pháp vào/ra dữ liệu theo kiểu DMA (truy nhập trực tiếp bộ nhớ -

Direct Memory Access)

73/31

Page 74: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.1. Cấu trúc phần cứng của hệ thống vào/ra dữ liệu

+ Các thanh ghi điều khiển (CONTROL) nhận và chứa các từ điều khiển xác lập chế

độ làm việc của thiết bị.

+ Các thanh ghi trạng thái (STATUS) chứa thông tin phản ảnh trạng thái làm việc

của thiết bị giao diện và thiết bị ngoại vi.

+ Các thanh ghi dữ liệu (DATA) thực hiện chức năng bộ đệm tạm chứa dữ liệu

vào/ra.

Môi một thanh ghi đều được gán một địa chỉ xác định, gọi là địa chỉ cổng.

74/31

Bộ nhớ CPUSTATUS

DATA

Thiết bị

ngoại vi

Hệ thống BUS

Thiết bị giao diện

CONTROL

Page 75: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2. Các phƣơng pháp vào/ra dữ liệu

3.2.1 Phân loại

75/31

Các phương pháp vào/ra dữ liệu

Vào/ra do CPU chủ động Vào/ra do các thiết bị vào/ra chủ động

Vào/ra theo

định trình

Vào/ra có

thăm dòVào/ra theo

ngắt cứngVào/ra kiểu

DMA

Page 76: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.2 Phương pháp vào/ra dữ liệu theo định trình

• Đặc điểm: quá trình vào ra được thực hiện theo một chu kỳ xác

định trước, nhờ các lệnh vào/ra (IN/OUT) và CPU không quan

tâm đến trạng thái của thiết bị vào/ra.

• Ưu điểm: phù hợp với những quá trình vào/ra có chu kỳ cố định

và có thể xác định trước.

• Nhược điểm: Độ tin cậy không cao

76/31

Page 77: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.3 Phƣơng pháp vào/ra dữ liệu theo kiểu thăm dò

• CPU luôn thực hiện kiểm tra trạng thái sẵn sàng làm việc

của thiết bị trước khi thực hiện thật sự việc vào ra dữ liệu.

Việc kiểm tra trạng thái sẵn sàng của thiết bị bằng cách

kiểm tra thông tin trên thanh ghi trạng thái

77/31

Page 78: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.3 Phƣơng pháp vào/ra dữ liệu theo kiểu thăm dò

• Ưu điểm: quá trình vào/ra

dữ liệu kiểu này có độ tin

cậy cao.

• Nhược điểm: tốc độ

vào/ra dữ liệu chậm. Hơn

nữa, nếu CPU chỉ làm có

một công việc là vào/ra dữ

liệu (theo phương pháp

thăm dò) thì hiệu quả

không cao, ngược lại nếu

CPU đồng thời phải thực

hiện nhiều loại công việc

hơn thì thời gian làm việc

của CPU sẽ bị chia xẻ,

đồng thời độ tin cậy của

phương pháp vào/ra thăm

dò cũng bị giảm đi rất

nhiều. 78/31

Page 79: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.4 Phương pháp vào/ra dữ liệu theo ngắt cứng

• Ngắt là sự kiện CPU bị tạm dừng tiến trình đang thực

hiện để chuyển sang thực hiện quá trình phục vụ ngắt.

• Ngắt cứng là phương pháp vào/ra dữ liệu trong đó thiết

bị vào/ra chủ động khởi động quá trình vào/ra dữ liệu

nhờ hệ thống ngắt cứng.

• Quá trình vào/ra theo ngắt cứng được trợ giúp bởi thiết

bị điều khiển ngắt PIC (Programmable Interrupt

Controller)

79/31

Page 80: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.4 Phương pháp vào/ra dữ liệu theo ngắt cứng

Quá trình vào ra theo ngắt cứng:

- CPU dang thực hiện một chương trình nào đó

- Một hoặc nhiều thiết bị vào/ra có yêu cầu được phục vụ phát tín hiệu IRQ cho PIC

- Thiết bị PIC phát ra tín hiệu INT cho CPU, đòi CPU phục vụ

- CPU thực hiện các thao tác sau:

++ Thực hiện nốt lệnh của chương trình hiện hành.

++ Lưu địa chỉ trở về (nội dung các thanh ghi CS, IP) và thanh ghi cờ FLAGS vào ngăn xếp.

++ Gửi 2 tín hiệu trả lời ngắt INTA cho PIC

- PIC nhận được tín hiệu INTA lần1: Sắp xếp độ ưu tiên cho các yêu cầu ngắt IRQi.

- PIC nhận được tín hiệu INTA lần 2:phát số hiệu ngắt (con số đại diện cho địa chỉ của chương trình con

phục vụ ngắt, và tương ứng với tín hiệu IRQ) cho CPU.

- Dựa trên số hiệu ngắt này CPU kích hoạt và thực hiện chương trình con phục vụ ngắt để thực hiện vào ra

dữ liệu.

- Khi chương trình phục vụ ngắt kết thúc (lệnh IRET) thì CPU khôi phục địa chỉ trở về vào thanh ghi CS,

IP, nội dung thanh ghi FLAGS và tiếp tục tiếp tục thực hiện chương trình vừa bị tạm dừng.

80/31

Page 81: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.4 Phương pháp vào/ra dữ liệu theo ngắt cứng

Ƣu điểm:

- CPU thực hiện vào ra dữ liệu ngay sau khi có yêu cầu từ TB bên ngoài do vậy

quá trình vào dữ liệu có độ tin cậy cao.

- CPU chỉ phục vụ thiết bị vào ra khi có yêu cầu do vậy tăng hiệu quả làm việc

của CPU.

thường áp dụng cho việc vào/ra dữ liệu với các thiết bị chuẩn của máy tính như:

Bàn phím, máy in, thiết bị vào/ra nối tiếp, song song,…

Nhược điểm: quá trình chuyển dữ liệu giữa bộ nhớ và thiết bị vào/ra vẫn phải qua

CPU và quá trình vào/ra dữ liệu vẫn do CPU chưa phải là phương pháp vào

ra dữ liệu nhanh nhất.

81/31

Page 82: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

3.2.5 Phương pháp vào/ra dữ liệu theo kiểu DMA (truy nhập trực tiếp

bộ nhớ - Direct Memory Access)• Quá trình chuyển dữ liệu trực tiếp giữa thiết bị ngoại vi và bộ nhớ chính

không qua CPU được gọi là quá trình DMA (Direct Memory Access).

• Trong quá trình DMA, việc chuyển dữ liệu không được điều khiển bằng

chương trình mà được điều khiển bằng một thiết bị đặc biệt gọi là bộ điều

khiển DMAC (DMA Controller).

82/31

Page 83: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Phương pháp vào/ra dữ liệu theo kiểu DMA

Giả sử CPU đang thực hiện bình thường

- DMAC được xác lập chế độ làm việc, nhận thông tin về địa chỉ đầu khối nhớ

chứa dữ liệu và kích thước khối dữ liệu cần truyền

- Thiết bị vào/ra phát tín hiệu DRQ cho DMAC

- DMAC phát tín hiệu HOLD=1 cho CPU, đòi CPU đi vào chế độ DMA

- CPU thực hiện nốt chu kỳ máy

- CPU phát tín hiệu HLDA trả lời cho DMAC và tự tách ra khỏi hệ thống BUS.

Quyền điều khiển hệ thống BUS thuộc về DMAC.

-

83/31

Page 84: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Phương pháp vào/ra dữ liệu theo kiểu DMA

DMAC làm chủ hệ thống BUS (bus dữ liệu, bus địa chỉ, bus điều khiển)

- DMAC tạo ra tín hiệu DACK trả lời thiết bị yêu cầu, và thực hện điều khiển

toàn bộ quá trình chuyển dữ liệu trực tiếp giữa thiết bị vào/ra và bộ nhớ.

- Khi một khối dữ liệu được chuyển xong, DMAC kết thúc quá trình DMA

bằng việc phát tín hiệu HOLD=0 cho CPU và trả quyền điều khiển hệ thống

BUS cho CPU.

- CPU tiếp tục làm việc bình thường

84/31

Page 85: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Phương pháp vào/ra dữ liệu theo kiểu DMA

• Phương pháp vào ra dữ liệu kiểu DMA được dùng để thực

hiện truyền dữ liệu giữa các thiết bị có khả năng truy xuất

thông tin với khối lượng lớn và đòi hỏi tốc độ truy xuất cao

như thiết bị đĩa cứng, đĩa mềm và bộ nhớ.

• Hãy so sánh 4 phương pháp vào/ra dữ liệu đã học?

85/31

Page 86: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

So sánh các đặc điểm của 4 phƣơng pháp vào/ra dữ liệu

86/31

Vào/ra theo định trình Vào/ra theo thăm

Vào/ra theo ngắt

cứng

Vào/ra theo DMA

CPU chủ động CPU chủ động Thiết bị vào/ra chủ

động

Thiết bị vào/ra chủ

động

Không quan tâm tới

trạng thái làm việc của

thiết bị vào/ra

Có quan tâm tới

trạng thái làm việc

của thiết bị vào/ra

Không quan tâm tới

trạng thái làm việc

của thiết bị vào/ra

Không quan tâm tới

trạng thái làm việc

của thiết bị vào/ra

Quá trình vào/ra được

thực hiện bằng chương

trình (phần mềm)

Quá trình vào/ra

được thực hiện bằng

chương trình (phần

mềm)

Quá trình vào/ra

được thực hiện bằng

chương trình (phần

mềm)

Quá trình vào/ra

được thực hiện bằng

phần cứng

Không được trợ giúp

bởi thiết bị khác

Không được trợ giúp

bởi thiết bị khác

Được trợ giúp bởi

PIC

Được trợ giúp bởi

DMAC

Độ tin cậy ko cao Độ tin cậy cao Độ tin cậy cao Độ tin cậy cao

Tốc độ vào/ra nhanh Tốc độ vào/ra chậm

hơn pp định trình

Tốc độ vào ra nhanh

và có tính kịp thời

Tốc độ vào/ra nhanh

nhất và có tính kịp

thời

Page 87: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

So sánh các đặc điểm của 4 phƣơng pháp vào/ra dữ liệu (tiếp)

87/31

Vào/ra theo

định trình

Vào/ra theo thăm dò Vào/ra theo ngắt

cứng

Vào/ra theo DMA

CPU điều khiển

toàn bộ quá

trình vào/ra dữ

liệu

CPU điều khiển toàn

bộ quá trình vào/ra dữ

liệu

CPU điều khiển

toàn bộ quá trình

vào/ra dữ liệu

DMAC điều khiển

toàn bộ quá trình

vào/ra dữ liệu

Không Không Các tín hiệu liên

quan: INT, INTA,

IRQ

Các tín hiệu liên

quan:

DRQ,DACK,HOL

D, HLDA

Phù hợp với các

ứng dụng có

chu kỳ cố định

và biết trước

Là pp diễn ra đầu tiên

khi bật máy tính (để

kiểm tra toàn bộ các

thiết bị phần cứng)

Thường áp dụng

cho các thiết bị

vào/ra chuẩn như

bàn phím, chuột,

máy in, cổng nối

tiếp/song song,…

Thường áp dụng

cho ổ cứng, màn

hình, ổ đĩa CD, đĩa

mềm,…

Không phải lưu

và khôi phục lại

nội dung của

CPU

Không phải lưu và khôi

phục lại nội dung của

CPU

Phải lưu và khôi

phục lại nội dung

của CPU

Không phải lưu và

khôi phục lại nội

dung của CPU

Lượng dữ liệu Lượng dữ liệu truyền Lượng dữ liệu Lượng dữ liệu

Page 88: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận

câu 1. Khi muốn vào/ra theo ngắt cứng thì thiết bị vào/ra phát tín hiệu:

a. DRQ b. INT c. IRQ d. INTA

Câu 2. Phƣơng vào ra dữ liệu theo ngắt cứng

a. làm tăng hiệu quả làm việc của CPU

b. có độ tin cậy cao hơn các phương pháp vào ra dữ liệu khác

c. do CPU chủ động và điều khiển việc thực hiện quá trình vào ra dữ liệu

d. được kích hoạt do thiết bị ngoại vi gửi yêu cầu IRQ tới CPU

Câu 3: Vào/ra theo kiểu DMA là phƣơng pháp:

a. Vào/ra do CPU chủ động

b. Vào/ra dữ liệu trực tiếp giữa CPU và thiết bị ngoại vi không thông qua CPU

c. Vào/ra được điều khiển bởi PIC

d.Vào/ra do CPU chủ động và được trợ giúp bởi bộ điều khiển DMAC

câu 4. Trong thiết bị giao diện có 3 loai thanh ghi đó là:

a. Điều khiển, địa chỉ, dữ liệu b. Điều khiển, trạng thái, dữ liệu

c. Trạng thái, dữ liệu, địa chỉ d. Dữ liệu, điều khiển, địa chỉ

câu 5. Nhóm phƣơng pháp vào/ra nào không kiểm tra trang thái sẵn sàng làm việc của thiết bị vào/ra

a. Vào/ra có thăm dò, định trình, ngắt cứng b. Vào/ra theo ngắt cứng, DMA, định trình

c. Vào/ra theo định trình, thăm dò, DMA d. Vào/ra kiểu DMA, thăm dò, ngắt cứng

88/31

Page 89: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận (tiếp)

6. Trong máy tính, ngắt NMI là:

a. Ngắt ngoại lệ b. Ngắt cứng chắn (che) được

c. Ngắt cứng không chắn (che) được d. Ngắt mềm

7.Tín hiệu điều khiển INT là tín hiệu:

a. Từ bên ngoài gửi đến CPU xin ngắt b.Từ CPU gửi ra ngoài xin ngắt

c. Từ bộ nhớ chính gửi đến CPU xin ngắt d. Từ CPU gửi đến bộ nhớ chính xin ngắt

8. Phát biểu nào sau đây là đúng:

HOLD là tín hiệu CPU trả lời ra bên ngoài

HOLD không phải là tín hiệu điều khiển

HOLD là tín hiệu điều khiển xin ngắt

HOLD là tín hiệu từ bên ngoài xin CPU nhường bus

9. Với phƣơng pháp vào/ra bằng DMA, phát biểu nào sau đây là SAI:

a. Hoàn toàn do DMAC điều khiển trao đổi dữ liệu

b. Đây là quá trình trao đổi dữ liệu giữa TBNV và bộ nhớ

c. CPU không can thiệp vào quá trình trao đổi dữ liệu

d. CPU và DMAC kết hợp điều khiển trao đổi dữ liệu

89/31

Page 90: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận (tiếp)

10. Có 3 phƣơng pháp điều khiển vào/ra nhƣ sau:

a. Vào/ra bằng chương trình, bằng ngắt, bằng DMA

b. Vào/ra bằng chương trình, bằng hệ thống, bằng DMA

c. Vào/ra bằng ngắt, bằng truy nhập CPU, bằng DMA

d. Vào/ra bằng ngắt, bằng truy nhập CPU, bằng hệ điều hành

11. Vào/ra dữ liệu kiểu truy nhập trực tiếp bộ nhớ đƣợc hỗ trợ bởi

a. DMAC b. DMA c. Thiết bị giao diện d. Đáp án a và b

12.Tín hiệu HLDA xuất phát từ CPU đƣợc truyền tới cho:

a. PIC 9259 b. UART 8250 c DMAC d. KC 8042

90/31

Page 91: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Chƣơng 4. Thiết bị vào/ra

4.1 Phân loại ngắt

91/31

Page 92: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Chƣơng 4

• Bảng vecto ngắt

92/31

Page 93: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

PIC 8259

• - Cấu hình bên ngoài

• Cấu hình bên trong

93/31

PR IRR

Page 94: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

PIC 8259

Lập trình khởi động PIC:

- ICW2 định nghĩa số ngắt nền cho

7 số ngắt còn lai

- ICW3: liên quan đến ghép tầng

PIC chủ:

PIC thợ:

- OCW1: Chính là IMR

94/31

Page 95: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

PIC 8259

Hệ thống ngắt cứng:

95/31

Page 96: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

96/31

Page 97: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

DMAC8237

97/31

Page 98: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

DMAC8237

Các chế độ hoat động của DMAC 8237:

DMAC 8237 hoạt động trong 2 chu kỳ chính là: chu kỳ nghỉ và chu kỳ hoạt động.

Chu kỳ nghỉ: khi không có kênh nào yêu cầu thì DMAC đi vào chu kỳ nghỉ.

Chu kỳ hoạt động: trong chu kỳ hoạt động DMAC 8237 có thể hoạt động theo một

trong 4 kiểu, tuỳ theo lập trình:

Kiểu truyền đơn lẻ (single transfer mode)

Kiểu truyền khối (block transfer mode)

Kiểu truyền theo yêu cầu (demand transfer mode)

Kiểu ghép tầng (Cascade mode)

98/31

Page 99: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

DMAC8237

Các thanh ghi của DMAC:

Môi kênh DMA có 4 thanh ghi chức năng.

- Thanh ghi địa chỉ nền (16 bit): lưu giữ địa chỉ nền của vùng nhớ cần truy cập.

- Thanh ghi đếm nền (16 bít): xác định lượng từ dữ liệu gốc cần truyền.

- Thanh ghi địa chỉ hiện thời (16 bit): chứa giá trị địa chỉ của ô nhớ đang được truy nhập trong quá trình

DMA

- Thanh ghi đếm từ hiện thời (16 bit): thanh ghi này giữ số lần truyền được thực hiện. Số đếm này giảm

sau môi lần truyền, giảm xuống 0 thì tín hiêu EOP được tạo ra.

99/31

Page 100: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Các thanh ghi trong DMAC

• Thanh ghi lệnh (Command Register)

• Thanh ghi yêu cầu (8bit): Cho phép DMAC có thể trả lời DACK cho từng thiết bị yêu

cầu và đặt/xóa yêu cầu DRQ.

100/31

Page 101: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

DMAC8237

Mach DMA trong máy vi tính CP/AT

101/31

Page 102: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thiết bị giao diện vào-ra nối tiếp UART 8250/16450

Chức năng:

+ Chuyển 1 byte dữ liệu (nhận từ CPU) dạng 8 bits song song thành dạng nói

tiếp, tạo khung dữ liệu dạng nối tiếp và phát đi tuần tự từng bit cho đến hết

byte dữ liệu.

+ Nhận 1 khung dữ liệu dạng nối tiếp, loại bỏ các bít tạo khung (bit START,

PARITY, STOP), chuyển thành dạng dữ liệu song song.

+ Tạo và nhận các tín hiệu bắt tay theo chuẩn RS232

102/31

Page 103: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Chuẩn RS232 quy định:

• Kết nối vật lý: sử dụng hai loại đầu nối 9 chân hoặc 25 chân: DB9 và DB25.

• + Mức tín hiệu: +/- 25V

• "0" : +3V đến +25V

• "1" : -3V đến -25V

• Kích thước cáp nối không quá 20m.

• Tốc độ truyền: hai bên phát và nhận phải có tốc độ bằng nhau: từ 50 bit/s đến

20000bit/s.

• DTE truyền dữ liệu không đồng bộ về pha nhưng đồng bộ trên từng byte dữ

liệu bằng bít "START". Khuôn dạng dữ liệu giữa bên phát và bên nhận phải được

chọn giống nhau

103/31

Page 104: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Sơ đồ khối cổng vào-ra nối tiếp trong máy vi tính PC

• Nội dung các thanh ghi trong UART nhƣ sau:

Thanh ghi điều khiển đường truyền LCR

D2- xác định số lượng bit stop được tạo và kiểm tra D2 = 0-1 Bit Stop D2 = 1-2 Bit Stop

D3- cho phép tạo hoặc kiểm tra pariy: D3 = 0 - không cho phép D3 = 1 - cho phép

D4 - chọn kiểu parity D4 = 0 số lượng lẻ bít "1" được báo hoặc kiểm tra

D4 = 1 số lượng chẵn bit "1" được báo hoặc kiểm tra

D5 - chọn mức tích cực của bit parity: Nếu D5 = 1 và D4 = 1 thì mức tích cực của bit parity là 0

(Parity chẵn) Nếu D5 = 1 và D4 = 0 thì mức tích cực của bit parity là 1 (Parity lẻ)

104/31

D7 D0

Page 105: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thiết bị giao diện song song

• Cổng song song là cổng mà cho phép truyền số liệu đồng thời

các bit của 1 từ dữ liệu trong 1 nhịp truyền.

105/31

Page 106: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thiết bị giao diện song song

• LPT có 3 loại thanh ghi: dữ liệu, điều khiển, trạng thái

• Địa chỉ nền: 378h

106/31

Page 107: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Bàn phím

107/31

Page 108: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Bàn phím

Vai trò: Nhập dữ liệu cho máy tính xử lý, dưới dạng lực nhấn

phím. Căn cứ vào vị trí phím được nhấn kết hợp với lực nhấn

phímtạo ra mã phím tương ứng -> đưa vào trong máy tính.

Cấu tạo: gồm 2 thành phần chính

+ Ma trận phím nhấn: Được sắp xếp theo hàng và cột. Ở trạng

thái bình thường dây hàng và dây cột không tiếp xúc với

nhau.

+ Mạch điện tử quét: Gồm bộ đếm nhị phân và mạch giải mã

tạo ra tín hiệu quét các cột của bàn phím.

108/31

Page 109: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ôn tập

câu 1. Bàn phím ( 4 cột x 4 hàng ), nếu 4 phím thuộc cùng 1 hàng thì tổ hợp mã phím nào

dƣới đây thỏa mãn:

a. 001101, 011101, 101101, 111101 b. 001101, 001110, 001011, 000111

c.011100, 011110, 011101, 010111 d. 011101, 011110, 011011, 010111

Câu 2. Giả sử giá trị trong thanh ghi ICW2 trong PIC 8259 chủ có giá trị 18h, thì số hiệu ngắt

cho yêu cầu ngắt IRQ5 sẽ là:

a. 1Fh b. 05h c. 1Dh d. 0Dh

Câu 3. Chƣơng trình con phục vụ ngắt có số hiệu ngắt 08h chỉ ra rằng:

a. Đó chính là số thứ tự của ô ở vị trí 08h trong bảng vecto ngắt

b. Ô trong bảng vecto ngắt ở vị trí 08h có chứa giá trị 08h

c. Cả a và b đều đúng

d. Địa chỉ đoạn trong ô ở vị trí 08h có giá trị 08h

109/31

Page 110: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ôn tập

4. Mỗi ô trong bảng vectơ ngắt có kích thƣớc:

a. 1byte b. 2bytes c. 3bytes d. 4bytes

5. Khi Bộ xử lý đang thực hiện chƣơng trình, nếu có ngắt (không bị cấm) gửi đến, thì CPU:

a. Thực hiện xong chương trình rồi thực hiện ngắt

b. Từ chối ngắt, không phục vụ

c. Phục vụ ngắt ngay, sau đó thực hiện chương trình

d. Thực hiện xong lệnh hiện tại, rồi phục vụ ngắt, cuối cùng quay lại thực hiện tiếp chương trình

6. Bàn phím ( 4 cột x 4 hàng ), nếu 4 phím thuộc cùng 1 hàng thì tổ hợp mã phím nào dƣới

đây thỏa mãn:

a. 001101, 011101, 101101, 111101 b. 001101, 001110, 001011, 000111

c.111101, 111110, 111011, 110111 d. 011101, 011110, 011011, 010111

7. Bàn phím ( 4 cột x 4 hàng ), nếu 4 phím thuộc cùng 1 cột thì tổ hợp mã phím nào dƣới đây

thỏa mãn:

a. 010111, 011011, 011101, 011110 b. 000111, 011011,111101, 101110

c. 100111, 010111, 110111,101110 d. 111011,101011,001101,011011

110/31

Page 111: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ôn tập

8. Nếu cho giá trị thanh ghi ISR trong PIC 8259 có giá trị 80h thì yêu cầu ngắt nào đang đƣợc phục vụ:

a. IRQ3 b. IRQ4 c. IRQ0 d. IRQ7

9. Khi nói về chuẩn truyền tin RS232 thì

a. Mức tín hiệu nằm trong khoảng +3+25V b. Mức tín hiệu nằm trong khoảng -3-25V

c. Mức tín hiệu nằm trong khoảng -3+25V d. Cả a, b, c đều sai

10. Với thiết bị điều khiển DMAC, muốn biết khối lƣợng dữ liệu cần truyền ban đầu ta dựa vào thanh ghi

nào:

a. Thanh ghi đếm nền b. Thanh ghi địa chỉ

c. Thanh ghi đếm từ hiện thời d.Thanh ghi địa chỉ nền

11. Chuẩn RS232C quy định:

a. Kích thước cáp không quá 20m b. Tốc độ truyền là 50bit/s hay 20000bit/s

c. Dữ liệu được tạo khung theo dạng: START + DATA + STOP d. Cả a và c đúng

12. Thiết bị ngoai vi ghép nối với máy tính qua cổng LPT sẽ trao đổi dữ liệu với PC theo pp:

a. Định trình b. Thăm dò c. Ngắt cứng d. DMA

13. Hệ thống ngắt cứng sẽ gồm tối đa

a. 64 yêu cầu IRQ b. 72yêu cầu IRQ c. 8 PIC d. Cả a và c

111/31

Page 112: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ôn tập

13. Nói về PIC thì

a. Môi PIC đón nhận được 8 yêu cầu IRQ b. Môi PIC đón nhận được 16 yêu cầu IRQ

c. Yêu cầu IRQ0 có độ ưu tiên lớn nhất c. Yêu cầu IRQ0 có độ ưu tiên nhỏ nhất

14. Phát biểu nào sau sai:

a. Lệnh chia cho 0 kích hoạt ngắt ngoại lệ b. Lệnh sai cú pháp kích hoạt ngắt ngoại lệ

c. Tràn số kích hoạt ngắt ngoại lệ d. Lôi bộ nhớ kích hoạt ngắt ngoại lệ

15. Nếu giá trị thanh ghi OCW1 trong PIC 8259 có giá trị 80h thì yêu cầu ngắt bị cấm là:

a. IRQ0 b. IRQ4 c. IRQ3 d. IRQ7

16. Nếu giá trị thanh ghi IRR trong PIC 8259 có giá trị 41h thì yêu cầu ngắt đòi phục vụ là:

a. IRQ6 và IRQ1 b. IRQ4 và IRQ0 c. IRQ6 và IRQ0 d. IRQ4 và IRQ1

112/31

Page 113: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Hệ thống bàn phím của máy tính

• Khi KC 8042 đặt "DATA" = 0 và "CLOCK" = 1 thì 8048 phải nhận các chỉ lệnh

từ KC 8042. Khi KC 8042 đặt "DATA" = 1 và (CLOCK" = 1 thì 8048 được quyền

truyền mã phím cho máy tính. Quá trình truyền dữ liệu được đồng bộ bằng dãy

xung đồng bộ do 8048 phát ra trên đây “CLOCK

113/31

Page 114: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Màn hình

114/31

Page 115: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Màn hình CRTC (màn hình ): Tự nghiên cứu.

Gồm 25 hàng và 80 cột. Môi ký tự trên màn hình là một cấu

trúc của ma trận 8x8 điểm ảnhd

Ký tự đƣợc hiển thị trên màn hình là ánh xa của 2 ô nhớ

liên tiếp nhau trong bộ nhớ hiển thị. Và vị trí của 2 ký tự

đó quyết định tọa độ ký tự trên màn hình

Về các ban tự tìm hiểu về nguyên tắc nghi đọc thông tin

trên đĩa từ (là hiện tƣợng gì, và quá trình biến đổi dang

dữ liệu diễn ra nhƣ thế nào)

115/31

Page 116: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Màn hình

116/31

Page 117: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Đĩa từ

• Quá trình ghi/đọc thông tin trên đĩa từ có sự biến đổi tín hiệu

ra sao?

Thời gian còn lai sẽ ôn tập và giải đáp câu hỏi.

Có ban nào thắc mắc về điểm chuyên cần không?

(Điểm thi giữa kỳ*2+điểm chuyên cần)/3 các ban tự tính.

Tôi sẽ gửi vào mail chung cho cả lớp điểm tổng kết sau.

117/31

Page 118: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

THẢO LUẬN CHƢƠNG 1

1. Tìm địa chỉ logic tương ứng với địa chỉ vật lý sau: ABCDEh (3 cặp)

2. Địa chỉ offset được hiểu như thế nào?

3. So sánh ROM và RAM

4. Hãy chỉ ra cặp địa chỉ logic nào đúng trong các cặp sau:

CS:IP DS:IP DS:SP DS:BP DS:BX SS:BX

ES:BP ES:DI SS:BP SS:SP DS:CX DS:SI

5. Tìm số bù 2 của các số: -10101011; +11001011

6. Biểu diễn số dấu chấm động theo chuẩn IEEE754 đơn giản cần bao

nhiêu bit? Được định dạng ntn?

7. Khi thực hiện các câu lệnh/thao tác sau sẽ tác động vào bit cờ nào?

1. 0111+ 1111 2. 1111-1111 3. 10101110+11001100

118/31

Page 119: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

THẢO LUẬN CHƢƠNG 1 (TIẾP)

1. Giả sử có các chương trình: A B C D được gán các mức

đặc quyền lần lượt là: 0,1,2,3.

Theo luật về quyền truy nhập hãy chỉ ra những chương trình nào

được phép truy nhập vào đoạn mã lệnh/dữ liệu của chương trình

A; chương trình B; chương trình C; chương trình D?

2. Hãy phân biệt sự khác nhau giữa lệnh gọi gần và lệnh gọi xa. Lệnh

gọi nào phải cất giá trị thanh ghi IP, CS?

3. Vai trò của các thanh ghi CS,DS,ES,SS trong chế độ thực/chế độ

bảo vệ?

4.Trong chế độ bảo vệ: Cho bộ mô tả đoạn lấy ra có giá trị là

ABCDABCDABCDABCDh và địa chỉ offset BX=ABCD.

Hãy tính địa chỉ vật lý của ô nhớ cần truy xuất?

119/31

Page 120: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

THẢO LUẬN CHƢƠNG 1 (TIẾP)

- Vai trò của ROM BIOS?

120/31

Page 121: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ôn tập

Bài 1. Xây dựng bàn phím 32 phím (8cột, 4 hàng) và xác

định mã phím của 1 phím bất kỳ

Bài 2. Muốn hiển thị ký tự A ở tọa độ (0,2) và ký tự B ở

tọa độ (1,3) trên màn hình thì vị trí của các ô nhớ trong

bộ nhớ hiển thị =?

Bài 3. Thanh ghi ISR,IRR trong Pic 8259 tại một thời

điểm có thể có các giá trị nào?

Bài 4. Hệ thống ngắt cứng gồm 2 Pic ghép tầng với nhau.

Muốn phân biệt pic chủ/pic thợ ta căn cứ vào đặc điểm

nào?

Bài 5. Trong thanh ghi LCR của UART, để biểu diễn số bit

dữ liệu truyền cần ?bits. Tại sao lại cần từng đó?121/31

Page 122: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Ôn tập

6. Khi CPU thực hiện lệnh với 10 lần lặp thì giá trị gán cho CX là:

• 000Ah

• 10h

• byte cao của CX bằng 0000 1010b

• byte thấp của CX bằng 00001011b

7. Khi CPU thực hiện lệnh vào/ ra dữ liệu với thiết bị có địa chỉ là 101h thì giá trị các bit trong

thanh ghi DX là

• 00000001000000012

• 10011000000012

• 11000000012

• giá trị khác với các giá trị đã nêu trên

Bài 8. Bộ mô tả đoạn cho biết những thông tin gì về đoạn nhớ. Nếu cho giá trị bộ mô tả đoạn là:

123456789ABCDEF0h. hãy cho biết địa chỉ nền đoạn của đoạn đó, và cho biết đoạn này có

kích thước =?byte.

122/31

Page 123: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Kiểm tra

Câu 1: Kể tên các chế độ xác định địa chỉ toán hạng. Kể tên và vai trò của các thanh ghi

sử dụng khi xác định địa chỉ toán hạng theo chế độ định vị bộ nhớ.

Câu 2: Hãy cho biết?

Các thanh ghi đoạn.

Phương pháp quản lý bộ nhớ trong chế độ thực. Hãy vẽ hình minh họa.

Cách xác định địa chỉ nền đoạn; Địa chỉ logic; Địa chỉ vật lý.

Tính địa chỉ vật lý của ô nhớ nếu biết: SS=9A6D, BP=8A54.

Câu 3: Vẽ sơ đồ hệ thống vào/ra dl trong máy tính. Chức năng các loại thanh ghi trong

thiết bị giao diện. Vai trò của thanh ghi trạng thái trong pp vào/ra có thăm dò

123/31

Page 124: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Kiểm tra

1. Trình bày về hệ thống ngắt cứng?

Phân biệt PIC chủ, PIC thợ ta căn cứ vào những đặc điểm nào?

2. Hãy cho biết vai trò của UART8250 trong hệ thống máy

tính?

3.Hãy cho biết vai trò và cấu tạo của bàn phím. Phương pháp

tạo mã quét đối với bàn phím 16 phím nhấn. Tìm mã phím

của 4 phím nhấn trên cùng 1 hàng, trên cùng 1 cột của bàn

phím đó?

124/31

Page 125: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Nội dung ôn tập

1. Các thành phần cơ bản của máy vi tính

2. Các thanh ghi

3. Quản lý bộ nhớ trong chế độ thực

4. Các phương pháp xác định địa chỉ toán hạng

5. Kỹ thuật đường ống và xử lý song song mức lệnh

6. Bộ nhớ cache

7. Quản lý bộ nhớ theo cơ chế phân trang

Nghiêm cấm sử dụng tài liệu, ko trao đổi được với bạn trong

lúc làm bài

125/31

Page 126: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận nội dung chƣơng 1

1. Các thành phần cơ bản của máy tính số (xét về mặt phần cứng)

a. Bộ nhớ,cpu, thiết bị ngoại vi, thiết bị giao diện

b. CPU, ram, rom, bus, thiết bị vào/ra

c. CPU, bus, bộ nhớ, thiết bị ngoại vi

d. Thiết bị nhập, thiết bị xuất, cpu, bộ nhớ, bus

2. Phát biểu nào SAI

a. CMOS được nuôi bằng nguồn độc lập với nguồn nuôi của máy tính

b. Cmos chứa chương trình của hệ điều hành

c. Cmos cung cấp tiện ích thời gian thực

d. Ram-cmos lưu giữ cấu hình của hệ thống.

3. Hệ điều hành nằm ở đâu?

a. Bộ nhớ ngoài b. RAM c. ROM d. CPU126/31

Page 127: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận nội dung chƣơng 1

4. Đặc điểm của hệ thống bus trong máy tính

a. Bus dữ liệu là loại 2 chiều, địa chỉ 1 chiều, điều khiển 1 chiều

b. Bus dữ liệu là loại 1 chiều, địa chỉ 1 chiều, điều khiển 2 chiều

c. Bus dữ liệu là loại 2 chiều, địa chỉ 1 chiều, điều khiển 2chiều

d. Bus dữ liệu là loại 2 chiều, địa chỉ 2 chiều, điều khiển 1 chiều

5. Khi CPU thực hiện thao tác đọc dữ liệu từ bộ nhớ thì bus nào sẽ tham gia vào quá trình

đọc đó

a. Bus địa chỉ b. Bus dữ liệu c. Bus điều khiển d. Cả 3 loại bus

6. Muốn biết CPU đang thực hiện thao tác đọc dữ liệu hay ghi dữ liệu ra các thiết bị khác

ta sẽ căn cứ vào:

a. Chiều dữ liệu đi b. Địa chỉ của thiết bị c.Bus điều khiển d. Cả 3 đáp án

trên

7. Số bù 2 của số nhị phân âm có giá trị 10000 là:

a. 01111 b. 011110 c. 10000 d. 00000

127/31

Page 128: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận nội dung chƣơng 1

8. Nếu cho giá trị của một số thực biểu diễn theo chuẩn IEEE754 dạng 32bits có giá trị:

1110 0111 1000 0000 0000 0000 0000 0000

Hãy cho biết:

a. Số này là số dương và phần E có giá trị (theo hệ thập phân) là 317

b. Số này là số âm và phần E có giá trị (theo hệ thập phân) là 217

c. Số này là số âm, phần E có giá trị theo hệ thập phân là 207

d. Phương án khác

9. CPU 80286 là dòng CPU:

a. 24 bit vì bus địa chỉ rộng 24bits

b. 16 bit vì thanh ghi bên trong CPU dài 16bits

c. 8 bit vì đây là dòng CPU ra đời từ rất lâu

d. 16 bit vì bus dữ liệu rộng 16bits

128/31

Page 129: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

Thảo luận nội dung chƣơng 1

10. Muốn tính kích thước tối đa của bộ nhớ vật lý (RAM) mà CPU có thể truy xuất ta sẽ căn cứ

vào:

a. Bus địa chỉ b. Bus dữ liệu

c. Dòng CPU d.Chế độ làm việc của CPU.

11. Dung lượng RAM tối đa của dòng CPU 80286 là:

a. 1Mbyte b. 1Mbits c. 16Kbyte d. Phương án khác

12. Xét về vấn đề quản lý bộ nhớ thì CPU80286

a.Dành 20 bit khi hoạt động trong chế độ thực và 24bit trong chế độ bảo vệ

b. 16bit trong chế độ thực và 20 bit trong chế độ bảo vệ

c. Địa chỉ vật lý của ô nhớ trong chế độ thực dài 20 bit và chế độ bảo vệ là 24bit

d. Cả a và c đúng

13. Chọn đáp án SAI khi nói về đơn vị ALU trong CPU 80286 có thể thực hiện các phép toán:

a. Logic và số học b. Các lệnh nhập/xuất c. Các lệnh điều khiển

d. Các phép toán :logic, số học, logarit và lượng giác

129/31

Page 130: 1. Các thành phần cơ bản của máy tính số 2. Biểu …...- Chương trình tìm cung đĩa khởi động hệ thống - Chương trình vào/ra cơ bản (BIOS) - Quét

130/31