traded for the good design, therefore the knowledge of all factors effecting the design and their interdependence are important. Most designs nowadays are large and complex. A successful designer has to structure his design and use design automation tools available. In general a successful designer uses the following 4 principals to achieve his design effectively and quickly. Hierarchy Regularity Modularity Locality Hierarchy, This is an extremely useful strategy when you have a complex system. It is the process of divide and conquer. The overall system is repeatedly divided into subunits and in turn the subunits are divided further until no further division is possible or the subunits are available in the library. At this stage the design is more manageable since the smaller sub-modules can be designed easier. The hierarchy can be in different domain in software or hardware modules For example a VHDL entity module can be written or structurally designed in a hierarchical fashion. Parallel hierarchy is implemented in all domains. As an example a 4-bit adder can be designed by dividing the adder into 4 single bit adder, and an adder cab be designed using 2 half adders and so on as shown below: Regularity Regularity Although hierarchy can reduce complexity, however by applying regularity we can reduce complexity of the layout much further, because it simplify the work of the software that automates the design., in turn the design and implementation tasks are reduced, more compact
traded for the good design, therefore the knowledge of all factors effecting the design and their interdependence are important. Most designs nowadays are large and complex. A successful designer has to structure his design and use design automation tools available. In general a successful designer uses the following 4 principals to achieve his design effectively and quickly. Hierarchy Regularity Modularity Locality Hierarchy, This is an extremely useful strategy when you have a complex system. It is the process of divide and conquer. The overall system is repeatedly divided into subunits and in turn the subunits are divided further until no further division is possible or the subunits are available in the library. At this stage the design is more manageable since the smaller sub-modules can be designed easier. The hierarchy can be in different domain in software or hardware modules For example a VHDL entity module can be written or structurally designed in a hierarchical fashion. Parallel hierarchy is implemented in all domains. As an example a 4-bit adder can be designed by dividing the adder into 4 single bit adder, and an adder cab be designed using 2 half adders and so on as shown below: Regularity Regularity Although hierarchy can reduce complexity, however by applying regularity we can reduce complexity of the layout much further, because it simplify the work of the software that automates the design., in turn the design and implementation tasks are reduced, more compact