Jump to content

    
Sign in to follow this  
Rst7

Посоветуйте многопоточный Spice-симулятор

Recommended Posts

Не стоит эта комбинация двух сущностей, задействованная в проекте всего один раз, такого выделения.

Автору виднее, зачем ему подсхема, у него рисовалка такая, возможно.

Share this post


Link to post
Share on other sites
Автору виднее, зачем ему подсхема, у него рисовалка такая, возможно.

Ну тут как вариант - скриптик наваять, на чем-нить типа bash/csh/tcl/perl, который бы, запуская считалку, разобрал бы подсхему на запчасти. Я так думаю, что "если такая рисовалка", то и второй источник впихнуть в подсхему не удастся.

Share this post


Link to post
Share on other sites
Как сделать глобальным узел - понятно, но ток в источнике - непонятно. Чувствую, что рещение где-то на поверхности, но где - не знаю. Заранее спасибо.

А если сделать как нибудь так:

1. Во внешней схеме создать ИНУТ.

2. Генерируемое напряжение объявить глобальным

3. В подсхеме создать ИТУН использующий это глобальное значение

 

Некрасиво, конечно, но если нет другого выхода...

Share this post


Link to post
Share on other sites
......

 

ERROR -- device X_H1.V_V2 is undefined

 

Как сделать глобальным узел - понятно, но ток в источнике - непонятно. Чувствую, что рещение где-то на поверхности, но где - не знаю. Заранее спасибо.

Да Вы просто мастер писать по-нечитабельнее. :)

 

Вам надо просто V_V2 $N_0005 0 SIN 0 1 50 0 0 0 внести в подсхему, ибо подсхема никогда не видит иерархию "вверх". А пин $N_0005 добавить портом подсхемы.

С VH_H1 1 2 DC 0V Вы же обошлись по-хорошему :)

Share this post


Link to post
Share on other sites
Имхо куда проще подсхему убрать. Не стоит эта комбинация двух сущностей, задействованная в проекте всего один раз, такого выделения.

 

Вручную, несомненно, можно избавиться от подсхемы. Но дело в том, что схема создается в препроцессоре Schematics и дополнительно открывать созданный файл и снова его редактировать выглядит крайне нерационально. Полагаю, есть другое решение. Неужели ток в какой-нибудь ветви нельзя передать в подсхему не прибегая к увеличению переменных в интефейсе подсхемы? Я имею в виду механизм передачи через глобальные параметры, т.е. так же, как в языках программирования.

 

А если сделать как нибудь так:

1. Во внешней схеме создать ИНУТ.

2. Генерируемое напряжение объявить глобальным

3. В подсхеме создать ИТУН использующий это глобальное значение

 

Некрасиво, конечно, но если нет другого выхода...

 

В подсхеме ничего создавать не хочется, поскольку она автоматически создается Schematics'ом.

Неужели разработчики связки PSpice/Schematics не предусмотрели возможность использования управляемых источников с несколькими управляющими токами в элегантной форме - без последующего редактирования созданного проекта?

Когда управляющий ток один, фиктивный исток напряжения (как видно из приведенного листинга) автоматически помещается в подсхему и никаких проблем не возникает. За советы всем спасибо.

Share this post


Link to post
Share on other sites
...

Неужели разработчики связки PSpice/Schematics не предусмотрели возможность использования управляемых источников с несколькими управляющими токами в элегантной форме - без последующего редактирования созданного проекта?...

Да это и в схематике выглядит некрасиво, так как для расчета потенциала в узле потребуется знать входные сопротивления подсхем, найти эквивалентное и умножить на ток. А для этого надо "заглянуть" в каждую подсхему и "разобраться" еще и в ней. По жизни же получается еще более криво - даже для одинаковых подсхем входное сопротивление будет отличаться (железо не знает про математику). Обычно делают источник напряжения, а в каждой подсхеме уже преобразуют его в ток. Так называемые токовые повторители и зеркала призваны именно для этих задач. Возможно, есть еще и другие подводные камни, с которыми сталкивались разработчики Спайсов. Поэтому глобальные токи и не в почете.:)

Share this post


Link to post
Share on other sites
Да это и в схематике выглядит некрасиво, так как для расчета потенциала в узле потребуется знать входные сопротивления подсхем, найти эквивалентное и умножить на ток. А для этого надо "заглянуть" в каждую подсхему и "разобраться" еще и в ней. По жизни же получается еще более криво - даже для одинаковых подсхем входное сопротивление будет отличаться (железо не знает про математику). Обычно делают источник напряжения, а в каждой подсхеме уже преобразуют его в ток. Так называемые токовые повторители и зеркала призваны именно для этих задач. Возможно, есть еще и другие подводные камни, с которыми сталкивались разработчики Спайсов. Поэтому глобальные токи и не в почете.:)

 

В связи с тем, что приемлемое решение для источника напряжения, управляемого двумя токами HPOLY (2), пока не нашлось (я имею ввиду создание рабочей схемы в Schematics) не очень красивым и громоздким послужило представление полинома от двух переменных в виде двух линейных источников от одной переменной (т.е. пришлось последовательно включать два ИНУТа вместо одного). К счастью, в задаче нет произведения управляющих токов I1*I2, что облегчило решение.

Share this post


Link to post
Share on other sites

А Вы можете описать вообще отдельно эту подсхему такого источника, прямо в тексте, а в схематике подключить как иерархический блок?

Share this post


Link to post
Share on other sites
А Вы можете описать вообще отдельно эту подсхему такого источника, прямо в тексте, а в схематике подключить как иерархический блок?

 

Признаться, не понимаю что такое "иерархический" блок, но вставить фрагмент net-файла можно с помощью include-функции. Как этим воспользоваться конкретно в этой задаче пока не знаю. Родилась новая идея: если у ИНУТа один из управляющих токов является током самого источника, то такой случай можно реализовать в той же мнемосхеме (блок с 4-мя выводами). В качестве второго управляющего тока как раз будет заводиться ток ВНЕШНЕГО источника. Конечно, такое решение - полумера.

Share this post


Link to post
Share on other sites
Признаться, не понимаю что такое "иерархический" блок,.

Это такая штуковина, которая на схеме выглядит как квадрат с пинами, экспортируется в SPICE как Xxxx, ну а include это само собой. Я же не знаю, что у Вас за схематика.

Share this post


Link to post
Share on other sites
Это такая штуковина, которая на схеме выглядит как квадрат с пинами, экспортируется в SPICE как Xxxx, ну а include это само собой. Я же не знаю, что у Вас за схематика.

 

Я пользуюсь Schematics'ом (от OrCAD). Там действительно можно создавать элементы с большим количеством выводов/пинов (в данном случае с 6-ю). Похоже, Ваше предложение - это наиболее реальный подход для небольшого количества управляющих токов.

Share this post


Link to post
Share on other sites

Возвращаясь непосредственно к теме, поднятой в начале вопроса.

Присутствовал при демонстрации продукции ф. Magma, в том числе и SPICE моделировщика Finesim. В начале было много рекламы, про то что скорость до 15-20 раз выше по сравнению с Cadence и synopsys при условии сохранения точности + поддержка многопроцессорности... Попросили их на конкретном примере показать превосходство. Дали кусок реального проекта - АЦП.

Результат :

по точности-> результат идентичен spectre

по скорости -> (Finesim схему моделировал на буке с 4 ядрами, Spectre (MMSIM 71) на серваке в режиме turbo в 4 потока) в tran анализе - почти в 17 раз finesim быстрее

__________________

Share this post


Link to post
Share on other sites
по точности-> результат идентичен spectre

по скорости -> (Finesim схему моделировал на буке с 4 ядрами, Spectre (MMSIM 71) на серваке в режиме turbo в 4 потока) в tran анализе - почти в 17 раз finesim быстрее

Это со spectre, он относительный тормоз по определению. А вот синопсис обещает в XA Technology - "SPICE accuracy with FastSPICE performance and capacity" - с ним то сравнивали?

Share this post


Link to post
Share on other sites

Ладно, вернемся к теме :)

 

К сожалению, качать hspice и прикручивать к нему схематик сейчас нет ни времени, ни желания. А случайно попавшийся под руку LTspice IV, как оказалось, вполне многопоточность утилизирует. Да и в один поток считает явно веселее Микрокапа. Пока пользуюсь.

Share this post


Link to post
Share on other sites
Да и в один поток считает явно веселее Микрокапа. Пока пользуюсь.

А с этого места можно поподробнее?

Вы силовые схемы в нем считаете? И результат практикой подтверждается?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this