6.111 Fall 2004 Lecture 1, Slide 1Welcome to 6.111!Introductory Digital Systems LaboratoryHandouts:Info form (yellow)Course CalendarSafety MemoKit Checkout FormLecture slidesLectures:Chris TermanTAs:Karthik BalakrishnanHuangBin SonColin Weltin-Wu6.111 Fall 2004 Lecture 1, Slide 2Course Website (http://mit.edu/6.111)6.111 Fall 2004 Lecture 1, Slide 36.111 Goals• Fundamentals of logic design– combinational and sequential blocks• System integration with multiple components– FPGAs, memories, discrete components, etc.• Learn a Hardware Description Language (Verilog)• Interfacing issues with analog components– ADC, DAC, sensors, etc. • Understand different design methodologies• Understand different design metrics– component/gate count and implementation area, switching speed, energy dissipation and power• Design & implement a substantial digital system• Have fun!6.111 Fall 2004 Lecture 1, Slide 4Labs: learning the ropes• Lab 1– Learn about the lab kit and wire something– Learn about lab equipment in the Digital Lab (38-600): oscilloscopes and logic analyzers– Program and test a PAL (Programmable Array Logic Device)– Introduction to Verilog• Lab 2– Design and implement a Finite State Machine (FSM)– Use Verilog to program an FPGA– Learn how to use an SRAM– Report and its revision will be evaluated for CI-M• Lab 3– Design a complicated system with multiple FSMs (Major/Minor FSM)– Implement RAMs and ROMs in an FPGA– Interfacing to analog components (ADC and DAC)6.111 Fall 2004 Lecture 1, Slide 5Final Project• Done in groups of two or three • Open ended• You and the staff negotiate a project proposal– Must emphasize digital concepts, but inclusion of analog interfaces (e.g., data converters, sensors or motors) common and often desirable– Proposal Conference, several Design Reviews• Design presentation in class (% of the final grade for the in-class presentation)• Staff will provide help with project definition and scope, design, debugging, and testing• It is extremely difficult for a student to receive an A without completing the final project6.111 Fall 2004 Lecture 1, Slide 6Why Digital? A Thought ExperimentHTTHGoal: transmit results of 100 coin flips6.111 Fall 2004 Lecture 1, Slide 7Experiment #1: Analog EncodingHTTH100 coin flips → 2100possibilitiesTransmit voltage N/2100for possibility #NRequired voltage resolution = 1/2100 = ~8e-31 voltsimpossible to reliably transmit/receive voltages with that resolution6.111 Fall 2004 Lecture 1, Slide 8Rethink basic system architecture• Noise and inaccuracy are inevitable; we can’t reliably transmit/receive/manipulate “infinite”information-- we must design our system to tolerate some amount of error if it is to process information reliably.• A system is a structure that is guaranteed to exhibit a specified behavior, assuming all of its components obey their specified behaviors.How is this achieved? CONTRACTS!Every system component will have clear obligations and responsibilities. If contracts are violated all bets are off.6.111 Fall 2004 Lecture 1, Slide 9Going Digital• Digital representation = information encoded as a sequence of symbols chosen from a (small) set.• Keep in mind that the world is not digital, we will simply engineer it to behave that way. Furthermore, we must use real physical (analog, continuous) phenomena to implement digital designs!• Common choices– Binary symbols (0, 1)– If we have DC connectivity (wired):encode using voltages/currents– If we don’t have DC connectivity (wireless):encode using frequency/phase• Going digital keeps the contracts simple – limit quantum of information we process in exchange for reliablityWe’ll workwith these6.111 Fall 2004 Lecture 1, Slide 10Using Voltages Digitally• Key idea: don’t allow “0” to be mistaken for a “1”or vice versa• Use the same “uniform representation convention”for everycomponent and wire in our digital system• To implement devices with high reliability, we outlaw “close calls” via a representation convention which forbids a range of voltages between “0” and “1”.voltsValid“0”Valid“1”Forbidden ZoneInvalidConsequence: notion of valid and invalid signals6.111 Fall 2004 Lecture 1, Slide 11A Digital Processing ElementStaticdisciplineOutput a “1” if at least 2 out of 3 ofmy inputs are a “1”.Otherwise, output “0”.I will generate a validoutput in no more than2 minutes after seeing valid inputsinput Ainput Binput Coutput Y• A combinational deviceis a circuit element that has– one or more digitalinputs– one or more digital outputs– a functional specificationthat details the value of each output for every possible combination of valid input values– a timing specificationconsisting (at minimum) of an upper bound tpdon the required time for the device to compute the specified output values from an arbitrary set of stable, valid input values6.111 Fall 2004 Lecture 1, Slide 12Why have processing blocks?• The goal of modular design:ABSTRACTION• What does that mean anyway:– Rules simple enough for a 6-3 to follow…– Understanding BEHAVIOR without knowing IMPLEMENTATION– Predictable composition of functions– Tinker-toy assembly– Guaranteed behavior under REAL WORLD circumstances6.111 Fall 2004 Lecture 1, Slide 13A Combinational Digital System• A set of interconnected elements is a combinational deviceif– each circuit element is a combinational device– every input is connected to exactly one output or a constant (eg, some vast supply of 0’s and 1’s)– the circuit contains no directed cycles• Why is this true?– Given an acyclic circuit meeting the above constraints, we can derive functional and timing specs for the input/output behavior from the specs of its components!– We’ll see lots of examples soon. But first, we need to build some combinational devices to work with…6.111 Fall 2004 Lecture 1, Slide 14Wires: theory vs. practiceVinVout(voltage close to boundarywith forbidden zone)(voltage in forbidden zone:Oops, not a valid voltage!)Does a wire obey the static discipline?Noise: changes voltage…Questions to ask ourselves:In digital systems, where does noise come from?How big an effect are we talking about?VinVin6.111 Fall 2004 Lecture 1, Slide 15Power Supply Noise+-Integrated circuitR’s and C’s from Aluminum wiring layersCurrent loads from on-chip devicesL’s from chip leads∆V from:• IR
View Full Document