shared resource bus diagram
Existing libraries help: memory mapping is as simple as a struct. All stitched together with valid ready handshaking 'streams'. Writes done over StreamSoC's AXI-Lite like 'shared resource bus' that comes with helper FSMs
github.com/JulianKemmer...
#hardware #fpga #rtl #hls #hdl #graphics #gpu #cpu
13.02.2026 21:53 â
ð 2
ð 0
ðŽ 0
ð 0
Easy: draw_rect_t struct shared between embedded C software and PipelineC hardware. Mem mapped registers enqueue into command FIFO. Small hardware FSM reads from cmd FIFO does simple iteration to draw a rect of pixels.
github.com/JulianKemmer...
#hardware #fpga #rtl #hls #hdl #graphics #gpu #cpu
13.02.2026 21:51 â
ð 2
ð 0
ðŽ 1
ð 0
streamsoc new 2d drawing block
Is a hardware FSM that draws rectangles to a frame buffer a GPU? Well whatever you call it, it's no longer the CPU pushing pixels in the PipelineC StreamSoC design. Now it sends 'draw rectangle' commands to hardware. And how? #hardware #fpga #rtl #hls #hdl #graphics #gpu #cpu
13.02.2026 21:47 â
ð 1
ð 0
ðŽ 1
ð 0
aof banner
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/JulianKemmer...
#rtl #hls #verilog #vhdl #asic #eda
12.02.2026 17:13 â
ð 2
ð 0
ðŽ 1
ð 0
Advent of Code Day 5: Iterates over RAM holding fresh ID ranges. Autopipeline checks N IDs against M ranges each cycle. Easily does N=3,M=2 at ~235MHz, ~1.4 billion ID-in-range checks computed per sec ð
github.com/JulianKemmer...
#aoc25 #fpga #hardware #verilog #vhdl #hdl #rtl #hls #asic #eda
03.01.2026 16:09 â
ð 1
ð 0
ðŽ 0
ð 0
Advent of Code Day 7: very simple design, good intro to #pipelinec. processing all ~hundreds of elements of an entire line each cycle. ~600 million to ~5.3 billion tachyon beams splitting per second. ð
github.com/JulianKemmer...
#aoc25 #fpga #hardware #verilog #vhdl #hdl #rtl #hls #asic #eda
01.01.2026 19:56 â
ð 1
ð 0
ðŽ 0
ð 0
Advent of Code Day 4: video-like stream of 'pixel' data to a sliding 3x3 window via line buffer fifos. Auto pipeline for kernel function (counting neighbors), ~150M windows per sec. github.com/JulianKemmer...
#fpga #rtl #hdl #hls #aoc25
26.12.2025 19:36 â
ð 2
ð 0
ðŽ 0
ð 0
Advent of Code Day 9: Iterates over RAM holding points. Autopipeline computes N rectangle areas per clock cycle and finds max. Easily does N=4 at ~100MHz with few pipeline stages, ~400M rect areas computed per sec ð
github.com/JulianKemmer...
#fpga #rtl #hdl #hls #aoc25
22.12.2025 15:03 â
ð 1
ð 0
ðŽ 0
ð 0
Advent of Code Day 3 pipelined no back pressure. N ascii chars as input each cycle. finding max pair of digits pipelined arbitrarily. 8 chars of input each cycle? no problem to get FMAX of 100+MHz.
~1 Gbyte per sec of ascii could be processed ð ð
github.com/JulianKemmer... #aoc25 #fpga #hdl #hls
20.12.2025 16:40 â
ð 1
ð 0
ðŽ 0
ð 0
Advent of Code 2025 Day 2 in FPGA ðĪ
github.com/JulianKemmer...
#fpga #hardware #verilog #vhdl #hdl #rtl #hls #asic #eda
04.12.2025 03:41 â
ð 1
ð 0
ðŽ 0
ð 0
Software, FPGA Execution, a PipelineC response
"How do FPGAs execute blocking assignments in one clock cycle?"
Is the perfect question to frame common learning curve hurdles that folks need to get over when learning HDL.
www.reddit.com/r/FPGA/comme...
#fpga #hardware #verilog #vhdl #hdl #rtl #hls #asic #eda
07.08.2025 21:37 â
ð 2
ð 1
ðŽ 0
ð 0
FuryGpu
Heh not there yet ðĪŠ
Leave it to awesome folks like this guy ð www.furygpu.com
28.04.2025 15:18 â
ð 0
ð 0
ðŽ 0
ð 0
Yes that python running hardware has been all over this morning - super cool! Reminds me of some java/lisp machines from back in the day!
Also saw this Python to Digital Logic work today too - reminds me a smidge of pipelinec ðĪ repository.lincoln.ac.uk/articles/con...
28.04.2025 15:09 â
ð 0
ð 0
ðŽ 1
ð 0
Oh wow I didnt recall us speaking - but your post did remind me of that old desire for posix in hardware of some kind ðĪ Good to hear you are still around looking at cool things too!
28.04.2025 15:07 â
ð 0
ð 0
ðŽ 0
ð 0
#FPGA Congrats to Prof. Jason Cong, for Chuck Thacker Breakthrough in Computing Award, recognized for "fundamental contributions to the design and automation of field-programmable systems and customizable computing".
insidehpc.com/2025/04/jaso...
C-to-gates was a dream until Cong made it real.
09.04.2025 15:52 â
ð 10
ð 4
ðŽ 1
ð 0
Check out @dutracgi@mastodon.radio 's very cool #16APSK #FPGA Modulator written in #PipelineC #HDL !
#dsp #sdr #rf #apsk #dac #deltasigma #space #qam #radio #hardware www.linkedin.com/pulse/16-aps...
14.03.2025 15:19 â
ð 4
ð 1
ðŽ 0
ð 0
Will this (fpga+cpu+graphics) make it into a projectf tutorial somewhere? Seems like everyone wants to make their own GPU and this feels like a perfect intro ðĪ
09.03.2025 16:35 â
ð 2
ð 0
ðŽ 1
ð 0
yeah 'set the clock too high' build to evaluate fmax is something the pipelinec tool does as well. But be careful some tools, if given a large design with a goal too high they will give up early and you won't get representative fmax out.
09.03.2025 16:27 â
ð 1
ð 0
ðŽ 1
ð 0
Id say its this reasoning that the tools don't tell you fmax. Most users have a target and just want to know if they made it there or not ðĪ·
09.03.2025 16:26 â
ð 1
ð 0
ðŽ 0
ð 0
It's a C like HDL. So gets you into describing hardware without needing to learn verilog sensitivity lists and blocking non blocking etc. So just hopefully easier. And then has some fancier compiler things it can do: ex. help you pipeline for high performance designs ðĪ
05.03.2025 21:48 â
ð 0
ð 0
ðŽ 1
ð 0
Happen to know some basic C? If you are in the mood to experiment with getting right to hardware design and past the annoying Verilog/VHDL learning curve - happy to chat about PipelineC ðĪ
05.03.2025 15:44 â
ð 0
ð 0
ðŽ 1
ð 0
capture of last 4 bytes of ethernet frame shown in gtkwave
What can you do with reading arbitrary #FPGA registers out of your design over #UART? Capture time series data (last four #ethernet packet bytes), write a little #python script that launches #GTKWave, and you have a tiny homemade cross platform logic analyzer thing!
github.com/JulianKemmer...
20.02.2025 20:21 â
ð 3
ð 1
ðŽ 0
ð 0
How does the hardware work? Probes can be in any clock domain and cdc to UART clock is handled for you with small FIFOs. Host PC control program read enable pulse causes hardware to respond over UART with the sample bytes from your debug probe. All included as a pipelinec library.
20.02.2025 20:18 â
ð 0
ð 0
ðŽ 0
ð 0
struct ddef and print func code
How do you configure this? You define a type and a method for printing the data to console. The struct type is shared between software C and hardware PipelineC. Upon receiving bytes for your probe they are converted to your struct type and printed as specified.
20.02.2025 20:15 â
ð 0
ð 0
ðŽ 1
ð 0
print of mac address matching wireshark
From there the bytes of probe data are shipped over UART to a host PC. A simple C program reading UART bytes displays your data:
20.02.2025 20:14 â
ð 0
ð 0
ðŽ 1
ð 0
declaring and assigning debug probes code
#hardware debugging and wanted to see some #ethernet MAC address registers down in my pico-ice #ice40 #fpga design. Don't want manufacturer specific ILAs. Don't want to route signals to top, external #debug equipment I don't have.
Just assign to #UART debug probe wire:
github.com/JulianKemmer...
20.02.2025 20:13 â
ð 1
ð 0
ðŽ 1
ð 0
Not having #AMD #Xilinx #Vivado #Chipscope based live #hardware debug for the #picoice #Lattice #ice40 #FPGA was a little annoying
so I have revived the small pipelinec project that was sorta a build your own chipscope attempt ðĪ and will demo that on the pico ice
20.02.2025 16:56 â
ð 2
ð 0
ðŽ 0
ð 0