Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Скрипт для DxDatabook
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Mentor-ExpeditionPCB
vitan
В 2007, как известно, ментор внес иные баги, нежели чем в 2005, поэтому DxDatabook стала работать хуже. Конкретно у меня возникало много проблем с верификацией схемы, оттранслированной из 2005. Значительно лучше стало после применения скрипта, который принудительно переводит значения аннотируемых свойств в верхний регистр, а при верификации после считывания из схемы и до собственно проверки - наоборот.
Исчезла куча глюков (там, похоже, очень кривой алгоритм - потратил несколько дней на выявление причин, понял, что их несколько, описывать, думаю, бессмысленно).
И главное, при работе с нетлистом не возникает ошибок при прямой аннотации (ментор забыл, что теперь значения свойств могут быть в нижнем регистре и блокирует нижний регистр при генерации нетлиста). Единственное неудобство в том, что при верификации визуально все значения видны в нижнем регистре, но фактически они в схеме так и остаются в верхнем.
Подключать через Configure-Scripting-Settings по ПКМ из окна DxDatabook.
Нажмите для просмотра прикрепленного файла
vitan
Нет, это не рыба... Хрену к ней не хватает!
Скрипт не работает при иерархической верификации. Почему - не понятно. Функции просто не вызываются (проверено). Самое поганое в том, что при нажатии кнопочек Update unique matches и затем Update design регистр во всех свойствах опять принудительно сбрасывается в то состояние, которое задано в конфигурации (а там у меня и маленькие буквы присутствуют). После чего нужно пару тысяч раз аннотировать компоненты в неиерархическом режиме с применением вышеописанного скрипта. Кстати, в этом режиме все функции вызываются дважды, что в сочетании с обращением к серверу по сети вызывает жуткие тормоза.
Может, проще застрелиться, чем пользоваться таким САПР?
fill
Ну если б еще понять что у вас там такого происходит, с чем никто другой не сталкивается - за столько лет использования вы первый об этой проблеме говорите.

Посмотрите, может что-то упустили при переходе.
Нажмите для просмотра прикрепленного файла
vitan
Цитата(fill @ Aug 15 2012, 21:49) *
Ну если б еще понять что у вас там такого происходит, с чем никто другой не сталкивается - за столько лет использования вы первый об этой проблеме говорите.

Понять все очень просто: возьмите свой проект в 2005 и переведите в 2007. У меня ушло три месяца. Это у меня еще плата не в менторе. Т.е. все время ушло на DxD (аллегро просто открывает проект в новой версии и всё - 3 секунды). Конкретно по DxDatabook проблемы в верификации и исполнении скриптов. Обработчики событий вызываются дважды при неиерархической верификации и не вызываются вообще при иерархической. Они бы и не потребовались, если бы эта верификация смогла бы тупо сравнить две строки, ту, что в компоненте, и ту, что в БД. Но нет, видимо со времен 2005 мир изменился и 10kOhm уже больше не равно 10kOhm. cranky.gif Мало того, невозможно перевести все в верхний регистр, ибо "теперь новая идеология" и "теперь у нас свойства", у которых важен регистр. Отправить же в плату схему с маленькими буквами также невозможно, ибо конфиги остались старые, где идет проверка и стоп при виде маленьких букв. Это просто пестня! И все это только про этап работы с базой...
fill
Уже переводил ранее и это не заняло много времени.
Пока я вижу только стенания вида "раньше все работало теперь нет".
Хотите конструктивного решения - выложите данные на которых можно:
1. увидеть вашу проблему
2. показать ее решение
vitan
Цитата(fill @ Aug 16 2012, 11:27) *
Пока я вижу только стенания вида "раньше все работало теперь нет".

Я и не скрываю, так оно и есть. Как Вы думаете, это нормально (что взяли и сломали)? Ведь это не я сломал...

Цитата(fill @ Aug 16 2012, 11:27) *
Хотите конструктивного решения - выложите данные на которых можно:
1. увидеть вашу проблему
2. показать ее решение

Ну как мне "выложить данные"? Это же проект (кстати, свободно раздавать я его тоже не могу) + база на сервере. Я пытаюсь объяснить словами.
Датабук мне при иерархической верификации перевел все свойства в состояние соответствия с БД. Там встречается нижний регистр. Это не работает при передаче в плату, и конфиги на эту тему я менять не хочу.

Скажите, как мне взять и перевести все значения свойств у компонентов обратно в верхний регистр? Писать еще один скрипт? Или тысячу раз проводить неиерархическую верификацию с моим скриптом, который, с горем пополам, но работает?
fill
В данном случае я не вижу чистого слома. Да, раньше подразумевалось что все значения атрибутов должны быть исключительно в верхнем регистре. Теперь нет - по умолчанию подразумевается смешанный вариант. Соответственно или вводите их изначально в верхнем регистре в БД, или исправьте строчку верификации в конфиг. файле для передачи в Allegro (если он конечно понимает значения введенные не в верхнем регистре).

Также если установить галочку "Enable case insensitive properties search", то верификатор DxDatabook не ругается на то что значения в БД и на схеме записаны в разном регистре.

Ну а по поводу 10KOhm без примера я не могу ничего сказать, т.к. не могу воспроизвести проблему.
vitan
Цитата(fill @ Aug 16 2012, 14:59) *
В данном случае я не вижу чистого слома. Да, раньше подразумевалось что все значения атрибутов должны быть исключительно в верхнем регистре. Теперь нет - по умолчанию подразумевается смешанный вариант. Соответственно или вводите их изначально в верхнем регистре в БД, или исправьте строчку верификации в конфиг.

Отлично. Т.о. просто открыть проект в новой версии, добавить 1 резистор, и сделать новую версию платы невозможно. Нужно перестраивать конфиги, ловить возникающие при этом новые баги и так до бесконечности. Это не чистый слом, верно. biggrin.gif

Цитата(fill @ Aug 16 2012, 14:59) *
Также если установить галочку "Enable case insensitive properties search", то верификатор DxDatabook не ругается на то что значения в БД и на схеме записаны в разном регистре.

Неправда. У меня она не работает. Стал бы я писать все эти скрипты?

Да, я уже перевел все свойства в верхний регистр. Тем, кто будет этим когда-либо заниматься, советую нажимать на кнопочку "update all unique matches" (про которую, кстати, в хелпе ни слова) на вкладке неиерархической верификации. При этом не надо будет тыкать в каждый компонент, она сама пройдется по всем компонентам на листе и скрипт из первого поста сделает свое дело.
fill
Цитата
Отлично. Т.о. просто открыть проект в новой версии, добавить 1 резистор, и сделать новую версию платы невозможно. Нужно перестраивать конфиги, ловить возникающие при этом новые баги и так до бесконечности. Это не чистый слом, верно.


Вообще-то конфиги. правятся один раз и затем ими пользуются во всех проектах в дальнейшем.
Да и переход 2005-->2007 делается один раз

Цитата(vitan @ Aug 16 2012, 16:00) *
Неправда. У меня она не работает. Стал бы я писать все эти скрипты?


Нажмите для просмотра прикрепленного файла
vitan
Цитата(fill @ Aug 16 2012, 18:12) *
Вообще-то конфиги. правятся один раз и затем ими пользуются во всех проектах в дальнейшем.
Да и переход 2005-->2007 делается один раз

Ага, и проект у каждого из нас только один. И его надо только один раз перевести. И когда надо будет быстро сделать ревизию старого проекта в новой версии (т.к. уже перешли), то проблем не будет. И т.д.

Я верю, что у Вас работает, но поверьте и Вы. Вы же не думаете, что мне больше нечем заняться, как наводить тень на отлично работающий менторовский софт? Я бы мог привести такую же картинку, но вот только уже потратил день на приведение проекта в порядок, и ломать его специально не буду.
Надеюсь, что иерархическую верификацию тоже когда-нибудь починят.
fill
Цитата(vitan @ Aug 16 2012, 21:17) *
Ага, и проект у каждого из нас только один. И его надо только один раз перевести. И когда надо будет быстро сделать ревизию старого проекта в новой версии (т.к. уже перешли), то проблем не будет. И т.д.

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



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

Я Вам верю,в том что у Вас почему-то не работает, но это отнюдь не значит 100% что работать не может. Если бы у меня был тестовый проект с указанными проблемами, то можно было бы попытаться разобраться в чем состоит проблема и есть ли решения. А так только констатация фактов.
tAmega
Ходят слухи что Cadence скушает Mentor. Это правда или как?
AlexN
Цитата(tAmega @ Aug 18 2012, 13:56) *
Ходят слухи что Cadence скушает Mentor. Это правда или как?


без расстановки падежов непонятно то кого скушает... как казнить нельзя помиловать.

когда-нибудь конечно кто-нибудь кого-нибудь .... но не при нашей жизни.
vitan
Цитата(AlexN @ Aug 18 2012, 16:37) *
без расстановки падежов непонятно то кого скушает... как казнить нельзя помиловать.

Это год или два назад было уже. Кейденс пытался быть покупателем. Якобы в последний момент все сорвалось. Лично я был бы рад, т.к у на их софте работать можно без постоянного поминания какой-то матери. Хотя есть риск, что зараза распространится...

Кстати, в скрипте можно спокойно удалить все строчки, начинающиеся на dim (случайно осталось).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.