General-Purpose Embedded Cores



The most successful programmable component on silicon is the microprocessor. Fueled by a well-balanced mix of efficient implementations, flexibility, and tool support, microprocessors have grown into a key component for electronic design. This chapter reviews the major features of microprocessor architectures, and in particular of RISC (Reduced Instruction Set Computer) processors. The topic of microprocessors is a very broad one; entire books are devoted to its discussion. The objectives of this chapter are more modest. Our objective is to get insight into the relation between a C program and the execution of that C program on a microprocessor. This will help us to understand the cost of the C program in terms of memory footprint and execution time. Later chapters build on this insight to discuss the detailed interaction of C programs with custom-hardware modules. The chapter covers four different aspects of C program execution on RISC processors. First, we will discuss the major architecture elements of a RISC processor and their role in C program execution. Second, we will discuss the path from C programs to assembly programs to machine instructions. Third, we will discuss the runtime organization of a C program at the level of the machine. And finally, we will discuss techniques to evaluate the quality of generated assembly code, and thus evaluate the quality of the C compiler. Much more can be said on microprocessors besides these points; the reader can find additional suggestions in the Further Reading section at the end of this chapter.


Clock Cycle Memory Hierarchy Program Counter Assembly Code Object Code 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. Aeroflex G (2009) Leon-3/grlib intellectual property cores. Tech. rep.,
  2. Committee T (1995) Tool interface standard executable and linkable format (elf) specification, version 1.2. Tech. rep.,
  3. Hennessy JL, Patterson DA (2006) Computer Architecture: A Quantitative Approach, 4th Edition. Morgan KaufmannGoogle Scholar
  4. Qin W, Malik S (2003) Flexible and formal modeling of microprocessors with application to retargetable simulation. In: DATE ’03: Proceedings of the conference on Design, Automation and Test in Europe, p 10556Google Scholar
  5. Xilinx I (2009) Picoblaze for extended spartan-3a family, virtex-4, virtex-ii, and virtex-ii pro fpgas. Tech. rep.,
  6. Yaghmour K, Masters J, Ben-Yossef G, Gerum P (2008) Building Embedded Linux Systems, 2nd Edition. O’Reilly Media, Inc.Google Scholar

Copyright information

© Springer Science+Business Media, LLC 2010

Authors and Affiliations

  1. 1.Bradley Dept. Electrical & Computer EngineeringVirginia TechBlacksburgUSA

Personalised recommendations