Documente Academic
Documente Profesional
Documente Cultură
Codi: 102793
20-abr
24-abr
TEMA 3
D. Rexachs
Exposiciones Anlisis
D. Rexachs
11
12
27-abr
04-may
01-may
08-may
TEMA 3
TEMA 3
D. Rexachs
D. Rexachs
Exposiciones Anlisis
Exposiciones Anlisis
D. Rexachs
D. Rexachs
Uso
Procesado de control
Propsito
general
Microp
rocessa
dores
Microcontrolado
res
ASIC
FPGA
DSP
- Tiempo de
desarrollo
Procesado de seal
Propsito
especfico
+ Prestaciones
+ Confiabilidad
+ Flexibilidad
- Espacio y
consumo
Procesador: Trmino
genrico que no distingue
entre microprocesador,
microcontrolador y DSP.
Microprocesador (P): Un
chip de silicio que contiene una
CPU de propsito general.
Microcontrolador (C)
Procesador de Seal
Digital (DSP)
Aceleradores (GGPU)
Procesadores de red o network
processors (NPU), Cul
utilizar?
ASIC, FPGA,
FPGA
GGPU
Proce
sador
DSP
ASIC
network
processor
NPU
10
Microcontroladores
11
Incrementa la cantidad
Procesadores de altas
prestaciones para
sistemas empotrados
(High Performance
Embedded Computing)
Aumenta el coste
Microprocesador
Microcomputador
12
Mquina
Computacin
Adaptable
Vista externa de un
microprocesador
Vista externa de un
microcontrolador
14
Rendimiento
Arquitecturas
especficas
para sistemas
de alto
rendimiento
Procesadores
empotrados
DSP
Microprocesadores
Importante:
el rendimiento &
el software
Microcontrola
dores
Importante: el coste
Coste
15
Variables controladas
Entradas
Sistema
Realimentacin
Contexto
salidas
https://www.youtube.com/watch?v=PpMGbhqMsqA#t=24
19
Arquitec
turas
Caractersticas,
especificaciones,
diseos de
referencia
Arquitectura SW:
Aplica
ciones
Metodo
logas
Modelos, anlisis y
simulacin
Rendimiento, coste, consumo,
fiabilidad, verificacin,
Dependiendo del
uso: generalidad
de su uso
Uso general
Uso especfico
Sistemas empotrados
Basado en
aplicaciones
Grado de
Paralelismo
Monoprocesador (SISD)
Matriciales y vectoriales(SIMD)
Multiprocesadores y Multicomputadores (MIMD)
Potencia de
cmputo
21
Supercomputadores
Mainframes
Clster (HPC)
Servidores
Computadores de sobremesa
Microcomputadores
Sistemas
empotrados
o sistemas
a medida
Criterios de
comparacin?
Indicadores?
Debemos compararlo
con otros de su misma
categora.
Computador
personal de
sobremesa
Computadores
Paralelos
Categoras
Servidores
de gama
alta
Estaciones
de trabajo /
servidores
de gama
media
23
N de
Objetivo fundamental
procesadore
s
Supercomputador
(Computador
Paralelo, MPP)
32 a 65K
2 a 128
1 a 32
Servidor bsico
1a8
Computador Personal
1a2
Sistemas empotrados
(Computador Mvil)
24
Orden de
magnitud
(precio)
Capacidad
de Memoria
Principal
Supercomputa
dor
(Computador
Paralelo)
Servidor gama
alta
Servidor gama
media
Servidor
bsico
Computador
Personal
Computador
Mvil
26
Capacidad
de Memoria
secundaria
N de
usuarios
simultneos
Consumo
Tiempo de desarrollo
Requisitos
funcionales
Coste
Cmo evaluarlo
Rendimiento
Aspectos claves
para las aplicaciones
Reciclado
Fiabilidad
Consumo de potencia
Facilidad de
mantenimiento
Cmo
conseguirlo?
30
Qu diferencia
hay entre
caractersticas y
prestaciones?
Componentes:
caractersticas
Caracters
ticas del
sistema
Prestaciones
del sistema
Aplicaciones:
Sistemas:
Tipo de aplicacin
Caracterizacin de los
sistemas
Comportamiento
repetitivo
Utilizacin de los
sistemas
Caracterizacin de cada
una de las fases de las
aplicaciones
Prestaciones
Eficiencia
Consumo
Fiabilidad
Tiempo de ejecucin
Cmo medir?
Usuarios
(Aplicaciones)
Sistema
a evaluar
Eje Y
Performance = f (Workload)
Eje X
Sistemas de control
empotrados
Sistemas en Tiempo
Real
Computadores
personales,
servidores
Computadores de
altas prestaciones:
cluster, grid, cloud
Supercomputadores
Componentes: Tipos,
Capacidades, rendimiento.
Prestaciones
Cmo estn
interconectados los
componentes?
Disponibilidad y
Tolerancia a Fallos
Caractersticas de las
principales unidades
funcionales
Cmo se controla el flujo
de informacin?.
34
Sistemas empotrados
Computador de
propsito general
Sistema especialmente
diseado y optimizado
para servir como una
plataforma de
computacin de
propsito general.
Por qu son
diferentes?
Diferencias :
Operaciones en tiempo real
Dedicado
Sin sistema de almacenamiento
Tipo de restricciones para el diseo:
Rendimiento / Coste
Fiabilidad
Tamao / peso
35
consumo
Sistema basado en un
procesador digital con
elementos adicionales
diseados para ejecutar
una funcin dedicada.
Pueden ser parte de un
sistema o producto mayor.
Sistemas
empotrados:
consumo,
memoria,
Laptop: consumo
Desktop: precio
Servidor:
disponibilidad
Servidor HPC:
rendimiento
37
Sistema es todo
aquello que
Interacta con su
entorno
Entrada +
Procesamiento +Salida
Sistemas empotrados.
Procesamiento
basado en
Microcontroladores
DSP
Dispositivos de lgica
programable
38
Computador de propsito
general
Sistemas empotrados
http://www.chipcenter.com/eexpert/images/bhenderson/bhenderson006fig1.gif
40
Cmo
utilizar la
tecnologa?
Avances en los
microprocesadores
Tecnolgicos
N de
transistores
Escala de
integracin
Encapsulado
Consumo
Disipacin
Arquitecturales
Frecuencia
de reloj
Propsito
general (GPP)
Propsito especfico
(MC DSP)
Consumo
Disipacin
RISC /
CISC /
VLIW
SISC, Memoria
Conversores,
Cache MMU,
Pipelines,
Superescalar LMI,
Prediccin
Especulacin
41
Multicores,
Manycores
controladores, buses
DSP
Microcontro
ladores
Condiciones
ambientales
extremas
Consumo de
potencia
Aspectos claves
para las
aplicaciones
Restricciones
Recursos
Tiempo
Cmo
conseguirlo?
Coste
Fiabilidad
Prestaciones
Fiabilidad
42
Prestacio
nes
Coste
Consumo
Condiciones
ambientales
externas
Fiabilidad /
disponibilidad
Prestaciones
Coste
Anlisis
de
sistemas
Mantenimiento,
reciclado,
Compati
bilidad
44
Funcionalidad
Caractersticas
Prestaciones
Confiabilidad
Coste
Consumo
Mantenimiento
Tiempo de respuesta
Analizar
cuellos de botella:
Procesador, interconexin,
memoria...
Adaptarse
a las
aplicaciones
Objetivos
Calidad de servicio:
disponibilidad,
confiabilidad,
Tolerancia a fallos
Reducir impacto
medioambiental: Green
computing: Consumo,
Reciclado,
Estabilidad y repetabilidad:
Tamao
Rendimiento
54
Application
Operating
System
Compiler
Firmware
Instruction Set
Architecture
Existen todos
los niveles en
los sistemas
empotrados?
Layout
Sistema empotrado
Programa de
aplicacin
con
componentes
de SO
HW
Sistema convencional
Progra
ma
usuari
o
SO
HW
Sensor
Sensor
Transductor: acondicionamiento
de seales
Sensor
Interface de salida
Microcontrolador
Actuador
Indicador
59
60
Funcionalidad sofisticada
Operan en tiempo real
Interaccin con dispositivos fsicos:
el funcionamiento depende del sistema
concreto
Bajo coste de produccin
Bajo consumo
Diseado por pequeos equipos en
tiempos ajustados
61
Operacin en RealTime
Ambientes adversos
Operacin de
seguridad crtica
Dispositivos manuales
y aplicaciones
transportables
62
Determinismo
Temporal
Fiabilidad y
seguridad
Transductor
Senso r
Senso r
Actuator
Senso r
Real-time
contro l system
Actuator
64
Actuator
Senso r
Senso r
Actuator
Restricciones de tiempos:
Computo, Periodo, Plazos.
Restricciones de predecibilidad:
Evitar componentes que lo hagan no predecible
Restricciones de recursos:
una tarea puede requerir acceso, adems del procesador, a ciertos recursos como
dispositivos de E/S, redes de comunicacin, estructuras de datos, archivos y bases de
datos.
Restricciones de precedencia:
una tarea puede requerir resultados de una u otra tarea antes de comenzar su
ejecucin.
65
Arqui
tectu
ras
Caractersticas,
especificaciones,
diseos de
referencia
Arquitectura HW:
CPUs, memoria, sistema de
interconexin, E/S
Arquitectura SW:
Apli
cacio
nes
Meto
dolo
gas
Modelos, anlisis y
simulacin
Rendimiento, coste,
consumo, fiabilidad,
verificacin,
Aplicacin
Definir los
requerimientos del sistema
Seleccin de las
herramientas de desarrollo
Plan de desarrollo
68
Opciones
La hora
El tiempo de funcionamiento
Mensajes de informacin al usuario
Memoria programa
Tamao
Tipo
Control
Applications
Memoria datos
Tamao
CT-lib
CSP
Theory
Temporizadores
75
Hardware
Simulacin en
el ordenador
host
Construccin
del prototipo
Depuracin y test
del prototipo
76
http://www.spansion.com/Applications/homeappliances/microwave/Pages/default.aspx
Sensores,
transductores
Microcontrolador
(telemetra)
Transmisin
inalmbrica
Mvil
Servidor de
almacenamiento
Computador:
visualizacin
Equipo medico
85
Cdigo hinchado
Implementacin
Qu hacer en HW y qu en SW?
tamao de cdigo?
velocidad de ejecucin?
87
Requisitos de cmputo
Requisitos de memoria
Requisitos de E/S: tipos de seales
Requisitos de comunicacin
No funcionales
Consideraciones:
93
Microcomputador
CPU
ROM
EEPRO
M
RAM
Oscilad
or
Tempori
zadores
E/S
Cotrolad
ores:
Interrup
ciones
99
Los microcontroladores se
usan en los sistemas de
control que renan las
siguientes propiedades:
el precio es un factor crtico
la capacidad de memoria
necesaria es pequea
los sistemas son dedicados
y siempre ejecutan el
mismo programa de
aplicacin
el procesamiento se realiza
en tiempo real (STR)
no se gobiernan muchos
perifricos
103
Comunicaciones,
Manejo del teclado,
Procesamiento de la seal,
Proceso vdeo,
El tipo de encapsulado
para protegerlo de
condiciones ambientales
tales como polvo,
temperatura, humedad y
golpes
Caractersticas
Costo
Tamao
Calidad
Tipos
Plstico
Cermicos
111
ISA
Formato de instrucciones
Tipos de instrucciones
Modos de direccionamiento
Data-path
Pipeline
Registros
Usua
rio
Interfaz
usuario
Programas
software
Sistema Operativo
instruction set
Computador (Hardware)
hardware
114
John Kubiatowicz
ISA
CISC
RISC
CRISC
SISC
VLIW
Factor limitante
Capacidad
Velocidad
Tipo
ROM
EEPROM
FLASH
El nmero de
veces que se
puede
borrar/grabar
est limitado
PROM/
EPROM
(Electrically
Erasable
PROM):
Reprograma
bles
Modo de acceso
122
RAM:
Variables que cambian durante la
ejecucin
Esttica
Dinmicas
La mayora de los
microcontroladores estn
disponibles en la versin
ROM-less, la cual
permite conectar una
ROM / RAM externa.
Muchos
microcontroladores estn
tambin disponibles en
versin piggy-back con
un zcalo de EPROM en
la parte de arriba del
package del
microcomputador.
http://www.microcontroller.com/wp/mot_flash/Flash_Micros.htm
123
124
125
http://webdiee.cem.itesm.mx/web/servicios/archivo/manuales/micro8051.
http://webdiee.cem.itesm.mx/web/servicios/archivo/manuales/micro8051.pdf
126
127
http://webdiee.cem.itesm.mx/web/servicios/archivo/manuales/micro8051.
128
http://webdiee.cem.itesm.mx/web/servicios/archivo/manuales/micro8051.
E/S
E/S digital
E/S analgica
Puertos de E/S
Mapeados en memoria
La comunicacin del
microcontrolador con el
mundo se da a travs de
sus pines de E/S
Estos pines son
compartidos con mdulos
del microcontrolador
Pueden configurarse
como entrada o salida
131
Control de leds
Se utiliza HW externo
Tambin se realiza una presentacin multiplexada
132
Serie Sncrona o
asncrona
SPI (Motorola)
SCI (serial
communications
interface)
Un SCI es un UART
reforzado (puerto de serie
asncrono).
Redes de dispositivos
136
Temporizadores
139
Temporizadores (timer)
Contador de eventos
Instrucciones call
Paso de parmetros
141
142
Los Microcontroladores
estn diseados para
ejecutar con poco soporte
externo para el reloj del
sistema
Los Microcontroladores
ejecutan en el entorno de
las decenas de MHz
Existen diversos mtodos
para proporcionarle el
reloj al Microcontrolador
Usando un cristal
Resonador cermico
Oscilador RC
Ninguno
145
Cuestin importante:
minimizar el consumo de
corriente
Hay que tener en cuenta el
consumo:
En qu se diferencian una
pila y una batera?
147
Repertorio de instrucciones:
Reloj
Interrupciones
Timers / contadores
Puertos de E/S
Puertos de comunicacin
Control de fallos
Tipo de Encapsulado
148
149
Rutinas de software
almacenadas en memoria
ROM
Software que se
encuentra empotrado en
un dispositivos HW
Es una combinacin de
SW y HW
150
151
154
158
http://www.enseirb.fr/~kadionik/68hc11/comparaison.html
Temporizadores o timers
Watchdog
Proteccin ante fallo de
alimentacin o Brownout
Estado de reposo o de bajo
consumo
Conversores A/D, D/A
Comparador analgico
Modulador de anchura de
pulsos PWM
Ports de E/S digitales
Ports de comunicacin.
Proteccin del SW
http://www.genesispowerprotection.com/electroflowlink.html
162
163
http://dbserv.maxim-ic.com/appnotes.cfm?appnote_number=279
164
Hardware
Evento POR Software
Watchdog
Violacin de memoria
Password incorrecto
Proteccin de Brownout
Proteccin de Brownout
normalmente es un circuito
que protege contra
sobretensiones de
alimentacin.
166
http://dbserv.maxim-ic.com/appnotes.cfm?appnote_number=279
Condiciones
ambientales
extremas
http://webstore.iec.ch/webstore/webstore.nsf/artnum/0355
Condiciones
ambientales
extremas
Condiciones
ambientales
extremas
estndar IEC60529
173
http://www.hubersuhner.com/9-120-p-rf-cab-env-ip-ratings_en.pdf
Prestaciones
177
En muchos sistemas:
El usuario introduce un
comando y espera una
respuesta rpida
No es crtico si la
respuesta no se recibe
inmediatamente
No dar una respuesta a
tiempo no se considera
como errnea
En Sistemas de
Tiempo Real
La exactitud del resultado
depende:
Resultados lgicos computacin
Instante de produccin de los
resultados
180
181
Seal analgica:
Seal digital:
La conversin
Analgico-Digital
consta de varios
procesos:
Muestreo
Cuantizacin
Codificacin
X(t)
.
..
.
. ...
....
....
XQ[n]
XQ(t)
...
..
.
..
..
. .. .
..
185
ruido de cuantificacin:
187
Bases matemticas:
Algoritmos:
191
En un procesador ordinario
DSP programable
Hardware
ASIC
c1
c2
xn-1
D
Cn-1
Tap
cn
x1
yn = xn c1 + xn-1c2 +........ + x1 cn
194
yn
195
Paralelismo, Superescalar:
Muy Alto rendimiento
Procesadores empotrados
Rendimiento
DSP
Alto rendimiento
Procesadores empotrados
DSP
Avanzados
Controladores empotrados
Bajo coste
Controladores empotrados
198
Microcontrola
dores
199
http://www.esiee.fr/~mimounh/Assets/Introdsp.pdf
200
Procesador DSP
Memoria de datos
Memoria de instrucciones
Ports de E/S
ADC
DAC
202
http://www.bores.com/courses/intro/chips/6_basics.htm
205
Howard Aiken,
desarroll las mquinas
con arquitectura
Harvard
206
Mltiples bancos
de memoria y buses
Arquitectura
Harvard
Harvard
modificado:
Mltiples
memorias de datos
Aspectos de la
microarquitectura
Pipeline
Cache
Repertorio de
instrucciones
RISC
CISC
SISC
VLIW
Tipos de datos
Datos
empaquetados
SIMD
Juego de instrucciones
especializado y control
Bucles con Zerooverhead
Soporte para MAC
Modos de
direccionamiento
especializados
Bit-reversed
addressing
Buffers circulares
Perifricos
especializados para
DSP
208
Mayor paralelismo
Incrementan el nmero de
operaciones que se puede
realizar en cada instruccin
Aadiendo unidades de
ejecucin(ej: Multiplicadores)
Incrementan el nmero de
instrucciones que pueden ser
emitidas y ejecutadas en cada
ciclo.
http://www.analog.com/library/analogDialogue/archives/31-2/DSP.html
212
Memoria de programas y
datos pueden tener
anchos diferentes
213
Howard Aiken,
desarroll las mquinas
con arquitectura
Harvard
214
Buffer
217
Desde el punto de
vista fsico, la
arquitectura de
memoria con caches
de instrucciones y
datos de los
procesadores
superescalares es casi
idntica a la
arquitectura Harvard.
218
Opciones para la
digitalizacin y
captura de
seales con
intervalos
regulares (DMA)
Pocos o nulos
recursos que
generan
latencias, como
memoria
virtual, caches,
etc.
219
220
221
222
La accin depende de
los tipos de
instrucciones
Operativas: Aritmticas
y lgicas
Transferencia:
Referencias a memoria
Control: Bifurcaciones
223
Cach
Instr
Unidad
Fetch
EU
EU
Banco de Registros
224
No se pude mostrar la imagen vinculada. Puede que se haya movido, cambiado de nombre o eliminado el archivo. Compruebe que el vnculo seala al archivo y ubicaciones correctos.
225
Pirsch
226
227
228
Sistema
Multicomputador
3 Fases de pipeline:
Bsqueda:
Descodificacin:
Ejecucin:
230
32 31
Palabra empaquetada:
16 15
Byte empaquetado:
8 bytes empaquetados en 64 bits
63
8 7
231
232
233
A = a1 a0
B = b1 b0
C = (a1 + b1) ( a0 + b0 )
234
235
http://users.ece.gatech.edu/~scotty/overview/sld001.htm
236
238
239
class Matriz{
double _tabla[][];
// ...
/**
* Transpone la matriz (cambia filas por columnas)
* @return true si la matriz se puede trasponer. false en caso
*
contrario
*/
boolean trasponer(){
double aux = 0;
boolean retorno = true;
La transposicin
de una matriz:
cambiar las filas por
las columnas
d3
d2
d1
d0
d3
c3
b3
a3
c3
c2
c1
c0
d2
c2
b2
a2
b3
b2
b1
b0
d1
c1
b1
a1
a3
a2
a1
a0
d0
c0
b0
a0
240
241
Aspectos clave
Arquitectura Harvard
Harvard modificado: Mltiples
memorias de datos
Repertorio de instrucciones
242
Datos empaquetados
SIMD
Aspectos de la microarquitectura
Pipeline
cache
Tipos de datos
Juego de instrucciones
especializado y control
Arquitectura
optimizada para
proveer procesamiento
veloz de seales
discretas en el tiempo,
ej: Multiplicar y
Acumular (MAC) en un
solo ciclo
Data
Memory
Multiplexer
Multiplexer
ALU
Accumulator
244
246
Lecturas y escrituras
concurrentes
247
248
249
Alternativa: despus de
la multiplicacin y antes
de acumular
Desplazar a la derecha el
resultado (escalar)
Se pierden los bits menos
significativos
Descenso de la precisin a
costa de eludir el overflow
250
252
253
255
13257.3285=
13257.3285100=
1.32573285104=
0.132573285105=
13257328510-4=
1325732850010-6= ...
N = M BE
Las unidades de
procesamiento de punto fijo de
un procesador DSP
tpicamente incorporan:
Un multiplicador
Una UAL (unidad para realizar
la combinacin funciones
sumador/restador/funciones
lgicas)
Uno o ms desplazadores
Registros para los operandos,
Acumuladores
260
262
Lapsley
Procesadores DSP
Punto fijo
16 bits
20 bits
Punto flotante
24 bits
32 bits
IEEE 754
263
Otros
264
Diferencias
266
Aspectos clave
Arquitectura Harvard
Harvard modificado: Mltiples
memorias de datos
Repertorio de instrucciones
267
Datos empaquetados
SIMD
Aspectos de la microarquitectura
Pipeline
cache
Tipos de datos
Juego de instrucciones
especializado y control
Objetivo:
268
269
270
El generador de direcciones
debe calcular la siguiente
direccin dentro del buffer y
mantener el espaciado
adecuado entre datos, en el
ejemplo 2 posiciones son
saltadas. 30, 33, 36, 31, 34,...
Despus del 36 debe detectar
que la direccin 39 no es del
buffer y debe modificar para
acceder a la direccin 31
Esta comparacin y
modificacin se realiza sin
aadir retardos, gracias al
modulo circular buffering
http://www.analog.com/library/analogDialogue/archives/31-2/DSP.html
271
Direccionamiento circular
(modular)
Direccionamiento para realizar
de forma rpida la transformada
discreta de Fourier
272
275
276
277
278
A cada valor de y[n0] el puntero para los coeficientes x[k] debe apuntar a la ltima entrada (ej: x{-2} = -3)..
X[-2]
-3
X[-1]
X[0]
0.5
0
0
Al trmino de cada
muestra computada
vuelve atrs a x[-2]
buffer Circular = 3
h[0]
0.25
h[1]
0.25
h[2]
0.25
h[3]
0.25
0
0
279
281
282
http://bernia.disca.upv.es/~gbenet/doctorat/fundam_dsp/ca
El modo normalmente
usado al realizar un
radix-2 FFT
Cuando una FFT radix-2
se computa, o los
resultados o los datos
fuente tienen que ser
accedidos en el orden bitinvertido.
284
http://www.chipcenter.com/eexpert/bhenderson/bhenderson008.html
286
Caracterstica
Uso
Lgica cableada interna de una microprocesador, semejante a un multiplexor,
Barrell shifter
Buffer circular
Permite a un procesador poner una lnea de retardo en ejecucin, sin tener que
realmente mover los valores de lso datos en memoria.
Mdulo de direccionamiento Realmente los datos permanecen inamovibles mientras son necesarios.
Esta simulacin se consigue manipulando punteros a memoria. El buffer
utilizado recibe el nombre de buffer circular
287
288
291
292
293
Arquitectura Harvard
Almacenamiento local para datos e instrucciones en el chip.
Un sistema de almacenamiento jerrquico con pequeas unidades
de memoria en el chip y gran capacidad de memoria externa mejora
el ancho de banda de memoria efectivo
El paralelismo a nivel de instruccin puede ser soportado por
arquitecturas VLIW
Paralelismo de subpalabras: UALs divididas esto incrementa la
concurrencia de operaciones.
Empleo de multplicadores y desplazadores dedicados para acelerar
las operaciones
Extensiones de hardware adicional para reducir el nmero de ciclos
de instrucciones DSP especializadas.
Implementaciones especiales de la Unidad de generacin de
direcciones con un hardware diseado para contador de lazos.
294
302
Mtricas de diseo
Fiabilidad / Disponibilidad
305
Restricciones
Recursos
Tiempo
Diferencias :
Operaciones en tiempo real
306
Tipo de restricciones para el diseo
Cunto HW necesito?
Qu restricciones temporales?
Cmo minimizar el consumo de energa?
Cmo gestionar la compatibilidad, la
facilidad de actualizacin?
Qu tipo de robustez, fiabilidad,
disponibilidad?
Test necesarios
Cmo observar el comportamiento? cmo
controlarlo?
Refinamos los
requerimientos
en una
especificacin
Especificaciones
308
309
310
Aplicacin
Definir los
requerimientos del sistema
Depuracin y test
del sistema
Ensamblado del
programa
Seleccin de las
Simulacin en
el ordenador
host
herramientas de desarrollo
Plan de desarrollo
Depuracin
correccin
errores
grabacin del
microcontrolador
Simulacin en
el ordenador
host
Construccin
del prototipo
Depuracin y test
del prototipo
311
Anlisis
Plan de desarrollo
Diseo
(documentacin del diseo)
Realizacin
Objetivos
Diseo
Rendimiento
ISA
Qu hacer en SW?
til: permitir programacin ptima
Qu hacer por HW? Implementacin:
rendimiento / coste
Equilibrio
Diseo
del HW
Construccin de bloques:
CPU, memoria, dispositivos de E/S,
interconexiones
Balancear rendimiento y coste.
Mtricas de rendimiento: velocidad, consumo...
tiempo (diseo, construccin, depuracin)
coste de implementacin
316
Aplicacin
Hardware
Software
Prueba de
conjunto
317
http://www.stsc.hill.af.mil/crosstalk/2001/06/moore.html
318
Intertwined subtasks
ASIC
Processor
DSP
Code
Analog I/O
Memory
Specification/modeling
H/W & S/W partitioning
Scheduling & resource allocations
H/W & S/W implementation
Verification & debugging
319
Coste
Arquitectura
Consumo
Rendimiento
Recursos en el chip
Tiempo de ciclo de
instruccin
Velocidad del bus
Thorughput
Tamao
Fabricante
Memoria
Recursos de E/S
Repertorio de instrucciones
Modos de direccionamiento
4, 8, 16, bits?
Dimensin fsica
Otros suministradores?
Elemento de la familia
322
Testeabilidad:
Fiabilidad
Software
Fcil programabilidad
Herramientas de desarrollo
HW
SW
323
Adaptacin a la aplicacin:
Tamao de memoria
Tipo de memoria (EPROM; Flash,
N de timers
Requerimientos de E/S,
325
La velocidad de cmputo de un
microprocesador se asocia a su rendimiento.
Qu es la velocidad de cmputo? De qu
depende?
Velocidad del reloj
Nmero de bits de los registros
Nmero de bits del bus (externo) de datos
Procesamiento paralelo: pipelining, SIMD, ...
Velocidad media de acceso a memoria: uso de
cach
Caractersticas:
Velocidad del Clock speed pero las instrucciones por ciclo pueden
variar
Instrucciones por segundo pero el trabajo por segundo puede variar
Benchmark
Dhrystone: benchmark sinttico, desarrollado en 1984. Dhrystones/sec.
328
329
330
Problema: la carga es
variable
Usuarios
Variables controladas y
variables no
controladas
Carga
Sistema
informtico
Prestaciones
Depende de la finalidad
333
Editor
Compilador
Ensamblador
Simulador
Emulador
Programador
Programacin
Metodologa de trabajo
Programacin en el sistema
Proteccin del programa
Debug
Compilers
Cross compiler
C File
C File
Compil
er
Binary File
Binary File
Asm. File
Assembl
er
Binary File
Linker
Library
Runs on one
processor, but
generates code for
another
Assemblers
Linkers
Debuggers
Profilers
Debugge
r
Exec. File
Profile
r
Implementation Phase
Verification Phase
339
http://www.grifo.com/SVIL/uk_h_tool.htm