FPGA

Эволюция ASIC и FPGA: сорок лет развития

Внутри каждого современного телефона несколько микросхем ASIС. Ими наполнены автомобили, стойки в центрах обработки данных, датчики «умного дома», и вообще все электронные устройства. Без чипов ASIC был бы невозможен быстрый интернет, трехмерные игры и ускорители машинного обучения.  Микросхемы ASIC, их…
Читать дальше

Превращаем FX3-устройство в анализатор шины USB 2.0

Обычно для своих статей я выбираю или учебную тему, или какую-то проблему, а дальше – если тему, то раскрываю её, а если проблему, то соответственно, решаю. Но в рамках цикла про работу с FX3, все темы, какие хотел, я раскрыл.…
Читать дальше

Линейку FPGA Efinix Titanium пополнили модели, содержащие до 1 млн логических элементов

FPGA
Компания Efinix на этой неделе объявила о расширении линейки программируемых пользователем вентильных матриц (FPGA) Titanium. Теперь в ней есть модели, содержащие до 1 млн логических элементов. По словам Efinix, расширение «раскрывает истинный потенциал семейства Titanium, делая высокопроизводительные и емкие FPGA…
Читать дальше

Прикоснемся к магии или как я вступил в ряды MISTического общества

Ниже предложен рецепт приготовления деликатеса, позволяющего Вам попробывать различные 8 и 16-битные приставки и компьютеры. Основное же блюдо для меня miniMIG — эмулятор Амига с графикой OCS/AGA/RTG и CPU до 68020 в 20 раз быстрее стандартной A600. В свои студенческие…
Читать дальше

Делаем блок SPI to AVALON_MM для USB-устройства на базе FX3

В предыдущей статье мы научились подавать Vendor команды в устройство USB3.0 на базе контроллера FX3 и реализовали программную шину SPI. Сегодня мы продолжим начатое и сделаем компонент SPI to Avalon_MM. Может возникнуть вопрос: мы же уже умеем работать с шиной…
Читать дальше

Добавляем поддержку Vendor-команд к USB3.0 устройству на базе FX3

В предыдущих статьях мы сделали достаточно интересную железку, состоящую из контроллера FX3 и ПЛИС Cyclone IV. Мы научились гонять через шину USB 3.0 потоки данных с достаточно высокой скоростью (я доказал, что поток 120 МБ/с из ULPI будет проходить через…
Читать дальше

Боремся с таймаутами при использовании USB 3.0 через контроллер FX3, возникающими при определенных условиях

Итак, в блоке из предыдущих трёх статей, мы рассмотрели, как можно изменить идеологию, принятую в первой версии комплекса Redd, заменив двухпроходную прокачку потоковых данных (сначала в буферное динамическое ОЗУ, а уже затем – в PC через интерфейс USB 2.0) на…
Читать дальше

Учимся работать с USB-устройством и испытываем систему, сделанную на базе контроллера FX3

В двух предыдущих статьях мы сделали USB 3.0 систему на базе контроллера FX3. Пришла пора научиться работать с нею из своих программ для PC. Ну, и попутно понять, насколько получившаяся система пригодна для практического применения. Действительно ли ширины канала хватает…
Читать дальше

Дорабатываем прошивку USB 3.0, используя анализатор SignalTap, встроенный в среду разработки Quartus

В прошлой статье мы сделали черновые прошивки для контроллера FX3 и ПЛИС, чтобы начать работу с шиной USB 3.0. Статья так разрослась, что проверку работоспособности системы мы отложили на потом. Сегодня мы проведём эту проверку (а как выяснится по ходу…
Читать дальше

Начинаем опыты с интерфейсом USB 3.0 через контроллер семейства FX3 фирмы Cypress

В целом, основной цикл статей про работу с комплексом Redd можно считать завершённым. Мы познакомились с методиками доступа к основным компонентам комплекса, научились писать и отлаживать на нём программы для центрального процессора, при этом локально используя хоть Linux, хоть Windows.…
Читать дальше