Beruflich Dokumente
Kultur Dokumente
Embedded Processors
Microcontrollers
Memory CPU
ROM
RAM
I/O Subsystems: Timers, Counters, Analog Interfaces, I/O interfaces A single chip
Architecture
Embedded processors can be categorized into two "groups based on 1. H/W and 2. Instruction set based architecture. Architecture's instruction set are commonly referred to as the Instruction Set Architecture or ISA. ISA: operations code (opcode) are used to create programs for that architecture, the operands (data) that are accepted and processed by an architecture, storage, addressing modes are used to gain access to and process operands, and the handling of interrupts.
11/5/2011
Operations code
Operations codes are unique for each instructions that execute certain commands. Different processors can execute the exact same operations using a different types of instructions. An ISA typically defines the types and formats of operations.
Types of Operations
Operations are the functions that can be performed on the data: Computations (math operations), Movement (moving data from one memory location/register to another), Branches (conditional/unconditional moves to another area of code to process), Input/output operations (data transmitted between I/O components and master processor), Context switching operations (where location register information is temporarily stored when switching to some routine ).
Operation Formats
The format of an operation is the actual number and combination of bits (l's and 0's) that represent the operation, and is commonly referred to as the operation code or opcode. MPC823 opcodes, for instance, are structured the same and are all 6 bits long (063 decimal) An architecture can have several instruction set formats
Logical Shift Right Logical Shift Left Rotate Right Rotate Left
Compare Instructions.. Move Stack Instructions... PUSH Branch Stack POP Instructions ... Load Store
Load/Store
Operands
Operands are the data that operations manipulate. An ISA defines the types and formats of operands for a particular architecture. the ISA defines simple operand types of bytes (8 bits), halfwords (16 bits), and words (32 bits). More complex data types such as integers, characters, or floating point are based on the simple types
11/5/2011
Addressing Modes
Addressing modes define how the processor can access operand storage. The usage of registers is partly determined by the ISA's Memory Addressing Modes. The two most common types of addressing mode models are the: Load-Store Architecture, which only allows operations to process data in registers, not anywhere else in memory. For example, the PowerPC architecture has only one addressing mode for load and store instructions: register plus displacement (supporting register indirect with immediate index, register indirect with index, etc.). Register-Memory Architecture, which allows operations to be processed both within registers and other types of memory. Intel's i960 Jx processor is an example of an addressing mode architecture that is based upon the registermemory model (supporting absolute, register indirect, etc.).
11/5/2011
Controller Model
The Controller ISA is implemented in processors that are not required to perform complex data manipulation, such as video and audio processors that are used as slave processors on a TV board
Data-path Model
The Datapath ISA is implemented in processors whose purpose is to repeatedly perform fixed computations on different sets of data, a common example being digital signal processors (DSPs)
Microcontroller Architectures
Address Bus CPU Data Bus
2n Memory 0
Program + Data
Program
Harvard Architecture
11/5/2011
The VLIW ISA defines an architecture in which a very long instruction word is made up of multiple operations. These operations are then broken down and processed in parallel by multiple execution units within the processor
11/5/2011
DSP ARCHITECTURES
DSP architecture is similar to Microprocessor but optimised with instruction set to perform signal processing operations. DSP architecture is modified Harvard architecture having separate memory for code and data but multiple address and data buses to accesses data at faster rate. This also has on chip ROM and RAM and has peripherals like ADC,DAC, DMA, Timers , communication interface similar to controllers It has H/w multipliers and adders to carry out multiply and accumulate operation. It has pipelining architecture for faster execution It has registers capable of holding floating point data. ability to complete several accesses to memory in a single instruction cycle
Standard DSPs
+ Standardized hardware structure + Emphasis on short design time + Flexible + Easy to modify/correct errors + Low cost due to the wide applicability of the hardware initial cost Low performance/throughput High power consumption The flexibility is not needed in many applications/overhead Not always costeffective
Application-Specific DSPs
+ Some IP protection + Some CAD tools available Inflexible Very difficult + Lower unit cost, but higher
11/5/2011
Continued
10. S/W tools availability 11. Testing and debugging tools availability
continued
6. Multiprocessor support 7. Power consumption and management: power down mode, sleep mode and idle mode etc 8. Cost