Перейти к содержанию
    

Ура, получилось!

fill правильно засомневался, что ранее предложенный вариант не будет работать с CDB.

Решение следующее:

- в базе данных создаются столбцы ID, DEVICE и P/D_NUM. ID хранит уникальный ID каждой строки (по-науке).

DEVICE хранит партнамбер компонента по каталогу производителя. P/D_NUM хранит отличительную характеристику

компонента, в нашем случае место его установки (J4 или rJ4).

 

Получается структура:

ID    DEVICE        P/D_NUM    HETERO        
1    17211102102    cPCI_per_J1 CPCI_PER_J1_A,CPCI_PER_J1_B,CPCI_PER_J1_C,CPCI_PER_J1_D,CPCI_PER_J1_E,CPCI_PER_J
1_F
2    17211102102    cPCI_rJ4    CPCI_RJ4_A,CPCI_RJ4_B,CPCI_RJ4_C,CPCI_RJ4_D,CPCI_RJ4_E,CPCI_RJ4_F

- в PDB для CDB (Library Manager) создается _один_ компонент с партнамбером 17211102102. В Pin mapping ему прописываются пины от всех символов.

Количество слотов пока сделал = 1, т.к. нормаьно назначать Pin Swap не умею/боюсь.

Это предназначается для работы с EXPEDITION через CDB.

 

- для работы с EXPEDITION и Allegro через нетлист меняются конфигурационные файлы expedition.cfg и allegro.cfg. В них ищется раздел

BeginAlsRules. В аллегровском файле там стоит строка DEV P/D_NUM PART_NUMBER, которая заменяется на DEV P/D_NUM DEVICE. В файл для экспедишена

эта строка добавляется, т.к. ее там изначально нет.

Это означает, что генератор нетлиста будет использовать P/D_NUM вместо DEVICE при генерации, а он-то (P/D_NUM) как раз у нас уникальный.

 

- чтобы не было ошибок "Duplicate attribute DEVICE" в настроках таблицы, которая отвечает за аннотацию компонентов в DxDataBook

снимается галочки "Load" и "Annotate" с атрибута DEVICE (возможно, нужно снимать только "Annotate", чтобы в DxDataBook правильно грузилось, не проверял).

 

- наслаждаемся работой!

Проверено, работает и через CDB, и через нетлист, как в Expedition, так и в Allegro.

 

Но остались вопросы:

1. Все-таки не до конца ясно предназначение атрибута P/D_NUM, в том смысле, который ему придумал ментор.

2. Ясно, что из-за выключенных галочек в DxDataBook, придется хранить все подобные разъемы в отдельной таблице, не повредит ли это общей организации базы и библиотек

3. Ясно, что для нормальной работы нетлистера в базе данных для _всех_ компонентов во _всех_ таблицах должно иметься заполненное поле P/D_NUM. Нет ли возможности как-то указать нетлистеру, что

если P/D_NUM в базе не заполнено, то брать его все-таки из DEVICE?

 

PS: Если кому-то надо, то могу выложить результаты труда, когда доделаю остальные разъемы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединюсь к потребителям советов ;).

Начинаю осваивать Mentor EXP2005_SP1 (+патч от 28.12.2006, номер не знаю), по маршруту DxDesigner/Expedition.

Пока на этапе библиотек. Есть для начала некоторая центральная библиотека (чужая), для пробы создал в ней при помощи Library Manager пару Symbols и Cells (с использованием готовых Padstacks), до Parts еще не дошел. Теперь решил свои учебные потуги от греха переместить в отдельную учебную библиотеку.

Новую (пустую) библиотеку создал (File->New...), создал в ней разделы с желаемыми именами в PARTS, CELLS, SYMBOLS.

"Мои" Symbols скопировались без проблем, а с Cells и Padstacks вопрос: в \TOOLS\Library Services активны только закладки Parts, Symbols, Processes. Пытался работать из "новой" ЦБ (объект для импорта - указана "старая" ЦБ) и из "старой" ЦБ (объект для экспорта - "новая" ЦБ) - одинаково. В чем может быть дело?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как в Expedition (CES?) установить правила зазоров между различными элементами (в частности, smd pad to via) одной и той же цепи (same net)? По-умолчанию, берется правило из CES (clearance tab), но оно действует как для разных цепей, так и для одной и той же цепи.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединюсь к потребителям советов ;).

Начинаю осваивать Mentor EXP2005_SP1 (+патч от 28.12.2006, номер не знаю), по маршруту DxDesigner/Expedition.

Пока на этапе библиотек. Есть для начала некоторая центральная библиотека (чужая), для пробы создал в ней при помощи Library Manager пару Symbols и Cells (с использованием готовых Padstacks), до Parts еще не дошел. Теперь решил свои учебные потуги от греха переместить в отдельную учебную библиотеку.

Новую (пустую) библиотеку создал (File->New...), создал в ней разделы с желаемыми именами в PARTS, CELLS, SYMBOLS.

"Мои" Symbols скопировались без проблем, а с Cells и Padstacks вопрос: в \TOOLS\Library Services активны только закладки Parts, Symbols, Processes. Пытался работать из "новой" ЦБ (объект для импорта - указана "старая" ЦБ) и из "старой" ЦБ (объект для экспорта - "новая" ЦБ) - одинаково. В чем может быть дело?

 

Запомните - при запуске LM из редактора схем (или топологии) берется лицензия редактора схем (или топологии) и соответственно отключаются подредакторы LM не относящиеся к схеме (или топологии).

Запустите LM через Start>Programs>Mentor_Graphics_SDD>....

 

Как в Expedition (CES?) установить правила зазоров между различными элементами (в частности, smd pad to via) одной и той же цепи (same net)? По-умолчанию, берется правило из CES (clearance tab), но оно действует как для разных цепей, так и для одной и той же цепи.

 

Специальных правил для одной и той же цепи нет. Есть только для Via-to-Via - актуально для применения глухих\скрытых переходов.

Возможно появятся, т.к. в PADS они есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Специальных правил для одной и той же цепи нет. Есть только для Via-to-Via - актуально для применения глухих\скрытых переходов.

Возможно появятся, т.к. в PADS они есть.

 

Спасибо, пока обошел это ограничение следующим образом:

 

- Отключаю Editor Control > General Tab > Interactive DRC (после этого Expedition позволяет нарушать зазоры при ручном размещении и трассировке)

- Расставляю нужные компоненты и трассирую

- Включаю Interactive DRC

 

Конечно, когда на завершающем этапе буду делать Batch DRC, он мне выдаст ошибки на такие соединения, но главное - проконтроллировать, чтобы зазоры не нарушались там, где мне не надо :)

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1) Создаем Net Class с одной цепью

2) Создаем новую схему

3) Создаем New Clearance Rule, прописываем здесь новые зазоры "(в частности, smd pad to via)"

4) Создаем class-to-class clearance для нового Clearance Rule на базе класса с одной цепью

 

Таких схем делаем сколько угодно, потом в ExpeditionPCB рисуем Rule Area с этими схемами.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Ну или ставить на примерном расстоянии (как показано).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Ну или ставить на примерном расстоянии (как показано).

 

Согласен, это - наилучший вариант, спасибо.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

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

Вообще-то это уже обсуждалось в данной ветке. Я сделал так - завел дополнительные cell-ы с Route Obstruct для via на падах, а в Editor Control разрешаю устанавливать via на smd.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ведь это будет распространяться на все цепи, которые подключены к определенному паду, а не на конкретный класс цепей.

 

Тогда к чему был этот вопрос?

Как в Expedition (CES?) установить правила зазоров между различными элементами (в частности, smd pad to via) одной и той же цепи (same net)? По-умолчанию, берется правило из CES (clearance tab), но оно действует как для разных цепей, так и для одной и той же цепи.

 

Ну да ладно, раз подходит тогда гут.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1) Создаем Net Class с одной цепью

2) Создаем новую схему

3) Создаем New Clearance Rule, прописываем здесь новые зазоры "(в частности, smd pad to via)"

4) Создаем class-to-class clearance для нового Clearance Rule на базе класса с одной цепью

 

Таких схем делаем сколько угодно, потом в ExpeditionPCB рисуем Rule Area с этими схемами.

 

А вот это, наверное, самый правильный вариант. Конечно же, мне это было нужно для нескольких цепей, а не для всех падов определенного типа. Спасибо, буду пробовать!

 

Так, похоже, я чего-то не понимаю. Например, мне нужно, чтобы pad to via для цепи GND был равен 0.

Если использовать описанный способ, то не получится ли так, что pad to via будет равен 0 для всех цепей в данной Rule Area (имеется в виду pad to via для одной и той же цепи)?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Например, мне нужно, чтобы pad to via для цепи GND был равен 0.

Нулю не получится, можно ввести маленькое значение, например 0.1

 

Если использовать описанный способ, то не получится ли так, что pad to via будет равен 0 для всех цепей в данной Rule Area

Нет, pad to via будет равен 0 только для цепей созданного ранее класса, см. п1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Запомните - при запуске LM из редактора схем (или топологии) берется лицензия редактора схем (или топологии) и соответственно отключаются подредакторы LM не относящиеся к схеме (или топологии). Запустите LM через Start>Programs>Mentor_Graphics_SDD>...
ОК, спасибо, с этим ясно, работает.

 

Новый вопрос

Прочитал (в другом месте) рекомендацию "...I see that you have opened the symbols in the symbol editor of the library manager. Avoid that at all costs because this symbol editor makes a mess of you're symbol. Always edit an symbol in Dx designer!"

Имеется ли иная возможность редактирования символов, не используя символьный редактор менеджера библиотек? Я как-то ничего не увидел. Можно это делать средствами самого схемного редактора, или это имеется в виду SYMBOL WIZARD (иконка на панели инструментов DxDesigner-а)?

 

Я понимаю, что эти вопросы правильно было бы задавать тому, кто написал процитированное, но это будет возможно только примерно в следующий вторник, а время терять не хотелось бы.

 

---------

Извиняюсь, сам нашел (в запущенном DxDesigner меню "File->Open->Symbol", выбрать имя символа для редактирования или "File->New->Symbol", задать имя создаваемого символа).

Осталось выяснить, чем такое редактирование/создание лучше использования Library Manager-а. Пока (навскидку) элемент, созданный в Library Manager, в DxDesigner выглядит иначе (похоже, разные настройки шрифтов, но и расположение номеров выводов относительно выводов иное).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

ОК, спасибо, с этим ясно, работает.

 

Новый вопрос

Прочитал (в другом месте) рекомендацию "...I see that you have opened the symbols in the symbol editor of the library manager. Avoid that at all costs because this symbol editor makes a mess of you're symbol. Always edit an symbol in Dx designer!"

Имеется ли иная возможность редактирования символов, не используя символьный редактор менеджера библиотек? Я как-то ничего не увидел. Можно это делать средствами самого схемного редактора, или это имеется в виду SYMBOL WIZARD (иконка на панели инструментов DxDesigner-а)?

 

Я понимаю, что эти вопросы правильно было бы задавать тому, кто написал процитированное, но это будет возможно только примерно в следующий вторник, а время терять не хотелось бы.

 

---------

Извиняюсь, сам нашел (в запущенном DxDesigner меню "File->Open->Symbol", выбрать имя символа для редактирования или "File->New->Symbol", задать имя создаваемого символа).

Осталось выяснить, чем такое редактирование/создание лучше использования Library Manager-а. Пока (навскидку) элемент, созданный в Library Manager, в DxDesigner выглядит иначе (похоже, разные настройки шрифтов, но и расположение номеров выводов относительно выводов иное).

Вот это то и основная загвоздка, кроме того можно отметить проблемы с единицами измерения - есть несогласование единиц, заданных в SymEditor и DxDesigner и основная (по крайней мере у меня) претензия - невозможно установить точку привязки текстовых атрибутов и соответственно точно позционировать атрибуты по сетке. Так что пока лучший путь - создание символов в DxDesigner (но там тоже есть одно неудобство - отсутствие команды, которая сохраняла бы символ в раздел центральной библиотеке). Налицо проблемы интеграции маршрута DxDesigner и Library Manager. В следующем релизе описанные проблемы обещают побороть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...