W
WLS
Guest
Olá todos.Eu tenho esse problema com os dados pós simulação O / P (D9.. D0) é alta quando clampe nunca me simular ideal é com 10-bit DAC?Porque é que isto aconteça, ela funciona bem com funtional hspice?Quando não se conectar e simular com os dados do DAC ideal D9 .. D0 ok.
Abaixo está o hspice para a simulação.
Thx in advance.
************************************************** **************
. OPÇÃO POST = 1
. OPÇÃO numdgt = 10
. temp 25
*. tran 11us 2000us
. tran 0.1n 30us
. lib 'cmos_x155.lib' típico
. lib 'mimos_analog_x135.lib' resistance_50
.'035_diode_model lib. lib 'díodos
. opções precisas = 1
. incluem 'D: \ Libero_IDE_7.3 \ mimos2007 \ teste \ comparador \ compnew.dist "
. incluem 'D: \ Libero_IDE_7.3 \ mimos2007 \ teste \ dac10 \ dac10.dist "
. incluem 'D: \ Libero_IDE_7.3 \ mimos2007 \ teste \ sar10 \ sar10.dist "
********** INÍCIO DE IDEALDAC circuito ********************
. SUBCKT bitDAC VDD GND vref vref-Vout B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
R1 VDD 100meg
R2 0 100meg
X9 B9 b9L BitLogic
X8 B8 b8L BitLogic
X7 B7 b7L BitLogic
X6 B6 b6L BitLogic
X5 B5 b5L BitLogic
X4 B4 b4L BitLogic
X3 B3 b3L BitLogic
X2 B2 b2L BitLogic
X1 B1 b1L BitLogic
X0 B0 b0L BitLogic
ETOTAL Vout VOL = 0 '((V (vref )-V (vref-)) / 1024) * ((V (b9L) * 512) (V (b8L) * 256) (V (b7L) * 128) (V (b6L) * 64) (V (b5L) * 32) (V (b4L) * 16) (V (b3L) *
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Legal" border="0" />
(V (b2L) * 4) (V (b1L) * 2) (V (b0L))) (V (vref-)) '
. extremidades
. SUBCKT BitLogic BX BXL
Vone um 0 DC 1V
GS1 BXL um videogravador PWL (1) BX 0 0V, 1meg 3.3v, 1
gs1c BXL 0 Magnetoscópio PWL (1) BX 0 0V, 1 3.3v, 1meg
. extremidades************************************************** **********************
Biblioteca * Nome: ADC10
* Nome Cell: ADC10
* Ver Nome: esquemática
************************************************** **********************
. SUBCKT ADC10 DADOS <0> DATA <1> DATA <2> DATA <3> DATA <4> DATA <5> DATA <6> DATA <7> DATA <8> DATA <9>
Relógio EOC iniciar VIN VRN VRP VDDA GNDA vdac
DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6> dac <7> dac <8> dac <9> amostra comp
*
*
Xi2 vdac GNDA VRN VRP VDDA DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6>
Dac <7> CAD <8> dac <9> DAC10
*
*
Xi1 relógio comp EOC DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6> dac <7> dac <8> dac <9>
DADOS <0> DATA <1> DATA <2> DATA <3> DATA <4> DATA <5> DATA <6> DATA <7> DATA <8> DATA <9> amostra início
GNDA VDDA SAR10
*
*
* XI0 VDDA amostra GNDA VDAC VIN COMPARATORNEW
X10 GNDA comp vdac VDDA VIN amostra Comparator
. ENDS
************************************************** ************************************************** *****
XADC10 D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 relógio EOC iniciar VIN VRN VRP VDDA GNDA vdac
DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6> dac <7> dac <8> dac <9> amostra comp ADC10
XbitDAC VDDA GNDA VRP VRN Vout D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 bitDAC
XbitDAC2 VDDA GNDA VRP VRN vout2 dac <9> CAD <8> dac <7> dac <6> dac <5> dac <4> dac <3> dac <2> dac <1> dac <0> bitDAC
VVDDA VDDA 0 dc 3.3v
VGNDA GNDA 0 dc 0V
VVDD VDD 0 dc 3.3v
VGND GND 0V dc 0
Vclk relógio 0 PULSE (0 3.3 0.01ns 0.01ns 0.01ns 0.5us 1us)
Vrefp VRP 0 DC 3.3V
Vrefm VRN 0 DC 0V
Vstart iniciar 0 PWL (0NS, 0V 100ns, 0V 101ns, 3.3)
VVIN VIN 0 PWL (0NS, 0V 30us, 3.3V)
* VVIN VIN cmo SIN 0 1 10k 0 0 0
* Vcmo cmo 0 DC 1,65
* VVIN VIN 0 pecado (0 1,65 200k 1ns 0 0)
. fft V (Vout) np = 4096 = janela Hamming
. imprimir V (VIN) V (relógio) V (EOC) V (início) V (D0) V (D1) V (D2) V (D3) V (D4) V (D5) V (D6) V (D7) V (D
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Legal" border="0" />
V (D9)
. sonda V (VIN) V (relógio) V (EOC) V (início) V (D0) V (D1) V (D2) V (D3) V (D4) V (D5) V (D6) V (D7) V (D
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Legal" border="0" />
V (D9) V (vdac)
. PROBE V (DAC <0>) V (DAC <1>) V (CAD <2>) V (CAD <3>) V (CAD <4>) V (CAD <5>) V (CAD <6> ) V (CAD <7>) V (CAD <8>) V (CAD <9>)
. PROBE V (amostra) V (comp)
. PROBE V (Vout)
Abaixo está o hspice para a simulação.
Thx in advance.
************************************************** **************
. OPÇÃO POST = 1
. OPÇÃO numdgt = 10
. temp 25
*. tran 11us 2000us
. tran 0.1n 30us
. lib 'cmos_x155.lib' típico
. lib 'mimos_analog_x135.lib' resistance_50
.'035_diode_model lib. lib 'díodos
. opções precisas = 1
. incluem 'D: \ Libero_IDE_7.3 \ mimos2007 \ teste \ comparador \ compnew.dist "
. incluem 'D: \ Libero_IDE_7.3 \ mimos2007 \ teste \ dac10 \ dac10.dist "
. incluem 'D: \ Libero_IDE_7.3 \ mimos2007 \ teste \ sar10 \ sar10.dist "
********** INÍCIO DE IDEALDAC circuito ********************
. SUBCKT bitDAC VDD GND vref vref-Vout B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
R1 VDD 100meg
R2 0 100meg
X9 B9 b9L BitLogic
X8 B8 b8L BitLogic
X7 B7 b7L BitLogic
X6 B6 b6L BitLogic
X5 B5 b5L BitLogic
X4 B4 b4L BitLogic
X3 B3 b3L BitLogic
X2 B2 b2L BitLogic
X1 B1 b1L BitLogic
X0 B0 b0L BitLogic
ETOTAL Vout VOL = 0 '((V (vref )-V (vref-)) / 1024) * ((V (b9L) * 512) (V (b8L) * 256) (V (b7L) * 128) (V (b6L) * 64) (V (b5L) * 32) (V (b4L) * 16) (V (b3L) *
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Legal" border="0" />
(V (b2L) * 4) (V (b1L) * 2) (V (b0L))) (V (vref-)) '
. extremidades
. SUBCKT BitLogic BX BXL
Vone um 0 DC 1V
GS1 BXL um videogravador PWL (1) BX 0 0V, 1meg 3.3v, 1
gs1c BXL 0 Magnetoscópio PWL (1) BX 0 0V, 1 3.3v, 1meg
. extremidades************************************************** **********************
Biblioteca * Nome: ADC10
* Nome Cell: ADC10
* Ver Nome: esquemática
************************************************** **********************
. SUBCKT ADC10 DADOS <0> DATA <1> DATA <2> DATA <3> DATA <4> DATA <5> DATA <6> DATA <7> DATA <8> DATA <9>
Relógio EOC iniciar VIN VRN VRP VDDA GNDA vdac
DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6> dac <7> dac <8> dac <9> amostra comp
*
*
Xi2 vdac GNDA VRN VRP VDDA DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6>
Dac <7> CAD <8> dac <9> DAC10
*
*
Xi1 relógio comp EOC DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6> dac <7> dac <8> dac <9>
DADOS <0> DATA <1> DATA <2> DATA <3> DATA <4> DATA <5> DATA <6> DATA <7> DATA <8> DATA <9> amostra início
GNDA VDDA SAR10
*
*
* XI0 VDDA amostra GNDA VDAC VIN COMPARATORNEW
X10 GNDA comp vdac VDDA VIN amostra Comparator
. ENDS
************************************************** ************************************************** *****
XADC10 D0 D1 D2 D3 D4 D5 D6 D7 D8 D9 relógio EOC iniciar VIN VRN VRP VDDA GNDA vdac
DAC <0> CAD <1> dac <2> dac <3> dac <4> dac <5> dac <6> dac <7> dac <8> dac <9> amostra comp ADC10
XbitDAC VDDA GNDA VRP VRN Vout D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 bitDAC
XbitDAC2 VDDA GNDA VRP VRN vout2 dac <9> CAD <8> dac <7> dac <6> dac <5> dac <4> dac <3> dac <2> dac <1> dac <0> bitDAC
VVDDA VDDA 0 dc 3.3v
VGNDA GNDA 0 dc 0V
VVDD VDD 0 dc 3.3v
VGND GND 0V dc 0
Vclk relógio 0 PULSE (0 3.3 0.01ns 0.01ns 0.01ns 0.5us 1us)
Vrefp VRP 0 DC 3.3V
Vrefm VRN 0 DC 0V
Vstart iniciar 0 PWL (0NS, 0V 100ns, 0V 101ns, 3.3)
VVIN VIN 0 PWL (0NS, 0V 30us, 3.3V)
* VVIN VIN cmo SIN 0 1 10k 0 0 0
* Vcmo cmo 0 DC 1,65
* VVIN VIN 0 pecado (0 1,65 200k 1ns 0 0)
. fft V (Vout) np = 4096 = janela Hamming
. imprimir V (VIN) V (relógio) V (EOC) V (início) V (D0) V (D1) V (D2) V (D3) V (D4) V (D5) V (D6) V (D7) V (D
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Legal" border="0" />
V (D9)
. sonda V (VIN) V (relógio) V (EOC) V (início) V (D0) V (D1) V (D2) V (D3) V (D4) V (D5) V (D6) V (D7) V (D
<img src="http://www.edaboard.com/images/smiles/icon_cool.gif" alt="Legal" border="0" />
V (D9) V (vdac)
. PROBE V (DAC <0>) V (DAC <1>) V (CAD <2>) V (CAD <3>) V (CAD <4>) V (CAD <5>) V (CAD <6> ) V (CAD <7>) V (CAD <8>) V (CAD <9>)
. PROBE V (amostra) V (comp)
. PROBE V (Vout)