Все потоки
Поиск
Написать публикацию
Обновить
4.57

FPGA *

Программируемые логические интегральные схемы

Сначала показывать
Порог рейтинга
Уровень сложности

Запускаем лабораторные работы «Школы синтеза цифровых схем» на FPGA плате Марсоход3GW2

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров3.7K

Вероятно вы слышали о "Школе синтеза цифровых схем". Здесь учат цифровой логике и программированию ПЛИС. Каждый желающий может записаться на курсы школы и пройти обучение. Филиалы школы есть во многих городах.

Школа готовит программу лабораторных работ для изучения FPGA. Они опубликованы на Github: https://github.com/yuri-panchul/basics-graphics-music

Особенность этих лабораторных работ в том, что они адаптированы для совершенно разных FPGA плат, платы от разных производителей, используется разная ёмкость FPGA чипов, разные вендоры FPGA.

Мы сделали форк этих лаб https://github.com/marsohod4you/basics-graphics-music и адаптировали лабораторные работы на нашу плату Марсоход3GW2.

Дальше я немного расскажу о некоторых учебных работах.

Читать далее

Чем отличается изобретатель вечного двигателя от просто изобретателя?

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров4.6K

Если десятью словами: неумением ставить корректные эксперименты и экстремально гипертрофированным ощущением собственной важности. Я не буду описывать конкретный случай, с которым я столкнулся, а опишу выдуманный случай с такими же чертами.

Предположим к вам обратился товарищ, который хочет чтобы вы дали ему контакты принимающих решения менеджеров и топ-алгоритмистов в условном Микрософте. Зачем? После обмена репликами, где он сначала сопротивляется, выясняется что он изобрел новый алгоритм сортировки. В качестве доказательства он показывает программу на питоне, которая, по его словам, сортирует 10 чисел быстрее чем сортировка по умолчанию на питоне.

Читать далее

Запускаем Embedded Linux на Hard- и Soft-CPU Xilinx Zynq: проект программируемой логики

Уровень сложностиСложный
Время на прочтение20 мин
Количество просмотров9.5K

Привет, Хабр! Меня зовут Павел Панкратов, я ведущий инженер-программист в дивизионе искусственного интеллекта YADRO. Этим текстом я запускаю цикл статей — экскурс в особенности работы с SoC, комбинирующей в себе реализованные в «железе» аппаратные блоки (Hard IP’s) и программируемую логику (Soft IP’s). Основная задача, которая объединит все три статьи, — параллельный запуск встраиваемой операционной системы на двух различных по архитектуре процессорах, представленных в виде Hard и Soft IP-блоков.

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

Читать далее

Дэвид Харрис, автор «Цифровой схемотехники и архитектуры компьютера», ответил на вопросы про его следущую книгу и вообще

Время на прочтение13 мин
Количество просмотров16K

Встретился на ланч с Дэвидом Харрисом, автором (вместе с Сарой Харрис) популярного учебника «Цифровая Схемотехника и Архитектура Компьютера», который за последние 10 лет помог закрыть монументальную дыру в техническом образовании десятков вузов России и Украины. До этого учебника во многих вузах сразу после триггеров шло программирование микроконтроллеров, то есть раньше у многих студентов вообще не возникала база для проектирования современных чипов по маршруту RTL‑to‑GDSII, технологии, которая за последние 30 лет привела нас к смартфонам, быстрому интернету и ускорителям ИИ.

Учебник Дэвида активно используется на Школе Синтеза Цифровых Схем, которую поддерживают 24 российских и 1 белорусский университет. Регистрация на новый сезон Школы только что открылась.

Читать далее

System Console. Доступ к регистрам ПЛИС из Quartus

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.8K

Привет, Хабр! Меня зовут Роман Вернин, я разработчик систем на кристалле в компании Аквариус. Вместе с коллегами мы разрабатываем микросхемы ASIC. В этой статье я хотел бы поделиться опытом, как можно использовать отладочное средство ПЛИС от фирмы Intel для тестирования, настройки или исследования устройств и стендовых систем.

Читать далее

Подключаем монохромный LCD дисплей 12864 на контроллере ST7920 по SPI интерфейсу к ZYNQ-7010. Практическое руководство

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров3.1K

О платформе

Опишу, как «поднять» SPI в Линуксе (Убунту), подключить экранчик 12 864 с контроллером ST7920 (бывают и другие варианты контроллеров) к ZYNQ-7010 и отобразить на нём текст, линию и прямоугольник, используя Питон.

Читать далее

Отладочная плата с жирной ПЛИС за 500р или что делать со старым антмайнером — как я делаю собственную платформу

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров22K

С незапамятных времён, когда ещё существовали браузеры под ДОС, я взял себе ник Astra.

Поэтому и назвал проект превращения запчасти от майнера с мусорки в годную "отладку", с которым вожусь несколько месяцев, --Аstra_S9_SoC(+FPGA)-- или "платформа Astra9" Собственно, сама плата уже давно запроектирована и наштампована конторой Битмаин невероятно большим тиражом- порядка нескольких сотен тысяч (а то и миллиона) экземпляров. Сотни тысяч этих плат УЖЕ находятся у нас в стране, их не надо тащить с Али. Плата предназначена чисто для управления майнингом на хешплатах и не имеет никакой либо документации. Однако, "сердцем" платы является SoC+FPGA микросхема американской корпорации Xilinx -- ZYNQ 7010 xc7z010-clg400, что позволяет использовать её как FPGA девборд и как одноплатник

Я взял на себя труд разработать рабочую документацию на эту плату. https://dzen.ru/a/ZtTuMNBQ3gFhmskj

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

0. Никакой возни, раздобыл плату, микро-СД-флешку - и через полчаса всё заработало https://dzen.ru/a/ZtumRpI4dV3u1R7v

1. Привет, народ или Как помигать светодиодом

2. Запустить Убунту

Читать далее

Использование шифрования для защиты битового потока Xilinx 7-й серии

Уровень сложностиПростой
Время на прочтение7 мин
Количество просмотров2.7K

Когда возникла необходимость защитить устройство от нежелательного использования, оказалось, что на эту тему мало информации. В конце концов, процесс перехода по множеству ссылок, которые выдал поисковик, вывел на XAPP1239UG470 и XAPP1084. Перед прочтением этой статьи лучше с ними ознакомится, так будет понятнее о чём идёт речь. Ниже будут пошагово описаны процессы создания зашифрованного bitstream и конфигурации ПЛИС на отладочной плате ARTY A7 и XC7K325T KINTEX-7 на кастомной плате для программирования этим зашифрованным bitstream.

Читать далее

Zynq 7000. Загрузка Embedded Linux на SoC через JTAG с помощью XSCT

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров7K

Учитывая, что я очень давно занимаюсь отладкой и запуском самых разнообразных проектов связанных с Zynq 7000 — со временем количество итераций перезапуска при проведении отладки увеличивалось пропорционально сложности проекта. Когда я только начинал осваивать разработку под Zynq, то каждый раз закидывал новый образ на microSD карту. Это было очень медленным процессом и требовало от меня постоянно подключать/отключать карту. После этого я освоил сетевую загрузку через Ethernet и TFTP, заменяя файлы по сети и проверяя результат после перезагрузки.

Впоследствии, изучив вопрос связанный с типами загрузки, я обнаружил, что есть альтернативный способ загрузки платы через интерфейс JTAG, который впрочем может оказаться единственным доступным, если на плате нет microSD и Ethernet.  

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

Читать далее

Стоит ли делать продолжение банкета c обсуждением работ в электронной промышленности в LA?

Время на прочтение2 мин
Количество просмотров2.5K

В прошлое воскресенье в хакерском клубе в Маунтин-Вью прошла встреча русских и украинцев живущих в северной Калифорнии (1, 2). На встрече особенный интерес вызвало обсуждение работ по проектированию микросхем: проектирование на уровне регистровых передач на языке описания аппаратуры Verilog, верификация/тестирование, прототипирование на FPGA. Далее при обсуждении встречи на фейсбуке возник вопрос "вы не планируете провести такую же тусовку в южной Калифорнии?" Я подумал "почему бы и нет", благо я все равно буду в LA в конце месяца, так как мой младший сын перевелся из CalPoly в UCLA и я еду с ним на ориентацию.

Я примерно набросал программу с учетом встреч в Маунтин-Вью и предыдущего опыта семинаров в странах бывшего СССР:

Читать далее

Пайка плавно перешла в Верилог и обсуждение работ в электронной промышленности

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров6.4K

В воскресенье состоялась встреча в хакерском клубе Hacker Dojo в Silicon Valley. Встреча была анонсирована в украинской фейсбук-группе U4U Uniting for Ukraine USA и русскоязычной группе Russian Speaking US QA Network. Заявленная тема была "Учимся паять", но так как участники спрашивали "и какое это имеет отношение к трудоустройству", то под конец я показал:

1. Как компроненты, к которым мы паяли хедеры (микрофоны и аудио декодеры) - применяются в упражнениях c FPGA платами.

2. К каким типам работ ведут упражнения на FPGA платах: проектировщик логики блоков микросхем (RTL Design Engineer), тестировщик/верификатор (Design Verification Engineer) и инженер для работы с клиентами (Application Engineer).

Читать далее

Тестирование целочисленного сумматора с интерфейсами AXI-Stream на SystemVerilog

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров2.8K

Сменив недавно работу, перейдя с языка VHDL на язык SystemVerilog и оказавшись в команде, где есть отдельная группа верификаторов, я осознал, что сильно отстал в верификации. На VHDL ранее мной писались лишь простые тесты разработчика, которые показывали, что блок выполняет требуемую функцию и ничего более. Каждый тест писался с нуля и не было повторного использования кода. Решив исправить эту проблему, я погрузился в чтение SystemVerilog for Verification A Guide to Learning the Testbench Language Features за авторством Chris Spear, Greg Tumbush. Прочитав книгу, понял, что нужно написать какой-то тестовый проект, дабы закрепить полученную информацию. Вспомнил, что видел на хабре цикл статей по верификации от @pcbteach, написанный на verilog, и решил написать тест для сумматора с интерфейсами AXI-Stream на SystemVerilog.

Читать далее

Красавица из Питера приехала в Silicon Valley и научилась паять — и вы можете это тоже

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров13K

Мария закончила Санкт-Петербургский государственный университет аэрокосмического приборостроения, после чего приехала в Силиконовую Долину, где сейчас работает программисткой встроенных систем в крупной электронной компании. И представляете - Мария до прошлого воскресенья не умела паять! Она зашла в клуб хакеров Hacker Dojo, где я как-раз заканчивал Verilog Meetup - и пока я собирал FPGA платы, она забрела в мастерскую в соседней комнате, где один из местных крутых пайщиков научил ее припаять ее первый в жизни пин. Видели бы вы счастье в ее глазах, когда она вбежала в комнату и стала показывать всем пин! А потом напаяла целый хедер пинов, спаяла микрофон INMP441 и I2S аудио-интерфейс, с мостиками припоя, возбужденно показывая, какие красивые и аккуратные получаются контакты, не пузырьками, а правильно обволакивающими пин стекшими конусами припоя!

Короче, мы это все продолжим в следующее воскресенье. Причем по заявкам радиослушателей, подключим всех онлайн через зум, по линку  https://bit.ly/yuri-panchul-zoom .

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

Читать далее

Ближайшие события

Лучшие доклады последних FPGA-Systems: от выбора стратегии верификации до Quake 2 на RISC-V

Время на прочтение3 мин
Количество просмотров3.5K

Привет, Хабр! Пришло время поделиться самыми интересными докладами с конференций FPGA-Systems 2024.1, по мнению их участников. Под катом вас ждут топ-10 ошибок FPGA-инженеров, история о запуске Quake 2 на RISC-V, рассказ о новом высокоуровневом языке описания аппаратуры и несколько выступлений про укрощение сложностей верификации.

Читать далее

Паяльник как инструмент опрощения и для атмосферы общения

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров9.3K

Лев Толстой пахал, Петр Первый работал в токарной мастерской, а мы, труженники Силиконовой Долины, по воскресеньям паяем. Присоединяйтесь к митапу по обучению пайке, который пройдет в воскресенье 11 августа в городе Маунтин-Вью, Калифорния, в клубе хакеров Hacker Dojo. Мы начнем в 14.30, сразу после митапа по верилогу и вернем вам ощущение присутствия в Дворце Пионеров в Киеве, Волгограде или Алма-Ате, а заодно расскажем и про Verilog и FPGA, чего в Дворцах Пионеров не было.

UPD: При обсуждении поста в соцсетях спросили, нельзя ли подсоединиться удаленно. Можно по зуму, линк https://bit.ly/yuri-panchul-zoom .

Читать далее

Создание процессора с нуля для чайников

Время на прочтение18 мин
Количество просмотров55K

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

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

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

Читать далее

Моделирование IP-ядер Xilinx в ModelSim

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров2.4K

Недавно у меня возникла потребность в том, чтобы смоделировать в ModelSim дизайн, использующий IP-ядра Xilinx. У меня не сработала стандартная схема с компиляцией исходников в Vivado и я решил попробовать скомпилировать всё самостоятельно. В итоге у меня всё получилось! Более того, я написал несколько Tcl-скриптов, которые помогают немного упростить этот процесс. Все, у кого возникла такая же потребность — прошу к прочтению.

Читать далее

Мини обзор на плату расширения EBAZ4205

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров4.3K

В этой статье я хочу сделать краткий обзор на плату расширения к китайской плате с ПЛИС. Данная плата хорошо дополняет функционал основной платы EBAZ. В конце статьи будет демонстрация ролика Bad Apple.

Читать далее

Итеративная сборка FPGA-проектов

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров5K

Всем привет! Я Константин Павлов, старший инженер по разработке систем на кристалле. Работаю в группе прототипирования в компании YADRO, занимаюсь отладкой на ПЛИС исходного кода, который затем будет работать в ASIC.

В статье я расскажу об итеративной (многократной) сборке проектов ПЛИС. Зачем она нужна и какими способами — вендорскими и самописными — ее возможно реализовать. А еще на примерах из практики покажу, каких впечатляющих результатов можно добиться, используя итеративную сборку.

Читать далее

Детей недостаточно учить только питону и ардуине

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров23K

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

Но учить канонично по книжкам 1970-х не обязательно. Например, ну зачем ребенку руками собирать генератор тактового сигнала на микросхеме 555, если его теорию он все равно не поймет, а для понимания функции D-триггера понимание работы генератора нерелевантно? Генератор на 555 можно купить уже собранным на AliExpress.

Также можно заменить батарейку на 9 вольт на питание от USB на 5 вольт; поставить толерантные к 5 вольтам светодиоды, не требующие дополнительных резисторов и поставить кнопочки, не требующие подтягивающих резисторов. В результате все сведется к самой сути - логическим элементам и D-триггерам, откуда уже можно переходить на ПЛИС / FPGA. Вот сравните схему сдвигового регистра. Что вы по этому поводу думаете?

Было:

Читать далее

Вклад авторов