Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Introduction to Computer Architecture: Building Blocks of Digital Circuits and Computers -, Exams of Computer Architecture and Organization

An introduction to computer architecture i (cs231) taught by laxmikant kale at the university of texas at austin in fall 2003. The course covers the fundamentals of digital circuits, focusing on how to design simple computers and digital circuits other than computers. The document starts with an overview of the course objectives and the modest switch, which is the foundation of all digital circuits. It then moves on to discuss and and or gates, the basic building blocks of digital circuits. The document also covers how to make switches using various methods and the role of transistors in modern technology. Lastly, it touches upon the importance of size and switching and propagation delay in switches and gates.

Typology: Exams

Pre 2010

Uploaded on 03/12/2009

koofers-user-24j
koofers-user-24j 🇺🇸

10 documents

1 / 25

Toggle sidebar

Related documents


Partial preview of the text

Download Introduction to Computer Architecture: Building Blocks of Digital Circuits and Computers - and more Exams Computer Architecture and Organization in PDF only on Docsity! CS231: Computer Architecture I Laxmikant Kale Fall 2003 Introduction to CS231 1 Course Objectives • To learn how to design digital (i.e. boolean) circuits • To Understand how a simple computer works – Its hardware components – What they are built from – How to design them – Also, how to design digital circuits other than computers • Today – A grand overview – How have we been able to make a “Machine” that can do complex things • Add and multiply really fast • Weather forecast, design of medicinal drugs • Speech recognition, Robotics, Artificial Intelligence.. • Web browsers, internet communication protocols • Starting at (almost) the lowest level – Gates to Gates Introduction to CS231 4 Lets use them creatively Output is high if both the inputs input1 AND input2 are high If either of the inputs is low, the output is low. Input1 Input2 Output This is called an AND gate Now, can you make an OR gate with switches? Introduction to CS231 5 OR Gate Input1 Input2 Output Output is low iff both inputs are low I.e. Output is high if either of the inputs (or both) are high (input1 OR input2) Introduction to CS231 6 Basic Gates • There are three basic kinds of logic gates AND of two inputs OR of two inputs NOT (complement) on one input Operation: Logic gate: •Two Questions: •How can we implement such switches? •What can we build with Gates? And How? Introduction to CS231 9 What can we do with Gates? • What do you want to do? • Let us say we want to add numbers automatically • What are numbers? How are they represented – Roman XVII – Decimal: 17 • How to add them, depends on how they are represented – One representation may be better than other for adding • Try adding two long roman numbers – Decimal is better but • We have only two “values”, high and low, in our gates – So, • Let us think about why decimal is better • And can we design a representation that allows us to use the binary (hi/low) gates that we have. Introduction to CS231 10 Decimal review • Numbers consist of a bunch of digits, each with a weight • These weights are all powers of the base, which is 10. We can rewrite this: • To find the decimal value of a number, multiply each digit by its weight and sum the products. 1 6 2 . 3 7 5 Digits 100 10 1 1/10 1/100 1/1000 Weights 1 6 2 . 3 7 5 Digits 102 101 100 10-1 10-2 10-3 Weights (1 x 102) + (6 x 101) + (2 x 100) + (3 x 10-1) + (7 x 10-2) + (5 x 10-3) = 162.375 Now we can see why addition is easier with decimal system than the roman system. The idea of positional weights and carry! Introduction to CS231 11 Nothing special about 10! • Decimal system (and the idea of “0”) was invented in India around 100- 500AD • Why did they use 10? Anything special about it? – Not really. – Probably the fact that we have 10 fingers influenced this • Will a base other than 10 work? – Sure: 345 in base 9 = 5 +9*4 + 92 *3 = 284 in base 10 • Base 9 has only 9 symbols: 1, 2, 3, 4, 5, 6, 7, 8, 0 – What about base 2? (1 and 0) • 1101 in base 2: 1 + 2*0 + 4*1 + 8*1 = 13 • Base 2 system will work for our gates! – Base 2 Addition: – Compare this with decimal addition 10011 01100 11001 + Introduction to CS231 14 Doing addition with gates • Lets do simple stuff first: – Can we add two numbers each with just 1 bit? • Bit: binary digit – 0+0 = 0, 0+1 = 1 , 1+0 = 1, and 1+1 = ??? • 2. But 2 is not a symbol. • 10 (just as 5 + 5 is 10 in decimal) • Result is 0 with 1 carried over to the next bit.. – Whats 1 and 0? High and low voltage respectively. Result Carry Half adder Introduction to CS231 15 Half adder: result Result This circuit is so common, that it has a name an symbol as a gate by itself: Exclusive OR Exclusive OR Output is 1 iff exactly one of the 2 inputs is 1 Introduction to CS231 16 Adding two bits • A half adder is used to add two bits. • The result consists of two bits: a sum (the right bit) and a carry out (the left bit) • Here is the circuit and its block symbol 0 + 0 = 0 0 + 1 = 1 1 + 0 = 1 1 + 1 = 10 Introduction to CS231 19 A 4-bit adder • Four full adders together can make a 4-bit adder • There are nine total inputs to the 4-bit adder: – two 4-bit numbers, A3 A2 A1 A0 and B3 B2 B1 B0 – an initial carry in, CI • The five outputs are: – a 4-bit sum, S3 S2 S1 S0 – a carry out, CO Introduction to CS231 20 An example of 4-bit addition • Let’s put our initial example into this circuit: A=1011, B=1110 • Step 1: Fill in all the inputs, including CI=0 • Step 2: The circuit produces C1 and S0 (1 + 0 + 0 = 01) • Step 3: Use C1 to find C2 and S1 (1 + 1 + 0 = 10) • Step 4: Use C2 to compute C3 and S2 (0 + 1 + 1 = 10) • Step 5: Use C3 to compute CO and S3 (1 + 1 + 1 = 11) • The final answer is 11001 1 1 1 0 1 1 0 1 0 1 1 0 0 1 011 Introduction to CS231 21 Now that we can add, how about some memory? • We want to save results computed before, and recall them in a later calculation, for example • Gates help us build memory • How can a circuit “remember” anything on its own? – After all, the values on the wires are always changing, as outputs are generated in response to inputs. • The basic idea is feedback: we make a “loop” in the circuit, so the circuit outputs are inputs as well When S and R are 0, Q is “stable”: whatever it was, it stays in that state. Ergo : memory. When S is 1 and R is 0, Q becomes 1 When R is 1 and S is 0, Q becomes 0 Set and Reset inputs…
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved