dram visualization tool -- austin, prashant, vincent1 dram simulator visualization tool enee 759 h...

35
DRAM Visualization Tool -- A ustin, Prashant, Vincent 1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

Post on 21-Dec-2015

222 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

1

DRAM SIMULATOR VISUALIZATION TOOL

ENEE 759 H

Austin LanhamPrashant BhootVincent Chan

Page 2: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

2

OUTLINE

Necessity of Visualization toolFeaturesCode StructureDemoFuture Work

Page 3: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

3

NECESSITY

Numbers are hard to interpret Our waveform viewer clearly shows latency,

conflicts, bus utilization Gives the Memory system designer an insight

of the Memory Architecture Statistics are necessary to enhance the

performance Useful tool to test new Memory Design

Controller

Page 4: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

4

FEATURES Command statistics, conflicts, etc. can be viewed in bar

graph Bus Utilization timing diagram Takes DRAM command information and generates

timing diagrams View output for a smaller time range, so user can

macroscopically and microscopically analyze the data Supports SDRAM, DDR, DDR2 User can specify parameters Explicitly indicates Bank Conflict, T_FAW violation

Page 5: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

5

DRAM SIMULATOR

For integration and testing, used DRAM Simulator by Dave and Brinda at University of Maryland

Memory transaction based User can input the parameter file Generates output files showing latency,

transaction, conflicts, etc. Went through the code and generated required

output files

Page 6: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

6

JAVA

Platform Independent, runs perfectly on Mac, Windows, Solaris

Extensive libraries/documentationFreely availableEasily expandable

Page 7: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

7

CODE STRUCTURE

Java is very object oriented A class hierarchy exists

Page 8: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

8

Class Hierarchy Example

JPanel

JFrame(“Display Dialog”)

JLabel(“Please select…”)

JButtonGroup JButton(“Ok”)

JRadioButton(“Introduction”)

JRadioButton(“Timing Diagram”)

JRadioButton(“Stats Bar Graph”)

ActionListener

Page 9: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

9

Inheritance Example (Buttons)

Most objects stem from the light weight Object class.

Each layer adds methods. Some classes cannot be

instantiated (AbstractButton).

Object

Component

Container

JComponent

AbstractButton

JToggleButtonJButton

JRadioButton

Page 10: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

10

Our Tool’s Class Tree

JFrame

JMenuBar

JMenuItem

DRAM SimulatorVisualization

Class(extends JPanel)

SideBarJPanel

JScrollPane

MouseListener

Start/End TimeDialogDisplay

Dialog

Bar GraphParameters

Dialog

DRAMParameters

Dialog

DoubleInput

IntegerInput

TimeBlockVector

StatsVector

… JFrame

main()

DrawingAreaJPanel

Page 11: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

11

DEMO

File input Start and end time

Page 12: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

12

DRAM TIMING PARAMETERS

Jacob, Wang, Memory System Simulator Manual

Parameter Description

tBURST Time that data burst occupies on data bus

tCAS Time between Column access command and data by DRAM

tCMD Time period that command occupies on Command bus

tCWD Time between write command and data on bus

tDQS 1 Cycle in DDRs only

tRAS Time between Row access and data restoration

tRC Time between access to different rows in same bank

tRCD Time between Row access and data ready

tRFC Time between Refresh commands

tRP Precharge time

tWR Time between end of data burst and precharge

Page 13: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

13

DRAM Parameters/Timing Diagram

Bus IDs

Commandtype key

DRAM Parameters Dialog

Page 14: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

14

DRAM ACCESS PROTOCOL

RAS CAS CAW PRECHARGE REFRESH READ CYCLE

Page 15: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

15

ROW ACCESS

Jacob, Wang, ENEE 759H Lecture 6

Page 16: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

16

ROW ACCESSRAScommand

Data sensetRCD clocks long

Transaction ID

Page 17: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

17

COLUMN READ

Jacob, Wang, ENEE 759H Lecture 6

Page 18: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

18

COLUMN READ CAS read command

Data BurstTBURST

clocks long

Bank accessdictated by TCAS

Page 19: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

19

COLUMN WRITE

Jacob, Wang, ENEE 759H Lecture 6

Page 20: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

20

COLUMN WRITE

TCWD=0

Write takes place in TWR clocks.

Page 21: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

21

PRECHARGE

Jacob, Wang, ENEE 759H Lecture 6

Page 22: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

22

BANK CONFLICT

Occurs in Open Page configuration when one row is open and another row from the same bank is accessed.

Must close row and perform a PRECHARGE.

Page 23: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

23

PRECHARGE/BANK CONFLICT

Precharge before RAS to different row in open bank.

Bank Conflict.

Page 24: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

24

REFRESH

Jacob, Wang, ENEE 759H Lecture 6

Page 25: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

25

REFRESHBank access for TRAS clocks.

Precharge for TRP clocks.

Page 26: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

26

COMPLETE READ CYCLE

Jacob, Wang, ENEE 759H Lecture 6

Page 27: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

27

COMPLETE READ CYCLERAS followed by a CAS Read and then completed by a precharge when a bank conflict occurs.

Same rank, bank but different row = Bank Conflict.

Page 28: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

28

BAR GRAPH

Command and conflict distribution over specified time interval

Can dynamically choose timing interval Can selectively show commands &

conflicts Change granularity

Page 29: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

29

Setting Bar Graph Parameters

Page 30: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

30

Command and conflict distribution

Legends

Page 31: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

31

Command and conflict distribution

Page 32: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

32

Reads and Writes

Page 33: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

33

Bank Conflicts and Precharge

Page 34: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

34

Future Work

Include RDRAM and other Memory architectures Power plot Expand Banks and Ranks in Timing Diagram Save, Export and Print data and graphs Automated input configuration Fix known issues Additional Statistics

Page 35: DRAM Visualization Tool -- Austin, Prashant, Vincent1 DRAM SIMULATOR VISUALIZATION TOOL ENEE 759 H Austin Lanham Prashant Bhoot Vincent Chan

DRAM Visualization Tool -- Austin, Prashant, Vincent

35

QUESTIONS