Tải bản đầy đủ (.pdf) (31 trang)

Chương 2 :Giao thức ghép nối ppsx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (705.9 KB, 31 trang )

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 - bt 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 (vi 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 log
2
(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ớ, tn 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 CPUs IO map: IO mapped IOs, 16 Addr bit IO
=> 64Kilo IO locations.
PCs IO map:
o IO Mapped IOs,
oChỉ dùng 10 lowest addr bit, A0 A9 => 1 kilo IO locations
Soi gng 1
st
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 ;

×