Review. EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

Size: px
Start display at page:

Download "Review. EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)"

Transcription

1 EECS 50 - Components and esign Techniques for igital Systems Lec 6 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley Review Concept of error coding A a few etra bits (enlarges the space of values) that carry information about all the bits etect: Simple function to check of entire datacheck received correctly» Small subset of the space of possible values Correct: Algorithm for locating nearest valid symbol Hamming codes Selective use of parity functions istance # bit flips Parity: XOR of the bits => single error detection SECE» databitsp < p Outline Introduce LFSR as fancy counter Practice of Cyclic Redundancy Checks Burst errors in networks, disks, etc. Theory of LFSRs Power Linear Feedback Shift Registers (LFSRs) These are n-bit counters ehibiting pseudo-random behavior. Built from simple shift-registers with a small number of or gates. Used for: random number generation counters error checking and correction Advantages: very little hardware high speed operation Eample -bit LFSR: -bit LFSR Circuit counts through - different non-zero bit patterns. Left most bit determines shiftl or more comple operation Can build a similar circuit with any number of FFs, may need more or gates. In general, with n flip-flops, n - different non-zero bit patterns. (Intuitively, this is a counter that wraps around many times and in a strange way.) or or or or or or or Applications of LFSRs Performance: Can be used as a random number generator. In general, ors are only ever -input and never connect in series. Sequence is a pseudorandom sequence: Therefore the minimum clock period for these circuits is:» numbers appear in a random sequence T > T -input-or clock overhead» repeats every n - Very little latency, and independent of n! patterns This can be used as a fast counter, if the Random numbers useful in: particular sequence of count values is» computer graphics not important.» cryptography Eample: micro-code micro-pc» automatic testing Used for error detection and correction» CRC (cyclic redundancy codes)» ethernet uses them 6

2 Concept: Redundant Check Eample: TCP Checksum Send a message M and a check word C Simple function on <M,C> to determine if both received correctly (with high probability) Eample: XOR all the bytes in M and append the checksum byte, C, at the end Receiver XORs <M,C> What should result be? What errors are caught? *** bit i is XOR of ith bit of each byte 7 Application (HTTP,FTP, NS) Transport (TCP, UP) Network (IP) ata Link (Ethernet, 80.b) Physical TCP Packet Format TCP Checksum a 6-bit checksum, consisting of the one's complement of the one's complement sum of the contents of the TCP segment header and data, is computed by a sender, and included in a segment transmission. (note end-around carry) Summing all the words, including the checksum word, should yield zero Eample: Ethernet CRC- Application (HTTP,FTP, NS) Transport (TCP, UP) Network (IP) ata Link (Ethernet, 80.b) Physical CRC concept I have a msg polynomial M() of degree m We both have a generator poly G() of degree m Let r() = remainder of M() n / G() M() n = G()p() r() r() is of degree n What is (M() n r()) / G()? n bits of zero at the end tack on n bits of remainder So I send you M() n r() Instead of the zeros mn degree polynomial You divide by G() to check M() is just the m most signficant coefficients, r() the lower m n-bit Message is viewed as coefficients of n-degree polynomial over binary numbers 9 0 Announcements Reading XILINX IEEE 80. Cyclic Redundancy Check (pages -) ftp://ftp.rocksoft.com/papers/crc_v.tt Final on /5 What s Going on in EECS? Towards simulation of a igital Human Yelick: Simulation of the Human Heart Using the Immersed Boundary Method on Parallel Machines Galois Fields - the theory behind LFSRs LFSR circuits performs multiplication on a field. A field is defined as a set with the following: two operations defined on it:» aition and multiplication closed under these operations associative and distributive laws hold aitive and multiplicative identity elements aitive inverse for every element multiplicative inverse for every non-zero element Eample fields: set of rational numbers set of real numbers set of integers is not a field (why?) Finite fields are called Galois fields. Eample: Binary numbers 0, with XOR as aition and AN as multiplication. Called GF(). 0 = = 0 0- =? - =?

3 Galois Fields - The theory behind LFSRs Consider polynomials whose coefficients come from GF(). Each term of the form n is either present or absent. Eamples: 0,,,, and 7 6 = With aition and multiplication these form a field: A : XOR each element individually with no carry: Multiply : multiplying by n is like shifting to the left. So what about division (mod) X = with remainder 0 = with remainder 0 0 X Remainder Polynomial division CRC encoding serial_in serial_in When MSB is zero, just shift left, bringing in net bit When MSB is, XOR with divisor and shiftl Message sent: CRC decoding Galois Fields - The theory behind LFSRs serial_in These polynomials form a Galois (finite) field if we take the results of this multiplication modulo a prime polynomial p(). A prime polynomial is one that cannot be written as the product of two non-trivial polynomials q()r() Perform modulo operation by subtracting a (polynomial) multiple of p() from the result. If the multiple is, this corresponds to XOR-ing the result with p(). For any degree, there eists at least one prime polynomial. With it we can form GF( n ) Aitionally, Every Galois field has a primitive element, α, such that all non-zero elements of the field can be epressed as a power of α. By raising α to powers (modulo p()), all non-zero field elements can be formed. Certain choices of p() make the simple polynomial the primitive element. These polynomials are called primitive, and one eists for every degree. For eample, is primitive. So α = is a primitive element and successive powers of α will generate all non-zero elements of GF(6). Eample on net slide. 7 8

4 Galois Fields Primitives α 0 = α = α = α = α = α 5 = α 6 = α 7 = α 8 = α 9 = α 0 = α = α = α = α = α 5 = Note this pattern of coefficients matches the bits from our -bit LFSR eample. α = mod = or = In general finding primitive polynomials is difficult. Most people just look them up in a table, such as: 9 Primitive Polynomials Hardware shift left Galois Field Multiplication by Taking the result mod p() XOR-ing with the coefficients of p() when the most significant coefficient is. Obtaining all n - non-zero Shifting and XOR-ing n - times. elements by evaluating k for k =,, n - 0 Building an LFSR from a Primitive Poly For k-bit LFSR number the flip-flops with FF on the right. The feedback path comes from the output of the leftmost FF. Find the primitive polynomial of the form k. The 0 = term corresponds to connecting the feedback directly to the input of FF. Each term of the form n corresponds to connecting an or between FF n and n. -bit eample, uses FF s output or between FF and FF FF s input To build an 8-bit LFSR, use the primitive polynomial 8 and connect ors between FF and FF, FF and FF, and FF and FF5. Generating Polynomials CRC-6: G() = 6 5 detects single and double bit errors All errors with an o number of bits Burst errors of length 6 or less Most errors for longer bursts CRC-: G() = Used in ethernet Also bits of aed on front of the message» Initialize the LFSR to all s POWER Motivation Why should a digital designer care about power consumption? Portable devices: handhelds, laptops, phones, MP players, cameras, all need to run for etended periods on small batteries without recharging evices that need regular recharging or large heavy batteries will lose out to those that don t. Power consumption important even in tethered devices. System cost tracks power consumption:» power supplies, distribution, heat removal power conservation, environmental concerns In a span of 0 years we have gone from designing without concern for power consumption to (in many cases) designing with power consumption as the primary design constraint!

5 Battery Technology Battery technology has moved very slowly Moore s law does not seem to apply Li-Ion and NiMh still the dominate technologies Batteries still contribute significant to the weight of mobile devices Nokia 6 - % Handspring PA - 0% Toshiba Portege 0 laptop - 0% 5 Basics Power supply provides energy for charging and discharging wires and transistor gates. The energy supplied is stored and dissipated as heat. Power: Rate of work being done w.r.t time. P dw / dt Rate of energy being used. Units: P = E t Watts = Joules/seconds If a differential amount of charge dq is given a differential increase in energy dw, the potential of the charge is increased by: By definition of current: I = dq / dt dw dq dw / dt = = P = V I dq dt w = t Pdt total energy V = dw / dq A very practical formulation! If we would like to know total energy 6 Basics Warning! In everyday language, the term power is used incorrectly in place of energy. Power is not energy. Power is not something you can run out of. Power can not be lost or used up. It is not a thing, it is merely a rate. It can not be put into a battery any more than velocity can be put in the gas tank of a car. Metrics How do we measure and compare power consumption? One popular metric for microprocessors is: MIPS/watt MIPS, millions of instructions per second.» Typical modern value? Watt, standard unit of power consumption.» Typical value for modern processor? MIPS/watt is reflective of the tradeoff between performance and power. Increasing performance requires increasing power. Problem with MIPS/watt» MIPS/watt values are typically not independent of MIPS techniques eist to achieve very high MIPS/watt values, but at very low absolute MIPS (used in watches)» Metric only relevant for comparing processors with a similar performance. One solution, MIPS /watt. Puts more weight on performance. 7 8 Metrics How does MIPS/watt relate to energy? Average power consumption = energy / time MIPS/watt = instructions/sec / joules/sec = instructions/joule therefore an equivalent metric (reciprocal) is energy per operation (E/op) E/op is more general - applies to more than processors also, usually more relevant, as batteries life is limited by total energy draw. This metric gives us a measure to use to compare two alternative implementations of a particular function. 9 Power in CMOS Switching Energy: energy used to switch a node Calculate energy dissipated in pullup: E sw = = cv P( t) dt = dv c ( V Energy supplied V pullup network pulldown network GN 0 C i(t) v(t) v) i( t) dt = v dv = cv V v(t) ( V cv Energy stored = cv v) c ( dv dt) dt = Energy dissipated An equal amount of energy is dissipated on pulldown. 0 5

6 Switching Power Gate power consumption: Assume a gate output is switching its output at a rate of: P /f = E t = switching rate E sw Therefore: P = α f cv P Chip/circuit power consumption: P = n α f cv number of nodes (or gates) α f activity factor clock rate (probability of switching on any particular clock period) clock f Vin Other Sources of Energy Consumption Short Circuit Current: I Vout Vout Vin Vin 0-0% of total chip power Junction iode Leakage: ~nwatt/gate few mwatts/chip I Vin=0 Transistor drain regions leak charge to substrate. evice Ids Leakage: Ioff Vout=V I iode Characteristic Ids V Vth Transistor s/d conductance never turns off all the way. ~pwatts/transistor. ~mwatt/chip Low voltage processes much worse. Vgs Controlling Energy Consumption What control do you have as a designer? Largest contributing component to CMOS power consumption is switching power: P = n α Factors influencing power consumption: n: total number of nodes in circuit α: activity factor (probability of each node switching) f: clock frequency (does this effect energy consumption?) V : power supply voltage f cv What control do you have over each factor? How does each effect the total Energy? Power / Cost / Performance Parallelism to trade cost for performance. As we trade cost for performance what happens to energy? 0. m 0. mt 0. mt 0. proj grade m mt 0. proj mt acc = m mt; acc = acc mt; 0. acc = 0. acc; acc = 0. proj; grade = acc acc; E MUL E A E WIRES E MUL E A E WIRES E MUL E A E MUXES E CNTL E WIRES The lowest energy consumer is the solution that minimizes cost without time multipleing operations. grade controller m m mt proj ALU acc acc 6

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power)

EECS Components and Design Techniques for Digital Systems. Lec 26 CRCs, LFSRs (and a little power) EECS 150 - Components and esign Techniques for igital Systems Lec 26 CRCs, LFSRs (and a little power) avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley http://www.eecs.berkeley.edu/~culler

More information

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world.

Outline. EECS Components and Design Techniques for Digital Systems. Lec 18 Error Coding. In the real world. Our beautiful digital world. Outline EECS 150 - Components and esign Techniques for igital Systems Lec 18 Error Coding Errors and error models Parity and Hamming Codes (SECE) Errors in Communications LFSRs Cyclic Redundancy Check

More information

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs)

EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) EECS150 - igital esign Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Nov 21, 2002 John Wawrzynek Fall 2002 EECS150 Lec26-ECC Page 1 Outline Error detection using parity Hamming

More information

EECS150 - Digital Design Lecture 21 - Design Blocks

EECS150 - Digital Design Lecture 21 - Design Blocks EECS150 - Digital Design Lecture 21 - Design Blocks April 3, 2012 John Wawrzynek Spring 2012 EECS150 - Lec21-db3 Page 1 Fixed Shifters / Rotators fixed shifters hardwire the shift amount into the circuit.

More information

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR

Linear Feedback Shift Registers (LFSRs) 4-bit LFSR Linear Feedback Shift Registers (LFSRs) These are n-bit counters exhibiting pseudo-random behavior. Built from simple shift-registers with a small number of xor gates. Used for: random number generation

More information

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates

EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs. Cross-coupled NOR gates EECS150 - Digital Design Lecture 23 - FFs revisited, FIFOs, ECCs, LSFRs April 16, 2009 John Wawrzynek Spring 2009 EECS150 - Lec24-blocks Page 1 Cross-coupled NOR gates remember, If both R=0 & S=0, then

More information

EECS150 - Digital Design Lecture 27 - misc2

EECS150 - Digital Design Lecture 27 - misc2 EECS150 - Digital Design Lecture 27 - misc2 May 1, 2002 John Wawrzynek Spring 2002 EECS150 - Lec27-misc2 Page 1 Outline Linear Feedback Shift Registers Theory and practice Simple hardware division algorithms

More information

Outline. EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Simple Error Detection Coding

Outline. EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Simple Error Detection Coding Outline EECS150 - Digital Design Lecture 26 Error Correction Codes, Linear Feedback Shift Registers (LFSRs) Error detection using arity Hamming code for error detection/correction Linear Feedback Shift

More information

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap

EECS150 - Digital Design Lecture 26 Faults and Error Correction. Recap EECS150 - Digital Design Lecture 26 Faults and Error Correction Nov. 26, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof.

More information

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs

EECS150 - Digital Design Lecture 26 - Faults and Error Correction. Types of Faults in Digital Designs EECS150 - Digital Design Lecture 26 - Faults and Error Correction April 25, 2013 John Wawrzynek 1 Types of Faults in Digital Designs Design Bugs (function, timing, power draw) detected and corrected at

More information

Error Detection & Correction

Error Detection & Correction Error Detection & Correction Error detection & correction noisy channels techniques in networking error detection error detection capability retransmition error correction reconstruction checksums redundancy

More information

Information redundancy

Information redundancy Information redundancy Information redundancy add information to date to tolerate faults error detecting codes error correcting codes data applications communication memory p. 2 - Design of Fault Tolerant

More information

ECE 4450:427/527 - Computer Networks Spring 2017

ECE 4450:427/527 - Computer Networks Spring 2017 ECE 4450:427/527 - Computer Networks Spring 2017 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 5.2: Error Detection & Correction Dr. Nghi Tran (ECE-University of Akron) ECE 4450:427/527

More information

B. Cyclic Codes. Primitive polynomials are the generator polynomials of cyclic codes.

B. Cyclic Codes. Primitive polynomials are the generator polynomials of cyclic codes. B. Cyclic Codes A cyclic code is a linear block code with the further property that a shift of a codeword results in another codeword. These are based on polynomials whose elements are coefficients from

More information

CprE 281: Digital Logic

CprE 281: Digital Logic CprE 28: Digital Logic Instructor: Alexander Stoytchev http://www.ece.iastate.edu/~alexs/classes/ Simple Processor CprE 28: Digital Logic Iowa State University, Ames, IA Copyright Alexander Stoytchev Digital

More information

Where Does Power Go in CMOS?

Where Does Power Go in CMOS? Power Dissipation Where Does Power Go in CMOS? Dynamic Power Consumption Charging and Discharging Capacitors Short Circuit Currents Short Circuit Path between Supply Rails during Switching Leakage Leaking

More information

How does the computer generate observations from various distributions specified after input analysis?

How does the computer generate observations from various distributions specified after input analysis? 1 How does the computer generate observations from various distributions specified after input analysis? There are two main components to the generation of observations from probability distributions.

More information

Lecture 8-1. Low Power Design

Lecture 8-1. Low Power Design Lecture 8 Konstantinos Masselos Department of Electrical & Electronic Engineering Imperial College London URL: http://cas.ee.ic.ac.uk/~kostas E-mail: k.masselos@ic.ac.uk Lecture 8-1 Based on slides/material

More information

Power in Digital CMOS Circuits. Fruits of Scaling SpecInt 2000

Power in Digital CMOS Circuits. Fruits of Scaling SpecInt 2000 Power in Digital CMOS Circuits Mark Horowitz Computer Systems Laboratory Stanford University horowitz@stanford.edu Copyright 2004 by Mark Horowitz MAH 1 Fruits of Scaling SpecInt 2000 1000.00 100.00 10.00

More information

EE241 - Spring 2000 Advanced Digital Integrated Circuits. Announcements

EE241 - Spring 2000 Advanced Digital Integrated Circuits. Announcements EE241 - Spring 2 Advanced Digital Integrated Circuits Lecture 11 Low Power-Low Energy Circuit Design Announcements Homework #2 due Friday, 3/3 by 5pm Midterm project reports due in two weeks - 3/7 by 5pm

More information

Design of Sequential Circuits

Design of Sequential Circuits Design of Sequential Circuits Seven Steps: Construct a state diagram (showing contents of flip flop and inputs with next state) Assign letter variables to each flip flop and each input and output variable

More information

EECS 270 Midterm Exam 2 Fall 2009

EECS 270 Midterm Exam 2 Fall 2009 EECS 270 Midterm Exam 2 Fall 2009 Name: unique name: UMID: Sign the honor code: I have neither given nor received aid on this exam nor observed anyone else doing so. Scores: NOTES: Problem # Points 1&2

More information

EE115C Winter 2017 Digital Electronic Circuits. Lecture 6: Power Consumption

EE115C Winter 2017 Digital Electronic Circuits. Lecture 6: Power Consumption EE115C Winter 2017 Digital Electronic Circuits Lecture 6: Power Consumption Four Key Design Metrics for Digital ICs Cost of ICs Reliability Speed Power EE115C Winter 2017 2 Power and Energy Challenges

More information

Chapter 1. Binary Systems 1-1. Outline. ! Introductions. ! Number Base Conversions. ! Binary Arithmetic. ! Binary Codes. ! Binary Elements 1-2

Chapter 1. Binary Systems 1-1. Outline. ! Introductions. ! Number Base Conversions. ! Binary Arithmetic. ! Binary Codes. ! Binary Elements 1-2 Chapter 1 Binary Systems 1-1 Outline! Introductions! Number Base Conversions! Binary Arithmetic! Binary Codes! Binary Elements 1-2 3C Integration 傳輸與介面 IA Connecting 聲音與影像 Consumer Screen Phone Set Top

More information

Unit 1 - Digital System Design

Unit 1 - Digital System Design LCTRICAL AN COMPUTR NGINRING PARTMNT, OAKLAN UNIVRSITY C-37: Computer Hardare esign Winter 8 IGITAL SYSTM MOL FSM (CONTROL) + ATAPATH CIRCUIT Unit - igital System esign ATAPATH CIRCUIT Inputs clock FINIT

More information

Some math for embedded algorithms

Some math for embedded algorithms Some math for embedded algorithms CRC (Cyclic Redundancy Check) is often used to check integrity of transmitted messages Hamming codes can correct one error BCH codes can correct more LFSRs (Linear Feedback

More information

Lecture 6 Power Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010

Lecture 6 Power Zhuo Feng. Z. Feng MTU EE4800 CMOS Digital IC Design & Analysis 2010 EE4800 CMOS Digital IC Design & Analysis Lecture 6 Power Zhuo Feng 6.1 Outline Power and Energy Dynamic Power Static Power 6.2 Power and Energy Power is drawn from a voltage source attached to the V DD

More information

Binary addition example worked out

Binary addition example worked out Binary addition example worked out Some terms are given here Exercise: what are these numbers equivalent to in decimal? The initial carry in is implicitly 0 1 1 1 0 (Carries) 1 0 1 1 (Augend) + 1 1 1 0

More information

VHDL Implementation of Reed Solomon Improved Encoding Algorithm

VHDL Implementation of Reed Solomon Improved Encoding Algorithm VHDL Implementation of Reed Solomon Improved Encoding Algorithm P.Ravi Tej 1, Smt.K.Jhansi Rani 2 1 Project Associate, Department of ECE, UCEK, JNTUK, Kakinada A.P. 2 Assistant Professor, Department of

More information

Lecture 7 Circuit Delay, Area and Power

Lecture 7 Circuit Delay, Area and Power Lecture 7 Circuit Delay, Area and Power lecture notes from S. Mitra Intro VLSI System course (EE271) Introduction to VLSI Systems 1 Circuits and Delay Introduction to VLSI Systems 2 Power, Delay and Area:

More information

EECS150 - Digital Design Lecture 25 Shifters and Counters. Recap

EECS150 - Digital Design Lecture 25 Shifters and Counters. Recap EECS150 - Digital Design Lecture 25 Shifters and Counters Nov. 21, 2013 Prof. Ronald Fearing Electrical Engineering and Computer Sciences University of California, Berkeley (slides courtesy of Prof. John

More information

FPGA BASED DESIGN OF PARALLEL CRC GENERATION FOR HIGH SPEED APPLICATION

FPGA BASED DESIGN OF PARALLEL CRC GENERATION FOR HIGH SPEED APPLICATION 258 FPGA BASED DESIGN OF PARALLEL CRC GENERATION FOR HIGH SPEED APPLICATION Sri N.V.N.Prasanna Kumar 1, S.Bhagya Jyothi 2,G.K.S.Tejaswi 3 1 prasannakumar429@gmail.com, 2 sjyothi567@gmail.com, 3 tejaswikakatiya@gmail.com

More information

Counters. We ll look at different kinds of counters and discuss how to build them

Counters. We ll look at different kinds of counters and discuss how to build them Counters We ll look at different kinds of counters and discuss how to build them These are not only examples of sequential analysis and design, but also real devices used in larger circuits 1 Introducing

More information

Getting Connected. Chapter 2, Part 2. Networking CS 3470, Section 1 Sarah Diesburg

Getting Connected. Chapter 2, Part 2. Networking CS 3470, Section 1 Sarah Diesburg Getting Connected Chapter 2, Part 2 Networking CS 3470, Section 1 Sarah Diesburg 1 Five Problems Encoding/decoding Framing Error Detection Error Correction Media Access 2 Five Problems Encoding/decoding

More information

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007

EECS Components and Design Techniques for Digital Systems. FSMs 9/11/2007 EECS 150 - Components and Design Techniques for Digital Systems FSMs 9/11/2007 Sarah Bird Electrical Engineering and Computer Sciences University of California, Berkeley Slides borrowed from David Culler

More information

CS/EE 181a 2008/09 Lecture 4

CS/EE 181a 2008/09 Lecture 4 CS/EE 181a 28/9 Lecture 4 General topic of today s lecture: Logic Optimization Karnaugh maps. Quine-McCluskey tabulation method (not in detail). Non series-parallel networks (some care is required). Reference

More information

ESE 570: Digital Integrated Circuits and VLSI Fundamentals

ESE 570: Digital Integrated Circuits and VLSI Fundamentals ESE 570: Digital Integrated Circuits and VLSI Fundamentals Lec 18: March 27, 2018 Dynamic Logic, Charge Injection Lecture Outline! Sequential MOS Logic " D-Latch " Timing Constraints! Dynamic Logic " Domino

More information

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline.

Review: Designing with FSM. EECS Components and Design Techniques for Digital Systems. Lec 09 Counters Outline. Review: esigning with FSM EECS 150 - Components and esign Techniques for igital Systems Lec 09 Counters 9-28-0 avid Culler Electrical Engineering and Computer Sciences University of California, Berkeley

More information

8. Design Tradeoffs x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS

8. Design Tradeoffs x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS 8. Design Tradeoffs 6.004x Computation Structures Part 1 Digital Circuits Copyright 2015 MIT EECS 6.004 Computation Structures L08: Design Tradeoffs, Slide #1 There are a large number of implementations

More information

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University

Fault Tolerant Computing CS 530 Information redundancy: Coding theory. Yashwant K. Malaiya Colorado State University CS 530 Information redundancy: Coding theory Yashwant K. Malaiya Colorado State University March 30, 2017 1 Information redundancy: Outline Using a parity bit Codes & code words Hamming distance Error

More information

Error Correction and Trellis Coding

Error Correction and Trellis Coding Advanced Signal Processing Winter Term 2001/2002 Digital Subscriber Lines (xdsl): Broadband Communication over Twisted Wire Pairs Error Correction and Trellis Coding Thomas Brandtner brandt@sbox.tugraz.at

More information

8. Design Tradeoffs x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS

8. Design Tradeoffs x Computation Structures Part 1 Digital Circuits. Copyright 2015 MIT EECS 8. Design Tradeoffs 6.004x Computation Structures Part 1 Digital Circuits Copyright 2015 MIT EECS 6.004 Computation Structures L08: Design Tradeoffs, Slide #1 There are a large number of implementations

More information

A Brief Encounter with Linear Codes

A Brief Encounter with Linear Codes Boise State University ScholarWorks Mathematics Undergraduate Theses Department of Mathematics 8-2014 A Brief Encounter with Linear Codes Brent El-Bakri Boise State University, brentelbakri@boisestate.edu

More information

EECS 427 Lecture 11: Power and Energy Reading: EECS 427 F09 Lecture Reminders

EECS 427 Lecture 11: Power and Energy Reading: EECS 427 F09 Lecture Reminders EECS 47 Lecture 11: Power and Energy Reading: 5.55 [Adapted from Irwin and Narayanan] 1 Reminders CAD5 is due Wednesday 10/8 You can submit it by Thursday 10/9 at noon Lecture on 11/ will be taught by

More information

Intro To Digital Logic

Intro To Digital Logic Intro To Digital Logic 1 Announcements... Project 2.2 out But delayed till after the midterm Midterm in a week Covers up to last lecture + next week's homework & lab Nick goes "H-Bomb of Justice" About

More information

DIGITAL LOGIC CIRCUITS

DIGITAL LOGIC CIRCUITS DIGITAL LOGIC CIRCUITS Introduction Logic Gates Boolean Algebra Map Specification Combinational Circuits Flip-Flops Sequential Circuits Memory Components Integrated Circuits Digital Computers 2 LOGIC GATES

More information

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing

Boolean Algebra and Digital Logic 2009, University of Colombo School of Computing IT 204 Section 3.0 Boolean Algebra and Digital Logic Boolean Algebra 2 Logic Equations to Truth Tables X = A. B + A. B + AB A B X 0 0 0 0 3 Sum of Products The OR operation performed on the products of

More information

PSEUDORANDOM BINARY SEQUENCES GENERATOR

PSEUDORANDOM BINARY SEQUENCES GENERATOR PSEUDORANDOM BINARY SEQUENCES GENERATOR 1. Theoretical considerations White noise is defined as a random process with power spectral density that is constant in an infinite frequency band. Quasi-white

More information

EE 466/586 VLSI Design. Partha Pande School of EECS Washington State University

EE 466/586 VLSI Design. Partha Pande School of EECS Washington State University EE 466/586 VLSI Design Partha Pande School of EECS Washington State University pande@eecs.wsu.edu Lecture 8 Power Dissipation in CMOS Gates Power in CMOS gates Dynamic Power Capacitance switching Crowbar

More information

Digital Systems Roberto Muscedere Images 2013 Pearson Education Inc. 1

Digital Systems Roberto Muscedere Images 2013 Pearson Education Inc. 1 Digital Systems Digital systems have such a prominent role in everyday life The digital age The technology around us is ubiquitous, that is we don t even notice it anymore Digital systems are used in:

More information

GF(2 m ) arithmetic: summary

GF(2 m ) arithmetic: summary GF(2 m ) arithmetic: summary EE 387, Notes 18, Handout #32 Addition/subtraction: bitwise XOR (m gates/ops) Multiplication: bit serial (shift and add) bit parallel (combinational) subfield representation

More information

CSE370: Introduction to Digital Design

CSE370: Introduction to Digital Design CSE370: Introduction to Digital Design Course staff Gaetano Borriello, Brian DeRenzi, Firat Kiyak Course web www.cs.washington.edu/370/ Make sure to subscribe to class mailing list (cse370@cs) Course text

More information

Design at the Register Transfer Level

Design at the Register Transfer Level Week-7 Design at the Register Transfer Level Algorithmic State Machines Algorithmic State Machine (ASM) q Our design methodologies do not scale well to real-world problems. q 232 - Logic Design / Algorithmic

More information

Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them.

Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them. ECE 7670 Lecture 5 Cyclic codes Objective: To become acquainted with the basic concepts of cyclic codes and some aspects of encoder implementations for them. Reading: Chapter 5. 1 Cyclic codes Definition

More information

CSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Instructor: Mohsen Imani. Slides from Tajana Simunic Rosing

CSE140L: Components and Design Techniques for Digital Systems Lab. FSMs. Instructor: Mohsen Imani. Slides from Tajana Simunic Rosing CSE140L: Components and Design Techniques for Digital Systems Lab FSMs Instructor: Mohsen Imani Slides from Tajana Simunic Rosing Source: Vahid, Katz 1 FSM design example Moore vs. Mealy Remove one 1 from

More information

Lecture 2: CMOS technology. Energy-aware computing

Lecture 2: CMOS technology. Energy-aware computing Energy-Aware Computing Lecture 2: CMOS technology Basic components Transistors Two types: NMOS, PMOS Wires (interconnect) Transistors as switches Gate Drain Source NMOS: When G is @ logic 1 (actually over

More information

Cryptography Lecture 3. Pseudorandom generators LFSRs

Cryptography Lecture 3. Pseudorandom generators LFSRs Cryptography Lecture 3 Pseudorandom generators LFSRs Remember One Time Pad is ideal With OTP you need the same transmission capacity via an already secure channel for the key as you can then secure via

More information

vidyarthiplus.com vidyarthiplus.com vidyarthiplus.com ANNA UNIVERSITY- COMBATORE B.E./ B.TECH. DEGREE EXAMINATION - JUNE 2009. ELECTRICAL & ELECTONICS ENGG. - FOURTH SEMESTER DIGITAL LOGIC CIRCUITS PART-A

More information

Multimedia Systems WS 2010/2011

Multimedia Systems WS 2010/2011 Multimedia Systems WS 2010/2011 15.11.2010 M. Rahamatullah Khondoker (Room # 36/410 ) University of Kaiserslautern Department of Computer Science Integrated Communication Systems ICSY http://www.icsy.de

More information

EE141Microelettronica. CMOS Logic

EE141Microelettronica. CMOS Logic Microelettronica CMOS Logic CMOS logic Power consumption in CMOS logic gates Where Does Power Go in CMOS? Dynamic Power Consumption Charging and Discharging Capacitors Short Circuit Currents Short Circuit

More information

Introduction to CMOS VLSI Design (E158) Lecture 20: Low Power Design

Introduction to CMOS VLSI Design (E158) Lecture 20: Low Power Design Harris Introduction to CMOS VLSI Design (E158) Lecture 20: Low Power Design David Harris Harvey Mudd College David_Harris@hmc.edu Based on EE271 developed by Mark Horowitz, Stanford University MAH E158

More information

Assume that the follow string of bits constitutes one of the segments we which to transmit.

Assume that the follow string of bits constitutes one of the segments we which to transmit. Cyclic Redundancy Checks( CRC) Cyclic Redundancy Checks fall into a class of codes called Algebraic Codes; more specifically, CRC codes are Polynomial Codes. These are error-detecting codes, not error-correcting

More information

Cyclic Redundancy Check Codes

Cyclic Redundancy Check Codes Cyclic Redundancy Check Codes Lectures No. 17 and 18 Dr. Aoife Moloney School of Electronics and Communications Dublin Institute of Technology Overview These lectures will look at the following: Cyclic

More information

The goal differs from prime factorization. Prime factorization would initialize all divisors to be prime numbers instead of integers*

The goal differs from prime factorization. Prime factorization would initialize all divisors to be prime numbers instead of integers* Quantum Algorithm Processor For Finding Exact Divisors Professor J R Burger Summary Wiring diagrams are given for a quantum algorithm processor in CMOS to compute, in parallel, all divisors of an n-bit

More information

Time Allowed 3:00 hrs. April, pages

Time Allowed 3:00 hrs. April, pages IGITAL ESIGN COEN 32 Prof. r. A. J. Al-Khalili Time Allowed 3: hrs. April, 998 2 pages Answer All uestions No materials are allowed uestion a) esign a half subtractor b) esign a full subtractor c) Using

More information

Chapter 6. BCH Codes

Chapter 6. BCH Codes Chapter 6 BCH Codes Description of the Codes Decoding of the BCH Codes Outline Implementation of Galois Field Arithmetic Implementation of Error Correction Nonbinary BCH Codes and Reed-Solomon Codes Weight

More information

ECE321 Electronics I

ECE321 Electronics I ECE321 Electronics I Lecture 1: Introduction to Digital Electronics Payman Zarkesh-Ha Office: ECE Bldg. 230B Office hours: Tuesday 2:00-3:00PM or by appointment E-mail: payman@ece.unm.edu Slide: 1 Textbook

More information

Logic and Computer Design Fundamentals. Chapter 8 Sequencing and Control

Logic and Computer Design Fundamentals. Chapter 8 Sequencing and Control Logic and Computer Design Fundamentals Chapter 8 Sequencing and Control Datapath and Control Datapath - performs data transfer and processing operations Control Unit - Determines enabling and sequencing

More information

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary

EECS150 - Digital Design Lecture 11 - Shifters & Counters. Register Summary EECS50 - Digital Design Lecture - Shifters & Counters February 24, 2003 John Wawrzynek Spring 2005 EECS50 - Lec-counters Page Register Summary All registers (this semester) based on Flip-flops: q 3 q 2

More information

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department

King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department King Fahd University of Petroleum and Minerals College of Computer Science and Engineering Computer Engineering Department Page 1 of 13 COE 202: Digital Logic Design (3-0-3) Term 112 (Spring 2012) Final

More information

Lecture 12. Block Diagram

Lecture 12. Block Diagram Lecture 12 Goals Be able to encode using a linear block code Be able to decode a linear block code received over a binary symmetric channel or an additive white Gaussian channel XII-1 Block Diagram Data

More information

Sequential Circuits Sequential circuits combinational circuits state gate delay

Sequential Circuits Sequential circuits combinational circuits state gate delay Sequential Circuits Sequential circuits are those with memory, also called feedback. In this, they differ from combinational circuits, which have no memory. The stable output of a combinational circuit

More information

Convolutional Coding LECTURE Overview

Convolutional Coding LECTURE Overview MIT 6.02 DRAFT Lecture Notes Spring 2010 (Last update: March 6, 2010) Comments, questions or bug reports? Please contact 6.02-staff@mit.edu LECTURE 8 Convolutional Coding This lecture introduces a powerful

More information

2013/Fall-Winter Term Monday 12:50 Room# or 5F Meeting Room Instructor: Fire Tom Wada, Professor

2013/Fall-Winter Term Monday 12:50 Room# or 5F Meeting Room Instructor: Fire Tom Wada, Professor SYSTEM ARCHITECTURE ADVANCED SYSTEM ARCHITECTURE Error Correction Code 1 01/Fall-Winter Term Monday 1:50 Room# 1- or 5F Meeting Room Instructor: Fire Tom Wada, Professor 014/1/0 System Arch 1 Introduction

More information

Fully-parallel linear error block coding and decoding a Boolean approach

Fully-parallel linear error block coding and decoding a Boolean approach Fully-parallel linear error block coding and decoding a Boolean approach Hermann Meuth, Hochschule Darmstadt Katrin Tschirpke, Hochschule Aschaffenburg 8th International Workshop on Boolean Problems, 28

More information

THEORETICAL SIMPLE POWER ANALYSIS OF THE GRAIN STREAM CIPHER. A. A. Zadeh and Howard M. Heys

THEORETICAL SIMPLE POWER ANALYSIS OF THE GRAIN STREAM CIPHER. A. A. Zadeh and Howard M. Heys THEORETICAL SIMPLE POWER ANALYSIS OF THE GRAIN STREAM CIPHER A. A. Zadeh and Howard M. Heys Electrical and Computer Engineering Faculty of Engineering and Applied Science Memorial University of Newfoundland

More information

Power Dissipation. Where Does Power Go in CMOS?

Power Dissipation. Where Does Power Go in CMOS? Power Dissipation [Adapted from Chapter 5 of Digital Integrated Circuits, 2003, J. Rabaey et al.] Where Does Power Go in CMOS? Dynamic Power Consumption Charging and Discharging Capacitors Short Circuit

More information

Microprocessor Power Analysis by Labeled Simulation

Microprocessor Power Analysis by Labeled Simulation Microprocessor Power Analysis by Labeled Simulation Cheng-Ta Hsieh, Kevin Chen and Massoud Pedram University of Southern California Dept. of EE-Systems Los Angeles CA 989 Outline! Introduction! Problem

More information

ECE 545 Digital System Design with VHDL Lecture 1. Digital Logic Refresher Part A Combinational Logic Building Blocks

ECE 545 Digital System Design with VHDL Lecture 1. Digital Logic Refresher Part A Combinational Logic Building Blocks ECE 545 Digital System Design with VHDL Lecture Digital Logic Refresher Part A Combinational Logic Building Blocks Lecture Roadmap Combinational Logic Basic Logic Review Basic Gates De Morgan s Law Combinational

More information

Menu. Review of Number Systems EEL3701 EEL3701. Math. Review of number systems >Binary math >Signed number systems

Menu. Review of Number Systems EEL3701 EEL3701. Math. Review of number systems >Binary math >Signed number systems Menu Review of number systems >Binary math >Signed number systems Look into my... 1 Our decimal (base 10 or radix 10) number system is positional. Ex: 9437 10 = 9x10 3 + 4x10 2 + 3x10 1 + 7x10 0 We have

More information

Logic Design Combinational Circuits. Digital Computer Design

Logic Design Combinational Circuits. Digital Computer Design Logic Design Combinational Circuits Digital Computer Design Topics Combinational Logic Karnaugh Maps Combinational uilding locks Timing 2 Logic Circuit logic circuit is composed of: Inputs Outputs Functional

More information

Designing Information Devices and Systems II Spring 2018 J. Roychowdhury and M. Maharbiz Discussion 1A

Designing Information Devices and Systems II Spring 2018 J. Roychowdhury and M. Maharbiz Discussion 1A EEC 16B esigning Information evices and ystems II pring 2018 J. Roychowdhury and M. Maharbiz iscussion 1A 1 igit Bases (N) p is used to indicate that the number N is expressed in base p. For example, (N)

More information

Logic BIST. Sungho Kang Yonsei University

Logic BIST. Sungho Kang Yonsei University Logic BIST Sungho Kang Yonsei University Outline Introduction Basics Issues Weighted Random Pattern Generation BIST Architectures Deterministic BIST Conclusion 2 Built In Self Test Test/ Normal Input Pattern

More information

CSC9R6 Computer Design. Practical Digital Logic

CSC9R6 Computer Design. Practical Digital Logic CSC9R6 Computer Design Practical Digital Logic 1 References (for this part of CSC9R6) Hamacher et al: Computer Organization App A. In library Floyd: Digital Fundamentals Ch 1, 3-6, 8-10 web page: www.prenhall.com/floyd/

More information

CSE140L: Components and Design Techniques for Digital Systems Lab. Power Consumption in Digital Circuits. Pietro Mercati

CSE140L: Components and Design Techniques for Digital Systems Lab. Power Consumption in Digital Circuits. Pietro Mercati CSE140L: Components and Design Techniques for Digital Systems Lab Power Consumption in Digital Circuits Pietro Mercati 1 About the final Friday 09/02 at 11.30am in WLH2204 ~2hrs exam including (but not

More information

L9: Galois Fields. Reading material

L9: Galois Fields. Reading material L9: Galois Fields Reading material Muzio & Wesselkamper Multiple-valued switching theory, p. 3-5, - 4 Sasao, Switching theory for logic synthesis, pp. 43-44 p. 2 - Advanced Logic Design L9 - Elena Dubrova

More information

Hakim Weatherspoon CS 3410 Computer Science Cornell University

Hakim Weatherspoon CS 3410 Computer Science Cornell University Hakim Weatherspoon CS 3410 Computer Science Cornell University The slides are the product of many rounds of teaching CS 3410 by Professors Weatherspoon, Bala, Bracy, and Sirer. memory inst 32 register

More information

Cyclic codes: overview

Cyclic codes: overview Cyclic codes: overview EE 387, Notes 14, Handout #22 A linear block code is cyclic if the cyclic shift of a codeword is a codeword. Cyclic codes have many advantages. Elegant algebraic descriptions: c(x)

More information

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits.

Digital Logic. CS211 Computer Architecture. l Topics. l Transistors (Design & Types) l Logic Gates. l Combinational Circuits. CS211 Computer Architecture Digital Logic l Topics l Transistors (Design & Types) l Logic Gates l Combinational Circuits l K-Maps Figures & Tables borrowed from:! http://www.allaboutcircuits.com/vol_4/index.html!

More information

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS

Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS Department of Electrical & Electronics EE-333 DIGITAL SYSTEMS 1) Given the two binary numbers X = 1010100 and Y = 1000011, perform the subtraction (a) X -Y and (b) Y - X using 2's complements. a) X = 1010100

More information

Design and Implementation of High Speed CRC Generators

Design and Implementation of High Speed CRC Generators Department of ECE, Adhiyamaan College of Engineering, Hosur, Tamilnadu, India Design and Implementation of High Speed CRC Generators ChidambarakumarS 1, Thaky Ahmed 2, UbaidullahMM 3, VenketeshK 4, JSubhash

More information

Latches. October 13, 2003 Latches 1

Latches. October 13, 2003 Latches 1 Latches The second part of CS231 focuses on sequential circuits, where we add memory to the hardware that we ve already seen. Our schedule will be very similar to before: We first show how primitive memory

More information

CSE493/593. Designing for Low Power

CSE493/593. Designing for Low Power CSE493/593 Designing for Low Power Mary Jane Irwin [Adapted from Rabaey s Digital Integrated Circuits, 2002, J. Rabaey et al.].1 Why Power Matters Packaging costs Power supply rail design Chip and system

More information

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance

For smaller NRE cost For faster time to market For smaller high-volume manufacturing cost For higher performance University of California at Berkeley College of Engineering Department of Electrical Engineering and Computer Sciences EECS5 J. Wawrzynek Spring 22 2/22/2. [2 pts] Short Answers. Midterm Exam I a) [2 pts]

More information

Digital Integrated Circuits Designing Combinational Logic Circuits. Fuyuzhuo

Digital Integrated Circuits Designing Combinational Logic Circuits. Fuyuzhuo Digital Integrated Circuits Designing Combinational Logic Circuits Fuyuzhuo Introduction Digital IC Dynamic Logic Introduction Digital IC EE141 2 Dynamic logic outline Dynamic logic principle Dynamic logic

More information

Lecture on Sensor Networks

Lecture on Sensor Networks Lecture on Sensor Networks Cyclic Historical Redundancy Development Copyright (c) 2008 Dr. Thomas Haenselmann (University of Mannheim, Germany). Permission is granted to copy, distribute and/or modify

More information

Sample Test Paper - I

Sample Test Paper - I Scheme G Sample Test Paper - I Course Name : Computer Engineering Group Marks : 25 Hours: 1 Hrs. Q.1) Attempt any THREE: 09 Marks a) Define i) Propagation delay ii) Fan-in iii) Fan-out b) Convert the following:

More information

Chapter 4 Mathematics of Cryptography

Chapter 4 Mathematics of Cryptography Chapter 4 Mathematics of Cryptography Part II: Algebraic Structures Copyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4.1 Chapter 4 Objectives To review the concept

More information

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process

Parity Checker Example. EECS150 - Digital Design Lecture 9 - Finite State Machines 1. Formal Design Process. Formal Design Process Parity Checker Example A string of bits has even parity if the number of 1 s in the string is even. Design a circuit that accepts a bit-serial stream of bits and outputs a 0 if the parity thus far is even

More information

Algorithms (II) Yu Yu. Shanghai Jiaotong University

Algorithms (II) Yu Yu. Shanghai Jiaotong University Algorithms (II) Yu Yu Shanghai Jiaotong University Chapter 1. Algorithms with Numbers Two seemingly similar problems Factoring: Given a number N, express it as a product of its prime factors. Primality:

More information