Quick Start to VHDL VHDL Very Hard Difficult Language Very Hard Difficult Language!!!!!!!

Slides:



Advertisements
Similar presentations
06/10/071 Security System Using VHDL. 06/10/072 Project Members Amal Shanavas Aneez I Ijas Rahim Renjith S Menon Sajid S Chavady.
Advertisements

Finite State Machines (FSM)
Xilinx 6.3 Tutorial Integrated Software Environment (ISE) Set up basic environment Select Gates or Modules to Be simulated (Insert Program Code) Run Waveform.
Tutorial 2 Sequential Logic. Registers A register is basically a D Flip-Flop A D Flip Flop has 3 basic ports. D, Q, and Clock.
ENEL111 Digital Electronics
OBJECTIVES Learn the history of HDL Development. Learn how the HDL module is structured. Learn the use of operators in HDL module. Learn the different.
Introduction to VHDL CLASS MATERIALS EECE 255. Very High Speed Integrated Circuit Hardware Description Language Industry standard language to describe.
ECE 3110: Introduction to Digital Systems
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
ECE 353 Computer Systems Lab II VHDL AND LABORATORY TOOLS TUTORIAL Professors Maciej Ciesielski & T. Baird Soules.
Hardware Description Languages Drawing of circuit schematics is not practical for circuits containing more than few tens of gates. We need a way to just.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
The Design Process CPSC 321 Computer Architecture Andreas Klappenecker.
Combinational Logic Discussion D2.5. Combinational Logic Combinational Logic inputsoutputs Outputs depend only on the current inputs.
Lecture 251 More On Op Amps. Lecture 252 Review The ideal op amp model leads to the following conditions: i + = i - = 0 v + = v - The op amp will set.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
ECE 331 – Digital System Design Course Introduction and VHDL Fundamentals (Lecture #1)
DIGITAL DESIGN WITH VHDL Exercise 1 1Muhammad Amir Yousaf.
O VERVIEW OF DIGITAL SYSTEMS Hardware Description Language 1.
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
1 H ardware D escription L anguages Basic Language Concepts.
An Introduction to VHDL Using Altera’s Quartus II IDE Dr. William M. Jones Coastal Carolina University Numbers and Bytes Meeting 20 OCT 2008.
VHDL TUTORIAL Preetha Thulasiraman ECE 223 Winter 2007.
What is an And Gate? It is a digital circuit that produce logical operations The logical operations are call Boolean logical Boolean operation consist.
1 H ardware D escription L anguages Modeling Digital Systems.
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
Extensive Reading in a foreign language asks learners to read a lot of easy, interesting books.
Modeling VHDL in POSE. Overview Motivation Motivation Quick Introduction to VHDL Quick Introduction to VHDL Mapping VHDL to POSE (the Translator) Mapping.
Math – What is a Function? 1. 2 input output function.
Computing For Embedded System IEEE Instrumentation and Measurement Technology Conference Budapest, Hungary, May 21-23, Author : Edward A. Lee UC.
CEC 220 Digital Circuit Design Number Systems & Conversions Friday, January 9 CEC 220 Digital Circuit Design Slide 1 of 16.
Apr. 3, 2000Systems Architecture I1 Introduction to VHDL (CS 570) Jeremy R. Johnson Wed. Nov. 8, 2000.
VHDL ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
May 9, 2001Systems Architecture I1 Systems Architecture I (CS ) Lab 5: Introduction to VHDL Jeremy R. Johnson May 9, 2001.
CEC 220 Digital Circuit Design Number Systems & Conversions Wednesday, Aug 26 CEC 220 Digital Circuit Design Slide 1 of 16.
VHDL From Ch. 5 Hardware Description Languages. History 1980’s Schematics 1990’s Hardware Description Languages –Increased due to the use of Programming.
Computer Operation. Binary Codes CPU operates in binary codes Representation of values in binary codes Instructions to CPU in binary codes Addresses in.
TA: Shreya Rawal.  A use case is a description of a system’s behavior as it responds to a request that originates from outside of that system (Usually.
TOPIC : Introduction to Sequential Circuits UNIT 1: Modeling and Simulation Module 4 : Modeling Sequential Circuits.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
1 A hardware description language is a computer language that is used to describe hardware. Two HDLs are widely used Verilog HDL VHDL (Very High Speed.
UOP ECT 246 Week 4 iLab Audio Amplifiers Check this A+ tutorial guideline at amplifiers.
Combinational Logic Design
Systems Architecture Lab: Introduction to VHDL
Verilog-HDL-1 by Dr. Amin Danial Asham.
Introduction to Programmable Logic
In the name of allah.
T Flip-Flop A T (toggle) flip-flop is a complementing flip-flop and can be obtained from a JK flip-flop when the two inputs are tied together. When T.
Additive and Multiplicative Relationships
Lecture 18 PicoBlaze I/O Interface
شاخصهای عملکردی بیمارستان
STATIC TIMING ANALYSIS, CROSS TALK AND NOISE
CS341 Digital Logic and Computer Organization F2003
مدل زنجیره ای در برنامه های سلامت
فرق بین خوب وعالی فقط اندکی تلاش بیشتر است
Function Notation “f of x” Input = x Output = f(x) = y.
HDL Hardware Description Language
VHDL Introduction.
Gates Type AND denoted by X.Y OR denoted by X + Y NOR denoted by X + Y
Counter Integrated Circuits (I.C.s)
ANALYSIS OF SEQUENTIAL CIRCUIT LOGIC DIAGRAM
Objective- To use an equation to graph the
Design Methodology & HDL
Objective- To graph a relationship in a table.
Digital Designs – What does it take
LANGUAGE EDUCATION.
Chapter 10 Introduction to VHDL
Quick Integral Speed Quiz.
Chapter 9 L9-6 Notes: Functions.
Presentation transcript:

Quick Start to VHDL VHDL Very Hard Difficult Language Very Hard Difficult Language!!!!!!!

Quick Start to VHDL VHDL V ery High Speed Integrated Circuits V ery High Speed Integrated Circuits H ardware D escription L anguage

How You can do VHDL 1.Behavior Method Specify the relationship between inputs and output Y<= (A XOR B) OR C 2. Structural Method Mapping between logical components

VHDL Fundamentals –Libraries and Packages –Entity (Data Types) –Architecture –Signals (Data Types) –Operators

Libraries and Packages  Libraries provide a set components and functions that simplify the task of designing  Packages provide subprograms maybe used in a design  The following is an example of the use of the IEEE library and its STD_LOGIC_1164 package: LIBRARY ieee; USE ieee.std_logic_1164.ALL;

Entities  An entity is a specification of the design’s external interface  Entity declarations specify the following: 1.Name of the entity 2.Set of port declarations defining the inputs and outputs to the hardware design  The following is an example of an entity declaration: ENTITY orgate IS PORT ( a : INSTD_LOGIC; b : INSTD_LOGIC; y : OUTSTD_LOGIC ); END orgate; Port Direction Port Data Type

Ports  Port name choices: –Always begin with a letter –Case insensitive  Port direction choices: IN Input port OUT Output port  Port signal type (suggested) choices: –STD_LOGIC –STD_LOGIC_VECTOR( DOWNTO ) for 8bit data type : std_logic_vector(7 downto 0) –Integer –Real –Boolean

Architectures  An architecture is a specification of the design’s internal implementation  The following is an example of an architecture declaration: ARCHITECTURE a OF orgate IS BEGIN y <= a or b; END a;

Logical Operators  VHDL supports the following logical operators:  AND  OR  XOR  XNOR  NOT  NAND  NOR

Other Operators  VHDL supports the following relational operators: = (Equal) /= (Not Equal) <(Less Than) >(Greater Than)  VHDL supports the following mathematical operators: +(Addition) -(Subtraction) *(Multiplication) /(Division) Abs(Absolute) **(Exponentiation)

Complete Example LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY orgate IS PORT ( a : INSTD_LOGIC; b : INSTD_LOGIC; y : OUTSTD_LOGIC ); END orgate; ARCHITECTURE a OF orgate IS BEGIN y <= a or b; END a;

Start With MaxPlus II  Software is used to check, compile and simulate the VHDL code.  start MAX+PLUS II

 Select File  New.  Select Text Editor File. Start With MaxPlus II

 In the new empty window write the VHDL input file. LIBRARY ieee; USE ieee.std_logic_1164.ALL ENTITY orgate IS PORT ( a : INSTD_LOGIC; b : INSTD_LOGIC; c : OUTSTD_LOGIC ); END orgate; ARCHITECTURE a OF orgate IS BEGIN c <= a or b; END a; Start With MaxPlus II

 Save the File as Vhd,Select File  Save As. Save using the same name of the entity Start With MaxPlus II

 Set project to Current File,Select File Project  Set Project to Current File. Start With MaxPlus II

 Compile by selecting File  Project  Save and Compile. A window with the modular compiler, will monitor compiling, warnings and errors. errors. Start With MaxPlus II

 For simulation:  Choose File  New, select Waveform Editor File, and then click OK  Select Node  Enter Node from SNF  Click on List to list the input & output ports  Select these ports Start With MaxPlus II

 Modify the inputs  Select File  Project  Save and Simulate Start With MaxPlus II

library ieee; use ieee.std_logic_1164.all; --full_adder entity full_adder is port ( a,b,cin: in std_logic; sum,cout:out std_logic); end full_adder; architecture full_adderfun of full_adder is signal sum1, c1, c2:std_logic; begin sum1 <= a xor b; sum <= sum1 xor cin; c1 <= sum1 and cin; c2 <= a and b; cout <= c1 or c2; end full_adderfun; 2 nd Complete Example

Signals  Signals represent wires and storage elements within a VHDL design  Signals only be defined inside architectures  Signals are associated with a data type

UP2 Education Board The board contains: FLEX® 10K FPGA deviceFLEX® 10K FPGA device MAX® 7000 PLDMAX® 7000 PLD One OscillatorOne Oscillator Four JumpersFour Jumpers Four Push ButtonFour Push Button 16 LED’S16 LED’S Four Seven Segment DisplaysFour Seven Segment Displays Three SwitchesThree Switches Four ExpansionsFour Expansions

UP2 Education Board FLEX® 10K FPGA Contains 70,000 gates, 3744 logic elements, 4096 register and RAM bits.Contains 70,000 gates, 3744 logic elements, 4096 register and RAM bits. Connections are made using pass-transistors, transmission gates, or multiplexersConnections are made using pass-transistors, transmission gates, or multiplexers Fast in-circuit reconfigurationFast in-circuit reconfiguration Volatile memory chipVolatile memory chip

UP2 Education Board MAX® 7000 PLD EPROM (Erasable Programmable) TechnologyEPROM (Erasable Programmable) Technology Non-volatile memory chipNon-volatile memory chip Capacity of 2,500 gates and 128 macro cellsCapacity of 2,500 gates and 128 macro cells Each macro cell has a programmable-AND/fixed-OR array as well as a configurable registerEach macro cell has a programmable-AND/fixed-OR array as well as a configurable register

UP2 Education Board Oscillator  The UP Education Board contains a MHz crystal oscillator.  The output of the oscillator drives a clock input to the EPM7128S device (pin 83) FLEX 10K device (pin 91)

UP2 Education Board Jumpers  The UP Education Board has four three-pin jumpers (TDI, TDO, DEVICE, and BOARD)   The jumpers setting to configure: FLEX 10KEPM7128S

UP2 Education Board Push Buttons  Four push buttons: Two are connected to EPM7128S (MAX_PB1 & MAX_PB2 ) and two are connected to FLEX 10K (FLEX_PB1 & FLEX_PB2 )  Each push button is pulled-up to 5 V through a 10-KΩ resistor. (Active Low when pressed)  MAX_PB1 & MAX_PB2 can be connected to any input of the device expansion.  FLEX_PB1 connected to pin 28, and FLEX_PB2 connected to pin 29.

UP2 Education Board LED’s  Contains 16 LEDs that are pulled-up with a 330- Ω resistor.  An LED is illuminated when a logic 0 is applied to the female header associated with the LED

UP2 Education Board 7 Segment Display  Four 7 Segment Displays: Two are connected to EPM7128S and two to FLEX 10K  Each LED segment of the display can be illuminated by driving the connected pin with a logic 0

UP2 Education Board 7 Segment Display FLEX 10K EPM7128S

UP2 Education Board Switches  Three 8 switches: Two are connected to EPM7128S (MAX_SW1 & MAX_SW2 Switches) and one to FLEX 10K (FLEX_SW1 Switches)  An input pin is set to logic 1 when the switch is open and set to logic 0 when the switch is closed.  MAX_SW1 & MAX_SW2 Switches can be connected to any input of the device expansion  FLEX_SW1 Switches are connected as following:

UP2 Education Board Switches

UP2 Education Board Expansions  MAX_EXPANSION FLEX_EXPAN_A, FLEX_EXPAN_B, and FLEX_EXPAN_C are dual rows of 0.1-inch spaced holes for accessing signal I/O pins

UP2 Education Board Expansions

 Select Assign  Device  To assign the chip that will be used to configure the design. Here FLEX10K is assigned with the chip number EPF10K70RC240-2 that is written on the chip. Programming With MaxPlus II

 Select Assign  Pin/Location/Chip Programming With MaxPlus II Click Search Click List

Programming With MaxPlus II Pin 28 is Flex_PB1 Pin 29 is Flex_PB2 Pin 41 is Flex switch1 Pin 6 is (a) of 7seg1 Pin 17 is (a) of 7seg2

Programming With MaxPlus II  Select Mxx+Pluss II  Programmer  Select JTAG  Multi-device JTAG chain so that a checkmark appears to the left of the option.  Hit the Select programming File button and select full_adder.sof.  Click OK, then click the ADD button and the new filename should move into the list in the inner window.  Select the Detect JTAG Chain Info button. The system should respond with “JTAG chain information confirmed by hardware check”.  If not, double check cables, power, jumpers, and make sure you have the correct file name and chip listed in the inner window.  Click OK to exit the JTAG Multi-device Setup window.

 The configure button in the programming window should now be highlighted.  Click on the configure button to download to the board.  Just a few seconds are required to download. If download is successful, a window with Configuration Complete is displayed - click OK.  If the configure button is not highlighted, try Option  Hardware Setup from the pull-down window. confirm the port settings and click OK. Also confirm that the JTAG setup dialog information is correct. If you still have problems confirm that the printer port BIOS settings ESP or EPP mode. Programming With MaxPlus II