реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> HSpice2004 vs HSpice2009, различные результаты для одного проекта
Artemiy14
сообщение Dec 5 2009, 11:38
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 13-11-09
Из: Саратов
Пользователь №: 53 603



Есть проект генератора с ЖИГ-резонатором, который построен на базе диф. каскада, образующего отрицательное сопротивление. Проблема заключается в том, что в HSpice 2004 года моделирование показывает генерацию колебаний, а в HSpice 2009 года (с тем же net-листом) результатом моделирования являются "треугольные колебания"(т.е. наблюдается математическая ошибка).
Но все же нам удалось заставить HSpice 2009 года функционировать. Подключив к ЖИГ-резонатору источник синусоидального сигнала с некоторым демпфирующим фактором по времени, получили затухающие колебания(т.е. генерации нет)
Причем результаты AC анализ обеими программами модели ЖИГ-резонатора и каскада отрицательного сопротивления полностью совпали.

Вопрос:
кто нибудь имел дело с данными версиями HSpice? Какой версии программы доверять?
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 5 2009, 16:52
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Artemiy14 @ Dec 5 2009, 14:38) *
кто нибудь имел дело с данными версиями HSpice? Какой версии программы доверять?

Есть основания 2009-ой доверять больше. А что касается разных результатов - сравните параметры моделирования, всякие там точности, ITL-и, GMIN-ы, ACCURATE, RELVAR/ABSVAR, и т.д. обоих версий. Наверняка там и найдете причину.
Go to the top of the page
 
+Quote Post
Artemiy14
сообщение Dec 6 2009, 06:11
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 13-11-09
Из: Саратов
Пользователь №: 53 603



SM, спасибо за совет. А с возникновением "треугольных колебаний" вы не сталкивались? С чем это может быть связано, какие существуют способы устранения этого нежелательного эффекта? Нам помогло включение затухающего внешнего воздействия. Кстати опция IC=... не дает эффекта(казалось бы, должен возникнуть переходный процесс, а вместо этого треугольные колебания).
Go to the top of the page
 
+Quote Post
fragment
сообщение Dec 6 2009, 15:31
Сообщение #4


Частый гость
**

Группа: Свой
Сообщений: 97
Регистрация: 1-12-05
Из: Беларусь-Тайвань
Пользователь №: 11 657



Не скажу про HSPICE, но в других SPICE-симуляторах подобный эффект часто наблюдается при значении параметра RELTOL по умолчанию (1m).
Попробуйте установить RELTOL равным 1u.
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 6 2009, 21:42
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Artemiy14 @ Dec 6 2009, 09:11) *
SM, спасибо за совет. А с возникновением "треугольных колебаний" вы не сталкивались? С чем это может быть связано, какие существуют способы устранения этого нежелательного эффекта? Нам помогло включение затухающего внешнего воздействия. Кстати опция IC=... не дает эффекта(казалось бы, должен возникнуть переходный процесс, а вместо этого треугольные колебания).


Как правило с недостаточной точностью вычислений или недостаточным временным шагом. На сколько я помню - как раз где-то в версиях 2006-2007 были изменения в праметрах, отвечающих за точность и режитм вычислений. Я сейчас не помню, что там именно менялось, но менялось точно, точно знаю, так как при работе с 2007-мыми и 2008-ми спайсами из 2004-го CosmosGuide бфло явное несоответствие тому, что в гиде, тому что в спайсе. Не все параметры были, и некторые лишние.

Приведите точные значения всех управляющих параметров для обоих спайсов, если хотите совета точнее.

Насчет RELTOL согласен.

Насчет опции IC = а в .TRAN не забыли при этом указать UIC ?
Go to the top of the page
 
+Quote Post
psygash
сообщение Dec 7 2009, 11:42
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 199
Регистрация: 8-09-05
Из: Зеленоград
Пользователь №: 8 390



Попробуйте поставить .OPTION RUNLVL=0
По дефолту в новых версиях hspice этот параметр равен 1.
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 7 2009, 11:57
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(psygash @ Dec 7 2009, 14:42) *
Попробуйте поставить .OPTION RUNLVL=0
По дефолту в новых версиях hspice этот параметр равен 1.


А я бы всадил RUNLVL=5. Кстати - что такое "0" - поясните пожалуйста, по хелпу - disabled - а что disabled-то?.
И RELVAR/ABSVAR снизил бы на пару порядков от дефолта. (0.003 и 0.002 вроде станет)

А также поиграться LVLTIM/DVDT/METHOD

В общем по ходу хромает timestep, из-за слишком больших допусков на ошибку, и Ваш сигнал аппроксимируется треугольником.
Go to the top of the page
 
+Quote Post
Artemiy14
сообщение Dec 7 2009, 15:08
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 13-11-09
Из: Саратов
Пользователь №: 53 603



Цитата(SM @ Dec 7 2009, 00:42) *
Приведите точные значения всех управляющих параметров для обоих спайсов, если хотите совета точнее.

Насчет RELTOL согласен.

Насчет опции IC = а в .TRAN не забыли при этом указать UIC ?


Указать UIC в .TRAN я не забыл, но это не помогло. Но помогла опция .OP 20ns, которая, как я из мануала HSpice2009 узнал, вычисляет рабочую точку в момент времени 20ns. Наблюдался некоторый переходный процесс, но никакой генерации.

Насчет управляющих параметров:
Изначально был net-лист из HSpice2004, стояла задача перейти на моделирование в HSpice2009. *.ini файл в директории обеих программ был практически пустой(управляющих опций не было, только ссылки на библиотеки.). Все управляющие параметры находились в net-листе.

Изначальный net-лист
CODE
*-- tasks & options
.TRAN 4ps 4us
.OPTION POST RESMIN=1u ABSI=1nA ABSV=0.1nV PROBE
...
...


Переделанный мною для HSpice2009
CODE
*-- tasks & options
.TRAN 4ps 4us UIC
.OP 20ns
.OPTION POST RESMIN=1u ABSI=1nA ABSV=0.1nV PROBE
...
...


RUNLVL пробовал ставить 5 мало что менялось. METHOD - ставил метод Гира, и тоже ничего. С опциями LVLTIM/DVDT не работал. Спасибо за совет, надо попробывать.

Кстати RELVAR/ABSVAR это что за параметры?

Да, кстати, генерация должна наблюдаться на 1ГГц. Хотя .TRAN 4ps и проблем возникнуть не должно.

Сообщение отредактировал Artemiy14 - Dec 7 2009, 15:14
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 7 2009, 16:15
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Artemiy14 @ Dec 7 2009, 18:08) *
Указать UIC в .TRAN я не забыл, но это не помогло.

Вообще достаточно указать только UIC в .TRAN, а сам IC не нужен, тогда старт будет со "все по нулям" без вычисления раб. точки. Я этим все время пользуюсь, вот недавно как раз симулировал опорник, у которого меня очень интересовал процесс старта, чтобы выброса не давал.

Цитата(Artemiy14 @ Dec 7 2009, 18:08) *
Кстати RELVAR/ABSVAR это что за параметры?

Ограничение на максимальное изменение потенциала узла для соседних временных точек, это для метода выбора таймстепа DVDT. Т.е. если для следующей точки потенциал узла изменился больше, чем на указанное там, то уменьшается временной интервал, и вычисляется другая точка, чтобы изменение не вылезло за пределы. Т.е. если оно слишком большое, а по дефолту там чуть ли не 300 милливольт абсолютного и 0.2 относительного, то таймстеп может быть слишком велик, что и приведет к Вашим треугольникам вместо реальной картины. Я вот из-за этого наблюдал обратное - незатухающая генерация треугольнков опорником, хотя по всем другим рассчетам ее там никак не могло быть.


Цитата(Artemiy14 @ Dec 7 2009, 18:08) *
Хотя .TRAN 4ps и проблем возникнуть не должно.

Это почему? Эти 4ps это лишь шаг для вывода, на считалку никак не действует. Т.е. оно может рассчитать две точки через пол-наносекунды, если посчитает, что этого достаточно для заданной точности, и потом порезать их линейной интерполяцией при выводе в файл по 4 ps. Вот и ваш треугольник. Самое главное не то, что в .TRAN указано, а что при вычислении использовалось.
Go to the top of the page
 
+Quote Post
Artemiy14
сообщение Dec 7 2009, 16:37
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 13-11-09
Из: Саратов
Пользователь №: 53 603



Цитата(SM @ Dec 7 2009, 19:15) *
Это почему? Эти 4ps это лишь шаг для вывода, на считалку никак не действует. Т.е. оно может рассчитать две точки через пол-наносекунды, если посчитает, что этого достаточно для заданной точности, и потом порезать их линейной интерполяцией при выводе в файл по 4 ps. Вот и ваш треугольник. Самое главное не то, что в .TRAN указано, а что при вычислении использовалось.


Спасибо, буду знать.

А насчет "Ограничение на максимальное изменение потенциала узла для соседних временных точек", то получается довольно интересно. Амплитуда этих треугольников порядка сотни фемто вольт. Как считаете, RELVAR/ABSVAR все равно смогут повлиять на эту ошибку?
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 7 2009, 16:57
Сообщение #11


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Цитата(Artemiy14 @ Dec 7 2009, 19:37) *
Как считаете, RELVAR/ABSVAR все равно смогут повлиять на эту ошибку?

Да, могут. Но то, что Вы описали, похоже полное отсутствие генерации, а эти треугольники - это флуктуации вокруг DC-точки за счет конечной точности вычислений. Т.е. та самая "псевдогенерация", что я в своем опорнике наблюдал. Прежде всего надо разобраться, почему UIC в .TRAN не действует, и почему около нуля времени нет переходного процесса. А .OP тут вообще никак не причем.
Go to the top of the page
 
+Quote Post
Artemiy14
сообщение Dec 7 2009, 17:01
Сообщение #12


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 13-11-09
Из: Саратов
Пользователь №: 53 603



.OP может и не причем, но когда ничего (о чем я знаю) не помогает, остается шаманить со всеми опциями подряд. Около нуля времени переходный процесс все-таки появился. Мне показалось, что помогло именно .OP, хотя я чего только не менял.

Надо будет разобраться с RELTOL и др. По идее генерация должна быть.

Кстати на счет RUNLVL я вычитал, что hspice has started using .option runlvl settings that automatically controls your reltol,delmax etc. Т.е. когда RUNLVL=0, скорее всего отключен именно контроль над reltol,delmax etc.

SM, спасибо Вы мне очень помогли с пониманием того, с чем я столкнулся.

Сообщение отредактировал Artemiy14 - Dec 7 2009, 17:46
Go to the top of the page
 
+Quote Post
psygash
сообщение Dec 7 2009, 17:57
Сообщение #13


Частый гость
**

Группа: Свой
Сообщений: 199
Регистрация: 8-09-05
Из: Зеленоград
Пользователь №: 8 390



Цитата(SM @ Dec 7 2009, 14:57) *
А я бы всадил RUNLVL=5. Кстати - что такое "0" - поясните пожалуйста, по хелпу - disabled - а что disabled-то?.


RUNLVL это параметр, который включает определенные значения для других параметров (оптимизация скорость/точность). Если он равен нулю все оптимизации отключены.
Ограничте максимальный шаг в tran до нескольких пикосикунд. У меня с высокочастотным генератором подобная фигня была в spectre и ultrasim, ограничение maxtimestep помогло.
Go to the top of the page
 
+Quote Post
Artemiy14
сообщение Dec 8 2009, 10:51
Сообщение #14


Участник
*

Группа: Участник
Сообщений: 19
Регистрация: 13-11-09
Из: Саратов
Пользователь №: 53 603



К сожалению, ситуация с моделированием не изменилась. Параметры, которые я использовал:

CODE

*-- tasks & options
.TRAN 4ps 3us UIC
.OPTION POST RESMIN=1u ABSI=1nA RELTOL=1u RUNLVL=5 RELVAR=0.003 ABSVAR=0.002 ABSV=0.1nV PROBE


могу приложить вывод HSpice:

CODE

Using: /usr/bin/time -p /usr/synopsys/C-2009.09/hspice/linux/hspice TG03_Gen_nom.sp
****** HSPICE -- C-2009.09 32-BIT (Aug 24 2009) linux ******
Copyright © 2009 Synopsys, Inc. All Rights Reserved.
Unpublished-rights reserved under US copyright laws.
This program is protected by law and is subject to the
terms and conditions of the license agreement from Synopsys.
Use of this program is your acceptance to be bound by the
license agreement. HSPICE is the trademark of Synopsys, Inc.
Input File: TG03_Gen_nom.sp
lic:
lic: FLEXlm: v8.5b
lic: USER: root HOSTNAME: localhost.localdomain
lic: HOSTID: 001d608c9d4c PID: 5845
lic: Using FLEXlm license file:
lic: -1@lcserver
lic: Checkout 1 hspice
lic: License/Maintenance for hspice will expire on 28-oct-2010/2009.09
lic: FLOATING license(s) on SERVER lcserver
lic:
Init: read install configuration file: /usr/synopsys/C-2009.09/hspice/meta.cfg
1****** HSPICE -- C-2009.09 32-BIT (Aug 24 2009) linux ******
******
* tg03_gen_nom: tran w nominal conditions

****** circuit name directory
circuit number to circuit name directory
number circuitname definition multiplier
0 main circuit


Warning(s) associated with encrypted block(s) were suppressed due to encrypted content.


*****************************************************************
****** option summary
******
runlvl = 5 bypass = 2
Opening plot unit= 15
file=TG03_Gen_nom.pa0


***** job concluded
1****** HSPICE -- C-2009.09 32-BIT (Aug 24 2009) linux ******
******
* tg03_gen_nom: tran w nominal conditions

****** job statistics summary tnom= 25.000 temp= 25.000 *****


****** Machine Information ******
CPU:
model name : AMD Athlon™ 64 X2 Dual Core Processor 4800+
cpu MHz : 2512.928

OS:
Linux version 2.6.18-53.el5xen (brewbuilder@hs20-bc1-7.build.redhat.com) (gcc v
ersion 4.1.2 20070626 (Red Hat 4.1.2-14)) #1 SMP Wed Oct 10 16:48:44 EDT 2007


****** HSPICE Threads Information ******

Command Line Threads Count : 1
Available CPU Count : 2
Actual Model Evaluation(Load) Threads Count : 1
Actual Solver Threads Count : 1


****** Circuit Statistics ******
# nodes = 52 # elements = 78
# resistors = 34 # capacitors = 23 # inductors = 4
# mutual_inds = 1 # vccs = 0 # vcvs = 0
# cccs = 0 # ccvs = 0 # volt_srcs = 1
# curr_srcs = 0 # diodes = 12 # bjts = 0
# jfets = 0 # mosfets = 3 # U elements = 0
# T elements = 0 # W elements = 0 # B elements = 0
# S elements = 0 # P elements = 0 # va device = 0


****** Runtime Statistics (seconds) ******

analysis time # points tot. iter conv.iter
op point 0.00 1 0
transient 0.05 750001 457 205 rev= 21
readin 0.01
errchk 0.01
setup 0.00
output 0.00


total memory used 328 kbytes
total cpu time 0.07 seconds
total elapsed time 0.14 seconds
job started at 13:53:45 12/08/2009
job ended at 13:53:46 12/08/2009


>info: ***** hspice job concluded
lic: Release hspice token(s)
real 0.16
user 0.08
sys 0.00
Go to the top of the page
 
+Quote Post
SM
сообщение Dec 8 2009, 11:11
Сообщение #15


Гуру
******

Группа: Свой
Сообщений: 7 946
Регистрация: 25-02-05
Из: Moscow, Russia
Пользователь №: 2 881



Попробуйте

.OPTION POST PROBE ACCURATE=1 RELVAR=3m ABSVAR=1m

И все таки, как там с UIC и временем около нуля? Разглядите его внимательнее с другим .TRAN, если он там очень быстрый.

Если не секрет, приведите не только вывод, а и .st0 / .lis
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 27th April 2024 - 20:35
Рейтинг@Mail.ru


Страница сгенерированна за 0.01504 секунд с 7
ELECTRONIX ©2004-2016