DOC PREVIEW
MSU ECE 480 - The GAL22V10C: An Introduction

This preview shows page 1-2-19-20 out of 20 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 20 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

ATransition TableInputOutputThe GAL22V10C: An IntroductionPrepared by: P. David Fisher and Diane T. RoverThis document has the following purposes:1. It reviews some important digital-logic topics previously learned including:1.1. Tri-state buffers1.2. Polarity conventions and terminology1.3. Graphical symbols1.4. Flip flops1.5. Selecting input and output-pin polarities1.6. Programmable logic arrays (PLAs)1.7. State-machine models2. It provides an introduction to the specifications and utility of the GAL22V10C.3. It provides an introduction to the tools needed toprogram the GAL22V10C, including:3.1. The CUPL language and compiler3.2. The CSIM simulator and debugger4. It demonstrates how:4.1. Combinatorial logic designs can be implemented using the GAL22V10C4.2. Sequential state-machine designs can be implemented using the GAL22V10C1 gal_lect_f98.doc1. Tri-state buffers: 2. Polarity Conventions: 1 = H (High Voltage) 0 = L (Low Voltage) “Assert” may be 1 (H) or 0 (L)“Not Asserted” may be 1 (H) or 0 (L)3. Example: A 2-of-4 Decoder2 gal_lect_f98.doc2-of-4DecoderSEL-0SEL-3OEA1A0ENABBCACACABBCABCAABDCTruth TableA B C DX X 0 Z0 0 1 00 1 1 01 0 1 01 1 1 1Positive-Logic ConventionA. Output Enable is “asserted” lowB. The decoder is “enabled” by being asserted lowC. The outputs are asserted lowD. The tow-bit address lines use “positive logic.”E. The above logic function can be drawn as follows:F. This decoder is said to be a “combinatorial” logic element.4. The D- type flip flop (latch).3 gal_lect_f98.docD - FFSPDQCLKARQ2-of-4DecoderSEL-3..0OEA1..0ENAB24Transition TablePresentInputNextOutputDnQn+1 = DnA.B. The flip flop is positive-edge triggeredC. The flip flop has an “asynchronous reset” (AR) which is positively asserted.D. The flip flop has a “synchronous preset” (SP) which is positively asserted.5. Selecting Input and Output PolaritiesInput OutputIf P=0, A is selected.If P=1, A is selected.4 gal_lect_f98.docPAA or AA or APA6. The Programmable Logic Array (PLA)A = A0..k-1 B = B0..n-1A is the input data word (k independent variables.) B is the output data word (n independent variables.)B = f(A) in Sum-of-Products form.Examples: B0=A1'A0' + A3'A1A0B1=A3B2=A1'A0 + A1A0'B3=A1 + A2 +A4 + A6We often say that the PLA is composed of two planes: the AND plane and the OR plane. The AND plane forms the “product terms;” the OR plane forms the “sum-of-products.”5 gal_lect_f98.docnBkAPLAOr(Array)6 gal_lect_f98.docNon-Registered OutputsCombinatorialLogicStorageRegistersRegisteredOutputsState BitsLogical Device’s State – Machine Model (See Page 215 in CUPL Manual.)7 gal_lect_f98.doc8. Fisher-Rover State-Machine Model(Tuned for Generic Array Logic – GAL)Note: Input Buffers and Ouput Buffers are not shown.Q3=f3(Sn,I) Mealy MachineNext State Sn+1ARState RegisterCLKSPCL#2II ICL#1Q1=f1(I) Combinatorial OutputInternalResourceControlSnCL#4CL = Combinatorial LogicNext State = Sn+1 = g(Sn, I)SnPresentStateCL#5Q2=f2(Sn)MooreMachineISnCL#3Input (I)Active LowS0 = 0S1 = 1Active HighS0 = 1S1 = 1Combinatorial Mode8 gal_lect_f98.docDA RQQS PC L KActive HighS0 = !S1 = =0DA RQQS PC L KActive LowS0 = 0S1 = =0Registered Mode9 gal_lect_f98.doc1. Coin-Sorter DemoFunctional RequirementsA combinatorial logic circuit must be designed andimplemented using a GAL22V10C to meet thefollowing functional specifications:1. There are five input pins (d, n, oe2, !oe1, andoe0) and three output pins (Q2, Q1, and Q0).2. The “d” input represents a dime.3. The “n” input represents a nickel.4. The remaining three inputs (oe2, !oe1, and oe0)control the tri-state logic for outputs Q2, Q1,and Q0, respectively.5. Q2 is asserted if a nickel and a dime are present.6. Q1 is asserted if a nickel or a dime are present.7. Q0 is asserted if a nickel is present but not adime.10 gal_lect_f98.docName Demo for a GAL22V10C (DIP);Partno Demo_01;Revision 01;Date 7/14/98;Designer P. David Fisher;Company Spartan Embedded Technologies @ Michigan State University;Assembly Prototype;Location 3230 EB;Device GAL22V10C (DIP);/**********************************************************************//* This *.pld file demonstrates the use of basic logic equations in *//* describing the I/O behavior of a combinatorial logic circuit. *//**********************************************************************//** Allowable Target Device--GAL22V10C (DIP) **************************//** Inputs ************************************************************/Pin 4 = d; /* Dime */Pin 5 = n; /* Nickel */ Pin 11 = oe2; /* Tri-state output enable */Pin 10 = !oe1; /* Tri-state output enable (Note negative logic) */Pin 9 = oe0; /* Tri-state output enable *//** Outputs ***********************************************************/Pin 16 = Q2; /* Nickel and dime */Pin 15 = Q1; /* Nickel or dime */Pin 14 = Q0; /* Nickel and not dime *//** Declarations and Intermediate Variable Definitions--None used *****//** State Description for Mealy Machine--None used ********************//** State Description for Moore Machine--None used ********************//** Combinatorial I/O Logic Equations and/or Truth Tables *************/Q2 = n & d; /* Nickel and dime */ Q1 = n # d; /* Nickel or dime */Q0 = n & !d; /* Nickel and not dime *//** Logic Equations for Dynamically Configuring PLD *******************/Q2.oe = oe2; /* Tri-state output enable */Q1.oe = oe1; /* Tri-state output enable */Q0.oe = oe0; /* Tri-state output enable */11 gal_lect_f98.docName Demo for a GAL22V10C (DIP);Partno Demo_01;Revision 01;Date 7/14/98;Designer P. David Fisher;Company Spartan Embedded Technologies @ Michigan State University;Assembly Prototype;Location 3230 EB;Device GAL22V10C (DIP);/**********************************************************************//* This *.pld file demonstrates the use of basic logic equations in *//* describing the I/O behavior of a combinatorial logic circuit. *//**********************************************************************//** Allowable Target Device--GAL22V10C (DIP) **************************/Order: n, %2, d, %2, oe2, %2, !oe1, %2, oe0, %4, Q2, %2, Q1, %2, Q0 ;Vectors:$msg " ! ";$msg " n d o o o Q Q Q";$msg " e e e 2 1 0";$msg " 2 1 0


View Full Document

MSU ECE 480 - The GAL22V10C: An Introduction

Documents in this Course
ganttv1

ganttv1

6 pages

sd97

sd97

17 pages

ap_EO

ap_EO

14 pages

Load more
Download The GAL22V10C: An Introduction
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view The GAL22V10C: An Introduction and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view The GAL22V10C: An Introduction 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?