A Rigorous Top-Down Design Process
Principles of Top-Down Mixed-Signal Design
architecture, changes in block specifications, or perhaps just an improvement of the ver- ification plan. However, these changes occur early in the design process, which greatly reduces the amount of redesign needed.
As the blocks are implemented and more information becomes available, the process is repeated if there are any surprises.
Executable Specifications and Plans
When a design fails because of miscommunications between engineers, it is a natural reaction to insist that in future designs formal specifications and plans be written in advance as a way of avoiding such problems. In practice, this does not work as well as generally hoped. The act of writing things down is beneficial as it gets the engineers thinking more deeply about their designs up-front, and so they develop a better under- standing of what is expected and what could go wrong. However, as for the written specifications and plans themselves, they can take a long time to write, are usually not very well written or maintained, and are often not read by the other engineers. The fact is, the documents themselves are rarely effective at improving the communications between the engineers, rather it is the better understanding that comes from writing them that acts to improve communications.
If instead, specifications and plans took the form of executable models and scripts that would be used and valued on a daily basis, perhaps with a small amount of accompany- ing documentation, then they would be naturally well written, well used, and well main- tained. The models and scripts are also inherently very specific, which eliminates the ambiguity that occurs in written documents and that can result in misunderstandings that lead to respins. These models and scripts should be maintained with the design data and shared between all designers. This avoids another of the problem with written spec- ifications; the situation where one engineer is unaware that another has updated a speci- fication.
Use of executable specifications and plans in the form of models and scripts both sub- stantially improves the design process for the initial version of the chip, as well as greatly easing reuse of either the design as a whole, or the blocks used in constructing the chip. IP reuse, or reuse of the blocks, it made considerably easier because validated high-level models of the blocks are available at the end of the design process. These models would then be used to easily evaluate the blocks as to there suitability for use in other designs. Derivatives, or system reuse, is greatly simplified by the existence of all of the models and scripts. It makes it much easier for either a new team, or new team members, to get an quick understanding of an existing design and initiate the process of making changes to retarget the design to a new application. Furthermore, having models and verification scripts that have been refined by the experiences of the first design team make it more likely that the follow-on designs will debut without surprises.
5 A Rigorous Top-Down Design Process
The rigorous top-down design methodology described here is a substantial refinement of the primitive top-down process described in Section 3.2. It follows the principles described in Section 4 in order to address all of the problems associated with bottom-up design, as identified in Section 3.1.
The Designer’s Guide Community
15 of 31