This Article 
 Bibliographic References 
 Add to: 
Design and Implementation of Efficient Message Scheduling for Controller Area Network
February 2000 (vol. 49 no. 2)
pp. 182-188

Abstract—The Controller Area Network (CAN) is being widely used in real-time control applications such as automobiles, aircraft, and automated factories. In this paper, we present the mixed traffic scheduler (MTS) for CAN, which provides higher schedulability than fixed-priority schemes like deadline-monotonic (DM) while incurring less overhead than dynamic earliest-deadline (ED) scheduling. We also describe how MTS can be implemented on existing CAN network adapters such as Motorola's TouCAN. In previous work [1], [2], we had shown MTS to be far superior to DM in schedulability performance. In this paper, we present implementation overhead measurements showing that processing needed to support MTS consumes only about 5 to 6 percent of CPU time. Considering its schedulability advantage, this makes MTS ideal for use in control applications.

[1] K.M. Zuberi and K.G. Shin, “Non-Preemptive Scheduling of Messages on Controller Area Network for Real-Time Control Applications,” Proc. Real-Time Technology and Applications Symp., pp. 240–249, May 1995.
[2] K.M. Zuberi and K.G. Shin, “Scheduling Messages on Controller Area Network for Real-Time CIM Applications,” IEEE Trans. Robotics and Automation, pp. 310–314, Apr. 1997.
[3] R.S. Raji, “Smart Networks for Control,” IEEE Spectrum, vol. 31, no. 6, pp. 49–55, June 1994.
[4] Manufacturing Automation Protocol (MAP) 3. 0 Implementation Release, MAP/TOP Users Group, 1987.
[5] H. Kopetz and G. Grünsteidl, "TTP: A Time-Triggered Protocol for Fault-Tolerant Real-Time Systems," Computer, vol. 24, no. 1, Jan. 1994, pp. 14-23.
[6] Road Vehicles—Interchange of Digital Information—Controller Area Network (CAN) for High-Speed Communication, ISO 11898, 1993.
[7] H. Zeltwanger, “An Inside Look at the Fundamentals of CAN,” Control Eng., vol. 42, no. 1, pp. 81-87, Jan. 1995.
[8] K. Tindell, H. Hansson, and A. Wellings, “Analysing Real-Time Communications: Controller Area Network (CAN),” Proc. IEEE Real-Time Systems Symp., Dec. 1994.
[9] K. Tindell, A. Burns, and A.J. Wellings, “Calculating Controller Area Network (CAN) Message Response Times,” Control Eng. Practice, vol. 3, no. 8, pp. 1,163-1,169, 1995.
[10] K.G. Shin, “Real-Time Communications in a Computer-Controlled Workcell,” IEEE Trans. Robotics and Automation, vol. 7, no. 1, pp. 105-113, Feb. 1991.
[11] K.M. Zuberi and K.G. Shin, “EMERALDS: A Microkernel for Embedded Real-Time Systems,” Proc. Real-Time Technology and Applications Symp., pp. 241–249, June 1996.
[12] J.Y.-T. Leung and J. Whitehead, “On the Complexity of Fixed-Priority Scheduling of Periodic, Real-Time Tasks,” Performance Evaluation, vol. 2, no. 4, pp. 237-250, Dec. 1982.
[13] K. Jeffay, D.F. Stanat, and C.U. Martel, “On Non-Preemptive Scheduling of Periodic and Sporadic Tasks,” Proc. Real-Time Systems Symp., pp. 129-139, 1991.
[14] W. Zhao and K. Ramamritham,“Simple and integrated heuristic algorithms for scheduling tasks with time and resource constraints,”J. Syst. and Software, vol. 7, pp. 195–207, 1987.
[15] D. Ferrari and D.C. Verma,“A scheme for real-time channel establishment in wide-area networks, IEEE J. Selected Areas in Comm., vol. 8, no. 3, pp. 368-379, Apr. 1990.
[16] D.D. Kandlur, K.G. Shin, and D. Ferrari, “Real-Time Communication in Multi-Hop Networks,” IEEE Trans. Parallel and Distributed Systems, vol. 5, no. 10, pp. 1,044-1,056, Oct. 1994.
[17] Q. Zheng and K.G. Shin,“On the ability of establishing real-time channelsin point-to-point packet-switched networks,” IEEE Trans. Comm. pp. 1,096-1,105, Feb./Mar./Apr. 1994.
[18] M. Gergeleit and H. Streich, “Implementing a Distributed High-Resolution Real-Time Clock Using the CAN-Bus,” Proc. First Int'l CAN Conf., Sept. 1994.
[19] MC68336/376 User's Manual, Motorola Inc., 1996.
[20] 82527 Serial Communications Controller Architectural Overview, Intel Corp., 1993.
[21] A. Indiresan, A. Mehra, and K.G. Shin, “The END: An Emulated Network Device for Evaluating Adapter Design,” Proc. Third Int'l Workshop Performability Modeling of Computer and Communication Systems, 1996.
[22] C.D. Locke, D.R. Vogel, and T.J. Mesler, “Building a Predictable Avionics Platform in Ada: A Case Study,” Proc. IEEE 12th Real-Time Systems Symp., Dec. 1991.
[23] C.D. Locke, D. Vogel, L. Lucas, and J. Goodenough, “Generic Avionics Software Specification,” Technical Report CMU/SEI-90-TR-8, Carnegie Mellon Univ., 1990.

Index Terms:
Distributed real-time systems, Controller Area Network (CAN), message scheduling, network scheduling implementation, priority inversion.
Khawar M. Zuberi, Kang G. Shin, "Design and Implementation of Efficient Message Scheduling for Controller Area Network," IEEE Transactions on Computers, vol. 49, no. 2, pp. 182-188, Feb. 2000, doi:10.1109/12.833115
Usage of this product signifies your acceptance of the Terms of Use.