Professional Documents
Culture Documents
com
EDIG
Carpeta
Montero
EDIG
Teora
~j
www.monteroespinosa.es
Clases de EDIG
PROGRAMA DE LA ASIGNATURA
EDIG
1. Codificacin de la Informacin
Introduccin Electrnica Digital. Abstraccin digital (analgico vs. digital). Sistemas de
numeracin. Representacin nmeros negativos. lgebra de Boole. Axiomas. Operadores
bsicos. Tabla de Verdad. Puertas Lgicas simples y complejas. Mapas de Karnaugh.
3. Circuitos combinacionales
Multiplexores. Interconexin de varios MUX. Implementacin de funciones con MUX.
Codificadores y Decodificadores. Interconexin de varios codificadores. Comparadores.
Sumadores. Memorias no voltiles.
4. Circuitos secuenciales
Elemento biestable bsico. Bscula Set-Reset. Biestables activos por nivel (latch).
Biestables activos por flanco de CLK (flip-flops): tipo-D, po J-K y tipo-T. Temporizacin.
Registros de almacenamiento. Contadores. Registros de desplazamiento.
)"
'---
~--)
--------------~------------------~----------------------------------------
(~.
Los smbolos
numricos con los que
ms familiarizados
estamos en la
actualidad se conocen
como dgitos
arbigos, ya que se
desarrollaron en la
cultura rabe medieval.
Como ya sabemos,
son:
1,2,3,4,5,6,7,8,9 Y o
Un sistema de numeracin se defme por sus smbolos bsicos, llamados dgitos cifras, y
las formas de combinar los mismos para representar toda la gama de nmeros que
requerimos.
Decimos que nuestra notacin de los nmeros es posicional, puesto que cada dgito de un
nmero tiene un valor fijo determinado por su posicin. Este valor viene dado por el dgito,
multiplicado por una potencia de la base de numeracin (con su posicin como
exponente, empezando por cero).
As, un nmero "N" se representa en base "b" como " ... d7d6dsd4d3d2d" donde "d" son los
dgitos.
(\ ).
Los sistemas ms habituales son el decimal (base 10), el binario (base 2), el octal (base 8)
y el hexadecimal (base 16) de los que se presentan los primeros valores en la siguiente
tabla:
'-j
Decimal
Binario
Octal
Hexadecimal
1
2
3
4
5
6
7
1
10
11
100
101
110
111
1000
1001
1010
1011
1100
1101
1110
1111
1
2
3
4
5
6
7
10
11
12
13
14
15
16
17
1
2
3
4
5
6
7
8
9
l~
10
11
12
13
14
15
1.1.1
Bit = "Binary Digit"
Los tamaos de
palabra normalmente
son potencias de 2.
8
9
A
8
e
D
E
F
Como veremos en epgrafes posteriores, los sistemas digitales trabajan con numeracin
binari, en la que a cada dgito lo llamaremos bit. Un aspecto importante de estos sistemas
es que slo pueden manejar nmeros con una cantidad fija de dgitos n. As, por ejemplo,
los computadores tienen un tamao de palabra especfico, que es la longitud (nmero de
bits) de los nmeros binarios procesados por las instrucciones internas del computador.
T-1.1
El subndice indica en
qu base est el
nmero
Octal: basta con agrupar los digitos binarios de tres en tres empezando por la derecha y
sustituir cada tema por el digito octal correspondiente (ver tabla de la pgina anterior).
Si el nmero de dgitos binarios no es multiplo de tres rellenamos con ceros por la
izquierda.
1011101100h
Ejemplo:
-+
2731 8
Hexadecimal: basta con agrupar los digitos binarios de cuatro en cuatro empezando
por la derecha y sustituir cada grupo por el digito hexadecimal correspondiente (ver
tabla de la pgina anterior). Si el nmero de dgitos binarios no es multiplo de cuatro
rellenamos con ceros por la izquierda.
10111011001 2
Ejemplo:
-+
Decimal: multiplicamos cada dgito binario por 2 elevado a la posicin que ocupa.
Tras ello sumamos todo y sale el nmero en decimal
Ejemplo:
1011101100h = 1 . 210 + O . 29 + 1 . 2 8 + 1 . 27 + 1 . 26 + O . 2 5 +
+ 1 . 24 + 1 . 23 + 1 . 22 + O . 21 + 1 . 2
1497 10
De octal a:
-+
Binario: basta con sustituir los digitos en octal por los tres digitos equivalentes en
binario (ver tabla de la pgina anterior).
12348
Ejemplo:
-+
-+
12348
001 0100111002
0010 100111002
29C 16
Decimal: multiplicamos cada dgito octal por S elevado a la posicin que ocupa. Tras
ello sumamos todo y sale el nmero en decimal
12342 = 1 . S3 + 2 . S2 + 3 . SI + 4 . SO
Ejemplo:
66S 1O
De hexadecimal a:
-+
Binario: basta con sustituir los digitos en hexadecimal por los cuatro digitos
equivalentes en binario (ver tabla, de la pgina anterior).
Ejemplo:
-+
-+
CODE 16
11000000110111102
011110 2 = 140336 8
T-1.2
~-_/
De decimal a:
~
Binario: Se va dividiendo el dgito en decimal entre 2 tantas veces como sea posible
(divisin entera, sin decimales) y nos vamos quedando con el resto que sobra en cada
divisin (que siempre ser O 1). Esos restos ordenados del ltimo al primero forman
el nmero binario:
Ejemplo:
Octal: Se va dividiendo el dgito en decimal entre 8 tantas veces como sea posible
(divisin entera, sin decimales) y nos vamos quedando con el resto que sobra en cada
divisin (que esta-r siempre entre Oy 7). Esos restos ordenados del ltimo al primero
forman el nmero octal:
Ejemplo:
l_)
108 10 = 6C 16
T-1.3
1.3.1
Usando el
complemento a 1, el "O"
se puede representar
tanto 00000000 como
11111111 (en este
ejemplo, trabajando
con 8 bits).
1.3.2
Complemento a uno
0101010lz = 85 10
101010102 == -85 10
Complemento a dos
!)
.
El rango de valores que se pueden representar con n bits es - 2n- 1 :::s nmero :::s (2n- 1 - 1).
Ejemplo:
0101010lz
1010101lz
= 85 10
= -85 10
-8
-7
-6
-5
-4
Recuerda que el bit
ms significativo nos da
la informacin relativa
al signo del nmero.
-3
-2
-1
O
1
2
3
4
5
6
7
Complemento
a dos
. Complemento
a uno
1000
1001
1010
1011
1100
1101
1110
1111
0000
0001
0010
0011
0100
0101
0110
0111
1000
1001
1010
1011
1100
1101
1110
1111 0000
0001
0010
0011
0100
0101
0110
0111
T-1.4
~fu~fYlO~
0.;,
.e-V\ 'Yll~(O'. lO \0
\O~ \ de... C:;~10 ~\,~vo ~'-\.o-\-o-l---'ol
-b
'1\1<-
~~\e.Wle(l\aIYlcr;S
0-'\
0\0\0
~ (a.Wl\o(a..moS c.erc )
~?C>r-
Ll.t\Cf'::>
~ L.I-iII.d.>
'. \
o \0
~ SU.~a.VV1OS
li
\:
r-\
-\o-~-'o-l
\"otO\<bJ
-!)
~e.c.~.
~c\ )es~ho?=6t\.-t.VO.
--l>
%\0
-'b
\\o\.to\
CL
t-e1.;:ncS.
~ ~ e\'"'a.t"\o
o-.
'<:se...c(~. \+ te) I
~ CoMp\.et'l'\et1 \o.n'tos.
-b
~Ct-SO-WlO':::>
Cl-:z...!
*"
6 e....\oir)a, ~
~ ~l"evYlOS
~ <Q,.~;'\
0\00 \
0\ 0\ O
O-
e-c..lVna\
\= \0 I
BCD "Binary-coded
decimal"
BCD no es ms que el
sistema decimal, con
cada dgito codificado
en binario.
La correspondencia
entre cada dgito
decimal y su
representacin en BCD
la tienes en la tabla del
final de este epgrafe
1.4.1
Hasta ahora hemos supuesto que los nmeros decimales se traducen a binario para ser
procesados por circuitos digitales. Un mtodo alternativo es codificar los dgitos decimales
en forma binaria, manteniendo su notacin posicional. Estos nmeros se denominan .
nmeros decimales codificados en binario.
La forma de conversin es muy sencilla:
Un nmero decimal sin signo N IO = dn_Idn_2 ...dldo se convierte a la forma BCD
estableciendo la correspondencia de cada dgito di a un nmero binario de cuatro bits B.
Ejemplo:
Si tenemos el nmero decimal N IO = 710910 , el proceso de conversin a BCD es:
N IO = 7
Observa que el
/ subndice del resultado
'-' es 10, para representar
que, efectivamente, no
est representado en
binario, sino en BCD.
1
~
O 9 = 0111000100001001 10
~~
N IO = 001110000100100100000101 = 38490510
~~~'----v--"--v-'
1.4.2
c)
Es importante recordar
que en este sistema
contamos las
posiciones desde la
izquierda, empezando
por cero.
Observa que no se
utilizan las
combinaciones
comprendidas entre
1010 Y 1111, inclusive.
l-de-l0
Este sistema consiste simplemente en codificar cada dgito decimal como una palabra
binaria de lO bits. En esta, todos los bits estn puestos a cero excepto aquel que ocupa la
posicin coincidente con el valor del dgito decimal representado.
As, por ejemplo, el dgito decimal O estar representado por '1000000000', y el decimal 7,
corresponder al '0000000100'. Todas las correspondencias entre dgitos puedes
encontrarlas en la tabla adjunta.
Dgito decimal
BCD
1-de-10
0000
1000000000
0001
0100000000
0010
0010000000
0011
0001000000
4
5
6
7
8
9
0100
0000100000
0101
0000010000
0110
0000001000
0111
0000000100
1000
0000000010
1001
0000000001
G!
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619 142355
T-1.5
1.4.3
L
L
L
L
L
L
L
H
L
L
L
L
H
H
L
H
L
L
L
H
H
L
L
H
H
ot~
L
L
L
H
H
ON
OFF
OFF
OFF
ON
OFF
OFF
H"
H
H
H
H
H
H
H
H
H
H
Display de 7 segmentos:
OUTPUTS
INPUTS
L
H
H
L
".
L
H
L
H
l
H
"
ON
OFF
ON
ON
OFF
ON
ON
ON
ON
ON
ON
ON
ON
OFF
OFF
ON
ON
ON
OFF
OFF
.oN
OFF
OFF
OFF
e
ON
ON
OFF
ON
ON
ON
ON
ON
ON
Ol~
OFF
ON
OFF
OFF
OFF
OFF
ON
OFF
ON
ON
OFF
ON
ON
OFF
ON
ON
ON
ON
OFF
ON
ON
OFF
ON
OFF
ON
OFF
OFF
OFF
ON
OFF
ON
OFF
ON
OFF
OFF
OFF
ON
OFF
ON
OFF
OFF
OFF
ON
ON
ON
OFF
ON
ON
OFF
OFF
ON
ON
ON
OFF
OFF
OFF
ON
fl-;-I
01'1
el le
ON
ON
ON
OFF
ON
ON
ON
ON
ON
ON
ON
OFF
SEGMENT
IDENTIFICATION
I
lul
o
ilcl-:I'-1IL.'~'
1
:lc:lyl,-bl'-JIL.lr-I I
7
9 10 11
12 13
14 15
(j
T-1.6
Este convenio
responde al nombre de
"Lgica positiva", que
es la ms utilizada.
('O(;;:')
(l
~ \\0
'\
d resu.\\q.)c
e.-s ~(t, c.uando-V'o...,-e.
. ~ "C?,~\UI1d?f
'5011. o ,EiC.ucUl+e
\ e..., re.S\.t\
Suma.
tu'lO
En la tabla se indican las forma de representacin, as como sus postulados bsicos. Las
operaciones del lgebra de Boole cumplen las siguiente propiedades:
a) Conmutativa: a + b = b + a
ab=ba
a+b+c=a+(b+c)
abc=(ab)c
c) Distributiva: a (b + c) = ab + a c
a+(bc) = (a+b)(a+c)
b) Asociativa:
"..i
Op~racin
Suma
C)
F=a+b
Multiplicacin
= a' b
F = ab
F = a
Complementacin
o inversin
*b
0+0=0 a+O=a
O+ 1 = 1 a + 1 = 1
1+.1=1 a+a=a
a + = 1
0,0=0 a'O=O
0'1=0 a'l=a
1,1=1 a'a=a
a' = O
F=
= Q.b
T-1.7
Para comprender mejor lo anterior, demostremos la primera ley del lgebra de Boole,
llamada ley de absorcin; su expresin es la que sigue:
a+ab
=a
o O
O 1
1 O
1 1
0+00=0
0+01=0
1+10=1
1+1'1=1
O
O
1
1
Existen infinidad de teoremas en el lgebra de Boole, tantos como puedan ser demostrados
por el mtodo ya referido; sin embargo, hay una serie de ellos que, dada su utilidad, es
importante conocer. La tabla siguiente muestra los ms importantes.
Por otra parte, siempre que se cumple una ley o teorema en el lgebra de Boole, se cumple
tambin su llamada forma dual; es decir, se cumple tambin la expresin que se obtiene
cambiando solamente las operaciones de suma por las de producto y las de producto por
las de suma. Las formas duales de las leyes y teoremas bsicos tambin se indican en la
tabla siguiente.
+ a.b
= a
a . (a
+ b)
= a
(1)
Teorema de De Morgan
(a+b+c+)-iilic
(abc)-ii+li+E+ ...
'(2)
Leyes de transposicin
(3)
(4)
Leyes varias
a+ii b=a+b
ii+a' b=ii+b
a b+a li c=a . b+a . c
a' b+ii' c+b . c=a' b+ii . c
a b+a 'li=a
a' b+a . c=a . (b+c)
a' (ii+b)=a . b
ii (a+b)=ii b
(a+b) (a+li+c)=(a+b)' (a+c)
~+~.~+~.~+~=~+~.~+~
(a+b) (a+O)=a
(a+b) . (a+c)=a+(b . c)
(5)
(6)
(7)
W
(9)
(10)
IMPORTANTE: Tanto
en una estructura como
en la otra, todos los
trminos han de
contener todas las
variables que
intervienen en la
ecuacin.
= abc+abc+abc
T-1.8
(\
.
Cuarta forma cannica - Ecuacin con suma de sumas: Se dispone como una
suma de trminos en forma de suma de las diferentes variables que intervienen en
la ecuacin.
Ejemplo:
w= (a+b+e
1.9
Con el ejercicio 1 de
clase comprenderemos
mejor estos mtodos.
Dada la tabla de verdad,que representa la respuesta binaria de una funcin lgica, existen
dos mtodos para obtener su ecuacin en primera y segunda forma cannica,
respectivamente. Estos mtodos estn expresados y resumidos en la tabla siguiente, en la
que tambin explicamos el mtodo para obtener a partir de estas, la tercera y la cuarta
forma cannica.
Tipo de ecuacin
Mtodo de obtencin
Convenio a aplicar
Ecuacin minterms
Primera forma
cannica
Ecuacin maxterms
Segunda forma
cannica
Tercera forma
cannica
Cuarta forma
cannica
variable negada
1 variable sin negar
T-1.9
01
11
10
00
01
11
10
,x.
x.;x4
IMPORTANTE: de una
casilla a otra adyacente
slo puede cambiar
una variable.
00 O
12
01
13
11
15
11
10 2
14
10
x,=1
x.;x3 00
x:;;:.
x.;x3
00
01
11
10
00
16
20 28
24
01
17
21
29
25
15
11
11
19
23 31
27
14
10
10
18
22 30
26
01
11
10
00 O
12
01
13
11
10 2
xxs
Una vez rellena la tabla, pasamos a agrupar trminos para obtener la forma cannica
simplificada que buscamos y despus expresar finalmente la funcin. Segn sea esta la
primera o la segunda, actuaremos de formas diferentes:
Las reglas para agrupar los "1" son las que se enuncian a continuacin:
Cada grupo debe tener 2n elementos (o sea, 1, 2, 4, 8, etc ... ).
Los grupos deben ser lo ms grandes posibles.
Los grupos siempre deben ser rectngulos o cuadrados.
Est permitido pasar los bordes del mapa (en vertical y horizontal).
Cada grupo debe tener al menos un elemento en exclusividad (que no pertenezca a
ningn otro grupo).
6) Todos los "1" deben pertenecer al menos a un grupo.
7) Hay que intentar agrupar todos los" 1" en el menor nmero posible de grupos.
8) No es obligatorio que estn superpuestos unos grupos con otros.
1)
2)
3)
4)
5)
T-1.10
Una vez agrupados todos los unos, pasamos a expresar la funcin buscada.
Obtendremos tantos trminos como grupos de unos (trminos que se sumarn entre
s)
Cada uno de los trminos se obtiene multiplicando las variables que quedan
constantes.
Complementamos las variables que valen O.
(---\1
Una vez agrupados todos los ceros, pasamos a expresar la funcin buscada.
Obtendremos tantos trminos como grupos de ceros (trminos que se multiplicarn
entre s)
Cada uno de los trminos se obtiene sumando las variables que quedan constantes.
Complementamos las variables que valen 1.
T-1.11
El tipo de jerarqua.
La representacin del sistema.
La relacin con la realizacin fsica.
Horizontal
Segn el tipo de
jerarqua
{
Formas de
descripcin
de los sistemas
digitales
complejos
En ingls "structural
design".
Estructural
Segn la representacin
del sistema
(~)
Funcional o de comportamiento
{
Fsica O geomtrica
Independiente'
Segn la relacin con
la realizacinfisica
{ Dependiente
.
A pesar de que existen, tal y como hemos visto, tantas formas de describir un circuito, para
esta asignatura slo vamos a centrarnos en la segunda de las clasificaciones y ms concretamente, slo en las descripciones estructural y funcional.
2.1.1
2.1.1.1
La descripcin estructural consiste en especificar la totalidad de los elementos que componen el sistema digital y las interconexiones entre ellos. Inicialmente se realiz representando los elementos mediante smbolos e interconectndolos para dar lugar a un esquema.
Las dificultades que presenta la descripcin del esquema de un sistema digital complejo
mediante transistores o incluso mediante puertas lgicas hizo que a los programas de diseo de esquemas se les dotase de bibliotecas (en ingls "libraries").
La edicin de esquemas fue, hasta la dcada de 1980, la nica forma de realizar la descripcin estructural asistida por computador de los sistemas digitales. Pero la elevacin de su
complejidad propici el desarrollo de lenguajes orientados a la descripcin de sistemas
digitales, que reciben el nombre de BDL, uno de los cuales (VHDL) estudiaremos en apartados posteriores.
T-2.1
2.1.1.2
HDL "Hardware
Descripton Language".
Ejemplos de lenguajes
HDL no estructurados
son ABEL, CUPL y
PALASM.
Ejemplos de lenguajes
HDL estructurados son
RTLyVHDL.
Algunos fabricantes de circuitos digitales configurables de equipos de instrumentacin electrnica desarrollaron lenguajes HDL sencillos, denominados no estructurados, ya que estn orientados a la realizacin de un nico circuito o mdulo por fichero.
Los fabricantes de circuitos integrado a medida desarrollaron lenguajes HDL complejos, denominados estructurados porque permiten defmir submdulos y enlazarlos
jerrquicamente en un nico fichero.
Estos lenguajes se caracterizan adems por el hecho de que las herramientas de CAD
asociadas con ellos permiten utilizar un fichero HDL como nivel superior de lajerarqua, lo que propicia la creacin de bibliotecas de circuitos y operadores frecuentemente
utilizados (puertas lgicas, bloques funcionales, operadores aritmticos ... ).
C)
Introduccin
T-2.2
2.3.2
library ieee
use ieee.std_logic_1164.all
use ieee.std_logic_arith.all
use ieee.std_logic_unsigned.all
- Declaraciones
entity BIESTABLED is
port
En este fichero se
describe un biestable
de tipo D activado por
flancos ascendentes.
-- Entradas
reloj : in std_logic
dato : in std_logic
-- Salidas
salida_ : out std_logic
) ;
end BIESTABLED
- Descripcin lgica
'1'
Si bien en sucesivos apartados de describen con ms detalle cada una de las secciones del
fichero, vamos a comentar algunas generalidades:
Cada instruccin debe terminar generalmente con punto y coma, pero no cada lnea,
puesto que algunas instrucciones ocupan varias lneas.
Los comentarios, que deben ir precedidos de dos guiones(--), deben situarse al fmal de
la lnea o bien Qcupar toda una lnea
2.3.3
Bibliotecas y paquetes
En estos apuntes no
desarrollaremos la
definicin de bibliotecas
por el usuario
Definidas por el usuario: ste puede incluir en ellas los circuitos que vaya a utilizar
habitualmente en sus diseos.
T-2.3
Ejemplo:
LIBRARY IEEE;
USE IEEE.std_logic_1164.all
LIBRARY mi biblioteca;
USE mi_biblioteca.registros.dff
2.3.4
Entidad
Una entidad ("entity") en VHDL consiste en la defmicin del nombre del circuito y de sus
seales de entrada y salida (puertos), indicando el tipo de cada una de ellas.
Para cada circuito que
se utilice en VHDL, es
necesario definir un
bloque entidad.
La sintaxis es la siguiente
ENTITY nombre circuito is
PORT (nombre_entradas: IN tipo_entradas;
nombre salidas: OUT tipo_salidas);
END nombre_circuito;
Ejemplo:
En este ejemplo se
especifica la entidad
correspondiente a un
circuito sumador total
de dos nmeros de un
bit.
En la arquitectura
daremos la Descripcin del circuito, en
cualquiera de las
formas que hemos
visto del circuito.
2.3.5
Arquitectura
Una arquitectura ("architecture") en VHDL es la definicin del funcionamiento de un circuito, de cualquiera de las formas permitidas en VHDL, descritas ya anteriormente.
Una arquitectura siempre debe asociarse con una entidad, aunque una entidad puede tener
varias arquitecturas, es decir, varias formas de realizacin o descripcin. Cuando posterionnente se utilice el circuito ser necesario indicar cul es la arquitectura que se utilizar.
Cada circuito en VHDL debe incluir una declaracin de entidad y al menos una declaracin
de arquitectura.
Un mismo fichero puede contener la declaracin de muchos circuitos, lo que permite disear un sistema digital complejo mediante un solo fichero VHDL, aunque tambin se pueda
utilizar un fichero distinto para cada circuito. Esto lo convierte en un lenguaje estructurado,
que permite realizar fcilmente la descripcin jerrquica de un sistema digital.
T-2.4
Ejemplo:
ARCH1TECTURE comportamiento OF sumador total 1S
S1GNAL auxiliar: bit vector (1 DOWNTO O);
1BEG1N
auxiliar <= a+b+cin;
I-\s8
\"SB
END comportamiento
2.3.6
Descripcin lgica
2.3.6.1
Los tipos de datos son
las diferentes representaciones de informacin
que vamos a manejar
con circuitos lgicos.
Tipos de datos
Como en otros lenguajes, podramos hacer una clasificacin muy amplia de los tipos d~.
datos existentes en VHDL. No obstante, slo diremos que los tipos que posteriormente
vamos a ver se pueden catalogar en: Enumerados (conjunto de literales separados por comas), Numricos (incluye los tipos natural, entero, real...) y Compuestos (conjuntos
homogneos o heterogneos de elementos.
Obviando esta clasificacin, podemos decir que los tipos de datos ms importantes para
la descripcin de circuitos son:
Bi t
Puede tomar los valores 'O' y '1'.
Bi t vector Conjunto de seales (o variables) de tipo bit.
Std_logic Puede tomar los valores:
No se debe confundir el
smbolo utilizado para
un valor desconocido
fuerte ("X") con el
smbolo de la indirefencia ("-").
Std_logic_vector
2.3.6.2
Los tipos de objetos se
refieren al tratamiento
que va a tener la informacin manejada.
~ i~~e('
~ un~~~ne.
Tipos de objetos
Ejemplo:
Ejemplo:
VARIABLE registro:
'1
"~
T-2.5
2.3.6.3
(\
IMPORTANTE: los
espacios caracteres
de subrayado u_" no
son tenidos en cuenta y
slo sirven para aumentar la legibilidad del
nmero.
Notacin
2#1100 0010#
2.3.6.4
X"2E"
Operadores
Operadores Lgicos
and
or
xor
xnor
not
f~
\.
nand
nor
sll
srl
&
La concatenacin con
& permite unir varios
operandos del mismo
tipo
funcin Y lgica
funcin O lgica
funcin O-exclusiva
funcin O-exclusiva negada
negacin
funcin Y lgica negada
funcin O lgica negada
desplazamiento lgico a izquierda
desplazamiento lgico a derecha
concatenacin
Operadores de asignacin
.=
t=d
Operadores aritmticos
+
*
/
mod
**
sla
sra
suma aritmtica
- resta ritmtica (dos operandos)
- signo negativo (un operando)
multiplicacin
divisin
mdulo (resto de la divisin entera)
exponenciacin
desplazamiento aritmtico a izda.
desplazamiento aritmtico a dcha.
Operadores de relacin
G
>=
igual
COY>'\.
distinto
menor que
mayor que
menor o igual que
mayor o igual que
\~
T-2.6
Vamos a distinguir
entre dos tipos de
sentencias de descripcin: las concurrentes y
las secuenciales.
Las sentencias concurrentes son las que
distinguen al VHDL de
los lenguajes de programacin y son las
que permiten modelar
el comportamiento real
de los circuitos.
MUY IMPORTANTE:
los procesos se utilizan
para modelar el comportamiento de cualquier circuito ante el
cambio en seales de
entrada, cuando este
comportamiento requiere una reaccin secuencial. Esto es,
aunque se trata de un
bloque que en conjunto
funciona de forma
combinacional (su
relacin con otros
procesos no es secuencial, e incluso
puede ser simultneo
con otros), un proceso
est compuesto por
sentencias secuenciales, que s dependen
del orden de aparicin.
Es por esto que los
procesos sirven para
describir circu itos
secuenciales.
Cuando necesitemos
sentencias secuenciales, tendrn que ir
dentro de un proceso.
2.3.6.5
Sentencias concurrentes
Las sentencias concurrentes son aquellas que se ejecutan de forma simultnea a otras sentenciasconcurrentes, independientemente del orden en que estn escritas en el fichero
VHDL. Se puede decir que las sentencias concurrentes modelan un comportamiento combinacional.
a) Process
Los procesos siempre se ejecutan una vez durante la inicializacin, pero posteriormente
slo se ejecutan cuando se produce un "evento" (cambio) en alguna de las seales indicadas en el proceso.
Existen dos formas de indicar las seales cuyos eventos producen la activacin de un proceso.
Mediante una lista de "sensibilidad", que enumera entre parntesis y separados por
comas, todas las seales cuyos eventos deben activar el proceso.
La sintaxis de esta forma es:
PROCESS (lista de seales)
BEGIN
Sentencias secuenciales;
END PROCESS
Ejemplo:
PROCESS (a,b)
BEGIN
Salida <= a AND b;
END PROCESS
Mediante una sentencia ''wait'', que obliga al proceso a esperar a que se cumpla una
determinada condicin para activarse. La condicin puede ser de tipo booleano, un
evento, o una condicin temporal.
,
")
Importante: slo usamos uno de los tipos de
sentencia WAIT aqu
presentadas (por eso
comentamos con --o el
final de esas sentencias).
PROCESS
BEGIN
WAIT ON seal; --o
WAIT UNTIL expresin; --o
WAIT FOR expresin temporal;
Sentencias secuenciales;
END PROCESS
Ejemplo:
PROCESS
BEGIN
Aqu se especifica un
proceso que describe
un biestable de tipo D
activado por flancos.
T-2.7
<G\~\{e.
o va.rl&.
WITH jexpresinLsELECT
seal <= nuevo valor WHEN valor expresin
,,-...~
Ejemplo:
Aqu se especifica el
comportamiento de un
circuito combinacional
cuya salida es una
combinacin de 3 bits
(resultado) y cuya
entrada es un vector de
2 bits (operandos)
Esta sentencia pennite la asignacin condicional de valores a seales. Se utiliza nonnalmente para las condiciones en las que intervienen varias seales.'
La sintaxis es la siguiente:
Seal <= nuevo_valor_l WHEN expresin_l ELSE
nuevo valor 2 WHEN expres~n_2 ELSE
ELSE
UNAFFECTED;
a
~~ \)cZ.~ \L~.SK..~cc<cn
2.3.6.6
t'l.
',,"'-o..c.Q.. -,e.V\ ~\..lYlCl
o YJ
r5I
\lo...f'I.s\o\.es..
"00") ELSE
"01") ELSE
Sentencias secuenciales
Las sentencias secuenciales son aquellas que se ejecutan de fonna secuencial, es decir, en
el orden en que se han escrito en el fichero VHDL.
Las sentencias secuenciales slo pueden aparecer dentro de procesos ("process") y subprogramas (funciones y procedimientos).
l ~~
Se utiliza generalmente para aquellas condiciones de transicin que dependen de una sola
expresin o, a lo sumo, dos. Las expresiones no tienen por qu ser excluyentes, pero si al
evaluar una, sta es verdadera, las dems no se comprueban.
La sintaxis es la siguiente:
MUY IMPORTANTE:
esta sentencia slo se
utiliza para describir
comportamientos secuenciales.
<;:..Q.
"1<::,,
Ejemplo:
Aqu se especifica el
comportamiento del
mismo circuito combinacional anterior.
~(\m{\ Wh"n
'be...
IF expresin_l THEN
Sentencias secuenciales;
ELSIF expresin_2 THEN
Sentencias secuenciales;
ELSE
Sentencias secuenciales;
END IF
'"
A.
en.. ~CJ.V1C(&]
LLn ~ eJc~'.Qs\"O~/boo~OtVIa..
~ \be...mCl? ~CLc..a.\ m~ ~
ill'''I~\e oS..~VK)-C~{)~.
T-2.8
LV'lc..
Ejemplo:
Aqu se especifica el
comportamiento de un
contador ascendente
con carga en paralelo y
seal de puesta en
estado inicial.
'1') THEN
b) Case...when
Esta sentencia secuencial es anloga a la
sentencia concurrente
with ...select
Se utiliza generalmente para las expresiones en las que intervienen varias variables o seales y debe cubrir todos los posibles valores de la expresin, de forma excluyente.
MUY IMPORTANTE:
La sintaxis es la siguiente:
El smbolo 1 representa
la funcin "o bien".
CASE \e~_resin S
WHENlvalor expresinllvalor expresin21 '"
Sentencias secuenciales;
Ejemplo:
CASE seleccion IS
WHEN "0000"1"0001" =>
y <= 'O';
WHEN "0010"1"0011" =>
Y <= '1';
WHEN OTHERS => y <= 'O';
END CASE;
\o.~C::~h ~ 1.0-ce
~(..UI\C;{l e. Una.
Vc:L("' 'la\ol.e o
~~ ~(" mu.c\,o
5.0\0
'/Mas
Q...V\
seY>a.\ .
~
e) For
Desde aqu comenzamos las sentencias de
bucle.
Permite repetir la ejecucin de las sentencias incluidas en el bucle mientras el ndice del
bucle se encuentre en el rango predefinido.
La sintaxis es la siguiente:
FOR i IN rango_ndice LOOP
Sentencias secuenciales;
END LOOP;
Ejemplo:
Aqu se especifica un
bucle que calcula el bit
de paridad par de una
combinacin x(i) de 16
bits.
T-2.9
d) While
Pennite repetir la ejecucin de las sentencias incluidas en el bucle mientras se cumpla la
condicin defmida
.
.. \
La sintaxis es la siguiente:
WHILE expresion LOOP
Sentencias secuenciales;
END LOOP;
Ejemplo:
Aqu se especifica un
bucle que multiplica
dos nmeros "p" y "q"
mediante el mtodo de
Isumas sucesivas.
1:: ")\G\~(\\o)e
producto <=~
WHILE (q~ LOOP
producto <= producto + p;
q <= q - 1;
END LOOP;
C)
,---.-j
2.3.7
----------------~------~--~-----------------------------------------------------------
T-2.10
2.3.7.1
Decodificador 3 a 8 74xx138
AO
A1
A2
1
2
E1
YO
Y1
Y2
14
Y3
12.
Y4
Y5
Y6
11
Y7
15
13
;0
9
MNA370
lHPUTS
t,
Et
H
X
X
H
X
L
L
L
L
L
L
L
L
X
L
L
L.
L
L
L
L
L
X
L
H
ti
ti
ti
H
H
H
Ji
Por,
X
X
X
L
H
L
H
L
ti
l
ti
Ot1TPUTS
A,
Ao
y.
Y,
y~
Vi!
y.
Y,
'i't
Y1
)(
X
X
L
H
H
H
H
H
H
H
H
H
H
H
H
H
l
H
H
H
H
H
l.
l.
l.
H
H
H
H
L
H
Ji
Ji
H
H
H
Jo;
H
H
H
H
H
H
H
ti
ti
ti
L
H
H
ti
H
H
H
H
H
H
H
H
L
H
H
H
H
H
H
H
ti
H
H
H
l
ti
H
ti
ti
H
H
H
H
ti
ti
H
L
X
X
L
L
H
H
L
L
H
H
i..
H
H
ti:
ti
ti
L
H
H
ti
Cj
library IEEE;
use IEEE.std-'ogic_1164.all;
entity V74x138 is
port (G1, G2A_L, G2B_L: in STD_LOGIC; -- enable inputs
A: in STD_LOGIC_VECTOR (2 downto O); -- select inputs
Y_L: out STD_LOGIC_VECTOR (O to 7)); -- decoded outputs
end V74x138;
architecture V74x138_a of V74x138 is
signal Y_LJ STD_LOGIC_VECTOR (O to 7);
begin
with A select Y_LJ <=
~QCO).:l~~C~Or. '"?:.a.Sl cpV\
"01111111" when "000",
~~os.. a.c\\VdS. a..
~Q..'p /
"10111111"when "001",
"11011111"when "010",
Col' Q.~\fdcsa..S be..
~~
"11101111" when "011",
"11110111" when "100",
.se. a...<;;t~o.. 4 ~~o.. o... Y_ L
"11111011"when "101",
c..ll..Y\\o
cump\o..: (,t.\.'Zl\_\. -b.ZB_\.::.\
"111111 Di" when "110"
"11111110"when "111":
~~ V\e,se. c.'-\fl\~le( ~}_o... q.a...\td~
"11111111" when others;
se.CLS\~V'la.. \\ \1 (/ \1'.
Y_L <= Y LJ when (G1 and not G2A_L and not G2B_L)='1' else
"11111111 ";
end V74x138_a;
",,\te.\.
eVta..\o\e ':
se
2.3.7.2
T-2.11
Iibrary IEEE;
use IEEE.stdJogic_1164.all;
./-----,'
entity mux4in8b is
port (
S: in STD_LOGIC_VEeTOR (1 downto O); -- Select inputs, 0-3 ==> A-D
A, B, e, D: in STD_LOGle_VEeTOR (1 to 8); -- Data bus input
Y: out STD_LOGIC_VEeTOR (1 to 8) -- Data bus output
);
end mux4in8b;
B~I
~
'Y
begin
with S select Y <=
. CO
Awhen "00",
B when "01",
C when "10",
D when "11",
(others => 'U') when others; -- this creates an 8-bit vector of 'U'
enamux4in8b;
l.
\
k
..
~
t!.-i/\ ~o c..a...:;o
~net'\'tos
\ ."-
~\.GO..
o- no'lrt i-(Gt\i~a.c,
2.3.7.3
Iibrary IEEE;
use IEEE.stdJogic_1164.all;
entity mux4in3b is
port (
S: in STD_LOGle_VEeTOR (2 downto O); -- Select inputs , 0-7 ==> ABAeADAB
A, B, e, D: in STD_LOGle_VEeTOR (1 to 18); -- Data bus inputs
Y: out STD_LOGle_VEeTOR (1 to 18) -- Data bus output
);
end mux4in3b;
Sl SI '50
Y
6 o G
A..
architecture mux4in3p of mux4in3b is
6 o \
begin
Js
process(S, A, B, e, D)
61 o
A
\farible i' II\ITEGERr
-D... \ \
begin
G\ () o
A
case S is
l
~
when "000" I "010" I "100" I "110" => Y <= A;
\ t 'O
A
when "001" I "111" => Y <= B;
..!S
I
when "011" => Y <= e;
when "101" => Y <= D;
when others => Y <= (others => 'U'); -- 18-bit vector of 'U'
end case;
end process;
end mux4in3p;
2.3.7.4
Comparador de 8 bits
T-2.12
Iibrary IEEE;
use IEEE.stdJogic_1164.all;
(J
entity vcompare is
port (
A, B: in STD_LOGIC_VECTOR (7 downto D);
EQ, NE, GT, GE, LT, LE: out STD_LOGIC
);
end vcompare;
architecture vcompare_arch of vcompare is
begin
process (A, B)
begin
EQ <= 'D'; NE <= 'D'; GT <= 'D'; GE <= 'D'; LT <= 'O'; LE <= 'O';
if A = B then EQ <= '1'; end if;
if A 1= B then NE <= '1 '; end if;
if A > B then GT <= '1'; end if;
if A >= B then GE <= '1'; end if;
if A < B then LT <= '1'; end if;
if A <= B then LE <= '1 '; end if;
end process;
end vcompare_arch
2.3.7.5
library IEEE;
use IEEE.stdJogic_1164.all;
use IEEE.stdJogic_unsigned.all;
entity camp8 is
part ( A, B: in STD_LOGIC_VECTOR (7 downto D);
EQ, GT: out STD_LOGIC);
end comp8;
architecture camp8_arch of comp8 is
begin
EQ <= '1' when A = B else 'O';
GT <= '1' when A > B el se 'O';
end comp8_arch;
2..3.7.6
\.,-)
T-2.13
library IEEE;
use IEEE.std-'ogic_1164.all;
entitY rol16 is
port (
DIN: in STD_LOGIC_VECTOR(15 downto O); -- Data inputs
S: in STD_LOGIC_VECTOR (3 downto O); -- Shift amount, 0-15
DOUT: out STD_LOGIC_VECTOR(15 downto O) -- Data bus output
);
end ro116;
architecture rol16_arch of rol16 is
begin
process(DIN, S)
variable X, Y, Z: STD_LOGIC_VECTOR(15 downto O);
begin
if S(0)='1' then X:= DIN(14 downto O) & DIN(15); else X:= DIN; end if;
if S(1)='1' then Y:= X(13 downto O) & X(15 downto 14); else Y:= X; end if;
if S(2)='1' then Z:= Y(11 downto O) & Y(15 downto 12); else Z:= Y; end if;
if S(3)='1' then DOUT <= Z(7 downto O) & Z(15 dbwnto 8); else DOUT <= Z; end if;
end process;
end roI16_arch;
2.3.8
T-2.14
2.3.8.1
Bscula R-S
library IEEE;
use IEEE.stdJogic_1164.all;
entity Vsrlatch is
port (S, R: in STD_LOGIC;
Q, QN : buffer STD_LOGIC );
end Vsrlatch;
architecture Vsrlatch_arch of Vsrlatch is
begin
QN <= S nor Q;
Q <= R norQN;
end Vsrlatch_arch;
2.3.8.2
library IEEE;
use IEEE.stdJogic_1 164.all ;
()
entity Vdff is
port (D, CLK: in STD_LOGIC;
Q: out STD_LOGIC );
end Vdff;
architecture Vdff_b of Vdff is
begin
__ \..4. Je
hdo.. : e.\ f>-rocess ~ ~c\.>t:x. c\p.ndo oo.rn b'l Oprocess(CLK)
l:>ero1 <::'Lk
begin
if (CLK'event and CLK='1') then Q <= D;
c:.~ verp. un flo.na:::> de teL~ ~ ~o.. ck subcb..
end if;
end process ;
end Vdff_b;
2.3.8.3
Lo..
library IEEE;
use IEEE.std_logic_1164.all;
entity Vdff7 4 is
port (D, CLK, PR_L, CLR_L: in STD_LOG IC;
Q, QN : out STD_LOGIC );
end Vdff74 ;
r architecture Vdff74 b of Vdff74 is
signal PR, CLR: STD_LOGIC; '"'-'> -::,eal~ oJ...))<.\ L\o..~-oo
beg in
r el pNc.er.:o ~ ru::b vo.. c.o n lj CJ:f:,0J) /
process(CLR_L, CLR, PR_L, PR, CLK)
eo el 'doj.
begin
~ toen. lotos
PR <= not PR L' CLR <= not CLR L'
<= '0" ,\
if (CLR and PR) ~ '1 ' then Q <= 'D"-Q'N
'
~tp os~nc.rono
elsif CLR = '1' then Q <= 'O'; QN <= '1';
COtnfO~\.U.rolen
elsif PR = '1' then Q <= '1'; QN <= 'O';
elsif (CLK'event and CLK='1') then Q <= D; QN <= not D;
end if;
end process;
_ end Vdff74_b;
~ So "LQ
\J (\O..
re
2.3.8.4
,)
T-2.15
10
7
2
PE
CET
15
CE?
BINARY
COUNTER
CP
MR
MNA901
14
12
11
INf'UTS
CiPERATING mOE
re.et (deat}
parame.!tlad
OUTPUTS
CET
x
x
x
X
X
l'
I
1
h
Jm
13
CP'
t
t
CE?
'PE
eoxmt
ti
ti
ilcId
lo
b
X
X
h
h
{do nolhirt;}
a..
D;
Te
L
L
1.
ti)
X
X
C>'Xlm
(~
q,.
CIII
~t
library IEEE;
use IEEE.stdJogic_1164.all;
use IEEE.stdJogic_arith.all;
entity V74x163 is
port (CLK, CLR_L, LD_L, ENP, ENT: in STD_LOGIC;
D: in UNSIGNED (3 downto O);
Q: out UNSIGNED (3 downto O);
RCO: out STD_LOGIC );
end V74x163;
architecture V74x163_arch ofV74x163 is
signal IQ: UNSIGNED (3 downto O);
begin
process (CLK, ENT,IQ)
begn
if (CLK'event and CLK='1') then
f CLR_L='O' then IQ <= (others => 'O');
elsif LD_L='O' then IQ <= D;
elsif (ENT and ENP)='1' then IQ <= IQ + 1;
end if;
end if;
if (IQ=15) and (ENT='1') then RCO <= '1';
else RCO <= 'O';
end if;
Q<=IQ;
end process;
end V74x163_arch;
'~
2.3.8.5
T-2.16
library IEEE;
use IEEE.std_logic_1164.all;
entity smexamp is
port ( CLOCK, A, B: in STD_LOGIC;
Z: out STD_LOGIC );
end;
(=-)
end smexamp_arch;
2.3.8.6
'--
T-2.17
/~
r
'
entity Vtbird is
port ( CLOCK, RESET, LEFT, RIGHT, HAZ: in STD_LOGIC;
L1GHTS: buffer STD_LOGIC_VECTOR (1 to 6) );
end;
architecture Vtbird_arch of Vtbird is
constant IDLE: STD_LOGIC_VECTOR (1 to 6) := "000000";
constant L3 : STD_LOGIC_VECTOR (1 to 6) := "111000";
constant L2 : STD_LOGIC_VECTOR (1 to 6):= "110000";
constant L 1 : STD_LOGIC_VECTOR (1 to 6):= "100000";
constant R1 : STD_LOGIC_VECTOR (1 to 6):= "000001";
constant R2 : STD_LOGIC_VECTOR (1 to 6):= "000011";
constant R3 : STD_LOGIC_VECTOR (1 to 6):= "000111";
constant LR3 : STD_LOGIC_VECTOR (1 to 6) := "111111";
()
begin
process (CLOCK)
begin
if CLOCK'event and CLOCK = '1' then
if RESET = '1' then LlGHTS <= IDLE; else
case LlGHTS is
when IDLE => if HAZ='1' or (LEFT='1' and RIGHT='1') then LlGHTS <= LR3;
elsif LEFT='1' then LlGHTS <= L 1;
elsif RIGHT='1' then LlGHTS <= R1;
else LlGHTS <= IOLE;
end if;
when L 1 => if HAZ='1' then LlGHTS <= LR3; el se LlGHTS <= L2; end if;
when L2 => if HAZ=' 1, then LlGHTS <= LR3; el se LlGHTS <= L3; end if;
when L3 => LlGHTS <= IOLE;
when R1 => if HAZ=' 1, then LlGHTS <= LR3; else LlGHTS <= R2; end if;
. when R2 => if HAZ=' 1, then LlGHTS <= LR3; else LlGHTS <= R3; end if;
when R3 => LlGHTS <= IOLE;
when LR3 => LlGHTS <= IOLE;
when others => null;
end case;
end if;
end if;
end process;
end Vtbird_arch;
T-2.18
3.1.1
3.1.2
Anlisis VS Sntesis
3.2 Multiplexores
Son circuitos combinacionales que poseen las siguientes entradas y salidas:
Los canales de entrada estn relacionados con las entradas de seleccin por la siguiente
ecuacin:
nmero de canales =
2n
/)
Multiplexor
211 entradas
dedato$
1
I
salida
r-A--.
1111
n bits
de seleccin
T-3.1
!{la
El componente aqu
descrito es el
74AC157, multiplexor
de dos entradas de
datos (de 4 bits cada
una).
Ifa
'o~
Za
Ite
Ita-1td
Ze
Enable Input
'oc!
Sefect Input
Za...za
Outputs
10b
12
Ilb
11
2b
10 lld
9
3.2.1
Descnption
lOa-1M
ZIt
Funcionamiento de un multiplexor
Multiplexor 2 x 1
3.2.2
MUX
lo
11
C)
Ca
lo
11
Co
Z
Z
3.2.3
Co lo + Ca 11
(Ca + lo) (Ca + 11 )
(2 a forma cannica)
Multiplexor 4 x 2
lo
11
12
h
MUX
00
01
10
II
Cl
CI
Ca
O
O
1
1
O
1
O
1
Z
lo
11
1?
13
Co
T-3.2
3.2.4
= CI Colo + CI CO 11 + CI CO 12 + el Co13
= (el +Co+lo)(CI +Co+11)(CI +Co+12 )(CI +Co+13)
(2a forma'cannica)
Multiplexor 8 x 3
La tabla de verdad de un multiplexor de 8 canales de entrada (10 ,11 ,12 ,13, 14 ,15 ,16 e 17 )
con 3 entradas de control ( Co , CI y C2 ) es la siguiente:
1 0 - 000
! l - 001
l l - 010
h - Oll
1 , - lOO
I s - 101
1 6 - 110
1 7 - 111
MUX
III
C, Cl Co
C2
O
CI
O
eo
lo
11
O
O
1
1
1
1
1
1
O
O
1
1
O
1
O
1
O
1
17
13
14
l'i
lF,
17
rj
'--~
Z=~G~~+~G~I+~G~~+~G~~+~G~~+~G~~+
+~GCoI6 +~GCoI7
Anlogamente se pueden deducir las tablas de verdad y la forma cannica de multiplexores
de mayor nmero de canales y entradas de control.
3.2.5
Recuerda que un
multiplexor 4x2 tiene 4
canales de entrada
(lo ,JI,J2
13 )
con
2 entradas de control
(eo y CI )
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 619 142355
J
T-3.3
'\,j
Sobre esta funcin de salida, identificamos ya las entradas de control con las
variables, y Z con F, la funcin que queremos implementar:
En este momento
empezamos ya a
completar el dibujo de
nuestro circuito con el
/~ multiplexor.
F=XY~+XY~+XY~+XY~
XY ,
el trmino
entonces
Donde slo queda ya sustituir cada entrada de datos 10 ,11 ,12 e 13 por' 1' 'O'
ID
tiene que
valer 'O'.
O
-
Nuevamente vamos a
seguir'la explicacin a
partir de un multiplexor
4x2, slo que ahora la
funcinF que
queremos implementar
es de tres variables, X,
Yy W.
Lo primero que debemos hacer es elegir qu dos variables van a estar conectadas a
las entradas de control. Vamos a suponer que en nuestro caso van a ser X e Y.
Acto seguido tenemos que transformar la expresin que nos den de la funcin,
para que en cada trmino de la misma aparezcan SIEMPRE estas dos variables
elegidas. Para ello, cuando en algn trmino falte alguna, multiplicaremos dicho
Recuerda dos
propiedades
importantes:
trmino por
la+a=ll
la.l =al
Donde la nica diferencia ser que las entradas 10 ,11 ,12 e 13 no quedarn slo
identificadas con' l' 'O', sino tambin por W W, la tercera de las variables
de la funcin.
Nota:
Veremos un ejemplo de
este tipo en el ejercicio
1 de clase, de este
tema, apartado c.
T-3.4
3.3 Decodificadores
Genricamente, un decodificador es un circuito lgico con varias entradas y salidas que
convierte las entradas codificadas en salidas codificadas, donde los cdigos de entrada y de
salida son diferentes.
En ocasiones un cdigo
El cdigo de entrada que se utiliza con mayor frecuencia es un cdigo binario de n bits,
binario de n bits es
donde una palabra de n bits representa uno de 2n diferentes valores codificados,
truncado para
normalmente los enteros de Ohasta 2n - l.
representar menos de
n
2 valores. Es el caso
El cdigo de salida que se utiliza con mayor frecuencia es un cdigo 1 fuera de m, que
del cdigo BCD, en el
contiene m bits, donde un solo bit se activa en un determinado momento.
que las combinaciones
0000 hasta 1001
representan los dgitos Son circuitos combinacionales provistos de n entradas y un nmero de salidas menor o
decimales O a 9, pero
igual 2n
las combinaciones
1010 hasta 1111no se
usan.
3.3.1
Efectivamente, son
decodificadores
provistos de n
entradas y un nmero
de salidas menor o
igual 2'.
No todos los
decodificadores poseen
la misma asignacin de
estados lgicos.; de
hecho, hay muchos que
trabajan tomando un
nivel alto (1) como nivel
activo.
3.3.2
Un ejemplo real de
decodificador (un
integrado con esta
funcionalidad) es el
74AC179, solo que
tanto sus salidas como
su entrada enable son
activas a nivel bajo.
Decodificador binario 2 a 4
a 1; son las cuatro salidas. Una de ellas se activar en funcin del nmero
binario representado a la entrada.
EN es la entrada de autorizacin o enable. Observa que se activa a nivel alto, esto
es, el decodificador funcionar cuando esta entrada est a 1.
Yo
Inputs
Outputs
Y3
Y2
O
1
O
1
O
O
O
1
EN
11
lo
1
1
1
1
O
1
1
YI
Yo
O
O
1
O
O
1
O
O
1
O
O
O
T-3.5
!~
en
l/o, 11 es el bit
ms significativo. Aun
as, mira SIEMPRE la
tabla de verdad de
cada circuito integrado,
para conocer con
certeza estas
cuestiones.
2-to-4
decoder
10
11
YO
Y1
Y2
EN
Y3
En el circuito
equivalente, observa
que cada salida
consiste
en un minterrn de
las variables de
entrada
3.3.3
Decodificador 3 a 8
So a S7 son las ocho salidas. Una de ellas se activar en funcin del nmero
binario representado a la entrada.
EN es la entrada de autorizacin o enable.
E2
X
O
O
O
O
1
1
1
1
El
X
O
O
1
1
O
O
1
1
Eo
X
O
1
O
1
O
1
O
1
So
O
1
O
O
O
O
O
O
O
SI
O
O
1
O
O
O
O
O
O
S2
O
O
O
1
O
O
O
O
O
S3
O
O
O
O
1
O
O
O
O
S4
O
O
O
O
O
1
O
O
O
S5
O
O
O
O
O
O
1
O
O
S6
O
O
O
O
O
O
O
1
O
S7
O
O
O
O
O
O
O
O
1
y su esquema:
decodificador
3a8
So
SI
S2
S3
En este caso,
E2
S4
es el
Ss
bit ms significativo de
la entrada
EN
S6
S7
\~
T-3.6
3.3.4
Funciones de un decodificador
Observa que as es
como formamos los
minterms a la salida.
Un decodificador es lo
mismo que un
demultiplexor si cumple
que:
-
Otra posibilidad es unir justo las contrarias (donde la funcin vale O) con una
puerta NOR.
Ejemplo:
En la figura se muestra el diagrama esquemtico de un comparador del tipo 74x85:
Entradas de cascada
A3> 83
A3 <-83
A3= 83
A3 = 83
A3 = 83
A3 = 83
A3 = 83
A3= 83
A3= 83
A3= 83
A3 = 83
A3 = 83
A3 = 83
A3 = 83
X
X
X
X
X
X
A2>82
A2< 82
A2= 82
A2 = 82
A2 = 82
A2 = 82
A2 = 82
A2 = 82
A2 = 82
A2= 82
A2= 82
A2 = 82
A1
A1
A1
A1
A1
A1
A1
A1
A1
A1
>
<
=
=
=
=
=
=
=
=
81
81
81
81
81
81
81
81
81
81
X
X
X
X
X
X
AO> 80
AO< 80
AO= 80
AO=80
AO= 80
AO= 80
AO = 80
AO = 80
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
1
O
O
O
1
O
O
O
.o
-_~l
O
O
1
O
1
O
1
O
1
O
1
O
O
O
O
1
O
1
O
1
O
1
O
1
O
1
O
O
O
1
O
O
O
O
O
O
O
O
O
O
'1
1
O
O
T-3.7
COUT
GIN
Cin
O
O
Cout
S
O
1
O
1
1
1
1
o
El circuito internp del sumador completo se muestra a continuacin:
\ '.~
\c-'
,AO'
Ql' .
~.
y
Para ms detalles
ver el ejercicio 1 de
clase de este tema
--+-lJ---l'-l
CIN --I--I--+-----....J.
COUT
Solo necesitamos una cascada de n etapas de sumadores completos, si cada una de las
cuales maneja un bit.
Por ejemplo, aqu mostramos un sumador de cuatro bits construido a partir de cuatro
sumadores de un bit:
\~
En este tipo de
sumadores la velocidad
de clculo est limitada
por el camino del
acarreo. Si este se
propaga en toda la
cuenta, ralentiza la
operacin
Y3
..
Y2
Yo
Y1
Xl
y
CIN
col.
Camino
crtico ~
( s
COUT
CIN
:r--
COUT
COUT
ClN
,
I
S3
S2
s,
So
T-3.8
=palabra
Nota: La longitud b de
la palabra puede ser
cualquiera, independientemente del
nmero de filas
Podemos entender una memoria ROM (Read Only Memory) como una matriz de
dimensin 2n x b, es decir una matriz de 2n filas y b columnas. A las filas de esta 'matriz las
vamos a llamar palabras y diremos que cada palabra est compuesta de b bits. Por tanto
tenemos que mirar siempre esta matriz por filas (nunca por columnas).
Para acceder a cada fila de la matriz tenemos una direccin que no es ms que un nmero
binario que identifica cada fila. Por tanto si nuestra matriz tiene 2n filas necesitaremos un
direccin de n bits. A su vez cada fila alberga una informacin de b bits (que son las
columnas que tiene la matriz).
El esquema genrico de. una memoria ROM de 2n x b es el siguiente:
2n xbROM
AO
Al
A2
address
, inputs
DO
D1
An-2
An-1
Db-1
data
outputs
(-)
Resumen
3.6.1
'i ')(>
~<
pa\.a..brO-~
bl-tS ~e :1~.
Memoria ROM de 4 x 5
Recuerda que b es
2
totalmente indepenEn este caso nuestra memoria tiene 2 = 4 palabras (es
~.e. diente de n
, direcciones para referirnos a cada palabra tendrn 2 bits.
\{ecc't;V\
...."'==---:--::-~r--_~.-
"G
3.6.2
En este caso nuestra memoria tiene 23 = 8 palabras (es decir, una matriz con 8 filas) las
direcciones para referirnos a cada palabra tendrn 3 bits. En concreto las direcciones de las
ocho palabras de la memoria sern 000, 001, 010, 011, 100, 101, 110, 111. Cada una de
estas palabras tendr una informacin de 2 bits.
3.6.3
T-3.9
~1-1
A. 3
DA
b.., . - ~~
iz --
1\0
~
t 1l
8 '
es.
Aa
-- kl
~~
3.6.4
lo
Yo
(Aa)
(Do)
Y1
(Dl }
11
{Ai}
Y2
CDZ}
Y3
(D3}
POL
(A2)
Outputs
Inputs
8x4ROM
C:
!O
Aa
11
POL
A1
A2
00
01
02
D3
YO
Y1
Y2
Y3
A2
Ar
AO
D3
D2
0'1
Do
(}
1
1
ti
1
1
o
o
()
1
O
1
(}
<01eafYl~
fA ~\Cl-n1 cG t~
~ M.emon~
01~d 'la v1 -k
o
o
~)..{:
\e- ~
~W'lc~ en
R6~
T-3.10
Recuerda lo explicado
en el tema 3 sobre la
diferencia entre
circuitos
combinacionales y
secuenciales:
(J
4.1 Introduccin
Un circuito lgico
combinacional es
aquel cuyas salidas
dependen
solamente de sus
entradas.
Un circuito lgico
secuencial es aquel
cuyas salidas
dependen no slo
de sus entradas
actuales, sino
tambin de la
secuencia pasada
de entradas,
posiblemente
retrasada en el
tiempo de manera
arbitraria.
4.1.1
Seales de reloj
"
____
..
_ _ __
'<peroPD ;= t per
frecue'neia ;: 1ft par
.1..
11
- . , o. . ;' t per .
<
,o,y
r"
~L~-L'l'
lo~cambiosdeest?d9S~ ~
presentan aqu~.. ~
." r.
t-
--o tL -I~ t R -:
'. l.
Los sistemas digitales
tpicos, desde relojes
digitales hasta
supercomputadoras,
utilizan un oscilador de
cristal de cuarzo para
generar una seal de
reloj de funcionamiento
libre.
, tper
' '
\r
, . e.clo de trabajo
=t L J tper
Por convencin, una seal de reloj es de estado activo alto si los cambios de estado se
presentan en el flanco de subida del reloj o cuando el reloj est en ALTO, y de estado
activo bajo en el caso complementario.
El periodo del reloj es el tiempo entre transiciones sucesivas en la misma direccin.
La frecuencia del reloj es el inverso del periodo.
El primer flanco o pulso en un periodo de reloj (o en ocasiones el periodo mismo) se
denomina una ~ ( "tic") de reloj.
El ciclo de trabajo (duty eycle) es el porcentaje de tiempo que la seal de reloj se
encuentra en su nivel asertivo.
\ . _../
"
T-4.1
4.2 Biestables
El circuito secuencial ms sencillo consiste en un par de inversores que forman un ciclo de
retroalimentacin, como se muestra en la siguiente figura:
>Cf-----1''--- Q
Este circuito se denomina con frecuencia biestable, puesto que en un anlisis estrictamente
digital tiene dos estados estables:
Si Q es ALTO, entonces el inversor inferior tiene una entrada en ALTO y una salida en
BAJO, lo que fuerza un nivel ALTO a la salida del inversor superior, como supusimos
en primer lugar.
Pero si Q est en BAJO, entonces el inversor inferior tiene una entrada en BAJO y una
salida en ALTO, lo que fuerza Q a BAJO, otra situacin estable.
Podramos por tanto utilizar una variable de estado simple, el estado de la seal Q, para
describir el estado del circuito. As, existen dos estados posibles: Q = OY Q = l.
Un biestable tiene
mucho ms que
mostrar si
consideramos su
funcionamiento desde
el punto de vista
analgico, estudiando
conceptos de
meta estabilidad, que se
escapan del temario de
EDIG.
Este elemento es tan simple que no tiene entradas y as no hay manera de controlar o
modificar su estado. Cuando se aplica primero la energa al circuito, llega aleatoriamente a
un estado o al otro y se mantiene ah permanentemente.
Por supuesto, este elemento biestable que presentamos en un comienzo, evoluciona a otras
formas, controlables mediante entradas, que exponemos a continuacin.
4.2.1
Los cerrojos y flip-flops son circuitos secuenciales constituidos por puertas lgicas,
capaces de almacenar un bit, la informacin binaria ms elemental. Son los bloques de
construccin bsicos de la mayora de los dems circuitos secuenciales.
Estos circuitos pueden ser sncronos o asncronos:
()
Esto significa que, aun-que cambie el valor de alguna de las entradas, la salida no
cambia hasta un determinado momento marcado por el reloj. Normalmente esta
activacin sevproduce en el flanco de subida o bajada de la seal de reloj.
'~
Es importante saber
que algunos textos y
diseadores digitales
pueden emplear
(incorrectamente) el
nombre "flip-flop" para
un dispositivo que en
realidad es un cerrojo.
Por otra parte, la mayora de los diseadores digitales utilizan el nombre de cerrojo
(latch) para un dispositivo secuencial que no necesitan una seal de reloj.
Esto es, la salida cambia cada vez que cambia una de las entradas.
T-4.2
4.2.2
Bscula R-S
Una bscula R-S tiene como smbolo lgico es cualquiera de los siguientes:
Encontrars tambin
estas bsculas con el
nombre de "Bscula SE" (set- reset, de
establecimiento restablecimiento)
r--
Q -
QN
r--
()
O-
El circuito tiene dos entradas, S y R, y dos salidas, etiquetadas como Q y QN, donde
normalmente QN es el complemento de Q. La seal QN se representa en ocasiones como
Un poco ms adelante
comprobaremos que
esta definicin de QN
no es completamente
exacta.
_L
representa la salida
O en un detenminado
instante t.
Ot
Q, representa la salida
Qen undetenminado
instante
t.
Ot+1 representa la
salida O en el siguiente
instante, t+1.
O
O
O
O
1
1
1
O
O
1
1
O
O
1
Qt
O
1
O
1
O
1
O
Q
1
O
1
O
1
O
O
Qt+1
O
1
1
1
O
O
-~)
Como se puede observar en la tabla si tanto S como R son O, el circuito se comporta como
el elemento biestable: tendremos un ciclo de retroalimentacin que retiene uno o dos
estados lgicos, Q = O Q = 1. Pero tanto S como R pueden ser asertivas (ponerse al)
para forzar al ciclo de retroalimentacin a un estado deseado:
S establece la salida Q a 1.
Recuerda que cuando
decimos "elemento
biestable" nos
referimos al biestable
bsico, sin entradas,
presentado en el
comienzo de este punto
5.2
S
O
1
O
1.
)
0t+1
Qt
1
O
Inestabilidades:
Con esta observacin
queda patente que en
un caso detenminado,
Q no es el
complemento de
la salida de una
bscula R-S.
O, en
La metaestabilidad no
es objeto de esta
asignatura.
Cuando ambas entradas, S y R, estn a 1, ambas salidas son forzadas a cero. Una vez que
negamos cualquiera de las entradas, las salidas regresan a la operacin complementaria
como es habitual.
Sin embargo, si negamos ambas entradas de manera simultnea, la bscula se encamina a
un estado siguiente impredecible y de hecho puede oscilar o entrar a un estado conocido
como metaestable.
La metaestabilidad tambin puede presentarse se un pulso 1 que sea demasiado breve se
aplica a S R.
T-4.3
4.2.2.1
8------1
4.2.2.2
>--....---Q
Ji. - S
x+y=xy
)---....--QN
La bscula resultante
de esta implementacin
suele recibir el nombre
de Bscula
X)---....--Q
}------QN
o
1
QN
o
lastQ [astQN
Ry S
anterior cuando
R = S =1 .
4.2.2.3
e
QN
R----1
Nota:
S R
o o
o
1 o
1
QN
[ast Q lastQN
1 1
x x
[ast Q lastaN
~/
T-4.4
4.2.3
Latch D
La figura muestra un cerrojo D. Su diagrama lgico se reconoce como el de una bscula RS con habilitacin (enable), con un inversor agregado para generar entradas S y R a partir
de la entrada simple D (de datos).
Esto elimina la situacin problemtica en los cerrojos R-S, donde R y S pueden afirmarse
de manera simultnea.
D
QN
El circuito se denomina
con frecuencia un
"cerrojo transparente"
por esta razn.
QN
(-)
lasta lastQN
4.2.4
El primer cerrojo de la
figura se conoce con el
nombre de maestro; se
abre y sigue la entrada
cuando CLK es O.
Cuando CLK sube a 1,
el cerrojo maestro se
cierra y su salida se
transfiere al segundo
cerrojo, conocido como
esclavo. ste se
encuentra abierto todo
el tiempo que CLK es
1, pero solamente
cambia al principio de
este intervalo, porque
el maestro est cerrado
y sin modificaciones
durante el resto del
intervalo.
El tringulo en la
entrada CLK de los f1ipflops O (en su smbolo
lgico) indica un
comportamiento de
disparo por flanco, y se
denomina indicador de
entrada dinmica.
Un flip-flop D disparado por flanco positivo combina un par de cerrojos D como se ilustra
en la siguiente figura:
Do------I D
QM
=8
CLK
CLK
\)
As tenemos un circuito que muestrea su entrada D y cambia sus salidas Q y QN slo para
el flanco ascendente de la seal CLK de control.
Su tabla de verdad es la siguiente:
D
ClK
QN
x:
lasta ast QN
x:
lastQ las! QN
T-4.5
(,
A las cuatro primeras
filas se les llama modo
retencin y las cuatro
ltimas modo transparente
O
O
O
O
O
O
1
1
1
1
O
O
Qt
O
1
O
1
O
1
O
1
1
1
1
1
Qt+!
O
1
O
1
O
O
1
1
La ecuacin
caracterstica de
un biestable Des:
Qt+! =D
Observaciones:
4.2.5
El problema de qu
hacer cuando en una
bscula R-S, las
entradas R y S se
afirman de manera
simultnea, se resuelve
en un flip-flop J-K.
Flip-flop J-K
J
Q
CJ
QN
GLK
CLK
K CLK
x:
x:
x:
x:
I
I
I
I
QN
lastQ lastQN
lastQ lastQN
las Q lastQN
O
lastQN lastQ
T-4.6
O
O
O
O
1
1
1
1
K
O
O
1
1
O
O
1
1
Qt
O
1
O
1
O
1
O
1
La ecuacin
caracterstica de
un biestable J-K
es:
Qt+l
O
1
O
O
1
1
1
O
K
O
1
O
1
O
O
1
1
La aplicacin ms
comn de los flip-flops
J-K se encuentra en las
mquinas de estado
sncronas temporizadas
Qt+l
Qt
O
1
o.
Qt
O
O
1
1
Qt+l
O
1
O
1
O
1
X
X
K
X
X
1
O
x=O1
4.2.6
El circuito que aqu
presentamos es en
realidad un flip-flop T
con habilitacin
(ENABLE).
Flip-flop T
EN
T
QN
QN
T viene de "toggle",
conmutacin
La tabla de la derecha
muestra la misma
informacin pero de
forma ms concisa.
Qt
O
1
O
1
Qt+l
O
1
1
O
Qt+l
Qt
Qt
La ecuacin
caracterstica de
un biestable Tes:
T-4.7
4.3.1
Las puertas son dispositivos asncronos. Esto significa que la salida cambia en el momento
que cambia alguna de sus entradas (si suponemos que su tiempo de propagacin es nulo),
sin esperar a ninguna seal de reloj.
Tiempo de propagacin (td~ -7 Tiempo que tarda una puerta en cambiar su salida
desde que cambia alguna de sus entradas. El tiempo de propagacin es un parmetro
dado por el fabricante.
4.3.2
El tiempo de hold no es
un parmetro que
intervenga en el clculo
de la frecuencia
mxima del reloj de un
circuito.
Los biestables son dispositivos sncronos. Esto significa que su salida solo cambia cuando
se produce un flanco activo de reloj (si suponemos que su tiempo de propagacin es nulo).
ITiempo de establecimiento (set up time, tsetup~ -7 Tiempo antes del instante de flanco
activo en el cual las entradas del biestable no deben cambiar.
ITiempo de hold (hold time, thold)l-7 Tiempo despus del flanco activo en el cual las
entradas del biestable no deben cambiar.
Observacin:
El tiempo de propagacin, el tiempo de setup y el tiempo de hold son parmetros dados
por el fabricante. Es decir, en los ejercicios son dato.
Todos estos
parmetros del reloj
quedan completamente
ilustrados en la figura
de la pgina 5.1
4.3.3
Habitualmente se mide
en Mhz
En porcentaje, %
IPeriodo del reloj (1)1-7 Tiempo entre transiciones sucesivas en la misma direccin.
Esto es, el tiempo que transcurre entre un flanco de subida y el siguiente flanco de
subida, por ejemplo.
IFrecuencia de reloj (f)I-7 Inversa del Perodo.
T-4.8
4.3.4
Clculos de temporizacin
4.3.4.1
Para hallar este valor, calcularemos cunto tarda en "volver" (por el camino ms largo)
una seal, desde la salida de un biestable hasta una de sus entradas. Este camino incluye:
Observa que no
interviene el tiempo de
hold .
4.3.4.2
Observa que no
interviene el tiempo de
setup.
Para circuitos con ms de un biestable, los caminos que buscaremos sern desde la
salida de cualquier biestable, hasta la entrada de cualquier biestable. Por supuesto,
podemos llegar al mismo biestable del que partimos.
es\..e.
\.kJs '\W\~na..VV\~ \.
Q...ie~ ~\o l.U'l ~ \e.s\o.~\e
(l.c.\~~ \j e e-I/\ ~\.an CO e
I
1'., '\
<1\.~( \.e.e el
S \)..'-o\.O~ .
IOl~~le
T-4 .9
4.4 Contadores
Los contadores son circuitos secuenciales sncronos implementados internamente mediante
biestables. Si bien su funcin vara segn su topologa, se puede decir en general que estos
circuitos realizan una cuenta binaria, que podremos programar para forzar su inicio, su
final, y su sentido de cuenta.
4.4.1
'L-
CLK
QO
Ql
Q2
Q3
CLK
T
>--
>CLK
T
'----
4.4.2
1> CLK
4,
,"'
~/
QO
Ql
Q2
Q3
CLK
CLK
I ---1l' "
I>CLK
~/
.....- I>CLK
--k->I---;r,
I>CLK
.~
--------------~----------------------~---------------------------------------------
T-4.10
4.4.3
Contadores comerciales
Contador 74LS169
4.4.3.1
El resto de contadores
comerciales tienen funcionamientos similares
~::;
A la izquierda
mostramos el patillaje
del integrado, tal y
como se comercializa.
A la derecha, su
smbolo lgico.
Vcc
1,6
OUT
,...-_O_UT_P_UT_S_ - - "
OA
15
Os
14
Oe
13
T
11
12
4
5
LOAD
10
9....
:>
,-
Observa que en el
smbolo lgico se
dibujan las entradas a
la izquierda y las
salidas a la derecha
ENABLE
OD
----r---
10 ....
7":..
---..,..
2
UfO CLOCK
la
14
CA
A
S
13
12
as
e
o
OC
11
QD ....j5
Reo
CLK
LOAD
U/D
ENT
ENP
74L$169
ENASLE GND
DATA INPUTS
Timing Diagram
LS169A Binary Counters
Typical Load, Count, and Inhibit Sequences
LOAD~
.-
DATA
INPUTS
----+-'
L_
PANDl'
--.,
Os __ _
QD __
RIPPLE CARRY
OUTPUT -
---1
--,..--+-1-----.
_-.J
I 13
14
15
II--COUNTUP---t--INHIBIT--I
15
14
13
I----COUNT DOWN - - -
LOAD
T-4.11
Entradas A BCD
I~
D' = decimal
B' binario
En estas entradas podemos poner el nmero que nosotros queramos en binario desde el
D' 0=BOOOO hasta el D' 15=B' 1111. siempre teniendo en cuenta que A es el bit menos
significativo y D es el ms significativo.
Este nmero slo pasa a las salidas QA QB Qc QD cuando se activa el LOAD.
EntradaCLK
Es la entrada del reloj. El contador slo "funciona", es decir, solo lee las entradas y saca las
salidas, cuando se produce el flanco activo del reloj (que en nuestro caso, es el de subida).
El resto del tiempo el contador no hace nada.
Entrada LOAD
Cuando el LOAD se activa el valor de las entradas A BCD es transferido a las salidas QA
QB Qc QD de forma inmediata y con independencia de lo que hubiese en las salidas
anteriormente.
Mientras LOAD permanezca a "1" las entradas A BCD no se utilizan para nada.
Entrada VID (Up / Down)
Indica al contador si tiene que contar hacia arriba o hacia abajo. Si ponemos un "1" en esta
entrada entonces el contador, en cada flanco activo del reloj, aumentar en una unidad el
valor anterior de las salidas. Sin embargo si ponemos un "O" el contador disminuir en una
unidad el valor anterior de las salidas.
Entradas ENT Y ENP
Estas son las entradas de ENABLE y las activaremos o desactivaremos Siempre
conjuntamente (es decir, las dos a "1" o las dos a "O").
Mientras ambas valen "O" el contador funciona correctamente pero si las dos valen "1"
entonces el contador se inhibe (inhibit) y la salida ya no cambia ms (se queda fija) en los
sucesivos flancos del reloj; esto equivale a "apagar" el contador.
Salidas Q~--r2
En estas salidas veremos aparecer, en cada flanco del reloj, un nmero entre el D'O=BOOOO
hasta el D' 15=B'1111.
Si el contador est inhibido (ENT=ENP="1") aparecer siempre el mismo nmero y si no
10 est ese nmero ir cambiando siguiendo la secuencia que hayamos programado.
La salida de un contador puede servir, por ejemplo, para iluminar un display de siete
segmentos como el de un reloj digital.
Salida RCO (Ripple Carry Output)
Esta salida avisa de cundo el contador ha llegado al tope. En nuestro caso avisa si el
contador llega a D'15=B'1111 si est subiendo o avisa si el contador llega a D'O=B'OOOO
si el contador est bajando.
Por ser activo a nivel bajo, saldr un "1" mientras la cuenta no haya llegado al tope y sale
un "O" si llega al tope (es decir, 15 si est subiendo o Osi est bajando).
T-4.12
4.5.1
n
\
CLOCK
~CK
OC--
Lo
Un registro de
desplazamiento de n
bits de entrada serie y
salida serie puede
emplearse para
retardar una seal en n
tics del reloj.
Oc--
)CK
I
01----- SEROUT
'------1) CK
La entrada serie SERIN especifica un nuevo bit que ser desplazado en un extremo
para cada tic del reloj.
Este bit aparece en la salida serie, SEROUT, despus de n tics del reloj, y se pierde un
tic ms tarde.
4.5.2
SERIN
1Q
\
~CK
CLOCK
2Q
)CK
Un registro as puede
utilizarse para efectuar
la conversin serie a
paralelo, muy utilizada
en electrnica digital.
Qt----NQ
CK
Como se puede observar, tiene salidas para todos sus bits almacenados, hacindolos quedar
disponibles para otros circuitos.
T-4.13
4.5.3
Este circuito funciona a la inversa que el anterior, como se puede observar en la figura
siguiente:
CLOCK--------------------------------~
LOAD/SHIFT -------tJ--{j(
SERfN ---+--------+----j
Q
'---'--'O
1D
Un registro as puede
utilizarse para efectuar
la conversin paralelo a
serie.
CK
CK
2D ----+--------+-----1
O
NO----r---------~
SEROUT
CK
Para cada tic del reloj el registro carga nuevos datos de las entradas ID - ND, recorre su
contenido actual, dependiendo del valor de la entrada de control LOAD/SHIFT.
4.5.4
C~~
10
20
NO
CK
10
D
CK
2D
NO
CK
'~
T-4.14
4.5.5
Registros comerciales
La siguiente figura muestra los smbolos lgicos para tres populares registros de
desplazamiento de 8 bits integrados:
74x,166
74xl64
8
CLK
CLR
SERA
SERS
3.
:2
QS
OC .5
6
QD
QE
OF
QG
OH
4:
5
11
11
12
12
1"
,,-!:
14
CLK
SER
A
si
SO
UN
O
:lO
E
OH
13
OB
15
QA
12
14
1:3
QD
QC
'4
G'
74x194
11
QI;.
4.5.5.1
CLK
'CLKINH
RiN
Registro 74x164
(~)
Es un dispositivo de entrada serie y salida paralelo con una entrada de borrado asncrona
(CLR_L). Tiene dos entradas serie que se operan con AND de manera interna, es decir,
tanto SERA como SERB deben ser 1 para ser recorridos en el primer bit del registro.
4.5.5.2
"-._---:
Registro 74x166
4.5.5.3
Cl..,K
CLKINH
;::~ClK :~
to other
f1!p-l!ops
Registro 74x194
\
"--)
-
Function Table
Inputs
El '194 es un registro
de desplazamiento
bidireccional porque su
contenido puede ser
desplazado en
cualquiera de dos
direcciones,
dependiendo de una
entrada de control.
Mode
Clear
L
H
H
H
H
H
H
H
S1 SO
Clock
X X
X X
H H
L H
L H
H L
H L
L L
t
t
t
t
t
Outputs
Serial
Parallel
X
X
X
X
X
H
L
OA OB Oc 00
X XXXX L
X XXXX OAO
X a bcd a
H XXXX H
L
XXXX L
X XXXX OBn
X XXXX OBn
X XXXX OAO
b
OAn
OAn
OCn
OCn
OBO
OBn OCn
OBn OCn
ODn H
ODn L
OCO ODO
\......J
T-4.15
CLOCK
so
MODE
CONTROL
INPUTS Sl
CLEAR
SERIAL! R
DATA
INPUTS L
PARALLEL{:
DATA
INPUTS C
D
OA :
O OUTPUTS
B -
-+-_+_---4
{ OC:
00
:-+--+----i
CLEAR LOAD
(J
_r---INHIBlT
CLEAR
Entradas A BCD
D' decimal
B' = binario
En estas entradas podemos poner el nmero que nosotros queramos en binario desde el
D'O=BOOOO hasta el D'15=B'1111. Este nmero solo pasa a las salidas QA QB Qc QD
cuando se activa S 1=" 1" , S0=" 1" .
EntradaCLK
Es la entrada del reloj. El registro solo "funciona", cuando se produce el flanco activo del
reloj (que en nuestro caso, es el de subida). El resto del tiempo el registro no hace nada.
Entrada CLEAR
Si ponemos esta patilla a "1" no hace nada ysi la ponemos a "O" ponemos todas las salidas
a cero Esta entrada es asncrona, esto quiere decir que las salidas se ponen a "O" en el
mismo instante en que poenemos un "O" en la entrada CLEAR sin necesidad de esperar al
flanco activo.
Entradas SO SI
Vemos las cuatro combinaciones posibles:
Se comporta como el
LOAD de un contador
Se comporta como el
ENABLE de un contador
SI = "1" SO = "1"
Cuando llega el flanco activo el valor de las entradas A BCD es transferido a las
salidas QA QB Qc QD con independencia de lo que hubiese en las salidas anteriormente.
SI = "0" SO = "0"
En este caso el registro se inhibe (inhibit) y las salidas ya no cambian ms (se quedan
fijas) en los sucesivos flancos del reloj; esto equivale a "apagar" el registro.
(~
T-4.16
SI = "1" SO = "0"
En la Function Table al
valor anterior de las
salidas los llaman
Cada vez que llega el flanco activo pone el valor de Serial_Left en la salida QD,
traslada el anterior valor de QD a la salida Qc, el anterior valor de Qc a QB y .el anterior
valor de QB a QA. Es decir, desplaza las salidas hacia la izquierda (o hacia arriba, segn
se mire). Importante: El valor anterior de QA se pierde.
t)
"----
Cada vez que llega el flanco activo pone el valor de Serial_Right en la salida QA,
traslada el anterior valor de QA a la salida QB, el anterior valor de QB a Qc y el anterior
valor de Qc a QD. Es decir, desplaza las salidas hacia la hacia la derecha (o hacia abajo,
segn se mire). Importante: El valor anterior de QD se pierde.
Entrada Serial Left
En esta entrada podemos poner el valor que nosotros queramos (O 1) que solo se utilizar
en el caso en que tengamos Sl="l", SO="O" (desplazamiento hacia la derecha}; En ese
caso el valor de Serial_Left ser transferido a QD.
Entrada Serial Right
En esta entrada podemos poner el valor que nosotros queramos (O 1) que solo se utilizar
en el caso en que tengamos Sl="O", SO="l" (desplazamiento hacia la ), en ese caso el
valor de Serial_Right ser transferido a QA.
(~)
Salidas Q&-~~
En estas salidas veremos aparecer, en cada flanco del reloj, un valor entre el D'O=BOOOO
hasta el D'15=B' 1111.
~I
So
~,-----QL-----______
~
Ger------_
~"t_---__.
T-4.17
Bscula R-S
Latch O
~~ 6\\-,-o
~'f\Crof\o
I~
Flip-Flop O
~
c.
":!~ ~
~\
<lt
J>
'\)~''O<:..Cor)
a\'i~'
j~
~~
<:.\1(
So'\oe~e:
o.t:.
c-'t..kG'-\.
.J
el
"
c.c...o... \}e..~~ ~
lo '~e'( iA ~t
E~6,e
j,
PAlZZ>
Qt
Qt+1
.:{
,1)
:1(
fi
~'
dI<
o o o~ f-b
o o 1 - t-~ I
o 1 0-!-bo
o 1 1-~\
o. . o 1"'0
1
1
o 1 "0
1
o '"':bl
Qt
~t
Qt+1
o"'" o -"0
o. . . 1 "'loO
1
o
v~
-
",
~\
Qt+1
Qt+1
o
o
CQr
Q~
e
1
1 __
1
'----
____
L......
Qt
o o
o o
o 1
o 1
1
o
1
o
0- ~c
1-,s. ..
<9
'"~
.Q
o~
\Ji;
Qt
Qt+i
o
o
o
1
,o
03
@- ~t
_g)~CJ
IQ~=DJ
Qt+1
EN
Qt+1
Qt:,.
T
X
Qt+1
o
o
Q.t
Cft:.
'Sobre
\0'60
se
.$O..
.e..Vl Q..U~orno..las
, Qt
J
O
Qt+1
o
o
Clases de EDIG
Xl
I
)(
-
www.monteroespinosa.com
Qt+1
Qt+1
J.
./
K
1 f'i-I
F")FIOP T
~
~
1'~
Q.
__
Biestable T asncrono
5~YIC(@l1o
~~
;)eJ
Flip-Flop ~~)
~:\.\'\cron.o
1"---./
klV\CXOt\O
-~.
'*
VI
-
lo
TEMA 5: AUTMATAS
As pues, desde ahora
usaremos el trmino de
mquina de estado o
autmata
indistintamente.
f:ExQ~Q
cJ
Mquina de Mealy
En la mquina de Mealy la salida depende del estado en que se encuentra la mquina y de
las entradas, por tanto la salida no es sncrona con el reloj.
entradas -~
Lgica
de estado
siguiente
'"-==>
---">
excitacin
estado actual
Memoria
de estado 1--
--,1
Lgica
de salida
-y
salidas
entrada
de reloj
Maquina de Moore
En la mquina de Moore la salida depende exclusivamente del estado en que se encuentra
la mquina.
Se puede decir que en
la mquina de Moore
las salidas estn
asociadas a los
estados, o lo que es lo
mismo, todas las
transiciones que
conducen a un mismo
estado tienen asociada
la misma salida.
entradas
t_ o'
>
--'>
Lgica
de estado
Siguiente
excitacin
Memoria
de estado
estado aclual
entrada
de. reloj
Lgica
de salida
salidas
T-5.1
Mquina de Mealy
En la mquina de Moore:
El estado siguiente est determinado por la lgica de estado siguiente F, como una
funcin de la entrada y estado actuales.
La lgica de salida G determina la salida como una funcin de la slo del estado
actual.
Estado siguiente = F(estado actual, entrada)
Salida = G( estado actual)
Mquina de Moare
Obviamente, la nica diferencia entre los dos modelos de mquina de estado se encuentran
en cmo son generadas las salidas. En la prctica, muchas mquinas de estado deber ser
categorizadas como mquinas de Mealy, porque tienen una ms salidas del tipo Mealy
que dependen de la entrada as como tambin del estado. Sin embargo, muchas de estas
mquinas tambin tienen una ms salidas de tipo Moore que dependen solamente del
estado.
Observacin
Las mquinas de estado suelen emplear flip-flops D disparados por flanco positivo para su
memoria de estado, aunque tambin es posible hacer uso de flip-flops D disparados por
flanco negativo, cerrojos D flip-flops J-K.
5.1.2
Ecuaciones caractersticas
T-5.2
Tipo de dispositivo
Ecuacin caracterstica
Latch D
Ql+l = D
Qt+l =D
Flip-flop J-K
Q+l =S+RQ
Ql+l = JQt +K Qt
Qt+l =TQt +T Qt
Bscula R-S
Flip-flop T (problemas)
5.1.3
Qt+l =Qt
El objetivo del anlisis de circuito secuencial es determinar las funciones de salida y estado
siguiente de modo que pueda predecirse el comportamiento de un circuito.
El anlisis de una mquina de estado sncrona temporizada tiene siete pasos bsicos:
Para biestables D,
recordemos que en el
flanco ascendente de la
seal de reloj, cada f1ipflop D muestrea su
entrada D y transfiere
este valor a su salida
Q. Por lo tanto, para
determinar el siguiente
valor de Q (es
decir, Ql+l)' primero
deberemos determinar
el valor actual de D.
1. Determinar las ecuaciones de excitacin para las entradas de control del flip-flop, que
son ecuaciones lgicas que expresan las seales de excitacin como funciones del
estado y entrada actuales. Estas ecuaciones pueden obtenerse del diagrama del circuito.
2.
Sustituir las ecuaciones de excitacin en las ecuaciones caractersticas del flip-flap para
obtener las ecuaciones de transicin. Estas ecuaciones expresan el valor siguiente de
las variables de estado como una funcin del estado y entrada actuales.
3. Hacer uso de las ecuaciones de transicin para construir una tabla de transicin. Para
ello, evaluamos dichas ecuaciones para cada posible combinacin de estado/entrada.
Tradicionalmente, una tabla de transin enumera los estados en la izquierda y las
Qombinaciones de entrada en la parte superior de la tabla.
4. Determinar las ecuaciones de salida.
5. Agregar los valores de salida a la tabla de transiCin para cada combinacin de estado
(Moare) o de estado/entrada (Mealy) y crear una tabla de transicin/salida.
6. Nombrar los estados y sustituir nombres de estado por combinaciones de variables de
estado en la tabla de transicin/salida para obtener una tabla de estado/salida.
7. Dibujar un diagrama de estado correspondiente a la tabla de estado/salida.
"'-~
Tiene un crculo ( nodo) por cada estado, y una flecha ( arco dirigido) para cada
transicin.
La letra dentro de cada crculo es un nombre de estado. Cada flecha que abandona
un estado dado apunta al siguiente estado para una combinacin de entrada dada.
Tambin muestra el valor de salida producido en el estado dado para esa
combinacin de entrada (si la mquina es de Mealy) puede mostrar los valores de
salida dentro de cada crculo de estado (si la mquina es de Moare, puesto que son
funciones de estado solamente).
Observacin
En una mquina con n entradas, tendramos 2n flechas dejando cada estado. Esto es
complicado si n es grande. Por convencin, solamente usaremos una flecha para cada
distinto estado siguiente.
I
T-5.3
5.1.4
Las mquinas de estado sncronas temporizadas que se construyen a partir de flip-flops J-K
tambin se pueden analizar aplicando el procedimiento bsico que se indic en el captulo
anterior. La nica diferencia es que existen dos ecuaciones de excitacin para cada flipflop: una para J y otra para K.
(\
Si la mquina es de Moore se puede hacer una tabla auxiliar con las salidas
asociadas a cada estado en vez de incluirlas en la tabla de transiciones.
hu 1
l"
p ementar e CIrCUItO.
T-5.4
PuertaAND
74HC08
Puerta OR
O
O
1
1
O
1
O
1
y
O
1
O
1
O
O
1
1
74HC32
X AND Y
O
O
O
1
XOR y
O
1
1
1
PuertaNOT
NOT X
1
O
74HC04
PuertaNAND
Y
O
1
O
1
XNAND y
XNOR y
1
1
Y
O
1
O
1
X
O
O
Y
O
1
XXOR y
O
1
1
X
O
O
Y
O
1
O
1
X
O
O
74HCOO
1
1
X
O
O
PuertaNOR
74HC02
74HC86
PuertaXOR
=Dy'
~Y'-:' ~
74HC86
--
1
1
1
O
1
O
O
O
1
1
O
y {. >,y
PuertaXNOR
~ eP
(j
1
1
XXNOR y
1
O
O
1
Y ::: X y +-.,v
T-A1.1
APNDICE 2: METAESTABILIDAD,
NORMAS DE DISEO SNCRONO
Bases del funcionamiento sncrono
Las salidas de los circuitos secuenciales slo pueden cambiar de estado en los flancos
activos de reloj.
"---t----!r.
tPLC
Cambio de estado
:'"
t:<
,-+--,
PLC
~~
'~/'
~'----.... ~
P~
Pff
----!I
tpff 1
..
tPLC
tsu
>*-_.... _ .._-_._-----_..;.
:1041
:: T
:
J...J:.lk:
::
tpff
+ tpLC + tsu
fCLKmax
Donde
t pLCmax
existentes en el circuito.
Ver el apartado:
"sincronizacin de
~J entradas asncronas".
No se activan, durante la operacin normal del sistema, las entradas asncronas de los
flip-flops.
Las entradas sncronas de los flip-flops no estn alimentadas por seales asncronas.
Las entradas asncronas de los flip-flops no estn alimentadas por seales sncronas.
Todas las entradas de los circuitos combinacionales, incluso las externas al sistema,
estn registradas.
T-A2.1
A todos los flip-flops les llega de manera simultnea la seal de reloj del circuito.
Esto, en general, no es posible que se verifique de manera estricta; el reloj llegar con
cierto desfase a las entradas de los flip-flops debido a las distintas longitudes de las
pistas y a las distintas cargas que soportan los buffers del rbol de reloj.
El desfase en la llegada del reloj a los flip-flops de un circuito se denomina skew del
reloj. Un circuito sncrono puede admitir un valor mximo de skew en la seal de reloj.
Vamos a verlo con ms detenimiento:
IN
Q1
Q 1-------1 D
Q2
CLOCKD
En la figura, el skew: es la
diferencia de tiempo entre los
flancos de CLOCK y
CLOCKD
FF2
CLOCK - - - - i l - - -____
> 01
Los dos primeros trminos son el mnimo tiempo despus del flanco de reloj tras el
cual el valor a la entrada de un biestable cambia.
El tiempo de "hold" es el mnimo tiempo en que la entrada puede cambiar
El "skew" se sustrae del margen existente en el tiempo de "hold"
Las normas de diseo sncrono son una buena gua para la realizacin de diseos con un
funcionamiento seguro. En su aplicacin prctica es frecuente que se den casos en los que
resulta inevitable vulnerarlas: en el interfaz con buses asncronos o con memorias
sncronas, por ejemplo, o en el de la sincronizacin de entradas asncronas. Cuando esto
ocurra es aconsejable aislar los mdulos de interfaz con sistemas asncronos y disear el
resto del sistema atenindose a las reglas enunciadas.
En el diseo de circuito es aconsejable utilizar flip-flops tipo D, puesto que son los de
funcionamiento ms simple y facilitan la interpretacin del modo de operacin del circuito.
Adems, con los flip-flops tipo D resulta muy sencilla la incorporacin de entradas
sncronas de reset, preset y habilitacin de reloj. Las entradas asncronas de los flip-flops
slo deben utilizarse, si se desea, para la inicializacin del circuito, pero nunca durante la
operacin normal del mismo.
T-A2.2
Metaesta bilidad
~
Recuerda que en la
\ bscula R-S, al poner
sus entradas a 1,
podemos originar
tambin un estado
metaestable.
Cuando se violan los tiempos de set-up o de hold en un flip-flop, su salida puede pasar a un
nivel intennedio; al cabo de un tiempo indetenninado tomar aleatoriamente el valor O l.
La probabilidad de que un flip-flop entre en estado metaestable, as como el tiempo de
pennanencia en dicho estado, dependen del proceso tecnolgico y de las condiciones
ambientales de funcionamiento, aunque se puede generalizar que los flip-flops pasan
rpidamente a un estado estable.
El problema es que si la salida del flip-flop es muestreada en el estado metaestable, se
propagar un valor indefinido a la lgica a la que est conectado.
C)
Asncrona
-----ID
CLK
CLK
D
Q
CLK
Sncrona
Reloj
Este circuito provee un tiempo para que desaparezca la metaestabilidad antes de usar la
seal en el circuito. A cambio, nuestro sistema tendr un mayor tiempo de respuesta.
Veamos el cronograma de la situacin:
Reloj
Asncrona
Sncrona
T-A2.3
IPuertas NANDI
1. NAND mediante AND + NOT
NOT('X' AND 'Y')=XY='X' NAND 'Y'
NOT
~
~
AND
OR
IPuertas NOij
1. NOR mediante OR + NOT
NOT('X' OR 'Y')=X +Y='X' NOR 'Y'
:~J
NOT
AND
OR
T-A3.1
A4.1. Comparacin
Este procedimiento,
conocido como
algoritmo de
comparacin, supone
que los dos operandos
se expresan
empleando el mismo
nmero de cifras. Si no
es as, previamente
habr que extender
aquel nmero que
emplee menos cifras en
su representacin
"*
Este algoritmo funciona para cualquier sistema de numeracin (binario, octal, decimal,
hexadecimal) estudiado anteriormente.
Ejemplo:
Si X
= 1101 0110C2
e Y
C)
e y
X <Y
A4.2. Suma
El mecanismo usualmente empleado para sumar,
trabajando en distintos sistemas posicionales
naturales, es similiar en todo momento al empleado
normalmente para sumar nmeros en decimal. Este
mecanismo est presentado en la figura de la
derecha.
1+
lA-l+
3
l..-i
.-1
8
-.y
5
Jt
-.y. .,+,
3
4
'+'
9
El algoritmo clsico de suma consiste en sumar las cifras de igual peso de los dos
sumandos, comenzando por las cifras menos significativas. Cada una de estas sumas
parciales da lugar a cada una de las cifras del resultado.
i~
El proceso continua hasta haber sumado todas las cifras de los sumandos.
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619 142 355
T-A4.1
A4.2.1. Acarreo
Con frecuencia se
emplea el trmino
ingls carry, la letra
e, para designar al
acarreo.
Puede ocurrir que alguna de estas sumas parciales no se exprese en una nica cifra, sino
con dos. En este caso la cifra menos significativa de la suma parcial formar parte del
resultado final, y la cifra ms significativa se acarrea a la siguiente suma parcial. De esta
manera, en la siguiente suma parcial se procede a sumar las cifras correspondientes, ms el
acarreo previo para obtener la siguiente cifra del resultado.
n
"'-.
o ~ Acarreos
+
4
93
A4.2.2. Desbordamiento
Aunque trabajando con
lpiz y papel el nmero
de cifras es flexible
(siempre se puede
escribir una cifra ms),
no ocurre lo mismo con
los sistemas que
proceesan informacin.
Usualmente estos se
disean de modo que
slo son capaces de
trabajar con un nmero
de cifras determinado,
por eso el
desbordamiento es un
punto importante sobre
el que se debe prestar
atencin.
Al trabajar con n cifras se puede producir una situacin como la dada en la siguiente figura,
en la que n = 6. Como se ve, al sumar las ltimas cifras de los sumandos junto con su
acarreo se produce un nuevo acarreo. Este acarreo formara parte, directamente, del
resultado fmal, pero, puesto que se trabaja slo con seis cifras, no puede ser as. En este
caso, si no podemos incluir esa ltima cifra, el resultado mostrado ser claramente
incorrecto.
.'--_____-.:....y~--_._.,1
Resultado
El desbordamiento
suele recibir el nombre
de overflow (del
ingls)
Por tanto, cuando se trabaja con un nmero de cifras n fijo, puede ocurrir que el resultado
de la operacin necesite un nmero mayor de cifras para expresarse. En este caso el
resultado obtenido de la operacin con n cifras es incorrecto, y se dice que se ha producido
un desbordamiento.
'
T-A4.2
lB~Y=23
('\
te
1
\,
.1
1.-
lB~Y=23
lB;;
t
e
5=29
1
\,
O
V
lB
5=17
\ ...
"V
1 .
5=+5
te
10
0(2
\..~--~y------'---::/
5=+12
e =1 ) y hay desbordamiento.
T-A4.3
CJ
A4.3. Resta
A4.3.1. Algoritmo clsico de resta
Aunque se trata de un algoritmo conocido (y asimilado, en decimal) por todos, en este
apartado no vamos a desarrollarlo, porque no ser nuestra manera de operar a la hora de
hacer una resta.
As, slo vamos a presentar una imagen recordatoria del procedimiento clsico de resta:
Este es el algoritmo
preferido para realizar
restas en sistemas
digitales, y el ms
aconsejable.
3+1
t2
14
t<8
i5
i6
3
2
i1
Emplear el algoritmo de resta por complementacin: esto es, en vez de restar, sumamos
al minuendo el opuesto del sustraendo (obtenido complementando este a dos, es decir,
complementando y sumando 1). En este caso, (cuando ya tenemos el minuendo
complementado a dos) cuando nos disponemos a hacer la suma, valen las reglas
. descritas en el punto 2.6.2.5 acerca del desbordamiento.
T-A4.4
Ejemplo 1:
= 1001c2
e Y
= 1110c2 .
X +(-Y)=1001+001O=1011C2
S = 1011C2 = -5 D
Ejemplo 2:
Observa como, por
producirse
desbordamiento, el
resultado final necesita
de una cifra ms para
representarse
(-7)-3=-10
Esto es, vamos a hacer X - Y , donde X = 100 lC2 e Y = 00 11C2 .
Para ello, complementamos Y, obteniendo -y = 11 O1
Y sumamos ambas cantidades, con el algoritmo clsico de la suma, obteniendo:
C)
T-A4.5
CJ
5.0V
Logic 1 (HIGH)
3.5 V
-
undefined
logic level
1.5 V
Logic O (LOW)
o.ov
AS.l.2. Transistores MOS
Se trata de un dispositivo de tres terminales que acta como una
resistencia controlada por voltaje. El voltaje de entrada que se
aplica en un terminal controla la resistencia entre las dos
terminales restantes.
vIN [J------I
')
\~~
T-A5.1
Un aumento de la
tensin V disminuye
gs
la resistencia entre
drenador y fuente,
gate
drain
Rds
source
Como se observa en el
circuito, el drenador se
encuentra normalmente
a un voltaje ms alto
que la fuente.
= O el
v~
I
, gs
+(
CJ
gate
source
drain
Observaciones:
El voltaje de compuerta
crea un campo elctrico
que refuerza o retarda
el flujo de corriente
entre las terminales de
fuente y drenador. Este
es el "efecto de campo"
en el trmino MOSFET.
L"
La compuerta de un transistor MOS tiene una impedancia muy elevada. Es decir, esta
compuerta est separada de la fuente y el drenador por un material aislante que tiene
una resistencia muy elevada, con lo que la intensidad que corre entre la compuerta y las
otras terminales del transistor es despreciable.
T-A5.2
VDD =+5.0V
Normalmente el voltaje
de alimentacin
VDD
se encuentra en el
intervalo de 2 a 6
voltios y con mucha
frecuencia se establece
5V para tener
compatibilidad con los
circuitos TIL.
Cuando VENT
VIN
Ql
Q2
Vour
0.0 (L)
5.0 (H)
off
on
on
off
5.0 (H)
0.0 (L)
su Vgs es un valor negativo muy grande (-5.0 V). En estas condiciones VOUT
Cuando VENT
()
= 5 V.
El modelo del
interruptor nos lleva a
una manera de dibujar
circuitos CMOS que
nos facilitar mucho su
comprensin.
VDD =+5.0V
VOUT
=H
VOUT
VDD
=L
= +5.0 V
T-A5.3
AS.1.6. Anlisis de circuitos CMOS para obtener la funcin lgica que realizan
Para hallar la funcin booleana que implementa un circuito CMOS, podemos actuar de dos
maneras:
ON
OFF -7
En transistores PMOS:
ON
-7
OFF -7
-7 . (AND)
V
-7 + (OR)
variable igualada a '1' -7 variable sin negar.
variable igualada a 'O' -7 variable negada.
/\
C)
rMO;~
I---F
~,~
'
T-A5.4
Nosotros nos vamos a centrar slo en el estudio de la velocidad, que depende de dos
caractersticas importantes: el tiempo de transicin y el retardo de propagacin.
(a)
(b)
(e)
HIGH
/'
--------~----------------'*\--------------VIHmm
LOW ----~~~-----------------+~i'------------V~m~
./
tr
-- --
--
a) Esta figura muestra la situacin ideal para el cambio de estado en las salidas: en tiempo
cero.
b) En este caso se muestra una visin ms realista de la salida de un circuito: una salida
necesita una cierta cantidad de tiempo, denominado tiempo de ascenso (t r) para
cambiar de BAJO a ALTO, y un tiempo posiblemente diferente, denominado tiempo
de cada (ti) para cambiar de ALTO a BAJO.
c) Incluso la figura B no es bastante precisa, porque la razn del cambio del voltaje de
salida no cambia instantneamente. En su .lugar, el comienzo y el final de una
transicin son suaves, como se ve en la figura e.
En la figura e, los tiempos de ascenso y cada indican cunto tiempo tarda un voltaje
de salida en pasar a travs de la regin indefinida entre BAJO y ALTO.
T-A5.5
La capacidad parsita
se conoce en
ocasiones como carga
capacitiva o carga de
~ CA.
Se pueden analizar los tiempos de acceso y cada de una salida CMOS utilizando el circuito
equivalente que se muestra a continuacin:
Vcc =+5.0 V
eMOS
in verter
Observa que en el
ejemplo estudiamos un
inversor CMOS como el
que hemos visto en
estos apuntes.
eL: esta capacidad representa la carga de CA: determina los voltajes y corrientes que
estn presentes cuando cambia la salida de un estado a otro.
(j
Cuando una salida CMOS controla slo entradas CMOS, la carga CD es despreciable. Para
simplificar las cosas, analizaremos solamente este caso, con RL = 00 y ~ = O en el resto
de estos apuntes.
Vamos a estudiar el anlisis mediante un ejemplo:
Ejemplo:
Vamos a analizar los tiempos de transicin de una salIda CMOS, para el circuito anterior,
con eL = 100 pF (carga capacitiva) y con Rp =200 Q Y Rn = 100 Q (resistencias "de
encendido" de los transistores)
Los tiempos de ascenso y de cada dependen del tiempo que se necesita para cargar y
descargar la carga capacitiva eL
T-A5.6
Vcc =+5.0V
AC load
VOUT =5.0V
VIN
Iour=O
En este ejemplo
suponemos que
cuando los transistores
CMOS cambian entre
"encendido" y
"apagado", lo hacen de
forma instantnea.
Vamos a suponer que al tiempo t = O la salida CMOS cambia al estado BAJO, generando
as la situacin que planteamos a continuacin:
Vcc =+5.0V
AC load
Vour
00
VOUT
Re
L L
= y DD e
TT
= 5.O. e
100.100.10-
t
12
5.0. e
10.10-
200Q
>lMQ
>lMQi
lOOQ
~.-----------------------------------
5V -j--.,
Vour
oV4--,4--+----=======--------------time
0 ___
tf
T-A5.7
Para obtener el tiempo de cada, debemos resolver la ecuacin anterior para VOUT = 3.5 y
VOUT
= 1.5 . As:
VOUT
10 . 109 .
InVOUT
eL ln--=-
t=-R
VDD
5.0
Obteniendo:
t35 =3.57ns}
.
El tiempo de cada
t1.5 = 12.04 ns
Tiempo de ascenso:
El tiempo de ascenso puede calcularse con un mtodo semejante. La figura (a) muestra las
condiciones en el circuito cuando la salida se encuentra en un estado estable BAJO. Si al
tiempo t = O la salida CMOS cambia al estado ALTO, resulta la situacin descrita en (b).
Vcc =+5.0V
Vcc =+5.0V
(b)
(al
o
VIN
Una vez ms, VOUT no puede cambiar de forma instantnea, pero al tiempo t
Cf)
el
>lMn
>lMn
loon
En este caso la
constante de tiempo
RCes 20 ns.
I
--.-J
5V
Vour
oV - 1 - - - + - - + - - - - 1 - - - - - - - - - - - - - time
o
T-A5.8
5.0
tI 5
. _
- t3 .5
7.13 ns }
El tiempo de ascenso t r es la diferencia entre ambos nmeros, 16.95 ns
24.08 ns
Observaciones:
Se dira aqu que la
capacidad de
excitacin de la salida
es "asimtrica".
Adems, en algunas
familias lgicas (como
TTL) los umbrales no
son simtricos en torno
a un punto medio de
voltaje
Una regla sencilla y prctica para estimar los tiempos de transicin es que stos son
aproximadamente igual a la constante de tiempo RC del circuito, cuando se est
cargando o descargando. Slo tienes que fijarte como, efectivamente, en el ejemplo
resuelto de estos apuntes este "truco" es vlido.
Vour
t pHL
1-
I-
tpuI--1I
(
"-/
T-A5.9
Donde:
Entre los muchos factores que influyen en el retardo de propagacin tenemos que destacar
los tiempos de ascenso y cada, lo que hace que especifiquemos los tiempos de retardo de
propagacin como la distancia temporal entre los puntos medios de las transiciones de
entrada y salida, como se ilustra en la figura siguiente:
- tpLH - -
- - tPHL -
O,5Vcc
fO~)!
'
Vcc
O,5*Vcc
--&==
Vcc
.....1
O,5Vcc
Vcc
O,5*Vcc
i ...... J
'
.., t
1 I
+---+I7P:-----.
Vo(t)
T-A5.10
FEBRERO 2005
Problema 2
Se desea disear un circuito de sumar y restar dos nmeros de un bit AO y BO con acarreo de entrada C i- 1
mediante una seal de control M. El resultado se compone de tres bits [S2,SO] expresado en complemento a dos.
La operacin, en funcin de M es la siguiente:
"O"
[S2,SO]
= AO + BO + C
M = "1"
[S2,SO]
j _1
AO - (BO + Ci - 1)
2.1 Rellene la tabla de verdad, Tabla 2, y obtenga justificadamente la funcin lgica simplificada para SO.
O
O
O
O
O
O
O
O
1
1
1
1
i
1
1
1
AO
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
BO
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
Ci-1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
S2
o
G
S1
SO
"
o
1
t
t:J
e;
-o
Cf)
-o
L
1
P
ll>
(fj
\
\
t
o
()
<2:>
AUX
tJ
1
\
O
\
1
'Z
O
1
(.
O
Z
1
"3O
()
O
-1
O
\
O
'2
O
\
1
o
O
(:)
1
-1
O
--
2.2 Implemente la funcin AUX de la Tabla 2 con el mnimo nmero de puertas NOR de dos entradas.
Nota: Slo se dispone de las entradas M, AO, BO y C i- 1 y no de sus complementarias.
619142355
SEPTIEMBRE 2006
PROBLEMA 1
-
La lectura de la temperatura de una cman~ frigorfica, en grados centgrados, se obtiene con cuatro bits
(T3, T2, TI, TO) codificada en complemento a 2, siendo TO el bit menos significativo. Se necesitan dos
salidas (LR y LV) que activen un led rojo (LR) y un led verde (LV) respectivamente (ambos activos a
nivel alto). Para ello, se quiere implementar un circuito que active elled verde cuando la temperatura
de la cmara eS,t entre -3 y +4 oC, ambas incluidas, y elled rojo en el resto de los casos.
o
LV
z.
3"i
5'
6
1
u\
-I?
-1
-6
-5
-"1
-3
-2
-{
T3
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
T2
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
TI
O
.0
1
1
O
O
1
1
O
O
1
1
O
O
1
1
TO
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
LR
o
o
o
o
(>
i
i
LV
i
1
1
1
1
o
.1
o
o
1-
1
1
.1
i
o
o
o
1
1
1
1.2 Obtenga la funcin lgica simplificada para la salida LV. Para dIo utilice un mapa de Karnaugh. (5
puntos)
,
1.3 Implemente la salida LV utilizando el mnimo nmero necesario de multiplexores de cuatro y de
dos entradas de datos. (la puntos)
I~
00
01
11
10
00
fr
--))
O/
'1~
"
o
o
Vi
o
o
o
TITO
1)
10
Hvx
Tel'1(I"t o l,
Z Xi
--\
e.;"'pe~",r
PNCo.
v",,;,;. bll:)
L(
Nu X
Q.p~re
r3 z
LV -
i'c....VI
e\ ~... l
Ti To
Ve.. r:c..
e"
l,e'J
(iZ t Ti)
t3 rz. ro
.:..
fr""'~ 1'10
C4. d c..
c\e
el;. f o.J1'Ict.'"
T3TZT,1
r1 To + T'3T2 Tb + T3
-t'3TZT1TO
- - + t3 rz l To + ti) (iy~)
~
...
n
r z 1. ro t Ts T T t t:()
r> fZ ,
-T3 r2
- T~
.:::;:.
+ 3 rz f:1
To
1-
+ T3
2 e.. ~. i:o,,~r~
Co>1
TZ
TZ T
1.
Z (
","
L'
';,.
'.
. .-
!1u)C
'1 k
T3
/ TZ
l :
I
Mv.x l
~ "
. .'
"
.
. 'T1. To
f?I
TiTO
I~
To t T1
, '.,'
,1
....
.;.,
= ro Ti+T1)
.'
==
ri To
+ Ti
Ti T o
,
.. ,
.. '... .,
"
....
J. + Ti fo . o ., Ti
f r1 (ro t
To t
O..
ro .o
ro)
ti ro . o
='
TiTo t T.;1 lo ,-
r -:1 Te . j
+ Ti ro
-1- Ti ro i
nTo
i
o
y ..... . . - - - -
C>
el
C';
Io
Ir
_ _.......... I,
_ _ _ _I
LV
.Il
Ti To
r)
el c.
Ir
r ..
y ....._.----J
i
I,
, ' 1 ' ;.I1,
NOTA
e<t~
~;rt.J.....-.t,..~;"Job;:('
il"lp{.-.(".f...r
'.,
""
.'
, .",
-4
4"( tt>'\eMoJ
be &..
c.. ....
OI-~v1, e...,
Mux
"
..
..
'
..
,.
To
-t-
t1
l.- .
Iy =
t Ti
ro (Ti" Ti)
Ti . To
--
TI-To
{r
d(
/er"'>
,'"",pl?t,...e-,r6. r 14,.,.eC."'-~((1
MlJX 2
<?",
Ce.XII
!, )
= ti TCd ti.ro
ji
j1(~)
Ti
+ T1.
(;DI t TLl]
Xo>
A.s;~""".1
e." el H.tJX Z
r,
TOiT1
[ri
~cpl
r.
NOtA:
To
o
t. "e
0
;1
..
(oLo t
r')
:r',
Io
~I
2)(1 :
re..
Jt.
Ti
("1
'-f x2,
fYltr
~('oe I y ~ p:.-
S,,""''l ""
po,'... ",
f{Jx .
Z V"-r;", ~er"
J... l d~
;'"
ti lo
As{
y To + Ti se
Ti To
guY1c;o",e
ro,
evc~o
sc.
l1C6
I"7l,;e
_
l1e~A ~
I
\k..r;t:(.lA
M,}c..r\
Ji ,.().)cc)-,~..>\ I
J,t I&tt.J
Vj ....
'
Le.,
,)""'C1d''''l
)
e..,
NOVIEMBRE 2011
Implemente un conversor de cdigo BCD de dos dgitos (B para las decenas y A para las unidades)
a cdigo binario de 7 bits (S6 ... SO) utilizando exclusivamente dos sumadores de 4 bits con acaneos
de entrada y salida como los de la Figura. Justifique adecuadamente su solucin.
~0\e-wloS
t:h Q;c. \)
yo-
e.Y)
e-\
\? nCU"'lo ~S
Ltv.Co
Co-Y?
f0(,o'o\ema.
\>a.ro- ~(Y'O-r
~\:L(' de. e..\la..s -.o.. COU"L\;L'nO CVl \o lV1o..rt.o 0-0
-tenevnO'5 ~ tVY\~e.(YleJ1\:o..r .ko(>e-l~Y\\",,~lOS * ~J
<X..
"l
m'
~~
~~
--+
~z.
~2
~l
<G
G'\.
B3
Wz.
\31
'O
\31
\33~'j
rO
B>~
gt.
~?\-~l
S~
'00
'6Z.+B:::>
b.."3
~\-~\-~
S3
\3.0
O
'\
l(
BZ
B3
~l
f:\z
\30
'Al
\3r\Jt?; R::.*(}.\
Sz.
S(
g,~
-O
1\
1\0
~
()
\.0\0
NOVIEMBRE 2012
1.1 Rellene la Tabla de verdad de la funcin lgica F = A> B. Para este apartado, los nmeros A y
B slo pueden tomar los valores decimales de 1,2 3 (es decir, nunca valdrn O). (5 puntos)
A1
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
()
AO
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
81
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
80
O
1
O
1
O
1
O
1
O
Y
Y
O
1
)(
X
o
O
O
O
X
X
X
X
1
1
X
1
O
1
O
1
O
1
O
'O
)(
(
1.2. Obtenga la expresin lgica simplificada (al mximo) de la nl11cin G, dada en la Tabla de
Verdad, utilizando un n~apa de Kamaugh. (lO puntos)
1.3 Implemente la funcin G utilizando exclusivamente dos multiplexores de 4 entradas de datos,
como los de la Figura. Para ello, NO se dispone de las seila1es negadas. Justifique adecuadamente
su solucin. (J Opuntos)
tOO
01-------'
el
lo
11
Al
12
13
619142355
b- ::- A.o ~
(Al\-~) +
Ao~A<l> :::.
1 (,..' ~
1\0 ti ~l
A'O A,f; .t
-::.
-=
~J ~, A ~ Aa \SI (A l \-\50')
Ai
-t
~o
'":::
_ A 1 Be + Ao-+-= ;, ~ + J\ \ fSo
-l.
>-0?
Al 15
4-lSo f
': :
'
o:::
lo
11
12
-o
LL
l..L.l
00
01
o~
03
04
O"
06
07
00
o:::
Col
cto
P;..~6
00
01
U
-LL
o-
O2
101
03
110
0\1
00
11.1
lo
)?,
11
4:)<:;
4'1
lb
11
l..L.l
ltt
. (e)
'--
~.J':);
NOVIEMBRE 2012
~~.\'O ~~t'I'IG>S ~
Y\
kI
(j
Half-adder
c,"'
"1
C\(CUt\'o
.l
Wte.'(o.~
. ,
!
A
A ~
Half-adder
Cout
Sl.tvn C<.
ti A.+\3, -..v\
VY\6c:; Civ
U~'/ ~ s-...
resu \
Sl<.vY)<V')
\020
A \.\ Az
L."
~ ....
./1
v~ c;.... c:a..rreb
U..-Z
\,-a.\or~
Ii
e....V\ t\~\
CLCa\'eo .vH..\
1-1
2.2 Siendo A la representacin en binario de un nmero (con 3 bits sin signo, A2 Al AO, Y siendo
A2 el bit ms significativo), se quiere obtener el valor en binario (sin signo), representado en F,
que resulta ele la siguiente expresin aritmtica:
F
()
= (A x 3) + 8
Determine el nmero de bits que deber tener F para evitar el desbordamiento. Justifique su
respuesta.
(5 puntos)
~
,,_._"\.. e.,
\ v\'ltANlefo "
i -' ...
_~I'
-le.'\emoS 6iMC'
\
".
\
\,
<""\..('0-, ~ ....\Oe""
ele. '().. <; he~~\lO so o '
-~ e..~. ~.~..l(llo...f' e...
co..S:'-C ~~-;
ZC\.o
~ \'f"g. -:: ,\ \ 01
~s \oQ'S~
\0\0\
100<:>
I i I C) e
,-\V\
\-res. lo As.
c.lrC';l\O~
de. Z <2vI. L
COYlSt,-u.lr
'S \o\\.c:;.
CO"",
\='A .
-\",
At\ l A,
\11
eoJ
SI:
\:;~
Atl
_1
S-z....
Ao
,
1 A.,
~
CAl\:
c\_ ~o
~ll.A.1
A-z ~ \
,~
Liv\
....!!
~,
e,'",
Vn.~
Az
40
A. r\-l\-c
SI
\S~
FEBRERO 2003
PROBLEMAS (15 PUNTOS)
1. Obtenga razonadamente la frecuencia mxima de reloj CLK a la que puede funcionar el circuito de la figura
suponiendo que el inversor tiene un retardo tdinv = 1ns y los biestables (FF 1 Y FF2) un tiempo de propagacin
tdff = 2ns y un tiempo setup setup = 3ns. Justifique la respuesta dibujando en un cronograma los tiempos pertinentes involucrados y raznela en funcin de dicha figura. NOTA: Corno retriccin adicional, suponga que la anchura mnima de los pulsos de la seal de reloj (tanto el de nivel alto corno el de nivel bajo) es de 1 ns, y tenga
en cuenta que la seal de reloj no tiene por qu tener un ciclo de trabajo del 50%.
FFl
x-
JI
Q,
[>o
FF7
Jz
"..
~
K,
Q1 loo-
Q2
1.>
K2
Q2
CLK -
+-.______~P~e~;~i~od~(~)_=~T______~__~.
2. Calcule razonadamente el tiempo de hold mximo tholdmax que podr tener el biestable FF2, para que el
circuito funcione correctamente. Asuma las mismas restricciones que las descritas en la nota del apartado
anterior y justifique su respuestaa partir del cronograma que ha realizado en el apartado anterior.
FEBRERO 2004
PROBLEMA 2
Se pretende disear un dispositivo luminoso consistente en una hilera de luces (Figura 1), tipo
LED, de las cuales slo una se encuentra encendida en cada momento dado .
..
100000.01
El objetivo es realizar un dibujo de efecto hipnti~ocon las luces para atraer la atencin de las
personas que 10 contemplan. Para ello se realizar un movimiento oscilatorio cuya secuencia
peridica representamos en la Figura 2, Ydonde t = 9 es iITal a t = 1.
(J
1000. 000
1=1
10000.001
1=2
100000.01
1=3
10000.001
1=4
1000'.0001
1=5
100.00001
1=6
10.000001
1=7
100.00001
t=8 .
1000..0001
1=9
CIRCUITO
DE
ACTIVACIN
--;...
7
O
O
()
O
O
BloqueA
--...t.~
BANCO
DE'
LEDS
Bloque B
El banco de LED tiene siete entradas, una por diodo [1610] activas a nivel alto, de forma que si
tienen un "1" el LED correspondiente se ilumina. El circuito de activacin (bloque A) se encarga de
generar las seales [16 10]. Para relizar el diseo se utilizar como ncleo un registro de
desplazamiento bidireccionaJ de 8 bits (Figura 4).
A
-B
-C
-D
E
-F
-G
-H
SeriaCLefl
Seri.l_ Right
so
SI
CLEAR
-CLK
www.monteroespinosa.com -
~e.~
~---------~--------"\
,r
W. c..\\<:
'& <:..~
CCVIec~o.
o..
CDr1G-\C1"Co o..
i i
~ ~l
i,
\,
(\
C.\~A-R
~ c..ieAR.Z ~ vV\"'~o
*'
<;;0\
~ SOz
S' \
~q 'Z. ~w('ae
~ ~~ '2.
Qa;
o.l'illt'l
\.\0
b~\s
e ,f)cCt.(~~ ~e ~ ~\k
"'-/
La salida QA del registro ir conectada al LED ubicado en el extremo izquierdo del dispositivo,
mientras que QG se conectar al LED del extremo derecho (Figur.a 5),
Figura 5: Conexin de las salidas del,Registro de DesplZIImientoa los LED (en ,el instante representlldoc QF'= 1,
con Jo que su LEDasocilldo est encendido)
,
2.1 Construya e.I registro de desplazamiento de' la Figura 4 a partir de dos registros de
desplazamiento bidireccionales 74LS194, a los que llamaremos REG_l y REG~2 Y cuya hoja de:
caractersticas puede verse en el apndice. Para ello complete el circuito de la Fig;ra 6. (10puntDs)
REG 1
, - - - - - - - - - - =1 A
Q.A
~-------I B '
- - - -- ---.--1 e
----- -1 D
__"---1
QB :---~~
Qc r----
.....'
Qo:--r-
Serial_Left
.----1----1 Serial_Right
r+--t--t----:I------I
SO
.--+--+--r--=--l S1
- + --f--r-t---t---i CLEAR
H--- i --,CLK
"--------- QA
'-.
QB
'---_ _- -Qc
~------QD
r------------\\~
QE
--t-rtt=--U-+- + ---j
AREG_2
QA
~--t\+""""-==l:~-\--t---I B
---=r---\4I:::l~-4I--.-:::r-T--1 C
U-~-*~-~---ID
QB
Serial_Rigbt
L...--jr------- J
so
--t::==::;--~
SI
'""--1
rF
~~~
'
'J 1
QD~------~
Qc
J-
CLEAR
t--:--~I CLK
Figura 6
. QH
)-~\ So
\..
\J1>
Fulk.'tv
'
Oe:;.~
-o
Ci
<-OY't?::l~:
el.
a eOfi, o.
~ e:;;.~ C\.
'\,Iv..
LeAb
II
Gol'\.
Q.c-
c:::Mek 'lc/n
~-ene.--
k- l'\,.a.\COt la.f
,
Co(\<;e~LL\'v.to s
. UY\OS
heLes~~ pqro.
~.
UDn
LoAt:: I
~-
2.2 Complete las conexiones necesarias que faltan en el esquema de la Figura 7. (20 puntos)
Ir
o
.------,~-I: @-o1<
,.-
[ -
a0-
E
F
0 --
0 -
CLK
EO
MUX
CK -l
f-,.....-
\ EfV
QG~--4------~--~~--~
QH ~
ti __ Serial_Left
O -
o...'ru:\.c:. 'SI" rz
ScriaJ_Right
Sft-=' ,'
Q# f.---J
e\
Figura 7
~o ~co. ~e(a{
Sc
ue,1c ( '0 .
"
11'
(C' l~
re
1\
1,
'
,\
LFD; C\I..\.Nn.\'60'S
V\lk..e\lOS
o.:.\~dc s,.
I /
1\
sc0.
...--.-..- CLK
'-
forCA.d....U.'
~-
e..c;.~\o.t.o..f
o.... i.~doS
0 -':':" CLEAR
8 .poVlevYlo~
1.Id~ L
QE r--:--- j f - -- - - - . . . . l
QF r~-I-------9"-'-
..---~'--i SI
r-
0000
o o '" o
_ _V~'----l SO
QA
Qj f---..- - - -Io---:--'
o ---, C Q c 1--- -+------'--'
0- D
Q[jl--_ _+-_ _ _ _..J
() -
LOAD-D
( r,
SEPTIEMBRE 2004
PROBLEMA 5
U1A
En1
__-'--1
U1A
En2 :--~----------------L-
__~
74HCOB
U1A
74HCOB
CLK
__
__________________
~-
______________
t dAND = 1 ns
t dff = 2ns
tsetup = 2 ns
U2A
Q
Q 2
CLK
R
14
VOD
4013
Figura 8
(llOldmax)
~'
+min
~ ~M ~
t=
~.
.~~~
'Z
\W\;')::
\. Q
~ ~.lA.o-l
-lse'htp '::.
7",~
-:c
L
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78 - 619142355
FEBRERO 2005
Problema 1
,~
En el circuito de la figura los biestables tipo D, U6A y U7A, tienen distintos tiempos de propagacin (tp ) Y de setup
(tsetup). Considere as mismo que las entradas de PRESET (PRE) y CLEAR (CLR) estn desactivadas en todo
momento.
4
U6A
"---"P~RE=-----.
En~~_da_ ..._ _ _ _ _ _--,2:..;D
o 5
---. 3
r
cu<
.ll<
Q 6
CLR
l'
7.474
.
tp
setup
Biestable U6A
1 ns
1 ns
Biestable U7A
2ns
2 ns
PuertaAND
5 ns
1.1 Utilizando los valores de la tabla obtenga justificadamente, dibujando un cronograma, la mxima frecuencia
del reloj (fCLK11IIlX) del circuito que asegure un correcto funcionamiento del mismo.
1.2 Determinar justificadamente, tambin sobre un cronograma, el mximo tiempo de hold (tho/d11lllX) que el
biestable U7A puede tener para que el circuito funcione correctamente.
L
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78,619142355
FEBRERO 2008
PROBLEMA 5
Considere el siguiente circuito y los datos que se indican alIado.
02 Q
--+------ID
03
tD
01 Q
Biestable DI
Biestable D2
Biestable D3
Biestable J-K
PuertaAND
Puerta OR
PuertaXOR
I ns
2ns
2ns
2 ns
1.5 ns
I ns
1.5 ns
setuD
I ns
1.5 ns
0.5 ns
I ns
Q t - - -.....
CLK
Figura 5
5.1 Utilizando los valores de la tabla obtenga justificadamente, dibujando un cronograma, la
mxima frecuencia del reloj (JCLKmax) del circuito de la figura 5 que asegure un correcto
funcionamiento del mismo. Exprese claramente los tiempos de todos los caminos que considere.
(5 puntos)
CLK
5.2. Determinar justificadamente, sobre un cronograma, el mximo tiempo de hold (tholdmax) que
puede tener el biestable DI y el J-K para que el circuito de la figura 5 funcione correctamente (5
puntos)
~..
FEBRERO 2009
(\
FF1
J
Q1
Biestables
FFl yFF2
ell<
CK
B
XOR
NAND
t nron
lns
tsetun
2ns
3ns
2ns
Tabla 1
--+---------1
Q 1 - - -........- - Q2
L-..-------O>Clk
-----------1 K
FF2
Figura 5
3.1 Utilizando lo valores de la Tabla 1 obtenga justificadamente, dibujando un cronograma, la
mxima frecuencia del reloj (JCKmox) del circuito de la Figura 5 que asegure un correcto
funcionamiento del mismo si: (a) se utiliza un reloj con ciclo de trabajo igual a 50%, y (b) se utiliza
un reloj con ciclo de trabajo diferente al 50%, indicndose en este caso el ciclo de trabajo necesario.
(lO puntos)
3.2 Determinar justificadamente, tambin sobre un cronograma, el mximo tiempo de hold
(tholdmax) que el biestable FFI puede tener para que el circuito funcione correctamente. (5 puntos)
(~)
619142355
FEBRERO 2006
C)
~2.1 Dibuje el diagrama de estados de dicho sistema de apertura. Indique CLARAMENTE el tipo
de Mquina utilizada en su diagrama (Moore o Mealy), los estados, las entradas y las salidas. (20
puntos)
<tq ?
\JPnro
~
<:)
\ "
\).'-'5QClo
i
\
e.V1 Za. ~\.SCLClo~
i\1C04"ec\o..
Cu.o..\.~a. ~\~
.QYl
-z.Q..
.(:)ul.sa...C.LO'\
(A-L':" <:)
,O~::o)
e,.n CctJ'V1'/t10
ya. e...~t\.eO .
.e...'C:WI.( o.
<t l \
=-
~lA~C.O ~~~
(1
(~o..
e,Y\ SQ.
\\
\\
~~~~~
l \
e...rrY'leo., (k.-=-o,
~ Camlrt-o
yo..
( AL-=-o t OP
'!;;.
ti).
0\>':'0)
Q.,((5l1.eO.
(--)
\
FEBRERO 2007
J,"9 0
et
e.. *"",. le
De c- fo ....... t.. J ,
Se desea realizar un juego de luces de navidad. El juego consta de 3 bombillas que se encienden
secuencialmente una tras otra, siguiendo la secuencia dibujada en la figura 6 en la que crculo negro
implica bombilla encendida, y crculo blanco indica bombilla apagada. El tiempo que la bombilla se
mantiene encendida ser valiable segn el modo de funcionamiento, y se explica ms abajo. En el
ejemplo de la Figura 6 se muestra un modo de funcionamiento en el que cada bombilla se mantiene
encendida durante 1 segundo.
t =O S
t =1 S
t =2 S
t =3 S
t =4 S
t =5 S
8G
8 G
88
8G
8 G
80
Figura 6
El circuito tiene cuatro entradas de control A, B C y D, todas activa a nivel alto y una nica sefial de
CLK. El sistema tiene varios modos de funcionamiento, explicados a continuacin:
relc~.i
Notas:
NUNCA se dar el caso de que haya ms de una sefial de control activada a la vez.
Siempre que est activada una seal de control, y pase a activarse otra diferente, todas las
bombillas se apagarn durante un ciclo de reloj y despus pasan al modo que les corresponda,
segn la entrada de control que se haya activado.
.
4.1 Dibl~iar el diagrama de transiciones de estados de una mquina de Moore que realice el circuito
descrito. Explique detalladamente el significado de cada una de las entradas, de cada uno de los estados
y de cada una de las salidas. Indique en el diagrama los valores lgicos de las entradas, de la salidas y
de los estados. Diga tambin qu pedodo tendr el reloj CLK que utilice. (15 puntos)
4.2 Supongamos que tenemos ahora los siguientes componentes: 1 contador mdulo 4, 3 contadores
mdulo 3, 3 descodificadores de 2 a 4 (Tabla de verdad en el Anexo del examen), un codificador de 4 a
2 (Tabla de verdad en el Anexo del examen), y un multiplexor de 4 entradas de datos de 4 bits cada una.
Dibuje las conexiones necesarias en la figura para realizar el circuito del apartado anterior. Se dispone
de una sefal de reloj CLK de peliodo 0.25 segundos. (15 puntos)
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 544 53 77
619142355
/3IJ
T=
,1
Ce... ....
;..,DJ
D'
l5 S (
tI
fJCt.l~tII.,)O ~
v1'10.....
<:>
1,-0 (~c..c\..
o' Z 5 S)
I~ J~ ~ TI
0'5
,;zr
~~oie...,c'>o
eH/re Cc..~CA.
..... "., ..
d>e
e.J,~.f&JJ;C";c..eu "
Cu/lJC'j ....,"".. J
er'-f:
e..
~,
0001
10
YO
11
Y1
Y2
EN
Y3
Outputs
Inputs
EN
10
Y3
Y2
Y1
YO
o
o
o
o
o
11
o
o
o
o
I
o
o
o
Entradas
13
O
O
O
O
1
12
O
O
O
1
O
11
O
O
1
O
O
10
O
1
O
O
O
Salidas
Y1
YO
O
O
O
1
1
O
O
1
O
1
10
'"...
11
(;
YO
"ro
<J
12
Y1
()
13
...____________
o'Z5J
-"II~[> Contador x 4
01
00
o'5)
....__.---1[>
Contador x 3
i..s
~[>
Contador x 3
0'5
r--[>
Contador x 3
01
:.....
E~11
CLK
la
Y3 Y2 Y1 YO
-*
----. ~
E~11
-.>f
[1
o
I
Ho- 10
...
A= i
13= i
=i
~=
11
'-
.-
"C
ro
--..
12
13
YO
o
""
'5
o
Y1
E~11
ca
Y3 Y2 Y1 YO
~
13
is
12
C1
Y
MJ~
/~ , r:::.. LS 5
..--
--
(0'5 J)
.I3
Ud}
10
'Z'~ j
-,
"
.IZ
rfff
11
o
,: c'SJ
r4>
I.1
10
Descodificador 2-4
, ~
(o/uu)
10
Descodificador 2-4
Y3 Y2 Y1 YO
C -1 >-
dI
Descodificador 2-4
00
cb
.
",'
.'
"
l'
i'~
2'
35~
,t
..
.'0:'
...
..
~ "'C:ck..
Ii
---">
.Le
~a. c\c...
c.\.'" ~
11
1/
I""!>
e ..... ,...],;
0'5
11
"
Ir
fe = 1{
ID:: "1 I
Jo)
>e<3~'" t:>c.
"
c;p,.;.,..
co,~-.plM~:
.....,/. ~
_.
".)1
,......
f'L
113= 1
0<'
~.
(fo- e;ie'~~'p~/
11-.1' CdP"
'",
r-'
oc J,' Veo.
L"
..
'..J
'Ji
L."
~ ..
~C.r,
.~.~
r'
...
,.A -=.i
. I e(
Ce
o; )'~'"
~'A
>A ce...
;; ...
-. -
00
sel1c;ee.1
V&A-~J
fr'
pc...r/--r ~
ce..
~~)
'f
pt>~
lee.:.>.
CJt.
c.",e..fro
(.I.Jb.I")~O
de
c..,.... f.... ~ .. ,-
V4
o' z5;1I
e) ,
ter,>
o'"
Yl?~L)e.
oleJ
01
o'~
I
J
,dT I
t!J
"
O
"
v.... ,...., o)
"o
.<
C\.
4 5
~p';pe:c.e..,.
1:1.)
,jI'
=1s
,-
I
4i\
O
4r.
cI
C\.
1\
"'
'f
( cUf",fc... ;t.
CLK
Se"'c.e
U,II"
=.
1.00 ~ DiO
~ OOi
DO __
fe..
oi
~.10
SEPTIEMBRE 2007
PROBLEMA 4 (20 PUNTOS)
Se desea proteger los datos enviados por una lnea serie midosa, LS, mediante la insercin de un
cdigo de seguridad de 2 bits al fmal de cada palabra de 4 bits de datos enviados. Este cdigo de
seguridad se compondr atendiendo a las siguientes reglas:
Los 2 bits del cdigo de seguridad, SI SO, codificarn el nmero de '1' que a al'ecen en la ~-_ _
palabra de 4 bits de datos enviada.
EN e) VOl ... c..lr.. c\. c-t
La palabra de datos nunca ser el 1111. Ih...'1C... h.. h..( "1 "''''0)
,",CMe ~ A' "".... r.
El sistema dispone tambin de una sefal de habilitacin, EN, que es S111 rona con e re 0.1 y que
se activa a nivel alto cuando est listo el primer bit de la palabra de datos a enviar por la lnea
serie LS, indicando el inicio del proceso de generacin del cdigo de seguridad. En estado de
reposo, la sefal EN est a cero.
El cdigo de seguridad (SI SO) slo es vlido una vez que se han recibido los 4 bits completos.
Los bits SI SO tendrn una duracin equivalente al perodo de reloj y son sncronos con l.
Al tenninar de recibirse los cuatro bits, se debe generar una sefal activa a nivel alto llamada
. "Cdigo de seguridad vlido", CSV, que tendr la duracin de un ciclo de reloj.
Una vez que se ha generado el cdigo de seguridad y la sefal CSV, se vuelve a atender a la
sefal de entrada EN por lo que si EN est activada, se vuelve a proceSal' una nueva palabra de 4
bits yen caso contrario el sistema vuelve al estado de reposo.
lLt t
ENTI?.ADIH :
EN
S.
So
LS
L. J:
por 4.'1v{
'j '-"'p) de
GS'
Ci..iI\
Se.
EN:
E:'rv
)Lf. 2{
eL ..{
.,
1~ 1~ 1~ l .," l ~" l ~ l l
1 lXl><l><J
I
EN
LS
1-
1
I
www.monteroespinos~;es::.
(tlO
e... Cfer
),c.cc
e.J
'-{
t/j
c'-'e-Yle\"
-",
-",
, t
,
cS'v
'-1 b: b
e>-
si
f'
ve. . .
,-
C.$V:
rc.e,;~;p e( "lO~;
f.
I~
l~
C\J~" ~'!>
1 bd
re ,;
vr?o}
6'-01>
Z b; ,~
re,: b,'c)IlJ
3 '!';h
re ,; b;boJ
,troj
Q{>
:
:
Oz
==
Ut1
oJ
\
Os
cp
he~
..
!c..,:C'.., ~t)
Vc..\ko,1
O, -
Q3
cp
\
Q6 =
u.-1
I
UYJ
Q'1
==
'1'
vOJ
\
Q1=
cl>oJ
~ ObJ
cJ> y
Ul1
Oi == trel 1
4 b; 1>
ttc.; b:~!.I
Qcr
c.vt.. ~fl)
I
Q1Z. ==
"''1 cp
, I
\ I
t>
01.0=
i/C.j
""el (/J Y
UI'!
I~ ,
QI/=
M Po,RtANJ':
Ac)t~l,
).,a.y
cp
' I
l'
CCJArRO
00)
~ eJP..~o 1~'I;e..,..e
cl!
repQJo,
ece
'1 f #
'1\0(
yI...,
Jc..e:~
TorAL:
heo~'"
e..
,R:t...e..o'",
c. '"'f p (ek..
uf" ~o ,
e"..
~I >0
FEBRERO 2008
PROBLEMA 4 (20 PUNTOS)
Se pretende implementar una mquina de estados que controle el funcionamiento de dos semforos
en la salida de un aparcamiento pblico, segn el esquema de la Figura 4.
Seal A
(semforo
verde si A'="1",
rojo si A="O")
Sensor 1
(51)
SealB
(semforo
verde si 8="1",
rojo si 8="0")
Sensor 2
(82)
Figura 4
e.tc..
ho.ce.
~r"l(
x..fk
po.r... 11"'-6....
!..(
,t
En condicin nonnal, de poco trfico, los semforos estn en verde durante 1 minuto cada uno,
alternndose. Este modo de funcionamiento cambia si en una de las dos salidas se acumulan coches
mientras est dicho semforo en rojo. En el momento que la cola de coches parados llegue hasta la
posicin donde se encuentra el sensor de presencia/estacionamiento, el semforo de dicha salida se
pondr en verde en el prximo f1anco de subida de la se'al de reloj (CLK).
Tenga en cuenta 10 siguientes matices:
Cualquiera de los dos semforos estar verde durante un tiempo mnimo de 30 segundos y
un tiempo mximo de 1 minuto.
Los dos semforos nunca podrn estar en verde o en rojo simultneamente.
4.1 Dibuje el diagrama de estados de dicho sistema de control utilizando una mquina tipo Moore.
Indique CLARAMENTE los estados, las entradas y las salidas. (20 puntos)
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 544 53 77 , 619142355
.i 5s
e", vtrcX!
eo.\"; ).:..
pe",Sc..""Ol
M(
c .. c:"~
c>.... ;'j....(
e., 'l'l
i:e
WI
,Se"";,J.. r.
y~
f'<J{
C4.
off"o
f"'o", I'-'1"';" e_
"t(~
A,
t!'J ~c-..,).,
C!kc., h."'t'"
k :
Vq.""J
"Su, ... er
~"
ce ol,/) sc:,,u,
fDtu,'.. ~Co/,(r
e..
~}e.,l~"c.
Es f/).VI;)~
d Al
e.
(o ....
~1
B,
('" 4'(
Af1
E"
4-.).
ec..~A.. )
30
Le re.. ~CL
ver.':t
13 I Ile4(
el fui
tlCl
!e..,er
yvtt:
11o,!
Cotl
ee
ee
o..e
olro)
'.(
CDJI
Je,'""" il.) e.
'3D
"1,,.
sel'7';:Joo~
e ..
Cc..,-;'",,~
e ..
~\
Q3
"1,( p...j (
11
Me 6.,. I.,~,P
C~,.
pc..)(
.s '(
VI..
e.etoA
C'J
fc...~o
Q~
"''''
Cc.v,
Q"1 ll
i}e
ve.r~e
OLf
S"e,...,;;.Jo."o A e"
11
QT
,,,,
v(r.lt
ef pr.,..er
Qo
leA..!" ,"
""1 e.> k
el .. ~il>
vtr~(
",t
;<j-..t
r(
po,) (
1'.:>.'
vtrh
II
Ver~('
Os
ojD
Q6
Q.,
S"e .....:'J..,'\>
"
A
f>
e.-, rOJ'o
"
"er.)f
FEBRERO 2009
PROBLEMA 4 (25 PUNTOS)
Se quiere realizar el mecanismo de control de puertas de entrada y salida de una nave espacial. En
la Figura 6 est representado un esquema del mismo. Entre el interior de la nave y el exterior, existe
una cmara intermedia de compensacin de presin con dos puertas, controladas por seales lgicas
Al y A2, que separan el interior de la nave del exterior. Al activar a nivel alto cualquiera de estas
dos seales, la puerta correspondiente se abre en un tiempo despreciable. Cuando se desactivan
estas seales, la puerta correspondiente se cierra en un tiempo despreciable. Existen tambin dos
pulsadores, el pulsador A, accesible desde dentro de la nave y desde la cmara intermedia, y el
pulsador B accesible desde dentro de la cmara intermedia y desde fuera de la nave. Tambin
existen un extractor de aire, controlada por una seal lgica E, cuya misin es extraer el aire de la
cmara de compensacin (cuando se activa E a nivel alto) y un impulsor de aire, controlada por
una seal lgica 1 cuya misin es insuflar aire a la cmara de compensacin (cuando se activa 1 a
nivel alto). La presin dentro de la nave es P >0 y la presin fuera de la nave es P=O. Asimismo en
el interior de la cmara de compensacin tenemos un sensor de presin SI SO que tiene tres posibles
salidas: Si SI SO vale 00 la presin en la cmara es O, si vale 01 la presin en la cmara est entre
Oy P y si vale 11, la presin en la cmara es igual a P.
sensor de
presin
(51
SO)-----I~
A1
interior
nave
espacial
exterior
(espacio)
cmara
compensacin
1
i~p~lsor/
ae aire
Figura 6
El sistema debe funcionar de la siguiente manera:
Para implementar este sistema se dispone de una seal de reloj de 5 segundos de periodo.
Nota. Nunca pueden pulsarse simultneamente los pulsadores A y B.
4.1 Indique CLARAMENTE cules son las entradas y las salidas de la mquina de Moare que
controla el funcionamiento de este sistema. (2 puntos)
4.2 Dibujar el diagrama de transiciones de estados de una mquina de Moare que realice el circuito
descrito. Explique CLARAMENTE el significado de cada una de las entradas, de cada uno de los
estados y de cada una de las salidas. (15 puntos)
4.3 Suponga ahora que las puertas Al y Al no se abren ni cierran en un tiempo despreciable SL'10
que tardan 10 segundos en abrirse cerrarse. En este apartado, mientras se est abriendo o cerrando
alguna de las puertas, el sistema ignora cualquier pulsacin de A B. Dibuje ahora el nuevo
diagrama de estados de la mquina de Moore. Para cada estado explique 10 que significa el mismo y
la salida que se obtiene. (8 puntos)
619142355
Ai,l\t/~/I
L ., .--. :
xxxx
io
07-Xi
r-L"
e><fr,er v..>k DO
)<
01 xx
~~ ,..tI..
6, SilVA<:'" @
Oy.....)
XOII
OXoo
Q~ _
Q~
e"h-.. ye..,&>,
o..I\-r
k.J~"
"fo.(
l! c.:.. f.:.)
P=o
""~~1l
Y
'1<1
pn:,;"o'"
l'
,( ;x r-.7<
bXX1.
10xx
OixX
Oxoo
>,CM>'
;xxxx
FEBRERO 2005
Problema 5
b~~ ""t'CY"O\"()
~ ~ec.utct. en
library IEEE;
use IEEE.stdJogic_1164.ali;
use IEEE.stdJogic_arlth.all;
entity V74xxxx is
port (CLK, CLR_L, LO_L, ENP, ENT: in STO_LOGIC;
O: in UNSIGNED (3 downto O);
O: out UNSIGNEO (3 downto O);
RCO: out STOJOGIC );
end V7 4xxxx;
architecture V74xxx_arch ofV74xxxx is
signallO: UNSIGNEO (3 downto O);
begin
- \
process (,9 L15, ENT, I ~ en T~I do.d no ~nd,Cl....
begin
~ if (CLK'event and CLK='1') then
2 if CLR_L='Q' then 19 <= I'(o';:
+ th':"::e:':":r~
s -=->-:-'o-::')"";/ __
';> Sisnirlco.. ::'U"e. ponemos
s elsif LO_L='Q' then 10 <- O; ~
l t::t:QO'2:. lo~ bit::, de m o.. CG\..O,
l elsif (ENT and ENP)='1' thenlO <= 10 + 1;
L. C.LRsnc~no o.c!::iVQ Q n'lve.1 ~
5 end'f If;
.
pOne.. Lo...
do- Q. ~
I
b en d 1;
LD sncrono a.cDvo oif (IQ=15) and (ENT='1') then Reo <= '1';
else RCO <='0';
(llve.L , Q.O.v;p- DenLo.w..lich
end ir
cuent o.. OJ::lCen ~ n te c.lo..oclo
r~ O <= 10; - -, co.cn.. \Q en Lo. m..lIdct.
EN' = ENP= ~
<
9-lcLY'C..() t
to.
d
l\jodefBnde.
\~C. meV1~<-,--+\--,----t
de 014<: perod.e~ndede
I Q.. ~ I Q d~ CLk...
Qca oca \.O o.. T"live,Lt S\.lle.
u -
t::
O-\)
~l:
"
end process;
'- end V74xxx_arch;
Nota: El tipo UNSIGNED es equivalente al tipo STD_ LOGIC_VECTOR que permite la funcin adicional "+"
que es la funcin "suma de nmeros naturales".
5.1 Sobre el bloque de la Figura 5, dibuje las entradas y salidas del componente y explique detalladamente su
funcionamiento.
Nota: Las entradas se dibujan a la izquierda y las salidas a la derecha del bloque.
Stlt
----'
71
es
U(\
(ot\~)c.{
(-SC
, GIl(
'
.4
, CLR-L
aa~ .
<So
t.l"
u
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78 , 619 142 355
[ C\
lS)
,
\..l ('\
Rco <=--=
,
1;
q '" --\~el'\
'-(,\
\~ ~ ~= ~ -\he",
\. e
I'Q,-:-&!\-'
\'0' ) ;
4 ..5
fl"} \ \;
S e'\a 'i.~;
'1 ,~
\1 Q ~ q) cu~
(.t-;:. \ l.')
FEBRERO 2006
Muy
Jc;(,
pWr.Qr?p(Pr.r
VI-lPl
(Cc>"",b;..,c.c:o~
AA:
BB:
CC:
DD:
) ;
end XXXXX;
architecture behv of XXXX~ is
signal result:
std_lOgiC_vector~ownto
v>1
6'0'" eoft.sl!)
O);
begin
resul t <= (' O" & AA) + ( , o'
DD <= result(5 downto O);
ce <= result(6);
&
BB);
end behv;
5.1 Dibujar en el bloque de la Figura 6la interfaz del mdulo hardware (puertos de entrada y
salida), colocando las entradas a fa izquierda y las salidas a la derecha. (1 punto)
ce
AA~
DH
Bl5
Figura 6
i~.'
5.2 Cul es la funcin que realiza el circuito? Es decir, qu mdulo hardware estamos definiendo?
(1 punto)
5.3 Cul debiera ser el valor de 'N' en el tamao de la seal result? (Justificar la respuesta). (2
puntos)
W debe.
6,
Vea.eer
C0r"10
V-(!t"7OJ
e..
ce
A~~),
..
At"'IhJ
lit'..
reJ ..fI
c....
s... ,..,..
VI'!
()e
"j ~I.,),. el
re.J...e fc.Oo k
)c-pkf."oo 1; ~ ext.-o..
6 b; h
M;',
&l.C&A
fe. Sul"7c\.
ek d.t
t cp J. AA, \ 4>' g
I
ni>('1fI\)J
J3 B). A4
e(!
q~(~...
b b Ij I
lo",c.1-e ~
d .. 'b 'i,t
kl't! . .
D)
rre o .
Despus de la fase de sntesis, la implementacin con puelias lgicas de otro mdulo hardware es el
representado en la Figura 7.
""r
......kri .., .If!
no.~
AA
--~------------~----~ A
ce
BB
:z
Figura 7
Ce;,
ef
i _)
$ALiM
.s
'l'l.
5.4 Complete, rellenando las casillas necesarias que aparecen en trazo discontinuo, el siguiente
fragmento de cdigo VHDL de fOUlla que defina el esquemtico de la figura 7. (3 puntos).
(\
library ieee;
use ieee.std_logic 1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity XXXXX is
port (
AA:
BB:
ee:
in std_logic
in std_logic
out std_logic
end XXXXX
architecture syn of XXXXX is
1
component NAND2
port( A, B : in std_logic
end component i
component INV
port( A : in std_logic
6 end component
Z: 'out std_logic)
S
q
10
1\
IL
component OR2
port( A, B
end component
component AND3
port( A, B,
end component
out std_logic)
in std_logic
out std_logic)
in std_logici
out std_logic)
declaracin de seales
11
r'
~-----------------._-------------------------------~
l'i
1~
begin
/!
It
ffi"ap:-- '(::;--, AA' --';' :'B~>--i3'i ----~ --;'2;:':;-- --q.--. --, --);':"""""""""
-____________________________________
__ o
'C)s
____________________
: (A=>
. (A=>
__________________ l ______________________
13B
, : Z=>
) :
JI.
"
R
B=> AA
"
~"" _
________ ______________
I'l
Z=> S
) ,
"".', ' j;' 'ND"3' 'p' ort' roa'p'-- '!'--(A;;; --.~-- -- --, '~'B~>' S' --,. ----t'C:':;-- SR----"" --;' z':;; ,'ce' --,."
lo
.... !. ....................
.)':--
! ... ..
end syn;
:al
5.5 Indicar qu modificaciones deberan realizarse en el cdigo anterior para obtener la versin
negada de la salida en lugar de la versin implementada. (3 puntos)
i[
r?;:/
f2l
)"Jf.lo;r
'0
eL
cC"'p.t1I!~
NAND3
~-)-II-y-ll-i-j
....-e-,s;-,,., ....
15L;J
2.e
2o~iJ
ec,,(Clo..
,i:}"J T: sl.Ll?..,it
\.I
\,
AND3
LJS: ;f,J\!
o..
ee Gb,.,,cttt",rt,
L pe"ti s'
1'<.( ...
619142355
.lI!';,,(
"M-,
lJ5
o,,,,.e..
'
r... f "'Ar \A =) T, t
,.
o."'..o.r
=~ ce)
e =) T)
NoY;EI1~ItE
(\
101 I
PROBLEMA 3 (30'PUNTOS)
Consideremos el siguiente circuito electrnico.
salida(6)
.......
ro
1J)
I~
ro
"'C
ca
<1)
"'O
FPGA
:"Q
ro
ca
CJ)
-ro
, sa.lida(O)
<1)
~
ro
ro
ro
ro
<1)
<1)
salida(3)
lJ.
..
P. i
library IEEE;
use IEEE.STD LOGIC_1164.ALL;
leo""
A,''ji ~~
entity comp1 is
port (
input : in std logic vector(3 downto O);
"J
de.
err-or)
_______
scJ';,\p.~,)
sc.t.l.. to)
, ._
begin
with
1_ _ 1 ~)
f~ .=(
""h
"1011011"
"1011111"
"1110000"
"1111111"
"1111011"
"1001111 ff
"0000000"
end Behavioral;
when
when
when
when
when
when
when
"0101":~'
"0110ff,~--""
"0111" ,_
,1;
"1000",e_j'
(
"1001",~
,-
:1
I-,I_i
"1111" 1'._ ~i
others; t -
i-=:'
-
.1;,; f .!.t
erro;
,"r~ e~
L!" frA<:!L
1~ ~
COME 2.
library IEEE;
use IEEE.STO_LOGIC_1164.ALL;
entity f2!!lp.2 is
port(
C:
A,B:
Y:
);
I,r:
Es~e ~;c.ho
e~
kt.) cIt t.
bi b
2)<
t:o.a..
111'\ ..
,..,
),}, '1
()
,,'
"--,'
i!4
h. . d.,
ell 'f
Ff;<t. d,
b; 1, coJ. "......
----
'-( b;I,
end comp2;
architecture comp] _ beh of comPl is
f1I.,,.. l).\
"
I?...-A' Y
begin
1
with C select Y <=
A when ' O' ,
B when '1' ,
(others =>' O') when others
end comp2_beh;
e. t.bc .:I,
I
llbrary IEEE;
use IEEE.STO LOGIC_1164.ALL;
15
e.f,.A.)
()
,
,
ec:l;~
) ;
Co ... pt
end edig;
t2
'"
"1-
.Q
d.
~
~
of edig is
S.;. ....
".,.,-
,,;t"'"
to~,<~v-
Cot?pi
/4J'/.
~g ~
~
O
entity edig is
port(
da.to:'
archi tecture
~o~T" e,.
ft'J'
C. ....pi
'Y c.,,.,,~
:;,
'~
"-
::.
O
I component compl
port(
input
in std logic vector (3 downtoD); I
:
output
out std_logic_vector (6 downto O));:
I end component;
j
- - - - - - - - - - - - - - --component comp1.
port(
in STO LOGIC;
C:
A,B: in STO LOGIC VECTOR (3 downto O);
({:
out STD_LOGIe_VECTOR (3 downto O));
(
I-.:n~ c~mponent; _
I
I
------
-----,
begin
Ul: comp2 port map(s,dato,"llll",aux);
U2: compl port map(aux,salida);
3.1 Explique razonadamente la funcionalidad del los mdulos compl y comp2, indicando en un
esquema de bloques las entradas y salidas de cada mdulo. (10 puntos)
Nota. Dispone de una copia (reducida en 2 pginas en una) del cdigo VHDL de este problema en la ltima
pgina de este examen, a modo de Anexo, que puede arrancar para poder trabajar ms cmodamente con l.
(
,,-,
3.1 Explique razonadamente la funcionalidad del los mdulos compl y comp2, indicand en un
esquema de bloques las entradas y salidas de cada mdulo. (10 puntos)
Nota. Dispone de una copia (reducida en 2 pginas en una) del cdigo VHDL de este problema en la ltima
pgina de este examen, a modo de Anexo, que puede arrancar para poder trabajar ms cmodamente con l.
El mdulo comp2 es un multiplexor de dos entrada de datos de 4 bits cada una, una entrada
de control y una salida de datos de 4 bits.
3.2 Explique razonadamente la funcionalidad del circuito completo. (10 puntos)
3.3 Modifique el circuito para que incorpore una seal de reset (activa a nivel alto) que ponga todas
las salidas a '1' cuando se active. (10 puntos)
ce..J! (dt
entity comp.l is
port (
input: in std logic vector(3 downto O);
rst: in std_logic;
output : out std_logic_vector(6 downto O)
) ;
end com~l;
~
~~~'~~.~~~~~~~~~--archl tecture J:lehaVlOral or comp lS
Ario.d:f'N)~o.... e.J.... ~ re..Jd
begin
(
if (rst = '1') then
tl:
C.l>ir-(d,~ I3,cD -.1 75.,,.,,
output <= "1111111";
~ "'/"( poflf. ''"P r.l.:cl
I
A
... '1
a.'~;"""'J(
end if;
",e
entity edig is
porte
dato: in STO_LOGrC VECTOR(3 downto O);
s: in STO_LOGrC;
reset: in STD_LOGIC;
salida: out STO LOGrC VECTOR (6 downto O)
) ;
end edig;
component compl port (input: in std logic vector(3 downto O);rst: in
std_logic_vector; output : out std~logic_vector(6 downto O));end component;
U2: compl port map(aux,reset,salida);
(\
Pgina 9 de 10
Opcin b:
Pgina 10 de 10
ENERO 2012
{\:
SO
SI
OPERA.CIN
A+B
-A-B
B-A
A-B
Se dispone para ello exclusivamente de los sumadores completos de la figura y puertas XOR.
Implemente, de manera justificada, el circuito que lleva a cabo las operaciones deseadas.
(15 puntos)
:(
" ((.ut
(U)
'(
;
,<:.:.ut
(in
S.
L
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619142355
('
1.2 Explique cul o cuales de los siguientes cdigos de VHDL sintetizan el circuito descrito en el
primer apartado. Justifique razonadamente su respuesta. (5 puntos)
~~~::Qi:e,f
entitv adders 1 is
o~rt (A, B :- in std logic vector (3 downto O);
s: in sta logic vector (1 ao\mto O);
Q: out integer);
end. adders 1;
entity adders 2 is
port (11., B : in std logie vctor (3 do'tmto O);
s: in st.d logic vector(1. downto O);
Q: out integeri;
end adders 2;
regin
~~~a~:Qi~e"V
PROCESS(A,B,S)
BEGIN
CASE S 18
W'HEN
vlH.EN
noon
ffOl n
=>
=>
"10" =>
"11" =>
OJEEN O'1'HERS =>
END CASE;
END PROCESS;
WHEN
WHEN
bnp
tmp
tmp
tmp
tmp
<= A + B;
<= -A-B;
<= B-A;
<= A-E;
tiREN
"11"
=>
tmp.- A + B;
=>
tmp:=
=>
=>
tmp:= E-A;
<= O;
Q
t.mp.-
A-B;
tmp.
O;
<= tmp;
end archi;
CDlGOC
><
library ieee;
use ieee.sta logic 1164.all;
use ieee.std=logc::::uIlsigned.a11;
entity adders 3 is
port{A,B: in std_logic_vector(3 downto O);
s: in std_logic_vector{l downto O);
Q : out integer);
na adders 3;
FP6A
"00"
-mEN "01"
WHEN "lO"
WHEN "11"
WHEN OTHERS
F..ND CASE;
END PROCESS;
Q <= tmp;
=>
=>
=>
=>
=>
tmp
tmp
bnp
tmp
tmp
c.;~i":),:)
cu-.G";erA dt
el
:1 PROCESS (lt,B)
BEGIN
CASE S 15
Ef.
tlo. fe~e
\~H.EN
-~lt-B:
END PROCESS;
<= bnp;
end archi;
'0
.-
,-
VARiA$L
PROCESS(A,B,S)
BEGIN
CASE S I5
WHEN "OO'f
WHEN "01'1
WHEN 1' l0 n
o PE 1U\c. i rJ
<= B-A;
110 GlJ
CD;r;Q
e.
fr~a.'tt:..
oSt
c.:..rob: o e.,
c--I-r",~
e.J r~J
h':'Jlt. 10(
el
el~f
v,,",
c&""r:"'~,,- ~A~;"'~'"
c;rc.. ;to
r'Atb. ... ~
Por
<= A + B;
<= -A-B;
S e""
N'O
~t
vd.... k
() 'fra. cio....
V" ' ....
Mb."
RfAl.;'l'/t
L.,q
q \,( ~~l-.
A B
&)
<= A-E;
<= O;
end archi;
"".... be->
C.)
e(
ulo
j-..rd.r ~l tc).f~... Oo
"""
C)
h ID bec. Mo.., ~
CI)~'" e~h"t
(JI.. ",,;&..
v_,..-~~ o
kMpon..f. t-.
tc ... l':l.......
LA.
SeHd
(JI..J; j"'Go~S1
po.lt
clt
v.. i."~~J sr. },.. c.t i4M&d:.:o.h.r-.lt t'1'c..p..) 9" (... "'>S';' ....b
k .re;",eeJ se. },l-~ .. Cj....c ..Ir! P"'<5='J ( P'~ Y:e..~ e(",~
L")h. *' A)d... J.. Cbrn:d'!:! $""':o"",,,.,:e-.fo der e:,.,v:to,
'
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 544 53 77 , 619 142355
NOVIEMBRE 2012
entitl; comp1 is
in STD
port ( A :
se1: in STD
E:
in STD
Y: out STD
end comp1
LOGIC_VECTOR (3 do"mto O)
LOGIC- VECTOR (1 downto O) ;
LOGIC
LOGIC) ;
E"
~,
10
CY
scl"l. y
)(
'"
A,,-
lb
k~
end beh_compl;
'-"-
""
y----
(A :
8e1:
E:
Y:
end comp2
architecture beh_comp2 of comp2 is
()
! .
begin
Y <= I1 OR I2
\..----/
619142355
entity
(---
comp4 is
Y: out STD_LOG1C)
end comp4;
architecture beh_comp4 of comp4 is
begin
y <= NOT 1;
entity noviembre is
Port ( data : in STD_LOG1C_VECTOR (7 downto O);
STD LOG1C VECTOR (2 downto O);
sel : in
f: out STD_LOG1C) ;
end noviembre;
(l
i --
()
begin
Ul:
U2:
U3:
U4:
comp1
comp2
comp3
comp4
port
port
port
port
map
map
map
map
end Behavioral
('
3.1 Dibuje un esquema de bloques de cada uno de los mdulos (compl, comp2, comp3 y comp4)
identificando claramente sus entradas y sus salidas y explique razonadamente la funcionalidad de
cada uno de los mdulos (15 puntos)
Nota. Dispone de una hoja"alleXO al final del examen con el cdigo VHDL comprimido en una nica hoja, que puede anancar para
trabajar con l ms fcilmente.
comp 2
--It:
.
"'-z
- "'A.-...
'1
~ ~~
_ A,
:::l ".
-'1:
'1 r--
A.-s
t-
.E
~'seL.
\l
~) ~'l
l I
comp 4
comp 3
J-
~T.
comp 2
comp 3
do s. de.-
\\0\)
Le
v,
Uvl
'
comp 4
Cb""
619142355
'2.
(1
3.2 Dibuje un esqllema con todas las conexiones entre los diferentes bloques, indicando claramente
las entradas y salidas del circuito completo. (10 puntos)
~~oo
~f>\
n.a
~;"\o.'
~
(h..
'6~-z . i>o-\&.?;
l ~\
-b.. ......
1]7
'i
A~
a.ll.x
';t.\o
A.~"1
(;;,mP:S
"}:.
-) '7
"J"z
~\o.'t
~\a.S
)0.\0- G
eo\o--:.
~"t
>Q.\ i
....
Irz
'/
A~
r~
SQ\~
--
~. ~e
"
C\..\.l\l~
.-
~~
6'.-
CID/)
\.l.VI
WlU\
\.n~)\ ) ~ccrr'o,<0
v,no..
(>0'-
\-cCJ..()as
d~ 1Y\.c..L\\.. .l~~k:ort?<;
l<X'Z.
~e.,h ()~-
u
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 544 53 77
a.e
~_
cl ~\.cs ~ ~
J LAVlCl
*'-es;.
~It? -h fJO\
Pgina 9 de 11
salida(6J
,tI
ro
:!2
FPGA
ro
salida(O
i
VI
"'O
ro
""ro
Vl
N--I
O
ro
VI
:!2
ro
VI
1U - -..
"'O
Pgina 10 de 11
entity edig is
port( datol: in STO LOGIC VECTOR(3 downto O):
dat02: in STD-LOGIC-VECTOR(3 downto O);
salida: out STO LOGrC VECTOR (6 downto O;
end edig:
architecture edig_beh of edig is
signal aux1: std logic:
signa1 aux2: std=logic:
component comp1 port (A,B
in std logic vector(3 downto O):
SAL GE : out ;td_logic:
SAL LT: out std_1ogic)
end component
component comp2 port(C, O
S
O
end component;
begin
01: compl port map(dato1,dat02,auxl,aux2);
02: comp2 port map("llll110", "0110000",auxl,sa1idal
end edig_beh
6.1 Explique razonadamente la funcionalidad del los mdulos compl y comp2, indicando en un
esquema de bloques las entradas y salidas de cada mdulo. (5 puntos)
Nota. Dispone de una copia del cdigo VHDL de este problema en la ltima pgina de este examen, a modo de
Anexo, que puede arrancar para poder trabajar ms cmodamente con l.
El mdulo comp 1 es un comparador de dos entradas de datos de 4 bits cada una. Tiene dos salidas,
una que se activa (nivel alto) cuando A es mayor o igual a B (SAL_ GE) Y otra que se activa (nivel
alto) cuando A es menor que B (SAL_LT).
compl
B
El mdulo comp2 es un multiplexor de dos entradas de datos de 7 bits cada una y una entrada de
control, que selecciona la entrada e en el caso de ser Oy la D en el caso de ser 1.
e
comp2
D
Pgina 11 de 11
6.3 Modifique el circuito para que incorpore una seal de reset (activa a nivel alto) que ponga todas
las salidas a 'O' cuando se active. (5 puntos)
entity edig is
porte dato1: in STD LOGIe VECTOR(3 downto O);
dato2: in STD-LOGIC-VECTOR(3 downto O);
reset: in STD-LOGIe;
salida: out STD LOGIC VECTOR (6 downto O});
end edig
begin
if (reset = '1') then
salida <= "OOOOooe u
elsif
U1: comp1 port map(dato1,dato2,aux1,aux2)
U2: comp2 port map(n1111110","0110000",aux1,salida)
end if;
end edig_beh
EDIG
Problemas de
examen
www.monteroespinosa.es
Clases de EDIG
FEBRERO 2001
2. Se desea realizar un sumador/restador de dos nmeros A y B de 5 bits cada uno, representados en
complemento a 2. De esta forma; cuando la seal de control M sea igual a O deber realizarse la suma A + B,
mientras que si M es igual a 1 se efectuar la resta A - B. Por otra parte, se desea evitar problemas de
desbordamiento, para lo cual el resultado de salida deber tener el nmero de bits suficiente para poder
representar todos los posibles resultados de las operaciones.
Para realizar el diseo se dispone de puertas XOR de 2 entradas y de dos sumadores ripple carry de 4 bits como
los que se muestran en la figura 4(advierta que uno de los sumadores carece de acarreo de entrada).
Complete la figura 4 para realizar el sumador/restador utilizando el menor nmero de puertas XOR adicionales.
Indique cul es el mnimo nmero de bits de salida que garantiza la ausencia de desbordamiento en las
operaciones y seale claramente qu terminales escogera como resultado de salida.
()
Yl Yi. Y, Yil
---~
Cout
.:-
'Y'-
.Cout .
L.J.
~-
C~)
FEBRERO 2002
2. La funcin mayora, MAY(xo, Xl> , Xn-l), recibe un nmero impar de bits XQ, Xl> . , Xn-l e indica si existe una
mayora de unos o no. Por ejemplo, dos casos concretos de funcin mayora de 3 bits seran:
.
MAY(1,l,O) = 1 (pues hay ms unos que ceros)
MAY(1,O,O) =
(pues no hay ms unos que ceros)
. . _- . .
=fJ
XQ, Xl
X2
MUX
.. Jo
r;
1.
1~1
~-'
1)
2.2. Complete la siguiente figura para construir una funcin mayora de 7 bits, XQ, , x;, utilizando:
El diseo del apartado 2.1. para generar una funcin mayora de 3 bits por medio de un multiplexor de 4
entradas de datos. NOTA: En caso de no haber resuelto el apartado 2.1, suponga que dispone de una caja
negra que implemente la funcin mayora de 3 bits y utilcela donde lo precise.
e
Un multiplexor de 16 entradas de datos.
Todas las puertas. NAND de 2 entradas que necesite. Se valorar utilizar el menor nmero de puertas
NAND posible.
MUX
f'.HJX
CJ
tI L"
I 11 'f".
.
C',
e, e,
C"
I I I
LJ
2.3. Se desea implementar una funcin mayora de 3 bits empleando esta vez una memoria ROM. Dimensione el
tamao mnimo que habran de tener los buses de direccin y de datos e indique el contenido de cada una de las
palabras de la memoria. Justifique su respuesta.
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619142355
e
o
l
\
::rz
c:.
o
'/..z .
:Jo
-rl y
~AX
:3 (,
VI
")
~:
,y,
Ole
'1(0
lO'
HAX
no
11 ,
flSr
O-$-tl
>G.~
~t ~~~~~ o
u...w')
b
Jo
_----4I~II
000 o
. - -__~I :t'1
DO II
CJ2.f O
000 \
_ _ ~ ht-:::()-:-)(:-z~
x,7.'i:o---1:_---....-i :rz o o ~ 'O
t l -1--- --04 ]" '"
~\-i~fW3
.'.:::'-'_-l~t--""::~'J::5>
' - - -1IIJ-1 4
1.7
00
o 1o I
~
\t o
D\ll
"1 1'2,
'eoo
.---."""-........ :te:
\ oC) I
__-
.......-\.- --
.., 'I1t>
3"
L--- ....--t'Z
0\0
lo 1/
\ \06
'1:.\3 \\0 I
3\"t II to
TI5 \\tI
!
\
, ,
FEBRERO 2002
" Problema4
Se desea que el circut de la figura 8 funcione a una frecuenca de reloj de 25MHz.
Teniendo en cuenta los siguientes parmetros temporales:
tsu= 8ns
thold""
7ns
tITIJPPF'" 100$
t-propNOR ""6ns
t pmpNAND,,;:4ns
detennine los instantes de tiempo mximo (!mM) y mnimo(tmin) relativos al flanco de
subida del reloj entre Tos cuales la seal E2 podra varia:r~ permitiendo un correcto
funcionamiento del circuito. Justifique su respuesta mediante un cronograma. (10
puntos).
El
fF 1
} -- - - - - j'
Q
fF~
.82
eLK
Figura 8
SEPTIEMBRE 2002
1. El circuito de la figura 1 utiliza un multiplexor 74x 151 (tabla de verdad en la figura 1) y un inversor para realizar
la funcin lgica combinacional F de cuatro variables (A, B, e y D).
Inputs
EN_L
Outputs
Y_L
_V
74x 151
EN
00
DO'
o
o
o
o
o
o
Dl
Di '
o
o
o
.'
DO
D1
02
02"
03
03'
D3
D4
04
04'
Ds
os'
06
OS'
07
07'
D2
.F
D5
06
07
. Figura 1
ITTl
'7 o
"1 .. c.o
ADo ~ e.A
,D I ;+
- [rs (~~~t\-t
\-
\S(~-\A~)1~CL~(A-D~A~)~B(A\)~l\f>\)
LtB
- c. ~
eg6)\.AG>O)):-
www.monteroespinosa.com
Clases de CEDG
C~~~A~D
~
-;
FEBRERO 2003
3. Queremos realizar un visualizador de nmeros romanos (encontrar la tabla de nmeros romanos al final de este
examen) comprendidos entre ell y ell5 a partir de una palabra binaria de cuatro bits (D3D2DIDO), siendo D3 el
ms significativo entendiendo que el valor de cero tiene como equivalente el visualizador apagado.
Para ello dispondremos de cuatro elementos C4, C3, C2 y C I como los de la figura 4 que formarn la cifra romana.
En cada uno de ellos colocaremos tres neones, uno para cada smbolo romano"I", "V" Y "X" que se controlarn
con tres seales activas a nivel alto Ii, Vi Y Xi, respectivamente (por ejemplo, si 12 ="1", se encender el nen
correspondiente a la cifra romana "1" del elemento C2, y as sucesivamente. La cifra romana completa se alienar ala derecha, dejando en blanco los elementos no usados en la parte izquierda del visualizador.
()
Para gobernar el visualizador deberemos realizar un decodificador de binario (D3D2DIDo) a las seales que atacan a
dicho visualizador (~, V 4, 4, X 3, V3, 13, X 2, V 2, 12, XI, VI, 11).
1. Obtenga la tabla de verdad correspondiente a 12, rellenando la tabla
(1
~j
D3
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
D2
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
Dl
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
Do
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
12
,n
3. Utilizando el decodificador de cuatro entradas de la figura (cuya tabla de verdad se encuentra junto a la
misma), la lgica adicional que crea conveniente y las conexiones necesarias, obtenga razonadamente la
funcin F = (D/D2 'DDo) + (D3 'D/'D"Do') + (D3D2D'Do). Considere que representamos una seal
S negada como S':
DECODlF1CAJ)OR
EN
00
01
O2
o)
04
O;
lo
J,
06
07
- 11
1)
08
09
Oui
0 1,
0,2
o,)
0'4
OIS
o
_..
EN 13
O
1
1
1
1
1
1
1
1
1
X
O
O
O
O
O
O
O
O
12 11 -lo 0 0
X
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
I
1
1
1
1
-1--- . 1 - 1
1
1
1
X- X
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
- 1
O
L1
O
1
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
_.
0 1-:- O2
O
O
1
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
1
O
O
O
O
O
O
O
O
O
O
O
O
O
--
03
O
O
O
O
1
O
O
O
O
O
O
O
O
O
O
O
O
- 6~- Os
O
O
O
O
O
1
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
1
O
O
06
O
O
O
O
O
O
O
1
O
O
O
O
O
O
O
O
O
.
O
~
O
O
O
O
O
O
_. -
---
0 7 08 0 9
O
O
O
O
O
O
O
O
1
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O1
O
O
O
O
O
O
O
010
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
1
O
O
O
O
O
O
O
O
O
O
1
O
O
O
O
O
bl!
O
O
O
O
O
O
O
O
O
O
O
O
1
O
O
O
O
012
0]3
0 14
015
O
O
O
O
O
O
O
O
O
O
OO
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
O
o
O
O
O
O
O
O
O
O
1
O
O
O
O
O
O
O
O
O
O ~
O
O
O
O
O
O
O
O
1
O
O
1
/~
(
4. Utilizando el multiplexor de 8 a 1 en la figura (cuya tabla de verdad se encuentra junto a la misma) y las
conexiones necesarias, obtenga razonadamente la funcin G = (D/"D2"DI'"Do') + (D3'"D2"D I'"Do) +
(D3"D2"DI"Do') + (D3"D2"D"Do). Para ello slo dispone de las seales D3 aDo afirmadas (no las negadas) y
no se puede utilizar ninguna puerta lgica adicional. Considere que representamos na seal S negada
como S'"
MULTIPLEXOR
EN
EN C2
O X
1
O
1
O
1
O
1
O
1
1
1
1
1
(~')"""
Cl
X
O
O
1
CO y
X O
O
1
1
O
1
O
O
O
10
I1
I2
13
I4
I5
16
17
5. Indique qu seales de entre las que atacan al visualizador de nmeros romanos (X4, V4, 4, X 3, V 3, 13, X2,
V 2, I2, XI, V , II) son implementadas por las funciones F y G de los apartados 3 y 4 respectivamente"
(~
FEBRERO 2003
(\,
R
A
l!
Qu
e
ti
CLOCK
Qc
Qo
Reo
l,OAD
uro
Figura 7
2. A partir de las seales 0 7 a 00 del apartarlo anterior, queremos construir dos bloques
detectores que generen sendas seales V16 y V64, que se activen cuando el valor de la
cuenta &'ea 16 y 64, respectivamente. Para ello, dispone de dos comparadores de magnitud
cuya tabla de verdad se encueni.raal fmi.lde este examen. Realice sobre la figura 8 las
conexiones necesarias para obtener dichos detectores y las seales deseadas. Por favor, sea
limpio en el esquema. (5 puntos)
DETECTORV 64
DETlOCTRV6
o,
-.
'-~"
COMPARAJ)OR
COMPARADOR
,C)
-~-----I Po
PI
-';'-...;....,-----1 P2
-.;....------1 P3
-+------1 Po
--'------1
-.;..-.-----1 PI
.....,-+------1 P2
_ . i . -_ _ _........ P
-.;--'------1 P4
- . ; - - - - - - 1 P5
-+------1 P4
-+------1 P s
-;..------1 1\
- o i - - - - - - - I 1'6
-~-----I p-,
Qu
-QI
-;.__-"'-----4
P=Q
V16
---.. -
P=Q
Qo
Q1
-(b
-
P7
Q2
Q~
QJ
Q4
Q4
Qs
Q6
Q7
Q6
Q7
Qs
Figura 8
...............................
..
cJDJ"
Ci..OCKLJ
I
U/D __ ..1
~~T~~--H-------____~
o ... ---,
___
J
==-=1
- -- r--I----.,
L-------+-------i-+----'
Oc ___ J.
_IZ __
0
- - - r-"-+--..,......---'
'------t-:------:.-t---'"'-+--.,--.;..-I.
- - _J
---.+,.---.
~
~~~_-_l
1.
iJ<
14
lISO
2:
II----,-COUNTt"
2:;Z
_T
--1
,..
o
.....---.. COONr o o ' ; ' H - - 11
'lO
, ..
T[7:0]
R(7:0]
S[7:0J
3. Ahora se desea disear un contador que, a partir de una seal de reloj CLK, pennita obtener
la secuenca de cuenta:
0,1,2, 3, ... ; 14. 15~ 16, 96, 95~ ... ,65,64,0, 1,2,3, ... , 14, 15, 16,96,95, ... ,65,64, O, ...
T[3:0]
QA
O[D:A]
Os
Oc
CLOCK
Qo
RCO
LOAD
U/O
()
T
P
DETECTORV64
MULTIPLEXOR
OA
Po
Pj
Pz
Oc
00
P3
V64
P4
Ps
Pa
P7
.Oa
Oc
00
DETECTORV16
OA
Po
P1
P2
P3
P4
Ps
Ps
V16
C~)
P7
CONl"ADOR
QA
Os
Oc
CLOCK
00
ReO
LOAD
UfO
T
A.
OB
OC
Ou
Q[D:A]
FEBRERO 2003
PROBLEMAS (15 PUNTOS)
1. Obtenga razonadamente la frecuencia mxima de reloj CLK a la que puede funcionar el circuito de la figura
suponiendo que el inversor tiene un retardo tdinv = 1ns y los biestables (FF 1 Y FF2) un tiempo de propagacin
tdff = 2ns y un tiempo setup setup = 3ns. Justifique la respuesta dibujando en un cronograma los tiempos pertinentes involucrados y raznela en funcin de dicha figura. NOTA: Corno retriccin adicional, suponga que la anchura mnima de los pulsos de la seal de reloj (tanto el de nivel alto corno el de nivel bajo) es de 1 ns, y tenga
en cuenta que la seal de reloj no tiene por qu tener un ciclo de trabajo del 50%.
FFl
x-
JI
Q,
[>o
FF7
Jz
"..
~
K,
Q1 loo-
Q2
1.>
K2
Q2
CLK -
+-.______~P~e~;~i~od~(~)_=~T______~__~.
2. Calcule razonadamente el tiempo de hold mximo tholdmax que podr tener el biestable FF2, para que el
circuito funcione correctamente. Asuma las mismas restricciones que las descritas en la nota del apartado
anterior y justifique su respuestaa partir del cronograma que ha realizado en el apartado anterior.
JUNIO 2003
3. El circuito del multiplexor de la figura 4, cuya tabla de verdad encontrar junto a la figura 4, implementa una
funcin lgica F de cuatro variables:
.,-.-----f I I
. . . - - - - - . . , 12
....- - - - - 1 13
r------I 14
. - - - - 1 15
t---..,16
h
w x y z
e2 el co y
o x X x o.
1
o o o 10
1 o o 1 n
1
o 1 o 12,
1
o 1 1 B
EN
r - - - - - - o f lo
"
1
1
1
1
1
1
1
1
o o
o
1
1
o
1
14
I5.'
16
17
Figurl! 4
3.1. Escriba la expresin lgica de la funcin F.
3.2. Obtenga la expresin simplificada de F usando el mtodo de Karnaugh. Realice la simplificacin por "unos"
grficamente sobre la tabla 2 y por "ceros" sobre la tabla 3. Escriba a continuacin las expresiones
correspondientes.
JUNIO 2003
3. El circuito del multiplexor de la figura 4, cuya tabla de verdad encontrar junto a la figura 4, implementa una
. (!2( funcin lg.~ca F de cuatro variables:
.
Vc
EN
11
o x
12
(J
1
1
1
1
1
13
14
Is
16
.1,
C2 el Co
"='"
el
\.BN
lo
w x
FJUFO: 4. , .
..
CeQ' y
v
.J....
o
o
o
:0
1
:1
1
1
l'
1
el
..
b JO
1
1
O
11
12
1
O
14
1.
1
1
:.10
17
1:3-
15-
..
r}3.~. Obtenga la expresin simplificada deF usando el mtodo de. Karnaug~. Re~~ice la simpl~cacinpor "unos"
..
eL-l.
graficamente sobre la tabla 2 y por "ceros" sobre la tabla 3. Escoba a contmuaClOn las expresIOnes
correspondientes.
NI) rA
~_l
AJ ~ Jl
'
.
I~
~ XyiwfXn
.. LzC,Co Iz
+ C:c.c.l") t C: z e. ~ r"
XH WtXy?W't)<Ylw
LT>
"Le
~e'"'.J
..
obJe..,;dO .s~"
,...,:"k ........
,S
.1;
~
r';".- e)
u.,,~
e.
L.. ~e.
F ( W/ x. YI t ).
---
--
t W;XYl
,..Ix}'?
1-)( Yt
...
-.'-.~.
.~:-.
",
.......--.
17(.
'1!' ..... u
t WXy~ -
+ x)'"2)
~:.-
\?,.J...,)
Ij .. c.f t.
--
I'7cJo"
w x y t
o
o
()
1:>
o o
o
o
O
~
y~
.00
01
1I
00
0 1
11
lb
([
"-"
./
~\
F::: w)( y
+ WXc + vv'~
O
O
(ro,-
')
o;
o
O
C>
10
I~
\_J
C>
r~).
,
'.~
r~~)
'----j
SEPTIEMBRE 2003
2. Se pretende disear un sistema de llen~do de un depsito de agua, cuyo esquema es el de la Figura 3, y donde:
,1
B
~
(';'
::::Q9
J
11
-N2
N1
c/o--c*-\vas
(~.
CIz;lVl U
11
o \
"
l(
o
A Y B son dos seales, activas a nivel alto, que controlan
dos electrovlvulas que permiten el llenado del depsito,
abriendo las entradas de agua correspondientes.
(p7
Uf\
NO
o
El funcionamiento del cirC\lito a disear es el siguiente:
Si el agua descienqy por deblijo de NO, se deben de activar las dos electrovlvulas simultneamente A y B,
permitiendo el llenado del tanque a travs de las dos entradas.
Si el agua alcanza NO, solo se activar A, desactivndose B.
Si el agua alcanza NO y NI, se desactivarn las dos seales A y B.
Si el agua alcanza NO, NI Y N2, se desactivarn A y B Y se activar D.
Cualquier otra situacin anmala de N[O,I,2] activar la alarma y provocar la parada la parada de A y B,
as como la desactivacin de D.
NOTA: Se considera una situacin anmala cualquiera de los casos no contemplados anteriormente, por ejemplo,
el que se activen N2 y NI Y no active NO.
2.1 Realice el mapa de Karnaugh para las salidas D y AL respecto a las entradas NO, NI Y N2 e implemente el
circuito completo de ambas seales tras la simplificacin. (10 puntos)
2.2 Implemente el circuito completo correspondiente a las salidas A y B utilizando exclusivamente los siguientes
multiplexores: (15 puntos)
Seal A - Un multiplexor de cuatro entradas
Seal B - Tres multiplexores de dos entradas
~2
tJ,
f\)e-
(S)
(9
$1
,\
'1 )
,-,
,,
6
o
01
1
1
1
o
\
<::)
<o
~
o
ti>
o
o
CJO
0-\
(3
<5
,)
b
I
b
o
(")
A-L~
()
., e,
.;::
\
~"Z.
)
\I
~,
I I
eto
D\ It
o o
le
\11
o
<S
1) ';:' ~~\ kl ~
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78,619142355
-L
f<.l\
\)
----....------,,-----
FEBRERO 2004
1. Se desea disear un circuito capaz de dividir dos nmeros naturales de dos bits cada uno [Al, AO] entre [B1, BO]
para obtener el cociente [el, eo] y el resto [R1, RO]. En el caso en los que el divisor [B1, BO] sea cero, el cociente
y el resto sern iguales al dividendo [Al, AO] y se activar una seal de error E.
1.1 Rellene la tabla de verdad Tabla 1 y obtenga justificadamente las funciones lgicas simplificadas para R1, RO
Y E. (5 puntos)
(:1
Al
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
AO
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
B1
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
BO
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
C1
CO
R1
RO
AUX
O
O
O
O
1
O
1
1
O
O
O
O
1
O
1
O
1.2 Implemente la funcin AUX de la Tabla 1 con el mnimo nmero de puertas NAND de dos entradas. Nota:
Slo se dispone de las entradas Al, AO, B1 y BO y no de sus complementarios. (5 puntos)
1.3 Implemente la funcin AUX de la Tabla 1 con dos multiplexores de 4 entradas de datos. Nota: Slo se
dispone de las entradas Al, AO, B1 y BO y no de sus comp1ementarios.(l0 puntos)
1.4 Implemente la funcin AUX de la Tabla 1 en tecnologa eMOS utilizando el mnimo nmero de transistores.
En este caso supondremos que se dispone de las entradas Al, AO, B1 y BO negadas y sin negar. (lO puntos)
FEBRERO 2004
PROBLEMA 2
Se pretende disear un dispositivo luminoso consistente en una hilera de luces (Figura 1), tipo
LED, de las cuales slo una se encuentra encendida en cada momento dado .
..
100000.01
El objetivo es realizar un dibujo de efecto hipnti~ocon las luces para atraer la atencin de las
personas que 10 contemplan. Para ello se realizar un movimiento oscilatorio cuya secuencia
peridica representamos en la Figura 2, Ydonde t = 9 es iITal a t = 1.
(J
1000. 000
1=1
10000.001
1=2
100000.01
1=3
10000.001
1=4
1000'.0001
1=5
100.00001
1=6
10.000001
1=7
100.00001
t=8 .
1000..0001
1=9
CIRCUITO
DE
ACTIVACIN
--;...
7
O
O
()
O
O
BloqueA
--...t.~
BANCO
DE'
LEDS
Bloque B
El banco de LED tiene siete entradas, una por diodo [1610] activas a nivel alto, de forma que si
tienen un "1" el LED correspondiente se ilumina. El circuito de activacin (bloque A) se encarga de
generar las seales [16 10]. Para relizar el diseo se utilizar como ncleo un registro de
desplazamiento bidireccionaJ de 8 bits (Figura 4).
A
-B
-C
-D
E
-F
-G
-H
SeriaCLefl
Seri.l_ Right
so
SI
CLEAR
-CLK
www.monteroespinosa.com -
~e.~
~---------~--------"\
,r
W. c..\\<:
'& <:..~
CCVIec~o.
o..
CDr1G-\C1"Co o..
i i
~ ~l
i,
\,
(\
C.\~A-R
~ c..ieAR.Z ~ vV\"'~o
*'
<;;0\
~ SOz
S' \
~q 'Z. ~w('ae
~ ~~ '2.
Qa;
o.l'illt'l
\.\0
b~\s
e ,f)cCt.(~~ ~e ~ ~\k
"'-/
La salida QA del registro ir conectada al LED ubicado en el extremo izquierdo del dispositivo,
mientras que QG se conectar al LED del extremo derecho (Figur.a 5),
Figura 5: Conexin de las salidas del,Registro de DesplZIImientoa los LED (en ,el instante representlldoc QF'= 1,
con Jo que su LEDasocilldo est encendido)
,
2.1 Construya e.I registro de desplazamiento de' la Figura 4 a partir de dos registros de
desplazamiento bidireccionales 74LS194, a los que llamaremos REG_l y REG~2 Y cuya hoja de:
caractersticas puede verse en el apndice. Para ello complete el circuito de la Fig;ra 6. (10puntDs)
REG 1
, - - - - - - - - - - =1 A
Q.A
~-------I B '
- - - -- ---.--1 e
----- -1 D
__"---1
QB :---~~
Qc r----
.....'
Qo:--r-
Serial_Left
.----1----1 Serial_Right
r+--t--t----:I------I
SO
.--+--+--r--=--l S1
- + --f--r-t---t---i CLEAR
H--- i --,CLK
"--------- QA
'-.
QB
'---_ _- -Qc
~------QD
r------------\\~
QE
--t-rtt=--U-+- + ---j
AREG_2
QA
~--t\+""""-==l:~-\--t---I B
---=r---\4I:::l~-4I--.-:::r-T--1 C
U-~-*~-~---ID
QB
Serial_Rigbt
L...--jr------- J
so
--t::==::;--~
SI
'""--1
rF
~~~
'
'J 1
QD~------~
Qc
J-
CLEAR
t--:--~I CLK
Figura 6
. QH
)-~\ So
\..
\J1>
Fulk.'tv
'
Oe:;.~
-o
Ci
<-OY't?::l~:
el.
a eOfi, o.
~ e:;;.~ C\.
'\,Iv..
LeAb
II
Gol'\.
Q.c-
c:::Mek 'lc/n
~-ene.--
k- l'\,.a.\COt la.f
,
Co(\<;e~LL\'v.to s
. UY\OS
heLes~~ pqro.
~.
UDn
LoAt:: I
~-
2.2 Complete las conexiones necesarias que faltan en el esquema de la Figura 7. (20 puntos)
Ir
o
.------,~-I: @-o1<
,.-
[ -
a0-
E
F
0 --
0 -
CLK
EO
MUX
CK -l
f-,.....-
\ EfV
QG~--4------~--~~--~
QH ~
ti __ Serial_Left
O -
o...'ru:\.c:. 'SI" rz
ScriaJ_Right
Sft-=' ,'
Q# f.---J
e\
Figura 7
~o ~co. ~e(a{
Sc
ue,1c ( '0 .
"
11'
(C' l~
re
1\
1,
'
,\
LFD; C\I..\.Nn.\'60'S
V\lk..e\lOS
o.:.\~dc s,.
I /
1\
sc0.
...--.-..- CLK
'-
forCA.d....U.'
~-
e..c;.~\o.t.o..f
o.... i.~doS
0 -':':" CLEAR
8 .poVlevYlo~
1.Id~ L
QE r--:--- j f - -- - - - . . . . l
QF r~-I-------9"-'-
..---~'--i SI
r-
0000
o o '" o
_ _V~'----l SO
QA
Qj f---..- - - -Io---:--'
o ---, C Q c 1--- -+------'--'
0- D
Q[jl--_ _+-_ _ _ _..J
() -
LOAD-D
( r,
FEBRERO 2004
PROBLEMA 3
3.1 Implemente un biestable tipo D con "ENABLE" usando un biestable tipo T y la lgica
combinacional que crea necesaria. Se valorar el grado de simplicidad. (5 puntos)
n
3.2 Obtenga justificadamente la mxima frecuencia del reloj CLK del circuito de la Figura 8 que
asegure un correcto funcionamiento del mismo. Suponga que el ciclo de trabajo del reloj CLK es
del 50%. (10 puntos)
115A,
,---""
,
El
" 3'
2 U2i\ '
,Q
U1
PRE
J,
'LK:...
,
,
..;::....--40. _ _ _ _+-..:....1 K.
'
3A,
,,\ '
,Qtt'--~
1j,
;/'
14 J,
3
~LI<,
7408,
,2
Figura 8
2 ns
t.:!
12
Apndice
74LS194 Bidirectional Universal Shifi Register
(Extracto de la Hoja de Caractersticas)
so
Function Table
Moe
elear
61
so
X
X
H
H
H
L
L
L
L
H
H
H
H
X
H
L
L
H
H
L
H
H
CIDck
X
L
t
t
t
t
Inwts
Berial
Outputs
ParaUl
A
X
a
X
X
X
X
X
X
X
X
X
Lefl
Rlght
X
X
H
L
X
X
X
X
X
X
X
x
X
X
= Low Leva! (SluadV slalo),
X
X
X
X
D
X
X
d
X
X
OA.
Os
Oc
OD
L
000
OAO
aso
b
Ceo
e
OAn
OAn
OCn
OSn
aBn
ann
X OSn
X OSn
X -aAO
Oen
asa
aDn
Ceo
c;I
OCn
Qen
I'i
L
000
afIO- Oso. Oco. Doo ~ Tho lovol oIOA. De. 0001 00' 19.pOCtNe!y, bolOl'Hh9 indioalod steady Slato-input conditlonswOfo <lStablishod.
0An' Os . 0eno- OOn = TM /ove' el CA, 0B' 00 I88pOClively, b<lforu tha mosl.locont i "anSilion 01 Iho dock.
Timing Diagram
TyplclIl Clear. Lolld, RlghtShlft,L..ft-Shlft. Jnhiblt.:and Clelll' Sequences
()
CLOCK
CONTROL
linDE
Iso
IM'lITS
SI
ClEAR
SERIAL
DATA
IIfPUTS
PARALLEL
DATA
IHPUTS
e
o
oo,J:~++-I
Lo:
INHIBIT
---1
CLEAA
SEPTIEMBRE 2004
PROBLEMA 2
Disee un sumador de dos nmeros A y B (8= A + B) de-cuatro bits en complemento a dos
utilizando el mnimo nmero de componentes. Dibuje el esquema resultante. Para ello dispone de
restadores de dos nmeros A y B (R = A - B) de cuatro bits en complemento a dos (Figura 2) y de
inversores: (15 puntos)
A3
A2
Al
R3
AO
R2
83
R1
62
RO
61
60
SEPTIEMBRE 2004
PROBLEMA 3
(~
'---
B
C
()
Lgica
combinacional
---
A.a.
'I
1
:>
A'O
CLOCK
:>
Figura 3
3.1
e
o
1
1
o
1
1
1
o
1
1
1
o
o
1
o
o
x
3.2
3.3
SEPTIEMBRE 2004
PROBLEMA 5
U1A
En1
__-'--1
U1A
En2 :--~----------------L-
__~
74HCOB
U1A
74HCOB
CLK
__
__________________
~-
______________
t dAND = 1 ns
t dff = 2ns
tsetup = 2 ns
U2A
Q
Q 2
CLK
R
14
VOD
4013
Figura 8
(llOldmax)
~'
+min
~ ~M ~
t=
~.
.~~~
'Z
\W\;')::
\. Q
~ ~.lA.o-l
-lse'htp '::.
7",~
-:c
L
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78 - 619142355
FEBRERO 2005
Problema 1
,~
En el circuito de la figura los biestables tipo D, U6A y U7A, tienen distintos tiempos de propagacin (tp ) Y de setup
(tsetup). Considere as mismo que las entradas de PRESET (PRE) y CLEAR (CLR) estn desactivadas en todo
momento.
4
U6A
"---"P~RE=-----.
En~~_da_ ..._ _ _ _ _ _--,2:..;D
o 5
---. 3
r
cu<
.ll<
Q 6
CLR
l'
7.474
.
tp
setup
Biestable U6A
1 ns
1 ns
Biestable U7A
2ns
2 ns
PuertaAND
5 ns
1.1 Utilizando los valores de la tabla obtenga justificadamente, dibujando un cronograma, la mxima frecuencia
del reloj (fCLK11IIlX) del circuito que asegure un correcto funcionamiento del mismo.
1.2 Determinar justificadamente, tambin sobre un cronograma, el mximo tiempo de hold (tho/d11lllX) que el
biestable U7A puede tener para que el circuito funcione correctamente.
L
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78,619142355
FEBRERO 2005
Problema 2
Se desea disear un circuito de sumar y restar dos nmeros de un bit AO y BO con acarreo de entrada C i- 1
mediante una seal de control M. El resultado se compone de tres bits [S2,SO] expresado en complemento a dos.
La operacin, en funcin de M es la siguiente:
"O"
[S2,SO]
= AO + BO + C
M = "1"
[S2,SO]
j _1
AO - (BO + Ci - 1)
2.1 Rellene la tabla de verdad, Tabla 2, y obtenga justificadamente la funcin lgica simplificada para SO.
O
O
O
O
O
O
O
O
1
1
1
1
i
1
1
1
AO
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
BO
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
Ci-1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
S2
o
G
S1
SO
"
o
1
t
t:J
e;
-o
Cf)
-o
L
1
P
ll>
(fj
\
\
t
o
()
<2:>
AUX
tJ
1
\
O
\
1
'Z
O
1
(.
O
Z
1
"3O
()
O
-1
O
\
O
'2
O
\
1
o
O
(:)
1
-1
O
--
2.2 Implemente la funcin AUX de la Tabla 2 con el mnimo nmero de puertas NOR de dos entradas.
Nota: Slo se dispone de las entradas M, AO, BO y C i- 1 y no de sus complementarias.
619142355
FEBRERO 2005
PROBLEMA 4
Se dispone de una lnea serie de datos por la cual se transmiten tramas de 8 bits de infol1nacin
[D7 .. DO] con una cabecera de 4 bits. El funcionamiento del sistema es el siguiente:
~C(.~
Y)o~r~~
.
. ,.(.~
<..V\
.:
..........,5
'P7
Unea de
,- "1" I"1"
"O"
datos
"O" DO 01
. .
02 03 04 05 06 07
,,,
,,
..
dato
!'
:
CLK
,
,,,
INICIO
:
FIN
---'T"---'
_1..____._.'. ._ . __
i
i
1
1__-"-"r:__L_
'
,--- ........__--:-_
..!
-----_ ..---1'------------t----+-
,1 _ _ _ .: .. _____
::
I
1,
~.-_.
Figllra 2
FEBRERO 2007
J,"9 0
et
e.. *"",. le
De c- fo ....... t.. J ,
Se desea realizar un juego de luces de navidad. El juego consta de 3 bombillas que se encienden
secuencialmente una tras otra, siguiendo la secuencia dibujada en la figura 6 en la que crculo negro
implica bombilla encendida, y crculo blanco indica bombilla apagada. El tiempo que la bombilla se
mantiene encendida ser valiable segn el modo de funcionamiento, y se explica ms abajo. En el
ejemplo de la Figura 6 se muestra un modo de funcionamiento en el que cada bombilla se mantiene
encendida durante 1 segundo.
t =O S
t =1 S
t =2 S
t =3 S
t =4 S
t =5 S
8G
8 G
88
8G
8 G
80
Figura 6
El circuito tiene cuatro entradas de control A, B C y D, todas activa a nivel alto y una nica sefial de
CLK. El sistema tiene varios modos de funcionamiento, explicados a continuacin:
relc~.i
Notas:
NUNCA se dar el caso de que haya ms de una sefial de control activada a la vez.
Siempre que est activada una seal de control, y pase a activarse otra diferente, todas las
bombillas se apagarn durante un ciclo de reloj y despus pasan al modo que les corresponda,
segn la entrada de control que se haya activado.
.
4.1 Dibl~iar el diagrama de transiciones de estados de una mquina de Moore que realice el circuito
descrito. Explique detalladamente el significado de cada una de las entradas, de cada uno de los estados
y de cada una de las salidas. Indique en el diagrama los valores lgicos de las entradas, de la salidas y
de los estados. Diga tambin qu pedodo tendr el reloj CLK que utilice. (15 puntos)
4.2 Supongamos que tenemos ahora los siguientes componentes: 1 contador mdulo 4, 3 contadores
mdulo 3, 3 descodificadores de 2 a 4 (Tabla de verdad en el Anexo del examen), un codificador de 4 a
2 (Tabla de verdad en el Anexo del examen), y un multiplexor de 4 entradas de datos de 4 bits cada una.
Dibuje las conexiones necesarias en la figura para realizar el circuito del apartado anterior. Se dispone
de una sefal de reloj CLK de peliodo 0.25 segundos. (15 puntos)
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 544 53 77
619142355
/3IJ
T=
,1
Ce... ....
;..,DJ
D'
l5 S (
tI
fJCt.l~tII.,)O ~
v1'10.....
<:>
1,-0 (~c..c\..
o' Z 5 S)
I~ J~ ~ TI
0'5
,;zr
~~oie...,c'>o
eH/re Cc..~CA.
..... "., ..
d>e
e.J,~.f&JJ;C";c..eu "
Cu/lJC'j ....,"".. J
er'-f:
e..
~,
0001
10
YO
11
Y1
Y2
EN
Y3
Outputs
Inputs
EN
10
Y3
Y2
Y1
YO
o
o
o
o
o
11
o
o
o
o
I
o
o
o
Entradas
13
O
O
O
O
1
12
O
O
O
1
O
11
O
O
1
O
O
10
O
1
O
O
O
Salidas
Y1
YO
O
O
O
1
1
O
O
1
O
1
10
'"...
11
(;
YO
"ro
<J
12
Y1
()
13
...____________
o'Z5J
-"II~[> Contador x 4
01
00
o'5)
....__.---1[>
Contador x 3
i..s
~[>
Contador x 3
0'5
r--[>
Contador x 3
01
:.....
E~11
CLK
la
Y3 Y2 Y1 YO
-*
----. ~
E~11
-.>f
[1
o
I
Ho- 10
...
A= i
13= i
=i
~=
11
'-
.-
"C
ro
--..
12
13
YO
o
""
'5
o
Y1
E~11
ca
Y3 Y2 Y1 YO
~
13
is
12
C1
Y
MJ~
/~ , r:::.. LS 5
..--
--
(0'5 J)
.I3
Ud}
10
'Z'~ j
-,
"
.IZ
rfff
11
o
,: c'SJ
r4>
I.1
10
Descodificador 2-4
, ~
(o/uu)
10
Descodificador 2-4
Y3 Y2 Y1 YO
C -1 >-
dI
Descodificador 2-4
00
cb
.
",'
.'
"
l'
i'~
2'
35~
,t
..
.'0:'
...
..
~ "'C:ck..
Ii
---">
.Le
~a. c\c...
c.\.'" ~
11
1/
I""!>
e ..... ,...],;
0'5
11
"
Ir
fe = 1{
ID:: "1 I
Jo)
>e<3~'" t:>c.
"
c;p,.;.,..
co,~-.plM~:
.....,/. ~
_.
".)1
,......
f'L
113= 1
0<'
~.
(fo- e;ie'~~'p~/
11-.1' CdP"
'",
r-'
oc J,' Veo.
L"
..
'..J
'Ji
L."
~ ..
~C.r,
.~.~
r'
...
,.A -=.i
. I e(
Ce
o; )'~'"
~'A
>A ce...
;; ...
-. -
00
sel1c;ee.1
V&A-~J
fr'
pc...r/--r ~
ce..
~~)
'f
pt>~
lee.:.>.
CJt.
c.",e..fro
(.I.Jb.I")~O
de
c..,.... f.... ~ .. ,-
V4
o' z5;1I
e) ,
ter,>
o'"
Yl?~L)e.
oleJ
01
o'~
I
J
,dT I
t!J
"
O
"
v.... ,...., o)
"o
.<
C\.
4 5
~p';pe:c.e..,.
1:1.)
,jI'
=1s
,-
I
4i\
O
4r.
cI
C\.
1\
"'
'f
( cUf",fc... ;t.
CLK
Se"'c.e
U,II"
=.
1.00 ~ DiO
~ OOi
DO __
fe..
oi
~.10
FEBRERO 2008
PROBLEMA 4 (20 PUNTOS)
Se pretende implementar una mquina de estados que controle el funcionamiento de dos semforos
en la salida de un aparcamiento pblico, segn el esquema de la Figura 4.
Seal A
(semforo
verde si A'="1",
rojo si A="O")
Sensor 1
(51)
SealB
(semforo
verde si 8="1",
rojo si 8="0")
Sensor 2
(82)
Figura 4
e.tc..
ho.ce.
~r"l(
x..fk
po.r... 11"'-6....
!..(
,t
En condicin nonnal, de poco trfico, los semforos estn en verde durante 1 minuto cada uno,
alternndose. Este modo de funcionamiento cambia si en una de las dos salidas se acumulan coches
mientras est dicho semforo en rojo. En el momento que la cola de coches parados llegue hasta la
posicin donde se encuentra el sensor de presencia/estacionamiento, el semforo de dicha salida se
pondr en verde en el prximo f1anco de subida de la se'al de reloj (CLK).
Tenga en cuenta 10 siguientes matices:
Cualquiera de los dos semforos estar verde durante un tiempo mnimo de 30 segundos y
un tiempo mximo de 1 minuto.
Los dos semforos nunca podrn estar en verde o en rojo simultneamente.
4.1 Dibuje el diagrama de estados de dicho sistema de control utilizando una mquina tipo Moore.
Indique CLARAMENTE los estados, las entradas y las salidas. (20 puntos)
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 544 53 77 , 619142355
.i 5s
e", vtrcX!
eo.\"; ).:..
pe",Sc..""Ol
M(
c .. c:"~
c>.... ;'j....(
e., 'l'l
i:e
WI
,Se"";,J.. r.
y~
f'<J{
C4.
off"o
f"'o", I'-'1"';" e_
"t(~
A,
t!'J ~c-..,).,
C!kc., h."'t'"
k :
Vq.""J
"Su, ... er
~"
ce ol,/) sc:,,u,
fDtu,'.. ~Co/,(r
e..
~}e.,l~"c.
Es f/).VI;)~
d Al
e.
(o ....
~1
B,
('" 4'(
Af1
E"
4-.).
ec..~A.. )
30
Le re.. ~CL
ver.':t
13 I Ile4(
el fui
tlCl
!e..,er
yvtt:
11o,!
Cotl
ee
ee
o..e
olro)
'.(
CDJI
Je,'""" il.) e.
'3D
"1,,.
sel'7';:Joo~
e ..
Cc..,-;'",,~
e ..
~\
Q3
"1,( p...j (
11
Me 6.,. I.,~,P
C~,.
pc..)(
.s '(
VI..
e.etoA
C'J
fc...~o
Q~
"''''
Cc.v,
Q"1 ll
i}e
ve.r~e
OLf
S"e,...,;;.Jo."o A e"
11
QT
,,,,
v(r.lt
ef pr.,..er
Qo
leA..!" ,"
""1 e.> k
el .. ~il>
vtr~(
",t
;<j-..t
r(
po,) (
1'.:>.'
vtrh
II
Ver~('
Os
ojD
Q6
Q.,
S"e .....:'J..,'\>
"
A
f>
e.-, rOJ'o
"
"er.)f
FEBRERO 2009
PROBLEMA 4 (25 PUNTOS)
Se quiere realizar el mecanismo de control de puertas de entrada y salida de una nave espacial. En
la Figura 6 est representado un esquema del mismo. Entre el interior de la nave y el exterior, existe
una cmara intermedia de compensacin de presin con dos puertas, controladas por seales lgicas
Al y A2, que separan el interior de la nave del exterior. Al activar a nivel alto cualquiera de estas
dos seales, la puerta correspondiente se abre en un tiempo despreciable. Cuando se desactivan
estas seales, la puerta correspondiente se cierra en un tiempo despreciable. Existen tambin dos
pulsadores, el pulsador A, accesible desde dentro de la nave y desde la cmara intermedia, y el
pulsador B accesible desde dentro de la cmara intermedia y desde fuera de la nave. Tambin
existen un extractor de aire, controlada por una seal lgica E, cuya misin es extraer el aire de la
cmara de compensacin (cuando se activa E a nivel alto) y un impulsor de aire, controlada por
una seal lgica 1 cuya misin es insuflar aire a la cmara de compensacin (cuando se activa 1 a
nivel alto). La presin dentro de la nave es P >0 y la presin fuera de la nave es P=O. Asimismo en
el interior de la cmara de compensacin tenemos un sensor de presin SI SO que tiene tres posibles
salidas: Si SI SO vale 00 la presin en la cmara es O, si vale 01 la presin en la cmara est entre
Oy P y si vale 11, la presin en la cmara es igual a P.
sensor de
presin
(51
SO)-----I~
A1
interior
nave
espacial
exterior
(espacio)
cmara
compensacin
1
i~p~lsor/
ae aire
Figura 6
El sistema debe funcionar de la siguiente manera:
Ai,l\t/~/I
L ., .--. :
xxxx
io
07-Xi
r-L"
e><fr,er v..>k DO
)<
01 xx
~~ ,..tI..
6, SilVA<:'" @
Oy.....)
XOII
OXoo
Q~ _
Q~
e"h-.. ye..,&>,
o..I\-r
k.J~"
"fo.(
l! c.:.. f.:.)
P=o
""~~1l
Y
'1<1
pn:,;"o'"
l'
Para implementar este sistema se dispone de una seal de reloj de 5 segundos de periodo.
Nota. Nunca pueden pulsarse simultneamente los pulsadores A y B.
4.1 Indique CLARAMENTE cules son las entradas y las salidas de la mquina de Moare que
controla el funcionamiento de este sistema. (2 puntos)
4.2 Dibujar el diagrama de transiciones de estados de una mquina de Moare que realice el circuito
descrito. Explique CLARAMENTE el significado de cada una de las entradas, de cada uno de los
estados y de cada una de las salidas. (15 puntos)
4.3 Suponga ahora que las puertas Al y Al no se abren ni cierran en un tiempo despreciable SL'10
que tardan 10 segundos en abrirse cerrarse. En este apartado, mientras se est abriendo o cerrando
alguna de las puertas, el sistema ignora cualquier pulsacin de A B. Dibuje ahora el nuevo
diagrama de estados de la mquina de Moore. Para cada estado explique 10 que significa el mismo y
la salida que se obtiene. (8 puntos)
619142355
,( ;x r-.7<
bXX1.
10xx
OixX
Oxoo
>,CM>'
;xxxx
SEPTIEMBRE 2007
PROBLEMA 4 (20 PUNTOS)
Se desea proteger los datos enviados por una lnea serie midosa, LS, mediante la insercin de un
cdigo de seguridad de 2 bits al fmal de cada palabra de 4 bits de datos enviados. Este cdigo de
seguridad se compondr atendiendo a las siguientes reglas:
Los 2 bits del cdigo de seguridad, SI SO, codificarn el nmero de '1' que a al'ecen en la ~-_ _
palabra de 4 bits de datos enviada.
EN e) VOl ... c..lr.. c\. c-t
La palabra de datos nunca ser el 1111. Ih...'1C... h.. h..( "1 "''''0)
,",CMe ~ A' "".... r.
El sistema dispone tambin de una sefal de habilitacin, EN, que es S111 rona con e re 0.1 y que
se activa a nivel alto cuando est listo el primer bit de la palabra de datos a enviar por la lnea
serie LS, indicando el inicio del proceso de generacin del cdigo de seguridad. En estado de
reposo, la sefal EN est a cero.
El cdigo de seguridad (SI SO) slo es vlido una vez que se han recibido los 4 bits completos.
Los bits SI SO tendrn una duracin equivalente al perodo de reloj y son sncronos con l.
Al tenninar de recibirse los cuatro bits, se debe generar una sefal activa a nivel alto llamada
. "Cdigo de seguridad vlido", CSV, que tendr la duracin de un ciclo de reloj.
Una vez que se ha generado el cdigo de seguridad y la sefal CSV, se vuelve a atender a la
sefal de entrada EN por lo que si EN est activada, se vuelve a proceSal' una nueva palabra de 4
bits yen caso contrario el sistema vuelve al estado de reposo.
lLt t
ENTI?.ADIH :
EN
S.
So
LS
L. J:
por 4.'1v{
'j '-"'p) de
GS'
Ci..iI\
Se.
EN:
E:'rv
)Lf. 2{
eL ..{
.,
1~ 1~ 1~ l .," l ~" l ~ l l
1 lXl><l><J
I
EN
LS
1-
1
I
www.monteroespinos~;es::.
(tlO
e... Cfer
),c.cc
e.J
'-{
t/j
c'-'e-Yle\"
-",
-",
, t
,
cS'v
'-1 b: b
e>-
si
f'
ve. . .
,-
C.$V:
rc.e,;~;p e( "lO~;
f.
I~
l~
C\J~" ~'!>
1 bd
re ,;
vr?o}
6'-01>
Z b; ,~
re,: b,'c)IlJ
3 '!';h
re ,; b;boJ
,troj
Q{>
:
:
Oz
==
Ut1
oJ
\
Os
cp
he~
..
!c..,:C'.., ~t)
Vc..\ko,1
O, -
Q3
cp
\
Q6 =
u.-1
I
UYJ
Q'1
==
'1'
vOJ
\
Q1=
cl>oJ
~ ObJ
cJ> y
Ul1
Oi == trel 1
4 b; 1>
ttc.; b:~!.I
Qcr
c.vt.. ~fl)
I
Q1Z. ==
"''1 cp
, I
\ I
t>
01.0=
i/C.j
""el (/J Y
UI'!
I~ ,
QI/=
M Po,RtANJ':
Ac)t~l,
).,a.y
cp
' I
l'
CCJArRO
00)
~ eJP..~o 1~'I;e..,..e
cl!
repQJo,
ece
'1 f #
'1\0(
yI...,
Jc..e:~
TorAL:
heo~'"
e..
,R:t...e..o'",
c. '"'f p (ek..
uf" ~o ,
e"..
~I >0
(~
Lnea de
datos
-~
el\<
74x682
Crear
~ PO
3
Le
A
B
74HC164
Crack
00
I~ P1
,<o..
..--- 01
5
I~ P2
7
. - - Q2
QA QB Qc Qo QE QF QGQH
'-
T:l~
~~
12
JJ~
14
\ --=-
16
CJ
P3
03
P4
04
P5
OS
P6
PEOO
PGTO
h. 19
........_
.....
Q6
'O~ P7
~ 18
07
lo \l 1i t O Il 1fI , 11 J
~
Figura 3
4.2 Utilizando un contador binario 74HCl63 (infonnacin en el anexo), una bscula Set-Reset, las
puertas inversoras necesarias, y paItiendo de la sefal Il\1JCIO implemente el circuito que genere la
sefal FIN sobre el esquema de la Figura 4. Dibuje todas las conexiones necesa11as para un
funcionamiento correcto. Se valorar el grado de simplifIcacin. (10 puntos)
INICIO
el'"
74x163
2
.
CLK
,--,\
L/
QN
ENP
ENT
(}
()
o
t:>
3
4
5
6
CA
B
C
OB
OC
00
RCO
Figura 4
14
13
12
11
15
VltJ
FEBRERO 2005
Problema 5
b~~ ""t'CY"O\"()
~ ~ec.utct. en
library IEEE;
use IEEE.stdJogic_1164.ali;
use IEEE.stdJogic_arlth.all;
entity V74xxxx is
port (CLK, CLR_L, LO_L, ENP, ENT: in STO_LOGIC;
O: in UNSIGNED (3 downto O);
O: out UNSIGNEO (3 downto O);
RCO: out STOJOGIC );
end V7 4xxxx;
architecture V74xxx_arch ofV74xxxx is
signallO: UNSIGNEO (3 downto O);
begin
- \
process (,9 L15, ENT, I ~ en T~I do.d no ~nd,Cl....
begin
~ if (CLK'event and CLK='1') then
2 if CLR_L='Q' then 19 <= I'(o';:
+ th':"::e:':":r~
s -=->-:-'o-::')"";/ __
';> Sisnirlco.. ::'U"e. ponemos
s elsif LO_L='Q' then 10 <- O; ~
l t::t:QO'2:. lo~ bit::, de m o.. CG\..O,
l elsif (ENT and ENP)='1' thenlO <= 10 + 1;
L. C.LRsnc~no o.c!::iVQ Q n'lve.1 ~
5 end'f If;
.
pOne.. Lo...
do- Q. ~
I
b en d 1;
LD sncrono a.cDvo oif (IQ=15) and (ENT='1') then Reo <= '1';
else RCO <='0';
(llve.L , Q.O.v;p- DenLo.w..lich
end ir
cuent o.. OJ::lCen ~ n te c.lo..oclo
r~ O <= 10; - -, co.cn.. \Q en Lo. m..lIdct.
EN' = ENP= ~
<
9-lcLY'C..() t
to.
d
l\jodefBnde.
\~C. meV1~<-,--+\--,----t
de 014<: perod.e~ndede
I Q.. ~ I Q d~ CLk...
Qca oca \.O o.. T"live,Lt S\.lle.
u -
t::
O-\)
~l:
"
end process;
'- end V74xxx_arch;
Nota: El tipo UNSIGNED es equivalente al tipo STD_ LOGIC_VECTOR que permite la funcin adicional "+"
que es la funcin "suma de nmeros naturales".
5.1 Sobre el bloque de la Figura 5, dibuje las entradas y salidas del componente y explique detalladamente su
funcionamiento.
Nota: Las entradas se dibujan a la izquierda y las salidas a la derecha del bloque.
Stlt
----'
71
es
U(\
(ot\~)c.{
(-SC
, GIl(
'
.4
, CLR-L
aa~ .
<So
t.l"
u
www.monteroespinosa.com - Clases de CEDG - Tfnos 91 54831 78 , 619 142 355
[ C\
lS)
,
\..l ('\
Rco <=--=
,
1;
q '" --\~el'\
'-(,\
\~ ~ ~= ~ -\he",
\. e
I'Q,-:-&!\-'
\'0' ) ;
4 ..5
fl"} \ \;
S e'\a 'i.~;
'1 ,~
\1 Q ~ q) cu~
(.t-;:. \ l.')
tflNational Semiconductor
MM54HC164/MM74HC164
8-Bit Serial-in/Parallel-out Shift Register
General Description
The MM54HC164/MM74HC164 utilizes advanced silicongate CMOS technology. It has the high noise immunity and
low consumption of standard CMOS integrated circuits. It
al so offers speeds comparable to low power Schottky devices.
OUTPUTS
This 8-Bit shift register has gated serial inputs and CLEAR.
Each register bit is a D-type master/si ave flip flop. Inputs A
& B permit complete control over the incoming data. A low
at either or both inputs inhibits entry of new data and resets
the first flip flop to the low level at the next clock pulse. A
high level on one input enables the other input which will
then determine the state of the first flip flop. Data at the
serial inputs may be changed while the clock is high or low,
but only information meeting the setup and hold time requirements will be entered. Data is serially shifted in and out
of the 8-Bit register during the positive going transition of
the clock pulse. Clear is independent of the clock and accomplished by a low level at the CLEAR input.
14
13
12
10
11
<
1
A
2
B
SERIAL INPl,lT$
as
17
Oc
00,
GNO
OI,lTPVTS
Truth Table
Inputs
Outputs
...
aH
Clear
Clock
QA
QB
L
H
H
H
H
X
X
X
X
H
X
L
OAO
OBO
OHO
H
L
L
OAn
OGn
OAn
OGn
OAn
OGn
i
i
i
H
L
OAO, OBO, OHO = the level of OA, OB, or OH, respectively, before the
indicated steady state input conditions were established.
OAn. OGn = The level o OA or OG before the most recent
the clock; indicated a one-bit shift.
CEDG
transition of
Pgina 10 de 11
16 de Febrero de 2005
SN54HC682, SN74HC682
8-BITMAGNITUDE COMPARATORS
(~
FUNCTION TABLE
DATA
INPUTS
P,Q
p;-Q P>Q
P=Q
P>Q
P<Q
description
These
magnitude
comparators
perform
comparisons of two 8-bit binary or BCD words.
The 'HC682 feature 100-kQ pullup termination
resistors on the Q inputs for analog or switch data.
OUTPUTS
MM54HC163/MM74HC163 Synchronous
Binary Counter with Synchronous Clear
These counters may be preset using the LOAD input. Presettng of all tour flip-f/ops is synchronous to the rising edge
of CLOCK. When LOAD is held low counting is disabled and
the data on the A, B. C, and D inputs is loaded into the
counter on the rising edge of CLOCK. If the load input is
taken l1igh before the positive edge ot CLOCK the count
" ODeration will be unaffected.
L-f'1,
CLEAR ----,"
163
LOAD
L _____________ _
CLOCK
163
ENABLE P _ - - t - - + '
ENABLE T - - - t - - + '
'HC1621HC163
OUTPUTS
CLK
CLR
ENP
ENT
Load
Function
X
H
H
L
X
H
X
H
H
H
L
H
Clear
Count & RC disabled
Count disabled
Count & RC disabled
Load
Increment Counter
H
H
H
i
i
H
H
CEDG
L
X
H
U,.--------------r--------------
======- =~ - -~ ~ ~ . .:.
INDpAuTTAs{c:====:~~~:r
,...----t---r-------------D--1r---;--"T~==== ====-=== =...:..
X
X
X
(SVNCHRONOUS)
OA==
=
=
-+-t--+---'
{
Oa _ _
OC _ _
0o __
2
- - - j O. . .~-INHlaIT-
CLEAR PRESET
Pgina 11 de 11
16 de Febrero de 2005
SEPTIEMBRE 2005
PROBLEMA 3 (25 PUNTOS)
Se desea diselar un contador binario libre de 3 bits, (B2 Bl BO), que permita contar hacia aniba
cuando una selal de control VID es '1', o hacia abajo cuando vale 'O'.
3.1 Dibuje el diagrama de estados del contador utilizando una mquina de Moore con OCHO
estados, cada lillO de ellos CODIFICADO con su valor en binario. Indique CLARAMENTE las
entradas, las salidas, los estados y su codificacin. (5 puntos)
Ejemplo: Nmero 3 = estado (Oll) = salida (Oll).
3.2 Complete la siguiente tabla de transiciones y excitaciones en base al diagrama de estados del
contador obtenido en el apartado 3.1 utilizando biestables tipo D. (5 puntos).
(Q2 Ql QO) = estado actual
(Q2* Ql * QO*) = nuevo estado
(D2 DI DO) = entradas de los biestables tipo D
(B2 Bl BO) = Salidas del contador
VID Q2 Ql
O
O
O
"
O
O
O
O
1
1
O
O
O
1
O
1
O
O
O
1
1
1
1
O
O
O
1
1
O
O
1
1
O
O
1
1
O
1
1
1
1
O
1
1
1
1
1
1
QO Q2*
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
Ql* QO*
D2 DI DO B2 Bl BO
3.3 Obtenga las expresiones simplificadas por Kamaugh para las entradas de los tres biestables,
...
(D2 DI DO), Y para las salidas del contador, (B2 BI BO). (5 puntos)
3.4 Dibuje la implementacin final del circuito necesario para obtener DO y DI con el mnimo
nmero de puelias XOR, AND y/o OR de dos entradas .. Disponemos de la selal U/D y de su
complementmia. (5 puntos). Nota: Se valorar la claridad.
3.5 Asumiendo que la frecuencia del reloj que usamos es fija, modifique el diagrama de estados del
apmiado 3.1 para que el contador cuente a la mitad de velocidad. Suponga que la selal UlD
permanece invariable. (5 puntos).
SEPTIEMBRE 2005
'~
Problema 4
4.1 Para la siguiente Mquina de Estados codificada en VHDL, obtenga el diagrama de estados indicando
CLARAMENTE los estados, entradas y salidas.
LIBRARY eee;
USE ieee.stdJogic_1164.al!;
ENTITY Automata 1 IS
PORT (Clock, Resetn :IN STO_LOmC;
w
:IN STO_Lomc;
z
:OUT STD-,-LOGIC);
END Automata 1;
ENO rF;
ENDCASE;
ENDIF;
END PROCESS;
END
Behavior~
4.2 Para la siguiente Mquina de Estados codificada en VHDL, obtenga el diagrama de estados indicando
CLARAMENTE los estados, entradas y salidas.
UBRARY ieee;
USE ieee.stdJogic_1164.all;
ENTITY Automata2 rs
PORT (Clock, Resetn :IN STD_LOGIC;
w
:JN STD_LOGIC;
z
:OUT STD_LOGrC);
END Automata;
ARCHITECTURE Behavior OF Automata2 IS
TYPE State_type IS (A,H);
SIGNAL y: State_type;
BEGIN
END PROCESS;
END Bchavior;
FEBRERO 2006
C)
~2.1 Dibuje el diagrama de estados de dicho sistema de apertura. Indique CLARAMENTE el tipo
de Mquina utilizada en su diagrama (Moore o Mealy), los estados, las entradas y las salidas. (20
puntos)
<tq ?
\JPnro
~
<:)
\ "
\).'-'5QClo
i
\
e.V1 Za. ~\.SCLClo~
i\1C04"ec\o..
Cu.o..\.~a. ~\~
.QYl
-z.Q..
.(:)ul.sa...C.LO'\
(A-L':" <:)
,O~::o)
e,.n CctJ'V1'/t10
ya. e...~t\.eO .
.e...'C:WI.( o.
<t l \
=-
~lA~C.O ~~~
(1
(~o..
e,Y\ SQ.
\\
\\
~~~~~
l \
e...rrY'leo., (k.-=-o,
~ Camlrt-o
yo..
( AL-=-o t OP
'!;;.
ti).
0\>':'0)
Q.,((5l1.eO.
(--)
\
FEBRERO 2006
Muy
Jc;(,
pWr.Qr?p(Pr.r
VI-lPl
(Cc>"",b;..,c.c:o~
AA:
BB:
CC:
DD:
) ;
end XXXXX;
architecture behv of XXXX~ is
signal result:
std_lOgiC_vector~ownto
v>1
6'0'" eoft.sl!)
O);
begin
resul t <= (' O" & AA) + ( , o'
DD <= result(5 downto O);
ce <= result(6);
&
BB);
end behv;
5.1 Dibujar en el bloque de la Figura 6la interfaz del mdulo hardware (puertos de entrada y
salida), colocando las entradas a fa izquierda y las salidas a la derecha. (1 punto)
ce
AA~
DH
Bl5
Figura 6
i~.'
5.2 Cul es la funcin que realiza el circuito? Es decir, qu mdulo hardware estamos definiendo?
(1 punto)
5.3 Cul debiera ser el valor de 'N' en el tamao de la seal result? (Justificar la respuesta). (2
puntos)
W debe.
6,
Vea.eer
C0r"10
V-(!t"7OJ
e..
ce
A~~),
..
At"'IhJ
lit'..
reJ ..fI
c....
s... ,..,..
VI'!
()e
"j ~I.,),. el
re.J...e fc.Oo k
)c-pkf."oo 1; ~ ext.-o..
6 b; h
M;',
&l.C&A
fe. Sul"7c\.
ek d.t
t cp J. AA, \ 4>' g
I
ni>('1fI\)J
J3 B). A4
e(!
q~(~...
b b Ij I
lo",c.1-e ~
d .. 'b 'i,t
kl't! . .
D)
rre o .
Despus de la fase de sntesis, la implementacin con puelias lgicas de otro mdulo hardware es el
representado en la Figura 7.
""r
......kri .., .If!
no.~
AA
--~------------~----~ A
ce
BB
:z
Figura 7
Ce;,
ef
i _)
$ALiM
.s
'l'l.
5.4 Complete, rellenando las casillas necesarias que aparecen en trazo discontinuo, el siguiente
fragmento de cdigo VHDL de fOUlla que defina el esquemtico de la figura 7. (3 puntos).
(\
library ieee;
use ieee.std_logic 1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
entity XXXXX is
port (
AA:
BB:
ee:
in std_logic
in std_logic
out std_logic
end XXXXX
architecture syn of XXXXX is
1
component NAND2
port( A, B : in std_logic
end component i
component INV
port( A : in std_logic
6 end component
Z: 'out std_logic)
S
q
10
1\
IL
component OR2
port( A, B
end component
component AND3
port( A, B,
end component
out std_logic)
in std_logic
out std_logic)
in std_logici
out std_logic)
declaracin de seales
11
r'
~-----------------._-------------------------------~
l'i
1~
begin
/!
It
ffi"ap:-- '(::;--, AA' --';' :'B~>--i3'i ----~ --;'2;:':;-- --q.--. --, --);':"""""""""
-____________________________________
__ o
'C)s
____________________
: (A=>
. (A=>
__________________ l ______________________
13B
, : Z=>
) :
JI.
"
R
B=> AA
"
~"" _
________ ______________
I'l
Z=> S
) ,
"".', ' j;' 'ND"3' 'p' ort' roa'p'-- '!'--(A;;; --.~-- -- --, '~'B~>' S' --,. ----t'C:':;-- SR----"" --;' z':;; ,'ce' --,."
lo
.... !. ....................
.)':--
! ... ..
end syn;
:al
5.5 Indicar qu modificaciones deberan realizarse en el cdigo anterior para obtener la versin
negada de la salida en lugar de la versin implementada. (3 puntos)
i[
r?;:/
f2l
)"Jf.lo;r
'0
eL
cC"'p.t1I!~
NAND3
~-)-II-y-ll-i-j
....-e-,s;-,,., ....
15L;J
2.e
2o~iJ
ec,,(Clo..
,i:}"J T: sl.Ll?..,it
\.I
\,
AND3
LJS: ;f,J\!
o..
ee Gb,.,,cttt",rt,
L pe"ti s'
1'<.( ...
619142355
.lI!';,,(
"M-,
lJ5
o,,,,.e..
'
r... f "'Ar \A =) T, t
,.
o."'..o.r
=~ ce)
e =) T)
SEPTIEMBRE 2006
PROBLEMA 1
La lectura de la temperatura de una cmara frigorfica, en grados centgrados, se obtiene con cuatro bits
(T3, T2, TI, TO) codificada en complemento a 2, siendo TO el bit menos significativo. Se necesitan dos
salidas (LR y LV) que activen un led rojo (LR) y un led verde (LV) respectivamente (ambos activos a
nivel alto). Para ello, se quiere implementar un circuito que active elled verde cuando la temperatura
de la cmara est entre -3 y +4 oC, ambas incluidas, y elled rojo en el resto de los casos.
T3
T2
TI
TO
O
O
O
O
O
O
O
O
1
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
1
1
1
1
1
1
LR
LV
1.2 Obtenga la funcin lgica simplificada para la salida LV. Para dIo utilice un mapa de Karnaugh. (5
puntos)
1.3 Implemente la salida LV utilizando el mnimo nmero necesario de multiplexores de cuatro y de
dos entradas de datos. (JO puntos)
C)
619 142355
SEPTIEMBRE 2006
PROBLEMA 1
-
La lectura de la temperatura de una cman~ frigorfica, en grados centgrados, se obtiene con cuatro bits
(T3, T2, TI, TO) codificada en complemento a 2, siendo TO el bit menos significativo. Se necesitan dos
salidas (LR y LV) que activen un led rojo (LR) y un led verde (LV) respectivamente (ambos activos a
nivel alto). Para ello, se quiere implementar un circuito que active elled verde cuando la temperatura
de la cmara eS,t entre -3 y +4 oC, ambas incluidas, y elled rojo en el resto de los casos.
o
LV
z.
3"i
5'
6
1
u\
-I?
-1
-6
-5
-"1
-3
-2
-{
T3
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
T2
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
TI
O
.0
1
1
O
O
1
1
O
O
1
1
O
O
1
1
TO
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
LR
o
o
o
o
(>
i
i
LV
i
1
1
1
1
o
.1
o
o
1-
1
1
.1
i
o
o
o
1
1
1
1.2 Obtenga la funcin lgica simplificada para la salida LV. Para dIo utilice un mapa de Karnaugh. (5
puntos)
,
1.3 Implemente la salida LV utilizando el mnimo nmero necesario de multiplexores de cuatro y de
dos entradas de datos. (la puntos)
I~
00
01
11
10
00
fr
--))
O/
'1~
"
o
o
Vi
o
o
o
TITO
1)
10
Hvx
Tel'1(I"t o l,
Z Xi
--\
e.;"'pe~",r
PNCo.
v",,;,;. bll:)
L(
Nu X
Q.p~re
r3 z
LV -
i'c....VI
e\ ~... l
Ti To
Ve.. r:c..
e"
l,e'J
(iZ t Ti)
t3 rz. ro
.:..
fr""'~ 1'10
C4. d c..
c\e
el;. f o.J1'Ict.'"
T3TZT,1
r1 To + T'3T2 Tb + T3
-t'3TZT1TO
- - + t3 rz l To + ti) (iy~)
~
...
n
r z 1. ro t Ts T T t t:()
r> fZ ,
-T3 r2
- T~
.:::;:.
+ 3 rz f:1
To
1-
+ T3
2 e.. ~. i:o,,~r~
Co>1
TZ
TZ T
1.
Z (
","
L'
';,.
'.
. .-
!1u)C
'1 k
T3
/ TZ
l :
I
Mv.x l
~ "
. .'
"
.
. 'T1. To
f?I
TiTO
I~
To t T1
, '.,'
,1
....
.;.,
= ro Ti+T1)
.'
==
ri To
+ Ti
Ti T o
,
.. ,
.. '... .,
"
....
J. + Ti fo . o ., Ti
f r1 (ro t
To t
O..
ro .o
ro)
ti ro . o
='
TiTo t T.;1 lo ,-
r -:1 Te . j
+ Ti ro
-1- Ti ro i
nTo
i
o
y ..... . . - - - -
C>
el
C';
Io
Ir
_ _.......... I,
_ _ _ _I
LV
.Il
Ti To
r)
el c.
Ir
r ..
y ....._.----J
i
I,
, ' 1 ' ;.I1,
NOTA
e<t~
~;rt.J.....-.t,..~;"Job;:('
il"lp{.-.(".f...r
'.,
""
.'
, .",
-4
4"( tt>'\eMoJ
be &..
c.. ....
OI-~v1, e...,
Mux
"
..
..
'
..
,.
To
-t-
t1
l.- .
Iy =
t Ti
ro (Ti" Ti)
Ti . To
--
TI-To
{r
d(
/er"'>
,'"",pl?t,...e-,r6. r 14,.,.eC."'-~((1
MlJX 2
<?",
Ce.XII
!, )
= ti TCd ti.ro
ji
j1(~)
Ti
+ T1.
(;DI t TLl]
Xo>
A.s;~""".1
e." el H.tJX Z
r,
TOiT1
[ri
~cpl
r.
NOtA:
To
o
t. "e
0
;1
..
(oLo t
r')
:r',
Io
~I
2)(1 :
re..
Jt.
Ti
("1
'-f x2,
fYltr
~('oe I y ~ p:.-
S,,""''l ""
po,'... ",
f{Jx .
Z V"-r;", ~er"
J... l d~
;'"
ti lo
As{
y To + Ti se
Ti To
guY1c;o",e
ro,
evc~o
sc.
l1C6
I"7l,;e
_
l1e~A ~
I
\k..r;t:(.lA
M,}c..r\
Ji ,.().)cc)-,~..>\ I
J,t I&tt.J
Vj ....
'
Le.,
,)""'C1d''''l
)
e..,
SEPTIEMBRE 2006
PROBLEMA 3
El circuito de la figura 2 funciona con una seal de reloj CLK con periodo T = 30 ns y ciclo de trabajo
variable.
tp
D Q
n-_~D Q
FF2
FF1
CLK------L------------~
Biestable FFl
Biestable FF2
PuertaAND
PuertaNAND
7ns
8 ns
3 ns
2ns
t setup
1 ns
2 ns
Figura 2
3.1 Si definimos como TI y TO los tiempos durante los cuales las seal del reloj CLK toma los valores
lgicos de 1 y O respectivamente, dentro de un periodo T, determinar justificadamente, sobre el dibujo
de este apartado, los mnimos valores que pueden adquirir TI y TO para un correcto funcionamiento del
circuito. Obtenga tambin la mxima frecuencia del reloj CLK que garantiza el correcto
funcionamiento del circuito para los casos: (a) ciclo de trabajo del reloj del 50 %; (b) ciclo de trabajo
del reloj diferente del 50%. (10 puntos)
..
1-
.J
T
TI
-1-
TO
---1
3.2 Con los valores obtenidos en el primer apartado, determine el rango del ciclo de trabajo de la seal
de reloj CLK que garantiza un correcto funcionamiento del circuito. Si no ha realizado el primer
apartado considere los valores de Tlmin= 14 ns y TOmin= 12 ns. (5 puntos)
3.3 Determine justificadamente, sobre un cronograma, el mximo tiempo de hold que pueden tener los
biestables FFl y FF2 del circuito de la Figura 2 para garantizar un correcto funcionamiento. Considere
para este apartado un ciclo de trabajo para la seal de reloj CLK del 50 %. (5 puntos)
SEPTIEMBRE 2006
PROBLEMA 4 (20 PUNTOS)
r-'\
.
~'EGRO,
activndolas a nivel
NO
4.1 DiseJ.lar el diagrama de estados de dicha mquina, indicando claramente qu representa cada estado.
(10 puntos)
4.2 Complete la Tabla 2 de transiciones y excitaciones en base al diagrama de estados de la Figura 3,
utilizando biestables tipo D (para la variable de estado QO) y tipo J-K (para la variable de estado Q1).
(10 puntos)
00/ O
01/ O
Codificacin de estados:
(Ql,QO)
qo = (0,0)
. ql = (0,1)
'l2 = (1,1)
'b = (1,0)
00/0
01/1
01/1
A,B = entradas;
e=
salida;
Figura 3
(Ql QO)
o
1
1
1
1
www.monteroespinosa~es
o o
o o
o 1
o 1
1 o
1 o
o
1
o
1
o
1
,1
-'(1
o o
o o
1
1
1
1
1
1
1
1
)(
"o
,
.
'O
1
1
1
(")
){
,
(")
'X
')(
O
O
\
l
e
'0
(!)
(J_
I(t)
\
X
><
DO
Kl
'i
.'X
JI
\:..... 1--
(Ql * QO*)
estado actual;
A B Ql QO Ql* QO*
o
o
o
o
o
o
o
AB/C
{)
)t!'
,
~
o
\
'\
(;)
1)
'"O
E)
X.
><.
x
x
)(
nuevo estado;
0-
1<
)t.
v.. o
t)
x
X'
X
I
)
'><
<:)
rc>--
)(
)r'
Tabla 2
T
Gh<
leo ,al~
6b
()
Yill"'l
~~t:l
'W~tt~e;
\.'.
~\
'1
'.~
D 1t I
"
",
C).
0\
\~. . ~
ltl
tXo
(
JO I
lo
01
EB~@
t,Cd
I
i!f
lO
C)
FEBRERO 2007
PROBLEMA 2
(~.
Se quiere construir un circuito que proporcione los bits (S7 ... SO) de la funcin aritmtica S =2n+ 14,
siendo n un nmero de 4 bits expresado en complemento a 1 [N3 N2 NI NO]. El resultado debe
expresarse mediante dos dgitos en cdigo BCD (cada uno de ellos de 4 bits).
2.1 Ignore la columna F y complete la tabla de verdad siguiente correspondiente a dicho circuito (5
puntos)
C..,
K' t3C...~
~
N3 N2 NI NO
o
\
Z.
3
Ll
?
6
--:
O
O
O
O
O
O
O
O
1
-{,
1
-S 1
-~ 1
-"3 1
-2- 1
1
o 1
-'
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
'"""
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
O
1
Dgito BCD
ms
si ,.ificativo
~
1 (!)
O O
1 b
(:;J
1 O
(2;>
6
O O O
O O O
Dgito BCD
menos
si ,.ificativo
O
<b
(9
I(
(5
()
C)
\.
C5 O
C>
'O
C0
o o
C>
l 'O
o O
6
l <:::::>
l O
\. t
t. o O
tD O O
O o o o
1 6 o (':) "C
O o O a
1
1 <9 o 6
1
O
l
O O O O O
1 O b O O
O
O
~
a
o
o
<O o
o o
{
([)
1
1 \
O \
O
1 "2
1 2
O
O Z
1
1
X
X
O
O
O 1
O \
2.2 Simplifique la seal F mediante Karnaugh en funcin de las variables NO, NI, N2 Y N3 de tal modo
que pueda realizarse con el menor nmero de puertas lgicas. Implemente dicha funcin utilizando
solamente una puerta AND y otra OR de dos entradas cada una. Nota: Se dispone tanto de las variables
como de sus negadas. (5 puntos)
.
2.3 Implemente la salida F utilizando el mnimo nmero necesario de multiplexores de cuatro entradas
de datos. Nota: En este caso NO se dispone de las variables negadas. (5 puntos)
2.4 Se quiere ahora construir un circuito que implemente la funcin S = 2n + 14 del apartado 2.1
utilizando sumadores. Para ello se dispone de dos cadenas de sumadores (Figura 4). En este caso
queremos que la salida S est codificada en binario (S4 S3 S2 SI SO) en lugar de en BCD. Tenga en
cuenta lo siguiente:
En segundo lugar tenga en cuenta que multiplicar por 2 un nmero binario implica aadir un "O"
a la derecha del bit menos significativo.
Por ltimo utilice la segunda cadena de sumadores para implementar 2n + 14. (JO puntos)
;"V' .(h.,...G~
o
"
o
A
be..
e..r\ .\.ca.ba.
eJ
)s
S ~ 3 .::;..
. l'b. S \
~~
l..en~ ~ S
l I
=-0
kV10P
(J..Vv1O..<""'
~ Su...Wla.("
~~
\'0-\0-
e..-~eYYl0-0 ~ ~ Ocu.'re
\l3 ~Z ~\ !-lo
-~
e\ 4\\UVO
CoV!.
t..)3_
O-Co.rreo
(..0 :
\ \ ,
-t
~(ff:J
lc-elAeYnc6
~ $UvVl o . .'(
\~
\V'leYYlcG
'1C-.
o t \ lo
l--ed-C\:.
-keos c&
()
\~\ao
\,,\v-o-,i..O,1
Qb~\~~
e..sLd~05 1 {D\'
I
FEBRERO 2007
PROBLEMA 3
El circuito de la figura 5 funciona con una seal de reloj CLK con ciclo de trabajo del 50 %.
tD
A---I'
J---.-------I J
Biestable D
Biestable J-K
PuertaAND
PuertaNAND
PuertaXOR
B _ _ _ _-+-_ _---J
7 ns
8 ns
3 ns
2ns
3 ns
t SetuD
1 ns
2ns
CLK-------~------------------~
Figura 5
3.1 Utilizando los valores de la tabla obtenga justificadamente, dibujando un cronograma, la mxima
frecuencia del reloj (fCLKmax) del circuito de la Figura 5 que asegure un correcto funcionamiento del
mismo. (7 puntos)
3.2 Determinar justificadamente, sobre un cronograma, el mximo tiempo de hold (tholdmax) que
pueden tener cada uno de los biestables (el tipo D y el tipo J-K) para que el circuito de la Figura 5
funcione correctamente. (8 puntos)
619142355
FEBRERO 2007
PROBLEMA 4 (30 PUNTOS)
Se desea realizar un juego de luces de navidad. El juego consta de 3 bombillas que se encienden
secuenciahnente una tras otra, siguiendo la secuencia dibujada ella figura 6 en la que crculo negro
implica bombilla encendida, y crculo blanco indica bombilla apagada. El tiempo que la bombilla se
mantiene encendida ser variable segn el modo de funcionamiento, y se explica ms abajo. En el
ejemplo de la Figura 6 se muestra un modo de funcionamiento en el que cada bombilla se mantiene
encendida durante 1 segundo.
t = OS
t=1S
t=2s
t=3S
t=4S
t=5S
8G
8 G
88
8G
8 G
80
Figura 6
El circuito tiene cuatro entradas de control A, B C y D, todas activa a nivel alto y una nica seal de
rel(~.i CLK. El sistema tiene varios modos de funcionamiento, explicados a continuacin:
C)
Notas:
NUNCA se dar el caso de que haya ms de una seal de control activada a la vez.
Siempre que est activada una seal de control, y pase a activarse otra diferente, todas las
bombillas se apagarn durante un ciclo de reloj y despus pasan al modo que les corresponda,
segn la entrada de control que se haya activado.
4.1 Dibujar el diagrama de transiciones de estados de una mquina de Moore que realice el circuito
descrito. Explique detalladamente el significado de cada una de las entradas, de cada uno de los estados
y de cada una de las salidas. Indique en el diagrama los valores lgicos de las entradas, de la salidas y
de los estados. Diga tambin qu perodo tendr el reloj CLK que utilice. (15 puntos)
4.2 Supongamos que tenemos ahora los siguientes componentes: 1 contador mdulo 4, 3 contadores
mdulo 3, 3 descodiicadores de 2 a 4 (Tabla de verdad en el Anexo del examen), un codificador de 4 a
2 (Tabla de verdad en el Anexo del examen), y un multiplexor de 4 entradas de datos de 4 bits cada una.
Dibuje las conexiones necesarias en la figura para realizar el circuito del apatiado anterior. Se dispone
de una seal de reloj CLK de periodo 0.25 segundos. (15 puntos)
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619142355
~
<~
()
OO\C
() 0 1
COlO
~ ~ltl ~Zl
C{
lr~ve-n c.t. ~
et <h ~.JrcJ~
~SOc'l~ X xkO
0001
---~
'.s
/~
,
I
Contador x 4
Contador x 3
Contador x 3
Contador x 3
(~)
CLK-
Descodificador 2-4
11
EN
A-
10
Descodificador 2-4
EN
B-
10
Descodificador 2-4
CD-
13
'O
11
10
N
11
..1'-
YO
..,o
'5
o
11
C1
"O
ti!
12
ca
12
Y1
13
888
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619142355
10
(',
10
11
EN
YO
Y1
Y2
Y3
Inputs
EN
11
Outputs
10
Y3
Y2
Y1
YO
o
o
o
o
o
o
o
o
o
o
o
o
o
O
Tabla de verdad del Codificador 4 a 2
13
O
O
O
O
1
Entradas
11
12
O
O
O
1
O
O
O
1
O
O
10
O
1
O
O
O
Salidas
Y1
YO
O
O
O
1
1
O
O
1
O
1
10
N
11
.... YO
5
-c
ro
12
-="
'O
o
Y1
13
SEPTIEMBRE 2007
(~
PROBLEMA3
FF2
ENABLE - - - - 1 - - - - - - - - 1
CLOCK
tn
Biestable tipo-D
Puerta AND 2 entradas
Puerta AND 3 entradas
2ns
1 ns
1,5 ns
tsetup
1 ns
3.1 Utilizando los valores de la tabla obtenga justificadamente, dibujando un cronograma, la mxima
frecuencia del reloj (fCLKmax) del circuito de la figura que asegure un correcto funcionamiento del
mismo. (5 puntos)
3.2 Determinar justificadamente, sobre un cronograma, el mximo tiempo de hold (tholdmax) que puede
tener el biestable FFl para que el circuito de la figura funcione correctamente. (5 puntos)
3.3 Determinar justificadamente, sobre un cronograma, el mximo tiempo de hold (tholdmax) que puede
tener el biestable FF2 para que el circuito de la figura funcione correctamente. (5 puntos)
SEPTIEMBRE 2007
PROBLEMA 4 (20 PUNTOS)
Se desea proteger los datos enviados por una lnea serie ruidosa, LS, mediante la insercin de un
cdigo de seguridad de 2 bits al tInal de cada palabra de 4 bits de datos enviados. Este cdigo de
seguridad se compondr atendiendo a las siguientes reglas:
Los 2 bits del cdigo de seguridad, SI SO, codificarn el nmero de '1' que aparecen en la
palabra de 4 bits de datos enviada.
La palabra de datos nunca ser elllll.
El sistema dispone tambin de una seal de habilitacin, EN, que es sncrona con el reloj y que
se activa a nivel alto cuando est listo el primer bit de la palabra de datos a enviar por la lnea
serie LS, indicando el inicio del proceso de generacin del cdigo de seguridad. En estado de
reposo, la seal EN est a cero.
El cdigo de seguridad (SI SO) slo es vlido una vez que se han recibido los 4 bits completos.
Los bits SI SO tendrn una duracin equivalente al peliodo de reloj y son sncronos con l.
Al terminar de recibirse los cuatro bits, se debe generar una seal activa a nivel alto llamada
"Cdigo de seguridad vlido", CSV, que tendr la duracin de un ciclo de reloj.
Una vez que se ha generado el cdigo de seguridad y la seal CSV, se vuelve a atender a la
seal de entrada EN por 10 que si EN est activada, se vuelve a procesar una nueva palabra de 4
bits y en caso contrario el sistema vuelve al estado de reposo.
SEPTIEMBRE 2007
PROBLEMA 5 (10 PUNTOS)
Disponemos del siguiente diagrama de estados de un autmata. Se desea implementar el mismo con los
biestables JK que sean necesarios.
lXXIOl
OXO 100
100/00
XX1101
Leyenda
Ea E1 E2 /
S1 S2
on, 10
101' 10
110/10
111/00
5.1 Represente la tabla de verdad de las entradas, estado actual, estado siguiente, excitaciones de los
biestables y salidas. Codifique las entradas como E o, El, E 2 , Y las salidas como Sl y S2. (5 puntos)
5.2 Simplifique por Kamaugh e implemente con la menor cantidad de puedas posibles (de cualquier
tipo) el circuito de excitacin de la entrada J del primer biestable y el circuito de generacin de la
salida S2 . (5 puntos)
619142355
FEBRERO 2008
PROBLEMA 1
1.1 Sea un nmero binario de 6 bits sin signo, AS A4 A3 2 Al AO, siendo AO el bit menos
significativo. Implementar un conversor de este nmero a formato BCD. Para ello se dispone de
bloques sumadores de 2 dgitos BCD, con acarreo de entrada y acarreo de salida tal como se
presenta en el anexo 1, y el mnimo nmero de puertas lgicas adicionales que necesite. (15 puntos)
Bloque sumador de dos dgitos BCD con
acarreos de entrada y de salida.
Bit de acarreo
de entrada
Dgito en
BCD
Dgito Suma
en BCD
Dgito en
BCD
Bit de acarreo
de salida
FEBRERO 2008
PROBLEMA 3 (15 PUNTOS)
3.1 Complete la Tabla 1 de transiciones y excitaciones, utilizando el nmero de columnas que
considere necesario, en base al diagrama de estados de la Figura 3, utilizando biestables tipo D.
(7 puntos)
Codificacin de estados:
qo=
q =
q2 =
<h =
Q1
O
O
1
QO
O
1
1
AB/C
Figura 3
A,B
CJ
entradas;
e=
A
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
salida,
B Ql
O O
O O
O 1
O 1
1 O
1 O
1 1
1 1
O O
O O
O 1
O 1
1 O
1 O
1 1
1 1
(Ql QO)
estado actual;
QO
O
1
O
1
O
1
O
1
O
1
O
1
O
1
O
1
Tabla 1
~
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 544 53 77 , 619 142 355
3.2 Detemne las nmciones lgicas que excitan las entradas de los biestables tipo D del autmata
descrito por el diagrama de estados de la Figura 3. (4 punto.~)
3.3 Detennine la nmcin lgica que genera la salida e del autmata descrito por el diagrama de
estados de la Figura 3, e implemente dicha nmcin utilizando nicamente un multiplexor de 4
entradas de datos. Slo se dispone de las entradas, y no de sus seales complementadas. (4 puntos)
FEBRERO 2008
PROBLEMA 3 (15 PUNTOS)
3.1 Complete la Tabla 1 de transiciones y excitaciones, utilizando el nmero de columnas que
considere necesario, en base al diagrama de estados de la Figura 3, utilizando biestables tipo D.
(7 puntos)
01 OO.
qo= O O
ql = O 1
~= 1
1
'h = 1 O
Leyenda en las transiciones:
AB/C
o
Figura 3
A ,B = entradas',
e = salida;
e.d"J
A
O
O
O
O
O
O
O
O
1
:1
1
1
1
1
, L.
~.1
B Ql QO
O O
O
O O
1
O 1
O
O 1
1
O
1 O
1 O
1
O
1 1
.
1
1 1
O O . O
O O .; 1
O
O 1
1
O 1
O
1 O
1
1 O
O
1 1
' 1 1
1
ti) =
bcl>
c::::
o 1/,// //
,!)1
o
o
><
<:>
O
X
)C
So
(1
6
o
<:>
i
i
t.
.C>
..x
!1.
o
X
i
:1
1
1
o
1
:><
1
<:::>
!Qtf (fH)
J Q:1 (-1
vo..r:c..htr.j (/
Q1 u1 QcI>.f:+I
o
o
~------------~,,~--~~,
e>cC fG..c:o'l eJ
Tabla 1
1)1 J
::: Do
~//, I//.
/// //L
' // ///
/// / / /
/ // / /
/// / /
// / / /
/ / /~
~// C;
// //
// /
// /,
// /~
/ 'l/
1/// /~
/ / '/0
yE~t"'J
oO)
coe.......",c.J
hQ.C{
f""e
;?
3.2 Determine las funciones lgicas que excitan las entradas de los biestables tipo D del autmata
descrito por el diagrama de es~dos de la Figura 3. (4 puntos)
S'l'?pe;~;c:c:..c:~1"I
00
00
fx
01
1(
>< (1
A6
C>
(!;)
01
'o
lo
i,
o
(i
jJ
11
lo
C>,
00
Ob
1/
GI~o
~.
QIQ."
10
Keo. .. I'7c.."-"J1.t:
pur
f)<-
C)
1~
1...}
1}
c>
C>
3.3 Determine la funcin lgica que genei'a la salida e del autmata descrito por el diagrama de .
estados de la Figura 3, e implemente dicha funcin utilizando nicamente un multiplexor de 4
entradas de datos. Slo se dispone de las entradas, y no de sus seales complementadas. (4 puntos)
Lo
p. . :MeIb,
r"'It'oic.....,tc!
~
G'~+
(>0
01
I
ee . . .i't:>ilo
(B
C.
14.r"'''-vc:Jk
00
O(
I(
o
o
x
o
C>
X
o
c:>
&(,(
p,-,uJe. 5e,. I
A~{, e{c,;.-tsj
Lo
fe""(. "'~J
,'.-
J>or&(\( n ...
A '>,~
"'.....
o.
y 1---
c=Al3cH,
o (1\
o \;J
oe be
e~J v~,~:c...hfLJ
"'0
~u ... cio',.,
.,
Aho!""",. p....eJb
oe
e.....
s;"..,pe:~;c:c...M5j
e...)
;;i.Jpo~"""oJ
;f!.
e:.. f-,-c..c)"'J
;~
6)"'0
A8
~).
cC>l"Ilrz>f
c:. = A 8 D
A B . o 4 A'!3 . Qs
S.s.~o I, t S,So I
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619142355
AB' o
z t S,I ______./3
FEBRERO 2008
PROBLEMA 4 (20 PUNTOS)
Se pretende implementar una mquina de estados que controle el funcionamiento de dos semforos
en la salida de un aparcamiento pblico, segn el esquema de la Figura 4.
Seal A
(semforo
verde si A'="1",
rojo si A="O")
SealB
(semforo
verde si 8="1 ",
rojo si 8="0")
o
Sensor 1
(51)
Sensor 2
(52)
Figura 4
()
Cualquiera de los dos semforos estar verde durante un tiempo mnimo de 30 segundos y
un tiempo mximo de 1 minuto.
Los dos semforos nunca podrn estar en verde o en rojo simultneamente.
4.1 Dibuje el diagrama de estados de dicho sistema de control utilizando una mquina tipo Moore.
Indique CLARAMENTE los estados, las entradas y las salidas. (20 puntos)
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377
619142355
FEBRERO 2008
PROBLEMA 5
Considere el siguiente circuito y los datos que se indican alIado.
02 Q
--+------ID
03
tD
01 Q
Biestable DI
Biestable D2
Biestable D3
Biestable J-K
PuertaAND
Puerta OR
PuertaXOR
I ns
2ns
2ns
2 ns
1.5 ns
I ns
1.5 ns
setuD
I ns
1.5 ns
0.5 ns
I ns
Q t - - -.....
CLK
Figura 5
5.1 Utilizando los valores de la tabla obtenga justificadamente, dibujando un cronograma, la
mxima frecuencia del reloj (JCLKmax) del circuito de la figura 5 que asegure un correcto
funcionamiento del mismo. Exprese claramente los tiempos de todos los caminos que considere.
(5 puntos)
CLK
5.2. Determinar justificadamente, sobre un cronograma, el mximo tiempo de hold (tholdmax) que
puede tener el biestable DI y el J-K para que el circuito de la figura 5 funcione correctamente (5
puntos)
~..
SEPTIEMBRE 2008
2.1 Escriba la tabla de verdad de las funciones C3, C2, CI y CO (bits que representan el
complemento a 9 de A3 A2 Al AO, ambos expresados en cdigo BCD). (3 puntos)
A3
A2
Al
AO
O
O
O
O
O
O
O
O
O
O
O
O
O
O
1
1
1
1
1
1
O
O
1
1
O
O
O
O
1
O
O
1
1
1
1
1
1
1
1
1
1
1
1
1
O
O
1
1
C3
C2
CI
CO
1
1
1
1
1
O
1
O
1
~
O
1
2.2 Determine las funciones lgicas simplificadas de las cuatro funciones C3-CO. Para ello haga
uso de ias herramientas necesarias (mapas de Kamaugh, etc.). Justifique c1aramente sus respuestas.
(5 puntos).
2.3 Implemente dichas funciones, C3-CO, utilizando nicamente puelias NAND de 2 y 3 entradas.
(5 lnintos).
2.4 Implemente las funciones C3-CO utilizando multiplexores de 4 entradas de datos y los
l1versores necesarios. (5 pZlntos).
SEPTIEMBRE 2008
PROBLEMA 2 (18 PUNTOS)
En binario natural (base 2) el complemento a 1 se genera simplemente invirtiendo todos los bits. Lo
equivalente en el sistema decimal (base 10) es el complemento a 9 y se genera obteniendo la
diferencia a 9 de cada cifra decimal. As, el complemento a 9 del nmero 248 ser 751. En este
problema se trata de disear un circuito complementador a 9 de un nmero expresado en cdigo
BCD (A3 A2 Al AO, siendo AO el bit menos significativo).
2.1 Escriba la tabla de verdad de las funciones C3, C2, Cl y CO (bits que representan el
complemento a 9 de A3 A2 Al AO, ambos expresados en cdigo BCD). (3 puntos)
A2
Al
AO
C3
C2
Cl
O
O
O
O
O
O
O
O
1
O
O
O
O
O
O
1
1
O
O
O
1
O
1
O
9. -o
'= ~
c>
C)
"'t-i
.... g
1
1
O
1
O
1
1
1
1.
O
O
O
O
yI",
jZ
~}
1
v//
~~ /ft/ l/v
1i V~> /~ ~/ V~
~o
e~h~
I)G.l)
1:5
~'1
15
CO
A3
VV
V //VA
C>
O
o
'-(
"3
t.
t:>
><
.x
X
X
/r
"1
><
)C
)(
)<
)(
)<
.x.
><
)f
C ... l
_..
)U>
"",\"el, t..l
()c
O)
>1>'\
r'\~
/0
r ....<t'"'
fU"" """
~C.
r,
} . -.l j .....,,.o'lCJ
; 1"'1
,,,..~or\-.....
'o
"''')
2.2 Determine las funciones lgicas simplificadas de las cuatro funciones C3-CO. Para ello haga
uso de las herramientas necesarias (mapas de Kamaugh, etc.). Justifique claram;;,nte sus respuestas.
(5 puntos).
2.3 Implemente dichas funciones, C3-CO, utilizando nicamente pueltas NAND de 2 y 3 entradas.
(5 puntos).
2.4 Implemente las funciones C3-CO utilizando multiplexores de 4 entradas de datos y los
inversores necesarios. (5 puntos).
/U]
D b.serv"o'\~"
e..
t.. )f... ,
el.
f.c :
le" 11 Ie
-==
AIA4
~
00
()/
"
(o
www.monteroespinosa.es - Clases de C
",
o,
o
/.}
t:>
.)<
C>
(J
00
-. 11
"
)<
.t\i
lo
e>
o
X
)<.
. _
A\-----C1
~
el ==
- Al-
AZ-AI.
Al Al
Al
e2,
--
t>---I-~
Al
Al
Al
.se.
r,
r,
c..
S<>1;~
,pero.
el
'4
'f
1,,4 = A~
c.. c.
~o
x,
Ir
rl
(>
Ji
c.l
e,
JII
IC1 =A~ (j I
..
a...
C:o../I .. l-r
fi/
r ..
Ai
Xl
"u.~
Ic>
o
o
i?}e.
C. 3
e.
P.,..~ .... I
A;
AlAI
01
.r1
~
-
IC~
==
Xl .A
'(A-3J
Io
Gl
r,
'1
I)
Cc4
Az Al
Io
I.
r~
A3
I.
'1
C>
./D+
AZ-. AI
'-
ro
()
T,
,l'Z
Ai
cc.;rt
A~
A.i
FEBRERO 2009
M
Circuito
Lgica
Combinacional
Exterior del
almacn
C)
Interior del
'almacn
Figura 4
619142355
o
o
o
o
1
1
1
1
e
o
1
1
o
o
o
o
1
1
1
1
1
1
1
1
o
1
2.2 Utilice un mapa de Kamaugh para obtener la funcin lgica simplificada de M. En caso de no
haber respondido el primer apartado, simplifique la funcin Z. (5 puntos)
2.3 Implemente la funcin M utilizando exclusivamente puertas NAND de dos entradas. En caso de
no haber respondido el primer apartado, implemente la funcin Z. (5 puntos)
C)
'
10
11
Y
12
13
S1 SO
II
FEBRERO 2009
(
\
\
ri
"
..
M
Circuito
Lgica
Combinacional
Interior del
"almacn
Exterior del
almacn
.
"
Figura 4
I~
H-=
13
!3
A8
A8 .A~
IIil
::
)'
~-
ABC.tBc::tABC1A~+AB~
~ AB L.
.f-
A9
f A 8 ... A Be.
AB::
ABe +AI3(C+1)tAB"(C.H.}+ABC.=
lA:: ~ 1
13::
oS
\::)1
.le.
-1.. ..,
~ .~ t.:
'-"1 ,,(_>
... , ..J...
---
o
o
o
o
1
1
1
1
o
o
1
1
e
o
o
o
o 1
1
1
o
1
z
o
C"''''v'I~Q_
1
1
iJ
Co"" Tol..
...v?o
l.
l.
o
1
1
1
1
1
1
O<.Jc.c
hV40i:> I
}'
"
,-
l'
C.=1
el.. ca:.. e~
>1 ...
d ..
'y
ee
O~fb "o I
"
"
e.,
a..
clerft...,
2.3 Implemente la funcin M utilizando exclusivamente puertas NAND de dos entradas. En caso de
no haber respondido el primer apartado, implemente la funcin Z. (5 puntos)
2.4 'Implemente la funcin M utilizando un multiplexor de 4 entradas de datos. En caso de no haber
respondido el primer apartado, implemente la funcin Z. Justifique su respuesta. (5 puntos)
1
, S'
10
11
Y
12
13
S1 SO
()
II
619 142355
1rt /
2.2 Utilice un mapa de Karnaugh para obtener la funcin lgica simplificada de M. En caso de no
haber respondido el primer apartado, simplifique la funcin Z. (5 puntos)
=D
fiei
H
::.o~
FEBRERO 2009
(\
FF1
J
Q1
Biestables
FFl yFF2
ell<
CK
B
XOR
NAND
t nron
lns
tsetun
2ns
3ns
2ns
Tabla 1
--+---------1
Q 1 - - -........- - Q2
L-..-------O>Clk
-----------1 K
FF2
Figura 5
3.1 Utilizando lo valores de la Tabla 1 obtenga justificadamente, dibujando un cronograma, la
mxima frecuencia del reloj (JCKmox) del circuito de la Figura 5 que asegure un correcto
funcionamiento del mismo si: (a) se utiliza un reloj con ciclo de trabajo igual a 50%, y (b) se utiliza
un reloj con ciclo de trabajo diferente al 50%, indicndose en este caso el ciclo de trabajo necesario.
(lO puntos)
3.2 Determinar justificadamente, tambin sobre un cronograma, el mximo tiempo de hold
(tholdmax) que el biestable FFI puede tener para que el circuito funcione correctamente. (5 puntos)
(~)
619142355
FEBRERO 2009
PROBLEMA 4 (25 PUNTOS)
Se quiere realizar el mecanismo de control de puertas de entrada y salida de una nave espacial. En
la Figura 6 est representado un esquema del mismo. Entre el interior de la nave y el exterior, existe
una cmara intermedia de compensacin de presin con dos puertas, controladas por seales lgicas
Al y A2, que separan el interior de la nave del exterior. Al activar a nivel alto cualquiera de estas
dos seales, la puerta correspondiente se abre en un tiempo despreciable. Cuando se desactivan
estas seales, la puerta correspondiente se cierra en un tiempo despreciable. Existen tambin dos
pulsadores, el pulsador A, accesible desde dentro de la nave y desde la cmara intermedia, y el
pulsador B accesible desde dentro de la cmara intermedia y desde fuera de la nave. Tambin
existen un extractor de aire, controlada por una seal lgica E, cuya misin es extraer el aire de la
cmara de compensacin (cuando se activa E a nivel alto) y un impulsor de aire, controlada por
una seal lgica 1 cuya misin es insuflar aire a la cmara de compensacin (cuando se activa 1 a
nivel alto). La presin dentro de la nave es P >0 y la presin fuera de la nave es P=O. Asimismo en
el interior de la cmara de compensacin tenemos un sensor de presin Sl SO que tiene tres posibles
salidas: Si SI SO vale 00 la presin en la cmara es O, si vale 01 la presin en la cmara est entre
Oy P y si vale 11, la presin en la cmara es igual a P.
sensor de
presin
exterior
(espacio)
cmara
compensacin
interior
nave
espacial
A2
1
impulsor /
de aire
Figura 6
El sistema debe funcionar de la siguiente manera:
1. En el estado de reposo las dos puertas Al y A2 se encuentran cerradas (Al=O y A2=0).
2. Cuando un astronauta que se encuentra dentro de la nave quiera salir al exterior, primero
debe pulsar el botn A. La pulsacin de A ser de duracin suficiente para que sea
registrada correctamente en el siguiente flanco de reloj. En ese instante el impulsor de aire
empezar a llenar la cmara de compensacin con aire hasta que la presin interna dentro de
la misma sea P.
3. Cuando la presin en la cmara de compensacin sea P, se abrir la puerta Al y se
mantendr abierta durante 5 segundos, cerrndose a continuacin. Durante esos 5 segundos,
se supone que el astronauta puede entrar en la cmara de compensacin.
4. A continuacin el astronauta puede pulsar B. La pulsacin de B ser de duracin suficiente
para que sea registrada correctamente en el siguiente flanco de reloj. En ese instante el
extractor de aire empieza a actuar hasta que la presin en la cmara sea O. Si durante este
tiempo, el astronauta pulsa A, se pasar a la situacin del punto 2.
L
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619 142355
Para implementar este sistema se dispone de una seal de reloj de 5 segundos de periodo.
Nota. Nunca pueden pulsarse simultneamente los pulsadores A y B.
4.1 Indique CLARAMENTE cules son las entradas y las salidas de la mquina de Moore que
controla el funcionamiento de este sistema. (2 puntos)
4.2 Dibujar el diagrama de transiciones de estados de una mquina de Moore que realice el circuito
descrito. Explique CLARAMENTE el significado de cada una de las entradas, de cada uno de los
estados y de cada una de las salidas. (15 puntos)
-\
C
4.3 Suponga ahora que las puertas Al y A2 no se abren ni cierran en un tiempo despreciable sino
que tardan 10 segundos en abrirse cerrarse. En este apartado, mientras se est abriendo o cerrando
alguna de las puertas, el sistema ignora cualquier pulsacin de A B. Dibuje ahora el nuevo
diagrama de estados de la mquina de Moore. Para cada estado explique lo que significa el mismo y
la salida que se obtiene. (8 puntos)
L
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619 142355
SEPTIEMBRE 2009
6.1 Describa dwr~m~!fite la funcionalidad del componente VHDL que a contia.'1uacin se adjunta,
indicando d~iI"ammfJllte el significado y funcionfu'TIiento de las sef..ales de entrad y salida del IDlsmo,
(5 puntos)
UBRARY IEEE; .
USE IEEE,STD_LOG1C_1164,ALL;
.ENTITY Septiembrs_2009 iS
PORT(
SI:
IN STO_LOGiC;
IN STD_LOG/e;
b:
e:
d:
e:
f:
g:
);
ENO Septembre_2009;
PROCESS (a)
do. es une.. se<:l.\ -e c-A<oi'~ l. ~
BEGIN
.
IF (a'EVENT and a = '1') THEN .
IF (b = '1') THEI;.J
b e.ktb\e ~ ~ l.
ENDIF;
END PROCESS;
d <= sr(15);
e <= sr(31);
f <= sr(47);
9 <;:; 5r(63);
END arch;
(
'--./
lM Sl\b~V~ e~
u.n
~iPD de otro
(1
~~
c.~Q..Aos ~rurYl.+tvS.
\lvVlt\'.."\
~t'l'1C1S c{e~
Cv..'JO-":>
l\.Vl
V\ u.effC
su.\c, \
~ (X)
"L
\11\
~\~_\.cG-t" - vK'6\:t
g,
~,\s .
11I111\lIllld~~r:
S(-Qen~t~
~1111 \I\\II m11\1 \ \1111]I\\~IIIlIIIII\ IlIT ~II \\\1 mm l1j 1:01 \I!l~
g,
{\..L-Yl~O
\\ecS:,.GL
e\. ~CU'l CO
de.~Qea.i'I1iel1~od,Q
~\.Q\.eyY\.eYl~U
D
n-k-c'- tA
(?
e.1 Qo
'0s
" e
()
~~~:\'d~ ~ ~
S e'.-1o.\
CA.. I
~. f\CuCc2 e\
pa:6lC.~o-;,
Gs
SoL'
ple.d-~I'.yr')~n~ro<;. ~
eLG.
~(\ ~c::do
12 '"
Yl
c:t.
~\..
kG\.(2Jet,
pos"c',:;
OWlet1~o
._0
'-
~5\-to
'-
Q.J\l,..\~'" S<?\i.~-
b.Z ,,1\
d'::
O\oloie>\
e. :::
/1
\\
I(
0\.0 \OlO\
~.-
librar'y lEE,E;;
use. IEEE,qtd_og.ic,....1l64, ..J.,1.;
'entity vend is
port (
:::l.]ctirt_lUQney, ::-eset; in STD L{)GICj
i,n: .$elect; in STD....:LOGIC,-.yECTOR (7 d9wnt. {ij ;
iri_dispatched: in STD .LOGre;
outddnk : out STD_LOGre....:VECTOR;
ri.dvep.d;
l.
s_w~it_pshls;..put drinki i
if reset:;:li i tben
state vend<=s wait t'or m ;
but....:d;:in.k <=107 ; : .elsif (el.k;:! i' and clk'evqnt)then
case st'ate_~Tend 15
whens wa.it tor ro
out 'dri:nk<= O"";" j
,0
=>
end if
libra:rv IEEE;:,
por;:t (
clk"in ,rttoney,
in,-,~el;cti i.n
in STD, LOGre;
ST;LO(;IC VEC1'O:R
io'-.d,ispat:c:ne<:i: in S'rO_LOGIC;'
'out cir:l.nk:, ,<?ut. STDLQC;IC VECT'ORi,
musIc bn: out ST:O_LOGIC_VEC'l'ORi .
eTI:d
x; e s,et,,;
yena:
downto X)) ;
begin
Pl: pr9gess olie; reset)
hegin
J,;ft,eset="],
then.
\
.o1.1t ~dr:i.):1k<=' G1 ;
musc_ Cp.,<:;=1 O';
elsi.f .~ ~=.1 1 ~ "an.p.
el
=>.
.~.
-'_
musc~Cin<=' {l' ;,
in.~_.rr1;qney ~.tb'f
'tnen
vend<;= s wai,t ,o'r_In;
else :state_vend<=
i'f
SL,at
whens_~lait_p):lsh
=>;~iM_i@-~}
out~drihk<='0
T'l
lll~si.~on<=.P91
J.
end Ji;
, .~
CJ
:ti
in~dlspa:tched='DJ
sfate:....v'e'nd<;=
then
c\lt _p:r in k;
,5_
=:>'
out~ink<=' l '
whn .s 'musc'
.
.. .r
'
, .
CEDO -Septiemyre 2005
A:,
EN.TITY AutoIDataJ 18
PORT(Clock, Resetn:IN STD___LOGIC;
..
w : I N STD_LODIC;
z
:OU.T STD.-;LOGtc);
.END,Au,tomataJ:
ARqf:lITECTUREBl:!avi~r
TYJ?E State~tYpe
OFAutomiitallS:
JS (A,B);
~m::NALy : St~teJype;
BEGIN
.~oA
yLo-:. A-.:;: h..e. vc~ f\-\'- e.s.'
.,
Y<=~::: \te \I~ ~\ ~~o "6 ..
A ~g
R~il' ~ .~
WHENA=>
Tfw = iOiYHEN
y<=A;
z <=;.0\
Y<'~
B;
.Z<.=w;
ENDTF;:
WHENB=:>
ti. .M"N
-j~ 1_ "l<11~.(,.~'.' .J$. A
.Ux
.
'.' ...
u.,..~~J. ...t. f~~ Ad:v4.
fF w= ,'O THEN
Y <=A;,
A/'M'vd:&-1f~
ELSB
C)
y <==B;
Z..<;:;w;.
ll
. 14'\. '.
.~,
ENDIF;
BNPCASE;'
END!f'.;
ENDPROCESS;
END Behavior;
;t.K/,x.
d.rJ/,Y
I
~.
GQiC
w/u
.
7.
Pgina9de~
(',
I
BEGl'N
SIGNALy.: State_t}pe;
A,J 5
ld~
EeSE
Y<"';:
)' <"FB}
ENl)JFi
Wl-lEN )3=>
'
c4k
tl i-iI~~
lFW='~Q;THEN
y<=A;
ELSE
y<=B;
ENOJE;
END'CASE;
'
ENOJE;.
END J'l~DQ,E.~,S;
PRQCESS (y, w)
BEGIN
CASEyJS
WHENA==>
i <= '0
WHENB=>
ENDCASE;
ENo PROCESS;
END Behavf;
1
;
CASEyIS
WHENA=>
ni w ='O'TI-IEN
th\,
A
~A
/j.,..V;J4f"
ll~/}\11/.r/ ~
FEBRERO 2010
SALIDAS
Nmero binario
Decenas BCD
Unidades BCD
A3 A2 Al AO
D3 D2 DI DO
U3 U2 UI UO
(o
'
e;,
<O
<5
(5
()
O
O
O
O
el
f)
C>
<:!)
l
1
(;)
C>
()
(?;J
<0 O
\6
([;)
~~
.1
,~
\C\
"1
z.o
l.l
10
\
1
I 'O
l 1
<D O
C> O
11
e>
I
I
12
13
ro
'O
14
C>
-o
eJ
15
I
I
l
1~
t)
~\:.I..~S el
~~~
~~~rno.c
~ 'U.Llt1e("o o(";g~
(.)\) ~o. a..>f eon3:
fY\cl.\
BCl)
le\. c~ Reo
c<D<n-edcx.
2.2 Simplifique por Karnaugh las funciones F, G Y H, en funcin de A3 A2 Al Y AO (emplee las tablas
que se adjuntan). (7 puntos)
A1AO
A3A 2
A1AO
A1AO
()
(6
<:>
<:':>
<:)
C>
A3A 2
O O
A3A2
t
O
(1
C?
(!:)
l
l
(]
<.':J
~,----------------------------------------------------------------
619 142355
2.3 Realice ahora la misma conversin binario-BCD utilizando para ello 2 sumadores de 4 bits y las
puertas lgicas que necesite. Dibuje las conexiones y puertas necesarias sobre el esquema
siguiente. (5 puntos)
~Co
~
kewtC'5~
A3 A2 Al AO
r-dHS=-
(kevte-Wl05 ~ ~~(
h",~61\.e ~ca.J'1\lN
V\.a..oo-
0000/
1
')
\3Ct>.
(~ Pt~~I,GJ~oS~
GUW1-("' G (.0 'l~ ~ do \en.e("
~ L~ ~(O...
SUMADOR
(S=m+n)
\:o..
1 - - C out
Co("ct2C
J
i
t If
'
SUMADOR
(S=m+n)
.......
S3 S2
s]
So
III~
D3 D2 DI DO
U3 U2 VI UO
~b t\<DllS~?
(;,~)
fvt
~(dO
.se:1..S CO-3vS
(VI
~S
"Su.rV'CUVlO'V
C-i
Cj
FEBRERO 2010
(\,
Se dispone del circuito de la Figura 3, que incluye dos contadores de dcadas 74HC160 (tabla de
verdad en el Anexo), dos biestables tipo D, puertas lgicas, una seal de reloj (CLK) y un pulsador
.
para activar la seal E.
CLK
Vee
T..!..==(''-*---1 D
Q !----I D
Figura 3
CLK
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
--1"--------T------,-~-
..r_-......_-,-__----r----_l---r..
I
I
I
I
I
I
I
I
I
I
I
. ___ ~ __ .. _
_-_ -__-r--__.,.___-_,~-__--r-_---_-
....-..
I
I
.... _ ......
Figura 4
3.1 En el cronograma de la Figura 4, representar la formade onda de la seal Z que resulta de la
evolucin temporal de las seales CLK y E. (5 puntos)
3.2 Explicar justificadamente, la funcin que realiza el circuito de la Figura 3. (5 puntos)
3.3 Se quiere realizar un circuito digital para mostrar la calificacin final de un examen realizado
por los alumnos de una clase. Dicho examen consta de 3 partes, de manera que la calificacin de
cada parte nicamente puede ser Aprobado (1) o Suspendido (O). Adems, las 3 partes son
excluyentes, de manera que para poder aprobar la segunda parte el alumno debe haber aprobado la
primera, y para aprobar la tercera, debe haber aprobado las 2 primeras. De esta manera, las nicas
combinaciones posibles de notas, representadas en binario, y la calificacin final correspondiente
sera:
2 aparte (P2)
O
O
1
1
1 aparte (PI)
O
1
1
1
3 aparte (P3)
O
O
O
1
Calificacin Final
Suspenso
Aprobado
Notable
Sobresaliente
Los datos de las notas de las tres partes son enviados junto con el nmero de orden del alumno (3
bits, D2 DI y DO, siendo D2 el bit ms significativo) por una lnea de datos en serie, y de manera
sncrona con una seal de reloj (CLK). A continuacin se muestra un cronograma ejemplo
suponiendo 2 alumnos en la clase (alumnos A y B):
,,
Lnea de
datos
02 01 DO P1 P2 P3 02 01 DO P1 P2 P3
:4
,
' ....._
Nm~ro orden
: alumno A:
I
: :
_....L....._.:.:
:
Nry,ero prden:
~I.
..
: ..
Nptas ~el
al,umnrl.'1' A
f
: alumno B
I
: : : :
Nbtas del
al~mnol 8
CLK
Figura 5
Para mostrar los datos se dispone de un display de 7 segmentos para mostrar el nmero de orden del
alumno y de 4 LEDs para indicar la calificacin final (suspenso, aprobado, notable y sobresaliente),
iluminndose el correspondiente LED. (ver Figura 6)
N ote que en la lnea de datos, no hay separacin entre los datos de un alumno y el siguiente. Los
datos de esta manera llegan en paquetes de 6 bits, los 3 primeros indican el nmero de orden y los
tres ltimos las calificaciones de cada parte del examen. La seal de reloj, CLK, est sincronizada
con los bits de datos y tiene su primer flanco de subida al llegar el primero de ellos (D2) por la lnea
de datos, como se muestra en la Figura 5.
La clase tiene 7 alumnos (nmeros de orden del 1 al 7 en decimal). El nmero de orden O no
representa ningn illumno.
Realice las conexiones a los componentes de la Figura 6 (tablas de verdad/caractersticas en el
Anexo), aadiendo puertas lgicas si es necesario, para que el circuito funcione correctamente.
Puede asumir que las salidas del contador 74HC163 se encuentran a cero (reseteado) al principio
del funcionamiento del sistema. (5 puntos)
L
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619142355
;'
~CLK
~
Lnea--de datos
QA
QS
QC
QD
A
S
74HC164
Clock
D
CLK
-CLR
RCO
ENP
ENT
LOAD
74HC163
0CJ)0CJ10.j:>.0W0 N0 0 0
o
"'-1
-->.
74HC377
0CJ)0CJ10 0 W0 N0 0 o0
"'-1
.j:>.
.....>.
()
83 82 81 80
Descodificador
BCD a 7-segmentos
8
Figura 6
FEBRERO 2010
(~
,...
\.--...L
=t>-
O
CLK
-A:
Q
CLK
Q
'---
Q-
C out
Q t-CLK
A'
el K
Q
CLK
C in
Figura 7
x-...---\-\
s
y -+--<t---H
CIN -+--<~------'
YL
Biestables
XOR
AND
COUT
OR
t pTOP
tsetup
lns
3ns
2ns
2ns
2ns
Tabla 1
Figura 8
619142355
FEBRERO 2010
LB
LA
[UJ
[]]
(]]
.J...>
..1....
,1.j-
tiempo
rn rn -~
{j.
rn :00:!- JI(
-{)O'
~-<;..
j:]Q JID: rn
<.,7
~;"..
...~;...
"-..7
[llJ
Le
LB
LA
RA
RB
Re
rn
C[J
'f'm
<lil)..,
J..)r
{..J..
J-"'- .
fJTI{
:cn,
CD
..t. ~
CD
J~7
J-.. ,.,':.
oo:t....~.
rn
:~
.(,\.
< ,
~v
uu
RB
(]]
,.J"),,
~l
RA
J.....,...!".
rn~
'.
~)-
CiD UD CD
[[J
Re
Figura 9
Figura 10
5.1 Dibujar el diagrama de transiciones de estados de una mquina de Moore que realice el circuito.
Explique CLARAMENTE el significado de cada una de las entradas, de cada uno de los estados y
de cada una de las salidas. (10 puntos)
5.2 Suponiendo el diagrama de estados siguiente
o
Codificacin de
A
B
C
estados
00
01
11
Implemente el circuito utilizando biestabl~s J-K y la l&~a adicional necesaria. (10 puntos)
~~\
__~ ~e,,l.-'~l'''t
/'
(!;)l
~\
O
1
O
X.
6
O
<t)
Qe
e
(
O
I
@1
. \:a.
~o",ec;.
'-- <2.>t.C.l
~., -.,e..'<
'3.,
O
O
O
O
\'
O
()
()
1,(
)(
><.
0l
\-(\
k:
X
-So
)(
@.~
-\
'><
x
k"
~l
)(
'><' .
)i
'l(
()
X
)(
'X
e>
)(
.e'
><
'O
'x'
--.,
k~~u ~ e\
Wd-t"Vli.I1.~ e..Mp\.e.ce ~ cero
o
OSCL\o.rC\
POS
CLOMes .'
EL
tI k
lS<>
i n1(>o6 '\al.e /
~i s(CcLl"I'1 eAl.e
e"5
pano
DWlo
S'l'a\e ~ i.<c.uCJ.\
Vlo
es' impo-
e$~( ~ -
Cct.('lo '
q~;. e..s.Wo' l~ t.c't: 'b.e ..cJ... cud-~.m. e.. ~os ,os. 1.0 \e~C)S'CJ.
l t-L
~Y -ro '\\I..U'ni. ~o e,Yl fL.\ -G:\.\ C-lc\O ~e \V1\Q('vrl,A.e(lc.~ o.. \.~ct
~\-=~tn
e.('"
't.:.,
1'S::
&>-{!'~Yl60
~-rc12-r
'1
1,
1,
'1
1,
1 \
I(
\\
tI
1/
"
'1
11
It
/1'
\1
1.
"
"
\(
1\
1)
'I
11
1\
11
!1
11
11
I f
I t
"
!1
)1
ti
\)
11
tI
eme~e vI e
\. o.. .
11
11
11
\1
11
t,
I J
~ecLa..
{f
"
FEBRERO 2010
[[J
-!.}.
00
-l-\..
.J..)-
~.
.J...7
m
.
..J.
-'
'vl,.
,>
:rn:
.J.J.
(1)
(IIJ
Le
LB
LA
RA
RB
Re
rn m
. .~u,..,.. 'u.
[TI
;JEl,
rn
[TI
..!,.).
)n.
(]J
~m
/-l-I,.'
bl{
~t)
:orQ
:00:
.. .....;..
j:llii, ,'f2lEi
RB
RA
tiempo
m m
[[]
[[)
LA
LB
,,. ";.
',J.?
" ,!>-
)JL(
<1....-'-
(]J
~L'
~l.>-
-.J..).
[U rn
Re
Figura 9
Figura 10
5.1 Dibujar el diagrama de transiciones de estados de una mquina de Moore que realice el circuito.
Expliqu: CLARAMENTE el significado de cada una de las entradas, de cada uno de los estados y
' ; .
de cada un~,ee las salidas. (10 puntos)
_.
(.
-c)
Qf Of;t,
'1
Codificacin de estados
,00
A
, ,H
01
C
11
X
o
;'''X.
Implemente el circuito utilj~~do biestables J-K y la lgica adicional necesaria. (10 puntos)
Ql
o
C>
I
I
o
o
~//./# v/v/;
I
ti.""
o
Q"
.. _Gio
o
I
o
y/~c
,,~#/~ ~/~~
o
I
I
,
'".
~///; ????~
o
o
,
I
..
[
i
f;;7~h ~/~ v/~
I
'l
_5
~.1
t(l
o',
t:J
,X
)<.
X.
o
-
'
,ff:;
www.monteroespinosa.es - Clases de CEDG - Tfnos 91 5445377 , 619142355
..:..-~)
X
";x
...
/<
1
X
)<
. ~.'
)<.
(>
'
..
lC.'
;X
O
O
~
~
.
..
o
;X
m 15 ~
ail
jl~
@
~
~
Ke
s~
El
S",ef..
I 3q> .: I
t
4,- .
~.
E.
e....
. e.
c,~
Ql
1.1""
,.,1-0
Sof.
de"
e....
e..
e. .t,
o)
c:.~b:'-.
FEBRERO 2010
entity vend is
port (
clk,in_ffioney, reset: in STO LOGIC;
in select: in STO_LOGIC_VECTOR (7 downto O);
in_dispatched: in STO_LOGIC;
out drink: out STO LOGIC VECTOR;
end vend;
architecture vend arch of vend is
type vend state type is (s wait for ffi , s_wait_push,s_out_drink);
signal state vend: vend_state_type;-
begin
Pl:process (clk,reset)
begin
if reset='l' then
state vend<=s wait for ffi ;
out drink<='O';
elsif (clk='l' and clk'event) then
case state vend is
when s wait for ffi =>
out drink<=' O ' ;
if in_ffioney ='0' then
state vend<= s wait for_ffi;
else state_vend<=s_wait_push; end if; ,
when s_wait_push =>
out drink<='O';
if in select = "00000000" then
state_vend<= s_wait_push;
else state vend<=s out drink; end if;
when s out drink => out drink<=' l' ;
if in_dispatched ='0' then
state_vend<= s_out_drink;
else state vend<=s wait for ffi; end if;
when others => state_vend<=s_wait for_ffi;
end case ;end if;
end process;
end vend_arch;
6.1 Dibujar el diagrama de transiciones de estados de la mquina definida en el cdigo. (10 puntos)
6.2 Incluya el cdigo necesario para que una vez obtenido el refresco se active un pulso en una
seal music_on que reproduzca una meloda. (5 puntos)
619142355
ANEXO
Tabla de verdad del contador de dcadas
74HC160 con clear asncrono
Connection Diagram
OUTPUTS
RIPPLE
CARRY _.- - - - - ' ' - -.....' ENA!lLE
(la
VCCOUTPUT OA
Ilf;
14
1$
Oc
00
/12
13
"
LOAD
110
11
Truth Tables
'HC 160/HC161
a Oc
RIPPLEQA
CARRY
00 ENA8LE
T
OUTPUT
re
CK
CLEAR CLOCK A
o
5
L
H
H
H
H
H
t
1
la
1)
CLR
X
X
ENAD!..E
p
o-
LOAD
CI.EAR
CLK
X
H
L
X
L
H
L
Load
Function
X
H
H
H
L
H
Clear
Count & RC disabled
Count disabled
Count & RC disabled
Load
lncrem en! Counter
DATA INPUTS
ENP ENT
TUF/5-:r.JB
'\
;
RIPPLE
CARRY
OUTPUTS
"
Os
VCCOUTPUl OA
lU
14
15
RIPPLE QA
CARflY
Oc
13
Oa
MM74HC163
, ENA8LE
T
LOAO
00
11
Oc
00 ENABLE:
OUTPUT
-C :ClEAR
Cl<
LOAD
A
eLE.AH CLOCX A
p-
ENABL.t:
p
D
10
_ _ _ _ _ _~~_ _
...~J
la
CLK CLR
ENP
ENT
Load
Function
Cfear
GountdJsabled
l'
lncrement Counter
H = HIGH"lQvef
L = LO'W' Level
X = Don't Care
j = lOlV-to-HIGH Transitim
ENASLE. GNO
DATA I'NPUTS
tfJNational Semiconductor
MM54HC164/MM74HC164
S-Bit Serial-in/Parallel-out Shift Register
Truth Table
General Description
The MM54HC164/MM74HC164 utilizes advanced ~;j!jcon
gate CMOS technology. It has the high noise immunity and
low consumption of standard CMOS ntegrated clrcuits. II
also offers speeds comparable lo low power Schottky devices.
f)
~-
Outputs
Inputs
This 8-Bit shift register has gated serial inputs and CLEAR.
Each register bit s a D-type master/slave flip flop. Inputs A
& B permt complete control over the ncoming data. A low
al eilher or both inputs inhbils entry of new data and resets
the firsl flip flop to the low level at the next clock pulse. A
high level on one input enables the other input which will
then determine the state 01 the frst flp flop. Data at the
serial nputs may be changed while the dock 1s h1gh or low,
bu! only information meeting the setup and hold time requirements will be entered. Data is serially shifted in and out
of the 8-Bit reglster during the posltive going transition of
the clock pulse. Crear Is independent of the dock and accomplished by a low level at Ihe CLEAR input.
Clock
OA
X
X
X
X
OAO
H
Oso
OAn
OHO
OGn
L
L
An
OAn
OGn
OGn
i
i
i
H
H
Product specification
INPUTS
OUTPUTS
CP
DII
Qn
"1"
l'
loacl "O"
l'
I
I
l'
no change
no change
load
Notes
1.
74HC/HCT377
GENERAL DESCRIPTION
OPERATING
MODES
OH
(j
Os
Philips Semiconductors
FUNCTION TABLE
...
Clear
t'I
...
el
ID
1P
... a
el
.",
ti
... ...
1P
t'!
In
o 'o '
In
...
o
f"I
"It
<:>
"-
tO
4.
U
.-'"..
......
al,
!:!
....
t;
..
G'.I,
transition 01
SEPTIEMBRE 2010
PROBLEMA 2 (20 PUNTOS)
(\
\
En la Figura 2a, los bloques MI y M2 representan sumadores completos de dos bits, con acarreo de
entrada y salida (seglm Figura 2b).
x
M1
M2
O
Zs
C in
C out
Z2
Z1
Zo
Figura 2a
Figura 2b
2.1 Explique razonadamente la funcin que realiza el circuito de la Figura 2a. (5 puntos)
2.2
Suponiendo que las seales de entrada al sumador aparecen sincronizadas, calcule el retardo de
las seales S y C out respecto a las seales X, Y Y C in del sumador de la Figura 2b, en nmcin de
la unidad temporal t. Puede implementar el sumador de la manera que usted desee, valorndose
el que el retardo sea el mnimo. Para ello se conocen los sig1entes retardos de las diferentes
puertas lgicas:
las puertas AND de 2 entradas tienen 1Ul retardo de 3 1midades temporales (3t)
las puertas OR de 2 entradas tienen 1Ul retardo de 21midades temporales (2t) y
las puertas OR exclusivo de 2 entradas tienen un retardo de 4 mlidades temporales (4t).
(lO puntos)
2.3 Suponiendo que las seales A o, Al ,Bo y Bl de la Figura 2a aparecen a la vez, calcule de manera
justificada el retardo de las seales de salida Zo, Zl, Z2, y Z3 respecto a las anteriores. (5 puntos)
619 142355
NOVIEMBRE 2011
PROBLEMA 1 (40 PUNTOS)
(~
O
O
O
O
O
O
1
1
1
1
1
1
O
O
1
1
1
1
1
1
1
F
1
1
O
1
O
O
1
O
H
1
O
1
O
O
1
O
1
3 puelias OR de 2 entradas.
Note que los valores de F y H para una combinacin dada de Y y Z tiene valores complementarios
dependiendo del valor de X. (15 puntos)
Enable
00
.)
/
10
11
01
O2
03
) Y~"2- ~
~t9y 4- ~';
'X
Y
b
--f--.,r----t--'T-
_--+-r-rt-r--
....
-=. )(
{-\
"--->
! ~<"110'S
O := ~ SoTo ""
\(
')c
~6:cl:
1-\
t:.o-=--Z
)t
1: \ -::. \
1:. '2. ::: l
1:"3.-:.D
\':3.
sbLo
__
I COc\l..Ve:>
.....-.r-~
."I,v.e\
o..\.a')
.u
e. Q,~_ _~~
q-~o
Y -><
\J6( ~
01
p-r
Dl.
X-~~~----
~~ \
\:A
J O
o
J.
3..
'\5
1?1
o
I
A~~\
ti
t
I
C.t-\.a~d O
(~oo
\..\.v\
,e.Su.\
0...V'o..
~~ a
V)
~u..e\\.o. \(0<-,
~u..{I ClOV
NOVIEMBRE 2011
Implemente un conversor de cdigo BCD de dos dgitos (B para las decenas y A para las unidades)
a cdigo binario de 7 bits (S6 ... SO) utilizando exclusivamente dos sumadores de 4 bits con acaneos
de entrada y salida como los de la Figura. Justifique adecuadamente su solucin.
~0\e-wloS
t:h Q;c. \)
yo-
e.Y)
e-\
\? nCU"'lo ~S
Ltv.Co
Co-Y?
f0(,o'o\ema.
\>a.ro- ~(Y'O-r
~\:L(' de. e..\la..s -.o.. COU"L\;L'nO CVl \o lV1o..rt.o 0-0
-tenevnO'5 ~ tVY\~e.(YleJ1\:o..r .ko(>e-l~Y\\",,~lOS * ~J
<X..
"l
m'
~~
~~
--+
~z.
~2
~l
<G
G'\.
B3
Wz.
\31
'O
\31
\33~'j
rO
B>~
gt.
~?\-~l
S~
'00
'6Z.+B:::>
b.."3
~\-~\-~
S3
\3.0
O
'\
l(
BZ
B3
~l
f:\z
\30
'Al
\3r\Jt?; R::.*(}.\
Sz.
S(
g,~
-O
1\
1\0
~
()
\.0\0
NoY;EI1~ItE
(\
101 I
PROBLEMA 3 (30'PUNTOS)
Consideremos el siguiente circuito electrnico.
salida(6)
.......
ro
1J)
I~
ro
"'C
ca
<1)
"'O
FPGA
:"Q
ro
ca
CJ)
-ro
, sa.lida(O)
<1)
~
ro
ro
ro
ro
<1)
<1)
salida(3)
lJ.
..
P. i
library IEEE;
use IEEE.STD LOGIC_1164.ALL;
leo""
A,''ji ~~
entity comp1 is
port (
input : in std logic vector(3 downto O);
"J
de.
err-or)
_______
scJ';,\p.~,)
sc.t.l.. to)
, ._
begin
with
1_ _ 1 ~)
f~ .=(
""h
"1011011"
"1011111"
"1110000"
"1111111"
"1111011"
"1001111 ff
"0000000"
end Behavioral;
when
when
when
when
when
when
when
"0101":~'
"0110ff,~--""
"0111" ,_
,1;
"1000",e_j'
(
"1001",~
,-
:1
I-,I_i
"1111" 1'._ ~i
others; t -
i-=:'
-
.1;,; f .!.t
erro;
,"r~ e~
L!" frA<:!L
1~ ~
COME 2.
library IEEE;
use IEEE.STO_LOGIC_1164.ALL;
entity f2!!lp.2 is
port(
C:
A,B:
Y:
);
I,r:
Es~e ~;c.ho
e~
kt.) cIt t.
bi b
2)<
t:o.a..
111'\ ..
,..,
),}, '1
()
,,'
"--,'
i!4
h. . d.,
ell 'f
Ff;<t. d,
b; 1, coJ. "......
----
'-( b;I,
end comp2;
architecture comp] _ beh of comPl is
f1I.,,.. l).\
"
I?...-A' Y
begin
1
with C select Y <=
A when ' O' ,
B when '1' ,
(others =>' O') when others
end comp2_beh;
e. t.bc .:I,
I
llbrary IEEE;
use IEEE.STO LOGIC_1164.ALL;
15
e.f,.A.)
()
,
,
ec:l;~
) ;
Co ... pt
end edig;
t2
'"
"1-
.Q
d.
~
~
of edig is
S.;. ....
".,.,-
,,;t"'"
to~,<~v-
Cot?pi
/4J'/.
~g ~
~
O
entity edig is
port(
da.to:'
archi tecture
~o~T" e,.
ft'J'
C. ....pi
'Y c.,,.,,~
:;,
'~
"-
::.
O
I component compl
port(
input
in std logic vector (3 downtoD); I
:
output
out std_logic_vector (6 downto O));:
I end component;
j
- - - - - - - - - - - - - - --component comp1.
port(
in STO LOGIC;
C:
A,B: in STO LOGIC VECTOR (3 downto O);
({:
out STD_LOGIe_VECTOR (3 downto O));
(
I-.:n~ c~mponent; _
I
I
------
-----,
begin
Ul: comp2 port map(s,dato,"llll",aux);
U2: compl port map(aux,salida);
3.1 Explique razonadamente la funcionalidad del los mdulos compl y comp2, indicando en un
esquema de bloques las entradas y salidas de cada mdulo. (10 puntos)
Nota. Dispone de una copia (reducida en 2 pginas en una) del cdigo VHDL de este problema en la ltima
pgina de este examen, a modo de Anexo, que puede arrancar para poder trabajar ms cmodamente con l.
(
,,-,
3.1 Explique razonadamente la funcionalidad del los mdulos compl y comp2, indicand en un
esquema de bloques las entradas y salidas de cada mdulo. (10 puntos)
Nota. Dispone de una copia (reducida en 2 pginas en una) del cdigo VHDL de este problema en la ltima
pgina de este examen, a modo de Anexo, que puede arrancar para poder trabajar ms cmodamente con l.
El mdulo comp2 es un multiplexor de dos entrada de datos de 4 bits cada una, una entrada
de control y una salida de datos de 4 bits.
3.2 Explique razonadamente la funcionalidad del circuito completo. (10 puntos)
3.3 Modifique el circuito para que incorpore una seal de reset (activa a nivel alto) que ponga todas
las salidas a '1' cuando se active. (10 puntos)
ce..J! (dt
entity comp.l is
port (
input: in std logic vector(3 downto O);
rst: in std_logic;
output : out std_logic_vector(6 downto O)
) ;
end com~l;
~
~~~'~~.~~~~~~~~~--archl tecture J:lehaVlOral or comp lS
Ario.d:f'N)~o.... e.J.... ~ re..Jd
begin
(
if (rst = '1') then
tl:
C.l>ir-(d,~ I3,cD -.1 75.,,.,,
output <= "1111111";
~ "'/"( poflf. ''"P r.l.:cl
I
A
... '1
a.'~;"""'J(
end if;
",e
entity edig is
porte
dato: in STO_LOGrC VECTOR(3 downto O);
s: in STO_LOGrC;
reset: in STD_LOGIC;
salida: out STO LOGrC VECTOR (6 downto O)
) ;
end edig;
component compl port (input: in std logic vector(3 downto O);rst: in
std_logic_vector; output : out std~logic_vector(6 downto O));end component;
U2: compl port map(aux,reset,salida);
(\
Pgina 9 de 10
Opcin b:
Pgina 10 de 10
Pgina 9 de 11
salida(6J
,tI
ro
:!2
FPGA
ro
salida(O
i
VI
"'O
ro
""ro
Vl
N--I
O
ro
VI
:!2
ro
VI
1U - -..
"'O
Pgina 10 de 11
entity edig is
port( datol: in STO LOGIC VECTOR(3 downto O):
dat02: in STD-LOGIC-VECTOR(3 downto O);
salida: out STO LOGrC VECTOR (6 downto O;
end edig:
architecture edig_beh of edig is
signal aux1: std logic:
signa1 aux2: std=logic:
component comp1 port (A,B
in std logic vector(3 downto O):
SAL GE : out ;td_logic:
SAL LT: out std_1ogic)
end component
component comp2 port(C, O
S
O
end component;
begin
01: compl port map(dato1,dat02,auxl,aux2);
02: comp2 port map("llll110", "0110000",auxl,sa1idal
end edig_beh
6.1 Explique razonadamente la funcionalidad del los mdulos compl y comp2, indicando en un
esquema de bloques las entradas y salidas de cada mdulo. (5 puntos)
Nota. Dispone de una copia del cdigo VHDL de este problema en la ltima pgina de este examen, a modo de
Anexo, que puede arrancar para poder trabajar ms cmodamente con l.
El mdulo comp 1 es un comparador de dos entradas de datos de 4 bits cada una. Tiene dos salidas,
una que se activa (nivel alto) cuando A es mayor o igual a B (SAL_ GE) Y otra que se activa (nivel
alto) cuando A es menor que B (SAL_LT).
compl
B
El mdulo comp2 es un multiplexor de dos entradas de datos de 7 bits cada una y una entrada de
control, que selecciona la entrada e en el caso de ser Oy la D en el caso de ser 1.
e
comp2
D
Pgina 11 de 11
6.3 Modifique el circuito para que incorpore una seal de reset (activa a nivel alto) que ponga todas
las salidas a 'O' cuando se active. (5 puntos)
entity edig is
porte dato1: in STD LOGIe VECTOR(3 downto O);
dato2: in STD-LOGIC-VECTOR(3 downto O);
reset: in STD-LOGIe;
salida: out STD LOGIC VECTOR (6 downto O});
end edig
begin
if (reset = '1') then
salida <= "OOOOooe u
elsif
U1: comp1 port map(dato1,dato2,aux1,aux2)
U2: comp2 port map(n1111110","0110000",aux1,salida)
end if;
end edig_beh
74AC163 74ACT163
Synchronous Presettable Binary Counter
General Description
Fea,tures
Truth Tabfe
Pin Assrgnment
TC74HC163A
Outpurs
Function
Inputs
CLRl
16
VC~
CK 2
15
eo
A3
ENT
X
X
Reset to '0"
13 QS
e s
12 QC
D6
11 QO
NoChange
B 4
EN? "1
GND 8
C)
14 QA
ENP
10 ENT
loAD
Count Up
NoChange
Count
NoCoum
X: Don't cara
(.
November 1995
tflNational Semiconductor
MM54HC194lMM74HC194
4-Bit Bidirectional Universal Shift Register
General Description
TIlis 4-bit high spero bidlrectional shift register utllizes advanead silicon-gate CMOS taotmoklgy to acrueve the. low
power consumption ami hgh
immunily of standard
CMOS integrated crcuits. along v.il; the ability 10 drive 11)
LS-TTL loads. ihis deYioe aparates al speeds simila.rtothe
equivalent low power Schoti:Ky part,
nrnse
ano
Features
Typical operating frequency. 4$ MHz
Typical propagation dalay: ns (clock to Q)
Wide operating supply vofage ranga: 2-6V
Low input current 1 p.A maximum
Low quiescent suppfy Ctlrrent: 100 p.A maximum
(74HC Series}
Fanout of 10 lS-TTL loads
Function Table
I
C~~)
--
51 52
A
B
-e
-D
-- 5R5L
"'-J
.,J:::.
te
.,J:::.
aw.
Outputs
Inputs
Moda
Serial
ParaUel
C1ear Sl S2 Clock Left Right A BCD QA Os Oc Qn
L
H
H
X X
X X
H H
H
H
H
H
H
L
L
H
H
L
H
H
L
L
L
X
L
X
X
X
X
X
XXXX L L L L
X X X X OAO ASO Oco aro
aocd a
bcd
X
X
X
X
X
i
i
i
i
.X
H
X
LX
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
X
C~CK
H "' n$,ilh level !$Iedy state)
L = Iow le'lel (stearly slalej
X = irrelev?nt {arrtlr1llil:; includin!l tral\$1tions)
e, e, or D.
respectival}'.
0Alh C!s;;r 0( 00& ",lhe level o 01<, Os. Oc' or 00, resoo!lveJy,
beore ina indicaled steady-srate input conditions were establlst\ed.
0""" Oen. Ocr. Con = lhe level 01 Q., Os. Oc, respeclively, befare
the mosHecent i tJ1;lnsltloo 01 lhe dock.
ENERO 2012
{\:
SO
SI
OPERA.CIN
A+B
-A-B
B-A
A-B
Se dispone para ello exclusivamente de los sumadores completos de la figura y puertas XOR.
Implemente, de manera justificada, el circuito que lleva a cabo las operaciones deseadas.
(15 puntos)
:(
" ((.ut
(U)
'(
;
,<:.:.ut
(in
S.
L
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619142355
1.2 Explique cul o cuales de los sibruientes cdigos de VHDL sintetizan el circuito descrito en el
primer apartado. Justifique razonadamente su respuesta. (5 puntos)
CDIGO A
CDIGO B
llbrary ieee;
usa ieee.std 100ic 1164.al1;
u.se ieee .. std=logic=unsigned. l.ll;
library ieee;
use ieee.std logic 1164.al1;
use ieee.std=:logic=:unsigned.all:
entity adders_l is
end adders_l;
entity adders 2 15
port(A,B :- in std 10gic vector(3 dO':lBt.O O);
5: in std logic vector (1 downto O);
Q: cut integer);
and adders 2;
PROCESS(A,B,S)
BEGIN
CASE S 15
WHEN "00"
}'JHEN nOlft
\oJHEN tilO"
WHEN "11"
~~HEN OTHERS
END CASE;
END PROCESS;
PROCESS(A,BrS)
BEGIN
CASE S IS
WHEN "00"
WHEN "Ol
=>
tmp
=>
=>
=>
tmp
tmp
tmp
tmp
<= A + B'
<= -A-E;
<= E-A;
~,
<=
A-El;
<= O;
lf
=>
=>
=>
=>
WHEN OTHERS =>
END CASE;
tiREN
ft10n
tvl1.EN
11 ff
tmp := A + B;
tmp := -A-B:
tmp := E-1>,;
tmp .= A-B;
tmp := O;
END PROCESS;
Q <= tmp;
Q <= tmp;
end arch;
end archi;
COIGOC
library ieee;
use ieee.std logic 1164.a11;
use ieee. std::)ogic::: uIL'oigned. all;
entity addars 3 i5
port (A,B :- in st.d logic vector (3 downto O);
C)
s:
Q : out
end adders_3
"Don
"01 tI
"10"
"11"
=>
=>
=>
WHEH
WHEN
=>
WHEN OTHERS =>
END CASE;
tmp <= A + B;
tmp <= -A-B;
t.mp
<= E-A;
END PROCESS;
Q <= tmp;
end archi;
L
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 544 53 77 , 619 142355
('
1.2 Explique cul o cuales de los siguientes cdigos de VHDL sintetizan el circuito descrito en el
primer apartado. Justifique razonadamente su respuesta. (5 puntos)
~~~::Qi:e,f
entitv adders 1 is
o~rt (A, B :- in std logic vector (3 downto O);
s: in sta logic vector (1 ao\mto O);
Q: out integer);
end. adders 1;
entity adders 2 is
port (11., B : in std logie vctor (3 do'tmto O);
s: in st.d logic vector(1. downto O);
Q: out integeri;
end adders 2;
regin
~~~a~:Qi~e"V
PROCESS(A,B,S)
BEGIN
CASE S 18
W'HEN
vlH.EN
noon
ffOl n
=>
=>
"10" =>
"11" =>
OJEEN O'1'HERS =>
END CASE;
END PROCESS;
WHEN
WHEN
bnp
tmp
tmp
tmp
tmp
<= A + B;
<= -A-B;
<= B-A;
<= A-E;
tiREN
"11"
=>
tmp.- A + B;
=>
tmp:=
=>
=>
tmp:= E-A;
<= O;
Q
t.mp.-
A-B;
tmp.
O;
<= tmp;
end archi;
CDlGOC
><
library ieee;
use ieee.sta logic 1164.all;
use ieee.std=logc::::uIlsigned.a11;
entity adders 3 is
port{A,B: in std_logic_vector(3 downto O);
s: in std_logic_vector{l downto O);
Q : out integer);
na adders 3;
FP6A
"00"
-mEN "01"
WHEN "lO"
WHEN "11"
WHEN OTHERS
F..ND CASE;
END PROCESS;
Q <= tmp;
=>
=>
=>
=>
=>
tmp
tmp
bnp
tmp
tmp
c.;~i":),:)
cu-.G";erA dt
el
:1 PROCESS (lt,B)
BEGIN
CASE S 15
Ef.
tlo. fe~e
\~H.EN
-~lt-B:
END PROCESS;
<= bnp;
end archi;
'0
.-
,-
VARiA$L
PROCESS(A,B,S)
BEGIN
CASE S I5
WHEN "OO'f
WHEN "01'1
WHEN 1' l0 n
o PE 1U\c. i rJ
<= B-A;
110 GlJ
CD;r;Q
e.
fr~a.'tt:..
oSt
c.:..rob: o e.,
c--I-r",~
e.J r~J
h':'Jlt. 10(
el
el~f
v,,",
c&""r:"'~,,- ~A~;"'~'"
c;rc.. ;to
r'Atb. ... ~
Por
<= A + B;
<= -A-B;
S e""
N'O
~t
vd.... k
() 'fra. cio....
V" ' ....
Mb."
RfAl.;'l'/t
L.,q
q \,( ~~l-.
A B
&)
<= A-E;
<= O;
end archi;
"".... be->
C.)
e(
ulo
j-..rd.r ~l tc).f~... Oo
"""
C)
h ID bec. Mo.., ~
CI)~'" e~h"t
(JI.. ",,;&..
v_,..-~~ o
kMpon..f. t-.
tc ... l':l.......
LA.
SeHd
(JI..J; j"'Go~S1
po.lt
clt
v.. i."~~J sr. },.. c.t i4M&d:.:o.h.r-.lt t'1'c..p..) 9" (... "'>S';' ....b
k .re;",eeJ se. },l-~ .. Cj....c ..Ir! P"'<5='J ( P'~ Y:e..~ e(",~
L")h. *' A)d... J.. Cbrn:d'!:! $""':o"",,,.,:e-.fo der e:,.,v:to,
'
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 544 53 77 , 619 142355
ENERO 2012
SO
SI
OPERACIN
A+B
-A-B
B-A
A-B
Se dispone para ello exclusivamente de los sumadores cOlnpletos de la figura y puertas XOR
Implemente, de manera justificada, el circuito que lleva a cabo las operaciones deseadas.
(15 puntos)
'(
Cm
(lut
C.,.ut
"
'(
'.:-ut
Cm
S
C.:;.ut
(in
S
(In,
S
(.;.ut
(in
-(
C.,.l.It
y
(in
S
1.2 Explique cul o cuales de los siguientes cdigos de VHDL sintetizan el circuito descrito en el
primcr apaltado. Justifiquc razonadamente su respuesta. (5 puntos)
CDIGO A
CDIGOS
lbrary ieee;
use ieee.std loqic 1164.a11;
use ieee.std:=logic:=uDsigned.all;
library ieee;
use ieee.std_logic_1164.all;
use ieee.stdc..logic_unsigned.all:
entity adders_l is
Dort (A, B : in std logic vector (3 do\<:nto O);
.
S: in std logio vect.or (l dmmt.o O);
Q: out integerl;
end adders_l;
entity adders 2 is
port(A,B -: in std logic vector(3 do.mto O);
s: in std logic vector (1 downto O);
Q: out integer);
end adders 2;
PROCESS(A,B,S)
BEG1N
CASE S 1S
WHEN "00"
PROCESS(A,E,S)
EEGIN
WHEN
nOl
tl
CF.SE S IS
=>
='>
"lO" =>
"11" =>
?JHEN OTHERS =>
END CASE;
WHEN
'ilHEN
tmp <= A + B;
WHEN
"00"
=>
WHEN
"Ol l f
=>
t-lEEN
WHEN
"lO"
"11"
=>
=>
WEEN OTHERS =>
Q <= tmp;
END CASE;
END PROCESS;
Q <= tmp;
end archi;
end archi:
END PROCESS;
tmp := A + B;
tmp := -A-E;
tmp ;= B-A;
tmp .= A-B;
tmp .- O;
COIGOC
library ieee;
use ieee.std_logic_1164.all;
use ieee. std_.log-ic_uIl.signed.all
entity adders 3 is
port(A,E -: in st.d_logic_vect.or(3 downto O);
s: in std logic vector(l dovmto O);
Q : out irrt.eger);
end adders 3;
archi tecture .rchi of adders 3 is
"00"
=>
ifJHEN
WHEN
"01"
"10"
=>
=>
=>
WHEN OTHERS =>
END CASE;
END,PROCESS;
Q <= tmp;
'lEEN
""
..
tmp
tmp
tmp
tmp
<= A + B;
<= -.'l.-E;
<= B-A;
<= A-B;
tmp <=
o;
endarchi;
ENERO 2012
PROBLEMA 2 (25 PUNTOS)
Sea el circuito de la Figura l. (Al frnal del examen se encuentran hojas caractersticas de los
integrados utilizados)
.
eLe \.:lVO
QA
Q.
e \,
lFI'J"t~~t.\p)
.6 .\ 1.5&
\vio(aiJ
Vl '-"
'O~ o. v\ lue\
'"
-CLEA R
0 -
0 -
"-.J
Qs
Oc
n
1-'
en
w
D
CLK
QD
Av
r>
Al
""-
A2
A3
-CLEAR
I
::o .-
,.,
..\
'<D~
\le,,~
o..
So\o se ~-oo~ce.
u.t'l
cr.u~hlll k.
"G.ffec:k,.~ e Yl
.
~ c..oO::t
's..
, I I I
s~
A BCD
!:2-
;:;- /'1
J1
-l
'\
\' ~"",;lit;;o1~ ,
~t> a. cec.\..,ct!;
p
o
I
,. 'L 't.d-as:
L.o>..~
I I I I
A B
D
~I-
iGl- J'J1"
Ot..Os~QD
~2tID2'E2
V> V>
'lPmu2rl~"
Ot.QB~Oo
74HC194
'"
t'&S '-
\lee ~
0- \ o.. Qo-9l;;.,.\
8
.
~ Fif,Tura 1
I I I I
A B
D
~I-''O"
tll- "lit
74HC194
Cl.f.AR
I't(V~
!:21-
~l ~11D11El
' " t.n
::or-
<'>
;:;1-
QA Os~QD
ClEAR
LD CLR
RE SET
l1o.lO:t>..~ c:u:l,--"."
eo
74HC194
--
1I1~}
.....,,{c:
B
o- C
0 -
6d'co.-
QA
A B
!Bo '.Co'.Do'.Ea
;..e,Aa..de ~ :-lS
ENT
ENP
I I I I
74HC194
"
R
"1 JI--[
el'L-
::or
~<JOa.IIlve\ \.o..::p ~)
S,IX~
"ttv'\
Ct.
A~t's\rt> e 4. bl\~
\'
Ot.Qs ~Oo
!B3 '.e
l.
l.
3 D3 E3
2.1 Rellene el diagrmna de tiempos (Figura 2). Al objeto de simplifcar el diagrama, considere las
seales A3A:2AAo, B3B:2B IBO, etc ... como un valor en binario y exprese en el diagrama su valor en
decimaL Considere que todas las salidas tienen un valor lndeterminado (X) .mtes del primer fhUlCO
de reloj. (5 puntos)
o...
3.3 Se desea ahora incOIporar la funcin START/STOP sncrona con el reloj y de duracin un ciclo
delms1110 cuya funcin es anancar parar el contador. La primera vez que pasa a 1 dicha seal
comienza la cuenta del contador y la siguiente se para el mismo, congelando tambin los valores
de las seales Bx Cx Dx Y Ex. En el tercer paso a 1 de la seal, el contador sigue contando y en el
siguiente se para, etc. Para ello dispone de un biestable tipo T con entrada de cIear asncrono,
activa a nivel bajo, y la lgica combinacional que necesite. Realice las conexiones necesarias en
el circuito de la Figura 3 para que pueda cumplir dicha funcin. (10 puntas)
ClK
CLK
~-~
U
\
Loru
REm..
PRE
CLR
START/STOP
Fioura
3
b
3.4 Rellene el nuevo diagrama de tiempos (Figura 4) teniendo en cuenta el circuito obtenido en la
Figura 3. (5 puntos).
eLK
RESET
..
-+----r"i---:--!---!----....-----.-----t----:----;.-----.;'----t--- -r-----r----~
--~;------~:--~!----~: !l---~;-------+------4-------~----~:-------+------~I-------+,------~,------~------~------~----1
START/STOP
l
I
::
i
,
t
I
::
I
I
I
I
I
f
1
1
1
I
1
I
-+-----r--!---:-~--_:----_+----..;..----.'
----i------:----~----i---~ir----'----.....,f----'""'---I
I
I
I
I
I
I
I
I
I
PRE
l'
I
I
I
I
I
I
l
I
1
I
1
I
I
f
..
' 1
..---I
--7----~-~-_t--r_-~----~--~~--~------~---+'----'~--~------~'~-'-----~'~--:
:!:!:
:
:
:
:
- i --- -:- -! ---:- -f---:--- -- ---- i ----.-- --r- --- -:-- - -""'! - ---""!"- - -- ~_.- --!-._- - -1-----+ ---1
A -IJAA
3<'2 1 Q
l'
I
I
1
1
J )
1;
J
J
J
j I '
j '
I
I
f
,
I
I
I
I
I
I
I
I
! :
:
:
!
:
!
!
:
--I-----l--i---!--i---I-----+----+----f-----:------:-----{----+----f-----t-----I-----+---:
:
!:
!:
}
:t
:t
!J
:
:
~
:
:
:
:
f!
"
I
B:3B2B 1Bo :
I
j:
I
i
t
I
I
1
1
I
(
I
I
I
:
:
1
l i t
( t
1
i
C3C2 C1CO
i
I
l
t
!i
:t
l i t
!
:i
i
i
Figura 4
1 f t
:
,
ENERO 2012
3.1 Dibuje el diagrama de estados correspondiente a una mquina de Moore con tUl nmero mnimo
de estados y justifique las decisiones de diseo que haya tomado. (10 puntos)
3.2 Dibuje el diagrama de estados correspondiente a una mquina de Mealy con un nmero mnimo
de estados y justifique las decisiones de diseo que haya tomado. (5 puntos)
(',
3.3 Tomando el diagrama de estados que se presenta en la figura adjunta, complete la tabla de
verdad de la Salida S y obtenga su funcin lgica simplificada por Karnaugh. (5 puntos)
%
1/1
c0c:)~
l/O
;/ \1
.~
o/o
~~
o/o
P3
U ______ UJ~
1/1
Entradas
E
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
Q2(t)
Ql(t)
QO(t)
O
O
O
O
O
O
1
O
1
1
1
1
O
O
O
O
1
1
1
1
1
1
O
1
O
1
O
1
O
1
O
1
O
1
1
1
O
O
1
1
Q2
Q1
QO
PO
Pi
P2
P3
P4
P5
O
O
O
O
O
O
1
1
O
O
Salida
S
O
O
1
Estado
O
1
1
1
1
O
1
O
1
ENERO 2012
(\
DGm!Q
FF1
CLR
FF2
FF3
cv~Q
ClRQ
CLK
FF1 y FF3
FF2
XOR
ANO
OR
NANO
tpropagacn
setup
2ns
3 ns
2.5 ns
2ns
1.5 ns
1 ns
3 ns
2 ns
4.2 Detem1ne justificadamente el mximo tiempo de hold que pueden tener cada uno de los
L
www.monteroespinosa.com - Clases de EOIG - Tfnos 91 5445377 , 619142355
ENERO 2012
END PROCESS;
PROCESS (clk, xst)
BEGIN
IF (rst='I') TEEN
pr_state <= disarmed;
El,S1F (elk' event AND elk=' 1 ') TREN
px_state <= nx_state;
END IF;
END PROCESS;
PROCESS (pr_state, flag, remote, sensors)
BEGIN
CASE pr_state 15
tiREN disarmed =.>
siren <=' O' ;
IF (remote='I' AND flag='O') TREN
nx stat.e <= armed;
EL5E
nx state <= disarmed;
END 1F;
llHEN armed
=>
1F (sensors='l.') TREN
nx_state <= in.trnsion;
ELS1F (remote='I' AND flag='l') THEN
nx state <= disarmed;
EL5E
nx state <= armed;
END 1F;
liHEN
intrusion =>
sir:en <='11;
<= disa.rmed;
ELSE
nx state <= in.tru:Jion;
END 1F;
END
~ASE;
END PHOCESS;
END Behavioral;
5.3 J\1odifique el circuito para que la entra de reset sea sncrona con la seal de reloj. (5 puntos)
()
5.4 Modifique el circuito para que lUla vez se detecte lUla intrusin el sistema penl1anezca en ese
estado indefinidamente. (5 punto5~
NOVIEMBRE 2012
1.1 Rellene la Tabla de verdad de la funcin lgica F = A> B. Para este apartado, los nmeros A y
B slo pueden tomar los valores decimales de 1,2 3 (es decir, nunca valdrn O). (5 puntos)
A1
O
O
O
O
O
O
O
O
1
1
1
1
1
1
1
1
()
AO
O
O
O
O
1
1
1
1
O
O
O
O
1
1
1
1
81
O
O
1
1
O
O
1
1
O
O
1
1
O
O
1
1
80
O
1
O
1
O
1
O
1
O
Y
Y
O
1
)(
X
o
O
O
O
X
X
X
X
1
1
X
1
O
1
O
1
O
1
O
'O
)(
(
1.2. Obtenga la expresin lgica simplificada (al mximo) de la nl11cin G, dada en la Tabla de
Verdad, utilizando un n~apa de Kamaugh. (lO puntos)
1.3 Implemente la funcin G utilizando exclusivamente dos multiplexores de 4 entradas de datos,
como los de la Figura. Para ello, NO se dispone de las seila1es negadas. Justifique adecuadamente
su solucin. (J Opuntos)
tOO
01-------'
el
lo
11
Al
12
13
619142355
b- ::- A.o ~
(Al\-~) +
Ao~A<l> :::.
1 (,..' ~
1\0 ti ~l
A'O A,f; .t
-::.
-=
~J ~, A ~ Aa \SI (A l \-\50')
Ai
-t
~o
'":::
_ A 1 Be + Ao-+-= ;, ~ + J\ \ fSo
-l.
>-0?
Al 15
4-lSo f
': :
'
o:::
lo
11
12
-o
LL
l..L.l
00
01
o~
03
04
O"
06
07
00
o:::
Col
cto
P;..~6
00
01
U
-LL
o-
O2
101
03
110
0\1
00
11.1
lo
)?,
11
4:)<:;
4'1
lb
11
l..L.l
ltt
. (e)
'--
~.J':);
NOVIEMBRE 2012
~~.\'O ~~t'I'IG>S ~
Y\
kI
(j
Half-adder
c,"'
"1
C\(CUt\'o
.l
Wte.'(o.~
. ,
!
A
A ~
Half-adder
Cout
Sl.tvn C<.
ti A.+\3, -..v\
VY\6c:; Civ
U~'/ ~ s-...
resu \
Sl<.vY)<V')
\020
A \.\ Az
L."
~ ....
./1
v~ c;.... c:a..rreb
U..-Z
\,-a.\or~
Ii
e....V\ t\~\
CLCa\'eo .vH..\
1-1
2.2 Siendo A la representacin en binario de un nmero (con 3 bits sin signo, A2 Al AO, Y siendo
A2 el bit ms significativo), se quiere obtener el valor en binario (sin signo), representado en F,
que resulta ele la siguiente expresin aritmtica:
F
()
= (A x 3) + 8
Determine el nmero de bits que deber tener F para evitar el desbordamiento. Justifique su
respuesta.
(5 puntos)
~
,,_._"\.. e.,
\ v\'ltANlefo "
i -' ...
_~I'
-le.'\emoS 6iMC'
\
".
\
\,
<""\..('0-, ~ ....\Oe""
ele. '().. <; he~~\lO so o '
-~ e..~. ~.~..l(llo...f' e...
co..S:'-C ~~-;
ZC\.o
~ \'f"g. -:: ,\ \ 01
~s \oQ'S~
\0\0\
100<:>
I i I C) e
,-\V\
\-res. lo As.
c.lrC';l\O~
de. Z <2vI. L
COYlSt,-u.lr
'S \o\\.c:;.
CO"",
\='A .
-\",
At\ l A,
\11
eoJ
SI:
\:;~
Atl
_1
S-z....
Ao
,
1 A.,
~
CAl\:
c\_ ~o
~ll.A.1
A-z ~ \
,~
Liv\
....!!
~,
e,'",
Vn.~
Az
40
A. r\-l\-c
SI
\S~
NOVIEMBRE 2012
entitl; comp1 is
in STD
port ( A :
se1: in STD
E:
in STD
Y: out STD
end comp1
LOGIC_VECTOR (3 do"mto O)
LOGIC- VECTOR (1 downto O) ;
LOGIC
LOGIC) ;
E"
~,
10
CY
scl"l. y
)(
'"
A,,-
lb
k~
end beh_compl;
'-"-
""
y----
(A :
8e1:
E:
Y:
end comp2
architecture beh_comp2 of comp2 is
()
! .
begin
Y <= I1 OR I2
\..----/
619142355
entity
(---
comp4 is
Y: out STD_LOG1C)
end comp4;
architecture beh_comp4 of comp4 is
begin
y <= NOT 1;
entity noviembre is
Port ( data : in STD_LOG1C_VECTOR (7 downto O);
STD LOG1C VECTOR (2 downto O);
sel : in
f: out STD_LOG1C) ;
end noviembre;
(l
i --
()
begin
Ul:
U2:
U3:
U4:
comp1
comp2
comp3
comp4
port
port
port
port
map
map
map
map
end Behavioral
('
3.1 Dibuje un esquema de bloques de cada uno de los mdulos (compl, comp2, comp3 y comp4)
identificando claramente sus entradas y sus salidas y explique razonadamente la funcionalidad de
cada uno de los mdulos (15 puntos)
Nota. Dispone de una hoja"alleXO al final del examen con el cdigo VHDL comprimido en una nica hoja, que puede anancar para
trabajar con l ms fcilmente.
comp 2
--It:
.
"'-z
- "'A.-...
'1
~ ~~
_ A,
:::l ".
-'1:
'1 r--
A.-s
t-
.E
~'seL.
\l
~) ~'l
l I
comp 4
comp 3
J-
~T.
comp 2
comp 3
do s. de.-
\\0\)
Le
v,
Uvl
'
comp 4
Cb""
619142355
'2.
(1
3.2 Dibuje un esqllema con todas las conexiones entre los diferentes bloques, indicando claramente
las entradas y salidas del circuito completo. (10 puntos)
~~oo
~f>\
n.a
~;"\o.'
~
(h..
'6~-z . i>o-\&.?;
l ~\
-b.. ......
1]7
'i
A~
a.ll.x
';t.\o
A.~"1
(;;,mP:S
"}:.
-) '7
"J"z
~\o.'t
~\a.S
)0.\0- G
eo\o--:.
~"t
>Q.\ i
....
Irz
'/
A~
r~
SQ\~
--
~. ~e
"
C\..\.l\l~
.-
~~
6'.-
CID/)
\.l.VI
WlU\
\.n~)\ ) ~ccrr'o,<0
v,no..
(>0'-
\-cCJ..()as
d~ 1Y\.c..L\\.. .l~~k:ort?<;
l<X'Z.
~e.,h ()~-
u
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 544 53 77
a.e
~_
cl ~\.cs ~ ~
J LAVlCl
*'-es;.
~It? -h fJO\
INPOTS
MR
CP
.PE
TE
SPE
Pn
Qn
Te
Reset {CTear}
Paralla! Ltlad
X.
(Note 1)
Count
l'
ti (NOle3)
Quni
(Note 1)
Inhibit
I (Note 2)
h{Nol:e 3)
qn
{Note 1)
1(Not .2)
h(NOl3)
X.
(ln
OPERATING MO!>E
H"" High volta.ge levelsteady state; L", L6W \faltase level sleady state; ti "" Hgh \foltage level (me setup lime prorto the Low-lo-High dock
lransition; I ::: Low voltage leve.! one selup time prior to Ihe Low-Io-High clack transition; X '" 0011'1.Care; q "" LOWr case letlers lodcate lhs
stal; 01 thc; referenced Qu!put prior lo lhe Low-to-High c10ck Iransiton; t == Low-lo-Hgh locl< lransit.iol'J.
N OTES~
1. TOO Te ouipul la High when TE is High and the counter is al Terminal Counl (HHHH tor HCIHCT161 ano 'HClHCT163).
2.. The Hgh-to-Low transitiorlof PE or TE on lhe 'HClHCT161 aod Ihe 'fiClHCT163 should only occur while CP is HIGH for conventionsl
optlration.
3_ The Low-to... High transition of SPE on he'HCIHCT151 and SPE or MR en the 'HCIHCTl63 should ooly occur whileCP is HIGH lor
conventenal operation.
Tming Diagram
LJ
{ASYNCHRONOUS)
PRESET
DATA
INPUTS
N-O.U.S.)--------------------------------------
~~~-{S-YN-CH~-RO.
Um
~------~------------------------------------------ - - - - -__
_________________________________________________
~
P2..J
P3 ..
CP(1S1)
CP{163.)
COUNT
ENABLES
oo . _.__ ____..,,,_-!
01
OUTPUTS
1
...__......11
I
03
_---t~
1
1:
TC ______~~--------~r--1~
4
RESET
.12
PRESET
______________________
- _! 1....,........_ _ _ _ _ _ _.........
l..~3'---1-4-1-S~-O--1.
COUNT
'lNHIBIT
ENERO 2013
A
Al pasar el coche por la
primera banda se activa
la seal A (A="l t ,)
B
Al pasar el coche por la
segun-da banda se activa
la seal B (B="l/1)
1.1 Dibuje el diagrama de estados para un autmata de l\1oOl'e que permta realizar la funcin
establecida por la DGT, definiendo claramente los estados, salidas y entradas del sistema.
Considere las siguientes restricciones del sistema:
a) que nunca pasan dos coches a la vez, y
b) que los coches siempre salen de la zona de medida antes de que acceda otro coche.
(15 puntos)
('\.
1.2 A continuacin se dispone del siguiente diagrama de estados de un autmata de Mealy cuya
implementacin se har empleando un Flip-Flop tipo J-K para la variable QI y un Flip-Flop tipo T
para la variable Qo. Rellena la tabla de transiciones y luego detennine la expresin lgica de la
salda (S) utilizando un mapa de Kamaugh. (10 puntos)
Levenda:
AB/S
.,
Ql
EO
El
E2
OX/D
1X/O
Ql
Qo
o
o
1
1
o
1
o
o
o
o
o
o
o
o
o
o
1
1
o
o
1
1
()
1
1
o
1
1
1
1
1
1
1
1
1
Ql*
Qo*
o
o
Qo
o
1
.0
o
o
1
1
1
1
o
o
()
o
1
1
1
1
s=
1.3 En la pgina siguiente, se le proporciona, aunque de f0TI11a incompleta, el cdigo VHDL que
implement'l el autmata del apmiado anterior. Complete adecuadamente los espacios en el cdigo
indicados en negrita. (5 puntos)
L
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619142355
lbrary IEEE;
use IEEE.STD_ LOGrC_ 1164.ALL:
entity autom.ata_examen is
Port ( clk : in STD_ LOGrC;
AAA.t\.A;
salida: out STDJOGIC);
end automata_examen;
AAA AAA=
BBB BBB=
eee eee=
DDD DDD=
type BBBBB is (CCCCC);
signal estado_siguiente: estados := EO;
signal estado_actual: estados := EO;
begin
C)
ENERO 2013
0,
2.1 En base al contador 74HC161 (cuya tabla de verdad y cronograma pueden verse en el Anexo X)
y una seal de reloj, CLK, se desea realizar un contador con la siguiente secuencia:
0, 1,2, ... 5,6, 7, 8,0, 1,2, ... 5,6, 7,8, O, 1,2, ....
Utilizando el menor nmero de puerta~ lgicas, realice todas las conexiones necesarias sobre el
circuito de la figura para que realice la cuenta indicada. Justifique las decisiones que tome.
(lO puntos)
CLK
<O
~
1CP
~)
Qo
Q1
Q2
Q3
-.....
--_/
TC
2.2 Utilizando ahora dos contadores 74HC161 y una seal de reloj CLK, se desea realizar un
contador con la siguiente cuenta modificada:
23,24,25,26,27, ...... 62,63,64,23,24,25,26,27, ... .
Utilizando el menor nmero de puertas lgicas, realice todas las conexiones necesarias sobre el
circuito de la figura para que realice la cuenta indicada. Justifique las decisiones que tome.
(lO puntos)
c'
Te
CLK
(.
ENERO 2013
.-- >FF1
Ct.R
RESET
-0
r---
t>
FF2
1 1--
GtR
r--
-O
t>
FF3
2 l--
-0
GtR
FFl y FF3
FF2
AND
OR
t prop
tset-up
2 ns
4 ns
2 ns
3 ns
1 ns
1 ns
'--
CLK
(~
\J
3.1 Marque sobre el circuito de la figura de arriba los diferentes camnos a tener en cuenta para
poder detel111inar la mxima frecuencia de la seal de reloj que garantice IDI funcionamiento
correcto. Utilizando los valores de temporizacin dados en la tabla anexa, marque sobre el siguiente
cronograma y calcule los tiempos correspondientes a los diferentes caminos y obtenga
justificadamente la mxima frecuencia de funcionamiento del reloj CLK. (15 puntos)
CLK
3.2 Determinar, de manera justificada, el mximo tiempo de 1101d que pueden tener cada uno de los
tres biestables (FF1, FF2 YFF3). (la puntos)
3.3 Teniendo en cuenta los parmetros de temporizacin de los componentes yel valor de la seal de
RESET mostrado en el siguiente cronograma, rellene adecuadamente las fOTInas de onda de las
salidas negadas de cada biestable. El periodo del reloj CLK en este apartado es de 20 11S. (15 puntos)
()
1 ~
1:
1:, , , , ,
, , , ,i :,
,,, i ,I i , :
, \ ,, 1, 1 1
, :,
f f
,,
I
elK
, .
.
J
1
1
,,
,,
. . . .
.. .
,1,
,, ,, : , , , , , i ,, , . , , . : , , 1 , , , , 1 ! ,
,,, , ,, ,, ,, ,, , : ,I , : , , , ,, , ! : i , , . ,, , ,,
, ,,,,
,,,, ,
,
,,
:,
: ,I
:, : ,, ! ,: ! ,: , ! ! , :,, :, ! :, : , i , i :, ,1 ,[ , ,[ 1 , : ,I , i 1 ! , , , i : i 1 ! i
I : \ , 11:
,, ,
: , 1 ,
, , ,, , ,, ,, , : , 1 : , ,\ 1, , :: :, 1,, ! 1, :1 1 \ 1, 1,, I, 1i ,
: 1, 1 i : ,
1 1I f i
,
, , , . , , , .f . , , , , . , , 1, , 1, , , , , , , ! , 1, ! , , , , . , i , , , . , .1 . ! , . , , ....
"
l'
I
I
.
I
I
I
J
I
I
J
J
.
t
J
J
.
I
..................!.l ...L.l..l..l ...L!..l...L.!..!..l.j..l ...i...L.J...L.:....!. L.l..l..l..l..l..l..l..l.u:..i ..l.. l..i..l..iul..lul...:... LJ...:... L.l.J.J...L.L.!..t ..LJ...!...L.L.L.L.L..:...L.i...L.~..J...L.;...!...L. )
1:: 1:: 1 f: : . : : :! 1 t: J::: I: ~: 1 ~ 1: [~: ~: 11 1: 1 ~: 11:: 1 :: 1 11: ~ } 11:: 1 ~::: I
I t : I : : f : : : t: : 1 : : : f : : : ! : 1 : : : : : I : f : ~ : ~ 1 : : 1 ! r i : 1 1 : : 1 1: : : ~ f : : : 1 tI: 1 : : : 1
Q2 :1.i :1:i iI !! il !i !i i :J'i ! l ! i i ! i i :!
i J ! lt !! ! : ,{:!,:
~ : i ! ! : ! ~ ! i i ! i i i ! : f i i ! ! i : i i : i i ! i i \1 i t
1!!
1
l
t ! ! ! ,! I I
l!
1!! 1 f! 1 !
t
~!}:
t,
~!:
>
>
JULIO 2012
()
A3
A2
Al
AO
AL
F = )O,2,3,8,9,lO,l1,12,13)
XYWZ
xv
wz
I
F=
619142355
1.3 Implemente la lhncin lgica F del apartado 1.2 utilizando exclusivamente puertas NAND de
2 entradas. Se valorar el uso del menor nmero de puertas posibles. Justifique su respuesta.
(5 puntos)
1.4 Implemente la flll1cin lgica F del apartado 1.2 utilizando exclusivamente 2 multiplexores de
4 entradas de datos cada uno. Justifique su respuesta. (5 punto:,)
{.
619 142355
JULIO 2012
EN
FF1
(')
,
/
FF2
-Q
FF3
torooaoacin
FF1 YFF3
FF2
NOR
NANO
INV
3 ns
2 ns
5ns
4 ns
2 ns
CLK
2.2 Determine justificadamente el mximo tiempo de ho1d que pueden tener cada uno de los
biestables (FFI, FF2 Y FF3) suponiendo que la seal de entrada EN tiene la fOll11a temporal de la
Figura, con respecto a la seilal de reloj CLK, y que es peridica. Para este apartado considere una
seal de reloj de 50 MHz Y ciclo de trabajo del 50% . (10 puntos).
1 ns
1 ns
~I+
-... f'IIf-
CLK
jJ
EN
I I
I
I
I
I
JULIO 2012
(',
_ - - 51
I
--------~~~~~~~~~~~~=~~~-----==
(1)
J;.
el
Sensores
~S3
(O)
SMI
(-)
"
';
(\
3.1 Teniendo en cuenta que las entradas del autmata son los 4 sensores (51,52,53 Y 54), rellene
la siguiente tabla identificando la situacin del andn y/o trenes en cada combinacin. Se indican ya
en la tabla las dos primeras combinaciones as como aquellas situaciones que son imposibles. Sea
conciso y claro en la explicacin. Utilice excJusivamente el e~pacio provisto en la tabla.
(5 puntos)
5ituacin
51
52 53 54
IlVIPOSIBLE. Se van dos trenes simultneamente. Solo UllO de eHos puede acceder al andn
IMPOSIBLE. Se van dos trenes simultneamente. Solo uno de ellos puede acceder al andn
IMPOSIBLE. Se van dos trenes simultneamente. Solo uno de ellos puede acceder al andn
IMPOSIBLE. Se van dos trenes simultneamente. Solo uno de ellos puede acceder al andn
3.2 Realice el diagrama de estados de una mquina de MOORE que contIole dicho sistema. Sea
claro en la elaboracin de la solucin.
Para indicar las transiciones entre estados utilice la notacin
entradas: 51 52 5354
(15 puntos)
L
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619 142355
l.
L
www.monteroespinosa.com - Clases de EDIG - Tfnos 91 5445377 , 619142355