270 likes | 288 Views
Engineering 1000 Chapter 6: Abstraction and Modeling. Outline. Why is abstraction useful? What are models? how are models different from theory and simulation? Examples from microelectronics Types of model finite element models Approximations and responsibility. Abstraction.
E N D
Outline • Why is abstraction useful? • What are models? • how are models different from theory and simulation? • Examples from microelectronics • Types of model • finite element models • Approximations and responsibility R. Hornsey
Abstraction • “Abstraction” has the same root meaning as the abstract of a report • to summarise and extract the essential elements • from the Oxford English Dictionary: “the act or process of separating in thought, of considering a thing independently of its associations” • The purpose of abstraction is to enable the designer to consider the relative merits of several options without having to build prototypes of each one • By formulating the problem in the ways that we have already considered … • especially the objective/function trees • … we have already moved some way along the road to abstraction • the generation of multiple options is sometimes referred to as parsing R. Hornsey
The advantage of the tree diagrams is that closely related issues are automatically identified • and some idea of their ‘level’ has been obtained • this is effectively a second stage of abstraction • it is worth checking to see if objectives at the same level but on different branches of the tree can be achieved using a common method • In our objectives tree, we stopped one stage before developing ways of implementing those objectives • in abstraction, we now need to consider what these possible implementations will be • to do this we need to shuffle around concepts, find relations, identify commonalities, consider variations, …, • i.e. manipulate the elements of the problem • the textbook calls this the “dimensions of variation” • the statement-restatement technique was one way of achieving this R. Hornsey
What is a Model? • A model is a representation or imitation of a real object • in engineering terms, a model is used because it enables predictions or calculations or in some other way makes the design process more convenient • often, the model is a mathematical description which can be manipulated by computer • but it can also be a physical model of an object, which maintains a desired characteristic (e.g. the shape of a car) but is in some way simpler than the real thing (e.g. no internal machinery) • Traditionally, models are small-scale versions of bridges, buildings, planes, etc. • which are tested in order to predict how the real structure would behave under appropriate conditions • this is not always easy because some effects do not scale linearly with distance (e.g. friction, fluid flow) R. Hornsey
Models as Purposeful Representations • The textbook uses the words “purposeful representation” as a brief definition of a model • Models are used to assist the designer’s thinking, analyse potential designs, realise what is known or unknown, predict behaviour, identify connections, etc. • Models are typically used when the system is incompletely understood • the textbook also states that models are used for complex systems • However, we must distinguish here between physical models and computer-based models • physical models are indeed used for complex systems, and represent one of engineering’s oldest tools • complex and understood systems are usually solved by simulation in computer-based approaches (see later for an example) R. Hornsey
How is a Model Different from Theory? • A model is related to, but different from, a theoretical description of the object • the model may be based on theory • but may include non-ideal behaviours observed in experiments but not well explained by theory • theory may predict certain trends, but empirical numbers from experiments are included to get the calculated results to agree with the real results • The key difference is that a model must behave as nearly as possible the same way as the real thing • but it is not directly important whether the model’s behaviour is well predicted by theory – it is the result that counts • [a good theoretical basis is good however, because it will likely expand the range of conditions over which the model will work] R. Hornsey
How is a Model Different from Simulation? • A simulation is usually a technique for obtaining theoretical results in cases where the theory is mathematically tough to solve • so simulation is a practical way of solving the theoretical description • assuming you know the appropriate theory! • It can help to think of the difference between a model plane and a flight simulator! • We will illustrate these situations with an example from microelectronics R. Hornsey
Microelectronic Circuit Design • The goal here is to predict as closely as possible the behaviour of a microelectronic circuit design before it is manufactured • e.g. amplifier gain, bandwidth, distortion, logic gate switching time • There are a number of levels which we must consider • the circuit operation • the components which make up the circuit (transistors, resistors, capacitors, diodes, interconnects) • the physical mechanisms within each of these components • the way in which the manufacturing process affects the behaviour • It is not always necessary for the designer to understand all of these levels in depth • but the computer software must assume this knowledge R. Hornsey
SPICE Circuit Simulator • SPICE is a widely used circuit analysis package which allows the designer to connect electronic devices into a circuit • and predicts the response of the circuit under specified conditions • SPICE is a circuit simulator • it applies circuit analysis equations to the designed circuit to calculate currents and voltages as a function of time • for any condition, it may require a lot of calculations to reach a final answer where all the values are internally consistent • But how does SPICE ‘know’ how a transistor behaves? www.silvaco.com R. Hornsey
SPICE Models • SPICE contains an analytical model of how every device behaves • ‘analytical’ means mathematically solvable • There are numerous ‘levels’ of models depending on how complex they are • i.e. how accurately they describe every aspect of the device behaviour, no matter how subtle • It is not directly important for SPICE models to be theoretically accurate • the basic characteristics are described by theory • but many complexities are based on observations of extensive experimental data • these are empirical or semi-empirical models • This is very important, because it means that the accuracy of your predictions are highly dependent on how much you know about the specific devices in your circuit R. Hornsey
Microelectronic manufacturing ‘fabs’ will measure thousands of devices in order to get accurate SPICE models • A widely used SPICE model for transistors is BSIM 3.3 • The better the theoretical framework, the more generally applicable will be the results • and the model can be refined www.silvaco.com R. Hornsey
Device Simulators • Most of the basic theory for semiconductor devices is well known • however, applying it to a realistic device is extremely complex (sound familiar? – same as SPICE) • this is because the 3-D geometry of the devices and the any material layers they contain makes hand calculation impossible • Device simulators such as MEDICI sub-divide the device into elements which are simulated individually but consistently with neighbouring elements • elements are of varying size to capture details where needed but to save computation time elsewhere www.avanticorp.com R. Hornsey
As with all simulators, the results are only as good as your theoretical understanding of the situation • In the end, engineers like theory to the extent that it improves the models • but a design must still work even if there is no adequate theory • and so (good) models are of paramount importance www.avanticorp.com R. Hornsey
Computer-Aided Design (CAD) • Many engineering projects would be impossible to realise without CAD • CAD is rather a loose term which may range from fancy graphics packages to complex software suites including modelling and simulation • e.g. the 10 million transistors in the Pentium would not be feasible if paced and connected by hand (much is done with automatic layout) • A common tool for laying out chips is CADENCE • it contains a ‘drawing’ package for defining metal, silicon, etc layers • a ‘design rule’ checker • SPICE • automatic layout • ‘standard cells’ • and numerous other tools R. Hornsey
AutoCad • Another standard CAD package is AutoCad • which you will learn in part 2 of ENG1000 • www.autodesk.com R. Hornsey
Computer-Aided Manufacture (CAM) • The logical conclusion of CAD is CAM • and the two are often lumped together as CAD/CAM • By using the data generated by the CAD tools directly for controlling the machines manufacturing the item several benefits follow • speed • accuracy – no (additional) errors introduced • flexibility • For example, we email output files from CADENCE to the chip manufacturing plant • one of the advantages of standardisation of information formats R. Hornsey
Types of Model • Models can be categorised into three basic types • Iconic models • look identical to the finished object; visually equivalent • e.g. maps, globes, computer graphics, physical models • but are incomplete in the sense that some information is lost • e.g. a 2-D representation of a 3-D object, no internal mechanics • Analogic models • are functionally equivalent to the object • so they behave like the real object, but not necessarily for the same reasons • e.g. the transistor models in SPICE, model aeroplane in a wind tunnel • Symbolic models • such as descriptions using mathematical (or chemical) equations • e.g. postscript representation of a font, x2 + y2 = r2 R. Hornsey
Finite Element Models • The mesh used to analyse electronic devices in MEDICI is an example of a finite element model (FEM) • FEMs are used in many situations where the basic equations are known but are very difficult to solve in more than one dimension and for complex situations • heat flow = (thermal conductivity) x (temperature gradient) • electrical currents as a function of electric field • fluid flow as a function of pressure gradients • stresses in complex surfaces • For each element the equations are solved • ensuring that conditions match at boundaries between adjacent elements • ‘boundary’ conditions are satisfied R. Hornsey
One general FEM solver is ANSYS • www.ansys.com mesh stresses R. Hornsey
Approximations • It should be remembered at all times that models and simulations are all approximations to reality • they may use simplifying assumptions (i.e. models) • unknown effects cannot be included • equations may be solved by numerical methods, which do not yield exact results • often, models are only valid over a specific range of conditions, especially is they are semi-empirical (use measured data) • The engineer must understand • the theory, models, and techniques on which the solution is based • nature of the approximations used in the model • the situations for which the technique is valid • There is no substitute to experience with a particular modelling tool • often engineers ‘know’ when a particular tool gives good or bad results R. Hornsey
Responsibility • The performance of the design is engineer’s responsibility, regardless of how the design was carried out • errors in simulation or modelling are also the engineer’s responsibility, not that of the software vendor • From the PEO: • The practice of professional engineering has become increasingly reliant on computers, and engineers use many computer programs that incorporate engineering principles and matters. Many of these programs are based upon or include assumptions, limitations, interpretations and judgments on engineering matters that were made by or on behalf of an engineer when the program was first developed. Therefore, it is often difficult to determine, just by using a program or by being given a description of its function, the engineering principles and matters it incorporates. The engineer must have a suitable knowledge of the engineering principles involved in the work being conducted, and is responsible for the appropriate application of these principles. When using computer programs to assist in this work, engineers should be aware of the engineering principles and matters they include, and are responsible for the interpretation and correct application of the results provided by the programs. Engineers are responsible for verifying that results obtained by using software are accurate and acceptable. Given the increasing flexibility of computer software, the engineer should ensure that professional engineering verification of the software's performance exists. In the absence of such verification, the engineer should establish and conduct suitable tests to determine whether the software performs what it is required to do. R. Hornsey
Developing a Model • Developing good models is a difficult and time-consuming process • this is perhaps not surprising since the complexity of the situation is the likely reason for needing a model in the first place • a large proportion of engineering research is devoted to the development and improvement of models • How do you know it’s a good model? • ultimately, it must be verified by favourable comparison with a wide range of experimental results collected by different people under a variety of appropriate conditions • ‘goodness’ depends on the requirements of the specific situation • by repeated successful trials, some measure of confidence can be established in the tool • a corollary is that software modelling tools are the domain of a few well-established companies in each engineering field R. Hornsey
Summary • Theory, simulation, and modelling are tools to enable the engineer to understand and to predict the behaviour of proposed designs • without having to construct prototypes • The advantage is that various options can be considered and compared as efficiently as possible • The disadvantage is that no model/simulation/theoretical description is exact • It is the engineer’s responsibility to ensure that these tools are used appropriately R. Hornsey
Homework • Read chapter 6 of the textbook and the case studies described in that chapter • Do problems 6.1 and 6.2 R. Hornsey
Exercise • Develop a simple model governing the number of economy-class seats in an aeroplane • as a function of other relevant factors (e.g. ticket price) • can you optimise the number? • What assumptions have you made in your model? • it is always important to state explicitly all your assumptions, so users of the model know if it is valid for their situation R. Hornsey