EELive!, formerly known as DESIGN West, is an annual week-long engineering industry event which includes the embedded systems conference, training sessions, boot camps, postmortems, and a large expo featuring exhibits from vendors across the industry. See a list of the 2014 Exhibitors.
The vendor expo doesn’t start until tomorrow, the first day of the conference consisted of a 4 hour morning training session and another 4 hour session after lunch.
In the morning I chose to attend a hands-on session covering the fundamentals of real-time kernels. This session was presented by Matt Gordon, Sr. Applications Engineer at Micrium. I found this session to be highly informative.
Many embedded developers instinctively develop code using a background/foreground approach. In this classic approach, you have an infinite loop running the different parts of your application in a sequential order. As a simple example, you might have a data collection application in which it reads collected data, processes the data, and updates a display. These routines happen in a background loop that repeats ad infinitum. In addition to this, you have a foreground process triggered by ISRs which collect your data.
This foreground/background approach is sufficient, and preferred for some simple designs. For more complex projects however, advanced task scheduling features quickly become necessary for several reasons. Some of these reasons include:
- Hardware platform portability
- More efficient utilization of CPU resources
- Task Scheduling
- Task prioritization
- Time critical operations
- A codebase that’s easier to maintain and expand
Matt’s presentation was a fantastic introduction to the subject of real time designs. He covered the topics of Context Switches, Semaphores, Message Queues, and Mutual Exclusion principles. These concepts are all of the utmost importance in real time systems and far too complex to go into here. This four hour session was a condensed version of a typical two-day session.
As an added bonus, I received a Renesas RX63N RDK development board, as well as a 4 GB USB Flash drive loaded with Micrium’s uC/OS-III and uC/TCP-IP books.
With three more days left to go, which still includes the vendor expo and 12 more training sessions, tutorials, and keynotes, I think EELive! 2014 is really going to be a phenomenal experience.