EE414 Embedded Systems Ch 2. Custom Single- Purpose Processors: Hardware
|
|
- Charleen Carter
- 5 years ago
- Views:
Transcription
1 EE44 Embedded Systems Ch 2. Custom Single- Purpose Processors: Hardware Byung Kook Kim School of Electrical Engineering Korea Advanced Institute of Science and Technology
2 Outline 2. Introduction Review Digital Logic 2.2 Combinational logic 2.3 Sequential logic Custom Single-Purpose Processor 2.4 Custom single-purpose processor design 2.5 RT-level custom single-purpose processor design 2.6 Optimizing custom single-purpose processors Embedded Systems, KAIST 2
3 2. Introduction Processor Digital circuit that performs computation tasks Controller and datapath General-purpose: variety of computation tasks Single-purpose: one particular computation task Custom single-purpose processor: non-standard task Custom single-purpose processor Faster, smaller, low power But, high NRE cost, longer time-tomarket, less fleible. CCD preprocessor Microcontroller Piel coprocessor Embedded Systems, KAIST 3 lens CCD Digital camera chip A2D JPEG codec DMA controller Display ctrl D2A Multiplier/Accum Memory controller ISA bus interface UART LCD ctrl
4 2.2 Combinational Logic Transistors and Logic Gates Transistor The basic electrical component in digital systems. Acts as an on/off switch (not as an amplifier). Voltage at gate controls whether current flows from source to drain Don t confuse this gate with a logic gate gate source drain Conducts if gate= IC package IC source gate oide channel drain Silicon substrate Embedded Systems, KAIST 4
5 CMOS transistor Logic gate implementations CMOS: Complementary Metal Oide Semiconductor Most widely used. Transistor < Logic gates < Digital systems. We refer to logic levels Typically is V, is 5V Two basic CMOS TR types nmos conducts if gate= pmos conducts if gate= Hence complementary Basic logic gates Inverter, NAND, NOR gate source Conducts gate source Conducts if gate= if gate= drain drain nmos pmos y F = ' F = (y)' y F = (+y)' y y inverter NAND gate NOR gate Embedded Systems, KAIST 5
6 Basic Logic Gates F = Driver F F y F = y AND F y F y F = + y OR F y F y F = y XOR F y F F = Inverter F F y F = ( y) NAND F y F y F = (+y) NOR F y F y F = y XNOR F y F Digital system designers usually work at the abstraction level of logic gates rather than transistors. Transistor < Logic gates < Digital systems. Embedded Systems, KAIST 6
7 Basic Combinational Logic Design Combinational circuit: Output purely function of present input (No memory) A) Problem description y is if a is to, or b and c are. z is if b or c is to, but not both, or if all are. D) Minimized output equations y bc a z bc a y = a + bc z = ab + b c + bc B) Truth table Inputs Outputs a b c y z Karnaugh maps: Maimize squares enclosing s. C) Output equations y = a'bc + ab'c' + ab'c + abc' + abc z = a'b'c + a'bc' + ab'c + abc' + abc E) Logic Gates Embedded Systems, KAIST 7 a b c y z
8 RT-level combinational components Multipleer, Decoder, Adder, Comparator, and ALU I(m-) I I n S n-bit, m Multipleor S(log m) n I I(log n -) log n n Decoder A B n n-bit Adder n n A n B n-bit Comparator n A n B n bit, m function S ALU n S(log m) O O(n-) O O carry sum less equal greater O O = I if S=.. I if S=.. I(m-) if S=.. O = if I=.. O = if I=.. O(n-) = if I=.. sum = A+B (first n bits) carry = (n+) th bit of A+B less = if A<B equal = if A=B greater= if A>B O = A op B op determined by S. With enable input e all O s are if e= With carry-in input Ci sum = A + B + Ci May have status outputs carry, zero, etc. Embedded Systems, KAIST 8
9 2.3 Sequential Logic Sequential circuit Flip-Flops A digital circuit whose outputs are function of the present as well as previous input values Sequential logic possesses memory: Combinational logic and memory. E. Coffee vending machine Flip-flop Basic memory in sequential circuit D flip-flop SR flip-flop JK flip-flop Level triggered Edge triggered Embedded Systems, KAIST 9
10 RT-level sequential components Register, shift register, and counter I load clear n n-bit Register n shift I n-bit Shift register Q n-bit Counter n Q Q Q = if clear=, I if load= and clock=, Q(previous) otherwise. Q = lsb - Content shifted - I stored in msb Q = if clear=, Q(prev)+ if count= and clock=. Synchronous: Input value has an affect during clock edge. Asynchronous: Input value affects the circuit independent of clock. Embedded Systems, KAIST
11 Sequential Logic Design A) Problem Description You want to construct a clock divider. Slow down your preeisting clock so that you output a for every four clock cycles B) State Diagram C) Implementation Model a Combinational logic I I Q Q State register I I D) State Table (Mooretype) Inputs Outputs Q Q a I I a= = = a= 3 a= a= a= State diagram a= a= 2 = = a= Finite State Machine (FSM) Given this implementation model Sequential logic design quickly reduces to combinational logic design. Embedded Systems, KAIST
12 Sequential logic design (cont.) I QQ a E) Minimized Output Equations F) Combinational Logic I = Q Qa + Qa + QQ a I QQ a I = Qa + Q a I a QQ = QQ I Q Q Embedded Systems, KAIST 2
13 2.4 Custom Single-Purpose Processor Design A basic processor model Controller: Control datapath. Datapath: Manipulate and store. Inside view eternal control inputs controller datapath control inputs eternal data inputs datapath controller net-state and control logic datapath registers eternal control outputs datapath control outputs eternal data outputs state register functional units Controller and datapath A view inside the controller and datapath Embedded Systems, KAIST 3
14 Design eample: Greatest Common Divisor. First create algorithm (a) black-bo view :!!(!go_i) (c) state diagram Subtraction (b) go_i _i y_i 2:!go_i 2. Convert algorithm to comple state machine (c) Known as FSMD: finite-state machine with data Can use templates to perform such conversion GCD d_o (b) desired functionality : int, y; : while () { 2: while (!go_i); 3: = _i; 4: y = y_i; 5: while (!= y) { 6: if ( < y) 7: y = y - ; else 8: = - y; } 9: d_o = ; } 7: 2-J: 3: = _i 4: y = y_i 5:!(!=y)!=y 6: <y!(<y) y = y - 8: = - y 6-J: 5-J: 9: d_o = -J: Embedded Systems, KAIST 4
15 2. State diagram templates Assignment statement a = b net statement Templates (a) Assignment (b) Loop (c) Branch Loop statement while (cond) { loop-bodystatements } net statement Branch statement if (c) c stmts else if c2 c2 stmts else other stmts net statement a = b C: cond!cond C: c!c*c2!c*!c2 net statement loop-bodystatements c stmts c2 stmts others J: J: net statement net statement Embedded Systems, KAIST 5
16 3. Creating the datapath. Create a register & ports for any declared variable 2. Create a functional unit for each arithmetic operation 3. Connect the ports, registers and functional units Based on reads and writes Use multipleers for multiple sources 4. Create unique identifier for each datapath component control input and output _i y_i _sel n-bit 2 n-bit 2 y_sel _ld : : y y_ld!= < subtractor 5:!=y 6: <y 8: -y _neq_y _lt_y d_ld Datapath subtractor 7: y- 9: d d_o Embedded Systems, KAIST 6
17 4. Creating the controller s FSM Controller implementation model Q3 I3 Combinational logic Q2 Q State register I2 go_i Q I I _sel y_sel _ld y_ld _neq_y _lt_y d_ld Controller : 2: 2-J: 5: 6: _neq_y!_neq_y _lt_y!_lt_y 7: y_sel = 8: _sel = y_ld = _ld = 5-J: 9: 3: 4: -J:!go_i _sel = _ld = y_sel = y_ld = d_ld =!!(!go_i) 6-J: go_i Same structure as FSMD Replace comple actions/conditions with datapath identifiers _sel y_sel _ld y_ld _i n-bit 2 5:!=y 6: <y _neq_y _lt_y d_ld!= y_i n-bit 2 : : y < subtractor 8: -y Datapath subtractor 7: y- 9: d d_o Embedded Systems, KAIST 7
18 5. Controller state table for the GCD eample Inputs Q3 Q2 Q Q _neq _y Outputs _lt_y go_i I3 I2 I I _sel y_sel _ld y_ld d_ld * * * X X * * X X * * X X * * * X X * * * X * * * X * * X X * * X X * * X X * * X X * * * X * * * X * * * X X * * * X X * * * X X * * * X X * * * X X * * * X X * * * X X Embedded Systems, KAIST 8
19 6. Completing the GCD custom single-purpose processor design We finished the datapath We have a state table for the net state and control logic All that s left is combinational logic design controller net-state and control logic datapath registers This is not an optimized design, but we see the basic steps state register functional units a view inside the controller and datapath Embedded Systems, KAIST 9
20 2.5 RT-level Custom Single- Purpose Processor Design We often start with a state machine, rather than program. Especially when eplicit cycle timing is important. Eample Bus bridge that converts 4-bit bus to 8-bit bus Start with FSMD Known as register-transfer (RT) level Eercise: complete the design Problem Specification Sende r FSMD rdy_in clock data_in(4) rdy_in= WaitFirst4 rdy_in= WaitSecond4 Send8Start data_out=data_hi & data_lo rdy_out= Bridge A single-purpose processor that converts two 4-bit inputs, arriving one at a time over data_in along with a rdy_in pulse, into one 8-bit output on data_out along with a rdy_out pulse. rdy_in= Bridge RecFirst4Start data_lo=data_in rdy_in= rdy_in= RecSecond4Start data_hi=data_in rdy_in= Send8End rdy_out= rdy_out data_out(8) rdy_in= RecFirst4End rdy_in= RecSecond4End Rece iver Inputs rdy_in: bit; data_in: bit[4]; Outputs rdy_out: bit; data_out:bit[8] Variables data_lo, data_hi: bit[4]; Embedded Systems, KAIST 2
21 RT-level custom single-purpose processor design (cont ) (a) Controller rdy_in= WaitFirst4 rdy_in= WaitSecond4 rdy_in= Bridge RecFirst4Start data_lo_ld= rdy_in= rdy_in= RecSecond4Start data_hi_ld= rdy_in= RecFirst4End rdy_in= RecSecond4End Send8Start data_out_ld= rdy_out= Send8End rdy_out= rdy_in clk data_in(4) rdy_out data_out to all registers (b) Datapath data_out_ld data_hi_ld data_hi data_out data_lo data_lo_ld Embedded Systems, KAIST 2
22 2.6 Optimizing Custom Single- Purpose Processors Optimization is the task of making design metric values the best possible. Optimization opportunities A. Original program / algorithm B. FSMD C. Datapath D. FSM Embedded Systems, KAIST 22
23 A. Optimizing the original program Analyze program attributes and look for areas of possible improvement Time and space compleity Number of computations Size of variable Operations used Multiplication and division are very epensive. Embedded Systems, KAIST 23
24 Optimizing the original program: Using Modulo operation Original program : int, y; : while () { 2: while (!go_i); 3: = _i; 4: y = y_i; 5: while (!= y) { 6: if ( < y) 7: y = y - ; else 8: = - y; } 9: d_o = ; } replace the subtraction operation(s) with modulo operation in order to speed up program GCD(42, 8) - 9 iterations to complete the loop and y values evaluated as follows : (42, 8), (43, 8), (26,8), (8,8), (, 8), (2,8), (2,6), (2,4), (2,2). Optimized program : int, y, r; : while () { 2: while (!go_i); // must be the larger number 3: if (_i >= y_i) { 4: =_i; 5: y=y_i; } 6: else { 7: =y_i; 8: y=_i; } 9: while (y!= ) { : r = % y; : = y; 2: y = r; } 3: d_o = ; } GCD(42,8) - 3 iterations to complete the loop and y values evaluated as follows: (42, 8), (8,2), (2,) Embedded Systems, KAIST 24
25 B. Optimizing the FSMD Areas of possible improvements Scheduling Task of assigning operations from the original program to states in an FSMD. Merge states States with constants on transitions can be eliminated: Transition taken is already known States with independent operations can be merged Separate states States which require comple operations (a*b*c*d) can be broken into smaller states to reduce hardware size Embedded Systems, KAIST 25
26 Optimizing the FSMD (cont.) : 2: 2-J: 3: int, y;!!(!go_i)!go_i = _i Original FSMD eliminate state transitions have constant values merge state 2 and state 2J no loop operation in between them Optimized FSMD 2: 3: 5: int, y; go_i = _i y = y_i!go_i 4: 5: y = y_i!(!=y) merge state 3 and state 4 assignment operations are independent of one another <y >y 7: y = y - 8: = - y 7: 6: y = y - 6-J: 5-J:!=y <y!(<y) 8: = - y merge state 5 and state 6 transitions from state 6 can be done in state 5 eliminate state 5J and 6J transitions from each state can be done from state 7 and state 8, respectively 9: d_o = -J: 9: d_o = eliminate state -J transition from state -J can be done directly from state 9 Embedded Systems, KAIST 26
27 C. Optimizing the datapath Sharing of functional units One-to-one mapping, as done previously, is not necessary If same operation occurs in different states, they can share a single functional unit Multi-functional units ALUs support a variety of operations, it can be shared among operations occurring in different states Allocation: Choose RT components to use Bind: Map operations from FSMD to components. Embedded Systems, KAIST 27
28 D. Optimizing the FSM State encoding Task of assigning a unique bit pattern to each state in an FSM Size of state register and combinational logic vary Can be treated as an ordering problem State minimization Task of merging equivalent states into a single state State equivalent if for all possible input combinations the two states generate the same outputs and transitions to the net same state Embedded Systems, KAIST 28
29 Summary Custom single-purpose processors For non-standard tasks Optimized Design Straightforward design techniques Can be built to eecute algorithms Typically start with FSMD CAD tools can be of great assistance. Embedded Systems, KAIST 29
30 References [] Frank Vahid, Embedded system design: A unified hardware/software introduction, John Wiley & Sons, 22. Embedded Systems, KAIST 3
Embedded Systems Design: A Unified Hardware/Software Introduction. Chapter 2: Custom single-purpose processors
Hardware/Software Introduction Chapter 2: Custom single-purpose processors Outline Introduction Combinational logic Sequential logic Custom single-purpose processor design RT-level custom single-purpose
More informationEmbedded Systems Design: A Unified Hardware/Software Introduction. Chapter 2: Custom single-purpose processors
Hardware/Software Introduction Chapter 2: Custom single-purpose processors Outline Introduction Combinational logic Sequential logic Custom single-purpose processor design RT-level custom single-purpose
More informationDigital Design with FPGAs. By Neeraj Kulkarni
Digital Design with FPGAs By Neeraj Kulkarni Some Basic Electronics Basic Elements: Gates: And, Or, Nor, Nand, Xor.. Memory elements: Flip Flops, Registers.. Techniques to design a circuit using basic
More informationRecitation Session 6
Recitation Session 6 CSE341 Computer Organization University at Buffalo radhakri@buffalo.edu March 11, 2016 CSE341 Computer Organization Recitation Session 6 1/26 Recitation Session Outline 1 Overview
More informationCONTENTS CHAPTER 1: NUMBER SYSTEM. Foreword...(vii) Preface... (ix) Acknowledgement... (xi) About the Author...(xxiii)
CONTENTS Foreword...(vii) Preface... (ix) Acknowledgement... (xi) About the Author...(xxiii) CHAPTER 1: NUMBER SYSTEM 1.1 Digital Electronics... 1 1.1.1 Introduction... 1 1.1.2 Advantages of Digital Systems...
More informationMicrocomputers. Outline. Number Systems and Digital Logic Review
Microcomputers Number Systems and Digital Logic Review Lecture 1-1 Outline Number systems and formats Common number systems Base Conversion Integer representation Signed integer representation Binary coded
More informationRegister Transfer Methodology II
Register Transfer Methodology II Chapter 12 1 Outline 1. Design example: One shot pulse generator 2. Design Example: GCD 3. Design Example: UART 4. Design Example: SRAM Interface Controller 5. Square root
More informationOutline. Register Transfer Methodology II. 1. One shot pulse generator. Refined block diagram of FSMD
Outline Register Transfer Methodology II 1. Design example: One shot pulse generator 2. Design Example: GCD 3. Design Example: UART 4. Design Example: SRAM Interface Controller 5. Square root approximation
More informationInjntu.com Injntu.com Injntu.com R16
1. a) What are the three methods of obtaining the 2 s complement of a given binary (3M) number? b) What do you mean by K-map? Name it advantages and disadvantages. (3M) c) Distinguish between a half-adder
More informationEND-TERM EXAMINATION
(Please Write your Exam Roll No. immediately) END-TERM EXAMINATION DECEMBER 2006 Exam. Roll No... Exam Series code: 100919DEC06200963 Paper Code: MCA-103 Subject: Digital Electronics Time: 3 Hours Maximum
More information(ii) Simplify and implement the following SOP function using NOR gates:
DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EE6301 DIGITAL LOGIC CIRCUITS UNIT I NUMBER SYSTEMS AND DIGITAL LOGIC FAMILIES PART A 1. How can an OR gate be
More informationIntroduction to Digital Logic Missouri S&T University CPE 2210 Multipliers/Dividers
Introduction to Digital Logic Missouri S&T University CPE 2210 Multipliers/Dividers Egemen K. Çetinkaya Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of Science
More informationBUILDING BLOCKS OF A BASIC MICROPROCESSOR. Part 1 PowerPoint Format of Lecture 3 of Book
BUILDING BLOCKS OF A BASIC MICROPROCESSOR Part PowerPoint Format of Lecture 3 of Book Decoder Tri-state device Full adder, full subtractor Arithmetic Logic Unit (ALU) Memories Example showing how to write
More informationCode No: R Set No. 1
Code No: R059210504 Set No. 1 II B.Tech I Semester Regular Examinations, November 2006 DIGITAL LOGIC DESIGN ( Common to Computer Science & Engineering, Information Technology and Computer Science & Systems
More informationR10. II B. Tech I Semester, Supplementary Examinations, May
SET - 1 1. a) Convert the following decimal numbers into an equivalent binary numbers. i) 53.625 ii) 4097.188 iii) 167 iv) 0.4475 b) Add the following numbers using 2 s complement method. i) -48 and +31
More information3. The high voltage level of a digital signal in positive logic is : a) 1 b) 0 c) either 1 or 0
1. The number of level in a digital signal is: a) one b) two c) four d) ten 2. A pure sine wave is : a) a digital signal b) analog signal c) can be digital or analog signal d) neither digital nor analog
More informationPrinciples of Digital Techniques PDT (17320) Assignment No State advantages of digital system over analog system.
Assignment No. 1 1. State advantages of digital system over analog system. 2. Convert following numbers a. (138.56) 10 = (?) 2 = (?) 8 = (?) 16 b. (1110011.011) 2 = (?) 10 = (?) 8 = (?) 16 c. (3004.06)
More informationHANSABA COLLEGE OF ENGINEERING & TECHNOLOGY (098) SUBJECT: DIGITAL ELECTRONICS ( ) Assignment
Assignment 1. What is multiplexer? With logic circuit and function table explain the working of 4 to 1 line multiplexer. 2. Implement following Boolean function using 8: 1 multiplexer. F(A,B,C,D) = (2,3,5,7,8,9,12,13,14,15)
More informationDigital Circuit Design and Language. Datapath Design. Chang, Ik Joon Kyunghee University
Digital Circuit Design and Language Datapath Design Chang, Ik Joon Kyunghee University Typical Synchronous Design + Control Section : Finite State Machine + Data Section: Adder, Multiplier, Shift Register
More informationThe Need of Datapath or Register Transfer Logic. Number 1 Number 2 Number 3 Number 4. Numbers from 1 to million. Register
The Need of Datapath or Register Transfer Logic Number 1 Number 2 Number 3 Number 4 Numbers from 1 to million Register (a) (b) Circuits to add several numbers: (a) combinational circuit to add four numbers;
More informationEE 3170 Microcontroller Applications
EE 3170 Microcontroller Applications Lecture 4 : Processors, Computers, and Controllers - 1.2 (reading assignment), 1.3-1.5 Based on slides for ECE3170 by Profs. Kieckhafer, Davis, Tan, and Cischke Outline
More informationDigital Design Using Digilent FPGA Boards -- Verilog / Active-HDL Edition
Digital Design Using Digilent FPGA Boards -- Verilog / Active-HDL Edition Table of Contents 1. Introduction to Digital Logic 1 1.1 Background 1 1.2 Digital Logic 5 1.3 Verilog 8 2. Basic Logic Gates 9
More information10EC33: DIGITAL ELECTRONICS QUESTION BANK
10EC33: DIGITAL ELECTRONICS Faculty: Dr.Bajarangbali E Examination QuestionS QUESTION BANK 1. Discuss canonical & standard forms of Boolean functions with an example. 2. Convert the following Boolean function
More informationCS222: Processor Design
CS222: Processor Design Dr. A. Sahu Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati Processor Design building blocks Outline A simple implementation: Single Cycle Data pathandcontrol
More informationSystems Programming. Lecture 2 Review of Computer Architecture I
Systems Programming www.atomicrhubarb.com/systems Lecture 2 Review of Computer Architecture I In The Book Patt & Patel Chapter 1,2,3 (review) Outline Binary Bit Numbering Logical operations 2's complement
More informationDigital Logic Design Exercises. Assignment 1
Assignment 1 For Exercises 1-5, match the following numbers with their definition A Number Natural number C Integer number D Negative number E Rational number 1 A unit of an abstract mathematical system
More informationPhiladelphia University Student Name: Student Number:
Philadelphia University Student Name: Student Number: Faculty of Engineering Serial Number: Final Exam, First Semester: 2018/2019 Dept. of Computer Engineering Course Title: Logic Circuits Date: 03/01/2019
More informationMark Redekopp, All rights reserved. EE 352 Unit 8. HW Constructs
EE 352 Unit 8 HW Constructs Logic Circuits Combinational logic Perform a specific function (mapping of 2 n input combinations to desired output combinations) No internal state or feedback Given a set of
More informationELCT 501: Digital System Design
ELCT 501: Digital System Lecture 4: CAD tools (Continued) Dr. Mohamed Abd El Ghany, Basic VHDL Concept Via an Example Problem: write VHDL code for 1-bit adder 4-bit adder 2 1-bit adder Inputs: A (1 bit)
More informationFPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1
FPGA Design Challenge :Techkriti 14 Digital Design using Verilog Part 1 Anurag Dwivedi Digital Design : Bottom Up Approach Basic Block - Gates Digital Design : Bottom Up Approach Gates -> Flip Flops Digital
More informationHours / 100 Marks Seat No.
17333 13141 3 Hours / 100 Seat No. Instructions (1) All Questions are Compulsory. (2) Answer each next main Question on a new page. (3) Illustrate your answers with neat sketches wherever necessary. (4)
More informationReference Sheet for C112 Hardware
Reference Sheet for C112 Hardware 1 Boolean Algebra, Gates and Circuits Autumn 2016 Basic Operators Precedence : (strongest),, + (weakest). AND A B R 0 0 0 0 1 0 1 0 0 1 1 1 OR + A B R 0 0 0 0 1 1 1 0
More informationCOLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING QUESTION BANK SUBJECT CODE & NAME: EC 1312 DIGITAL LOGIC CIRCUITS UNIT I
KINGS COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING QUESTION BANK SUBJECT CODE & NAME: EC 1312 DIGITAL LOGIC CIRCUITS YEAR / SEM: III / V UNIT I NUMBER SYSTEM & BOOLEAN ALGEBRA
More informationCode No: R Set No. 1
Code No: R059210504 Set No. 1 II B.Tech I Semester Regular Examinations, November 2007 DIGITAL LOGIC DESIGN ( Common to Computer Science & Engineering, Information Technology and Computer Science & Systems
More informationRegister-Level Design
Register-Level Design A digital system can be treated at different level of abstraction or compleity. So far, we have seen it at the gate level and the transistor level. At a higher level than the gate
More information6.1 Combinational Circuits. George Boole ( ) Claude Shannon ( )
6. Combinational Circuits George Boole (85 864) Claude Shannon (96 2) Signals and Wires Digital signals Binary (or logical ) values: or, on or off, high or low voltage Wires. Propagate digital signals
More informationChapter 6. CMOS Functional Cells
Chapter 6 CMOS Functional Cells In the previous chapter we discussed methods of designing layout of logic gates and building blocks like transmission gates, multiplexers and tri-state inverters. In this
More informationCode No: R Set No. 1
Code No: R059210504 Set No. 1 II B.Tech I Semester Supplementary Examinations, February 2007 DIGITAL LOGIC DESIGN ( Common to Computer Science & Engineering, Information Technology and Computer Science
More informationDESIGN AND SIMULATION OF 1 BIT ARITHMETIC LOGIC UNIT DESIGN USING PASS-TRANSISTOR LOGIC FAMILIES
Volume 120 No. 6 2018, 4453-4466 ISSN: 1314-3395 (on-line version) url: http://www.acadpubl.eu/hub/ http://www.acadpubl.eu/hub/ DESIGN AND SIMULATION OF 1 BIT ARITHMETIC LOGIC UNIT DESIGN USING PASS-TRANSISTOR
More informationUPY14602-DIGITAL ELECTRONICS AND MICROPROCESSORS Lesson Plan
UPY14602-DIGITAL ELECTRONICS AND MICROPROCESSORS Lesson Plan UNIT I - NUMBER SYSTEMS AND LOGIC GATES Introduction to decimal- Binary- Octal- Hexadecimal number systems-inter conversions-bcd code- Excess
More informationWhy Should I Learn This Language? VLSI HDL. Verilog-2
Verilog Why Should I Learn This Language? VLSI HDL Verilog-2 Different Levels of Abstraction Algorithmic the function of the system RTL the data flow the control signals the storage element and clock Gate
More informationIntroduction to Digital Logic Missouri S&T University CPE 2210 Registers
Introduction to Digital Logic Missouri S&T University CPE 2210 Registers Egemen K. Çetinkaya Department of Electrical & Computer Engineering Missouri University of Science and Technology cetinkayae@mst.edu
More informationACS College of Engineering. Department of Biomedical Engineering. Logic Design Lab pre lab questions ( ) Cycle-1
ACS College of Engineering Department of Biomedical Engineering Logic Design Lab pre lab questions (2015-2016) Cycle-1 1. What is a combinational circuit? 2. What are the various methods of simplifying
More informationLogic design Ibn Al Haitham collage /Computer science Eng. Sameer
DEMORGAN'S THEOREMS One of DeMorgan's theorems stated as follows: The complement of a product of variables is equal to the sum of the complements of the variables. DeMorgan's second theorem is stated as
More informationVALLIAMMAI ENGINEERING COLLEGE. SRM Nagar, Kattankulathur DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EC6302 DIGITAL ELECTRONICS
VALLIAMMAI ENGINEERING COLLEGE SRM Nagar, Kattankulathur-603 203 DEPARTMENT OF ELECTRONICS AND COMMUNICATION ENGINEERING EC6302 DIGITAL ELECTRONICS YEAR / SEMESTER: II / III ACADEMIC YEAR: 2015-2016 (ODD
More informationMusic. Numbers correspond to course weeks EULA ESE150 Spring click OK Based on slides DeHon 1. !
MIC Lecture #7 Digital Logic Music 1 Numbers correspond to course weeks sample EULA D/A 10101001101 click OK Based on slides 2009--2018 speaker MP Player / iphone / Droid DeHon 1 2 A/D domain conversion
More informationEE414 Embedded Systems Ch 9. State Machines
EE414 Embedded Systems Ch 9. State Machines Byung Kook Kim School of Electrical Engineering Korea Advanced Institute of Science and Technology Outline State Machine Model 9.1 Introduction 9.2 Models vs.
More informationComputer Architecture (TT 2012)
Computer Architecture (TT 2012) The Register Transfer Level Daniel Kroening Oxford University, Computer Science Department Version 1.0, 2011 Outline Reminders Gates Implementations of Gates Latches, Flip-flops
More informationCS8803: Advanced Digital Design for Embedded Hardware
CS883: Advanced Digital Design for Embedded Hardware Lecture 2: Boolean Algebra, Gate Network, and Combinational Blocks Instructor: Sung Kyu Lim (limsk@ece.gatech.edu) Website: http://users.ece.gatech.edu/limsk/course/cs883
More information1. Draw general diagram of computer showing different logical components (3)
Tutorial 1 1. Draw general diagram of computer showing different logical components (3) 2. List at least three input devices (1.5) 3. List any three output devices (1.5) 4. Fill the blank cells of the
More informationUniversity of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences. Spring 2010 May 10, 2010
University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences EECS150 J. Wawrzynek Spring 2010 May 10, 2010 Final Exam Name: ID number: This is
More informationSIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN
SIR C.R.REDDY COLLEGE OF ENGINEERING, ELURU DEPARTMENT OF INFORMATION TECHNOLOGY LESSON PLAN SUBJECT: CSE 2.1.6 DIGITAL LOGIC DESIGN CLASS: 2/4 B.Tech., I SEMESTER, A.Y.2017-18 INSTRUCTOR: Sri A.M.K.KANNA
More informationPROGRAMMABLE LOGIC DEVICES
PROGRAMMABLE LOGIC DEVICES Programmable logic devices (PLDs) are used for designing logic circuits. PLDs can be configured by the user to perform specific functions. The different types of PLDs available
More informationDIGITAL ELECTRONICS. Vayu Education of India
DIGITAL ELECTRONICS ARUN RANA Assistant Professor Department of Electronics & Communication Engineering Doon Valley Institute of Engineering & Technology Karnal, Haryana (An ISO 9001:2008 ) Vayu Education
More informationVLSI DESIGN (ELECTIVE-I) Question Bank Unit I
VLSI DESIGN (ELECTIVE-I) Question Bank Unit I B.E (E&C) NOV-DEC 2008 1) If A & B are two unsigned variables, with A = 1100 and B = 1001, find the values of following expressions. i. (A and B) ii. (A ^
More informationCSE 140L Final Exam. Prof. Tajana Simunic Rosing. Spring 2008
CSE 140L Final Exam Prof. Tajana Simunic Rosing Spring 2008 NAME: ID#: Do not start the exam until you are told to. Turn off any cell phones or pagers. Write your name and PID at the top of every page.
More informationSt.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad
St.MARTIN S ENGINEERING COLLEGE Dhulapally, Secunderabad-500 014 Subject: Digital Design Using Verilog Hdl Class : ECE-II Group A (Short Answer Questions) UNIT-I 1 Define verilog HDL? 2 List levels of
More informationECE 341 Midterm Exam
ECE 341 Midterm Exam Time allowed: 90 minutes Total Points: 75 Points Scored: Name: Problem No. 1 (10 points) For each of the following statements, indicate whether the statement is TRUE or FALSE: (a)
More informationDLD VIDYA SAGAR P. potharajuvidyasagar.wordpress.com. Vignana Bharathi Institute of Technology UNIT 3 DLD P VIDYA SAGAR
DLD UNIT III Combinational Circuits (CC), Analysis procedure, Design Procedure, Combinational circuit for different code converters and other problems, Binary Adder- Subtractor, Decimal Adder, Binary Multiplier,
More informationChapter 4. The Processor
Chapter 4 The Processor Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations A simplified
More informationScheme G. Sample Test Paper-I
Sample Test Paper-I Marks : 25 Times:1 Hour 1. All questions are compulsory. 2. Illustrate your answers with neat sketches wherever necessary. 3. Figures to the right indicate full marks. 4. Assume suitable
More informationComputer Architecture: Part III. First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University
Computer Architecture: Part III First Semester 2013 Department of Computer Science Faculty of Science Chiang Mai University Outline Decoders Multiplexers Registers Shift Registers Binary Counters Memory
More informationCAD4 The ALU Fall 2009 Assignment. Description
CAD4 The ALU Fall 2009 Assignment To design a 16-bit ALU which will be used in the datapath of the microprocessor. This ALU must support two s complement arithmetic and the instructions in the baseline
More informationLecture 12 VHDL Synthesis
CPE 487: Digital System Design Spring 2018 Lecture 12 VHDL Synthesis Bryan Ackland Department of Electrical and Computer Engineering Stevens Institute of Technology Hoboken, NJ 07030 1 What is Synthesis?
More informationSRI SUKHMANI INSTITUTE OF ENGINEERING AND TECHNOLOGY, DERA BASSI (MOHALI)
SRI SUKHMANI INSTITUTE OF ENGINEERING AND TECHNOLOGY, DERA BASSI (MOHALI) VLSI LAB MANUAL ECE DEPARTMENT Introduction to VHDL It is a hardware description language that can be used to model a digital system
More informationEEL 4783: Hardware/Software Co-design with FPGAs
EEL 4783: Hardware/Software Co-design with FPGAs Lecture 5: Digital Camera: Software Implementation* Prof. Mingjie Lin * Some slides based on ISU CPrE 588 1 Design Determine system s architecture Processors
More informationChapter 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
More informationChapter 4. The Processor. Instruction count Determined by ISA and compiler. We will examine two MIPS implementations
Chapter 4 The Processor Part I Introduction CPU performance factors Instruction count Determined by ISA and compiler CPI and Cycle time Determined by CPU hardware We will examine two MIPS implementations
More informationLABORATORY MANUAL VLSI DESIGN LAB EE-330-F
LABORATORY MANUAL VLSI DESIGN LAB EE-330-F (VI th Semester) Prepared By: Vikrant Verma B. Tech. (ECE), M. Tech. (ECE) Department of Electrical & Electronics Engineering BRCM College of Engineering & Technology
More informationCOMPUTER ARCHITECTURE AND ORGANIZATION Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital
Register Transfer and Micro-operations 1. Introduction A digital system is an interconnection of digital hardware modules that accomplish a specific information-processing task. Digital systems vary in
More informationInf2C - Computer Systems Lecture Processor Design Single Cycle
Inf2C - Computer Systems Lecture 10-11 Processor Design Single Cycle Boris Grot School of Informatics University of Edinburgh Previous lectures Combinational circuits Combinations of gates (INV, AND, OR,
More informationIntroduction to Verilog design. Design flow (from the book) Hierarchical Design. Lecture 2
Introduction to Verilog design Lecture 2 ECE 156A 1 Design flow (from the book) ECE 156A 2 Hierarchical Design Chip Modules Cells Primitives A chip contain many modules A module may contain other modules
More informationChapter 10. case studies in sequential logic design
Chapter. case studies in sequential logic design This is the last chapter of this course. So far, we have designed several sequential systems. What is the general procedure? The most difficult part would
More informationCHAPTER - 2 : DESIGN OF ARITHMETIC CIRCUITS
Contents i SYLLABUS osmania university UNIT - I CHAPTER - 1 : BASIC VERILOG HDL Introduction to HDLs, Overview of Digital Design With Verilog HDL, Basic Concepts, Data Types, System Tasks and Compiler
More informationFinal Exam Solution Sunday, December 15, 10:05-12:05 PM
Last (family) name: First (given) name: Student I.D. #: Circle section: Kim Hu Department of Electrical and Computer Engineering University of Wisconsin - Madison ECE/CS 352 Digital System Fundamentals
More informationCS61C : Machine Structures
inst.eecs.berkeley.edu/~cs61c/su06 CS61C : Machine Structures Lecture #14: Combinational Logic, Gates, and State 2006-07-20 CS 61C L14 Combinational Logic (1) Andy Carle What are Machine Structures? Software
More informationREGISTER TRANSFER LANGUAGE
REGISTER TRANSFER LANGUAGE The operations executed on the data stored in the registers are called micro operations. Classifications of micro operations Register transfer micro operations Arithmetic micro
More informationMid-Term Exam Solutions
CS/EE 26 Digital Computers: Organization and Logical Design Mid-Term Eam Solutions Jon Turner 3/3/3. (6 points) List all the minterms for the epression (B + A)C + AC + BC. Epanding the epression gives
More informationWriting Circuit Descriptions 8
8 Writing Circuit Descriptions 8 You can write many logically equivalent descriptions in Verilog to describe a circuit design. However, some descriptions are more efficient than others in terms of the
More informationHours / 100 Marks Seat No.
17320 21718 3 Hours / 100 Seat No. Instructions (1) All Questions are Compulsory. (2) Answer each next main Question on a new page. (3) Figures to the right indicate full marks. (4) Assume suitable data,
More informationECE 4514 Digital Design II. Spring Lecture 15: FSM-based Control
ECE 4514 Digital Design II Lecture 15: FSM-based Control A Design Lecture Overview Finite State Machines Verilog Mapping: one, two, three always blocks State Encoding User-defined or tool-defined State
More informationOne and a half hours. Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE
One and a half hours Section A is COMPULSORY UNIVERSITY OF MANCHESTER SCHOOL OF COMPUTER SCIENCE Fundamentals of Computer Engineering Date: Thursday 21st January 2016 Time: 14:00-15:30 Answer BOTH Questions
More informationDIGITAL ELECTRONICS. P41l 3 HOURS
UNIVERSITY OF SWAZILAND FACUL TY OF SCIENCE AND ENGINEERING DEPARTMENT OF PHYSICS MAIN EXAMINATION 2015/16 TITLE OF PAPER: COURSE NUMBER: TIME ALLOWED: INSTRUCTIONS: DIGITAL ELECTRONICS P41l 3 HOURS ANSWER
More informationUniversity of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering
University of Toronto Faculty of Applied Science and Engineering Edward S. Rogers Sr. Department of Electrical and Computer Engineering Final Eamination ECE 4F - Digital Systems Eaminers: S. Brown, J.
More informationCOPYRIGHTED MATERIAL INDEX
INDEX Absorption law, 31, 38 Acyclic graph, 35 tree, 36 Addition operators, in VHDL (VHSIC hardware description language), 192 Algebraic division, 105 AND gate, 48 49 Antisymmetric, 34 Applicable input
More informationIntroduction to Verilog design. Design flow (from the book)
Introduction to Verilog design Lecture 2 ECE 156A 1 Design flow (from the book) ECE 156A 2 1 Hierarchical Design Chip Modules Cells Primitives A chip contain many modules A module may contain other modules
More informationR07. Code No: V0423. II B. Tech II Semester, Supplementary Examinations, April
SET - 1 II B. Tech II Semester, Supplementary Examinations, April - 2012 SWITCHING THEORY AND LOGIC DESIGN (Electronics and Communications Engineering) Time: 3 hours Max Marks: 80 Answer any FIVE Questions
More informationUNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) Department of Electronics and Communication Engineering, VBIT
UNIT - V MEMORY P.VIDYA SAGAR ( ASSOCIATE PROFESSOR) contents Memory: Introduction, Random-Access memory, Memory decoding, ROM, Programmable Logic Array, Programmable Array Logic, Sequential programmable
More informationR a) Simplify the logic functions from binary to seven segment display code converter (8M) b) Simplify the following using Tabular method
SET - 1 1. a) Convert the decimal number 250.5 to base 3, base 4 b) Write and prove de-morgan laws c) Implement two input EX-OR gate from 2 to 1 multiplexer (3M) d) Write the demerits of PROM (3M) e) What
More informationThis tutorial gives a complete understanding on Computer Logical Organization starting from basic computer overview till its advanced architecture.
About the Tutorial Computer Logical Organization refers to the level of abstraction above the digital logic level, but below the operating system level. At this level, the major components are functional
More informationCSE 140L Final Exam. Prof. Tajana Simunic Rosing. Spring 2008
CSE 140L Final Exam Prof. Tajana Simunic Rosing Spring 2008 Do not start the exam until you are told to. Turn off any cell phones or pagers. Write your name and PID at the top of every page. Do not separate
More informationThe Processor: Datapath and Control. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University
The Processor: Datapath and Control Jin-Soo Kim (jinsookim@skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Introduction CPU performance factors Instruction count Determined
More information2008 The McGraw-Hill Companies, Inc. All rights reserved.
28 The McGraw-Hill Companies, Inc. All rights reserved. 28 The McGraw-Hill Companies, Inc. All rights reserved. All or Nothing Gate Boolean Expression: A B = Y Truth Table (ee next slide) or AB = Y 28
More informationDepartment of Electronics & Communication Engineering Lab Manual E-CAD Lab
Department of Electronics & Communication Engineering Lab Manual E-CAD Lab Prasad V. Potluri Siddhartha Institute of Technology (Sponsored by: Siddhartha Academy of General & Technical Education) Affiliated
More informationControl and Datapath 8
Control and Datapath 8 Engineering attempts to develop design methods that break a problem up into separate steps to simplify the design and increase the likelihood of a correct solution. Digital system
More informationVerilog. What is Verilog? VHDL vs. Verilog. Hardware description language: Two major languages. Many EDA tools support HDL-based design
Verilog What is Verilog? Hardware description language: Are used to describe digital system in text form Used for modeling, simulation, design Two major languages Verilog (IEEE 1364), latest version is
More informationComputer Architecture
Computer Architecture Lecture 1: Digital logic circuits The digital computer is a digital system that performs various computational tasks. Digital computers use the binary number system, which has two
More informationDE Solution Set QP Code : 00904
DE Solution Set QP Code : 00904 1. Attempt any three of the following: 15 a. Define digital signal. (1M) With respect to digital signal explain the terms digits and bits.(2m) Also discuss active high and
More informationDigital Design with SystemVerilog
Digital Design with SystemVerilog Prof. Stephen A. Edwards Columbia University Spring 25 Synchronous Digital Design Combinational Logic Sequential Logic Summary of Modeling Styles Testbenches Why HDLs?
More informationDavide Rossi DEI University of Bologna AA
Lab of Digital Electronics M / Lab of Hardware-Software Design of Embedded Systems Davide Rossi DEI University of Bologna AA 2017-2018 Objective of this course Design of digital circuits with Hardware
More information