RTL Design Methodology

Slides:



Advertisements
Similar presentations
George Mason University ECE 448 – FPGA and ASIC Design with VHDL ECE 448 Lecture 12 Sorting Example.
Advertisements

VHDL Lecture 1 Megan Peck EECS 443 Spring 08.
Midterms Exam – Fall 2011 Solutions. Solution to Task 1.
Give qualifications of instructors: DAP
CS 151 Digital Systems Design Lecture 37 Register Transfer Level
George Mason University ECE 448 – FPGA and ASIC Design with VHDL ECE 448 Lecture 10 Advanced Testbenches.
George Mason University ECE 448 – FPGA and ASIC Design with VHDL Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts,
CS/EE 3700 : Fundamentals of Digital System Design
ECE 545 Project 1 Part IV Key Scheduling Final Integration List of Deliverables.
Figure A flip-flop with an enable input. D Q Q Q R Clock E 0 1.
Lecture 9 RTL Design Methodology Sorting Example.
SHA-3 Candidate Evaluation 1. FPGA Benchmarking - Phase Round-2 SHA-3 Candidates implemented by 33 graduate students following the same design.
VHDL Project Specification Naser Mohammadzadeh. Schedule  due date: Tir 18 th 2.
George Mason University Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts ECE 545 Lecture 14.
1 ECE 545—Digital System Design with VHDL Lecture 6 Behavioral VHDL Coding (for Synthesis): Finite State Machines and ASMs 9/30/08.
George Mason University Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL Code ECE 448 Lecture 6.
Yu Du, Yu Long Electrical & Computer Engineering
Lecture 9 RTL Design Methodology. Structure of a Typical Digital System Datapath (Execution Unit) Controller (Control Unit) Data Inputs Data Outputs Control.
Figure ASM chart for the bit counter.. Figure Verilog code for the bit-counting circuit (Part a). module bitcount (Clock, Resetn, LA, s,
RTL Design Methodology Transition from Pseudocode & Interface
Lecture 5B Block Diagrams HASH Example.
Algorithmic State Machines Sorting Signed & Unsigned Data Types
Lecture 3 RTL Design Methodology Transition from Pseudocode & Interface to a Corresponding Block Diagram.
CDA 4253 FPGA System Design RTL Design Methodology 1 Hao Zheng Comp Sci & Eng USF.
1 ECE 545 – Introduction to VHDL Algorithmic State Machines Sorting Example ECE 656 Lecture 8.
The System Bus. Conceptual CPU Block Diagram Datapath Regs Buses ALU Control Unit Bus Interface IR etc. PC etc. Control Signals Status Signals PSR System.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
George Mason University Design of Controllers using Algorithmic State Machine (ASM) Charts ECE 545 Lecture 12.
ECE 545 Project 1 Introduction & Specification Part I.
George Mason University Advanced Testbenches Lecture 4.
George Mason University Finite State Machines Refresher ECE 545 Lecture 11.
16-bit barrel shifter A Mini Project Report
Implementing Combinational
Class Exercise 1B.
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.
Hash Function Performance Metrics
Hao Zheng Comp Sci & Eng USF
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
RTL Design Methodology
Project Deliverables ECE 545 – Introduction to VHDL.
Lecture 18 SORTING in Hardware.
ECE 448: Spring 2015 Lab 3 FPGA Design Flow Based on Aldec Active-HDL.
ECE 448: Spring 2018 Lab 3 – Part 2 FPGA Design Flow Based on
ECE 545 Lecture 12 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts.
ECE 545 Lecture 10 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts.
ECE 545 Lecture 9 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts.
Test Fixture (Testbench)
ECE 545 Lecture 11 Design of Controllers Finite State Machines and Algorithmic State Machine (ASM) Charts.
RTL Design Methodology Transition from Pseudocode & Interface
Sequential Logic for Synthesis Based on Aldec Active-HDL
ECE 545 Remaining Tasks.
Lecture 13 PicoBlaze I/O & Interrupt Interface
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
RTL Design Methodology Transition from Pseudocode & Interface
RTL Design Methodology
ECE 448 Lecture 6 Finite State Machines State Diagrams, State Tables, Algorithmic State Machine (ASM) Charts, and VHDL code ECE 448 – FPGA and ASIC Design.
RTL Design Methodology
RTL Design Methodology
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
ECE 448: Spring 2018 Lab 3 – Part 2 Design of Controllers
Presentation transcript:

RTL Design Methodology Lecture 17 RTL Design Methodology SORTING example

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

Hardware Design with RTL VHDL Pseudocode Interface Datapath Controller ASM chart Block diagram VHDL code VHDL code

Steps of the Design Process Text description Interface Pseudocode Block diagram of the Datapath Interface divided into Datapath and Controller ASM chart of the Controller RTL VHDL code of the Datapath, Controller, and Top-Level Unit Testbench for the Datapath, Controller, and Top-Level Unit Functional simulation and debugging Synthesis and post-synthesis simulation Implementation and timing simulation Experimental testing using FPGA board

Steps of the Design Process Introduced in Class Today Text description Interface Pseudocode Block diagram of the Datapath Interface divided into Datapath and Controller ASM chart of the Controller RTL VHDL code of the Datapath, Controller, and Top-level Unit Testbench for the Datapath, Controller, and Top-Level Unit Functional simulation and debugging Synthesis and post-synthesis simulation Implementation and timing simulation Experimental testing using FPGA board

SORTING example

Sorting - Required Interface Clock Resetn DataIn N DataOut Done RAdd L WrInit S (0=initialization 1=computations) Rd

Sorting - Required Interface

Simulation results for the sort operation (1) Loading memory and starting sorting

Simulation results for the sort operation (2) Completing sorting and reading out memory

Sorting - Example During Sorting 1 2 3 3 3 2 2 1 1 1 1 2 2 3 3 3 3 2 2 After sorting Before sorting i=0 i=0 i=0 i=1 i=1 i=2 j=1 j=2 j=3 j=2 j=3 j=3 Address 1 2 3 3 3 2 2 1 1 1 1 2 2 3 3 3 3 2 2 4 4 4 4 4 4 4 3 1 1 1 1 2 2 3 4 Legend: position of memory indexed by i position of memory indexed by j Mi Mj

Pseudocode [load input data] wait for s=1 [load input data] FOR k = 4 FOR any k ≥ 2 [load input data] wait for s=1 [load input data] wait for s=1 for i = to 2 do for i = to k - 2 do A = Mi ; A = Mi ; for j = i + 1 to 3 do for j = i + 1 to k – 1 do B = Mj ; B = Mj ; if B < A then if B < A then Mi = B ; Mi = B ; Mj = A ; Mj = A ; A = Mi ; A = Mi ; endif ; endif ; endfor; endfor; endfor; endfor; Done wait for s=0 [read output data] go to the beginning Done wait for s=0 [read output data] go to the beginning

Pseudocode wait for s=1 for i=0 to k-2 do A = Mi for j=i+1 to k-1 do B = Mj if A > B then Mi = B Mj = A end if end for Done wait for s=0 go to the beginning

SORTING solutions

Block diagram of the Datapath DataIn RAdd ABMux N L N L Li LD 1 Resetn s Ei EN RST CLK Din s Clock +1 Csel WrInit We DIN WE Lj LD Addr L Resetn Wr i Ej EN RST ADDR CLK Clock CLK Clock 1 DOUT L j L 1 N Mij EA EB = k-2 = k-1 EN CLK RST Resetn EN Resetn RST CLK Clock Clock Rd N N zi zj N 1 Bout A B DataOut A>B Block diagram of the Datapath AgtB

Block diagram of the Datapath DataIn RAdd ABMux N L N L Ei EN 1 Resetn s s Li LD RST CLK Din s Clock WrInit +1 Csel DIN We WE Ej EN Addr L Resetn ADDR i Lj LD RST Wr 1 CLK Clock CLK Clock 1 L DOUT L j 1 N Mij EA EB = k-2 = k-1 EN CLK RST Resetn EN Resetn RST CLK Clock Clock Rd zi N N zj N 1 Bout A B DataOut A>B Block diagram of the Datapath AgtB

Interface with the division into Datapath and Controller RAddr DataIn WrInit Clock Rd Resetn s N L AgtB zi zj Datapath Controller Wr Li Ei Lj Ej EA EB Bout Csel N DataOut Done

ASM Chart of the Controller

Timing justifying the need for the state S3