I welcome comments on the Pipe posts from everyone. Substack does not allow me to open the comments section on posts which have mixed open and paid content, but you can add a comment here, just remember to say which post you are commenting on. Thanks!
Pipe 1
Getting started with logic design, mentions FPGA, OpenROAD, introduces the project.
Only the paranoid. Access to the real tools is limited
Now I am annoyed .. pivoting to a thought experiment build
Borrow some guidelines .. sources for circuits and design rules
3D helps understanding
Pipe 2
The cell library is central to EDA
Which cells are chosen and why
What is missing from this library
Wiring complexity
Pipe 3
formation of base and fins
source and drain connections
gates are added
metals and vias - layers zero to four
who has precedent for CMOS designs?
Inverters and buffers
NAND and NOR
2-, 3-, and 4-input versions
Pipe 4
Or-And-Invert and And-Or-Invert
2- and 3-input versions
AND4 and OR4
Opposite and Equal (XOR, XNOR)
Majority and minority of 3
MUX2 (choose from 2 inputs)
Dynamic latches
D Flip Flop
Pipe 5
NegEdge(CLK) pulse generation
Variations on a Full Adder
Naive circuit
Buffered circuit
Smallest circuit
Single rail vs. dual rail layouts
Watch out for the power rails
Dual track layouts
The most compact circuit
Single rail
Dual rail
Pipe 6
Introducing the SHA-256 Pipeline
The functions in one SHA-256 stage
Why is it a pipeline?
The Digest stage
One Bit at a time
Prioritize the design goals
Pipe 7: The e,f,g,h, and kw pipeline
A half-pipe to get started
Reducing it to 32 slices
Stages start with latches
The e-pipe in detail
Routing the latches to logic cells
The full adders
Mind the gap
Let’s see that again
Pipe 8: The a-pipe and multiple slices
Scouting ahead
Latches and first logic
Add it up
On to the next stage
Howdy, neighbor
The pause that refreshes
Let’s see that again
Pipe 9: Rotations, KW, and Carry Lookahead
Connecting the slices together
Let’s see that again
Carry Lookahead
A tidy fit
Wrapping up
Pipe 10: doing the numbers
Where does the energy go?
Adding up the gates
How long is a piece of metal?
M0
M1
M2
M3
M4
M5
Combining all sections
How much will the Scheduler add?
Missing parts
Clock distribution
Feeding data into the pipe
Detecting success
Optimizations
Gates
Wires
Voltage
Size
The End of the Pipe