- https://www.youtube.com/watch?v=Gh-Tff7DdzU
- https://nerdhut.de/2017/07/03/custom-cpu-design-1/
- https://en.wikipedia.org/wiki/Processor_design
- http://www.bigmessowires.com/bmow1/
- http://www.homebrewcpu.com/
- http://www.fpgacpu.org/papers/soc-gr0040-paper.pdf
- OpenCores. (http)
- OpenSparc. (http)
- https://www.quora.com/Can-I-make-my-own-processor-If-so-how?share=1
- https://electronics.stackexchange.com/questions/232876/i-want-to-learn-how-to-make-a-cpu-from-scratch
- https://electronics.stackexchange.com/questions/15811/where-to-start-when-considering-making-a-gpu
- Things to learn
- Either VHDL or Verilog.
- FPGA's (useful area to play with writing digital logic).
- Basic data-path stuff, like FIFO's.
- Bus interfaces, like PCIe and DDR2/3 interfacing
- Binary implementations of math functions, including floating point, etc.
- CPU design.
- Video interfacing standards.
- High speed analog stuff (the analog side of high speed digital)
- PLL's and other semi-advanced clocking stuff.
- PCB design of high speed circuits.
- Low voltage, high current DC/DC converter design.
- Lots and lots of software stuff.
- And finally, ASIC or other custom chip type design.
- Things to learn
- Google XLS (Accelerated Hardware Synthesis): https://google.github.io/xls/