Как стать автором
Обновить
112.91

FPGA *

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

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

Процессор на коленке ч.3. Алгоритм быстрого деления

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


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

Новости

Цифровой фильтр без умножения

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

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

Читать далее

В русских клубах Америки можно делать не только дискотеки и выступления писателей, но и митапы по FPGA

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

В городах Америки и Канады, где живут много наших соотечественников, существуют русские клубы, в которые ходят на дискотеки и викторины, для игру в мафию и на выступления писателей. В столице Калифорнии городе Сакраменто, где живет около 80 тысяч русских и украинцев, а также есть армянский и молдавский рестораны, таким клубом является Synergy Social Club.

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

Эти технологии полезны в наше тревожное время для надежного трудоустройства в самых разных местах: от производителя ракет Lockheed Martin до производителя айфонов Apple. Вот примеры объявлений:

Читать далее

Самодельный SDR приемник на Zynq

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

В этой статье я расскажу о том, как я делал предельно дешевый КВ Web-SDR приемник на SoC Zynq.
Основа приемника - Б/У плата Antminer S9. Фактически этот проект является форком уже существующего приемника WEB-888, который, в свою очередь, является продолжением приемника KiwiSDR.

Читать далее

Насколько быстр Intel 8080? Используем чипсет на FPGA чтоб проверить

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

Я люблю вызовы - например, написать код в условиях ограниченных ресурсов: медленный процессор, странный набор инструкций, крохи памяти. У меня уже было несколько проектов такого рода - я запускал тяжелую вычислительную задачу на процессорах, которые уже разменяли пол-века: Intel 4004, Intel 4040 и Intel 8008. Очевидно, что на очереди Intel 8080!

В этой статье я опишу детали проекта по созданию системной платы с чипсетом на основе FPGA, на которой будет запущен Intel 8080A-1 на частоте выше 3Мгц. А также расскажу о том, как писать программы для этого процессора на C, и в финале покажу результаты бенчмарков - Dhrystone и CoreMark.

Читать далее

Обратная разработка GID на Opel Astra H

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

Захотел собрать CarPC в Opel Astra H. Родной монохромный экран убрать нельзя, так как он является шлюзом между разными CAN-шинами и на него выводится много полезной информации. Оставлять второй экран в авто тоже не хочу. Потому буду парсить данные с шины экрана и выводить через композитный видеовыход, используя FPGA.

Читать далее

Написание i2c контроллера для FPGA и подключение камер ov7670 и ov2640

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

Здравствуйте меня зовут Дмитрий сегодня мы продолжим исследование FPGA плат и напишем контроллер для шины i2c, а также подключим камеры ov7670 и ov2640.

Данная статья является продолжение статей Доступ к SDRAM памяти на FPGA и «множество Мандельброта» и Создание видеокарты Бена Итера на FPGA чипе. Ну а мы начинаем.

Читать далее

Создание и отладка модулей на языке Verilog (VHDL) в Matlab Simulink

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

Что если я скажу, что можно создать прошивку для ПЛИС на языке Verilog (VHDL), не написав ни одной строчки кода?

Читать далее

Переходим границу из Мексики в Калифорнию в 2025 году: инструкция для айтишника с фотографиями

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

Мне не нужно агитировать за Калифорнию с ее обилием интересных работ для программистов и электронщиков. Конечно в сети есть ужастики, как после перехода границы того или иного айтишника помещали в иммиграционную тюрьму, и по выходу из нее он жил в машине на парковке в Маунтин‑Вью, одновременно добиваясь работы в FAANG и венчурных инвестиций для своего стартапа. И это не городские легенды — я встречал таких людей в реале.

Кроме этого, в последние месяцы на иммигрантских IT‑форумах появилась информация, что все, лавочка закрыта и границу больше перейти нельзя. Это разумеется не так, и моя заметка будет проводником в осуществлении вашей Калифорнийской Мечты.

Читать далее

Старт в Vivado 2022 c FPGA-тян

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

Всем снова здравствуйте, с вами Александр и та, кто, наверное, уже не нуждается в представлении.

Сегодня разберём, как создать свой первый проект в САПР Vivado 2022.

Читать далее

Знакомство с FPGA-тян или, что такое ПЛИС

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

Привет с вами снова Александр и FPGA-тян. На самом деле хочется признаться, что эта статья задумывалась как первая, поэтому и имеет в названии слово " Знакомство". Но она никак не могла пройти модерацию (по неизвестной мне причине), однако я всё же решил выложить и этот пробный материал. Поэтому давайте мысленно представим, что она всё же вышла первой и будем отталкиваться от этого при прочтении.

Читать далее

Разработка DIY компьютера на базе FPGA

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

Желание поиграть в проектирование собственного процессора обычно приводит к покупке платы с FPGA. Но мне захотелось сделать шаг дальше и начать не с Verilog-а, а с паяльника.

Это статья о том, как я занялся разработкой электроники, не имея почти никакого опыта в этой сфере. Цель - сделать устройство с FPGA на котором можно загрузить Linux, подключить экран и клавиатуру, а потом прямо там писать и компилировать код.

Зачем это нужно? Это хобби. Практической ценности не имеет. Просто я так развлекаюсь. А сейчас у меня, к моему собственному удивлению, все задуманное получилось, и я хочу показать и похвастаться.

Читать далее

Да как отлаживать этот ваш Tcl?

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

puts "ПЛИС-культ привет, FPGA / RTL / Verification ХАБ!"

Последние несколько месяцев я плотно сижу в Vivado и Tcl и вот решил с вами поделиться своими "открытиями" в области отладки Tcl скриптов, которые вероятно не многие из вас вообще пишут или используют в своей работе.

Несмотря на свою архаичность, Tool Command Language все же остается самым востребованным языком управления средой проектирования для ПЛИС и ASIC. ЕМНИП все эти инструменты управляются через Tcl, Vivado так уж точно, поэтому было бы не плохо научиться или хотя бы посмотреть какие инструменты отладки этих самых пресловутых Tcl-сценариев вообще существуют или существуют ли они вообще, кроме православного puts

В этой заметке, я постараюсь вам показать, что advanced tcl debugging - это не миф, а вполне реальная сущность, которая была создана еще на заре двухтысячных и не то что бы эта сущность как-то изменилась за эти 20 с небольшим лет.

Открывайте ваши консольки, погнали!

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

Упрощение прототипирования и верификации RTL с помощью Python

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

Всем привет!

Хочу поделиться своим опытом использования Python на этапах прототипирования RTL-модулей и последующей верификации. Как RTL-инженер, я часто создаю модели на Python для быстрой проверки логики и алгоритмов будущего RTL. Это подход уменьшает вероятность последующих правок в логике RTL в случае если алгоритм не подходит. Однако при переходе к тестированию на SystemVerilog всегда возникала проблема с переиспользованием написанной Python модели устройства: нужно было писать обвязку на C и использовать DPI-C интерфейсы, чтобы интегрировать Python-код модели в верификационную среду. Это занимало время и было неудобно.

Недавно я открыл для себя библиотеку PyStim (Bind Python & SystemVerilog), которая кардинально упростила процесс. PyStim позволяет напрямую вызывать Python-методы и работать с Python-объектами из среды SystemVerilog без необходимости писать обвязку на C или использовать DPI-C. Это значительно снизило трудозатраты и ускорило адаптацию уже готового Python-кода в тестбенче.

Читать далее

Комбинационная логика с FPGA-тян

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

Привет! С вами снова Александр и мой бессменный ассистент FPGA-тян!

Сегодня мы разберём основы комбинационной логики, познакомимся с базовым логическими элементами и даже напишем прошивку для FPGA!

Читать далее

Тестовый стенд для испытания линейной камеры

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

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

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

Далее расскажу, как делали.

Свободные инструменты для программирования FPGA

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

Подборка свободных инструментов для программирования FPGA, включающая в себя средства поддержки языков HDL, синтезаторы, симуляторы и некоторые другие.

Читать далее

Процессор на коленке ч.2

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

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

Программирование FPGA Gowin с использованием свободных инструментов

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

Краткая инструкция, о том, как запрограммировать чип FPGA Gowin с использованием только свободных программных инструментов и комплекта Sipeed Tang Primer 20K Dock.

Читать далее

Процессор на коленке ч.1

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


Предыстория


Захотелось мне как-то перевести управление станком на ПЛИС, а для этого понадобилось ядро процессора. Поиск на opencores не особо помог, x86 лицензированный, ARM лицензированный, NIOS… ну, вы поняли. Если выдумывать свою систему команд, может получиться криво, и главное, где брать компилятор. В общем, всё было сложно, так что на время идею пришлось отложить.
С недавних пор ситуация изменилась, архитектура RISC-V пошла в массы.

Читать дальше →
1
23 ...

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