Я решил в этом сезоне закончить обзоры разнообразных плат с ПЛИС и переключиться на действительно сложные (для меня) технические задачи. И последний свой обзор в этом сезоне я решил посвятить плате с Altera Cyclone IV на плате от OMDAZZ, которой со мной любезно поделилась компания из Питера - “РСВ Электроникс” в которой я рассматриваю возможность пройти обучение основам Verilog и обобщить свои знания по цифровой схемотехнике, получить практические навыки, которые помогут мне решать новые для себя задачи, а затем писать для вас разные крутые статьи! ????

Обзор будет не самый обычный - я еще попутно расскажу о том, как с использованием этой платы и при помощи наставников из РСВ Электроникс я буду повышать свой скилл по работе с FPGA с около нулевого до достаточно уверенного junior-уровня. Не всё же просто обзоры делать с мигалками. Пора двигаться дальше! :) 

Всем кого заинтересовала данная тема - прошу проследовать за мной (под кат)! 

Комплект поставки

Начну обзор отладки традиционно, с рассмотрения того, что идёт в комплекте и как это было упаковано продавцом. Посмотреть основное описание комплекта и цены вы можете у продавца. В комплекте идет традиционный набор, необходимый минимум для работы:

  • отладочная плата, в приятном плексигласовом прозрачном корпусе на стойках;

  • китайская копия JTAG-программатора USB Blaster и miniUSB-кабель;

  • кабель USB Type-A - Type-B;

Если говорить о качестве упаковки - все было упаковано качественно, в антистатический пакет, правда без дополнительной пузырчатой пленки, но кажется, что отладка за счёт дополнительной “брони” в виде корпуса с огромной долей вероятности приедет в целости и будет не повреждена. Жаль, только , что не осталось фото с распаковки, но на сайте продавца можете самостоятельно посмотреть как  продавец запаковывает платы.

Рассмотрим общее качество пайки, компоновки платы, отмыта ли плата от флюса и т.п. И первое, на что я сразу обратил внимание и после чего я почувствовал острый приступ недоумения - каким образом будет получен доступ до PLS-разъемов на плате, как переключать DIP-переключатель и как воткнуть LCD-дисплей?! WTF?!

Видимо придётся раскручивать корпус и дорабатывать его фрезой под себя. Ещё стоит отметить, что плата с другой стороны несколько в жирных подтёках от недоотмытого флюса - тоже оставили для меня, брать Flux-Off и идти отмывать, без вариантов. 

Не знаю, насколько хорошо фото передаёт общее положение дел, но я попробовал, любуйтесь:

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

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

Быстренько осмотримся по отладке

Давайте быстренько ознакомимся, что тут нам предлагает производитель: 

Сразу видно копипасту картинки из товара в товар - опечатка с наименованием используемого процессора, поэтому лучше своими глазами порассматриваем, что имеется на плате. 

Что тут у нас там в самом центре? А тут красуется Altera Cyclone IV EP4CE10E22C8N:

Радует, что установлен чип относительно легко паябельный (в отличие от тех же BGA-корпусов), что позволит новичку в случае чего легко перебросить сожженный чип на новый. В обвязке доменов питания ПЛИС насыпано немного керамики. Перекрестимся и будем надеяться, что этого хватит для нормальной стабильной работы: 

Плюсом, по фото выше видно, что вся нумерация портов ножек ПЛИС подписана шелкографией и не придётся ковыряться со схематиком в поиске нужных пинов. Зачет! 

Что касается питания - тут прям всё как по стандарту, линейные преобразователи AMS1117 на  3.3V, 2.5V, 1.2V. Радует, что производители этой платы ушли от использования вырвиглазных синих светодиодов и поставили приятные оранжевые: 

Но так осталось не понятно, зачем для питания платы от USB использовали монструозный квадратный USB-B разъем, когда можно было поставить miniUSB или USB type-C. Ну и конечно не могу еще не подсыпать горстку негодования по поводу настолько ужасного схематика, который составил производитель: ссылка. Ввиду его убогости - буду приводить в качестве сопровождения фрагменты фото платы, раз попался такой схематик. 

Ох уж эта загадочная китайская душа…

Что там на борту

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

В качестве центрального элемента, как уже рассказывалось выше - установлена микросхема ПЛИС Altera Cyclone IV, что в целом не плохой выбор для такой дешевой отладочной платы:

  • чип с медленным 8-м speedgrade (меньше - лучше, медленнее только 9-й), но в целом его более чем достаточно для решения большинства задач;

  • доступно 10320 логических ячеек;

  • для пользователя доступен 91 I/O пин, бОльшая часть которых разведена на PLS-гребенку с шагом 2.54мм;

  • 645 logic units;

  • 423936 бит встроенной оперативной памяти;

  • 2 блока ФАПЧ (PLL);

  • выделенный DSP;

ПЛИС тактируется от внешнего генератора частотой в 50 МГц

Для хранения bitstream-прошивки используется традиционная SPI Flash Winbond W25Q16JV с общей емкостью в 16 Мбит. Также именуемая в Quartus как EPCS16:

Светодиоды, кнопки, индикаторы

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

Для включения питания на плате, или вдруг, экстренного отключения платы - удобная кнопка включения питания, которая избавит от постоянного передергивания кабеля в разъеме, что будет особенно удобно в случае обучения. За это большое спасибо

Если продолжить речь о кнопках - доступно 5 кнопок. Кнопка RESET, для сброса ПЛИС:

Затем, доступно для пользовательских кейсов 4 пользовательских кнопки, 4 светодиода, четырёхразрядный DIP-переключатель:

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

Царь-индикатор, он же семисегментный индикатор на 4 разряда и рядом с ним разъем для подключения знакового LCD-дисплея с потенциометром для регуляции контрастности символов:

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

На плате расположен активный зуммер-пьезоизлучатель, с которым можно было бы рассмотреть разные кейсы, когда необходимо формировать ту или иную частоту. К слову, очень много связано кейсов с ним в ходе обучения: 

И в самом низу платы притаился ИК-приемник, с помощью которого можно было бы сделать декодер команд с каких-нибудь пультов или управлять ПЛИС с помощью пульта ДУ. Кажется для доп. обучения можно понапридумывать себе много всяких разных кейсов. 

Микросхемы и полезности

Теперь переходим, к самой мякотке, набору микросхем расположенных на плате. На плате расположена микросхема SDRAM HY57V641620FTP-H на 64 Mbit, которая к сожалению не рассматривается в курсе, ввиду большой сложности конечного автомата, который необходим для работы с ней.

Момент печали и боли. При просмотре трассировки - стало интересно, а ровняли ли вообще дорожки? Ну а то, что сигнальные проводники протянуты через гребенку - я вообще молчу. Интересно, оно работоспособно вообще или нет…

Думаю, надо взять memtest на Verilog, проверить.

Но не стоит огорчаться раньше времени - тут на плате затаился датчик температуры от NXP - LM75A с интерфейсом I2C, и кажется тут могут быть весьма интересные кейсы, например, написать I2C Master Controller, им взять температуру с сенсора и вывести ее на 4-х разрядный семисегментник. Любопытная микросхема ????. Со слов человека, который рекомендовал эти курсы по ПЛИС - этот сенсор достаточно активно используется по ходу выполнения разных задач:

Помимо этого на плате имеется EEPROM AT24C08 с которой тоже можно поработать после изучения интерфейса I2C, сохранять на нее какую-нибудь информацию, полезная для обучения штучка. Но идем дальше.

Над температурным сенсором находится разъем для подключения к интерфейсу RS-232 и конвертер, который подключен к ПЛИС. Правда, для взаимодействия с ним, потребуется внешний RS-232 to USB конвертер, но это один из способов организовать низкоскоростное “общение” платы с ПК. К слову, этот модуль будет активно использоваться при обучении, интересно в каком кейсе…

Помимо древнего RS-232 интерфейса чуть выше расположен не менее древний разъем PS/2. Прям таки сборище динозавров :)

Дальше, рядом с COM-портом, чуть ниже расположен разъем VGA. До сих пор не понимаю, зачем его суют во все отладки, лучше бы уж HDMI поставили:

В курсе к слову, он не рассматривается. Ну и не жалко в общем-то…

Подводя итог и немного о PCB Электроникс

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

Завершая статью, я хотел бы немного подробнее рассказать о ребятах, которые проводят курсы по ПЛИС. Компания называется PCB Электроникс, и после изучения информации о них, сложилось впечатление, что они проделали много работы чтобы подготовить такой курс, который за 3.5 месяца сможет значительно прокачать скилл по ПЛИСоводству. Кажется, что любой желающий, будь то схемотехник, инженер-тестировщик (например, как я ????) или просто энтузиаст - без проблем могли бы погрузиться в вопросы посвященные цифровой схемотехнике, получили бы системные и структурированные знания о том, как организован флоу разработки программ на HDL-языках, чего порой мне самому не хватает.

Я всё заранее для вас разузнал, поэтому расскажу о курсе, как говорится из первых уст:

  • длительность курса, как уже сказал выше - 3.5 месяца или, если верить по учебному плану - 118 академических часов, что в целом - не мало;

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

  • в сопровождении - общий чат с группой обучения, индивидуальное менторство, которое возможно благодаря тому, что группы очень небольшие;

  • бесплатно предоставляется отладочная плата для обучения;

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

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

Что касается всяких плюшек-скидок, если вдруг кому понадобится - можно получить 15% скидку по промокоду FPGA-Systems и 5% для сотрудников предприятий который связанны с электроникой. Для юридических лиц - действуют спец условия.

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

Учебный год, как полагается начинается 4 сентября. Точно знаю, что мест очень немного и их разбирают в первую очередь предприятия, надо успевать оформиться пока всё не заняли. 

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

До встречи в следующих статьях, а может быть даже и на курсах! ;) 

P.S. Чуть не забыл. Ниже я оставлю ссылки, которыми со мной поделились, когда я изучал информацию об обучающем центре, вдруг кому будет интересно:

  • Отзывы об обучении от тех, кто уже окончил курсы;

  • Примеры того, как преподаватель дает обратную связь по ходу обучения;

  • Они даже есть в Telegram

  • Ну и классика - электронная почта: info@pcbteach.ru

  • А, ну и всякое, чтобы придать официоза, лицензия на право оказания образовательных услуг;

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

Комментарии (6)


  1. KeisN13
    20.07.2023 09:54
    +3

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


    1. DmitryZlobec
      20.07.2023 09:54

      За что тебе огромное человеческое спасибо!


  1. iliasam
    20.07.2023 09:54

    Смртрю, у VGA местного, похоже, даже ЦАП нет, так что пользователю будет доступно всего 8 цветов.
    Удивляет, зачем разработчики поставили на плату разъем для древнего RS-232, уж лучше бы поставили FT232 и USB разъем.
    А еще лучше - поставить ft2232, и развести ей все выводы, чтобы ее можно было использовать для скоростной передачи данныых.


    1. megalloid Автор
      20.07.2023 09:54

      Да, я с тем же негодованием порой рассматриваю предложения по этим платам, единственное чем подкупает эта плата - 10К логических ячеек и цена. Ну и I2C девайсы на шине. Больше не могу выделить существенных каких-то плюсов...


    1. DmitryZlobec
      20.07.2023 09:54

      Вот для этого: https://github.com/fpga-logi/logi-pong-chu-examples/blob/master/pong-chu-logi-edu-examples-verilog/ch08/list_ch08_04_uart.v

      Младшая плата идет на 6К элементов для нее этого обвеса более чем.


      1. iliasam
        20.07.2023 09:54

        Так FT232 тоже UART обеспечивает, даже линии управления потоком там есть.