

Chương 3
Presentation
•
Mathematics
•
University
•
Practice Problem
•
Hard
Standards-aligned
Khánh Quốc
FREE Resource
118 Slides • 0 Questions
1
KỸ ThUẬT VI XỬ LÝ
GV: ThS. Nguyễn Trung Thị Hoa Trang
Microproccesor Engineering
2
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
ĐẶC TÍNH CỦA VXL 8085
CẤU TRÚC CỦA VXL 8085
SƠ ĐỒ CHỨC NĂNG CÁC CHÂN CỦA VI XỬ LÝ 8085
CÁC MẠCH ĐIỆN KẾT NỐT VI XỬ LÝ 8085
BỘ NHỚ CỦA VXL 8085
3
MỤC TIÊU CỦA CHƯƠNG
Sau khi học xong chương này người học sẽ có khả
năng:
Kiến thức:
- Trình bày đặc tính cơ bản của VXL 8085
- Trình bày được cấu trúc của VXL 8085
- Trình bày được sơ đồ chân và ý nghĩa các chân của VXL
8085
- Trình bày được các mạch điện cơ bản kết nối với VXL
8085
Kỹ năng:
- Ghép nối được bộ nhớ cho VXL
4
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
Câu 7: Nêu vai trò của bộ đếm chương trình trong
hoạt động của vi xử lý?
Câu 8: Thanh ghi lệnh có vai trò gì trong hoạt động
của vi xử lý?
Câu 9: Phân biệt chu kì máy, chu kì lệnh trong hoạt
động của vi xử lý?
Câu 10: Ngăn xếp (stack) là gì? Ứng dụng cơ bản
của ngăn xếp?
5
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 1. Đặc tính của Vi xử lý 8085
- Vi xử lý 8 bit (có khả năng truyền 8 bit
dữ liệu cùng một lúc).
- Cấp nguồn đơn: +5VDC
- Hoạt động cần fclk khoảng 3MHz (chu
kỳ đồng hồ là 320ns). Có bộ dao động
bên trong dùng LC, RC hoặc Thạch
anh.
- Có 16 bit địa chỉ, có thể truy nhập bộ
nhớ có dung lượng tối đa 64KB.
- Có 8 bit địa chỉ cổng vào/ra, như vậy
có thể điều khiển được (28) 256 cổng
vào/ra.
- Có 80 lệnh cơ bản và 246 mã lệnh.
6
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 1. Đặc tính của Vi xử lý 8085
- Có 5 ngắt cứng: TRAT, RST7.5, RST6.5, RST5.5 và INTR.
- Có cổng vào ra nối tiếp cho phép truyền thông nối tiếp.
- Có các tín hiệu điều khiển (𝐼𝑂/ ഥ𝑀, 𝑅𝐷, 𝑊𝑅) để điều khiển
quá trình đọc ghi dữ liệu.
- Cho phép sử dụng chế độ truy xuất bộ nhớ trực tiếp
(DMA).
- Có thể kết hợp 3 chip vi xử lý khi sử dụng các chip điều
khiển I/O như IC8155 hoặc IC8355 .
7
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 1. Đặc tính của Vi xử lý 8085
Vi xử lý 8085 có 3
thành
phần
chính
là:
Đơn vị số học và logic
(ALU), bộ điều khiển và
định
thời
(Timing
and
Cotrol) và một số thanh
ghi (Registers).
Hình 3.1 – Cấu trúc bên trong của vi xử lý
8085
8
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 1. Đặc tính của Vi xử lý 8085
Khối ALU của vi xử lý 8085 làm việc với 8 bit dữ liệu,
gồm các khối thực hiện các phép toán số học và logic
sau:
[1] ADD (cộng)
[2] SUB (trừ)
[3] AND
[4] OR
[5] XOR
[6] NOT
[7] Increment (Tăng dần 1 đơn vị)
[8] Decrement (Giảm dần 1 đơn vị)
[9] Left shift (dịch trái)
[10] Clear (xóa về 0)
9
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 1. Đặc tính của Vi xử lý 8085
Timing and Control Unit - Bộ điều khiển và định thời: là
một phần của CPU.
-
Nó có nhiệm vụ điều khiển toàn bộ các quá trình hoạt
động của vi xử lý, gồm việc đồng bộ xung nhịp, nạp
lệnh, giải mã lệnh, tạo các tín hiệu phù hợp để thực
hiện lệnh.
-
Nó cung cấp các tín hiệu trạng thái, điều khiển và thời
gian cần thiết cho hoạt động của bộ nhớ và các thiết
bị I / O.
-
Nó kiểm soát toàn bộ hoạt động của bộ vi xử lý và
các thiết bị ngoại vi kết nối với nó.
Như vậy có thể thấy rằng bộ phận điều khiển của CPU
hoạt động như một bộ não của máy tính.
10
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 1. Đặc tính của Vi xử lý 8085
Registers – Thanh ghi là những bộ nhớ nhỏ trong CPU. Chúng
được bộ vi xử lý sử dụng để lưu trữ tạm thời và thao tác dữ liệu. Dữ
liệu vẫn còn trong thanh ghi cho đến khi chúng được gửi đến bộ
nhớ hoặc các thiết bị I / O. Bộ vi xử lý Intel 8085 có các thanh ghi
như:
1. Thanh ghi tích lũy 8 bit (ACC-Accumulator) tức là thanh ghi
A.
2. Sáu thanh ghi mục đích chung 8 bit: B, C, D, E, H và L.
3. Bộ đếm chương trình 16 bit (PC-Program counter)
4. Thanh ghi lệnh (Instruction register)
5. Con trỏ ngăn xếp (SP - Stack pointer)
6. Thanh ghi trạng thái (Status register)
7. Thanh ghi tạm thời (Temporary register)
8. Thanh ghi cờ (Flag register)
11
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 2. Cấu trúc của Vi xử lý 8085
Các khối chức năng gồm:
[1] Mảng thanh ghi (Registor Array)
[2] Khối logic số học (ALU)
[3] Bộ giải mã lệnh và mã hóa chu kỳ máy (Instruction
Decoder and Machine Cycle Encoding)
[4] Bộ đệm địa chỉ (Address Buffer)
[5] Bộ đệm dữ liệu/ địa chỉ (Data/ Address Buffer
[6] Bộ tăng/ giảm địa chỉ chốt (Increnenter/Decrenenter
Address Latch)
[7] Điều khiển ngắt (Interrupt Control)
[8] Điều khiển cổng vào ra nối tiếp (Serial I/O Control)
[9] Mạch tạo dao động và điều khiển (Timing and Control)
12
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3. 2. Cấu trúc của Vi xử lý 8085
3.2.1. Cấu trúc của mảng thanh ghi
Hình 3.2 – Cấu trúc của
mảng thanh ghi trong
8085
W Reg.
Z Reg.
B Reg.
C Reg.
D Reg.
E Reg.
H Reg.
L Reg.
Con trỏ ngăn xếp
(SP_stack Pointer)
Bộ đếm chương trình
(PC_Program
Counter)
Các thanh ghi mà người sử dụng có thể thay
đổi giá trị (lập trình) bao gồm:
6 thanh ghi chức năng chung 8 bit (B, C,
D, E, H, L)
2 thanh ghi 16 bit (SP và PC).
Các thanh ghi không thay đổi từ chương
trình người sử dụng mà bị thay đổi nội dung
bởi các lệnh bên trong của Vi xử lý:
Thanh ghi tạm thời W và Z
Các thành ghi đặc biệt
Thanh ghi dùng chung A (Accumulator
Reg.)
Thanh ghi lệnh (Instruction Reg.)
Thanh ghi cờ (Flag Reg.)
13
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.1. Các thanh ghi chức năng chung
- Gồm 6 thanh ghi chức năng chung 8 bit (B, C, D, E, H,
L)
- Có thể dùng như các thanh ghi đơn 8 bit hoặc ghép
lại thành từng cặp thành thanh ghi 16 bit như BC, DE
và HL. Khi ghép lại thành từng cặp thì byte cao được
đặt trong thanh ghi đầu tiên (ví dụ thanh ghi B trong
cặp BC), B là byte cao và C là byte thấp.
- Thanh ghi HL có thể được sử dụng như 1 con trỏ dữ liệu
trong con trỏ chương trình.
- Để ghi và đọc giá trị trong các thanh ghi này, sử dụng
1 lệnh bên trong mà không cần truy nhập Bus. Chính vì
vậy, mà tốc độ truy nhập cao hơn so với truy nhập vào
14
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.2. Các thanh ghi tạm thời
- Các thanh ghi w và z là các thanh ghi tạm thời. Chúng sử
dụng để lưu giữ dữ liệu 8 bit trong quá trình thực hiện 1 số
lệnh.
Ví dụ: lệnh CALL (gọi 1 chương trình con) được dùng để
chuyển quyền điều khiển chương trình đến 1 chương trình
con. Lệnh này sẽ cất giữ bộ đếm chương trình (PC) hiện tại
vào trong ngăn xếp và nạp địa chỉ chứa chương trình con
vào bộ đếm chương trình (PC). Địa chỉ tạm thời này được
chứa trong thanh ghi w và z và được đưa ra bus ở chu kỳ
đầu thực hiện lệnh (Fetch).
15
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.3. Các thanh ghi 16 bit
[1] Bộ đếm chương trình (PC):
- Bộ đếm chương trình là 1 thanh ghi chức năng đặc biệt
và là một trong những thanh ghi quan trọng nhất của vi
xử lý, nó điều hành vi xử lý cần thực hiện công việc gì và
thể hiện như thế nào, nó quyết định lệnh nào được thực hiện
trước tiên và lệnh tiếp theo là gì.
- Bộ đếm chương trình xác định địa chỉ của vùng nhớ của lệnh kế
tiếp sẽ được thực hiện. Bộ đếm chương trình 16 bit có thể địa chỉ
hóa được 216(64KB) giá trị trong bộ nhớ.
Nêu vai trò của bộ đếm chương trình trong hoạt động
của vi xử lý?
16
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.3. Các thanh ghi 16 bit
[1] Bộ đếm chương trình (PC):
Thường thường, khi thực hiện xong 1 câu
lệnh bộ đếm chương trình sẽ tự động tăng
lên 1 giá trị để thực hiện lệnh tiếp theo.
Tuy nhiên khi gọi 1 chương trình con sẽ
thực hiện 1 lệnh cho phép nạp địa chỉ
vùng nhớ có chứa chương trình con vào
bộ đếm chương trình. Khi chương trình
con được thực hiện bộ đếm chương trình
sẽ chứa địa chỉ vùng nhớ có câu lệnh
đầu tiên của chương trình con. Sau khi
thực hiện xong chương trình con, bộ đếm
chương trình sẽ được nạp địa chỉ vùng
nhớ của câu lệnh tiếp theo mà trước khi
chương trình con thực hiện.
17
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.3. Các thanh ghi 16 bit
[2] Con trỏ ngăn xếp (SP):
Thanh ghi con trỏ ngăn xếp này rất quan trọng trong khi
sử dụng để gọi 1 chương trình con. Khi 1 chương trình con
được gọi, vi xử lý cần lưu trữ vị trí của câu lệnh trong
chương trình chính. Vị trí này được gọi là địa chỉ trả về,
được lưu trong 1 vùng nhớ đặc biệt gọi là ngăn xếp (là một
vùng nhớ dành riêng ở trong RAM). Trước khi trao quyền
điều khiển cho chương trình con, địa chỉ trả về cần được
cất giữ vào trong ngăn xếp. Sau khi thực hiện xong chương
trình con, địa chỉ trả về được lấy ra từ trong ngăn xếp và
nạp vào bộ đếm chương trình.
18
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.3. Các thanh ghi 16 bit
[2] Con trỏ ngăn xếp (SP)
Ngăn xếp (stack) là một cấu trúc
dữ liệu trừu tượng hoạt động theo
nguyên tắc "vào sau, ra trước" (Last
In, First Out - LIFO) dùng để lưu trữ vị trí
của câu lệnh trong chương trình chính.
Ứng dụng: quản lý lời gọi hàm, quản
lý ngắt, lưu trữ biến cục bộ của hàm,
quản lý tham số hàm, đảo ngược
chuỗi, đánh dấu biểu thức, kiểm tra
dấu ngoặc, chuyển đổi giữa các hệ
đếm
Ngăn xếp (stack) là gì? Ứng dụng cơ bản của ngăn xế
19
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.4. Các thanh ghi đặc biệt
Thanh ghi dùng chung A (accumlator): đây là thanh ghi
3 trạng thái 8 bit (tri-state), nó hay được dùng nhất trong
các phép toán số học, logic, nạp và ghi dữ liệu, truy nhập
các cổng vào/ ra. Tất cả các kết quả của phép toán số
học và logic đều được nạp vào thanh ghi A, do tần suất
thực hiện các lệnh này lớn nên thông thường thanh ghi A
hay được sử dụng nhất.
Thanh ghi lệnh (Instruction register): Khi thực hiện lệnh, đầu
tiên mã lệnh sẽ được nạp vào vi xử lý từ bộ nhớ chương
trình. Vi xử lý sẽ lưu mã lệnh vào thanh ghi lệnh. Mã lệnh
này sau đó sẽ được đưa vào bộ giải mã lệnh để lựa chọn 1
trong số 256 giá trị tương ứng.
20
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.4. Các thanh ghi đặc biệt
Thanh ghi cờ (Flag): Đây là thanh ghi 8 bit, trong đó có 5
bit được sử dụng để báo hiệu, để nhận biết của trạng thái
sau của quá trình thực hiện lệnh nào đó. Chúng bao gồm
các cờ: s (cờ dấu), z (cờ zero), AC (cờ báo tràn phụ), P (cờ
báo chẵn lẻ) và CY (cờ tràn).
D7
D6
D5
D4
D3
D2
D1
D0
S
Z
-
AC
-
P
-
CY
cờ dấu
cờ zero
cờ báo tràn
phụ
cờ báo chẵn
lẻ
cờ tràn
21
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.4. Các thanh ghi đặc biệt
Thanh ghi cờ (Flag):
Cờ dấu (S)
Sau khi thực hiện phép toán số học và logic nếu bit D7 của kết quả có giá
trị 1, thì cờ dấu s được đặt giá trị 1. Như vậy nếu byte nhận được có bit D7
là 1 thì số đó là số âm, ngược lại là số dương.
Cờ zero (z)
z=1 nếu kết quả thực hiện trong ALU có giá trị 0 và cờ này sẽ bị xóa (z=0)
nếu kết quả ≠ 0. Cờ zero cũng được đặt lên 1 khi sử dụng lệnh tăng hoặc
giảm giá trị của 1 thanh ghi nào đó mà kết quả có giá trị 0
Cờ tràn phụ
(AC)
AC=1 trong trường hợp bị tràn bit số 3, tức là giá trị từ bit D3 bị đẩy sang bit
D4. Cờ này được sử dụng khi thực hiện lệnh với dữ liệu BCD và người sử
dụng không thay đổi được giá trị của cờ này.
Cờ chẵn lẻ
(P_Parity)
Bit kiểm tra chẵn lẻ dùng để xác định số lượng bit 1 trong thanh ghi dùng
chung A là chẵn hay lẻ. sau phép toán số học hoặc logic nếu trong kết
quả có số lượng bit 1 là chẵn thì cờ này được đặt lên 1, nếu là lẻ thì giá trị
của nó sẽ là 0.
Cờ tràn (CY)
Giá trị cờ này được đặt lên 1 nếu bị tràn bit 7
22
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.4. Các thanh ghi đặc biệt
Thanh ghi cờ (Flag): Đây là thanh ghi 8 bit, trong đó có 5 bit
được sử dụng để báo dấu hiệu để nhận biết của trạng thái sau
quá trình thực hiện lệnh nào đó.
Ví dụ phép tính có cờ tràn như sau:
10011011
+ 01110101
1 00010000
Phép
cộng
Kết
quả
Nhớ
0 + 0
=
0
0
0 + 1
=
1
0
1 + 0
=
1
0
1 + 1
=
0
1
Bướ
c
Cộ
t
Thực hiện
1
1
1 + 1 = 0 nhớ 1
2
2
1 + 0 = 1 + 1 (1 nhớ ở b1) = 0 nhớ 1
3
3
0 + 1 = 1 + 1 (1 nhớ ở b2) = 0 nhớ 1
4
4
1 + 0 = 1 + 1 (1 nhớ ở b3) = 0 nhớ 1
5
5
1 + 1 = 0 (nhớ 1) + 1 (1 nhớ ở b4) =
1
6
6
0 + 1 = 1 + 1 (1 nhớ ở b5) = 0 nhớ 1
7
7
0 + 1 = 1 + 1 (1 nhớ ở b6) = 0 nhớ 1
8
8
1 + 0 = 1 + 1 (1 nhớ ở b7) = 0 nhớ 1
(tràn)
23
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.4. Các thanh ghi đặc biệt
Thanh ghi cờ (Flag): Đây là thanh ghi 8 bit, trong đó có 5 bit
được sử dụng để báo dấu hiệu để nhận biết của trạng thái sau
quá trình thực hiện lệnh nào đó.
Ví dụ phép tính có cờ tràn như sau:
10001001
− 10101011
1 11011110
Bướ
c
Cộ
t
Thực hiện
1
1
1 – 1 = 0
2
2
0 – 1 = 1 nhớ -1
3
3
0 – 0 = 0 -1 (nhớ -1 ở b2) = 1 nhớ -1
4
4
1 – 1 = 0 – 1 (nhớ -1 ở b3) = 1 nhớ -
1
5
5
0 – 0 = 0 – 1 (nhớ -1 ở b4) = 1 nhớ -
1
6
6
0 – 1 = 1 (nhớ -1) – 1 (nhớ -1 ở b5)
= 0
7
7
0 – 0 = 0 – 1 (nhớ -1 ở b6) = 1 nhớ -
1
Phép trừ
Kết quả
Nhớ
0 - 0
=
0
0
0 - 1
=
1
-1
1 - 0
=
1
0
1 - 1
=
0
0
Số tràn =1 là số
âm
24
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.1. Cấu trúc của mảng thanh ghi
3.2.1.4. Các thanh ghi đặc biệt
Thanh ghi cờ (Flag): Đây là thanh ghi 8 bit, trong đó có 5 bit
được sử dụng để báo dấu hiệu để nhận biết của trạng thái sau
quá trình thực hiện lệnh nào đó.
Ví dụ phép tính có cờ tràn như sau:
10001001
− 10101011
1 11011110
10001001
+ 01010101
11011110
Phép
cộng
Kết
quả
Nhớ
0 + 0
=
0
0
0 + 1
=
1
0
1 + 0
=
1
0
1 + 1
=
0
1
Phép trừ
Kết
quả
Nhớ
0 - 0
=
0
0
0 - 1
=
1
-1
1 - 0
=
1
0
1 - 1
=
0
0
số bù 1(00100001) +1 = -100010=-34
số bù 1 của 10101011+1=số bù 2
Số tràn =1 là số
âm
25
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.2. Bộ giải mã lệnh (Instruction Decoder)
- Khi thực hiện lệnh đầu tiên vi xử lý nạp mã lệnh từ bộ nhớ vào
thanh ghi lệnh.
- Sau đó sẽ gửi mã lệnh đến bộ giải mã lệnh, bộ giải mã lệnh giải mã
nó và tạo tín hiệu điều khiển với nhịp thời gian phù hợp để điều
khiển thanh ghi, bộ đếm dữ liệu, ALU, tín hiệu ngoại vi phụ thuộc
câu lệnh cụ thể.
3:8
Decoder
(B)
I
3
8
CU
Tín hiệu điều
khiển
26
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.3. Bộ đệm địa chỉ (Address buffer)
Đây là bộ đệm điều khiển 1 chiều 8 bit. Nó được
sử dụng để điều khiển Bus địa chỉ bit cao (A8 ÷ A5),
đồng thời được sử dụng để chuyển về trạng thái trở
kháng cao. Bus địa chỉ bit cao khi gặp các trường
hợp như khởi động (reset), tạm dừng, dừng hay các
dòng địa chỉ này không dùng.
Đây là bộ đệm điều khiển 2 chiều 8 bit. Nó được
dùng để điều khiển việc chọn kênh giữa kênh địa chỉ
và kênh dữ liệu, tức là bus địa chỉ bit thấp (A7 ÷ A0) và
Bus dữ liệu (D0 ÷ D7). Đồng thời được sử dụng để
chuyển về trạng thái trở kháng cao. Bus chọn kênh dữ
liệu/ địa chỉ khi gặp các trường hợp như khởi động
(reset), tạm dừng, dừng hay các đường dữ liệu này
không dùng.
3.2.4. Bộ đệm dữ liệu/địa chỉ (Data/Address buffer)
27
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.5. Bộ tăng/giảm địa chỉ chốt (Increnenter/Decrenenter
Address Latch)
Là thanh ghi 16 bit này được sử dụng để tăng hay giảm nội
dung của bộ đếm chương trình (PC) hoặc con trỏ ngăn xếp.
Vi xử lý nạp lệnh, gửi mã và thực hiện lệnh 1 cách tuần tự,
các câu lệnh được thực hiện liên tiếp nhau theo trình tự từ trên
xuống dưới theo địa chỉ tăng dần của bộ nhớ. Tuy nhiên có những
trường hợp đòi hỏi vi xử lý thực hiện nhiệm vụ đặc biệt theo 1 yêu cầu
bất thường nào đó, chương trình đang chạy được tạm dừng chuyển
sang chạy 1 hàm ngắt để thực hiện đáp ứng đặc biệt. Sau khi hàm
ngắt thực hiện xong, chương trình đang chạy trước đó được thực
hiện tiếp từ điểm tạm dừng.
3.2.6. Điều khiển ngắt (Interrupt Control)
28
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.2.7. Điều khiển truyền thông nối tiếp (Serial I/O Control)
- Phục vụ việc truyền dữ liệu từ vi xử lý này đến vi xử lý khác hay
tới máy tính, thông thường sử dụng kênh truyền thông nối tiếp
không đồng bộ UART.
- Lợi thế của kênh truyền thông này là sử dụng ít dây kết nối do
đó giảm giá thành và khả năng chống nhiễu cao hơn kênh
truyền song song, đặc biệt là truyền với khoảng cách lớn.
- Với kênh truyền nối tiếp, trên đường truyền sẽ gửi từng bit tại một
thời điểm.
- Trong vi xử lý 8085, điều khiển cổng vào ra nối tiếp có 2 đường là
dữ liệu đầu ra nối tiếp (SOD) và dữ liệu đầu vào nối tiếp (SID).
Đường SOD được sử dụng để gửi dữ liệu nối tiếp, đường SID
được sử dụng nhận dữ liệu nối tiếp.
29
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
Hình 3.3 – Cấu hình chân của VXL 8085 và Sơ đồ chức năng chân của
VXL 8085
Các tín hiệu vào ra vi
xử lý có thể phân loại
thành 7 nhóm như sau:
- Các chân tạo dao
động và cấp nguồn.
- BUS dữ liệu và BUS
địa chỉ.
- BUS điều khiển.
- Tín hiệu ngắt.
- Tín hiệu vào ra nối
tiếp.
- Tín hiệu truy nhập bộ
nhớ trực tiếp DMA.
- Tín hiệu Reset.
30
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.1. Các chân tạo dao động và cấp nguồn
VCC :chân cấp nguồn đơn cực +5V
VSS : chân nối đất (mass)
X1 và X2: chân tạo dao động, mạch cộng hưởng LC,
RC hoặc thạch anh được kết nối vào hai chân này.
Mạch tạo dao động bên trong sau khi tạo ra dao động,
sẽ chia tần số với hệ số 2. Ví dụ để hệ thống vi xử lý làm
việc với tần số 3Mhz, mạch dao động cần tạo tần số
6Mhz.
CLK OUT: Tín hiệu này được sử dụng như tín hiệu xung
nhịp cho thiết bị khác. Tần số này bằng ½ tần số được
tạo ra từ mạch dao động.
31
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.2. Bus dữ liệu và Bus địa chỉ
ADo ÷ AD7: Các chân của 8 bit dữ liệu (D0 đến D7) được
sử dụng chung với 8 bit địa chỉ thấp (A0 đến A7), và
hoạt động theo nguyên tắc dồn kênh (Multiplexing). Tại
phần đầu của chu kỳ máy (T1) 8 bit thấp của địa chỉ
vùng nhớ hoặc địa chỉ vào ra được áp lên BUS. Tại các
phần sau của chu kỳ máy (T2 và T3) đường BUS này
được sử dụng cho 8 bit dữ liệu 2 chiều.
Bus địa chỉ A8 ÷ A15: Phần bit cao của 16 bit địa chỉ
được áp vào các đường dây địa chỉ từ A8 đến A15.
Các chân này được sử dụng chuyên cho đường BUS
địa chỉ các bit cao.
32
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.3. Tín hiệu trạng thái và điều khiển
ALE (Address Latch Enable – Cho phép chốt địa chỉ): Như chúng
ta
đã
biết
các
đường
AD0
đến
AD7
được
dồn
kênh
(multiplexing) các địa chỉ byte thấp từ A0 đến A7 hoạt động chỉ
trong thời gian T1 của chu kỳ máy để truy nhập vào vùng nhớ
hoặc địa chỉ vào ra (I/O). Điều này có nghĩa là địa chỉ byte thấp
cần được chốt (giữ lại) cho các thời điểm sau của chu kỳ máy.
Việc chốt các địa chỉ bit thấp được thực hiện bởi tín hiệu “Cho
phép chốt địa chỉ-ALE” và được đưa ra bên ngoài vi xử lý 8085.
33
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.3. Tín hiệu trạng thái và điều khiển
𝐑𝐃 và WR : Các tín hiệu này được sử dụng để điều khiển chiều
của dòng dữ liệu giữa vi xử lý và bộ nhớ hoặc thiết bị vào ra.
Mức thấp của chân RD thể hiện rằng một dữ liệu cần được đọc từ
vùng nhớ hoặc cổng vào ra lựa chọn thông qua BUS dữ liệu.
Mức thấp của chân WR thể hiện rằng một dữ liệu cần phải ghi vào
vùng nhớ hoặc cổng vào/ra lựa chọn thông qua BUS dữ liệu.
Chu kỳ đọc/ghi
34
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.3. Tín hiệu trạng thái và điều khiển
IO/M: Tín hiệu IO/M được sử dụng để phân biệt giữa
các hoạt động liên quan đến cổng vào/ra hay bộ nhớ.
- Khi tín hiệu này ở mức thấp (IO / M = 0), nó biểu thị các hoạt động liên
quan đến bộ nhớ.
- Khi tín hiệu này ở mức cao (IO / M = 1), nó biểu thị một hoạt động I / O.
S0 và S1 : S0 và S1 thể hiện dạng của chu kỳ máy hoạt
động:
đọc
(S0=0,S1=1),
ghi
(S0=1,S1=0),
nạp
lệnh
(S0=S1=1) hay tạm dừng (Halt, S0=S1=0)
35
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.3. Tín hiệu trạng thái và điều khiển
36
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.3. Tín hiệu trạng thái và điều khiển
READY:
-
Được sử dụng để vi xử lý nhận biết được trạng thái sẵn
sàng của các thiết bị ngoại vi mà nó kết nối. Nếu thiết
bị ngoại vi chưa sẵn sàng thì vi xử lý cần phải đợi khi kết
nối.
-
Tín hiệu này được sử dụng để đồng bộ với các thiết bị
ngoại vi hoạt động chậm hơn so với vi xử lý.
37
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.4. Tín hiệu ngắt
Vi xử lý 8085 có 5 tín hiệu ngắt cứng, các ngắt này có
mức ưu tiên cố định của dịch vụ ngắt: TRAP (mức ưu
tiên 1), RST7.5 (mức ưu tiên 2), RST 6.5 (mức ưu tiên 3),
RST5.5 (mức ưu tiên 4), và INTR (mức ưu tiên 5). Vi xử lý
sẽ xử lý các đòi hỏi ngắt này tại thời điểm cuối của lệnh
đang thực hiện.
Tín hiệu 𝐼𝑁𝑇𝐴 (Acknowledge Interrupt- Ngắt báo nhận):
Khi có một yêu cầu ngắt được gửi đến VXL và sau khi
chấp nhận ngắt, VXL sẽ gửi tín hiệu 𝐼𝑁𝑇𝐴 (hoạt động ở
mức thấp) đến thiết bị ngoại vi.
38
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.5. Tín hiệu vào ra nối tiếp
Tín hiệu SID (Đường dữ liệu đầu vào nối tiếp): Là một
đường đầu vào mà qua đó bộ VXL chấp nhận dữ liệu
nối tiếp.
Tín hiệu SOD (Đường dữ liệu ra nối tiếp): Là một đường
đầu ra mà qua đó bộ VXL gửi dữ liệu nối tiếp đầu ra.
39
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.6. Tín hiệu truy nhập bộ nhớ trực tiếp DMA
DMA (Direct memory access): là một cơ chế truyền dữ
liệu tốc độ cao từ ngoại vi tới bộ nhớ cũng như từ bộ
nhớ tới bộ nhớ.
-
HOLD: Tín hiệu này chỉ ra rằng một thiết bị ngoại vi
như bộ điều khiển DMA đang yêu cầu sử dụng bus
địa chỉ, bus dữ liệu và bus điều khiển của vi xử lý.
-
HLDA: Tín hiệu tích cực ở mức cao sử dụng để báo
hiệu sự chấp nhận đòi hỏi HOLD.
40
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.7. Tín hiệu Reset
𝑅𝐸𝑆𝐸𝑇 𝐼𝑁: Khi chân này ở mức thấp thì:
+ Bộ đếm chương trình chuyển về địa chỉ 0 (0000H)
+ Xóa trạng thái cho phép ngắt và Flip-flops HLDA.
+ Chuyển BUS dữ liệu, địa chỉ và điều khiển về trạng thái
trở kháng cao (High Z). Chú ý là chỉ thực hiện khi tín
hiệu Reset ở trạng thái tích cực.
+ Chuyển nội dung các thanh ghi bên trong của vi xử
lý về giá trị ngầm định.
41
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.3. Sơ đồ chức năng các chân của Vi xử lý 8085
3.3.7. Tín hiệu Reset
RESET OUT: Tín hiệu tích cực ở mức cao để thông báo
là vi xử lý bắt đầu reset. Tín hiệu này được đồng bộ với
đồng hồ xung nhịp vi xử lý và có thể sử dụng reset thiết
bị khác có kết nối với vi xử lý.
42
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.1. Bộ tạo xung nhịp trên chip
Vi xử lý 8085 có bộ tạo xung
nhịp trên chip, bộ tạo xung
nhịp này đòi hỏi một bộ cộng
hưởng như LC, RC hay thạch
anh. Flip-flop T bên trong sẽ
chia tần số dao động với hệ
số 2. Do đó tần số hoạt động
của vi xử lý 8085 luôn bằng ½
tần số dao động của mạch
cộng hưởng bên ngoài (nối
với X1 và X2).
Hình 3.4: Sơ đồ khối bên trong
của bộ tạo xung nhịp trên chip
X1
X2
1
2
VCC(+5
V)
T
CL
K
Q
ത𝑄
CLKou
t
8085
43
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.2. Mạch tạo dao động
Mạch cộng hưởng LC: tần số cộng
hưởng của mạch này được tính
theo công thức:
𝑓𝑟 =
1
2𝜋.
𝐿(𝐶𝑒𝑥𝑡 + 𝐶𝑖𝑛𝑡)
Trong đó: Cint là điện dung bên trong,
thông thường có giá trị là 15pF. Tần số
dao động ra có sai lệch khoảng 10%.
Để giảm nhỏ sự sai lệch của tần số dao
động ra, cần sử dụng tụ Cext có dung
lượng lớn gấp đôi so với Cint, tức là
khoảng 30pF.
Hình 3.5: Mạch cộng
hưởng LC
X1
X2
8085
C
L
44
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.1. Mạch tạo dao động
Mạch cộng hưởng RC: Tần số
dao động ra của mạch này
không ổn định, nhưng mạch
này có ưu điểm là giá thành
thấp.
Hình 3.6: Mạch cộng hưởng
RC
X1
X2
8085
C
R
45
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.1. Mạch tạo dao động
Mạch cộng hưởng thạch
anh: Mạch này có độ ổn
định tần số ra nhất. Sử dụng
1 tụ dung lượng 20pF nối
đất để mạch dễ dao động
khi mới bật điện.
Hình 3.7: Mạch xung nhịp thạch
anh
X1
X2
8085
C
Cryst
al
46
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.1. Mạch dao động ngoài
Có thể sử dụng nguồn dao động từ bên ngoài cấp vào
vi xử lý theo mạch như hình dưới. Ở đây xung nhịp bên
ngoài được cấp cho chân X1 và chân X2 sẽ được để
trống.
Hình 3.7: Mạch dao động
ngoài
X1
X2
8085
Không nối
(NC)
CLK
ngoài
+5V
47
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.2. Mạch Reset
Hình 3.8: Mạch Reset
-
Khi Reset, con trỏ chương trình
chuyển về địa chỉ 0000H do khi
bắt đầu hoạt động, vi xử lý 8085
thực hiện lệnh đầu tiên từ địa
chỉ 0000H.
-
Khi bắt đầu bật nguồn reset cần
được sử dụng để chắc chắn là
lệnh đầu tiên được thực hiện từ
địa chỉ 0000H.
48
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.2. Mạch Reset
- Khi bật nguồn chân reset-in cần
ở trạng thái mức thấp ít nhất
trong khoảng thời gian 10 ms
sau đó dùng điện áp lên Vcc.
Trong mạch hình dưới, khi bật
nguồn hoặc ấn nút, chân reset-
in sẽ xuống mức thấp và từ từ
tăng lên điện áp 5V đủ thời gian
để vi xử lý reset. Diode được
dùng để xả điện áp trên tụ khi
nguồn bị cắt.
Hình 3.8: Mạch Reset
49
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.4. Các mạch điện kết nối vi xử lý
2.4.2. Mạch Reset
- Sau khi reset, vi xử lý nạp địa chỉ
0000H vào bộ đếm chương trình
PC và xóa cờ INTE. Cờ này có
tác
dụng
cấm
ngắt.
Thông
thường khi vi xử lý bắt địa chỉ
hoạt động cần khởi tạo các
tham số của hệ thống, để tránh
ảnh hưởng của ngắt trong quá
trình này ta cần cấm các ngắt
hoạt
động.
Sau
khi
khởitạo
tham số xong, nếu cần 1 ngắt
nào đó hoạt động có thể sử
Hình 3.8: Mạch Reset
50
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.1. Các dạng ngắt
Ngắt cứng (Hardware Interrupts )
Ngắt mền (Software
Interrupts )
Vi xử lý 8085 có 5 chân ngắt cứng là: RST5.5,
RST 6.5, RST7.5, TRAP và INTR. Cho phép thiết
bị ngoại vi tạm dừng sự hoạt động của
chương trình chính để thực hiện 1 chương
trình đặc biệt đáp ứng tác động của thiết bị
ngoại vi. Khi 1 ngắt hoạt động, vi xử lý sẽ thực
hiện nốt lệnh hiện tại, và chuyển sang thực
hiện 1 hàm để phục vụ thiết bị ngoại vi. Khi
thực hiện xong hàm này, vi xử lý lại trở về
chương trình chính tại thời điểm vừa rời khỏi.
dạng ngắt này, khi các chân vi xử lý được
dùng để nhận các đòi hỏi ngắt được gọi là
ngắt cứng.
Nguyên nhân xảy ra ngắt là
cho thực hiện 1 lệnh nào
đó. Sau khi thực hiện các
lệnh này vi xử lý sẽ thực
hiện nốt lệnh đang hoạt
động và chuyển sang gọi 1
hàm đặc biệt. Khi thực hiện
xong
hàm
này,
chương
trình điều khiển lại chuyển
về thực hiện chương trình
chính. Vi xử lý 8085 có 8
ngắt mềm từ RST0 đến RST7.
51
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
-Vi xử lý 8085 có 5 ngắt cứng như
sau: TRAP, RST7.5, RST6.5, RST5.5, và
INTR.
-Khi một chân ngắt bất kỳ (ngoại trừ
INTR) tích cực, mạch điều khiển bên
trong sẽ thực hiện lệnh gọi CALL
đến vùng nhớ định trước. Vùng nhớ
này được gọi là bảng vecto ngắt
và các ngắt này gọi là vecto ngắt.
-Riêng ngắt INTR không là dạng
vecto ngắt. thiết bị bên ngoài sẽ
gửi địa chỉ cần gọi.
52
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
-Với vi xử lý 8085, tất cả các ngắt
(ngoại
trừ
TRAP)
đều
bị
che
(maskable). Tức là bình thường sẽ
không hoạt động, khi cần hoạt động
1 ngắt nào đó, cần cho phép ngắt
đó tích cực bằng lệnh từ vi xử lý. Như
vậy từ vi xử lý có thể cấm ngắt hoặc
cho phép ngắt hoạt động.
-Riêng ngắt TRAP không bị che có
nghĩa là nó luôn ở chế độ sẵn sàng
hoạt động (mức ưu tiên cao nhất).
53
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
- TRAP: Dạng ngắt TRAP có thể là sườn xung và mức trạng thái. Điều này
có nghĩa là để chế độ ngắt hoạt động, chân TRAP cần chuyển trạng
thái từ mức thấp lên mức cao và giữ ở mức cao cho đến khi thực
hiện đáp ứng ngắt. Hoạt động theo nguyên tắc như vậy cho phép loại
trừ các yếu tố nhiễu.
54
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
- TRAP: Một sườn dương của tín hiện TRAP sẽ set D-flip-flop. Thông qua cổng
AND để kiểm tra trạng thái mức cao của đầu vào sẽ đưa ra mức 1 của cổng
đầu ra “đòi hỏi ngắt lỗi gọi hàm ở địa chỉ 002HH”. Có 2cách để xóa tín hiệu đầu
ra:
+ Tín hiệu reset của vi xử lý Reset-in
+ Tín hiệu mức cao báo đã bắt đầu thực hiện đáp ứng ngắt.
Khi có 1 đòi hỏi ngắt TRAP, vi
xử lý thực hiện nốt lệnh hiện tại,
sau đó nó cất giữ địa chỉ câu lệnh
tiếp theo (chính là địa chỉ sẽ trả về
khi
thực
hiện
xong
ngắt)
vào
trong ngăn xếp, tiếp đến sẽ nạp
vào bộ nhớ chương trình địa chỉ
0024H. Như vậy vi xử lý thực hiện
hàm đáp ứng ngắt tại địa chỉ
0024H.
55
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
- RST7.5.: là ngắt bị che, nó có mức độ ưu tiên thứ 2, nó hoạt động khi có
1 sườn xung dương, lúc này sẽ set flip-flop D, việc xóa flip-flop D được
thực hiện nhờ lệnh SIM của vi xử lý hoặc tín hiệu đã bắt đầu thực hiện
đáp ứng ngắt. Khi có tín hiệu sườn lên vào chân RST7.5 và bit che M7.5
ở mức 0 (tức là ngắt RST7.5 không bị che) thì vi xử lý sẽ thực hiện nốt
lệnh hiện tại. sau đó sẽ cấp giữ địa chỉ tiếp theo và trong ngăn xếp và
nạp con trỏ chương trình và vecto địa chỉ cố định là 003CH. Như vậy vi
xử lý thực hiện hàm đáp ứng ngắt tại địa chỉ 003CH. Địa chỉ này gọi là
địa chỉ thực hiện của ngắt RST7.5, RST6.5 và RST5.5
- RST6.5 và RST5.5: là ngắt dạng mức. Các ngắt này có thể bị che khi sử
dụng lệnh SIM. Ngắt RST6.5 có mức độ ưu tiên thứ ba và RST5.5 có mức
độ thứ tư. Địa chỉ vecto tương ứng của RST6.5 và RST5.5 là 0034H và
002CH.
56
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
- INTR: Ngắt này à ngắt bị che, nhưng không phải là ngắt vecto.nó có
mức ưu tiên thấp nhất. khi chân INTR ở mức cao vi xử lý sẽ thực hiện 1
chuỗi sự kiện sau:
+ Vi xử lý kiểm tra trạng thái cảu tín hiện INTR trong quá trình thực hiện
mỗi lệnh.
+ Nếu chân tín hiệu INTR ở mức cao và ngắt được cho phép hoạt
động , vi xử lý 8085 sẽ thực hiện nốt lệnh hiện tại và giữ tín hiệu đáp
ứng ngắt ở mức tích cực thấp (INTA)
+ Khi có tín hiệu INTA, mạch logic sẽ đưa lệnh OPCODE lên Bus dữ liệu.
nếu đây là lệnh nhiều byte, các byte sẽ lần lượt được đưa lệnh Bus.
+ Khi nhận được lệnh, vi xử lý lưu địa chỉ của lệnh kế tiếp vào trong
stack và thực hiện lệnh nhận được.
57
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
Chú ý: về lý thuyết có thể đặt bất kỳ lệnh nào lên bus dữ liệu. Tuy nhiên chỉ có
lệnh CALL và RST mới ghi nội dung của bộ đếm chương trình vào ngăn xếp,
đồng thời nó sẽ chuyển chương trình điều khiển đếm địa chỉ vecto ngắt tương
ứng với lệnh ngắt.
Đáp ứng với lệnh CALL: nêu thiết bị ngoại vi có yêu cầu thực hiện lệnh CALL
thì vi xử lý sẽ tạo ra trình tự thực hiện như sau:
+ Nó gửi 1 tín hiệu đáp ứng ngắt mức thấp lần thứ hai.
+ Để trả lời đáp ứng này, mạch logic ngoài sẽ giữ địa chỉ byte thấp của lệnh
gọi CALL.
+ Sau khi nhận được byte địa chỉ thấp, vi xử lý giữ tín hiệu đáp ứng ngắt mức
thấp lần thứ ba.
+ Để trả lời đáp ứng này, mạch logic ngoài sẽ giữ địa chỉ byte cao của lệnh
gọi CALL.
+ Sau khi nhận được 16 bit địa chỉ của lệnh CALL, vi xử lý 8085 cất giữ nội
dung của bộ đếm chương trình vào ngăn xếp, và thực hiện hàm nằm ở địa
58
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
Ví dụ: Trong hình bên là sơ đồ của mạch
logic ngoài gửi lệnh RST7.5. Mạch logic
ngoài điều khiển buffer ba trạng thái (tri-
state) với tín hiệu INTA từ vi xử lý. Tín hiệu này
là tín hiệu cho phép đầu ra tích cực (output
enable), đồng thời để xóa D flip-flop. Trước
tiên sẽ có 1 ngăn vẫn thực hiện ngắt từ thiết
bị bên ngoài (I/O derice) thông qua flip-
flop D để giữ tín hiệu INTR ở mức cao cho
đến khi vi xử lý 8085 giữ tín hiệu đã đáp ứng
ngắt. Chân tín hiệu INTA đưa1 tín hiệu cho
phép truyền tín hiệu từ đầu vào ra đầu ra
59
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
Ví dụ: Như hình trên, trên buffer sẽ có giá trị FCH
tương ứng với lệnh RST7.5. Vi xử lý 8085 sẽ nhận lệnh
này trong chu kỳ đáp ứng ngắt. Sau khi nhận được
lệnh, vi xử lý cất giữ nội dung
của bộ đếm chương
trình PC vào ngăn xếp. sau đó, chương trình điều
khiển sẽ chuyển về thực hiện ở địa chỉ 003CH (địa chỉ
cảu vecto ngắt RST7.5). Bảng dưới thể hiện các đặc
tính của ngắt cứng vi xử lý 8085.
Dạng
ngắt
Kiểu
hoạt
động
Mứcđộưu
tiên
Che
ngắt
Vecto địa
chỉ
TRAP
Sườn
và
mức
1 (cao nhất)
Không
0024H
RST7.5
Sườn
2
Có
003CH
RST6.5
Mức
3
Có
0034H
RST5.5
Mức
4
Có
002CH
INTR
Mức
5 (thấp nhất)Có
-
60
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
Ngắt mềm của 8085:
- Vi xử lý 8085 có 8 ngắt mềm từ RST0 đến RST7.
Địa chỉ vector ngắt được tính như sau:
Địa chỉ vector = số hiệu ngắt x 8
Ví dụ, địa chỉ vector ngắt của RST5 là 5 x 8 =
40 = 28H
Bảng bên thể hiện địa chỉ vector ngắt mềm.
Lệnh
Mã
Hex
Địa chỉ
vector
RST 0
C7
0000H
RST 1
CF
0008H
RST 2
D7
0010H
RST 3
DF
0018H
RST 4
E7
0020H
RST 5
EF
0028H
RST 6
F7
0030H
RST 7
FF
0038H
61
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Cấu trúc và sự hoạt động của ngắt trong vi xử lý 8085
3.5.2. Tổng quan về cấu trúc ngắt
Lệnh che và không che ngắt
Việc che ngắt được cho phép (enable) hoặc cấm (disable) nhờ lệnh
trong chương trình (lệnh EI, DI và SIM).
-EI (enable interrupt) – cho phép ngắt. Lệnh EI sẽ set flip- flop D để đưa
mức cao vào các cổng AND của ngắt RST 7.5, RST 6.5, RST 5.5 và INTR.
Cần nhớ rằng khi 1 ngắt bất kỳ có đáp ứng, thì tín hiệu cho phép ngắt sẽ bị
xóa nhờ tín hiệu reset flip- flop D. Để cho phép ngắt trở lại cần thực hiện lại
lệnh EI.
-DI (disable interrupt) - Cấm ngắt. Lệnh DI xóa trạng thái cho phép ngắt
của flip- flop D, nó có hiệu lực với các ngắt RST 7.5, RST 6.5, RST 5.5 và INTR.
-SIM (set interrupt mask) – thiết lập chế độ ngắt. Lệnh này dùng để thiết lập
chế độ che ngắt và truyền ra cổng nối tiếp. Nó truyền nội dung của thanh
ghi dùng chung (ACC) tới mạch điều khiển ngắt và cổng vào/ra nối tiếp.
như vậy cần nạp vào thanh ghi dùng chung ACC nội dung phù hợp trước
khi thực hiện lệnh SIM.
62
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Bus I/O, bộ nhớ và hệ thống
Đường BUS kết nối các thành phần chính bên trong vi xử lý (CPU, bộ
nhớ, cổng vào/ra) được gọi là BUS hệ thống. BUS hệ thống được chia
thành 3 nhóm chức năng sau:
BUS dữ liệu
BUS địa chỉ
BUS điều khiển
Vi xử lý 8085 có các đường BUS AD0 – AD15 là Bus địa chỉ và dữ liệu,
các chân IO/M, 𝑅𝐷 và 𝑅𝑊 là đường BUS điều khiển.
63
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Bus I/O, bộ nhớ và hệ thống
3.6.1.Bus địa chỉ và Bus dữ liệu
Như chúng ta đã biết các đường AD0 đến
AD7 được dồn kênh (multiplexing) các địa
chỉ byte thấp từ A0 đến A7 hoạt động chỉ
trong thời gian T1 của chu kỳ máy để truy
nhập vào vùng nhớ hoặc địa chỉ vào ra
(I/O). Điều này có nghĩa là địa chỉ byte thấp
cần được chốt (giữ lại) cho các thời điểm sau
của chu kỳ máy. Việc chốt các dữ liệu của
địa chỉ byte thấp được thực hiện nhờ tín hiệu
ALE từ vi xử lý 8085.
Hình bên thể hiện mạch phần cứng để chốt
địa chỉ byte thấp sử dụng IC 74LS373.
64
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Bus I/O, bộ nhớ và hệ thống
3.6.2. Tín hiệu điều khiển
Vi xử lý 8085 có các chân RD và WR
để khởi tạo chu kỳ đọc và ghi. Do
các tín hiệu này được dùng chung
cho việc ghi/ đọc bộ nhớ và thiết bị
vào/ra bên ngoài, nên cần có mạch
tách các tín hiệu ghi đọc cho bộ nhớ
và thiết bị bên ngoài (I/O).
𝑀𝐸𝑀 𝑅 (Memory read)
𝑀𝐸𝑀 𝑊 (Memory write)
𝐼𝑂𝑅 (I/O read)
𝐼𝑂𝑊 (I/O write)
Có thể dùng mạch giải mã để tách
các tín hiệu này.
65
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Bus I/O, bộ nhớ và hệ thống
3.6.2. Tín hiệu điều khiển
𝐼𝑂/ ഥ𝑀
𝑅𝐷
W𝑅
𝑀𝐸𝑀𝑅
𝑀𝐸𝑀𝑾
𝐼𝑂𝑅
𝐼𝑂𝑊
0
0
0
Điều kiện này không bao giờ xảy ra
do ghi và đọc không đồng thời
0
0
1
0
1
1
1
0
1
0
1
0
1
1
0
1
1
1
1
1
1
1
0
0
Điều kiện này không bao giờ xảy ra
do ghi và đọc không đồng thời
1
0
1
1
1
0
1
1
1
0
1
1
1
0
1
1
1
1
1
1
1
66
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Bus I/O, bộ nhớ và hệ thống
3.6.3. Điều khiển bus
- BUS 1 chiều: sử dụng IC 74LS244 để
điều khiển BUS như hình bên. Mỗi cổng
này có thể cung cấp dòng ra là 15
mA và dòng nhận là 24 mA. Các
đường BUS được chia thành 2 nhóm
để cho phép từng nhóm hoạt động sử
dụng các chân điều khiển 1G và 2G.
67
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Bus I/O, bộ nhớ và hệ thống
3.6.3. Điều khiển bus
- BUS 2 chiều: lúc này sử dụng IC
74LS245. Khác với IC 74LS244 có thêm
chân DIR quy định chiều hoạt động ,
khi DIR ở mức cao, dữ liệu dự trữ
hướng A sang B và khi ở mức thấp dữ
liệu đi từ B sang A. Tương tự như vậy,
dòng ra có thể lên đến 15 mA, còn
dòng nhận là 24 mA.
68
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Bộ nhớ cố định ROM (Read Only Memory)
ROM
ROM có khả năng lập
trình - PROM
Bộ nhớ bán cố
định - EPROM
Được gọi là vi mạch nhớ cố định
vì số liệu do hãng chế tạo nạp
một lần và thông tin sẽ được lưu
trữ vĩnh viễn, sau đó chỉ có thể
đọc ra mà thôi. Khi nguồn điện
mất thì số liệu vẫn được giữ
nguyên. Vì vậy các bộ nhớ cố
định thường được sử dụng để
lưu trữ các chương trình kiểm
tra và khởi động một hệ vi xử lý
khi bật nguồn hoặc các thông
số của những lần chạy trước.
Programable
ROM:
Người thiết kế có khả
năng nạp chương trình
vào
ROM
nhưng
chỉ
được một lần duy nhất
và không thể sửa đổi
được.
Erasable
Programable
ROM:
Người
sử
dụng có thể nạp
và
xoá
chương
trình một số lần. Có
thể nạp bằng xung
điện và xoá bằng
tia cực tím. Hiện tại
EPROM
đang
được
dùng
khá
phổ biến.
69
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Bộ nhớ cố định ROM (Read Only Memory)
Ngoài ra tuỳ theo các nạp xoá số liệu người ta còn chia
bộ nhớ bán cố định ra những loại như EEPOM, EAPROM,
FLASH.
EEPROM
EAROM
Flash
Có thể nạp
xoá
số
liệu
bằng
phương
pháp điện.
Có thể nạp xoá chương
trình một số lần, việc nạp
xoá đơn giản bằng tín
hiệu điện nhưng nhược
điểm của loại này là
thường đòi hỏi nhiều loại
điện áp khác nhau
Là một kiểu Chip EEPROM.
Chính là Chip nhớ ghi lại
được toàn bộ dữ liệu, giữ
được nội dung thông tin
lưu
trữ
khi
không
có
nguồn điện cắm trực tiếp.
Có tốc độ đọc ghi nhanh,
xoá theo khối.
70
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Sơ đồ khối cơ bản của ROM
16x8 (16 từ 8 bit, kích cỡ từ = 8
bit)
-
Bởi vì dung lượng 16x8 nên có
8 đầu vào/ra dữ liệu, kích cỡ
từ là 8bit.
-
Bộ nhớ lưu trữ được 16 từ. Vì
vậy có 16 địa chỉ nhớ. Mà
16=24nên cần có mã địa chỉ 4
bit để giải mã một trong 16 địa
chỉ nhớ, cần 4 đường địa chỉ.
-
Kích cỡ từ là 8bit nên 16 từ =
16 byte
71
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Bộ nhớ truy xuất ngẫu nhiên
RAM (Random Access Memory – bộ nhớ đọc/ghi): Bộ nhớ đọc
ghi còn gọi là bộ nhớ truy nhập ngẫu nhiên, người sử dụng có
thể ghi số liệu vào và đọc số liệu ra. Khi mất điện thì số liệu cũng
mất theo. RAM có hai loại.
RAM tĩnh (Static RAM) RAM động (Dynamic RAM)
- Loại RAM này lấy
cấu
trúc
Flip-Flop
làm đơn vị nhớ cơ
sở. Vì vậy, khi số liệu
đã được ghi vào
mà nguồn nuôi vẫn
có thì số liệu trong
RAM vẫn còn.
RAM động lợi dụng điện dung ký sinh của
cực cổng (Gate) transistor trường MOS để
chứa dữ liệu. Vì vậy, khi số liệu đã được đưa
vào mặc dù còn nguồn nuôi nhưng số liệu cứ
mất dần do điện tích của tụ giảm theo thời
gian. Để giữ lại số liệu ấy phải làm thêm một
mạch gọi là mạch làm tươi và có tín hiệu làm
tươi (Refresh).
72
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Bộ nhớ truy xuất ngẫu
nhiên
RAM
thường
có
dung
lượng 1K, 4K, 8K, 64K, 128K,
256K
và
1024K
vớikích
thước từ 1, 4 hay 8 bit (có
thể mở rộng thêm).
Bộ nhớ thanh ghi
Tương
tự
như
ROM,
RAM
bao gồm một số
thanh ghi, mỗi thanh ghi
lưu trữ một từ dữ liệu và có
địa chỉ không trùng lặp.
73
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Ví dụ 1: Một bộ nhớ có dung lượng 4Kx8bit. Hỏi:
a. Có bao nhiêu đầu vào dữ liệu và đầu ra dữ liệu?
b. Có bao nhiêu đường địa chỉ?
c. Dung lượng của nó tính theo byte?
Trả lời:
a. Bởi vì dung lượng 4Kx8bit hay 4K từ 8 bit nên có 8 đầu
vào data, 8 đầu ra data, kích cỡ từ là 8 bit.
b. Bộ nhớ lưu trữ được 4K=4x1024=4096 từ. Vì vậy có 4096
địa chỉ nhớ. Vì 4096=212nên cần có mã địa chỉ 12 bit để
giải mã một trong 4096 địa chỉ nhớ, cần 12 đường địa
chỉ.
c. Kích cỡ từ là 8bit nên 4096 từ = 4096 byte
74
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Ví dụ 1: Một bộ nhớ có dung lượng 32x4bit. Hỏi:
a. Có bao nhiêu đầu vào dữ liệu và đầu ra dữ liệu?
b. Có bao nhiêu đường địa chỉ?
c. Dung lượng của nó tính theo byte?
Trả lời:
a. Bởi vì dung lượng 32x4bit hay 32 từ 4 bit nên có 4 đầu
vào data, 4 đầu ra data, kích cỡ từ là 4 bit.
b. Bộ nhớ lưu trữ được 32 từ. Vì vậy có 32 địa chỉ nhớ. Vì
32=25nên cần có mã địa chỉ 5 bit để giải mã một trong
32 địa chỉ nhớ, cần 5 đường địa chỉ.
c. Kích cỡ từ là 4bit, mà 1byte=8bit nên 32 từ = 16 byte
75
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Lý do mở rộng bộ nhớ: trong thực tế nhiều ứng dụng một
chip nhớ không thể đáp ứng được, do đó việc mở rộng
bộ nhớ và tăng kích cỡ từ là một vấn đề hết sức cần thiết.
Có 2 loại:
Tăng kích cỡ từ (tăng số lượng đường bus dữ liệu)
Tăng dung lượng (tăng số lượng đường bus địa chỉ)
76
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Tăng kích cỡ từ
Giả sử chúng ta cần một
bộ nhớ có thể lưu trữ
được
16x8
bit,
nhưng
thực tế ta chỉ có các
chip RAM 16x4bit với các
đường
vào/ra
(I/O)
chung.
Để giải quyết vấn đề này
ta có thể kết hợp hai chip
16x4bit lại với nhau để tạo
thành một bộ nhớ mong
Kết hợp 2 RAM 16x4 thành một mô-đun
16x8
77
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Tăng kích cỡ từ
Kết hợp 2 RAM 16x4 thành một mô-đun
16x8
78
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Tăng dung lượng
Kết hợp 2 RAM 16x4 thành một mô-đun
32x4
Giả sử ta cần một bộ
nhớ có dung lượng
32x4bit mà ta chỉ có
các chip 16x4bit. Để
tạo
ra
bộ
nhớ
có
dung lượng 32x4bit ta
sẽ
kết
hợp
2
chip
16x4it.
79
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Ví dụ 1: Thiết kế bộ
nhớ có dung lượng
2K x 8bit dùng các IC
nhớ 2K x 4bit.
Giải:
8bit/4bit=2
nên
cần 2IC
Bộ nhớ 2K = 2x2^10
= 2^11 nên cần 11
bit địa chỉ A0÷ A10
và có sơ đồ như
hình vẽ
Bộ nhớ 2K x 8bit với các IC nhớ 2K x 4bit
80
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Ví dụ 1: Thiết kế bộ
nhớ có dung lượng
2K x 8bit dùng các
IC nhớ 2K x 4bit.
Giải:
2. Sơ đồ kết nối:
Cần sử dụng 2 IC nhớ 2K x 4 bit để tạo ra bộ nhớ 2K x
8 bit.
3. Kết nối địa chỉ:
Cả hai IC nhớ sẽ chia sẻ chung các đường địa
chỉ từ A0 đến A10 (vì 2K = 2048 = 2^11).
Địa chỉ này sẽ điều khiển cả hai IC nhớ cùng một
lúc.
4. Kết nối dữ liệu:
Đầu ra dữ liệu của IC nhớ thứ nhất sẽ được kết nối
với 4 bit cao của bus dữ liệu (D4-D7).
Đầu ra dữ liệu của IC nhớ thứ hai sẽ được kết nối
với 4 bit thấp của bus dữ liệu (D0-D3).
5. Kết nối điều khiển:
Các tín hiệu điều khiển như CS, và R/W cũng sẽ
được chia sẻ chung giữa hai IC nhớ để đảm bảo
chúng hoạt động đồng bộ.
1. Số lượng IC nhớ cần dùng:
Mỗi IC nhớ có dung lượng 2K x 4
bit, tức là mỗi từ chỉ có 4 bit.
Để có từ 8 bit, cần ghép 2 IC nhớ
song song (mỗi IC cung cấp 4
bit).
81
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Ví dụ 2: Thiết kế bộ nhớ có dung
lượng 4K x 4bit dùng các IC nhớ
2K x 4bit.
Giải:
4K/2K=2 nên cần 2 IC
Bộ nhớ 2K = 2x2^10 = 2^11
nên cần 11 bit địa chỉ A0÷
A10.
Dùng thêm A11 để chọn IC
(0: IC1, 1:IC2)
82
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Ví dụ 2: Thiết kế bộ
nhớ có dung lượng
4K x 4bit dùng các IC
nhớ 2K x 4bit.
Giải:
3. Xác định địa chỉ của từng IC nhớ
Tổng dung lượng bộ nhớ 8085: 64K = 65536 địa chỉ từ
0000H đến FFFFH.
Địa chỉ bắt đầu: Có thể là bất kỳ địa chỉ nào trong không
gian bộ nhớ của 8085. Ta giả sử bắt đầu từ 0000H.
IC1: 0000H - 07FFH (2K địa chỉ)
IC2: 0800H – 0FFFH (2K địa chỉ)
1. Xác định số IC nhớ cần thiết
Dung lượng bộ nhớ yêu cầu: 4K
x 4 bit = 4096 x 4 bit = 16384 bits.
Dung lượng mỗi IC nhớ: 2K x 4
bit = 2048 x 4 bit = 8192 bits.
Số IC nhớ cần thiết: 16384 bits /
8192 bits = 2 IC nhớ.
2. Xác định số đường địa chỉ cần thiết
Dung lượng bộ nhớ: Một IC nhớ 2Kx4 bit có 2K
địa chỉ, tức là 2048 ô nhớ.
Số đường địa chỉ cần thiết: Để truy cập được
2048 ô nhớ, cần số bit địa chỉ là log2(2048)=11bit.
Do đó, cần 11 bit địa chỉ (A0-A10) để truy cập từng
ô nhớ trong một IC 2K x 4 bit.
Sử dụng thêm A11 để chọn IC nhớ (0: IC1, 1: IC2)
83
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Ví dụ 2: Thiết kế bộ
nhớ có dung lượng
4Kx4bit dùng các IC
nhớ 2Kx4bit.
Giải:
Số
IC
cần
dùng
=
4K/2K=2 IC
IC
nhớ
2K=2.1010=211
cần 11 đường địa chỉ
từ A0-A10
Cần thêm A11 để chọn
IC
‾ A11=0 IC1 được
84
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
BTAD: Ghép nối bộ nhớ cho
8085 với các yêu cầu sau:
Vùng nhớ có dung lượng
8Kx4bit từ các IC nhớ 2Kx4bit
bắt đầu từ địa chỉ thấp nhất
trong không gian bộ nhớ
Giải:
Số IC cần dùng = 8K/2K=4 IC
IC nhớ 2K=2.1010=211cần 11 đường địa chỉ từ A0-
A10
Cần thêm A11, A12 để chọn IC
‾ A12 A11=00 IC1 được chọn
‾ A12 A11=01 IC2 được chọn
‾ A12 A11=10 IC3 được chọn
‾ A12 A11=11 IC4 được chọn
85
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
BTAD: Ghép nối bộ nhớ cho
8085 với các yêu cầu sau:
Vùng
nhớ
có
dung
lượng
8Kx4bit từ các IC nhớ 2Kx4bit
bắt đầu từ địa chỉ thấp nhất
trong không gian bộ nhớ
Giải:
1. Xác định số IC nhớ cần thiết:
Dung lượng bộ nhớ yêu cầu:
8Kx4bit = 8192x4bit = 32Kbits.
Dung lượng mỗi IC nhớ:
2Kx4 bit = 2048x4bit = 8Kbits.
Số IC nhớ cần thiết:
32Kbits / 8Kbits = 4 IC nhớ.
2. Số đường địa chỉ cần thiết
Dung lượng bộ nhớ: Một IC nhớ 2Kx4bit có 2K
địa chỉ, tức là 2048 ô nhớ.
Số đường địa chỉ cần thiết: Để truy cập được
2048 ô nhớ, cần số bit địa chỉ là log2(2048)=11bit.
Do đó, cần 11 bit địa chỉ để truy cập từng ô nhớ
trong một IC 2Kx4bit
3. Sử dụng địa chỉ A0 đến A10 và A11, A12
A0 đến A10: Đối với từng IC nhớ, 11 bit địa chỉ
từ A0 đến A10 được sử dụng để chỉ ra từng ô
nhớ trong IC.
A11, A12: Để chọn giữa các IC nhớ, sử dụng
thêm 2 bit địa chỉ (A11 và A12). Với 2 bit này, ta
có thể chọn được 4 IC khác nhau (00, 01, 10,
11).
86
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
BTAD: Ghép nối bộ nhớ cho
8085 với các yêu cầu sau:
Vùng
nhớ
có
dung
lượng
8Kx4bit từ các IC nhớ 2Kx4bit
bắt đầu từ địa chỉ thấp nhất
trong không gian bộ nhớ
Giải:
4. Xác định địa chỉ của từng IC nhớ:
Với vùng nhớ 8K, địa chỉ bắt đầu từ
0000H và kết thúc tại 1FFFH (8192 địa
chỉ).
Chia đều 8K địa chỉ này cho 4 IC nhớ,
mỗi IC sẽ chiếm 2K địa chỉ.
• IC 1: 0000H - 07FFH (2K địa chỉ)
• IC 2: 0800H - 0FFFH (2K địa chỉ)
• IC 3: 1000H - 17FFH (2K địa chỉ)
• IC 4: 1800H - 1FFFH (2K địa chỉ)
87
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
5. Thiết lập mạch chọn chip (Chip Select):
Bảng chọn chip với A12 và A11.
A12
A11
IC được chọn
0
0
IC1 (0000H -
07FFH)
0
1
IC2 (0800H -
0FFFH)
1
0
IC3 (1000H -
17FFH)
1
1
IC4 (1800H -
1FFFH)
6. Kết nối IC nhớ với vi xử lý:
88
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Mở rộng bộ nhớ (RAM)
Ví dụ 3: Thiết kế bộ
nhớ 16Kx8 dùng các
IC nhớ 16Kx1.
Giải:
Bộ
nhớ
16K
=
16x2^10 = 2^14 nên
cần 14 bit địa chỉ A0÷
A13. Dùng 8 IC này
đấu song song các
đầu địa chỉ còn các
đầu dữ liệu độc lập
89
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.5. Bộ nhớ của VXL 8085
Ví dụ 4: Thiết kế bộ nhớ
ROM 8K x 8 bit từ các IC
ROM 1K x 8bit.
Giải:
8K/1K=8 nên cần 8 IC
nhớ
Các IC ROM 1K=2^10
có 10 bit địa chỉ A0 ÷
A9.
Sử
dụng
thêm
A10,
A11, A12 để chọn IC.
Khi đó ta dùng bộ giải
mã địa chỉ 74LS138 (3
đầu vào, tám đầu ra)
và thực hiện bộ nhớ
90
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.6. Sơ đồ ghép nối hệ thống
Đây là sơ đồ ghép nối Vi xử lý 8085 với Bus hệ
thống, ngoài ra trong sơ đồ còn có mạch tạo
dao động sử dụng thạch anh và mạch để
reset.
-Các đường tín hiệu ngắt cứng (5 ngắt cứng)
và HOLD không dùng nên được nối đất để
chống nhiễu.
-Các đường điều khiển DMA (SID và SOD)
không dùng.
-Tín hiệu READY được nối với +5V (đưa lên
mức cao) để báo hiệu là bộ nhớ hoặc thiết
bị ngoại vi đã sẵn sàng truyền hoặc nhận dữ
liệu.
-Tín hiệu ALE nối với chân G của IC chốt địa
chỉ 74LS373 để chốt địa chỉ byte thấp
(A0÷A7) ở thời gian T1 của chu kỳ máy.
91
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.7. Chu kỳ lệnh, chu kỳ máy
Khi thực hiện lệnh thông thường, vi xử lý tiến hành tuần tự các bước
sau: nạp lệnh, giải mã lệnh và thực hiện, sau đó lặp lại cho đến khi thực
hiện lệnh tạm dừng (Halt).
Khi
lệnh
Halt đượcthực
hiện vi xử lý chuyển vào
trạng thái tạm dừng, để
thoát khỏi trạng thái này
cầntín
hiệureset
(khởi
động lại). Như vậy sau khi
có tín hiệu reset vi xử lý lại
bắt đầu nạp lệnh, giải mã
và thực hiện. Quá trình này
gọi là chu kỳ lệnh.
92
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.7. Chu kỳ lệnh, chu kỳ máy
-
Chu kỳ lệnh (Instruction cycle) là thời gian cần thiết để tìm nạp và thực thi toàn bộ
một lệnh. Nó bao gồm:
+ Chu kỳ tìm nạp (Fetch cycle): Lệnh tiếp theo được tìm nạp theo địa chỉ được lưu
trữ trong bộ đếm chương trình (PC) và sau đó được lưu trữ trong thanh ghi lệnh.
+ Chu kỳ thực thi (Execution cycle) - bao gồm đọc bộ nhớ (MR), ghi bộ nhớ
(MW), đọc đầu ra đầu vào (IOR) và ghi đầu ra đầu vào (IOW)
93
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.7. Chu kỳ lệnh, chu kỳ máy
- Chu kỳ máy (Machine cycle) là thời gian cần thiết của bộ vi
xử lý để hoàn thành một hoạt động truy cập bộ nhớ hoặc
thiết bị vào/ra.
- Trạng thái T (T-state) là một khoảng
thời gian của tần số xung nhịp của bộ
vi xử lý.
94
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.7. Chu kỳ lệnh, chu kỳ máy
Vi xử lý 8085 có 7 dạng chu kỳ máy, chúng gồm:
+ Nạp lệnh (opcode fetch)
+ Đọc bộ nhớ (read memory)
+ Ghi bộ nhớ (write memory)
+ Đọc I/O (read I/O)
+ Ghi I/O (write I/O)
+ Đáp ứng ngắt
+ Bus ở trạng thái không hoạt động (Bus idle)
95
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.7. Chu kỳ lệnh, chu kỳ máy
Chu
kỳ
máy
Tín hiệu trạng thái
Tín hiệu điều khiển
𝐈𝐎/ഥ𝐌
S1
S0
𝐑𝐃
𝐖𝐑
INTA
Nạp lệnh
0
1
1
0
1
1
Đọc bộ nhớ
0
1
0
0
1
1
Ghi bộ nhớ
0
0
1
1
0
1
Đọc I/O
1
1
0
0
1
1
Ghi I/O
1
0
1
1
0
1
Đáp
ứng
INTR
1
1
1
1
1
0
BUS nghỉ
0
0
0
1
1
1
96
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Mô tả tín hiệu
Tín hiệu xung nhịp (Clock signal)
-
Trong kỹ thuật điện tử tín hiệu nhịp, tín hiệu đồng hồ hay
xung nhịp là dao động giữa trạng thái cao và thấp và
được sử dụng như một tín hiệu tạo nhịp để phối hợp các
hành động của các mạch kỹ thuật số, đặc biệt là các
mạch kỹ thuật số đồng bộ.
-
Một tín hiệu đồng hồ được tạo ra bởi một mạch phát xung
nhịp, thường dùng là mạch dao động thạch anh để
có tần số ổn định. Nói chung có thể dùng các dạng sóng
khác nhau, song tín hiệu xung nhịp phổ biến nhất là ở
dạng sóng vuông.
97
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Mô tả tín hiệu
Tín hiệu xung nhịp (Clock signal)
Vi xử lý 8085 chia xung đồng
hồ dao động từ các chân X1
và X2 với hệ số 2. Tần số sau
khi chia được gọi là tần số
hoạt động. Trong điều kiện lý
tưởng, xung đồng hồ là xung
vuông với độ trước sườn xung
lên và xuống bằng không.
Nhưng trong thực tế độ trễ
này luôn tồn tại như hình
dưới.
98
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Mô tả tín hiệu
Tín hiệu đơn
Tín hiệu đơn có thể có các mức logic 0, 1 hoặc trạng thái trở
kháng cao (tri-state). Khi chuyển trạng thái cùng xuất hiện độ trễ thời
gian chuyển mức ở sườn lên và sườn xuống.
99
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Mô tả tín hiệu
Nhóm tín hiệu
Nhóm tín hiệu, còn được gọi là Bus gồm Bus dữ liệu và Bus địa chỉ.
Tín hiệu được ghép nhóm không thể hiện ở mức logic của từng tín hiệu,
tuy nhiên thể hiện thời điểm các tín hiệu đó ở trạng thái ổn định và đang
chuyển trạng thái (phần gạch chéo). Trạng thái trở kháng cao được thể
hiện bằng đường nét đứt.
100
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Mô tả tín hiệu
Nhóm tín hiệu
Trong hệ thống vi xử lý, tính tích cực của tín hiệu phụ thuộc vào sự
thay đổi trạng thái của tín hiệu khác. Có 4 khả năng xảy ra như sau:
(1) Tính tích cực của 1 tín hiệu phụ thuộc sự thay đổi trạng thái của 1 tín
hiệu khác.
(2) Tính tích cực của nhiều tín hiệu phụ thuộc sự thay đổi của 1 tín hiệu
(3) Tính tích cực của 1 tín hiệu phụ thuộc sự thay đổi của nhiều tín hiệu
khác
(4) Tính tích cực của nhiều tín hiệu phụ thuộc sự thay đổi của nhiều tín
hiệu khác.
(1)
(2)
(3)
(4)
101
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Giản đồ thời gian của 1 số tín hiệu
Tín hiệu ALE: Tín hiệu này tích cực ở mức cao. nó được tích cực tại
thời diểm đầu T1 của chu kỳ máy.
102
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Giản đồ thời gian của 1 số tín hiệu
A0 – A7 (địa chỉ byte thấp): Địa chỉ byte thấp được đưa ra bộ tách
kênh địa chỉ trong khoảng thời gian T1.
103
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Giản đồ thời gian của 1 số tín hiệu
BUS dữ liệu (data BUS): Dữ liệu từ bộ nhớ hoặc thiết bị ngoại vi đến vi
xử lý được đưa ra trong khoảng thời gian T2 và T3. Một chú ý quan
trọng là trong chu kỳ đọc, dữ liệu sẽ được đưa ra vào phần cuối của
khoảng thời gian T2, còn trong chu kỳ ghi dữ liệu được đưa ra vào
phần đầu của khoảng thời gian T2.
104
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Giản đồ thời gian của 1 số tín hiệu
Địa chỉ byte cao: các địa chỉ byte cao từ A8 – A15 được đưa ra
trong khoảng thời gian từ T1 đến T3 của chu kỳ máy.
105
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Giản đồ thời gian của 1 số tín hiệu
IO/M: các tín hiệu này được gọi là tín hiệu trạng thái. Nó quyết định
dạng chu kỳ máy sẽ thực hiện. Chúng được tích cực tại thời điểm T1
của chu kỳ máy và kéo dài đến khi kết thúc chu kỳ máy.
106
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.1. Giản đồ thời gian của 1 số tín hiệu
RD và WR: các tín hiệu này quyết định chiều của quá trình truyền dữ
liệu. Khi RD tích cực, dữ liệu truyền từ bộ nhớ hoặc thiết bị ngoại vi tới vi
xử lý , và khi WR tích cực, dữ liệu sẽ truyền từ vi xử lý đến bộ nhớ hoặc
thiết bị ngoại vi. Lưu ý rằng hai tín hiệu này không bao giờ tích cực tại 1
thời điểm.
107
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.2. Chu kỳ máy nạp lệnh
Chu kỳ máy đầu
tiên
của
quá
trình
thực
hiện
lệnh là nạp lệnh,
trong
chu
kỳ
này vi xử lý sẽ
tìm
đúng
mã
lệnh
để
thực
hiện. Vi xử lý sẽ
đưa
nộidung
của
bộ
đếm
chương trình lên
Bus địa chỉ và
thông qua quá
trình đọc sẽ đọc
mã
lệnh
của
108
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.2. Chu kỳ máy nạp lệnh
Chiều dài của chu kỳ này không cố
định, nó nằm trong khoảng từ 4T đến 6T
phụ thuộc vào loại câu lệnh. Quá trình
nạp lệnh được thực hiện theo các bước
sau:
Bước 1 (thời gian T1): Vi xử lý đưa nội
dung của bộ đếm chươn trình lên BUS
địa chỉ. Các byte cao của bộ đếm
chương trình được đưa ra địa chỉ từ
A8 – A15. Tín hiệu ALE từ vi xử lý được
đưa ra để chốt địa chỉ byte thấp.
Đồng thời vi xử lý gửi tín hiệu trạng thái
IO/M, S1 và S0.
109
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.2. Chu kỳ máy nạp lệnh
Bước 2 (thời gian T2): Tại thời điểm T2, các
địa chỉ byte được loại khỏi các chum
Ado-AD7. Vi xử lý gửi tín hiệu RD có mức
tích cực thấp để đọc dữ liệu từ bộ nhớ. Bộ
nhớ sẽ đưa nội dung của vùng nhớ,
tương ứng với địa chỉ áp vào từ chu kỳ
trước, ra BUS dữ liệu (AD0-AD7).
Bước 3 (thời gian T3): vi xử lý nạp dữ liệu
từ Bus dữ liệu vào thanh ghi lệnh và giữ
tín hiệu RD ở mức cao để cấm sự truy
nhập từ bộ nhớ.
Bước 4 (thời điểm T4): vi xử lý giải mã lệnh
và trên cơ sở lệnh nhận được sẽ quyết
định sử dụng khoảng thời gian T5 hay
quay lại T1 tương ứng với lệnh kế tiếp.
110
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.3. Chu kỳ máy đọc bộ nhớ
Vi xử lý thực hiện
chu kỳ đọc bộ nhớ
đểđọcnộidung
các
RAM
hoặc
ROM.
Chiều
dài
của chu kỳ máy là
3T (T1 → T3). Trong
chu kỳ máy này, vi
xử lý lấy giá trị địa
chỉ cần đọc từ con
trỏngăn
xếp
từ
vùng nhớ có địa
chỉ cho trước đưa
lên
Bus
địa
chỉ.
Thông
qua
qua
quá trình đọc, đọc
dữ liệu cặp thanh
ghi
dùng
chung
hoặc
đếm
bộ
111
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.3. Chu kỳ máy đọc bộ nhớ
Thời điểm T1: Vi xử lý lấy giá trị địa chỉ cần
đọc từ con trỏ ngăn xếp, cặp thanh ghi
dùng chung hoặc bộ đếm chương trình đưa
lên Bus địa chỉ. Đồng thời tích cực tín hiệu
ALE để chốt địa chỉ byte thấp và gửi các tín
hiệu trạng thái IO/M=0; S1=1; S0=0.
Thời điểm T2: vi xử lý giữ tín hiệu RD mức thấp
để cho phép truy nhập địa chỉ vùng nhớ. Bộ
nhớ sẽ đưa nội dung của vùng nhớ có địa
chỉ nhận được lên Bus dữ liệu (AD0-AD7).
Thời điểm T3: vi xử lý nạp dữ liệu từ Bus dữ liệu
vào các thanh ghi đặc biệt và chuyển chân
RD về mức cao để đa bộ nhớ về chế độ chờ
(disable memory).
112
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.3. Chu kỳ máy ghi bộ nhớ
Vi xử lý thực hiện chu kỳ
ghi bộ nhớ để lưu dữ
liệu vào trong bộ nhớ
dữ liệu hoặc bộ nhớ
ngăn
xếp.
chiều
dài
cảu chu kỳ máy này là
3T (T1 → T3). Trong chu
kỳ máy này, vi xử lý lấy
giá trị địa chỉ cần ghi từ
con trỏ ngăn xếp hoặc
cặp
thanh
ghi
dùng
chung đưa lên Bus địa
chỉ. Thông qua qa ghi
sẽ lưu dữ liệu vào vùng
nhớ
có
địa
chỉ
cho
trước
113
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.3. Chu kỳ máy ghi bộ nhớ
Thời điểm T1: vi xử lý lấy giá trị địa chỉ cần ghi
từ con trỏ ngăn xếp hoặc cặp thanh ghi
dùng chung đặt lên Bus địa chỉ. Đồng thời
tích cực tín hiệu ALE để chốt địa chỉ byte
thấp. trong thời điểm T1, vi xử lý giữ tín hiệu
trạng thái là IO/M=0; S1=0; S0=1.
Thời điểm T2: vi xử lý đưa dữ liệu lên Bus dữ
liệu và chuyển tín hiệu WR về mức thấp để ghi
vào vùng nhớ định trước.
Thời điểm T3: tín hiệu WR chuyển lên mức cao
để chuyển bộ nhớ về trạng thái chờ.
114
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.4. Chu kỳ máy ghi /đọc thiết bị ngoại vi (I/O read, I/O write).
115
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.4. Chu kỳ máy ghi /đọc thiết bị ngoại vi (I/O read, I/O write).
116
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.5. Chu kỳ máy lệnh khởi động lại
117
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.6. Chu kỳ máy đáp ứng ngắt
118
CHƯƠNG 3. VI XỬ LÝ 8085 CỦA INTEL
3.8. Lệnh, thực hiện lệnh, thực hiện tuần tự và dòng dữ liệu
3.8.7. Chu kỳ máy bus nghỉ
KỸ ThUẬT VI XỬ LÝ
GV: ThS. Nguyễn Trung Thị Hoa Trang
Microproccesor Engineering
Show answer
Auto Play
Slide 1 / 118
SLIDE
Similar Resources on Wayground
101 questions
english 9
Lesson
•
9th - 12th Grade
96 questions
eng 6 u9,10,11
Lesson
•
KG
116 questions
BÀO CHẾ
Lesson
•
University
112 questions
sinh học cuối kì
Lesson
•
12th Grade
108 questions
untitled
Lesson
•
KG - University
121 questions
Kap9 MF Lagar och andra bestämmelser
Lesson
•
11th Grade
100 questions
CÂU HỎI TRẮC NGHIỆM ÔN TẬP THI MÔN KINH TẾ CHÍNH TRỊ MÁc LÊ-NIN
Lesson
•
University
126 questions
Quang Phổ - Thầy Trọng
Lesson
•
Professional Development
Popular Resources on Wayground
15 questions
Fractions on a Number Line
Quiz
•
3rd Grade
10 questions
Probability Practice
Quiz
•
4th Grade
15 questions
Probability on Number LIne
Quiz
•
4th Grade
20 questions
Equivalent Fractions
Quiz
•
3rd Grade
25 questions
Multiplication Facts
Quiz
•
5th Grade
22 questions
fractions
Quiz
•
3rd Grade
6 questions
Appropriate Chromebook Usage
Lesson
•
7th Grade
10 questions
Greek Bases tele and phon
Quiz
•
6th - 8th Grade
Discover more resources for Mathematics
21 questions
Area of plane figures- Geometry
Quiz
•
7th Grade - University
16 questions
Math 6/7 Unit 5 Test 2 Review: Graphs 🌞
Quiz
•
9th Grade - University
10 questions
Geometry Basics
Quiz
•
7th Grade - University
10 questions
Add & Subtract Mixed Numbers with Like Denominators
Quiz
•
KG - University
7 questions
Introduction to Fractions
Interactive video
•
1st Grade - University
20 questions
Exponential Transformations
Quiz
•
9th Grade - University
10 questions
Motion Word Problems
Quiz
•
9th Grade - University
15 questions
Two Step Equations
Quiz
•
KG - University