МИЭТ:ИЭМС. Консультационный центр.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » МИЭТ:ИЭМС. Консультационный центр. » Топология (в Layouteditor) » Работа со схемным редактором Layouteditor.


Работа со схемным редактором Layouteditor.

Сообщений 1 страница 9 из 9

1

Здесь будет обсуждение вопросов работы со схемным редактором программы Layouteditor включая:
- создание библиотек схемных символов;
- макросы конвертации *.SCH схем в формат *.LES;
- экстракция PSpice нетлиста и автоматический запуск моделирования в PSpiceA/D;
- вопросы экстракции паразитных R и С элементов (позже);
- вопросы автоматической сверки топологии со схемой, режим "netlist driven layout".

!!! NEW  !!!   ТУТ лежит масштабное обновление комплекта макросов для работы в Layouteditor!!! NEW  !!!

0

2

Для начала приведу выдержку из библиотеки openCellLibrary.lel.
В комментариях даны пояснения

LEL формат описания элементов на примере AND2 с комментариями

<Component AND2>            - AND2 это имя библиотечного компонента
<Description>                - текстовое описание элемента, пояснения
nangate openCellLibrary
</Description>
<Label>                - список параметров, отображаемых на листе схемы
$output
</Label>
<Parameter>                - список параметров схемы
<list output X1 X2 X4>            - параметр "output" задан, как список. т.е. пользователь может выбрать только одно из значений списка
</Parameter>
<Layout>                - привязка топологической ячейки к схемному символу
[cell]                - здесь указан список разных ячеек, в зависимости от выбранного значения параметра "output"
# device-type    file    cell
output=X1 openCellLibrary/AND2_X1.gds AND2_X1
output=X2 openCellLibrary/AND2_X2.gds AND2_X2
output=X4 openCellLibrary/AND2_X4.gds AND2_X4
</Layout>
<Prefix L>                - префикс имени элемента на схеме. т.е. таким элементам на схеме будут присваиваться имена вида L1, L2, L37 ...
<Symbol>                - рисунок символа, числа идут координатными парами XY, желаемый символ можно нарисовать на листе в клетку и найти все его вершины
<Arc 0 0 0 -30 0 30  wire >            - дуга, XY-центр, XY-начало дуги, XY-конец дуги, тип линии (обход против часовой стрелки)
<Line 0 -30 -20 -30 -20 30 0 30  wire >        - отрезок, XY-начало, XY-конец, тип линии
<Line -20 -15 -30 -15 wire >
<Line -20 15 -30 15 wire >
<Line 30 0 40 0 wire >
<Port -30 15 A1>            - внешний вывод (он же - порт, пин, pin, нога) элемента, XY-положение, имя вывода
<Port -30 -15 A2>
<Port  40 0 ZN>
<Port  0 -50 VSS global >            - глобальный порт элемента, XY-положение, имя вывода, указатель "global"
<Port  0 -70 VDD global >            - (глобальный порт не требует разводки на схеме и может вообще не отображаться на элементе)
</Symbol>
<Netlist spice>                - описание элемента при экстракции нетлиста (*.CIR файла), в данном случае в формате PSpice
X$devicename VSS VDD $node(A1) $node(A2) $node(ZN) AND2_$output
</Netlist>
<Model spice>                - описание моделей, в данном случае в формате PSpice
.include $librarypath/openCellLibrary/spicemodel.sp    - здесь модели определены поключением файла, но можно и явно их прописать через директиву ".MODEL" 
</Model>
</Component>

*) при сохранении схемного файла либо экстракции нетлиста конструкции вида $name будут заменены значением параметра name, например вместо $devicename будет написано L1
*) при сохранении схемного файла либо экстракции нетлиста конструкции вида $node(portname) будут заменены именем узла подключения порта portname, например вместо $node(A1) будет написано net_10
**) тегов <Netlist [имя формата]> и <Model [имя формата]> может быть несколько для форматов нетлиста разных программ (PSpice, HSPICE, Qucs, LTspice ...),
**) далее в примере из моей библиотеки будет два варианта PSpice описания - для логического и для схемотехнического моделирования

Ключевым моментом для возможности прямой трансляции схем *.SCH в схемы *.LES (LayoutEditor Scheme) является геометрическая совместимость символов элементов. Т.е. в Layouteditor элементы надо рисовать в соответствии с символом из Schematics, при этом один шаг сетки схемы Schematics равен 10 единицам в координатах Layouteditor. Начало координат символа в Layouteditor должно совпадать с положением метки "origin" в символе Schematics.

0

3

Символьная библиотека MIET_SCH_LES.SLB (ссылка на скачивание в первом посте и в разделе литературы) для программы Schematics содержит набор элементов, достаточный для построения цифровых схем курсовых проектов.
Библиотека предназначена для последующей трансляции схем из формата *.SCH программы Schematics в формат *.LES программы Layouteditor.
Все элементы этой библиотеки, по сути, являются копиями элементов библиотеки стандартной логики 74НС и полностью взаимозаменяемы с помощью команды Replace программы Schematics.

Состав библиотеки MIET_SCH_LES.SLB:
[№] [имя элемента]  [аналог в библиотеке 74НС] * [логическая функция, описание, комментарии]
1     M_INV         74HC04       * инвертор
2     M_NAND2     74HC00       * 2-И-НЕ
3     M_AND2       74HC08       * 2-И
4     M_NAND3     74HC10       * 3-И-НЕ
5     M_AND3       74HC11       * 3-И
6     M_NOR2       74HC02       * 2-ИЛИ-НЕ
7     M_OR2         74HC32       * 2-ИЛИ
8     M_NOR3       74HC27       * 3-ИЛИ-НЕ
9     M_OR3         74HC4075    * 3-ИЛИ
10    M_XNOR      74HC386      * Исключающее ИЛИ-НЕ = сложение по модулю 2 с инверсией
11    M_XOR        74HC7266    * Исключающее ИЛИ = сложение по модулю 2
12    M_FFJKPC    74HC76       * JK триггер, синхронизируемый срезом, с асинхронными входами сброса (!Clear) и установки (!Preset)
13    M_FFJKC      74HC73       * JK триггер, синхронизируемый срезом, с асинхронным входом сброса (!Clear)
14    M_FFDPC     74HC74       * DC триггер, синхронизируемый фронтом, с аснхронными входами сброса (!Clear) и установки (!Preset) 

15    M_DIGCLOCK  DIGCLOCK   * цифровой импульсный источник сигнала
16    M_LO           LO              * цифровой источник сигнала, константа "нуля"
17    M_HI            HI              * цифровой источник сигнала, константа "единицы"
18    M_DIGSTIM   DIGSTIM       * цифровой импульсный источник сигнала, описываемый файлом *.STIM

0

4

Для схемного редактора программы Layouteditor создана аналогичная библиотека MIET_SCH_LES.LEL (ссылка на скачивание в первом посте и в разделе литературы), которая содержит все элементы "параллельной" библиотеки программы Schematics.
Дополнительно в нее добавлен элемент M_TRAN_DIG, позволяющий задать задание на моделирование по времени для цифровой схемы.

Состав библиотеки MIET_SCH_LES.LEL:
[№] [имя элемента]  [имя файла топологии] [имя ячейкив файле топологии] *[описание, комментарии]
1     M_INV         MIET_SCH_LES\M_INV.GDS        M_INV        *
2     M_NAND2     MIET_SCH_LES\M_NAND2.GDS    M_NAND2    *
3     M_AND2       MIET_SCH_LES\M_AND2.GDS     M_AND2      *
4     M_NAND3     MIET_SCH_LES\M_NAND3.GDS    M_NANВ3    *
5     M_AND3       MIET_SCH_LES\M_AND3.GDS     M_AND3       *
6     M_NOR2       MIET_SCH_LES\M_NOR2.GDS     M_NOR2       *
7     M_OR2         MIET_SCH_LES\M_OR2.GDS       M_OR2        *
8     M_NOR3       MIET_SCH_LES\M_NOR3.GDS     M_NOR3       *
9     M_OR3         MIET_SCH_LES\M_OR3.GDS       M_OR3        *
10    M_XNOR      MIET_SCH_LES\M_XNOR.GDS     M_XNOR       *
11    M_XOR        MIET_SCH_LES\M_XNOR.GDS     M_XNOR       *
12    M_FFJKPC    MIET_SCH_LES\M_FFJKPC.GDS   M_FFJKPC    *
13    M_FFJKC      MIET_SCH_LES\M_FFJKC.GDS    M_FFJKC      *
14    M_FFDPC     MIET_SCH_LES\M_FFDPC.GDS    M_FFDPC     * 

15    M_DIGCLOCK                -                           -               * топологического изображения не предусмотрено вообще
16    M_LO                          -                           -               * топологического изображения не предусмотрено вообще
17    M_HI                          -                           -               * топологического изображения не предусмотрено вообще
18    M_DIGSTIM                 -                           -               * топологического изображения не предусмотрено вообще, экстракция в *.CIR пока поддерживается неполностью
19    M_TRAN_DIG               -                           -               * топологического изображения не предусмотрено вообще

*) Имя файла топологии и имя ячейки заданы по умолчанию, т.е. могут быть изменены. Топологический файл может быть вобще один и содержать все топологические ячейки.

**) В каждом библиотечном элементе уже прописан формат экстракции в spice-нетлист, НО пока только для логического моделирования. Формат экстракции "транзисторного" spice-нетлиста вскоре будет добавлен.

0

5

ПРИМЕР описания элемента в библиотеке MIET_SCH_LES.LEL
------------------------------------------------------

<Component M_INV>                                                                                     * имя компонента
<Description>
DIGITAL inverter - analog of 74HC04 element in OrCAD
</Description>
<Parameter>                                                                                                * параметры
<list ORCAD_ANALOG 74HC04>
<list MNTYMXDLY 0>
<list Technology UNIVERSAL>                                                                 ** параметр - заготовка для будущего переключения между вариантами топологии для разных технологических базисов
</Parameter>
<Layout>                                                                                                    * тег привязки топологического файла и его ячейки
[cell]
# device-type      file      cell
Technology=UNIVERSAL      MIET_SCH_LES\M_INV.GDS      M_INV         * [условие] [имя файла топологии] [имя ячейки в файле топологии]
</Layout>
<Prefix U>
<Label>               
$devicename
</Label>
<Symbol>
<Port 0 0 A>
<Port 50 0 Y>
<Line 0 0 10 0 #0000c0>
<Line 10 -20 10 20 #0000c0>
<Line 10 20 40 0 #0000c0>
<Line 10 -20 40 0 #0000c0>
<Line 44 0 50 0 #0000c0>
<Circle 40 -2 44 2 #0000c0>
</Symbol>
<Offsetlabel -360 10 25>
<Offsetlabel -270 20 35>
<Offsetlabel -180 -35 20>
<Offsetlabel -90 25 -10>
<Offsetlabel 0 10 25>
<Offsetlabel 90 20 35>
<Offsetlabel 180 -35 20>
<Offsetlabel 270 25 -10>
<Netlist miet_digital_spice>                                                                             * тег Spice-описания элемента в *.CIR файле для логического моделирования
X_$devicename $node(A) $node(Y) $G_DPWR $G_DGND 74HC04 PARAMS:
+ IO_LEVEL=0 MNTYMXDLY=$MNTYMXDLY
</Netlist>
<Netlist miet_analog_spice>                                                                             * тег Spice-описания элемента в *.CIR файле для схемотехнического моделирования
M1_$devicename $node(Y) $node(A) 0 0 MbreakN W=0.8u L=0.4u
M2_$devicename $node(Y) $node(A) VDD VDD MbreakP W=2.4u L=0.4u          ** VDD - имя узла питания, к одноименному порту должен быть подключен источник питания на схеме электрической.
</Netlist>
</Component>

*) Выделенное полужирным шрифтом можно и нужно редактировать в соответствии с именами своих топологических файлов, именами ячеек в них, данными по варианту задания ...
**) Расширяя список значений парметра Technology можно привязть к этому символу несколько разных топологических изображений, соответствующих разным технологиям. Т.е., в принципе, можно сделать универсальную библиотеку для любых технологий.
***) В скором времени в описания элементов будут добавлены форматы spice-описания на "транзисторном" уровне и источники постоянного и импульсного напряжений. Это позволит получать нетлист для схемотехнического моделирования.
****) Подключение к *.CIR файлу библиотеки моделей (breakout.lib или nom.lib)осуществляется автоматически макросом экстракции нетлиста. При этом, конечно, модели транзисторов в  breakout.lib нужно вписать самостоятельно.

0

6

ТУТ выложены макросы:

- конвертации схем из формата SCH в LES;

- экстракции логического и схемотехнического нетлистов (*.CIR);

- макросы автоматического запуска моделирования полученных *.CIR  файлов в программе PSpice системы OrCAD.

0

7

Очередное обновление макросов можно взять ТУТ

макрос технологии - версия 6.1
     Исправлены досадные мелкие ошибки в настройке проводящих слоев.

макрос конвертации схем - версия 1.1
     Добавлен автозапуск окна схематика после конвертации файла. Как в нем автоматом открыть сконвертированную схему пока не знаю.

макрос проверки правил проектирования топологии - версия 2.0
     Дополнены правила для AMS-12. В слое "port" должны быть только объекты типа Text.



символьная библиотека
     поправлен примерный топологический файл ячейки инвертора, теперь шины питания и земли подписаны в соответствии с глобальными узлами схемных логических элементов

0

8

Обновлен архив макросов - брать ТУТ

Изменения:

- в макросе конвертации включена проверка типа открываемого файла, к обработке допускаются только SCH. Теперь нет риска повредить какие либо другие файлы. Версия макроса 1.2 отбражается в имени макроса в меню программы.

- изменен макрос настроек слоев для изготовления скриншотов, изменены цвета слоев.

- в папку Example and Comments добавлено описание практического занятия по освоению работы со схемным редактором Lаyouteditor и прорисовке топологии в режиме netlist driven layout.

0

9

Здесь (п.4) выложил обновление макросов.

Изменения:
1. Исправлена ошибка в библиотеке символов для схемного редактора Лэйаута, приводившая к вылету макроса конвертации схем.
2. В конвертер схем добавлено сообщение о завершении работы макроса. (Теперь версия 1.3)
3. Изменена структура расположения файлов в архиве. Теперь его достаточно просто распаковать в корневую директорию лэйаута с перезаписью. Старые файлы рекомендуется удалить заранее.

Как привязать топологию логических элементов к символьной библиотеке лэйаута?
Как запустить конвертер логической SCH схемы?
Как рисовать топологию в режиме netlist driven layout?
Все это расписано в файле "Работа с MIET_SCH2LES v0.pdf" на примере тестовой схемы Ring7.sch. Этот хэлп и схема-пример находятся в папке "Example and Comments".

0


Вы здесь » МИЭТ:ИЭМС. Консультационный центр. » Топология (в Layouteditor) » Работа со схемным редактором Layouteditor.