Upload
isabella-jefferson
View
215
Download
0
Embed Size (px)
Citation preview
12005 MAPLD Design Integrity Concepts
Letting Constraints Work For You
Proportional Design
22005 MAPLD Design Integrity Concepts
Agenda – Proportional Design
• Conceptual background
• Types of constraints
• Examples
• The proportional design mindset
• Summary
32005 MAPLD Design Integrity Concepts
Conceptual Background
• Three parts to solving a problem:– Need, solution set, constraints
• All parts have a role to play in the solution
• Ignoring any of them will lead to problems
42005 MAPLD Design Integrity Concepts
Conceptual Background (cont.)• Example
– Need: means of conveyance to work– Solution set: Skateboard, bicycle, bus, jogging shoes,
mid-size sedan, luxury car, helicopter– Constraints: Distance (6 miles), $, not on bus route, $,
not in very good shape, $– Solution: 1992 Honda Accord (120 kmiles, 4 k$) – The constraints guide selection of the solution from the solution set
• The particular solution is not necessarily -– The cheapest (roller skates)– The most desired (Lexus LS400)– What is perceived as best for society (bus)
• But … the best overall fit to the needs
52005 MAPLD Design Integrity Concepts
Conceptual Background (cont.)• Definitions
– Constraint: the state of being checked, restricted, or compelled to avoid or perform some action (AH)
– Proportional: corresponding in some degree or intensity (AH)• Proportional design is design that results in a product
“sized” appropriately to the needs and restrictions of the specification
• The concept of proportional design:– Accepts the reality of constraints– Attempts to optimize the solution given the constraints– Accepts that the constraints provide benefits (more later)
• More efficient designs• More thorough designs• More correct designs• Caveat – All other things being equal
62005 MAPLD Design Integrity Concepts
Types of Constraints
• External (mass, power, cost, quality)• Internal
– Derived (packaging, architecture, component availability, maximum clock speed)
– Self-imposed• Design rules/guidelines (free space, clock use, logic structure,
HDL language)
• Documentation style (pre-design, post design)
• Component acceptability (maturity of part, limited use of various features
72005 MAPLD Design Integrity Concepts
Examples (1)• Problem: provide decoding logic for memory map
– 0-3FFF = SRAM; 4000-4FFF = Peripheral; E000-FFFF = PROM
• Constraint: use minimum amount of logic
• But what about …– Unused addresses, future expansion, etc.
• Doesn’t matter – given the constraints
82005 MAPLD Design Integrity Concepts
Examples (2)• Problem: provide all combinational / sequential logic for
the RADARSAT ACP• Constraint: Only low density high speed logic available
(16X8 PALs, MSI/SSI logic)• What was forced by the constraint?
– Careful mapping of peripherals into available address space– Careful partitioning between:
• Programmable logic and MSI/SSI• MSI/SSI functionality
– Efficient data bus partitioning (tri-state enable issues)– Special attention to component delays at the gate level
92005 MAPLD Design Integrity Concepts
The Proportional Design Mindset• Constraints inevitably foster attention to detail (creativity
“inside the box”)– With respect to methodology– With respect to level of planning– With respect to implementation
• Attention to detail is of inherent value because it produces carefully structured, well-thought out designs– Improved up-front correctness – Decreased design post-processing time (simulation, verification,
validation, lab time)– Efficient designs that meet the stated requirements– Increased reliability
• Therefore, constraints are welcomed, whether externally imposed or self-imposed
102005 MAPLD Design Integrity Concepts
The Proportional Design Mindset (cont.)
• Examples of self-imposed constraint– Ignoring achievable flexibility (when not
necessary)– Removing non-specified capability– Avoiding gratuitous cleverness (especially with
abstract design techniques)– Rejecting brute force solutions without analysis
112005 MAPLD Design Integrity Concepts
The Proportional Design Mindset (cont.)
• Characteristics of the right mind set– Planning before starting– Reviewing before finalizing– Simplifying ruthlessly– Making the design do only what it must– Viewing resources as precious commodities to be used
only to the extent needed– Understanding the implication of the design’s level of
abstraction– Being satisfied with the result
122005 MAPLD Design Integrity Concepts
The Proportional Design Mindset (cont.)
• Why aren’t self-imposed constraints more common?– They aren’t absolutely essential because we have:
• Lots of logic space [FPGAs, ASICs]• Lots of memory space [DOS file systems, complicated operating
systems]• Lots of bandwidth [fast data busses, general purpose communications
protocols]– They don’t match the current paradigm
• Flexibility is all-important [re-use, re-configure, adapt]• Specifications are malleable late in the game• Software changes, why can’t hardware?• We can catch problems in simulation and reprogram the part
– They aren’t fun– We don’t train people to value constraints and work within them
• This is unfortunate because constraints can make our job easier without degrading the end product
132005 MAPLD Design Integrity Concepts
Summary
• The proportional design mindset is important because it:– Focuses on fulfilling needs, not wants
[specification orientation]– Deepens understanding of the final design
[ownership oriented]– Avoids unnecessary effort [efficiency oriented]– Fosters simplicity that aids verification and
validation [quality oriented]