The Spade Book
Spade is a Hardware Description Language inspired by modern software languages. Its strong type system, zero cost abstractions around common hardware constructs, and helpful compiler help you easily build complex hardware.
This book has a few different entry points depending on how you want to learn:
Install Spade
This shows you how to install the compiler and associated tools locally.
As you use the language, these resources will also come in handy: