ICT Role in 21st Century Education & its Challenges.pptx
Real time-embedded-system-lec-06
1. Real-time Embedded Systems Lecture 6 Embedded Communication Part I Prof. Dr. Amitava Gupta Department of Power Engineering Jadavpur University, India Real-time Embedded Systems- Lecture 06
2.
3. Real-time Embedded Systems- Lecture 06 Flow Control: Explicit and Implicit Explicit Flow Control: The sender and the receiver , each has a client associated with it. The sender sends a message and awaits an acknowledgement from the receiver after starting a timeout counter and a retry counter. If the acknowledgement is received within the timeout value, it informs its client and the send task is assumed to have been complete. Else, it checks if the maximum number of retry attempts have been exceeded or not and attempts another send. A failure is intimated to the client once the max. number of retries is exceeded. The receiver , on receiving a message, first checks if the message has already been received or not. If it has been received, it sends an acknowledgement to the sender only. Otherwise, it sends the message to its client and sends an acknowledgement to the sender. Thus, the error detection is at the sender end only.
4. Real-time Embedded Systems- Lecture 06 Flow Control: Explicit and Implicit contd.. Implicit Flow Control: The receiver is programmed to receive messages from the sender at some pre-designated instants only. No explicit acknowledgment is sent. Reliability is ensured by sending the message through multiple links. Thus, the error detection is at the receiver end only. Q. Which flow control do you think is more suited for RT communication requirements?
5. Real-time Embedded Systems- Lecture 06 Media Access Control Binary Countdown CSMA/CD TDMA Protocol Implementations High Level Standards Representative Applications CAN Automotive Fieldbus Profibus, Modbus Ethernet, LonTalk Building Automation Factory Automation DATAC Real-time communication abstractions Token Passing Device Net
6. Real-time Embedded Systems- Lecture 06 Media Access: Basic coding techniques for data transmission Manchester Coding: 0 is encoded by a transition from Hi to Lo 1 is encoded by a transition from Lo to Hi 0 1 Q. How would the Byte 11010001 be encoded?
7. Real-time Embedded Systems- Lecture 06 Media Access: Basic coding techniques for data transmission contd.. Non-return to zero encoding Send a 0 as Lo Send a 1 as Hi Uses a end bit and a sync bit – having opposite signs Thus 11010001 shall be coded as: END SYNC 1 1 0 1 0 0 0 1 END SYNC
8. Media Access Polling: Master polls the slave nodes which send messages when polled. Slaves communicate amongst one another through the master TDMA: Master synchronizes the clocks of all slaves. Each node transmits during a pre-designated time slot. Master Node 1 Node 2 Node 3 Node 4 time slots 1 2 3 4 5 Real-time Embedded Systems- Lecture 06
9. Token passing- Explicit and Implicit Explicit Token Passing: A token or a signal is passed from node to node across the network (forming a virtual ring). Only the owner (token holder) can transmit at any given instant. Tokens are piggy-backed on data bearing messages. Message prioritization is possible. A token could be a number indicating which node should transmit next. Recovery mechanism has to be devised- node bearing the token goes down. Node#1 Node#2 Node#3 2 3 Advantages: Determinism (bounded latency), Easy re-configurability Real-time Embedded Systems- Lecture 06
10. Token passing- contd… Implicit Token Passing: TDMA is a typical example of this. Another example is CSMA/CA( Collision Sense Multiple Access/Collision Avoidance) CSMA/CA Real-time Embedded Systems- Lecture 06
11.
12.
13. Media Access contd.. Binary Countdown Explained Lets say that nodes 4 and 5 start competing for the network at the same instant. This is what happens: Node 4 transmits a 1 (Hi) & Node 5 transmits a 1 (Hi) The bus is now in a recessive state and both are xmitting 1, so this goes through Node 4 transmits a 0(Lo) & Node 5 transmits a 0(Lo) The bus is now in a dominant state and none of the nodes xmit 1, so this goes through Node 4 transmits a 0(Lo) & Node 5 transmits a 1(Hi) The bus is now in the dominant state as node 4 xmits a 0, and therefore, node 5 fails to xmit a 1 (recessive bit) and hence opts out. Real-time Embedded Systems- Lecture 06
14.
15. Message Latency It is the time interval from the instant the message is enqueued for transmission to the instant the last bit is received. The message has to be enqueued before the arbitration slot i.e. before the node starts transmitting. Latency reduction techniques: Queue the messages just in time. Schedule tasks in the order of priority of their output messages. Real-time Embedded Systems- Lecture 06
16. Efficiency Message Efficiency : How many messages are actually useful at protocol level? Total number of useful messages Total number of messages sent Bit-wise Efficiency: ( Total number of useful data bits including portions of header used for identifying )/(Total nos. bits transmitted) Clearly both are protocol dependent Q. Which of the two protocols viz. token passing and CAN has a higher message efficiency? Q. What is channel efficiency and how are these related to it? Real-time Embedded Systems- Lecture 06
17. Real-time Embedded Systems- Lecture 06 Controller Area Network Physical Layer Data Link Application Layer Transceiver CAN Controller Host Controller Application CAN Bus Twisted pair with differential drivers & 120 ohm terminators Uses NRZ coding with bit stuffing SOF 11 BIT IDENTIFIER RTR IDE r0 DLC PAYLOAD 0-8 BYTES CRC ACK EOF IFS Indicates priority. Lower value, higher priority
18. Real-time Embedded Systems- Lecture 06 Physical Medium: Differential Drivers with Twisted pairs(120 ohm terminators) Fibre Optic cables Optical isolators Media access: Uses NRZ coding and binary countdown (bit dominance) Uses bit stuffing for long messages ( an opposite stuff bit every 5 identical bits) Q. How does the bit string 1111 1111 0000 0000 get coded with stuff bits? Q. Why is bit stuffing necessary? Data stuffing impairs error detection. Controller Area Network contd.