Разработка пользовательских периферийных плат NanoBoard

Ben Jordan
|  Создано: 21 Февраля, 2017  |  Обновлено: 11 Ноября, 2020

Если вы хотите добавить пользовательскую аппаратную функциональность к вашему NanoBoard®, почему бы не создать свою собственную дополнительную Периферийную Плату? Этот двухчастный Технический Совет подробно описывает простой способ создания вашей собственной пользовательской платы для использования с Altium Designer®.

Часть 1: Создание шаблона вашей собственной периферийной платы

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

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

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

NB3000 пользуется особой популярностью не только из-за привлекательной цены, но и благодаря обширному набору устройств и опций ввода-вывода. Среди них USB (хост и клиент), RGB светодиоды, TFT сенсорный экран, изолированные реле, АЦП, ЦАП, RS-485, RS-232, Ethernet, MIDI, SVGA и высококачественный аудио-ввод-вывод - и это лишь некоторые из них!

Обе платы NanoBoard являются расширяемыми платами разработки, имеющими места для подключения дочерних плат для добавления дополнительных возможностей ввода-вывода. На момент написания этой технической заметки от Altium доступны четыре периферийные платы: полноразмерная PB01 (аудио кодек, аналоговый ввод-вывод видео), PB02 (плата массового хранения с SD, CF, ATA и т.д.), PB03 (Ethernet, USB, IrDA) и PB30 - полноразмерная плата с необходимым соединителем к NB2/NB3000 и несколькими различными зонами для прототипирования для создания простых дополнительных схем.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

Хотя плата для прототипирования является отличной отправной точкой для испытания простых схем с подключением к NanoBoard NB3000, разработка собственной периферийной платы открывает безграничные возможности.

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

Подготовка файлов периферийной платы

Первым шагом является создание шаблона для периферийной платы, и в этом техническом совете мы будем исходить из PB30, потому что эта плата ориентирована таким образом, что Nanoconnector Altium находится в верхнем левом углу, и шелкография обычно показывает правильное положение, когда она подключена к NanoBoard NB3000. Если вы используете NanoBoard NB2, пространство для полноразмерной периферийной платы находится вверху, в этом случае плата PB-01 (Аудио, Видео) будет хорошим выбором, так как ее ориентация повернута на 180 градусов.

Текущая версия Altium по умолчанию размещает эталонный дизайн PB30 в “C:\Program Files\Altium Summer 09\Examples\Reference Designs\PB30\”.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

Скопируйте целую папку для периферийной платы и переименуйте её для вашего шаблона. В данном случае мы назвали её PBUSER:

Также вам следует переименовать сами файлы в проекте. Быстрый способ сделать это - использовать старую добрую команду DOS RENAME с некоторыми масками:

Теперь, если вы откроете проект PBUSER.PrjPCB в Altium, вы получите предупреждение для каждого документа, который ранее был частью проекта, о том, что он больше не найден и будет удалён.

Это происходит потому, что мы переименовали каждый из этих файлов (соответствующим образом). Это нормально, потому что всё, что нам нужно сделать, это снова добавить их в проект, используя команду Project» Add Existing to Project..., выбрав все файлы PBUSER*.* и нажав OK.

Теперь у нас есть полная копия PB30, единственное отличие в том, что проект и все его файлы были переименованы.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

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

Дизайн PB30 также содержит 1-wire PROM, используемый для идентификации и регистрации платы в Altium, что позволяет автоматически настраивать ограничения для проектирования FPGA - мы оставим этот элемент в дизайне, поскольку хотим иметь эту возможность для нашей пользовательской PB. После того как мы удалим лишнее из схемы, нажатие на Design» Update PCB Document PBUSER.PcbDoc запустит процесс ECO для внесения изменений в печатную плату и, в конечном итоге, удаления ненужных элементов. При выполнении этой команды может появиться предупреждение о том, что некоторые компоненты не могут быть сопоставлены по уникальным идентификаторам. В этом случае нажмите Да, чтобы разрешить продолжение синхронизации. Аналогично, если вас попросят сопоставить классы компонентов, нажмите Нет. (Эти проблемы также будут автоматически решены путем запуска процесса ECO.)

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

Вы можете здесь видеть, что оригинальные трассы из зоны прототипирования остались, включая капли. Мы можем удалить трассировку, используя Инструменты» Разведение» Все. Чтобы удалить капли, нам нужно выделить их рамкой и просто нажать Удалить.

Как часть процесса ECO, на плату была добавлена новая Комната, названная в честь верхнеуровневой схемы (в данном случае PBUSER Double_Sized_Proto_Board). Если вы не хотите использовать комнаты, вы можете просто выбрать и удалить её. В противном случае, выберите её и перетащите её верхний правый угол так, чтобы её область покрывала плату.

Вы можете заметить, что в этом проекте два документа PCB - PBUSER.PcbDoc, который является этой платой, и PBUSERPanel.PcbDoc. PBUSERPanel.PcbDoc - это версия основного дизайна платы, состоящая из двух на два панелей, использующая Встроенный Массив Плат. Поскольку он ссылается на основную плату, необходимо сделать очень мало изменений. Сам Встроенный Массив нужно обновить, чтобы он указывал на новый документ платы. Это делается двойным кликом по массиву (который выглядит как маленький серый прямоугольник) и указанием нового имени файла PCB:

Когда массив указывает на новую пустую плату, вы можете видеть их должным образом внутри панели:

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

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

Создание шаблона

После того как обновленные файлы и проект были сохранены, они готовы к использованию в качестве основы для любого нового дизайна пользовательской периферийной платы. Они также могут быть использованы вместе как шаблон проекта, путем копирования проекта и его файлов в папку Templates установки Altium. Затем, из панели Files в Altium, нажмите PCB Projects, и в окне New From Template нажмите PCB Projects... и найдите проект PBUSER.PrjPcb в папке Templates. Когда вы сохраните вновь созданный проект, вам будет предложено выбрать новое место для сохранения проекта и всех исходных документов из шаблона.

Переключение контактов и NanoConnector

Одним из основных преимуществ использования этого шаблона является то, что схематический компонент, представляющий Nanoconnector, используемый для подключения к хостам NB3000 или NB2, предварительно настроен со всеми соответствующими назначениями контактов для фиксированных функциональных входов/выходов хоста, таких как Audio, SPI, I2C и системные часы хоста. Кроме того, жесткие и мягкие цепи JTAG системы прокладываются к Nanoconnector периферийной платы вместе с линией включения, что делает добавление дополнительных FPGA, микроконтроллеров или устройств граничного сканирования к системе очень простым. Конечно, также предоставляются шины питания . Доступные напряжения составляют 1.2В, 1.8В, 2.5В, 3.3В и 5В.

Помимо фиксированных функциональных входов/выходов, одна сторона Наноконнектора предназначена для универсальных цифровых входов/выходов, которые в конечном итоге соединяются с пользовательским FPGA на NB3000 (или NB2). Эти контакты на компоненте Наноконнектора в дизайне (обозначенные как HDR1) изначально настроены на возможность замены. Это особенно удобно, поскольку трассировка вокруг коннектора может быть довольно плотной из-за его мелкого шага. Нет никакого волшебства в использовании этой возможности - в приведенном ниже примере переключатель контактов был активирован из Инструменты» Переключение Пинов/Частей» Автоматическая Оптимизация Сети/Пинов, и полученные изменения были возвращены в схему через процесс обратного ЭКО, используя Проект» Обновление Схем в <проекте>.

Вы можете обнаружить, что полезно выполнять переключение пинов несколько раз на протяжении процесса трассировки платы, по мере приближения к завершению работ. Это помогает устранить перекрестные соединения и значительно ускоряет процесс создания вашего собственного периферийного устройства. Приведенный выше пример был завершен всего за пару дней, а ниже показан 3D вид:

Один последний и очень важный момент касательно Nanoconnector заключается в том, что его можно приобрести от Altium в любой точке мира по низкой цене (и с дисконтом при больших объемах). Номер заказа для этого коннектора на периферийной плате - 99-400-NBC (поставляется тубус из девяти коннекторов).

...и уже в следующем месяце!

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

В следующей части этого Технического Совета вы узнаете о "мягких" аспектах использования вашей новой индивидуальной платы - как создать повторно используемый файл ограничений, придать карте индивидуальность с помощью 1-wire PROM и создать соответствующий порт-плагин для использования в ваших проектах FPGA.

Об авторе

Об авторе

Бен Джордан (Ben Jordan) — инженер по компьютерным системам и печатным платам с более чем 20-летним опытом разработки встраиваемых систем, ПЛИС и печатных плат. Он заядлый мастер, и он увлекается созданием электронных устройств всех видов. Бен являтся бакалавром технических наук (CompSysEng) с отличием первой степени Университета Южного Квинсленда и в настоящее время является директором по средствам и информационным ресурсам сообщества.

Связанные ресурсы

Связанная техническая документация

Вернуться на главную
Thank you, you are now subscribed to updates.
Altium Need Help?