Download Descargar - Universidad de Buenos Aires

Document related concepts

Conversor de señal digital a analógica wikipedia , lookup

Modulación Sigma wikipedia , lookup

Osciloscopio wikipedia , lookup

AVR wikipedia , lookup

Conversión analógica wikipedia , lookup

Transcript
Análisis y Diseño de un Conversor Analógico Digital
de Arquitectura Pipeline
para ser presentado a la
FACULTAD DE INGENIERÍA
de la
UNIVERSIDAD DE BUENOS AIRES
ante el
Departamento de Electrónica
por
ANDRÉS E. SAMPAULO
en requerimiento del título de
INGENIERO EN ELECTRÓNICA
UNIVERSIDAD DE BUENOS AIRES
2004
TESIS DE INGENIERÍA
ANÁLISIS Y DISEÑO
DE UN
CONVERSOR ANALÓGICO DIGITAL
DE
ARQUITECTURA PIPELINE
por
ANDRÉS E. SAMPAULO
Padrón N° 75.746
[email protected]
CALIFICACIÓN:
Tutor de Tesis
Ing. Alejandro De la Plaza
Jurado
Jurado
Jurado
UNIVERSIDAD DE BUENOS AIRES
2004
Resumen
En la actualidad numerosas aplicaciones comerciales de consumo masivo requieren el
uso de circuitos integrados, que permitan la conversión de señales del tipo analógico en
datos digitales a grandes velocidades con gran resolución y a muy bajo costo. Bajo costo
comprende simplicidad en el diseño del circuito, permitiendo escalabilidad y
minimización en el consumo de energía. Lo cual brinda una mayor autonomía en el caso
del empleo en aplicaciones alimentadas por baterías.
En el ámbito de las computadoras personales es sabido que a lo largo del tiempo fue
incrementándose la velocidad de transferencia de datos en las interfaces de
comunicación a pasos agigantados. Siendo ejemplos de interfaces de comunicaciones
las ATA, S-ATA, iSCSI - Encoders / Decoders de Video y Audio, el USB y Gigabit
Ethernet. Todos estos dispositivos requieren transceivers cada vez más veloces y de
mayor resolución.
En la presente tesis se propone un circuito integrado, excelente candidato a satisfacer
dichas necesidades, que optimiza todas las premisas anteriormente citadas. Se trata de
un conversor analógico digital del tipo pipeline. A lo largo del trabajo se hace un estudio
comparativo de características, aplicaciones y performance; se presenta el diseño de un
circuito prototipo de 6 bits de resolución, se analiza y describe el funcionamiento y
desempeño de cada unas de las partes que lo componen. Finalmente se diseña el layout
completo del mismo prototipo para su fabricación, todo ello involucrando el
cumplimiento de las reglas de diseño que el proceso de fabricación implica y
verificando el diseño del layout con el mismo esquema circuital anteriormente
elaborado.
Tabla de Contenidos
Resumen ....................................................................................................... 3
Tabla de Contenidos ................................................................................... 4
Prefacio......................................................................................................... 7
Objetivo de la tesis ...................................................................................... 9
1. Primera Parte: Introducción............................................................. 10
1.1.
Antecedentes teóricos ..................................................................................... 11
1.2.
Muestreo ......................................................................................................... 11
1.3.
Cuantización ................................................................................................... 13
1.4.
Aplicaciones de conversores analógico digital ............................................... 14
1.5.
Arquitecturas de conversores AD ................................................................... 15
1.5.1.
Arquitectura de Aproximaciones Sucesivas ......................................... 17
1.5.2.
Arquitectura Flash................................................................................ 19
1.5.3.
Arquitectura Flash de 2 pasos (2 step flash) ........................................ 20
1.5.4.
Arquitectura de conversión A/D Pipeline .............................................. 21
1.6.
Características de Conversores Pipeline ......................................................... 23
1.7.
Ventajas y Desventajas de la utilización de una Arquitectura Pipeline.......... 24
1.8.
Razones que motivan la elección de Conversores A/D Pipeline .................... 25
1.8.1.
Avances en la Tecnología CMOS ........................................................ 26
2. Segunda Parte: Conceptos y Fundamentos ..................................... 27
2.1.
Descripción Conceptual .................................................................................. 28
2.2.
Ejemplo de un Conversor Pipeline de dos etapas ........................................... 29
2.3.
Fuentes de Error en Conversores Pipeline ...................................................... 30
2.3.1.
Offset y Errores en la Ganancia ........................................................... 31
2.3.2.
El Error de Ganancia Interetapa........................................................... 31
2.4.
Corrección de Errores ..................................................................................... 32
2.4.1.
Funcionamiento de la Técnica de Corrección Digital del bit y medio .... 34
2.4.2.
Corrimiento de los niveles de decisión ................................................. 35
2.5.
Optimización del Circuito............................................................................... 37
2.5.1.
Utilizando un comparador extra en el ADSC ........................................ 37
2.5.2.
Utilizando un comparador menos en el ADSC ..................................... 39
2.5.3.
Resolución por Etapa optimizando potencia ........................................ 40
2.5.4.
Escalamiento de Capacitores en las etapas del Conversor Pipeline .... 42
2.6.
Especificaciones de cada circuito del conversor pipeline............................... 43
3. Tercera Parte: Diseño Circuital y Simulaciones ............................. 44
3.1.
Modelo Circuital de un Conversor A/D Pipeline de 6bits .............................. 45
3.2.
Bloques Circuitales que componen el conversor pipeline .............................. 46
3.3.
Detalle de los bloques que componen el conversor pipeline .......................... 47
3.3.1.
Circuito Amplificador de Muestreo y Retención.................................... 47
3.3.2.
Funcionamiento del Amplificador de Muestreo y Retención ................. 49
3.3.3.
Circuito del Núcleo del conversor......................................................... 52
3.3.4.
Circuito Lógico del Corrector Digital ..................................................... 56
3.3.5.
Descripción del funcionamiento del Corrector Digital ........................... 57
3.3.6.
Circuito Generador de Fases de Clock ................................................ 59
3.3.7.
Funcionamiento del Circuito Generador de Fases de Clock................. 60
3.4.
Descripción del funcionamiento una etapa del conversor pipeline ................ 63
3.4.1.
.Circuitos de prueba del SHA ............................................................... 66
3.4.2.
Circuito del ADSC ................................................................................ 69
3.4.3.
Descripción del funcionamiento del ADSC ........................................... 71
3.4.4.
Circuito del DAC .................................................................................. 73
3.4.5.
Descripción del funcionamiento del DAC ............................................. 74
4. Cuarta Parte: Diseño del Layout...................................................... 76
4.1.
Diseño de Layout. ........................................................................................... 77
4.1.1.
Llave CMOS complementaria .............................................................. 78
4.1.2.
Generador de polarización (BIAS)........................................................ 79
4.1.3.
Comparador CMOS ............................................................................. 80
4.1.4.
Amplificador Operacional (con compensación) .................................... 81
4.1.5.
Compuerta NOR de 2 entradas............................................................ 82
4.1.6.
D-Latch ................................................................................................ 83
4.1.7.
Amplificador de Muestreo y Retención (SHA) ...................................... 84
4.1.8.
Conversor A/D de 2 bits ....................................................................... 85
4.1.9.
Generador de fases de Clock............................................................... 86
4.1.10.
SubConversor A/D de 1.5bit (ADSC) ................................................... 87
4.1.11.
Conversor D/A (DAC)........................................................................... 88
4.1.12.
Conversor A/D Pipeline de 5 etapas completo ..................................... 89
5. Conclusiones ....................................................................................... 90
5.1.
Baja del voltaje de operación.......................................................................... 92
5.2.
Mayor resolución ............................................................................................ 92
5.3.
DAC con capacitores ...................................................................................... 93
Anexo 1: Código en “C” que simula el funcionamiento de un
Conversor Pipeline.................................................................................... 94
Anexo 2: Gráficos de Simulación del programa “C” .......................... 104
Anexo 3: Pruebas del Comparador....................................................... 111
Apéndice 1: Análisis y Diseño del Amplificador Operacional............ 118
Cálculo de Ganancia ................................................................................................. 119
Resultados de simulación.......................................................................................... 121
Glosario .................................................................................................... 130
Índice de figuras y ecuaciones................................................................ 131
Referencias............................................................................................... 135
Lecturas complementarias ..................................................................... 136
20/07/2004
Prefacio
Este trabajo es una elaboración personal concebida por Andrés Esteban
Sampaulo estudiante de la carrera Ingeniería Electrónica de la Universidad de Buenos
Aires.
La redacción de esta tesis tiene el propósito de demostrar que es factible desarrollar
un conversor A/D de alta resolución, alto throughput y bajo consumo basado en
tecnología CMOS. A lo largo de más de un año de trabajo se siguió un programa de
tareas (schedule) que se basa en etapas que comprenden la realización de tareas
afines, el cual tiene como finalidad presentar el diseño completo de un circuito
integrado.
El circuito integrado que se diseña en este trabajo pertenece al área de circuitos
integrados Mixtos Analógico-Digital. No obstante, el presente diseño puede formar
parte de un sistema más complejo en el cual intervienen circuitos puramente
analógicos, puramente digitales, y mixtos, asi como también circuitos sensibles a
campos magnéticos, electromagnéticos, circuitos ópticos asi como cualquier otro
sistema que requiera una transformación de señal para un posterior un procesamiento
digital.
La estructura con la que fue realizado el presente trabajo permite comprender las
necesidades actuales en el campo del procesamiento digital de señales.
En la primera parte del trabajo se hace una breve reseña histórica de la conversión
analógico digital, las diferentes aplicaciones que requieren este proceso, los
requerimientos que demandan y las características que brindan cada una de las
diferentes arquitecturas de conversores A/D.
En la segunda parte se estudia el Conversor A/D desde el punto de vista conceptual.
Se explica el funcionamiento del conversor A/D de arquitectura pipeline a partir de un
diagrama en bloques. Se hace además un estudio comparativo de las fuentes de error
en los conversores pipeline. Y se explica el funcionamiento de la técnica de
corrección digital que es utilizada en el presente trabajo. Finalmente se elabora el
conjunto de especificaciones del conversor pipeline.
En la tercera parte del trabajo se divide el Conversor Pipeline en sub-circuitos ó
bloques. Se procede al diseño del circuito eléctrico de cada bloque utilizando niveles
jerárquicos. Luego se realizan ensayos de simulación SPICE de cada uno de los
7-136
20/07/2004
bloques desarrollados. Asi se verifica y analiza el funcionamiento de cada unos de los
bloques y del diseño completo.
En la quinta parte se presenta el diseño del layout del prototipo, también realizado
utilizando niveles jerárquicos. Se verifica topológicamente el diseño circuital extraído
a partir del layout contra los esquemas circuitales (LVS) utilizados en la tercera parte.
Y finalmente se procede con la verificación de las reglas de diseño (DRC) según el
proceso de fabricación adoptado.
En un primer Anexo se adjunta el código fuente en leguaje “C” que representa la
implementación del conversor A/D pipeline de este trabajo.
Un segundo Anexo incluye gráficos de los ensayos realizados mediante el programa
“C” del Anexo anterior.
En el tercer Anexo se adjuntan gráficos de simulación SPICE de los ensayos de
conmutación efectuados sobre el circuito del comparador bajo condiciones de carga
extremas.
Finalmente en un Apéndice se incluyen los cálculos de diseño, simulaciones SPICE
de ganancia y fase, y el cálculo de compensación en frecuencia del amplificador
operacional.
Se adjunta al presente trabajo una copia de los archivos que fueron desarrollados a lo
largo de esta tesis. Según se detalla a continuación:
− “gcc.zip” incluye los archivos de prueba y código fuente relacionados al
programa “C” que emula el funcionamiento de un conversor pipeline
− “excel.zip” son los gráficos en formato excel de los resultados de los ensayos
del punto anterior
− “spice.zip” incluye todos los esquemas circuitales que involucran al conversor
pipeline, sus circuitos de prueba y sus condiciones de ensayo elaborados con
SPICE.
− “tanner.zip” incluye los archivos del diseño de layout de todos los bloques que
conforman el conversor pipeline. Elaborador con tanner.
− “txt.zip” el conjunto de especificaciones conclusión del segundo capítulo del
trabajo .
8-136
20/07/2004
Objetivo de la tesis
El presente trabajo tiene como objetivo presentar el diseño completo de un
Circuito Integrado CMOS. Se desea mostrar un método para llevar a cabo la
realización de un Conversor Analógico Digital (ADC). Se pretende también introducir
al lector en el uso de las herramientas de diseño que se utilizan para la realización de
cada una de las tareas que son involucradas en un proyecto de diseño de circuitos
integrados y procesamiento de señales. El diseño de un conversor de datos es un
ejemplo de ello. De las tareas que se llevan a cabo se pueden citar:
a. Un algoritmo escrito en lenguaje “C” que permite emular las características
de transferencia del circuito.
b. La corrida del algoritmo anterior, variando parámetros externos permite
elaborar el conjunto de especificaciones.
c. El diseño del circuito eléctrico (circuito esquemático) en niveles jerárquicos
del conversor pipeline completo utilizando la herramienta Capture CIS.
d. La simulación SPICE del circuito cuando es sometido a condiciones de
prueba que comprenden todo el rango de operación previsto. Lo cual
permite el análisis de las características de funcionamiento.
e. El diseño del Layout para su posterior fabricación satisfaciendo las reglas de
diseño (DRC) según el proceso MOSIS adoptado
f. La verificación del diseño del Layout (del punto e.) Versus el Esquemático
(del punto b.) utilizando LVS.
Todos estos puntos concluyen en el diseño de un Conversor Analógico Digital de
arquitectura Pipeline para su posterior fabricación lo cual constituye la presente tesis.
9-136
20/07/2004
1. Primera Parte: Introducción
10-136
20/07/2004
1.1. Antecedentes teóricos
Los avances en el procesamiento digital de las últimas décadas motivan la necesidad
de poder reducir señales de tiempo continuo a muestras discretas en el dominio de
tiempo discreto.
En la siguiente sección se presenta el proceso de conversión A/D, que comprende dos
conceptos fundamentales: muestreo y cuantización.
1.2. Muestreo
La operación que permite la transformación de una señal de tiempo continuo a una
señal en tiempo discreto es llamada muestreo (sampling). Ello consiste en tomar
muestras del valor de la señal de tiempo continuo cada instantes de tiempo múltiplo
de T, llamado intervalo de muestreo. Siendo, de este modo F=1/T la llamada
frecuencia de muestreo.
Si la señal en tiempo continuo es de banda limitada (su espectro se encuentra entre
− ω M < X ( jω ) < +ω M ), ésta puede ser representada unívocamente por medio de sus
muestras siempre que la frecuencia de muestreo exceda 2ω M . Valor conocido como
frecuencia de Nyquist. El muestreo es representado matemáticamente como
∞
x * (nTs ) = ∑ x(t )δ (t − nTs )
[1.2]
−∞
La salida de un conversor ideal es una serie de funciones delta referenciadas por la
entrada, x(nT ) . El espectro de la señal muestreada x * , es representado por la
transformada de Laplace de la ecuación
∞
X * (s ) = ∑ x(nTs )e − snTs =
−∞
1
Ts
∞
∑ X (s − jnω )
−∞
s
[1.2.1]
Como se puede apreciar en la Fig. 1.2.0 (a), esto es una función periódica de ω s que
consiste de una superposición de réplicas de X * ( jω ) desplazadas y escaladas por
1/Ts. En la Fig. 1.2.0 (b), ω M < (ω s − ω M ) , o de manera equivalente ω s > 2ω M , por
lo que no hay traslape (aliasing) entre las réplicas desplazadas de X * ( jω ) . En
cambio en la Fig. 1.2.0 (c), se muestra el caso en que ω M > (ω s − ω M ) , en el cual sí
hay traslape entre las réplicas de X * ( jω ) dado que ahora ω s < 2ω M .
11-136
20/07/2004
Bajo estas condiciones se puede afirmar que en el caso (b) la señal analógica original
x(t ) puede ser recuperada exactamente a partir de sus muestras. [Teorema del
muestreo, Opp1997]
1
-ωM
ω
ωM
(a)
1/Τs
X*(jω)
ωM
-ωM
(b)
1/Τs
-ωM
X(jω)
ωs
ω
(ωs −ωM)
X*(jω)
ωM ωs
(c)
ωs
ω
(ωs −ωM)
Fig. 1.2.0 Efecto en el dominio de frecuencia del muestro en el dominio del tiempo.
(a) Espectro de la señal analógica original de Entrada. (b) Espectro de la señal muestreada con ω s > 2ω M .(c) Espectro de la
señal muestreada con ω s < 2ω M .
12-136
20/07/2004
1.3. Cuantización
La arimétrica del procesamiento interno de los sistemas digitales impone la
cuantización de los valores muestreados de la señal analógica en valores digitales
discretos.
6,00E+00
4,00E+00
2,00E+00
247
253
241
235
246
229
241
217
223
211
205
216
199
187
211
181
193
175
186
169
181
157
163
151
156
176
145
151
139
146
133
121
121
127
115
116
97
109
91
103
85
96
79
91
67
73
61
86
55
66
49
61
37
36
43
31
31
56
25
26
7
19
1
6
13
1
0,00E+00
-2,00E+00
-4,00E+00
-6,00E+00
2,00E+00
1,50E+00
1,00E+00
5,00E-01
256
251
236
231
226
221
206
201
196
191
171
166
161
141
136
131
126
111
106
101
81
76
71
51
46
41
21
16
11
0,00E+00
-5,00E-01
-1,00E+00
-1,50E+00
-2,00E+00
Fig.1.1.2. Representacion de una señal analógica y señal digitalizada (arriba) y señal de error (abajo)
De acuerdo a la cantidad de bits (n) del código digital que se esté utilizando, el rango
completo de una señal analógica puede ser dividido en 2n niveles equi-espaciados
llamados niveles de cuantización. La cuantización permite decidir cual código digital
es el más adecuado para la representación del valor continuo de la señal muestreada.
Si V fs es la amplitud completa del rango de tensión de entrada, ∆ = V fs 2 n es llamado
intervalo de cuantización, y el error ( ε Q ) que se comete durante el proceso de
cuantización queda comprendido entre − ∆ 2 < ε Q < + ∆ 2 .
El error de cuantización es inherente a cualquier proceso de conversión A/D, asi ε Q
tiende a cero cuando n tiende a infinito.
13-136
20/07/2004
1.4. Aplicaciones de conversores analógico digital
La reducción del consumo de energía manteniendo altas velocidades de muestreo y
elevado grado de cuantización es una importante meta, principalmente en lo referente
a aplicaciones portátiles alimentadas por baterías. Debido a ello es esencial la
optimización del consumo en las interfaces A/D.
Dispositivo
de
Imágenes
Filtro antialiasing
Conversor
A/D
DSP
(a) Sistemas de Imágenes de Video
Sección RF
Filtro
Conversor
A/D
DSP
LO
(b) Sistemas de comunicación personal
Filtro
Conversor
A/D
DSP
(c) Canal de lectura de un disco rígido
Fig.1.1 Ejemplos de aplicaciones que utilizan intefaces analógico-digital
La Fig.1.1 muestra ejemplos de sistemas que requieren la utilización de algún método
de conversión de un tipo de señal analógica en datos digitales, para luego ser
procesados mediante un procesador de señales digitales (DSP). Asi, los sistemas de
imágenes de video son ampliamente utilizados para cámaras digitales, sistemas de
comunicación personal empleados en telefonía celular y canales de lectura de discos
rígidos de computadoras portátiles, todos requieren un bajo consumo y una tasa de
conversión elevada dado el constante aumento en la densidad de datos que son
capaces de transferir. Como se ve en [Lucent99], con procesos de fabricación en
0,18µm y menos alcanzan velocidades de 850Mbps en los canales de lectura de
unidades de disco de alto desempeño.
14-136
20/07/2004
1.5. Arquitecturas de conversores AD
Existen varios diferentes tipos de Arquitecturas de conversión A/D que,
dependiendo de la frecuencia de muestreo y la resolución, que demanden la aplicación
de su empleo, pueden ser mas ó menos adecuadas. El la Fig.1.1.3. se pueden apreciar
diferentes arquitecturas según la resolución (cantidad de bits, eje y) y frecuencia de
muestreo (Sa/s, eje x) que proveen.
Resolución [bits]
24
22
Sigma
Delta [Σ∆]
20
18
16
14
Aproximaciones
Sucesivas [CSA]
12
10
Pipeline
8
Flash
6
102
103
104
105
106
107
108
VELOCIDAD DE MUESTREO [muestras por seg]
109
Fig.1.1.3. Diferentes Arquitecturas de conversores A/D.
Cada aplicación que involucra el uso de un conversor A/D requiere de
diferentes características de velocidad de muestreo y cantidad de bits. Asi como
también impone restricciones de consumo y tamaño para el circuito integrado.
Las implementaciones del tipo full Flash son una solución atractiva para aplicaciones
de baja resolución, 6 a 8bits en tanto demandan un pequeño numero de comparadores.
Para resoluciones entre 8 y 12 bits, las únicas opciones en la práctica que tienen bajo
consumo son las configuraciones flash multistep y pipeline. La arquitectura Pipeline
tiene además las ventajas de requerir reducida área de chip, alta velocidad de salida, y
una relativa alta resolución. Durante la década pasada, el conversor pipeline
multietapa se ha convertido en una solución adecuada para un gran numero de
aplicaciones de alto desempeño. En el campo de comunicaciones digitales, sistemas
de adquisición de datos, asi como también en instrumentación diseños como el citado
15-136
20/07/2004
en [Lewis01] proveen resoluciones superiores a 7 bits y altas velocidades de muestreo
,mayores a 50Msa.
Para aplicaciones que demandan resoluciones mayores, entre 10 y 16bits conversores
que trabajan por aproximaciones sucesivas brindan velocidades del orden de 20Msa/s
y mas. Un ejemplo es el conversor A/D CSA diseñado en [Lutzky99], que con un
consumo de 75mW y reducida área de chip (1,6mm), brinda velocidades de
conversión de baja latencia que alcanzan los 20Msa con 9,5bits efectivos de
resolución. Características ideales para aplicaciones de video e imágenes.
Finalmente utilizando arquitecturas de sobremuestreo (oversampling) es posible llegar
hasta resoluciones de 16 a 20 bits. Este es en el caso del las arquitecturas del tipo
sigma-delta y SAR. Dicha arquitectura es ideal para aplicaciones que emplean el
procesamiento digital de señales analógicas, con fuertes exigencias de ancho de banda
y rango dinámico. Receptores de radio de onda corta y modems full duplex son
ejemplos que necesitan convertir tanto señales débiles como fuertes. En frecuencias
de audio y menores, una arquitectura sigma-delta puede brindar resoluciones de 16 a
20 bits con excelente linealidad . Se emplean en aplicaciones que requieren
características excepcionales de distorsión armónica total (THD), y rango dinámico
libre de espurios (SFDR). El ejemplo de [Brooks97] opera con un reloj de 20MHz y
disipa 550mw para una señal de 3/5v. Logra una relación señal ruido de 85dB para
señales de 1,25MHz de ancho de banda y una THD total de aprox. 98dB para señales
de entrada de 100kHz. Si bien estos tipos de arquitecturas brindan una mayor
resolución su velocidad de muestreo se ve limitada.
A continuación se presentan cuatro diferentes arquitecturas comúnmente utilizadas
para conversión analógico – digital de alta velocidad, estas son SAR, Flash (ó full
flash), flash de dos pasos (ó 2 step flash) y Pipeline (el presente trabajo).
16-136
20/07/2004
1.5.1. Arquitectura de Aproximaciones Sucesivas
El conversor SAR es una arquitectura que puede brindar altas resoluciones. A
expensas de una menor frecuencia de muestreo, se logra incrementar la cantidad de
bits sin necesidad de aumentar el área de chip ocupada.
Para realizar el proceso de conversión en un SAR, la señal analógica debe ser
muestreada y retenida previamente al proceso de conversión. Si N es la cantidad de
bits del conversor SAR, se necesitan N+1 ciclos de reloj para obtener el resultado de
la conversión. Una vez obtenido el resultado de la conversión del SAR se procede a la
toma de una nueva muestra de la señal analógica de entrada. Por lo tanto el muestreo
se realiza cada N+1 ciclos de reloj, por ello la frecuencia de muestreo se ve
disminuida en esta arquitectura.
Siguiendo el ejemplo de la Fig. 1.1.4 se analiza el funcionamiento de un conversor
SAR para 3-bits. Los elementos que componen esta arquitectura son:
− un SHA (inicial)
− un comparador
− una lógica de control + SAR
− un DAC
− un registro de almacenamiento.
Control de Fase
de Reloj
Vin
S/H
+
Lógica de control +
SAR
-
? CK
Registro de
Comparador
almacenamiento
SALIDA DIGITAL
Vref
DAC
Vr
Fig.1.1.4 Esquema de un conversor SAR de 3-bit y 1 bit por ciclo
La señal de entrada retenida es comparada contra un valor de señal reconstituida,
inicialmente ubicado a la mitad de la escala. El valor que se obtiene ingresa a una
lógica de control y aproximación, ésta cambia el valor de un bit en el resultado de la
17-136
20/07/2004
conversión, inicialmente corresponde al primer bit. Luego el DAC reconstruye la
señal de comparación a partir del nuevo valor digital. La señal de entrada es
comparada contra el nuevo valor de referencia. Este ciclo comienza a operar con el bit
MSB y se repite hasta obtener el bit LSB, quedando finalizada la conversión. El
resultado obtenido es guardado en un registro de almacenamiento y se procede a
analizar una nueva muestra.
Inicio
1°
2°
100
000
Valor inicial del SAR.
110
101
3°
Resuelto el valor del primer bit MSB.
Resuelto el valor del segundo bit.
101
Resuelto el valor del tercer bit LSB.
Fig.1.1.5 Funcionamiento de un conversor SAR de 3-bit
Este conversor SAR logra una velocidad de 1 bit por ciclo de reloj, por lo cual el
resultado se logra a los N ciclos de reloj.
La ecuación que define un conversor SAR de N bits está dada por:
Vin =
Vref
2
bN −1 +
Vref
2
2
Donde ε Q es el error de cuantización y
bN − 2 + .... +
Vref
2 N +1
Vref
2
N
b0 +
Vref
2 N +1
+ εQ
[1.5]
el corrimiento de ½ LSB de la
característica de transferencia.
En implementaciones prácticas, se utilizan muchos comparadores con el fin de
obtener una mayor cantidad de bits por ciclo. Por ejemplo en [Lutsky99] se emplea un
arreglo de 31 comparadores, logrando de este modo obtener 5 bits por ciclo de reloj
con lo cual la latencia se reduce a solo 2 ciclos de reloj.
18-136
20/07/2004
1.5.2. Arquitectura Flash
Los conversores de arquitectura flash son los mas veloces, pero no brindan alta
resolución. En la Fig.1.2 se muestra una arquitectura flash ejemplo. Por comparación
simultánea entre la señal analógica de entrada y un conjunto de tensiones de
referencia (generadas mediante un arreglo de resistencias), se obtiene un conjunto de
salidas que conforman un código digital (llamado comúnmente termométrico).
Vref(+0,5v)
+0,25v
Entrada
Analógica
0v
Salidas
Digitales
(código
termométrico)
-0,25v
Vref(-0,5v)
Fig.1.2 Modelo típico de un conversor A/D Flash con arreglo de resistencias
Siendo N la cantidad de bits, el conversor Flash posee 2N estados posibles, que
deberán ser distinguidos mediante la comparación entre la señal de entrada y 2N-1
tensiones de referencia. De este modo la cantidad de comparadores necesarios es
proporcional a 2N. Esto hace crecer exponencialmente el consumo, tamaño y en
consecuencia el costo del hardware en la medida que se aumenta linealmente la
resolución. La precisión necesaria para los comparadores también crece
exponencialmente cuando lo hace N. Cuando la resolución supera los 8-bits es
necesario aplicar técnicas de autocero a los comparadores. (el tamaño y la
complejidad de 256 comparadores es un problema). Dado el pequeño intervalo de
cuantización, el más mínimo error del comparador es apreciable.
Entre la entrada y el conversor flash puede conectarse un circuito de muestreo y
retención. El mismo disipa gran cantidad de potencia dado el alto número de
comparadores que debe manejar. Y conectar un circuito de muestreo y retención a
cada comparador, se convierte en un problema.
Los conversores del tipo flash más utilizados son de 6 a 7 bits con comparadores
simples, manejando velocidades de 1Gs/s y mayores. [Pohang02]
19-136
20/07/2004
1.5.3. Arquitectura Flash de 2 pasos (2 step flash)
El mayor problema de los conversores flash radica en la necesidad de una gran
cantidad de comparadores de bajo offset. En la Fig.1.3 se presenta el esquema de un
conversor de dos pasos. En el cual puede apreciarse que la cantidad de comparadores
necesarios se ve reducida a 2N/2 + 1.
Entrada
+
S/H
Analógica
ADC
ADC
N2 bits
DAC
N1 bits
SR
Salidas Digitales
001001110
Fig.1.3 Diagrama en bloques de un conversor flash de dos pasos.
Primero la señal de entrada analógica atraviesa un circuito de muestreo y retención
(S/H). Durante el período de retención, el primer conversor ADC flash produce la
cuantización digital de la señal retenida, con un número reducido de bits N1 < N. Al
valor de la señal de entrada analógica retenida se le resta el valor de la señal de salida
del DAC, elaborando una nueva señal que se denomina residuo. Luego, en la etapa
ADC extra, el residuo es digitalizado en N2 bits completando la resolución del
conversor. Para el ejemplo, sin corrección digital N1 + N2 = N.
El procesamiento concurrente de ambos pasos permite llevar la velocidad de salida a
la del mismo conversor flash. Aunque, la salida convertida tenga una latencia inicial
de dos ciclos de reloj, convenientemente la etapa extra reduce la cantidad de
comparadores de precisión.
La ventaja de esta arquitectura es la menor cantidad de comparadores de precisión que
requiere, y consecuentemente el bajo consumo. Si el sistema puede tolerar la latencia
inicial de dos ciclos de reloj, el conversor flash de 2 pasos es la alternativa de bajo
consumo y reducida área ocupada. La desventajas radican en la necesidad de un
circuito S/H, DAC y en que ambas etapas requieran comparadores de precisión para
completar la resolución del conversor A/D. Que como se mencionó con anterioridad,
para resoluciones de 8bits, es muy difícil de lograr sin utilizar técnicas de
compensación de offset. La precisión en la resta, entre la señal retenida y el valor de
salida del DAC, puede verse disminuida utilizando medio rango de comparación en la
20-136
20/07/2004
segunda etapa por ejemplo con corrección digital (se describe en el trabajo). Así como
podría utilizarse una ganancia interetapa con en fin de brindar una mayor tolerancia al
offset de los comparadores de la siguiente etapa.
Mientras que para implementar un conversor flash de 8 bits se necesitaban 256 comparadores de precisión, hacerlo utilizando una arquitectura flash de 2 pasos requiere
32 (16 comunes y 16 de precisión). De todas formas como sucede utilizando
arquitecturas flash, el nivel de complejidad sigue creciendo exponencialmente en la
medida que aumenta la cantidad de bits. En base a estas limitaciones, dicha
arquitectura de conversión A/D no es aplicable más allá que para conversores de
video de 8bits a 20MHz.
1.5.4. Arquitectura de conversión A/D Pipeline
El proceso de conversión Pipeline surge de la combinación de las técnicas que
utilizan conversores del tipo Flash y SAR, con S/H y ganancia entre etapas.
Señal de
entrada
analógica
ETAPA 1
S/H
Señal de
entrada
de la
etapa
ETAPA
M-1
Señal muestreada
+
ETAPA M
X 2B
-
ADSC
DAC
Señal
cuantizada
Señal de salida
de la etapa
(residuo)
Salidas digitales
de la etapa
Fig.1.4 Arquitectura de conversión A/D Pipeline
En la Fig.1.4 se presenta un esquema básico para una arquitectura pipeline. Cada
etapa muestrea la señal residuo de la etapa anterior mediante un S/H y la cuantiza en
B+1 bits utilizando un sub-conversor flash (ADSC). Luego se resta la señal
cuantizada a la señal de entrada y se obtiene el residuo, el cual es amplificado por el
amplificador interetapa para ser muestreado y repetir el mismo procedimiento en la
etapa siguiente. Cada etapa del conversor permite obtener B bits efectivos y 1 bit para
redundancia (se profundiza mas adelante). La cantidad de comparadores necesarios
depende de la cantidad de bits por etapa para una resolución dada. En el caso de la
21-136
20/07/2004
Fig.1.4, siendo M la cantidad de etapas, se necesitan M x 2B+1 comparadores. La
cantidad de etapas es aproximadamente la resolución del conversor dividido la
cantidad de bits efectivos por etapa elegida.
Como se ha visto anteriormente, debido a la ganancia interetapa y corrección digital,
el ADSC de cada etapa tiene que reunir solamente B+1 bits. De este modo, un menor
B, reduce los requisitos de los comparadores.
Otra observación es que los requisitos del amplificador interetapa y del DAC se ven
reducidos al avanzar a través del pipeline. En el caso de un conversor de 10 bit de
resolución con B=1, la primer etapa tiene que reunir requisitos de 10bit, mientras que
el requisito de la segunda etapa se ve reducido en 1 bit. Esto puede significar una
reducción apreciable del consumo de potencia en cada circuito S/H. Permitiendo
reducir las dimensiones de los capacitores de los circuitos S/H debido a los menores
requisitos de exactitud.
En contraste con el flash de 2 pasos, la cantidad de comparadores utilizados se ve
fuertemente reducida, a expensas de incrementar la latencia inicial y la cantidad
circuitos S/H. También puede observarse que la complejidad circuital crece en forma
lineal comparado con el crecimiento exponencial que tienen las arquitecturas flash y
flash de 2 pasos.
22-136
20/07/2004
1.6. Características de Conversores Pipeline
•
El conversor A/D pipeline utiliza etapas en cascada, cada una de las cuales es
capaz de producir uno o mas bits.
•
Las diferentes etapas del pipeline operan en simultáneo, determinando durante
el mismo período de clock los bits pertenecientes a muestras sucesivas de la
señal analógica de entrada.
•
La arquitectura brinda un alto valor de throughput a expensas de una latencia
inicial del sistema en N ciclos de clock. (donde N es la cantidad de etapas)
•
El procesamiento en el camino analógico asegurar la información contenida en
los bits residuales.
•
La complejidad y el consumo de potencia en cada etapa del conversor pipeline
son significativamente menores a los del conversor completo.
•
La arquitectura pipeline brinda la mejor solución de compromiso entre
velocidad, superficie y consumo de potencia, comparada con otras soluciones.
•
El numero total de etapas N, necesario para obtener una determinada
resolución disminuye cuando la cantidad de bits por etapa se incrementa.
•
El procesamiento analógico requerido puede ser mas dificultoso cuando la
velocidad y el consumo de potencia de una simple etapa aumenta. Esto resulta
en que la elección acerca de la cantidad de bits por etapa que pueden ser
utilizados requiera un verdadero análisis preliminar.
23-136
20/07/2004
1.7. Ventajas y Desventajas de la utilización de una Arquitectura
Pipeline
La principal ventaja de la arquitectura de los conversores AD Pipeline es el
alto throughput a un muy bajo costo. La velocidad de salida esta limitada por la
velocidad de la etapa mas lenta y es independiente del numero de éstas. Para el
proceso de sub-conversión analógico-digital (ADSC), utilizando internamente
arquitecturas Flash, cada etapa del Pipeline necesita solamente dos ciclos de reloj por
conversión.
Por ejemplo si en un conversor de 9-bits que utiliza arquitectura flash se necesitan al
menos 512 comparadores, en uno Pipeline de tres etapas y 3-bits por etapa tan solo
son necesarios 28 comparadores, lo cual se puede implementar en una superficie de
8500mil2 con procesos CMOS de 3µm.[Lewis87]
El uso de un S/H a la entrada del conversor permite muestrear perfectamente
señales de muy alta frecuencia. La ganancia de los amplificadores S/H entre etapas,
disminuye los efectos de alinealidad causados por las imperfecciones en los
componentes de etapas sucesivas; esto permite la utilización de técnicas digitales de
corrección de errores, de manera que el efecto de alinealidad en cada ADSC flash
tenga muy poca influencia en la linealidad completa del conversor. Si bien los
amplificadores S/H mejoran muchos aspectos de performance del conversor pipeline,
la principal desventaja radica en el uso de amplificadores operacionales para su
implementación. Debido a ello los amplificadores operacionales contenidos en los
SHA limitan la velocidad del conversor Pipeline. [Lewis87]
24-136
20/07/2004
1.8. Razones que motivan la elección de Conversores A/D Pipeline
El muestreo y la cuantización de señales a altas frecuencias de muestreo con bajo
consumo puede ser un beneficio muy importante para un gran numero de
aplicaciones, tales como dispositivos de video portátiles, dispositivos de
comunicaciones, interfaces para redes inalámbricas, canales de lectura / escritura de
dispositivos de almacenamiento magnéticos de datos digitales, y muchas otras
aplicaciones. Teniendo potencia limitada en baterías de tamaño razonable, se necesita
que en nuestros circuitos integrados la disipación de energía sea mínima.
La gran mayoría de los sistemas de comunicaciones actuales utilizan procesamiento
digital de señales (DSP) para el tratamiento de la información transmitida. De modo
que entre la señal analógica recibida y el sistema de procesamiento digital se necesita
una interfaz analógico-digital. Esta interfaz permite la digitalización de la señal
analógica recibida a la velocidad de muestreo del sistema. Como parte de un sistema
de comunicaciones, la restricción del bajo consumo de potencia mencionada
anteriormente impone además que la interfaz A/D deba ser de bajo consumo.
La tendencia a incrementar la escala de integración de los circuitos integrados obliga a
que el conversor A/D resida en el mismo silicio junto con grandes circuitos DSP. El
hecho de compartir la misma fuente de alimentación entre el conversor A/D y el
circuito digital, reduce el costo de tener que agregar conversores DC-DC extras para
generar múltiples fuentes de alimentación. De modo que, es deseable que cada
conversor A/D opere con la misma fuente de alimentación que el circuito digital.
Dado el rápido avance de la Supervía de la Información de hoy en día, grandes
cantidades de datos son almacenados en dispositivos de almacenamiento y son
accedidos frecuentemente. Con el objeto de transmitir grandes cantidades de datos en
cortos períodos de tiempo, se necesita que aquellos dispositivos de almacenamiento
mantengan altas velocidades de transferencia. Esto se traduce directamente en altas
velocidades de conversión en los canales de lectura / escritura de dispositivos
magnéticos, como es en el caso de discos rígidos de última generación. En el mercado
actual es muy común encontrar aplicaciones que requieren tasas de transferencia de
1Gs/s para resoluciones de 6-8bits. También son necesarios conversores A/D veloces
con el objeto de lograr la mayor velocidad de transferencia en aplicaciones
25-136
20/07/2004
multimedia, tales como en video cámaras portátiles, cámaras digitales y en telefonía
celular con video.
Los diseños tradicionales de conversores que brindan la máxima velocidad de
conversión utilizan arquitecturas “flash”, logrando la mayor velocidad de salida de
datos (throughput) con el menor tiempo de retardo (latencia). Se necesita una extensa
área de chip para su implementación puesto que la misma crece exponencialmente
con la cantidad de bits. Los conversores A/D Pipeline utilizan interiormente pequeños
conversores flash (de pocos bits) en cada una de sus etapas, alcanzando los mismos
valores de throughput. A expensas de una latencia inicial en el funcionamiento (no
presente en los conversores flash), el área de chip necesaria para su implementación
es mucho menor (que la que emplearía un conversor del tipo flash para la misma
cantidad de bits). En ciertas aplicaciones donde se requiere mediana – alta resolución
y no hay realimentación o no es de importancia (dado que el tiempo de latencia inicial
crece con el numero de etapas) es ventajoso utilizar el tipo de arquitectura de
conversión A/D Pipeline.
1.8.1. Avances en la Tecnología CMOS
Tras los últimos avances en la tecnología CMOS, es posible hacer un
pronóstico acerca de una disminución paulatina en el voltaje de operación de los
circuitos integrados a través del tiempo. Actualmente, los conversores A/D CMOS
pipeline son capaces de operar con voltajes de 1,5v y menores, como se ve en el
trabajo realizado en [Walta01]. El funcionamiento con bajo voltaje es una premisa
muy importante en las interfaces que constituyen dispositivos portátiles actuales.
VDD
3
2,5
2,5
1,8
2
1,5
1,5
1,5
1,2
0,9
1
0,6
0,5
0
1997
1999
2001
2003
2006
2009
2012
Año
Fig.1.5 Pronóstico del voltaje de alimentación de dispositivos CMOS según la Semiconductor Industry
Association 1997.
26-136
20/07/2004
2. Segunda Parte: Conceptos y Fundamentos
27-136
20/07/2004
2.1. Descripción Conceptual
En el esquema de la Fig.1.8 se presenta un conversor analógico digital de k=3 etapas
iguales. Cada etapa contiene un circuito de S/H, un conversor A/D y un conversor
D/A de baja resolución, un mezclador de señales analógicas y un amplificador de baja
ganancia.
Vref
AMP 2n1
Vin
S/H
A/D
D/A
2a
etapa
3a
etapa
LSB
S-R
S-R
Lógica
Digital
S-R
MSB
Fig.1.8 Diagrama en bloques simplificado de una arquitectura de conversión A/D pipeline.
El proceso en cada una de las etapas es el mismo y consiste en lo siguiente:
1. El valor de entrada analógica es retenido mediante el circuito de S/H.
2. A través del conversor A/D (del tipo flash, de baja resolución) se digitaliza el
valor retenido anteriormente obteniéndose una salida digital de n1 bits. (n1
bits por etapa)
3. El conversor D/A provee a partir de estos n1 bits la reconstrucción de la señal
analógica (cuantizada).
4. Por intermedio de un circuito mezclador la señal cuantizada (en n1 bits) es
restada a la señal analógica de entrada, obteniendo la señal de residuo
(también llamada “de error”). Esta última se amplifica en 2n1 veces, abarcando
de este modo el rango de conversión completo de la entrada analógica de la
siguiente etapa, para repetir el mismo proceso.
28-136
20/07/2004
2.2. Ejemplo de un Conversor Pipeline de dos etapas
El resultado de la conversión parcial de cada etapa es conectado a circuitos S-R
(registros de desplazamiento), cuyo propósito consiste en almacenar los valores de las
salidas digitales de cada etapa. Para luego mediante un circuito de lógica
combinacional, eliminar las redundancias (corrección digital de errores) y obtener un
código de salida digital binario.
Error en la
Ganancia
ENTRADA
Error en la
Ganancia
Muestreo
y
Retención
+
+ +
Muestreo
y
Retención
+
-
Error de
Offset
Error de
Offset
ADC de
n1-bits
ADC de
n2-bits
DAC de
n1-bits
SALIDA
de n2-bits
SALIDA
de n1-bits
Fig.1.10. Diagrama en bloques ejemplo de un conversor pipeline de dos etapas.
Es sabido que cada etapa opera, en forma concurrente con el resto, empleando el
residuo obtenido de la etapa predecesora. El resultado de la conversión parcial
obtenido de cada diferente etapa corresponde al proceso de la señal analógica de
entrada del conversor pipeline en distintos instantes del tiempo. Debido a ello se hace
necesario el uso de varios circuitos S-R en cascada. A fin de proveer al circuito lógico
digital corrector de errores, resultados de la conversión parcial correspondientes a la
muestra de la señal analógica de entrada de entrada en el mismo instante de tiempo.
Vmax
Vmax
Vin
Vmax
Ganancia x 4
Vin
MSBs
(1011)
Analizado en
la siguiente
etapa
Residuo
LSBs
10
11
480mV
120mV
Vmín
Vmín
Vmín
Fig. 1.8.1 Ejemplo de conversion pipeline con n1=2 bits y n2=2 bits.
29-136
20/07/2004
2.3. Fuentes de Error en Conversores Pipeline
Las principales fuentes de error en los conversores A/D Pipeline son:
-
tensiones de offset (corrimientos)
-
errores en la ganancia en los SHA
-
alinealidad en los ADSC
-
alinealidad en los DAC
-
error de establecimiento (settling error) en los amplificadores
operacionales.
Como se analiza mas adelante los efectos debidos a offset y alinealidad se pueden
corregir y hasta incluso eliminar mediante técnicas de corrección digital. De este
modo la alinealidad del DAC y el tiempo de establecimiento del circuito S/H limitarán
la performance del sistema.
Los errores asociados con cada elemento típico de un bloque para un Conversor A/D
Pipeline se enumeran en la tabla de la Fig.1.9. [Gray91]
ELEMENTO
Amplificador de
Muestreo y
Retención (S/H)
ERROR(ES)
EFECTO(S)
SOLUCION(ES)
Offset
Offset
Alinealidad
Auto-Zero
Corrección Digital
Offset
Offset
Alinealidad
Alinealidad
Alinealidad
Auto-Zero
Corrección Digital
A/D
Alinealidad
Alinealidad
D/A
Amplificador
InterEtapa
Offset
Alinealidad
Error de Ganancia Alinealidad
Trim
Calibración
Auto-Zero
Trim
Calibración
Fig.1.9.Principales fuentes de error en los conversores pipeline.
La primer columna indica el bloque principal de cada etapa del conversor A/D
Pipeline donde se origina el error. La segunda columna muestra los errores asociados
a este elemento. La tercera el efecto que causa dicho error. Finalmente se sugiere una
posible solución para corregirlo ó eliminarlo en la cuarta columna.
Utilizando técnicas tradicionales analógica es posible llevar a cero valores de offset
originados en los circuitos S/H. Mientras que los problemas que causan la alinealidad
presente en los subconversores A/D, como también en los amplificadores interetapa,
pueden ser disminuidos o eliminados por medio de técnicas de corrección digital.
30-136
20/07/2004
2.3.1. Offset y Errores en la Ganancia
Al igual que la mayoría de los conversores A/D, los del tipo pipeline son susceptibles
a imperfecciones en los componentes analógicos. Su influencia se manifiesta, en
cierta medida, causando errores tales como tensiones de offset, errores de ganancia y
alinealidad.
En el ejemplo de la Fig.1.10 [Lewis87] se muestra el diagrama en bloques de un
conversor dos etapas modelizando errores de offset y ganancia en serie. Si el error
está solamente en el la ganancia del amplificador interetapa, y si ambas etapas tienen
una resolución de 4-bits, la ganancia interetapa debe ser 16 con ±3% de tolerancia.
Respecto al Conversor Pipeline de 5 etapas diseñado en el presente trabajo, en el
Anexo 2 se muestran los gráficos a partir de los cuales se obtienen los máximos
valores de error que pueden ser tolerados. Sin que dicho error exceda 1LSB (para el
peor de los casos), puede observarse que los valores de ganancia no deben exceder el
5% y el corrimiento debido a offset no supere los 35mV. Esto da como resultado las
especificaciones de diseño del SHA, englobando de esta forma los errores causados en
el S/H y el Amplificador interetapa.
2.3.2. El Error de Ganancia Interetapa
Desde el punto de vista “causa” – “efecto”, el error de ganancia Interetapa es otra
fuente de alinealidad del conversor pipeline.
Código de
Salida
Digital
Característica
ideal de
transferencia
DNL+
DNL- (Missing Codes)
Ventrada
Fig.1.10.1 Característica de transferencia manifestandose la presencia de alinealidad en la cadena de
resistencias
Cuando la ganancia es muy baja este error causa saltos verticales (que se traduce en
códigos erróneos ó missing codes) en toda la escala de transferencia, produciendo un
31-136
20/07/2004
DNL negativo (ver Fig.A2.6 SalidaSeno25). Y cuando la ganancia es demasiado alta
(ver Fig.A2.5 SalidaSeno23) saltos horizontales y DNL positivo. Los efectos del error
de ganancia interetapa pueden ser reducidos con corrección por realimentación
referenciada. Si el mismo amplificador interetapa es utilizado para amplificar el
residuo y la tensión de referencia, los valores pico de ambos escalarán en la misma
proporción. Por consiguiente, los efectos de errores en los valores de ganancia
interetapa serán automáticamente cancelados. Además, los efectos de variaciones
lentas en el valor de la ganancia interetapa, como por ejemplo corrimientos por
temperatura también son cancelados. [Gray88]
2.4. Corrección de Errores
Tal como se mencionó anteriormente, los errores de offset y ganancia pueden
reducirse ó hasta incluso eliminarse utilizando técnicas de corrección digital. Para
llevar a cabo ello, se agrega cierta redundancia (1 bit en el ejemplo de la Fig.1.11)
entre las etapas consecutivas. [Lewis87]
0,5
ENTRADA
Etapa 1
Etapa 2
Registro de
n2-bits
Lógica de
Corrección
Registro de
n1-bits
Registro de
n1-bits
SALIDA de n1 + n2 - 1bits
Fig.1.11 Diagrama en bloques ejemplo de la corrección digital para un conversor pipeline de dos etapas
de 3 bit cada una.
Los nuevos elementos en este diagrama son los registros de almacenamiento Pipeline,
el circuito lógico de corrección y el amplificador con ganancia 0,5. Un amplificador
32-136
20/07/2004
de ganancia 0,5 es conceptual, dado que es equivalente a reducir la ganancia
interetapa en un factor de 2. Esto permite acotar el error de alinealidad entre ±1/2LSB,
de modo que el nivel de n1-bits de la primer etapa (luego de la subconversión A/D) no
produzca residuos que puedan saturar a la segunda etapa. Si la primer etapa es
perfectamente lineal, solo se usa la mitad del rango de conversión de la segunda etapa.
El proceso consiste en salvar 1 bit de la segunda etapa para corregir digitalmente las
salidas de la primer etapa; los otros n2-1 bits de la segunda etapa completan la
resolución. Utilizando un circuito lógico de corrección digital se eliminan las
redundancias entre las X etapas (X es la cantidad de etapas del conversor pipeline),
obteniendo una salida digital de n1 + n2 –1 + .... + nX – 1 bits totales de resolución.
Si se tuviera un conversor de 5 etapas de 3 bits de resolución cada una con 1 bit
redundante, entonces el total de bits efectivos es 3 + 2 + 2 + 2 + 2 = 11 bits.
Suponiendo conversores D/A ideales, por medio de la corrección digital podría
eliminarse el problema de alinealidad en los subconversores A/D. De esta forma el
conversor D/A de la primer etapa define la linealidad del conversor A/D completo.
Cada conversor D/A puede implementarse utilizando líneas de resistores, obteniendo
linealidad para un rango de 8 a 9 bits. Cuando se desea obtener linealidad integral con
resolución mayor a 9 bits, el diseño de los conversores D/A no es trivial y en la
mayoría de los casos en necesario utilizar técnicas calibración ó trimming.
33-136
20/07/2004
2.4.1. Funcionamiento de la Técnica de Corrección Digital del bit y medio
Para explicar el funcionamiento de esta técnica, en la Fig.1.12 se muestra el diagrama
en bloques de una etapa de dos bits de un conversor A/D pipeline. El gráfico (a) de la
Fig.1.13 corresponde a la característica de transferencia de este diagrama.
2-bits
±Vr
±Vr
DAC
ADSC
de 2-bits
de 2-bits
Entrada
+
2
+
Residuo
Fig.1.12 Diagrama en bloques de una etapa de 2 bits, de un conversor A/D pipeline. [Lewis92]
Se analiza además el comportamiento ideal de una etapa. Para lo cual el rango de
señal de entrada retenida va desde –Vr hasta +Vr, obteniéndose la salida digital y el
residuo correspondiente; para el caso de presencia y ausencia de offset en serie al
ADSC y al DAC.
.
Residuo
00
½ Vr = 1LSB
01
10
11
½LSB
0
Entrada
Rango de
Retenida
Conversión
-½LSB
-½Vr = -1LSB
-Vr
-½Vr
0
+½Vr +Vr
01
10 11
(a)
Residuo
00
½ Vr = 1LSB
½LSB
0
Entrada
Rango de
Retenida
Conversión
-½LSB
-½Vr = -1LSB
-Vr
-¼Vr ¼Vr
¾Vr +Vr
(b)
Fig.1.13 Característica Ideal de transferencia de una etapa. Residuo ideal Vs Entrada retenida. (a) sin
offsets, (b) con offsets
34-136
20/07/2004
En el siguiente apartado la Fig.1.14 muestra el mismo diagrama con dos tensiones de
offset. Una de ellas está representada como un generador ubicado en serie con la
entrada analógica del ADSC y la otra en serie con la salida analógica del DAC. El
valor de ambas es de ½ LSB, producen desplazamientos de los niveles de decisión en
dicha medida.
2.4.2. Corrimiento de los niveles de decisión
En el diagrama de la Fig. 1.14 el generador de tensión de offset es colocado en
serie con el camino de entrada del ADSC con el fin de producir un desplazamiento
uniforme de los niveles de decisión en el gráfico de residuo ideal de la Fig. 1.13(a)
hacia la derecha. En el mismo diagrama otro generador de tensión offset es colocado
en serie a la salida del DAC para desplazar el gráfico completo del residuo ideal hacia
abajo. Es importante notar que el gráfico de la Fig.1.13b no posee niveles de decisión
en la mitad de escala de conversión, por lo tanto un conversor multietapa que utilice
etapas con esta característica de transferencia tiene linealidad a media escala.
2-bits
±Vr
±Vr
DAC
ADSC
de 2-bits
de 2-bits
+
½-LSB
de offset
-
S
S
+ ½-LSB
de offset
-
+
+
2
+
Residuo
Fig.1.14 Diagrama en bloques de una etapa de dos bits agregando tensiones de offset en el ADSC y en
el DAC.
De aquí en más, se define como rango de corrección a la cantidad de desplazamiento
del nivel de decisión que puede ser tolerada sin que se produzca error.
Se puede observar que si se considera al DAC y al SHA como ideales, con una
ganancia interetapa de 2, el residuo amplificado cae dentro del rango de conversión de
la siguiente etapa en tanto la alinealidad del ADSC no produzca un corrimiento de los
niveles de decisión mas de ±½ LSB. (para una etapa de 2 bits)
35-136
20/07/2004
Bajo estas condiciones es posible corregir los errores causados por la alinealidad en el
ADSC. Consecuentemente el rango de corrección aquí es de ±½ LSB (para un rango
de conversión de 2 bits) ó ±Vr/4, lo que significa que la alinealidad del ADSC solo
debe ser contemplada en la resolución de esa etapa, en lugar de en la resolución
completa del conversor ADC. Más aún, dado el valor de tensión de offset introducido
en serie al ADSC de la Fig.1.14 (que desplaza los niveles de decisión del gráfico hacia
la derecha) la salida digital siempre es menor o igual a dicho valor ideal. En tanto la
alinealidad ADSC no produzca un corrimiento de los niveles de decisión hacia la
izquierda en un valor mayor a esa cantidad.
Obsérvese que el residuo ideal de la Fig.1.13a siempre se encuentra entre ±Vr/4,
mientras que el rango de residuos ideales de la Fig.1.13b se ve comprendido entre –
Vr/2 y +Vr/4. Con etapas idénticas y una ganancia entre etapas de 2, el valor mínimo
del residuo ideal en la Fig.1.13b se puede apreciar en el extremo izquierdo del gráfico
,y se ubica sobre el límite inferior del rango de conversión de la siguiente etapa. No
obstante ello un corrimiento en los niveles de decisión no tiene efecto sobre el valor
de este residuo en el extremo izquierdo del gráfico. Mientras que una tensión de offset
o un error de ganancia interetapa (ver Fig.1.13b en rojo) puede causar que el valor del
residuo en el extremo izquierdo del gráfico sea llevado fuera del rango de conversión
de la siguiente etapa, causando pérdida de información.
36-136
20/07/2004
2.5. Optimización del Circuito
En esta sección se enumeran ciertas características que explican los beneficios
que se obtienen al adoptar nuevas técnicas en el diseño de los circuitos del ADSC y
SHA de cada etapa del conversor pipeline. Las optimizaciones son llevadas a cabo
con el objeto de reducir la susceptibilidad a fallas (errores mencionados con
anterioridad) y economizar el circuito, reduciendo el área ocupada y el consumo de
potencia, y además simplificando el diseño del layout. (por la repetición de bloques
iguales)
2.5.1. Utilizando un comparador extra en el ADSC
Los efectos del Offset interetapa y error de Ganancia, sobre la linealidad del
ADC vuelven a ser presentados a continuación. Un error de offset interetapa produce
un desplazamiento vertical del grafico completo del residuo, efecto equivalente al que
causaría la combinación de dos generadores de tensión de offset en la etapa
predecesora (uno en serie a la rama de entrada y el otro de polaridad opuesta en serie
la rama del ADSC). Si el rango de corrección no es excedido por la combinación del
offset y la alinealidad presentes en el ADSC, el efecto del offset en el ADSC es
eliminado por la corrección digital, quedando el offset presente en la señal de entrada
como único causante de corrimiento entre etapas.
Como se vio anteriormente, el rango de corrección es la cantidad de desplazamiento
del nivel de decisión que puede ser tolerada sin error. Y desde que el valor del residuo
en el extremo izquierdo (Fig. 1.13b) es independiente del desplazamiento del nivel de
decisión, el rango de corrección es independiente del valor del residuo en el extremo
izquierdo del gráfico.
El error de Ganancia interetapa escala verticalmente todo el gráfico del residuo, efecto
que puede verse en la Fig.1.15 en rojo. Para valores distintos de cero genera error en
la entrada analógica de la siguiente etapa. Si dicho error es superior en valor absoluto
a uno en 2r (r es la resolución restante de la etapa luego del error de ganancia inter
etapa), la corrección digital no puede eliminarlo. Asi todos los valores de residuo
(distintos de cero) estan afectados por el error de ganancia interetapa. Desde el punto
de vista del error de ganancia el limite del rango de conversión carece de significado.
Sin embargo se puede observar que sí tendría significado para grandes valores de
residuo, como puede verse en el caso del residuo ideal en el extremo izquierdo (Fig.
37-136
20/07/2004
1.13b en rojo, quedando fuera del rango de conversión ante un pequeño incremento en
la ganancia). En la práctica, el efecto causado por la alinealidad del ADSC desplaza el
valor del residuo en un mismo sentido respecto de los niveles de decisión afectados,
pero la magnitud del residuo en el extremo izquierdo es aún mayor que la de cualquier
otro residuo que este dentro del rango de corrección. El efecto causado por el error de
ganancia interetapa sobre la linealidad del ADC se ve afectado aún mas por el residuo
del extremo izquierdo del gráfico. Este a su vez incrementado tanto en el caso ideal
como en la practica. Además, la presencia un incremento en la magnitud del residuo
aumenta las posibilidades de oscilación del amplificador interetapa. (swing requirement)
Residuo
½ Vr = 1LSB
00
01
10 11
½LSB
Entrada
0
Retenida
-½LSB
-½ Vr = -1LSB
-Vr -¾Vr -¼Vr ¼Vr
Rango de
Conversión de
la siguiente
etapa
¾Vr +Vr
Fig.1.15. Residuo Vs Entrada Retenida utilizando un comparador extra.
Agregando un comparador extra al ADSC es posible reducir la magnitud máxima del
residuo ideal. En la Fig.1.15 se muestra el gráfico del residuo ideal resultante para el
ejemplo de 2 bits. (suponiendo comparadores con offset cero) El umbral del
comparador extra se ubica en –¾Vr, y este comparador no es utilizado para cambiar
las salidas digitales de la etapa, pero si para limitar la magnitud del residuo ideal a
Vr/4. Aunque aquí se muestra solamente para un ejemplo de 2 bits, es posible emplear
esta técnica para cualquier resolución de etapa. Un ejemplo es el ADC cíclico con un
comparador extra. La principal ventaja del uso de esta técnica es que reduce la
magnitud del residuo a ½ LSB (referido a la resolución de la etapa), reduciendo de
esta forma exigencias de compensación (swing requirement) a la salida del
amplificador interetapa además de la sensibilidad a errores de ganancia que se vio en
la Fig.1.13a. Los aparentes beneficios del uso de esta técnica se ven disminuidos,
nuevamente por la presencia de alinealidad en el ADSC, lo cual incrementa la
magnitud máxima del residuo cerca de los niveles de decisión involucrados.
Con lo hasta aquí planteado la lógica de corrección digital no está completamente
concluida, dado que no estaría corrigiendo códigos de salida con una suma ó no
38-136
20/07/2004
cambio ante su correspondiente código de entrada incorrecto. Además de la
desventaja que representa el requerir de un comparador más, la lógica de corrección
asociada es compleja y difícil de implementar. Debido a estos inconvenientes, en
lugar de utilizar un comparador más en el diseño del ADSC, se puede hacer utilizando
un comparador menos.
2.5.2. Utilizando un comparador menos en el ADSC
Dado que el rango de la corrección en la Fig.1.13(b) está entre ± ½ LSB (para una
etapa de 2 bits), y porque el mayor nivel de decisión es ½ LSB, (siendo de 2 bits a
fondo de escala), en la Fig.1.13(b) también se muestra que utilizar un comparador
superior en cada etapa (excepto en la última) no es necesario. Su eliminación provoca
la ocurrencia de un error corregible en la salida del ADSC sin corregir, para una
entrada a fondo de escala.
Rango de salida del ADSC
Residuo
½ Vr = 1LSB
00
01
10
½LSB
Entrada
0
Retenida
-½LSB
-½ Vr = -1LSB
-Vr
-¼Vr ¼Vr
Rango de
Conversión
de la
siguiente
etapa
+Vr
Fig. 1.16 Residuo Vs Entrada Retenida sin el comparador superior en el ADSC.
La característica ideal de transferencia de una etapa de 1.5bit se muestra en la
Fig.1.16. En este nuevo grafico los valores de tensión de offset en los comparadores
se asumen como cero.
Sin el comparador superior, la salida digital nunca llega a retornar el código 11 y la
magnitud del residuo continua aumentando para incrementos de las entradas por
encima de ¼ de la tensión de referencia. Dado que el residuo resultante en el lado
derecho de la Fig.1.16 tiene el mismo valor que el residuo del extremo izquierdo de
las Fig.1.13(b) y 1.16, la quita del comparador superior no produce un incremento en
el valor máximo del residuo. Para obtener el código 11 a la salida de esta etapa luego
de la corrección, la lógica de corrección debe hacer un incremento. Esto se produce
cuando en la siguiente etapa del pipeline se detecta que el valor de ¼ de tensión de
referencia ha sido superado. Para obtener el código 00 a la salida de esta etapa luego
de la corrección, puesto que la lógica de corrección no puede substraer, ésta debe no
39-136
20/07/2004
hacer nada. A fin de que pueda verificarse la capacidad de la lógica de corrección de
“no hacer nada” ó “sumar” simplemente se ensaya en el rango completo del ADC,
para la presencia de todos los códigos de salida. Todo esto simplifica el diseño de la
lógica de corrección digital.
Luego de remover el comparador superior, el rango de corrección queda comprendido
entre ±1/2 LSB (para una etapa de 2 bit), dado que los niveles de decisión resultantes
pueden moverse por encima de ese valor sin que el residuo resultante exceda el rango
de conversión de la siguiente etapa.
Finalmente, en este ejemplo, se necesitan solamente dos comparadores en cada etapa
excepto en la última. La última etapa necesita tres comparadores porque su salida no
puede corregirse. En general, si n es el número de salidas digitales por etapa, mientras
la última etapa necesita 2n – 1 comparadores, cada una de las demás etapas requiere 2n
– 2 comparadores. Como resultado la resolución de cada etapa excepto la última es
log2(2n - 1) bits. Si n = 2 bits, como en este ejemplo, la resolución por etapa es de
aproximadamente 1.5bit, quedando claro que agregar un comparador a un ADSC de 1
bit es lo mismo que remover un comparador de un ADSC de 2 bits. La disminución en
el numero de comparadores reduce el área total de chip y el consumo de potencia asi
como la carga capacitiva en cada SHA. Esto también reduce en uno la cantidad de
niveles necesarios en el DAC, lo cual es importante porque el DAC resultante es mas
rápido y menos sensible a todo tipo de errores en los componentes analógicos.
2.5.3. Resolución por Etapa optimizando potencia
A fin de reducir consumo de potencia, se investiga una solución de
compromiso entre la resolución por etapa y la cantidad de etapas.
El uso de la corrección digital permite eliminar los efectos no deseados causados por
imperfecciones en los comparadores, utilizando circuitos digitales de bajo consumo de
potencia y costo reducido.
En un conversor Pipeline convencional, cada etapa es idéntica al resto y tiene la
misma funcionalidad. Generalmente, el consumo de potencia total puede ser calculado
como el producto entre el consumo de una etapa y el número de etapas. La potencia
de una etapa se disipa mayoritariamente en los circuitos de: el sub-conversor
analógico digital (ADSC) y el amplificador de muestreo y retención (SHA).
40-136
20/07/2004
Para una velocidad de muestreo dada, cuando se incrementa la resolución por etapa, la
cantidad de etapas necesarias disminuye, con lo cual se reduce la cantidad de circuitos
SHA. Pero dado que cada etapa tiene que convertir mas bits, el circuito ADSC
requiere de una mayor cantidad de comparadores, con lo cual crece el consumo por
etapa.
CF=C
CF=C
CS=(2B-1)C
-
B
CS=(2 -1)C
+
+
ADSC
Etapa i
Etapa i+1
Fig.1.6. Estimación de consumo de potencia en un Conversor A/D pipeline (caso de B=2 bits por etapa)
También se requiere de una mayor ganancia interetapa que, conservando el ancho de
banda de los amplificadores interetapa, se traduce a un mayor consumo de potencia en
los circuitos SHA.
Cuando se disminuye la resolución por etapa, si bien el numero de etapas aumenta, la
cantidad de comparadores de los circuitos ADSC se ve fuertemente reducida, con lo
cual también se reduce la carga de los circuitos SHA. Y al requerirse de una menor
ganancia interetapa también se reduce significativamente la potencia de los circuitos
SHA.
En la Fig.1.6 se presenta un ejemplo de utilización del circuito SHA en una etapa de
un conversor pipeline cargado con la etapa siguiente. La carga capacitiva es 2B C+
CFlash, donde CFlash es la capacitancia de entrada del conversor A/D de la etapa
siguiente.
Conociendo la capacitancia de entrada y la ganancia interetapa de cada etapa, la
disipación de potencia por etapa se puede estimar como una función de la resolución
por etapa “B”. [GCmsThesis2.3]
Puesto que 2B es la ganancia interetapa, y sabiendo que el producto ganancia por
ancho de banda es constante en los amplificadores interetapa, se decide utilizar B=1
bit por etapa.
41-136
20/07/2004
2.5.4. Escalamiento de Capacitores en las etapas del Conversor Pipeline
En los conversores A/D pipeline, en cada etapa se disminuyen las exigencias de
resolución en la medida que se avanza a través del pipeline. Esto se debe a que las
exigencias de velocidad y precisión cada vez son menores. Por consiguiente, en lugar
de diseñar etapas idénticas, en la última parte del pipeline se puede reducir su tamaño.
Ietapa(n)/Ietapa(1)
1
0,5
Etapa(n)
1
2
3
4
5
6
7
8
Fig.1.7 Corriente de polarización de las etapas de un conversor pipeline normalizada respecto de la
primer etapa.
En [Europaper] se describe el “método de escalamiento de capacitores”, el cual tiene
como objeto reducir el consumo de potencia en las últimas etapas de un conversor
pipeline de alta resolución. El gráfico de la Fig.1.7 muestra el descenso de la
corriente de polarización en los amplificadores operacionales en cada etapa respecto
de la primera. Hacia las primeras etapas del pipeline los tamaños de los capacitores de
muestreo y de los amplificadores operacionales, son determinados por el piso de
ruido. Mientras que hacia el final del pipeline, el tiempo de establecimiento (settling
time) de los amplificadores operacionales es el factor determinante del tamaño de las
últimas etapas. Mediante el empleo de esta técnica es posible reducir hasta en un 50%
el consumo de potencia respecto del mismo diseño con etapas idénticas. Con el
propósito de llevar a cabo esto, es posible emplear capacitores más pequeños en el
diseño de los SHA de las últimas etapas. [Gray94]
42-136
20/07/2004
2.6. Especificaciones de cada circuito del conversor pipeline
Como primera instancia se definen las características principales del conversor
pipeline que se desea desarrollar, para caso particular de este trabajo entonces:
Rango de tensión para la señal de Entrada analógica (en
, entre –VSS/2 = -2.5v < V(in) < 2.5v = +VCC/2
valor pico)
Cantidad de etapas
5
Cantidad de bits por etapa
1,5
Frecuencia de conversión
2Msa/s
Cantidad de efectivos bits totales
5
A partir lo anterior mediante el programa “C” (AP1), se simula el funcionamiento en
cascada de un conversor pipeline (AP2), y asi se determinan las especificaciones que
cada circuito de cada etapa debe cumplimentar. (SHA, ADSC y DAC)
Los resultados obtenidos mediante las simulaciones se resumen en la siguiente tabla.
Bloque circuital
Error
SHA
1,87 < Ganancia < 2,04
-35mV < Voffset < 36mV
ADSC
Alinealidad: -½ LSB < ε < ½ LSB
DAC
Alinealidad: -½ LSB < ε < ½ LSB
Fig.1.8. Especificaciones de los bloques circuitales de una etapa
Estas especificaciones son el punto de partida para el diseño del circuito que se
procede en el siguiente capitulo.
43-136
20/07/2004
3. Tercera Parte: Diseño Circuital y Simulaciones
44-136
20/07/2004
3.1. Modelo Circuital de un Conversor A/D Pipeline de 6bits
Del mismo modo que ya se explicó en la sección 2.7.1, se presenta ahora como es
implementado el conversor pipeline en el presente trabajo.
Salidas Digitales
Entrada
analógica
SHA
A/D
A/D
D/A
D/A
ETAPA_0
A/D
D/A
SHA
SHA
ETAPA_1
A/D
ETAPA_2
A/D
D/A
SHA
SHA
ETAPA_3
2bit FLASH
Fig.1.17 Interconexión de las Etapas de un Conversor AD Pipeline
Un SHA inicial, es colocado previamente a la entrada analógica de la primer etapa.
Esto se hace con el objeto de preparar muestras de la señal analógica de entrada para
ser procesadas por la primer etapa (ETAPA_0).
Cada una de las primeras cuatro etapas (ETAPA_n) procesa la muestra, obteniendo las
salidas digitales (dos por etapa) y elaborando una señal de residuo, cuyo valor es
retenido para ser utilizado como señal analógica de entrada de la siguiente etapa.
La quinta y última etapa del conversor pipeline es diferente al resto. Sin necesidad de
elaborar un residuo, consiste solamente en un conversor flash de dos bits. (2bit_FLASH)
Todas las salidas digitales van conectadas a un circuito lógico de corrección digital,
que está tratado más adelante, el cual codifica las salidas digitales resultantes de las
etapas del conversor pipeline, eliminando las redundancias y obteniendo un código
binario.
En las secciones siguientes se analiza el comportamiento de forma global (bloques
fundamentales, 3.2 y 3.3) y luego de una etapa (detalle de la etapa, 3.3) del conversor
pipeline.
45-136
20/07/2004
3.2. Bloques Circuitales que componen el conversor pipeline
Conceptualmente se pueden distinguir cuatro bloques fundamentales que
componen un conversor A/D Pipeline, según:
Lógica de Corrección Digital
1.5
1.5
Resultado
de la
conversion
total
1.5
1.5
2
Núcleo del ADC
Entrada
Analógica
SHA
A/D
Φb
Φa
D/A
A/D
D/A
Φa
A/D
D/A
Φb
A/D
D/A
Φa
A/D
Φb
Generador de Fases de Reloj
Reloj
Principal
Fig.2.1.Diagrama en Bloques del Conversor A/D Pipeline
Generador de Fases de Reloj: A partir de un reloj principal, tiene la función de
generar “dos fases de clock” desplazadas 180°, las cuales serán distribuidas entre
las etapas pares e impares del conversor pipeline y el amplificador de muestreo y
retención inicial.
Núcleo del ADC: Comprende al Conjunto de Etapas del Conversor. Cada etapa del
conversor esta compuesta por un circuito ADSC (subconversor A/D) , un circuito
DAC (conversor D/A) y un circuito SHA (amplificador de muestreo y retención).
Lógica de Corrección Digital: Consiste en una lógica Combinacional y un conjunto
de registros de desplazamiento. La función de este bloque es procesar las salidas
digitales de todas las etapas, y, eliminando las redundancias, obtener la salida
digital del conversor pipeline en código binario.
SHA: El Amplificador de Muestreo y Retención colocado previo a la entrada del
Núcleo del ADC tiene como propósito es proveerle de muestras de la señal
analógica de entrada, en instantes de tiempo discreto.
46-136
20/07/2004
3.3. Detalle de los bloques que componen el conversor pipeline
En la presente sección se presenta la alternativa de diseño del conversor pipeline
que se implementa en el presente trabajo. Cada uno de los bloques fundamentales que
componen el conversor son detallados a continuación. Se realiza un diagrama en
bloques a partir de lo cual se diseña su esquema circuital. Mediante el cual se obtienen
los resultados de simulación spice, permitiendo comprobar su funcionamiento y
analizar las características de cada bloque por separado.
3.3.1. Circuito Amplificador de Muestreo y Retención
La implementación del SHA que es utilizada en el presente trabajo, es
comúnmente llamada “de Capacidades Conmutadas”. Su diseño esquemático se puede
ver en la Fig.2.12.
CLOCK
L1
Vin_ANALOG
L3
CMOS_KEY
CMOS_KEY
P2
Cs
Ch
1p
0.5p
CLOCK
NOT
SAMPLED_OUT
L2
Vref
-
CMOS_KEY
U5
+
0
OP_AMP
Descripción de conectores y componentes:
Vin_ANALOG
Vref
CLOCK
SAMPLED_OUT
Cs, Ch
L1, L2, L3
U5
Tensión de Entrada que es muestreada.
Tensión de Referencia. (normalmente* se conecta a 0v)
Señal de control del Muestreo ó la Retención según su estado.
Señal de salida muestreada y retenida.
Capacidades de Muestreo y Retención respectivamente.
Llaves que conmutan alternadamente entre Vin_ANALOG y Vref.
Amplificador Operacional.
Fig.2.12.Diseño Esquemático del SHA durante el “Muestreo”
El terminal (-) del Amplificador Operacional (OP_AMP) une las capacidades Cs y
Ch, y el terminal (+) es conectado a común. La señal de clock controla el accionar de
las llaves (CMOS_KEY) L1 y L3, y la señal clock invertido controla L2.
47-136
20/07/2004
Los esquemas de las Fig. 2.12 y 2.13 representan los dos estados posibles de el
circuito, llamados de aquí en adelante como “Muestreo” y “Retención”.
CLOCK
L1
Vin_ANALOG
L3
CMOS_KEY
CMOS_KEY
P2
Cs
Ch
1p
0.5p
CLOCK
NOT
SAMPLED_OUT
L2
Vref
U5
-
CMOS_KEY
+
OP_AMP
0
Fig.2.13 Diseño Esquemático del SHA durante la “Retención”
Como se ha dicho anteriormente, el Amplificador Operacional es el componente que
limita el performance del presente circuito.
Cada llave complementaria CMOS, consiste en un par de transistores
complementarios conectados en paralelo. El esquema puede verse en la Fig. 2.13.1.
La señal GATE controla las compuertas de los transistores. Cuando GATE está en
estado alto activa los transistores M6 y M5, la llave “se cierra”. Siendo que GATE en
estado bajo, provoca el corte de ambos transistores y con lo cual la llave “se abre”.
HI
P1
GATE
NOT
LO
L1
MbreakN
CMOS_KEY
M6
LO
IN
OUT
M5
HI
MbreakP
Fig. 2.13.1. Diseño esquemático de una llave CMOS. (CMOS_KEY)
48-136
20/07/2004
3.3.2. Funcionamiento del Amplificador de Muestreo y Retención
Utilizando el circuito de prueba que se presenta en la Fig. 2.14, es posible
generar a la salida muestras en intervalos de tiempo discreto, de la señal analógica de
entrada durante los ciclos de “retención” (magnitud muestreada a la salida), y 0v
durante el ciclo de “muestreo”.
SHA
Vin_ANALOG
PARAMETERS:
Cp = 400p
Wn = 50u
Vcc = 5
CK_P = 5
CK_N = -5
VAMPL = 2.5
TD = 0.1m
FREQ = 1000
Vref
V3
0
SAMPLED_OUT
CLOCK
V2
0
PER = 20u
PW = 10u
TF = 0
TR = 0
TD = 0
V2 = {CK_P}
V1 = {CK_N}
AC = 0
DC = 0
VIN_ANALOG (V3):
CLOCK (V2):
Vref (0v):
SAMPLED_OUT:
0
señal de entrada senoidal continua de amplitud 2,5v y frecuencia 1kHz.
generador de pulsos de ancho 0,25us, entre +/-5v y frecuencia 50kHz.
conectada a común para este ejemplo.
señal de salida en tiempo discreto.
Fig.2.14 Circuito de prueba para convertir una señal de tiempo continuo a tiempo discreto.
El nivel de la señal de control CLOCK determinará: en estado alto el ciclo de
muestreo y en estado bajo el ciclo de retención. Tras el siguiente análisis se demuestra
como el SHA gana dos bajo esta configuración.
Inicialmente la señal CLOCK en estado alto provoca la apertura de L2 y, el cierre de
L1 y L3 (ver Fig. 2.12). Cs se carga al valor de la tensión de entrada
(VIN_ANALOG). A través de L3 se descarga Ch quedando la salida
(SAMPLED_OUT) a 0v.
Bajo estas condiciones se tiene en Cs una carga ideal:
Qs = Cs ⋅ VIN
[18.1]
Siguiendo el gráfico de la Fig. 2.15 puede observase que, a los 110us la señal CLOCK
pasa a estado bajo, tras lo cual L1 y L3 se abren separando la entrada
(VIN_ANALOG) de Cs y liberando a Ch de modo que su carga fije el valor de la
49-136
20/07/2004
tensión de salida. Mientras que L2 se cierra conectando a Cs entre 0v (Vref) y la masa
virtual. Pasando de este modo al ciclo de retención.
Tras lo aquí dicho Cs se descarga a través de Ch, hasta que:
Qs = Qh
[18.2]
cargas acumuladas en las capacidades entrada (durante el ciclo de muestreo) y salida
(durante el ciclo de retención) respectivamente. Pudiendo expresarse como:
Cs ⋅ VIN = Ch ⋅ VOUT
[18.3]
Cs
Ch
[18.4]
se obtiene
VOUT = VIN
5.0V
0V
SAMPLE
SAMPLE
SAMPLE
HOLD
SAMPLE
SAMPLE
HOLD
HOLD
SAMPLE
HOLD
HOLD
SEL>>
-5.0V
V(SHA.CLOCK)
3.0V
2.0V
1.0V
0V
102us
110us
120us
130us
V(SHA.Vin_ANALOG)
V(SHA.SAMPLED_OUT)
140us
V(SHA.Vref)
150us
160us
170us
180us
190us
200us 207us
Time
Fig.2.15 Análisis transitorio de señales de entrada y salida entre los 102us y 207us
Que al ser la capacidad Cs (entrada-sampling) el doble que la capacidad Ch (salidahold), este proceso duplica a la salida la tensión de entrada, cuando se completa la
descarga de Cs a través de Ch.
Siguiendo el mismo gráfico del análisis transitorio, se observa que a los 120us la señal
CLOCK vuelve a cerrar las llaves L1 y L3 tras lo cual Cs queda conectado a Vin, Ch
es cortocircuitado y la salida se fija nuevamente a 0v. Se pasa al ciclo de muestreo.
Finalmente a los 130us vuelve a repetirse un proceso similar que lo sucedido al
principio del análisis (a los 110us).
En la sección 3.4.1 se incluye otro ejemplo. Similar al que es utilizado en el conversor
pipeline, con Vref≠0v. Esto da como resultado una suma ó resta de un valor fijo a la
50-136
20/07/2004
tensión retenida en el valor de la salida. Las ecuaciones que rigen el comportamiento
bajo esta condición (Vref≠0v) se presentan a continuación.
2.0V
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
SAMPLE
0V
HOLD
HOLD
HOLD
HOLD
-2.0V
HOLD
-3.0V
102us
110us
120us
V(SHA.Cs:1)-V(SHA.Cs:2)
130us
140us
V(SHA.Ch:1)-V(SHA.Ch:2)
150us
160us
170us
180us
190us
200us 207us
Time
Fig.2.16 Análisis de la capacidad de salida Ch y de entrada Cs.
Durante el ciclo de muestreo (Fig.2.12) Cs se carga a la tensión Vin, exactamente con
la misma Qs sin importar Vref.
Luego de producirse la transición del CLOCK, se ingresa al ciclo de retención. Tras la
apertura de L1 y el cierre de L2, Cs queda conectado entre Vref (ahora diferente de
0v) y 0v (masa virtual). L3 se abre, liberando Ch, a dicho instante descargado. Así, la
corriente fluye a través de Cs y Ch hasta que se cumpla que:
Cs ⋅ (VIN − VREF ) = Ch ⋅ VOUT
[18.5]
con lo cual ahora
VOUT =
Cs
(VIN − VREF )
Ch
[18.6]
es la nueva tensión de salida.
Si Vref=0v se comprueba la equivalencia entre [18.6] y [18.4].
Para el trabajo aquí realizado se aprovecha esta característica para restar el valor la
tensión de entrada retenido con el valor de la señal reconstituida. Para realizarlo se
conecta la salida del DAC a Vref. De esta forma se obtiene la señal de residuo para
ser procesada en la siguiente etapa.
51-136
20/07/2004
3.3.3. Circuito del Núcleo del conversor
El esquema circuital que conforma el núcleo del conversor Pipeline (ADC
Core) se presenta en la Fig.2.17. El diagrama en bloques detallado del ADC core, que
es desarrollado en el presente trabajo, es el de la Fig. 2.2. El ADC-Core está
compuesto por cinco etapas (PIPELINE_STAGE) iguales conectadas en cascada. Los
resultados de simulación spice de este bloque y los bloques que lo componen se
exponen en la sección 3.4.
Una fuente de tensión sinusoidal (V3) representa la señal analógica de entrada, la cual
deber ser muestreada antes de ingresar en la primer etapa. Un SHA es adicionado a la
entrada de la primer etapa con el fin de proporcionar muestras en instantes de tiempo
discreto al circuito. Dichas muestras serán procesadas en cada una de las etapas. Dado
que en el proceso de muestreo, previo a la primer etapa, no se adiciona ni resta al
valor de señal analógica de entrada muestreado, el voltaje de referencia (Vref) del
SHA de entrada es conectado directamente a 0v. La señal de control CLOCKA
controla el funcionamiento de dicho amplificador SHA. De esta modo la salida
SAMPLED_OUT provee sucesivas muestras retenidas de la señal analógica de
entrada en el instante que la señal CLOCKA pasa a estado bajo.
Común a todas las etapas del pipeline VR_P/4 y VR_N/4 son las fracciones positiva y
negativa de la “tensión de referencia” que determinarán la sensibilidad del los ADSCs
de cada una de las etapas. De esta forma el ADSC de cada etapa determina si una
señal es positiva ó negativa cuando la muestra de entrada (VIN_ANALOG) supera
por exceso a VR_P/4 ó por defecto a VR_N/4 respectivamente. Tras ello en cada una
de las etapas, las salidas digitales A y B de una etapa, nunca estarán ambas en estado
alto.
La fases de reloj CLOCKA ó CLOCKB controlan en proceso de las etapas del
pipeline impares e pares respectivamente. Entonces, mientras las etapas que son
controladas por la fase CLOCKA están reteniendo una muestra, las controladas por la
fase CLOCKB estan muestreando y procesando dicha muestra, y viceversa.
Un SHA es provisto a la salida de cada etapa con el fin de elaborar, retener y
amplificar el valor de la señal de residuo, que es procesada en la etapa siguiente.
Las cinco etapas sucesivas iguales que forman en ADC-Core, operan en forma
concurrente con muestras de la señal de entrada analógica (VEntrada_analógica) tomadas en
instantes de tiempo sucesivos. Cada una de estas produce las salidas digitales A y B,
52-136
20/07/2004
como resultado de la sub-conversión del ADSC, y elabora además el residuo que es
utilizado como señal analógica de entrada para la siguiente etapa.
A excepción de la última, cada etapa esta compuesta por un SubConversor Analógico
Digital (ADSC del tipo Flash de 1.5bits efectivos), un Conversor Digital Analógico
(DAC) y el Amplificador de Muestreo y Retención. (SHA)
La última etapa utiliza un ADC de 2bits y, al no tener que elaborar un residuo no
requiere ni de un circuito DAC ni de un SHA.
53-136
20/07/2004
SHA
PIPELINE_STAGE_4
RESIDUO
RESIDUO
A
B
A
B
A
B
A
RESIDUO
RESIDUO
PIPELINE_STAGE_5
VIN_ANALOG
VIN_ANALOG
VIN_ANALOG
VIN_ANALOG
VIN_ANALOG
VR_P/4
VR_P/4
VR_P/4
VR_P/4
VREF_P
VR_N/4
VR_N/4
VR_N/4
VR_N/4
VREF_N
CLOCK
CLOCK
CLOCK
CLOCK
SHA
V3
0
1.5BIT_ADC_STAGE2
1.5BIT_ADC_STAGE2
2BIT_ADC_LAST_STAGE
1.5BIT_ADC_STAGE2
¬LATCH
VAMPL = 2.5
FREQ = 10k
TD = 5us
1.5BIT_ADC_STAGE2
¬LATCH
SAMPLED_OUT
CLOCK
A
PIPELINE_STAGE_3
B
PIPELINE_STAGE_2
Vref
B
0
PIPELINE_STAGE_1
C
Vin_ANALOG
VR_P/4
VR_N/4
CLOCKA
CLOCKB
(a)
A
B
ADSC
VREF_P
VREF_N
VIN_ANALOG
(c)
(b)
DAC
U3
VR_N/4
VIN_ANALOG
A
DIGITAL_INPUT_A
B
DIGITAL_INPUT_B
¬LATCH
VR_P/4
ANALOG_OUTPUT
VREF_P
_A
1.5BIT_DAC
+
VIN_ANALOG
SHA
-
Comparador
U4
_B
+
1.5BIT_ADSC
Vin_ANALOG
Comparador
0
CLOCK
SAMPLED_OUT
Vref
RESIDUO
-
U5
_C
VREF_N
2x_SHA
+
Comparador
CLOCK
Fig.2.17. (a) Circuito Eléctrico del cuerpo del conversor Pipeline adicionando el amplificador de muestreo y retención a la entrada. (b) Circuito Eléctrico interior de una
Etapa del Pipeline. (PIPELINE_STAGE) (c) Circuito Eléctrico del interior de la última etapa del pipeline. (LAST_STAGE)
54-136
20/07/2004
1,5 bits
1,5 bits
1,5 bits
1,5 bits
2 bits
ETAPA 1
PIPELINE
ETAPA 2
PIPELINE
ETAPA 3
PIPELINE
ETAPA 4
PIPELINE
ETAPA 5
PIPELINE
(última)
Núcleo
ADC
A , B
A , B (Salidas Digitales)
ETAPA N
VEntrada_analógica
ÚLTIMA ETAPA
ADSC
1,5bit
DAC
{+Vr/2, -Vr/2, 0v}
1,5bit
VEntrada_analógica
SHAx2
RESIDUO
Amplificador de S/H InterEtapa
Fig.2.2.Diagrama en bloques del cuerpo y desarrollo de las etapas del conversor Pipeline.
55-136
ADC
(FLASH)
2-bit
20/07/2004
3.3.4. Circuito Lógico del Corrector Digital
No forma parte del objetivo del presente trabajo hacer una explicación
detallada del funcionamiento de este bloque, por lo cual se omiten las simulaciones
del mismo. No obstante ello se define una alternativa de diseño lógico y el propósito
que debe cumplir.
El circuito lógico de corrección consiste en una lógica digital que debe operar con las
salidas digitales obtenidas de cada unas de las etapas, eliminar las redundancias y
generar un código de salida en binario.
Lógica de corrección digital
LATCH
LATCH
LATCH
LATCH
Adder
Adder
LATCH
LATCH
LATCH
MSB
S[4]
MSB
Adder
LATCH
S[5]
LATCH
Adder
LATCH
Adder
S[3]
S[2]
S[1]
S[0]
ENCODER
ENCODER
ENCODER
ENCODER
ENCODER’
1.5 bit
INPUT
1.5 bit
INPUT
1.5 bit
INPUT
1.5 bit
INPUT
2 bit
INPUT
ENCODER:
Adder:
LATCH:
1.5 bit INPUT:
2 bit INPUT:
S[0 .. 5]:
Codificador en binario de 1.5 bits y 2 bits (ENCODER’).
Sumador binario de tres bits con carry de salida.
Memoria de dos bits.
Entradas provenientes de las salidas digitales primeras cuatro etapas.
Entradas provenientes de las salidas digitales de la última etapa.
Código de salida en binario. Descartando S[0] (LSB), redundante puede descartarse
quedando el resultado de la conversión de de 5 bits.
Fig.2.9.Diagrama en Bloques de la lógica de corrección digital.
56-136
LSB
20/07/2004
A
NAND
NAND3
B
Cout
Cin
20040518: Sumador binario
de 3 bits. con Carry de
entrada
- A B: Bits de entrada
- Cin: Carry de entrada
- S: Bit de salida de suma
- Cout: Carry de salida
NAND
NAND
A
U4
XOR
B
U5
XOR
Cin
S
Fig. 2.9.1 Circuito lógico del Sumador completo “ADDER” de 3 bits con Carry de salida.
En la Fig. 2.9.1 se muestra el diseño lógico del circuito empleado para la corrección digital de los
resultados parciales de las etapas del pipeline. En la Fig. 2.9 puede notarse una leve simplificación
de los circuitos “ADDER” que procesan los resultados correspondientes a la primera y última
etapa. Dado que en la primer etapa no es necesario calcular el carry de salida (solo el MSB) y en la
primera no se tiene carry de entrada, solo se suman de 2bits.
3.3.5. Descripción del funcionamiento del Corrector Digital
En primer lugar las salidas digitales provenientes de cada etapa (Código de salida [AB] ó
[ABC] en la última etapa) serán codificadas en binario para luego ser sumadas. Las salidas
digitales posibles y su codificación son resumidas en el siguiente cuadro:
Ø
Para cada etapa: (las salidas son AB)
Situación de la entrada analógica
VIN_ANALOG
> VREF_P
VREF_N <
VIN_ANALOG < VREF_P
VIN_ANALOG
< VREF_N
Código de salida [AB]
10
00
01
Codificación de salidas [A’ B’]
10
01
00
Ø
Para la última etapa: (tiene un comparador más, entonces las salidas son ABC)
Situación de la entrada analógica
Código de salida [ABC]
Codificación de salidas [A’ B’]
VIN_ANALOG
> VREF_P
111
VREF_P >
VIN_ANALOG
> 0v
011
VREF_N <
VIN_ANALOG
< 0v
001
11
10
01
VIN_ANALOG
< VREF_N
000
00
Fig.2.10.Codificación de las salidas digitales de las etapas en binario.
Un registro de desplazamiento (LATCH´s en cascada) almacena las salidas digitales codificadas
obtenidas de la etapa la cantidad de ciclos necesaria a fin que la última etapa procese esa muestra.
57-136
20/07/2004
Así las salidas digitales codificadas de la primer etapa serán almacenadas durante cuatro ciclos de
reloj, las de la segunda etapa tres ciclos de reloj, las de la tercera por dos ciclos, y asi
sucesivamente.
Finalmente, al obtener las salidas digitales codificadas de la última etapa se procede a la suma con
los valores almacenados que se habían obtenido de cada una de la etapas anteriores. Dicho proceso
se resume en el siguiente cuadro:
Tiempo
transcurrido
SALIDAS 5° ETAPA
SALIDAS 4° ETAPA
SALIDAS 3° ETAPA
SALIDAS 2° ETAPA
SALIDAS 1° ETAPA
CODIGO SALIDA
CORREGIDO
A’
A’
A’
B’
A’1+
C(B’1+A’2)
B’1+A’2+
C(B’2+A’3)
A’
B’
B’
B’2+A’3+ B’3 + A’4 +
C(B’3+A’4) C(B’4+A’5)
B’4+A’5
A’
B’
B’
0T
B’5
1T
2T
3T
4T
4T
Fig.2.11.Cuadro de valores obtenidos de cada etapa al momento de obtener los de la última etapa, indicando el tiempo
T transcurrido hasta ese instante
El bit menos significativo resultante de la última etapa (Fig.2.9 S[0]) puede ser descartado, por
redundancia, y de esta forma se obtiene un código de salida corregido de 5 bits.
58-136
20/07/2004
3.3.6. Circuito Generador de Fases de Clock
A partir de una señal de Clock Maestro (CLOCK), el circuito generador de fases de
clock, provee dos señales iguales (CLOCKA y CLOCKB) con una diferencia de fase de 180° .
Cada una de las señales obtenidas consiste en un tren de pulsos asimétrico con 3TH = TL. De este
modo se asegura que las señales de clock sean entre si no solapadas (nunca ambas en estado alto).
Dos latches conectados en serie de modo master-slave son alimentados con una misma fuente de
sincronismo (CLOCK) invertida una respecto de la otra. La salida del latch izquierdo
(LATCH0.OUTPUT) está conectada con la entrada del latch derecho (LATCH1.INPUT),
y un lazo de
retroalimentación conecta la salida invertida del latch derecho (LATCH1.INV_OUTPUT) con la
entrada del latch izquierdo (LATCH1.INPUT) , produciendo de este modo una conmutación continua
de las salidas.
HI
CLOCK_2
HI
LATCH0
LATCH1
VCC
OUTPUT
INPUT
INV_OUTPUT
CLOCK_3
CLOCK_1
VCC
CLOCK_0
OUTPUT
INPUT
INV_OUTPUT
VSS
LATCH
VSS
LATCH
HI
DLATCH
DLATCH
P3
LO
LO
CLOCK
NOT
LO
Fig.2.3.Circuito Secuencial base del Generador de Clock
De esta forma se obtienen cuatro señales simétricas, que se combinarán de forma útil para lograr
dos señales de clock no solapadas lo suficientemente alejadas.
CLOCKA
CLOCKB
HI
HI
U1
U2
CLOCK_0
CLOCK_2
CLOCK_1
NOR
NOR
CLOCK_3
LO
LO
Fig.2.4.Lógica Combinacional que permite generar las dos Fases de Clock.
Finalmente CLOCKA y CLOCKB serán las señales de reloj útiles para emplear en las etapas pares
e impares del Pipeline respectivamente.
59-136
20/07/2004
3.3.7. Funcionamiento del Circuito Generador de Fases de Clock
La primer parte del circuito (Fig.2.3) consiste en un par de flip-flops “D” conectados en
serie de modo Master-Slave.
Cada flip-flop “D” copia la entrada (INPUT) a la salida (OUTPUT) cuando la señal LATCH esta
en estado alto. Diferentemente, cuando la señal LATCH pasa a estado bajo, la salida es retenida,
independientemente del valor de la señal de entrada en ese instante.
Analizando el circuito de las Figs. 2.3, y siguiendo los gráficos de simulación de las Figs. 2.5 y 2.6
se examina el comportamiento del circuito antes y después de las primeras cuatro transiciones de la
señal de CLOCK.
5.0V
0V
-5.0V
V(CLOCK.LATCH0.OUTPUT)
5.0V
0V
SEL>>
-5.0V
V(CLOCK.LATCH0.INPUT)
5.0V
0V
-5.0V
0s
0.5us
V(CLOCK.CLOCK)
1.0us
1.5us
2.0us
2.5us
3.0us
3.5us
4.0us
4.5us
5.0us
Time
Fig.2.5.Comportamiento del LATCH izquierdo. Entrada / salida y señal de clock.
Inicialmente la señal CLOCK se encuentra en estado alto, las señales de entrada y salida del flipflop izquierdo (LATCH0.INPUT y LATCH0.OUTPUT) también en estado bajo.
En ese mismo instante, en el flip-flop derecho CLOCK en estado bajo permite que su entrada
(LATCH1.INPUT) esté en estado bajo y su salida (LATCH1.OUTPUT) en
estado alto.
Dada la situación anterior del flip-flop derecho, la primer conmutación de la señal de CLOCK
(aprox. a los 0,25us del gráfico) produce que su entrada (LATCH1.INPUT) sea copiada a la salida
(LATCH1.OUTPUT),
pasando de estado alto a bajo. Con la salida invertida del flip-flop derecho
(LATCH1.INV_OUTPUT),
conectada a la entrada del flip-flop izquierdo (LATCH0.INPUT), pasando de
estado bajo a alto, la salida del flip-flop izquierdo (LATCH0.OUTPUT) no se ve afectada, dado que la
señal CLOCK esta en estado bajo.
60-136
20/07/2004
5.0V
0V
-5.0V
V(CLOCK.LATCH1.OUTPUT)
5.0V
0V
-5.0V
V(CLOCK.LATCH1.INPUT)
5.0V
0V
SEL>>
-5.0V
0s
0.5us
1.0us
V(CLOCK.LATCH1.LATCH)
1.5us
2.0us
2.5us
3.0us
3.5us
4.0us
4.5us
5.0us
Time
Fig.2.6.Comportamiento del LATCH derecho. Entrada / salida y señal de clock negada.
A los 0,5us, la señal CLOCK pasa nuevamente a estado alto. Esto permite que el valor de la
entrada del flip-flop izquierdo (LATCH0.INPUT) sea copiado a la salida (LATCH0.OUTPUT) pasando
asi a estado alto. La misma esta conectada a la entrada del flip-flop derecho (LATCH1.INPUT). La
salida de este (LATCH1.OUTPUT) continua en estado bajo, siendo que no se ve afectada debido a que
CLOCK se encuentra ahora en estado bajo.
La siguiente transición de CLOCK, se produce a los 0,75us, de alto a bajo. Ésta hace que la entrada
del flip-flop derecho (LATCH1.INPUT), en estado alto, se copie a la salida (LATCH1.OUTPUT). Dado
que la salida invertida (LATCH1.INV_OUTPUT) se conecta con la entrada del flip-flop izquierdo
(LATCH0.INPUT) resulta pasar a estado bajo. Su salida (LATCH0.OUTPUT) no se ve afectada, puesto
que CLOCK se encuentra ahora en estado bajo.
Finalmente, al activarse la señal de CLOCK, (1us) resulta copiarse la entrada del flip-flop
izquierdo (LATCH0.INPUT) a su salida (LATCH0.OUTPUT) y la entrada del flip-flop derecho
(LATCH1.INPUT) pasando a estado bajo, sin que su salida (LATCH1.OUTPUT), en estado alto, se vea
afectada dado que CLOCK se encuentra en estado bajo.
Se llega de este modo al mismo estado que al comienzo del análisis, volviendo a repetir la misma
secuencia de estados.
61-136
20/07/2004
5.0V
0V
-5.0V
V(CLOCK.CLOCK_0)
5.0V
0V
-5.0V
V(CLOCK.CLOCK_1)
5.0V
0V
SEL>>
-5.0V
0s
0.5us
V(CLOCK.U1.OUT)
1.0us
1.5us
2.0us
2.5us
3.0us
3.5us
4.0us
4.5us
5.0us
Time
Fig.2.7.Análisis real de las señales que generan el clock fase A
Finalmente un NOR lógico entre las señales de salida de flip-flop´s consecutivos permite obtener
un tren de pulsos de un ciclo de ancho y separador tres.
5.0V
0V
-5.0V
V(CLOCK.CLOCK_2)
5.0V
0V
-5.0V
V(CLOCK.CLOCK_3)
5.0V
0V
SEL>>
-5.0V
0s
0.5us
V(CLOCK.CLOCKB)
1.0us
1.5us
2.0us
2.5us
3.0us
3.5us
4.0us
4.5us
5.0us
Time
Fig.2.8.Análisis real de las señales que generan el clock fase B
La misma función lógica entre las inversiones de las dos señales originadas del punto anterior,
dado que son simétricas se trata como si estuvieran 180° desplazadas de las anteriores, permite
obtener otro tren de pulsos que también tiene TL = 3 TH desplazado 180° respecto del tren de
pulsos anterior.
62-136
20/07/2004
3.4. Descripción del funcionamiento una etapa del conversor pipeline
En esta sección se analiza en funcionamiento de una etapa del conversor pipeline. En
adelante, los circuitos propuestos para la implementación del SHA, DAC y ADSC son sometidos,
cada uno por separado, a condiciones de prueba similares a las que lo estarían formando parte del
conversor pipeline. Este análisis permite comprobar sus características de funcionamiento.
Un SHA es colocado previo a la entrada de todo el proceso. Ganando dos muestrea y retiene
el valor la Señal Analógica de Entrada (VIN_ANALOG) durante los instantes de tiempo discreto
determinados por la señal CLOCKA.
La señal que ingresa a la primer etapa es entonces SAMPLED_OUT, resultado de muestrear y
retener valores continuos de la señal analógica de entrada en instantes de tiempo discreto definidos
por la señal CLOCK con una ganancia de 2.
Cada etapa (PIPELINE STAGE) toma la entrada analógica previamente muestreada, la analiza y
elabora la señal RESIDUO. Que consiste en restar Vcc (1LSB), ó sumar Vcc (1LSB), ó no hacer
nada a la señal de entrada VIN_ANALOG para ser nuevamente muestreada y retenida para la
siguiente etapa.
En su correspondencia con el análisis anterior, se activa la salida digital A ó se activa la salida
digital B ó ninguna de las dos, si el valor muestreado de la señal analógica de entrada supera por
exceso a VR_P/4, ó por defecto a VR_N/4 ó no supera a ninguna de las dos referencias.
Las dos salidas digitales resultantes de la sub-conversión, admiten bajo esta configuración tres
estados posibles, de modo que cada etapa provee entonces de 1,5bits efectivos.
Los gráficos de las Figs. 2.18a y b corresponden a los resultados de simulación SPICE que se
obtienen en la primer etapa (PIPELINE_STAGE_1) empleando el esquema circuital visto en la
Fig. 2.17.
63-136
20/07/2004
10V
0V
-10V
V(PIPELINE_STAGE0.A)
V(PIPELINE_STAGE0.B)
2.5V
0V
-2.5V
SEL>>
-5.0V
5us
10us
20us
V(PIPELINE_STAGE0.VIN_ANALOG)
30us
V(PIPELINE_STAGE0.RESIDUO)
Time
40us
50us
55us
Fig.2.18(a) Análisis transitorio de las señales de la primer etapa del cuerpo del conversor pipeline, durante el semiciclo
negativo de la señal de prueba senoidal de entrada.
10V
0V
-10V
V(PIPELINE_STAGE0.A)
V(PIPELINE_STAGE0.B)
5.0V
2.5V
0V
SEL>>
-2.5V
55us
60us
70us
V(PIPELINE_STAGE0.VIN_ANALOG)
80us
V(PIPELINE_STAGE0.RESIDUO)
Time
90us
100us
105us
Fig.2.18(b) Análisis transitorio de las señales de la primer etapa del cuerpo del conversor pipeline, durante el semiciclo
positivo de la señal de prueba senoidal de entrada.
El análisis del comportamiento de las señales de salida de la etapa, durante ambos semiciclos
positivo y negativo de la señal senoidal de entrada de prueba permite comprobar los tres estados de
las salidas digitales.
En el gráfico de simulación SPICE de la Fig. 2.18(a) se observa cuando el valor de la señal en el
semiciclo negativo de VIN_ANALOG atraviesa por debajo de los -1,25v (valor VR_N/4). Como
resultado se activa A y se suman 5v a la señal RESIDUO. De esta forma se logra efectivamente
que la señal RESIDUO abarque sin distorsión el rango completo de conversión de la siguiente
64-136
20/07/2004
etapa. En la Fig. 2.18(b) se muestra el mismo ejemplo durante el semiciclo positivo de la señal
senoidal de entrada.
Cinco etapas iguales son conectadas en cascada para realizar el mismo proceso, con el fin de
obtener, operando en forma concurrente con valores de las muestras en instantes de tiempo
diferentes, cinco pares (A,B) de señales digitales, resultados parciales de la conversión de cada
etapa.
Utilizando la lógica de corrección digital (3.3.4) se obtiene el código binario de 5-bits resultado
final de la conversión Pipeline.
65-136
20/07/2004
3.4.1. .Circuitos de prueba del SHA
En la presente sección se incluyen dos circuitos ejemplo de prueba que permiten comprobar
el funcionamiento del amplificador de muestreo y retención bajo condiciones de ensayo similares a
las que se lo somete formando parte del conversor pipeline. El esquema circuital detallado del
interior del bloque SHA es el mismo que fue analizado en las secciónes 3.3.1 y 3.3.2.
Ejemplo 1: Desempeño con Vref ≠ 0v
En la Fig.A.3.1 se presenta un circuito de prueba con un generador de señal senoidal de 5v,
10kHz conectado en la entrada analógica y la señal de Clock conectada a un generador de pulsos
de 2MSa (una posible frecuencia máxima de sampling para los propósitos del presente trabajo). De
este modo se generan a la salida 120 muestras para el intervalo de prueba de 60us. La señal Vref
es conectada a otro generador de pulsos de modo que, ajustando en amplitud y tiempo, produzca un
solo pulso de 2,5v de amplitud durante el intervalo de tiempo que la señal senoidal de entrada cruza
1,25v. Y viceversa para el semiciclo negativo (Fig. A.3.2b). De esta manera, se intenta imitar la
condición de trabajo del SHA como si estuviera trabajando en la primer etapa del conversor
pipeline para una señal de entrada senoidal.
SHA
Vin_ANALOG
Vref
V3
Vref
VAMPL = 5
TD = 0.01m
FREQ = 10000
0
0
PER = 60u
PW = 40u
TF = 1n
TR = 1n
TD = 15u
V2 = 2.5v
V1 = 0v
AC = 0
DC = 0
SAMPLED_OUT
CLOCK
V2
0
PER = 500n
PW = 250n
TF = 0
TR = 0
TD = 0
V2 = {CK_P}
V1 = {CK_N}
AC = 0
DC = 0
Fig. A3.1 Circuito de prueba del SHA
66-136
20/07/2004
5.0V
0V
-5.0V
10us
15us
V(SHA.Vin_ANALOG)
20us
25us
V(SHA.SAMPLED_OUT)
30us
V(SHA.Vref)
35us
40us
45us
50us
55us
60us
Time
Fig. A3.2a Respuesta transitoria del Circuito de prueba del SHA para un semiciclo positivo de una
senoide de 10kHz, 5Vp a 2MSa con Vref positiva
5.0V
0V
-5.0V
10us
15us
V(SHA.Vin_ANALOG)
20us
25us
V(SHA.SAMPLED_OUT)
30us
V(SHA.Vref)
35us
40us
45us
50us
55us
60us
Time
Fig. A3.2b Respuesta transitoria del Circuito de prueba del SHA para un semiciclo negativo de una
senoide de 10kHz, 5Vp a 2MSa con Vref negativa.
67-136
20/07/2004
Ejemplo 2: Como parte de una etapa del conversor A/D.
En el esquema a continuación el bloque 2x_SHA representa el SHA ubicado a la salida
dentro de la etapa del conversor pipeline. Su propósito es elaborar el residuo muestreando,
duplicando y reteniendo el valor resultante de la resta entre VIN_ANALOG y Vref, para la
siguiente etapa.
A
B
VR_P/4
ADSC
DAC
VR_N/4
A
DIGITAL_INPUT_A
B
DIGITAL_INPUT_B
VREF_P
VREF_N
VIN_ANALOG
ANALOG_OUTPUT
VIN_ANALOG
¬LATCH
1.5BIT_DAC
1.5BIT_ADSC
SHA
SAMPLED_OUT
RESIDUO
Vref
Vin_ANALOG
CLOCK
2x_SHA
CLOCK
SHA.VIN_ANALOG: señal de entrada continua retenida con la anterior fase de clock.
SHA.CLOCK:
fase de reloj para esa etapa.
SHA.Vref:
conectada a la salida del DAC, pudiendo ser 0v, +2,5v ó -2,5v.
SHA.SAMPLED_OUT:
señal de salida residuo.
4.0V
2.0V
0V
-2.0V
-4.0V
5us
6us
7us
V(PIPELINE_STAGE0.SHA.VIN_ANALOG)
8us
9us
10us
11us
12us
13us
V(PIPELINE_STAGE0.SHA.VREF)
V(PIPELINE_STAGE0.SHA.SAMPLED_OUT)
Time
14us
15us
Fig.A3.3 Comportamiento Transitorio del SHA de salida en la primer etapa de un conversor A/D Pipeline con Vref en
0v y –2.5v.
Resulta de utilidad poder comparar los resultados de simluación del gráfico de la Fig. A3.3, contra
los gráficos de simulación de la Fig.2.15.
68-136
20/07/2004
3.4.2. Circuito del ADSC
El ADSC está ubicado a la entrada dentro de cada etapa del conversor pipeline. Es un
conversor A/D Flash de 1.5bit (dos comparadores).
A
B
VR_P/4
ADSC
DAC
VR_N/4
VREF_P
VREF_N
VIN_ANALOG
A
DIGITAL_INPUT_A
B
DIGITAL_INPUT_B
VIN_ANALOG
¬LATCH
ANALOG_OUTPUT
1.5BIT_DAC
1.5BIT_ADSC
SHA
RESIDUO
SAMPLED_OUT
Vref
Vin_ANALOG
CLOCK
2x_SHA
CLOCK
¬LATCH
(a)
REFERENCIAS
U3, U4:
VREF_P, _N:
VIN_ANALOG:
A, B:
¬LATCH:
Comparadores CMOS.
Tensiones de referencia positiva y negativa.
Señal de entrada analógica.
Señales de salida Digitales.
Señal de activación de los comparadores (latch).
U3
VREF_P
A
+
(b)
Comparador
VIN_ANALOG
-
U4
B
VREF_N
+
Comparador
Fig.2.20 Diagrama eléctrico del conversor flash de un bit y medio. (a) Formando parte de la etapa del conversor
Pipeline. (b) Circuito eléctrico interno.
La entrada analógica esta conectada a ambos comparadores. Cada una de las tensiones de
referencia esta conectada una fracción de la tensión de alimentación positiva y negativa
respectivamente. De esta forma, tal como se explicó en la sección 3.3.3, las salidas digitales A y B,
resultado de la sub-conversión A/D, se activan en forma NO simultánea. La señal ¬LATCH
controla la activación de las salidas de los comparadores.
69-136
20/07/2004
Un diseño similar al citado se muestra en la Fig. 2.17(c). Utilizando tres comparadores es capaz de
detectar 4 “zonas” (2B estados) donde se encuentra el valor de la señal analógica. Se trata entonces
de un conversor flash de 2 bits (B=2, empleado en la última etapa).
Análogamente, si se utiliza un solo comparador el dispositivo sería capaz de distinguir entre 2
“zonas” posibles, siendo entonces un conversor de 1 bit. En conclusión el empleo de dos
comparadores (un comprador más que en caso de 1bit y uno menos que en el caso de 2bit) forma
un conversor FLASH de 1,5bit (3 estados posibles ó 3 zonas de distinción).
Los comparadores utilizados para el diseño del ADSC son del tipo cascode plegado. El
disponer de una alimentación entre –Vss y Vcc, permite el empleo de transistores de entrada
NMOS.
HI
HI
W = 10u
M10
MbreakP
M9
MbreakP
BIAS8
HI
W = 10u
HI
M7
W = 10u
M8
MbreakP
MbreakP
BIAS9
W = 10u
OutP
N
OutN
¬LATCH
M2
M1
P
LO
MbreakN
W = 10u
M6 MbreakN
MbreakN
W = 10u
W = 10u
LO
M4
MbreakN
M3
MbreakN
W = 10u
W = 10u
LO
M5
MbreakN
W = 10u
LO
BIAS10
LO
Fig.2.21 Diseño esquemático del comparador CMOS con LATCH.
M1, M2 forman un par diferencial acoplado por fuente y alimentado por M3. M10, M9, M7, M8
proveen corriente al resto del circuito. Y M4 y M5 componen un latch controlado por M6, que
actúa como llave.
Los valores de las tensiones de BIAS8, BIAS9, BIAS10 establecen la polarización del circuito.
De las dos salidas en modo diferencial que provee el diseño, solo OutP es utilizada en el presente
trabajo.
70-136
20/07/2004
3.4.3. Descripción del funcionamiento del ADSC
En la Fig.2.22 se presenta un circuito de prueba del ADSC, mediante el cual se logra
comprobar los tres estados de las salidas digitales del circuito. El interior del bloque
1.5BIT_ADSC es el mismo que se detalla en la Fig.2.20b.
Un primer generador de pulsos V4 es utilizado como señal de control ¬LATCH. Al pasar a estado
bajo, activa las salidas de comparadores A y B, cada un intervalo de 2us. Un segundo generador de
pulsos V5 es empleado para obtener una rampa desde +5v a –5v en un intervalo de 10us a 50us
(0,25v/us). Las fuentes de tensión Vr1 y Vr2, de +2,5v y –2,5v, sirven como tensión de referencia
positiva y negativa respectivamente.
V4
PARAMETERS:
Vref = 2.5v
Vcc = 5v
Vdd = 5v
Cp = 1p
Wp = 5u
0
VIN_ANALOG
V5
0
V1 = 5v
V2 = -5v
DC = 0
TD = 10us
TF = 10us
PW = 0
PER = 50us
TR = 40us
¬LATCH
1.5BIT_ADSC
V1 = 5v
V2 = -5
DC = 0
TD = 2u
TF = 0
PW = 1us
PER = 2us
TR = 0
A
DIGITAL_OUT_A
B
DIGITAL_OUT_B
VREF_P
Vr1
VREF_N
{Vref}
0
ADSC
Vr2
{Vref}
Fig.2.22 Circuito de prueba del ADSC.
Mientras la señal ¬LATCH permanece en estado alto, ambas salidas A y B se encuentran en estado
bajo.
8.0V
4.0V
0V
-4.0V
-8.0V
5us
10us
15us
V(1.5BIT_ADSC.VIN_ANALOG)
20us
25us
30us
V(1.5BIT_ADSC.VREF_N)
V(1.5BIT_ADSC.VREF_P)
Time
35us
40us
V(DIGITAL_OUT_A)
45us
V(DIGITAL_OUT_B)
50us
55us
Fig.2.23 Comportamiento de las salidas del ADSC utilizando una tensión de entrada de prueba que varia linealmente
de –5v a +5v.
71-136
20/07/2004
En el instante en que la señal ¬LATCH pasa a estado bajo, las salidas de los comparadores
cambian su estado. Dependiendo del valor de la señal de entrada (VIN_ANALOG), si éste se
encuentra sobre, entre ó debajo del rango comprendido por las dos tensiones de referencia
(VREF_P y VREF_N), A, B ó ninguna de las dos salidas digitales son activadas, obtienendose los
tres estados de las salidas.
Haciendo un seguimiento desde la parte izquierda del gráfico de la Fig. 2.23 puede observarse que
durante los primeros 20us el valor de la señal de entrada analógica está por encima del valor de
referencia positiva. Tras lo cual sólo el comparador superior activa su salida (A), dado que V(+) >
V(-).
Luego, en el intervalo entre los 20us y 40us, el valor de la señal de entrada analógica se encuentra
comprendido entre ambos niveles de tensión de referencia. En este caso, en ambos comparadores
se da la situación V(+) < V(-), por lo tanto ambas salidas (A y B) permanecerán inactivas.
Finalmente transcurridos los 40us, (extremo derecho del gráfico) el valor de la señal
VIN_ANALOG cruza por debajo de VREF_N. En el comparador inferior se da la situación V(+) >
V(-), por lo cual se activa su salida (B).
En el Anexo 3 se exponen los resultados de un análisis de sensibilidad de los comparadores
utilizados. Se obtiene el valor de tensión diferencial mínimo que es necesario colocar entre los
terminales de entrada para producir una correcta conmutación. Este valor de sensibilidad influye
notablemente en el performance de los conversores A/D flash, no siendo un factor tan determinante
en el caso de las arquitecturas pipeline.
72-136
20/07/2004
3.4.4. Circuito del DAC
El DAC se ubica entre la salida del ADSC y la entrada de referencia del SHA del interior
de cada etapa. El propósito del DAC en el presente trabajo, consiste en generar la señal analógica
(ANALOG_OUT) cuantizada en 1,5bit, que es restada a la señal analógica de entrada
(VIN_ANALOG) para elaborar el residuo.
A
B
VR_P/4
ADSC
DAC
VR_N/4
A
DIGITAL_INPUT_A
B
DIGITAL_INPUT_B
VREF_P
VREF_N
VIN_ANALOG
ANALOG_OUTPUT
VIN_ANALOG
1.5BIT_DAC
¬LATCH
SHA
1.5BIT_ADSC
SAMPLED_OUT
RESIDUO
Vref
Vin_ANALOG
CLOCK
2x_SHA
CLOCK
HI
RC
P3
DIGITAL_INPUT_A
A
DIGITAL_INPUT_B
0
M2
NOT
C3
15f
B
B
C1
10f
HI
MbreakP
W = 10u
A
10
RA
20
ANALOG_OUTPUT
M1
0
MbreakN
W = 10u
R18
50k
LO
C2
10f
RB
0
10
LO
Fig.2.24 Circuito eléctrico interno del conversor D/A, utilizado para la construcción de Vref.
M1 y M2 actúan como llaves, controladas por las dos entradas digitales DIGITAL_INPUT A y B.
Que según este activo A ó B ó ninguna de las dos señales de control, la salida (ANALOG_OUT) es
conectada a HI/2 , LO/2 ó 0v respectivamente. Logrando como resultado una “reconstrucción” de
la señal analógica cuantizada en 1,5bit. P3 produce la negación de la entrada digital B, con el fin de
que la llave PMOS M2 se abra cuando B se encuentre en estado bajo y sea cerrada cuando B sea
llevada a estado alto.
73-136
20/07/2004
3.4.5. Descripción del funcionamiento del DAC
Utilizando el circuito de prueba de la Fig. 2.25(a), se simula el funcionamiento del DAC
para los tres estados posibles de las entradas digitales. Dado que se trata de un conversor D/A de
1,5bits. Los tres estados admitidos a la entrada del DAC (01 00 10) determinan los tres valores de
la señal de salida analógica. (ANALOG_OUT).
DAC
DIGITAL_INPUT_B
DIGITAL_INPUT_A
C1
ANALOG_OUTPUT
100f
Vck1
Vck2
0
1.5BIT_DAC
DC = 0
V2 = 5
V1 = -5
PER = 500ns
PW = 125ns
AC = 0
TD = 0ns
0
0
DC = 0
V2 = 5
V1 = -5
PER = 500ns
PW = 125ns
AC = 0
TD = 250ns
Vck1 y Vck2:
C1:
entradas digitales capaces de producir los tres valores de salida
analógica para los tres estados de entrada digital admitidos.
capacidad de salida que representa las condiciones de carga impuesta (por
la entrada del amplificador de muestreo y retención al cual es conectado)
en el presente trabajo.
5.0V
0V
-5.0V
0.1us
0.5us
1.0us
1.5us
2.0us
2.5us
V(DAC.DIGITAL_INPUT_A)
V(DAC.DIGITAL_INPUT_B)
V(DAC.ANALOG_OUTPUT)
Time
3.0us
3.5us
4.0us
4.5us
5.0us
Fig.2.25 (a) [arriba] Circuito de prueba que representa las condiciones de ensayo del DAC. (b) [abajo] Resultados de
simulación para un análisis transitorio del DAC.
Analizando el esquema detallado del interior del DAC, ( Fig.2.24(b)) conjuntamente con el gráfico
de los resultados de simulación (Fig.2.25(b)), puede observarse que P3 hace que las entradas
digitales A y B nunca produzcan el encendido simultáneo de M1 y M2.
Si se activa A (DIGITAL_INPUT_A) se enciende M2, de este modo el nodo de salida (ANALOG_OUT)
queda conectado a +Vcc/2. (divisor resistivo entre RC y RA). De forma similar si se activa B
(DIGITAL_INPUT_B)
se enciende M1, como resultado el nodo de salida (ANALOG_OUT) queda
74-136
20/07/2004
conectado a -Vcc/2. (divisor resistivo entre RC y RB). Cuando ambas entradas digitales A y B en
estado bajo, a través de R18 se asegura la descarga del nodo de salida. Dado que en este caso
ambos transistores M1 y M2 se encuentran simultáneamente apagados, esta resistencia (de alto
valor) es una vía rápida para la descarga de posibles cargas parásitas del nodo de salida.
Los pequeños capacitores C1, C2 y C3 (~fF), conectados en la salida analógica y las tensiones de
referencia, a masa, permiten mejorar el transitorio durante la conmutación. (glitch)
75-136
20/07/2004
4. Cuarta Parte: Diseño del Layout
76-136
20/07/2004
4.1. Diseño de Layout.
En esta sección se presentan el detalle del diseño de los Layout de los principales bloques que
componen al Conversor Pipeline.
Se comienza con el detalle de los bloques (celdas) fundamentales, luego los diseños del ADSC,
DAC, SHA, CKGEN y BIAS, hasta que finalmente se expone el diseño del cuerpo del conversor
completo (CORE). Los mismos fueron realizados a partir de celdas de los bloques fundamentales.
Las celdas se utilizan para armar estructuras cada vez mas complejas. Asi sucesivamente hasta
armar el diseño completo del conversor pipeline.
La nomenclatura utilizada para designar cada celda - layout esta compuesta por NOMBRE-XX
(circuito - versión final del diseño).
Basado en un proceso de 2µm con doble poli silicio y doble metal. El diseño del layout completo
ocupa un área de chip de 2 x 2 mm.
Todos los Layout aquí presentados comprueban las reglas de diseño (DRC) según el proceso
MOSIS: Orbit 2U SCNA.
Mediante el uso de la herramienta LVS (Layout Vs Schematic) se verifica la topología de los
NetLists extraídos de cada layout (extract netlist) con los NetLists creados a partir de los diseños
esquemáticos de los circuitos empleados anteriormente para la simulación SPICE.
77-136
20/07/2004
4.1.1. Llave CMOS complementaria
Fig.3.1.Diseño del layout MKEY-02.TDB
En el ejemplo de la Figura se visualiza una de las llaves CMOS empleada en el diseño de la celda
del SHA. (se muestra la parte de entrada más arriba)
La misma celda es también empleada para el layout del DAC.
78-136
20/07/2004
4.1.2. Generador de polarización (BIAS)
Fig.3.2. Diseño del layout BIAS-06.TDB
Se muestra la ubicación del circuito de polarización dentro del layout completo del conversor
pipeline.
79-136
20/07/2004
4.1.3. Comparador CMOS
Fig.3.3. Diseño del layout COMP-07.TDB
Se muestra el diseño de la celda de uno de los dos comparadores, que forman parte del layout del
circuito ADSC.
80-136
20/07/2004
4.1.4. Amplificador Operacional (con compensación)
Se maximiza la visión del extremo derecho del gráfico del layout de la celda del SHA, con el
objeto de mostrar en detalle el diseño del amplificador operacional empleado.
Fig.3.4. Diseño del layout OPAMP-06.TDB
Una celda p-well brinda una resistividad del orden de 10kΩ/µm2, esto posibilita la realización de la
resistencia de compensación en la menor área. Tanto el capacitor de compensación, como las
restantes capacidades en otras celdas, estan implementados utilizando poly1/poly2 lo cual brinda
una capacidad del orden de 0,3/0,4fF/µm2.
81-136
20/07/2004
4.1.5. Compuerta NOR de 2 entradas
En el presente esquema se maximiza la visión en detalle uno de los dos circuitos lógicos NOR
empleados en el diseño del circuito generador de fases de CLOCK.
Fig.3.5. Diseño del layout NOR-02.TDB
82-136
20/07/2004
4.1.6. D-Latch
También en el diseño del generador de fases de CLOCK se utilizan dos circuitos D-LATCH. Se
maximiza la visión del de la derecha en el detalle de la Fig.
Fig.3.6. Diseño del layout LATCH-03.TDB
83-136
20/07/2004
4.1.7. Amplificador de Muestreo y Retención (SHA)
Fig.3.7. Diseño del layout SHA.TDB
84-136
20/07/2004
4.1.8. Conversor A/D de 2 bits
Fig.3.8. Diseño del layout ADCFLASH.CELL
Se detalla la celda del único ADC Flash de 2 bits del sistema. Empleado a la salida de la última etapa del pipeline, está compuesto por 3
comparadores.
85-136
20/07/2004
4.1.9. Generador de fases de Clock
Fig.3.9. Diseño del layout CKGEN.TDB
86-136
20/07/2004
4.1.10. SubConversor A/D de 1.5bit (ADSC)
Fig.3.10. Diseño del layout ADSC_06.TDB
87-136
20/07/2004
4.1.11. Conversor D/A (DAC)
Fig.3.11. Diseño del layout DAC-03.TDB
88-136
20/07/2004
4.1.12. Conversor A/D Pipeline de 5 etapas completo
Fig.3.12. Diseño del layout CORE_08.TDB
89-136
20/07/2004
5. Conclusiones
90-136
20/07/2004
En el presente trabajo de tesis se ha logrado definir un conjunto de tareas a llevar a
cabo para completar el desarrollo de un circuito integrado. Las mismas dieron la
posibilidad de realizar el análisis y diseño completo de un conversor analógico digital
de arquitectura pipeline. Este conjunto de pautas puede ser tomado como un camino a
seguir para diseñar de cualquier otro circuito integrado analógico/ digital mixto de
diversos propósitos.
A nivel teórico, en primer lugar se logro comprender las necesidades actuales y futuras
en el campo del procesamiento de señales analógicas, asi como cubrir las cada vez
mayores exigencias de velocidad y consumo de potencia que deben cubrir los circuitos
integrados.
El desarrollo de un programa “C” que simula las operaciones del circuito, ha permitido
realizar un primer análisis de la funcionalidad y definir el conjunto de especificaciones
para el posterior diseño del circuito.
La separación en bloques de cada sub-circuito dio la posibilidad de dividir el problema
en partes mas sencillas, a fin de probar cada bloque por separado comprobando su
funcionamiento y analizando sus características por separado. (diseño Top-Down)
Asi, una vez probado cada uno de los bloques funcionales, se fueron acoplando para
formar bloques cada vez más complejos, pero de fácil prueba y análisis dado que los
componentes utilizados fueron probados individualmente por separado. Aquí se pudo
elaborar gráficos de respuesta del circuito general y de cada sub-circuito, comparando
con los resultados anteriormente obtenidos mediante el primer análisis que se había
realizado utilizando el programa “C”.
De forma similar a la que se trabajo durante el diseño esquemático de cada uno de los
bloques funcionales, se procedió al diseño de layout. Del mismo modo, esta técnica
permitió realizar las verificaciones de reglas de diseño y la posterior comparación
topológica contra los diseños esquemáticos anteriormente realizados y probados de
cada bloque individual por separado. Finalmente tras el ensamble general de todos los
bloques funcionales se obtiene el diseño del layout completo, también verificado y
comparado topológicamente en forma satisfactoria.
En la práctica, diversas características pueden ser mejoradas al presente trabajo. Tres
aspectos de cierta relevancia que lo optimizan son citados a continuación.
91-136
20/07/2004
5.1. Baja del voltaje de operación
Utilizando una arquitectura del tipo totalmente diferencial, es posible lograr una mayor
inmunidad al ruido, a las señales de modo común, variaciones de temperatura, etc.
Los circuitos integrados actuales dedicados al procesamiento de señales utilizan
diseños del tipo LVDS (Low Voltaje Differential Signalling), que es señalización
diferencial de muy bajo voltaje. Esto es una tendencia, permitida por la baja en el
voltaje de operación de los transistores MOS utilizados. Contrariamente a lo expuesto
en el presente trabajo, realizado totalmente en vía simple (no diferencial) y con alto
voltaje de operación (+/-5v), se hizo de esta forma de modo de simplificar (single
ended). Logrando que el lector tengo una mejor comprensión del funcionamiento
básico del circuito. No obstante ello, para una posterior implementación práctica el
desarrollo esquemático elaborado serviría como “modelo base” para un diseño
diferencial. Y además, en conjunto con una actualización de los modelos de los
transistores utilizados permitiría una disminución del voltaje de operación y
consecuentemente del consumo de potencia.
5.2. Mayor resolución
Como se había planteado en un principio, uno de los puntos sobresalientes de la
arquitectura pipeline, es la pequeña área de chip ocupada en relación a la cantidad de
bits que se desean obtener de resolución.
Cabe aclarar que en el presente trabajo un diseño de 5 bits es más que suficiente para
comprender el funcionamiento y analizar las características. No obstante al tener tan
solo cinco etapas, no se percibe el beneficio de tener una reducción sustancial en el
área de chip ocupada respecto del caso que se hubiese utilizado una arquitectura del
tipo Full flash, la cual hubiese utilizado tan solo 32 comparadores.
Sin embargo, tal como se analizo en la primera parte del trabajo, basta con agregar una
etapa al conversor pipeline por cada bit que se desea aumentar su resolución, lo cual
incrementa linealmente el área de chip ocupada una parte (una etapa = un quito para un
conversor de 5bit) mientras que en el caso de tratarse de uno del tipo flash el área de
chip ocupada se duplica.
92-136
20/07/2004
En la práctica se recomienda la utilización de arquitecturas del tipo pipeline para
resoluciones de 8 a 10 bits. En cuyo caso sí se percibe notablemente el beneficio de la
reducción del área de chip ocupada respecto de las arquitecturas flash.
5.3. DAC con capacitores
La generación de voltajes de referencia puede implementarse utilizando arreglos de
resistencias (R-DAC) ó capacitores (C-DAC). Más aun hasta puede utilizarse un
mismo arreglo de capacitores, para alimentar todas las tensiones de referencia.
En la práctica, el nivel de ruido térmico determina la posibilidad del empleo de
arreglos de capacitores (C-DAC, en lugar de resistencias R-DAC) para generar los
voltajes de referencia. De este modo se obtendría el beneficio de un menor consumo
de potencia en el DAC, dada la ausencia de la corriente continua de polarización que
tienen los arreglos de resistencias.
Dado el alto voltaje de operación del presente trabajo, la no importancia del consumo
de potencia para la comprensión del funcionamiento, se han empleado resistencias de
poli-silicio para generar los voltajes de referencia de los DAC.
Para una posterior implementación práctica, si se logra bajar el voltaje de operación (lo
cual reduciría el consumo de potencia, consecuentemente menor nivel de ruido
térmico), se sugiere el empleo de capacitores para generar los voltajes de referencia.
(C-DAC)
93-136
20/07/2004
Anexo 1: Código en “C” que simula el funcionamiento de un
Conversor Pipeline
/*
#
# 6600.Pipelined ADC de 1.5 bit por etapa
*
* Nombre del Archivo: ADC.c
* Fecha última revision: 2002-Dec-03
* Descripción: Análisis de comportamiento por bloques
#
# 2002-10-26 Compila Ok en la Pentium 100, RedHat 5.2. El problema estaba en
# el MakeFile, que no generaba el codigo objeto.
# Corrijo el bug del for, queda la prueba de un barrido de 0 a pi Ok.
# Falta reemplazar %d en printf por el correspondiente al formato double
2002-10-27 Funciona con la funcion Seno, se incorporan los define VREF_P
VREF_N.
Se agrega la apertura de un archivo de datos tipo double (8 bytes).
2002-10-28 Modulo de Proceso UniEtapa listo.
Agregado de defines para 3 ETAPAS con 1 bit por etapa, GAIN y SENSE
Encabezados y Datos dinamicos para multietapa funcionando Ok.
2002-10-29 Primitivas de Codificacion Terminadas.
Duda acerca de la disposicion correcta de los comparadores
en la ultima etapa.
Se sugiere hacer todas las etapas iguales, no se obtienen mayores ventajas
al colocar un comparador mas en la ultima etapa => hacemos todas las etapas
iguales.
2002-11-05 Se descarta el uso de ProcesarUltimaEtapa y CodificarUltimaEtapa
2002-11-08 Se modifica ProcesarEtapa para que el residuo lo calcule restando
Vref * SENSE / 2 (Esto Coincide con Lewis92.Fig.5).
ProcesarUltimaEtapa y CodificarUltimaEtapa estan siendo utilizadas.
2002-11-13 Pruebas a realizar, Etapa Analogica Vs Etapa Digitalizada
a. con Variaciones en la Ganancia interEtapa (GAIN)
b. con diferentes fracciones de Vref (SENSE)
c. variando Offsets (a la entrada analogica y a la salida de los SHA
d. ultima etapa igual y diferente al resto (con o sin un comparador mas)
2002-11-27 Problema del código de Salida Erróneo, se ve con De la Plaza
Salida31.xls se indica analizar caso particular para el peor error, por ejemplo,
para Vin analógica de 1.0v.
Preparar programa para que procese un archivo de muestras de entrada.
20:32 Funciona con un archivo de entrada pasado como parámetro con datos del
tipo double. (generado con Generar.c)
2002-11-28 Cambiar todas las variables de operaciones lógicas por tipo int
2002-11-29 Todas las variables lógicas funcionando como int. Soporta
archivos y parámetros de entrada. Además de solucion de bugs en el proceso
Digital.
Funciona de Maravillas, aún con 10 etapas. Sumtorias de Error orden de E-03v.
Para modelizar las variaciones, parametrizar con random functions.
21:23 Simulaciones con Vr/4, Lin82 .. 90.
Con offset máximo = 100mV y desvio de ganancia .1, ambos ctes para todas
las etapas, se obtienen resultados, de error sumado mayor.
¿Es necesario recalcular el offset y el error en la ganancia para cada
etapa del Pipeline?
La última etapa con un comparador más. [Lewis92]
¿Cómo son valores de la vida real?
*/
94-136
20/07/2004
#define MAXETAPAS 20 /* Máxima Cantidad de Etapas */
#define GAIN 2 /* Ganacia InterEtapa */
#define VREF_P 5.0
#define VREF_N -VREF_P /* La señal analógica estaría entre VREF_P y VREF_N */
#define SENSE 2.0 /* Fracción de Sensibilidad para Correcion Digital */
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
void errsys(char *msg)
{
printf("ERROR: %s\n", msg);
exit(-1);
}
/****************************************************************/
/* Nombre: Seno
Parametros x : double
Salida: double
*/
/****************************************************************/
double Seno(double x)
{
double y;
y = sin(x);
return(y);
}
/****************************************************************/
/* Nombre: Invertir
Parametros: int X
Nota: Realiza una negacion lógica del valor de la entrada
Siendo 0=>VREF_N y 1=>VREF_P devuelve VREF_P y VREF_N respetivamente.
*/
/****************************************************************/
int Invertir(int X)
{
if (X == 0) return(1);
else return(0);
}
/****************************************************************/
/* Nombre: Suma
Parametros: int A, B
Nota: Realiza una suma lógica de los valores de las entradas
Siendo 0=>VREF_N y 1=>VREF_P devuelve A OR B.
*/
/****************************************************************/
int Suma(int A, int B)
{
if ((A == 1) || (B == 1)) return(1);
else return(0);
}
/****************************************************************/
/* Nombre: Acarreo y Producto
Parametros: int A, B
Nota: Devuelve el acarreo entre A y B. solo sera 1(VREF_P)
En caso que sean A = B = 1. Es como una AND. Producto lógico.
*/
/****************************************************************/
95-136
20/07/2004
int Producto(int A, int B)
{
if ((A == 0) || (B == 0)) return(0);
return(1);
}
int Acarreo(int A, int B)
{
return(Producto(A, B));
}
/****************************************************************/
/* Nombre: Exor
Parametros: int A, B
Nota: Devuelve la Semisuma de los valores de las entradas
Creada en el 2002-11-29 Era necesario crearla desde hace tiempo!
*/
/****************************************************************/
int Exor(int A, int B)
{
if (((A == 0) && (B == 0)) || ((A == 1) && (B == 1))) return(0);
return(1);
}
/****************************************************************/
/* Nombre: Comparador
Parametros x : Vin+
y : Vin-Salida:
double
*/
/****************************************************************/
int Comparador(double x, double y)
{
if ( x < y ) return(0); //V+ menor que V-else
return(1); //V+ mayor o igual que V-}
/****************************************************************/
/* Nombre: ProcesarEtapa
Procesa los valores de las entradas y devuelve el residuo
2002-11-04 Con esta arquitectura se obtiene un codigo de salida
termometrico, para que sea "00 01 10" en ese orden hay que
"Codificar" las salidas de estas etapas.
Esta Etapa sale con 01 00 10
2002-11-28 BUG DETECTADO: Tener la salvedad de castear como
double los valores enteros y utilizar 2.0 en lugar de 2
*/
/****************************************************************/
double ProcesarEtapa(double Entrada, double VrefA, double VrefB,
int *A, int *B)
{
double Residuo=0.0;
*A = Comparador( Entrada, VrefA);
*B = Comparador( VrefB, Entrada);
if (*A == 1) Residuo = Entrada - (double)VREF_P / 2.0;
else if (*B == 1) Residuo = Entrada - (double)VREF_N / 2.0;
else Residuo = Entrada;
return(Residuo);
}
/****************************************************************/
/* Nombre: ProcesarUltimaEtapa
La ultima etapa tiene un comparador mas, dado que no tiene etapa
siguiente para corregir el bit que falta
96-136
20/07/2004
El codigo de salida es: 011 010 000 100
2002-11-28 Nuevo codigo de Salida 000 001 011 111*/
/****************************************************************/
double ProcesarUltimaEtapa(double Entrada,
double VrefA, double VrefB, double VrefC,
int *A, int *B, int *C)
{
double Residuo=0.0;
*A = Comparador( Entrada, VrefA);
*B = Comparador( Entrada, VrefB);
*C = Comparador( Entrada, VrefC);
return(Residuo); /* Por ahora no hay residuo */
}
/****************************************************************/
/* Nombre: CodificarSalida
De aduerdo a los valores de los comparadores, setea los valores
correspondientes en codigo binario de 1.5bit 00 01 10
*/
/****************************************************************/
void CodificarSalida(int A, int B, int *Sa, int *Sb)
{
*Sa = A;
// *Sb = B;
*Sb = Producto(Invertir(A), Invertir(B));
}
/****************************************************************/
/* Nombre: CodificarUltimaSalida
Idem a la anterior pero codifica las salidas para la ultima etapa
Que tiene 3 comparadores en lugar de dos => admite 00 01 10 11
2002-11-28 Mapeo compatible sera: ABC AB
111 => 11
011 => 10
001 => 01
000 => 00
*/
/****************************************************************/
void CodificarUltimaSalida(int A, int B, int C, int *Sa, int *Sb)
{
*Sa = B;
*Sb = Suma(A, Producto(Invertir(B), C));
}
/****************************************************************/
/* Nombre: DAC
Parametros: double S[]
Salida: double
Nota: Este procedimiento nos da como salida el valor de
senal analogica que corresponde a la senal digitalizada en
el vector S[] de MAXETAPAS bits y que esta entre VREF_P y VREF_N
2002-11-27 Luego de cambiar al tipo int, falla en DAC.
*/
/****************************************************************/
double DAC(int S[MAXETAPAS+1], int etapas)
{
double aux = 0;
int i;
for (i = 0; i <= etapas; i++)
{
if (S[i] == 1)
97-136
20/07/2004
aux += 10.0 * pow(2.0, etapas - i) / ( pow(2.0, etapas + 1) - 1 );
}
return(aux + VREF_N);
}
/****************************************************************/
/* Programa Principal
Parametros: Archivo de entrada
Uso: ./ADC -f <filename.txt>
Formato: El archivo de entrada seria una secuencia de elementos
del tipo double.
*/
/****************************************************************/
int main(int argc , char **argv)
{
FILE *pf;
char filename[255];
int j, etapas = MAXETAPAS, c = 1, sip = 1;
double x, z, y[MAXETAPAS + 1], gain = GAIN, gaindev = 0.0, voff = 0.0;
int S[MAXETAPAS + 1], Carry, A[MAXETAPAS], B[MAXETAPAS], C[MAXETAPAS];
int X[MAXETAPAS + 1][2];
double sense = SENSE, voltaje, vcc = VREF_P, vss = VREF_N;
double vrefA = vcc/SENSE, vrefB = vss/SENSE, vrefC = 0.0;
/* Comprobación de parametros */
while (c < argc)
{
if (argv[c][0] == '-')
{
switch (argv[c][1])
{
case 'f':
strcpy(filename, argv[c + 1]);
sip = 0;
c++;
break;
case 'g':
gain = atoi(argv[c + 1]);
c++; /* Valor medio de la Ganacia InterEtapa */
break;
case 'd':
gaindev = atof(argv[c + 1]);
c++; /* Desvio de la Ganacia InterEtapa */
break;
case 'o':
voff = atof(argv[c + 1]);
c++; /* Variaciones del Offset InterEtapa*/
break;
case 'e':
etapas = atoi(argv[c + 1]);
c++;
break;
case 'v':
voltaje = atoi(argv[c + 1]);
c++;
break;
case 's':
sense = atoi(argv[c + 1]);
c++;
break;
98-136
20/07/2004
default:
printf(" Error en parámetros introduzca \n\n");
printf(" -f <filename.txt>\n");
printf(" -g Ganancia Inter-Etapa\n");
printf(" -d Desvio de la Ganancia Inter-Etapa\n");
printf(" -o Maximo Corrimiento por Offset\n");
printf(" -e Cantidad de Etapas\n");
printf(" -v Voltaje de Referencia\n");
printf(" -s Divisor de la Fracción del VRef\n\n");
exit(0);
}
}
else
{
printf(" Error en parametros introduzca -h para ayuda \n\n ");
exit(0);
}
c++;
}
if (sip == 1)
{
printf("\n Falta parametro -f (filename), introduzca -h para ayuda \n\n");
exit(0);
}
vrefA = vcc / sense;
vrefB = vss / sense;
/* Cálculo de tensión de offset y error en la ganancia */
srand((int)time(NULL));
if (voff != 0) voff *= (2 * rand() / (RAND_MAX + 1.0) - 1);
if (gaindev != 0) gain += gaindev * ( 2 * rand() / (RAND_MAX + 1.0) -1);
// printf("Maximo de Divisiones:\tMAX_DIV\t%d\n", MAX_DIV);
printf("Cantidad de etapas:\tetapas\t%d\n", etapas);
printf("Ganancia Inter-Etapa:\tgain\t%e\n", gain);
printf("Tensión de Referencia Positiva:\tVREF_P\t%e\n", VREF_P);
printf("Tensión de Referencia Negativa:\tVREF_N\t%e\n", VREF_N);
printf("Fracción de sensibilidad:\t\tVr/%e\n", sense);
printf("Tensión de Offset Inter-Etapa:\tvoff\t%e\n", voff);
/* apertura del archivo de datos de entrada */
if ((pf = fopen( filename, "r")) == NULL)
{
printf("No se puede abrir el fichero %s\n\n", filename);
exit(-1);
}
printf("\nPrueba de lectura de datos:\n");
printf("Archivo de Entrada:\t%s", filename);
printf("x\ty[0]\n");
/* Impresión de Encabezados */
printf("x\ty[0]");
for (j = 0; j < etapas - 1; j++)
printf("\tA[%d]\tB[%d]\ty[%d]", j, j,j + 1);
printf("\tA[%d]'\tB[%d]'\tC[%d]'\tA[%d]\tB[%d]", etapas - 1,
etapas - 1, etapas - 1, etapas - 1, etapas - 1);
for (j = 0; j <= etapas; j++) printf("\tS[%d]",j);
printf("\tz");
/* Cálculo e impresión de datos */
/* Generación de la Señal Analógica de Entrada */
/* Recorrido del archivo de entrada */
while (!feof(pf))
99-136
20/07/2004
{
fread(&x, sizeof(double), 1, pf);
y[0] = x + voff ;
/* Impresión de la señal Analógica de Entrada */
printf ("\n%e\t%e", x, y[0]);
/* PreProceso de las etapas y Obtención del Residuo */
for (j = 0; j < etapas - 1; j++)
{
y[j + 1] = voff + gain * ProcesarEtapa( y[j], vrefA, vrefB,
&A[j], &B[j]);
CodificarSalida(A[j], B[j], &X[j][1], &X[j][2]);
CodificarSalida(A[j], B[j], &A[j], &B[j]);
printf ("\t%d\t%d\t%e", X[j][1], X[j][2], y[j + 1]);
}
y[j + 1] = voff + gain * ProcesarUltimaEtapa(y[j], vrefA, vrefC, vrefB,
&A[etapas - 1], &B[etapas - 1], &C[etapas - 1]);
CodificarUltimaSalida(A[etapas - 1], B[etapas - 1], C[etapas - 1],
&X[etapas - 1][1], &X[etapas - 1][2]);
printf ("\t%d\t%d\t%d\t%d\t%d", A[etapas - 1], B[etapas - 1],
C[etapas - 1], X[etapas - 1][1], X[etapas - 1][2]);
/* Procesado e Impresion de las Salidas del Conversor */
Carry = 0; /* Acarreo Inicial del LSB */
S[etapas] = X[etapas - 1][2]; /* Valor del LSB */
/* 2002-11-28 En S[1] me queda basura.Revisar las rutinas lógicas ....
ó cambiar la tipificación de las variables booleanas => NO USAR double
para
variables lógicas !!!!
*/
// 2002-11-29 Funcionando con varibles lógicas del tipo int, pero hace el
mismo
/* error también en S[1].
Prueba de comentar el Carry y sucede lo mismo => No es tema de Carry
BUG encontrado, había un j-- dentro del for !!! => salteaba los valores
2:36 Nuevo BUG en la suma 1 + 1 = 1 !!! ERROR !!! No es Suma, es Exor
Solución: Implemento la EXOR
Problema NO propaga en CArry, lo calcula mal, en caso que sea producido
debido a un anterior Carry. Se reformula el cálculo del Carry
se obtienen resultados más aceptables aunque la suma de errores
no es cero.
Problema NO propagaba el último Carry, era porque el for procesaba el
j >= 0, se cambia por j > 0 y Ok. 3:21am. Resultados más
aceptables, la suma de errores no da cero pero da < 5% vref
Problema con mas de 5 etapas, el X[0][1] vale uno !!! En efecto,
el problema era que MAXETAPAS estaba definido como 2, provocando
errores en la definicion de los arreglos y valores basura.
Se coloca MAXETAPAS como 20, se prueba con etapas 10 y oK. Suma
de errores 9,62E-03.
*/
for (j = etapas - 1; j > 0; j--)
{
S[j] = Exor(X[j][1], X[j - 1][2]);
S[j] = Exor(S[j], Carry);
Carry = Suma(
Producto(
X[j][1],
Suma(
X[j - 1][2],
Carry
100-136
20/07/2004
)
),
Producto(
Invertir(X[j][1]),
Producto(
X[j - 1][2],
Carry
)
)
);
}
S[0] = Suma(X[j][1], Carry); /* Valor del MSB no va con EXOR */
/* Impresión de los bits de Salida Digital */
for (j = 0; j <= etapas; j++) printf("\t%d",S[j]);
z = DAC(S, etapas);
printf("\t%e",z);
} /* Fin del ciclo while de lectura del archivo de entrada */
fclose(pf);
return(0);
}
101-136
20/07/2004
/*
** 6600.Pipelined ADC de 1.5 bit por etapa
** Nombre del Archivo: Generar.c
* Fecha última revision: 2002-Dec-03
* Descripción: Módulo para Generar la señal de entrada
2002-11-27 Primer Release que funciona. Genera un archivo pasado como param
Uso: Generar -f <filename.out>
Esto elimina el contenido de filename.out si existe.
Utilizando el parámetro -s 1 hace una senoide sino una rampa
*/
#define MAX_DIV 100 /* Resolucion */
#define ETAPAS 3 /* Cantidad de Etapas */
#define GAIN 2 /* Ganacia InterEtapa */
#define VCC 5
#define VSS -VCC
#define SENSE 2 /* Factor de Sensibilidad para Correcion Digital */
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void errsys(char *msg)
{
printf("ERROR: %s\n", msg);
exit(-1);
}
/****************************************************************/
/* Nombre: Seno
Parametros x : double
Salida: double
*/
/****************************************************************/
double Seno(double x)
{
double y;
y = sin(x);
return(y);
}
/****************************************************************/
/* Programa Principal
Parametros: Archivo de entrada
Uso: ./ADC -f <filename.txt>
Formato: El archivo de entrada seria una secuencia de elementos
del tipo double.
*/
/****************************************************************/
int main(int argc , char *argv[])
{
FILE *pf;
char filename[255];
int i, c = 1, max_div = MAX_DIV;
int sip = 1, senoide = 0;
double x, pi=3.14159265, voltaje = VCC;
/* Comprobacion de parametros y apertura del archivo de datos de entrada */
while (c < argc)
{
if (argv[c][0] == '-')
{
102-136
20/07/2004
switch (argv[c][1])
{
case 'f':
strcpy(filename, argv[c + 1]);
sip = 0;
c++;
break;
case 'd':
max_div = atoi(argv[c + 1]);
c++;
break;
case 'v':
voltaje = atoi(argv[c + 1]);
c++;
break;
case 's':
senoide = atoi(argv[c + 1]);
c++;
break;
default:
printf(" Error en parametros introduzca -h para ayuda \n\n");
printf(" -f <filename.out>\n");
printf(" -d Cantidad de Divisiones\n");
printf(" -v Voltaje Pico a Pico\n");
printf(" -s Señal [0 Rampa, 1 Senoide]\n\n");
exit(0);
}
}
else
{
printf(" Error en parametros introduzca -h para ayuda \n\n ");
exit(0);
}
c++;
}
if (sip == 1)
{
printf("\n Falta parametro -f (filename), introduzca -h para ayuda \n\n");
exit(0);
}
if ((pf = fopen(filename, "w"))==NULL)
{
errsys("No se pudo abrir el fichero");
exit(-1);
}
// FIN PARAMETROS
for ( i = 0 ; i < max_div ; i++)
{
if (senoide == 0) x = voltaje * ( 2.0 * (double)i / (double)max_div - 1.0
);
else x = voltaje * Seno(2 * pi * i / max_div);
fwrite(&x, sizeof(double), 1, pf);
printf("%e\t", x); // Solo para debugging
}
fclose(pf);
return(0);
}
103-136
20/07/2004
Anexo 2: Gráficos de Simulación del programa “C”
A continuación se exponen los gráficos obtenidos a partir de los resultados que
surgen tras el procesamiento de un archivo de datos (una senoide de 256 puntos
generada utilizando el algoritmo Generar.c), con el programa ADC.c. Los parámetros
de ensayo son detallados mediante un cuadro en cada gráfico.
La nomenclatura de señales esta descripta según:
•
•
•
•
•
x:
Señal Analógica de entrada.
y[0] y[1]... y[i]:
Señal Analógica de residuo de la etapa.
A[0] B[0] A[1] B[1]... A[i] B[i]: Salidas Digitales de la etapa.
Z:
Señal Analógica reconstituida a partir de los valores
resultantes de la conversión conversor pipeline ADC.
DNL:
Alinealidad diferencial.
La Alinealidad Diferencial se mide en fracción de bit menos significativo (LSB ).
Cuatros casos críticos son presentados. Cuando se produce un código de salida
erróneo debido a una tensión de offset interetapa (positiva ó negativa) ó un error en la
ganancia interetapa (muy alta ó demasiado baja). A partir de dichos resultados se
estima que valor de tolerancia de offset ó ganancia interetapa puede ser admitido sin
el mismo produzca un error mayor a 1LSB.
En el gráfico SalidaSeno03 se representan para caso ideal, sin tensión de offset entre
etapas y sin errores en la ganancia, las señales de entrada y salida de todas las etapas.
En el gráfico DNL-SalidaSeno03 se muestra la alinealidad diferencial del el caso
ideal.
En el gráfico DNL-SalidaSeno21 (ahora de 1024 puntos*) de alinealidad diferencial
se analiza en caso crítico donde una tensión de offset interetapa de –35mV produce un
corrimiento en las salidas de –1LSB. También puede apreciarse un missing code, pero
en +1LSB producido por una tensión de offset interetapa de +37mV en DNLSalidaSeno22.
En los gráficos DNL-SalidaSeno25 y DNL-SalidaSeno23 se muestra la alinealidad
diferencial para valores de ganancia interetapa de 2,04 y interetapa de 1,87
respectivamente, produciendo missing codes en +1LSB y –1LSB respectivamente.
* En los gráficos que se analiza la tensión de offset y error en la ganancia se
incrementa la definición a 1024 puntos con el objeto de obtener una mayor precisión.
104-136
20/07/2004
Cantidad de etapas:
etapas
Ganancia Interetapa:
gain
Tensión de Referencia Positiva:
Tensión de Referencia Negativa:
Fracción de sensibilidad:
Tensión de Offset Interetapa:
5
2,00E+00
VREF_P
5,00E+00
VREF_N
-5,00E+00
Vr/4.000000e+00
voff
0,00E+00
SalidaSeno03
6,00E+00
4,00E+00
2,00E+00
x
y[0]
y[1]
0,00E+00
1
7
y[2]
13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 103 109 115 121 127 133 139 145 151 157 163 169 175 181 187 193 199 205 211 217 223 229 235 241 247 253
y[3]
y[4]
z
-2,00E+00
-4,00E+00
-6,00E+00
Fig.A2.1. Gráfico de las salidas de las etapas (residuos) para una señal de entrada senoidal de amplitud 5v.
105-136
20/07/2004
Cantidad de etapas:
etapas
Ganancia Interetapa:
gain
Tensión de Referencia Positiva:
Tensión de Referencia Negativa:
Fracción de sensibilidad:
Tensión de Offset Interetapa:
5
2,00E+00
VREF_P
5,00E+00
VREF_N
-5,00E+00
Vr/4.000000e+00
voff
0,00E+00
DNL - SalidaSeno03
1
0,8
0,6
0,4
DNL [LSB]
0,2
0
1
7
13 19 25 31 37 43 49 55 61 67 73 79 85 91 97 10 10 11 12 12 13 13 14 15 15 16 16 17 18 18 19 19 20 21 21 22 22 23 24 24 25
3 9 5 1 7 3 9
5 1 7 3 9 5 1 7 3 9 5 1 7 3 9 5 1 7 3
-0,2
-0,4
-0,6
-0,8
-1
Fig.A2.2. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v.
106-136
DNL
20/07/2004
Cantidad de etapas:
etapas
Ganancia Interetapa:
gain
Tensión de Referencia Positiva:
Tensión de Referencia Negativa:
Fracción de sensibilidad:
Tensión de Offset Interetapa:
5
2,00E+00
VREF_P
5,00E+00
VREF_N
-5,00E+00
Vr/4.000000e+00
voff
-3,56E-02
DNL - SalidaSeno21
1
0,8
0,6
0,4
988
1009
967
946
925
904
883
862
841
820
799
778
757
736
715
694
673
652
631
610
589
568
547
526
505
484
463
442
421
400
379
358
337
316
295
274
253
232
211
190
169
148
127
85
106
64
43
DNL
1
0
22
DNL [LSB]
0,2
-0,2
-0,4
-0,6
-0,8
-1
Fig.A2.3. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con un offset interetapa que produzca un error de –1LSB.
107-136
20/07/2004
Cantidad de etapas:
etapas
Ganancia Interetapa:
gain
Tensión de Referencia Positiva:
Tensión de Referencia Negativa:
Fracción de sensibilidad:
Tensión de Offset Interetapa:
5
2,00E+00
VREF_P
5,00E+00
VREF_N
-5,00E+00
Vr/4.000000e+00
voff
3,68E-02
DNL - SalidaSeno22
1
0,8
0,6
0,4
988
1009
967
946
925
904
883
862
841
820
799
778
757
736
715
694
673
652
631
610
589
568
547
526
505
484
463
442
421
400
379
358
337
316
295
274
253
232
211
190
169
148
127
85
106
64
43
DNL
1
0
22
DNL [LSB]
0,2
-0,2
-0,4
-0,6
-0,8
-1
Fig.A2.4. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con un offset interetapa que produzca un error de +1LSB
108-136
20/07/2004
Cantidad de etapas:
etapas
Ganancia Interetapa:
gain
Tensión de Referencia Positiva:
Tensión de Referencia Negativa:
Fracción de sensibilidad:
Tensión de Offset Interetapa:
5
2,04E+00
VREF_P
5,00E+00
VREF_N
-5,00E+00
Vr/4.000000e+00
voff
0,00E+00
DNL - SalidaSeno23
1
0,8
0,6
0,4
988
1009
967
946
925
904
883
862
841
820
799
778
757
736
715
694
673
652
631
610
589
568
547
526
505
484
463
442
421
400
379
358
337
316
295
274
253
232
211
190
169
148
127
85
106
64
43
DNL
1
0
22
DNL [LSB]
0,2
-0,2
-0,4
-0,6
-0,8
-1
Fig.A2.5. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con el máximo valor de ganancia interetapa que produzca un error de
1LSB.
109-136
20/07/2004
Cantidad de etapas:
etapas
Ganancia Interetapa:
gain
Tensión de Referencia Positiva:
Tensión de Referencia Negativa:
Fracción de sensibilidad:
Tensión de Offset Interetapa:
5
1,87E+00
VREF_P
5,00E+00
VREF_N
-5,00E+00
Vr/4.000000e+00
voff
0,00E+00
DNL - SalidaSeno25
1
0,8
0,6
0,4
988
1009
967
946
925
904
883
862
841
820
799
778
757
736
715
694
673
652
631
610
589
568
547
526
505
484
463
442
421
400
379
358
337
316
295
274
253
232
211
190
169
148
127
85
106
64
43
DNL
1
0
22
DNL [LSB]
0,2
-0,2
-0,4
-0,6
-0,8
-1
Fig.A2.6. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con el mínimo valor de ganancia interetapa que produzca un error de
1LSB.
110-136
20/07/2004
Anexo 3: Pruebas del Comparador
En el presente Anexo se presenta un circuito de prueba. Se pretende mostrar una forma de
obtener experimentalmente el valor de la tensión de offset, mínimo necesario para producir la
conmutación de las salidas del comparador que se utiliza en el ADSC. Este análisis permite
finalmente determinar un valor mínimo de sensibilidad del comparador.
HI
M11
MbreakP
W = 20u
BIAS8
HI
5uA
M12
I2
MbreakP
W = 5u
BIAS9
BIAS10
M15
M14
M13
MbreakN MbreakN
W = 5u
W = 10u
MbreakN
W = 5u
LO
U1
V4
0
+
DC = 0
AC = 0
V1 = -5
V2 = 5
TD = 0
TR = 0
TF = 0
PW = 1u
PER = 20.05u
V3
0
R2
99999Meg
Comparador
FREQ = 5k
VAMPL = 10mv
VOFF = 0
AC = 0
DC = 0
0
0v
Vref
0
Condiciones de ensayo:
Entrada [V3.VAMPL]:
Frecuencia de muestreo [1/V4.PER]:
Tiempo de muestreo [V4.PW]:
10mV
50kHz
1us
Fig.A4.1 Circuito de prueba polarizado con I1=5uA de forma que ID(M10)+ID(M9)= ID(M7)+ ID(M1)+ ID(M8)+
ID(M2).
111-136
20/07/2004
Observando esquema circuital de la Fig.2.21, sección 3.4.2, se puede apreciar que cuando M6
se apaga (¬LATCH pasa de HI a LOw) las salidas del comparador se separan, liberando a M4 y
M5 para realimentarse positivamente. Como resultado la corriente diferencial proveniente de los
cascode carga los nodos “Out” y se retiene la salida (latch), colocando uno de los nodos a HI y el
otro a LO en caso que la entrada VinP > VinN y viceversa.
1
10mV
2
5.0V
5mV
0V
0V
-5mV
-10mV
>>
-5.0V
3.50ms
1
3.55ms
V(COMP0:P)
3.60ms
V(COMP0:N)
2
3.65ms
3.70ms
3.75ms
V(COMP0.OutP)
V(COMP0.OutN)
Time
3.80ms
3.85ms
3.90ms
3.95ms
Fig.A4.2 Análisis transitorio de la conmutación de los comparadores
Hasta que nuevamente el encendido de M6 (¬LATCH pasa de LOw a HI) permite conectar las
compuertas de M4 y M5 entre si, haciendo fluir la corriente diferencial a través del mismo M6,
y, como resultado la salida es reestablecida (RESET). [LEWIS92]
Mediante pruebas de conmutación en condiciones extremas, analizando los resultados de
simulación SPICE se obtiene experimentalmente un valor de sensibilidad, en mV del
comparador.
Pruebas de conmutación en condiciones extremas
En adelante se analiza gráfico de simulación obtenido completo en cuatro intervalos de
tiempo, que en diferentes situaciones no se llegan a activar correctamente las salidas del
comparador. Cada caso corresponde a las cuatro instancias donde se está ingresando ó saliendo,
por flanco ascendente ó flanco descendente a la “zona de indeterminación” comprendida entre
+/- Vsensibilidad.
112-136
4.00ms
20/07/2004
En primera instancia, se analizan los Casos Críticos de Error, donde se comienza a producir (por el
ingreso a la zona de indeterminación) ó aún se sigue produciendo (por el no egreso de la zona de
indeterminación) un código erróneo (missing code) a la salida. Ambos para flanco ascendente y
descendente.
Luego, se analizaran los mismos cuatro Casos Críticos, pero hasta donde se sigue produciendo
una correcta conmutación (porque aún no se ha ingresado a la zona de indeterminación) ó se
comienza a dar una correcta conmutación (porque se ha logrado salir de la zona de
indeterminación).
1
5.0V
2
10mV
5mV
0V
0V
(2.5076ms,-2.3649mV)
-5mV
-5.0V
>>
-10mV
2.46ms
1
2.47ms
V(COMP0.OutP)
2.48ms
2.49ms
V(COMP0.OutN)
2
2.50ms
V(COMP0.P)
2.51ms
V(COMP0.N)
Time
2.52ms
2.53ms
2.54ms
2.55ms
Fig.A4.3. Error Caso Crítico 1: flanco descendente, Av1 < 0, OutP: HI -> LO, OutN: LO -> HI:
Inicialmente, en t < 2506us la señal de salida está retenida dado que M6 está apagado.
Inmediatamente cuando 2506us < t < 2576us LATCH enciende y apaga a M6.
Cuando t > 2576us se observa que, a pesar que VinP(t=2507,8us) = -2,3649mV < 0 no es suficiente
para producir una conmutación de las salidas del comparador.
113-136
2.56ms
20/07/2004
1
5.0V
2
10mV
5mV
0V
(2.6077ms,2.3976mV)
0V
-5mV
>>
-10mV
2.55ms
1
-5.0V
2.56ms
V(COMP0.OutP)
2.57ms
2.58ms
V(COMP0.OutN)
2
2.59ms
V(COMP0.P)
2.60ms
V(COMP0.N)
Time
2.61ms
2.62ms
2.63ms
2.64ms
2.65ms
Fig.A4.4. Error Caso Crítico 2: flanco ascendente, Av1 > 0, OutN: HI -> LO, OutP: LO -> HI:
En este caso, con t > 2606,6us, VinP(t = 2607,6us) = 2,3976mV es un valor aún no suficiente
para producir una correcta conmutación. Tanto en esta situación como en la del caso anterior se
sigue estando por debajo del límite de tensión de conmutación del comparador. Osea aún no se ha
salido de la “zona de indeterminación”.
1
5.0V
2
10mV
5mV
0V
0V
(4.1918ms,-2.5513mV)
-5mV
-5.0V
>>
-10mV
4.15ms
1
4.16ms
V(COMP0.OutP)
4.17ms
4.18ms
V(COMP0.OutN)
2
4.19ms
V(COMP0.P)
4.20ms
V(COMP0.N)
Time
4.21ms
4.22ms
4.23ms
4.24ms
4.25ms
Fig.A4.5. Error Caso Crítico 3: flanco ascendente, Av1 < 0, OutN: HI -> LO, OutP: LO -> HI:
En t > 4190,6us, VinP(t=4191,8us) = -2,5513mV ya no es suficiente para producir una correcta conmutación.
114-136
20/07/2004
5.0V
1
10mV
2
5mV
(4.2920ms,2.4987mV)
0V
0V
-5mV
>>
-10mV
4.24ms
1
-5.0V
4.25ms
V(COMP0.OutP)
4.26ms
4.27ms
V(COMP0.OutN)
2
4.28ms
V(COMP0.P)
4.29ms
V(COMP0.N)
Time
4.30ms
4.31ms
4.32ms
4.33ms
4.34ms
Fig.A4.6 Error Caso Crítico 4: flanco descendente, Av1 > 0, OutP: HI -> LO, OutN: LO -> HI:
En este caso VinP(t = 4292us) = 2,4987mv ya no es suficiente para interpretarse como Vp > Vn
produciendo un estado indefinido.
Tanto en esta situación como en la del caso anterior el valor de tensión diferencial ya está por debajo
del límite de tensión de conmutación del comparador. Osea ya se ha ingresado en la “zona de
indeterminación”.
1
5.0V
2
10mV
5mV
0V
0V
(2.7080ms,-2.4907mV)
-5mV
-5.0V
>>
-10mV
2.65ms
1
2.66ms
V(COMP0.OutP)
2.68ms
V(COMP0.OutN)
2
V(COMP0.P)
2.70ms
V(COMP0.N)
Time
2.72ms
Fig.A4.7 Caso Crítico 1: Con flanco descendente, Av1 < 0, OutP: HI -> LO, OutN: LO -> HI:
115-136
2.74ms
2.75ms
20/07/2004
A los 2,7080ms, VinP <= -2,4907mV ya es un valor suficiente para producir una correcta
conmutación correspondiente a VinP < VinN = 0v.
1
5.0V
2
10mV
5mV
(2.8084ms,2.6110mV)
0V
0V
-5mV
>>
-10mV
2.75ms
1
-5.0V
2.76ms
V(COMP0.OutP)
2.78ms
V(COMP0.OutN)
2
2.80ms
V(COMP0.N)
Time
V(COMP0.P)
2.82ms
2.84ms
2.85ms
Fig.A4.8 Caso Crítico 2: Con flanco ascendente, Av1 > 0, OutN: HI -> LO, OutP: LO -> HI:
A los 2,8084ms, VinP >= 2,6110mV ya es un valor suficiente para producir una correcta
conmutación correspondiente a VinP > VinN = 0v.
1
5.0V
2
10mV
5mV
0V
0V
(3.9913ms,-2.7088mV)
-5mV
00m,-4.1917)
-5.0V
>>
-10mV
3.95ms
1
3.96ms
V(COMP0.OutP)
3.97ms
3.98ms
V(COMP0.OutN)
2
3.99ms
V(COMP0.P)
4.00ms
V(COMP0.N)
Time
4.01ms
4.02ms
4.03ms
4.04ms
4.05ms
Fig.A4.9 Caso Crítico 3: Con flanco ascendente, Av1 < 0, OutN: HI -> HI, OutP: LO -> LO
A los 3,9913ms, VinP <= -2,7088mV todavía sigue siendo un valor suficiente para producir una
correcta conmutación correspondiente a VinP < 0=VinN.
116-136
20/07/2004
1
5.0V
2
10mV
5mV
(4.0917ms,2.5973mV)
0V
0V
-5mV
-5.0V
>>
-10mV
4.04ms
1
4.05ms
V(COMP0.OutP)
4.06ms
4.07ms
V(COMP0.OutN)
2
4.08ms
V(COMP0.P)
4.09ms
V(COMP0.N)
Time
4.10ms
4.11ms
4.12ms
4.13ms
4.14ms
Fig.A4.10 Caso Crítico 4: Con flanco descendente, Av1 > 0, OutP: HI -> HI, OutN: LO -> LO
A los 4,0917ms, VinP >= 2,5973mV todavía sigue siendo un valor suficiente para producir una
correcta conmutación correspondiente a VinP > 0 =VinN.
En los cuatro Casos Críticos de Error sucede que el valor de tensión diferencial (|VinP – VinN|
= |VinP|, dado que VinN = 0v) está por debajo del valor de sensibilidad del comparador.
Recíprocamente, cualquier valor que permita la conmutación correcta de las salidas al apagarse M6
(ver Fig.2.21, LATCH de HI a LOw) esta por encima de dicho valor de sensibilidad.
Completando el ensayo, se analizan mismos cuatro casos críticos, para la situación que se produzca
una correcta conmutación de las salidas. El máximo de todos los valores de tensión diferencial
obtenidos en los ensayos de los cuatro casos críticos, que producen una correcta conmutación, es una
buena cota inferior para el valor de sensibilidad.
Asi, de los resultados completos de simulación de SPICE, Sensibilidad = 2,7088mV, es un buen
valor a adoptar, dado que existen casos favorables (que producen una correcta conmutación) que están
por debajo.
117-136
20/07/2004
Apéndice 1: Análisis y Diseño del Amplificador
Operacional
Tal como se vio en el capitulo 3 los amplificadores operacionales forman
parte del circuito SHA de cada etapa del conversor pipeline. La poca cantidad de
etapas que involucra el presente trabajo permite que un no muy alto valor de ganancia
a lazo abierto en los amplificadores operacionales, empleados en el diseño de los
amplificadores interetapa, sea suficiente para no causar errores a la salida del código.
Debido al mismo motivo tampoco se hace necesaria la utilización de técnicas de autozero.
Vcc
M20
M18
MbreakP MbreakP
M23
MbreakP
W = {Wn}
OutPut
P
M14
M15
MbreakN
MbreakN
N
Vss
cmBIAS
M17
M16
MbreakN
W = 10u
MbreakN
W = {Wn}
Vss
Fig.AP1.1 Circuito esquemático del amplificador operacional sin compensar.
Por lo tanto se adopta un diseño simple con transistores de entrada NMOS (dado que
se dispone de alimentación +/-5v), y cargas activas espejo simple, a la salida una etapa
con M23 en fuente común, también alimentada con una fuente de corriente, completa
la ganancia.
Todos los transistores tienen un L=2µm y W=10µm, salvo los de la etapa de salida
M23 y M16 que tienen W=50µm lo cual quintuplica la corriente de alimentación.
118-136
20/07/2004
HI
VCC
HI
I1
VIN_ANALOG
10uA
V3
DC = 0
VOFF = 0
5v
VAMPL = 1
FREQ = 100
AC = 1
TD = 1m
0
5v
M16
MbreakN
W = 10u
LO
VDD
cmBIAS
LO
Circuito de Alimentación
Generador de polarización cmBIAS
Fig.AP1.2 Circuitos esquemáticos complementarios del amplificador operacional.
En adelante, se analiza la respuesta en frecuencia y estabilidad del presente diseño.
Sometiendo las pruebas a condiciones de carga similares a las que se encuentra en el
presente trabajo, se obtienen los valores de capacidad y resistencia de compensación
adecuados.
Cálculo de Ganancia
Aquí se presenta una aproximación para el cálculo de la ganancia de un
amplificador operacional. Al mismo tiempo los resultados son contrastados con los
valores obtenidos mediante la simulación SPICE.
Sabiendo que:
L15 = L23 = 2 µm
W23 = 50 µm
W15 = 10 µm
Kp23 = Kp P = 27 ⋅ 10 −6
Kp15 = Kp N = 80 ⋅ 10 −6
VTO 23 = −0,675v
VTO15 = 1,17v
Vgs23 = −0,979v
Vgs15 = 1,27v
λ23 = λP = 0,061228
λ15 = λ N = 0,036707
119-136
20/07/2004
las trasconductancias de los pares de entrada y salida, se calculan como:
W 
gm15 = Kp N  15  Vgs − VTOn = 4,00 ⋅ 10 −5 Ω −1 = gm14 [SPICE: 8.38E-05]
 L15 
W 
gm23 = Kp P  23  Vgs − VTOp = 20,52 ⋅10 −5 Ω −1 [SPICE: 3.61E-04]
 L23 
Id 20 =
Kp  W20 
(Vgs20 − VTOn )2 = 4,74µA = Id18 = Id14 = Id15 [SPICE 6.62uA]

2  L20 
gd14 = λ N ⋅ Id14 = 174 ⋅ 10 −9 = gd15
gd18 = λP ⋅ Id18 = 290 ⋅ 10 −9
y la ganancia del par diferencial
 1
1 
 = 367,7
Αvd = gm15 
+
gd
gd
18 
 14
para la segunda etapa
Id16 = Id 23 =
Kp  W16 

(Vgs16 − VTO )2 = 38,4µA
2  L16 
gd 23 = λP ⋅ Id 23 = 2,35 ⋅10 −6
Αv2 =
[SPICE 67.1uA]
gd16 = λ N ⋅ Id16 = 1,41 ⋅ 10 −6
gm23
= 54,52
gd 23 + gd16
la ganancia total del Amp. Operacional
Αvtot = Αvd ⋅ Αv2 = 20047
Αv[dB ] = 20 ⋅ log(Αvtot ) = 86,4dB
120-136
20/07/2004
Resultados de simulación
La precisión de cálculo que brindan las herramientas de simulación da la
posibilidad de adoptar un circuito de prueba a lazo abierto, utilizando un generador de
microvolts entre los terminales de entrada y una carga capacitiva que representa las
condiciones de trabajo del amplificador operacional formando parte del circuito SHA.
U1
+
-
C1
OP_AMP
2p
0
0
V3
1uV
0
80
(10.000,61.841)
(387.067K,58.779)
40
0
-40
10Hz
100Hz
1.0KHz
DB(V(OPAMP3.OutPut)/V(OPAMP3.P))
10KHz
100KHz
1.0MHz
10MHz
100MHz
1.0GHz
Frequency
180d
(387.296K,134.350)
135d
90d
45d
0d
10Hz
100Hz
1.0KHz
P(V(OPAMP3.OutPut)/V(OPAMP3.P))
10KHz
100KHz
1.0MHz
10MHz
100MHz
1.0GHz
Frequency
Fig.AP1.3 Circuito de prueba del amplificador operacional a emplear en la simulación SPICE, para
obtener las curvas de ganancia de lazo abierto y fase. Curvas de Ganancia y Fase del Amplificador
Operacional sin compensar, en función de la frecuencia
121-136
20/07/2004
Del gráfico se puede observar que la ganancia a lazo abierto en bajas frecuencias vale:
20 ⋅ log(a0 ) = 61,81dB => a0 = 1232
y el margen de fase (cuando la ganancia es de 0dB, f=163MHz)
180° − P(V (out ) / V (in) ) = 40°
es menor de 45° (mínimo tolerable), que si bién no oscilaría a esa frecuencia (dado que
la fase no llega a 0°, osea -180° de desplazamiento respecto de la fase en bajas
frecuencias) se intenta lograr un margen de fase mayor, a fin de lograr una mayor
tolerancia.
Se observa además un polo dominante en:
p1
= 387 kHz
2π
y un segundo polo dominante en:
p2
= 20MHz
2π
jω
2π
-387kHz
-20MHz
Fig.AP1.4 Diagrama de polos del amplificador operacional sin compensar.
122-136
σ
2π
20/07/2004
A fin de lograr compensar internamente el amplificador operacional monolítico, se
utiliza una capacidad menor a 20pF. Esto es posible llevar a cabo utilizando la
multiplicación Miller de la capacitancia C1 que aparece en la Fig.AP1.5.
Vcc
M20
M18
MbreakP MbreakP
M23
MbreakP
W = {Wn}
C1
{Cc}
R2
{Rc}
OutPut
P
M14
M15
MbreakN
MbreakN
N
Vss
cmBIAS
M17
M16
MbreakN
W = 10u
MbreakN
W = {Wn}
Vss
Fig.AP1.5 Circuito esquemático del Amplificador Operacional con la capacitancia y resistencia de
compensación.
El pequeño capacitor C1 es conectado entre la compuerta y el drenaje del transistor de
salida M23, produciendo un polo dominante en baja frecuencia.
Las curvas de ganancia y fase generadas con SPICE pueden verse en la Fig.AP1.6.
123-136
20/07/2004
80
00,61.841dB)
(18.772KHz,58.839dB)
40
(19.525MHz,0dB)
0
-40
-80
1.0Hz
10Hz
100Hz
1.0KHz
DB(V(OPAMP3.OutPut)/V(OPAMP3.P))
10KHz
100KHz
1.0MHz
10MHz
100MHz
1.0GHz
Frequency
180d
(19.525MHz,62°)
93d
(19.525MHz,33°)
0d
-93d
1.0Hz
10Hz
100Hz
1.0KHz
P(V(OPAMP3.OutPut)/V(OPAMP3.P))
10KHz
100KHz
1.0MHz
10MHz
100MHz
1.0GHz
Frequency
Fig.AP1.6 Curvas de Ganancia y Fase del amplificador compensado para Cc=0,5pF y distintos valores
de Rc {1, 100, 3k, 6k, 10k, 50k}. Señalando el valor óptimo para el mejor margen de fase en Rc=10k y
enviando el cero a muy alta frecuencia.
Luego de la compensación se observa un gran cambio en la distribución de polos y
ceros de todo el circuito. El polo dominante está ahora en 18,7kHz tal como se
deseaba, y el otro polo por encima de la frecuencia de cruce.
jω
-18,7kHz
-20MHz
2π
σ
2π
Fig.AP1.7 Nueva distribución de polos luego de la compensación.
124-136
20/07/2004
Se desea lograr que la ganancia unitaria (0dB) esté a una frecuencia por debajo del
segundo polo dominante, para que de un margen de fase adecuado, y se incremente de
esta forma el ancho de banda utilizable.
Para describir como se produce la separación de polos (Pole Splitting) en la Fig.AP1.8
el circuito equivalente para M23, con la capacitancia y resistencia de compensación es
ilustrado:
Cc
is
+
+
+
R1
Vi
Rc
C1 Vc
gm·V
C2
R2
R1, C1, R2 y C2
de la etapa.
V
o
Representan las resistencias y capacidades totales de entrada y salida
Fig.AP1.8 Circuito equivalente del transistor M23, incluyendo la compensación.
Planteando las ecuaciones de nodos de entrada (Vi), intermedio (Vc) y salida (Vo):
is =
vi
+ vi C1s + CC (vi − vC ) ⋅ s
R1
[9.25]
(v − v )
vo
+ voC2 s + C i
R2
RC
[9.26]
− g m v1 =
(vC − vi ) ⋅ CC ⋅ s = (vo − vC )
[9.26a]
RC
Obteniendo la función de transferencia [9.27]


− R1 ⋅ R2 ⋅ gm ⋅ CC ⋅  1 − s ⋅  1 − RC 
CC
vo
 gm


=
is 1+ [CC (RC + R1 + R2 + gm R1R2 ) + C1R1 + C2 R2 ]⋅ s + {CC [RC (C1R1 + C2 R2 ) + R1R2 (C1 + C2 )] + C1C2 R1R2 }⋅ s2 + CCC1C2 RC R1R2 ⋅ s3
que tiene un cero real positivo cuando
s=
[9.35]
1
 1

CC 
− RC 

 gm
Notando que para el circuito sin compensar (Cc=0) queda reducida a
125-136
20/07/2004
vo
− R1 ⋅ R2 ⋅ g m
=
is 1 + (C1 R1 + C 2 R2 ) ⋅ s + C1C 2 R1 R2 ⋅ s 2
Que tiene dos polos en
p1 = −
1
R1C1
p2 = −
1
R2 C 2
Ahora, al aumentar CC de modo que CC >> C1 y C 2


− R1 ⋅ R2 ⋅ g m ⋅ CC ⋅  1 − s ⋅  1 − RC 
CC
vo
 gm


=
is 1 + CC (RC + R1 + R2 + g m R1 R2 ) ⋅ s + CC [RC (C1 R1 + C2 R2 ) + R1R2 (C1 + C2 )]⋅ s 2 + CC C1C2 RC R1R2 ⋅ s 3
Tiene tres polos que serán llamados p1 , p2 y p3
Ahora si se escribe el denominador de la transferencia con sus tres polos como:

s  
s  
s 
 ⋅ 1 −

D(s ) = 1 −  ⋅ 1 −
p1  
p2  
p3 


s
s2  
s 
s
s2
s
s2
s3
 = 1 −
 ⋅ 1 −
= 1 −
+
+
−
+
−
p1 p1 p 2  
p3 
p1 p1 p 2 p 3 p1 p3 p1 p 2 p3

 1
 1
1 
1  2
1
 ⋅ s + 
 ⋅ s −
= 1 −  +
+
⋅ s3
p1 p 2 p3
 p1 p3 
 p1 p 2 p1 p3 
admitiendo que los tres polos están muy separados y que p1 << p2 << p3 , que por lo
general sucede
D(s ) ≅ 1 −
s
s2
s3
+
−
p1 p1 p 2 p1 p 2 p 3
[9.30]
igualando coeficientes con [9.27] se tiene que
p1 = −
1
C C (RC + R1 + R2 + g m R1 R2 )
126-136
20/07/2004
p2 = −
RC + R1 + R2 + g m R1 R2
R1 RC C1 + C 2 RC R2 + C1 R1 R2 + C 2 R1 R2
p3 = −
R1 RC C1 + C 2 RC R2 + C1 R1 R2 + C 2 R1 R2
C1C 2 RC R1 R2
que dado que RC << R1 y R2 , , y además también R1 y R2 << g m R1 R2
p1 ≅ −
1
CC (RC + R1 + R2 + g m R1 R2 )
p2 ≅ −
gm
C2
p3 ≅ −
1
C1RC
así, en tanto RC aumenta desde cero, el lugar geométrico de los polos del circuito
queda determinado como aparece en la Fig.AP1.9.
jω
−
p3 ≅ −
1
C1 RC
p2 ≅ −
1
R2 C 2
−
gm
C2
2π
σ
1
R1C1
p1 ≅ −
2π
1
CC (RC + R1 + R2 + g m R1 R2 )
Fig.AP1.9 Separación y División de polos de la Fig.AP1.8 en la medida que se aumenta el valor de CC a
partir de cero.
Nótese que el segundo polo se divide en dos, ubicados muy por arriba de la situación
original, quedando fijados a frecuencias del orden de la fT del transistor MOS.
Ahora, volviendo a la expresión [9.35] que indica la posición del cero, se observa que
para que el mismo se ubique en el semiplano derecho, debe ser apenas RC > 1 g m , de
forma que el cero se ubique en el semiplano derecho, haciendo estable el amplificador;
pero lo suficientemente cercano como para ubicar el cero a una muy alta frecuencia
lejos de la banda de operación que se ha designado. El efecto del incremento de Rc se
puede ver en la Fig.AP1.10.
127-136
20/07/2004
jω
2π
Incremento de Rc
RC = 0
σ
2π
Fig.AP1.10 Diagrama de polos y cero, que muestra como se mueve el cero al incrementar el valor de Rc.
Comparando con los resultados de simulación, que pueden ser apreciados en los
gráficos de la Fig.AP1.6 se observa que el incremento de Rc mejora el margen de fase.
Se lleva de 33° (con una Rc demasiado pequeña) a valores por encima de 60° con Rc
mayor ó igual a 10k. Sin embargo un mayor aumento de Rc (ya a los 50k), dando un
beneficioso mucho mayor margen de fase, (en la gráfica de ganancia) puede hacer
ingresar el cero a la banda que se esta utilizando. Lo cual indica que el cero se ha
acercado demasiado al primer polo dominante debido a que, en cuyo caso, se habría
adoptado una Rc demasiado grande.
Siendo la frecuencia de cruce (0dB) que se desea se ubica en 30MHz:
ω t = 2π ⋅ 30MHz = 1,885 ⋅107 1/s
El valor del capacitor que produce un polo dominante a esa frecuencia está dado por:
CC =
gm15
= 0,444pF ≅ 0,5pF
ωt
este capacitor además agrega un cero que está muy cerca de este polo, lo cual degrada
la respuesta en frecuencia del Amplificador Operacional. Para evitar ello, se coloca una
Rc en serie con el capacitor, y su valor está dado por:
RC =
1
= 6,134kΩ ≈ 6kΩ
gm23
Para estos valores se obtiene un GBW (producto ganancia por ancho de banda) de
25MHz.
Recalculando la posición del cero con estos valores de Cc y Rc se tiene:
z=
1
= −1,7GHz
 1

0,5pF ⋅ 
− 6kΩ 
 gm23

128-136
20/07/2004
Que está en el semiplano negativo (dando estabilidad), y muy por arriba de la
frecuencia de cruce (sin afectar el margen de fase). Incluso para valores de Rc más
grandes (10kΩ, 20kΩ) se sigue alejando bastante dicho cero, tal como se verifica en la
simulación.
129-136
20/07/2004
Glosario
ADC:
ADC core:
ADSC:
DAC:
CMOS_KEY:
DSP:
SHA:
S/H:
S-R:
SAR:
SNR:
THD:
SFDR:
CSA:
VLSI:
CMOS:
SCMOS:
MOSIS:
DNL:
INL:
DRC:
LVS:
LVDS:
SCSI:
USB:
ATA:
S-ATA:
GCC:
MSB:
LSB:
Mbps:
Msa/s:
Netlist:
Aliasing:
Analog to Digital Converter
Núcleo del ADC (cuerpo principal del conversor pipeline)
Analog to Digital Sub-Converter
Digital to Analog Converter
Llave complementaria CMOS. (más comúnmente llamada CMOS_SWITCH)
Digital Signal Proccessing
Sampling and Hold Amplifier
Sample and Hold
Shift Register.
Successive Approximation Register
Signal Noise Ratio
Total Harmonic Distortion
Spurious Free Dynamic Range
CMOS subranging ADC
Very Large Scale Integration
Contact Metal Oxide Semiconductor
Scalable CMOS
Servicio de producción de circuitos VLSI
Differential NonLinearity
Integral NonLinearity
Design Rules Check
Layout Vesus Schematic
Low Voltaje Differential Signaling
Small Computer Signal Interface
Universal Serial Bus
AT Attachment
Serial ATA
Gnu C Compiler
Most Significant Bit
Least Significant Bit
Mega bit por segundo
Mega Samples per second
Listado de componentes de un circuito
Distorsión de señal producida por muestrear por debajo de la frecuencia de
Nyquist.
Throuhput: Velocidad de salida.
Glitch:
Transición de señal no deseada.
Tensión de Referencia:
Valor de voltaje positivo o negativo empleado para determinar
si una tensión es positiva ó negativa respectivamente.
Sensibilidad: Voltaje mínimo para producir una conmutación.
Offset:
Desplazamiento del valor de tensión respecto de un valor de referencia.
Auto Zero:
Técnica de compensación de offset utilizada en circuitos comparadores y
amplificadores operacionales.
Schematic
Diseño Esquemático. Esquema circuital utilizado para las simulaciones
SPICE.
130-136
20/07/2004
Índice de figuras y ecuaciones
Fig. 1.2.0 Efecto en el dominio de frecuencia del muestro en el dominio del tiempo. ....................... 12
Fig.1.1.2. Representacion de una señal analógica y señal digitalizada (arriba) y señal de error (abajo)
..................................................................................................................................................... 13
Fig.1.1 Ejemplos de aplicaciones que utilizan intefaces analógico-digital .......................................... 14
Fig.1.1.3. Diferentes Arquitecturas de conversores A/D...................................................................... 15
Fig.1.1.4 Esquema de un conversor SAR de 3-bit y 1 bit por ciclo ..................................................... 17
Fig.1.1.5 Funcionamiento de un conversor SAR de 3-bit .................................................................... 18
Fig.1.2 Modelo típico de un conversor A/D Flash con arreglo de resistencias.................................... 19
Fig.1.3 Diagrama en bloques de un conversor flash de dos pasos. ...................................................... 20
Fig.1.4 Arquitectura de conversión A/D Pipeline ................................................................................ 21
Fig.1.5 Pronóstico del voltaje de alimentación de dispositivos CMOS según la Semiconductor
Industry Association 1997. .......................................................................................................... 26
Fig.1.8 Diagrama en bloques simplificado de una arquitectura de conversión A/D pipeline. ............. 28
Fig.1.10. Diagrama en bloques ejemplo de un conversor pipeline de dos etapas. ............................... 29
Fig. 1.8.1 Ejemplo de conversion pipeline con n1=2 bits y n2=2 bits................................................... 29
Fig.1.9.Principales fuentes de error en los conversores pipeline. ........................................................ 30
Fig.1.10.1 Característica de transferencia manifestandose la presencia de alinealidad en la cadena de
resistencias................................................................................................................................... 31
Fig.1.11 Diagrama en bloques ejemplo de la corrección digital para un conversor pipeline de dos
etapas de 3 bit cada una. .............................................................................................................. 32
Fig.1.12 Diagrama en bloques de una etapa de 2 bits, de un conversor A/D pipeline. [Lewis92]....... 34
Fig.1.13 Característica Ideal de transferencia de una etapa. Residuo ideal Vs Entrada retenida. (a) sin
offsets, (b) con offsets ................................................................................................................. 34
Fig.1.14 Diagrama en bloques de una etapa de dos bits agregando tensiones de offset en el ADSC y
en el DAC. ................................................................................................................................... 35
Fig.1.15. Residuo Vs Entrada Retenida utilizando un comparador extra............................................. 38
Fig. 1.16 Residuo Vs Entrada Retenida sin el comparador superior en el ADSC................................ 39
Fig.1.6. Estimación de consumo de potencia en un Conversor A/D pipeline (caso de B=2 bits por
etapa) ........................................................................................................................................... 41
Fig.1.7 Corriente de polarización de las etapas de un conversor pipeline normalizada respecto de la
primer etapa. ................................................................................................................................ 42
Fig.1.8. Especificaciones de los bloques circuitales de una etapa........................................................ 43
Fig.1.17 Interconexión de las Etapas de un Conversor AD Pipeline ................................................... 45
131-136
20/07/2004
Fig.2.1.Diagrama en Bloques del Conversor A/D Pipeline.................................................................. 46
Fig.2.12.Diseño Esquemático del SHA durante el “Muestreo” ........................................................... 47
Fig.2.13 Diseño Esquemático del SHA durante la “Retención” .......................................................... 48
Fig. 2.13.1. Diseño esquemático de una llave CMOS. (CMOS_KEY)................................................ 48
Fig.2.14 Circuito de prueba para convertir una señal de tiempo continuo a tiempo discreto. ............. 49
Fig.2.15 Análisis transitorio de señales de entrada y salida entre los 102us y 207us .......................... 50
Fig.2.16 Análisis de la capacidad de salida Ch y de entrada Cs........................................................... 51
Fig.2.17. (a) Circuito Eléctrico del cuerpo del conversor Pipeline adicionando el amplificador de
muestreo y retención a la entrada. (b) Circuito Eléctrico interior de una Etapa del Pipeline.
(PIPELINE_STAGE) (c) Circuito Eléctrico del interior de la última etapa del pipeline.
(LAST_STAGE).......................................................................................................................... 54
Fig.2.2.Diagrama en bloques del cuerpo y desarrollo de las etapas del conversor Pipeline. ............... 55
Fig.2.9.Diagrama en Bloques de la lógica de corrección digital.......................................................... 56
Fig. 2.9.1 Circuito lógico del Sumador completo “ADDER” de 3 bits con Carry de salida................ 57
Fig.2.10.Codificación de las salidas digitales de las etapas en binario. ............................................... 57
Fig.2.11.Cuadro de valores obtenidos de cada etapa al momento de obtener los de la última etapa,
indicando el tiempo T transcurrido hasta ese instante ................................................................. 58
Fig.2.3.Circuito Secuencial base del Generador de Clock ................................................................... 59
Fig.2.4.Lógica Combinacional que permite generar las dos Fases de Clock. ...................................... 59
Fig.2.5.Comportamiento del LATCH izquierdo. Entrada / salida y señal de clock. ............................ 60
Fig.2.6.Comportamiento del LATCH derecho. Entrada / salida y señal de clock negada. .................. 61
Fig.2.7.Análisis real de las señales que generan el clock fase A.......................................................... 62
Fig.2.8.Análisis real de las señales que generan el clock fase B.......................................................... 62
Fig.2.18(a) Análisis transitorio de las señales de la primer etapa del cuerpo del conversor pipeline,
durante el semiciclo negativo de la señal de prueba senoidal de entrada. ................................... 64
Fig.2.18(b) Análisis transitorio de las señales de la primer etapa del cuerpo del conversor pipeline,
durante el semiciclo positivo de la señal de prueba senoidal de entrada..................................... 64
Fig. A3.1 Circuito de prueba del SHA ................................................................................................. 66
Fig. A3.2a Respuesta transitoria del Circuito de prueba del SHA para un semiciclo positivo de una
senoide de 10kHz, 5Vp a 2MSa con Vref positiva...................................................................... 67
Fig. A3.2b Respuesta transitoria del Circuito de prueba del SHA para un semiciclo negativo de una
senoide de 10kHz, 5Vp a 2MSa con Vref negativa..................................................................... 67
Fig.A3.3 Comportamiento Transitorio del SHA de salida en la primer etapa de un conversor A/D
Pipeline con Vref en 0v y –2.5v. ................................................................................................. 68
132-136
20/07/2004
Fig.2.20 Diagrama eléctrico del conversor flash de un bit y medio. (a) Formando parte de la etapa del
conversor Pipeline. (b) Circuito eléctrico interno........................................................................ 69
Fig.2.21 Diseño esquemático del comparador CMOS con LATCH. ................................................... 70
Fig.2.22 Circuito de prueba del ADSC. ............................................................................................... 71
Fig.2.23 Comportamiento de las salidas del ADSC utilizando una tensión de entrada de prueba que
varia linealmente de –5v a +5v.................................................................................................... 71
Fig.2.24 Circuito eléctrico interno del conversor D/A, utilizado para la construcción de Vref........... 73
Fig.2.25 (a) [arriba] Circuito de prueba que representa las condiciones de ensayo del DAC. (b) [abajo]
Resultados de simulación para un análisis transitorio del DAC.................................................. 74
Fig.3.1.Diseño del layout MKEY-02.TDB .......................................................................................... 78
Fig.3.2. Diseño del layout BIAS-06.TDB ............................................................................................ 79
Fig.3.3. Diseño del layout COMP-07.TDB.......................................................................................... 80
Fig.3.4. Diseño del layout OPAMP-06.TDB ....................................................................................... 81
Fig.3.5. Diseño del layout NOR-02.TDB............................................................................................. 82
Fig.3.6. Diseño del layout LATCH-03.TDB........................................................................................ 83
Fig.3.7. Diseño del layout SHA.TDB .................................................................................................. 84
Fig.3.8. Diseño del layout ADCFLASH.CELL ................................................................................... 85
Fig.3.9. Diseño del layout CKGEN.TDB............................................................................................. 86
Fig.3.10. Diseño del layout ADSC_06.TDB........................................................................................ 87
Fig.3.11. Diseño del layout DAC-03.TDB........................................................................................... 88
Fig.3.12. Diseño del layout CORE_08.TDB........................................................................................ 89
Fig.A2.1. Gráfico de las salidas de las etapas (residuos) para una señal de entrada senoidal de
amplitud 5v. ............................................................................................................................... 105
Fig.A2.2. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v. 106
Fig.A2.3. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con
un offset interetapa que produzca un error de –1LSB. .............................................................. 107
Fig.A2.4. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con
un offset interetapa que produzca un error de +1LSB............................................................... 108
Fig.A2.5. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con
el máximo valor de ganancia interetapa que produzca un error de 1LSB. ................................ 109
Fig.A2.6. Gráfico de la alinealidad diferencial para una señal de entrada senoidal de amplitud 5v, con
el mínimo valor de ganancia interetapa que produzca un error de 1LSB.................................. 110
Fig.A4.1 Circuito de prueba polarizado con I1=5uA de forma que ID(M10)+ID(M9)= ID(M7)+
ID(M1)+ ID(M8)+ ID(M2). ...................................................................................................... 111
Fig.A4.2 Análisis transitorio de la conmutación de los comparadores .............................................. 112
133-136
20/07/2004
Fig.A4.3. Error Caso Crítico 1: flanco descendente, Av1 < 0, OutP: HI -> LO, OutN: LO -> HI: ... 113
Fig.A4.4. Error Caso Crítico 2: flanco ascendente, Av1 > 0, OutN: HI -> LO, OutP: LO -> HI: ..... 114
Fig.A4.5. Error Caso Crítico 3: flanco ascendente, Av1 < 0, OutN: HI -> LO, OutP: LO -> HI: ..... 114
Fig.A4.6 Error Caso Crítico 4: flanco descendente, Av1 > 0, OutP: HI -> LO, OutN: LO -> HI: .... 115
Fig.A4.7 Caso Crítico 1: Con flanco descendente, Av1 < 0, OutP: HI -> LO, OutN: LO -> HI:...... 115
Fig.A4.8 Caso Crítico 2: Con flanco ascendente, Av1 > 0, OutN: HI -> LO, OutP: LO -> HI:........ 116
Fig.A4.9 Caso Crítico 3: Con flanco ascendente, Av1 < 0, OutN: HI -> HI, OutP: LO -> LO......... 116
Fig.A4.10 Caso Crítico 4: Con flanco descendente, Av1 > 0, OutP: HI -> HI, OutN: LO -> LO..... 117
Fig.AP1.1 Circuito esquemático del amplificador operacional sin compensar.................................. 118
Fig.AP1.2 Circuitos esquemáticos complementarios del amplificador operacional. ......................... 119
Fig.AP1.3 Circuito de prueba del amplificador operacional a emplear en la simulación SPICE, para
obtener las curvas de ganancia de lazo abierto y fase. Curvas de Ganancia y Fase del
Amplificador Operacional sin compensar, en función de la frecuencia .................................... 121
Fig.AP1.4 Diagrama de polos del amplificador operacional sin compensar...................................... 122
Fig.AP1.5 Circuito esquemático del Amplificador Operacional con la capacitancia y resistencia de
compensación. ........................................................................................................................... 123
Fig.AP1.6 Curvas de Ganancia y Fase del amplificador compensado para Cc=0,5pF y distintos
valores de Rc {1, 100, 3k, 6k, 10k, 50k}. Señalando el valor óptimo para el mejor margen de
fase en Rc=10k y enviando el cero a muy alta frecuencia......................................................... 124
Fig.AP1.7 Nueva distribución de polos luego de la compensación. .................................................. 124
Fig.AP1.8 Circuito equivalente del transistor M23, incluyendo la compensación. ........................... 125
Fig.AP1.9 Separación y División de polos de la Fig.AP1.8 en la medida que se aumenta el valor de
CC a partir de cero...................................................................................................................... 127
Fig.AP1.10 Diagrama de polos y cero, que muestra como se mueve el cero al incrementar el valor de
Rc............................................................................................................................................... 128
134-136
20/07/2004
Referencias
[Lewis87]
S. H. Lewis and P. R. Gray, “A pipelined 5-Msample/s 9-bit analog-to-digital
converter,” IEEE J. Solid-State Circuits, vol. 22, pp. 954–961, Dec. 1987.
[Gray88]
S. Surtarja and P. R. Gray, “A Pipelined 13-bit, 250ks/s, 5-V Analog-toDigital Converter”, IEEE J. Solid-State Circuits, vol. 23, pp. 1316-1323, Dec.
1988.
[Gray91]
Y.-M. Lin, B. Kim, and P. R. Gray, “A 13-b, 2.5-MHz self-calibrated
pipelined A/D converter in 3-µm CMOS,” IEEE J. Solid-State Circuits, vol.
26, pp. 628–636, Apr. 1991.
[Lewis92]
S. H. Lewis, H. S. Fetterman, G. F. Gross, Jr. R. Ramachandran, T. R.
Viswanathan, “A 10-b 20Msample/s Analog to Digital Converter”. IEEE J.
Solid-State Circuits, vol. 27, pp. 351-357, Mar. 1992.
[Gray99]
A. M. Abo and P. R. Gray, “A 1.5-V, 10-bit, 14.3-MS/s CMOS Pipeline
Analog-to-Digital Converter” ”. IEEE J. of Solid-State Circuits, vol. 34, No.
5, May 1999.
[Walta01]
M. Waltari, Student Member, IEEE, and K. A. I. Halonen, “1-V 9-Bit
Pipelined Switched-Opamp ADC”. IEEE J. of Solid-State Circuits, vol. 36,
No. 1, January 2001.
[GrayMeyer] P. Gray and R. Meyer, “Analysis and Design of Analog Integrated Circuits”,
1993
[GcmsThesis] “High-Speed, Low-Power, Low Voltage Pipelined Analog-to-Digital
Converter” by George Chien B.S. (University of California, Los Angeles)
1993
[Brooks97]
Todd L. Brooks, David H. Robertson, Daniel F. Kelly, Anthony Del Muro,
and Stephen W. Harston, “A Cascaded Sigma–Delta Pipeline A/D Converter
with 1.25 MHz Signal Bandwidth and 89 dB SNR”. IEEE J. of Solid-State
Circuits, vol. 32, No. 12, December 1997
[Lutzky99]
Brian P. Brandt and Joseph Lutsky, “A 75-mW, 10-b, 20-MSPS CMOS
Subranging ADC with 9.5 Effective Bits at Nyquist”. IEEE J. of Solid-State
Circuits, vol. 34, No. 12, December 1999
135-136
20/07/2004
[Lucent99]
“Lucent Technologies demonstrates higher speeds in disk drive read-channel
integrated circuits made in today's manufacturing processes”, for release
Wednesday Dec. 08, 1999. http://www.lucent.com.
[Lewis01]
Jun Ming, Member IEEE, and Stephen H. Lewis, Fellow IEEE, “An 8-bit
80Msample/s Pipelined Analog-to-Digital Converter With Background
Calibration”. IEEE J. of Solid-State Circuits, vol. 36, No.10, October 2001.
[Pohang02]
“6bit 1.1GS/s CMOS Flash ADC” by Sang Hune Park, Young Chan Jang and
Hong June Park. Dept of Electronic & Electrical Engineering Pohang
University of Science and Technology Hyoja-Dong, Namgu Pohang
Kyungbuk 790-784, KOREA.
[Europaper]
“Design Considerations for High-Speed Low-Power Low-Voltage CMOS
Analog-to-Digital Converters” by Thomas B. Cho, David W. Cline, Cormac
S.G. Conroy, and Paul R. Gray Department of Electrical Engineering and
Computer Sciences, University of California at Berkeley
[master.ps]
“Design Techniques for Parallel Pipelined ADC” by Li Lin. UC Berkeley
1995.
[Maloberti]
“A/D and D/A Converters”, Prof. F. Maloberti, Dep. of Electronics,
University of Pavia, Italy. IEEE-CAS TOUR.
Lecturas complementarias
Ø Dallas Maxim AN383 – Mar 01, 2001 “Understanding Pipelined ADCs”.
Ø Dallas Maxim AN634 – Mar 21, 2000 “Pipeline ADCs Come of Age”.
Ø Dallas Maxim AN2085 - May 31, 2003 “Histogram Testing Determines DNL and
INL Errors”.
Ø MOSIS Scalable CMOS (SCMOS) Design Rules (Revision 7.2)
Ø © 2000 Marc E. Herniter - Schematic Capture Using Orcad Pspice.
Ø Physical Design of CMOS Integrated Circuits using L-Edit, PWS 1995.
136-136