Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Использование Reusable Block
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Mentor-ExpeditionPCB
Duke_N
Возникли следующие вопросы по использованию Reusable Block в Expedition PCB.
Где редактировать символ блока? Почему-то после установки блока на эл. схему символ не редактируется (т.е. после ПКМ -> Edit Symbol опция Place -> Line(Rectangle, Arc и т.д.) не активна.

Затем Compile CDB проходит, а Package Design(и с точно такими же сообщениями Forward annotation из Expedition PCB) нет.

Common Data Base has been read

Target PDB Name: Work\Layout_Temp\PartsDB.pdb

ERROR: No parts were specified.

ERROR: Unable to create local PDB

ERROR: Problem Making Local Parts DataBase

DataBase Load is being terminated with 3 errors and 0 warnings.
Logic Data has NOT been Compiled.

Так же нактивна вкладка Editor Control-> Clusters&Rooms

Какие проблемы с локальной базой и как это исправить?
fill
Цитата(Duke_N @ Sep 14 2006, 14:31) *
Возникли следующие вопросы по использованию Reusable Block в Expedition PCB.
Где редактировать символ блока? Почему-то после установки блока на эл. схему символ не редактируется (т.е. после ПКМ -> Edit Symbol опция Place -> Line(Rectangle, Arc и т.д.) не активна.

Затем Compile CDB проходит, а Package Design(и с точно такими же сообщениями Forward annotation из Expedition PCB) нет.

Common Data Base has been read

Target PDB Name: Work\Layout_Temp\PartsDB.pdb

ERROR: No parts were specified.

ERROR: Unable to create local PDB

ERROR: Problem Making Local Parts DataBase

DataBase Load is being terminated with 3 errors and 0 warnings.
Logic Data has NOT been Compiled.

Так же нактивна вкладка Editor Control-> Clusters&Rooms

Какие проблемы с локальной базой и как это исправить?


1. по умолчанию для схемы создается тип символа Hierachical Block, который редактируется прямо на схеме (растягивается\сжимается, к нему добавляют\удаляют пины, но рисование графики в нем невозможно, пины сами распологаются строго по границе тела символа (если попробовать переместить какую либо из сторон прямоугольника тела символа, то за ней переместятся и все пины лежавшие на этой стороне).
2. есть другой тип символа Hierachical Symbol, к нему тоже можно подключить подсхему но при этом он редактируется как обычный символ.
3. более подробно по шагам, что и как сделали до получения ошибки
Kaligooola
Есть вопрос по использованию переиспользуемых блоков.
При создании блока была сделана схема с использованием в ней устройств с описаными пинами питания VCC_An. На символе микросхемы не показаны выводы питания микросхемы. Для того, чтоб отфильтровать питание ставится дроссель, а за ним идет пара емкостей (электролит+керамика) подсоединили к VCC_An. в схеме переиспользуемого блока сделан вывод на VCC с другого конца дросселя.
В общей схеме подключаю блоки к VCC и ожидаю получить, что схема подключена через мои фильтры к VCC и у каждого блока своя VCC_An_1, VCC_An_2 ..., но не тут-то было. Получаю подключение VCC как положено, но VCC_An у всех блоков одно и тоже.
применение атрибута Supply Rename к Reusable Block только усугубляет задачу. Разведенная цепь остается с имененм VCC_An (общая для всей схемы), а к ногам элементов подводится неразведенные соединения и выдается предупреждение о возможном КЗ внутри всех переиспользуемых блоков.

Пока что переделал блок (убрал из него дроссельки) по питанию, и будут у меня 12 аналоговых микросхем с развязкой по питанию только блокирующими конденсаторами. sad.gif

Кто нибудь знает как преодолеть этот барьер, и возможно ли применеие Supply Rename к каждому переиспользуемому блоку отдельно?

Заранее спасибо.
fill
Reusable_Block это фактически готовый мини проект платы. Соответственно схема в нем зафиксирована, т.е названия цепей соответствуют плате.
Поэтому изменить названия цепей в копиях повторяемых блоков (даже если это цепь создаваемая через PDB) неполучится.
Supply Rename будет работать, если иметь блочную структуру на уровне схемы с повторяемым размещением и трассировкой на плате (но не через Reusable_Block, а через Copy_Circuit). При этом Supply Rename в подсхемах надо вводить как тип Instance (чтоб в каждой подсхеме получилось свое соединение).
Visero
апну тему
можно ли изменять отдельные reusable blocks на плате, без изменений в Цбиблиотеке? есть ли какая-нить explode команда? Допустим ситуация - юзается на плате эн число блоков, один из них надо слеегка модифицировать, чтобы влез. Изменю библиотеку - изменения полезут во все блоки.
Vadim
В этом случае Вам придется завести еще один(несколько) Reuse для модифицируемого(ых) блока(ов).
Есть еще вариант - "cломать" reuse в проекте и подправить все, что Вы хотите. Только учтите, что потом восстановить их будет уже нельзя.
fill
Цитата(Visero @ May 12 2009, 09:16) *
апну тему
можно ли изменять отдельные reusable blocks на плате, без изменений в Цбиблиотеке? есть ли какая-нить explode команда? Допустим ситуация - юзается на плате эн число блоков, один из них надо слеегка модифицировать, чтобы влез. Изменю библиотеку - изменения полезут во все блоки.


Edit>Modify>Flatten_Reusable_Block
Visero
Vadim, fill, спасибо.
Может кому далее будет интересным - элементы "разглаженного" блока после указанного действия не хотят двигаться. Необходимо удалить все проводники/виасы (в блоке они залочены). Мне помогло Edit->Unlock. После этого можно двигать целлы.
Visero
еще вопрос
расстанавливаю рефдезы при редактировании платы реюзабл блока, верифю его в библиотеке, аннотирую в основной проект - помимо добавления префикса инстанса рефдезы раскидываются по сторонам.
переносится ли в основную плату расположение рефдезов из реюзабл блоков? есть ли где требуемая галка?
Frederic
еще вопрос по Reuse Blocks

EE7.9.2
от массива резисторов уходит шина в схему верхнего уровня
хочу в Reuse Blocks висящию цепь (шины) окончить via

при включенном DRC не получается
при выключенном DRC ставятся via, затем возникают трудности с редактированием цепи с обратной стороны резистора

как поставить виртуальный пин (via) не понимаю

есть решение данной проблемки ?
fill
VP, через F3 добавляются в режиме Netline Manipulation
Для добавления VP, через F5 выставляется тип топологии Custom
Frederic
Цитата(fill @ Oct 16 2012, 10:42) *
VP, через F3 добавляются в режиме Netline Manipulation
Для добавления VP, через F5 выставляется тип топологии Custom

в данной проблемке положительный результат получил уже по рекомендациям для дифф.пар sm.gif
есть пара вопросов чисто эстетического характера

1.возможно при первичном расмещение VP установить VP например в сетку для via = 0.05мм ?
2.после проведения дорожки и установки via в дальнейшем при перемещение via в сетку VP изменяет штриховку, что это означает и нужно принимать какие то меры?

на всякий случай прикладываю test_case BUS_VP.7z

PS fill поздравляю тебя с 3000 сообщением на форуме a14.gif

PPS поспешил с установкой via в сетку sad.gif
VP & via совместно перемещаются , но не по сетке для via
как только устанавливаю via в сетку через PadStackProperties связка VP & via рассыпается

и самое интересное, что в рабочем проекте не возможно провести проводник до VP пока не удалишь фанаут с другого конца резистора. соеденив R-VP невозможно развести второй конец резистора

прикладываю test_case BUS_VP_C6457.7z

мда, не везуха
Frederic
Цитата(fill @ Oct 16 2012, 10:42) *
VP, через F3 добавляются в режиме Netline Manipulation
......

при добавление RB c VP в LM при верифицации получил такой отлуп
"Reusable Block Check
--------------------

08:58 PM Sunday, October 21, 2012
Job Name: A:\Lib_7920\ReusableBlocksLP\C6457_channel\Work\PCB\C6457_channel.pcb

Error saving the reusable block. Virtual Pins and/or Guide Pins are not allowed in resuable blocks."

что теперь делать?
VP удалять? или можно их как то прописать ?

для начала решил тупо удалить VP
верификация прошла, но при сохранение новая ошибка в логе

"Error saving the reusable block. The following cells are missing from the Central Library:

Gerber"

вообще не понимаю, что делать
надо help.gif
fill
1. Удалить указанную ячейку в проекте повторного блока (в Cell Editor) или наоборот импортировать ее в ЦБ
2. По VP посмотрел проект и ЦБ. Повторного блока там не обнаружил и вообще задача не в полне ясна. Делай нормальный, понятный всем пример и описание его, тогда можно будет попробовать разобраться, но не скоро ибо у меня сейчас цейтнот.
Frederic
Цитата(fill @ Oct 22 2012, 14:52) *
1. Удалить указанную ячейку в проекте повторного блока (в Cell Editor) или наоборот импортировать ее в ЦБ
2. По VP посмотрел проект и ЦБ. Повторного блока там не обнаружил и вообще задача не в полне ясна. Делай нормальный, понятный всем пример и описание его, тогда можно будет попробовать разобраться, но не скоро ибо у меня сейчас цейтнот.

вообще приятно удивлен, что ты ответил sm.gif

в test_case отсутствует RB
эта проблема только вчера вылезла

встретимся в Питере
Frederic
Цитата(Frederic @ Oct 17 2012, 18:58) *
...
и самое интересное, что в рабочем проекте не возможно провести проводник до VP пока не удалишь фанаут с другого конца резистора. соеденив R-VP невозможно развести второй конец резистора

прикладываю test_case BUS_VP_C6457.7z

мда, не везуха

для тех кто скачал и см.
вопрос не стоил выеденного яйца
в CES прописаны для данного класса проводник/зазар = 0,23/0,93

fill-у спас

Цитата(Frederic @ Oct 21 2012, 21:20) *
при добавление RB c VP в LM при верифицации получил такой отлуп
.....
.....
"Error saving the reusable block. The following cells are missing from the Central Library:

Gerber"

вообще не понимаю, что делать
надо help.gif

при импорте проекта из Allegro остался какой то Cell (в описание - слишком большой для просмотра)
сделав Unplace в PlacePart&Cells и удалив из локальной библиотеки наконец получил RB

как всегда без fill-а решить такую мелкую проблемму не рально biggrin.gif
Frederic
новая засада с RB sm.gif

1.в LM компанент с Cell у которого внутри via.
2.при подготовке RB часть via удалил за отсутствием необходимости
2.сделал RB
3.ввел RB в DxD & Exp
4. и о ужас в RB BGA имеет полный комплект via

предполагаю это произходит при создание RB в процессе ProjectIntegration когда удаляется локальная библиотека (см картинку)

как это обойти, просто нет желания создавать новый Cell (хотя придется)

прикладываю lib, проект RB и сам проект с RB
milien
Цитата(fill @ Nov 27 2006, 21:08) *
Reusable_Block это фактически готовый мини проект платы. Соответственно схема в нем зафиксирована, т.е названия цепей соответствуют плате.
Поэтому изменить названия цепей в копиях повторяемых блоков (даже если это цепь создаваемая через PDB) неполучится.
Supply Rename будет работать, если иметь блочную структуру на уровне схемы с повторяемым размещением и трассировкой на плате (но не через Reusable_Block, а через Copy_Circuit). При этом Supply Rename в подсхемах надо вводить как тип Instance (чтоб в каждой подсхеме получилось свое соединение).

То-есть, разъясните, правильно ли я поняла нюанс.
Если у меня 6 м-схем с одинаковой развязкой кондюков, то есть ножки питания одни и те же, НО сигнальные соединения у каждой разные, то мне реюз блок не подойдет? Насколько я поняла он подойдет только для полностью идентичных микросхем?
И если использовать Copy_Circuit, нужно как-то прописывать рефдесы, back annotation делать, чтобы схема поняла, о чем я ей хочу сказать в PCB?
Я очень надеюсь, что я понятно выразилась...
milien
Цитата(milien @ Oct 1 2013, 17:31) *
И если использовать Copy_Circuit, нужно как-то прописывать рефдесы, back annotation делать, чтобы схема поняла, о чем я ей хочу сказать в PCB?

этот вопрос я снимаю) там все понятно.
Frederic
Цитата(fill @ Nov 27 2006, 21:08) *
Reusable_Block это фактически готовый мини проект платы. Соответственно схема в нем зафиксирована, т.е названия цепей соответствуют плате.
Поэтому изменить названия цепей в копиях повторяемых блоков (даже если это цепь создаваемая через PDB) неполучится.
Supply Rename будет работать, если иметь блочную структуру на уровне схемы с повторяемым размещением и трассировкой на плате (но не через Reusable_Block, а через Copy_Circuit). При этом Supply Rename в подсхемах надо вводить как тип Instance (чтоб в каждой подсхеме получилось свое соединение).

не допонимаю
ветка DxD VX1.2

создан RB (в нём 492 элемента), очень все устраивает, но есть проблема с питанием при вводе RB в основную схему
часть питания общее для всех RB (тут проблем нет), но каждый RB запитывается от отдельных источников Vcc1V2 и Vcc1V8, т.е. получаем на основной плате следующие питания Vcc1V2-1 и Vcc1V8-1 ...... Vcc1V8-4 и Vcc1V8-4

символы Vcc1V2 и Vcc1V8 в RB являются глобальными (и тут проблема)

и как я не извращался с включением вывода Vcc1V2 и Vcc1V8 в RB их нет в основной схеме, хотя на превью при вводе они есть
также с мапированием питания при вводе RB не получилось

вижу, что решение одно - перебить Vcc1V2 и Vcc1V8 в Vcc1V2-TI и Vcc1V8-TI с лишением глобального статуса

какие еще есть решения ?

fill
Удали символы Vcc1V2 и Vcc1V8 из подсхемы блока и сформируй внутренние цепи выходящие на порты.
Подключи к пинам блока нужные цепи "Vcc1V2-1 и Vcc1V8-1 ...... Vcc1V8-4 и Vcc1V8-4".

У тебя нарисована странная конструкция по которой получается что любая цепь в схеме верхнего уровня подключенная к пину Vcc1V2 блока закорачивается с глобальной цепью Vcc1V2 внутри блока, т.к. порт Vcc1V2 напрямую подключен к символу питания Vcc1V2
Frederic
Цитата(fill @ Sep 8 2016, 11:16) *
Удали символы Vcc1V2 и Vcc1V8 из подсхемы блока и сформируй внутренние цепи выходящие на порты.
Подключи к пинам блока нужные цепи "Vcc1V2-1 и Vcc1V8-1 ...... Vcc1V8-4 и Vcc1V8-4".

так и сделал

Цитата
У тебя нарисована странная конструкция по которой получается что любая цепь в схеме верхнего уровня подключенная к пину Vcc1V2 блока закорачивается с глобальной цепью Vcc1V2 внутри блока, т.к. порт Vcc1V2 напрямую подключен к символу питания Vcc1V2

это не противоречит логики создания RB до тех пор пока мощности питателя одного из номиналов достаточно для всей платы
в данном случае питатели по Vcc1V2 и Vcc1V8 пришлось ставить на каждый RB
как только RB станет 8шт biggrin.gif придется сделалать аналогично и для остальных номиналов напряжения
да, придется генерить новый RB, но не страшно, т.к. он все равно новый RB будет иметь другую схемотехнику

Frederic
нарисовалась проблемка с SupplyRename в мелкосхемах при использование RB
в самом RB проблем нет, размещение и упаковка - все ок
но как только запитываешь RB в общей схеме разными значения питания - происходит отключения микросхем с SupplyRename от нужного питания и объединение всех микросхем RB в "родное" питание исходника RB

см. картинку и полный проект с ЦБ

на текущий момент проблему убрал в лоб - заменил мелкосхемы с SupplyRename на символы с выводами питания

PS проект в VX1.2 update 4
fill
Цитата(Frederic @ Sep 21 2016, 09:42) *
нарисовалась проблемка с SupplyRename в мелкосхемах при использование RB
в самом RB проблем нет, размещение и упаковка - все ок
но как только запитываешь RB в общей схеме разными значения питания - происходит отключения микросхем с SupplyRename от нужного питания и объединение всех микросхем RB в "родное" питание исходника RB

см. картинку и полный проект с ЦБ

на текущий момент проблему убрал в лоб - заменил мелкосхемы с SupplyRename на символы с выводами питания

PS проект в VX1.2 update 4

в VX2
1. В схеме сделал разбиение ссылки на повторный блок (ПКМ>Shared_Blocks>Dissolve_Shared_Block_Link)
2. После этого стало возможным внутри каждого экземпляра блока установить экземплярное (Instance) значение Supply Rename, соответственно:
+U=V1 -U=0V
+U=V2 -U=0V
+U=V3 -U=0V
3. Итог: Нажмите для просмотра прикрепленного файла
4. Ты неправильно понимаешь работу с иерархией и атрибутами. Если в подсхеме стоит Supply Rename=+U=Vcc_RB -U=0V, то данная ИМС будет всегда подключена к цепи с именем Vcc_RB не зависимо от того куда подключилась начальная внутренная цепь Vcc_RB через иерархию. Т.е. например для первого блока у тебя:
- нарисованная цепь Vcc_RB стала V1 через иерархию
- для ИМС RB1-RB1-DD1 создалась глобальная цепь Vcc_RB согласно значения атрибута Supply Rename
Frederic
Нажмите для просмотра прикрепленного файла
Цитата(fill @ Sep 21 2016, 11:41) *
...
4. Ты неправильно понимаешь работу с иерархией и атрибутами
....

согласен, есть такое sad.gif

по этому очередной вопрос
создан RB с именем C64_077
RB проверен на DRC - все ок
но когда пару таких RB установил в общию сборку DRC и сделал проверку, то DRC сходит с ума - DRC Stopped. Maximum Number Hazards Exceeded.
выдает ошибки, где их не д.б.
в общей схеме появились правила проверки Class-Class с префиксом из RB

не могу понять из-за чего появляются ошибки
fill
Цитата(Frederic @ Sep 29 2016, 16:26) *
Нажмите для просмотра прикрепленного файла
согласен, есть такое sad.gif

по этому очередной вопрос
создан RB с именем C64_077
RB проверен на DRC - все ок
но когда пару таких RB установил в общию сборку DRC и сделал проверку, то DRC сходит с ума - DRC Stopped. Maximum Number Hazards Exceeded.
выдает ошибки, где их не д.б.
в общей схеме появились правила проверки Class-Class с префиксом из RB

не могу понять из-за чего появляются ошибки

Без проекта непонятно.
Frederic
имеем RB
в котором компаненты и via к полигонам подключены Buried, но при установке RB на плату подключение "Buried" пропадает sad.gif
востановление подключение "Buried" через Plane_Classes_and_Parametrs востанавливает "Buried" как в RB так по всей плате

как и где указать, что подключение "Buried" нужно только на RB ?
fill
Цитата(Frederic @ Oct 17 2016, 12:18) *
имеем RB
в котором компаненты и via к полигонам подключены Buried, но при установке RB на плату подключение "Buried" пропадает sad.gif
востановление подключение "Buried" через Plane_Classes_and_Parametrs востанавливает "Buried" как в RB так по всей плате

как и где указать, что подключение "Buried" нужно только на RB ?


Создай соответствующий дополнительный класс плейн, который и примени в RB.
Frederic
Цитата(fill @ Oct 17 2016, 12:22) *
Создай соответствующий дополнительный класс плейн, который и примени в RB.

с большим трудом вроде сделал
уточнение - я должен сделать клас в основном проекте и далее по именно и по слойно указывать в Plane_Assignments где применять подключение "Buried" для RB ?

а то я делал класс в самом проекте RB и в этом случае не получалось
fill
Цитата(Frederic @ Oct 17 2016, 18:13) *
с большим трудом вроде сделал
уточнение - я должен сделать клас в основном проекте и далее по именно и по слойно указывать в Plane_Assignments где применять подключение "Buried" для RB ?

а то я делал класс в самом проекте RB и в этом случае не получалось


Из документации:
Plane layers defined in Setup Parameters without a plane shape are not saved as part of the reusable cell used in other designs.
Frederic
Цитата(fill @ Oct 17 2016, 20:00) *
Из документации:
Plane layers defined in Setup Parameters without a plane shape are not saved as part of the reusable cell used in other designs.

понял
еще есть пару вопросов
но без проекта перед глазами возможно будет ответить трудно, по этому на почту кинул все - RB, ЦБ (внутри RB) и тестовый пример

RB имеет 2 слоя
материнка 6 слоев (это для примера)

вопросы почему:
1.в схеме TPS62180(Master) слой 2 RB не стал на 6 слой материнки, а уcтановился на 2 слой, хотя мапирование слоев было 1-1 и 2-6
соответственно трассы и зазоры установились в 1 и 2 слой материнки
2.в схеме TPS62180(Master) Clearances установилось в Default, а не в схему TPS62180 (Default Rule)

наверно делаю какую то логическую ошибку
да, если возможно проведи научные изыскания в VX1.2 sm.gif
fill
Цитата(Frederic @ Oct 17 2016, 21:28) *
понял
еще есть пару вопросов
но без проекта перед глазами возможно будет ответить трудно, по этому на почту кинул все - RB, ЦБ (внутри RB) и тестовый пример

RB имеет 2 слоя
материнка 6 слоев (это для примера)

вопросы почему:
1.в схеме TPS62180(Master) слой 2 RB не стал на 6 слой материнки, а уcтановился на 2 слой, хотя мапирование слоев было 1-1 и 2-6
соответственно трассы и зазоры установились в 1 и 2 слой материнки
2.в схеме TPS62180(Master) Clearances установилось в Default, а не в схему TPS62180 (Default Rule)

наверно делаю какую то логическую ошибку
да, если возможно проведи научные изыскания в VX1.2 sm.gif


Создав новый проект в VX2 и вставив в него RB проблему не наблюдаю.
Frederic
Цитата(fill @ Oct 17 2016, 20:00) *
Из документации:
Plane layers defined in Setup Parameters without a plane shape are not saved as part of the reusable cell used in other designs.

два RB (абсолютно разные по структуре слоев и схемотехнике)
каждый имеет полигоны 0V на ТОР
необходимо в одном RB иметь подключение "Buried" во втором нет

не получается получить такой винегрет - либо есть Buried во всех RB ибо нет Buried sad.gif

P.S. данные RB используются одновременно в одном плате
fill
Цитата(Frederic @ Oct 23 2016, 22:06) *
два RB (абсолютно разные по структуре слоев и схемотехнике)
каждый имеет полигоны 0V на ТОР
необходимо в одном RB иметь подключение "Buried" во втором нет

не получается получить такой винегрет - либо есть Buried во всех RB ибо нет Buried sad.gif

P.S. данные RB используются одновременно в одном плате


Насколько я вижу, проблема в том что в новый проект не передаются Plane Class из повторного блока. Сами Plane Shape передаются, но принимают стандартный класс.
Соответственно можно например,
- создать нужные Plane Class в новом проекте
- сделать Flatten для RB чтобы стали доступны изменения внутри них, и далее назначить нужный Plane Class в Plane Shape.
Frederic
Цитата(fill @ Oct 26 2016, 13:17) *
Насколько я вижу, проблема в том что в новый проект не передаются Plane Class из повторного блока. Сами Plane Shape передаются, но принимают стандартный класс.

совершенно верно
и к тому же созданный новый класс передает свойства на все RB sad.gif

Цитата
Соответственно можно например,
- создать нужные Plane Class в новом проекте
- сделать Flatten для RB чтобы стали доступны изменения внутри них, и далее назначить нужный Plane Class в Plane Shape.

только так, другого пути я тоже не нашел

Цитата(Visero @ Jun 8 2009, 13:35) *
еще вопрос
расстанавливаю рефдезы при редактировании платы реюзабл блока, верифю его в библиотеке, аннотирую в основной проект - помимо добавления префикса инстанса рефдезы раскидываются по сторонам.
переносится ли в основную плату расположение рефдезов из реюзабл блоков? есть ли где требуемая галка?

в RB кашерно растащил рефдесы для сборки, рефдесы для шелка
и когда ввел RB в проект расположение и свойства текста рефдесов взялось из ЦБ

какая галка отвечает за кашерность рефдесов ?
fill
Цитата(Frederic @ Oct 26 2016, 14:52) *
совершенно верно
и к тому же созданный новый класс передает свойства на все RB sad.gif
только так, другого пути я тоже не нашел


В VX2 есть новый путь - Shared Blocks.

Последовательность достаточно простая:
- в исходном проекте делаем иерархический блок
- затем на нем ПКМ>Shared Blocks > Mark as Publishable
- в свойствах в поле Block Type ставим Logical/Physical
- в топологии размещаем и трассируем и т.п.
- затем рисуем Draw > Shared Block Area область топологии которую надо передать в другие проекты
- File > Publish Shared Blocks
- после этого блок доступен для размещения в другом проекте - появляется в ЦБ и закладке Shared Blocks в DxDatabook
этим путем передаются классы плейн
размещение текста также сохраняется как в RB
Frederic
Цитата(fill @ Oct 26 2016, 15:33) *
В VX2 есть новый путь - Shared Blocks.
......

кто бы сомневался, что у fill-a не кашерно
всегда с опасение жду ответа от тебя "у меня все хорошо прекрасная маркиза, но в VX2" (ранее было ЕЕ207.х затем ЕЕ7.9.х и VX1.x) 08.gif
Frederic
Цитата(fill @ Oct 26 2016, 14:33) *
В VX2 есть новый путь - Shared Blocks.

Последовательность достаточно простая:
- в исходном проекте делаем иерархический блок
- затем на нем ПКМ>Shared Blocks > Mark as Publishable
- в свойствах в поле Block Type ставим Logical/Physical
- в топологии размещаем и трассируем и т.п.
- затем рисуем Draw > Shared Block Area область топологии которую надо передать в другие проекты

не забыть про галку Publishable в свойствах Shared Block Area sm.gif
Цитата
- File > Publish Shared Blocks
- после этого блок доступен для размещения в другом проекте - появляется в ЦБ и закладке Shared Blocks в DxDatabook

в ЦБ не создается папка и иконка Shared Blocks по аналогии с RB sad.gif
см через закладку Tools
Цитата
этим путем передаются классы плейн
размещение текста также сохраняется как в RB

Shared Blocks получается каким то костылем к RB
использовать возможно только в проекте в котором он используется (если проект со стеком 16 слоев, то применить к 4 слоям не получится)
хотя в реале и 2 слоев достаточно, в итоге идем по пути RB, но на выходе создаем Shared Blocks

Shared Blocks имеет право на существование, но возможности RB необходимо допилить до Shared Blocks
fill
Цитата(Frederic @ Nov 6 2016, 12:10) *
не забыть про галку Publishable в свойствах Shared Block Area sm.gif

в ЦБ не создается папка и иконка Shared Blocks по аналогии с RB sad.gif
см через закладку Tools

Shared Blocks получается каким то костылем к RB
использовать возможно только в проекте в котором он используется (если проект со стеком 16 слоев, то применить к 4 слоям не получится)
хотя в реале и 2 слоев достаточно, в итоге идем по пути RB, но на выходе создаем Shared Blocks

Shared Blocks имеет право на существование, но возможности RB необходимо допилить до Shared Blocks


Ну я естественно опустил что надо опубликовать блоки в схеме и плате.

Создается папка ReuseBlocks. Управление через Tools>Shared_Block_Manager.

Без проблем вставляется в любой другой проект в котором количество слоев >= количеству в блоке SB.
Frederic
Цитата(fill @ Nov 7 2016, 09:35) *
Создается папка ReuseBlocks. Управление через Tools>Shared_Block_Manager.

да нашел папку в директории ЦБ, не подумал, что там лежат SB sm.gif (очередное подтверждение, что SB внебрачный сын RB)
как управлять ?
у меня в Shared_Block_Manager все серое
Цитата
Без проблем вставляется в любой другой проект в котором количество слоев >= количеству в блоке SB.

верно, не совсем точно выразился
SB создается со структурой проекта, где он используется
и его не возможно применить его в проекте с меньшим числом слоев (хотя для самого SB достаточно 2 слоя !!!!)
т.е. надо корректировать SB и в итоге проще создать RB с минимальным набором слоев и использовать где угодно

но в RB осталась проблема плейн-классов sad.gif
fill
Цитата(Frederic @ Nov 7 2016, 13:36) *
да нашел папку в директории ЦБ, не подумал, что там лежат SB sm.gif (очередное подтверждение, что SB внебрачный сын RB)
как управлять ?
у меня в Shared_Block_Manager все серое

верно, не совсем точно выразился
SB создается со структурой проекта, где он используется
и его не возможно применить его в проекте с меньшим числом слоев (хотя для самого SB достаточно 2 слоя !!!!)
т.е. надо корректировать SB и в итоге проще создать RB с минимальным набором слоев и использовать где угодно

но в RB осталась проблема плейн-классов sad.gif


RB и SB подразумевают разный подход к разработке.
1. RB - создаем проект RB, в котором есть только схема\топология RB. После записи в ЦБ, схема RB становится не редактируемой. Топология редактируется через LM.
SB - выбираем любой кусок схемы\топологии в существующем проекте и записываем его в ЦБ. Далее (если нужно) схему и топологию SB редактируем в исходном проекте (из которого его извлекли).
В топологии можно указать какие элементы, находящиеся внутри области SB, не надо извлекать в SB. А в случае RB их пришлось бы удалить физически.
2. Можно перевести существующий RB в SB.
3. Логика работы подразумевает что сначала реализуют более простые проекты, на меньшем количестве слоев и соответственно не встает проблема обратного использования, когда SB содержит больше слоев чем новый проект. Собственно говоря, что тебе мешает сделать копию исходного проекта, изменить в нем кол-во слоев на минимальное под SB и затем уже извлечь SB, для использования в других проектах.
Frederic
имеем VX2.1

очередная проблемка с RB
1.в будущем RB выравнена шина
2.создан RB
3.RB установлен в сборку
4.и выравненная шина RB увеличилась в длине sad.gif

- StackUp абсолютно одинаков по слоям
- мапирование слоев не делалось, слои один в один

в RB и сборке учитывается длина via

подготовить тестовый проект по времени будет не так быстро, по этому у кого есть похожий RB прошу проверить у себя
Frederic
Цитата(Frederic @ Feb 9 2018, 09:57) *
имеем VX2.1

очередная проблемка с RB
1.в будущем RB выравнена шина
2.создан RB
3.RB установлен в сборку
4.и выравненная шина RB увеличилась в длине sad.gif

- StackUp абсолютно одинаков по слоям
- мапирование слоев не делалось, слои один в один

в RB и сборке учитывается длина via

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

как всегда проблема (которая уже была в далеком 2012г) не стоит выеденного яйца

в проекте пришлось развалить Cell (в котором уже были via) для удаления пары via и далее при создание RB в процессе ProjectIntegration удаляется локальная библиотека и заново берется Cell c via
а раз в данном проекте via учитывается в длине проводника, то соответственно длина via посчиталась два раза krapula.gif
Frederic
Цитата(fill @ Oct 26 2016, 15:33) *
В VX2 есть новый путь - Shared Blocks.
.......
- после этого блок доступен для размещения в другом проекте - появляется в ЦБ и закладке Shared Blocks в DxDatabook
этим путем передаются классы плейн
размещение текста также сохраняется как в RB

наконец пришло время проверить SB в реале на 101%
см картинку и видим, что ResDes в SB не сохраняют свою ориентацию при повороте SB на плате sad.gif
думал ошибка, но сделал тестовый проектик с одними резисторами и результат прежний
даже без установке SB без вращения происходит изменение угла некоторых ResDes на 180 градусов

однако печалька, одно радует в SB:
1.ResDes не слетают на значения по умолчанию шрифта и место положения
2.Plane Class из SB передаются в проект
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2024 Invision Power Services, Inc.