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

Вопросы начинающих

Что-то меня переклинило...

На схеме имеем мультиканальный символ ибо в устройстве есть несколько однотипных аналоговых модулей. В каждом модуле имеются 8 цифровых сигналов для управления этими модулями от MCU. Задача: передать эти сигналы на лист схемы с MCU.

Первое, что просится, использовать buses, увязав эти сигналы в них, вывести из мультиканального символа и передать в sheet sym MCU. Но! Сигналы эти неоднородны и не могут быть поименованы типа DB7...DB0.

Второе, использовать harness в каждом канале, но мультканальный символ вроде бы не поддерживает вывод "наружу" таких объектов.

Короче, застопорился что-то...

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


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

Каждому сигналу с помощью Place Net Label дай имена и все. Все они свяжутся в проекте.

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


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

Каждому сигналу с помощью Place Net Label дай имена и все. Все они свяжутся в проекте.

Нет. Имена дает мультиканальный символ. Я целый день могу набивать имена в модулях. А если их штук 20? В том то и дело, что AD автоматом дает имена цепям и обозначениям для каждого модуля и мне надо сначала повязать их в группы, вывести их "наружу" и передать в sheet sym MCU.

Вот пример. Имеем два модуля PSL. На листе единого "прототипа" таких модулей собираются сигналы в жгут McuBus (см рис1). Далее на "главной" схеме (рис2) можно вывести ЕДИНЫЙ ЖГУТ, в который входят жгуты всех (обоих) модулей. На главной схеме передаем все эти сигналы в sheet sym MCU. На листе MCU нужно "распотрошить" эти сигналы (рис3). Но такое решение не работает...

 

post-1807-1362495052_thumb.jpg post-1807-1362495063_thumb.jpg post-1807-1362495072_thumb.jpg

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


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

Нет. Имена дает мультиканальный символ. Я целый день могу набивать имена в модулях. А если их штук 20? В том то и дело, что AD автоматом дает имена цепям и обозначениям для каждого модуля и мне надо сначала повязать их в группы, вывести их "наружу" и передать в sheet sym MCU.
А почему нельзя использовать восемь шин, по одной для каждого управляющего сигнала?

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


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

А почему нельзя использовать восемь шин, по одной для каждого управляющего сигнала?

А хотелки вырастут, и захотят и шину смультиплицировать. Этак шину шин.

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


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

А почему нельзя использовать восемь шин, по одной для каждого управляющего сигнала?

Можно. Но это единственный вариант? А если модулей всего два - не слишком ли геморройно делать так?

Есть же harness - вроде специально заточенный для неоднородных сигналов. Но так, как хочется - не работает... Причем именно на стадии "выхода" из мультиканального символа (жгуты каналов не именуются как надо). Если на главной схеме вместо sheet entry MCU написать Repeat(MCU) = получим вылет из AD13.1.2 (Wait a moment...)

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


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

Можно. Но это единственный вариант? А если модулей всего два - не слишком ли геморройно делать так?

Есть же harness - вроде специально заточенный для неоднородных сигналов. Но так, как хочется - не работает...

Если каналов всего два, можно не пользоваться Repeat'ом, а банально скопировать SheetSymbol.

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


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

Если каналов всего два, можно не пользоваться Repeat'ом, а банально скопировать SheetSymbol.

Это то понятно, но вы уверены, что команда CopyRoomFormat в PCB корректно сработает для двух одинаковых модулей (комнат), позиционные обозначения компонентов которых уже не смогут использоваться для копирования формата?

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


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

Это то понятно, но вы уверены, что команда CopyRoomFormat в PCB корректно сработает для двух одинаковых модулей (комнат), позиционные обозначения компонентов которых уже не смогут использоваться для копирования формата?
Вполне нормально копируются. Сам пробовал.

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


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

Это то понятно, но вы уверены, что команда CopyRoomFormat в PCB корректно сработает для двух одинаковых модулей (комнат), позиционные обозначения компонентов которых уже не смогут использоваться для копирования формата?

Именно так и делаю, сколько нужно каналов, столько копирую схем, потом в PCB с помощью CopyRoomFormat. Так не будут длинных имен типа R1_1_2 или

я уже не помню как там получается. И не исползую harness, а делаю так как я писал, без всякого гемора.

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


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

Именно так и делаю, сколько нужно каналов, столько копирую схем, потом в PCB с помощью CopyRoomFormat. Так не будут длинных имен типа R1_1_2 или

я уже не помню как там получается. И не исползую harness, а делаю так как я писал, без всякого гемора.

Так используйте логические, они короткие.

или сплошную нумерацию, включая каналы. Такое тоже видел.

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


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

Не, мне не нравится Repeat и пр., как то ближе схемы, а не зеленые квадратики.

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


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

Именно так и делаю, сколько нужно каналов, столько копирую схем, потом в PCB с помощью CopyRoomFormat. Так не будут длинных имен типа R1_1_2 или

я уже не помню как там получается. И не исползую harness, а делаю так как я писал, без всякого гемора.

Тезисы:

1. Я все же настаиваю на применении иерархических схем, для лучшей читабельности. Пусть мы имеем дело с т. н. "псевдоканальным" проектом, т. е. каждый псевдоканал располагается к примеру на одном листе, но AD "не знает" об этой псевдоканальности. Плюс топовый лист проекта где отражена структура (в той или иной мере) с помощью sheet sym.

2. Вам все равно придется передавать сигналы в топовый лист и harness здесь очень пригодится, т. к. с его помощью вы можете имена цепей оставить "локальными" на листе псевдоканала, а на прочих листах, куда этот harness выходит, изменить имена этих цепей на другие, более логичные для данного листа схемы. Это потому что в AD одна и та же цепь может на схеме именоваться по-разному, хотя на плату попадает только одно имя. Итак, это свойство позволяет действительно накопировать кучу ПОЛНОСТЬЮ ИДЕНТИЧНЫХ псевдоканалов с их harness в каждом. Как вы выводите сигналы из псевдоканалов с помощью NetLabel мне не совсем понятно, т. к. эти объекты локальны для одного псевдоканала (листа) схемы...

3. Трудности начинаются, если хочется поименовать некоторые прочие локальные цепи псевдоканала. Ну это бывает нужно для удобства их наблюдения/трассировки на PCB. Тут проблема: AD не поименует такие цепи на PCB просто потому, что цепи разные в разных псевдоканалах, а их названия (одинаковые) могут прийти из схемы. Не так ли?

4. Некоторое неудобство представляет сквозная (сплошная) нумерация по всем псевдоканалам - все же хотелось бы как и в обычных каналах нумеровать - типа 1VD1,2VD1 и т. д. Для этого в обычных каналах я использую префикс $ChannelIndex$Component. Но, ясен пень, в псевдоканалах эта фича не работает.

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


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

Тезисы:

1. Я все же настаиваю на применении иерархических схем, для лучшей читабельности. Пусть мы имеем дело с т. н. "псевдоканальным" проектом, т. е. каждый псевдоканал располагается к примеру на одном листе, но AD "не знает" об этой псевдоканальности. Плюс топовый лист проекта где отражена структура (в той или иной мере) с помощью sheet sym.

2. Вам все равно придется передавать сигналы в топовый лист и harness здесь очень пригодится, т. к. с его помощью вы можете имена цепей оставить "локальными" на листе псевдоканала, а на прочих листах, куда этот harness выходит, изменить имена этих цепей на другие, более логичные для данного листа схемы. Это потому что в AD одна и та же цепь может на схеме именоваться по-разному, хотя на плату попадает только одно имя. Итак, это свойство позволяет действительно накопировать кучу ПОЛНОСТЬЮ ИДЕНТИЧНЫХ псевдоканалов с их harness в каждом. Как вы выводите сигналы из псевдоканалов с помощью NetLabel мне не совсем понятно, т. к. эти объекты локальны для одного псевдоканала (листа) схемы...

3. Трудности начинаются, если хочется поименовать некоторые прочие локальные цепи псевдоканала. Ну это бывает нужно для удобства их наблюдения/трассировки на PCB. Тут проблема: AD не поименует такие цепи на PCB просто потому, что цепи разные в разных псевдоканалах, а их названия (одинаковые) могут прийти из схемы. Не так ли?

4. Некоторое неудобство представляет сквозная (сплошная) нумерация по всем псевдоканалам - все же хотелось бы как и в обычных каналах нумеровать - типа 1VD1,2VD1 и т. д. Для этого в обычных каналах я использую префикс $ChannelIndex$Component. Но, ясен пень, в псевдоканалах эта фича не работает.

1. Весьма спорный насчет читаемости. Это удобно для ВАС. Но не читаемо и не понятно для стороннего человека, особенно если есть только твердые копии. А еще хуже , когда имена разные на разных листах--- приходится ручкой зачеркивать, и писать одно из них. Но у вкусах не спорят. Применение функциональных групп в виде блоков должно быть аргументировано.

2. Кроме harness есть порты, и их вполне достаточно. Хотя с harness выглядит красивее

3. Отчего же, есть и такое, и даже на глобальность распространялось. Попадали и такие проекты ко мне.

4 тоже работает. Хоть во всех каналах начиная с 1 нумеруйте.

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


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

Я межлистовые соединения сигналов обозначаю например: (L3/A4)2kHz т.е. сигнал идет на или с листа 3 позиции А4 ну и смысловое обозначение. Локальный

сигнал например: (Е3)clk, ну и тому подобное. Вообщем то кому как нравится, я ведь ни вкоем случае не настаиваю кому и как делать, здесь как говорится

чистый обмен опытом.

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


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

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