1. Trang chủ
  2. » Công Nghệ Thông Tin

Vi xử lí Chương 05: inputoutput devices

49 242 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 49
Dung lượng 384 KB

Nội dung

Input /Output Devices Mục tiêu Nắm nguyên lý cấu tạo đặc điểm thiết bị I/O Nhiệm vụ yêu cầu thiết bị I/O Cách giao tiếp CPU thiết bị I/O Hiểu bước trình ngắt quãng Nắm chế DMA Chuong : I/O Devices Noäi dung      Nguyên lý xuất nhập máy tính Cách CPU giao tiếp với thiết bị I/O Ngắt quãng DMA Các thiết bị I/O : Hard Disk,Floopy Disk, Printer, Keyboard,Mouse Chuong : I/O Devices Thiết bị I/O :  Thiết bị I/O thiết bị có khả cung cấp liệu CPU yêu cầu tác vụ đọc có khả ghi liệu vào CPU thực thi tác vụ ghi Chuong : I/O Devices Làm CPU nhận biết I/O  Mỗi I/O có địa riêng gọi cổng (port) Khi CPU truy xuất I/O , CPU xuất địa  Một số bit cao địa vào giải mã, đường bộ giải mã có tín hiệu Chip select tương ứng với I/O mà CPU muốn truy xuất  Các địa thấp lại đến I/O có I/O có đường Chip Select tích cực truy xuất Chuong : I/O Devices Sơ đồ giải mã địa Bit cao ROMCS ADDRESS BUS RAMCS I/OCS CPU CPU Caùc bit thaáp Address bus Chuong : I/O Devices Minh hoïa HARD DISK KEYBOARD MONITOR CPU MEMORY FLOPPY DISK VIDEO CONTROLLER KEYBOARD CONTROLLER HARDDISK CONTROLLER BUS Chuong : I/O Devices FLOPPYDISK CONTROLLER CPU liên lạc với thiết bị I/O  Thiết bị ngoại vi liên lạc với CPU thông qua cổng I/O Các thiết bị I/O có tốc độ làm việc chậm tốc độ CPU nhiều  để khắc phục nhược điểm người ta dùng vùng nhớ đệm Sự truyền thông tin thiết bị I/O CPU thực theo bước : Chuong : I/O Devices CPU liên lạc với thiết bị I/O Bước : truyền thông tin nhớ nhớ đệm Bước : truyền thông tin nhớ đệm thiết bị I/O Chuong : I/O Devices CPU liên lạc với thiết bị I/O  Có thể tổ chức để CPU làm việc đồng thời với nhiều thiết bị ngoại vi cách phân chia thời gian Thiết bị I/O Buffer Tín hiệu điều khiển nhớ đệm Chuong : I/O Devices Bộ nhớ Tín hiệu điều khiển từ CPU Ngắt quãng (Interrupt)  Ngắt (Interrupt) ? : Ngắt làm ngừng chương trình chạy  Một interrupt xuất chương trình thực thi bị ngưng  Interrupt tạo nhiều lý khaùc Chuong : I/O Devices 10 Scan code Bàn phím Làm MT phân biệt phím nhấn phím nhả ?  Khi nhả phím bị ấn, bàn phím tạo mã scan khác với mã scan lúc phím bị ấn, có giá trị mã trước cộng thêm 128 (80h) , nghóa đổi bit byte mã scan trước từ 01 Ex : ta ấn chữ z , scan code 44 Nhả phím bàn phím tạo mã scan 172 Chuong : I/O Devices 35 Bộ mã hoá quét ma traän KEY DOWN line To line DEMUX COL1 COL2 COL3 EN 0 Q0 ROW4 ROW3 ROW2 ROW1 line To line DECODER CO DE R TO COL4 1 Q1 Q2 Q3 Bit Counter PU TE R SCAN OSC Chuong : I/O Devices CO M 36 HOẠT ĐỘNG NGẮT QUÃNG CỦA IO Khi IO có yêu cầu giao tiếp với CPU (xuất nhập data), IO kích khởi đường tín hiệu IRQ (Interrupt request) để báo cần phục vụ Các bước tiến trình ngắt quãng : IO có yêu cầu CPU phục vụ, gửi tín hiệu IRQ đến Interrupt controller Nếu có nhiều I/O yêu cầu ngắt , IntController giải yêu cầu chế độ ưu tiên IntController phát tín hiệu đến CPU xin ngắt, CPU hoàn tất lệnh thực , cất giá trị ghi IP CS vào stack để biết địa trở sau phục vụ ngắt hoàn Chuong : I/O Devices 37 tất Liên lạc bàn phím CPU(cont)  Cứ lần có tác động ấn phím   mạch bàn phím gây ngắt   gọi chương trình phục vụ ROM BIOS INT đọc cổng 60H để biết tác động phím xãy (đọc mã scan tương ứng) INT 9h chuyển mã scan thành mã dài bytes , byte thấp chứa mã ASCII phím đó, byte cao chứa mã scan Chuong : I/O Devices 38 HOẠT ĐỘNG NGẮT QUÃNG CỦA I/O CPU yêu cầu mã nhận dạng để biết phục vụ gì? Nhờ mã CPU vào bảng Interrupt vector để biết địa bắt đầu chương trình phục vụ ngắt nằm đâu nhớ CPU chép địa bắt đầu chương trình phục vụ ngắt vào CS thực thi mã lệnh chương trình Sau thực xong tác vụ ngắt , lệnh cuối INTR, CPU lấy giá trị cũ CS IP stack để tiếp tục thực thi lệnh lại ứng dụng Chuong : I/O Devices 39 Thí dụ minh hoạ interrupt IRQ5 ADAPTER CARD INT CPU I I R M Q R PREORITY CONTROL INTERRUPT ENABLE FLAG I S R IRQ5 CONTROL DATA Chuong : I/O Devices 40 STI CLI Giải thích  Card IO yêu cầu phục vụ cách đưa đường tín hiệu IRQ card lên mức Đường IRQ nối với điều khiển ngắt, yêu cầu làm bật bit ghi IRR Interrupt controller so sánh IRR với ghi mặt nạ IMR để xem có cho phép IRQ5 hay không Nếu cho phép kiểm tra tiếp Kiểm tra xem có ngắt có ưu tiên cao IRQ5 hay không Nếu có IRQ5 phải chờ sau ngắt ưu tiên thực xong Chuong : I/O Devices 41 Giải thích (cont)  Lệnh EOI xóa bit ghi ISR để IntController tiếp nhận yêu cầu khác Chương trình phục vụ ngắt phát lệnh IRET kết thúc CPU phục hồi giá trị CS IP từ Stack để tiếp tục thực trình trước Chuong : I/O Devices 42 Giải thích (cont)  Interrupt controller đưa đường tín hiệu INT lên mức để báo cho CPU biết có ngắt quãng CPU nhận tín hiệu INT, báo lại cho Interrupt controller tín hiệu đồng ý cách đưa tín hiệu INTA mức Sau CPU chấp thuận ngắt, Interrupt controller gửi data cho CPU với trị 0Dh (giả sử IRQ5 tương ứng với ngắt 0Dh) Bật bit ghi phục vụ ISR, xoá bít IRR IRQ5 giải Chuong : I/O Devices 43 Giải thích (cont)  CPU tạm dừng trình hành, lưu giá trị CS IP vào stack Nhảy đến địa 0000:4*0Dh , lấy địa offset chương trình phục vụ ngắt 0Dh Nhảy đến nơi chứa lệnh ngắt thực thi lệnh tương ứng cuối chưong trình phục vụ ngắt, CPU gửi giá trị báo kết thúc phục vụ ngắt EOI (End of Interrupt =20h) cho IntControler Chuong : I/O Devices 44 Hard Disk Các thuật ngữ     Track Cylinder Sector Cluster track sector Chuong : I/O Devices 45 Hard Disk Chuong : I/O Devices 46 Hệ thống tập tin DOS điều khiển đóa  Bảng FAT : (File Allocation Table) Nằm Boot Sector (sector 0) Bảng FAT tạo ta partion đóa cứng Nội dung Bảng FAT mô tả trạng thái cluster tốt hay hư (vật lý), dùng hay chưa dùng… Chuong : I/O Devices 47 Summary slide  I/O ?  Mô tả tiến trình phục vụ ngắt quãng  Tính toán vị trí vector ngắt interrupt 20h  Viết lệnh sử dụng ngắt 21h , hàm để hiển thị ngày  Bảng FAT ? Chuong : I/O Devices 48 Summary slide  Thế ngắt nội Cho thí dụ minh họa  Khi lập trình, ta thường gọi chương trình phục vụ xuất nhập, lúc ta sử dụng loại ngắt Cách gọi  Làm để phân biệt ngắt cứng ngắt mềm  Khi dùng INT 21h để hiển thị ký tự hình, ghi chứa ký tự hiển thò? Chuong : I/O Devices 49 ... Chuong : I/O Devices 11 Software Interrupt  Ngắt mềm : Do thi hành lệnh INT chương trình Xãy cần chương trình hệ điều hành thường chương trình xuất nhập Cú pháp gọi ngắt mềm chương trình :... INT number Chuong : I/O Devices 12 Software Interrupt  Một số ngắt mềm thông dụng : INT 10h : Vide o s e rvic e s INT 16h : Ke ybo ard s e rvic e s INT 17h : Printe r s e rvic e s INT 1AH : Time... cho IntControler Chuong : I/O Devices 44 Hard Disk Các thuật ngữ     Track Cylinder Sector Cluster track sector Chuong : I/O Devices 45 Hard Disk Chuong : I/O Devices 46 Hệ thống tập tin DOS

Ngày đăng: 24/10/2014, 01:32

TỪ KHÓA LIÊN QUAN