Pull to refresh
  • by relevance
  • by date
  • by rating

В Сколково собрались дать поиграться с эмулятором, который использовался для проектирования чипов в BMW и 5G модемах

High performanceFPGAManufacture and development of electronicsComputer hardwareElectronics for beginners


Вы водите BMW? Если да, то вам может быть занятно узнать, что BMW — партнер MobilEye, компании, которая проектирует чипы для автомобильной электроники. А для отладки процессора MIPS I6500 внутри последнего чипа MobilEye использовался логический эмулятор Mentor Veloce (произносится «Велочи»).

Что такое эмулятор логики? Это такой ящик с реконфигурируемыми микросхемами, который используется для отладки еще не спроектированных массовых микросхем. Идея похожа на плату с ПЛИС, но гораздо больше, дороже и специально для задач эмуляции. Intel, Apple — все крупные электронные компании используют эмуляторы. Сделать тестовый чип на фабрике дорого, а симулировать чип в софтвере медленно. Загрузка Линукса на готовом чипе занимает секунды, а на симулируемом в софтвере чипе неделю. На эмуляторе же минуты или часы, но не неделю. И эмулятор можно много раз рекофигурировать. Поэтому при разработке процессора простые тесты в тысячу инструкций гоняют на программном симуляторе (например Synopsys VCS или Cadence IES), но реальные программы — на эмуляторе типа Veloce.

Короче, 5 марта в Сколково решили показать, как работает эмулятор Veloce от Mentor Graphics, отделения Siemens. Зовут всех, кто интересуется процессорным IP, AI, IoT, 5G, беспилотными автомобилями. Я бы от себя добавил и сетевыми чипами, и GPU. Если кому-нибудь в России захочется отнять сердце геймеров у NVidia или AMD и спроектировать российский GPU, то без эмулятора им не обойтись — там любой программный симулятор сдохнет. Сколковцы написали на сайте, что Veloce поддерживает 15 миллиардов вентилей.

Как вообще сколковцы ввязались в этот бизнес?
Читать дальше →
Total votes 14: ↑13 and ↓1 +12
Views3.5K
Comments 6

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

CConcurrent computingMachine learningFPGA

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

Пришла в голову мысль опубликовать последние события за месяц из мира FPGA/ПЛИС. Ниже приведены несколько ссылок на новости, анонсы, вебинары, воркшопы, туториалы, видео и тд. Подобные новостные дайджесты есть, например, на хабе про php, почему бы и не сделать что-то подобное и для ПЛИС?


Подробности в конце статьи ;)
Читать дальше →
Total votes 12: ↑11 and ↓1 +10
Views2.6K
Comments 3

Бывший вице-президент Sun, MIPS и DEC прокомметировал покупку компании ARM компанией NVidia

High performanceFPGAProgramming microcontrollersConferencesArtificial Intelligence
Объединенным усилиями русских в Silicon Valley, россиян и украинцев провели первые два дня Школы синтеза цифровых схем на ChipEXPO в Сколково.

В качестве одного из докладчиков выступил один из самых известных бизнесменов в мире микропроцессоров — Арт Свифт. Арт был президентом и вице президентом компаний, которые делали практически все известные высокопроизводительные архитектуры. Он был президентом Transmeta (процессор совместимый с x86, был в ноутах от Toshiba), вице-президентом MIPS, Sun Microsystems и Digital Equipment (технический маркетинг Alpha и StrongARM). Сейчас Арт Свифт -президент Esperanto Technologies, компании, которая строит многоядерные кластеры на основе архитектуры RISC-V, оптимизированные для вычислений искуственного интеллекта.

Арт поприветствовал участников ChipEXPO и прокомметировал покупку компании ARM компанией NVidia — трансляция

Расшифровки видео (с 5:00) нет, так как оно было сделано в последнюю минуту. Нужны добровольцы для расшифровки!



Больше речей, демонстраций и практики по синтезу процессоров на FPGA платах будет сегодня в 15.00:
Читать дальше →
Total votes 29: ↑1 and ↓28 -27
Views4.6K
Comments 17

Google бесплатно изготовит чип на техпроцессе 130 нм Skywater Апрель-Июнь 2021

FPGARobotics developmentProgramming microcontrollersCircuit designManufacture and development of electronics

Если вы прочитали мою статью, то вы слышали про технологию Skywater 130nm. Google сделала анонс второй программы Multi-project-wafer, и вы можете произвести свою микросхему за бесплатно.

Читать далее
Total votes 21: ↑21 and ↓0 +21
Views4.9K
Comments 20

Схемотехника и язык программирования Verilog

Lumber room
Хочу рассказать про свои впечатления о языке программирования Verilog. Он используется для описания аппаратуры. Еще проще сказать для описания архитектуры микросхем. Я начал использовать его в своих проектах недавно. Тем не менее, мне кажется, я «почувствовал его вкус».
Читать дальше →
Total votes 22: ↑20 and ↓2 +18
Views4.4K
Comments 29

Схемотехника — еще раз про козу с автоматом

Lumber room
Совсем недавно на Хабре была замечательная статья Электроника для начинающих → Самостоятельное изучение схемотехники. Синтез автоматов на триггерах. Часть 1
На примере игры «Волк-Коза-Капуста» автор показал как выполняется «граф автомата Мура» и как может быть спроектировано цифровое устройство с его помощью.
image
Статья мне так понравилась, что и я тоже захотел сделать аппаратную реализацию этой игры.
Моя «игра» реализована на ПЛИС. Использовался язык описания аппаратуры Verilog.
Я написал даже две разных реализации игры!
Весь проект для ПЛИС, исходные тексты, демонстрационное видео и пояснения вот здесь.
Total votes 13: ↑13 and ↓0 +13
Views1.4K
Comments 11

Робот «pick and place», который делает часть самого себя

DIY
Я уже писал несколько раз на Хабре о плате Марсоход. Это такой простой «робо-контроллер» для изучения схемотехники, языков описания аппаратуры Verilog, VHDL, для создания простых электронных игрушек и устройств автоматики.

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

Самое главное — с помощью нашей платы Марсоход мы делаем разные проекты, исходные тексты и описания которых также публикуем на нашем сайте!

Хочу показать короткое видео, демонстрирующее один из последних наших проектов. Плата Марсоход управляет самодельным роботом, который производит сборку платы Марсоход. Если быть точнее — робот устанавливает на печатную плату SMD компоненты (резисторы и конденсаторы).



Так что будущее уже почти наступило — роботы могут делать сами себя :-)

Если Вас заинтересовало, как сделан этот робот, то можно посмотреть здесь.
Total votes 51: ↑39 and ↓12 +27
Views1.4K
Comments 18

Часы на ПЛИС с применением Quartus II и немного Verilog

Programming microcontrollers
Sandbox
В данном топике хочу рассказать о том, как на ПЛИС можно реализовать часы. Кому-то покажется это странным, ненужным — но надо же с чего-то начинать, поэтому, этот топик будет полезным для начинающих, которые светодиодами помигали и хотят что-нить поинтереснее.

Читать дальше →
Total votes 31: ↑29 and ↓2 +27
Views41.8K
Comments 17

Программируем SSRAM на ПЛИС

Programming microcontrollers
Sandbox
Наконец решил и я вбросить свои 5 копеек в развитие столь интересной, но узко представленной здесь темы – программирование ПЛИС и периферии. В частности в этой статье я кратко опишу работу, довольно простого, но столь важного типа памяти как SSRAM и продемонстрирую свой простерший пример её контроля выполненного с среде Quartus II с использованием языка Verilog HDL.

Читать дальше →
Total votes 14: ↑11 and ↓3 +8
Views12.5K
Comments 3

Verilog. Цифровой фильтр на RAM

Programming microcontrollers
Что делать, если нужно разместить большой цифровой фильтр на FPGA? А если плата уже разведена? Железо старое? В проекте осталось мало места? В этом топике будет рассмотрена одна из возможных реализаций цифрового КИХ фильтра на FPGA Altera Cyclone II EP2C15. По сути это продолжение вот этой темы из песочницы.
Будет рассказано, как сделать сдвиговый регистр на RAM, уменьшив при этом затраты LE, и как из этого получить цифровой фильтр.
Читать дальше →
Total votes 14: ↑13 and ↓1 +12
Views16.4K
Comments 0

Проектирование синхронных схем. Быстрый старт с Verilog HDL

Electronics for beginners
На просторах рунета можно найти достаточно много статей с введением в Verilog HDL. Все они описывают синтаксис и семантику языка, но, к сожалению, не раскрывают основных парадигм, используемых при проектировании цифровых схем. Представьте себе, что вам объясняют синтаксис языка Java, но не рассказывают ничего про объектно-ориентированное проектирование. Если вы знакомы с ООП, то такого введения будет достаточно, но если вы знаете только Си, то писать скорей всего будете “по-старому”, создавая огромные классы со сложными методами.

Примерно так происходит с программистами, изучающими цифровую схемотехнику и языки описания аппаратуры. Быстро разобравшись с несложным синтаксисом языка, они начинают описывать конструкции, безумные с точки зрения хардверного инженера. Среди моих студентов встречались люди, написавшие “сортировку пузырьком” за такт, сумасшедшие асинхронные схемы, которые работали по-разному при каждом запуске и разной погоде за окном, огромные комбинационные делители, уводившие place&route в глубокую многочасовую задумчивость.

Для тех, у которых нет времени прочитать учебник для начинающих, но есть желание или
необходимость спроектировать несколько простых схем я решил написать это небольшое введение об основной современной парадигме проектирования цифровых схем – синхронных схемах. И об одном из языков, используемых для их описания.
Статья рассчитана на новичков. Для понимания текста потребуется минимальный набор знаний – понимание работы синхронного D-триггера и вентилей.
Читать дальше →
Total votes 30: ↑28 and ↓2 +26
Views54.4K
Comments 20

Реализация на Verilog цифрового БИХ-фильтра

Website developmentProgrammingAlgorithms
Sandbox
Приветствую Хабр. Не так давно здесь уже появлялись статьи на эту тему Verilog. Цифровой фильтр на RAM и Построение цифрового фильтра с конечной импульсной характеристикой. Хочу и я внести свой скромный вклад и представить вашему вниманию реализацию цифрового БИХ-фильтра на Verilog.
Итак, прошу...
Total votes 10: ↑7 and ↓3 +4
Views16.8K
Comments 17

Машинка, управляемая из браузера

DIY


На хабре уже было несколько статей о машинках, управляемых через WiFi и с web камерой на борту.

Вот одна статья: "Радиоуправляемая Wi-Fi машинка с камерой" А вот еще одна статья по теме: "Гонка тарантасов, управляемых через Интернет"

Я хочу предложить новый(?) способ создания подобных машинок.
Читать дальше →
Total votes 56: ↑51 and ↓5 +46
Views15K
Comments 19

Делаем IBM PC на FPGA

DIYElectronics for beginners
Думаю многие, кто работал с FPGA думали — а не сделать ли свой компьютер полностью на ней, с x86 процессором, периферией и прочим? 8-и битные компьютеры часто реализовывали в FPGA, но вот целый PC…

Для успешной работы помимо x86 процессора нужен еще BIOS со всеми реализованными прерываниями (включая доступ к «диску» на SD карте), BIOS VGA-совместимой видеокарты, вся периферия, контроллер памяти, таймер и многое другое. Задача намного сложнее чем кажется на первый взгляд, но тем не менее, в проекте ZetCPU она решена.

Из ограничений — работает только 16-и битный режим на 12.5Mhz, без математического сопроцессора.
Читать дальше →
Total votes 66: ↑62 and ↓4 +58
Views43.5K
Comments 47

Исследование процессора и его функциональная симуляция

Electronics for beginners


Наверное каждый программист ASM / C / C++ когда-то задумывался о написании своей собственной операционной системы.

И наверное каждый разработчик Verilog / VHDL для ПЛИС когда нибудь задумывался о создании своего процессора.

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

Я решил поизучать ARM совместимый процессор AMBER. Его исходники есть на http://opencores.org.
Читать дальше →
Total votes 36: ↑35 and ↓1 +34
Views26.4K
Comments 18

Проект open source GPU на Kickstarter

Open source
image

На Kickstarter несколько дней назад стартовал любопытный проект. Его цель — создать открытый [тут всякий бред маркетологов] и современный графический процессор. Под современностью автор подразумевает совместимость с OpenGL и D3D. Упоминается реализация всего этого на языке Verilog, т.е. подразумевается, что готовая плата будет выполнена на основе FPGA. С одной стороны, это позволит быстро взлететь и в перспективе перейти на заказные чипы, с другой — до этого перехода соотношение цена/качество может быть не на высоте. Хотя душу владельца такой карты будет греть открытость исходников.
Читать дальше →
Total votes 69: ↑57 and ↓12 +45
Views24.1K
Comments 58

Генерация видео математической функцией на ПЛИС

FPGA
Sandbox
Здравствуйте!
В этой статье я хочу рассказать о своём опыте изучения разработки на ПЛИС и познакомить со своим проектом — генератором видео по формуле.



Цель поста


Я программист С++, профессионально занимаюсь разработкой и сопровождением системного софта. Около двух лет тому назад у меня возникло желание разнообразить свой опыт за счёт изучения схемотехники, точнее программирования ПЛИС с использованием языка Verilog. Далее я расскажу, что из этого вышло.

Цель работы


Направить вычислительную мощь ПЛИС на нужды генеративного искусства: порождать в реальном времени потоковое видео по сложной формуле в высоком разрешении, с высоким фрейм-рейтом. В качестве фронтэнда выбран IBNIZ, — язык описания формул для генерации демо, разработанный камрадом viznut в качестве виртуальной платформы для демосцены. Ранее я реализовывал на ПЛИС, на платформе "Марсоход", другую его находку.
Читать дальше →
Total votes 54: ↑52 and ↓2 +50
Views24.9K
Comments 27

Зачем язык Verilog программисту микроконтроллеров

IT systems testing
image

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

Вообще, мне кажется, что в области разработки электронных устройств существует как бы несколько мало пересекающихся миров. Например, существует разработка устройств на базе микроконтроллеров и параллельно существует разработка устройств на базе ПЛИС. Принципы работы этим микросхем принципиально отличаются и точно так же отличаются принципы и методы разработки, используемые языки программирования и отладки. Конечно, выбор элементной базы сильно зависит от поставленной задачи. Однако и так понятно, что эти миры, мир микроконтроллеров и мир ПЛИСов почти не пересекаются. Может быть на стыке технологий что-то есть?
Читать дальше →
Total votes 52: ↑50 and ↓2 +48
Views51.8K
Comments 16

Нововведения языка SystemVerilog

Electronics for beginners
Sandbox
image

В данной статье показаны некоторые нововведения языка SystemVerilog в области организации данных по сравнению с Verilog-2001 для синтезируемого подмножества языка.

История SystemVerilog довольна длина и туманна. Начавшись после принятия стандарта Verilog-95, она вылелась в Verilog-2001. Однако язык не слишком подходил для верификации, инженеры использовании языки семейства «E» — VERA, Testbuider. В современном виде SystemVerilog появился после 2005 года. Сейчас средства синтеза и моделирование такие как Quartus II, ISE, ModelSim/QuestaSim уверенно поддерживают SystemVerilog. Стандарт называется IEEE 1800-2012.

Прим. Эта статья давно написана, но не опубликована. Надеюсь будет полезна начинающим.
Читать дальше →
Total votes 21: ↑20 and ↓1 +19
Views11.6K
Comments 9

Аппаратный сортировщик чисел на verilog-е

Algorithms
Tutorial
В этой моей статье, как и в предыдущей рассматривается цифровая схемотехника с точки зрения программиста. Но в этот раз будет разобрана «более алгоритмическая» задача сортировки чисел, с разбором verilog-кода. Рассматриваемое аппаратное решение позволяет отсортировать n чисел за время 2*n. На картинке ДПВ показан вывод на монитор от тестового проекта для ПЛИС, там каждой линии соответствует один тик сортировщика, сначала n тиков случайные числа записываются в сортировщик, затем n тиков выводятся числа отсортированные.



Читать дальше →
Total votes 45: ↑44 and ↓1 +43
Views19.8K
Comments 49