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

 
 
 
Reply to this topicStart new topic
> hspice transient noise
kDaniu
сообщение Apr 4 2008, 00:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 13-06-07
Пользователь №: 28 412



всем привет
есть такой вопрос:
есть ли возможность в ходе hspice симулции подключить внутренний "шум" цифровой схемы ? (как в spectre transient noise simulation, где ноис генерируется автоматически/последовательно в ходе симуляции)?
на данній момент ноис генерируется в матлабе и подключается в нужных (особо важных) местах испльзуя компоненту PWL, но это очень неудобно, поскольку файл нетлиста очень большой... и соотв. симуляция медленная sad.gif
Go to the top of the page
 
+Quote Post
dmmos
сообщение Apr 4 2008, 07:25
Сообщение #2


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 19-01-06
Пользователь №: 13 363



Цитата(kDaniu @ Apr 4 2008, 04:56) *
всем привет
есть такой вопрос:
есть ли возможность в ходе hspice симулции подключить внутренний "шум" цифровой схемы ? (как в spectre transient noise simulation, где ноис генерируется автоматически/последовательно в ходе симуляции)?
на данній момент ноис генерируется в матлабе и подключается в нужных (особо важных) местах испльзуя компоненту PWL, но это очень неудобно, поскольку файл нетлиста очень большой... и соотв. симуляция медленная sad.gif


Я не знаю, как в hspice, но в pspice orcad я делал аналогично. Только у меня список значений шумового сигнала не заносится в netlist, а читается из внешнего файла. Скорость расчета нормальная. В принципе, есть еще пара вариантов:
1. Через stimulus генерить произвольные сигналы.
2. Построить на сдвиговом регистре генератор псевдослучайных чисел, подключить к ЦАП - и вот Вам источник шума.
Эти две идеи я не проверял на практике, потому что устраивало чтение из файла.
Go to the top of the page
 
+Quote Post
kDaniu
сообщение Apr 4 2008, 23:34
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 13-06-07
Пользователь №: 28 412



Цитата(dmmos @ Apr 4 2008, 16:25) *
Только у меня список значений шумового сигнала не заносится в netlist, а читается из внешнего файла. Скорость расчета нормальная. В принципе, есть еще пара вариантов:
1. Через stimulus генерить произвольные сигналы.
2. Построить на сдвиговом регистре генератор псевдослучайных чисел, подключить к ЦАП - и вот Вам источник шума.


1. можеш кинуть кусочек нетлиста (гже подключаеш шум)? я пытался так сделать, но hspice не принимал мой код

2. со стимулсами пока не разобрался, как єто можно реализовать
3. с LFSR тоже вариант, но мне надо гаус получить...

спасибо
Go to the top of the page
 
+Quote Post
dmmos
сообщение Apr 8 2008, 09:49
Сообщение #4


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 19-01-06
Пользователь №: 13 363



Цитата(kDaniu @ Apr 5 2008, 03:34) *
1. можеш кинуть кусочек нетлиста (гже подключаеш шум)? я пытался так сделать, но hspice не принимал мой код

спасибо


Пожалуйста. Сделал простейшую схему - источник из файла (PWL.txt) и резистор. Вот как выглядит директивы:

*Analysis directives:
.TRAN 0 40ns 0
.PROBE V(alias(*)) I(alias(*)) W(alias(*)) D(alias(*)) NOISE(alias(*))
.INC "..\SCHEMATIC1.net"



**** INCLUDING SCHEMATIC1.net ****
* source PWL_FILE
V_V1 N14324 0 PWL
+ FILE "e:\OrCAD_Data\test project\PWL.txt"
R_R1 N14324 0 1k

**** RESUMING bias.cir ****
.END

Сообщение отредактировал dmmos - Apr 8 2008, 09:49
Go to the top of the page
 
+Quote Post
kDaniu
сообщение Apr 21 2008, 23:40
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 13-06-07
Пользователь №: 28 412



Цитата(dmmos @ Apr 8 2008, 18:49) *
Пожалуйста. Сделал простейшую схему - источник из файла (PWL.txt) и резистор. Вот как выглядит директивы:
.....

нашел время проверить данную возможность, и ничего у меня не вышло sad.gif
ругается на подключаемые файлы с "шумом".
если я в каденсе подключаю файл с шумом через pwlf, формат файла у меня такой:
время шум
0,00Е++0 5,56084Е-04
5,00У-11 -1,34719Е-04
и т.д
в таком формате файлы подтягивает каденс и симулирует (hspice) нормально

но как только я подключаю эти файлы как Вы dmmos показали - у меня hspice дает ошибки (unrecognizable data card) sad.gif

можно еще попросить у Вас формат файла с подключаемым шумом ?

спасибо
Go to the top of the page
 
+Quote Post
dmmos
сообщение Apr 23 2008, 19:26
Сообщение #6


Участник
*

Группа: Свой
Сообщений: 54
Регистрация: 19-01-06
Пользователь №: 13 363



Цитата(kDaniu @ Apr 22 2008, 03:40) *
нашел время проверить данную возможность, и ничего у меня не вышло sad.gif
ругается на подключаемые файлы с "шумом".
если я в каденсе подключаю файл с шумом через pwlf, формат файла у меня такой:
время шум
0,00Е++0 5,56084Е-04
5,00У-11 -1,34719Е-04
и т.д
в таком формате файлы подтягивает каденс и симулирует (hspice) нормально

но как только я подключаю эти файлы как Вы dmmos показали - у меня hspice дает ошибки (unrecognizable data card) sad.gif

можно еще попросить у Вас формат файла с подключаемым шумом ?

спасибо


Честно говоря, я не совсем понял: если Вы пишете, что "симулирует нормально", то в чем проблема? И еще не понял, почему используете "pwlf", а не "pwl". Сейчас пишу из дома, на работе буду только послезавтра, но насколько я помню, файл я сделал аналогично: на каждой строке сначала время, потом, через пробел - напряжение. На следующей строке - следующая точка. Каждой точке - отдельная строка. Кстати, почему у Вас два плюса во времени - это опечатка?
Go to the top of the page
 
+Quote Post
kDaniu
сообщение Apr 29 2008, 09:50
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 38
Регистрация: 13-06-07
Пользователь №: 28 412



Цитата(dmmos @ Apr 24 2008, 04:26) *
Честно говоря, я не совсем понял: если Вы пишете, что "симулирует нормально", то в чем проблема? И еще не понял, почему используете "pwlf", а не "pwl". Сейчас пишу из дома, на работе буду только послезавтра, но насколько я помню, файл я сделал аналогично: на каждой строке сначала время, потом, через пробел - напряжение. На следующей строке - следующая точка. Каждой точке - отдельная строка. Кстати, почему у Вас два плюса во времени - это опечатка?


pwlf это в кедансе компонента, которая принимает на вход файл с ноисом (формат: время значение_ноиса)
в hspice нетлисте pwl вместо pwlf.
после кедан скематика я получаю нетлист - который в hspice уже нормально симулируется (но в нем ноис включен в нетлист, от чего размер нетлиста очень большой и т.д.)
при попытке подллючения файла с ноисом используя Ваш dmmos метод - hspice просто регается.

any way, на http://www.designers-guide.org/Forum/YaBB....204165488/15#18 подсказали добрые люди использовать rdist_normal(seed, mean, stddev) функциюб верилог-А, которая по ходу симуляции дает нужное значение шума.

да, это не совсем 100% решение как реализовано в Спектре симуляторе (Spectre Transient Noise) НО, за неимением лучшего в hspice - можно использолвать

п.с. как я сказал тут, http://www.designers-guide.org/Forum/YaBB....204165488/15#18, ноис от верилог-А функции rdist_normal вырождается сравнительно быстро (наверное какойто ЛКГ урезаный там реализовали), но если апдейтить сиид после некоторого количества взятых значений ноиса (напр. 10000), то вполне можно использовать на ~длительных симуляциях

всем спасибо за внимание
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 18th July 2025 - 06:38
Рейтинг@Mail.ru


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