McGill ECSE 421 (Embedded Systems)
to be updated throughout the semester 🙂
*UPDATE 1, Feb 8th 2011 :*
The class is all about implementing embedded systems in real-time. An embedded system is a computer system designed to perform one or a few dedicated functionsoften with real-time computing constraints. It is embedded as part of a complete device often including hardware and mechanical parts. Embedded systems control many devices in common use today. Like your vending machines, elevator, traffic light system, flight control towers–these are all embedded systems. Your input and output happens in real-time– either by feedback using a physical button/devices or by a signal sent by a controller/sensor. The challenge of designing an embedded system is of course, trying to anticipate real time scenarios, and finally devise a complete experience that performs reliably well without reducing the common men swearing to be a Luddite forever. Being predominantly interrupt controlled, this means that tasks performed by the system are triggered by different kinds of events. Another challenge is how to allocate priority access to sources that is shared among many functions . Which function has higher priority when TWO function wants to access the same resources at the same time? For example, if a train controller accidentally pressed both “DOOR LOCK” and “DOOR OPEN” button at once (a common human error), which one will be called? Having said that, other aspects that is prevalent in an ES includes safety and error recovery. Since input and output is happening live, it’s quite difficult to predict concretely what constitutes as an error. Instead, a ‘watchdog’ is set up to monitor the going ons, and to intervene if anything out of sequence is occuring.
Our project is a common system we use and see everyday but of great importance. We fancily called it the THE TRAIN MONITORING AND CONTROL SYSTEM.
Since we are marked for grades, the option to pick a familiar and perhaps straightforward project is highly welcomed. Nevertheless, it covers the basics of embedded system design and more. This document outline the Systems Requirements to model the train control. The documents states all sets of functions that the system is going to implement, the list of softwares planned to be used, the involved components and hardware specifications. This is the introductory document, an abstract of the project i might say. If you’re interested to know more, have a read here: SRS_FV
Cheers. Till the next update 🙂
Wednesday, March 16th 2011:
System Design Document Here: SDD . This document details:
-Comprehensive explanation of all hardwares in deployment, relation between all hardware chosen and how are they communicating between each other.
-Software wise– lists of all global flags and variables involved in the train Class. Tentative write up of the train Class here: functions_1-11
I would like to heavily emphasis that this is a collective work, and i dont claim any individual right to all of these. Credits to my team 🙂 If you need any explanation on any of these published work, feel free to contact me.