Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco....

35
Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A [email protected] 0 1 0 1 1 0 0 1 0 1 1 0 0 0 0

Transcript of Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco....

Page 1: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS

Circuitos vlsi

Dr. José Fco. LópezDesp. 307, Pab. [email protected]

0 1 0 1 10 0 1 0 11 0 0 0 0

Page 2: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

Índice

Introducción

Rutas de procesamiento de datos

El sumador• El sumador binario: definiciones• El sumador completo: diseño del circuito• El sumador binario: consideraciones de diseño lógico

El multiplicador• Definiciones• Generador de productos parciales• Acumulación de productos parciales

El desplazador• Desplazador de barril• Desplazador logarítmicoOtros operadores aritméticos

Page 3: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

Introducción

Vamos a aprender a utilizar las técnicas estudiadas en capítulosanteriores para diseñar una serie de circuitos utilizados en las cadenas de procesamiento de datos de los microprocesadores yprocesadores de señal.

Analizaremos específicamente un conjunto de módulos representati-cos, como es el caso de sumadores, multiplicadores y desplazadores

Para cada módulo existen múltiples topologías de circuitos, y como siempre, la elección de una estrategia u otra se basará en uncompromiso área/potencia/retardo.

Page 4: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

Rutas de procesamiento de datos

Un procesador digital consta de 4 componentes:• Ruta de procesamiento de datos• Memorias • Unidad de control• Bloques de entrada/salida Una ruta de procesamiento de datos típica consta de una interco-nexión de funciones combinatorias básicas, como operadoresaritméticas (suma, multiplicación, comparación y desplazamiento) ológicos (AND, OR y XOR)R

eg

istr

o

Su

ma

dor

De

spla

zad

or

Mu

ltip

licad

or bit 3

bit 2

bit 1

bit 0

Dat

osen

tran

tes

Dat

os d

esa

lida

Control

Organización en secciones de bit (bit-slice)

Page 5: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

Rutas de procesamiento de datos

Page 6: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumador

La suma es la operación aritmética más comúnmente utilizada y suele ser el elemento que impone los límites a la velocidad máxima alcanzada, por lo que es importante realizar un exhaustivo estudiodel mismo.

La optimización de un sumador se puede realizar desde un puntode vista lógico o circuital:• Optimización lógica: se basa en reordenar las ecuaciones booleanas para obtener un circuito más rápido o más pequeño (sumador con propagación de acarreo, sumador de acarreo anticipado…)• Optimización circuital: manipula los tamaños de los transistores y la topología del circuito para optimizar sus características.

Page 7: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

Full Adder

A B

CoutCin

S

Page 8: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

¡¡¡¡53 transistores!!!!

AB 0 1

0

1

0 1

1 0

A

B

Ci

S

Co

Page 9: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

RECORDATORIO

Page 10: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

F=A·B+C·D

Page 11: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

¡¡¡¡42 transistores!!!!

Page 12: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

¡¡¡¡36 transistores!!!!

Page 13: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

Full Adder

A B

CoutCin

S

A menudo resulta útil definir S y Cout en función de ciertas señalesintermedias G (generar), P (propagar) y D (descartar)

Page 14: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

G=ABD=A’B’P=AB

descartar

descartar

propagar

propagar

propagar

propagar

generar

generar

Co(G,P)=G+PCi

S(G,P)=PCi

1. G y P dependen de A y B y no de Ci2. También podemos determinar expresiones Co(D,P) y S(D,P)

Page 15: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

Podemos construir un sumador de N bits conectando en cascadaN circuitos sumadores de forma que Co,k-1 se conecte a Ci,k paraK=1,___,N y conectando la primera entrada de acarreo Ci,0 a 0.

FA FA FA FA

A0 B0

S0

A1 B1

S1

A2 B2

S2

A3 B3

S3

Ci,0 Co,0

(Ci,1)

Co,1 Co,2

Sumador de 4 bits con propagación de acarreo

El retardo del circuito depende del número de etapas lógicas quehaya que recorrer, y estará en función de las señales de entradaaplicadas (camino crítico)

Page 16: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

FA FA FA FA

A0 B0

S0

A1 B1

S1

A2 B2

S2

A3 B3

S3

Ci,0 Co,0

(Ci,1)

Co,1 Co,2

El retardo de caso peor se produce cuando un acarreo generado enla posición del bit menos significativo se propaga a través de todo elcircuito hasta la posición del bit más significativo.

tadder = (N-1)tcarry + tsum

Se extraen dos conclusiones importantes:• El retardo de propagación de un sumador con propagación de acarreo es linealmente proporcional a N.• Es mucho más importante optimizar la ruta del acarreo (tcarry) que la de la suma (tsum), ya que este último valor tiene menor influencia sobre en tiempo total del sumador.

Page 17: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: definiciones

Propiedad de inversión: Si se invierten todas las entradas de un sumador completo, se obtienen valores invertidos en todas las salidas.

A B

S

CoCi FA

A B

S

CoCi FA

S A B Ci S A B Ci

=

Co A B Ci Co A B Ci

=

Esta propiedad resultará muy útil a la hora de optimizar la velocidaddel sumador con propagación de acarreo.

Page 18: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

Algunas manipulaciones lógicas pueden ayudar a disminuir el númerode transistores a utilizar a la hora de implementar un sumador.

Co=AB+BCi+ACi

S=ABCi+C’o(A+B+Ci)

A B

B

A

Ci

Ci A

X

VDD

VDD

A B

Ci BA

B VDD

A

B

Ci

Ci

A

B

A CiB

Co

VDD

¡¡¡¡28 transistores!!!!

Page 19: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

A B

B

A

Ci

Ci A

X

VDD

VDD

A B

Ci BA

B VDD

A

B

Ci

Ci

A

B

A CiB

Co

VDD

1. Hay presentes pilas demasiado altas de transistores pMOS en los circuitos de generación de acarreo y suma.2. La capacitancia de la señal C’o es muy grande3. La señal se propaga a través de dos etapas inversoras en el circuito de generación de acarreo4. La generación de la suma necesita de una etapa lógica adicional, aunque eso no es demasiado preocupante

Page 20: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

A B

B

A

Ci

Ci A

X

VDD

VDD

A B

Ci BA

B VDD

A

B

Ci

Ci

A

B

A CiB

Co

VDD

1. Los transistores nMOS y pMOS conectados a Ci están lo más cerca posible de la salida de la puerta.

Page 21: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

RECORDATORIO TEMA 3:

Algunas técnicas de diseño para fan-in grande:• Tamaño del transistor: La solución más obvia consiste en aumentar el tamaño del transistor, para de esta forma disminuir la resistencia de los transistores en serie y la constante de relajación. Cuidado, esto puede hacer que haya más carga a la salida de la puerta anterior.• Aumento progresivo del tamaño de los transistores• Reordenación de las entradas

C2

C1In1

In2

In3

M1

M2

M3 CL

Camino crítico

cargado1

01cargado

cargado1

C2

C1In3

In2

In1

M1

M2

M3 CL

Camino crítico

1

1

01 cargado

descargado

descargado

Page 22: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

Podemos mejorar la velocidad de este circuito utilizando el hecho de que el numero de etapas inversoras en el camino de generación delacarreo se puede reducir aprovechando la propiedad de inversión: sise invierten todas las entradas de una celda de sumador completo, también se invierten todas las salidas.

A B

B

A

Ci

Ci A

X

VDD

VDD

A B

Ci BA

B VDD

A

B

Ci

Ci

A

B

A CiB

Co

VDD

Co

Page 23: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

Podemos mejorar la velocidad de este circuito utilizando el hecho de que el numero de etapas inversoras en el camino de generación delacarreo se puede reducir aprovechando la propiedad de inversión: sise invierten todas las entradas de una celda de sumador completo, también se invierten todas las salidas.

ao bo a1 b1 a2 b2 a3 b3

FA FA FA FAci c1 c3

S0 S2

co

S1

c2

S3

De esta forma habremos conseguido eliminar un inversor en el caminocrítico de cada sumador (3 inversores en el camino crítico total)

Page 24: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

Co(G,P)=G+PCi

S(G,P)=PCi

G=ABD=A’B’P=AB

VDD

Ci

A

BBA

B

A

A BKill

Generate"1"-Propagate

"0"-Propagate

VDD

Ci

A B Ci

Ci

B

A

Ci

A

BBA

VDD

SCo

24 transistors1. Eliminado inversor en el acarreo2. Re-ordenación inteligente de PUN y PDN: cuando D o G están a nivel alto, C’o toma valor VDD o GND respectivamente. Si P=1, se propaga el valor de acarreo entrante (en formato invertido) a C’o

Sumador enespejo

Page 25: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador completo: diseño del circuito

VDD

Ci

A

BBA

B

A

A BKill

Generate"1"-Propagate

"0"-Propagate

VDD

Ci

A B Ci

Ci

B

A

Ci

A

BBA

VDD

SCo

24 transistorsObservaciones:1. Este sumador tiene sólo 24 transistores2. Las cadenas nMOS y pMOS son completamente simétricas y hay un máximo de dos transistores en serie en el circuito de generación de acarreo3. Los transistores conectados a Ci han sido situados lo más cerca posible de la salida de la puerta4. Hay que diseñar bien el layout de forma que la capacitancia del nodo C’o sea lo mínima posible. La utilización de difusión compartida reduce la capacidad.

Page 26: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

El sumador con propagación de acarreo sólo resulta adecuado paraimplementaciones de sumas con longitud de palabra relativamentepequeña.• Equipos informáticos de sobremesa: 32 bits• Servidores: 64 bits• Mainframes, supercomputadoras o procesadores multimedia (ej.: el procesador de la consola Sony PlayStation2): 128 bits

Page 27: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Sumador con puenteo de acarreo

Sólo si Po=P1=P2=P3=1, el acarreo se propagará desde la entradahasta la salida.

Page 28: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Page 29: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Propagaciónde acarreo

Puenteode acarreo

Page 30: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Sumador con selección de acarreoAnticipa los dos valores posibles de la entrada de acarreo y evalúapor adelantado el resultado de ambas posibilidades. Una vez conocidoel valor real de la entrada de acarreo, puede seleccionarse fácilmenteel resultado correcto mediante una simple etapa multiplexora.

Setup

"0" Carry Propagation

"1" Carry Propagation

Multiplexer

Sum Generation

Co,k-1 Co,k+3

"0"

"1"

P,G

Carry Vector

Page 31: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

0

1

Sum Generation

Multiplexer

1-Carry

0-Carry

Setup

Ci,0 Co,3 Co,7 Co,11 Co,15

S0–3

Bit 0–3 Bit 4–7 Bit 8–11 Bit 12–15

0

1

Sum Generation

Multiplexer

1-Carry

0-Carry

Setup

S4–7

0

1

Sum Generation

Multiplexer

1-Carry

0-Carry 0-Carry

Setup

S8–11

0

1

Sum Generation

Multiplexer

1-Carry

Setup

S

Page 32: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Sumador con acarro anticipadoci+1=gi+pici

ci+2=gi+1+pi+1ci+1

ci+3=gi+2+pi+2ci+2

ci+4=gi+3+pi+3ci+3

Page 33: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Sumador con acarro anticipadoci+1=gi+pici

ci+2=gi+1+pi+1ci+1

ci+3=gi+2+pi+2ci+2

ci+4=gi+3+pi+3ci+3

Page 34: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Sumador con acarro anticipado (16 bits, 1 nivel)

Page 35: Circuitos vlsi (4º curso) TEMA 5. MÓDULOS ARITMÉTICOS AVANZADOS Circuitos vlsi Dr. José Fco. López Desp. 307, Pab. A lopez@iuma.ulpgc.es 0 1 0 1 1 0 0.

Cir

cuit

os

vls

i (4

º cu

rso)

El sumadorEl sumador binario: consideracionesde diseño lógico

Sumador con acarro anticipado (16 bits, 2 niveles)