dongnt_sami

New Member

Download miễn phí Giáo trình Kỹ thuật vi xử lý





Chương 1 Hệ vi xử lý
1.1. Vi xử lý là gì?
1.2. Các thế hệ của bộ vi xử lý
1.2.1. Thế hệ 1 (1971 đến 1973)
1.2.2. Thế hệ 2 (1974 đến 1977)
1.2.3. Thế hệ 3 (1978 đến 1982)
 
1.3. Thế hệ 4 (1983 đến nay)
 
1.4. Giới thiệu cấu trúc của hệ vi xử lý
1.3.1. CPU - Bộ xử lý trung tâm
1.3.2. Bộ nhớ bán dẫn (ROM, RAM)
1.3.3. Hệ thống vào ra (I/O)
1.3.4. Liên hệ giữa các khối
Chương 2 Bộ vi xử lý 8088 của Intel
2.1. Giới thiệu hoạt động của bộ vi xử lý 8088
2.1.1. Giới thiệu chung
2.1.2. Cấu trúc và hoạt động của bộ VXL 8088
2.2. Chế độ địa chỉ của 8088
2.2.1. Chế độ địa chỉ thanh ghi
2.2.2. Chế độ địa chỉ tức thì
2.2.3. Chế độ địa chỉ tực tiếp
2.2.4. Chế độ địa chỉ gián tiếp qua thanh ghi
2.2.5. Chế độ địa chỉ tương đối cơ sở
2.2.6. Chế độ địa chỉ tương đối chỉ số
2.2.7. Chế độ địa chỉ tương đối chỉ số cơ sở
2.3. Mô tả tập lệnh của 8088
2.3.1. Nhóm lệnh chuyển dữ liệu
2.3.2. Nhóm lệnh số học
2.3.3. Nhóm lệnh logic, dịch và quay
2.3.4. Nhóm lệnh so sánh
2.3.5. Nhóm lệnh rẽ nhánh (nhảy), lặp
2.3.6. Nhóm các lệnh đặc biệt
Chương 3 Lập trình bằng hợp ngữ cho 8088 trên máy tính IBM PC và các máy tương thích IBM PC
3.1. Giới thiệu chung
3.2. Giới thiệu khung chương trình
3.2.1. Cấu trúc của một lệnh hợp ngữ
3.2.2. Dữ liệu cho chương trình hợp ngữ
3.2.3. Biến và hằng
3.2.4. Khung của một chương trình hợp ngữ
3.3. Cách tạo và cho chạy một chương trình hợp ngữ
3.4. Các cấu trúc lập trình cơ bản trong assembly
3.4.1. Cấu trúc tuần tự
3.4.2. Cấu trúc lựa chọn
3.4.3. Cấu trúc lặp
3.5. Truyền tham số
3.6. Một số ngắt của DOS và của BIOS
Chương 4 Ghép 8088 với bộ nhớ và tổ chức vào ra dữ liệu
4.1. Giới thiệu tín hiệu chân của 8088 và các mạch phụ trợ
4.1.1. Bảy nhóm tín hiệu
4.1.2. Phân kênh để tách thông tin và đệm bus
4.1.3. Mạch tạo xung nhịp 8284
4.1.4. Mạch điều khiển bus 8288
4.1.5. Biều đồ thời gian của các lệnh đọc/ghi
4.2. Phối ghép 8088 với bộ nhớ
4.2.1. Bộ nhớ bán dẫn
4.2.2. Giải mã địa chỉ cho bộ nhớ
4.2.3. Phối ghép 8088 với bộ nhớ
4.3. Phối ghép 8088 với thiết bị ngoại vi
4.3.1. Các kiểu phối ghép vào ra
4.3.2. Giải mã địa chỉ cho thiết vị vào/ra
4.3.3. Các mạch cổng đơn giản
4.3.4. Mạch phối ghép vào/ra song song lập trình được PPI 8255
Chương 5 Vào ra dữ liệu bằng cách thăm dò
5.1. Giới thiệu chung về các phương pháp điều khiển vào/ra dữ liệu
5.2. Vào/ra dữ liệu bằng cách thăm dò trạng thái sẵn sàng của thiết bị ngoại vi
Chương 6 Ngắt và xử lý ngắt trong hệ vi xử lý 8088
6.1. Sự cần thiết phải ngắt CPU
6.2. Ngắt trong vi xử lý 8088
6.2.1. Các loại ngắt trong hệ 8088
6.2.2. Đáp ứng của CPU khi có yêu cầu ngắt
6.2.3. Xử lý ưu tiên ngắt
6.2.4. Mạch điều khiển ngắt ưu tiên PPI 8259A
Chương 7 Vào ra dữ liệu bằng DMA
7.1. Nguyên tắc của việc trao đổi dữ liệu với thiết bị ngoại vi bằng cách thâm nhập trực tiếp vào bộ nhớ (DMA)
7.2. DMAC 8237-5 trong hệ vi xử lý 8088
7.2.1. Tín hiệu HOLD và HLDA trong CPU 8088
7.2.2. Mạch DMAC 8237-5 của Intel
 



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

bus (chống suy giảm tín hiệu do đảm nhận nhiều việc nuôi các mạch bên ngoài) các tín hiệu vào/ra CPU phải được khuếch đại thông qua các mạch đệm 1 chiều hay 2 chiều với các đầu ra: thường hay 3 trạng thái.
Các mạch: 74LS373 chốt, 74LS244 khuếch đại đệm 1 chiều, 74LS245 khuếch đại đệm 2 chiều.
1 18
2 17
3 16
4 15
5 14
6 13
7 12
8 11
9 10
Vcc
X1
X2
ASYNC
EFI
FC
OSC
RES
RESET
CSYN
PCLK
AEN1
RDY1
READY
RDY2
AEN2
CLK
GND
Hình vẽ:Mạch 8284
Mạch tạo xung nhịp 8284
Dù cho 8088 làm việc ở chế độ Max hay chế độ Min thì nó vẫn luôn cần xung nhịp (xung clock) từ mạch tạo xung nhịp 8284. Mạch tạo xung clock ngoài việc cung cấp xung clock cho 8088, nó còn cung cấp xung nhịp có tần số thích hợp cho toàn hệ và nó còn đồng bộ tín hiệu RESET và tín hiệu READY của CPU.
Các tín hiệu
AEN1, AEN2 (Address ENable) : Tín hiệu cho phép chọn đầu vào tương ứng RDY1, RDY2 làm tín hiệu báo trạng thái sẵn sàng của bộ nhớ hay thiết bị ngoại vi.
RDY1, RDy2 (Bus Ready): Các tín hiệu này cùng với AEN1, AEN2 dùng để tạo ra các chu kỳ đợi (Tw) ở CPU.
Data
Bus
Control Bus
Address Bus
IO/M
RD
WR
A19/S6
A18/S5
A17/S4
A16/S3
A15
A14
A13
A12
A11
A10
A9
A8
CPU 8088
ALE
A/D7
A/D6
A/D5
A/D4
A/D3
A/D2
A/D1
A/D0
DT/R DEN
‘LS244
G OC
oc1 oc2
‘LS373
‘LS373
G OC
G 74LS373 OC
74LS244
Hình vẽ: Lược đồ máy IBM PC/XT
ASYNC (Ready Synchronisation Setect) : Chọn đồng bộ hai tầng hay đồng bộ một tầng cho tín hiệu RDY1, RDY2. Trong chế độ đồng bộ một tầng (ASYNC=1) tín hiệu RDY có ảnh hưởng tới các tín hiệu READY tới tận sườn âm của xung đồng hồ tiếp theo. Còn trong chế độ đồng bộ hai tầng (ASYNC = 0), tín hiệu RDY chỉ có ảnh hưởng đến tín hiệu READY khi có sườn xuống (sườn âm) của xung đồng hồ tiếp theo.
READY [O]: Nối đến đầu vào READY của 8088. Tín hiệu này được đồng bộ với các tín hiệu RDY1, RDY2.
X1, X2 (Crystal) : Nối với 2 chân của thạch anh với tần số fx. Thạch anh này là một bộ phận của mạch dao động bên trong 8284 có nhiệm vụ tạo xung chuẩn làm tín hiệu đồng bộ cho toàn bộ hệ thống.
F/C (Frequency/Crystal) : Dùng để chọn nguồn tín hiệu chuẩn cho 8284. Khi chân này ở mức cao thì xung đồng hồ bên ngoài sẽ được dùng làm xung nhịp cho 8284, ngược lai thì xung đồng hồ của mạch dao động bên trong sẽ được chọn làm xung nhịp.
EFI (External Frequency Input) : Lối vào cho xung từ bộ dao động ngoài.
CLK [O]: Xung nhịp, fclk = fx/3, với độ rỗng 77% nối đến chân CLK của 8088.
PCLK (Peripheral Clock) [O]: Xung nhip fpclk = fx/6, với độ rỗng 50% dành cho thiét bị ngoại vi.
OSC (OSC Input) [O]: Xung nhịp có tần số fx đã được khuếch đại.
RES (Reset Input) : Chân khởi động, nối với mạch RC để 8284 có thể tự khởi động khi bật nguồn.
RESET (Reset Output) [O]: Nối vào Reset của 8088, là tín hiệu khởi động lại (Reset) cho toàn hệ thống.
CSYNC (Clock Synchronisation) [O]: Lối vào cho xung đồng bộ chung khi trong hệ thống có các 8284 dùng dao động ngoài tai chân EFI. Khi dùng mạch dao động trong thì phải nối đất chân này.
X1 CLK
X2
8284
RES RESET
F/C CSYNC
+5v
K
10K
10ỡ
CLK
8088
RESET
F/C CSYNC
Reset hệ thống
Hình vẽ: 8284 nối với 8088
Mạch điều khiển bus 8288
Vcc
S0
S2
MCE/PDEN
DEN
CEN
INTA
IORC
AIOWC
IOWC
1 20
2 19
3 18
4 17
5 16
6 15
7 14
8 13
9 12
10 11
IOB
CLK
S1
DT/R
ALE
AEN
MRDC
AMWC
MWTC
GND
Vi mạch 8288 là mạch điều khiển bus, nó nhận một số tín hiệu điều khiển từ CPU (8088) và cung cấp tất cả các tín hiệu điều khiển cần thiết cho hệ vi xử lý khi CPU 8088 làm việc ở chế độ MAX.
Trong đó có một số tín hiệu mang tên:
AEN: Address ENable
CEN: Command ENable
IOB: Input/Output Bus mode
MRDC: Memory ReaD Command
MWTC: Memory WriTe Command
AMWC: Advanced MWTC
IORC: Input/Output Read Command
AIOWC: Advanced IOWC
DT/R: Data transmit/Receive
DEN: Data Enable.
MCE/PDEN: Master Cascade Enable/Peripheral Data Enable
Các tín hiệu của 8288 gồm:
S2, S1, S0 (Status): Là tín hiệu trạng thái lấy trực tiếp từ CPU. Tuỳ theo các tín hiệu này mà 8288 sẽ tạo ra các tín hiệu điều khiển khác nhau tại các chân ra của nó để điều khiển sự hoạt động của các thiết bị nối với CPU (Bảng tín hiệu trạng thái Si của 8088 ở chế độ MAX, bao gồm cả vào và ra của các tín hiệu).
CLK (Clock): Nối với xung đồng hồ của hệ thống (từ 8284) và dùng để đồng bộ các xung điều khiển đi ra từ mạch 8284.
ANE (Address Enable): Đây là tín hiệu vào, sau khoảng thời gian trễ cỡ 150 ms thì sẽ kích hoạt các tín hiệu điều khiển đầu ra của 8288.
CEN (Command Enable): Tín hiệu vào để cho phép đea ra tín hiệu DEN và các tín hiệu điều khiển khác của 8288.
IOB (Input/Output bus mode): Tín hiệu để điều khiển mạch 8284 làm việc ở các chế độ bus khác nhau.
Khi IOB = 1 thì 8288 làm việc ở chế độ bus vào/ra.
Khi IOB = 0 thì 8288 làm việc ở chế độ bus hệ thống.
(Như trong các máy IBM PC)
MRDC [O] (Memory Read Command): Là tín hiệu điều khiển đoc bộ nhớ, nó sẽ kích hoạt bộ nhớ đưa dữ liệu ra bus.
MWTC, AMWC [O] (Memory Write Command – Advanced MWTC): Là các tín hiệu ghi bộ nhớ hay ghi bộ nhớ kéo dài. Chúng giống như MEMW, nhưng AMWC hoạt động sớm lên một chút để tạo ra khả năng cho các bộ nhớ chậm có thêm thời gian.
IORC [O] (I/O Read Command): Là các tín hiệu điều khiển đọc thiết bị ngoại vi. Nó kích hoạt các thiết bị ngoại vi được chọn để các thiết bị này đưa dữ liệu ra bus.
IOWC, AIOWC [O] (I/O Write Command, Advanced IOWC): Là các tín hiệu điều khiển ghi thiết bị ngoại vi hay ghi thiết bi ngoại vi kéo dài. Chúng là các tín hiệu giống như IOW, nhưng AIOWC hoạt động sớm lên một chút để cho các thiết bị ngoại vi chậm được kéo dài thêm thời gian ghi.
INTA [O] (Interrupt Acknowledge): Là đầu ra để thông báo cho thiết bị ngoại vi biết là CPU đã chấp nhận yêu cầu ngắt (yêu cầu của thiết bị ngoại vi). Và khi này thiết bị ngoại vi phải đưa số hiệu ngắt ra bus dữ liệu để CPU đọc lấy.
DT/R [O] (Data Transmit/Receive): Là tín hiệu để điều khiển chiều của dữ liệu trong hệ thống là vào hay ra so với CPU.
DT/R = 1: CPU đọc dữ liệu.
DT/R = 0: CPU ghi dữ liệu.
Trong các máy IBM PC thì tín hiệu này được nối đến chân DIR của mạch đệm 2 chiều 74LS245 để điều khiển hướng đi của dữ liệu.
DEN [O] (Data Enable): Là tín hiệu để điều khiển dữ liệu trở thành bus cục bộ hay bus hệ thống. Trong các máy IBM PC thì tín hiệu này được sử dụng cùng với tín hiệu của mạch điều khiển ngắt PIC 8259 để tạo ra tín hiệu điều khiển cực G của mạch đệm 2 chiều 74LS245.
MCE/PDEN [O] (Master Cascade Enable/Peripheral Data ENable): Đây là tín hiệu dùng để đặt chế độ làm việc cho mạch điều khiển ngắt PIC 8259 để nó làm việc ở chế độ chủ (Master).
ALE [O] (Address Latch Enable): Là tín hiệu báo cho phép chốt địa chỉ có tại các chân dồn kênh A/D (A/D0 – A/D7), tín hiệu này thường nối với chân G của mạch chốt 74LS373 để điều khiển mạch mày chốt lấy địa chỉ.
Biều đồ thời gian của các lệnh đọc/ghi
Chu kỳ bus là một chu kỳ vận chuyển dữ liệu hoàn thành, điều này còn phụ thuộc vào số lượng các tín hiệu điều khiển (của CPU điều khiển hay DMAC, ...). Một chu kỳ bus thường tốn khoảng 4 chu kỳ xung clock. Cụ thể những hiện tượng xảy ra trong một chu kỳ bus (đã được đơn giản hoá) như sau:
T1: Trong chu kỳ này tín hiệu địa chỉ của b...
 

Kiến thức bôn ba

Top