Обновить
36.02

FPGA *

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

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

Митап FPGA-Systems: RnD-цикл современных SoC, физическая имплементация для FPGA и ASIC, обзор систем прототипирования

Время на прочтение3 мин
Охват и читатели1.2K

26 октября в 11:00 стартует первая осенняя встреча сообщества FPGA-Systems, организованная совместно с YADRO. Инженеры поделятся опытом и расскажут про разработку ASIC, физический дизайн, новый чип AG32 от AG micro и многое другое. Митап интересен не только программой, но и открытой демозоной с наработками инженеров — приходите лично, чтобы посмотреть на FPGA во плоти.

Регистрируйтесь, чтобы попасть на митап в Питере или получить ссылку на трансляцию в VK, YouTube или Rutube, где можно будет задать вопросы спикерам.

Изучить программу

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

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

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

Читать далее

Материалы для разработчиков систем на кристалле: функциональная верификация, итеративная сборка, свой ПЛИС-кластер

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

Привет, Хабр! Принесли материалы с недавнего митапа для FPGA/ASIC/RTL-инженеров — добавляйте в закладки, чтобы посмотреть в свободное время. В докладах вас ждут:

Шаблоны документов, которые нужны при функциональной верификации, и шаблон проекта для организации итеративной сборки.

Обзор плюсов и минусов существующих систем для автоматизации тестирования на FPGA-стендах.

Способ оценки производительности коммерческого ПЛИС-кластера и собственного решения.

Читать далее

Обзор FPGA платы MCY112

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


Что-то давно на Хабре не было статей про FPGA и я решил немножко восполнить этот пробел. Расскажу про нашу новую плату на ПЛИС Cyclone I. Да-да, вы правильно прочитали. На плате стоит первый циклон компании Альтера. Микросхеме больше десяти лет, но еще поработает. Причины использования этого чипа думаю всем понятны: санкции и плюс недавно случившийся мировой кризис полупроводников, который еще не вполне закончился.

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

FPGA Weekly News #005

Время на прочтение15 мин
Охват и читатели2.1K

Ребята из FPGA комунити каждый день делают небольшую подборку новостей из мира FPGA и делятся ею с читателями хаба FPGA. Внимание: возможны повторы!




Читать дальше →

FPGA: конечные автоматы с переключаемым контекстом

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

В статье речь пойдёт о ПЛИС производства Xilinx, в частности Spartan-3 и Spartan-6, на которых эта идея была опробована. Применять её можно и в других семействах.

Очень кратко суть идеи: триггер (FF, flip-flop), который может менять своё состояние по фронту тактового сигнала, можно заменить на синхронное ОЗУ (distributed RAM), которое тоже может менять состояние одной своей ячейки по фронту тактового сигнала.

Читать далее

FPGA Weekly News #002

Время на прочтение5 мин
Охват и читатели2.6K

Ребята из FPGA комунити каждый день делают небольшую подборку новостей из мира FPGA и решили поделиться ею с читателями хаба FPGA. На этой неделе ~90 ссылок. Внимание: возможны повторы!

Читать далее

Создаём простейший проект для ПЛИС Lattice в среде Litex

Время на прочтение16 мин
Охват и читатели9.5K

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

Один из методов обхода проблемы скорости разработки – использование готовой инфраструктуры для проектов. Я делал цикл статей про комплекс Redd, где продвигал использование готовой шинной инфраструктуры в среде разработки Quartus. Сначала это была честная процессорная система, потом – процессор мы изъяли, а шины – оставили.

Затем я делал пару циклов, где активно использовал данный подход. Мне приходилось дописывать только проблемно-ориентированные модули, остальное — среда разработки создавала за меня.

Есть ли что-то подобное для Lattice в частности и сцепки Yosys/NextPNR в целом? Вы не поверите! Решение не просто есть, но оно ещё и настолько кроссплатформенное, что подойдёт и для Yosys/NextPNR, и для Quartus, и для Vivado! И называется оно Litex. Итак, давайте попробуем поэкспериментировать с ним для подхода, который я уже давно продвигаю: «делаем штатную основу, а на неё нанизываем свои целевые блоки».

Читать далее

Как я проходил интервью на проектировщика FPGA для космических кораблей Blue Origin

Время на прочтение6 мин
Охват и читатели15K

Однажды я решил ответить на сообщения в LinkedIn от рекрутерши безосовской компании Blue Origin, которая занимается разработкой и запуском космических аппаратов. Затем я прошел два раунда интервью: скрининг и 6-часовой марафон с дюжиной инженеров и менеджеров. Я не могу рассказать вопросы или описать диалоги с интервьирующими, потому что я подписал бумагу что не буду этого делать, но покажу пару вещей, о которых зашла речь еще до подписания бумаги, а также дам совет тем, кто хочет это повторить (совет кстати может быть применим не только при устройстве к Безосу, но и к Маску или Рогозину).

Одновременно с Blue Origin я интервьировался в другую компанию, интервью в которую по времени было такое же - час скрининга с инжиниринг-менеджером и шесть часов детальное интервью - но содержание было соовсем другое. Вообще обычно в электронных компаниях такое интервью - это просто марафон задачек на микроархитектуру (всякие извращенные FIFO, арбитры, кэши, кредитные счетчики), каверзные вопросы про тайминг (доходит до time stealing/time borrowing), пересечение тактовых доменов, дюжина способов оптимизации динамического энергопотребления при проектирования на уровне регистровых передач итд.

Но в компании Безоса все было по другому. Сначала нужно было написать эссе на тему "Что я думаю о космических кораблях бороздящих просторы Вселенной". Я написал следующее:

Читать далее

Simics: кто не RISC-ует, тот не выигрывает

Время на прочтение10 мин
Охват и читатели3.7K

Добро пожаловать на очередной шабаш любителей испортить себе жизнь странным хобби! Репортаж с предыдущей вечеринки вы можете найти по ссылке. На ней мы практически «с нуля» создали модель начального уровня встраиваемого контроллера на базе RISC-процессора. Сегодня мы с вами будем добавлять ром ROM и попробуем обзавестись сравнительно несложной защитой памяти. И правда, что за встраиваемая система без ПЗУ? Прежде чем мы это сделаем, неплохо бы набросать некоторые детали конечной архитектуры нашей системы. Почему сейчас? Потому что ROM нужно будет разместить по каким-то адресам, как-то нужно будет управлять логикой защиты памяти, оставить что-нибудь «на вырост» и при этом где-то должно быть ОЗУ. Впрочем, описание будет небольшим ;-)

Поучаствовать в шабаше

Работаем с сетевыми адаптерами через Pcap-драйверы

Время на прочтение16 мин
Охват и читатели18K
Работой с сетью в наше время никого не удивишь. Насколько я знаю, работать с сокетами нынче обучают уже на втором курсе соответствующих специальностей. Так что в целом, сетевые навыки должны быть у многих программистов. Но иногда требуется не просто работать с сетью, а делать это с предопределёнными параметрами, будь то расстояние между пакетами либо какое-то нестандартное их содержимое. Понятно, что речь идёт не о повседневной жизни, а об отладке либо тестировании проектов. В этом нам поможет работа через Pcap-драйверы. Например, через драйвер Npcap, устанавливающийся вместе с программой Wireshark.



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

В общем, думаю, имеет смысл свести все сведения воедино. Кому интересно – приступаем!
Читать дальше →

Являются ли программисты айтишниками? И является ли проектирование на уровне регистровых передач программированием?

Время на прочтение6 мин
Охват и читатели23K

Перед нами девушка Лиля, с FPGA платой и учебником Харрис & Харрис в руках, на фоне самого высокого на Земле дерева Sequoia sempervirens, недалеко от Стенфорда в Silicon Valley.

Представьте, что вы приехали сюда в командировку в типичную электронную компанию. Усаживаетесь в офисе, входите со своего ноубука (в Америке их чаще называют лаптопами) в корпоративную сеть и пытаетесь что-то напечатать. А принтер не подсоединяется. Вы обращаетесь к ко-воркеру "Что делать?", а он вам говорит: "Обратитесь в IT". Вы в замешательстве "В Ай-Ти? А я что - не айтишник?"

Спокойствие. Если вы программист, вы не IT, вы software engineer и работаете в отделе Software Engineering Department. Если вы электронщик, вы тоже не IT, вы работаете в Hardware Engineering Department. IT Department - это другое, это отдельный от разработки отдел, это группа сисадминов, которые поддерживает внутри-корпоративную сетку и ведут учет выданых сотрудникам лаптопов.

Но это слишком тривиально, обсудим более интересный вопрос: вот все эти люди, которые пишут код на языке описания аппаратуры Verilog, который потом превращается в дорожки и транзисторы из silicon на фабрике - они программисты? Аппарентли, нет.

Обсудим почему

Continuous Integration для Intel FPGA (Altera)

Время на прочтение5 мин
Охват и читатели4.4K

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

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

Читать далее

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

Новостной дайджест событий из мира FPGA/ПЛИС — №009 (2021_02) + FPGA конференция

Время на прочтение5 мин
Охват и читатели2.3K

ПЛИСкульт привет,  FPGA  хаб. 


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



Читать дальше →

Новостной дайджест событий из мира FPGA/ПЛИС — №007 (2020_12)

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

Здравствуйте друзья.


Продолжаем публиковать новости из мира FPGA/ПЛИС.


В 2020 опубликовано  238 новостей, запущены FPGA стримы и проведена первая отечественная FPGA конференция. Подборка за декабрь и ссылки на все упоминания под катом.



Читать дальше →

Генерация клока в ПЛИС на примитивах

Время на прочтение5 мин
Охват и читатели7.7K
Читая даташиты на ПЛИС, можно находить таблички об их рабочих частотах…

Хотя нет, история начинается еще с 2015 года, когда я познакомился с ПЛИС. В своих первых простеньких работах я формировал нужный мне клок из счетчика и запитывал от него всю логику(естественно при условии что клок мне нужен медленнее чем подавался на ПЛИС, например UART и SPI). Естественно за такое меня гоняли, но у меня была простая отмазка «но ведь работает же!», и действительно все работало. С тех пор у меня в голове закралась мысль «а откуда вообще можно взять тактирующий сигнал?».

Вариантов источников взять клок не много. Либо взять из некого ClockWizard основанный на PLL или MMCM, либо сформировать из счетчика, либо сразу с ножки так сказать single ended. А что, если взять тактовый сигнал сформированный примитивом ПЛИС?
Читать дальше →

Аппаратные компоненты бортовой МПС унифицированного ударного истребителя F-35

Время на прочтение10 мин
Охват и читатели10K

Приоритеты современной военной авиации сосредоточены на качественной ситуационной осведомлённости, поэтому современный истребитель представляет собой летающий рой высокотехнологичных сенсоров. Сбор информации с этих сенсоров, её обработку и представление пользователю осуществляет бортовая микропроцессорная система (МПС). Вчера для её реализации использовались HPEC-гибриды (включающие в себя CPU, GPU и FPGA). Сегодня для её реализации используются однокристальные SoC-системы, которые помимо того, что все компоненты на один чипсет собирают, так ещё и внутричиповую сеть организуют (NoC), как альтернативу традиционной магистрали передачи данных. Завтра, когда SoC-системы станут ещё более зрелыми, ожидается приход полиморфной наноэлектроники, которая даст существенный прирост производительности и снизит темп своего морального устаревания.


Читать дальше →

Организация шинной инфраструктуры, соединяющей агенты системного интерфейса STI версии 1.0

Время на прочтение13 мин
Охват и читатели3.3K
В статье изложены принципы построения инфраструктуры локальной системной шины, соединяющей агенты одного сегмента стыка простого исполнителя STI версии 1.0 в объёме кристалла СБИС или ПЛИС. Рассмотрена организация дешифратора адреса, коммутаторов шин чтения данных и выборки исполнителя. Приведен пример описания шинной инфраструктуры сегмента STI на языке Verilog. Предложены варианты подключения исполнителей к сегментам шины с меньшей разрядностью данных.
Читать дальше →

Пример синтеза асинхронных SI схем в двухходовой элементной базе: C-элемент

Время на прочтение2 мин
Охват и читатели2.7K
В предыдущей публикации я представил метод синтеза асинхронных схем в минимальной элементной базе. Этот метод не требует вычисления логических функций, а представляет из себя коррекцию исходного поведения с помощью добавления дополнительных сигналов. Покажу на примере C-элемента, как это работает.

Читать дальше →

На видео — разработчица одного из блоков внутри российского микропроцессора Байкал-Т

Время на прочтение2 мин
Охват и читатели14K
Сейчас вы увидите нечто экслюзивное. Девушка справа на видео — разработчица одного из блоков внутри load-store unit микропроцессорного ядра MIPS P5600, которое является частью системы на кристалле российского микропроцессора Байкал-Т, который используется в офисном принтере «Катюша», терминале «Таволга», системы контроля станков с ЧПУ «Ресурс-30», промышленном контроллере для газовой отрасли «Акситех» КАМ 300 и других устройствах.

А два мужика на видео приезжают в Москву, Санкт-Петербург и Киев для серии семинаров, описывающий все этапы проектирования и производства микросхем: создание спецификации, описание цифровой логики на языках описания аппаратуры Verilog и VHDL на уровне регистровых передач, логический синтез, размещение и трассировка, создание фотошаблонов и производство микросхем на фабрике. Cреди организаторов: РОСНАНО, еНАНО, Imagination Technologies (компания известная как разработчик GPU внутри Apple iPhone), МИСиС, МГУ, МФТИ, МИЭТ, ИТМО, Казахский НТУ, Киевский КПИ и Киевский КНУ. Участники семинара познакомятся с реальными кейсами российских компаний, использующих инструменты САПР: ООО «ЛАБСИСТЕМС», АО «НИИМА «Прогресс», ОАО НПЦ «ЭЛВИС» и АО «БАЙКАЛ ЭЛЕКТРОНИКС». Подробности — http://edunano.ru/doc/6335690702352234538 и https://habrahabr.ru/post/311562.



Под катом — картинки, показывающие какой именно блок проектирует девушка по имени Смрити Оджа, а также (впервые!) часть слайдов Чарльза Данчека (это лектор слева), переведенные на русский язык доцентом Киевского Национального Университета имени Шевченко Александром Барабановым: