ABSTRACT

Earlier chapters give an overview of hardware architectures without discussing design or implementation details. This brief chapter considers designs that employ modularity. In particular, the chapter contrasts hardware modularity with software modularity, and considers why common programming abstractions do not apply to hardware. It then uses an example to illustrate how a basic hardware module can be designed that is flexible, and how replication of a basic module allows a designer to form a scalable hardware design.