References and Reading List

Here are the sources I've used while writing this book, organized by topic.

Digital Design

Elastic Pipelines

The following papers are mainly useful for background and for implementation guides to pipeline branches, joins, forks, etc... Note however that in the academic literature, elastic pipelines are often expressed as valid/stop handshakes, rather than valid/ready handshakes, where "stop" is the inverse of "ready". This means parts of the diagrams have inverted logic from what it would be in valid/ready handshakes. Also, watch out for combinational paths, which aren't completely avoided in these designs: use Skid Buffers as necessary.

Clock Domain Crossing

Frankly, most writing about CDC is superficial and subtly wrong. Here is some of the best writings on the topic.

back to FPGA Design Elements