DSP, Microcontrol.lador, o DSC ? Noves tendències

Anuncio
DSP, Microcontrol.lador, o DSC ?
Noves tendències tecnològiques...
Jordi Mayné
[email protected]
Enginyer d’aplicacions
SILICA Avnet Iberia
Fabricantes de Procesadores
02
Tipos de Procesadores
§ MPU Micro Processor Unit: Unidad MicroProcesador, CPU que
conecta a la memoria y a los periféricos.
§ CPU Central Processing Unit: Unidad Central de Proceso
§ MCU MicroController Unit: Unidad MicroControladora, tiene la CPU
con la memoria, I/O y periféricos integrados en el chip.
§ Tambien llamado “computer on a chip,” “microcomputer,” o “embedded controller”.
§ DSP Digital Signal Processor: Procesador Digital de Señal
§ DSC Digital Signal Controller: Controlador Digital de Señal
03
Diferencia entre MPU y MCU
Periféricos
y
Clocks
MPU
Memoria
CPU
Microprocesador (MPU):
§ La CPU conecta a la memoria
externa y a los perifércios
Address
I/O
Data
MCU
Microcontroladores (MCU):
§ Tienen la CPU con la memoria, las
Memoria
Periféricos
y
Clocks
CPU
I/O y los periféricos integrados en el
chip.
I/O
04
Núcleo CISC
CISC
§ CISC (Complex Instruction Set Computer)
§ El conjunto de instrucciones se caracteriza por
Instrucciones Máquina
Conversión Microcódigo
Micro instrucciones
Ejecución de
Microinstrucciones
ser muy amplio y permitir operaciones
complejas entre operandos situados en la
memoria o en los registros internos, en
contraposición a la arquitectura RISC.
§ Este tipo de arquitectura dificulta el paralelismo
entre instrucciones. Actualmente, la mayoría
de núcleos CISC tienen un sistema que
convierte dichas instrucciones complejas en
varias instrucciones simples del tipo RISC,
llamadas microinstrucciones.
§ El hardware es siempre más rápido que el
software, por lo tanto uno debe hacer un
conjunto de instrucciones potente.
05
Núcleo RISC
RISC
§ RISC (Reduced Instruction Set Computer)
§
Instrucciones Máquina
Ejecución Instrucción
§
§
Microprocesadores
con
núcleo
RISC:
Freescale
(PowerPC, ARM), Microchip
(PIC), Analog Devices, Philips,
OKI, (ARM), ... son ejemplos
de algunos de ellos.
§
Casi nadie usa las complejas instrucciones del
lenguage ensamblador en una máquina CISC.
Actualmente
los
programadores
usan
compiladores de lenguaje de alto nivel que
raramente
usan
el
completo
juego
de
instrucciones complejas. Por lo tanto, con pocas
instrucciones, más simples y más rápidas son
más eficientes que las instrucciones CISC
grandes, complejas y más lentas.
Tienen instrucciones de tamaño fijo y
presentadas en un reducido número de formatos.
Sólo
las
instrucciones
de
carga
y
almacenamiento acceden a memoria a por datos.
Además estos procesadores suelen disponer de
muchos registros de propósito general.
El objetivo de diseñar máquinas con esta
arquitectura es posibilitar la segmentación y el
paralelismo en la ejecución de instrucciones y
reducir los accesos a memoria.
06
RISC versus CISC
§ RISC versus CISC
RISC
Instrucciones
Máquina
Ejecución
Instrucción
CISC
Instrucciones
Máquina
Conversión
Microcódigo
Micro
Instrucciones
Ejecución
Microinstrucción
§ RISC ejecuta las instrucciones más
rápidas que CISC, porque no tiene
que pasar a través de la capa de
conversión de microcódigo.
§ La
sobrecarga
del
lenguaje
ensamblador complejo del CISC es
eliminado con el RISC.
§ Un compilador para RISC hace más
trabajo que un compilador para
CISC; sin embargo, genera rutinas
usando instrucciones más simples
que en CISC.
07
¿ Porque usar un “pipeline” ?
• CPU CISC: lleva a cabo todas las operaciones secuencialmente, ejecutan las
instrucciones en serie, una cada vez; la ejecución de cada instrucción puede tomar
algunos ciclos.
• CPU RISC: usa un “pipeline” para tratar de solapar “partes independientes" de las
instrucciones, para que una instrucción se puede ejecutar en cada ciclo.
Contenido de una
Instrucción típica
IF
CISC
Instruction
Inst. Dec./
Fetch
Reg. Acc.
ID ALU
MA
Instrucción
WB
IF
ALU
ID ALU
Mem Access/ Write Back
Data Cycle
MA
Instrucción
WB
Register
IF
ID
ALU
CISC: longitud variable
RISC: 16 bits de longitud
MA
WB
Instrucción
Instrucción
RISC
Instrucción
Tiempo ahorrado
Instrucción
08
DSP versus Microcontrolador
§ DSP usa una arquitectura llamada Hardvard, que proporciona una memoria de datos
separada de la memoria de programa. Los dos buses trabajan simultáneamente.
§ Además incluyen Multiplicación por hardware, Multiplicación y Acumulación en un sólo
ciclo de reloj, eficiencia en cálculo, requieren menos memoria, lenguaje ensamblador
tipo algebraico, y pueden combinar muchas características de control avanzadas.
§ Microcontrolador usa una arquitectura llamada Von Neumann, que tiene el mismo
espacio para la memoria de datos y programa.
§ Las desventajas frente a los DSP incluyen la multiplicación en varios ciclos, solo
algunos microcontroladores tienen mutiplicador por hardware, necesitan muchas más
memoria y el lenguaje ensamblador está basado en nemotécnicos.
09
DSC - Digital Signal Controller
§ La nueva generación de DSP combinan el alto rendimiento del
Proceso de Señal junto con las eficientes capacidades del Control
de Proceso, por esto se denominan DSC.
RTC
Watchdog
LVI…
I/O
DSC
Ethernet
ADC
I2C, SCI, SPI
Control Proceso
de código de señal
CAN, USB
010
DSC versus DSP y MCU
§ Los DSC
§ Ofrecen los mismos periféricos que los microcontroladores (Ethernet, USB,
§
§
§
§
§
UART, SPI, I2C, ADC, LIN, CAN, …)
Control de consumo
Encapsulados pequeños
Bajo coste
Herramientas de desarrollo de bajo coste, OnChipDebug
Aunque estan limitados en 16 bits y coma fija
§ Por el contrario algunos Microcontroladores incorporan características de
DSP
§ Multiplicación y Acumulación en solo ciclo de reloj
011
Sistema típico de un DSP Real-Time
What is
Real-Time
Signal
Processing?
RF
Front
End
. . . 01101010
ADC
Power
Amp
01011010 . . .
DAC
Clock
Circuits
Power
Digital Radio
Real-Time
Signal
Processing
Engine
Compressed audio
or digital data
Music
Traffic
Weather
Stocks
Interface
Circuits
Control and
User
Interface
012
Clásico Proceso Digital de Señal
ADC
x
Digital sampling of
an analog signal:
Digital
Signal
Processing
Y
DAC
Many DSP algorithms can be
expressed with MAC:
count
A
Y =
t
Σ
ai
i = 1
* xi
for (i = 1; i < count; i++)
sum += a[i] * x[i];
013
En el DSP se Procesa en Tiempo Real
ADC
El DSP manipula lasSignal
Cond
señales digitalizadas
usando algoritmos
Compressed audio
matemáticos de
or digital data
Proceso de Señal
Signal
Cond
Power
DAC
. . . 01101010
Real Time
Signal Processing
Engine
01011010 . . .
Clock
Circuits
Interface
Circuits
User Interface
014
Características de un DSP
Data Read A/D Bus (C)
§ Fast Instruction Cycle Time
§ Real-time processing
§ Dedicated Hardware Multiplier
§ Single cycle multiplication (rather than
Data Read A/D Bus (D)
Program A/D Bus (P)
consecutive additions)
PC
XPC
§ Multiple Bus Architecture
§ Large number of simultaneous inputs
AR0-7
and outputs (avoids bottleneck in
processing)
MAC
Addr
Gen
DP @x2
A
B
§ Allows parallel fetching
of an instruction and data
ALU
Decode
§ Extensive Pipelining
§ Executes parts of several instructions
Data Write A/D Bus (E)
in a single cycle
§ Special Instructions
§ Combines several operations into a
single cycle
P
F
P
D
F
P
A
D
F
P
R
A
D
F
P
X
R
A
D
F
P
X
R
A
D
F
TMS320C5416 Architecture
X
R
A
D
X
R
A
X
R
X
015
Soluciones DSC de los Fabricantes
Solución DSC de Freescale
DSC – Freescale – Familia 56800/E
Controlador Híbrido
Microcontrolador
Tradicional
• Diseño para código de control
• Tamaño de código compacto
• Fácil de Programar
• Proceso de señal ineficaz
Combinando la funcionalidad
del Proceso de señal y del Controlador
DSP
Tradicional
• Diseñado para procesado DSP
• Diseñado para operaciones Matriz
• Programación compleja
• Menos apropiado para el Control
•
•
•
•
•
Instrucciones Optimizadas para código de control, DSP, operaciones Matriz
Tamaño de código Compacto en Ensamblador y “C” Compilado
Fácil de Programar
Rango de temperatura industrial (-40ºC a 105ºC) y de automoción (-40ºC a 125ºC)
MIPS adicionales y espacio de direccionamiento extendido
018
Otras Ventajas de la Solución Freescale
Alta funcionalidad en los PWM
Hasta 96 MHz
Cada par PWM puede trabajar de forma independiente o complementaria
Multiple entradas de fallos programables
Inserción de “tiempo muerto” (dead time) con control de retardo de subida y de bajada independientemente
Modos de Centro y flancos alineados
Cada par de PWM pueden generar diferentes frecuencias
Control del PWM Ciclo a Cliclo
Control de desplazamiento de fase programable para la forma de trabajo “lag” o “lead”
Alta precisión en los ADC
12-bits de precisión
Enlazados directamente con los PWM
2 conversiones simultáneas a 1.125 microsegundos
Alta funcionalidad de los pins de propósito general
Cada pin, excepto alimentación, pueden ser GPIO, y trabajar a 5V de salida en modo open-drain y a 5V de entrada
Periféricos dedicados a Comunicaciones
SPI, SCI, I2C, CAN, LIN
Otros componentes integrados en el sistema
Alimentación única a 3.3V, Supervisor de alimentación para monitorizar problemas (brownout), Watchdog, modos
de bajo consumo, 32 MIPS.
Módulo Timer Multifunción
Hasta 10 modos de trabajo
019
Ejemplo de la familia DSP56F8xxx
La familia DSP56F8xxx se ha diseñado para aprovechar las ventajas características de los
microcontroladores y de los DSPs. Ofrecen la facilidad de programación de un microcontrolador,
la eficacia de un compilador C y la potencia de proceso de un DSP, haciéndolos óptimos para
aplicaciones de proceso de señal así como de control. Esto es particularmente útil para
aplicaciones de control de movimiento (control de motores), donde las entradas necesitan ser
procesadas en tiempo real y tomando acciones específicas basándose en los resultados.
Aplicaciones:
• Compresores,
• Altavoces Digitales
• Contestador Digital
• Aparatos de aire acondicionado
• Control de motores
• Equipos de Prueba para Telecom
• Sistemas de Reconocimiento de Voz
• Fuente de Alimentación Ininterrumpida
• Lectores de Tarjetas Magnéticas
• Cancelación de Ruido
• Lectores de Etiquetas ID
Flash
RAM
JTAG/EOnCE
JTAG/
EOnCE
Voltage
Regulators
Interrupt
Controller
Power
Supervisor
56800E
Core
32 MIPS
32 MHz
COP
System Clock Control
(PLL, SIM, Osc
Osc))
6 Output
PWM
4 1616 -Bit Timers
6-8 Input
12--bit ADC
12
SCI
SPI
I2C
§Encapsulado:
32 PDIP y LQFP
020
DSP56F8xxx
PROGRAM
CONTROLLER
PC
PC
LA
LA
LA2
LA2
HWS
HWS
FIRA
FIRA
FISR
FISR
AGU
INSTRUCTION
INSTRUCTION
DECODER
DECODER
M
M 01
01
NN33
INTERRUPT
INTERRUPT
UNIT
UNIT
SR
SR
OMR
OMR
LC
LC
LC2
LC2
LOOPING
LOOPING
UNIT
UNIT
AALLU
U11
AALLU
U 22
Program
Program
Memory
Memory
RR00
RR11
RR22
RR33
RR44
RR55
NN
SSPP
XAB1
XAB2
PAB
PDB
CDBW
CDBR
XDB2
BIT
MANIPULATION
UNIT
EOnCE/JTAG
TAP
A
B
C
D
Y0
Y1
X0
MAC
and ALU
Data
Data
Memory
Memory
IP-Bus
IP-Bus
Interface
Interface
DATA
ALU
External
External
Bus
Bus
Interface
Interface
Multi-bit
Shifter
021
DSP56F8xxx – Librerías de Software
> 150 optimized library elements!
Memory Manager
• Dynamic allocation
Modem Libraries
• V.8bis, V.21, V.22bis,
V.42bis
Feature Phone Library
• CallerID type 1&2,
CallerID Parser,
Generic Echo Canceller
Security Libraries
• RSA, DES, 3DES,
DSP Library
• FIR, IIR, FFT, Auto
Correlation, Bit
Reversal
Telephony Libraries
• AEC, AGC, Caller ID,
• CAS, CPT, CTG, DTMF
• G165, G168, G711
• G723, G726, G729
•Digital Power Control
•UPS, SMPS, DC_DC
Motor Control
• BLDC, ACIM, SR motor
specific algorithms
• General purpose
algorithms
Math Libraries
• Matrix, Fractional, Vector
• Trigonometric
Tools Library
• Cycle Count, FIFO, FileIO,
Test
• Voice Recognition
022
Solución Analog Devices
DSC – Analog Devices – Familia BlackFin
§ El Procesador Blackfin® es la solución para aplicaciones multimedia portables y de
redes
§ Funcionalidad DSP de 16-bits de coma fija
§ Instrucciones de 32-bits RISC
§ Características Multimedia SIMD
§ Hasta 1200 MMACS, con arquitectura de dual MAC
§ Instrucciones de 16-bits y 32-bits para Control y DSP, con 16-bits de Datos (soporta 8- y 32§
§
bits)
Formato en coma fija
Control del consumo dinámico
§ Aplicaciones:
§
§
§
§
Interface Humano: Reconocimiento de Voz, De texto a voz, Audio
Conectividad con hilos: USB, TCP/IP, MOST Network, H.323/MEGACO
Conectividad sin hilos: Bluetooth, GSM, 3rd Generation
Imagen Digital: CODECs, MPEG, JPEG, H.263/H.264
024
DSC – Blackfin ADSP-BF53x
ADSP-BF536 Ofrece:
• 100KB L1
• 300MHz, 400MHz
(-40ºC a +85ºC)
System Control Blocks
Emulation
Control
Event
Controller
Watchdog
Timer
Memory
DMA
Processor Core
Up to 64KB Inst.
SRAM SRAM/Cache
Up to 64KB Data
SRAM SRAM/Cache
32KB
32KB
16KB
32KB
32KB
32KB
16KB
32KB
System Interface Unit
SPORT1, UART0 -1, SPI0, Timer0-7, PPI*
32 GPIO
PLL
RTC
ADSP-BF537 Ofrece:
• 132KB L1
• 400MHz, 500MHz
(-40ºC a +85ºC)
• 600MHz
(0ºC a +70ºC)
16-bit
External
Memory
Scratch
Pad
4KB
L1
10/100
Ethernet
MAC
/ 16 GPIO
SPORT0 / TWI / CAN*
MII
RMII
Peripheral
Blocks
Test
Control
025
Innovador Puerto I/O de Video (PPI)
u
u
u
u
Soporta conexión directa (sin
ningún componente) ITU-R 656
Video a 27MHz
CLOCK
SYNCS
Proporciona interface paralelo de
propósito general para ADC/DAC
hasta 65Msps
Puede ser alternativamente
configurado como 16 pins Flag I/O
de propósito general
Capacidad integral 2-D DMA
l
Significante Reducción en Software
para aplicaciones de Video.
Reloj Externo
hasta 65MHz
Appliances
Puerto
de Video
(PPI)
con
2-DMA
026
Controles de Voltaje y Frecuencia
500 MHz, 1.2V
750 MHz, 1.2V
Potencia (mW)
Solo cambia la frecuencia
Solo Frecuencia
200 MHz, 1.2V
Ahorro de energía
Voltaje y Frecuencia
500 MHz, 1.0V
200 MHz, 0.8V
Proceso de Video
Proceso de Audio
Varía el voltaje y la frecuencia
§ Frecuencia variable
§ Un PLL programable (1x hasta 63x) combinado con los divisores CCLK y SCLK
permite cambios de baja latencia
§ Voltaje variable
§ Regulador de voltaje interno para generar el voltaje del núcleo desde una alimentación
externa de entrada de 2.25 a 3.6V
§ Voltaje del núcleo programable desde 0.8V a 1.2V (incrementos de 50 mV)
§ Reducción del costo del sistema
027
Solución Texas Instruments
Familias de DSP y DSC de Texas
Most ControlLowest Power/
Optimized
MIPS
DSPs in the World DSPs in the World
TMS320C2000™
TMS320C5000™
HighestPerformance
DSPs in the World
TMS320C6000™
029
Familia de DSC C28x de Texas
High Performance CPU (C28x
Code security
128Kw Flash
+ 2Kw OTP
18Kw
RAM
l
4Kw
Boot
ROM
Event Mgr A
Event Mgr B
XINTF
Memory Bus
150 MIPs C28xTM 32-bit DSP
32x32-bit
Multiplier
RMW
Atomic
ALU
32-bit
Timers (3)
Real-Time
JTAG
Peripheral Bus
Interrupt Management
12-Bit ADC
Watchdog
GPIO
l
l
l
Core)
150MIPS performance
Single cycle 32 x32-bit MAC (or dual 16 x16 MAC)
Very Fast Interrupt Response
Single cycle read-modified-write
F24x/LF240x Source Code Compatible
Memory
Control Sub-System
Peripherals
Fast program execution out of both RAM and
Flash memory
l 110-120 MIPS with Flash Acceleration Technology
l 150 MIPS out of RAM for time-critical code
Control Ports
McBSP
CAN 2.0B
SCI-UART A
32-bit
Register
File
l
TM
SCI-UART B
Event Managers
Ultra-Fast 12-bit ADC
l 16.7 MSPS throughput
l Dual s/h enable simultaneous sampling
l Auto Sequencer, up to 16 conversions w/o CPU
Communications Ports
SPI
Multiple standard communication ports provide
simple interfaces to other components
030
Solución dsPIC de Microchip
Ventajas para el usuario
§ Compilador C eficiente
§ Hasta 30 MIPS
§ Amplio rango de tensión de trabajo (2.5V – 5.5V)
§ EEPROM de Datos integrada (word Erase/write)
§ Encapsulados desde 18 a 80 pins (SOIC y TQFP)
§ Herramientas de Desarrollo potentes y fáciles de usar
§ Altas características en Periféricos Analógicos y Digitales
§ Memoria Flash 12K a 144K bytes
§ RAM 512K a 8K bytes
§ Eeprom Datos 1K a 4K bytes
§ Timers 16 bits
hasta 5
§ Input Capture
hasta 8
§ Output Compare/PWM
hasta 8
§ PWM para control de motor 6 o 8
§ ADC 10 bits, 500Kmps hasta 16 canales
§ ADC 12 bits, 100Kmps hasta 16 canales
§ UART 1-2, SPI 1-2, I2C, CAN 1-2, QEI, interface CODEC
032
dsPIC de Microchip
033
dsPIC – Librerías de Software
034
Solución Renesas
Renesas = Hitachi + Mitsubishi
SH3-DSP (SH77xx)
Ultra-Low Power Multimedia processor solution
§
Bus State controller
6 ch.DMA controller
SH3-DSP/ SH7720
208 MIPS @ 160 MHz
4 x UARTs
Synchrone
Asynchrone
Additional
DSP Core
MMU
Power management
X/Y RAM
16KB
32-bit multiplier
Unified 4-way
Cache 32KB
Card Contr.
SSL
GPIO
JTAG
AFE
I/F
TPU
RTC
USB
Slave
ADC/DAC
TMU
USB
Host
I2C
LCD
controller
Very Low Power
SSL Acceleration for Secure
Terminal Applications
§
§
§
§
§
§
§
§
§
§
SH3-DSP Core
§ 160MHz, 208MIPS
§ 133MHz, 173MIPS
MMU
6 DMACs
32KB Cache (4 way)
X/Y DSP RAM (2x8KB)
LCD Cont. (16bit VGA)
USB (Host and Function)
4 x Serial I/O
Timer Pulse Unit
I2C
256pin CSP and QFP
036
Solución con PSoC de Cypress
PSoC de Cypress
Procesador con una Potente Arquitectura Harvard
con Multiplicación/Acumulación rápida
• Velocidad del Procesador configurable de 94KHz a 24MHz.
• Conjunto de Instrucciones fácil de aprender y usar
• Modos de direccionamiento flexible
• Manipulación de Bit de I/O y de memoria
• Multiplicación 8x8 bits, Acumulación en 32-bits
• Diezmador para conversiones S – ?
Programmable
System
on a
Chip
Bloques (PSoC)
Memoria
• Bloques analógicos y digitales configurables por el usuario
• Pueden ser usados individualmente o en combinación
• FLASH 100,000 ciclos de lectura/escritura
• Emulación de EEPROM en la Flash
12 Bloques Analógicos:
• ADC Sigma-Delta hasta 11 bits
• ADC SAR hasta 8 bits
• ADC Incremental hasta 13 bits
• DAC directo hasta 8 bits
• Opamp, PGA, Inversor, Instrumentación
• Sample and hold
• Filtros Programables
• Comparadores Diferenciales
• Sensor de Temperatura interno
8 Bloques Digitales:
•
•
•
•
•
•
Timers Multipropósito de 8, 16, 24 y 32 bits
Reloj en tiempo real (RTC)
Modulación por Ancho de Pulso (PWM) y PWM con tiempo muerto
Módulos de generación de CRC y generación de DTMF.
UARTs Full-duplex, IrDA
SPI e I2C configurable como master o esclavo.
Configuraciones de Pin Programable
• Pins de I/O Schmitt trigger TTL
• Salida configurable drive a 25 mA con
resistencias de pull-up o pull-down
internas, open drain o driver activo
• Interrupción por cambio de estado en
cada pin
Reloj de Precisión Programable
• Oscilador interno de 48/24MHz
• Oscilador con cristal externo a 32.768kHz
• Oscilador interno de baja velocidad para el
Watchdog y Slep Timers
038
Arquitectura PSoC
FLASH
Program
Memory
SoCblocs
PSoC Blocks
M8C
8-Bit
Microcontroller
Core
Analog
PSoC Blocks
Programmable
Interconnect
X2
32 KHz Crystal
Oscillator
Internal 32 KHz
Oscillator
Watch Dog
Timer
Sleep
Timer
Temperature
Sensor
Brown-out
Detection
Power-on-Reset
Control
Addr/Data
Interrupt
Controller
SRAM
Addr/Data
Digital
Internal Address/Data Bus
X1
Precision Oscillator
and
PLL
Internal Address/Data Bus
Voltage
Reference
PSoC Blocks
Decimator
MAC
Multiply / Accumulate
General Purpose
I/O
Internal I/O Bus
Pin by Pin Configurable
I/O Transceivers
Total I/O Pin Count
Varies by Device
039
Solución Xilinx
Microblaze de Xilinx
§
§
§
§
Arquitectura RISC Harvard con un Bus de 32 bits
Registros de 32bits de Propósito General
3 Formatos de Instrucciones de Operandos
Características:
§ Instruction and Data Caches
§ 32-bits Barrel Shifter
§ Divisor Hardware
§ Fast Simplex Link FIFO Channels
§ Aceleración Hardware
§ MicroKernel Xilinx (XMK)
§ Módulo de Depuración Hardware
§ Periféricos a medida
32 Bit RISC Soft Processor
§ Herramienta de desarrollo fácil de usar
§ Soporte de terceros con RTOS
www.xilinx.com/microblaze
041
Más de 200 núcleos Propiedad Intelectual
General Purpose
Connectivity
Parallel
Serial
PCI, PCI-X
SPI-3, SPI-4
HyperTransport
XGMII
RapidIO
Many more …
1 GE MAC+PHY
XAUI
PCI Express
Aurora
Many more …
CORE Generator
Building Blocks
Memory Generators
IOB Configurations
Arithmetic and Shifters
Registers
Buffers
Many More …
Processor
DSP & Math
Peripherals Infrastructure
Interrupt ControllerCoreConnect Bus
UARTs
Arbiter
ATM Utopia L2 Bridge
Timer
Memory controllers
GPIO
Soft processors
SPI
Software IP
10/100/1000
Many more …
EMAC
Advanced
Latest list available on IP CENTER
http://www.xilinx.com/ipcenter
Reed-Solomon
Turbo Codecs
Virterbi
Video
Wireless
Many More …
Math
Multipliers
MAC
Divider
Filters
CORDIC
Many more …
042
Ejemplo Microblaze
Fast Simplex Links (FSL)
MDM
PROCESSOR CORE
…
Debug Logic
Instruction
Cache
Program
Counter
I-OPB
OPB CoreConnect
Off-Chip Memory
0-4GB
Register
File
32 x 32bit
Watchdog
Timer
Divider
r1
r0
Add
//
ALU
Shift
Subtract
Logical
Multiply
Machine
Status Reg
Interrupt
Controller
TM
Barrel
Shifter
r31
Control Unit
Instruction
Buffer
Logical
Shift
General
Purpose I/O
Data Bus Controller
I-LMB
Instruction Bus Controller
Address
Instruction
side
Side
LMB
LMB
FSL
Data
Side
LMB
D-LMB
Data
Cache
D-OPB
UART
PERIPHERALS
Timer /
Counters
Off-Chip Memory
0-4GB
043
Estructuras ARM
Intel® PXA255 Application Processor
§
§
§
§
§
§
High Performance IntelXScale® Core (32 bit / 400MHz)
Enhanced audio/video decode via 40-bit MAC
Integrated LCD Control w/DMA -> fast color screen support
Multiple Com-Ports (USB, IrDA, I2C, I2S, SSP, AC97,UARTs)
MMC / SD Card Support
17x17 256-pin PBGA
§ Supported Operating System
§
§
§
§
Microsoft WinCE*
PALM*
Symbian*
Linux*
*Other names and brands may be claimed as the property of others
045
i.MX27 Application Processor
§
CPU
§
§
§
§
§
Complex
ARM926EJ-S 400 Mhz @1.6V, 266MHz @1.2V*
16 Kb L1 I- and D-caches
16 Channel DMA
Architecture compatible with i.MX21
ETM Real-Time Debug
§
Low-Power
§ Active Well-Bias, Dynamic Process-Temperature Compensation
§
Security
§ Sahara2 Crypto Accelerator (AES, 3DES)
§ Electronically-Blown-Fuse Box for custom HW IDs
§
§
§
§
§
Connectivity
§ Ethernet MAC
§ 4xUARTs, IrDA
§ 480 Mbps USB OTG + 2 Hosts
Expansion
§ MemStick Pro, PCMCIA/CF, MMC & SD/SDIO Card Interface
§ ATA-6 HDD Interface
MultiMedia
§ MPEG 4/ H.263/H.264 D1 @30fps HW Codec
§ w/ pre- & post- processing
§ High speed CMOS sensor I/F + I2C
External Memory Interface
§ 16/32-bit SDRAM @133 MHz
§ 16/32-bit DDR @266 MHz
§ 8/16-bit NAND Flash, PSRAM support
Technology:
i.MX27
Connectivity
Internal
I2C x 2
ARM926 CPU
Smart Speed
Switch (MAX)
i-cache
d-cache
MMU
Internal
Control
Bus
Control
Memory
Control
Audio Mux
2x I2S/SSI
JTAG/ICEM
CPU Complex
10/100 Ether.
ATA
System Control
3x CSPI
Security Control
6 x UART
Bootstrap
Clock Mgt.
Std System I/O
Timer x 6
PWM
WD Timer
Secure RTC
SCC
SAHARA2
IIM
RTIC
GPIO
1-Wire
RNGA
SRTC
DMA
IrDA
Memory
Interface
Multimedia
Accelerator
Human Interface
Expansion
DDR/SDRAM
3x MMC/SD
NAND Flash
Pre & Post
Processing
MemStick Pro
Vsync Flash
PCMCIA / CF
EIM
HS USB OTG
Hostx2
LCD Control
Smart LCD
8x8 Keypad
MPEG4/H.263
Low-Power 90nm
Inherited from MX21
H.264
Multimedia I/F
Camera I/F
New or enhanced from MX21
046
16/32-bit ARM7 LPC2000
H1 ‘06
LPC2106/01
128K/64K
ADC
H2 ’05
Q3 ’05
LPC2106
128K/64K
LPC2105
128K/32K
LPC2104/01
128K/32K
ADC
LPC2104
128K/16K
LPC2102
32K/8K
ADC,LV,RTC
Flash secure.
LPC2194
256K/16K
CAN (4)
LPC2129
256K/16K
CAN (2)
LPC2124
256K/16K
ADC
LPC2119
128K/16K
CAN (2)
LPC2114
128K/16K
ADC
LPC2138
512K/32K
ADC(2), DAC
LPC2136
256K/32K
ADC(2), DAC
LPC2134
128K/16K
ADC(2), DAC
LPC2132
64K/16K
ADC, DAC
LPC2131
32K/8K
ADC
LPC2148
512K/32K+8K
USB
ADC(2), DAC
LPC2146
256K/32K+8K
USB
ADC(2), DAC
LPC2144
128K/16K+8K
USB
ADC(2), DAC
LPC2142
64K/16K+8K
USB
ADC, DAC
LPC2141
32K/8K+8K
USB
ADC
Released (20)
LPC2214
LPC2294
256K/16K
ADC
256K/16K
CAN (4)
LPC2212
LPC2292
LPC23xx
LPC24xx
128K/16K
ADC
256K/16K
CAN (2)
tbd/tbd
Ethernet
tbd/tbd
Ethernet
LPC2220
LPC229x
LPC23xx
LPC24xx
0K/64K
ADC
0K/64K
CAN (2)
128K/tbd
Ethernet
128K/tbd
Ethernet
LPC2210
LPC2290
LPC23xx
LPC24xx
0K/16K
ADC
0K/16K
CAN (2)
0K/tbd
Ethernet
0K/tbd
Ethernet
48pins
64pins
64pins
64pins
144pins
144pins
many pins
many pins
UART(2), I2C
SPI, RTC,
ADC
UART(2), I2C
SPI(2), RTC
ADC, CAN
UART(2), I2C
SPI, SPI/SSP,
LV RTC
ADC(1-2), DAC
UART(2), I2C
SPI(2), USB,
LV RTC
ADC, DAC
UART(2), I2C
SPI(2), RTC
ADC
UART(2), I2C
SPI(2), RTC
ADC, CAN(2/4)
UART(2), I2C
SPI(2), LV RTC
ADC, SSI,
USB-OTG
10/100 Ethernet
UART(2), I2C
SPI(2), LV RTC
ADC, SSI, CAN
10/100 Ethernet
047
STR710 de ST
048
ADuC702x ARM7 Precision-analog Microcontrollers –
12bit DAC
GPIO
Bandgap
Reference
12bit DAC
12bit DAC
VREF
12bit DAC
RAM
MUX
12bit
ADC
Temperature
Monitor
ARM7
TDMI
MCU
45MIPS
COMPARATOR
PLA
JTAG
Emulation
DAC
Flash
Code &
Data
Memory
3-Phase
PWM
Watchdog
Timer
SPI /
I2C
Supply
Monitor
Timers /
Counters
Serial
Download
UART
ADuC7026
049
Highly Integrated OMAP5910 DSP
TMS320C55xTM DSP
OMAP5910
l
DSP Private
DSP
16
l
32
DSP Shared
TM
Traffic
Ctrl
75 MHz
Flash
32
l
l
l
System
DMA
32
EMIFF
32
IMIF
32
ARM
ARM Shared
l
l
l
TI Enhanced
ARM925 Core
150 MHz
l
l
ARM Private
l
l
LCD SRAM
Ctrl 1.5 Mb
l
l
l
Packaging: 12mm x 12mm or 19mm x 19mm
24 KB Cache
Data and Instruction MMUs
32-bit and 16-bit instruction
sets
Peripherals and on-chip
Resources
32
16
32
l
24 KB Cache
160 KB SRAM
32KB ROM
Hardware Accelerators for
video algorithms
ARM925 MPU
System Shared
EMIFS
16
SDRAM
TMS320C55x
Core
150 MHz
l
Price: US$28.45 @ 10K quantities
l
192 KB shared SRAM
Two 16-bit memory interfaces
for SDRAM and Flash
Nine-channel system DMA
controller
LCD Controller
USB 1.1. Host and Client
MMC/SD Card interface
Eight serial ports plus three
UARTs
Eight Timers
Real Time Clock
Keyboard interface
18 GPIO pins
050
Representadas por Silica Avnet Iberia
051
Descargar