Tổ chức vào ra dữ liệu part4
© DHBK 2005 1/Chapter4 Nội dung môn học Nội dung môn học 1. Giới thiệu chung về hệ vi xử lý 2. Bộ vi xử lý Intel 8088/8086 3. Lập trình hợp ngữ cho 8086 4. Tổ chức vào ra dữ liệu 5. Ngắt và xử lý ngắt 6. Truy cập bộ nhớ trực tiếp DMA 7. Các bộ vi xử lý trên thực tế 8. Thiêt kế bộ vi xử lý © DHBK 2005 2/Chapter4 Chương 4: Tổ chức vào ra dữ liệu Chương 4: Tổ chức vào ra dữ liệu 4.1 Các tín hiệu của 8086 và các mạch phụ trợ 8284, 8288 4.2 Ghép nối 8088 với bộ nhớ 4.3 Ghép nối 8086 với bộ nhớ 4.4 Ghép nối với thiết bị ngoại vi © DHBK 2005 3/Chapter4 Chương 4: Tổ chức vào ra dữ liệu Chương 4: Tổ chức vào ra dữ liệu 4.1 Các tín hiệu của 8086 và các mạch phụ trợ 8284, 8288 4.1.1 Các tín hiệu của 8086 4.1.2 Phân kênh và việc đệm cho các bus 4.1.3 Mạch tạo xung nhịp 8284 và mạch điều khiển bus 8288 4.1.4 Biểu đồ thời gian của các lệnh ghi/đọc 4.2 Ghép nối 8088 với bộ nhớ 4.3 Ghép nối 8086 với bộ nhớ 4.4 Ghép nối với thiết bị ngoại vi © DHBK 2005 4/Chapter4 Chương 4: Tổ chức vào ra dữ liệu Chương 4: Tổ chức vào ra dữ liệu 4.1 Các tín hiệu của 8086 và các mạch phụ trợ 8284, 8288 4.1.1 Các tín hiệu của 8086 4.1.2 Phân kênh và việc đệm cho các bus 4.1.3 Mạch tạo xung nhịp 8284 và mạch điều khiển bus 8288 4.1.4 Biểu đồ thời gian của các lệnh ghi/đọc 4.2 Ghép nối 8088 với bộ nhớ 4.3 Ghép nối 8086 với bộ nhớ 4.4 Ghép nối với thiết bị ngoại vi © DHBK 2005 5/Chapter4 4.1.1 Các chân tín hiệu của 8086 4.1.1 Các chân tín hiệu của 8086 8086 AD0-AD15 A16/S3 A17/S4 A19/S6 A18/S5 BHE/S7 READY HOLD(RQ/GT0) INTA(QS1) ALE(QS0) HLDA(RQ/GT1)HLDA(RQ/GT1) M/IO (S2) DT/R(S1) WR (LOCK) RD DEN (S0) SS0 NMI INTR MN/MX RESET TEST CLK Vcc GND GND 16 đường địa chỉ thấp/dữ liệu 4 đường bus C/ địa chỉ cao Tín hiệu điều khiển bus Tín hiệu điều khiển hệ thống Tín hiệu điều khiển CPU đồng hồ và nguồn © DHBK 2005 6/Chapter4 4.1.1 Các chân tín hiệu của 8086 4.1.1 Các chân tín hiệu của 8086 • AD0-AD15: ALE =1: 16 chân địa chỉ cho bộ nhớ hoặc I/O ALE=0: 16 đường dữ liệu • A19/S6-A16/S3 4 bit địa chỉ cao 4 bit trạng thái: S6 luôn bằng 1 S5: trạng thái của IF S4, S3: bit trạng thái về thanh ghi đoạn đang truy cập • INTR: interrupt request IF=1 và INTR=1 => xảy ra ngắt • TEST nếu =0, CPU ở trạng thái đợi và thực hiện lệnh NOP =1, lệnh WAIT đợi đến khi TEST=0 S4 S3 0 0 ES 0 1 SS 1 0 CS or No 1 1 DS © DHBK 2005 7/Chapter4 4.1.1 Các chân tín hiệu của 8086 4.1.1 Các chân tín hiệu của 8086 • NMI (Non-maskable interrupt) NMI=1 => thực hiện INT 2 • RESET 1: khởi động lại hệ thống và thực hiện lệnh tại ô nhớ FFFF0H • MN/MX 1: chế độ min 0: chế độ max • BHE/S7: 0: cho phép truy cập byte cao dữ liệu Trạng thái S7 luôn bằng 1 • RD 0: CPU đọc dữ liệu từ bộ nhớ hoặc thiết bị ngoại vi • Các chân ở chế độ min M/IO 1: truy cập bộ nhớ 0: truy cập thiết bị ngoại vi I/O WR 0: dữ liệu hợp lệ tại bus dữ liệu để đưa ra bộ nhớ hoặc thiết bị ngoại vi © DHBK 2005 8/Chapter4 4.1.1 Các chân tín hiệu của 8086 4.1.1 Các chân tín hiệu của 8086 • Các chân ở chế độ min INTA: interrupt acknowledge 0: khi INTR=1 và IF=1 ALE: address latch enable DT/R: data transmit/receive 1: bus dữ liệu đang truyền dữ liệu đi 0: bus dữ liệu đang nhận dữ liệu DEN: Data enable 0: kích hoạt đệm dữ liệu ngoài HOLD 1: CPU tạm dừng hoạt động để nhường quyền điều khiển cho DMA, các bus được đặt ở trạng thái trở kháng cao HLDA (Hold Acknowledge) khi HOLD=1, HLDA=1 © DHBK 2005 9/Chapter4 4.1.1 Các chân tín hiệu của 8086 4.1.1 Các chân tín hiệu của 8086 • Các chân ở chế độ Max S2, S1, S0 ghép nối với điều khiển bus 8288 S2 S1 S0 chu kỳ điều khiển của bus 0 0 0 chấp nhận yêu cầu ngắt 0 0 1 đọc thiết bị ngoại vi 0 1 0 Ghi thiết bị ngoại vi 0 1 1 Dừng 1 0 0 đọc mã lệnh 1 0 1 đọc bộ nhớ 1 1 0 ghi bộ nhớ 1 1 1 bus rỗi © DHBK 2005 10/Chapter4 4.1.1 Các chân tín hiệu của 8086 4.1.1 Các chân tín hiệu của 8086 • Các chân ở chế độ Max RQ/GT0 và RQ/GT1: Request/Grant Tín hiệu yêu cầu dùng bus của các bộ vi xử lý khác/chấp nhận treo bus của CPU GT0 có mức ưu tiên cao hơn GT1 LOCK 0: cấm các bộ vi xử lý khác dùng bus QS0 và QS1: trạng thái của hàng đợi lệnh QS1 QS0 Trạng thái hàng đợi lệnh 0 0 không hoạt động 0 1 đọc byte mã lệnh đầu tiên 1 0 hàng đợi rỗng 1 1 đọc byte tiếp theo [...]... 20/Chapter4 © DHBK 2005 4. 1 .4 Biểu đồ thời gian 21/Chapter4 © DHBK 2005 4. 1 .4 Biểu đồ thời gian 22/Chapter4 © DHBK 2005 Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 2 Ghép nối 8088 với bộ nhớ 4. 2.1 Các loại bộ nhớ bán dẫn 4. 2.2 Giải mã địa chỉ cho bộ nhớ 4. 2.3 Ghép nối 8088 với bộ nhớ 4. 3 Ghép nối 8086 với bộ nhớ 4. 4 Ghép nối với thiết bị ngoại vi 23/Chapter4... 14/ Chapter4 © DHBK 2005 Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 1.1 Các tín hiệu của 8086 4. 1.2 Phân kênh và việc đệm cho các bus 4. 1.3 Mạch tạo xung nhịp 82 84 và mạch điều khiển bus 8288 4. 1 .4 Biểu đồ thời gian của các lệnh ghi/đọc 4. 2 Ghép nối 8088 với bộ nhớ 4. 3 Ghép nối 8086 với bộ nhớ 4. 4 Ghép nối với thiết bị ngoại vi © DHBK 2005 15/Chapter4...11/Chapter4 © DHBK 2005 Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 1.1 Các tín hiệu của 8086 4. 1.2 Phân kênh và việc đệm cho các bus 4. 1.3 Mạch tạo xung nhịp 82 84 và mạch điều khiển bus 8288 4. 1 .4 Biểu đồ thời gian của các lệnh ghi/đọc 4. 2 Ghép nối 8088 với bộ nhớ 4. 3 Ghép nối 8086 với bộ nhớ 4. 4 Ghép nối với thiết bị ngoại vi 12/Chapter4 © DHBK 2005 4. 1.2... PROM (Programmable ROM) EPROM (Erasable programmable ROM) Flash EEPROM (Electrically Erasable Programmable ROM) FeRAM (Ferroelectric Random Access Memory) MRAM (Magnetoelectronic Random Access Memory) Bộ nhớ bị mất dữ liệu (volatile) SRAM (Static RAM) SBSRAM (Synchronous Burst RAM) DRAM (Dynamic RAM) FPDRAM (Fast Page mode Dynamic RAM) EDO DRAM (Extended Data Out Dynamic RAM) SDRAM (Synchronous... 23/Chapter4 © DHBK 2005 Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 2 Ghép nối 8088 với bộ nhớ 4. 2.1 Các loại bộ nhớ bán dẫn 4. 2.2 Giải mã địa chỉ cho bộ nhớ 4. 2.3 Ghép nối 8088 với bộ nhớ 4. 3 Ghép nối 8086 với bộ nhớ 4. 4 Ghép nối với thiết bị ngoại vi 24/ Chapter4 © DHBK 2005 4. 2.1 Các loại bộ nhớ bán dẫn • Bộ nhớ không bị mất dữ liệu (non-volatile) ... xung nhịp 82 84 và mạch điều khiển bus 8288 16/Chapter4 © DHBK 2005 Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 1.1 Các tín hiệu của 8086 4. 1.2 Phân kênh và việc đệm cho các bus 4. 1.3 Mạch tạo xung nhịp 82 84 và mạch điều khiển bus 8288 4. 1 .4 Biểu đồ thời gian của các lệnh ghi/đọc 4. 2 Ghép nối 8088 với bộ nhớ 4. 3 Ghép nối 8086 với bộ nhớ 4. 4 Ghép nối với... chỉ và dữ liệu dùng chung chân Nâng cao khả năng tải của bus • Các vi mạch phân kênh và đệm: 74LS373: phân kênh 74LS 245 : đệm dữ liệu 2 chiều 74LS 244 : đệm 3 trạng thái theo 1 chiều 13/Chapter4 © DHBK 2005 4. 1.2 Phân kênh và đệm cho các bus M/IO RD WR BHE/S7 A19/S6 A16/S3 M/IO RD WR BHE A19 ‘ 244 74LS373 A16 A15 G A8 A7 8086 A0 ALE G 74LS373 G 74LS373 D15 AD15 ‘ 245 AD8 AD7 G DIR D8 D7 ‘ 245 AD0... 30/Chapter4 © DHBK 2005 EPROM: đọc Vcc Vcc Vcc Address 2-to -4 Decoder 2 MSB 4 2 LSB 4 to 1 Mux Data Vcc © DHBK 2005 Read(0x6) Vcc 31/Chapter4 EPROM: đọc Vcc Vcc Vcc 0110 2-to -4 Decoder 01 4 10 2-to -4 Mux 0 © DHBK 2005 Read(0x8) Vcc 32/Chapter4 EPROM: đọc Vcc Vcc Vcc 1000 2-to -4 Decoder 10 4 00 2-to -4 Mux 1 33/Chapter4 © DHBK 2005 EPROM: xóa Vcc Vcc Vcc Address 2-to -4 Decoder 2 MSB 4 2 LSB 2-to -4 Mux Data... Dynamic RAM) DDR-SDRAM (Double Data Rate SDRAM) RDRAM (Rambus Dynamic RAM) 25/Chapter4 © DHBK 2005 4. 2.1 Các loại bộ nhớ bán dẫn A0 WR A1 A2 Am-1 Tín hiệu địa chỉ D0 D1 D2 Dn-1 Dữ liệu WE CS OE WR: write chọn chip WE: Write enable RD OE: Output enable CS: Chip Select RD: read 26/Chapter4 © DHBK 2005 EPROM Lớp cách ly Cực thả nổi Source Cực nguồn Gate Cực cửa n+ Drain Cực mạng n+ p 27/Chapter4 © DHBK... vi 17/Chapter4 © DHBK 2005 4. 1 .4 Biểu đồ thời gian 18/Chapter4 © DHBK 2005 4. 1 .4 Biểu đồ thời gian • Các ký hiệu trong biểu đồ thời gian: Min CS 1 CS hold time 2 CS to data valid 3 Data hold time max 60 Units ns 1 30 ns 10 ns Data 2 3 5 19/Chapter4 © DHBK 2005 4. 1 .4 Biểu đồ thời gian • Một chu kỳ ghi/đọc của CPU (chu kỳ bus): 4 chu kỳ xung nhịp T 5 MHz: 4* 200 ns=800 ns T1: CPU đưa ra địa chỉ của . 2005 2/Chapter4 Chương 4: Tổ chức vào ra dữ liệu Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 2 Ghép nối 8088 với bộ nhớ 4. 3 Ghép nối 8086 với bộ nhớ 4. 4 Ghép. vi © DHBK 2005 4/ Chapter4 Chương 4: Tổ chức vào ra dữ liệu Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 1.1 Các tín hiệu của 8086 4. 1.2 Phân kênh. DIR DIR 8086 DEN DT/R © DHBK 2005 14/ Chapter4 Chương 4: Tổ chức vào ra dữ liệu Chương 4: Tổ chức vào ra dữ liệu 4. 1 Các tín hiệu của 8086 và các mạch phụ trợ 82 84, 8288 4. 1.1 Các tín hiệu của 8086 4. 1.2 Phân kênh