intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Môn học Thiết bị ngoại vi và kỹ thuật ghép nối (Peripherals & Interfacing Technique)

Chia sẻ: Đỗ Hồng | Ngày: | Loại File: PDF | Số trang:28

207
lượt xem
39
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Tài liệu tham khảo môn học Thiết bị ngoại vi và kỹ thuật ghép nối (Peripherals & Interfacing Technique)

Chủ đề:
Lưu

Nội dung Text: Môn học Thiết bị ngoại vi và kỹ thuật ghép nối (Peripherals & Interfacing Technique)

  1. Môn học 1. Hardware Thiết bị ngoại vi và kỹ thuật ghép nối Central Sys. Adaptor Wide world (Peripherals & Interfacing Technique) Computerized Dev: Ports KB, Printer, Giáo viên: Bùi Quố c Anh, Scanner, Mouse Bộ môn K ỹ t huật Máy tính CPU, Mem, • Introduction: The purpose of this course is to provide student with technical knowledge of each major Controllers Specific Devices: subsystem of Interface, including processors, memories, IO bus,... especially Nonstandard zed Input Bus, HDC, CRTC HDD, CRT, ... Output via ports and applies to industry architectures across a wide range of hardware vendors Controlle • This document could contain technical inaccuracies or typographical errors. Author believes the rs, statements contained herein are accurate as of the date of editing of this doc. However, the Author ... makes no warranty of any kind with respect to the accuracy of the contents hereof. Industry Objects: Scale, Furnace, ADC, DAC Tài liệu tham khảo: GenSet, Tanks,... Publications: - Microprocessor Interfacing techniques, R. Zaks & A. Lease, Sybex - Micro Processor and Interfacing, D. Hall, McGraw Hill; - IBM PC AT Technical Reference (Buses, Ports), IBM; 2. Software: Device Drivers: SLLs, DLLs, DRVs, VxDs, DCUs,... - Introduction to the PC Architecture Course, IBM PC Institute, 1997 - Interfacing to IBM PC – L. C. Eggebrecht, IBM Corp. - Parallel Port Complete, J.Axelson, LakeViewResearch. - Mastering Serial Communication, P.W. Gofton, Sybex. - PC Intern (System Programming), M. Tischer, Abacus. - Programming & Interfacing the 8051 MC, S. Yeralan, Addison-Wesley - ... Software: - TechHelp Ver. 4.0 / 6.0 - MSDN, Online Help. - Design tools: OrCAD, Protel, Cadence... - Programming Languages (C, Pascal, MASM, C++, VB, Delphi, VC++...) - .... Websites, .pdf files: - IBM, Microsoft, Intel, Motorola ... - ATMEL: atmel.com/product/microcontrollers 89Cxx (51/52/2051/8252, AVR - RISC, MSC51)... - National Semiconductor: ns.com/products: ADC 0809, DAC0800/1210, S&H LM198)... - INTERSIL: intersil.com/products/ICL7109, 7135... - Analog Devices Inc.: adi.com/products/adc, S&H...: AD574, AD1674 - USB: usb.org (pdf files for version 1.x & 2.x) - Cypress – EZ USB, Developing Kit... - ... Interfacing? Page 1 of 56 Page 2 of 56
  2. Chương.1 Kiến trúc hệ VXL – MT – Static RAM: • nhanh (80..3 ns), § Kiến trúc thiế t bị hệ kinh điển, • byte/nibble package, § Kiến trúc hệ máy tính ‘Hi Performance’ • mật độ byte/chip nhỏ (upto 64/256 KB/ chip), § Hoạt động của hệ thống. • đắt, tiêu thụ công su ất nhiều, • CMOS RAM: chậm và tiêu thụ cự c ít, less µ W. Vdụ: MC 146818 RealTimeClock- 1.1. Kiế n trúc Hệ VXL, Máy tính kinh điển – Embedded systems CMOS RAM 1.1.1. Sơ đồ : • Dùng trong các hệ nhỏ, cache memory. 3 phần: Memories (Semiconductor): DRAM - CS, Dynamic RAM: DRAM: - Ngo ại vi & § Tốc độ/Access time (50-70ns), [10..20ns] Pre-fetched - Interface § Mật độ bit/chip >> (1 Gbit/chip – 1996, Korea), § bit package => DRAM bank, § Tiêu thụ công su ất nhỏ. § Thông tin chỉ lưu được 10ms => refreshing DRAM với chu kỳ @ 7,5ms => phức tạ p. § Dùng trong các hệ có dung lượng nhớ lớn: máy tính, máy chủ... Memories (Semiconductor): FLASH & Others Flash memory: EAROM typed, đưọc đợc, xoá từng bank, ghi lại đ ược từng byte. Thông tin lưu được 20 năm, dùng nhiều hiện nay và tương lai: BIOS, diskchip... Serial EAROM/FLASH: dùng đ ể lưu configuration, dùng bus I2C (Philips). Ví dụ ứng dụ ng : thẻ vi mạch, TV, ... Dual [Quad] Ported RAM: Switching Sys., PGA RAM-DAC: VGA, VoiceChip PCMCIA .... Memories (Semiconductor): Logically: Bộ nhớ chứa thông tin gì? 1.1.1. a. Central Sub System – CS: § Program memory: + CPU: Central Processing Unit: § chứa ch/tr đang được thực hiện • Khái niệm: Là bộ điều khiển trung tâm, thực hiện công việc được giao đ ặt trong bộ nhớ chương trình § Data memory: bằng cách thực hiện các phép xử lý lên các biến nhị phân và điều khiển thiết bị ngoại vi. § các biến ngẫu nhiên, • Công việc bao gồm: § biến có cấu trúc, – Tìm lệnh, giải mã lệnh, [tìm toán hạ ng, xử lý và cấ t kế t quả], § số liệu có kiểu truy nhập đặc biệt FIFO, LIFO (Stack memory). – In/Out với các port kiểu Interrupt và DMA đ ể đ iều khiển thiết bị ngoạ i vi. Đặc trưng – Specifications: + Controllers: [Optional], vi mạch, nâng hiệu năng (performance) hệ thống, bao gồm: • Kích thước toán hạ ng (bit): 4, 8, 12, 16, 32, 64... Bộ điều khiển ưu tiên ngắt PIC – Priority Interrupt Controller, Intel 8259A • Tốc độ xử lý: Mips, clock multiplier, § Bộ điều khiển truy nhập trực tiếp bộ nhớ DMAC – Direct memory Access Controller, Intel 8237A. • Kiến trúc: RISC vs CISC, DSP, Micro Controller... § Timer: mạch tạo các khoảng thời gian, PIT- Programmable Interval Timer, Intel 8254. • Pinning/Signalling (Data/Address - Mux, Control bus, IRQ, HRQ, RD/WR...), § Mạch quản trị nhớ: MMU- Memory Management Unit, sau này, thường đợc built on chip với CPU. • Register set, § Bus controller/Arbitor • Instruction set – Addressing Modes, § ... • Power: Slow/ sleep/ power down modes • ... Bus System: K/n & Addr bus Memories (Semiconductor): K/n & ROM: Khái niệm: • PCB (Printed Circuit Board)/ Cable (Twisted pairs, flat..), slot, connector... • Nối hơn 1 slave device, time sharing • Lư u thông tin (ch/tr và số liệu) dạng nhị phân, • Dung lượng lớn (upto 100s Mega bit), tốc độ truy nhập nhanh (downto ns access time). • Thông tin: Address, data, control, status, Power Supply • Chiều (dir), 3 state (Hi Z), Loading Physically: tính chất vật lý như thế nào? – ROMs: gồm Mask ROM, PROM, EPROM, EAROM, OTROM, NonVolatile mem, ... ADDRESS BUS: – Từ các BusMaster (CPU, DMAC, PCI host Controller) đến SlaveDevices (Mem, Ports) để chọn/ • Là bộ nhớ chỉ đọc, vẫ n lưu thông tin khi mất điện, chỏ từng IO/ Mem location trong từng chu k ỳ bus • Package : byte – n Addr bit è 2 n Mem Locations & 2m IO Locations, m
  3. § Chuyển Op-code (mã lệnh) trong chu k ỳ máy M1, - CPU
  4. reset ProgCounter = ResetAddr/vector Machine Addr D0 D1 D2 D3 D4 n DMA? D MA? On Halt y ( data 4 byte) n y y H.1.3. Ví dụ burst mode n IRQ? M askOn y n 1.1.2.b. Hi Speed Bus: - Peripheral Component Interconnect – PCI OpCode Fetch PC = Intr. Vector - 5/1993, Intel Ver. 2.0, Open Standard, - Local bus, mức trung gian giữa Local và các bus chuẩn khác (ISA, MC, EISA) thông qua PIC Bridge/Controller. OpCodeDecode - Có kiểm tra parity cho Addr và Data - Auto configuration of all PCI devices, share the same IRQ. Disabling IRQ => cấm toàn bộ PCI devices. - No DMA, device on PCI bus là bus master (Tốt cho việc dùng MultiTasking OS). Execute - Burst mode: 32 bit @33MHz --> 96..132MBps, tuỳ thuộc số byte (từ 32 byte đến 4KB). Option 64bit @33MHz --> 264MBps - Most Platforms use:Intel, DEC Alpha, PowerPC, Spark - Modern OS: ‘Block Typed Devices’: tần su ất vận chuyển cao, nhanh, data block Hình 1.3. L ưu đồ tổng quát của VXL (Motorola), Training courses 1.2.2. Reset : 1.1.2.c. Expansion Bus: • Cold Start: Nút reset/Power-On =>Xoá tr ạng thái hiện hành, cấm ngắt, DMA. CPU được khởi tạo (PC- So called: standard buses, expansion bus, slots, IO bus, IO system, channel bus): ISA, EISA, MC... Program Counter (IP), Flags và SP...). Thường các thiết bị trong hệ cùng đ ược reset. - MC bus: 32 bit, 10MHz, 20..40MBps, 15 BusMaster, Auto config, 1987, IBM (Sau khi reset, CPU s ẽ tìm và t/h lệnh – với các thủ tục sau) - EISA bus: 32 bit, 8MHz, 33MBps, 4 BMs, AutoConfig (EISA card only), 1989, Compaq • Warm Start: do lệnh gọi, (Int 19h, Ctrl_Alt_Del) - ISA (Industry Standard Architecture), AT bus: • POST (Power On Self Test – ch/tr monitor/ BIOS) để k iểm tra mọi thiết bị theo nguyên tắc ghi và đọc - Spec. 8/16 bit (data), 8MHz, 5MBps max, 1 BM, no PnP, 1984, IBM. lại (Registers, RAM) hoặc đọc và kiểm tra Check Sum (ROM). - Rất phổ biến, còn tồn tại lâu, Espec. @ iPC, • Initializing: đặt các tham số => configuring. - Hạn chế số IRQs, 4 DRQs, • [Máy tính - Nạp hệ điều hành ]. - Dùng DIP switch/jumper để config. 1.2.3. DMA: (Xem Ch. 3.2.) - No data integrity features (no party checking) 1.2.4. Interrupt: (Xem Ch. 3.3.) - Modern OS: ‘Character Typed Devices’ 1.2.5. Tìm và thực hiện lệnh : Diễn ra chủ yếu trong thời gian hoạt động. 1.2. Hoạt động c ủa hệ thống: Ch/tr ngôn ngữ máy: tập hợp các lệnh có cấu trúc, có nghĩa, thực hiện 1 thu ật toán. § Reset, Chu kỳ lệnh (Instruction Cycle): Khoảng thời gian CPU thực hiện xong 1 lệnh, gồm: tìm lệnh, giải mã § Opcode fetch and Execute, lệnh, [tìm toán hạng và thực hiện lệnh (thực hiện các phép xử lý hoặc vào-ra)]. § Interrupt, độ dài lệnh: 1 hay nhiều byte, CISC § DMA & Thời gian t/h: 1 hay nhiều chu k ỳ máy (chu kỳ bus). § Ready (wait state - ws) Chu kỳ máy (Bus/Machine Cycle): thời gian BusMaster thực hiện thao tác trên bus. Clock cycle: Chu kỳ máy: 4..12 chu kỳ clock, tu ỳ CPU. 1.2.1. Lưu đồ tổng quát: 1.2.5.1. Hoạt động của hệ thống: Có 8 CPU’s BusCycles: • M1, opcode fetching, Addr =>Program mem, -MEMR • Data mem Reading, Addr=>Data mem, -MEMR • Data mem Writing, Addr=>Data mem, -MEMW • Input Port Reading, Addr=> IO space, -IOR • Out Port Writing, Addr => IO space, -IOW • Interrupt Acknowledge, -INTA, • Halt, waiting for Ext. Intr. hoặc reset • Bus Idle • 2 DMAC’s bus (machine) cycles: IOR-MemW vµ MemR-IOW. 1.2.6. Wait State (Ready): Page 7 of 56 Page 8 of 56
  5. • Thường dùng đ ể ghép nối: bộ nhớ, ngoại vi tốc độ chậm. Chương. 2 Giao thức ghép nối (Interfacing Protocols) • Hoạt đ ộng Khi BusMaster phát địa chỉ & tín hiệu đọc/ghi (thêm các tín hiệu khác) để thực hiện 1 chu kỳ - Giao thức ghép nối bus, MMU/IO port [Controller] chủ động phát ra tín hiệu Ready=0 (not Ready) đ ể yêu cầu BusMaster - Đặc điểm lập trình I/O giữ nguyên trạng thái bus thêm 1 [vài] nhịp clock. Case Study: IOW bus cycles w/o and w 1 wait state: 2.1. Interface Protocols: • K/n: Là các qui định: Signals - Data format - Rate - Error detection & correction - Command & Response set - Scenario (kịch bản) ISO 7 layer Model (Ref. Computer networks) Có thể phân chia thành 2 nhóm chính (Siemens) : • Transport-Oriented Protocols (1..4) (!!!) • PhysicAL (wire, cable, connector), DataLink (CRC, CS, Token), NetWork (Comm. 2 networks ), Transport (Err-protected raw infor) , • Application-Oriented Protocols (5..7) : • Session (Opening, End), Presentation (Common Language) và Application (Read/Write, Start/Stop, FileTransfer) 2.1.1. Signals: Khi thiết k ế, xây dựng ghép nối máy tính, cần chú ý đặ c biệt tới tín hiệu theo các yêu cầu: • bus hay không? => có dùng bit (trường) địa chỉ, Standard bus? ?: IDE và LPT cable có phải là bus? tại sao? • Data: Serial vs Parallel Interface, format? • Daisy chain cho t/h hoặc nguồn cấp... • Các tín hiệu điều khiển và trạ ng thái: • Control signals • Status signals • Handshaking signals - bắt tay Ví dụ 1: PC-LPT handshaking: PC SLCT SLTC_in Line Printer LPT port Hình 2.1.a.LPT handshake Signal • Phương pháp biế n đ ổi tín hiệu: biên, tần, pha, dòng, quang (cáp quang, Ir) Ví dụ 2: PC Comm-Modem handshaking: RTS CTS PC 1 Modem or Comm PC 2 Port Comm DTR DSR Port Hình 2.1.b. CommPort Handshake Signals T/c vật lý c ủa tín hiệu: § Mứ c điện áp: Voltage ? (TTL, 12V/ 24V/48V...) In/Out, Single End vs Differential (vi sai) Page 9 of 56 Page 10 of 56
  6. § Mứ c dòng điện: (Fan Out, Loading): - Number of Standard TTL/ LS TTL loads, - Sink: dòng chả y vào – LowLevel, mA, - Source: dòng chả y ra – HighLevel, mA/µ A. (H. 2.1.c) Nối chung các tín hiệu ra: 3 state, open collector, (Open Drain), Mux - dồn kênh, Switch - khóa. Hot swap – hot plugible: Y/c Vcc và t/h Cách ly (isolation): Relay, Opto Coupler, IrLED... Bus Slot, Connector, chuẩn, số chân (pin) Hình 2.3.b. Optical Connector & Sơ đồ: Sơ đ ồ cách ly quang học đ/v tín hiệu In/Out: Hình 2.3.c. Sợi cáp quang: Cable & Connectors: • Connectors: – D shell: DB9, DB25,... 2.1.2. Format số liệu: – DIN, Đối với file/text: số liệu nhiều => khi trao đổi (với DAS, PLC, Digi-Oscilloscope, GPS, TelSat...) è ‘đóng gói’ • Cable: số liệu (packaging). – Flat, Mỗi gói tin (packet) gồm 3 phần: – Coaxial, - Header: [có thể có: tên bản tin, tên gói, số thứ tự, ký tự bắt tay, ký tự đồng bộ, số k ý tự/ byte trong – Shield, – Twisted Pair gói tin...], không mang tin. - Content: nội dung tin – mang thông tin. – Normal - Tailer: Mã bắt tay kết thúc, [mã kiểm tra lỗi] – không mang tin. – Optical Fiber... Ví dụ: HDC, FDC: Full Sector: gap - 5 byte ID field - 2 byte ID CRC - gap - data field: 512 byte - 2 byte CRC. FTP, Kermit, X-Modem.. Protocols: 128[256] B/pack. Hình 2.3.a. Connectors Hình 2.3.d. USB data packet format Byte số liệu/character/frame: (truyền không đ ồng bộ, RS-232, RS-485, RS-422...): ký tự hay byte được định dạ ng thành 1 frame: Page 11 of 56 Page 12 of 56
  7. Có thêm các mã (ký tự) đối thoạ i/ reaction, [dùng] ký tự điều khiển củ a ASCII như : ENQ, ACK, NACK, Bell, - 1 start bit = 0, - 5 /6/7/8 data bit, D0 first, OK, ERR, BUSY ... 2.1.6. Kịch bản đối thoại – Scenario: - [ parity: Even/ Odd], Liệt kê các trường hợp có thể rồi áp các phép xử lý tương ứ ng để đảm bảo việc ghép nối: không mất tin, thừa - 1 / [1.5 / 2] stop bit = 1(s). tin, quẩn, treo... Thường xây dựng: Step List hoặc Chart: 2.1.3. Tốc độ t rao đổi thông tin: Xuất phát từ: Nhu cầu trao đổi thông tin củ a T/b ngoạ i vi (nhanh như LED Board, ADC..), => chọn môi trường Time Out ! truyền thích hợp, có liên quan tới t/h: Master ENQ Xem Bottle-neck? Slave Khoảng cách - tích số k/c và tốc đ ộ => Song song (Word/ Byte/ nibble)/ nối tiếp (bit) ACK Môi trường, đường truyề n (cáp đồng, quang, wireless (radio, infrared) Synchronous/Asynchronous? NAK Modulation/Demodulation ... => tốc đ ộ bao nhiêu kbps/kBps, tốc độ chuẩn? nothing Ví dụ: LPT: SPP mode: 50..100kBps - software, ECP: 2..4 MBps - DMA LAN Ethernet – IEEE 802.3: 10/100 Mbps dual speed RS232: 2400/ 4800/ 9600/ 19200... bps 2.1.4. Kiểm tra, s ửa lỗi, nâng cao độ t in cậy: Hình 2.4. Scenario Chart Khi trao đổi thông tin thường hay gây ra lỗi, đặc biệt truyền xa/ chuyển đ ổi t/h. Nhiều phương pháp (Hardware, Software) hỗ tr ợ để kiểm tra: • [Block] check sum - BCC, phần mềm, • CRC, ECC,... vi mạch/ software - subroutine • Parity, 1 hoặc 2 chiều • Redundancy (RAID), thừa dl, trao đ ổi nội dung số liệu hơn 1 lần và so sánh. • Case study: Barcode Phơng pháp mã hóa, giả i mã và kiểm tra lỗi Bar Code: EAN 13, CODE 39 (Intermec), CODE 128 (Zebra), UPC ... • EAN 13 (European article numbering) • Encoding: AAA BBBBB CCCC D; 4 độ dày vạ ch, 6 vạ ch/digit (b&w) • A(National): VN 893, CN 690-692, JP 45-49, GE 400-440, RU 460-469 • B: com/ org • C: Product • D - Check sum, right most: (right to left): 10 - [(D2*3 + D3*1 + D4*3 + D5*1...+ D13*1)mod10] Ví dụ: 893 12345 1234 7 • CODE 128, Zebra, check sum modulo 103 Hình 2.5. USB Interlayer Interconnection Model 2.2.1. IO Mapping: 2.1.5. Command & Response (Result/Reaction) set: Intelligent Devices (Computerized devices - mouse, KB, Printer, modem, FDC, HDC, RTU...) có nhiều tham số, chế độ hoạt động => xây dựng bộ lệnh (command set) và thông tin tr ả về (response set). Dùng phần mềm để xử lý => bớt tín hiệu. o Tập hợp các yêu cầu từ CS - command set, o Tập hợp các trả lời, trạng thái - result/response/ reaction set. Các câu lệnh và tr ả lời có syntax riêng (cấu trúc và ngữ pháp). Case Studies: lệnh AT và Response Hayes MODEMs: ATDT 1260 ↵ ' Với nhiều Options Lệnh: Trả lời (reaction) OK [Error] . . . Connect @19200 (result) Lệnh FX Printer: Esc * m, n1, n2; Sel Graph Mode Tham khảo các bộ lệnh của các thiết bị chuyên dùng: GPS, Gyrocompass, Digital Oscilloscope, SAGEM, TelSat, Programmer (Hi-Lo System All-11P2)... Một command/response thường có cấu trúc: mã bắt đầu ký tự r iêng nh @ / # / $/ AT... Hình 2.6. Phân miền các cổng I/O o mã lệ nh, 1..3 bytes/ char, o - Memory Mapped IOs: tham số lệnh, 1... n bytes, o IOs chung với Mem trong MemSpace => chiếm vùng nhớ, tốn vùng nhớ o mã kiểm tra lỗi check sum, CRC (dễ xử lý) o CPU xử lý các cổng IO bằng các lệ nh nh đ/v mem. o mã kết thúc, ký tự riêng. o - I O Mapped IOs: (Z80, x86...): Page 13 of 56 Page 14 of 56
  8. o Không chiếm không gian nhớ, Chương 3. Các phương pháp trao đổi thông tin o CPU chỉ thực hiện 2 lệnh: IN và OUT • Polling - Thăm dò • x86 CPU’s IO map: IO mapped IOs, 16 Addr bit IO => 64Kilo IO locations. • Interrupt - ngắt & - PC’s IO map: • DMA - truy nhập tr ực tiếp mem - IO o IO Mapped IOs, o Chỉ dùng 10 lowest addr bit, A0..A9 => 1 kilo IO locations Soi gương – 1st kilo Mirrored với 63 kilo còn lại, 3.1. Phương pháp thăm dò (polling) Mỗi IO port chiếm nhiều địa chỉ (nh PIC, PIT, PPI..) • K/n Polling: Dùng phần mềm để kiểm tra các cờ trạ ng thái @ IO Ports => quyết định trao đổi số liệu hay => thiếu IO space. Sẽ dùng thêm kiểu Mem Mapped IOs. không. – Nhanh, đơn giản, hay dùng trong các hệ nhỏ hoặc đơn nhiệm – ít thiết bị IO, 2.2.2. Lệ nh In/Out: (x86) : – Không phù hợp với ‘ đa nhiệm’ Lệnh IN và OUT: chỉ dùng các thanh ghi Accumulator: 8 bit: AL, 16 bit: AX và 32 bit: EAX. Chế độ địa chỉ: Lưu đồ tổng quát: o Direct: for IO space: 0..0FFh Ví dụ: in al,60h ; Read KB port Polling out 23Eh, ax ; lệnh sai, IOaddr>255 out 61h,al ; beep, set/reset key flag o I ndirect: for IO space 0..0FFFFh, via dx register Ví dụ: mov dx,378h ; PLT port Addr mov al, ‘A’ ;41h/ 65d Device #1 Y Device #1 Request ? Service Routine out dx,al ; 'A' ==> Printer mov dx,3F8h ;Comm 1 port N in al,dx; Device #2 Y Device #2 Request ? Service Routine N Device #n Y Device #n Request ? Service Routine N Q uit Hình 3.1. Lưu đ ồ PP IO interface polling 3.2. Phương pháp ngắt (Interrupt): 3.2.1. Khái niệm Page 15 of 56 Page 16 of 56
  9. Trong một số CPU, để bẫy/ đ ể xử lý các s ự kiện trong khi thực hiện, như Intel x86: - Divide by zero: tương ứng thực hiện lệnh, Int 0, - Trap – Single Step: thực hiện từng lệ nh, debug- ger, Int 1, dùng cùng với Trap Flag (Trace). - Break Point: tạo điểm dừng, debugger, Int 3, - Overflow: (tràn số học), Int 4. - ... d. Exceptions: Là vấn đề hay điều kiện đ ể CPU dừng công việc đang t/h, tìm địa chỉ và thực hiện 1 ctc, được thiế t kế để xử lý sự kiện này. • Exception giống Interrupt, thực hiện lệnh riêng. • Trong PC, Exp khác Intr qua 2 điểm: Hình 3.2. K/n ngắt - Liên quan tới việc thực hiện chương trình, - Có ưu tiên cao để dừng ch/tr Khi CPU đ ang thực hiện CTC, đ ến dòng lệnh thứ n, ngẫu nhiên, ngoại vi thứ i xin phục vụ bằng cách phát - Ví dụ: Math Processor Exception ra tín hiệu IRQ(i) (Interrupt Request) đ ến CPU. (Apple Macintosh Computers): các Error, thay đổi đ iều kiện, kể cả ngắt, được CPU phát hiện trong khi Nói chung, CPU sẽ ngừng xử lý CTC và cấ t ngữ cảnh vào Stack Mem, rồi tìm địa chỉ của ctc phục vụ chương trình đang hoạt động. ngắt tương ứ ng (Interrupt Service Routine - ISR) để thực hiện. Sau khi thực hiện xong ISR, gặp lệnh iret (reti...), CPU khôi phục lại ngữ cả nh của CTC và tiế p tục thực 3.2.3. Case study: t ổ c hức ngắt của các hệ VXL/Máy tính hiện. a. Intel 8x51 Micro Controllers: Họ Intel 8x51 có 6 vectors ngắt: Đặc điể m: 02 Ext. Interrupts: Int0 và Int1, • Là phương pháp Vào/ra kết hợp tín hiệu và phần mềm, đ ể thực hiện đa nhiệm. 03 Timer Interrupts: Timer 0, 1, 2 và • Khái niệm ngắt: CTC bị dừng xử lý để gọi ctc 01 Serial port Interrupt (phát/thu char). • Là chế độ hoạt động riêng cho các Vi xử lý/ máy tính kiể u ON-LINE, ứng với các ngắ t này, có các địa chỉ đầu cho ISR tương ứng tại trang zero @ Prog. Memory: 0003, • Nguồn ngắt: chủ yếu từ ngoại vi, CPU (exceptions, internal), 000Bh, 0013h, 001Bh, 0023h và 002Bh. • Xả y ra ngẫu nhiên, Tại các địa chỉ này thường đặt lệ nh LJMP nnnn và được đặt lệnh RETI nếu không có ISR. • Nhiều IOs, ngẫu nhiên => Tranh chấp => Giải quyết ưu tiên ngắt. Ưu tiên ngắt – Interrupt Priority: • T/bị ưu tiên cao có thể dừng ISR của t/bị ư u tiên thấp • Hệ lớn, nhiều IOs thường dùng PIC (Intel PIC8259A) • Chỉ số ưu tiên do nhà sx qui định cho các t/bị ngoạ i vi, cố định, mức 0 là cao nhất. • Theo hình trên: Level (j) > Level(i), i>j. • Ưu tiên phân đ ịnh do các tín hiệu ngắt trong CPU (Intel 8085: INTR, 5.5, 6.5, 7.5 và TRAP), • Z80 CPU & others: ưu tiên theo kiểu Daisy Chain 3.2.2. Phân loại: Gồm: Hardware, software, internal, exception, NMI... a. Software Interrupt: Là việc gọi 1 ctc (Subroutine) được xây dựng riêng mà ctc này còn có thể được gọi bởi thiết bị ngoạ i vi. Các lệnh gọi như INT n; (Intel x86) hay S WI n; (Moto). b. Z80 system: • Z80-CPU, 3 modes ngắt: C ác lệnh ReStart (như Intel 8085), NMI và Daisy Chain. Kiểu Daisy Chain: Tuy nhiên, việc thực hiện lệnh ngắt mềm giống như gọi thủ tục, và đôi khi đợc hiểu là TRAP. Ngắt mềm không phả i là ngắt • Ghép nối với các Z80-Ports: Z80-PIO, Z80-SIO, Z80-CTC... • IRQs từ các ports là Open Drain, • Khi CPU: M1 & IO Request => INTA đến port1, b. Hardware: - Do Ports phát tín hiệu NMI/ IRQ đến CPU. • Nếu Port1 Resq, sẽ phát mã ‘Addr’ lên data bus, nếu không - Chia thành 2: Maskable (có thể cấm được) và Non Maskable (không cấm đ ược) : • Chuyể n INTA đến Port 2... Maskable Interrupt: là các ngắt thông thường, có thể cấm (disable) hay cho phép (enable) bởi các lệnh • Ưu tiên cố định/ jumper. CLI và STI (Intel vs Moto!), so called mask – che. Các ngắt sẽ bị cấm - IF disable: sau khi CPU reset, tr ước đó đã có IRQ khác, sau khi th/h lệnh CLI. c. x86 & PC interrupt Non Maskable Interrupt, NMI là ngắt có mức ưu tiên cao nhất, thường cho các việc: mất điện, sai số Bảng vector ngắ t IVT Interrupt Vector Table– Real mode: liệu (DRAM parity)... PC hiệ n nay, thường không dùng NMI. CPU x86: 1st kilo byte (RAM) bả ng vector ngắt 1st KB = 256 elements of 4 bytes Chứa địa chỉ đầu củ a ISR tơng ứng. Khi khởi tạo, BIOS nạ p vào IVT đcđ củ a các ISR ứ ng với IO. c. Internal: Page 17 of 56 Page 18 of 56
  10. Đổi vector ngắt: đổi nội dung các vector này Load ISR và xác định địa chỉ vật lý, Các ngắt cứng, NMI và Internal đều tương ứng với 1 lệnh ngắt m ềm có cùng vector type, tức có vector Enabling IRQi @ PIC’s, Mask Reg (OCW1): b(i) = 0, trong bảng IVT. Thay vector ngắt, cần lưu vector cũ? Enabling cờ IF trong CPU, lệnh STI, Set Interrupt Enable Flag, cho phép ngắt Software Interrupt: Lệnh Int n, n=0..FFh. Mô tả lệnh: Trước khi thực hiệ n lệnh, phả i có chtr khởi tạo ngắt (Intr house-keeping): đ ịnh vị I SR và đổi vector ngắt, Hoạt động: Khi gặp lệnh Int n, CPU sẽ cất Flag Reg, CS và IP vào Stack mem, (n x 4) => IVT, đọc 4 byte tương ứng nạ p 1 . Khi trao đ ổi số liệu: Ngoạ i vi với IO port vào IP và CS, ISR bắt đầ u được thực hiện. 2. IO port phát tín hiệu IRQ(i) tới PIC 8259A, Khi gặp lệnh IRET, CPU khôi phục lại từ Stack Mem IP, CS và Flag Reg (LIFO). 3. PIC phát tín hiệu INT => CPU. CPU thực hiện nốt lệnh hiện tại 4. Cất ngữ cảnh main prog. vào stack mem Hardware Interrupt, irq: 5. #1 INTA bus cycle => Prioritizing IRQ trong PC: dùng 2 PICs - Priority Interrupt Controller 6. #2 INTA bus cycle => đọc Vector type củ a IO port, VectorType = i+8. Master PIC (20h, 21h), IRQ0..IRQ7 => Int 8..Int 0Fh 7. (VectorType x 4) => IVT, đọc đ cđ I SR tương ứng, nạ p vào IP&CS, IRS bắt đầu được thực hiện. Slave PIC (a0h,a1h) = IRQ8..IRQ15 => Int 70h..Int 77h 8. ISR: (nếu dùng ASM) - Realtime Prog. Languages: MASM, C, ... , - Enabling Interrupt for Higher priority Levels, - Cất những thanh ghi-ISR dùngvào STACK Mem, - T/h nội dung ISR, - Khôi phục Reg từ STACK Mem, LIFO, - Depriorotizing: OCW2: Ví dụ: mov al,20h out 20h, al ; Non Specific EOI iret ; Return fron Intr. d. Xây dựng PC ISR: - NN cao Pascal/C: Pointers (for Old Vector) và procedure có chỉ dẫn Interrupt. Chú ý cần có thêm các lệnh STI và CLI hoặc inline mã máy FAh và FBh (En/Dis). - MASM và OS: thay vector ngắ t trực tiếp, lệnh mov các con trỏ vào IVT; int 21h subfunctions: 25h và 35h của DOS. - Case Study: Xây dựng ứng dụng dùng ngắt cứng để ghép nối ngoạ i vi: IRQ1 (Any key), IRQ4: CommPort, x86 & pc, Hardware Int Priority Interrupt Conteroller Intel 8259A: IRQ5 (Option) và IRQ7 (LPT1, Falling Edge of -ACK)... § 8 Channel (8 I/O ports) - Thường trú ngắt thời gian Int 1Ch thuộc Int 8 ISR, Timer § Ưu tiên cố định, vòng, vòng định trước § Nối tầng với Slave PIC(s), mở rộng thêm IOs 80x86 Interrupt in Protected Mode: § Nhiều chế độ hoạt động – ICWs & OCWs • Int. Descriptor Table (IDT) có thể định vị bấ t kỳ vùng nhớ nào § Dùng với nhiều hệ VXL, IBM-PC • Vị trí và kích thước trong bảng IDTR: 32bit addr và 16 bit limit § ... Tham khảo VXL của MTV • Gate, not vector. • 256 gate descriptor: trap/ interrupt/ task - ISR's Addr & Attribute x86 & pc, Hardware Int: • Int/ trap cho phép chuyển đ ến ISR trong current task. Hardware Interrupt, IRQ: Hoạ t động Hardware Intr trong PC, xem PIC 8259A Interrupt Housekeeping - chuẩn bị: files.sys[com], (Vd gmouse.com - cổng comm 1) Page 19 of 56 Page 20 of 56
  11. • DMAC#1: 8 bit Channels, 64KB max:, 0h 01fh addr • Ch0 - DRAM Refresh, Spare • Ch1 - SDLC, LPT’s ECP mode - Alt., Spare • Ch2 - FDC, single byte mode • Ch3 - LPT’s ECP mode, Ir port, Spare • DMAC #2: 16 bit Channels, 64KW max, 0C0h • Ch4 - Cascade for DMAC 1 • Ch5 - HDC, spare • Ch6 - Spare, • Ch7 - Spare • Page Registers: 080h..08Fh: Gi÷ ®Þa chØ cao • SysBus in DMA mode, AEN = 1 (AddrEnable) CLI STI ; Load IDT từ Effct Addr LIDT EA SIDT EA INT n IRET INT O ; ( INT 4) HLT ; Wait for Ext IRQ or Reset WAIT ; Wait for -Busy => inactive • DMA House keeping: 3.3. Direct memory access – DMA – Addr lines (DMAC & Page Reg) input/ Hi-Z 3.3.1. Khái niệm: – I nit: 8bit(Master:0..1F)/ 16bit (Slave:0C0..0DFh) Controlled by DMAC, bus master • Channel (i): DRQi và -DACKi § I n/Out dùng hardware [burst mode] => nhanh, 33/66MBps • Port (IO Addr), AEN = 1 (Address decode) § Chuyển block/ Single byte • I OR-MEMW hay MEMR-IOW § I O çè Mem, Mem çè Mem (ít) • Hi Addr of data memory => th/ghi trang t/ ứng. Addr từ Ch0 (hex): 87, 83, 81, 82, 88, 89, 8A, IO § Specified Block/ IO Requirement space § Stealing cycle (DRAM controller Intel 8208) • Low Addr => BaseAddrRegi, (TechHelp 6.0) • Kích thước mảng: BaseCounteri • Single byte/ block • Specificed block/ IO Port Requirement IOR-MEMW bus cycle • Bắ t đầu t/h DMA, ngoại vi chuyển data => IO Port ‚ IO Port phát tín hiệu DRQi tới DMAC. N ếu chấp nhận ƒ DMAC phát HRQ tới CPU (CPU logic circuitry) „ CPU dừng hoạ t động @ state T3, Hi Z bus … CPU Trả lời t/h HLDA => DMAC & goes to sleep † Thực hiện DMA bus cycle: 3.3.2. Dmac intel 8237a: MTV § 4 Channel of 8/16 bit - (-DACKi = 0 & -IOR = 0) => IO Port 'nhả' sl lên bus § IOR-MEMW & MEMR-IOW DMA bus cycles - Addr (DMAC & PR) => data mem, -MEMW § Mem to Mem => chuyển 1 byte/word ‡ Tăng CurrentAddrReg, giả m CurrentCounter. N ếu CC=0 thì phát T/C, nếu 0 => †, next DMA bus cycle § Single byte/ block transfer (64KB/Kw max) § Ưu tiên cố định/ vòng § Specified block (TC) / IO Requirement (EOP) § Nối tầng để mở rộng số k ênh DMA § ... 3.3.3. PC’s DMA: Page 21 of 56 Page 22 of 56
  12. Chương 4. I/O Interface bus overview Giới thiệu bus chuẩn cho ghép nối, mở rộng: – I SA/ PC-104 – AT bus – USB (Universal Serial Bus) – Philips I2C – PCI (Peripheral Component Interconnect) – SCSI (Small Computer Systems Interface) – GBIB (General Purpose Interface Bus) – Siemens Profibus – I EEE 1394 – ... 4.0. Khái niệm về bus: • PCB (Printed Cirrciut Board), Cable (Copper/ Optic), Slot, Connector... • Nối nhiều thiết bị slave [master], dùng chung • Nhiều line (bit) hoặc đ ôi dây (I2C, USB, SSA, Profi) Topology • Thành phần (physical lines/ time sharing): • Rev.1.1: 23/09/1998 – Address • Chia thành nhiều Tiers – Data • Các Tiers nối các thiết bị: Hub hoặc chức nă ng – Control/ Status/Handshake ~ • Mỗi Tier có Hub(s) – [Power supply] 4.1. Industry small architecture (isa) bus: • ISA/ AT bus, 1984, IBM, PC-104 bus, Available in Pentium, PowerPC Platforms • Để ghép thêm các thiết bị I /O chuẩn vào Mother Board, 3..8 Slots, Hiệ n tại các máy có thể không dùng slot • 8/ 16 bit for data transfers • 8,33 MHz => 5 MBps max • Only 1 BusMaster, CPU hoặc DMAC • No data integrity, không kiểm tra parity, IO Check • Dùng đ ể ghép với các thiết bị chậm, kiểu ký tự: ‘character typed devices’ : k eyboard, mouse... • Refer ‘AT Technical Reference’ or TechHelp for detail 4.3. USB: specifications • Chỉ có 1 USB host (USB Controller) trong hệ • Devices, có 2 loại: Hình 4.1. AT/ ISA/ PC 104 bus • Hub, mở rộng thêm thiết bị nối vào USB • Các thiết bị chức năng nh ISDN, JoyStick, KB, Printer... 4.2. Universal serial bus - usb: • Thiết bị chu ẩn interface USB theo: • USB Protocol • Chu ẩn Hđ củ a USB: config và reset • Communication Standard • USB Controller/ Host polls bus & initiates all data transfer Ưu điểm: • Tín hiệu vi sai phát/ thu, bọc kim, chống nhiễu • CRC Protection đ/v data & control fields Page 23 of 56 Page 24 of 56
  13. • Tự phát hiện attach/ detach, xác định cấu hình các thiết bị tự động ở mức hệ thống • TimeOut đ/v trường hợp mất gói tin/ gói tin lỗi 4.3. USB: Physical interface • 1.5 Mbps – Low speed mode và 12Mbps (Revision 1.1) • N gu ồn cấp +5V, vài metre • Power managment • Revision 2.0: 480Mb/s 4.4. Philips I2C bus version 2.1. Jan. 2000 Philips, 1992 Ver. 1.0;... 1998 Ver 2.0, 2000: Ver 2.1, dùng cho các hệ thống nhúng (embeded systems) • Không cần dùng bus interface chip(s), built-in • Integrated addressing & data-transfer, cho phép dùng phần mềm đ ể định cấu hình • Thêm/ bớt IC không ảnh hưởng bus system • Đơn giản tìm lỗi, khoanh vùng lỗi nhanh • Giảm thiểu kích thớc: 2-wire serial, không cầ n các mạch Addr Decoder và ‘glue logic’, dùng phần mềm • Truyền đồng bộ, 100 kb/s Standard-mode, 400 kb/s Fast-mode, 3.4Mb/s HiSpeed-mode • Page 25 of 56 Page 26 of 56
  14. Multi byte R/W :Addr auto Inc/ Dec; Master/ Slave :Send A[ck] (=0) hoÆc /A (NACK) (=1) tïy thuéc bit tiÕp theo lµ data hay Stop Một số v i mạch dùng I2 C bus: • Dallas RTC 1307, 1308: 64 byte RAM & Real Time Clock, • Philips PCF 8593, Low Power Clock/ Calendar • Atmel 93C46/24C96... EEROM Có thể nối nhiều Masters, trong 1 t/đ chỉ 01 BM’s Active 4.5. PCI - Peripheral Component Interconnect 5/1993, Intel Ver. 2.0, Open standard, • Local bus, trung gian giữa Local và các bus chuẩn khác (ISA, MC, EISA) thông qua PIC Bridge/Controller. • Có kiểm tra parity cho Addr và Data • Auto configuration of all PCI devices, share the same IRQ. Disabling IRQ => cấm toàn bộ PCI devices. • No DMA, device on PCI bus là bus master (Tốt cho việc dùng MultiTasking OS). SCL=1, SDA= ↓ Start(Rep Start, S) • Burst mode: 32 bit @33MHz --> 96..132MBps, tuỳ thuộc số byte (từ 32 byte đến 4KB). Option 64bit SCL=1, SDA= ↑ Stop (P): @33MHz --> 264MBps, 64bit – 66MHz. • Most Platforms use:Intel, DEC Alpha, PowerPC, Spark Page 27 of 56 Page 28 of 56
  15. • Modern OS: ‘Block Typed Devices’: tần suất vận chuyển cao, nhanh, data block 4.6. Small computer systems interface - SCSI • SCSI (SCSI-1): 1990; SCSI-2: 1993 to now; UltraSCSI:... • Dùng cho Disk controller có bộ lệnh của nó, • Thường có 1 Adaptor, không nằm trên motherboard • Support any SCSI device: Disk, CD-ROM, tape, scanner • 5 to 40 MB/s • 7 devices max, upto 15 with SCSI-2 FastWide and UltraSCSI Hình 4.15. Mạng Profibus 4.8. General purpose interface bus - GPIB • Tín hiệu: Có loại cable đơn và vi sai (chống nhiễu tốt hơn), các controller support 2 loại tín hiệu. Không • As known IEEE 488; HPIB (Hewlette-Parkard Interface Bus), IEC 625 bus nối 2 kiểu trên cùng bus. Most: SingleEnd, RS6000 differential. • Được thiết k ế đ ể kết nối mạng máy tính với các thiết bị ngoại vi, đ o lường - kiểm nghiệm, lab... kiểu • SCSI Common Command Set: được gửi từ device driver, đưxợc dịch bởi th/bị = > Adaptor không phải Program-mable Instrumentation thay đổi khi gắn thêm thiết bị • 14 devices có thể nối vào GPIB, ...1MB/s, couple meters • SCSI subsystem gồm: Host adaptor (để interface giữa host system và subsystem), SCSI controller, bus, • 24 pin connector: 16 lines: 8 data, 3 handsshake, 5 management ( để điều khiển việc dùng bus), thiết bị. remainders: Twisted/ Logic Gnd, Shield • SCSI Controller & devices: 8.. 16 devices, 1 as Controller. Thứ tự u tiên củ a các thiết bị, cao nhất là 7 • Computer as Controller; các thiết bị khác là Talkers/ Listeners. Trg 1 t/đ: 1 device - Talker, Others - (Controller) Listeners • Để nối mạng:GPIB Card,cable,connector(Hình 4-16/17/18) 7– 6 – 5 – 4 – 3 – 2 – 1 – 0 –15 –14 – 13 – 12 – 11 – 10 – 9 – 8 • 8 data bit => 1 parity bit. K/tra Data: ECC, đ ịa chỉ CRC @ mỗi sector 4.7. Siemens process & field bus – profi bus • Giới thiệu: Môi trường công nghiệp, • Chuẩn EN 50170-1-2 • Kết nối những thiết bị vào ra phân tán, thông minh (PLCs, Motor drivers, ), 1 trong những layers của mạng CN: SINEC-L2 • Bao g ồm các giao thức: Hình 4.16. Một số PC's GPIB interface cards • PROFIBUS DP (Distributed I/O):trao đổi sl với các slaves qui mô nhỏ, định k ỳ, tốc độ cao • Profibus PA: Process Automation: IEC 61158-2: môi trường khắc nghiệt. Số liệu và power chung line (PLC), 31.25 kbps • PROFIBUS FMS (Fieldbus Message Specification): – Kết nối PC với các thiết bị tự động củ a Siemems: S7/M7/C7 Families kiểu cell – Số liệu có cấu trúc, không phụ thuộc vào đ ường truyền.PROFIBUS F • PROFIBUS FDL (Fieldbus Data Link): tương thích với các mạng con • Spec.: – Token bus: cho nhiều masters (active nodes) – Master - Slaves – >1km (RS-485) và 9.6km (Optical Fiber) – Mã hóa Manchester II độ tin cậy và chống nhiễu tốt Hình 4.17. GPIB connector & signals Page 29 of 56 Page 30 of 56
  16. Chương 5. Digital interface PARALLEL IN/OUT • – PORTS: principle, PPI, Centronics – PCMCIA, Dual ported Ram – I NTERCACING to devices: LED, LCD, encoder, STEP motor, ... – HI-POWER INTERFACE: relay, scr, triac, power mosfet, igbt... SERIAL IN/OUT: Sync, async, • – RS-232, RS-485, RS-422 – modem... Hình 4.18. IEEE-488 Instrumentation & connector 5.1. Parallel interface: 4.9. IEEE 1394 - Firewire 5.1.1. Nguyên lý • IEEE 1394 serial bus, 1997, by Apple & TI, thay thế SCSI • Output Port: latched Output (chốt ra), D_Flip-Flops • Upto 63 nodes (devices) connect to a PC, hot plugible – Unlatched Input, hình 5.1. single • High speed: 60 to 400 Mb/s (7.5 to 50 MB/s) • Cable: 6 wire (2- power carier lines 8..40Vdc/ 1.5A), 15'. • Daisy chain extending to over 200' • P1394 - PCI bus Audio, Video devices, CD, disk, printer... • Tree topology: 63...64k nodes (bridge across buses) • Addressing single node, broadcasting all nodes, config time < 400 us • More than one PC can be connected to P1394 bus • Cổng ra đơn giả n: dùng chốt 74 HC 374, (hình 5.2) • Ngoạ i vi đọc số liệu => phát tín hiệu strobe=0 Hình 4.19. Sơ đồ ghép nối các ngoại vi qua IEEE 1394 bus Out Port: 74 HC 374: • CPU phát địa chỉ ra IO space => có t/h –CS • Phát data và -IOW => có t/h LE = ↑ ( Rising Edge) => data được chốt vào HC374 • Port song song có tín hiệu bắt tay/ trạng thái (outport): • – Gửi 1 packet ra ngoại vi, đồng bộ giữa 2 phía – IO device chỉ đọc c ổng khi đã có số liệu (IBF) – CsS chỉ gửi số liệu ra khi byte/char trước đã được đọc bởi IO device (OBE) – Chú ý Time-Out-Error Page 31 of 56 Page 32 of 56
  17. • Data Out port, X78h, TTL, (some bi-dir, In when 1s out!) • Open Coll. Buffer - 8 bit latched out, back readable • LPT: send control & printed chars to Printer • Control Out Port: X7Ah, TTL • 4 bit latched out, back readable • LPT: -Strobe (b0), AutoFeed (b1), -Init (b2), SLCT(b3) • IRQ_EN (b4), not outlet • Status In, X79h, Unlatched, TTL • 5 bit: b3..b7: Err, SLCT_IN, PE, -Ack, busy 5.1.2. Programmable ports • Ports: • Intel PPI 8255 (Programmable Peripheral Interface) • Motorola PIA 6821 (Progr. Interface Adaptor) • Z80 PIO (Parallel In/Out) ... • Flexible Specifics: • 2..4 In/ Out Ports, single line direction (PIA/ PIO) • Mode: IN/OUT w [w/o] handshake, bus transceiver • Control/ status/ HSK: Edge (↑, ↓)/ Level (hi, lo) • Enable Int Req: • Case study PPI 8255: mov dx, 37Ah; LPT 1 control • 4 ports: PA, PB, PCH & PCL, 24 IO lines in al, dx • 3 modes: M0, M1 & M2 or al, 00010000b • Đơn giản và hiệu qu ả out dx, al ; • Disable: Port[BA+2]:=Port[BA+2] and $EF; Mode 1: enhanced parallel port - EPP • Xircom, 1992, Hi speed - 2 MB/s (1 ISA bus cycle), bi-directional port, Ext HDD, Network... • 8 Registers: • O ffset 0: SPP data , R/W data lines, w/o HSK • O ffset 1: SPP status, Read (b3..b7), b0 timeout • O ffset 2: SPP control, R/W 4bit C0..C3, C4: IRQ En, C5: byte dir • O ffset 3: EPP addr, R/W addr cycle w HSK • O ffset 4: EPP data, R/W data cycle w HSK • Others: may be use for 16/32, port config, user define Hình 5.3a. Ghép nối PPI 8255 với PC qua ISA bus Mode 2: extended capabilities port - ECP • MS-HP, 1993, 2..5 MB/s (1 ISA bus cycle), bi directional port, Ext HDD, Network... extension 5.1.3. Centronics port sys bus • 16 FIFO byte buffer để gửi/ nhận, DMA: Mem buffer • Centronics Computer Inc. so called LPT, 2 LPT ports (available) in PC • Có thể ghép nối với các ngoạ i vi chậm khi dùng Rdy • Modes: SPP, EPP, ECP & IEEE 1284 (EPP+ECP) • Mô phỏng hđ của SPP, EPP mode • IRQ (7/ 5) & DRQ (1/ 3) support for many applications of Interface: • Printer • R/W: data & commands: • Local Area Network • OUT -C1 (HostAck); IN -S7 (Per. Ack). • Ext. HDD • -C1/ -S7 = 1 (sending data); 0 (command) • Test Digi In/Out, ADC, DAC interface • Command: b7=1, b0..6: channel addr, b7=0, b0..6 run-length count for data compression mode (đếm các byte giống nhau - graphics, hardware) • Programmers (All 11P2) Mode 0: Simple Parallel Port - SPP (Normal mode) • OUT -C1 (HostAck); IN -S7 (Per. Ack). • 50..100kB/s, cable: 10' max - 25/ 36 lines Page 33 of 56 Page 34 of 56
  18. • -C1/ -S7 = 1 (sending data); 0 (command) • Command: b7=1, b0..6: channel addr, b7=0, b0..6 run-length count for data compression mode (đếm các byte giống nhau - graphics) • Many chip (SMC's super IO...) hỗ trợ decompress, phầ n mềm gửi ra phả i 'compress' • 6 registers: 3 SPP reg và 3 ECP reg • Base addr + 400h: data FIFO & config A-Read only • Base addr + 401h: Config B (interrupt, DMA...) • Base addr + 402h: Extended Control Register Mode 2: ieee 1284 ( epp + ECP ), 1994, 5 MB/s • IEEE 1284 standard - document: defines/ describes protocols for Parallel-port Communication. • Include: 1284 port/ 1284 cable/ 1284 Peri. • 5 communication modes: (Register use - Table 11-1 p206, Parallel Port Complete) • Compatibility Mode: Host sends a byte to Peri. (with Busy và -Ack) • Nibble Mode: Peri. to Host 4 bit, remainder - HSK • Kiến trúc phân nhiề u tầng để đảm bảo tính vận hành đ ộc lập với phần cứng: • Byte Mode: 8 bit, bi-dir • Socket service: Device driver - system manufacturer • EPP Mode: 8 bit, bi-dir, hi-speed • Card service: Device driver - Operating System Vendor • ECP Mode: 8 bit, bi-dir: data, addr, compression • Client Drivers/ Client Enablers, Driver tạo các y/c tới hệ thống: do hãng chế tạo Card cấp • Enablers/ Point Enablers: Driver chuyên đ ể thông tin tr ực tiếp Host Adaptor 5.1.4. Dual ported ram • Để chuyển mả ng số liệu giữa 2 hệ VXL (Master-Slave) với tốc độ cao, gần, ... (Switching Systems, PC Card Standard - CardBus: • 32 bit transfer PLCs, Graphics Accelerator...) • SRAM, dung lượng từ 1KB đến 256KB • Based PCI specification • Multiple Reads & Writes đồng thời • 33MHz/ 132 MB/s • Dùng các tín hiệu: • BusMasster support • Compatible w 16 bit card • 2 x n bit Addr for 2 sides: Left - Right => 2n mem loc. • 2 x 8 [16] bit of Data • Các tín hiệu điều khiển (RD, WR, CS) và tr ạng thái • • Các tín hiệu bắt tay/ trọng tài LED - Light Emitting Diode • • Hãng: Integrated Device Technology Inc. & Others; chip IDT 7707, 32Kbyte DPR Bao gồm: Point, 7(16) seg- ment, matrix: text/ graphics • Drive: Static/ Dynamic Scan • Dùng Latch/ PIO • H5.6 Static Display • H5.7: scan 8 x Com-mon Cathode 7 seg LEDs 5.1.5. PCMCIA Personal computer memory card international Association, Ver 2.1; pc card standard (5.0) 1996 • Là chuẩn của nhiều tổ chức/ công ty: >500 members • PC card device - credit card size adaptor: nhỏ, dễ mang, hot plugability, tin c ậy khi môi trường thay đổi, 68 pin connector • Devices: Flash, SRAM, modem, LAN (wire & wireless), disk, audio w DSP, GPS... • 16 bit data path (PCMCIA 2.1/ PC Card Standard 5.0) • 3.3 and/or 5 V • Dùng với nhiều loại bus Page 35 of 56 Page 36 of 56
  19. 5.1.6. Led interface drive 8 x 7 Segment Common Cathode: Hnh 5.10a. Text LCD Pannel disbuf: 8 byte chứa mã 7 seg cần hiện thị, N: counter • Main Program: Burn LEDs, gồm (1) Init: turnoff LEDs; N=0; (2) (disbuf+N) => 1st Latch; turn On LED[N]; delay(1); (3) Turnoff LED[N]; Inc N ; If N = 8 then N=0; (4) Goto(2) drive 8 x 8 matrix char box: disbuf: 8 byte chứa font Main Program: Burn LEDs 1. Init: turnoff rows; n=0; 2. (disbuf+n) => LS164; shift afap; turn on row[n]; delay(1-1.5); Hình 5.10b. Cấu trúc của Graphics LCD Panel 3. turnoff row[n]; Inc n ; If n = 8 then n=0; (4) Goto(2) Smooth shift left/ right? Color: 4/ 256 color LED duty cycle! Hình 5.10c. Tín hiệu và giản đồ thời gian ghi LCD panel 5.1.7. Encoder 5.1.6. LCD panel interface • Công nghệ LCD, hiệ n text/ graphics • Độ phân dả i: • 1 line x 16 character box • 2 line x 16 character box • 4 line x 20 character box • (64 x 128) hoặc (128 x 256) dot... font down loadable • Dùng để ghép nối đ o lường dịch chuyển cơ học: chiều dài, vận tốc, gia tốc, tốc đ ộ quay, đ ịnh vị, • ASCII... upto 128 characters/ set robot • APA: All Points Addressable • Công nghệ vật liệu từ - nam châm vĩnh cửu hoặc quang - hồng ngoại/ laser, hi resolution ADC... • Back lit, công suất tiêu thụ nhỏ • Độ phân ly cao: 256 ... to 500 kc/t (counts/turn), chịu shock (100G) • Dùng cho các hệ nhỏ, mang xách, máy đo... • Tốc độ cao 10krpm, mô men cản nhỏ (vài 10-3 Nm) • Output: các xung lệch 90O hoặc RS 485 (byte, BCD, GrayCode formatted), truyền xa 1 km Page 37 of 56 Page 38 of 56
  20. • Manufacturers: Tamagawa Seiki, Hewlett-Packard... • Thyristor (SCR - Silicon Controlled Rectifier) Hình 5.12a. Step Motor Hình 5.12b. Symbolic Diagram of Step Motor 5.2. Serial in/out: 5.2.1. Khái niệm Hình 5.12d. Các sơ đồ nối dây cho step motor • Thông tin trong H ệ VXL/ Máy tính: byte • Khi truyền 'xa': byte => dãy bit, serialize; dãy bit => byte, deserialize: giảm thiết bị thu phát và 5.1.8. Hi power interface đường truyền, giảm chi phí, tốc độ chậm, • Là các mạch ghép nối máy tính/ VXL với các thiết bị có điện thế cao/ dòng điện lớn như lò nung [sấy] điện tr ở, lò cao tần, motor (ac và dc) công suất lớn... • Mô hình: Hình 5.11. • Điều khiển thiết bị điện xoay chiều (ac): • Central System: CPU, mem, controllers, sys bus... • Relay, [r ơ le trung gian] hình 5.13a: • Serial port: • Dùng Relay để cách ly [và relay trung gian], • Symbols: • Điều khiển công suất ON-OFF (lò đ iện, motor) • UART/USART (Universal [Synchronous] Asynchronous Receiver - Transmitter) • Triac, Solid State Relay hình 5.13b: • Điều chỉnh công suất vô c ấp • SIO:Serial In/Out Port • Đễ gây nhiễ u cho lưới điện, phải có Line Filter • ACIA: Async. Communication Interface Adapter , MC 6850 • Điều khiển thiết bị một chiề u (dc): Hình 5.14. Page 39 of 56 Page 40 of 56
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
8=>2