CoE 197U The MOS Switch
Contents
Levels of Abstraction
As integrated circuits continue to increase in complexity and sophistication, the amount of information and information processing needed to design, fabricate, and test these ICs also increase. Without a way to organize this information, engineers can be easily overwhelmed. One strategy is to define levels of abstraction, where we partition the information, and use only the components needed for a particular task. This strategy can then be used to create models appropriate for a certain objective.
We create models to allow us to predict the behavior of a circuit or system. One approach we can take is to model a whole system using transistor models, e.g. BSIM[1] models, with hundreds of parameters per transistor. The amount of computing resources needed for systems with millions of transistors could render this approach impractical.
In most cases, the overall functionality of a digital system is determined by the system architecture and organization, e.g. is it an adder, or a multiplier, or a microprocessor? At this level, we do not really need to know transistor-level details such as the threshold voltage or the thickness of the gate oxide. Thus, we can abstract away the unneeded information, and retain only the information needed to accomplish the task. By reducing the complexity of the transistor model, we can significantly reduces the amount of computation needed to verify the functionality of the digital system. However, if we want to predict or determine the leakage power consumption of the system, then we need to take into account the transistor threshold voltages, leading to a different simulation strategy and transistor model abstraction.
Fig. 1 shows an example of how a system can be seen from different levels of abstractions or viewpoints, from the system-level, to the RTL- or functional-level, the gate-level, the transistor-level, and the physical-level. Different models with varying sophistication and complexity can be used at the different levels, depending on the design or verification objective. In general, more information about the transistors are added as we get closer to the physical-level.
For example, at the system-level, we may be interested in overall functionality of the IC and how it interfaces with other components or systems. At the register transfer level (RTL), we might be concerned with the system architecture, e.g. how it uses resources such as memory and interconnect to implement its function. Then each function could be examined in more detail at the gate-level, we can evaluate gate fan-in and fan-out, logic depth, etc. At the transistor-level, we can look at specific timing-, voltage- and current-related parameters such as rise times, propagation delays, voltage and current spikes, active and leakage power, etc. The physical-layer view can show us the effect of the layout and location of transistors and transistor groups, allowing us to determine the effects of parasitic elements and other layout related phenomena.