forked from DARCLabHao/DSEframe
-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.txt
131 lines (97 loc) · 6.32 KB
/
README.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
===================================================================================
DSE Explorer Framework (DSEframe) v.1.0
===================================================================================
DSE Explorer Framework(DSEframe) is a software designed for generating and analysing the result of High-Level Synthesis (HLS) Design Space Exploration (DSE). It is a open source software based on Qt creator. The software can be used to call your own DSE process using any HLS tool. This is done by a system call of command built inside.
All of the work has been done by the Design Automation and Reconfigurable Computing Laboratory (DARClab) at the Department of Electrical and Computer Engineering (ECE), at the University of Texas at Dallas.
DARClab=Design Automation and Reconfigurable Computing Laboratory - www.utdallas.edu/~schaferb/darclab
More details regarding the software can be found at the authors:
Zi Wang, zxw173030@utdallas.edu
Hao Wu, hxw152530@utdallas.edu
Benjamin Carrion Schafer, schaferb@utdallas.edu
DSEframe is distributed in the hope that it will be useful. DSEframe is free software; you can redistribute it and/or modify it, but please remember WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. And please install Qtcreator on your machine to access and make your own modification to the project.
## Usage
## Open the App
Double click the DSEframe app or open it from command line.
## File Format
To use DSEframe, user need to create their own result in CSV format. The file format has to be exactly as follow (the examples folder contains some samples)
Method,Iteration,ATTR,AREA,state,FU,REG,MUXrm,DEC,pin_pair,net,max,min,ave,MISC,MEM,cp_delay,sim,Pmax,Pmin,Pave,Latency,BlockMemoryBit,DSP
BF,412,0,928,6,265,456,195,0,1822,849,6,6,6,12,-,1.2401ns,-,-,-,-,62,-,-
Method : Lable of the DSE method
Iteration: Iteration of the same method ran again
ATTR: Hash value generated by all types of unique attributes
AREA: Total area of the synthesized design
state: FSM state count
REG: Number of registers
MUX: Area due to muxes
DEC: Area due to decoders
pin_pair: Number of pin pairs
net: Number of nets
max: Maximum latency
min: Minimum latency
ave: average latency
MISC: Area of miscelaneous logic
MEM: Area of memory
cp_delay: Critical path delay
sim: Simulation runtime
Pmax: Maximum power
Pmin: Minimum power
Pave: Average power
Latency: Latency of circuit
BlockMemoryBit: BlockRAM bits in case of FPGAs
DSP: Number of DSP macros in case of FPGAs only
Out of the these entries Method, Iteration, AREA and Latency MUST be incldued.
There are several csv example files under "DSEframe_path/examples/" for reference.
## New File
Making an new file in the target directory under "File" -> "New File".
File name must in CSV format and meet the DSE result.
## Load File
Add a existing file with previous exploration rseults to display themunder "File" -> "Load File".
All the data will be loaded automatically.
## Run Command - Running own DSE method
1.) Select the folder and filename of the explorer .csv file which will contain the summary of the exploration as shown in File Format section.
2.) Write HLS command with arguments into the command line text box, click "Run" button. The exploration can be killed any time by pressing the stop button.
Note the file path load by "Load File" will work as well.
## Data Selection
After all the data are analyzed and plotted, user can select the data set by clicking the check box in the result table.
User can also select the optimum data or all data by clicking the radio button under graph.
## Kill The Process
If the command run into infinite loops or takes too long to finish, click the "Stop" button to kill the process.
##
The following files in DSEframe may be important to your modification
-----------------------------------------------------------------
| NAME | Description |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| examples/ | Folder with several example csv file |
| | that can be tested by loading file |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| release_linux/ | Folder with a executable file on linux |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| release_windows/ | Folder with a executable file on windows|
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| src/ | Folder with all the source code |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| DSEframe.pro | Qt program make file, open it from |
| | Qt Creator |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| main.cpp | main process of the project |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| mainwindow.cpp | The code for the behaviour of the main |
| mainwindow.h | main interface and all the data process |
| mainwindow.ui | |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| newfile.cpp | The code for dialog from "File"->"New" |
| newfile.h | used to locate the file path |
| newfile.ui | |
|---------------------+-----------------------------------------+
|---------------------+-----------------------------------------+
| qcustomplot.cpp | Third party plot function used to |
| qcustomplot.h | generate the trade-off curve |
-----------------------------------------------------------------