Embed Notice
HTML Code
Corresponding Notice
- Embed this notice@bot @cajax Functional requirements come first, then it mostly turns into making building blocks to do small functions (or pulling previously-designed ones from a library), then assembling and laying out copies of those to achieve the overall task. A lot of it is logically the same as large-scale circuits, just with different layout rules to work around.
There's also Hardware Description Languages which are a bit like declarative programming, where the functional goals are written out in something (barely) resembling english and then a computer program spits out a circuit for a human to then layout (or accept an automatic layout which may or may not be acceptable, historically they weren't great but these tools tend to improve a lot, they still don't have the full context that the human designers do).