home.social

#verilog — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #verilog, aggregated by home.social.

fetched live
  1. I built a browser IDE that runs real open-source EDA tools. Write VHDL or SystemVerilog, hit run: GHDL/Icarus simulates it, Yosys synthesizes it, and you see the waveform and the netlist cell by cell. No install.

    Free fundamentals curriculum + engineering-flavored challenges, and a playground.

    risingedge.pro/

  2. Verilog Syntax Highlighting Extension for Visual Studio!

    Better than ever! I've released v 0.4.01 that has hover text, code outlining / collapse, more keyword colorization, performance improvements and more!

    Install: Type "Verilog" in the Extension Manager Search
    #Verilog #FPGA

  3. Verilog Syntax Highlighting Extension for Visual Studio!

    Better than ever! I've released v 0.4.01 that has hover text, code outlining / collapse, more keyword colorization, performance improvements and more!

    Install: Type "Verilog" in the Extension Manager Search
    #Verilog #FPGA

  4. There is a #Verilog to #Combinator compiler for #Factorio

    Therefore, you could technically put an #ARM #CPU into Factorio.

    So who wants to get the notoriety of being the person who boots #Linux in Factorio?

  5. There is a #Verilog to #Combinator compiler for #Factorio

    Therefore, you could technically put an #ARM #CPU into Factorio.

    So who wants to get the notoriety of being the person who boots #Linux in Factorio?

  6. Which Verilog TMDS encoding library do you recommend that I use on the Ice Pi Zero? Here is my review of the options.

    wiki.pythonlinks.info/dvi-rtl-

    #Verilog #VHDL #tMDS #IcePiZero

  7. Because of historic compatibility reasons, I sort of ended up rewriting a subset of #Microblaze-compatible core for synthesising on tight corners inside Lattice's ICE40/ECP5 #FPGA:s.

    It's in #Verilog with some #LiterateProgramming preprocessing. Userspace (and I/O+interrupt support) only. Explicit support for combining code and data bus, optionally for 8-bit memory access (as in HyperRAM), or for synthesising instruction memory as block RAM, optionally with a secondary debug interface. Explicit support for resetting the core without resetting the whole FPGA. AXI-like, Wishbone-compliant, and serial I/O support, and I/O-mappable interrupt support. The register file can be pared down. Arithmetics can be divided up into chunks of a parametrically specified size, all the way down to bit-serial if need be, and slow-but-smol microcoded multiplication and division are optionally available. Some optional extensions for fixed-point transcendental calculations were originally planned, but right now, only binary logarithms and CORDIC are ready.

    The original commercial interest in it is likely to go away in the near future. Would there be interest in a GPL release of this sort of thing?

    This is not at all the sort of context that MicroBlaze was originally designed for, even in the Xilinx world, and I'm not sure that the specific backwards compatibility reasons exist outside this particular niche (=> I would probably not be doing maintenance work on the core after release without a good $€parate r€a$on), but if you have a use case that might match something like these criteria, please let me know.

    (Obligatory LBNL: only deterministic automation was used in writing this code. GenAI has not touched any part of it.)

  8. Because of historic compatibility reasons, I sort of ended up rewriting a subset of #Microblaze-compatible core for synthesising on tight corners inside Lattice's ICE40/ECP5 #FPGA:s.

    It's in #Verilog with some #LiterateProgramming preprocessing. Userspace (and I/O+interrupt support) only. Explicit support for combining code and data bus, optionally for 8-bit memory access (as in HyperRAM), or for synthesising instruction memory as block RAM, optionally with a secondary debug interface. Explicit support for resetting the core without resetting the whole FPGA. AXI-like, Wishbone-compliant, and serial I/O support, and I/O-mappable interrupt support. The register file can be pared down. Arithmetics can be divided up into chunks of a parametrically specified size, all the way down to bit-serial if need be, and slow-but-smol microcoded multiplication and division are optionally available. Some optional extensions for fixed-point transcendental calculations were originally planned, but right now, only binary logarithms and CORDIC are ready.

    The original commercial interest in it is likely to go away in the near future. Would there be interest in a GPL release of this sort of thing?

    This is not at all the sort of context that MicroBlaze was originally designed for, even in the Xilinx world, and I'm not sure that the specific backwards compatibility reasons exist outside this particular niche (=> I would probably not be doing maintenance work on the core after release without a good $€parate r€a$on), but if you have a use case that might match something like these criteria, please let me know.

    (Obligatory LBNL: only deterministic automation was used in writing this code. GenAI has not touched any part of it.)

  9. MLIR-to-RTL simulation flow: от linalg.matmul до systolic array

    Привет! Хотел бы рассказать о своем MVP проекта hw-mlir-lab , где я использую MLIR для lowering операции умножения матриц ( matmul ) на systolic array, который я симулирую в Verilator.

    habr.com/ru/articles/1045754/

    #MLIR #verilog #verilator #rtl #asic #asic_design #compiler #hardware_acceleration #system_on_chip

  10. Создаем I2C Master Controller на Verilog. Перенос на Zynq 7000 (bare-metal)

    После успешной отладки на плате с Cyclone IV пришла пора перенести наработки на плату Zynq Mini c XC7Z020. В этой статье я опишу, каким образом можно организовать вывод нужной нам информации из PS-части Zynq на дисплей который подключен к EMIO на выводах PL. Сделаем обновленный модуль i2c_master_axi который добавляет сверху к уже разработанному ядру поддержку AXI4-Lite Slave, сделаем сборку проекта, подключим их к PS и проверим в bare-metal сценарии. После того как это будет все работать - переходить к Linux уже будет гораздо проще. Всем заинтересованным добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #zynq7000 #zynqmini #oled #ssd1306 #verilog #baremetal #tutorial #vivado #vitis

  11. 64 прямоугольника хватит всем

    «Студент-программист реализовал на FPGA полноценную игровую приставку с нуля за полтора месяца, не имея опыта цифрового проектирования». Для меня самого это звучит как фантастика или реклама очередных онлайн-курсов, но я расскажу эту историю. Реальную историю моего пути — студента четвертого курса направления «Программная инженерия». Приставка «Брус-16», о которой недавно писали в блоге

    habr.com/ru/companies/yadro/ar

    #fpga #игровая_консоль #плис #Брус16 #микроархитектура #аппаратная_реализация #cpu #gpu #verilog #tang_nano_9k

  12. РАЗРАБОТКА ПАРАМЕТРИЗИРУЕМОГО МОДУЛЯ CORDIC-АЛГОРИТМА НА SYSTEM VERILOG

    В далеком 2011 году автором была опубликована статья «Реализация CORDIC-алгоритма на ПЛИС» [1]. В той статье приводится сначала математическое описание алгоритма, его суть. Показан пример расчета поворота вектора на плоскости сначала «на бумажке» согласно алгоритму, а затем сравнение результатов с расчетом «по калькулятору». Затем, показано создание структурной схемы проекта с rtl-описанием CORDIC-алгоритма и приведены листинги каждого модуля. Помимо этого были приведены основы создания проекта в среде ModelSim. Автор считает, что эта статья оказалась полезной для новичков в области программирования ПЛИС, так как на протяжении долгого периода времени, после публикации статьи приходили письма с вопросами и уточнениями на данную тему. Даже сейчас я часто встречаю на различных форумах на тему ПЛИС ссылки на данную работу. Но! Если математическая часть алгоритма однозначно является полезной, а также основы создания и структурированного ведения проекта для новичка, то использовать данное rtl-описание в различных проектах, адаптируя модули проекта по свои нужды крайне неудобно и неуклюже. По крайней мере, автор, когда заглядывает в это свое создание в прошлом, морщится и чувствует себя неловко. Поэтому появилось желание представить тот модуль CORDICа (для генерации гармонического сигнала в сфере радиолокации и связи), который автор использует в данный момент в различных проектах. Весь алгоритм реализован в одном sv-модуле, а, значит, его намного легче переносить из проекта в проект. Также он более прост в восприятии.

    habr.com/ru/articles/1038674/

    #FPGA #ПЛИС #Verilog #SystemVerilog #CORDIC #RTL

  13. Создаем I2C Master Controller на Verilog. Burst-транзакции и дисплей SSD1306

    Продолжим совершенствование нашего I2C-контроллера и расширение спектра применимости. В этот раз сделаем возможность burst-транзакций и выведем картинку SSD1306. Для этого необходимо детально разобрать механизм функционирования OLED-дисплея SSD1306 и сделать аппаратный контроллер с burst-передачей по I2C, и в качестве примера сделать генерацию визуализацию 3D-куба и текста. Получился ОЧЕНЬ объемный материал с объяснением всех механик примененных для решения данной задачи. И вся логика - сугубо в железе, без процессора, без микрокода и чисто в ПЛИС. Всем кто интересуется кодингом под Verilog - добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #Verilog #i2c_master_controller #i2c #ssd1306 #OLEDдисплей #FPGA #Фреймбуфер #I2C_burst_writer

  14. 👾 Oh, you designed a CPU in #Verilog for a calculator? How groundbreaking! 🚀 Next, maybe try inventing the wheel in Python while you're at it. 🛞🔄 Spoiler alert: the world already solved this in the 80s. 📟💾
    github.com/gdevic/FPGA-Calcula #CPUdesign #sarcasm #techhumor #innovation #80sretro #HackerNews #ngated

  15. 👾 Oh, you designed a CPU in #Verilog for a calculator? How groundbreaking! 🚀 Next, maybe try inventing the wheel in Python while you're at it. 🛞🔄 Spoiler alert: the world already solved this in the 80s. 📟💾
    github.com/gdevic/FPGA-Calcula #CPUdesign #sarcasm #techhumor #innovation #80sretro #HackerNews #ngated

  16. Создаем I2C Master Controller на Verilog. Создаем контроллер ядра I2C

    Я продолжаю описывать создание I2C-контроллера на Verilog. В предыдущих статьях мы протестировали ядро контроллера который выполняет атомарные функции работы с шиной в т.ч. в пограничных ситуациях типа clock stretching и пр. Теперь необходимо разработать управляющий контроллер для этого ядра, чтобы выполнять необходимые нам функции, но уже на следующем уровне абстракции и стать на шаг ближе к нашей цели - к рабочему коду I2C Controller который мы будем использовать с EEPROM и OLED SSD1306, а далее все это переиспользуем в Zynq и подключим к Linux. Всем заинтересовавшимся - добро пожаловать под кат!

    habr.com/ru/companies/beget/ar

    #verilog #quartus #i2c #i2c_master_controller #testbench #alinx_ax301 #fpga

  17. [Перевод] Вайб‑кодинг для ПЛИС: как я собрал I2S FIFO‑реклокер без знания Verilog

    Вайб‑кодинг выглядит безобидно, пока речь идет о скриптах, лендингах и небольших сервисах. Но что будет, если попробовать с его помощью собрать проект для ПЛИС: с I2S, FIFO‑буфером, DSD, S/PDIF, UART, PSRAM и отладкой на реальном железе? Я проверил это на практике и почти без знания Verilog прошел путь от мигающего светодиода до рабочего FIFO‑реклокера для цифрового аудио. Получилась история о том, где ИИ действительно помогает инженеру, где уверенно ведет в тупик и почему в какой‑то момент все равно приходится доставать логический анализатор. Читать кейс

    habr.com/ru/companies/otus/art

    #ПЛИС #FPGA #Verilog #вайбкодинг #ИИ #I2S #FIFO #реклокинг #цифровое_аудио #отладка

  18. Перепрыгивание с языка на язык как тактика прохождения интервью

    В 2010 году я участвовал в интервьировании на позицию по моделированию и верификации процессорных ядер. Один из кандидатов был благообразный седой американец, который до этого работал в IBM. Я задал вопрос про язык описания и верификации аппаратуры SystemVerilog. На это кандидат сказал, что он еще не освоил SystemVerilog, вписал его в резюме на будущее, но вообще использовал Verilog-95 и немного Verilog-2001. “Нет проблем”, - сказал я и задал вопрос по Verilog-95: “приведите примеры гонок (race conditions) при испрользовании верилога”. На это кандидат сказал, что вообще его опыт был больше связан с VHDL. “Блин, как он выкрутился” - подумал я, ведь в VHDL нет гонок как в верилоге из-за дизайна языка.

    habr.com/ru/articles/1033360/

    #SystemVerilog #verilog #Ada #VHDL #Jovial #Coral66 #IBM #Стенфорд #вопросы_на_собеседовании #внешний_вид

  19. Создаем I2C Master Controller на Verilog. Тестируем ядро

    По результатам написания прошлой статьи у нас получился объемный модуль для реализации функций низкоуровневого управления шиной I2C, который формирует управление линиями SCL/SDA, поддерживает мониторинг шины, ведет передачу и прием данных. В этой статье я предлагаю организовать полноценное вдумчивое тестирование всего что получилось. Всем заинтересованным - добро пожаловать под кат! 🙂

    habr.com/ru/companies/beget/ar

    #verilog #verilator #iverilog #gtkwave #i2c_master_controller #testbench #icarus_verilog

  20. Создаем I2C Master Controller на Verilog. Переходим на новый уровень

    Наконец-то нашлось вдохновение и время вернуться к старой статье, в которой я изобретал I2C Master Controller, но так и не довел задачу до логического конца. Спустя почти три года много воды утекло, появилось множество возможностей и ряд компетенций и я хотел бы реанимировать решение этой задачи и продолжить рассказ. Перечитав старый материал, я сформулировал обновленную группу задач: переделать I2C Master Controller, снабдив его функциями, которых не было в первой версии, типа clock stretching и burst-режима при этом сопроводив это детальным описанием процесса реализации и объяснением почему были предприняты те или иные действия. После все это воплотить сначала в симуляции, а потом и на реальном железе, с использованием EEPROM и OLED-дисплея SSD1306. Вобщем, всем неравнодушным к теме цифровой схемотехники, ПЛИС и шине I2C - добро пожаловать под кат! :)

    habr.com/ru/companies/beget/ar

    #I2C #i2c_master_controller #verilog #howto #tutorial #quartus

  21. Как ускорить верификацию: советы для инженеров и менеджеров аппаратной разработки

    Привет, Хабр! Меня зовут Алина, я руковожу группой модульной верификации в YADRO. Свой путь в отрасли я начинала со схемотехники и разработки RTL под FPGA. На Хабре даже есть моя статья про использование опций синтеза в Vivado, написанная еще до того, как различные стратегии на основе AI стали нормой. В черновиках лежит вторая часть той статьи, где я делаю вид, что понимаю математику, которая лежит в основе синтеза цифровой схемы из RTL :) Однако тот текст так и остался черновиком, а я ушла в верификацию и работаю в ней уже больше шести лет. Скорость верификации IP-компонентов зависит не только от верификаторов. Чтобы ее увеличить, ряд полезных практик в свою работу могут внедрить и соседние команды — управления проектами, RTL-дизайна и архитектуры. Далее в статье я такими практиками поделюсь.

    habr.com/ru/companies/yadro/ar

    #rtl #asic #asic_design #fpga #verification #verilog #systemverilog

  22. I can finally talk about what I did during the last year! In collaboration with @cfbolz we developed a Verilog simulator called verijit based on meta-tracing just in time compilers. The results are pretty crazy: verijit is up to 100x faster than verilator for simulating processors.

    You can follow us on Mastodon @verijit

    We have a neat mandelbrot demo below:

    youtube.com/watch?v=PXgUsEjvAOY

    #fpga #verilog

  23. I can finally talk about what I did during the last year! In collaboration with @cfbolz we developed a Verilog simulator called verijit based on meta-tracing just in time compilers. The results are pretty crazy: verijit is up to 100x faster than verilator for simulating processors.

    You can follow us on Mastodon @verijit

    We have a neat mandelbrot demo below:

    youtube.com/watch?v=PXgUsEjvAOY

    #fpga #verilog

  24. Мост для ко-симуляции в Icarus Verilog и NGSpice

    Автор: Cyberflex (по мотивам реальной разработки бриджа для Ко-симуляции " MixFighter" ) Как мы сделали мост между Icarus Verilog и NGSpice: две разных реализации архитектуры.

    habr.com/ru/articles/1023270/

    #IcarusVerilog #SPICE #NGSPIice #Cosimulation #Mixed_simulation #asic #verilog #netlist

  25. Adding an enable signal to 🏝️ Isle.Computer drawing engine was more of a pain than I expected, but we're now ready to share vram access with the CPU. On the plus side, this also allows you to slow the action down so you can see the drawing happen. #FPGA #verilog

  26. Fun in the frequency domain 🤓 Camera pointed at it's own display also showing audio FFT for cool glitchy visualizer effect. Video processing all done in PipelineC hardware. And how?

    github.com/JulianKemmerer/Pipe

    #hardware #fpga #dsp #rtl #hdl #hls #verilog #vhdl #pipelinec

  27. Then something for the #Verilog and #Factorio crowd to bond over: a tool for taking a Verilog chip design and putting into the game... as a functional factory.

    Demos of its capabilities go all the way up to a 32-bit #RISCV CPU...

    hackster.io/news/ben-c-s-cleve

    #Technology #News #Hackster

  28. Making it match the sim.

    Clock shows one clock between last data transition and rising edge of we_n, scope shows two.

    Getting closer!

    #protonpack #FPGA #Alchitry #Verilator #verilog

  29. PipelineC holds the throughput lead on Latchup.app. For now! How does your design stack up against a pipelining tool? Far too time consuming and fun of a site 🤓 Look forward to seeing competing solutions.

    github.com/JulianKemmerer/Pipe

    #fpga #asic #rtl #hdl #verilog #vhdl #hls #eda

  30. Start rtl counter with a timer that is initialized 10 seconds from a 32bit wrap point so that the software handling of wrap-around is well exercised during development.

    #rtl #fpga #verilog #vhdl #xilinx #alchitry #eureka #protonpack #software #softwaredevelopment #hardware #embedded #fensterFreitag

  31. 3/5 All demos feature innovative approaches for graphics and music, with original design decisions. Also there is no 'small demo' here. Many entries are first time #Verilog design and certainly first time in #ASIC! Even the simplest display or music is already a great achievement.

    All demos thx to @bitluni
    youtube.com/watch?v=A9BhSaqL7jg

  32. Check out PipelineC #HDL Advent of FPGA #hardware solutions: high perf, deeply pipelined, multiple #FPGA platforms, 10's Gbit per sec throughput, easily scales: variable latency off chip mem, faster off chip IO and more resources.

    github.com/JulianKemmerer/Pipe

    #rtl #hls #verilog #vhdl #asic #eda