EXPERIMENT 4. Parallel Adders, Subtractors, and Complementors
|
|
|
- Andrea Shelton
- 9 years ago
- Views:
Transcription
1 EXPERIMENT 4. Parallel Adders, Subtractors, and Complementors I. Introduction I.a. Objectives In this experiment, parallel adders, subtractors and complementors will be designed and investigated. In the first and second parts of the experiment you will implement your circuits using ICs and connecting them on the breadboard. In the rest of the experiment, you will use Quartus II 14.1 software and FPGA to implement the circuits. In this experiment, you need to download your designs to the FPGA and check the results by physical means, i.e., using LEDs and oscilloscope. Another objective of this experiment is to expose you the hierarchical design method for logic circuits. I.b. Background Digital computers perform a number of arithmetic operations for information processing. These tasks are performed using various arithmetic logic circuits. The most commonly used basic arithmetic circuits are adders, subtractors and complementors. A short description of these circuits is given below. Adders: Adders are divided into two groups: half adders and full adders. Full adders are used to add three bits where one of them is carry from the preceding adder. They have two outputs: sum and carry to the next stage. In half adders, only two inputs are considered as operands; hence carry inputs are ignored. The truth table of a full adder is given in Table 4.1. Two of the input variables, denoted by Xk and Yk, represent two significant bits to be added. The third input, Ck-1 represents the carry from the previous lower significant position. Experiment 4: Parallel Adders, Subtractors, and Complementors. Revised by Yunus Can Gültekin, Mustafa Kangül, and Barış Bayram. METU 2015 All Rights Reserved. ( [email protected]) Page 1 of 24
2 Ck-1 Xk Yk FULL ADDER Sk Ck Figure 4.1 Block diagram of a full adder Table 4.1 Truth table of a full adder (Xk+Yk) Xk Yk Ck-1 Sk Ck Subtractors: Subtractors are similar to adders. There are full subtractors with three inputs one of which is the borrow from the preceding subtractor. The two outputs are difference and borrow to the succeeding unit. Half subtractors do not have a borrow input. Figure 4.2 shows the block diagram of a full subtractor and Table 4.2 gives its truth table. Bk-1 Xk Yk FULL SUBTRACTOR Dk Bk Figure 4.2 Block diagram of a full subtractor EE 314 Digital Electronics Laboratory Page 2 of 24
3 Table 4.2 Truth table of a full subtractor (Xk-Yk) Xk Yk Bk-1 Bk Dk Complementors: Complementor units are of two types: 1 s complement units and 2 s complement units. The truth tables for 2-bit 1 s complement and 2 s complement units are given in Table 4.3. Table 4.3 Truth table of complementors Input Number 1 s Complement 2 s Complement Unit Unit Note: 2 s complement of a number is its 1 s complement plus binary one. The arithmetic units of computers usually employ the principles of either 2 s complement arithmetic or 1 s complement arithmetic. Such units accept two operands (positive or negative) and perform addition. If subtraction is desired subtrahend must first be complemented, then added. 2 s complement arithmetic is the most widely used register arithmetic. Some examples are given below: i. Sign-magnitude arithmetic: EE 314 Digital Electronics Laboratory Page 3 of 24
4 ii. 1 s complement arithmetic: (1 s complement of 0101) iii. 2 s complement arithmetic: (2 s complement of 0101) (Ignore the carry bit.) In signed magnitude arithmetic, the most significant bit of an n-bit word is the sign bit. The magnitude can be determined from the remaining n-1 bits. If the result of a 2 s complement arithmetic operation exceeds the range of the available bit length (overflow for a large positive number or for a small negative number), then a wrong (invalid) result will be obtained. The presence of an erroneous result can be detected by the help of a combinational circuit. EE 314 Digital Electronics Laboratory Page 4 of 24
5 II. Preliminary Work 1. Read sections 1.5 and 4.4 from the textbook Digital Design by M. Mano (3rd Ed., 2002, Prentice Hall). 2. Design a half adder and a half subtractor using minimum number of gates using two-input NAND (7400) and two-input XOR (7486). State the truth tables of both of your designs. Draw and explain your designs in detail. 3. Design a full adder and a full subtractor using minimum number of two-input NAND (7400) and two-input XOR (7486) gates. Show how you can use half adders and half subtractors to build a full adder and full subtractor. Show and explain your designs in detail. 4. Design a 4-bit binary adder by using full adders. You don t have to draw each full adder in gate level. Instead, you can put full adder blocks with appropriate input and output connections. At the end, your design should include 9 inputs representing two 4-bit numbers and a carry in, and 5 outputs representing one 4-bit number (which is the sum) and a carry out. 5. Design a 4-bit 2 s complement unit with a control signal E such that When E=0 output is the 2 s complement of the input; When E=1 output is the same as the input. You can use two-input NAND (7400), 4-bit binary adder (7483) and two-input XOR (7486) gates. 6. Design an arithmetic unit that accepts 4-bit wide parallel numbers (X, Y) and an enable signal (E). Assume that input numbers are represented in 2 s complement arithmetic. Enable signal E has a function such that When E=1 unit performs addition (X+Y); When E=0 unit performs subtraction (X-Y). You can use two-input NAND (7400), 4-bit binary adder (7483) and two-input XOR (7486) gates. EE 314 Digital Electronics Laboratory Page 5 of 24
6 7. Consider the circuit you designed in Part 6. Prepare a table showing the state of the outputs when input numbers and control signal are given as shown in Table 4.4. Table 4.4 Input signals that should be applied to the circuit designed in part 6 E=1 X=0110 Y=0011 E=1 X=1010 Y=0111 E=1 X=0111 Y=0001 E=1 X=-5 Y=8 E=0 X=0110 Y=0001 E=0 X=1001 Y=0110 E=0 X=0011 Y=0100 E=0 X=-1 Y= In this experiment, you are expected to learn the fundamentals of hierarchical logic design and use bus structures as inputs and outputs. This question s motivation is to give you an insight about the experimental work. Consider the 4-bit Fibonacci Number Checker that you have designed in the Preliminary Work of Experiment 3. Implement it on Quartus II software. Using the experimental work part of the Experiment 4 (III.b.2 Creating the symbol) create a symbol of your design (namely, Fibonacci Number Checker block, FNC block). Using that symbol, design and implement a 4-bit Not-A-Fibonacci Number Checker (which gives 1 as the output when the input is not a Fibonacci number and vice versa). Note: Your design can be composed of a NOT gate and an FNC block. Create a 4-bit bus structure with the help of the experimental work of this document (III.c.2 Creating a Bus). This bus will be used as the input of your Not-An-FNC circuit. Simulate your design with different inputs. The details of including bus structured inputs to the simulation window are given in the same experimental procedure. Add your results to your preliminary work. Schematic designs of both FNC and Not-An-FNC, and the simulation results should be attached. EE 314 Digital Electronics Laboratory Page 6 of 24
7 III. Experimental Work III.a. Testing Your Designs on the Breadboard 1. Construct and test the half adder and half subtractor that you designed in Part 2 of the preliminary work using ICs connected onto a breadboard. 2. Construct and test the full adder and full subtractor that you designed in Part 3 of the preliminary work using ICs connected onto a breadboard. III.b. Designing 4-Bit Binary Adder Using Hierarchical Design Method 3. For the rest of the experiment, you will use Quartus II software and Altera FPGAs. As you remember, you were required to make the designs of Part 4 and Part 5 of the preliminary work using 7483 IC, namely the 4-bit binary adder. Now, you will design a 4-bit binary adder and form a component out of it using the hierarchical design method. Then, you will add it to the symbol directories of your higher level designs that you will perform later in the experiment, and use it. Note that only XOR and NAND gates will be used in the design of your 4-bit binary adder. In this part until you learn how to design hierarchically-, you will present your understanding of proper FPGA and Quartus usage with minimally guided study. III.b.1 Implementing the full-adder 4. Create a new schematic file and save it as fulladder in the folder fulladder in the folder exp4 on the desktop. Don t forget to click add file to current project option. Note: We will enter the hierarchical design as multiple projects. We ll start with the lowest-level block and then work our way up to the top-level block. The lowest-level block in this work is the full adder. Each different block design will be represented as a new project. Hierarchical designs may also be entered as a single project but lower level block testing is more difficult. EE 314 Digital Electronics Laboratory Page 7 of 24
8 5. Based on the logic circuit design in your Preliminary Work Part 3, create the full adder by adding appropriate components, input/output pins and wiring. 6. Save the schematic with the name fulladder and compile the design. III.b.2 Creating the symbol 7. After determining that the current project functions correctly in the simulation, you will need to create a symbol for this block to be able to use it in a higher-level of the design hierarchy. 8. Open File > Create/Update > Create Symbol Files for Current File as it s shown on Figure 4.3. Figure 4.3 Symbol creation window EE 314 Digital Electronics Laboratory Page 8 of 24
9 9. This symbol should have the same file name as the design file (fulladder) but will have a.bsf file extension as it s shown on Figure 4.4. It will be saved in the same project folder. Click Save. Click OK. Figure 4.4 Saving newly created symbol III.b.3 Starting a New Design Project for the Higher-Level Block Note: This hierarchical design is being entered as multiple projects. We will now work on a higher-level project. The higher-level block in this work is 4-bit adder. Each different block design will be represented as a new project. Lower-level design blocks will be contained in this project. 10. Create a new directory in the folder exp4 with the name fourbitadder. Then create a new schematic file and save it as fourbitadder in the folder fourbitadder in the folder exp4 on the desktop. Don t forget to click add file to current project option. Note: A new directory should be created for each separate design project. This will be a different directory name then was used for the lower-level project that we just completed. EE 314 Digital Electronics Laboratory Page 9 of 24
10 Note: The project name must be different than the lower-level project. We cannot use duplicate design file names in a project and the lower-level project will be contained in this new project. 11. When the Add Files dialog box is opened, click the Browse button to locate the working directory for the lower-level project as it s shown on Figure 4.5. We will now identify the files to be included in this top-level project. Figure 4.5 Adding symbol file to the new project 12. Use the Select File dialog box to locate the lower-level project. Remember that it will be in a different folder. Navigate to the lower-level project directory (...desktop/exp4/fulladder which probably is already selected). Select the project name (fulladder) and click Open. As the file name for the design file of the lower-level project appears in the box, click Add to move this file name to the list of selected files. 13. Click Next, and complete the usual procedure. EE 314 Digital Electronics Laboratory Page 10 of 24
11 III.b.4 Implementing the 4-bit binary adder 14. Based on the logic circuit design in your Preliminary Work Part 4, create the 4-bit binary adder by adding appropriate components, input/output pins and wiring. Note: To use the lowest-level design (fulladder); click the Symbol Tool button (gate symbol) on the top of the Block Diagram/Schematic File editor window. Click Browse button (...) and locate the project directory (...desktop/exp4/fulladder) of the lowest-level fulladder file as it s shown on Figure 4.6. fulladder file selected, click Open. Figure 4.6 Using previously created symbol Note: By the way, you can view the schematic for the lowest-level fulladder block by double clicking on any one of the block symbols. The schematic will open in another Block Diagram/Schematic File window. Full-adder block should be seen like in the Figure 4.7. EE 314 Digital Electronics Laboratory Page 11 of 24
12 Figure 4.7 Full-adder symbol in your library 15. Save the schematic with the name fourbitadder and compile the design. III.b.5 Creating the symbol 16. By the same method that you use for the full-adder symbol, create symbol for 4-bit binary adder. This symbol should have the same name as the design file (fourbitadder) but will have a.bsf file extension. It will be saved in the same project folder. Click Save. Click OK. III.c. Designing the Complementor Note: This hierarchical design is being entered as multiple projects. We will now work on the top-level projects. The first top-level block in this work is the Complementor. Each different block design will be represented as a new project. Lower-level design blocks will be contained in these projects. 17. Create a new directory in the folder exp4 with the name fourbitadder. Then create a new schematic file and save it as complementor in the folder complementor in the folder exp4 on the desktop. Don t forget to click add file to current project option. Note: A new directory should be created for each separate design project. This will be a different directory name then was used for the lower-level project that we just completed. EE 314 Digital Electronics Laboratory Page 12 of 24
13 Note: The project name must be different than the lower-level project. We cannot use duplicate design file names in a project and the lower-level project will be contained in this new project. 18. When the Add Files dialog box is opened, click the Browse button to locate the working directory for the lower-level project. We will now identify the files to be included in this top-level project. 19. Use the Select File dialog box to locate the lower-level project. Remember that it will be in a different folder. Navigate to the lower-level project directory (...desktop/exp4/fourbitadder which probably is already selected). Select the project name (fourbitadder) and click Open. As the file name for the design file of the lower-level project appears in the box, click Add to move this file name to the list of selected files. Repeat this procedure for fulladder project, and add it too. At the end, Add Files dialog box should be seen like in Figure 4.8. Figure 4.8 Add Files dialog box when you add low-level projects 20. Click Next, and complete the usual procedure. EE 314 Digital Electronics Laboratory Page 13 of 24
14 III.c.1 Implementing the Complementor 21. Based on the logic circuit design in your Preliminary Work Part-5, create the 4-bit 2 s complementor by adding appropriate components, input/output pins and wiring. Assume that you have a 4-bit binary number X3X2X1X0. This unit must result in Z3Z2Z1Z0 (which is the 2 s complement of X3X2X1X0 ), when the control bit E is 0, and should give the input as output when E is 1. Note: To use the low-level design (fourbitadder); click the Symbol Tool button (gate symbol) on the top of the Block Diagram/Schematic File editor window. Click Browse button (...) and locate the project directory (...desktop/exp4/fourbitadder) of the lower-level fourbitadder file as it s shown on Figure 4.9. Fourbitadder file selected, click Open. Figure 4.9 Using previously created symbol Full-adder block should be seen like in the Figure EE 314 Digital Electronics Laboratory Page 14 of 24
15 Figure Bit Binary Adder symbol in our library 22. By using fourbitadder symbol, draw the schematic of your complementor design. You may (or will) need a constant 0 (zero, low) or a constant 1 (one, high) to use as an input etc. You may use a 0 (GND) or a 1 (Vcc) which can be found in Other category in the primitives tab of the Symbol box. III.c.2 Creating a Bus 23. You will need to use busses in the circuit schematic to represent input/output pins. A bus is basically a wire that represents more than one inputs or outputs. To In Quartus II, a bus is named as, for example, A[3..0], which means the bus is 4-bit, and composed of the signals A3,A2,A1, and A0 where A3 is the most significant bit. 24. To create a bus, you should put an input pin from the pins library of the Symbol Wizard box. 25. Name this input as X[3..0] as it s shown on Figure You can easily do this by right-clicking the input object, selecting properties, and changing the name. EE 314 Digital Electronics Laboratory Page 15 of 24
16 Figure 4.11 Input pin for input bus 26. Add a bus to the input as it s shown in Figure Do this by selecting the bus symbol (like the net symbol but with a thicker line, Orthogonal Bus Tool ) and drawing the bus line as in the same figure. Name this bus as X[3..0]. Figure bit bus with its input pin connected 27. Now connect the inputs of your design to the bus, and name the nets properly as X[1], X[2] etc. as its shown on Figure EE 314 Digital Electronics Laboratory Page 16 of 24
17 Figure bit bus with its input pin and connections 28. Apply the same methodology to create output bus. 29. Your bus design should be seen as in Figure (Of course there should be your complementor design in between them with wires etc. connected accordingly.) Figure 4.14 A bus implementation which is missing a logic design 30. Save the schematic with the name complementor and compile the design. EE 314 Digital Electronics Laboratory Page 17 of 24
18 III.c.3 Functional Simulation of the Complementor 31. Now we re going to verify the behavior of the top-level circuit design. Simulation of this project can be a little bit more complicated since there are a total of 4 inputs applied to the top-level circuit. That means there are 16 possible input combinations! That is probably a little more than we want (or need) to actually test the design with. So, what we should do is develop a simulation strategy or plan that will adequately test the circuit design without taking the time to exhaustively test all possible combinations. Table 4.5 lists some input conditions that might be chosen to test our logic circuit. We will draw the corresponding test vectors in a Vector Waveform File (.vwf). Table 4.5 Selected input test vectors for complementor design X[3] X[2] X[1] X[0] X E B E F C Open the Waveform Editor. 33. Save the file under the name complementor.vwf. Set the desired simulation to run from 0 to 300 ns by selecting Edit > End Time and entering 300 ns. By selecting View > Fit in Window, display the entire simulation range of 0 to 300 ns in the window. Divide waveform into 10 pieces by selecting Edit > Grid Size and entering 30 ns. EE 314 Digital Electronics Laboratory Page 18 of 24
19 34. Next, we want to include the input and output nodes of the circuit to be simulated. Click Edit > Insert > Insert Node or Bus to open the dialog box. Click Node Finder. Select Pins:all and click List. To add your input and output nodes easily, select the Input Group type variable instead of selecting every bit of it separately. Do this for the output bus as it s shown on Figure Click OK twice. Figure 4.15 Adding busses to the functional simulation setup 35. If you extend your 4-bit input groups by double clicking on their names, the waveform will be seen like in Figure Otherwise they will be seen like they have a single value (which is actually the case.) EE 314 Digital Electronics Laboratory Page 19 of 24
20 Figure 4.16 One possible way to visualize the inputs/outputs 36. Arrange the waveform by selecting every 30 ns period, right clicking, selecting Value>Arbitrary Value>Radix: Hexadecimal and entering the values according to the Table 4.5. Your waveform should be seen like the Figure Figure 4.17 Functional simulation window prior to simulation 37. Save the waveform. Run Functional Simulation. EE 314 Digital Electronics Laboratory Page 20 of 24
21 38. You will see the simulation results of your design according to the inputs that you give. Check the output for different input combinations. Being sure the design is working properly, close Waveform Editor Window. Your functional simulation results will hopefully be seen like in Figure Figure 4.18 One way to see simulation results To change the representations of the input and output, you can right click on the values under the name tab situated on he left and select Radix>Binary, Radix>Hexadecimal or anyone of them as you like. Another representation can be seen in Figure Figure 4.19 Another way to see simulation results EE 314 Digital Electronics Laboratory Page 21 of 24
22 III.c.4 Testing the Complementor Design on FPGA 39. Assign input and output pins to your complementor design by using your experience. For example, you can use SW9, SW8, SW7, and SW6 for data input vector X, SW0 for control input E, and LED0, LED1, LED2, and LED3 for output vector. Save your assignment. 40. Recompile your design, and use output files to program your FPGA. Test the input combinations given in Table 4.5 and more on FPGA. III.d. Designing the Adder/Subtractor 41. Based on your design in Preliminary Work Part 6, implement your adder/subtractor design on a new project. Don t forget to create a new project with a unique name in a separate folder, and add files of your lowlevel projects (full-adder, and 4-bit binary adder) while creating your project. Note: While implementing your adder/subtractor design, you should use busses to represent input and output vectors. After all, your design should include 3 input pins (2 of them are for input busses, and the other is for control input E), and 1 output pin for the output bus. For the sake of convenience, use X, Y, and E as input names, and Z for output name. Table 4.6 Selected input test vectors for adder/subtractor design X[3] X[2] X[1] X[0] X Y[3] Y[2] Y[1] Y[0] Y E D E F F C Simulate your design functionally by using input combinations given in Table 4.6. Don t forget to save and compile your design beforehand. 43. Assign pins to your inputs and outputs, and test your design on FPGA. Don t forget to save and recompile your design after assigning pins. EE 314 Digital Electronics Laboratory Page 22 of 24
23 IV. References [1] Manual for Experiment 4: Parallel Adders, Subtractors, and Complementors. EE-314 Digital Electronics Laboratory, METU. (Used until 2015) [2] G.L. Moss, Quartus Tutorial 3 Hierarchical Designs, A step-by-step tutorial using Quartus II v9.x. May V. FPGA Pin Assignment Codes Figure 4.20 DE1 S0C pin assignment descriptions EE 314 Digital Electronics Laboratory Page 23 of 24
24 VI. Required IC List 7400 IC Four NAND2, i.e., four two input NAND gates 7483 IC 4-bit binary adder 7486 IC Four XOR2, i.e., four two-input XOR gates Figure 4.21 Pin Diagram for 7400 IC Figure 4.22 Pin Diagram for 7486 IC Figure 4.23 Pin Diagram for 7483 IC EE 314 Digital Electronics Laboratory Page 24 of 24
EXPERIMENT 8. Flip-Flops and Sequential Circuits
EXPERIMENT 8. Flip-Flops and Sequential Circuits I. Introduction I.a. Objectives The objective of this experiment is to become familiar with the basic operational principles of flip-flops and counters.
Two's Complement Adder/Subtractor Lab L03
Two's Complement Adder/Subtractor Lab L03 Introduction Computers are usually designed to perform indirect subtraction instead of direct subtraction. Adding -B to A is equivalent to subtracting B from A,
Xilinx ISE. <Release Version: 10.1i> Tutorial. Department of Electrical and Computer Engineering State University of New York New Paltz
Xilinx ISE Tutorial Department of Electrical and Computer Engineering State University of New York New Paltz Fall 2010 Baback Izadi Starting the ISE Software Start ISE from the
DEPARTMENT OF INFORMATION TECHNLOGY
DRONACHARYA GROUP OF INSTITUTIONS, GREATER NOIDA Affiliated to Mahamaya Technical University, Noida Approved by AICTE DEPARTMENT OF INFORMATION TECHNLOGY Lab Manual for Computer Organization Lab ECS-453
Lab 1: Full Adder 0.0
Lab 1: Full Adder 0.0 Introduction In this lab you will design a simple digital circuit called a full adder. You will then use logic gates to draw a schematic for the circuit. Finally, you will verify
Binary Adders: Half Adders and Full Adders
Binary Adders: Half Adders and Full Adders In this set of slides, we present the two basic types of adders: 1. Half adders, and 2. Full adders. Each type of adder functions to add two binary bits. In order
Quartus II Introduction for VHDL Users
Quartus II Introduction for VHDL Users This tutorial presents an introduction to the Quartus II software. It gives a general overview of a typical CAD flow for designing circuits that are implemented by
Quartus II Introduction Using VHDL Design
Quartus II Introduction Using VHDL Design This tutorial presents an introduction to the Quartus R II CAD system. It gives a general overview of a typical CAD flow for designing circuits that are implemented
FORDHAM UNIVERSITY CISC 3593. Dept. of Computer and Info. Science Spring, 2011. Lab 2. The Full-Adder
FORDHAM UNIVERSITY CISC 3593 Fordham College Lincoln Center Computer Organization Dept. of Computer and Info. Science Spring, 2011 Lab 2 The Full-Adder 1 Introduction In this lab, the student will construct
Chapter 4 Register Transfer and Microoperations. Section 4.1 Register Transfer Language
Chapter 4 Register Transfer and Microoperations Section 4.1 Register Transfer Language Digital systems are composed of modules that are constructed from digital components, such as registers, decoders,
COMBINATIONAL CIRCUITS
COMBINATIONAL CIRCUITS http://www.tutorialspoint.com/computer_logical_organization/combinational_circuits.htm Copyright tutorialspoint.com Combinational circuit is a circuit in which we combine the different
Jianjian Song LogicWorks 4 Tutorials (5/15/03) Page 1 of 14
LogicWorks 4 Tutorials Jianjian Song Department of Electrical and Computer Engineering Rose-Hulman Institute of Technology March 23 Table of Contents LogicWorks 4 Installation and update...2 2 Tutorial
After opening the Programs> Xilinx ISE 8.1i > Project Navigator, you will come to this screen as start-up.
After opening the Programs> Xilinx ISE 8.1i > Project Navigator, you will come to this screen as start-up. Start with a new project. Enter a project name and be sure to select Schematic as the Top-Level
Multisim 7 Tutorial Creating Macros for Sub-circuits
Multisim 7 Tutorial Creating Macros for Sub-circuits It s a good practice to organize functionally related parts of a design into manageable pieces. Then the design is made as a hierarchical design. And
Start Active-HDL by double clicking on the Active-HDL Icon (windows).
Getting Started Using Aldec s Active-HDL This guide will give you a short tutorial in using the project mode of Active-HDL. This tutorial is broken down into the following sections 1. Part 1: Compiling
CS 61C: Great Ideas in Computer Architecture Finite State Machines. Machine Interpreta4on
CS 61C: Great Ideas in Computer Architecture Finite State Machines Instructors: Krste Asanovic & Vladimir Stojanovic hbp://inst.eecs.berkeley.edu/~cs61c/sp15 1 Levels of RepresentaKon/ InterpretaKon High
Figure 8-1 Four Possible Results of Adding Two Bits
CHPTER EIGHT Combinational Logic pplications Thus far, our discussion has focused on the theoretical design issues of computer systems. We have not yet addressed any of the actual hardware you might find
Systems I: Computer Organization and Architecture
Systems I: Computer Organization and Architecture Lecture 9 - Register Transfer and Microoperations Microoperations Digital systems are modular in nature, with modules containing registers, decoders, arithmetic
COMBINATIONAL and SEQUENTIAL LOGIC CIRCUITS Hardware implementation and software design
PH-315 COMINATIONAL and SEUENTIAL LOGIC CIRCUITS Hardware implementation and software design A La Rosa I PURPOSE: To familiarize with combinational and sequential logic circuits Combinational circuits
Digital Electronics Detailed Outline
Digital Electronics Detailed Outline Unit 1: Fundamentals of Analog and Digital Electronics (32 Total Days) Lesson 1.1: Foundations and the Board Game Counter (9 days) 1. Safety is an important concept
LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER
LAB #3 VHDL RECOGNITION AND GAL IC PROGRAMMING USING ALL-11 UNIVERSAL PROGRAMMER OBJECTIVES 1. Learn the basic elements of VHDL that are implemented in Warp. 2. Build a simple application using VHDL and
Lab 1: Introduction to Xilinx ISE Tutorial
Lab 1: Introduction to Xilinx ISE Tutorial This tutorial will introduce the reader to the Xilinx ISE software. Stepby-step instructions will be given to guide the reader through generating a project, creating
The 104 Duke_ACC Machine
The 104 Duke_ACC Machine The goal of the next two lessons is to design and simulate a simple accumulator-based processor. The specifications for this processor and some of the QuartusII design components
Sistemas Digitais I LESI - 2º ano
Sistemas Digitais I LESI - 2º ano Lesson 6 - Combinational Design Practices Prof. João Miguel Fernandes ([email protected]) Dept. Informática UNIVERSIDADE DO MINHO ESCOLA DE ENGENHARIA - PLDs (1) - The
Gates, Circuits, and Boolean Algebra
Gates, Circuits, and Boolean Algebra Computers and Electricity A gate is a device that performs a basic operation on electrical signals Gates are combined into circuits to perform more complicated tasks
5 Combinatorial Components. 5.0 Full adder. Full subtractor
5 Combatorial Components Use for data transformation, manipulation, terconnection, and for control: arithmetic operations - addition, subtraction, multiplication and division. logic operations - AND, OR,
Circuits and Boolean Expressions
Circuits and Boolean Expressions Provided by TryEngineering - Lesson Focus Boolean logic is essential to understanding computer architecture. It is also useful in program construction and Artificial Intelligence.
earlier in the semester: The Full adder above adds two bits and the output is at the end. So if we do this eight times, we would have an 8-bit adder.
The circuit created is an 8-bit adder. The 8-bit adder adds two 8-bit binary inputs and the result is produced in the output. In order to create a Full 8-bit adder, I could use eight Full -bit adders and
Let s put together a Manual Processor
Lecture 14 Let s put together a Manual Processor Hardware Lecture 14 Slide 1 The processor Inside every computer there is at least one processor which can take an instruction, some operands and produce
OrCAD Flow Tutorial. Product Version 10.0 Februaruy 2004
OrCAD Flow Tutorial Product Version 10.0 Februaruy 2004 2003-2004 Cadence Design Systems, Inc. All rights reserved. Printed in the United States of America. Cadence Design Systems, Inc., 555 River Oaks
BINARY CODED DECIMAL: B.C.D.
BINARY CODED DECIMAL: B.C.D. ANOTHER METHOD TO REPRESENT DECIMAL NUMBERS USEFUL BECAUSE MANY DIGITAL DEVICES PROCESS + DISPLAY NUMBERS IN TENS IN BCD EACH NUMBER IS DEFINED BY A BINARY CODE OF 4 BITS.
Digital Logic Design. Basics Combinational Circuits Sequential Circuits. Pu-Jen Cheng
Digital Logic Design Basics Combinational Circuits Sequential Circuits Pu-Jen Cheng Adapted from the slides prepared by S. Dandamudi for the book, Fundamentals of Computer Organization and Design. Introduction
Combinational Logic Design
Chapter 4 Combinational Logic Design The foundations for the design of digital logic circuits were established in the preceding chapters. The elements of Boolean algebra (two-element switching algebra
Lecture #21 April 2, 2004 Relays and Adder/Subtractors
Lecture #21 April 2, 2004 Relays and Adder/Subtractors In this lecture we look at a real technology for implementing gate circuits, as well as a more-or-less complete design for a general purpose adder/subtractor
UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences
UNIVERSITY OF CALIFORNIA College of Engineering Department of Electrical Engineering and Computer Sciences Jan M. Rabaey Homework #1: Circuit Simulation EECS 141 Due Friday, January 30, 5pm, box in 240
Understanding Logic Design
Understanding Logic Design ppendix of your Textbook does not have the needed background information. This document supplements it. When you write add DD R0, R1, R2, you imagine something like this: R1
Flip-Flops, Registers, Counters, and a Simple Processor
June 8, 22 5:56 vra235_ch7 Sheet number Page number 349 black chapter 7 Flip-Flops, Registers, Counters, and a Simple Processor 7. Ng f3, h7 h6 349 June 8, 22 5:56 vra235_ch7 Sheet number 2 Page number
The string of digits 101101 in the binary number system represents the quantity
Data Representation Section 3.1 Data Types Registers contain either data or control information Control information is a bit or group of bits used to specify the sequence of command signals needed for
VHDL Test Bench Tutorial
University of Pennsylvania Department of Electrical and Systems Engineering ESE171 - Digital Design Laboratory VHDL Test Bench Tutorial Purpose The goal of this tutorial is to demonstrate how to automate
INTEGRATED CIRCUITS. For a complete data sheet, please also download:
INTEGRATED CIRCUITS DATA SHEET For a complete data sheet, please also download: The IC06 74HC/HCT/HCU/HCMOS Logic Family Specifications The IC06 74HC/HCT/HCU/HCMOS Logic Package Information The IC06 74HC/HCT/HCU/HCMOS
16-bit ALU, Register File and Memory Write Interface
CS M152B Fall 2002 Project 2 16-bit ALU, Register File and Memory Write Interface Suggested Due Date: Monday, October 21, 2002 Actual Due Date determined by your Lab TA This project will take much longer
Digital Design. Assoc. Prof. Dr. Berna Örs Yalçın
Digital Design Assoc. Prof. Dr. Berna Örs Yalçın Istanbul Technical University Faculty of Electrical and Electronics Engineering Office Number: 2318 E-mail: [email protected] Grading 1st Midterm -
ECEN 1400, Introduction to Analog and Digital Electronics
ECEN 1400, Introduction to Analog and Digital Electronics Lab 4: Power supply 1 INTRODUCTION This lab will span two lab periods. In this lab, you will create the power supply that transforms the AC wall
Decimal Number (base 10) Binary Number (base 2)
LECTURE 5. BINARY COUNTER Before starting with counters there is some vital information that needs to be understood. The most important is the fact that since the outputs of a digital chip can only be
Counters and Decoders
Physics 3330 Experiment #10 Fall 1999 Purpose Counters and Decoders In this experiment, you will design and construct a 4-bit ripple-through decade counter with a decimal read-out display. Such a counter
1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1.
File: chap04, Chapter 04 1. True or False? A voltage level in the range 0 to 2 volts is interpreted as a binary 1. 2. True or False? A gate is a device that accepts a single input signal and produces one
CHAPTER 11: Flip Flops
CHAPTER 11: Flip Flops In this chapter, you will be building the part of the circuit that controls the command sequencing. The required circuit must operate the counter and the memory chip. When the teach
3. On the top menu bar, click on File > New > Project as shown in Fig. 2 below: Figure 2 Window for Orcad Capture CIS
Department of Electrical Engineering University of North Texas Denton, TX. 76207 EENG 2920 Quickstart PSpice Tutorial Tutorial Prepared by Oluwayomi Adamo 1. To run the PSpice program, click on Start >
Online Development of Digital Logic Design Course
Online Development of Digital Logic Design Course M. Mohandes, M. Dawoud, S. Al Amoudi, A. Abul Hussain Electrical Engineering Department & Deanship of Academic Development King Fahd University of Petroleum
ELEC 2210 - EXPERIMENT 1 Basic Digital Logic Circuits
Objectives ELEC - EXPERIMENT Basic Digital Logic Circuits The experiments in this laboratory exercise will provide an introduction to digital electronic circuits. You will learn how to use the IDL-00 Bit
RUTGERS UNIVERSITY Department of Electrical and Computer Engineering 14:332:233 DIGITAL LOGIC DESIGN LABORATORY
RUTGERS UNIVERSITY Department of Electrical and Computer Engineering 14:332:233 DIGITAL LOGIC DESIGN LABORATORY Fall 2012 Contents 1 LABORATORY No 1 3 11 Equipment 3 12 Protoboard 4 13 The Input-Control/Output-Display
PCB Project (*.PrjPcb)
Project Essentials Summary The basis of every design captured in Altium Designer is the project. This application note outlines the different kinds of projects, techniques for working on projects and how
Basic Logic Gates Richard E. Haskell
BASIC LOGIC GATES 1 E Basic Logic Gates Richard E. Haskell All digital systems are made from a few basic digital circuits that we call logic gates. These circuits perform the basic logic functions that
EE 261 Introduction to Logic Circuits. Module #2 Number Systems
EE 261 Introduction to Logic Circuits Module #2 Number Systems Topics A. Number System Formation B. Base Conversions C. Binary Arithmetic D. Signed Numbers E. Signed Arithmetic F. Binary Codes Textbook
Chapter 1: Digital Systems and Binary Numbers
Chapter 1: Digital Systems and Binary Numbers Digital age and information age Digital computers general purposes many scientific, industrial and commercial applications Digital systems telephone switching
1 Description of The Simpletron
Simulating The Simpletron Computer 50 points 1 Description of The Simpletron In this assignment you will write a program to simulate a fictional computer that we will call the Simpletron. As its name implies
Multiplexers Two Types + Verilog
Multiplexers Two Types + Verilog ENEE 245: Digital Circuits and ystems Laboratory Lab 7 Objectives The objectives of this laboratory are the following: To become familiar with continuous ments and procedural
The components. E3: Digital electronics. Goals:
E3: Digital electronics Goals: Basic understanding of logic circuits. Become familiar with the most common digital components and their use. Equipment: 1 st. LED bridge 1 st. 7-segment display. 2 st. IC
Oct: 50 8 = 6 (r = 2) 6 8 = 0 (r = 6) Writing the remainders in reverse order we get: (50) 10 = (62) 8
ECE Department Summer LECTURE #5: Number Systems EEL : Digital Logic and Computer Systems Based on lecture notes by Dr. Eric M. Schwartz Decimal Number System: -Our standard number system is base, also
Generating MIF files
Generating MIF files Introduction In order to load our handwritten (or compiler generated) MIPS assembly problems into our instruction ROM, we need a way to assemble them into machine language and then
exclusive-or and Binary Adder R eouven Elbaz [email protected] Office room: DC3576
exclusive-or and Binary Adder R eouven Elbaz [email protected] Office room: DC3576 Outline exclusive OR gate (XOR) Definition Properties Examples of Applications Odd Function Parity Generation and Checking
Module 3: Floyd, Digital Fundamental
Module 3: Lecturer : Yongsheng Gao Room : Tech - 3.25 Email : [email protected] Structure : 6 lectures 1 Tutorial Assessment: 1 Laboratory (5%) 1 Test (20%) Textbook : Floyd, Digital Fundamental
Chapter 2 Logic Gates and Introduction to Computer Architecture
Chapter 2 Logic Gates and Introduction to Computer Architecture 2.1 Introduction The basic components of an Integrated Circuit (IC) is logic gates which made of transistors, in digital system there are
Digital circuits make up all computers and computer systems. The operation of digital circuits is based on
Digital Logic Circuits Digital circuits make up all computers and computer systems. The operation of digital circuits is based on Boolean algebra, the mathematics of binary numbers. Boolean algebra is
CHAPTER 3 Boolean Algebra and Digital Logic
CHAPTER 3 Boolean Algebra and Digital Logic 3.1 Introduction 121 3.2 Boolean Algebra 122 3.2.1 Boolean Expressions 123 3.2.2 Boolean Identities 124 3.2.3 Simplification of Boolean Expressions 126 3.2.4
BOOLEAN ALGEBRA & LOGIC GATES
BOOLEAN ALGEBRA & LOGIC GATES Logic gates are electronic circuits that can be used to implement the most elementary logic expressions, also known as Boolean expressions. The logic gate is the most basic
TestManager Administration Guide
TestManager Administration Guide RedRat Ltd July 2015 For TestManager Version 4.57-1 - Contents 1. Introduction... 3 2. TestManager Setup Overview... 3 3. TestManager Roles... 4 4. Connection to the TestManager
Supplement I.B: Installing and Configuring JDK 1.6
Supplement I.B: Installing and Configuring JDK 1.6 For Introduction to Java Programming Y. Daniel Liang This supplement covers the following topics: Downloading JDK 1.6 ( 1.2) Installing JDK 1.6 ( 1.3)
Digital Fundamentals. Lab 8 Asynchronous Counter Applications
Richland College Engineering Technology Rev. 0 B. Donham Rev. 1 (7/2003). Horne Rev. 2 (1/2008). Bradbury Digital Fundamentals CETT 1425 Lab 8 Asynchronous Counter Applications Name: Date: Objectives:
ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path
ECE410 Design Project Spring 2008 Design and Characterization of a CMOS 8-bit Microprocessor Data Path Project Summary This project involves the schematic and layout design of an 8-bit microprocessor data
6.004 Computation Structures Spring 2009
MIT OpenCourseWare http://ocw.mit.edu 6.004 Computation Structures Spring 2009 For information about citing these materials or our Terms of Use, visit: http://ocw.mit.edu/terms. M A S S A C H U S E T T
Physics 226 FPGA Lab #1 SP Wakely. Terasic DE0 Board. Getting Started
Physics 226 FPGA Lab #1 SP Wakely I Terasic DE0 Board The DE0 Development and Education board is designed in a compact size with all the essential tools for novice users to gain knowledge in areas of digital
Mentor Tools tutorial Bold Browser Design Manager Design Architect Library Components Quicksim Creating and Compiling the VHDL Model.
Mentor Tools tutorial Bold Browser Design Manager Design Architect Library Components Quicksim Creating and Compiling the VHDL Model. Introduction To Mentor Graphics Mentor Graphics BOLD browser allows
OrCAD Capture with PSpice and Allegro DE CIS with AMS Simulator. Describes how to create a PSpice Archive File with Capture
Title: Product: Summary: Creating a Project Archive OrCAD Capture with PSpice and Allegro DE CIS with AMS Simulator Describes how to create a PSpice Archive File with Capture Author/Date: Wei Ling / 03.08.2009
Experiment # 9. Clock generator circuits & Counters. Eng. Waleed Y. Mousa
Experiment # 9 Clock generator circuits & Counters Eng. Waleed Y. Mousa 1. Objectives: 1. Understanding the principles and construction of Clock generator. 2. To be familiar with clock pulse generation
Getting Started Using Mentor Graphic s ModelSim
Getting Started Using Mentor Graphic s ModelSim There are two modes in which to compile designs in ModelSim, classic/traditional mode and project mode. This guide will give you a short tutorial in using
Design and Development of Virtual Instrument (VI) Modules for an Introductory Digital Logic Course
Session ENG 206-6 Design and Development of Virtual Instrument (VI) Modules for an Introductory Digital Logic Course Nikunja Swain, Ph.D., PE South Carolina State University [email protected] Raghu Korrapati,
EE360: Digital Design I Course Syllabus
: Course Syllabus Dr. Mohammad H. Awedh Fall 2008 Course Description This course introduces students to the basic concepts of digital systems, including analysis and design. Both combinational and sequential
List of Experiment. 8. To study and verify the BCD to Seven Segments DECODER.(IC-7447).
G. H. RAISONI COLLEGE OF ENGINEERING, NAGPUR Department of Electronics & Communication Engineering Branch:-4 th Semester[Electronics] Subject: - Digital Circuits List of Experiment Sr. Name Of Experiment
Process Modeling using BPMN 2.0
Process Modeling using BPMN 2.0 This chapter provides a brief overview of Business Process Modeling Notation (BPMN) concepts with particular emphasis on the BPMN 2.0 additions. In addition, it describes
University of St. Thomas ENGR 230 ---- Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54
Fall 2005 Instructor Texts University of St. Thomas ENGR 230 ---- Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54 Lab: Section 1: OSS LL14 Tuesday
Site Maintenance Using Dreamweaver
Site Maintenance Using Dreamweaver As you know, it is possible to transfer the files that make up your web site from your local computer to the remote server using FTP (file transfer protocol) or some
Device Support in PowerLogic ION Enterprise 5.6 Service Pack 2
70072-0189-00 TECHNICAL 08/2008 Device Support in PowerLogic ION Enterprise 5.6 Service Pack 2 This document outlines support in ION Enterprise 5.6 Service Pack 2 for PowerLogic CM3000 series/cm4000 series,
Software Version 10.0d. 1991-2011 Mentor Graphics Corporation All rights reserved.
ModelSim Tutorial Software Version 10.0d 1991-2011 Mentor Graphics Corporation All rights reserved. This document contains information that is proprietary to Mentor Graphics Corporation. The original recipient
Digital Circuit Design Using Xilinx ISE Tools
Digital Circuit Design Using Xilinx ISE Tools Contents 1. Introduction... 1 2. Programmable Logic Device: FPGA... 2 3. Creating a New Project... 2 4. Synthesis and Implementation of the Design... 11 5.
Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial
Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial Embedded Processor Hardware Design January 29 th 2015. VIVADO TUTORIAL 1 Table of Contents Requirements... 3 Part 1:
Today. Binary addition Representing negative numbers. Andrew H. Fagg: Embedded Real- Time Systems: Binary Arithmetic
Today Binary addition Representing negative numbers 2 Binary Addition Consider the following binary numbers: 0 0 1 0 0 1 1 0 0 0 1 0 1 0 1 1 How do we add these numbers? 3 Binary Addition 0 0 1 0 0 1 1
Arena Tutorial 1. Installation STUDENT 2. Overall Features of Arena
Arena Tutorial This Arena tutorial aims to provide a minimum but sufficient guide for a beginner to get started with Arena. For more details, the reader is referred to the Arena user s guide, which can
PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1
UNIT 22: PROGRAMMABLE LOGIC CONTROLLERS Unit code: A/601/1625 QCF level: 4 Credit value: 15 TUTORIAL OUTCOME 2 Part 1 This work covers part of outcome 2 of the Edexcel standard module. The material is
Assembly Language Programming
Assembly Language Programming Assemblers were the first programs to assist in programming. The idea of the assembler is simple: represent each computer instruction with an acronym (group of letters). Eg:
Business Portal for Microsoft Dynamics GP. Key Performance Indicators Release 10.0
Business Portal for Microsoft Dynamics GP Key Performance Indicators Release 10.0 Copyright Copyright 2007 Microsoft Corporation. All rights reserved. Complying with all applicable copyright laws is the
Upon completion of unit 1.1, students will be able to
Upon completion of unit 1.1, students will be able to 1. Demonstrate safety of the individual, class, and overall environment of the classroom/laboratory, and understand that electricity, even at the nominal
CMOS Binary Full Adder
CMOS Binary Full Adder A Survey of Possible Implementations Group : Eren Turgay Aaron Daniels Michael Bacelieri William Berry - - Table of Contents Key Terminology...- - Introduction...- 3 - Design Architectures...-
Solution for Homework 2
Solution for Homework 2 Problem 1 a. What is the minimum number of bits that are required to uniquely represent the characters of English alphabet? (Consider upper case characters alone) The number of
Lab 17: Building a 4-Digit 7-Segment LED Decoder
Phys2303 L.A. Bumm [Nexys 1.1.2] Lab 17 (p1) Lab 17: Building a 4-Digit 7-Segment LED Decoder In this lab your will make 4 test circuits, the 4-digit 7-segment decoder, and demonstration circuit using
Laboratory 2. Exercise 2. Exercise 2. PCB Design
Exercise 2. PCB Design Aim of the measurement Introducing to the PCB design Creating a schematic of an analog circuit, making simulations on it and designing a Printed circuit board for it. Keywords Printed
Finite State Machine Design A Vending Machine
LAB 6 Finite State Machine Design A Vending Machine You will learn how turn an informal sequential circuit description into a formal finite-state machine model, how to express it using ABEL, how to simulate
EE 242 EXPERIMENT 5: COMPUTER SIMULATION OF THREE-PHASE CIRCUITS USING PSPICE SCHEMATICS 1
EE 242 EXPERIMENT 5: COMPUTER SIMULATION OF THREE-PHASE CIRCUITS USING PSPICE SCHEMATICS 1 Objective: To build, simulate, and analyze three-phase circuits using OrCAD Capture Pspice Schematics under balanced
