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.
Related Semiconductor IP
- RISC-V CPU IP
- AES GCM IP Core
- High Speed Ethernet Quad 10G to 100G PCS
- High Speed Ethernet Gen-2 Quad 100G PCS IP
- High Speed Ethernet 4/2/1-Lane 100G PCS
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
- New Realities Demand a New Approach to System Verification and Validation
- How silicon and circuit optimizations help FPGAs offer lower size, power and cost in video bridging applications
- Sustainable Hardware Specialization
- PCIe IP With Enhanced Security For The Automotive Market
- Top 5 Reasons why CPU is the Best Processor for AI Inference