In: Electrical Engineering
As a designer what will be your strategies to design a sustainable complex circuit?
VLSI technique
Presents a design strategy for VLSI circuits based on the use of a floor plan as an evaluation and management guide for the design of a future circuit. This approach is widely used in the microelectronic industry and allows global optimizations, which are the key to both high density and design reliability, by improving the assembly and the direct wiring of the blocks. The efficiency of such an approach may be improved using a topological evaluator. This tool will give an evaluation of the shape, size, and connections of the main blocks from their specifications. It can consider the topological constraints given by the designer to improve the assembly and connectivity of the floor plan. This tool is composed of a set of evaluation routines for the different kinds of functional blocks constituting a VLSI circuit and a supervisor for dialogue with the user
It depends on what you mean by ‘complex’. In a modern IC, the push for more integration is resulting in massive designs. I would call this complex in that there are many moving parts and interactions, but each block may not be difficult or ‘complex’. On the other hand, you could have a single function that has several very difficult blocks and the design of those blocks is complex. The solutions would have many commonalities but also some major differences.It’s difficult to describe a one size fits all answer to all these scenarios but the best place to start thinking about complex problems in my opinion is… HIERARCHY. It’s analogous to object-oriented programming from the software world. The concept is simple but great execution can be difficult. Identify a core building block or element within the complex problem and put it in a container. The block will have specifications on functionality, performance, etc. Now that portion of the problem is ‘contained’ to a ‘manageable’ level. The rest of the system doesn’t have to worry about how that portion of the problem is solved but only the external behaviour. This process is repeated for the entire design and can be extended with multiple levels that is, a collection of sub-blocks can be grouped together to abstract the problem even further. There can be any number of levels to the abstraction process.
All modern IC developments with very few exceptions use this principle of abstraction / hierarchy. This process can lead to great insight into complex problems and better designs. If the execution is not done correctly, it can also result in a considerable amount of waste which translates to high power and area (cost).