For smoother embedded systems development, design-out the hardware
(01/30/08, 12:56:00 AM EST) -- Embedded.com
All embedded systems eventually connect to hardware such as external sensors and actuators or internal functional blocks and peripherals for input/output, data storage and communication. Each bit of hardware in every design has its own idiosyncrasies a designer has to wrestle with.
Change any element of the hardware used in the design, even just adding or subtracting an input or output port, and the embedded software is impacted, sometimes severely. Make these changes late enough in the schedule and your product won't go out on time. Unless, that is, you completely design the hardware out of your system.
Designing-out the hardware means separating all control and algorithmic software from the hardware-interfacing software. By logically constructing wrappers and interfaces around all hardware you can replace, at any time, the particular hardware in use with a logical alternative without impacting the control and algorithmic software.
Abstracting hardware with understandable, logical interfaces (functions, macros, symbols) makes a design more portable and enables developers to concentrate on solving the real application problems, even before the hardware design is set. It sounds so easy and straightforward, and you may even think this is what you or your team already does.
But take a hard look at your current project (or favorite past one) and consider what would happen if you changed the microcontroller. If switching to a different microcontroller, especially from a different vendor, would be a major disruption, you have designed-in the hardware.
To successfully design-out the hardware you must design with a new mindset. Rather than waiting to begin developing the embedded software until the hardware is completely designed, and waiting to finalize the hardware selections until all requirements are fully specified, instead separate the "what" from the "how" in your design and you can start making serious headway on your project while marketing is still prancing out straw-dogs in front of key customers. After all, when is the hardware ever truly done and not subject to change?
Beginning the design process using this approach yields greater overall flexibility, both because the hardware CAN be swapped at almost any time and because the fear of change disappears. Additionally, debugging becomes easier since hardware-specific features are localized in the wrappers and interfaces, which also increases the number of opportunities to leverage IP from project to project.
To read the full article, click here
Related Semiconductor IP
- Root of Trust (RoT)
- Fixed Point Doppler Channel IP core
- Multi-protocol wireless plaform integrating Bluetooth Dual Mode, IEEE 802.15.4 (for Thread, Zigbee and Matter)
- Polyphase Video Scaler
- Compact, low-power, 8bit ADC on GF 22nm FDX
Related White Papers
- Co-Designed Cache Coherency Architecture for Embedded Multicore Systems
- Wireless connectivity protocols for embedded systems
- Designing low-energy embedded systems from silicon to software
- Four soft-core processors for embedded systems
Latest White Papers
- Reimagining AI Infrastructure: The Power of Converged Back-end Networks
- 40G UCIe IP Advantages for AI Applications
- Recent progress in spin-orbit torque magnetic random-access memory
- What is JESD204C? A quick glance at the standard
- Open-Source Design of Heterogeneous SoCs for AI Acceleration: the PULP Platform Experience