Cấu trúc máy tính - Chương 2: Giao thức ghép nối

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:

• Transport-Oriented Protocols (1.4) (!!!)

–PhysicAL(wire, cable, connector, port), DataLink(CRC,

CS, Token), NetWork(Comm. 2 networks ), Transport

(Err-protected raw infor),

pdf31 trang | Chia sẻ: Mr Hưng | Lượt xem: 922 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Cấu trúc máy tính - Chương 2: Giao thức ghép nối, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
P&I-Ch2: Protocols 1 ch. 2 giao thức ghép nối (Interfacing Protocols) Bao gồm: - Giao thức ghép nối - Đặc điểm lập trình I/O P&I-Ch2: Protocols 2 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: • Transport-Oriented Protocols (1..4) (!!!) – PhysicAL (wire, cable, connector, port), 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) P&I-Ch2: Protocols 3 2.1. Interface Protocols: 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: • Hơn 1 thiết bị? => bus/mạng hay không ? => dùng bit (tr−ờng) địa chỉ. • Nếu dùng bus => Standard bus hay không? IDE vμ LPT-mode 0 cables lμ bus? tại sao? • Data: Xa /gần, nhanh/chậm => Serial vs Parallel • Xa: 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 P&I-Ch2: Protocols 4 • Daisy chain: – Nối cỏc thiết bị cú khoảng cỏch từ vài đến vài chục m, đầu ra của port (module) thứ n nối với đầu vào của n+1 – Dựng cho tớn hiệu (// & nt), nguồn cung cấp, handshake... P&I-Ch2: Protocols 5 2.1. Interface Protocols: 2.1.1. Signals: • Ví dụ 1: PC-LPT handshaking: PC LPT port Line Printer SLCT SLTC_in Hình 2.1.a. LPT handshake Signal P&I-Ch2: Protocols 6 2.1. Interface Protocols: 2.1.1. Signals: • Ví dụ 2: PC Comm-Modem handshaking: RTS CTS DTR DSR PC 1 Comm Port Modem or PC 2 Comm Port Hình 2.1.b. CommPort Handshake Signals •Ph−ơng pháp biến đổi tín hiệu: biên, tần, pha, dòng, quang (cáp quang, Ir) P&I-Ch2: Protocols 7 2.1. Interface Protocols: 2.1.1. Signals: • T/c vật lý của tớn hiệu: - Direction: In/Out, Input voltage: -0.5V to Vcc +0.5V - Mức điện ỏp: Mức ỏp ? (TTL (transistor transistor logic- [0..0.8V/ 2..5V]) , 12V/ 24V/48V...) - Single End (đơn cực) vs Differential (vi sai) signals - Khả năng tải - dũng điện ra: (Fan Out, Loading): + Number of Standard/LS TTL loads, + Sink: dũng vào – LowLevel, (cỡmA), + Source: dũng ra – HighLevel, mA/uA.(H. 2.1.c) • Nối chung/ghộp nối bus đơn giản: 3 state (Hi Z), open collector (Open Drain), Mux – dồn kờnh, Switch - khúa. • Hot swap – hot plugible: Y/c Vcc và t/h ( www.atmel.com ) • Cỏch ly (isolation): Relay, Opto Coupler, IrLED... • Bus Slot, Connector, chuẩn, số chõn (pin) P&I-Ch2: Protocols 8 P&I-Ch2: Protocols 9 Sơ đồ cách ly quang học đ/v tín hiệu In/Out: Hỡnh 2.2. Opto Coupler P&I-Ch2: Protocols 10 • Connectors: – D shell: DB9, DB25,... – DIN, Cable & Connectors: Hình 2.3.a. Connectors • Cable: • Flat, • Coaxial, • Shield, • Twisted Pair • Normal • Optical Fiber... P&I-Ch2: Protocols 11 Hình 2.3.b. Optical Connector & Sơ đồ: P&I-Ch2: Protocols 12 Hình 2.3.c. Sợi cáp quang: P&I-Ch2: Protocols 13 2.1. Interface Protocols: 2.1.2. Format số liệu: đối với file/text: số liệu nhiều => khi trao đổi (với DAS, PLC, Digi-Oscilloscope, GPS, TelSat...)ẻ ‘đóng gói’ số liệu (packaging). Mỗi gói tin (packet) gồm 3 phần: • 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 gói tin...], không mang tin. • Content: nội dung tin - mang thông tin. • Tailer: M∙ bắt tay kết thúc, [m∙ kiểm tra lỗi] - không mang tin. 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. P&I-Ch2: Protocols 14 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: • 1 start bit = 0, • 5/6/7/8 data bit, D0 first, • [parity: Even/ Odd], • 1 / [1.5 / 2] stop bit = 1(s). Hình 2.3.d. USB data packet format P&I-Ch2: Protocols 15 2.1. Interface Protocols: 2.1.3. Tốc độ trao đổi thông tin: Xuất phát từ: Nhu cầu trao đổi thông tin của T/b ngoại vi => chọn kiểu truyền thích hợp, có liên quan tới t/h: ƒ Bottle-neck? ƒ Phụ thuộc Khoảng cách - tích số (k/c và tốc độ) ƒ Nhiễu: theo công thức Shannon: bps = BW log2 (1+P/N). Với BW: bandwidth, P/N tỷ số công suất tín hiệu/ nhiễu (not a dB ratio) ƒ Môi tr−ờng, đ−ờng truyền (cáp đồng, quang, wireless: radio, infrared) ƒ Synchronous/Asynchronous? ƒ Modulation/Demodulation ... => tốc độ bao nhiêu kbps/kBps, tốc độ chuẩn? 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 P&I-Ch2: Protocols 16 2.1. Interface Protocols: 2.1.4. Kiểm tra, sửa lỗi, nâng cao độ tin cậy: 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 d−: 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 P&I-Ch2: Protocols 17 2.1.4. Kiểm tra, sửa lỗi, nâng cao độ tin cậy: 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 P&I-Ch2: Protocols 18 2.1. Interface Protocols: 2.1.5. Command & Response (Result/Reaction) set: Ghép 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. • Tập hợp các yêu cầu từ CS - command set, • 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). P&I-Ch2: Protocols 19 2.1. Interface Protocols: 2.1.5. Command & Response (Result) set: Case Studies: lệnh AT và Response Hayes MODEMs: Lệnh: ATDT 1260 ↵ ' Với nhiều Options 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)... P&I-Ch2: Protocols 20 2.1. Interface Protocols: 2.1.5. Command & Response (Result) set: 1 command/response th−ờng có cấu trúc: o m∙ bắt đầu ký tự riêng nh−@ / # / $/ AT... o m∙ lệnh, 1..3 bytes/ char, o tham số lệnh, 1... n bytes, o m∙ kiểm tra lỗi check sum, CRC (dễ xử lý) o m∙ kết thúc, ký tự riêng. 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, OK, ERR, BUSY ... P&I-Ch2: Protocols 21 2.1. Interface Protocols: 2.1.6. Kịch bản đối thoại – Scenario: 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 tin, quẩn, treo... Th−ờng xây dựng: Step List hoặc Chart: Time Out ! Hinh 2.4. Scenario Chart Master ENQ Slave ACK NAK nothing P&I-Ch2: Protocols 22 Hình 2.5. USB Interlayer Interconnection Model P&I-Ch2: Protocols 23 2.2. Phân miền và lệnh I/O: 2.2.1. IO Mapping: Hình 2.6. Phân miền các cổng I/O P&I-Ch2: Protocols 24 • Memory Mapped IOs: o IOs chung với Mem trong MemSpace => chiếm vùng nhớ, tốn vựng nhớ o CPU xử lý các cổng IO bằng các lệnh nh− đ/v mem. • IO Mapped IOs: (Z80, x86...): o Không chiếm không gian nhớ, o CPU chỉ thực hiện 2 lệnh: IN và OUT • x86 CPU’s IO map: IO mapped IOs, 16 Addr bit IO => 64Kilo IO locations. • PC’s IO map: o IO Mapped IOs, oChỉ 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, Mỗi IO port chiếm nhiều địa chỉ (nh− PIC, PIT, PPI..) => thiếu IO space. Sẽ dùng thêm kiểu Mem Mapped IOs. P&I-Ch2: Protocols 25 2.2.2. Lệnh In/Out: (x86) : • 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ỉ: o Direct: for IO space: 0..0FFh Ví dụ: in al,60h ; Read KB port out 23Eh, ax ; lệnh sai, IOaddr>255 out 61h, al ; beep, set/reset key flag o Indirect: for IO space 0..0FFFFh, via dx register Ví dụ: mov dx, 378h ; PLT port Addr mov al, ‘A’ ;41h/ 65d out dx, al ; 'A' ==> Printer mov dx,3F8h ;Comm 1 port in al,dx ; P&I-Ch2: Protocols 26 Phụ lục PC’s I/O Port Map Port (hex) Port Assignments 000-00F DMA Controller, đkh truy nhập trực tiếp 1, 4 kờnh 8 bit 020-02F Master PIC 8259A, ưu tiờn ngắt 1, IRQ0 – IRQ7 040-05F PIT, Programmable Interval Timẻ 060-06F Keyboard Port, 070-071 Real Time Clock và 64 byte CMOS-RAM 080-083 DMA Page Register, giữ địa chỉ cao P&I-Ch2: Protocols 27 0A0-0AF PIC #2, Bộ đkh ưu tiờn ngắt số 2, IRQ8 – IRQ15 0C0-0CF DMAC #2, 3 kờnh DRQ 16 bit 0E0-0EF reserved, để dành 110-16F AVAILABLE, để dành 170-17F Hard Drive 1 (AT) 180-1EF AVAILABLE 1F0-1FF Hard Drive 0 (AT) 200-20F Game Adapter P&I-Ch2: Protocols 28 210-217 Expansion Card Ports 220-26F AVAILABLE 278-27F Parallel Port 2/ LPT2 280-2A1 AVAILABLE 2A2-2A3 clock 2B0-2DF EGA/Video 2E2-2E3 Data Acquisition Adapter (AT) 2E8-2EF Serial Port COM4 2F0-2F7 Reserved 2F8-2FF Serial Port COM2 300-31F Prototype Adapter, cho người dựng phỏt triển 320-32F AVAILABLE P&I-Ch2: Protocols 29 340-35F AVAILABLE 360-36F Network, LAN adaptor 370-377 Floppy Disk Controller 378-37F Parallel Port 1, LPT1 380-38F SDLC Adapter 390-39F Cluster Adapter 3A0-3AF reserved 3B0-3BF Monochrome Adapter 3BC-3BF Parallel Port 3 P&I-Ch2: Protocols 30 3C0-3CF EGA/VGA 3D0-3DF Color Graphics Adapter 3E8-3EF Serial Port COM3 3F0-3F7 Floppy Disk Controller 3F8-3FF Serial Port COM1 • Soundblaster cards usually use I/O ports 220-22F • Data acquisition cards frequently use 300-31F. P&I-Ch2: Protocols 31 Bài tập ch−ơng 2 2.1. Tham khảo một số giao thức: MODBUS (AEG) modbus.org, ProfiBus, ASI (Siemens), RTU ASCII (ABB), I2C... từ đó thiết kế đồ án môn học: hệ thu thập - điều khiển phân tán (Mini SCADA) 2.2. USB Protocol 2.3. Thiết kế giao thức truyền file giữa 2 máy tính (LPT/ Comm).

Các file đính kèm theo tài liệu này:

  • pdfbwch02_7649.pdf