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),
31 trang |
Chia sẻ: Mr Hưng | Lượt xem: 902 | Lượt tải: 0
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:
- bwch02_7649.pdf