world leader in high performance signal processing
Trace: » course

Note to the Instructor of a Class or Course

As a training course the book provides sufficient material for approximately a full semester course (36 hours of instruction with 10 hours of labs) on either uClinux Operating Systems, Hardware Design for Embedded Systems, or Digital Signal Processing in Embedded Systems. Since it is unlikely that one class will cover all the materials, it is up to the instructor to determine the appropriate sections.

The time required depends on the participant's familiarity with Linux and the C programming Language. It is suggested that as many of the Activities/Exercises be completed as possible. It would be best if each student had an individual setup consisting of a Linux workstation and the STAMP target hardware. That target is pre-assembled and includes:

  • a board resident with uClinux
  • a RJ-45 female Ethernet connector (on the development target)
    • an appropriate RJ-45 crossover cable or standard ethernet cables with hub or repeater
  • a RS232 female DB9 serial connector (on the development target)
    • an appropriate serial cable to connect to the host
  • a world wide power adapter which plugs into a power connector on the development target
  • various leds and switches providing basic I/O for the system
  • various daughter cards for real world connectivity
  • a development host running the Linux kernel, or Windows.

The Ethernet and serial cables chosen are based on the assumption that the development workstation has the somewhat typical connectors i.e.

  • an available serial port with a DB9 male connector (or USB with USB to Serial Converter)
  • an Ethernet port with an RJ-45 female connector

It is also assumed that the Development workstation has an Internet connection with access to anonymous CVS, svn or git to pull down the latest sources of the project for the platform. Further, to fully explore the capabilities, an extra/spare partition is needed. As in any training course, time is of the essence and problems with the initial hardware/software configuration can be disastrous when their resolution is time consuming. Perhaps the most common pitfalls here would be

  • the development workstation is not local network ready and cannot connect easily to the target [Note: it should have NFS server support configured]
  • the development workstation has connectors which are not compatible with the cables provided
  • there are problems with the version of minicom or Kermit on the development workstation

Hence the instructor not only needs familiarity with the course material, but also needs to be confident that the training site is ready to go.

The typical academic course might also add a project exploiting other capabilities of the STAMP/uClinux combination. Ideas for such projects abound on the Internet and a very realistic approach could require the students to search forums for ideas and then make a formal proposal to the instructor. Alternatively, the instructor could take a lead role on project selection, particularly useful if there are hardware purchases involved (e.g. LCD panel with support hardware) and budget constraints to obey.

The chapters are intended to be covered in sequence with none skipped, except the first and only if the students are familiar with Linux. The activities/exercises are generally relatively easy, and can be supplemented by material intended as preparation for an added project.

Note to the Students

You are aware of all the hype that surrounds Linux. The interesting thing about this phenomenon is that most of the hype is generated by enthusiastic users, rather than by the marketing departments of large corporations - although they have discovered the bandwagon. User enthusiasm arises because the system is powerful, usable, and because of its open source nature. The source is not only available, but individual users can get involved at whatever level is appropriate - even to the point of becoming kernel developers. In this course, we explore Linux in the embedded systems world. It is most useful that Linux can be tailored to fit such targets. There is rising opinion that we are entering the 'post PC' era of personal, small embedded devices and that embedded Linux will play a central role. You are perhaps fortunate to have an opportunity to get involved in the early days of this new era.

This course introduces you to embedded Linux on a particular platform, the STAMP system. Nevertheless, most of what you will learn can be generalized beyond the hardware specifics.

  • If you are already an embedded developer, then your interest is in seeing whether embedded Linux will provide you with something new and useful.
  • If you are a Linux user, new to embedded systems, your interest may lie in seeing how an embedded system can capitalize on a pared down Linux.
  • If you are new to both embedded systems and Linux, you hope to accrue some initial expertise in each area.

This course is intended to help all these constituencies move toward their goals. The course is introductory in nature and is a starting point rather than a final destination..

We encourage you to visit the Blackfin Linux website and once you are there, register to post questions or discuss things on the forums. There you will see many useful details discussed and be able to ask questions and contribute your own ideas.