Stochastic Simulation Tool for VLSI

Size: px
Start display at page:

Download "Stochastic Simulation Tool for VLSI"

Transcription

1 Stochastic Simulation Tool for VLSI Mid-Project Report, Fall Full Report- By Luis E. Martinez Sergio Graniello Department of Electrical and Computer Engineering Colorado State University Fort Collins, Colorado Project Supervisor Dr. Sourajeet Roy Approved by -

2 Abstract The word stochastic, defined as synonymous to random. pertaining to chance, [1] is a very powerful world when applied to any design problem. Randomness complicates any problem by adding an extra degree of complexity which requires careful reconsideration of even the most accurate models. Uncertainty rules the universe around us and it becomes greatly magnified in the nano and micro scales where even the smallest of deviations can have unprecedented impacts. Take for example a single transistor, which has shrunk well into the tens of nanometers in modern-day lithography. At such a small scale variations are inevitable and even the most minute of defects can cause the transistor to work improperly, which could render an entire integrated circuit useless or inaccurate. When considering the scale at which these tiny circuit components are made, it is easy to understand that, even in the most controlled environment, no transistor will have an exact size to what a design may call for. Typical sampling-based algorithms for modeling error propagation, such as the Monte Carlo method, are widely used in industry in an attempt to simulate the degree to which manufacturing errors will affect the performance of a circuit by assessing statistical bounds generated in repeated sampling and statistics generation. While these algorithms, with our focus on the Monte Carlo method, do a good job at generating the statistical data required from repeated sampling, the time limitations created by sampling pose issues when considering large circuits or large amounts of input variability. Within our studies of the Monte Carlo method we were able to validate the inherent time limitation that exists within sampling-based simulation methods and to study the causes for these. By studying the mathematics that are required to make Monte Carlo possible and employing the Monte Carlo method with our own sample circuits, we are able to quantitatively and qualitatively characterize these limitations and pinpoint their sources. By doing so, we have effectively characterized the industry standard method that is Monte Carlo, which enables us to develop alternative methods and compare them against a benchmark. This enables us to explore previously unused algorithms, such as polynomial expansions as Polynomial Chaos, and develop a foundation for their use in electric circuit modeling, paving a path for the future research and advancement of Chaos methods in electric circuits. This is the exact direction in which our project is heading: In the following months we hope to develop a comprehensive adaptation of Polynomial Chaos for electric circuit simulation and to characterize the algorithm itself again the Monte Carlo method, which has been an industry presence for many years, with the hope of establishing Polynomial Chaos methods as a viable alternative to the Monte Carlo Algorithm. 1

3 Table of Contents Abstract 1 Table of Contents 2 Chapter I Introduction 3 Chapter II Summary of Previous work 5 I. Introduction to Previous Work 5 II. Monte Carlo Method 6 III. Polynomial Chaos Theory 6 Chapter III - Work for the Semester: Monte Carlo as a Benchmark 8 I. Objectives 8 II. Formulation of our Code 9 III. Testing Procedure for the Monte Carlo Simulation 10 IV. RC Circuit Results 11 V. Low Noise Amplifier 11 VI. Summary of Findings 12 Chapter IV Conclusions and Future Work 14 I. Future Work 14 II. Conclusions 15 Appendix A Abbreviations 16 Appendix B Budget 16 Appendix C Timeline 17 Appendix D - Matlab Script 19 References 24 2

4 Chapter I Introduction Often, while modeling and analyzing circuits, it is easy to forget that our reality is not deterministic. Throughout our education as engineers we are told to assume ideal conditions implicitly and explicitly. Whether our assignments ask for us to neglect losses in a medium explicitly or implicitly ask us to use exact dimensions for our transistors by giving us exact parameters, the fact is that an engineer s strive for answers rarely leads to a perfect solution due to inherent limitations within nature and our talent for claiming that it is good enough. Limitations within nature: that is the focus of our project and the reality that industry works against on a daily basis. Consider as an example a modern transistor. Modern lithography techniques have shrunk the transistor well past a microscopic scale into just tens of nanometers. Intel s 7 th generation architecture, for example, are manufactured at 14 nanometers, [2] with current trends predicting future projects to continue shrinking. As with any other manufacturing process, there are manufacturing tolerances in lithography that, no matter how small, will end up contributing to the end product in different ways, some positive and others detrimental. The real difficulty and beauty of a problem then comes in the form of creating a design that utilizes imperfect components, such as the transistor, to meet certain requirement criteria and perform a desirable function. As with any design problem, it is important to be able to predict the behavior of a circuit with accuracy in order to ensure that specifications and functions are met before resources are expended manufacturing a physical product. Computers and algorithms are great tools for modeling the behavior of different circuits or system, but computer algorithms and simulations require, for the most part, definite values on which mathematical operations can be carried out in order to accurately predict behavior. In the case of imperfect parameters, such as random variations in transistors and their properties, it is crucial to answer not only the question of whether a design will work appropriately to meet all specification criteria, but also to factor into the simulation the fact that no manufactured component will have the exact dimensions, resistance, etc. that our designs call for. It is not good enough to say that given X set of components with Y characteristics arranged in a specific manner will produce the result that we want; we need to consider that a component with exact Y characteristics likely does not exist and therefore consider the likelihood that, given a specific amount of variation or error in Y, the desired outcome is likely to occur and that a certain amount of error will exist depending on the different combinations of component error that will exist. Monte Carlo is an algorithm in simulation and numerical analysis that enables scientists, mathematicians and engineers in a broad range of fields to approximate, through the use of repeated sampling, the output and statistical boundaries for a process with random variability. The Monte Carlo algorithm has been in use for decades and since has become one of the most effective algorithms implemented to examine the limitations and boundaries of their designs or natural phenomena they study. In the field of electrical engineering, Monte Carlo represents one 3

5 of, if not the most effective algorithms or forms of analysis for studying the statistical boundaries thanks to its accuracy and versatility. Being a sampling based algorithm, however, the Monte Carlo algorithm has several key weaknesses including being extremely time consuming for large error variations and not allowing engineers to make fine adjustments to models without having to start the algorithm from the very first step. The Monte Carlo algorithm has also been used to simulate circuits for a very long time by electrical engineers in a field that has experienced exponential growth since its beginnings. Over the last two decades alone there has been a massive boom in electrical engineering that is evident all around us. It is in the last two decades that flash storage technologies have increased storage space more than tenfold and that solid state NAND based storage media has reached the mainstream consumer. These, along with many other of the advances in technology that make our lives possible have been made possible thanks to our ability to shrink the transistor and thereby increase the transistor count in our ICs. Monte Carlo, on the other hand, remains largely the same algorithm that has been used for years to simulate less complex circuits, which makes it obvious that there exist some limitations to how effectively the Monte Carlo algorithm can be used. There exist other methods for stochastic simulation and modeling that have been designed to handle complex systems of variables that describe processes that are seemingly chaotic in nature. One of these such algorithms works by converging polynomial expansions that describe systems to points in space in order to model solutions. Heavily used in fluid dynamics to model stochastic processes, Polynomial Chaos theory is powerful tool for stochastic simulations in not only fluids, but in various other fields where the outcome of a system is dependent on the variability of the previous state. Polynomial Chaos differentiates from the Monte Carlo algorithm in 2 main ways: 1. Unlike Monte Carlo, Polynomial Chaos is not a sampling based algorithm. As such, it is reasonable to predict that the accuracy of the simulation using Polynomial Chaos will not be a function of the number of samples that we are able to produce. What this means for us is that Polynomial Chaos will have a lesser time and computation cost than Monte Carlo. This will especially be important in complex circuit analysis when a single Monte Carlo simulation may require several minutes to complete without taking into account that several thousands of these have to be completed. As circuit complexity increases and the number of Monte Carlo samples required increases Polynomial Chaos will likely hold a significant edge in terms of simulation time. 2. Because Polynomial Chaos relies on a polynomial expansion to simulate a circuit we will end up with an easily tweakable circuit model. Monte Carlo, which relies on sampling, doesn t allow for easy modification of a circuit that is being simulated. However, though Polynomial Chaos has made its way into many branches of science, it has yet to truly enter the world of electrical engineering in any way other than a proof of concepts and theses that have yet to experience much circulation in the field. 4

6 After a semester of hard work, with guidance from Dr. Sourajeet Roy, the four members of the VLSI Stochastic Simulation Tool senior design team have studied the mathematics behind numerical analysis of circuits in both time and frequency domain in order to study and understand the Monte Carlo algorithm along with its strengths and limitations. With these results from our work over the Fall semester, which are explained in detail over the course of Chapter III of our report, we hope to carry our project into the Spring semester, where we will develop a mathematically rigorous method to apply Polynomial Chaos theorems to the stochastic simulation of complex circuits. In our studies of Polynomial Chaos we hope to not only develop a rigorous application of the algorithms into stochastic circuit simulation, we also hope to quantifiably show that Polynomial Chaos is a viable method for stochastic simulation within circuit analysis. Chapter II Summary of Previous Work I. Introduction to previous work The quantification of random error propagation in circuit analysis is a currently studied with the aid of the Monte Carlo algorithms. The Monte Carlo method provides a simple way to model error propagation in a system through repeated sampling, providing accurate and precise results. Monte Carlo is used in various fields including statistics, physics, computing, engineering and more. Monte Carlo provides exceptional accuracy in error modeling, though requiring a significant amount of time due to the computational intensity of having to sample hundreds or thousands of simulations. This becomes an issue especially VLSI analysis where manufacturing takes place at nanometer level, resulting in circuits with billions of transistors which are extremely computationally intensive to model. With Monte Carlo analysis, it is not economical (with regard to time) to test the functionality of billions of transistors in an IC to a great degree of accuracy. Polynomial Chaos, a non-sampling method, was introduced by Norbert Weiner as an alternative to computing uncertainty in a system with degrees of variability. The lack of sampling provides a promising solution to testing billions of component variabilities quickly while still providing accurate statistical bounds to the output. 5

7 II. Monte Carlo Method The Monte Carlo method is currently adopted as the industry standard and can be traced back to Enrico Fermi implementing the algorithm to calculate neutron diffusion in the 1930 s [3]. While the Monte Carlo algorithm then was not as developed or widely used as the algorithm we have today, Fermi s work was considered to be the cornerstone of the modern-day Monte Carlo methods that are widespread throughout the industry. In the early 1940 s, Stan Ulam developed an algorithm that is most similar to modern day Monte Carlo while playing a game of solitaire [3]. He attempted to calculate the likelihood of winning a game based on the layout presented to him. After struggling to use combination calculations, he formed an idea of using computers as tools to calculate the percent chance of winning the layout. [3] Ulam and his colleague John Von Neumann then took this idea and suggested using computer experiments based on chance to research aspects of nuclear physics that produced chaotic results. This project was thus known as the Monte Carlo, which is a reference to the casino in Monaco. [3] Nick Metropolis, a designer for next generation computer controls at the time, became fascinated with the Monte Carlo method and how it handled stochastic modeling. His fascination led him to development of a computing system that was able to better handle the algorithms [3], thus modernizing it yet again. As a result, Monte Carlo began spreading outside of the field of physics and gambling and into other branches of science and modeling research. The fascination and work done on Monte Carlo simulations led to Fermi, Ulam and Von Neuman to publish a paper in 1949, forming the modern sequential bases for Monte Carlo. After this, many papers on Monte Carlo began to appear in all types of different fields and in 1953 [3], the first major Markov chain Monte Carlo (MCMC) paper was published, thus founding the modern algorithm that we are interested in studying. Monte Carlo, still today, continues to develop and grow in other fields such as modern statistics and artificial intelligence. In the last 20 years, the Monte Carlo method has become the golden standard to solve and produce statistical analysis in many fields including engineering, finance, physics, et-cetera due to its low level of complexity and high level of accuracy that it can achieve. III. Polynomial Chaos Theory Norbert Wiener first introduced polynomial chaos (PC) theory as a rescaled version of the Hermite Polynomial in In this form, Hermite polynomials corresponding to a Gaussian distribution were used in conjunction with Gaussian random variables to create independent random variable ξ which are associated with a random event θ [4]. While not much work has been done in modern-day electrical engineering with PC, a paper presented by members of IEEE 6

8 provide possible applications to electrical engineering problems encircling control, measurements, modeling and simulations. To show the relevancy of PC, the academic paper provided an example in which the Resistive Companion Method, which allows for a general format to create automatic model creation and solutions of electrical circuits under uncertainty conditions, was modified to allow for a direct comparison of the Monte Carlo form of analysis vs. newly modified Legendre-Chaos form of analysis. The resistive companion method requires the equations of models to be represented by a single equation known as the resistive comparison as shown below. Resistive Companion Equation I (t) = G(h) *V (t) B(t h) In this case, the trapezoidal rule was applied to calculate the necessary G and B matrix. Afterwards, the necessary component characteristics were implemented into the resistive companion method. Once the models are combined and represented in a system matrix relationship of the resistive companion equation, Kirchhoff s current law is applied to the equation leaving the equation to be solved in terms of V(t) as shown below. V (t) = G(h) 1 B(t h) This equation is then solved and the voltages are placed into a model. This process is then repeated over and over again until the simulation is complete. To add uncertainty to this form of analysis, Polynomial Chaos is introduced. Each of the variables of the resistive companion equation were expanded into its polynomial equivalent as shown below. They were then replaced into the resistive companion equation and applied a Galerkin project leading to the equation shown below where the index l is extended to each element of the bases. 7

9 The paper then tested an RC circuit with the capacitor being the only element having uncertainty. The simulations ran using the Legendre-Chaos with an order of three and a handcoded Monte Carlo analysis leading to results that had no discernable differences between shapes and distributions [4]. In all, the IEEE paper provides a solid proof of concept with regard to the usage of Polynomial Chaos within electrical circuit problems and proved that, given the correct parameters, Polynomial Chaos provides accurate models to stochastic circuits. This paper opened a path to realizing that it is possible to model future uncertainty in electrical engineering using Polynomial Chaos and serves a source of direction for our own project. Though the IEEE report certainly takes a step in the direction in which we aim to move our own project, the report fails to fully develop a complete algorithm for Polynomial Chaos, instead opting for providing simple examples and theory as a proof of concept. With this established, though, it provides us with a backbone that we can extend to simulate more complex circuits such as amplifiers and, potentially, VLSI systems. Chapter III Work for the Semester: Monte Carlo as a Benchmark I. Objectives The Stochastic VLSI simulation tool aims at studying and developing different algorithms to solve circuits with random source error and to keep track of error propagation throughout the circuit. Using Monte Carlo as a test benchmark to Polynomial Chaos theory, it is possible to study different types of circuits and see the level of accuracy and speed Polynomial Chaos can provide for random variations in comparison to Monte Carlo. The results of this project aim to show that Polynomial Chaos is a viable option for predicting error propagation when modeling anything from simple filters to large arrays of transistors in modern day integrated circuits that rely on Very Large Scale Integration (VLSI). Our work over the Fall was mostly focused on creating test benchmarks using the Monte Carlo Method. By using Matlab and HSpice, we were able to create thousands of netlist for specific circuits and simulate them to output voltages at different nodes. Using HSpice toolbox provided by CPPSim System Simulator, it was possible to transfer the data outputted from HSpice to Matlab for statistical computations. Using Monte Carlo gave us an understanding to the pros and cons of using Monte Carlo for error propagation analysis in VLSI. 8

10 II. Formulation of our Code The main component of our project was the scripts that we used to automate the testing of different circuits. In order to be able to create any scripts for testing we required a basic format for a netlist that we could fill with different circuit parameters. HSpice, like any other spice variant, requires a very specific netlist in order to be able to carry out mathematical analysis of a circuit. HSpice utilizes an input netlist to fill matrices that can be used to solve the system of equations that describe a circuit through LU decomposition and integration formulas. Netlists consist of columns of several key components that describe the position and values of circuit elements. For example, the leftmost column describes the type of element using a letter and a number to differentiate between different of the same components. The next two columns describe the nodes between which the different elements are placed, which tells HSpice where to put the attributes of each element in each of the matrices. Our graduate and independent study students, Angela and Xiang, were responsible for working with HSpice and documentation in order to figure out how to model different components in netlists ranging from simple resistors to complicated PMOS models. Once their netlist for each circuit was tested and perfected we were responsible for writing a script to meet three functions a. Generate samples from a Gaussian distribution to model different values of capacitance, inductance, etc. b. Generate a netlist in the format constructed using the different samples in their appropriate rows and columns c. Utilize Matlab to feed text commands to the Windows power shell to operate separate instances of HSpice and run each simulation d. Utilize functions from the HSpice toolbox to extract node voltages from HSpice output files e. Compile statistics from the node voltages including the mean and variance f. Plot the mean and statistical bounds For the most part, coding the scripts was a simple process. Text files are an easy way to write netlists thanks to our ability to open and view them from any computer, which allowed us to test our code easily. Thankfully, Matlab allows for easy creating and modification of text files using the fopen function. The script uses a random number generator to create a number between -1 and 1 that has a normal distribution histogram. This number is then multiplied by the magnitude of each quantity that is to be varied and added to itself in order to create the value with its error. The value could then be added to a string where it belonged in the netlist and each of the strings could be compiled together in order. This process was repeated thousands of times each iteration of the script in order to generate each sample required to converge the results. In order to be able to test each netlist generated we required use of the Windows power shell. By using the external command Matlab function we were able to open instances of HSpice and feed a netlist to each. HSpice would then simulate each circuit, generate an output file and close itself. For each simulation, we utilized HSpice toolbox to pull values from each output file 9

11 and as a floating point integer and storing it in a vector. A pointer was setup to keep track of the location of each element of the vector in order to ensure that the data plotted corresponded to the appropriate output function of the circuit. At the same time as the vectors were being generated for plotting, each node voltage was being taken into account for a mean and standard variation calculation given by the following formulas: III. Testing Procedure for the Monte Carlo Simulation The Monte Carlo method relies heavily on simulating a multitude of netlists created using fixed and variable, Gaussian distributed component values. To start our computation, we created a test netlist in a text file using the structure presented in the HSpice manual. Once completed, we implemented the structure of the netlist into a Matlab script in order to produce of multiple netlists with varying degrees of error. In order to solve the circuits these netlists described, we used HSpice for analysis with the help of the HSpice toolbox within our Matlab Scripts. This proved to be an extremely time consuming portion of our project due to the complexity of the code used in the HSpice toolbox. The toolbox required extra functions written in C in order to certain operations to be available to Matlab. Further complicating things was the fact that data from HSpice is written using a proprietary extension, meaning that it was completely impossible for us to access any of the data from our simulations until the conversion functions from the toolbox were completely working in Matlab. Once our information was stored into our results vector, we evaluated the mean, mean plus 3 standard deviations and mean minus 3 standard deviations which is what tells us the statistical bounds of the circuit being simulated; values that represent the range of outputs that can be expected from the circuit with certain error parameters in its components. We had Matlab repeat this process until we reached the necessary amounts of iterations to create an accurate statistical graph of the variation present. 10

12 IV. RC Circuit Results The first circuit tested was an RC circuit, which composed of a 1 microfarad capacitor, a 10 kilo ohm resistor, and a variable 10 kilo ohm resistor with a 10% Gaussian distributed variance. Due to having a variance of 10%, it was necessary to create different netlists to get an accurate distribution. Once programmed into Matlab we ran an AC analysis with a frequency sweep of 0 to 10 MHz. The results can be seen in Figure 1. As shown by the graph, our analysis produced a graph that accurately shows the statistical bounds that the circuit must meet to be in working order. In general, around 99.9% of possible outputs generated by the circuit with the given error parameters should lie inside the two red lines. With being able to calculate the bounds of error though, we can make any appropriate design changes in order to ensure that the statistical bounds of the circuit will meet any design specifications. Figure 1: RC Filter Plot V. Low Noise Amplifier Results The next circuit shown in Figure 2 that was tested was a Low Noise amplifier with parameters given in Table 1. As opposed to the RC filter, this circuit had variability in its ten dimensions. As shown in the table, each variable has a different percent of variation with a transistor have a max of 20%. To run this simulation successfully, it was necessary to use a 10 nanosecond time interval with 5000 steps. The resolution was set to 10 picoseconds and the AC source was given 1 V amplitude and 1GHz in frequency. The resulting output graph can be seen in Figure 3. Figure 2: LNA Circuit Figure 3: LNA Parameters 11

13 Figure 4: LNA Results The low-noise amplifier was fed with a sinusoidal signal which was appropriately amplified by the simulation. Much like the RC filter from before, the output file for the low noise amplifier shows the mean and the statistical bounds to the circuit. The lower boundary shows some clipping toward the peaks which would probably be due to railing the lower voltage. This is an issue that could be spotted thanks to the Monte Carlo simulation and tells an engineer that it might be necessary to reduce some of the manufacturing variation that goes into making the transistors or other components. One important distinction between the LNA and RC circuit is the computation time that went into each. The RC circuit is extremely simple, consisting of 3 elements and 4 nodes. Testing iterations of this took just a couple of hours. Meanwhile, the circuit for the LNA is significantly more complex with several components, including 3 transistors. The complexity of the mathematical operations required to solve this circuit is orders of magnitude higher than that of the RC circuit and as such required upwards of 6 hours to complete testing. From this we have established a type of benchmark for Polynomial Chaos. Upon developing an expansion for each of the test circuits with Hermite polynomials and plotting the solution to each of the polynomials for each circuit we will be able to compare the statistical bounds generated by each process and compare the two in terms of their accuracy and processing time. VI. Summary of the findings Monte Carlo produces great results that are both accurate and effective. The biggest issue with using Monte Carlo is that it is computationally intensive. To put into perspective, doing and simulations on the RC filter and the LNA circuit took anywhere from 2-8 hours. Our investigation as to the causes of the huge time cost of the simulations started in our VLSI algorithms class, ECE 442. As we learned in class, circuit simulations are carried out by mathematical operations on matrices that contain the information of the circuit that we are interested in. Circuit elements are modeled using stamps that are derived from a modified nodal analysis. Using these equations, we are able to derive a differential equation for each circuit in the following forms. 12

14 Frequency Domain Time Domain The complexity of each system of equations is dependent on the number of elements used for each design, which helps explain why the LNA simulations from our results section took several more hours to complete than the RC filter. Because the LNA had a significant amount more components than the filter, including more complex components such as transistors, the size of the matrices in the system of equations was approximately ten times the size of the matrices for the RC filter. This translates to a longer computation time in HSpice due to the amount of row operations that have to be carried out in order to triangulate each matrix. Furthermore, a circuit with high amounts of variation requires a larger amount of iterations in order to provide allow for the results to converge properly. This is where the biggest limitation of Monte Carlo exists. For extremely large circuits, as is the case in any modern VLSI circuit where transistor count alone can stretch well into the billions, the Monte Carlo algorithm represents an unbelievably high time cost. For the LNA circuit the HSpice computation time we experienced was just 2 seconds per iteration, resulting in just over 8 hours for a total of permutations of variability. Seeing as the computational cost for LU decomposition scales by the cube of the number of rows and columns in a square matrix, it is easy to see the massive issue that becomes computation time. Our LNA circuit had slightly over 10 nodes, meaning that our square matrices had 10 rows and columns. Doubling the amount of nodes to 20 by adding a few extra components increases the computational complexity by a factor of 8, meaning that it is entirely realistic for HSpice computation time for the hypothetical circuit would increase from 2 seconds to over 10 seconds per iteration. That change alone would increase the theoretical computation time to slightly over 40 hours. Having the number of nodes grow into the thousands for a midcomplexity integrated circuit would increase simulation time by thousands. From our mathematical analysis of HSpice and Monte Carlo we were able to extract a lot of information that will be crucial to our evaluation and characterization of Polynomial Chaos as an algorithm for stochastic simulation. Through our hard work we were not only able to fully carry out each of the simulations that was asked of us, but we were able to explore and explain qualitatively and quantifiably the sources of the shortcomings of the Monte Carlo method. 13

15 Chapter IV Conclusions and Future Work I. Future work Now that we have successfully been able to study the inner workings and employ the Monte Carlo simulation we can shift our focus to the employment of Polynomial Chaos to the stochastic simulation of various circuits. As dry-cut and simple as this sounds, it will require a lot of time and effort on the part of everyone to advance the project at a good rate to finish our development and evaluation of Polynomial Chaos by the end of the semester. First, we need to conclude our research into the mathematics behind polynomial expansions and become well acquainted with the different polynomial generating functions that we will be using, primarily the Hermite generator for normal distributions. It is important for everyone in the team to become well acquainted with the minutia of Polynomial Chaos in order to ensure that we can develop and check models for different circuit components. This leads to the next step in our work with Polynomial Chaos: we need to apply our knowledge of modified nodal analysis and polynomial expansions to model circuit elements and entire circuits. We will be working closely with Professor Roy and his Graduate students in order to learn and develop how to model circuits with generating functions. After creating models for the circuits we will be studying, we will need to come up with a way to test our models and obtain descriptive statistics from them. This will require us to come up with more Matlab code to systematically be able to take circuit models as an input and be able to extract statistics and plot the resulting data. This will also require our team to develop an algorithm to be able to compare the output of Polynomial Chaos and compare it to that of Monte Carlo and be able to quantify the differences between the two in order to evaluate Polynomial Chaos. Finally, given that Polynomial Chaos is able to produce accurate and reliable results, we will use our gained modeling skills and employ Polynomial Chaos in a larger scale circuit on the lines of VLSI. This will help validate the ability of Polynomial Chaos to be used as an alternative to Monte Carlo through the use a more complex, industry-like problem. 14

16 II. Conclusion The Fall Semester of 2016 has been a great start to the VLSI project for the team. Over the course of the semester, our team has been able to accomplish everything we planned to get done from the first day all while producing quality work. The senior design team, lead in part by both Luis Martinez and Sergio Graniello on a timed rotation, was able to effectively orchestrate the progress of the project at the pace originally planned for in our project charter. Thanks to the help of our independent study and graduate students as well as the work put in by the senior-year students the team has been able to study the Monte Carlo algorithm in great detail, quantifying both the time and computation costs at different stages through the algorithm and for different scenarios that are relevant to industry today. Furthermore, the team took the time in Professor Roy s VLSI Numerical Algorithms lectures to learn the inner workings of circuit simulation in order to better understand the type of problems and solutions that we are dealing with. We are well on-track to explore the concepts of Polynomial Chaos and use numerical analysis methods and algorithms to employ a Polynomial Chaos in a field where it has never been used before. The team is looking forward to facing challenges in understanding Polynomial Chaos in the second semester and helping take the algorithm a step closer to being used within the electrical engineering industry. Finally, the team hopes to capture the attention of other electrical engineers with our work on Polynomial Chaos by applying the algorithm with precision and efficacy in a large scale circuit to show its effectiveness in modern VLSI. During the second semester the team leadership will remain much the same, with both senior design students leading the time for a set period of time as this method proved effective and balanced over Fall semester. We hope to continue to have our graduate and independent study students working to help us tackle Polynomial Chaos and approach problems from different vantage points to promote creative thinking and excellent engineering within the group. 15

17 Appendix A Abbreviations AC Alternating Current GHz Giga Hertz IC Integrated Circuit IEEE Institute of Electrical and Electronics Engineers LNA Low Noise Amplifier LU Decomposition Lower / Upper matrix Decomposition MCMC Markov Chain Monte Carlo MHz Mega Hertz MNA Modified Nodal Analysis NAND Not-And Logic PC Polynomial Chaos RC Resistor-Capacitor Filter V - Volts VLSI Very Large Scale Integration Appendix B Budget Due to our project consisting mainly of programming and mathematics, many of the tools that we require are already available through the College of Engineering at Colorado State University. For example, Matlab is available on most computers in the College which are available for student use during most hours of the day. Likewise, reading materials consisted largely of theses and/or articles from academic sources such as other universities or the IEEE, so all of these were provided by Dr. Roy at no charge. The only expense that our project required was the purchase of licensing for the HSpice simulation software that our testing relied heavily upon. Half of our budget money, along with money contributed by Dr. Roy from his own research funding, went into purchasing licensing for the HSpice software. Licenses were installed in the two main engineering labs as well as within Dr. Roy s own graduate labs for us to use on-demand. Some money has been left over in the case of other expenses, though as of the end of the first semester we don t foresee or expect any other need for more money for our project due to the nature of the work we are doing. 16

18 Appendix C Timeline Original Timeline September 9 th, 2016 Current Timeline November 4 th, 2016 Detailed breakdown included on following page. 17

19 18

20 Appendix D MatLab Script Sample The following script was used in our testing of the low noise amplifier circuit and therefore provides a good insight into the nature of our work. The copy of the code only represents a fraction of our total work in scripting and programming but is useful as a reference in the explanation of the nature of our code from Chapter III, section II. Since the writing of this paper changes may have been made to the below script. %%Instantiating statistics variables% value= zeros(5001,1); MeanNetlist = zeros(5001,1); u=zeros(5001,1); VAR = zeros(5001,1); %xaxis= 0:1e-12:5e-9; %main code hold on lwbd = 1; hgbd = 500; ln1 = ('.MODEL MOSTRX NMOS ( LEVEL = 49'); ln2 = ('+VERSION = 3.1 TNOM = 27 TOX = 5.8E-9'); ln3 = ('+XJ = 1E-7 NCH = E17 VTH0 = '); ln4 = ('+K1 = K2 = E-3 K3 = 1E-3'); ln5 = ('+K3B = W0 = 1E-7 NLX = E-7'); ln6 = ('+DVT0W = 0 DVT1W = 0 DVT2W = 0'); ln7 = ('+DVT0 = DVT1 = DVT2 = -0.5'); ln8 = ('+U0 = UA = E-9 UB = E-18'); ln9 = ('+UC = E-11 VSAT = E5 A0 = '); ln10 = ('+AGS = B0 = E-8 B1 = -1E-7'); ln11 = ('+KETA = E-3 A1 = 0 A2 = '); ln12 = ('+RDSW = PRWG = PRWB = -0.2'); ln13 = ('+WR = 1 WINT = 0 LINT = E-8'); ln14 = ('+XL = 3E-8 XW = -4E-8 DWG = E-8'); 19

21 ln15 = ('+DWB = E-9 VOFF = NFACTOR = '); ln16 = ('+CIT = 0 CDSC = 2.4E-4 CDSCD = 0'); ln17 = ('+CDSCB = 0 ETA0 = E-3 ETAB = E-4'); ln18 = ('+DSUB = PCLM = PDIBLC1 = 1'); ln19 = ('+PDIBLC2 = E-3 PDIBLCB = -0.1 DROUT = '); ln20 = ('+PSCBE1 = E10 PSCBE2 = E-10 PVAG = E-3'); ln21 = ('+DELTA = 0.01 RSH = 3.7 MOBMOD = 1'); ln22 = ('+PRT = 0 UTE = -1.5 KT1 = -0.11'); ln23 = ('+KT1L = 0 KT2 = UA1 = 4.31E-9'); ln24 = ('+UB1 = -7.61E-18 UC1 = -5.6E-11 AT = 3.3E4'); ln25 = ('+WL = 0 WLN = 1 WW = 0'); ln26 = ('+WWN = 1 WWL = 0 LL = 0'); ln27 = ('+LLN = 1 LW = 0 LWN = 1'); ln28 = ('+LWL = 0 CAPMOD = 2 XPART = 0.5'); ln29 = ('+CGDO = 5.62E-10 CGSO = 5.62E-10 CGBO = 1E-12'); ln30 = ('+CJ = E-3 PB = 0.99 MJ = '); ln31 = ('+CJSW = E-10 PBSW = 0.99 MJSW = '); ln32= ('+CJSWG = 3.29E-10 PBSWG = 0.99 MJSWG = '); ln33 = ('+CF = 0 PVTH0 = E-3 PRDSW = -10'); ln34 = ('+PK2 = E-3 WKETA = E-3 LKETA = E-3)'); FETMODEL = horzcat(ln1,char(10),ln2,char(10),ln3,char(10),ln4,char(10),ln5,char(10),ln6,char(10),ln7,char(10),ln8,cha r(10),ln9,char(10),ln10,char(10),ln11,char(10),ln12,char(10),ln13,char(10),ln14,char(10),ln15,char(10),ln 16,char(10),ln17,char(10),ln18,char(10),ln19,char(10),ln20,char(10),ln21,char(10),ln22,char(10),ln23,cha r(10),ln24,char(10),ln25,char(10),ln26,char(10),ln27,char(10),ln28,char(10),ln29,char(10),ln30,char(10),l n31,char(10),ln32,char(10),ln33,char(10),ln34,char(10)); for n=lwbd:hgbd %Random variables% res1 = num2str(50); 20

22 res2 = num2str(400); res3 = num2str(120 + (.1)*(120)*randn); res4 = num2str(225); ind1 = num2str(13 + (.1)*(13)*randn); ind2 = num2str(.9 + (.1)*(.9)*randn); fet1w = num2str(7.5 + (.1)*(7.5)*randn); fet2w = num2str(7.5 + (.15)*(7.5)*randn); fet3w = num2str(7.5 + (.2)*(7.5)*randn); fet1l = num2str(.25 + (.1)*(.25)*randn); fet2l = num2str(.25 + (.15)*(.25)*randn); fet3l = num2str(.25 + (.2)*(.25)*randn); cap1 = num2str( (.1)*(1.641)*randn); % %Netlist Text Portion% netlist = sprintf('%s.%s', 'netlist','sp'); header = horzcat('cmos Amplifer Netlist',char(10)); V1 = horzcat('v1 1 0 sin(0 1 1G 0 0)',char(10)); V2 = horzcat('v2 6 0 dc 1.19',char(10)); V3 = horzcat('v3 8 0 dc 2.3',char(10)); R1 = horzcat('r1 1 2 ',res1,char(10)); R2 = horzcat('r2 7 8 ',res2,char(10)); R3 = horzcat('r3 8 9 ',res3,char(10)); R4 = horzcat('r4 7 9 ',res4,char(10)); %C1 = horzcat('c ',cap1,'p',char(10)); L1 = horzcat('l1 4 0 ',ind1,'n',char(10)); L2 = horzcat('l2 2 3 ',ind2,'n',char(10)); M1 = horzcat('m MOSTRX ','L=',fet1l,'u ','W=',fet1w,'u as=15p ad=15p ps=19u pd=19u m=80',char(10)); M2 = horzcat('m MOSTRX ','L=',fet2l,'u ','W=',fet2w,'u as=15p ad=15p ps=19u pd=19u m=80',char(10)); 21

23 M3 = horzcat('m MOSTRX ','L=',fet3l,'u ','W=',fet3w,'u as=15p ad=15p ps=19u pd=19u m=40',char(10)); als = horzcat('.tran 1p 5000p',char(10),'.options post',char(10),'.probe TRAN i(l2) v(9)',char(10),'.option PROBE=1',char(10),'.OPTION INTERP=1',char(10),'.OPTION DELMAX=0.001n',char(10),'.end'); fileid = fopen(netlist,'wt'); fprintf(fileid,'%s',header,v1,v2,v3,r1,r2,r3,r4,l1,l2,m1,m2,m3,fetmodel,als); fprintf(netlist, '.OPTION POST \n'); fclose(fileid); %Command Prompt Code% cmd = horzcat('c:\synopsys\hspice_i sp2-1\bin\hspice ',netlist); status = dos(cmd); pause(.4) ac0 = sprintf('netlist.tr0'); x = loadsig(ac0); y = abs(evalsig(x,'v_9')); pause(.3) hold on % subplot(1,2,1) % plot(y) % xlabel('time') % ylabel('voltage') % title('lna Output') %Statistics %Adding voltages for mean u = u+y; % %Calculating VARS vars = (y-u/n).*(y-u/n); VAR = VAR+vars; 22

24 end hold on %calc mean u = u/hgbd; %calc variance VAR =VAR/hgbd; %Calc standard dev std=sqrt(var); %Calculation of standard deviation and mean +/-(std*3)% meanplus3= u +(std*3); meanminus3= u - (std*3); % %Plot of mean and mean +/-(std*3)% % subplot(1,2,2) hold on plot(u, 'k') plot(meanplus3,'r') plot(meanminus3, 'r') title('+3std, Mean, -3std') xlabel('time') ylabel('voltage') set(h,'linewidth',3); set(h1,'linewidth',3); set(h2,'linewidth',3); ***************************************************************************** 23

25 References [1] M. Webster, "Merriam Webster Online Dictionary," [Online]. Available: [Accessed 1 December 2016]. [2] I. Corportaion, "New 7th Gen Intel Core Processor: Built for the Immersive Internet," Intel Corporation, 30 August [Online]. Available: [Accessed 1 December 2016]. [3] U. o. Lancaster, "Monte Carlo: A brief simulation," University of Lancaster, [Online]. Available: [Accessed 28 November 2016]. [4] F. A. Monti, "A Polynomial Chaos Theory Approach to," IEEE. 24

(S&S ) PMOS: holes flow from Source to Drain. from Source to Drain. W.-Y. Choi. Electronic Circuits 2 (09/1)

(S&S ) PMOS: holes flow from Source to Drain. from Source to Drain. W.-Y. Choi. Electronic Circuits 2 (09/1) (S&S 4.1 4.3) NMOS: electrons flow from Source to Drain PMOS: holes flow from Source to Drain In cut-off ( v < V ), i = 0 GS t D NMOS I-V Characteristics In triode, ( v > V but v v v ) GS t DS GS T W 1

More information

Integrated Circuit Design: OTA in 0.5µm Technology

Integrated Circuit Design: OTA in 0.5µm Technology Integrated Circuit Design: OTA in 0.5µm Technology Omar X. Avelar, Omar de la Mora & Diego I. Romero INTEGRATED CIRCUITS DESIGN (ESI108A) Instituto Tecnológico y de Estudios Superiores de Occidente (ITESO)

More information

Study of MOSFET circuit

Study of MOSFET circuit ECE 570 Computer Aided Engineering for Integrated Circuits IC 752 - E Simulation Assignment No. 3 - Due: Oct. 30 (Th.), 2003 Study of MOSFET circuit Simulate the basic circuit of CMOS shift register shown

More information

EE 330 Homework 5 Fall 2018 (This assignment is due Wednesday Sept 19 at 12:00 noon)

EE 330 Homework 5 Fall 2018 (This assignment is due Wednesday Sept 19 at 12:00 noon) EE 330 Homework 5 Fall 2018 (This assignment is due Wednesday Sept 19 at 12:00 noon) Assume the CMOS process is characterized by model parameters VTH=1V and µcox=100µa/v 2. If any other model parameters

More information

EE 330 Homework 5 Spring 2017 (This assignment will not be collected or graded)

EE 330 Homework 5 Spring 2017 (This assignment will not be collected or graded) EE 330 Homework 5 Spring 2017 (This assignment will not be collected or graded) Assume the CMOS process is characterized by model parameters V TH =1V and µc OX =100µA/V 2. If any other model parameters

More information

num1a ** num_1a.sp **SAM *circuit description * bias conditions vds vgs * Mosfet circuit M nch L=.5u w=8u R page 1

num1a ** num_1a.sp **SAM *circuit description * bias conditions vds vgs * Mosfet circuit M nch L=.5u w=8u R page 1 ** num_1a.sp **SAM *circuit description vds 1 0 10 vgs 3 0 5 * Mosfet circuit M1 2 3 0 0 nch L=.5u w=8u R1 1 2 0 ~, Mosfet model.model nch nmos LEVEL = 1 TONS LST NODE POST.DC vds 0 10 100m vgs 0 1.PRNT

More information

APPENDIX D: Binning BSIM3v3 Parameters

APPENDIX D: Binning BSIM3v3 Parameters APPENDIX D: Binning BSIM3v3 Parameters Below is a list of all BSIM3v3 model parameters which can or cannot be binned. All model parameters which can be binned follow the following implementation: P L P

More information

APPENDIX A: Parameter List

APPENDIX A: Parameter List APPENDIX A: Parameter List A.1 BSIM3v3 Model Control Parameters none level BSIMv3 model selector 8 none Mobmod mobmod Mobility model selector 1 none Capmod capmod Flag for the short channel 2 none capacitance

More information

APPENDIX A: Parameter List

APPENDIX A: Parameter List APPENDIX A: Parameter List A.1 BSIM3v3 Model Control Parameters none level BSIMv3 model selector 8 none Mobmod mobmod Mobility model selector 1 none Capmod capmod Flag for the short channel 1 none capacitance

More information

APPENDIX D: Model Parameter Binning

APPENDIX D: Model Parameter Binning APPENDIX D: Model Parameter Binning Below is the information on parameter binning regarding which model parameters can or cannot be binned. All those parameters which can be binned follow this implementation:

More information

Page 1 of (2 pts) What is the purpose of the keeper transistor in a dynamic logic gate?

Page 1 of (2 pts) What is the purpose of the keeper transistor in a dynamic logic gate? Page 1 of 6 EE 434 Exam 2 Fall 2004 Name Instructions: nswer the following questions and solve the following problems. In problems relating to timing or delay calculations, assume you are working in a

More information

Generation and classification of Kerwin Huelsman Newcomb circuits using the DVCC

Generation and classification of Kerwin Huelsman Newcomb circuits using the DVCC INTENATIONAL JOUNAL OF CICUIT THEOY AND APPLICATIONS Int. J. Circ. Theor. Appl. 2009; 37:835 855 Published online 20 June 2008 in Wiley InterScience (www.interscience.wiley.com). DOI: 0.002/cta.503 Generation

More information

MITLL Low-Power FDSOI CMOS Process

MITLL Low-Power FDSOI CMOS Process MITLL Low-Power FDSOI CMOS Process Device Models Revision 2006:2 (September 2006) 2006 by MIT Lincoln Laboratory. All rights reserved. This work was sponsored by the United States Air Force under Air Force

More information

EE115C Winter 2017 Digital Electronic Circuits. Lecture 2: MOS Transistor: IV Model

EE115C Winter 2017 Digital Electronic Circuits. Lecture 2: MOS Transistor: IV Model EE115C Winter 2017 Digital Electronic Circuits Lecture 2: MOS Transistor: IV Model Levels of Modeling Analytical CAD analytical Switch-level sim Transistor-level sim complexity Different complexity, accuracy,

More information

Metal Oxide Semiconductor Field-Effect Transistor (MOSFET) Model

Metal Oxide Semiconductor Field-Effect Transistor (MOSFET) Model Metal Oxide Semiconductor Field-Effect Transistor (MOSFET) Model Old Content - visit altium.com/documentation Modified by Phil Loughhead on 4-Mar-2014 Model Kind Transistor Model Sub-Kind MOSFET SPICE

More information

The Monte Carlo method what and how?

The Monte Carlo method what and how? A top down approach in measurement uncertainty estimation the Monte Carlo simulation By Yeoh Guan Huah GLP Consulting, Singapore (http://consultglp.com) Introduction The Joint Committee for Guides in Metrology

More information

ECEN474/704: (Analog) VLSI Circuit Design Spring 2018

ECEN474/704: (Analog) VLSI Circuit Design Spring 2018 ECEN474/704: (Analog) VLSI Circuit Design Spring 2018 Lecture 4: MOS ransistor Modeling Sam Palermo Analog & Mixed-Signal Center exas A&M University Agenda MOS ransistor Modeling MOS Spice Models MOS High-Order

More information

Transfer Gate and Dynamic Logic Dr. Lynn Fuller Webpage:

Transfer Gate and Dynamic Logic Dr. Lynn Fuller Webpage: ROCHESTER INSTITUTE OF TECHNOLOGY MICROELECTRONIC ENGINEERING Transfer Gate and Dynamic Logic Dr. Lynn Fuller Webpage: http://people.rit.edu/lffeee 82 Lomb Memorial Drive Rochester, NY 14623-5604 Tel (585)

More information

Lab 2: Static Response, Cantilevered Beam

Lab 2: Static Response, Cantilevered Beam Contents 1 Lab 2: Static Response, Cantilevered Beam 3 1.1 Objectives.......................................... 3 1.2 Scalars, Vectors and Matrices (Allen Downey)...................... 3 1.2.1 Attribution.....................................

More information

(Refer Slide Time: 03:41)

(Refer Slide Time: 03:41) Solid State Devices Dr. S. Karmalkar Department of Electronics and Communication Engineering Indian Institute of Technology, Madras Lecture - 25 PN Junction (Contd ) This is the 25th lecture of this course

More information

CS168: The Modern Algorithmic Toolbox Lecture #8: PCA and the Power Iteration Method

CS168: The Modern Algorithmic Toolbox Lecture #8: PCA and the Power Iteration Method CS168: The Modern Algorithmic Toolbox Lecture #8: PCA and the Power Iteration Method Tim Roughgarden & Gregory Valiant April 15, 015 This lecture began with an extended recap of Lecture 7. Recall that

More information

Chapter 5 g m /I D -Based Design

Chapter 5 g m /I D -Based Design Chapter 5 g m /I D -Based Design Ross Walker ECE/CS 5720/6720 Fall 2017 University of Utah Partly adapted from Stanford s analog circuit design sequence Reading: See References at the end of this chapter

More information

Designing Information Devices and Systems I Spring 2018 Lecture Notes Note Introduction to Linear Algebra the EECS Way

Designing Information Devices and Systems I Spring 2018 Lecture Notes Note Introduction to Linear Algebra the EECS Way EECS 16A Designing Information Devices and Systems I Spring 018 Lecture Notes Note 1 1.1 Introduction to Linear Algebra the EECS Way In this note, we will teach the basics of linear algebra and relate

More information

Experiment 4. RC Circuits. Observe and qualitatively describe the charging and discharging (decay) of the voltage on a capacitor.

Experiment 4. RC Circuits. Observe and qualitatively describe the charging and discharging (decay) of the voltage on a capacitor. Experiment 4 RC Circuits 4.1 Objectives Observe and qualitatively describe the charging and discharging (decay) of the voltage on a capacitor. Graphically determine the time constant τ for the decay. 4.2

More information

Introduction to Machine Learning CMU-10701

Introduction to Machine Learning CMU-10701 Introduction to Machine Learning CMU-10701 Markov Chain Monte Carlo Methods Barnabás Póczos Contents Markov Chain Monte Carlo Methods Sampling Rejection Importance Hastings-Metropolis Gibbs Markov Chains

More information

ISE/OR 762 Stochastic Simulation Techniques

ISE/OR 762 Stochastic Simulation Techniques ISE/OR 762 Stochastic Simulation Techniques Topic 0: Introduction to Discrete Event Simulation Yunan Liu Department of Industrial and Systems Engineering NC State University January 9, 2018 Yunan Liu (NC

More information

Notes for course EE1.1 Circuit Analysis TOPIC 4 NODAL ANALYSIS

Notes for course EE1.1 Circuit Analysis TOPIC 4 NODAL ANALYSIS Notes for course EE1.1 Circuit Analysis 2004-05 TOPIC 4 NODAL ANALYSIS OBJECTIVES 1) To develop Nodal Analysis of Circuits without Voltage Sources 2) To develop Nodal Analysis of Circuits with Voltage

More information

Designing Information Devices and Systems I Fall 2018 Lecture Notes Note Introduction to Linear Algebra the EECS Way

Designing Information Devices and Systems I Fall 2018 Lecture Notes Note Introduction to Linear Algebra the EECS Way EECS 16A Designing Information Devices and Systems I Fall 018 Lecture Notes Note 1 1.1 Introduction to Linear Algebra the EECS Way In this note, we will teach the basics of linear algebra and relate it

More information

Figure 1.1: Schematic symbols of an N-transistor and P-transistor

Figure 1.1: Schematic symbols of an N-transistor and P-transistor Chapter 1 The digital abstraction The term a digital circuit refers to a device that works in a binary world. In the binary world, the only values are zeros and ones. Hence, the inputs of a digital circuit

More information

is your scource from Sartorius at discount prices. Manual of Weighing Applications Part 2 Counting

is your scource from Sartorius at discount prices. Manual of Weighing Applications Part 2 Counting Manual of Weighing Applications Part Counting Preface In many everyday areas of operation, the scale or the weight is only a means to an end: the quantity that is actually of interest is first calculated

More information

Simultaneous equations for circuit analysis

Simultaneous equations for circuit analysis Simultaneous equations for circuit analysis This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,

More information

Example: 2x y + 3z = 1 5y 6z = 0 x + 4z = 7. Definition: Elementary Row Operations. Example: Type I swap rows 1 and 3

Example: 2x y + 3z = 1 5y 6z = 0 x + 4z = 7. Definition: Elementary Row Operations. Example: Type I swap rows 1 and 3 Linear Algebra Row Reduced Echelon Form Techniques for solving systems of linear equations lie at the heart of linear algebra. In high school we learn to solve systems with or variables using elimination

More information

Electronics Prof. D C Dube Department of Physics Indian Institute of Technology Delhi

Electronics Prof. D C Dube Department of Physics Indian Institute of Technology Delhi Electronics Prof. D C Dube Department of Physics Indian Institute of Technology Delhi Module No. 07 Differential and Operational Amplifiers Lecture No. 39 Summing, Scaling and Averaging Amplifiers (Refer

More information

Chapter 2 Process Variability. Overview. 2.1 Sources and Types of Variations

Chapter 2 Process Variability. Overview. 2.1 Sources and Types of Variations Chapter 2 Process Variability Overview Parameter variability has always been an issue in integrated circuits. However, comparing with the size of devices, it is relatively increasing with technology evolution,

More information

Deep Algebra Projects: Algebra 1 / Algebra 2 Go with the Flow

Deep Algebra Projects: Algebra 1 / Algebra 2 Go with the Flow Deep Algebra Projects: Algebra 1 / Algebra 2 Go with the Flow Topics Solving systems of linear equations (numerically and algebraically) Dependent and independent systems of equations; free variables Mathematical

More information

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview

ECE 407 Computer Aided Design for Electronic Systems. Simulation. Instructor: Maria K. Michael. Overview 407 Computer Aided Design for Electronic Systems Simulation Instructor: Maria K. Michael Overview What is simulation? Design verification Modeling Levels Modeling circuits for simulation True-value simulation

More information

Very Large Scale Integration (VLSI)

Very Large Scale Integration (VLSI) Very Large Scale Integration (VLSI) Lecture 4 Dr. Ahmed H. Madian Ah_madian@hotmail.com Dr. Ahmed H. Madian-VLSI Contents Delay estimation Simple RC model Penfield-Rubenstein Model Logical effort Delay

More information

Prerequisites: Successful completion of PHYS 2222 General Physics (Calculus) with a grade of C or better.

Prerequisites: Successful completion of PHYS 2222 General Physics (Calculus) with a grade of C or better. Prepared by: P. Blake Reviewed by: M. Mayfield Date prepared: March 13, 2017 C&GE approved: April 17, 2017 Board approved: May 10, 2017 Semester effective: Spring 2018 Engineering (ENGR) 2000 Circuit Analysis

More information

Project 6 - Calculating π and using building models for data

Project 6 - Calculating π and using building models for data Project 6 - Calculating π and using building models for data MTH337 - Fall 2018 Due date: November 29, 2018 Instructor - Rahul Kashyap Part 1 - Calculating the value of π The mathematical constant π is

More information

Electrostatic Breakdown Analysis

Electrostatic Breakdown Analysis Utah State University DigitalCommons@USU Senior Theses and Projects Materials Physics 11-18-2014 Electrostatic Breakdown Analysis Sam Hansen Utah State University Follow this and additional works at: https://digitalcommons.usu.edu/mp_seniorthesesprojects

More information

Excerpt from the Proceedings of the COMSOL Conference 2010 Boston

Excerpt from the Proceedings of the COMSOL Conference 2010 Boston Excerpt from the Proceedings of the COMSOL Conference 21 Boston Uncertainty Analysis, Verification and Validation of a Stress Concentration in a Cantilever Beam S. Kargar *, D.M. Bardot. University of

More information

Longest runs in coin tossing. Teaching recursive formulae, asymptotic theorems and computer simulations

Longest runs in coin tossing. Teaching recursive formulae, asymptotic theorems and computer simulations tmcs-karacsony 2011/11/20 19:51 page 261 #1 9/2 (2011), 261 274 Longest runs in coin tossing. Teaching recursive formulae, asymptotic theorems and computer simulations Zsolt Karácsony and Józsefné Libor

More information

E40M Capacitors. M. Horowitz, J. Plummer, R. Howe

E40M Capacitors. M. Horowitz, J. Plummer, R. Howe E40M Capacitors 1 Reading Reader: Chapter 6 Capacitance A & L: 9.1.1, 9.2.1 2 Why Are Capacitors Useful/Important? How do we design circuits that respond to certain frequencies? What determines how fast

More information

Capacitors. Chapter How capacitors work Inside a capacitor

Capacitors. Chapter How capacitors work Inside a capacitor Chapter 6 Capacitors In every device we have studied so far sources, resistors, diodes and transistors the relationship between voltage and current depends only on the present, independent of the past.

More information

Name Class Date. RC Circuit Lab

Name Class Date. RC Circuit Lab RC Circuit Lab Objectives: Students will be able to Use the ScienceWorkshop interface to investigate the relationship between the voltage remaining across a capacitor and the time taken for the discharge

More information

Matrix Assembly in FEA

Matrix Assembly in FEA Matrix Assembly in FEA 1 In Chapter 2, we spoke about how the global matrix equations are assembled in the finite element method. We now want to revisit that discussion and add some details. For example,

More information

Digital logic signals

Digital logic signals Digital logic signals This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,

More information

Digital logic signals

Digital logic signals Digital logic signals This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,

More information

CS168: The Modern Algorithmic Toolbox Lecture #6: Markov Chain Monte Carlo

CS168: The Modern Algorithmic Toolbox Lecture #6: Markov Chain Monte Carlo CS168: The Modern Algorithmic Toolbox Lecture #6: Markov Chain Monte Carlo Tim Roughgarden & Gregory Valiant April 15, 2015 The previous lecture covered several tools for inferring properties of the distribution

More information

Dr. Julie J. Nazareth

Dr. Julie J. Nazareth Name: Dr. Julie J. Nazareth Lab Partner(s): Physics: 133L Date lab performed: Section: Capacitors Parts A & B: Measurement of capacitance single, series, and parallel combinations Table 1: Voltage and

More information

4.5 Applications of Congruences

4.5 Applications of Congruences 4.5 Applications of Congruences 287 66. Find all solutions of the congruence x 2 16 (mod 105). [Hint: Find the solutions of this congruence modulo 3, modulo 5, and modulo 7, and then use the Chinese remainder

More information

Networks and Systems Prof. V. G. K. Murti Department of Electrical Engineering Indian Institution of Technology, Madras

Networks and Systems Prof. V. G. K. Murti Department of Electrical Engineering Indian Institution of Technology, Madras Networks and Systems Prof. V. G. K. Murti Department of Electrical Engineering Indian Institution of Technology, Madras Lecture - 32 Network Function (3) 2-port networks: Symmetry Equivalent networks Examples

More information

8. Introduction and Chapter Objectives

8. Introduction and Chapter Objectives Real Analog - Circuits Chapter 8: Second Order Circuits 8. Introduction and Chapter Objectives Second order systems are, by definition, systems whose input-output relationship is a second order differential

More information

DOWNLOAD PDF AC CIRCUIT ANALYSIS PROBLEMS AND SOLUTIONS

DOWNLOAD PDF AC CIRCUIT ANALYSIS PROBLEMS AND SOLUTIONS Chapter 1 : Resistors in Circuits - Practice â The Physics Hypertextbook In AC circuit analysis, if the circuit has sources operating at different frequencies, Superposition theorem can be used to solve

More information

Introduction to Computer Tools and Uncertainties

Introduction to Computer Tools and Uncertainties Experiment 1 Introduction to Computer Tools and Uncertainties 1.1 Objectives To become familiar with the computer programs and utilities that will be used throughout the semester. To become familiar with

More information

Calculus at Rutgers. Course descriptions

Calculus at Rutgers. Course descriptions Calculus at Rutgers This edition of Jon Rogawski s text, Calculus Early Transcendentals, is intended for students to use in the three-semester calculus sequence Math 151/152/251 beginning with Math 151

More information

Basic algebra and graphing for electric circuits

Basic algebra and graphing for electric circuits Basic algebra and graphing for electric circuits This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,

More information

Lab 1 Getting Started with EDA Tools

Lab 1 Getting Started with EDA Tools Lab Getting Started with EDA Tools E3-238: Analog LSI Circuits INTRODUCTION The objective of this lab is to familiarize you with the Cadence irtuoso design environment. The irtuoso environment provides

More information

Balancing and Control of a Freely-Swinging Pendulum Using a Model-Free Reinforcement Learning Algorithm

Balancing and Control of a Freely-Swinging Pendulum Using a Model-Free Reinforcement Learning Algorithm Balancing and Control of a Freely-Swinging Pendulum Using a Model-Free Reinforcement Learning Algorithm Michail G. Lagoudakis Department of Computer Science Duke University Durham, NC 2778 mgl@cs.duke.edu

More information

Basic Thermodynamics. Prof. S. K. Som. Department of Mechanical Engineering. Indian Institute of Technology, Kharagpur.

Basic Thermodynamics. Prof. S. K. Som. Department of Mechanical Engineering. Indian Institute of Technology, Kharagpur. Basic Thermodynamics Prof. S. K. Som Department of Mechanical Engineering Indian Institute of Technology, Kharagpur Lecture - 06 Second Law and its Corollaries I Good afternoon, I welcome you all to this

More information

AN INDEPENDENT LOOPS SEARCH ALGORITHM FOR SOLVING INDUCTIVE PEEC LARGE PROBLEMS

AN INDEPENDENT LOOPS SEARCH ALGORITHM FOR SOLVING INDUCTIVE PEEC LARGE PROBLEMS Progress In Electromagnetics Research M, Vol. 23, 53 63, 2012 AN INDEPENDENT LOOPS SEARCH ALGORITHM FOR SOLVING INDUCTIVE PEEC LARGE PROBLEMS T.-S. Nguyen *, J.-M. Guichon, O. Chadebec, G. Meunier, and

More information

From this analogy you can deduce some rules that you should keep in mind during all your electronics work:

From this analogy you can deduce some rules that you should keep in mind during all your electronics work: Resistors, Volt and Current Posted on April 4, 2008, by Ibrahim KAMAL, in General electronics, tagged In this article we will study the most basic component in electronics, the resistor and its interaction

More information

A GUI FOR EVOLVE ZAMS

A GUI FOR EVOLVE ZAMS A GUI FOR EVOLVE ZAMS D. R. Schlegel Computer Science Department Here the early work on a new user interface for the Evolve ZAMS stellar evolution code is presented. The initial goal of this project is

More information

Introduction to Fluid Machines and Compressible Flow Prof. S. K. Som Department of Mechanical Engineering Indian Institute of Technology, Kharagpur

Introduction to Fluid Machines and Compressible Flow Prof. S. K. Som Department of Mechanical Engineering Indian Institute of Technology, Kharagpur Introduction to Fluid Machines and Compressible Flow Prof. S. K. Som Department of Mechanical Engineering Indian Institute of Technology, Kharagpur Lecture - 8 Specific Speed, Governing and Limitation

More information

MITOCW ocw f99-lec01_300k

MITOCW ocw f99-lec01_300k MITOCW ocw-18.06-f99-lec01_300k Hi. This is the first lecture in MIT's course 18.06, linear algebra, and I'm Gilbert Strang. The text for the course is this book, Introduction to Linear Algebra. And the

More information

Announcements. CS 188: Artificial Intelligence Fall Causality? Example: Traffic. Topology Limits Distributions. Example: Reverse Traffic

Announcements. CS 188: Artificial Intelligence Fall Causality? Example: Traffic. Topology Limits Distributions. Example: Reverse Traffic CS 188: Artificial Intelligence Fall 2008 Lecture 16: Bayes Nets III 10/23/2008 Announcements Midterms graded, up on glookup, back Tuesday W4 also graded, back in sections / box Past homeworks in return

More information

USC-ISI. The MOSIS Service. BSIM3v3.1 Model. Parameters Extraction and Optimization. October 2000

USC-ISI. The MOSIS Service. BSIM3v3.1 Model. Parameters Extraction and Optimization. October 2000 USC-ISI The MOSIS Service BSIM3v3.1 Model Parameters Extraction and Optimization October 000 Henok Abebe ance C.Tyree Table of Contents 1. Introduction and Motivation: -----------------------------------------------1.

More information

PROBLEMS. PDF processed with CutePDF evaluation edition

PROBLEMS. PDF processed with CutePDF evaluation edition 114 Chapter 3 Built-In MATLAB Functions PROBLEMS Elementary Math Functions 3.1 Find the cube root of -5, both by using the nthroot function and by raising -5 to the 1/3 power. Explain the difference in

More information

Quantum Mechanics- I Prof. Dr. S. Lakshmi Bala Department of Physics Indian Institute of Technology, Madras

Quantum Mechanics- I Prof. Dr. S. Lakshmi Bala Department of Physics Indian Institute of Technology, Madras Quantum Mechanics- I Prof. Dr. S. Lakshmi Bala Department of Physics Indian Institute of Technology, Madras Lecture - 6 Postulates of Quantum Mechanics II (Refer Slide Time: 00:07) In my last lecture,

More information

Calculus Relationships in AP Physics C: Electricity and Magnetism

Calculus Relationships in AP Physics C: Electricity and Magnetism C: Electricity This chapter focuses on some of the quantitative skills that are important in your C: Mechanics course. These are not all of the skills that you will learn, practice, and apply during the

More information

HW9 Concepts. Alex Alemi November 1, 2009

HW9 Concepts. Alex Alemi November 1, 2009 HW9 Concepts Alex Alemi November 1, 2009 1 24.28 Capacitor Energy You are told to consider connecting a charged capacitor together with an uncharged one and told to compute (a) the original charge, (b)

More information

(Refer Slide Time: 1:22)

(Refer Slide Time: 1:22) Analog Electronic Circuits Professor S. C. Dutta Roy Department of Electrical Engineering Indian Institute of Technology Delhi Lecture no 19 Module no 01 Problem Session 5 on Frequency Response of Small

More information

Monte Carlo Methods. Part I: Introduction

Monte Carlo Methods. Part I: Introduction Monte Carlo Methods Part I: Introduction Spring Semester 2013/14 Department of Applied Mathematics, University of Crete Instructor: Harmandaris Vagelis, email: vagelis@tem.uoc.gr Course web page: http://www.tem.uoc.gr/~vagelis/courses/em385/

More information

Planning With Information States: A Survey Term Project for cs397sml Spring 2002

Planning With Information States: A Survey Term Project for cs397sml Spring 2002 Planning With Information States: A Survey Term Project for cs397sml Spring 2002 Jason O Kane jokane@uiuc.edu April 18, 2003 1 Introduction Classical planning generally depends on the assumption that the

More information

Communication Engineering Prof. Surendra Prasad Department of Electrical Engineering Indian Institute of Technology, Delhi

Communication Engineering Prof. Surendra Prasad Department of Electrical Engineering Indian Institute of Technology, Delhi Communication Engineering Prof. Surendra Prasad Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 41 Pulse Code Modulation (PCM) So, if you remember we have been talking

More information

Lecture 6: Time-Dependent Behaviour of Digital Circuits

Lecture 6: Time-Dependent Behaviour of Digital Circuits Lecture 6: Time-Dependent Behaviour of Digital Circuits Two rather different quasi-physical models of an inverter gate were discussed in the previous lecture. The first one was a simple delay model. This

More information

Hydraulics Prof Dr Arup Kumar Sarma Department of Civil Engineering Indian Institute of Technology, Guwahati

Hydraulics Prof Dr Arup Kumar Sarma Department of Civil Engineering Indian Institute of Technology, Guwahati Hydraulics Prof Dr Arup Kumar Sarma Department of Civil Engineering Indian Institute of Technology, Guwahati Module No # 08 Pipe Flow Lecture No # 04 Pipe Network Analysis Friends, today we will be starting

More information

A Simple Model for Sequences of Relational State Descriptions

A Simple Model for Sequences of Relational State Descriptions A Simple Model for Sequences of Relational State Descriptions Ingo Thon, Niels Landwehr, and Luc De Raedt Department of Computer Science, Katholieke Universiteit Leuven, Celestijnenlaan 200A, 3001 Heverlee,

More information

1 Computational problems

1 Computational problems 80240233: Computational Complexity Lecture 1 ITCS, Tsinghua Univesity, Fall 2007 9 October 2007 Instructor: Andrej Bogdanov Notes by: Andrej Bogdanov The aim of computational complexity theory is to study

More information

Resistance Post-Trim Drift Index for Film Resistors to be Trimmed Abstract Introduction

Resistance Post-Trim Drift Index for Film Resistors to be Trimmed Abstract Introduction Resistance Post-Trim Drift Index for Film Resistors to be Trimmed (K. Schimmanz, Numerical and Applied Mathematics, Technical University Cottbus, P.O. Box 10 13 44, Cottbus 03013 Germany schimm@math.tu-cottbus.de

More information

Lecture 5: DC & Transient Response

Lecture 5: DC & Transient Response Lecture 5: DC & Transient Response Outline q Pass Transistors q DC Response q Logic Levels and Noise Margins q Transient Response q RC Delay Models q Delay Estimation 2 Activity 1) If the width of a transistor

More information

(Refer Slide Time: 00:01:30 min)

(Refer Slide Time: 00:01:30 min) Control Engineering Prof. M. Gopal Department of Electrical Engineering Indian Institute of Technology, Delhi Lecture - 3 Introduction to Control Problem (Contd.) Well friends, I have been giving you various

More information

Follow links Class Use and other Permissions. For more information, send to:

Follow links Class Use and other Permissions. For more information, send  to: COPYRIGHT NOTICE: Stephen L. Campbell & Richard Haberman: Introduction to Differential Equations with Dynamical Systems is published by Princeton University Press and copyrighted, 2008, by Princeton University

More information

SOLVING POWER AND OPTIMAL POWER FLOW PROBLEMS IN THE PRESENCE OF UNCERTAINTY BY AFFINE ARITHMETIC

SOLVING POWER AND OPTIMAL POWER FLOW PROBLEMS IN THE PRESENCE OF UNCERTAINTY BY AFFINE ARITHMETIC SOLVING POWER AND OPTIMAL POWER FLOW PROBLEMS IN THE PRESENCE OF UNCERTAINTY BY AFFINE ARITHMETIC Alfredo Vaccaro RTSI 2015 - September 16-18, 2015, Torino, Italy RESEARCH MOTIVATIONS Power Flow (PF) and

More information

Prefix Prefix Scaling Example EXP Name

Prefix Prefix Scaling Example EXP Name MATHEMATICS PRIMER Introduction This part of the course of study toward the Radio Communications Examination (RCE) is primarily concerned with ensuring that students can cope with the mathematics required.

More information

CONTENTS. Preface List of Symbols and Notation

CONTENTS. Preface List of Symbols and Notation CONTENTS Preface List of Symbols and Notation xi xv 1 Introduction and Review 1 1.1 Deterministic and Stochastic Models 1 1.2 What is a Stochastic Process? 5 1.3 Monte Carlo Simulation 10 1.4 Conditional

More information

Introducing GIS analysis

Introducing GIS analysis 1 Introducing GIS analysis GIS analysis lets you see patterns and relationships in your geographic data. The results of your analysis will give you insight into a place, help you focus your actions, or

More information

BRIDGE CIRCUITS EXPERIMENT 5: DC AND AC BRIDGE CIRCUITS 10/2/13

BRIDGE CIRCUITS EXPERIMENT 5: DC AND AC BRIDGE CIRCUITS 10/2/13 EXPERIMENT 5: DC AND AC BRIDGE CIRCUITS 0//3 This experiment demonstrates the use of the Wheatstone Bridge for precise resistance measurements and the use of error propagation to determine the uncertainty

More information

Lab E3: The Wheatstone Bridge

Lab E3: The Wheatstone Bridge E3.1 Lab E3: The Wheatstone Bridge Introduction The Wheatstone bridge is a circuit used to compare an unknown resistance with a known resistance. The bridge is commonly used in control circuits. For instance,

More information

VLSI Design, Fall Logical Effort. Jacob Abraham

VLSI Design, Fall Logical Effort. Jacob Abraham 6. Logical Effort 6. Logical Effort Jacob Abraham Department of Electrical and Computer Engineering The University of Texas at Austin VLSI Design Fall 207 September 20, 207 ECE Department, University of

More information

EE5780 Advanced VLSI CAD

EE5780 Advanced VLSI CAD EE5780 Advanced VLSI CAD Lecture 4 DC and Transient Responses, Circuit Delays Zhuo Feng 4.1 Outline Pass Transistors DC Response Logic Levels and Noise Margins Transient Response RC Delay Models Delay

More information

Physics 2A Chapter 1 Notes - Units Fall 2017

Physics 2A Chapter 1 Notes - Units Fall 2017 A summary of the topics in the following notes: Fundamental quantities are time, length and mass. Every other definition we will make this semester will be a combination of these. An expressed quantity

More information

Announcements. Inference. Mid-term. Inference by Enumeration. Reminder: Alarm Network. Introduction to Artificial Intelligence. V22.

Announcements. Inference. Mid-term. Inference by Enumeration. Reminder: Alarm Network. Introduction to Artificial Intelligence. V22. Introduction to Artificial Intelligence V22.0472-001 Fall 2009 Lecture 15: Bayes Nets 3 Midterms graded Assignment 2 graded Announcements Rob Fergus Dept of Computer Science, Courant Institute, NYU Slides

More information

Algebraic substitution for electric circuits

Algebraic substitution for electric circuits Algebraic substitution for electric circuits This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,

More information

Algebraic substitution for electric circuits

Algebraic substitution for electric circuits Algebraic substitution for electric circuits This worksheet and all related files are licensed under the Creative Commons Attribution License, version 1.0. To view a copy of this license, visit http://creativecommons.org/licenses/by/1.0/,

More information

C.K. Ken Yang UCLA Courtesy of MAH EE 215B

C.K. Ken Yang UCLA Courtesy of MAH EE 215B Decoders: Logical Effort Applied C.K. Ken Yang UCLA yang@ee.ucla.edu Courtesy of MAH 1 Overview Reading Rabaey 6.2.2 (Ratio-ed logic) W&H 6.2.2 Overview We have now gone through the basics of decoders,

More information

MEMS Tuning-Fork Gyroscope Mid-Term Report Amanda Bristow Travis Barton Stephen Nary

MEMS Tuning-Fork Gyroscope Mid-Term Report Amanda Bristow Travis Barton Stephen Nary MEMS Tuning-Fork Gyroscope Mid-Term Report Amanda Bristow Travis Barton Stephen Nary Abstract MEMS based gyroscopes have gained in popularity for use as rotation rate sensors in commercial products like

More information

This chapter focuses on the study of the numerical approximation of threedimensional

This chapter focuses on the study of the numerical approximation of threedimensional 6 CHAPTER 6: NUMERICAL OPTIMISATION OF CONJUGATE HEAT TRANSFER IN COOLING CHANNELS WITH DIFFERENT CROSS-SECTIONAL SHAPES 3, 4 6.1. INTRODUCTION This chapter focuses on the study of the numerical approximation

More information

The Rayleigh Pulse Forming Network

The Rayleigh Pulse Forming Network The Rayleigh Pulse Forming Network The ideal power supply for many high current applications is one which supplies a square voltage wave over a short, but predetermined, time. Since these applications

More information

Computational Fluid Dynamics Prof. Dr. Suman Chakraborty Department of Mechanical Engineering Indian Institute of Technology, Kharagpur

Computational Fluid Dynamics Prof. Dr. Suman Chakraborty Department of Mechanical Engineering Indian Institute of Technology, Kharagpur Computational Fluid Dynamics Prof. Dr. Suman Chakraborty Department of Mechanical Engineering Indian Institute of Technology, Kharagpur Lecture No. #12 Fundamentals of Discretization: Finite Volume Method

More information