Схема расположения штифтов в CAD

Я искал здесь связанные вопросы, и самым близким из них, который я смог найти, был этот: Отраслевые практики для проектирования схем?

Тем не менее, это не касается моего конкретного вопроса, поэтому вот: я не являюсь EE и просто пытаюсь изучить Eagle, чтобы я мог отказаться от своей зависимости от ExpressPCB, который, как я обнаружил, подходит для простых проектов, но застрял с их проприетарный формат, инструмент и великолепие меня больше не привлекают.

В моем прошлом, ограниченном опыте создания схем, я размещал выводы в порядке номеров, который обычно от 1 до (N/2) сверху вниз слева, затем от (N/2+1) до N от снизу вверх справа.

Пока все в порядке, сейчас я выкладываю плату для MCP73123 для тестирования зарядного устройства LiFePO4 ( из-за моего другого поста здесь ) и заметил, что в техническом описании Microchip они выкладывают свою схему следующим образом:

введите описание изображения здесь

Лично я думаю, что это способ сделать это, поскольку инструменты CAD / CAE в любом случае знают, каково правильное назначение выводов, и это выглядит намного чище на схеме, поскольку связанные выводы находятся в непосредственной близости друг от друга.

Итак, мой вопрос заключается в том, обычно ли вы делаете это опытные проектировщики печатных плат, или вы придерживаетесь подхода с числовым порядком? Что вы считаете плюсами/минусами каждого подхода. Кроме того, есть ли другая методология?

Да, мы делаем это все время. Обычно схематический символ создается таким образом, чтобы его было легче читать и легче подключать. Что они и сделали в вашем примере. Как вы сказали, когда дело доходит до макета, контакты будут там, где вы хотите. Просто будьте осторожны, чтобы на вашем посадочном месте были контакты в нужном месте. Легко и часто можно испортить расположение контактов, скажем, на sot23 (устройство с 3 контактами). Если когда-нибудь возникнут сомнения, я обычно рисую эскиз нумерации выводов на своей схеме.
Когда вы впервые создаете или импортируете символ схемы, контакты могут быть или не быть в порядке, но системы САПР имеют функцию, которая позволяет вам перемещать соединения вокруг символа, сохраняя при этом связь с правильным номером контакта.
Часто некоторые контакты бухгалтерского типа, такие как питание и земля, даже помещаются в отдельный вентиль, который принимает вход от определенных стандартных цепей и делается невидимым! Мне всегда нравится проверять, подключены ли они так, как мне нравится, используя команду вызова для их вызова.
Привет, ты пробовал easyEDA?
@ bem22 Я до сих пор мало работаю с печатными платами, но я решил использовать KiCad.
easyeda.com/be.mihai22/project-hawk проверить это

Ответы (3)

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

Обозначения порядка выводов - это в основном лень со стороны того, кто определяет деталь в системе САПР. Разложить все по порядку контактов проще, чем выкапывать полные названия и функции каждого контакта. Конечно, обычно это не заявленная причина. Наиболее распространенным оправданием является то, что это помогает в отладке. Однако небольшое размышление показывает, что это не так.

Когда вы отлаживаете новую плату, перед вами и плата, и схема. Подумайте об обычном рабочем процессе. Что более распространено: «Я хочу посмотреть на линию часов, какой это контакт?» или "Я хочу посмотреть на контакт 5, что это за функция?" ?. Ясно, что ответ первый, намного. Да, иногда в начале процесса отладки вы можете захотеть обойти микросхему и посмотреть сигнал на каждом выводе, но обычно это делается один раз, если вообще. Есть случаи, когда порядок выводов помогает, например, при некоторых ремонтных работах, но для каждого из них есть несколько случаев, когда порядок функций лучше. Функциональное изображение вывода на самом деле лучше для отладкичем изображение булавки. Не ведитесь на отговорки, что не потратили время на определение символа один раз.

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

Чтобы узнать больше о хороших схематических практиках, см. мою более длинную статью на эту тему.

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

Мы с Олином «условились не соглашаться» на эту тему. Хотя я полностью поддерживаю его подход к микросхемам с фиксированными функциями, где каждый вывод имеет четко определенную функцию и направление, я не думаю, что имеет смысл пытаться применить этот подход к микросхемам общего назначения, таким как микроконтроллеры и ПЛИС, где довольно каждый контакт может быть определен как вход или выход в зависимости от конкретного приложения.

Поскольку я не хочу создавать уникальный схематический символ для детали для каждого приложения, контакты должны быть организованы в произвольном порядке на символе. Имеет смысл сгруппировать контакты для каждого «порта» или «банка» вместе, и, поскольку они в любом случае обычно сгруппированы таким образом на физическом устройстве, я утверждаю, что использование физического порядка контактов на схеме имеет больше смысла, чем любой другой произвольный порядок.

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

И это действительно помогает при отладке (проверке) физического прототипа. С устройствами с большим количеством выводов вам действительно будет легче ориентироваться, если вы сможете увидеть одинаковую схему, скажем, соединений питания и заземления как на схеме, так и на макете рядом с контактом, который вы пытаетесь исследовать. Не знаю, как вы, но я склонен сбиваться со счета, пытаясь найти конкретный штифт на одной стороне 84-контактного QFP с мелким шагом.

Однако эти комментарии не относятся к устройствам с действительно большим количеством выводов в BGA. Во-первых, вы обычно не пытаетесь исследовать их напрямую, а во-вторых, схематический символ, вероятно, разбит на несколько частей. Для этих устройств чисто функциональная группировка по символу снова имеет смысл.

Я согласен, что не стоит делать новый символ для каждого дизайна. Но использование физического порядка выводов становится действительно неприятным даже для очень скромных в настоящее время FPGA. Прежде всего, вы не можете очень хорошо представить BGA на схеме. Во-вторых, даже для пакетов типа QFP символ становится очень большим, если сделать его квадратным.
Хорошая мысль о форматах с высокой плотностью контактов! Я согласен, что в таком случае было бы неплохо иметь корреляцию 1:1 между схемой и физическим корпусом.
О, а затем вы получаете возможность поменять местами контакты. Если ваш инструмент компоновки позволяет вам поменять местами выводы, а затем аннотировать схему, возможно, он просто перенумерует выводы на схеме (например, не будет пытаться перерисовать провода). Который просто ищет проблемы, если 90% контактов в физическом порядке, а один важный - нет.
@ThePhoton: С такими типами устройств я обычно не меняю контакты на этапе макета. Во-первых, у меня уже есть хорошее назначение контактов на схеме, а во-вторых, перестановка контактов на устройствах такого типа в любом случае требует координации между внутренней и внешней функциональностью. Макет — не место для этого; исправьте сначала на схеме.
@DaveTweed, причина, по которой вы меняете контакты, заключается в том, что вы понимаете, что маршрутизация улучшается за счет изменения назначения контактов. Конечно, хорошей практикой является думать наперед и давать хорошие задания при первом макетировании. Но в других случаях более практично думать на уровне схемы во время работы над схемой и беспокоиться о проблемах с маршрутизацией, когда вы делаете маршрут. Но, конечно, у всех разные привычки и процессы, и разные инструменты могут повлиять на то, какой способ сделать что-то наиболее эффективным.
Мне также нравится использовать порядок номеров выводов для микроконтроллера, поскольку именно так они обычно отображаются в таблицах данных производителей.

Схема существует для:

  • Помогите спроектировать схему
  • Помогите отладить схему
  • Помогите другим людям понять схему

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

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

Если вы собираетесь выкладывать микроконтроллер в порядке функций, то когда какой порядок функций?

символы PIC32

Это тот же PIC32, нарисованный по-разному. Первый в каком-то общем функциональном порядке, второй в порядке для конкретной схемы. Как вы можете видеть, символ левой руки почти так же бесполезен, как и символ порядка булавки. Поэтому, если вы выберете маршрут порядка функций, будьте готовы нарисовать разные символы для каждой цепи.

Я почти всегда рисую разъемы так, чтобы они соответствовали расположению соединений на реальном разъеме. Это действительно помогает мне остановить подключение разъема в обратном направлении (что я, кажется, делаю много ). Я даже стараюсь детально прорисовывать разъем, чтобы при отладке легко соотнести разъем на плате с символом.

Символ соединителя

Что бы вы ни делали, делайте это, потому что считаете это полезным. Делайте это любым способом, который поможет вам избежать ошибок. И любой способ поможет вам отладить плату. Не слушайте никого, кто говорит вам, что есть только один способ сделать это. Не стыдитесь делать это по-своему.

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

Если схема должна быть прочитана и другими людьми, вы должны учитывать их при выборе метода.

Нет, дело не только в вас, если только вы не являетесь владельцем собственного магазина и не будете единственным, кто когда-либо будет смотреть на схему. Когда в дело вовлечены другие люди, вы должны учитывать общую картину. Выполнять свою работу в одиночестве, руководствуясь только тем, что проще для вас, — безответственно. Если вы собираетесь начертить схему один раз, но 100 выездных техников должны просматривать ее два раза в неделю, то оптимизировать ее только для вас за счет них просто неправильно. Хороший босс это уловит, но слишком часто это выше их головы, и в итоге вы получите плохие схемы.
@OlinLathrop - Если бы вы читали мой ответ, вы бы знали, что это именно то, что я сказал.
Мне нравится ваше замечание о том, что не существует единственного функционального способа нарисовать схему компонента, это имеет большой смысл.
@Rocket: я сделал, и я не делаю. Например, я действительно возражаю против того, что бы вы ни делали, делайте это только потому, что считаете это полезным . На этой планете есть и другие люди, так что если вы не работаете в изоляции, это действительно безответственно.
@OlinLathrop - Посмотрите на первые три пункта списка. Вы увидите, что я сделал это в самом начале ответа. Я сделал это снова в конце. Мы читаем одно и то же здесь?