Tema 2
REALIZACIÓN DE SISTEMAS
DIGITALES A NIVEL RT
1-0
Índice y bibliografía
- Componentes y arquitectura. Circuitos frente a sistemas.
- El nivel de transferencia entre registros (RT).
- Técnicas de interconexión mediante buses.
- Realización de sistemas digitales
- Cartas ASM (Algorithmic State Machine)
- El diseño de la unidad de control
- Aproximación formal: un biestable por estado
- Introducción al control microprogramado
- El uso del sistema del ejemplo
[Baen97b], Caps. 1 y 2.
C. Baena, I. Gómez, J. Escudero, M. Valencia: “Sistemas Digitales”. Servicio
de Publicaciones del Departamento de Tecnología Electrónica, 1997.
1-2
Componentes y arquitectura. Circuitos frente a sistemas.
CIRCUITOS
Información
SISTEMAS
0, 1
Palabras de datos
Nivel/Lenguaje
De conmutación
Funcionalidad
Máquina de estados finitos
Operaciones (instrucciones)
Componentes
Puertas y biestables
MUX, ALU, ..., registros, ...
Conexión
Organización
Líneas (cables)
Buses
Combinacional y
almacenamiento (memoria)
Procesado de datos
y control
x1
Circuito
Combinacional
xn
RT (Register Transfer)
XIN
z1
zk
Unidad de
Control
reloj
X
y1
yr
B1
DIN
Br
ZOUT
Z
Unidad de
Procesado
DOUT
X : cualificadores o entradas de control
Z : comandos o salidas de control
D: datos
reloj
1-3
El nivel de transferencia entre registros (RT)
REGISTRO: Unidad básica de almacenamiento de datos.
• Representación estructural
DIN
n
⇓
s1
s : entradas de selección o
control de operación
Dxx: terminales de datos
R[n]
sm
n
⇓
D
Reloj
OUT
• Representación de datos.
n-1
1
0
• R : nombre del registro.
• [R], R : dato almacenado.
• R[i-j,k]=Ri-j,k : datos de los bits i al j y el k.
7
6
5
4
3
2
1
0
R
R7,4-2,0
• Representación funcional.
Operación
Descripción
Notación RT
Escritura en R
cambio del dato almacenado
(operación de tipo secuencial)
R← nuevo dato
Lectura de R
salida de la información almacenada
(operación de tipo combinacional)
Dout = dato
actual
Control
establece bajo que condiciones se realizan las otras operaciones
(las condiciones se expresan mediante
una función combinacional, f)
f(s): operación
1-4
El nivel de transferencia entre registros (RT)
EJEMPLOS DE OPERACIÓN: Notación RT.
• De escritura
Operación
Notación RT
Carga en paralelo
A ← D IN
Desplazamiento a izqda
A ← SHL(A,DL)
Desplazamiento a dcha
A ← SHR(A,D R)
Incremento
A←A+1
Decremento
A←A-1
Puesta a 0
A←0
Puesta a 1
A←1
Inhibición (NOP)
A←A
• De lectura
Operación
Tipo
Notación RT
Incondicional
Dout = [ A ]
R = 1: Dout = [ A ]
Lectura del dato
almacenado
Condicional
Función del dato
Habitualmente
incondicional
R = 0: Dout = HI
Función cero: Z = 0 sii [ A ] = 0
Función carry: Cy = 1 sii [ A ] =11...11
...
1-5
El nivel de transferencia entre registros (RT)
• Registro de n bits universal
DR
W
SR
SL
CK
W SR SL
DIN
...
n-1 . . . 1 0
A[n]
n-1 . . . 1 0
...
DOUT
DL
Escritura en A
Lectura de A
0
0
0
A←A
Inhibición
1
0
0
A ← DIN
Carga en paralelo
0
1
0
A ← SHR(A,DR)
Desplazamiento a la derecha
0
0
1
A ← SHL(A,DL)
Desplazamiento a la izquierda
Otras
DOUT = [A]
Prohibidas
DR
S1
S0
CK
S1 S0
D IN
...
n-1 . . . 1 0
A[n]
n-1 . . . 1 0
...
D OUT
DL
Escritura en A
Lectura de A
0
0
A←A
Inhibición
0
1
A ← DIN
Carga en paralelo
1
0
A ← SHR(A,DR)
Desplazamiento a la derecha
1
1
A ← SHL(A,DL)
Desplazamiento a la izquierda
1-6
D OUT = [A]
El nivel de transferencia entre registros (RT)
• RAM comercial: RAM 2114
A9:0
10
CS
R/W
CS R/W
RAM
1K×4
4
D3:0
2114
RAM
D3-0
Comentarios
1
-
RAM ← RAM
HI
0
1
RAM ← RAM
[RAM(A)]
Lectura
0
0
RAM(A) ← D
D3-0
Escritura
1-7
-
El nivel de transferencia entre registros (RT)
TIPOS DE TRANSFERENCIAS ENTRE REGISTROS
• Varios registros
- De movimiento de datos:
A←B
- Aritméticas:
A←B+C
A←A-B-1
- Lógicas:
A←B⊕C
A←C
• Sobre un registro
- Desplazamiento
- Cuenta
- Puesta a 0
- Puesta a 1
• Ejemplos
X1: A ← B
X3: A ← A - B - 1
B
X1
W
a
B
A
ALU
a *b
b
X2: A ←B ⊕ C
R
W
control
C.C.
C
B
X3
=1
X4: A ← A + 1
X2
W
X4
A
1-8
I
A
A
El nivel de transferencia entre registros (RT)
Ck
A←B+C
RT anterior
RT posterior
RB
WA
Salidas de B
HI
Salidas de C
24
Salidas de G
???
A
72
24
72+24 = 96
F1
F1
X2: A ←B ⊕ C
R
C
B
=1
X2
W
A
1-9
HI
24
???
96
El nivel de transferencia entre registros (RT)
TRANSFERENCIAS ENTRE REGISTROS
• Generalización:
f(x): A ← G(B, C, ...)
• Requisitos:
- Estructurales:
registros
combinacionales
de conexión
- Funcionales:
de control, f(x)
de procesado de datos G(B,C, ...)
de escritura en A
• Organización:
Unidad de datos
Control
RB
- Evalúa f(x)
x
R
- Genera señales
de control
B
nb
C
Circuito
combinacional
que realiza
na
nc
- Establece
secuencia de RT W
A
...
G (B, C, ...)
W
CK
1-10
A
Técnicas de interconexión mediante buses
TIPOS DE BUSES
• BUS: Conjunto de líneas de conexión entre dispositivos que se utiliza
para transmitir información
{
...
BUS
n
B0
B1
B[n] = B0:n-1
n
Bn-1
Bidireccionales
Unidireccionales
registro
fuente
registro
destino1
registro 2
registro 1
n
n
Compartidos
...
...
registro
destino2
n
Dedicados
n
1-11
Técnicas de interconexión mediante buses
CONEXIÓN DE LECTURA DE BUS (ESCRITURA EN A)
• Un único bus:
BUS: B n-1:0
n
A
W
n
• Varios buses:
n
n
n
0
1
2
...
...
BUS0: B0n-1:0
BUS1: B1n-1:0
BUS2: B2n-1:0
A
n
líneas de selección
1-12
W
Técnicas de interconexión mediante buses
CONEXIÓN DE ESCRITURA EN BUS (LECTURA DE A)
• Buses unidireccionales:
Un único bus
Varios buses
BUS0 BUS1BUS2
n
n
A
n
0
1
2
n
...
A
n
líneas de selección
Un único bus (necesaria HI)
n
A
n
n
B
n
• Buses bidireccionales:
n
A1
WA1 RA1
n
n
A2
n
A3
WA2 RA2
1-13
WA3 RA3
...
n
n
Realización de Sistemas Digitales
METODOLOGÍA: Se ilustrará mediante un ejemplo
• Especificación:
“un sistema capaz de realizar cualquier posibilidad de suma o resta
entre dos datos y de almacenar el resultado en el registro que
ocupaba uno de ellos”
IR2 IR1 IR0
operación
000
001
010
011
100
101
110
111
A←A+B
B←A+B
A←A-B
B←A-B
A←-A+B
B←-A+B
A←-A-B
B←-A-B
• Organización:
Xs
IR 2-0
unidad
de
control
unidad de
procesado
Fin
A
B
• Pasos a seguir:
- proponer una arquitectura capaz de ejecutar las operaciones (instrucciones) de la especificación
- describir dicha arquitectura correctamente:
- todos los componentes a nivel estructural
- todos los componentes a nivel funcional
- descomponer las macrooperaciones (instrucciones) en microoperaciones
para la arquitectura propuesta
1-14