Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Вопрос по DxD
Форум разработчиков электроники ELECTRONIX.ru > Печатные платы (PCB) > Разрабатываем ПП в САПР - PCB development > Mentor-ExpeditionPCB
Страницы: 1, 2, 3, 4, 5, 6, 7
SM
Возникли вопросы по шинам:

1) Не криминал, но хотелось бы. Как сменить ripper, надо что бы по ГОСТу, хотя бы просто полное отсутствие риппера с виду. Или ввод в шину под 45 градусов. Если нельзя - то и фиг с ним.

2) Жизненно необходимо! В шине идет огромная толпа совсем разных сигналов. Через список цепей в навигаторе я могу выделить их сразу всей толпой. А как выделить только лишь одну заданную цепь? Чтобы оперативно найти все ее выходы из шины. Ну или скажем так, почему шина раскрывается в навигаторе одной строчкой, в которой просто перечислены все цепи через запятую?

3) Как из этого списка цепей убрать нечто загадочное с именем, равным имени шины (например шина MAIN_BUS, в ней полторы сотни разных цепей, но нет ни одной с этим же именем, но в списке оно есть. Типа суслика wink.gif, ты его не видишь, а он есть). Да и вообще мне не нужно, чтобы шина имела какое-то осмысленное имя. Она нужна лишь для красоты.

4) (вероятно как следствие 2) - заходя в CES я тоже вижу все то, что попало в шину, одной строкой. А как мне содержимое шины распихать по разным классам цепей?

5) Как мне определить дифпару внутри шины. Когда я назначаю пару например lvd_in_p для сигнала lvd_in_m, и при этом они идут внутри шины, меня матерят, что Cannot make diff pair with same net. Какой это нафиг same net?

PS. Сорри, если все это банальный RTFM, но TFM к сожалению не поддается R в виду какого-то глюка всего EE... Т.е. главное окно хелпа открывается, а дальше никуда.
sh007
Цитата(SM @ May 28 2009, 00:24) *
... Т.е. главное окно хелпа открывается, а дальше никуда.

Если правильно понял проблему, то Вам необходимо в IE разрешить "выполнение активного содержания на моём компьютере". (Сервис>Свойства обозревателя>Дополнительно)
SM
Цитата(sh007 @ May 28 2009, 10:04) *
Если правильно понял проблему, то Вам необходимо в IE разрешить "выполнение активного содержания на моём компьютере". (Сервис>Свойства обозревателя>Дополнительно)

У меня нет IE. У меня EE на платформе rhel. Меня, в общем, больше интересуют остальные вопросы. Кстати, ответа на них я так и не нашел в pdf-ной документации DxD, которая оказывается есть в инсталляционной директории.
Frederic
Цитата
1) Не криминал, но хотелось бы. Как сменить ripper, надо что бы по ГОСТу, хотя бы просто полное отсутствие риппера с виду. Или ввод в шину под 45 градусов. Если нельзя - то и фиг с ним.


поиск и http://electronix.ru/forum/index.php?showtopic=61483

Цитата
2) Жизненно необходимо! В шине идет огромная толпа совсем разных сигналов. Через список цепей в навигаторе я могу выделить их сразу всей толпой. А как выделить только лишь одну заданную цепь? Чтобы оперативно найти все ее выходы из шины. Ну или скажем так, почему шина раскрывается в навигаторе одной строчкой, в которой просто перечислены все цепи через запятую?


почему строчкой, столбиком

Цитата
3) Как из этого списка цепей убрать нечто загадочное с именем, равным имени шины (например шина MAIN_BUS, в ней полторы сотни разных цепей, но нет ни одной с этим же именем, но в списке оно есть. Типа суслика wink.gif, ты его не видишь, а он есть). Да и вообще мне не нужно, чтобы шина имела какое-то осмысленное имя. Она нужна лишь для красоты.


если красота, то тогда вам батенька нужно в PCAD

Цитата
4) (вероятно как следствие 2) - заходя в CES я тоже вижу все то, что попало в шину, одной строкой. А как мне содержимое шины распихать по разным классам цепей?


почему снова одной стокой ? хоть картинки привел бы
SM
Цитата(Frederic @ May 28 2009, 17:57) *
поиск и [/url]

Хорошо, вопрос номер 2 тогда. Где описан формат .esh?
Цитата(Frederic @ May 28 2009, 17:57) *
если красота, то тогда вам батенька нужно в PCAD

Дык я бы с удовольствием бы, если бы... Он был бы нативно-линуксовый выпущен.
Цитата(Frederic @ May 28 2009, 17:57) *
почему строчкой, столбиком
почему снова одной стокой ? хоть картинки привел бы

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

Понял как это получилось:
- нарисовали шину и назвали MEM_BUS
- нарисовали цепи, назвали и стали их подключать к шине, при этом этом в диалоге появляется все время одно имя MEM_BUS
В результате вы их все просто закоротили через шину.

А надо было зайти сначала в Setup>Settings>Bus_Contents и прописать там MEM_BUS перечислив все цепи в нее входящие. Тогда можно было бы:
а) подводить или отводить от шины нужные цепи выбирая в списке
б) просто подключать названные цепи (при условии что они прописаны в Bus_Contents)

Если хотите иметь такое же представление о шине как в PCAD, то нарисуйте просто line вместо bus
SM
Цитата(fill @ May 29 2009, 15:17) *
- нарисовали шину и назвали MEM_BUS
- нарисовали цепи, назвали и стали их подключать к шине, при этом этом в диалоге появляется все время одно имя MEM_BUS
В результате вы их все просто закоротили через шину.

Именно это по незнанию я и сделал.
Цитата(fill @ May 29 2009, 15:17) *
А надо было зайти сначала в Setup>Settings>Bus_Contents и прописать там MEM_BUS перечислив все цепи в нее входящие. Тогда можно было бы:
а) подводить или отводить от шины нужные цепи выбирая в списке
б) просто подключать названные цепи (при условии что они прописаны в Bus_Contents)

Т.е. прежде чем ввести новый сигнал в шину, я должен его обязательно вписать в Bus Contents? А какая-то автоматизация этого процесса возможна? Я и на любое скриптописание согласный. А то больно много сигналов туда вводить, да и не знаю я заранее всего их списка.
Цитата(fill @ May 29 2009, 15:17) *
Если хотите иметь такое же представление о шине как в PCAD, то нарисуйте просто line вместо bus

В этом случае нет ни рипперов (хочется вводы в шину под 45 град., причем автоматизировано), нельзя двигать такую псевдошину, таская ее вместе с рипперами и цепями, в общем это не вариант. С учетом того, что 90% всех цепей всей схемы находится внутри этой шины.
AlexN
Цитата(SM @ May 29 2009, 22:47) *
С учетом того, что 90% всех цепей всей схемы находится внутри этой шины.


видимо остальные 10% - цепи источника питания, ну, может быть, всякие подтяжки-согласования..
может в консерватории что-то не то? Я к тому, что это очень похоже на стиль совковых проектных институтов, все провода в одной шине, сколько ответвлений и в какие углы она идет - неясно, как паук просто охватывает все микросхемы, читабельности - ноль, а собственно так называемые шины - просто загромождают схему. Мучаете себя, как при царском режиме. Может просто - именованные цепи использовать, вовсе необязательно их в один жгут сводить, от этого одни заморочки.
SM
Цитата(AlexN @ May 29 2009, 20:39) *
видимо остальные 10% - цепи источника питания, ну, может быть, всякие подтяжки-согласования..
может в консерватории что-то не то? Я к тому, что это очень похоже на стиль совковых проектных институтов

Да, спорить не буду, очень похоже. Даже так и есть. Мне так удобно. Остальные 10% - это аналоговые цепи, где важна читаемость, короткие цепи между соседних компонентов, подтяжки и питания. Я так делаю разработки быстро. Но не думаю, что это более читаемо, чем буржуйские принципы, когда делают просто короткий отвод в сторону и именуют, не соединяя в шину. Что еще более быстро, но менее красиво. (а по ГОСТ так допустимо, кстати?) Собственно, это больше повод к холивару очередному, а не ответ на вопрос "как сделать". Меня же интересует вопрос, как сделать так, чтобы мне было удобно работать, и для этого я готов приложить какие-то усилия, вплоть до писания скриптов, но разово, а не так, чтобы делать какие-то лишние действия периодически. Ну и заодно чтобы иметь меньше разногласий с пуленепробиваемым нормоконтролем, когда это нужно. Сила привычки. Пусть с Вашей точки зрения это будет именно "не то в консерватории".
SM
А вот такой вопрос.... Опять суслики....
У меня есть шина, эта самая "main_bus". В Setup->Settings->Bus Contents вбиты какие-то цепи. Шина нарисована, к ней уже есть подводы. Мне нужно добавить в шину новую цепь, я ее вписываю в Bus Contents, жму apply. Затем провожу саму цепь, и пытаюсь ее поименовать этим же именем. И нифига не получается. Новая цепь коротится на какую-то другую, которую мне предложили по умолчанию. Если я сначала именую цепь, потом подвожу ее к шине, то мне предлагают выбор из чего угодно, кроме нужной.

Первая картинка - это Bus Contents перед тем, как сделать соединение. То есть суслик есть. Вторая - список того, что предлагают при подводе уже именованой цепи. Там суслика не видно smile.gif

О блин. Если рядом нарисовать другой bus и дать ему тоже имя, то в нем новый сигнал уже есть. И кто виноват/что делать?

О дважды блин. Если этот другой bus потом соединить с тем старым, то и в старом появляется нужный сигнал. А проще никак? Нету хотя бы какого нибудь "Tools->Update Buses" по аналогии с Update Symbols? Вообще, как это действие делать правильно, добавлять в существующий bus новую цепь?
AlexN
Цитата(SM @ May 31 2009, 01:05) *
А вот такой вопрос.... Опять суслики....
У меня есть шина, эта самая "main_bus". В Setup->Settings->Bus Contents вбиты какие-то цепи. Шина нарисована, к ней уже есть подводы. Мне нужно добавить в шину новую цепь, я ее вписываю в Bus Contents, жму apply. Затем провожу саму цепь, и пытаюсь ее поименовать этим же именем. И нифига не получается. Новая цепь коротится на какую-то другую, которую мне предложили по умолчанию. Если я сначала именую цепь, потом подвожу ее к шине, то мне предлагают выбор из чего угодно, кроме нужной.

Первая картинка - это Bus Contents перед тем, как сделать соединение. То есть суслик есть. Вторая - список того, что предлагают при подводе уже именованой цепи. Там суслика не видно smile.gif

О блин. Если рядом нарисовать другой bus и дать ему тоже имя, то в нем новый сигнал уже есть. И кто виноват/что делать?

О дважды блин. Если этот другой bus потом соединить с тем старым, то и в старом появляется нужный сигнал. А проще никак? Нету хотя бы какого нибудь "Tools->Update Buses" по аналогии с Update Symbols? Вообще, как это действие делать правильно, добавлять в существующий bus новую цепь?


подобные вещи в DxD во многих местах. Я имею в виду что-то типа "наследование атрибутов". Видимо реально этот самый контентс прописывается в шину в момент размещения ее на схеме в виде типа атрибутов. Подобное поведение в DxD с цветовыми схемами, и еще в некоторых местах, сразу не вспомню. Я считаю, что это изначально неправильная идеология программной модели. Приводит к бардаку в схеме.
SM
А скажите, все эти действия, типа втыкания сигнала в шину, реализованы кодом? Или на скриптовых языках, типа tcl/tk, perl, e.t.c.? Т.е. там покопаться можно, чтобы поправить это дело под себя?

Вообще как-то нелогично это, что Bus Contents вытащен в столь глобальный сетап, а не простое свойство.
AlexN
Цитата(SM @ May 31 2009, 17:39) *
Вообще как-то нелогично это, что Bus Contents вытащен в столь глобальный сетап, а не простое свойство.


у програмеров своя логика
SM
Цитата(AlexN @ May 31 2009, 15:04) *
у програмеров своя логика

Ну ладно, пусть своя... Но хоть есть возможность на каком нибудь tcl написать свой скрипт, который бы по нажатию кнопки в DxD проапдейтил бы эти бас-контенты?
cioma
Глядите в сторону Automation (по сути - COM интерфейс как к функциям софта так и к данным). В версии 2007 ментор значительно это дело продвинул, есть доки более вменяемые + на community народ и свои скрипты выкладывет и сами разрабы там бывают - могут помочь
SM
Цитата(cioma @ May 31 2009, 15:33) *
Глядите в сторону Automation (по сути - COM интерфейс как к функциям софта так и к данным). В версии 2007 ментор значительно это дело продвинул, есть доки более вменяемые + на community народ и свои скрипты выкладывет и сами разрабы там бывают - могут помочь

Да, спасибо, уже гляжу. Нашел, что с 2005.1 поддерживается Tcl/Tk (в виде very limited beta, думаю, что в 2007 уже не бета и не лимитед). Однако в документации (линукс-весрия!!!!) нашел доки только на VBScript. Бред! Он же под линуксом не поддерживается! Помогите пожалуйста с документацией по Tcl/Tk. Я не являюсь официальным пользователем, я пока только в стадии выбора того, чтобы меня устроило.
cioma
Попробуйте спросить тут http://communities.mentor.com/mgcx/communi...ation_scripting
fill
Цитата(SM @ May 30 2009, 22:05) *
А вот такой вопрос.... Опять суслики....
У меня есть шина, эта самая "main_bus". В Setup->Settings->Bus Contents вбиты какие-то цепи. Шина нарисована, к ней уже есть подводы. Мне нужно добавить в шину новую цепь, я ее вписываю в Bus Contents, жму apply. Затем провожу саму цепь, и пытаюсь ее поименовать этим же именем. И нифига не получается. Новая цепь коротится на какую-то другую, которую мне предложили по умолчанию. Если я сначала именую цепь, потом подвожу ее к шине, то мне предлагают выбор из чего угодно, кроме нужной.

Первая картинка - это Bus Contents перед тем, как сделать соединение. То есть суслик есть. Вторая - список того, что предлагают при подводе уже именованой цепи. Там суслика не видно smile.gif

О блин. Если рядом нарисовать другой bus и дать ему тоже имя, то в нем новый сигнал уже есть. И кто виноват/что делать?

О дважды блин. Если этот другой bus потом соединить с тем старым, то и в старом появляется нужный сигнал. А проще никак? Нету хотя бы какого нибудь "Tools->Update Buses" по аналогии с Update Symbols? Вообще, как это действие делать правильно, добавлять в существующий bus новую цепь?


Один из вариантов последовательности операций Нажмите для просмотра прикрепленного файла
Как вы понимаете пункты меню можете "повесить на клавиатуру" (горячие клавиши) или пойти дальше и написать полный макрос для всей последовательности.
SM
БОЛЬШОЕ СПАСИБО! Я просто не нашел этого меню.

А такой ворпос - раз это есть в меню, значит это можно выполнить через скриптинг. А есть ли event навроде "OnConnect" - чтобы автоматически при подведении провода к шине вызывать этот апдейт?
fill
Цитата(SM @ Jun 1 2009, 13:54) *
БОЛЬШОЕ СПАСИБО! Я просто не нашел этого меню.

А такой ворпос - раз это есть в меню, значит это можно выполнить через скриптинг. А есть ли event навроде "OnConnect" - чтобы автоматически при подведении провода к шине вызывать этот апдейт?


Откройте dxdesigner_auto.pdf там этих Connection масса.
SM
Цитата(fill @ Jun 1 2009, 15:43) *
Откройте dxdesigner_auto.pdf там этих Connection масса.

Да в том и дело, что дока безумно куцая. Например в экзамплах используется метод Scripting.GetEnvVariable, а описания этого метода нет. Как и вообще нету описания этого объекта Scripting и откуда он взялся. Также я не смог найти, при исследовании возможности сделать на скриптинге бэк-аннотацию и редактирование соединений в Exp, как создать новый объект DxD (например Net или Segment). Если бы было все так просто, я бы тут не задал вопроса.
cioma
Так яж и говорю - Вам на Mentor Community - там есть люди работающие с automation - подскажут. Я не уверен что на этом форуме кто-либо этим плотно занимался
fill
Цитата(SM @ Jun 1 2009, 16:09) *
Да в том и дело, что дока безумно куцая. Например в экзамплах используется метод Scripting.GetEnvVariable, а описания этого метода нет. Как и вообще нету описания этого объекта Scripting и откуда он взялся. Также я не смог найти, при исследовании возможности сделать на скриптинге бэк-аннотацию и редактирование соединений в Exp, как создать новый объект DxD (например Net или Segment). Если бы было все так просто, я бы тут не задал вопроса.


Изучайте:
http://www.megratec.ru/data/ftp/mg_tr_160/...kb_2005.SP1.pdf
http://www.megratec.ru/data/ftp/mg_tr_160/...kb_2005.SP1.pdf
http://www.megratec.ru/data/ftp/mg_tr_160/...ta_2005.SP1.zip
SM
Спасибо. А по DxD нету аналогичной информации? Ну и чего либо, связанного с TCL (VBScript никак не катит, win-онли он). Обещаю, что если получится "работа через зад - pcb driven" - то выложу в открытом виде.
fill
Цитата(SM @ Jun 1 2009, 17:06) *
Спасибо. А по DxD нету аналогичной информации? Ну и чего либо, связанного с TCL (VBScript никак не катит, win-онли он). Обещаю, что если получится "забота через зад - pcb driven" - то выложу в открытом виде.


А как насчет этой фразы Нажмите для просмотра прикрепленного файла
У меня больше ничего нет. Принципы написания едины для всех приложений.
AlexN
Цитата(SM @ Jun 1 2009, 20:06) *
Спасибо. А по DxD нету аналогичной информации? Ну и чего либо, связанного с TCL (VBScript никак не катит, win-онли он). Обещаю, что если получится "работа через зад - pcb driven" - то выложу в открытом виде.


а Вы полагаете, что оно кому-то надо?
SM
Цитата(fill @ Jun 1 2009, 17:23) *
У меня больше ничего нет. Принципы написания едины для всех приложений.

Принципы-то едины, а вот языки совсем разные. И наверняка есть серьезные языкозависимые различия. Не зря же Tcl/Tk в 2005.1 был very limited beta, когда vbs вовсю. Ну да ладно, буду методом научного тыка разбираться, раз недокументировано.


У меня вот еще вопрос мелкий есть, так как в linux infohub неработоспособен - в каком pdf находятся описания всех аттрибутов, типа "supply rename" и "supply pin"?
инфохаб запустился. Это он неработоспособен, если его через меню из DxD открывать, а если firefox-ом непосредственно из терминала - то работает. вопрос снят.


Цитата(AlexN @ Jun 1 2009, 18:03) *
а Вы полагаете, что оно кому-то надо?

Ну я уже знаю человек 6-7, которые забраковали пакет, как и я, только по этой причине smile.gif Почему Вы так уверены, что то, что не нужно лично Вам, не нужно никому?

О как... И все менторогуры молчат почему-то. Еле-еле нагуглилось.
http://sourceforge.net/projects/uwtoolbox/

И еще. Хоть какая-то документация в виде мааленького текстика обнаружилась в директории doc долгим текстовым поиском по всему дереву менторовской инсталляции.
там... 2007.5EE/SDD_HOME/common/linux/tclwtcom
Прямо хакерство какое-то ради того, чтобы скриптик написать.
cioma
Абисьняю (С) biggrin.gif

Писать можно на любом (!!!) языке программирования, поддерживающим COM (Common Object Model http://en.wikipedia.org/wiki/Component_Object_Model). Скорее всего есть способ и на TCL работать с COM. Я вот попозже на Python хочу попробовать.
SM
Цитата(cioma @ Jun 1 2009, 23:25) *
Скорее всего есть способ и на TCL работать с COM.

И я Абисьняю ©. Для работы с COM в TCL менторографиковцами cделан (или поставляется) tclwtcom. На который хочется узреть документацию smile.gif Да и хотя бы без хакерских путей выяснить, что именно эта либа идет в поставке для работы с COM в EE.
cioma
Может здесь чтолибо полезное есть по теме?
http://wiki.tcl.tk/1855
http://wiki.tcl.tk/1844
http://www.tcl.tk/community/tcl2007/procee...paperHughes.pdf
http://www.mentor.com/products/pcb-system-...ing/automation/

+ в auto_ed_user.pdf

Это конечно, не по tclwtcom smile.gif но может чтото прояснится
SM
Цитата(cioma @ Jun 1 2009, 23:43) *
Это конечно, не по tclwtcom smile.gif но может чтото прояснится

Да все уже прояснилось, когда я тупым поиском файлов по маске *tcl* прошелся по директории с ментором. Сразу нарылся и сам tclwtcom (собственно из чего я и понял, через что работать в tcl с ментором), и директорий doc в нем. И скромный текстовый файлик внутри doc. Вот так прячется документация от злобных юзеров ninja.gif , желающих вторнуться в святая святых - недра скриптинга smile3046.gif . Я не ищу инфы, как писать на TCL. Я на нем наваял уже целую толпу PCELL-ов в каде по ИМС. Я ищу как и через что работать именно в менторе. Ну а остановился на TCL вроде как потому, что industry standard он для скриптов в мультиплатформенном еда софте. Т.е. большинство его юзает.
SM
Вот еще мелкий вопросик.
А есть какое-то средство, помогающее безошибочно расставить атрибуты Supply Rename и/или Supply Pin? Ну, как самый минимум, чтобы просто глянуть на список supply (скрытых) пинов компонента из DxD...
fill
Цитата(SM @ Jun 7 2009, 21:50) *
Вот еще мелкий вопросик.
А есть какое-то средство, помогающее безошибочно расставить атрибуты Supply Rename и/или Supply Pin? Ну, как самый минимум, чтобы просто глянуть на список supply (скрытых) пинов компонента из DxD...


глянуть Нажмите для просмотра прикрепленного файла
SM
Цитата(fill @ Jun 8 2009, 14:04) *
глянуть ...

Увы и ах. Не арбайтен. См. вложение.

А есть возможность (к примеру) поредактировать назначение скрытых пинов в виде таблички? Ну чтобы в ней были part number, ref des, и список всех его скрытых пинов с возможностью назначить каждому свою цепь?
fill
Пишите свой сложный скрипт, т.к. придется обращаться к данным хранящимся в LM
SM
А по поводу "Aborted "$@"" - можно какую-то расширенную диагностику включить? Может просто у меня в консерватории что-то не так, а я об этом и не знаю...
fill
Цитата(SM @ Jun 8 2009, 15:28) *
А по поводу "Aborted "$@"" - можно какую-то расширенную диагностику включить? Может просто у меня в консерватории что-то не так, а я об этом и не знаю...


Ну я так понимаю ругается на строку 91 файла sdd_startmw. Т.к. у меня в виндах все нормально, то значит надо разбираться в вашем Linux, тем более что как вы говорите у вас и LM падает, значит явно что-то не так. Сертифицированный Linux ставить не пробовали?
SM
Цитата(fill @ Jun 8 2009, 16:00) *
Сертифицированный Linux ставить не пробовали?

Пробовал (на экспериментах с LM). Не помогает. И еще пробовал несколько разных несертифицированных, везде идентично, и не только у меня. Я, собственно, некоторое время и жил на официальном RHEL по некоторым лицензионным соображениям.
Цитата(fill @ Jun 8 2009, 16:00) *
Ну я так понимаю ругается на строку 91 файла sdd_startmw.

Ну это и я догадался smile.gif smile.gif В этой строчке делается собственно запуск самой программы, это последняя строка скрипта sdd_startmw, и она, эта программа, и падает, но почему-то молча, хоть бы сказала, что ей не нравится.
Цитата(fill @ Jun 8 2009, 16:00) *
Т.к. у меня в виндах все нормально, то значит надо разбираться в вашем Linux, тем более что как вы говорите у вас и LM падает, значит явно что-то не так.

С LM я примерно разобрался, он падает изредка, в зависимости буквально от фазы луны. Проблема там у ментора, в синхронизации между двух процессов, где при каких-то особо неудачных обстоятельствах происходит segmentation fault - т.е. обращение к несуществующей памяти (я под strace пускал LM). Т.е. при закрытии какого либо editor-а (без зависимости от его типа) может упасть сам LM. А может и не упасть. Ну упадет - перезапущу, главное все без потерь данных. А тут вот ведь 100% падает. Ну щас тоже попробую strace, если нет официального способа verbose диагностики.

Вот попробовал strace:

Вывод... Нихрена непонятно... Считал IC.pdb, причем не первый раз, до этого оно еще pdb-шки читало, ну и взял да упал по SIGSEGV... Т.е. никакой "классики жанра" проблем консерватории - ненайденного файла, или еще чего-то такого нехорошего не наблюдается.


......
......
......
access("/home/s-markov/work/mentor-lib/Mylib/PartsDBLibs/IC.pdb", W_OK) = 0
access("/home/s-markov/work/mentor-lib/Mylib/PartsDBLibs/IC.pdb", F_OK) = 0
open("/home/s-markov/work/mentor-lib/Mylib/PartsDBLibs/IC.pdb", O_RDONLY|O_LARGEFILE) = 67
fcntl64(67, 0xd /* F_??? */, 0xffbd0a30) = 0
fstat64(67, {st_mode=S_IFREG|0664, st_size=50080, ...}) = 0
fstat64(67, {st_mode=S_IFREG|0664, st_size=50080, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0x1000) = 0xfffffffff1c6d000
read(67, "\1p\4\0\f\3\0\37\1`\374\0\10\1\0\0\364\5\0\0x\7\0\0\374\10\0\0\10\n\0\0"..., 4096) = 4096
_llseek(67, 0, [4096], SEEK_CUR) = 0
_llseek(67, 4096, [4096], SEEK_SET) = 0
read(67, "\1\0\0\0\1@\4\0\27\0\0\0\0010\4\0\1\0\0\0\1@\4\0\31\0\0\0\0010\4\0"..., 4096) = 4096
read(67, "\37\0\0\0 \0\0\0 \0\0\0!\0\0\0!\0\0\0\"\0\0\0\"\0\0\0\"\0\0\0"..., 4096) = 4096
read(67, "\3\0\0\0\4\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0\4\0\0\0\1\0\0\0\2\0\0\0"..., 4096) = 4096
read(67, "\2\0\0\0002\0\0\0\2\0\0\0003\0\0\0\2\0\0\0004\0\0\0\2\0\0\0005\0\0\0"..., 4096) = 4096
read(67, "\1\0\0\0\267\2\0\0\1\0\0\0\271\2\0\0\1\0\0\0\272\2\0\0\1\0\0\0\265\2\0\0"..., 4096) = 4096
read(67, "$\1\0\0\36\1\0\0\27\1\0\0\r\1\0\0\4\1\0\0+\1\0\0\3\1\0\0'\1\0\0"..., 4096) = 4096
read(67, "\0\0\0\0\1\0\0\0\0\0\0\0\\\0\0\0\0\0\0\0\1\0\0\0\2\0\0\0\3\0\0\0"..., 4096) = 4096
read(67, "\1\0\0\0004\2\0\0\1\0\0\0003\2\0\0\1\0\0\0002\2\0\0\1\0\0\0001\2\0\0"..., 4096) = 4096
read(67, "\34\0\0\0\35\0\0\0\0010 \0\n\0\0\0IC:ad8231\0\0\0\t\0\0\0"..., 4096) = 4096
read(67, "\4\0\0\0DIR\0\4\0\0\0NXT\0\4\0\0\0STP\0\4\0\0\0~CS\0"..., 4096) = 4096
read(67, "\3\0\0\0\3\0\0\0\1\0\0\0\1@\10\0\224\2\0\0\232\2\0\0\0010\34\0\1\0\0\0"..., 4096) = 4096
read(67, "\0\0\0\0\5\0\0\0VCCB\0\0\0\0\1@\10\0h\2\0\0k\2\0\0\0010 \0"..., 4096) = 928
fcntl64(67, 0xd /* F_??? */, 0xffbd09e0) = 0
stat64("/home/s-markov/work/mentor-lib/Mylib/PartsDBLibs/IC.pdb", {st_mode=S_IFREG|0664, st_size=50080, ...}) = 0
close(67) = 0
munmap(0xf1c6d000, 4096) = 0
stat64("/home/s-markov/work/mentor-lib/Mylib/PartsDBLibs/IC.pdb", {st_mode=S_IFREG|0664, st_size=50080, ...}) = 0
access("/home/s-markov/work/mentor-lib/Mylib/PartsDBLibs/IC.pdb", F_OK) = 0
futex(0xf5bb6784, FUTEX_WAKE_PRIVATE, 1) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
rt_sigaction(SIGABRT, {0x1000000000000000, [], SA_RESTORER|SA_STACK|SA_RESTART|SA_INTERRUPT|SA_NODEFER|SA_RESETHAND|0x3bd15c0, (nil)}, {0x10000004f5c400c0, ~[HUP INT QUIT ILL FPE KILL SEGV USR2 ALRM TERM STKFLT CONT URG RT_1 RT_2 RT_3 RT_4 RT_5 RT_8 RT_9 RT_11 RT_12 RT_14 RT_15 RT_16 RT_18 RT_23], SA_RESTART|SA_INTERRUPT|SA_NODEFER|0x3f458}, 8) = 0

open("/tmp/mwcore.QuickConnectionView.5668", O_RDWR|O_CREAT|O_LARGEFILE, 0666) = 67
close(8) = 0
open("/tmp/mwcore.QuickConnectionView.5668", O_RDWR|O_CREAT|O_TRUNC|O_LARGEFILE, 0666) = 8
mmap2(NULL, 12288, PROT_READ|PROT_WRITE, MAP_PRIVATE, 9, 0x3000) = 0xfffffffff1c6b000
write(8, "Process information of process: "..., 8192) = 8192
write(8, "E/SDD_HOME/dx/help:/opt/mentor/E"..., 5894) = 5894
fstat64(8, {st_mode=S_IFREG|0664, st_size=14086, ...}) = 0
...
...
...



PS.
Линуксоиды, а у кого нибудь это работает?
tAmega
Вот еще вопрос, сразу скажу, конечно, я играюсь сейчас с символами и прочее, чтобы понять все нюансы. Меняю их, туда сюда пины перебрасываю. И вот уже несколько раз возникает такая ситуация,
при запуске на упаковку в DxD вылетает вот такое сообщение
ERROR: Symbol pin name: (null) not found in PDB
on Symbol: ClassSymbols:N of Part: 24LC128_1
for Symbol Reference: $1I474 on
Sheet: Schematic1(1) at Path: Schematic1

Здесь 24LC128 название символа
$1I474 номер символа на схеме.

Если задать символ заново, все работает, но стоит только чего то там туда сюда поменять, то после вылетает и все. Причем, верификация символа проходит нормально.
Верификация схемы проходит без ошибок. А упаковщик стабильно выдает вот это сообщение про несуществующий пин. А там все нормально, 8 пин, ничего лишнего.
В документации искал подобное сообщение, такого просто нет или не нашел.
Что это может быть? И как с этим бороться. Да когда 8 пин это несложно изменить. Но вводить какого нибудь монстра заново что то не очень хочется если начнет такая
же ошибка вылетать.
SM
А символ-то проапдейчен в DxD после изменения?
tAmega
Цитата(SM @ Jun 9 2009, 12:27) *
А символ-то проапдейчен в DxD после изменения?

Да, конечно. В том то и вопрос, вылизал все что можно, а упаковщик уперся и все тут...
fill
Что означает фраза "Если задать символ заново" ?
tAmega
Цитата(fill @ Jun 9 2009, 15:32) *
Что означает фраза "Если задать символ заново" ?

Это означает создать новый символ вручную и прикрепить его к детали, вместо старого в библиотеке. Старый просто удалить.

Все нашел, в чем причина. Значит, создается символ, встраивается в деталь. Затем открывается проект, символ вставляется
в схему, и запускается упаковщик. Все работает нормально. Упаковщик ставим на самый мощный вариант упаковки, с нуля,
Rapackage All Symbols и Delete local data, then rebuild all local library. Все работает.
Теперь идем в символ, который уже прикреплен к детали, меняем имя пина. И сохраняем. Он сохраняется без звука, что что то не так.
И далее переоткрываем схему, даже если удалить со схемы деталь, перепаковать, затем задать снова, еще раз перепаковать,
все равно вылетает ошибка. Вот эта (null). Все дело в том, что в самой детали в gate стоит старое имя пина. Просто так переименовать
в детали его не получится, нужно удалять gate, удалять символ, и по новой загружать символ в деталь. В принципе это конечно
экстремальная операция, менять имена пинов на живой детали. Согласен. Но в диагностике вместе (null) могли бы просто написать
"конфликт имен пина", и все было бы ясно...
fill
Изменять имена и номера зарегистрированных в PDB символов и ячеек надо через LM>Tools>Modify_Cell_&_Symbol_Pins
tAmega
Цитата(fill @ Jun 9 2009, 16:28) *
Изменять имена и номера зарегистрированных в PDB символов и ячеек надо через LM>Tools>Modify_Cell_&_Symbol_Pins

Спасибо за наводку, очень полезный момент.
AlexN
Цитата(fill @ May 29 2009, 18:17) *
Ощущение что вы где-то нарисовали простую цепь, назвали ее как эту шину (т.е. перечислив в имени все цепи) и умудрились подключить к шине MAIN_BUS. Поэтому в навигаторе и CES у вас одна цепь для шины. И диф. пара не может быть создана т.к. получается что это одна цепь.

Понял как это получилось:
- нарисовали шину и назвали MEM_BUS
- нарисовали цепи, назвали и стали их подключать к шине, при этом этом в диалоге появляется все время одно имя MEM_BUS
В результате вы их все просто закоротили через шину.

А надо было зайти сначала в Setup>Settings>Bus_Contents и прописать там MEM_BUS перечислив все цепи в нее входящие. Тогда можно было бы:
а) подводить или отводить от шины нужные цепи выбирая в списке
б) просто подключать названные цепи (при условии что они прописаны в Bus_Contents)

Если хотите иметь такое же представление о шине как в PCAD, то нарисуйте просто line вместо bus


тогда получается, что это одна электрическая цепь? с разными псевдонимами? А зачем DxD допускает несколько имен одной цепи?

от себя хочется добавить, что в DxD я обнаружил 2 вида шин: 1) - условно назовем их "разнородными" - им (шинам) даются имена в setup и прописывается содержимое, которое совершенно не привязано к имени шины. Впоследствии в эту шину можно добавлять сигналы через setup.
2) - "однородные", их имена однозначно определяют содержимое, например имя шины AD[0:31] - сигналы AD0, AD1, ... AD30, AD31. Если дать это имя при рисовании шины через properties, то такая шина не фигурирует в setup и ей не может быть впоследствии назначен псевдоним, например "BUS" и добавлены еще сигналы, например RD, WR.
хотя обходной путь есть - вручную создать в setup BUS, в ее содержимое прописать все, что надо, а на схеме переименовать шину AD[0:31] в BUS. Но это неудобно.

Ну а если назначить шине при ее рисовании простое имя без цифирек - то это получается, что шина вырождается в простой wire, хотя выглядит как шина. Мне это кажется нелогичным. Да и неравноправность шин прописанных заранее в setup и непрописанных - тоже нелогична.
было бы удобнее, если бы шины, именованные при рисовании попадали автоматом в stup/bus contents c именем и содержимым, данными при рисовании, с возможностью редактирования в setup. Тогда неравноправность шин исчезла бы.

кстати, из неудобств работы с шиной - при подключении безымянной net к шине и при выводе net из шины она (net) получает первое попавшееся имя из содержимого шины, было бы удобнее автоматом вызывать диалог выбора имени этой net, как это происходит при ПКМ / Rip Nets .

И еще - к старому спору о различимости больших и маленьких букв в properties. Напомню - там они различаются. То есть Part Name и part name - это РАЗНЫЕ атрибуты. А вот в именах шин BUS и bus - одно и то же. Опять нелогично. То есть имена то разные, и в списке шин есть и BUS и bus, только содержимое у них автоматически одинаковое.

**************************************
Из выходящего за рамки понимания:
имется учебный проект DxPADS_2007WS, когда-то любезно выложенный fill-ом. Так вот, после загрузки проекта в DxD открытие листов (их там 8) происходит от 4 до 14 секунд (14 секунд - 2 лист). При этом загрузка процессора практически нулевая, памяти 2GB. Хотел записать это безобразие на видео через camtasia, однако тут обнаружился парадокс: при запущеной камтасии листы грузятся ГОРАЗДО быстрее, например злополучный 2 лист не больше 3-4 секунд. От размера окна/разрешения экрана не зависит, включение/выключение антивируса не влияет. Придется записать это на глюки...
SM
Цитата(AlexN @ Jun 12 2009, 21:33) *
было бы удобнее, если бы шины, именованные при рисовании попадали автоматом в stup/bus contents c именем и содержимым, данными при рисовании, с возможностью редактирования в setup. Тогда неравноправность шин исчезла бы.

+1000 - очень нужно. И в плюс к этому - чтобы все подведенные цепи, именованные заранее, или переименованные потом в то, чего не было в bus contents, тоже автоматом добавлялись в Bus Contents - ИМХО его назначение чисто информационное в идеале должно быть. И, согласен, вообще непонятно, зачем иметь возможность подключать к одному сигналу шины кучу цепей с разными именами... Если и где-то надо (когда фича есть, это лучше, чем ее нет), так наверное крайне редко, хорошо бы, если бы это было запрятано, да еще и предупреждение выскакивало - типа "а вы точно уверены?"... Пока же bus contents запрятан почти так, как символы или pdb - отдельный файл, требующий апдейта после внесения изменений туда, и, думаю, надежды на все это около нуля.
Цитата(AlexN @ Jun 12 2009, 21:33) *
кстати, из неудобств работы с шиной - при подключении безымянной net к шине и при выводе net из шины она (net) получает первое попавшееся имя из содержимого шины, было бы удобнее автоматом вызывать диалог выбора имени этой net, как это происходит при ПКМ / Rip Nets .

Не, не первое попавшееся... А следующее из списка bus contents после той, которую дали в предыдущий раз. Т.е. все по кругу пробегает. В общем-то удобно вполне, если принцип понять...
AlexN
Цитата(SM @ Jun 16 2009, 03:04) *
И, согласен, вообще непонятно, зачем иметь возможность подключать к одному сигналу шины кучу цепей с разными именами...


??!! Не понял. Это же вроде Ваша концепция рисования - одна шина как паук на всю схему, а в ней все именованные цепи схемы, Вы же об этом писали несколько постов назад..
SM
Цитата(AlexN @ Jun 16 2009, 12:53) *
??!! Не понял.

Не в одну шину, а к одному сигналу шины - т.е. фича по созданию кучи алиасов одного и того же, на которую я по незнанию и нарвался. Ожидая, что автоматом оно будет добавлять сигнал в шину, а не коротить на имеющийся.
fill
1. Bus Contents прежде всего служит для организации всего процесса - сначала определяем что входит в состав шины и затем уже выбираем при рисовании в схеме. Т.е. исключаем фактор ошибочного набора, например в схеме ввели название двум отрезкам цепи RAO и RA0 которые не сильно отличаются визуально в схеме и подключили их к шине, которая автоматически их добавила в Bus Contents (это вы хотите) в итоге получим две цепи вместо одной и попробуйте потом отловите такую ошибку в сотнях цепей составляющих такую шину.
2. Процессом назначения имен можно управлять Нажмите для просмотра прикрепленного файла
3. Например два человека рисуют каждый свою подсхему при этом один и тотже сигнал используется в обеих подсхемах но выполняет разную роль и поэтому ему дали разное имя в этих подсхемах - закоротили его через шину и все, имена в подсхемах остались без изменений и отражают логику работы, а цепь стала единой. В противном случае пришлось бы в какой-то из подсхем менять имя цепи.
4. Интересный момент для поборника ГОСТ - Нажмите для просмотра прикрепленного файла Вы его выполняете? rolleyes.gif А ведь при использовании критикуемой вами возможности можно и выполнить Нажмите для просмотра прикрепленного файла Кстати если использовать знак | то имя итоговой "сборной" цепи останется не сборным (т.е в данном примере будет просто CLK).
5. Указанный проект DxPADS_2007WS у меня открывается как все остальные (быстро) поэтому ищите проблему на своем компе.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.