Sunteți pe pagina 1din 24

Universidad de Costa Rica

Facultad de Ingeniera
Escuela de Ingeniera El
ectrica

Dise
no y layout de un sumador completo
de dos bits

Por:
Willy Villalobos Marrero B17170

Profesor:
Ing. Enrique Coen

Ciudad Universitaria Rodrigo Facio, Costa Rica


03 de Diciembre de 2015

Indice general

Indice de figuras

iv

Indice de cuadros

iv

1 Resumen

2 T
erminos clave

3 Objetivos
3.1 Objetivo General . . . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Objetivos especficos . . . . . . . . . . . . . . . . . . . . . . . .

5
5
5

4 Dise
no de un sumador completo
4.1 Esfuerzo l
ogico . . . . . . . . .
4.2 Elecci
on de frontend Spice . . .
4.3 Sumador completo . . . . . . .
4.4 Dise
no . . . . . . . . . . . . . .
4.5 Simulaciones . . . . . . . . . .

de
. .
. .
. .
. .
. .

dos bits
. . . . . .
. . . . . .
. . . . . .
. . . . . .
. . . . . .

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

7
7
7
8
9
14

5 Conclusiones y recomendaciones

17

Bibliografa

19

iii

Indice de figuras
4.1
4.2

Diagrama de un sumador completo de 1 bit . . . . . . . . . . . . .


Diagrama de un sumador completo de 1 bit optimizado mediante
Demorgan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Diagrama de transistores para una compuerta XOR . . . . . . . .
4.4 Diagrama de transistores para una compuerta NAND . . . . . . .
4.5 Diagrama de sumador de 2 bits sin bit de acarreo de entrada . . .
4.6 Diagrama de bloques de sumador de 2 bits a implementar . . . . .
4.7 Diagrama de transistores dimensionados de compuerta XNOR propuesta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.8 Diagrama de transistores dimensionados de multiplexor de calculo
de acarreo de salida . . . . . . . . . . . . . . . . . . . . . . . . . .
4.9 Medici
on de tiempo de transicion y frecuencia maxima experimental
4.10 Medici
on de potencia forzando el sistema a su frecuencia maxima .

8
9
9
10
10
11
12
12
14
15

Indice de cuadros
4.1

Tabla de verdad sumador completo de 1 bit . . . . . . . . . . . . .

iv

Resumen

Inicialmente se plantea el funcionamiento teorico de un sumador completo de


dos bits y de diferentes herramientas de simulacion basadas en SPICE. Posteriormente se procede a dise
nar a nivel de transistores el sistema, optimizando el
esfuerzo l
ogico y siguiendo el orden de prioridad de velocidad de conmutacion,
area y consumo de potencia, para su posterior simulacion en SPICE.

T
erminos clave

Transistor MOSFET: Componente electronico amplificador de corriente


controlado por tensi
on, construido agregado capas de semiconductores extrnsecos tipo P y N, junto con una capa de aislante hecho de oxidos metalicos, el
cual mejora el
area y la disipacion de potencia respecto a su contraparte BJT
(Boylestad y Nashelsky, 2009).
SPICE: Simulador y lenguaje de programacion de codigo abierto especializado en el an
alisis de sistemas electronicos.
Esfuerzo L
ogico: Raz
on entre la capacitancia de entrada de una compuerta
y la capacitancia de entrada de un inversor logico, la cual puede acarrear la
misma corriente de salida .
Compuerta l
ogica: Circuito integrado que pone a su salida un valor de tensi
on l
ogico (alto o bajo) dependiendo de los valores logicos en sus entradas
(Wakerly, 2006).
Sumador Completo: Dispositivo digital el cual toma dos secuencias de bits
y realiza una suma aritmetica entre ellas, expresando el termino en su salida
junto con un posible bit de acarreo (carry-out) (Wakerly, 2006)

Objetivos

3.1

Objetivo General

Dise
nar e implementar a nivel de transistores, un sumador completo de dos
bits

3.2

Objetivos especficos

Optimizar el esfuerzo logico en la implementacion del sumador.


Priorizar el dise
no del sumador a nivel de velocidad, area y disipacion
de potencia.
Simular mediante SPICE el sumador dise
nado.
Especificar los parametros de dise
no requeridos para implementar el sumador.

4 Dise
no de un sumador completo
de dos bits
4.1

Esfuerzo l
ogico

El criterio de dise
no de esfuerzo logico es un metodo que permite estimar
de manera sencilla el retardo de propagacion de los datos en un arreglo de
compuertas o de transistores, de manera que se puede optimizar para lograr
la mayor velocidad entre una serie de dise
nos dados, o usarlo como criterio
para optimizar la velocidad en un sistema digital. El metodo provee ademas
de formas de especificar el n
umero adecuado de transistores y niveles logicos,
as como el tama
no m
as optimo para cada transistor.
El metodo est
a basado en un modelo que describe el retardo a traves
de una sola compuerta logica, causada por las capacitancias intrnsecas de
entrada y salida. Se debe expresar todos estos retardos en un u
nico termino
que caracteriza el proceso de fabricacion. De esta forma, se plantea una
expresi
on para el retardo absoluto mostrado en la ecuacion 4.1,
dabs = d

(4.1)

donde el termino d modela el retardo propio caracterstico de la compuerta


l
ogica, modelado en la ecuacion 4.2

d = gh + p

(4.2)

donde g y h representan los esfuerzos logico y electrico en funcion de la


carga que debe manejar la compuerta, mientras que p es un retardo parasito
del sistema.

4.2

Elecci
on de frontend Spice

Como parte de las alternativas populares para implementar y programar en


Spice se tienen las suites Oregano, TINA, ORCAD, entre muchos otros. Al
ser una herramienta tan popular para la simulacion de sistemas electronicos,
se ha implementado en gran cantidad de simuladores. Para efectos de este
proyecto se ha optado por la suite TINA, la cual es bastante completa y se
puede ejecutar en Linux usando wine.
7

4.3

4 Dise
no de un sumador completo de dos bits

Sumador completo

Un sumador es un elemento que, como su nombre lo indica, permite realizar


una operaci
on de suma aritmetica entre dos datos de entrada. En el caso de
sistemas digitales que se manejan de forma binaria, se suman dos secuencias
de bits de entrada para generar una secuencia de salida, seg
un la cantidad
de bits a sumar. El sumador completo implementa la operacion considerando
ademas el acarreo resultante de una suma previa para generar un resultado
mas completo, aparte de manejar una salida que representa el acarreo de la
suma actual (Wakerly, 2006). La figura 4.1 muestra las compuertas logicas
interconectadas para generar un sumador completo, todo acorde a la tabla de
verdad 4.1 correspondiente a un sumador completo de 1 bit.

Figura 4.1: Diagrama de un sumador completo de 1 bit

Cuadro 4.1: Tabla de verdad sumador completo de 1 bit


A

Co

Cout

0
0
0
0
1
1
1
1

0
0
1
1
0
0
1
1

0
1
0
1
0
1
0
1

0
1
1
0
1
0
0
1

0
0
0
1
0
1
1
1

Para poder escalar el proceso de suma a n bits, se necesita de n bloques


con entrada de acarreo previo y salida de acarreo que realicen la suma bit a
bit. Para este caso se requiere tan solo de dos bloques para poder implementar
un sumador completo de 2 bits con prioridad en la velocidad.

4.4. Dise
no

4.4

Dise
no

A nivel de compuertas l
ogicas, es posible optimizar un poco el dise
no mediante
los teoremos de Demorgan, de manera que para la suma de 1 bit se tiene el
esquema mostrado en la figura 4.2, donde la OR que da la salida del acarreo se
convierte en una NAND con entradas negadas. Estas entradas negadas pasan
a las salidas de las AND, convirtiendolas tambien en compuertas NAND, lo
cual homogeneiza la distribucion de transistores.

Figura 4.2: Diagrama de un sumador completo de 1 bit optimizado mediante


Demorgan
En cada caso se emplean compuertas tradicionales por lo que la construcci
on del sistema mediante el uso de transistores se hara por bloques para
facilitar la distribuci
on y dise
no. La figura 4.3 muestra el dise
no para una compuerta XOR, mientras que la figura 4.4 muestra el dise
no para una compuerta
NAND. En ambos casos no se tiene a
un nada fuera de lo ordinario.

Figura 4.3: Diagrama de transistores para una compuerta XOR


Una vez aclarado este esquema para el sumador de 1 bit, se pueden considerar diferentes dise
nos tanto a nivel de compuertas como a nivel de transistores.
Para un dise
no de sumador completo de dos bits se puede considerar un dise-

10

4 Dise
no de un sumador completo de dos bits

Figura 4.4: Diagrama de transistores para una compuerta NAND

n
o estilo red iterativa donde se interconecta la salida de acarreo de la primera
suma al acarreo de entrada del siguiente. Esta implementacion es rapida pero
no es necesariamente la m
as
optima tanto a nivel de compuertas como a nivel
de distribuci
on de transistores. Si se considera obtener la funcion de salida
usando una tabla de verdad, se puede obtener un diagrama similar al de la
figura 4.5 siempre que se asuma que es la primera operacion realizada (no hay
acarreo de entrada de una operacion anterior).

Figura 4.5: Diagrama de sumador de 2 bits sin bit de acarreo de entrada


Globalmente este dise
no emplea menos compuertas que el modelo de red
iterativa, pero requiere dise
nar una compuerta AND adicional. Otra opcion
viable, la cual es la que se utilizara, es el modelo propuesto, cuyo diagrama
de bloques se presenta en la figura 4.6. La idea es mejorar el dise
no primero
mediante teoremas de
algebra de Boole, y posteriormente se propone un dise
no
de compuerta XNOR que permite optimizar el area reduciendo drasticamente
el n
umero de transistores requerido, seg
un se muestra en la figura 4.7. La
operaci
on para obtener el bit de acarreo de salida se implementa mediante un

4.4. Dise
no

11

multiplexor con transistores de paso, usando como entradas el bit de acarreo de


entrada de una operaci
on anterior y la entrada de dato Ai, seg
un lo mostrado
en la figura 4.8. La funcion logica se plantea en la ecuacion 4.4 partiendo de
la funci
on de suma original propuesta en la tabla de verdad 4.1. Finalmente,
para este caso se opta por un dise
no mediante red iterativa para alcanzar el
esquema de 2 bits.
S = (A B) Co + (A B)Co

(4.3)

Cout = A(A B) + Co (A B)

(4.4)

Figura 4.6: Diagrama de bloques de sumador de 2 bits a implementar


Para el dimensionamiento, considere el modelo de retardo y esfuerzo logico
propuestos inicialmente, donde para cada compuerta se indica que se tiene un
esfuerzo electrico

h=

Cout
= 100
Cin

(4.5)

El esfuerzo l
ogico para cada bloque, considerando el dimensionamiento
elegido (y adem
as, considerando un valor especfico de por el momento)
sera, para cada componente:
4
3
3
=
3

gxnor =

(4.6)

gmux

(4.7)

12

4 Dise
no de un sumador completo de dos bits

Figura 4.7: Diagrama de transistores dimensionados de compuerta XNOR propuesta

Figura 4.8: Diagrama de transistores dimensionados de multiplexor de calculo


de acarreo de salida

El retardo par
asito inherente al proceso de fabricacion se puede aproximar
mediante el modelo de retardo RC en funcion del dimensionamiento seleccionado, considerando la capacitancia de difusion (salida). De esta forma:

pxnor = 5RC

(4.8)

pmux = 3RC

(4.9)

De esta manera, el modelo lineal de retardo para cada compuerta sera:

4.4. Dise
no

13


4
100 + 5RC
3


3
=
100 + 3RC
3


dabsxnor =

(4.10)

dabsmux

(4.11)

Planteando estos retardos para cada salida del sistema, basado en el diagrama de bloques propuesto, tenemos:

dsi = 2 dabsxnor

(4.12)

dcout = 2 dabsmux

(4.13)

Con los par


ametros anteriores, es posible calcular los tiempos de subida y
de bajada del sumador, considerados como el tiempo que transcurre mientras
el valor asciende del 20 % al 80 % (tr ) y viceversa (tf ). En este escenario,
es pr
acticamente el tiempo equivalente al transcurrido en una constante de
tiempo de retardo usando un modelo RC. Considerando los retardos parasitos
obtenidos, los tiempos de subida y bajada en cada salida son:

trsi = 2 5RC

(4.14)

tfsi = 2 5RC

(4.15)

trcout = 2 3RC

(4.16)

tfcout = 2 3RC

(4.17)

los cuales son valores relativamente esperados dado los criterios empleados
hasta el momento. En el caso de la frecuencia maxima de operacion mediante
el criterio de cuello de botella de Muller-C, el cual es a grandes rasgos una
especie de l
ogica que retiene los valores de entrada y salida sobrecargando con
un segundo transistor cada entrada. En este caso se pueden aprovechar los
tiempos de subida y de bajada para determinar estas frecuencias de operacion,
en cuyo caso sera, tomando el peor escenario:

fmx =

1
10RC

(4.18)

Con este dato se puede estimar una potencia maxima:


2
Pmx = VDD
fmx C

(4.19)

14

4.5

4 Dise
no de un sumador completo de dos bits

Simulaciones

Inicialmente se determina de forma experimental el tiempo de transicion de


las salidas, la cualen ambos casos, seg
un se observa en la figura 4.9, es de
aproximadamente 40s, lo cual da como resultado una frecuencia maxima de
25KHz. Experimentalmente ademas, se puede determinar que la constante de
tiempo en general vendra siendo de aproximadamente 8s.

Figura 4.9: Medici


on de tiempo de transicion y frecuencia maxima experimental
En la figura 4.10 se muestra el sistema trabajando con la entrada menos
significativa A0 a una frecuencia de reloj de 25 KHz, forzando el sistema
a trabajar en el lmite obtenido, y as poder determinar experimentalmente
la potencia. La medici
on promedio maxima obtenida ronda los 0.9 mW de
disipaci
on de potencia. Cabe resaltar que debido a que se eligio un dise
no
CMOS, s
olo habr
an idealmente corrientes durante las transiciones de estado
(en la realidad existen peque
nas corrientes de fuga que aumentan la potencia
incluso en reposo, un problema grave cuando se tienen miles de millones de
transistores).

4.5. Simulaciones

15

Figura 4.10: Medici


on de potencia forzando el sistema a su frecuencia maxima

Conclusiones y recomendaciones

En el mundo del dise


no de los semiconductores existe una gran diversidad de
dise
nos distintos para muchsimas aplicaciones, todos pensados bajo distintos criterios segun las necesidades especficas y generales dadas. Actualmente
los criterios de velocidad, area y consumo de potencia van muy de la mano
una de la otra, a
un incluso cuando no necesariamente se pueden tener las 3
cosas a la vez, y es todo un reto que se sigue afrontando en los distintos centros de investigaci
on y empresas dedicadas a la manufactura de dispositivos
electr
onicos. Para el caso particular de algo tan basico como un sumador binario, es importante resaltar que existen muchas variantes de dise
no, como se
coment
o previamente, todas pensadas para cumplir con el mismo proposito,
pero de formas un poco distintas en cuanto a velocidad, area y potencia se
refiere. El dise
no propuesto y analizado cumple en cierto modo con lo solicitado, aunque podra ser mejorado a
un mas involucrandose directamente en la
aprte constructiva de los transistores y considerando modelos mas robustos
de los fen
omenos no ideales que ocurren con mas presencia en esa escala de
integraci
on. Para efectos de lo solicitado y para fines academicos se considera
el modelo propuesto como suficiente para cumplir con los objetivos. Se recomienda indagar m
as en metodos alternos, incluso considerar logica NMOS o
soluciones de mayor
area pero que garanticen mayor velocidad.

17

Bibliografa
Boylestad, R. L. y Nashelsky, L. (2009). Electr
onica: Teora de Circuitos y
Dispositivos Electr
onicos. Prentice-Hall, 10 edicion.
Wakerly, J. F. (2006). Digital Design: Principles and Practices. Prentice-Hall,
4 edici
on.

19

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