Documentos de Académico
Documentos de Profesional
Documentos de Cultura
1 REGISTROS
Elena Valderrama
Universidad Autnoma de Barcelona
6 .1
1. Registros
S
D
in0
S
D
....
(n)
......
Q
_
Q
in 0
Reg n bits
S
Q
_
Q
Reset
Load
S
Q
_
Q
Q
_
Q
in1
....
inn-3
inn-2
inn-1
inn-1 inn-2
outn-1 outn-2
out1 out0
In (n-1,0)
Load
Reset
out0
outn-3
outn-2
outn-1
Reset
Load
Reg n bits
Out (n-1,0)
6 .1
1. Registros
Salida OE (Output Enable): Permite la conexin directa a un bus
....
Reset
Load
Registro n bits
....
Bus n bits
6 .1
2. Registros de desplazamiento
in
Los registros de desplazamiento (shift registers) son registros que permiten desplazar su
contenido hacia la derecha o hacia la izquierda en cada pulso de reloj.
Serial in
S
D
S
D
R
....
Q
_
Q
R
Reset
CK
S
D
Q
_
Q
Q
_
Q
Q
_
Q
(n)
out1 out0
Shift
CK
Reset
out0
Outn-3
Outn-2
Outn-1
Serial in
Reset
CK
Out (n-1,0)
6 .1
0
1
S
D
0
1
S
D
S
D
S
D
S
D
Q
_
Q
0
1
Q
_
Q
0
1
Q
_
Q
0
1
Q
_
Q
Q
_
Q
CK
Shift
out0
out1
Out2
Out3
Out4
Reset
6 .1
6 .1
2. En funcin del tipo de entrada. Los chips comerciales suelen llevar ambas salidas, la
serie y la paralelo incorporadas:
a)
b)
Entrada serie
Entrada paralela
inn-3
inn-2
inn-1
Carga sncrona
L/S: Load/Shift
D/C
L/S
S
D
S
D
R
0
1
S
D
Q
_
Q
R
0
1
.....
S
D
Q
_
Q
Q
_
Q
0
1
Q
_
Q
Serial
out
CK
Shift
Reset
6 .1
Seal PL (Parallel Load): Los bits de entrada se cargan en el registro con independencia
de la seal de reloj. Seal de carga asncrona.
Seal CE (Clock Enable): Cuando est activa, permite que la seal de reloj llegue al
circuito. Si est desactivada, el circuito queda parado.
Las seales OE (Output Enable): Ya vista. Cuando est desactivada, las salidas de datos
estn en alta impedancia.
Carga sncrona:
....
Reset
PL or L/S
CE
CK
Serial_Out
Registro de desplazamiento
L/S: Load/Shift
Carga asncrona:
PL
....
6 .1
Pregunta 1
En el circuito de desplazamiento que se muestra en la figura:
Cuando la seal L/S est configurada en modo L
(Load), los datos inn-1,,in1,in0 se cargan en los flipflops inmediatamente
Cuando la seal L/S est configurada en modo L
(Load), los datos inn-1,,in1,in0 se cargan en los flipflops en el siguiente flanco de reloj
El contenido de los flip-flops se desplaza una posicin a
la derecha cada vez que se recibe un flanco de la seal
CK, independientemente del valor que tenga la seal
L/S
....
Reset
L/S
CE
CK
Registro de desplazamiento
(derecha)
Serial_Out
....
6 .1
Pregunta 2
En el circuito de desplazamiento que se muestra en la figura:
Cuando la seal PL est activa, los datos inn-1,,in1,in0
se cargan en los flip-flops inmediatamente
PL
CE
CK
....
Registro de desplazamiento
(derecha)
Serial_Out
....
10
6 .1
CANAL DE TRANSMISIN
SR entrada
serie/salida paralela
SR entrada paralelo/salida
serie
Origen
Destino
11
6 .1
in
D
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
CK
out
12
6 .1
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
in2
0011
out
in3
1000
Q
_
Q
Q
_
Q
Q
_
Q
Q
_
Q
1026
CK
13
6 .1
RESUMEN
1. Registros: Almacenan n bits de informacin. Bloques fundamentales en los
computadores.
2. Registros de desplazamiento. Tipos y usos ms frecuentes.
14
6 .2 CONTADORES
Elena Valderrama
Universidad Autnoma de Barcelona
1. Contadores
6 .2
Tipos:
Contador binario ascendente. P.e., para n=3, (000, 001, 010, 011, 100, 101, 110, 111).
Contador binario descendente. P.e., para n=3, (111, 110, 101, 100, 011, 010, 001, 000).
Contador BCD (4 bits). (0000, 0001, 0010, 0011, 0100, 0101, 0110, 0111, 1000, 1001)
Contador Gray. P.e., para n=3, (000, 010, 110, 100, 101, 111, 011, 001)
Contadores bidireccionales,
16
1. Contadores
6 .2
Est siguiente
q0
q1
q2
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
0
0
0
17
6 .2
1. Contadores
Ejemplo: Contador binario ascendente de 3 bits
(000, 001, 010, 011, 100, 101, 110, 111)
Est. actual
q0 q 1 q 2
0 0 0
0 0 1
0 1 0
0 1 1
1 0 0
1 0 1
1 1 0
1 1 1
Est siguiente
q0
q1
q2
0
0
1
0
1
0
0
1
1
1
0
0
1
0
1
1
1
0
1
1
1
0
0
0
D0
S
D
Q
_
Q
>CP
q0
D1
S
D
>CP
Q
_
Q
D2
q1
S
D
CP
>
Q
_
Q
q2
CK
Reset
q0
q1
q2
18
6 .2
1. Contadores
Ejemplo: Contador binario ascendente de 3 bits
(000, 001, 010, 011, 100, 101, 110, 111)
Incrementador (+1)
n
Reset
Load
Registro 3 bits
out
19
6 .2
1. Contadores
Seal INC (Increment): El contador incrementa su estado a cada pulso de la seal INC.
Seal OE (Output Enable).
Seal CE (Count Enable) = Clock Enable
Seal TC (Terminal Count): TC=1 cuando el contador ha llegado a su valor mximo. Sirve para
conectar contadores en serie.
Reset
CE
INC
Contador de n bits
TC
20
6 .2
Pregunta 1
Los mdulos que se muestran en la figura son contadores binarios ascendentes de 4 bits.
Cada uno de ellos, en el ciclo de reloj en que su estado alcanza el valor 1111 generan una
seal TC=1. El circuito formado por los dos contadores:
o Cuenta de 0 a 31
Reset
o Cuenta de 0 a 63
CE
INC
>
CONT 4bits
TC
CE
>
INC
CONT 4bits
TC
o Cuenta de 0 a 127
o Cuenta de 0 a 255
q0 q1 q2 q3
q4 q5 q6 q7
21
6 .2
2. Contadores bidireccionales
Incrementa o decrementa su valor dependiendo de la seal U/D (Up/Down)
000
U/D=1
U/D
Reset
U/D=1
001
U/D=1
U/D=0
CE
INC/DEC
Contador de n bits
TC
U/D=0
010
U/D=0
U/D=1
U/D=1
U/D=0
111
U/D=0
22
6 .2
Reset
Load
,
.
INC
Contador de n bits
TC
....
23
6 .2
Gnd
Reset
Reset
PL or L/C
Contador de n bits
TC
INC
Load
Contador de n bits
TC
INC
....
....
24
6 .2
25
6 .2
26
6 .2
3. Divisores de frecuencia
Construir un circuito que a partir de una seal de reloj de frecuencia f genere una
nueva seal de reloj de frecuencia f/4
27
6 .2
Pregunta 2
El mdulo que se muestra en la figura es un contador binario ascendente de 4 bits. CK1 es una
seal de reloj frecuencia igual a 256KHz. En el ciclo de reloj en el que alcanza el valor 1111, el
contador genera una seal TC=1. Si se desea utilizar la salida TC como seal de reloj (CK2), cul
ser la frecuencia de dicho reloj?
o 16 Hz.
o 1 KHz.
Reset
CK1
>
CONT 4bits
TC (CK2)
o 16 KHz
o Ninguna de las anteriores
q0 q1 q2 q3
28
6 .2
4. Generadores de secuencias
a) Construir un circuito que genere la secuencia 10010101
b) Idem la secuencia 100101
29
6 .2
4. Generadores de secuencias
a) Construir un circuito que genere la secuencia 10010101
b) Idem la secuencia 100101
30
6 .2
RESUMEN
1. Hemos visto los contadores, bloques secuenciales sin entrada de datos y cuyas salidas
son los propios estados de los biestables, que aumentan el valor de su estado en 1
cada vez que detectan un flanco en la seal de reloj (o equivalente)
2. Tipos y usos ms frecuentes.
31
6 .2
32
6 .3 MEMORIAS
Elena Valderrama
Universidad Autnoma de Barcelona
1. Memorias
6 .3
34
6 .3
1. Memorias
a1
a0
Decodificador de direcciones
Bus de direcciones
lneas de
palabra
lneas
de
bit
2
A todas
las
celdas
Circuitera de lectura/escritura
d5
d4
d3
d2
Bus de datos
d1
R/W
d0
35
6 .3
1. Memorias: Tipos
Memorias
Voltiles
No voltiles
Lectura
/escritura
DRAM
Lectura + escritura en
condiciones especiales
SRAM
EPROM
flash
Solo lectura
ROM por
mscara
OTP ROM
EEPROM
36
6 .3
Storage
permanence
1. Memorias: Tipos
Mask-programmed ROM
OTP ROM
Ideal memory
In-system
programmable
Life of product
EPROM EEPROM
Tens of years
Battery life
(10 years)
Nonvolatile
FLASH
NVRAM
SRAM/DRAM
Near zero
During
External
External
External
External
fast
fabrication programmer, programmer, programmer programmer In-system,
writes,
OR in-system, OR in-system,
only
one time only
1.000s
block-oriented
unlimited
1.000s
of cycles
Writes.
cycles
of cycles
1.000s of cycles
Write
ability
37
2. Memorias RAM
Memorias voltiles que permiten lectura y escritura
RAMs estticas (SRAM)
RAMs dinmicas (DRAM)
R/W
D
<
a0
lneas
de
bit
Celda SRAM
Lnea de palabra
Lnea de bit
a1
Decodificador de direcciones
Bus de direcciones
lneas de
palabra
Q
Q
Lnea de bit
6 .3
2
A todas
las
celdas
Circuitera de lectura/escritura
Celda DRAM
R/W
Lnea de palabra
d5
d4
d3
d2
Bus de datos
d1
d0
38
6 .3
a0
Decodificador de direcciones
a1
lneas
de
bit
R/W
D
<
Bus de direcciones
lneas de
palabra
Q
Q
Lnea de bit
2
A todas
las
celdas
Circuitera de lectura/escritura
d5
d4
d3
d2
d1
R/W
L/E:
1. Si L: Datos en Bus de datos
2. Direccin en Bus de direcciones
3. R/W=1 si L; R/W=0 si E
Lnea de palabra
d0
Bus de datos
Chips de hasta 64Mbits (no confundir el tamao del chip con el tamao de un banco de memoria)
Tiempos de L/E tpicos en el rango de 10-100ns. (depende del tamao)
Menor consumo que las DRAM (salvo a frecuencias muy altas)
39
6 .3
Lnea de bit
Lnea de bit
Pre-carga +
comparador
R/W
Circuitera de lectura/escritura y
refresco
R/W
Lnea de palabra
Bus de datos
di
Requiere refresco
La lectura es destructiva
Chips de hasta 2 Gbits (tamao del chip tamao del banco de memoria)
Ms lenta que la SRAM debido a los refrescos
Mayor consumo, en general, que las DRAM
40
6 .3
2. Memorias ROM
Estudiadas en la leccin 1.3 (semana 1)
La informacin viene de fbrica (ROM por mscara), o la introduce una nica vez el usuario
(OTP ROM: One Time Programmable ROM)
a1
a0
Decodificador de direcciones
Bus de direcciones
lneas de palabra
lneas de bit
0
1
2
Circuitera de lectura
d5
d4
d3
d2
Bus de datos
d1
d0
41
3. Memorias PROM
6 .3
Flash memories
Evolucin de las EEPROM en las que el borrado y la carga se realizan por bloques, optimizando el HW
La circuitera necesaria para la carga se integra dentro del chip
Uso en pens, cmaras digitales, celulares, alternativas al disco duro (SSD)
42
Pregunta 1
6 .3
43
6 .3
4. Banco de memoria
R/W ME
256 x 4
1.024 x 8
OE
A
(10)
OE
D
(8)
A
(8)
D
(4)
44
6 .3
4. Banco de memoria
EJEMPLO:
direcciones
MEMORY MAPPING
a9
0
0
0
0
0
0
1
1
1
1
1
a8
0
0
0
1
1
1
0
0
0
1
1
1
a7 a6 a5 a4 a3 a2 a1 a0
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 1
1 1 1 1 1 1 1 1
bits
2 1
Chip 1
R/W ME
Chip 2
256 x 4
OE
Chip 3
A
(8)
D
(4)
Chip 4
45
6 .3
4. Banco de memoria
EJEMPLO:
46
6 .3
4. Banco de memoria
EJEMPLO:
Chip 1
Chip 2
Chip 3
Chip 4
d7d6d5d4
Chip 5
Chip 6
Chip 7
Chip 8
d3d2d1d0
47
Pregunta 2
6 .3
Cuntos bloques de memoria de 256x4 bits son necesarios para construir un banco de
memoria de 1Mx4 bits?
o 2
o 4
o 8
o 16
48
Pregunta 3
6 .3
Cuntos bloques de memoria de 256x4 bits son necesarios para construir un banco de memoria
de 256x64 bits?
o 2
o 4
o 8
o 16
49
6 .3
RESUMEN
1. Hemos visto los parmetros que definen los distintos tipos de memorias:
Volatilidad, permanencia de la informacin y nmero de ciclos de L/E que admite el
chip.
2. Hemos estudiado que las memorias se organizan en palabras y se identifican por una
direccin.
3. Hemos conocido los tipos de memoria de uso ms frecuente (SRAM, DRAM, ROM,
EPROM, EEPROM y flash)
4. Hemos aprendido el concepto de banco de memoria con un ejemplo.
50