Hardware (and software) implications of Endianness in SoC design
Sandeep Yaddula, Texas Instruments
Embedded.com (March 17, 2013)
Embedded software programmers are familiar with the endianness characteristic of a computing processor. They are generally aware how, depending on endianness, different data types are stored in memory and the consequences of accessing individual byte locations of a multi-byte data element in memory.
In this article, we will review the concept of endianness from a software standpoint and will then discuss the implications of endianness for designers of hardware IP blocks and developers of device drivers when they work with a complex system such as today’s SOC.
Today’s SOCs integrate many hardware IP blocks and designers need to be aware of the order of bytes on the byte lanes of connecting buses when transferring data. In a system with several discrete hardware components such as a host processor and external devices connected to it via, say, a PCI bus, the hardware components may support different endianness modes and device driver developers need to make the data transfers among these hardware components endianness-proof.
E-mail This Article | Printer-Friendly Page |
|
Related Articles
- The hardware (and software) implications of endianness
- Bridging software and hardware to accelerate SoC validation
- Virtual Prototyping Environment for Multi-core SoC Hardware and Software Development
- How to use UML in your SoC hardware/software design: Part 4
- How to use UML in your SoC hardware/software design: Part 3
New Articles
- Quantum Readiness Considerations for Suppliers and Manufacturers
- A Rad Hard ASIC Design Approach: Triple Modular Redundancy (TMR)
- Early Interactive Short Isolation for Faster SoC Verification
- The Ideal Crypto Coprocessor with Root of Trust to Support Customer Complete Full Chip Evaluation: PUFcc gained SESIP and PSA Certified™ Level 3 RoT Component Certification
- Advanced Packaging and Chiplets Can Be for Everyone
Most Popular
- System Verilog Assertions Simplified
- System Verilog Macro: A Powerful Feature for Design Verification Projects
- UPF Constraint coding for SoC - A Case Study
- Dynamic Memory Allocation and Fragmentation in C and C++
- Enhancing VLSI Design Efficiency: Tackling Congestion and Shorts with Practical Approaches and PnR Tool (ICC2)