LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.

Slides:



Advertisements
Similar presentations
VHDL Lecture 1 Megan Peck EECS 443 Spring 08.
Advertisements

1 Lecture 13 VHDL 3/16/09. 2 VHDL VHDL is a hardware description language. The behavior of a digital system can be described (specified) by writing a.
Quad 2-to-1 and Quad 4-to-1 Multiplexers Discussion D2.4 Example 7.
1 VLSI DESIGN USING VHDL Part II A workshop by Dr. Junaid Ahmed Zubairi.
Ring Counter Discussion D5.3 Example 32. Ring Counter if rising_edge(CLK) then for i in 0 to 2 loop s(i)
Generic Multiplexers: Parameters Discussion D2.5 Example 8.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
modules--perform I/O “housekeeping” functions use in project: example VHDL package—UP3pack.vhd modules must be “visible” in your path or included.
Lab 2 4-Bit Adder Digilent Spartan 3 Board Lecture L2.3.
VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize.
4-to-1 Multiplexer: case Statement Discussion D2.3 Example 6.
Introduction to VHDL Multiplexers Discussion D1.1.
CSET 4650 Field Programmable Logic Devices Dan Solarek VHDL Behavioral & Structural.
1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation.
ECE 332 Digital Electronics and Logic Design Lab Lab 5 VHDL Design Styles Testbenches.
ECE 448: Spring 12 Lab Midterm Exam Review. Part 1: Detailed discussion of a selected midterm from Spring Part 2: Review & discussion of common.
A.7 Concurrent Assignment Statements Used to assign a value to a signal in an architecture body. Four types of concurrent assignment statements –Simple.
VHDL TUTORIAL Preetha Thulasiraman ECE 223 Winter 2007.
Figure 5.1 Conversion from decimal to binary. Table 5.1 Numbers in different systems.
A VHDL Tutorial ENG2410. ENG241/VHDL Tutorial2 Goals Introduce the students to the following: –VHDL as Hardware description language. –How to describe.
A full die photograph of the MIPS R2000 RISC Microprocessor is shown above. The 1986 MIPS R2000 with five pipeline stages and 450,000 transistors was the.
VHDL for Combinational Circuits. VHDL We Know Simple assignment statements –f
ENG2410 Digital Design LAB #5 Modular Design and Hierarchy using VHDL.
Introduction to VHDL Spring EENG 2920 Digital Systems Design Introduction VHDL – VHSIC (Very high speed integrated circuit) Hardware Description.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics VHDL register-transfer modeling: –basics using traffic light controller; –synthesis.
ECE 331 – Digital System Design Multiplexers and Demultiplexers (Lecture #13)
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
2’s Complement 4-Bit Saturator Discussion D2.8 Lab 2.
1 MIPS VHDL Overview Reference: VHDL Tutorial on CDROM, or Accolade Reference Guide Notes: / / pdf / MIPS_vhdl_notes.pdf.
4-to-1 Multiplexer: Module Instantiation Discussion D2.2 Example 5.
9/9/2006DSD,USIT,GGSIPU1 Concurrent vs Sequential Combinational vs Sequential logic –Combinational logic is that in which the output of the circuit depends.
CS/EE 3700 : Fundamentals of Digital System Design
5-1 Logic System Design I VHDL Design Principles ECGR2181 Reading: Chapter 5.0, 5.1, 5.3 port ( I: in STD_LOGIC_VECTOR (1 to 9); EVEN, ODD: out STD_LOGIC.
VHDL Discussion Subprograms IAY 0600 Digital Systems Design Alexander Sudnitson Tallinn University of Technology 1.
VHDL ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
Slide 1 3.VHDL/Verilog Description Elements. Slide 2 To create a digital component, we start with…? The component’s interface signals Defined in MODULE.
July 2, 2001Systems Architecture I1 Systems Architecture II (CS 282) Lab 3: State Elements, Registers, and Memory * Jeremy R. Johnson Monday July 2, 2001.
Figure 9.1 Architecture of a Simple Computer System.
INF H131 Clock and Reset Unit (CRU) module library ieee; use ieee.std_logic_1164.all; entity cru is port ( arst : in std_logic; -- Asynch. reset.
LAB #5 Modular Design and Hierarchy using VHDL
Combinational logic circuit
IAY 0600 Digital Systems Design
Dataflow Style Combinational Design with VHDL
CHAPTER 17 VHDL FOR SEQUENTIAL LOGIC
Behavioral Style Combinational Design with VHDL
ENG6530 Reconfigurable Computing Systems
Combinational Circuits Using VHDL
LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.
A full die photograph of the MIPS R2000 RISC Microprocessor is shown above. The 1986 MIPS R2000 with five pipeline stages and 450,000 transistors was.
Figure 9.1 Architecture of a Simple Computer System.
LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.
Getting Started with Vivado
ECE 448 Lecture 6 Modeling of Circuits with a Regular Structure Aliases, Constants, Packages Mixing Design Styles ECE 448 – FPGA and ASIC Design with.
VHDL Discussion Subprograms
VHDL Structural Architecture
Concurrent vs Sequential
Behavioral Modeling of Sequential-Circuit Building Blocks
VHDL Discussion Subprograms
ECE 331 – Digital System Design
Figure 8.1. The general form of a sequential circuit.
UNIT 6: Mixed-Type Description
Modeling of Circuits with a Regular Structure
ECE 545 Lecture 5 Simple Testbenches.
Sequntial-Circuit Building Blocks
4-Input Gates VHDL for Loops
디 지 털 시 스 템 설 계 UP2 Kit를 이용한 카운터 설계
Digital Logic with VHDL
(Sequential-Circuit Building Blocks)
EEL4712 Digital Design (VHDL Tutorial).
(Simple Testbenches & Arithmetic Operations)
Presentation transcript:

LIBRARY IEEE; -- Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name ENTITY gate_network IS -- Ports: Declares module inputs and outputs PORT( A, B, C : IN STD_LOGIC; -- Standard Logic Vector ( Array of 4 Bits ) D : IN STD_LOGIC_VECTOR( 3 DOWNTO 0 ); -- Output Signals X, Y : OUT STD_LOGIC ); END gate_network; -- Defines internal module architecture ARCHITECTURE behavior OF gate_network IS BEGIN -- Concurrent assignment statements operate in parallel -- D(1) selects bit 1 of standard logic vector D X <= A AND NOT( B OR C ) AND ( D( 1 ) XOR D( 2 ) ); -- Process must declare a sensitivity list, -- In this case it is ( A, B, C, D ) -- List includes all signals that can change the outputs PROCESS ( A, B, C, D ) BEGIN -- Statements inside process execute sequentially Y <= A AND NOT( B OR C) AND ( D( 1) XOR D( 2 ) ); END PROCESS; END behavior;

Figure 6.1 State Diagram for st_mach example

LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; LIBRARY Altera_mf; USE altera_mf.altera_mf_components.all; ENTITY amemory IS PORT( read_data : OUT STD_LOGIC_VECTOR( 7 DOWNTO 0 ); memory_address : IN STD_LOGIC_VECTOR( 2 DOWNTO 0 ); write_data : IN STD_LOGIC_VECTOR( 7 DOWNTO 0 ); Memwrite : IN STD_LOGIC; clock,reset : IN STD_LOGIC ); END amemory; ARCHITECTURE behavior OF amemory IS BEGIN data_memory: altsyncram -- Altsyncram memory function GENERIC MAP ( operation_mode => “SINGLE_PORT”, width_a => 8, widthad_a => 3, lpm_type => “altsyncram”, outdata_reg_a => "UNREGISTERED", -- Reads in mif file for initial data values (optional) init_file => "memory.mif", intended_device_family => “Cyclone” ) PORT MAP (wren_a => Memwrite, clock0 => clock, address_a => memory_address( 2 DOWNTO 0 ), data_a => write_data, q_a => read_data ); END behavior;

Figure 6.2 Schematic of Hierarchical Design

ENTITY hierarch IS. PORT (. clock_25Mhz, pb1. : IN STD_LOGIC; ENTITY hierarch IS PORT ( clock_25Mhz, pb1 : IN STD_LOGIC; pb1_single_pulse : OUT STD_LOGIC); END hierarch; ARCHITECTURE structural OF hierarch IS -- Declare internal signals needed to connect submodules SIGNAL clock_1MHz, clock_100Hz, pb1_debounced : STD_LOGIC; COMPONENT debounce -- Use Components to Define Submodules and Parameters PORT( pb, clock_100Hz : IN STD_LOGIC; pb_debounced : OUT STD_LOGIC); END COMPONENT; COMPONENT onepulse PORT(pb_debounced, clock : IN STD_LOGIC; pb_single_pulse : OUT STD_LOGIC); END COMPONENT; COMPONENT clk_div PORT( clock_25Mhz : IN STD_LOGIC; clock_1MHz : OUT STD_LOGIC; clock_100KHz : OUT STD_LOGIC; clock_10KHz : OUT STD_LOGIC; clock_1KHz : OUT STD_LOGIC; clock_100Hz : OUT STD_LOGIC; clock_10Hz : OUT STD_LOGIC; clock_1Hz : OUT STD_LOGIC); END COMPONENT; BEGIN -- Use Port Map to connect signals between components in the hierarchy debounce1 : debounce PORT MAP ( pb => pb1, clock_100Hz = >clock_100Hz, pb_debounced = >pb1_debounced); prescalar : clk_div PORT MAP ( clock_25Mhz = >clock_25Mhz, clock_1MHz =>clock_1Mhz, clock_100hz = >clock_100hz); single_pulse : onepulse PORT MAP ( pb_debounced = >pb1_debounced, clock => clock_1MHz, pb_single_pulse => pb1_single_pulse); END structural;

Figure 6.3 Using a Testbench for automatic verification