Embedded computer systems must be fast and efficient. A European consortium has created a new modelling framework that lets designers strike the best balance between static, reconfigurable and analogue hardware and the software that runs on it.
A typical desktop PC contains an all-purpose processor and many different software programs that allow it to do a huge range of tasks. It gets things done, not always as efficiently as possible, but well enough for most purposes.
Embedded systems are different. These specialised computers can be found everywhere from aircraft to cars to washing machines. They are built to do one job extremely well, and usually that means that a lot of processing work which might be done in software on a normal computer is done by a purpose-made – and efficient – hardware chip.
The trick is to get the right balance between software and hardware. “Software is flexible, but it requires fast and expensive processors and can be too slow for very computation-intensive tasks,” says Frank Oppenheimer, of the OFFIS research centre in Oldenburg. “Hardware in embedded systems is efficient but usually static – that is, a piece of hardware can be used in exactly one specific way.”
In recent years industrial designers have become interested in dynamically reconfigurable hardware. It comes in programmable modules which can rewire themselves to do different tasks, so combining the processing muscle of hardware with the flexibility of software.
Four domains, one view
It sounds an ideal solution, but designers report that while they look good on paper these reconfigurable hardware modules are not easy to use in practice. “They are a nightmare when you try to use them in real designs,” Oppenheimer notes. “Most of the time, you have to fight with the technology rather than concentrate on the application you want to implement."
On top of that, reconfigurable hardware must work smoothly with the static hardware, analogue hardware and software that make up a typical embedded system. “Each of these four ‘domains’ comes with its own design tools but these tools are not integrated,” Oppenheimer explains. "You can simulate the hardware part, you can simulate the analogue part and you can simulate the software part of your final system, but if you want to have an integrated view, that is very difficult."
The EU-funded ANDRES project set out to find ways to help designers of embedded systems strike the best balance between the four domains – essential if the design is to be efficient and cost-effective – as well as make reconfigurable hardware easier to use.
The answer is a design process that allows the designer to work up an idea from an initial concept to a physical system. It includes a modelling language and FOSSY, a design tool to help with reconfigurable hardware.
“At the core of this ANDRES framework is a modelling language plus component libraries that enable the designer to describe these integrated systems containing hardware, software and analogue components,” says Oppenheimer, the project coordinator. “That means you can focus on the application, not the technologies.”
Within the framework the designer can simulate the proposed system to see how it works and try out modifications before specifying how it will be implemented. The language is an extension of SystemC™, an IEEE standard modelling language already used in industry.
The extensions mean that the ANDRES framework can be used with existing simulators for SystemC™. The complete package will be made available with an open-source licence, to encourage the design community to adopt and further improve it.
First applications are likely to be in the telecoms industry where high-performance embedded systems are used as routers and switches in backbone data networks. “They are very, very computation-intensive,” says Oppenheimer. “They have huge data throughput requirements – up to hundreds of gigabits per second per line.”
Reconfigurable hardware will let the routers and switches adapt to multiple standards at moderate costs in hardware.
Spin-off design company
The motor industry is also interested. “In a car with a driver assistance system, using cameras and radar, there is a lot of data coming in and a lot of processing is required. Today’s processors are simply too weak for that. This is where the ANDRES approach comes into play, where you have a real heterogeneous application.”
Another outcome will be a spin-off company, as yet unnamed, to market design services using the project’s FOSSY synthesis tool for reconfigurable hardware. Currently seeking start-up support, the company is expected to be launched in 2010.
Oppenheimer points out that while routine electronic design can now be done anywhere in the world, the really challenging tasks still require design skills and engineering know-how found largely in Europe, the USA or Japan. In the long run, ANDRES should help European designers stay on top of the market.
ANDRES is the successor to two earlier projects devoted to embedded systems, ODETTE and ICODES – all three were funded by the Fifth and Sixth Framework Programmes for research.
Media note: This feature can be republished without charge provided ICT Results is acknowledged as the source at the top or the bottom of the story. You must request permission before you use any of the photographs on the site. If you do republish, we would be grateful if you could link back to the ICT Results site (http://cordis.europa.eu/ictresults). Let us know if you republish so as to help us provide you with a better service. If you want further contact information on any of the projects cited in this story please contact us.