Вы находитесь на странице: 1из 26

Tema 16: PROCESADO DE DATOS

S. Manich
Contenido
Procesado de datos

• Procesado combinacional de datos.

• Procesado secuencial.

• Tranferencia de registros.

• Sistema algorítmico.

• Estructura de los sistemas algorítmicos:

• Subsistema de datos.

• Subsistema de control.

• Condiciones y señales de control. 2


Bibliografía

J. P. Hayes

Introducción al Diseño Lógico Digital

Capítulo 8

M. Ercegovac, T. Lang, J. H. Moreno

Introduction to Digital Systems

Capítulo 13

3
Conocimientos adquiridos
SINTESIS DIRECTA DE SISTEMAS

Sistemas
Sistemas Sistemas
Sistemas
Combinacionales
Combinacionales Secuenciales
Secuenciales

• Funciones Booleanas • Funciones Booleanas


– Cálculo instantáneo – Cálculo no instantáneo
– No existe variable tiempo – Existe variable tiempo

SC + Registro estado

PARA MAYOR COMPLEJIDAD


4
SINTESIS DIRECTA NO VIABLE
Ejemplo sistema complejo
MICROPROCESADOR • 32 registros internos (NO CACHE, NO
DRAM)
• Registros de 32 bits.

• 32 x 32 = 1024 bits memorizados

• Número de estados

232 (por registro) x 32 =

= 237 ≈ 1,4·1011 estados !!!!

5
Como plantear sistemas complejos?
Puertas lógicas? ⇒ ”LOS ÁRBOLES NO DEJAN VER EL BOSQUE”

ALGUNA IDEA?

SUBIR DE NIVEL

DISMINUIR EL DETALLE

COGER PERSPECTIVA

NIVEL TRANSFERENCIA REGISTROS


(RTL) 6
Niveles de diseño
ÍA
G
LO
O
N CN
C IÓ TE Hacia VHDL
AC A
T R EL
B S D
A CIA

ND
E N RTL
PE
DE
IN PUERTAS LÓGICAS
TECNOLOGÍA

TRANSISTORES
LIGADO A

Nivel físico
SILICIO 7
Elementos RTL MULTIPLEXOR n

• Combinacionales k
MUX
BUS
E
m
DESMULTIPLEXOR
AND, OR, NOT m m
k
DEMUX
AND,OR,NOT
n
E
m
CODIFICADOR
m DESCODIFICADOR
m E
ENCODER
DECODER
m CV 8
m
Elementos RTL
• Combinacionales

SUMADOR RESTADOR

m m m m

Co ADDER Ci Co SUBSTRACT Ci

m m
MULTIPLICADOR

m m

Co MULTIPLY

n
9
Elementos RTL
• Secuenciales

REGISTRO PARALELO REGISTRO DESPLAZAMIENTO


CLR LOAD
m m

CLR I serie
CLK REGISTER CLK SHIFT REG
E SH
m m

CONTADOR
CLR
m

LOAD
CLK COUNTER
E
m 10
Como organizar elementos RTL?
ELEMENTOS MÉTODO

CONT.
CONT. DIAGRAMAS
DIAGRAMAS
REGISTROS
REGISTROS DE
DE
···
··· EJECUCIÓN
EJECUCIÓN

TECTURA?
NIVEL RTL ARQUI-
NIVEL LÓGICO
MÉTODO
ELEMENTOS

TAB.
TAB.VERDAD
VERDAD
PUERTAS
PUERTAS SOP,POS
SOP,POS
LÓGICAS
LÓGICAS KARNAUGH
KARNAUGH
DIAG.IMPLICACIÓN
DIAG.IMPLICACIÓN
11
DIAGRAMAS DE EJECUCIÓN
Op1
DIAGRAMA
DIAGRAMA
ESTRUCTURA
ESTRUCTURA
Op2 Op3 Op4 Op5 Op6
PARALELA
PARALELA

Op7
Ahorro Aumento
Op1 recursos velocidad
Op4
Op2

Op5 DIAGRAMA
DIAGRAMA
ESTRUCTURA
ESTRUCTURA
Op3
SECUENCIAL
SECUENCIAL 12
Op6
Arquitectura genérica (una de las posibles)
• SISTEMA UNIMODULAR
– Cálculos de cada nodo realizado por una única unidad.
• CONTROL CENTRALIZADO •Almacena
– Control de secuencia realizado por una única unidad. datos
•Realiza
operaciones

Entrada Subsistema
Subsistema Salida
DATOS DATOS
DATOS DATOS
Señales de Señales
CONDICION CONTROL

Entrada Subsistema
Subsistema Salida
CONTROL CONTROL CONTROL
CONTROL
•Gestiona
recursos13
Ejemplo
• Diseñar un circuito que calcule el polinomio siguiente

7
P7 ( x) = ∑ pi x i
i =0

• Expansión del polinómio

P7 ( x) = p7 x 7 + p6 x 6 + p5 x 5 + p4 x 4 + p3 x 3 + p2 x 2 + p1 x + p0

14
Diseño directo con puertas. Intentar lo imposible?
x
n

n
p7 Si n = 8 el número
p6 total de bits de
p7 entrada es de 72
p5
p4
p3
p2
p1 m tablas de la verdad de
p0
4.7·1021 filas cada una!!!
m

P7 ( x) 15
Estrategia: dividir el problema
• Secuenciar el cálculo del polinomio.

P7 ( x) = ((((( p7 x + p6 ) x + p5 ) x + p4 ) x + p3 ) x + p2 ) x + p1 ) x + p0

• Operaciones básicas: suma y multiplicación.


• Ordenar la ejecución de las operaciones básicas.

Realizar un DIAGRAMA DE EJECUCIÓN

Algoritmo embrionario

16
Diagrama de ejecución
• Nodos: BEGIN
operaciones que BEGIN
se realizan. V = p7 ⋅ x + p6
• Vértices: V = p7
ordenación de V = V ⋅ x + p5
las operaciones.
i=6
V = V ⋅ x + p4 OR

Diagrama Diagrama V = V ⋅ x + pi
V = V ⋅ x + p3
expandido con bucle
i = i −1
V = V ⋅ x + p2

i≥0
V = V ⋅ x + p1

END
V = V ⋅ x + p0
17
END
Especificación cálculo polinómio
Banco de
REGISTROS
• Entradas/Salidas:
– Subsistema datos: xx 0000
• Entrada: DATO (n bits) p7,
p7,VV 0001
• Salida: DATO (n bits)
p6
p6 0010
– Subsistema control:
• Entrada: BEGIN
p5
p5 0011
• Salida: END p4
p4 0100
• Variables a almacenar. Considerar los datos p3
p3 0101
de partida almacenados internamente. p2
p2 0110
p1
p1 0111
p0
p0 1000

• Cálculos a realizar: multiplicación y suma


– ( V·x + pi )

18
Arquitectura unidad cálculo polinomio
• SUBSISTEMA DE DATOS: Subsistema Subsistema
operaciones, variables del CONTROL DATOS
sistema.
• SUBSISTEMA DE
CONTROL: control del
orden de ejecución de las R/W
operaciones. Banco
4 de
Diseño directo con
Unidad REGISTROS
puertas ADR

BUS DATOS
ES POSIBLE! de n

Módulo ARITMÉTICO
CONTROL Ea

• SD: operaciones con Eb a b c


estructuras Ec
combinacionales
escalables y registros de a× b+c
datos
• SC: autómata con número n
19
de estados tratable. END BEGIN
MICROOPERACIÓN
BEGIN

Operación
Operación realizable
realizable enen un
un V = p7 ⋅ x + p6
periodo
periodo de reloj. ⇒
de reloj. ⇒expandir
expandir
V = V ⋅ x + p5
nodos
nodos diagrama
diagrama ejecución.
ejecución.
V = V ⋅ x + p4

V = V ⋅ x + p3
Cálculo “instantáneo”,
circuito combinacional, a ←V V = V ⋅ x + p2
más rápido que el reloj
c ← p3 V = V ⋅ x + p1

V ← a⋅x+c V = V ⋅ x + p0
Fin periodo de reloj
END 20
BEGIN S
Diseño del subsistema Mcontrol
de icrooperacion
X S0 b x
X S1 a p7
X S2 c p6
X S3 V a ∙x
X S4 a V
X S5 c p5
21

X S V a ∙x
Síntesis sistema algorítmico tot. sec.
• Metodologia general de especificación a nivell RTL. Clasificación
• 1) Construcción del Diagrama de Ejecución. de las
operaciones
Op1 ≡ Op2
Op1
Identificar Op3 ≡ Op4
variables en B1
Op5 ≡ Op6
el diagrama Op2
B3 B2
Op4
Op3
B5 Op1,Op3,Op5
Conjunto de
datos a B4 Op5 B6
Conjunto de
almacenar
operaciones a
Op6 implementar22en
la arquitectura
Unimodular control centralizado
Subsistema DATOS
Bus datos temp

Entrada
DATOS
R* T Op1* Salida
DATOS
Opi

Op3*
E E
G M
Op5*
S P

temp

Señales Condi- Opi


control ciones si no
Entrada Salida
CONTROL CONTROL
Autómata secuencial

Subsistema CONTROL Estados ≡ 23

Microoperaciones
Subsistema de control
• Expandir las operaciones en microoperaciones.

Bk uOpi1
Expansión Bk1
Opi
1 ciclo
uOpi1
Bj Bi reloj
Bk2

• Asignar estados a las uOpij. uOpi1


• Definir funciones salida autómata control
según el estado de las señales de control. Bk3
• Definir nuevos estados según vértices
diagrama de ejecución expandido, Bij.

24
Síntesis sistema algorítmico tot. sec.
• Selección de arquitectura RTL => UNIMODULAR, CONTROL
CENTRALITZADO

⇒ Arquitectura que separa variables con datos y operaciones sobre


datos, del autómata que secuencia las operaciones.

Simplificación importante en el
autómata del sistema. Sistema escalable.

⇒ Operaciones: circuitos combinacionales con estructuras


combinacionales recursivas muy fáciles de escalar.

25
Microprocesador ARM7 RISC (móbiles)

Registros

Subsistema Subsistema
de datos de control

Operaciones

26

Вам также может понравиться