Sunteți pe pagina 1din 57

EC: Sistemas digitales a nivel RT

REALIZACIN DE SISTEMAS DIGITALES A NIVEL RT


Contenido:

Descripcin con cartas ASM: la construccin de cartas ASM; la carta de datos y la de control.

Diseo de la unidad de control: mediante un biestable por estado. Control microprogramado.

El uso de la calculadora.

Manuel Valencia

D Diseo de sistemas digitales: organizacin Datos&Control; macro y micro-operaciones; componentes; lenguaje RT; interconexin va buses; realizacin de la unidad
de datos. Un ejemplo: calculadora; desarrollo de la calculadora a nivel RT.

Bibliografa bsica
**
**

C. Baena, I. Gmez, J.I. Escudero, M. Valencia: Sistemas Digitales. Servicio de publicaciones del Dpto.
Tecnologa Electrnica, 1997. Cap. 1 y 2
C. Baena, M.J. Bellido, A. J. Molina, M.P. Parra, M. Valencia: Problemas de Circuitos y Sistemas Digitales. Ed. McGraw-Hill Interamericana, 1997. Caps 11 y 12.

Dpto. Tecnologa Electrnica

EC

10/March/09

NIVEL RT: DATOS Y CONTROL


CIRCUITOS VERSUS SISTEMAS
CIRCUITOS
Informacin

Palabras de datos

0, 1

Nivel/Lenguaje

De conmutacin

RT (Register Transfer)

Funcionalidad

Mquina de estados finitos

Instrucciones: Operaciones

Componentes

Puertas y biestables

MUX, ALU, ..., registros, ...

Conexin

x1
Circuito
Combinacional

Buses

Lneas (cables)
Combinacional y
almacenamiento (memoria)

Organizacin

xn

SISTEMAS

Procesado de datos
y control
XIN

z1
zk

Unidad de
Control

reloj
X
y1

B1
DIN

yr

Br

Z
Unidad de
Procesado

DOUT

X : cualificadores o entradas de control


Z : comandos o salidas de control
D: datos

reloj

Dpto. Tecnologa Electrnica

ZOUT

EC

Nivel RT Datos y Control - 2

NIVEL RT: DATOS Y CONTROL


MACRO Y MICRO OPERACIONES
Macro-operacin: Tambin llamada instruccin
Es cada tarea que especifica previamente el usuario y que el sistema realiza
automticamente
En general el sistema tarda varios ciclos de reloj en su ejecucin.

Micro-operacin o op:
Es cada tarea que el sistema realiza en un nico ciclo de reloj
En general consiste en una o varias transferencias entre registros (RT).

Cuestiones de inters general:

La forma de disear los Sistemas Digitales


Las formas de describir los Sistemas Digitales

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 3

NIVEL RT: DATOS Y CONTROL


METODOLOGA DE DISEO EN EL NIVEL RT (Top Down)
0/ Punto de partida: Descripcin funcional a travs del ISP
1/ Disear la Unidad/Ruta de Datos
Proceso en varios pasos: Se establece una arquitectura bsica, se desarrollan las
operaciones/instrucciones a nivel de micropoeraciones y se modifica la arquitectura
bsica de la unidad/ruta de datos

2/ Describir formalmente el comportamiento de datos y de control


mediante un algoritmo
(algoritmo del flujo de datos y de control)

3/ Disear la Unidad de Control

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 4

NIVEL RT: DATOS Y CONTROL


FORMAS DE DESCRIPCIN
 UTILIDAD:
En el proceso de diseo

Como documentacin

 QU DESCRIBIR
Estructura de la Unidad de Datos
F Componentes secuenciales (registros), llamados tambin de memoria
F Componentes combinacionales, llamados tambin unidades funcionales o
recursos de clculo
F Componentes de conexin (buses)
Microprograma de control
Estructura del controlador
 FORMAS DE DESCRIPCIN:
Grficas
F Orientadas al nivel estructural: dibujos/diagramas de circuitos
F Orientadas al nivel funcional: cartas ASM (Algorithmic State Machine)
HDL: Hardware Description Language

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 5

NIVEL RT: DATOS Y CONTROL


EJEMPLO DE SISTEMA DIGITAL

Especificacin inicial:

CALCULADORA DE SUMAS Y RESTAS: Cualquier posibilidad de suma o resta


entre dos datos, A y B, y de almacenar el resultado en el registro que ocupaba uno de ellos

Conjunto de instrucciones (ISP: Instruction Set Processor). Hay 8, que son:


A A+B
A -A + B

B A+B
B -A + B

A A-B
A -A - B

B A-B
B -A - B

Organizacin del sistema


XS

U. PROCESADO
CONTROL

A
B

IR[3]

Usuario
Dpto. Tecnologa Electrnica

FIN

EC

Sistema
Nivel RT Datos y Control - 6

NIVEL RT: DATOS Y CONTROL

Modo de operacin de calculadora


EL USUARIO:
Especifica en IR (Instruction Register) una de las ocho instrucciones.
Suministra la seal de comienzo XS.
EL SISTEMA:
Ejecuta la instruccin especificada.
Genera seal "FIN" y espera nueva XS.

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 7

NIVEL RT: DATOS Y CONTROL


NOTACIN RT. TIPOS DE OPERACIN
De escritura

Operacin

Notacin RT

Carga en paralelo
Desplazamiento a dcha.
Desplazamiento a izda.
Incremento (Decremento)
Puesta a 0 ( a 1)
Inhibicin (NOP)

DIN
An-1 Dr , Ai Ai+1 in-1 ; A ShR(A,Dr)
A0 Dl , Ai Ai-1 i0 ; A ShL(A,Dl)
A A+1
(A A-1)
A0
(A 1...1)
AA

De control
Operacin
Carga en paralelo
Desplazamiento a dcha. / izda.
Incrementa / Decrementa
Puesta a 0 / 1
Inhibicin
Lectura

Dpto. Tecnologa Electrnica

De lectura
Seal de control
W (T, L)
SR / SL
I/D
CL (Z) / S
Ninguna activa
R

Incondicional:

Condicional

Dout = A

R=1:
R=0:

Dout = A
Dout = HI

Las operaciones de lectura pueden afectar a:


Todo el dato:
Parte del dato:
Una funcin del dato:

EC

Dout = A
Outa = A3
Cero = 0 si A0
1 si A=0

Nivel RT Datos y Control - 8

NIVEL RT: DATOS Y CONTROL


IMPLICACIN DE DATOS EN TRANSFERENCIA ENTRE REGISTROS
f(x):

A G(B, C, ...)
Operacin RT

Condicin de ejecucin
COMPONENTES DE MEMORIA:
UD: Registros A, B C
Funciones: Escritura en A y Lectura de B yC
COMPONENTES COMBINACIONALES:
Para implementar funciones:
En UD: el procesado de datos G(B, C, ...)
En UC: la condicin de control, f(x)

COMPONENTES DE CONEXIN:
Caminos fsicos y lgicos para el flujo de datos desde cada registro fuente al de destino:
Lneas de conexin (buses)
Circuitos combinacionales
ADEMS, LA UC:
Establece la secuencia de Ops
Genera las seales de control en UD
Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 9

NIVEL RT: DATOS Y CONTROL


Descripcin estructural del Sistema digital
CONTROL

DATOS
R

Evala f(x)

Genera seales de
control
Establece secuencia
de RT

B
Circuito
Combinacional
que realiza

RB
C

WA

G(B, C, ...)

CK

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 10

NIVEL RT: DATOS Y CONTROL


Operacin temporal 1
CONTROL

Ciclo K

A G(B, C, ...)

f(x):

Evala f(x)

Genera seales
de control
Establece
secuencia de RT

Inicialmente los datos son:


A0, B0 y C0
Suponemos f(x) = 1

DATOS

B
Circuito
Combinacional
que realiza
G(B, C, ...)

RB

WA

C0
W

CK

ciclo K

ciclo K-1

ciclo K+1

Ck:
WA:
RB:
Sal B:
Sal G:
A:

HI

B0

???

G(B0, C0, ...)

HI
???
G(B0, C0, ...)

A0

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 11

NIVEL RT: DATOS Y CONTROL


Operacin temporal 2
CONTROL

Ciclo K
A G(B, C, ...)

f(x):

Evala f(x)

Genera seales
de control
Establece
secuencia de RT

Inicialmente los datos son:


A0, B0 y C0
Suponemos f(x) cambia

DATOS

B
Circuito
Combinacional
que realiza
G(B, C, ...)

RB

WA

C0
W

CK

f(x):
Ck:
WA:
RB:
Sal B:
Sal G:
A:

HI

B0
G(B0, C0, ...)

???

???
G(B0, C0, ...)

A0

Dpto. Tecnologa Electrnica

HI

EC

Nivel RT Datos y Control - 12

NIVEL RT: DATOS Y CONTROL


METODOLOGA DE DISEO EN EL NIVEL RT (Top Down)
Tras elegir el ISP del Sistema Digital:
1/ Disear la Unidad/Ruta de Datos (Data Path)
Proceso en varios pasos:

Se establece una arquitectura bsica,


se desarrollan las operaciones/instrucciones a
nivel de micropoeraciones, y
se modifica la arquitectura bsica de la unidad/
ruta de datos

Registros
Entradas

Bloque de
Interconexin

Salidas

Unidades
Funcionales

Tratemos en primer lugar las interconexiones.

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 13

NIVEL RT: DATOS Y CONTROL


INTERCONEXIN VA BUSES

Bus: Conjunto de n lneas


conductoras con un protocolo
para su manejo

BUS

B0
B1

B[n] = B0:n-1

Bn-1

B[n] = B0:n-1

Tipos de Buses
Unidireccional
Fuente

Estndar (0, 1)
Salida
estndar

Destino

Bidireccional
Fu / De

Dedicados

Compartidos

3-state (0, 1, HI)

De / Fu

Buffer
3-state

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 14

NIVEL RT: DATOS Y CONTROL


LECTURA DE BUS (con Escritura en Registro)
A Bus = Dato
nico bus:
Conexin directa

Bus

Dato
WA = 1

Bus

Uno entre varios buses (p. ej. 4):


Conexin multiplexada

Bus 0
Bus 1
Bus 2
Bus 3
S1
S0

Ej.: Dato = 1011

Dato
1
0

0 1

2 3

WA = 1

WA = 1
1
1
0
1

1
2
3

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 15

NIVEL RT: DATOS Y CONTROL


ESCRITURA DE BUS (con Lectura en Registro)
Bus = [A]
Slo hay un registro fuente:

Hay varios registros fuente:

la salida del registro puede


ser estndar o 3-state

deben ser 3-state

R3

Varios Buses

Bus nico

A3

R2

A2

R1

A1

A
Como mximo, una seal Rj activa
P. ej. R1R2R3 = 0 1 0 para

Bus = [A2]

Recordad: las salidas bidireccionales


(in/out) conllevan el carcter 3-state

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 16

NIVEL RT: DATOS Y CONTROL


EJEMPLO:

Se dispone de 4 registros [n], A3, A2, A1, A0, con carga en paralelo (W3, W2, W1, W0)
Hay que realizar la conexin para la trasnferencia AF AD, con F, D {0, 1, 2, 3}
La seleccin de Fuente est dada por F1F0 y la de Destino, por D1D0.
Ejemplo, AD = A1 (D=1)
D1D0 = 0 1

Solucin del Destino:

D1

D0

DEC
2:4 3
1
2
1
0
0

0
0
0

1
[AF]

A0

A1

A2

A3

Hay que garantizar [AF] en las entradas paralelo de AD = A1

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 17

NIVEL RT: DATOS Y CONTROL


CASO 1: Registros con entrada y salida separadas
1/ Con salida estndar D Solucin Multiplexada
0

D1

D0

Ejemplo, A3 A1
AD = A1

DEC
2:4 3
1
2
1
0
0

AF = A3; F1F0 = 1 1

1
A0

0
A1

0
A2

A3

[A3]
1
1

F1
F0

Dpto. Tecnologa Electrnica

1
0

n x MUX 4 : 1

EC

Nivel RT Datos y Control - 18

NIVEL RT: DATOS Y CONTROL


CASO 2: Registros con entrada y salida separadas
2/ Con salida 3-state D Solucin Bus (HI)
0

D1

D0

Ejemplo, A3 A1

DEC
2:4 3
1
2
1
0
0

1
1

F1
F0

DEC
2:4 0
1
1
2
0
3

0
0
0

Dpto. Tecnologa Electrnica

1
A0

0
A1

0
A2

A
R 3
n

[A3]

EC

Nivel RT Datos y Control - 19

NIVEL RT: DATOS Y CONTROL


CASO 3: Registros con terminales de entrada/salida
Terminal bidireccional D Solucin Bus (HI)
0

D1

D0

Ejemplo, A3 A1

DEC
2:4 3
1
2
1
0
0

1
A0

0
1
1

F1
F0

0
A1

0
A2

A
R 3

DEC
2:4 0
1
1
2
0
3

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 20

NIVEL RT: DATOS Y CONTROL


DISEO DE Data Path
Reg

Entradas

Reg

Reg

Salidas

Bloque de
Interconexin

Unidad
Funcional

Reg

COMPONENTES

Unidad
Funcional

El Data Path tiene que poder ejecutar todas las ops


La organizacin del Data Path puede ser de propsito:
Especfico: Para una tarea concreta (p. ej. sumador serie de pg. siguiente)
General: Para muchas tareas (p. ej. el computador simple que disearemos)
Estructura: nos centramos en Data Path sncronos disparados por flanco.

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 21

NIVEL RT: DATOS Y CONTROL


REGISTROS VISIBLES POR EL USUARIO

Registros visibles por el usuario: Aqullos que aparecen en la descripcin de las


macrooperaciones (instrucciones)

Los registros visibles son los nicos que el usuario necesita conocer.

Registros visibles de la calculadora (pg. 6): A y B.

Cuando se ejecuta una macrooperacin no debe modificarse el contenido de ningn


registro visible, a no ser que dicho registro aparezca como destino en una transferencia
de la descripcin de la macrooperacin.

Puede modificarse el contenido de cualquier registro no visible.

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 22

NIVEL RT: DATOS Y CONTROL


DATA PATH ESPECFICO: EJ. SUMADOR SERIE

Data Path

Din [n]

xr

WA
SRA

Pin
DA[n]

CD

D in
q

xr

WB
SRB

ai
Ci+1

Pin
DB[n]

Start

Dpto. Tecnologa Electrnica

CNT mod. n

Cy

bi

FA Ci
si

SRS

Cy

CL
UP

xr
SUM[n]

WA WB CL SRA SRB UP CD W SRS

Control Unit

EC

End

Nivel RT Datos y Control - 23

NIVEL RT: DATOS Y CONTROL


ORGANIZACIONES GENRICAS BASADAS EN ALU:
1. BUS SIMPLE
Ck
R1

Ck

Ck

R2

Rk
ALU

.
.
.

Ck

RT

Ck

ACC

Sumar R1 con R2 en Rk requiere varias ops:


1 RT R1
2 ACC RT + R2
3 Rk ACC

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 24

NIVEL RT: DATOS Y CONTROL


2. DOBLE BUS
B1
RT

.
.
.

Ck

Ck

R1

Ck

Ck

R2

Rk
ALU

B2

Sumar R1 con R2 en Rk requiere varias ops, pero menos:


1 RT R1
2 Rk RT + R2

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 25

NIVEL RT: DATOS Y CONTROL


3. TRIPLE BUS

ALU
Ck

R1

Ck

R2

Ck

Rk

Sumar R1 con R2 en Rk requiere slo 1 op:


Rk R1 + R2

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 26

NIVEL RT: DATOS Y CONTROL


METODOLOGA DE DISEO EN EL NIVEL RT (Top Down)
1/ Disear la Unidad/Ruta de Datos (Data Path)

Eleccin de una arquitectura bsica

Desarrollo de cada macro-operacin en una secuencia de micro-operaciones (Op):


Instruccin o macro-operacin: Ejecucin en varios ciclos de Clk
Micro-operacin: Una o ms primitivas RT que se ejecutan en solo ciclo de Clk
Nivel ISP
Nivel RT
Op RT1
Instruccin K

Cada macro-operacin

Este paso afecta y depende


de la Unidad de Datos

Op RT2

Secuencia de
micro-operaciones

Op RTN

Cambios en la arquitectura bsica de la unidad de datos para que ejecute todas las
micro-operaciones.

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 27

NIVEL RT: DATOS Y CONTROL


DISEO DE LA CALCULADORA
Descripcin de componentes
DB

Ejemplo: Registro A (B)

Todo de n bits
T

Estructural

WT

b
ab

RA
WA

Funcional

RB
WB

RAC
WAC
ZAC

UNIDAD DE PROCESADO

RA WA RB

s
r

[AC]
AC

RA
WA

WB WT

RA WA

V=

AA

V = HI

AV

V = DIN

AA

V = [A]

Prohibida

RAC WAC ZAC

(del controlador)

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 28

NIVEL RT: DATOS Y CONTROL


INSTRUCCIONES SECUENCIA DE MOPS
OP

T0

C0,

T1

B , CAC+T

T2

CAC+T

CAC-T

T3

OP

()+

()+

()

()

T0

C0,

T1

B , CAC-T

T2
T3

CAC+T
C

Dpto. Tecnologa Electrnica

CAC-T
C

EC

Nivel RT Datos y Control - 29

NIVEL RT: DATOS Y CONTROL


TAREAS PENDIENTES
Realizar los siguientes pasos de la Metodologa de diseo, que son:
2/ Describir formalmente el comportamiento de datos y de control
mediante un algoritmo
(algoritmo del flujo de datos y de control)

3/ Disear la Unidad de Control

Dpto. Tecnologa Electrnica

EC

Nivel RT Datos y Control - 30

EC: Sistemas digitales a nivel RT


REALIZACIN DE SISTEMAS DIGITALES A NIVEL RT
Contenido:
Diseo de sistemas digitales: organizacin Datos&Control; macro y micro-operaciones; componentes; lenguaje
RT; interconexin va buses; realizacin de la unidad de datos. Un ejemplo: calculadora; desarrollo de la calculadora a nivel RT.

Descripcin con cartas ASM: la construccin de cartas ASM; la carta de datos y la de


control.

Diseo de la unidad de control: mediante un biestable por estado.

El uso de la calculadora.

Manuel Valencia

Bibliografa bsica
**
**

C. Baena, I. Gmez, J.I. Escudero, M. Valencia: Sistemas Digitales. Servicio de publicaciones del Dpto.
Tecnologa Electrnica, 1997. Cap. 1 y 2
C. Baena, M.J. Bellido, A. J. Molina, M.P. Parra, M. Valencia: Problemas de Circuitos y Sistemas Digitales. Ed. McGraw-Hill Interamericana, 1997. Caps 11 y 12.

Dpto. Tecnologa Electrnica

EC

19/February/09

CARTAS ASM
CARTA ASM: DEFINICIONES
Caja de Estado
Camino de
entrada

Caja de Decisin
Camino de entrada

Smbolo
S de estado

Acciones

bbb
Cdigo binario

No

Condicin
Camino
de salida

Camino
de salida

Camino
de salida

Caja de Accin Condicional


Camino de entrada
Acciones

Uniones de caminos:

Camino de salida

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 2

CARTAS ASM
Bloque ASM
Un camino de entrada
Una y slo una
caja de estados

Carta ASM
Nmero variable
de cajas de decisin o
de accin condicional

Grafo orientado
y cerrado
que interconecta
bloques ASM

...
...
...
Nmero variable de caminos de salida
...

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 3

CARTAS ASM
Contador ascendente md. 8
Binario(G=0)/Gray(G=1)
Moore

z0
1

G
0
z1

G
0
z1 z0
G

0
z2
1

G
0
z2 z0
G

0
z2 z1
z2 z1 z0
G

1
0

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 4

CARTAS ASM
Contador ascendente md. 8
Binario(G=0)/Gray(G=1)
Moore

Mealy
z0
z1

z0
0
1

1
z0

G
0
z1

z1
0

G
0
z1 z0
G

z0
z2
1

1
z1

0
z2
z2 z0

0
z2 z0
G

1
z1

z2
0

0
z2 z1

z1

z0

z2 z1 z0
G

z2
1

z1 z0

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 5

CARTAS ASM
Mquina expendedora
Carta ASM

ESPECIFICACIN
R
s1
s0

A
C
CK

s1 s0

Moneda

0
0
1
1

Ninguna
1
2
5

0
1
0
1

0
5

11 s s 00
1 0

C, A

10

01

Producto de valor 4 .

Admite billete de 5 y monedas de 2 y 1 .

Con 5 da cambio (para ello, activa C=1).

Se accede al producto (para ello, activa A=1).

R causa directamente el retorno de las monedas (el controlador no tiene que activar C).

0
10 s s 00
1 0
01

00 s s = 00
1 0

0
01 s s 00
1 0
10

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 6

CARTAS ASM
Errores comunes en la construccin de cartas ASM
Cartas con error
Prximo estado
sin determinar

Cerrar lazos sin


cajas de estado
A

No garantizar la posibilidad lgica


de todos los caminos
A

1 x 0
C

A
0 x 1

1 y 0
A

xy

A
1

1
x 1 0 y

0 x 1

1 x 0
B

x+y

D
B

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 7

CARTAS ASM
Consideraciones temporales
SISTEMA

OPERACIN ASM: Datos y Control


A

RA
CONTROL

RA
WM
WN

SK

WM
M

WN

FORMAS DE ONDA

X 1

X 1

NA

SK+1
Ck
S

SK RA,WM

M
0

CK

DATOS

SK

SK-1

WN
SK+1

....

....

SK+1

X
RA

[A] = A0

WM
WN

Dpto. Tecnologa Electrnica

[M]

M0

M0

A0

[N]

N0

N0

A0

EC

Nivel RT Cartas ASM - 8

CARTAS ASM
Inicio y Fin de operacin
NOP

S0

XS
1
Carta ASM
del
ejemplo

SF

Dpto. Tecnologa Electrnica

Puede ser un
estado til o una
accin condicional

FIN

EC

Nivel RT Cartas ASM - 9

CARTAS ASM
Carta ASM de la Calculadora: de Datos
OP

IR2:0

q2q1q0=000

A A+B
A+B
A A -B
A -B
A -A+B
-A+B
A -A -B
-A -B

000
001
010
011
100
101
110
111

S1

q2q1q0=010

S2

B , CAC+T

CAC-T

IR1

CAC+T
q2q1q0=100

C
q2q1q0=101

EC

CAC-T

S4

CAC-T
C

IR2

S3

Si es AoB - A+B, en OP 2 se har CAC-T

Dpto. Tecnologa Electrnica

CAC+T

C0,
CAC+T

C0,

Xs
1

q2q1q0=001

q2q1q0=011

OP

S0

IR0

SF

Nivel RT Cartas ASM - 10

CARTAS ASM
Carta ASM de la Calculadora: de Control
q2q1q0=000

q2q1q0=000

S0
0

S0
0

Xs

Xs

q2q1q0=001

S1

q2q1q0=010

S2

C0,

CAC+T

ZAC, WT, RA

q2q1q0=010 S2

WAC, WT, RB
0

CAC-T

WAC
0

CAC-T
q2q1q0=100
IR0

1
r

RAC

S4

IR0

q2q1q0=101

EC

SF

1
WB

WA

SF

Dpto. Tecnologa Electrnica

IR1

S4
0

1
r

S3

IR1

IR2

q2q1q0=011

CAC+T

q2q1q0=101

S1

IR2

S3
0

q2q1q0=100

q2q1q0=001

B
0

q2q1q0=011

FIN

Nivel RT Cartas ASM - 11

CARTAS ASM
HDL bsico (FSMD:Finite State Machine with Data path)
FORMATO GENERAL:
Acciones

condiciones
op actual

f0(x)
f1(x)
... ... ...
fk(x)

T0/z0
T1/z1

N0
N1

Tk/zk

Nk

prxima op

CASOS PARTICULARES:
N

fi(x)

Ti/zi

[N+1]

Puede eliminarse la prxima OP si es N+1

NOP

Nk

Sin condicin es t (true); sin accin es NOP

f(x)
f(x)

T0/z0
T1/z1

N0
N1

Puede ponerse N IF f(x) THEN T0/z0 goto N0


ELSE T1/z1 goto N1

NOP

Nk

Puede ponerse N goto Nk

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 12

CARTAS ASM
RELACIN ENTRE CARTAS ASM Y HDL
Tipo Moore
M

4
Tipo Mealy

0
4

P
5

Dpto. Tecnologa Electrnica

EC

M/P

M/N

Nivel RT Cartas ASM - 13

CARTAS ASM
HDL de la Calculadora
q2q1q0=000

000

S0
0

Xs

000

Xs

001

001

ZAC/WT/RA

010

010

IR2

WT/RB/WAC/s

011

IR2

WT/RB/WAC/r

011

IR1

WAC/s

100

IR1

WAC/r

100

IR0

RAC/WA

101

IR0

RAC/WB

101

FIN

000

Xs
1

q2q1q0=001

S1

ZAC, WT, RA

q2q1q0=010 S2

WAC, WT, RB
0

IR2

1
r

q2q1q0=011

WAC

S3

011
0

IR1

q2q1q0=100

100

RAC

S4
0

IR0

1
WB

WA

101
q2q1q0=101

SF

FIN

Dpto. Tecnologa Electrnica

EC

Nivel RT Cartas ASM - 14

REALIZACIN DE SISTEMAS DIGITALES A NIVEL RT


D

Diseo de una calculadora: organizacin Datos&Control; macro y micro-operaciones; componentes; lenguaje RT; interconexin va buses; realizacin de la unidad de datos; desarrollo de la calculadora a nivel
RT.

Descripcin con cartas ASM: la construccin de cartas ASM; la carta de datos y la de control.

D Diseo de la unidad de control: mediante un biestable por estado.


D

El uso de la calculadora.

Bibliografa bsica
**
**

C. Baena, I. Gmez, J.I. Escudero, M. Valencia: Sistemas Digitales. Servicio de publicaciones del Dpto.
Tecnologa Electrnica, 1997. Cap. 1 y 2
C. Baena, M.J. Bellido, A. J. Molina, M.P. Parra, M. Valencia: Problemas de Circuitos y Sistemas Digitales. Ed. McGraw-Hill Interamericana, 1997. Caps 11 y 12.

Dpto. Tecnologa Electrnica

EC Sistemas Digitales a nivel RT

19/2/09

Manuel Valencia

Contenido:

UNIDAD DE CONTROL
Generalidades
Objetivo: Disear la Unidad de control
El punto de partida es el microprograma, bien como carta ASM, bien en HDL
Nuestro inters: automatizar proceso de diseo y lograr buen circuito.

Tcnicas:
CSS estndar, con biestables y puertas (Random logic): Proceso clsico para CSS
Con 1 biestable por estado
Control Microprogramado en ROM o PLA (firmware)

Comparacin:
Tcnica
CSS estndar
1 biestable por estado
Firmware

Dpto. Tecnologa Electrnica

Proceso diseo

Prestaciones

Repetibilidad

Complejo
Muy sencillo
Sencillo

Muy buenas
Buenas, pero mejorables
Regulares

Compleja
Algo compleja
Fcil

EC

Unidad de Control - 2

UNIDAD DE CONTROL
Calculadora: Carta ASM y HDL
CARTA ASM DE LA CALCULADORA
q2q1q0=000

HDL DE LA CALCULADORA
000

S0
0

Xs

000

Xs

001

001

ZAC/WT/RA

010

010

IR2

WT/RB/WAC/s

011

IR2

WT/RB/WAC/r

011

IR1

WAC/s

100

IR1

WAC/r

100

IR0

RAC/WA

101

IR0

RAC/WB

101

FIN

000

Xs
1

q2q1q0=001

S1

ZAC, WT, RA

q2q1q0=010 S2

WAC, WT, RB
0

IR2

1
r

q2q1q0=011

WAC

S3
0

IR1

q2q1q0=100

RAC

S4
0

IR0

WA

q2q1q0=101

011

100
1
WB

101

SF

Dpto. Tecnologa Electrnica

EC

Unidad de Control - 3

UNIDAD DE CONTROL
1 biestable por estado
Los estados tienen codificacin one-hot, salvo el de espera que tiene cdigo 00...0:
op
1
2
3
4

q1q2q3q4...
1 0 0 0...
0 1 0 0...
0 0 1 0...
0 0 0 1...

Una visin intuitiva: con xS se introduce un 1 en el biestable de op1 y ese 1 va circulando conforme se pasa de una op a otra
Se puede automatizar el paso desde carta ASM al circuito
m

m
Sk

ASM

0
v0

m
Circuito

D K

m0
1
v1

Clk

Dpto. Tecnologa Electrnica

m0

qk

>1
v

m1

v1

EC

mp
B

Sk

v0
v

m1

>1
B

mp

Unidad de Control - 4

UNIDAD DE CONTROL
CARTA ASM DE LA CALCULADORA

CONTROL CON 1 BIESTABLE POR ESTADO


>1

q5-q1=0...0

S0
0

Xs

>1
1

q1=1

S1

ZAC, WT, RA

q2=1

S2

WAC, WT, RB
0

IR2

WT
1
D q

2
D q

3
D q

Clk

WAC

S3
0

IR1

RA ZAC

RB

RAC
F(5)
D q

4
D q

FIN

IR2
q4=1

WAC

WAC

q3=1

Xs

WT WAC

WT

r s

IR1

r s

IR0 WBWA

RAC

S4

>1
0

IR0

r
WB

WA

>1
s
q5=1

SF

FIN

Dpto. Tecnologa Electrnica

EC

Unidad de Control - 5

UNIDAD DE CONTROL
Control microprogramado (firmware)
Unidad de control
ROM/PLA

f0(x) T0/z0
f1(x) T1/z1
... ... ...
fk(x) Tk/zk

Cualificadores
x

N0
N1

Salidas
Entradas

Instruccin genrica en HDL

Prxima
op

Salidas
de control

zk

Nk
Nk

N+
Reg

El valor de N y fk(x)
dan la direccin de
entrada en cuya palabra

N = [Reg]: actual op

estn escritas Nk y zk

Dpto. Tecnologa Electrnica

Comandos

Reg: Registro de carga en paralelo

EC

Unidad de Control - 6

UNIDAD DE CONTROL
CONTROL CON PLA

CARTA ASM DE LA CALCULADORA


q2q1q0=000

q2q1q0

S0

000
0

ZAC, WT, RA

q2q1q0=010

S2

WAC, WT, RB
0

IR2

000

Xs

NOP

001

Xsq2q1q0

001

ZAC/WT/RA

010

q2q1q0

010

IR2

WT/RB/WAC/s 011

IR2q2q1q0

Q1Q0, WT/RB/WAC/s

IR2

WT/RB/WAC/r 011

IR2q2q1q0

Q1Q0, WT/RB/WAC/r

IR1

WAC/s

100

IR1q2q1q0

Q2, WAC/s

IR1

WAC/r

100

IR1q2q1q0

Q2, WAC/r

IR0

RAC/WA

101

IR0q2q1q0

Q2Q0, RAC/WA

IR0

RAC/WB

101

IR0q2q1q0

Q2Q0, RAC/WB

FIN

000

q2q1q0

q2q1q0=011

011
IR1

Q1, ZAC/WT/RA

RAC

S4
0
WA

IR0

100
1
WB

101
q2q1q0=101

Q0

WAC

S3
0

q2q1q0=100

Salidas afectadas

NOP

1
S1

Trmino P

Xs

Xs

q2q1q0=001

Q2Q1Q0

SF

Dpto. Tecnologa Electrnica

EC

FIN

Unidad de Control - 7

UNIDAD DE CONTROL
PERSONALIZACIN DEL PLA
Trminos P Salidas afectadas (D=Q)
Xsq2q1q0
q2q1q0

Plano AND

Plano OR

Q0

Xsq2q1q0

Q1, ZAC/WT/RA

q2q1q0

IR2q2q1q0

Q1Q0, WT/RB/WAC/s

IR2q2q1q0

IR2q2q1q0

Q1Q0, WT/RB/WAC/r

IR2q2q1q0

IR1q2q1q0

Q2, WAC/s

IR1q2q1q0

IR1q2q1q0

Q2, WAC/r

IR0q2q1q0

Q2Q0, RAC/WA

IR0q2q1q0

Q2Q0, RAC/WB

q2q1q0

IR1q2q1q0
IR0q2q1q0
IR0q2q1q0
q2q1q0

FIN
Xs
IR2
IR1

0
D q

IR0

1
D q

2
D q

q1 q0
q2
Clk

Dpto. Tecnologa Electrnica

FIN WB

EC

ZAC
WT
RA
RB
WAC
s
r
RAC
WA

Unidad de Control - 8

UNIDAD DE CONTROL
DISEO CON ROM
A2A1A0 A3
q2q1q0

000

Salidas
Salidas

Xs

D2D1D0

IR2
IR1
IR0

Q2Q1Q0

Xs

000

Xs

001

001

ZAC/WT/RA

010

010

IR2 WT/RB/WAC/s 011

0
1
2
3
4
5
6
7

100

101

IR1 WAC/s

100

IR1 WAC/r

100

IR0 RAC/WA

101

IR0 RAC/WB

101

000

FIN

Dpto. Tecnologa Electrnica

E
3
2
1
0
Salidas [14]
D2D1D0

IR2 WT/RB/WAC/r 011


011

ROM 24x14

0
D q

1
D q

ZAC
WT
RA
RB
WAC
s
r
RAC
WA
WB
FIN

2
D q

Clk

Ejemplos de contenidos de la ROM:


{A3A2A1A0} {D2D1}{D0 ZAC WT RA} {RB WAC s r} {RAC WA WB FIN}

0000

00

0000

0000

0000

1000

00

1000

0000

0000

0001

01

0111

0000

0000

1001

01

0111

0000

0000

EC

Unidad de Control - 9

UNIDAD DE CONTROL
Contenidos de la ROM
$A={A3A2A1A0}

$H3={D2D1}
$H2={D0 ZAC WT RA}
$H1={RB WAC s r}
$H0={RAC WA WB FIN}

Dpto. Tecnologa Electrnica

$A

$H3H2H1H0

0000

1700

1AE0

2060

280C

0001

(0000)

(0000)

0800

1700

1AD0

2050

280A

0001

(0000)

(0000)

EC

(Ejemplos Anteriores)

(0000): No importa en este caso

Unidad de Control - 10

EC: Sistemas digitales a nivel RT


REALIZACIN DE SISTEMAS DIGITALES A NIVEL RT
Contenido:
Diseo de una calculadora: organizacin Datos&Control; macro y micro-operaciones; componentes; lenguaje RT; interconexin va buses; realizacin de la unidad de datos; desarrollo de la calculadora a nivel
RT.

Descripcin con cartas ASM: la construccin de cartas ASM; la carta de datos y la de control.

Diseo de la unidad de control: mediante un biestable por estado.

Manuel Valencia

D El uso de la calculadora.
Bibliografa bsica
**
**

C. Baena, I. Gmez, J.I. Escudero, M. Valencia: Sistemas Digitales. Servicio de publicaciones del Dpto.
Tecnologa Electrnica, 1997. Cap. 1 y 2
C. Baena, M.J. Bellido, A. J. Molina, M.P. Parra, M. Valencia: Problemas de Circuitos y Sistemas Digitales. Ed. McGraw-Hill Interamericana, 1997. Caps 11 y 12.

Dpto. Tecnologa Electrnica

EC

19 / February / 09

USO DE LA CALCULADORA
Problema a resolver con la Calculadora:

Calcular 3A-B y poner el resultado en A

Programa a ejecutar:
Valores en A/B
A
B
Valores iniciales:

A0

B0

Instruccin 1 : B A-B

A0

A0-B0

Instruccin 2 : B A+B

A0

2A0-B0

Instruccin 3 : A A+B

Dpto. Tecnologa Electrnica

3A0-B0

EC

2A0-B0

Nivel RT Uso de la calculadora- 2

USO DE LA CALCULADORA

Funcionamiento operativo de este sistema: Modo Calculadora


X Alguien pone IR=011 ( A - B )
$ Alguien da :

XS

y espera a que se active FIN

Y Alguien pone IR=001 ( A + B )


$ Alguien da:

XS

y espera a que se active FIN

Z Alguien pone IR=000 ( A + B )


$ Alguien da:

XS

y espera a que se active FIN

Problemas de funcionamiento del Modo Calculadora:

No hay programa almacenado (X, Y, Z)

Hay que generar la orden XS ($)

Solucin a estos problemas en el Modo Computador de operacin (Tema prximo)

Dpto. Tecnologa Electrnica

EC

Nivel RT Uso de la calculadora- 3

S-ar putea să vă placă și