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.)

Xilinx AXI DMA v7.1 (Simple Mode)

Я заметил, что в сообществе FPGA многие задают вопросы, которые можно решить с помощью DMA. Сделал поиск по Хабру в поисках чистых статей о том, как запустить DMA и не нашел таких. Поэтому решил в этой статье собрать свои знания в кучу и показать, как пользуюсь DMA . Это будут чистые примеры, без лишней информации, также будут сравнительные тесты разного характера.

https://habr.com/ru/articles/974008/

#FPGA #MicroBlaze #Vivado #DMA

Xilinx AXI DMA v7.1 (Simple Mode)

Я заметил, что в сообществе FPGA многие задают вопросы, которые можно решить с помощью DMA. Сделал поиск по Хабру в поисках чистых статей о том, как запустить DMA  и не нашел таких. Поэтому решил...

Хабр

Having an opcode that reads "src" and another one that reads "swi" but actually stores something to memory ...

#microblaze instruction set is sure surprising when approached from the ARM.

Because I hate writing these silly little system controllers over and over and over again. I tire of them; I'd like to just write one and then re-use it. Maybe improve it over time.

Hopefully people will point out where the code is bad and I can make improvements. I'll write a silly little GUI, maybe talk about data framing, add checksums... why not.

#microblaze #fpga #cprogramming

🌘 在MicroBlaze上嵌入式Linux - Hackster.io
➤ 如何在小型FPGA上使用MicroBlaze創建和利用嵌入式Linux
https://www.hackster.io/adam-taylor/embedded-linux-on-microblaze-1a7573
本文介紹如何在小型FPGA上使用MicroBlaze創建和利用嵌入式Linux,以及如何與SPI DAC通信。
+ 很有用的指南,非常感謝!
+ 很清晰的介紹,對於初學者來說非常有幫助。
#嵌入式Linux #MicroBlaze #FPGA
Embedded Linux on MicroBlaze

How to create and leverage embedded Linux in small FPGAs using MicroBlaze By Adam Taylor.

Hackster.io
what's @[email protected] #Microblaze ip license like? Can i just ship it in a commercial project willy-nilly?
what's @[email protected] #Microblaze ip license like? Can i just ship it in a commercial project willy-nilly?

#MicroBlaze
> MicroBlaze is held in reset

resetピンをW13からL16へ変更で動いた
以前はL16で同じ症状が出ていたような

#microblaze

> MicroBlaze is held in reset

これではないか