USB_in_a_Nutshell_EN_RU.zip
969.2 KB
USB in a Nutshell
Второй гайд, который обычно советуют при знакомстве с USB.
Также внутри архива его русская локализация от microsin.net.
#usb #guide
Второй гайд, который обычно советуют при знакомстве с USB.
Также внутри архива его русская локализация от microsin.net.
#usb #guide
Cracking Digital VLSI Verification Interview
Ramdas Mozhikunnath & Robin Garg
Сборник из 500+ вопросов и задач по цифровому дизайну, верификации, Verilog, SystemVerilog, UVM, которые могут задать на интервью.
https://www.amazon.com/Cracking-Digital-VLSI-Verification-Interview-ebook/dp/B01CZ0Z08E
#rtl #digital_design #verification #interview #book
Ramdas Mozhikunnath & Robin Garg
Сборник из 500+ вопросов и задач по цифровому дизайну, верификации, Verilog, SystemVerilog, UVM, которые могут задать на интервью.
https://www.amazon.com/Cracking-Digital-VLSI-Verification-Interview-ebook/dp/B01CZ0Z08E
#rtl #digital_design #verification #interview #book
Hacker’s Delight (2nd ed.)
Henry S. Warren
Коллекция различных хаков и трюков связанных с оптимальной реализацией битовых операций, умножения, сложения, деления, корня и др. Все примеры даны на C. Вероятно многие вещи могут быть полезны и в цифровом дизайне - переписать с C на Verilog совсем несложно, да и HLS сейчас во все поля.
https://www.amazon.com/Hackers-Delight-2nd-Henry-Warren/dp/0321842685
Русская версия.
Алгоритмические трюки для программистов (2-е издание)
Уоррен Г.С.
#algorithm #c #book
Henry S. Warren
Коллекция различных хаков и трюков связанных с оптимальной реализацией битовых операций, умножения, сложения, деления, корня и др. Все примеры даны на C. Вероятно многие вещи могут быть полезны и в цифровом дизайне - переписать с C на Verilog совсем несложно, да и HLS сейчас во все поля.
https://www.amazon.com/Hackers-Delight-2nd-Henry-Warren/dp/0321842685
Русская версия.
Алгоритмические трюки для программистов (2-е издание)
Уоррен Г.С.
#algorithm #c #book
SVA: The Power of Assertions in SystemVerilog (2nd ed.)
Eduard Cerny, Surrendra Dudani, John Havlicek, Dmitry Korchemny
Учебник по SystemVerilog Assertions (SVA) от инженеров Intel, Synopsys и Cadence.
https://www.amazon.com/Power-Assertions-SystemVerilog-Eduard-Cerny/dp/1441965998
#sva #system_verilog #verification #book
Eduard Cerny, Surrendra Dudani, John Havlicek, Dmitry Korchemny
Учебник по SystemVerilog Assertions (SVA) от инженеров Intel, Synopsys и Cadence.
https://www.amazon.com/Power-Assertions-SystemVerilog-Eduard-Cerny/dp/1441965998
#sva #system_verilog #verification #book
Про преобразование формата цвета 666 в 888.
Самый дешёвый во всех отношениях способ сдвинуть оригинал влево и дополнить справа старшими битами оригинала. На графиках показаны дельты относительно идеального преобразования (например, табличного) при дополнении старшими разрядами, младшими, а также просто нулями или единицами.
#rgb #decoder #rtl #note
Самый дешёвый во всех отношениях способ сдвинуть оригинал влево и дополнить справа старшими битами оригинала. На графиках показаны дельты относительно идеального преобразования (например, табличного) при дополнении старшими разрядами, младшими, а также просто нулями или единицами.
#rgb #decoder #rtl #note
Логическое проектирование и верификация систем на SystemVerilog
Дональд Томас
Оригинальное название:
Logic Design and Verification Using SystemVerilog
Donald Thomas
Учебник по SystemVerilog уровнем выше чем для начинающих (https://habr.com/ru/post/465969).
К сожалению, электронную версию не найти. Но бумажная стоит того, даже не смотря на то, что сама книга склеена отвратительно и начинает разваливаться через некоторое время.
#system_veriog #rtl #verification #digital_design #book
Дональд Томас
Оригинальное название:
Logic Design and Verification Using SystemVerilog
Donald Thomas
Учебник по SystemVerilog уровнем выше чем для начинающих (https://habr.com/ru/post/465969).
К сожалению, электронную версию не найти. Но бумажная стоит того, даже не смотря на то, что сама книга склеена отвратительно и начинает разваливаться через некоторое время.
#system_veriog #rtl #verification #digital_design #book
Efficient_Processing_of_Deep_Neural_Networks.pdf
20.4 MB
Efficient Processing of Deep Neural Networks
Vivienne Sze, Yu-Hsin Chen, Tien-Ju Yang, Joel S. Emer
https://www.morganclaypool.com/doi/abs/10.2200/S01004ED1V01Y202004CAC050
С пылу с жару годнота по железным ускорителям нейронок.
Eyeriss Project (http://eyeriss.mit.edu) - дело рук этих же ребят.
#book #deep_learning #neural_network #hardware_accelerator
Vivienne Sze, Yu-Hsin Chen, Tien-Ju Yang, Joel S. Emer
https://www.morganclaypool.com/doi/abs/10.2200/S01004ED1V01Y202004CAC050
С пылу с жару годнота по железным ускорителям нейронок.
Eyeriss Project (http://eyeriss.mit.edu) - дело рук этих же ребят.
#book #deep_learning #neural_network #hardware_accelerator
A Comprehensive Introduction to Different Types of Convolutions in Deep Learning
https://towardsdatascience.com/a-comprehensive-introduction-to-different-types-of-convolutions-in-deep-learning-669281e58215
1. Convolution v.s. Cross-correlation
2. Convolution in Deep Learning (single channel version, multi-channel version)
3. 3D Convolution
4. 1 x 1 Convolution
5. Convolution Arithmetic
6. Transposed Convolution (Deconvolution, checkerboard artifacts)
7. Dilated Convolution (Atrous Convolution)
8. Separable Convolution (Spatially Separable Convolution, Depthwise Convolution)
9. Flattened Convolution
10. Grouped Convolution
11. Shuffled Grouped Convolution
12. Pointwise Grouped Convolution
#deep_learning #convolution
https://towardsdatascience.com/a-comprehensive-introduction-to-different-types-of-convolutions-in-deep-learning-669281e58215
1. Convolution v.s. Cross-correlation
2. Convolution in Deep Learning (single channel version, multi-channel version)
3. 3D Convolution
4. 1 x 1 Convolution
5. Convolution Arithmetic
6. Transposed Convolution (Deconvolution, checkerboard artifacts)
7. Dilated Convolution (Atrous Convolution)
8. Separable Convolution (Spatially Separable Convolution, Depthwise Convolution)
9. Flattened Convolution
10. Grouped Convolution
11. Shuffled Grouped Convolution
12. Pointwise Grouped Convolution
#deep_learning #convolution
Medium
A Comprehensive Introduction to Different Types of Convolutions in Deep Learning
Towards intuitive understanding of convolutions through visualizations
ZYNQ Training
Mohammadsadegh Sadri
Пока не смотрел, но говорят, что этот мужик неплохие видео по ZYNQ делает. Должно быть полезно при освоении платформы с нуля.
https://www.youtube.com/user/mamsadegh2
#fpga #xilinx #zynq #course
Mohammadsadegh Sadri
Пока не смотрел, но говорят, что этот мужик неплохие видео по ZYNQ делает. Должно быть полезно при освоении платформы с нуля.
https://www.youtube.com/user/mamsadegh2
#fpga #xilinx #zynq #course
YouTube
Mohammad S. Sadri
Through this youtube channel, I try to transfer my knowledge regarding designing embedded systems with FPGAs to other people. My main focus for this is the Xilinx ZYNQ device.
DSP Starter Pack
Мини-подборка материалов более-менее оптимальных по сложности, наглядности и практической направленности.
Без паники! Цифровая обработка сигналов
Юкио Сато
Несложно и наглядно. Перевод с японского.
Цифровая обработка сигналов. Практическое руководство для инженеров и научных работников
Смит С.
The Scientist and Engineer's Guide to Digital Signal Processing
Steven W. Smith
http://www.dspguide.com/
Обширный разбор тем на понятном английском и с примерами на BASIC. Плюс перевод на русский.
Цифровая обработка сигналов на Python
Аллен Б. Дауни
Think DSP
Allen B. Downey
https://greenteapress.com/wp/think-dsp/
Практическая направленность с подходом сверху-вниз - от программирования к математике
Курс лекций «Основы цифровой обработки сигналов»
Александр Капитанов
https://github.com/capitanov/dsp-theory
Наглядно и интерактивно за счёт Jupyter Notebook
Посты автора по dsp и fpga на хабре:
https://habr.com/ru/users/capitanov/posts/
#dsp #book #course
Мини-подборка материалов более-менее оптимальных по сложности, наглядности и практической направленности.
Без паники! Цифровая обработка сигналов
Юкио Сато
Несложно и наглядно. Перевод с японского.
Цифровая обработка сигналов. Практическое руководство для инженеров и научных работников
Смит С.
The Scientist and Engineer's Guide to Digital Signal Processing
Steven W. Smith
http://www.dspguide.com/
Обширный разбор тем на понятном английском и с примерами на BASIC. Плюс перевод на русский.
Цифровая обработка сигналов на Python
Аллен Б. Дауни
Think DSP
Allen B. Downey
https://greenteapress.com/wp/think-dsp/
Практическая направленность с подходом сверху-вниз - от программирования к математике
Курс лекций «Основы цифровой обработки сигналов»
Александр Капитанов
https://github.com/capitanov/dsp-theory
Наглядно и интерактивно за счёт Jupyter Notebook
Посты автора по dsp и fpga на хабре:
https://habr.com/ru/users/capitanov/posts/
#dsp #book #course
Наконец-то дождался появления бьютифаера для SystemVerilog!
Verible: SystemVerilog parser, style-linter, and formatter
https://github.com/google/verible
#system_veriog #formatter
Verible: SystemVerilog parser, style-linter, and formatter
https://github.com/google/verible
#system_veriog #formatter
GitHub
GitHub - chipsalliance/verible: Verible is a suite of SystemVerilog developer tools, including a parser, style-linter, formatter…
Verible is a suite of SystemVerilog developer tools, including a parser, style-linter, formatter and language server - GitHub - chipsalliance/verible: Verible is a suite of SystemVerilog developer ...
PLL в Lattice ICE40HX4K
Долго не мог понять почему не могу поставить вторую PLL.
А оказалось всё просто. У каждой PLL есть отдельный пин для ввода клока, и если даже он не используется для этого, но PLL в дизайне есть, то назначить этот пин как обычный вход нельзя. Естественно, этот самый пин использовался в проекте как вход.
И самое интересное, что нигде не сказано про то, какие клоковые пины имеют особое значение для PLL. И максимум что можно найти в документации это то, что PLL имеют оптимальное подключение к буферам в банках 0 и 2.
Подробнее можно прочитать здесь:
https://github.com/YosysHQ/icestorm/issues/273
#lattice #fpga #pll
Долго не мог понять почему не могу поставить вторую PLL.
А оказалось всё просто. У каждой PLL есть отдельный пин для ввода клока, и если даже он не используется для этого, но PLL в дизайне есть, то назначить этот пин как обычный вход нельзя. Естественно, этот самый пин использовался в проекте как вход.
И самое интересное, что нигде не сказано про то, какие клоковые пины имеют особое значение для PLL. И максимум что можно найти в документации это то, что PLL имеют оптимальное подключение к буферам в банках 0 и 2.
Подробнее можно прочитать здесь:
https://github.com/YosysHQ/icestorm/issues/273
#lattice #fpga #pll
GitHub
Not able to use both PLLs of iCE40-HX4K · Issue #273 · YosysHQ/icestorm
My goal is to create 4 different clock domains from one 12 MHz input clock: 12 MHz 40 MHz 128 MHz 64 MHz Chip is iCE40-HX4K in TQ144 package. Tried using different banks. pinout.pcf: # bank 3 clock...
BRAM и сброс в Lattice ICE40
И ещё одни неочевидные грабли с Lattice.
Блоки BRAM некоторое время недоступны после сброса (читаются нули). И нужно делать задержку сброса тактов в 40, чтобы пофиксить.
https://github.com/YosysHQ/icestorm/issues/76
http://svn.clifford.at/handicraft/2017/ice40bramdelay
#lattice #fpga #bram
И ещё одни неочевидные грабли с Lattice.
Блоки BRAM некоторое время недоступны после сброса (читаются нули). И нужно делать задержку сброса тактов в 40, чтобы пофиксить.
https://github.com/YosysHQ/icestorm/issues/76
http://svn.clifford.at/handicraft/2017/ice40bramdelay
#lattice #fpga #bram
GitHub
Block ram reads within ~36 cycles of device reset always return 0, but only on the first reset after device reconfiguration. ·…
This repros on an ICE40-HX8K breakout board using Icestorm tools built from head as of a week or so ago. The board is in "sram" mode, and I'm flashing it using "i...
Шины данных в примиве SB_RAM40_4K ICE40
И еще кое-что про память.
Yosys не всегда корректно инферрит BRAM, поэтому иногда приходится создавать инстанс SB_RAM40_4K руками. И тут есть неочевидная особенность, связанная с битами данных в разных режимах: последняя таблица вот здесь http://www.clifford.at/icestorm/ram_tile.html.
Ну и как водится, официальный документ LATTICE ICE Technology Library молчит на этот счёт.
На текущий момент по теме граблей ICE40 пока всё. Продолжаю наблюдение.
#lattice #fpga #bram #yosys
И еще кое-что про память.
Yosys не всегда корректно инферрит BRAM, поэтому иногда приходится создавать инстанс SB_RAM40_4K руками. И тут есть неочевидная особенность, связанная с битами данных в разных режимах: последняя таблица вот здесь http://www.clifford.at/icestorm/ram_tile.html.
Ну и как водится, официальный документ LATTICE ICE Technology Library молчит на этот счёт.
На текущий момент по теме граблей ICE40 пока всё. Продолжаю наблюдение.
#lattice #fpga #bram #yosys
USB-UART на максималках
https://habr.com/ru/post/530060/
https://github.com/r2axz/bluepill-serial-monster
#stm32 #usb
https://habr.com/ru/post/530060/
https://github.com/r2axz/bluepill-serial-monster
#stm32 #usb
Хабр
Полноценный трехпортовый USB-Serial адаптер на STM32 Blue Pill (STM32F103C8T6)
Некоторое время назад мне в очередной раз потребовался USB-Serial адаптер. И не просто адаптер c RX/TX, а чтобы еще присутствовали управляющие сигналы. И не один...
Awesome Lattice FPGA boards
В последнее время стал замечать, что многие вдруг стали каталогизировать свои знания в формат Awesome Lists. И как ни странно, это бывает полезным и находятся порой очень крутые списки. Вот например самый полный список Lattice отладок, что я видел.
https://github.com/kelu124/awesome-latticeFPGAs
#fpga #lattice #devboard #awesome
В последнее время стал замечать, что многие вдруг стали каталогизировать свои знания в формат Awesome Lists. И как ни странно, это бывает полезным и находятся порой очень крутые списки. Вот например самый полный список Lattice отладок, что я видел.
https://github.com/kelu124/awesome-latticeFPGAs
#fpga #lattice #devboard #awesome
GitHub
GitHub - kelu124/awesome-latticeFPGAs: :book: List of FPGA Lattice boards using open tools
:book: List of FPGA Lattice boards using open tools - kelu124/awesome-latticeFPGAs
Colorlight Lattice ECP5 boards
Так-то пару десятков баксов (а то и меньше) за 24к ячеек довольно неплохая сделка. В оригинале эти платы позиционируются как контроллеры светодиодных панелей, однако, никто не сможет запретить использовать такую плату как отладку для всякого =)
Кстати, полностью поддерживаются опенсорсным тулчейном (yosys & prjtrellis & nextpnr).
Репозиторий с информацией:
https://github.com/wuxx/Colorlight-FPGA-Projects
Colorlight i5 (из двух плат):
https://aliexpress.ru/item/1005001686186007.html
Colorlight 5A-75B:
https://aliexpress.ru/item/1005001686175194.html
#fpga #lattice #devboard
Так-то пару десятков баксов (а то и меньше) за 24к ячеек довольно неплохая сделка. В оригинале эти платы позиционируются как контроллеры светодиодных панелей, однако, никто не сможет запретить использовать такую плату как отладку для всякого =)
Кстати, полностью поддерживаются опенсорсным тулчейном (yosys & prjtrellis & nextpnr).
Репозиторий с информацией:
https://github.com/wuxx/Colorlight-FPGA-Projects
Colorlight i5 (из двух плат):
https://aliexpress.ru/item/1005001686186007.html
Colorlight 5A-75B:
https://aliexpress.ru/item/1005001686175194.html
#fpga #lattice #devboard
EBAZ4205 - отладка с Zynq почти даром
В продолжение темы бюджетных отладок.
Баян конечно, но поюзанные контроллеры от майнеров на XC7Z010CLG400 (Dual Core Cortex A9 @ 666.66MHz, Artix-7 FPGA 28k LEs) можно купить на Али/Авито за 500-1000р. Что одному хайтэк мусор, другому - крутая отладка.
Репозиторий с информацией:
https://github.com/xjtuecho/EBAZ4205
Али:
https://aliexpress.ru/item/1005001679188068.html
#fpga #xilinx #zynq #devboard
В продолжение темы бюджетных отладок.
Баян конечно, но поюзанные контроллеры от майнеров на XC7Z010CLG400 (Dual Core Cortex A9 @ 666.66MHz, Artix-7 FPGA 28k LEs) можно купить на Али/Авито за 500-1000р. Что одному хайтэк мусор, другому - крутая отладка.
Репозиторий с информацией:
https://github.com/xjtuecho/EBAZ4205
Али:
https://aliexpress.ru/item/1005001679188068.html
#fpga #xilinx #zynq #devboard