ECE 448: Spring 2015 Lab 3 FPGA Design Flow Based on Aldec Active-HDL.

Slides:



Advertisements
Similar presentations
Give qualifications of instructors: DAP
Advertisements

3/13/20081 Lab 6 Solution Part 1: Design a sequence detector for the sequence “00101” Part 2: a b See sm1.vhdSee sm2.vhd See seq1.vhd.
ECE 448: Spring 12 Lab 4 – Part 2 Finite State Machines Basys2 FPGA Board.
Lecture 9 RTL Design Methodology Sorting Example.
FPGA Design Flow Based on Using Seven-Segment Displays,
BYU ECEn 320 Lab 4 UART Transmitter. BYU ECEn 320 UART Transmimtter Specification VGA Serial A1 Expansion Connector PS2 A2 Expansion Connector B1 Expansion.
ECE 448: Spring 11 Lab 3 Part 1 Sequential Logic for Synthesis.
CascadedBCDCntr&Display Aim : Capture, simulate and implement a 2-digit, loadable BCD up/down counter, with chip enable I/P (CE) and chip enable O/P (CEO).
ECE 448: Spring 11 Lab 3 Part 2 Finite State Machines.
RTL Design Methodology Transition from Pseudocode & Interface
Lecture 5B Block Diagrams HASH Example.
Lecture 3 RTL Design Methodology Transition from Pseudocode & Interface to a Corresponding Block Diagram.
CEC 220 Digital Circuit Design Dice Game Wed, April 06 CEC 220 Digital Circuit Design Slide 1 of 15.
CDA 4253 FPGA System Design RTL Design Methodology 1 Hao Zheng Comp Sci & Eng USF.
ECE 448: Spring 2013 Lab 5 FPGA Design Flow Based on Aldec Active-HDL Fast Reflex Game.
Flip Flops 4.1 Latches and Flip-Flops 4 ©Paul Godin Created September 2007 Last edit Sept 2009.
George Mason University Design of Controllers using Algorithmic State Machine (ASM) Charts ECE 545 Lecture 12.
ECE 448 Lab 3 FPGA Design Flow Based on Xilinx ISE and ISim. Using Seven-Segment Displays, Buttons, and Switches.
ECE 448 Lab 3 FPGA Design Flow Based on Xilinx ISE and Isim. Using Seven-Segment Displays, Buttons, and Switches.
Digital Design: With an Introduction to the Verilog HDL, 5e M. Morris Mano Michael D. Ciletti Copyright ©2013 by Pearson Education, Inc. All rights reserved.
George Mason University Finite State Machines Refresher ECE 545 Lecture 11.
LAB #5 Modular Design and Hierarchy using VHDL
Introduction to the FPGA and Labs
Implementing Combinational
DE2-115 Control Panel - Part I
Greatest Common Divisor
RTL Design Methodology Transition from Pseudocode & Interface
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
Revision2 for CENG34340 (Self study exercise no need to submit)
Hash Function Performance Metrics
ECEN 248 Lab 9: Design of a Traffic Light Controller
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
RTL Design Methodology
RTL Design Methodology
Implementing Combinational and Sequential Logic in VHDL
Pulse-Width Modulation (PWM)
Introduction to ModelSim Implementing Sequential
RTL Design Methodology
Lecture 18 SORTING in Hardware.
Developing More Advanced Testbenches
Block Diagrams 1.
ECE 448: Spring 2018 Lab 3 – Part 2 FPGA Design Flow Based on
EE4OI4 Engineering Design
Sequential Logic for Synthesis Simulation using ModelSim
ECE 545 Lecture 11 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts.
Counting the Score - BBC micro:bit Quiz Counter
Implementing Combinational
RTL Design Methodology Transition from Pseudocode & Interface
Sequential Logic for Synthesis Based on Aldec Active-HDL
Implementing Combinational and Sequential Logic in VHDL
Lecture 13 PicoBlaze I/O & Interrupt Interface
Programmable Logic Controllers (PLCs)
Based on Xilinx ISE & ModelSim
RTL Design Methodology
RTL Design Methodology Transition from Pseudocode & Interface
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code.
RTL Design Methodology
RTL Design Methodology Transition from Pseudocode & Interface
RTL Design Methodology
RTL Design Methodology
Pipelined Array Multiplier Aldec Active-HDL Design Flow
ECE 448 Lab 3 – Part 1 FPGA Design Flow Based on
RTL Design Methodology Transition from Pseudocode & Interface
RTL Design Methodology
RTL Design Methodology
RTL Design Methodology
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
ECE 448 Lab 3 – Part 1 FPGA Design Flow Based on
ECE 448: Spring 2018 Lab 3 – Part 2 Design of Controllers
RTL Design Methodology
Presentation transcript:

ECE 448: Spring 2015 Lab 3 FPGA Design Flow Based on Aldec Active-HDL. Using Seven-Segment Displays, Buttons, and Switches. Design of Controllers Using FSMs.

Agenda for today Part 1: Introduction to FPGA Design Flow based on Aldec Active-HDL Part 2: Discussion of Solutions to Class Exercise 1 Part 3: Introduction to Class Exercise 2 2

Part 1 Hands-on Session on FPGA Design Flow based on Aldec Active-HDL 3

Discussion of Solutions to Part 2 Discussion of Solutions to Class Exercise 1 4

Part 3 Introduction to Class Exercise 2 5

Block diagram of the core of the DATAPATH rst rst clk clk

SSD_DRIVER SEG(6..0) Counter UP q(k-1..k-2) Counter UP Counter UP clk AN OC Counter UP rst OC – One’s Complement

Debouncing Buttons key bounce tBOUNCE key bounce tBOUNCE pulse width Bouncing period typically smaller than 10 ms. Pulse width typically greater than 200-500 ms.

to Generate Short Pulses (1) Using Debouncer & RED to Generate Short Pulses (1) RED – Rising Edge Detector

to Generate Short Pulses (2) Using Debouncer & RED to Generate Short Pulses (2)

Debouncer Debouncer reset output input clk

Debouncer

k and DD Generics k - width of the counter used to measure the debouncing period DD - debouncing period in clock cycles Values of generics given on the next slide assume that the clock frequency = 100 MHz and thus clock period = 10 ns.

k and DD Generics Option 1 (value used for simulation only): DD = 100 assuming bouncing period < 1 μs = 1000 ns condition: DD*10ns = 1000 ns => DD = 100 k=7 because 2^7 > 100 Option 2 (values used for synthesis, implementation, and experimental testing): DD = 1000000 assuming bouncing period = 10 ms condition: DD*10ns = 10ms => DD = 1,000,000 k=21 because 2^21 > 1,000,000

Rising Edge Detector - RED Turn a step function into an impulse Allows a step to run a circuit for only one clock cycle

Rising Edge Detector reset input output clk clk input output

Input & Output Interfaces included in the Datapath Approach 1 Input & Output Interfaces included in the Datapath

clk SSD_DRIVER rst SEG AN clk enc rst ldc = 1s time_out hex3 hex2 hex1 4 4 4 4 hex3 hex2 hex1 hex0 clk clk enc D en SSD_DRIVER rst rst Q ld ldc 7 4 = 1s time_out SEG AN

Structure of a Typical Digital System Data Inputs Control & Status Inputs Control Signals Datapath (Execution Unit) Controller (Control Unit) Status Signals Data Outputs Control & Status Outputs

DATAPATH CONTROLLER BTNU BTNL clk rst BTNS BTND BTNR BTNSp BTNUp BTNDp BTNLp BTNRp DATAPATH CONTROLLER time_out subtract en sel 2 sel_out enc ldc 7 4 SEG AN

ASM Charts ldc enc , enc p p p p p p

Input & Output Interfaces Approach 2 Separate Input & Output Interfaces

of the INPUT_INTERFACE Block diagram of the INPUT_INTERFACE

of the OUTPUT_INTERFACE hex_out Block diagram of the OUTPUT_INTERFACE 16 4 4 4 4 hex3 hex2 hex1 hex0 clk SSD_DRIVER rst 7 4 SEG AN

Block diagram of the DATAPATH rst clk clk D en enc rst ld ldc Q = 1s time_out

DATAPATH CONTROLLER INPUT_INTERFACE OUTPUT_INTERFACE BTNU BTNL BTNS BTND BTNR clk rst INPUT_INTERFACE BTNUp BTNLp time_out BTNSp BTNDp BTNRp subtract en DATAPATH sel 2 CONTROLLER sel_out enc ldc 16 hex_out clk OUTPUT_INTERFACE rst 7 4 SEG AN

ASM Charts ldc enc , enc p p p p p p