Designing an FPGA Calculator from Scratch(baltazarstudios.com) |
Designing an FPGA Calculator from Scratch(baltazarstudios.com) |
Good start for anyone interested in the guts of going from logic gates to math() primitives ( add, mult, tan, sin, etc ).
Two snippets from the lede, one from a chapter heading:
This is a scientific BCD calculator that uses binary-coded decimals, the same internal number format HP used in its scientific calculators going back to the 1970s. It represents every decimal digit as a 4-bit nibble, which means perfect decimal accuracy, no floating-point conversion errors, and an architecture that is genuinely shaped by the problem it solves.
Across ten chapters, you will follow full arc: the architectural decisions and tradeoffs, the numerical algorithms (addition, multiplication, CORDIC for trig, logarithms), the custom CPU design and its 12-bit instruction set, a hand-written two-pass assembler in Python, the microcode that runs on that CPU, a scripting layer for high-level key functions, and finally the physical board with its battery, display, and keyboard.
Chapter 6 (of 10): No general-purpose CPU has nibble-addressable memory and addressing modes designed to walk a 16-digit BCD mantissa — so this post designs one.
I like it.But I too was (edit: also still am!) interesed in fpga so I was just scrolling and I found this really really great video (I can't recommend this enough, so much so that before reading your comment that I actually submitted that video as HN submission)
The video I am talking about is this: https://www.youtube.com/watch?v=d3nuepnbmC4 (FPGAs Aren’t Processors (Unless You Want Them to Be) || FPGA Deep Dive and Use)
Also check out what this guy has been doing with old factory robot machines and using FPGA for them was a really practical use of it and they have another video about it too that you can find on their channel.
Some parts of the video especially near the end went really really out of my head but this might be one of the best videos about FPGA judging from the comments and I just really loved it man, so that's about it yeah, I recommend watching the video!