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ị?. CommPort Handshake Signals •Phương pháp biến đổi tín hiệu: biên, t
Trang 2– 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)
Trang 32.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
Trang 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
Trang 52.1 Interface Protocols: 2.1.1 Signals:
Trang 62.1 Interface Protocols: 2.1.1 Signals:
• Ví dụ 2: PC Comm-Modem handshaking:
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)
Trang 72.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)
Trang 9Sơ đồ cách ly quang học đ/v tín hiệu In/Out:
Hỡnh 2.2 Opto Coupler
Trang 11Hình 2.3.b Optical Connector & Sơ đồ:
Trang 12H×nh 2.3.c Sîi c¸p quang:
Trang 132.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
Trang 14Byte 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
Trang 152.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
Trang 162.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.
và kiểm tra lỗi
Trang 172.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
Trang 182.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).
Trang 192.1 Interface Protocols:
2.1.5 Command & Response (Result) set:
Case Studies : lÖnh AT vµ Response Hayes MODEMs:
Tr¶ lêi (reaction) OK [Error] Connect @19200
(result)
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)
Trang 202.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
Trang 21Hinh 2.4 Scenario Chart
ACK NAK nothing
Trang 22H×nh 2.5 USB Interlayer Interconnection Model
Trang 232.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
Trang 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
=> 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 – 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.
Trang 252.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ỉ:
in al,60h ; Read KB port
out 23Eh, ax ; lệnh sai, IOaddr>255
out 61h, al ; beep, set/reset key flag
mov al, ‘A’ ;41h/ 65d out dx, al ; 'A' ==> Printer
mov dx,3F8h ;Comm 1 port
Trang 26Phụ lục PC’s I/O Port Map
000-00F DMA Controller, đkh truy
nhập trực tiếp 1, 4 kênh 8 bit020-02F Master PIC 8259A, ưu tiên
ngắt 1, IRQ0 – IRQ7040-05F PIT, Programmable Interval Timẻ
070-071 Real Time Clock và 64 byte
CMOS-RAM080-083 DMA Page Register, giữ địa chỉ
cao
Trang 270A0-0AF PIC #2, Bộ đkh ưu tiên ngắt
Trang 28210-217 Expansion Card Ports
2E2-2E3 Data Acquisition Adapter (AT)
300-31F Prototype Adapter, cho người dùng
phát triển
Trang 29340-35F AVAILABLE
370-377 Floppy Disk Controller
Trang 303C0-3CF EGA/VGA
3D0-3DF Color Graphics Adapter
3F0-3F7 Floppy Disk Controller
• Soundblaster cards usually use I/O ports 220-22F
• Data acquisition cards frequently use 300-31F
Trang 31Bµ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),
ph©n t¸n (Mini SCADA)
Comm).