HDL Bencher

25
HDL Bencher FPGA Design Workshop

description

HDL Bencher. FPGA Design Workshop. Objectives. After completing this module, you will be able to: Describe the process to create a testbench for HDL designs Reduce testing time by integrating HDL Bencher into Digital Design Labs. Outline. Overview Create a New Source Create Waveforms - PowerPoint PPT Presentation

Transcript of HDL Bencher

Page 1: HDL Bencher

HDL Bencher

FPGA Design Workshop

Page 2: HDL Bencher

For Academic Use OnlyPresentation Name 2

Objectives

After completing this module, you will be able to:

Describe the process to create a testbench for HDL designsReduce testing time by integrating HDL Bencher into Digital

Design Labs

Page 3: HDL Bencher

For Academic Use OnlyPresentation Name 3

Outline

OverviewCreate a New SourceCreate WaveformsExport TestbenchSummary

Page 4: HDL Bencher

For Academic Use OnlyPresentation Name 4

HDL Bencher

Creates timing constrained VHDL and Verilog self-checking testbenches

No knowledge of HDL or scripting required

Page 5: HDL Bencher

For Academic Use OnlyPresentation Name 5

Overview

HDL Bencher helps validate design function and performance

HDL Bencher generates – VHDL or Verilog testbenches– Design specific waveforms– Documentation

Testbenches can be simulated with various simulators– Model Technology– Synopsys

Page 6: HDL Bencher

For Academic Use OnlyPresentation Name 6

Advantages

No HDL or scripting knowledge required (or even needed!)

No need to manually modify testbenches for each design revision

Page 7: HDL Bencher

For Academic Use OnlyPresentation Name 7

How It Works

Step 1: Create New Source

Step 2: Draw stimulus and response waveforms

Step 3: Export testbench

Page 8: HDL Bencher

For Academic Use OnlyPresentation Name 8

Outline

• Overview• Create a New Source• Create Waveforms• Export Testbench• Summary

Page 9: HDL Bencher

For Academic Use OnlyPresentation Name 9

Create a New Source

Page 10: HDL Bencher

For Academic Use OnlyPresentation Name 10

HDL Bencher

• Unit under test is analyzed, when selected– Port problems– Syntax violations– Inconsistencies

• Design timing selected– Specify clock timing– Single, multiple, or internal

clocks

Page 11: HDL Bencher

For Academic Use OnlyPresentation Name 11

HDL Bencher

Page 12: HDL Bencher

For Academic Use OnlyPresentation Name 12

HDL Bencher Windows

Title bar

Process bar

Port direction

Line numbers

Menu

Waveform window

Waveforms

HDL source editor

Page 13: HDL Bencher

For Academic Use OnlyPresentation Name 13

Outline

• Overview• Create a New Source• Create Waveforms• Export Testbench• Summary

Page 14: HDL Bencher

For Academic Use OnlyPresentation Name 14

Create Waveforms

Data values– 1, 0 ,X ,Z, U

Assignments– Double-click bit signal to toggle value– Pattern wizard assigns a range of cell values– WaveTable assign signals like a spreadsheet– By default, decimal values are shown in the WaveTable

Waveform values are checked as they are entered– Validation check for non-binary inputs only (for example, hex, or

decimal)

Page 15: HDL Bencher

For Academic Use OnlyPresentation Name 15

Toggling

Toggling bit values is the easiest way to assign bit signalsSimply click directly on the signal’s waveform at the time where

changes should take place

Click directly on these boxes, at the time where signals should toggle

Page 16: HDL Bencher

For Academic Use OnlyPresentation Name 16

WaveTable Intended for fast behavioral verificationWaveforms represented as cellsData entered in spreadsheet formatDouble-click a signal at the time it should be changed, to access value

cell editorEnter value and press Return for the next time frameRange validation checked after each entry

Double-click in this area

Enter values in this area

Page 17: HDL Bencher

For Academic Use OnlyPresentation Name 17

Pattern Wizard

Aids complex waveform inputTo access, click a signal at the time it should be changed to

access value cell editor

Note: light blue background = input assignment, light yellow background = output assignment

Click in this area Click here for Pattern Wizard

Page 18: HDL Bencher

For Academic Use OnlyPresentation Name 18

Pattern Wizard

Available patterns

Pattern description– Changes depending

on the pattern selected

Count unit in clock cycles

Page 19: HDL Bencher

For Academic Use OnlyPresentation Name 19

Outline

OverviewCreate a New SourceCreate WaveformsExport TestbenchSummary

Page 20: HDL Bencher

For Academic Use OnlyPresentation Name 20

TestbenchTranslates waveforms to testbenchesWrites out VHDL or Verilog testbenchColor-coded for easy reading and reference Includes

– Library extractions– Log file creation– Procedure check– Input assignments– Output validation– Defined test signals– Delay verification– UUT (Unit Under Test) instantiation

Page 21: HDL Bencher

For Academic Use OnlyPresentation Name 21

Configuration

• Options Configuration

• Ability to automatically terminate the testbench for export on the last assignment

• VHDL compliance

Page 22: HDL Bencher

For Academic Use OnlyPresentation Name 22

Testbench• Waveform file extensions are TBW

• Waveform file can be seen in the Sources in Project window of the Project Navigator

• To view testbench: – In Sources in Project Window, select

the TBW file– Then in the Processes for Current

Source window, click View Behavioral Testbench

Page 23: HDL Bencher

For Academic Use OnlyPresentation Name 23

Outline

OverviewCreate a New SourceCreate WaveformsExport TestbenchSummary

Page 24: HDL Bencher

For Academic Use OnlyPresentation Name 24

Summary

HDL Bencher helps validate design function and performance

The three steps to create a testbench are– Create a new source– Develop waveforms– Export testbench

Writes out VHDL or Verilog testbench

Page 25: HDL Bencher

For Academic Use OnlyPresentation Name 25

Where Can I learn More?

• The HDL Bencher tool– Help Menu– support.xilinx.com software manuals Development

System Reference Guide HDL Bencher Help