Embedded System and Robotics

An embedded system is a computer system that has a special-purpose in which the computer is designed and packaged completely in the device it controls. In order to distinguish embedded system from general-purpose computer, such as personal computer, an embedded system performs pre-defined tasks, usually in very specific constraints. Since the system is dedicated to a specific task, design engineers can focus on optimization to reducing the size and cost of product. Embedded systems are often mass-produced, so the cost savings may be multiplied by millions of items.

Some examples of embedded systems include ATMs, cell phones, printers, thermostats, calculators, and videogame consoles. Handheld computers or PDAs are also considered embedded devices because of the nature of their hardware design, even though they are more expandable in software terms. This line of definition continues to blur as devices expand.

The field of embedded system research is rich with potential because it combines two factors. First, the system designer usually has control over both the hardware design and the software design, unlike general-purpose computing. Second, embedded systems are built upon a wide range of disciplines, including computer architecture (processor architecture and microarchitecture, memory system design), compiler, scheduler/operating system, and real-time systems. Combining these two factors means that barriers between these fields can be broken down, enabling synergy between multiple fields and resulting in optimizations which are greater than the sum of their parts.

One challenge with embedded systems is delivering predictably good performance. Many embedded systems (e.g. anti-lock brakes in a car) have real-time requirements; if computations are not completed before a deadline, the system will fail, possibly injuring the user. Unfortunately, many of the performance enhancement features which make personal computers so fast also make it difficult to predict their performance accurately. Such features include pipelined and out-of-order instruction execution in the processor, and caches in the memory system. Hence the challenge for real-time system researchers is to develop approaches to design fast systems with easily predicted performance, or to more accurately measure existing complex but fast systems. 

The work of CE department on Embedded Systems covers both the system software and hardware platform issues. Our research approach while studying these complex problems is to understand, simplify, build and test. We keep things as simple and minimalist as much as possible, without sacrificing generality. We build actual systems, both physical and simulated, to verify and measure the results. We test our systems ourselves and make them freely available to the research community, both for verification and for teaching purposes.

Several research topics that have been investigated in CE department are listed below:

  • Embedded hardware platforms that use modern processors such as ARM, PIC for education and applying in the market.
  • Biomedical devices for health care or disease diagnosis and treatment.
  • RFID system using in industry.
  • Develop fountain system
  • Wireless sensor network
  • Motor and robot control
  • Smart home