Awesome
Digital Design HQ Archived Resources
Contents
Books
- Digital Design: A Systems Approach - this is one of the best books I have seen for beginners wanting to learn digital design.
Digital Electronics
basics
- Digital Circuit Design
- Digital Electronics I
- Digital Logic
- Logic with a multiplexer
- Boolean functions with a mux
- Overflow, and underflow
- The JK flip-flop
- Finite State Machines
- State Machine with JK flip-flops
- State minimization
- State Machine Design Mastermind
- Propagation Delay and Timing
advanced
- Ben Eater - Video Card
- Vulcan-74
- I2C - Bus Master
- FPGA Mandelbrot Explorer v1
- I2S and SPI protocol intro
- SPI Transfer Modes
- UART Receiver
- DRAM Technology
- FPGA sprite graphics accelerator
- HDMI basics
- DVID test
- VGA timing chart
- PCIE IP
- Synchronizer techniques
- Clock domain crossing - fast to slow clocks
- Clock domain crossing issues
- Yet another division algorithm
CPU
Resources
- Awesome Computer Architecture
- CS-224 Computer Organization
- Onur Mutlu Lectures
- Carnegie Mellon Computer Architecture Playlists
- CS6810 Lectures
- MIT Computer Architecture
- High Performance Computer Architecture
- Computer Architecture
- Homebrew Cpu Web Ring
- Modern Microprocessors - a good article that shows the general overview of modern processors
- MIPS Assembly
- MIPS Calling Convention
- CPU Evolution
- Graphical Processor Simulator
Low Tech
Mid Tech
High Tech
- Western Digital RISC-V Cores
- Homemade 32-bit CPU and OS
- Oldland CPU
- ZipCPU
- soc32e - BinaryLust's 32-bit system project
- mrisc32 - mbitsnbites project, a pipelined vector cpu based on a custom ISA.
- basic-cpu
- nanoFOX
- picorv32
- schoolMIPS
- NyuziProcessor
Compiler
- Compiler Explorer - Compile and disassemble code online.
- Awesome Compilers - A Github repository full of compiler resources.
Assembler
- zasm - a universal assembler in development by our member beefok
- customasm - possibly written by our member Zigon
- web assembler - written by our member Xaetral
- mrisc32 assembler - written by our member mbitsnbites
Emulator
FPGA
Development Boards
- DECA - A mid-range board
- PicoEVB
- MKR VIDOR 4000
- Mimas V2
- Mimas A7
- Mimas A7 Mini
- iCEBreaker
- BlackIce II
- TinyFPGA
- TinyFPGA BX
- Best FPGA 2018 post
- Low Cost HBM2 Board
- Saturn
- Neso
- Chameleon96
- QMTECH Boards
Reverse Engineering
Block Ram
- Multi-port - created multi-ported memorys for fpgas
External Memory
- Alchitry SDRAM
- Hamsterworks SDRAM Controller
- Hamsterwords Simple SDRAM
- VHDL SDRAM Controller
- Another VHDL SDRAM Controller
- Analog Devices ASIC Sdram Controller Document
Interconnect
Misc
- FPGA cooking
- stx cookbook
- Symbiflow
- FPGA Architecture Details
- More FPGA Architecture Details
- OpenFPGA
- FPGA Overclocking
- Tranceiver Equalization
- Common Cells
- I/O Timing Constraints
Projects
Prototyping
PCB
Wire Wrap
Transmission Lines
Pick and Place
Tools
Misc
- logisim-evolution
- Digital Simulator - A digital logic designer and simulator
- Beyond Floating Point
- Timing Graph Editor
- Sam Zeloof At Home IC's Blog
- Sam Zeloof At Home IC's Videos
- TCL Basics 1
- TCL Basics 2
- Raspberry PI 4 PCI Express
- PCI Express Kernel Driver
- Open Source FFT
- DisplayPort Verilog
- Apollo Guidance Computer Talk
- Simple GPU
HDL
General
- Chip Verify Tutorials
- Alchitry Verilog Tutorials
- HDL Bits Verilog Practice
- SystemVerilog.io
- EDA Playground
- Web FPGA
SystemVerilog
Verification
UVM Verification
- Modelsim UVM
- UVM Helloworld
- Free Udemy UVM Course
- The UVM Primer
- UVM SV Tutorial
- UVM Tutorial
- Verification Academy UVM
- Chip Verify UVM Tutorial
Formal Verification
Other Verification
- cocotb - HDL verification with Python
- cocotb documentation