Skip to content

Commit f6a5726

Browse files
committed
Added reference benchmark project for Gowin IDE
1 parent 68ec411 commit f6a5726

File tree

10 files changed

+92
-14
lines changed

10 files changed

+92
-14
lines changed
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
#------------------------------------------------------------------------------
2+
# .gitignore for Gowin IDE
3+
# Konstantin Pavlov, pavlovconst@gmail.com
4+
#------------------------------------------------------------------------------
5+
6+
# INFO ------------------------------------------------------------------------
7+
# rename the file to ".gitignore" and place into your Gowin project directory
8+
#
9+
10+
11+
# junk files
12+
*.gprj.user
13+
impl/gwsynthesis/*.html
14+
impl/gwsynthesis/*.xml
15+
impl/gwsynthesis/*.log
16+
impl/gwsynthesis/*.vg
17+
18+
# junk directories
19+
/impl/pnr
20+
/impl/temp
21+
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
@echo off
2+
rem ------------------------------------------------------------------------------
3+
rem clean_gowin.bat
4+
rem published as part of https://github.com/pConst/basic_verilog
5+
rem Konstantin Pavlov, pavlovconst@gmail.com
6+
rem ------------------------------------------------------------------------------
7+
8+
rem Use this file as a boilerplate for your custom clean script
9+
rem for Gowin IDE projects
10+
11+
12+
rem preserving .\impl\gwsynthesis\test.prj file
13+
del /s /f /q .\impl\gwsynthesis\*.html
14+
del /s /f /q .\impl\gwsynthesis\*.xml
15+
del /s /f /q .\impl\gwsynthesis\*.log
16+
del /s /f /q .\impl\gwsynthesis\*.vg
17+
18+
del /s /f /q .\impl\pnr\*
19+
rmdir /s /q .\impl\pnr\
20+
21+
del /s /f /q .\impl\temp\*
22+
rmdir /s /q .\impl\temp\
23+
24+
del /s /f /q .*.gprj.user
25+
26+
pause
27+
goto :eof
28+

benchmark_projects/gowin_benchmark/gowin_benchmark.gprj

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
<FileList>
88
<File path="src/dynamic_delay.sv" type="file.verilog" enable="1"/>
99
<File path="src/main.sv" type="file.verilog" enable="1"/>
10+
<File path="src/gowin_benchmark.cst" type="file.cst" enable="1"/>
1011
<File path="src/timing.sdc" type="file.sdc" enable="1"/>
1112
</FileList>
1213
</Project>

benchmark_projects/gowin_benchmark/gowin_benchmark.gprj.user

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -3,20 +3,15 @@
33
<UserConfig>
44
<Version>1.0</Version>
55
<FlowState>
6-
<Process ID="Synthesis" State="2"/>
7-
<Process ID="Pnr" State="2"/>
8-
<Process ID="Gao" State="2"/>
6+
<Process ID="Synthesis" State="4"/>
7+
<Process ID="Pnr" State="4"/>
8+
<Process ID="Gao" State="4"/>
99
<Process ID="Rtl_Gao" State="2"/>
1010
</FlowState>
1111
<ResultFileList>
1212
<ResultFile ResultFileType="RES.netlist" ResultFilePath="impl/gwsynthesis/gowin_benchmark.vg"/>
13-
<ResultFile ResultFileType="RES.pnr.bitstream" ResultFilePath="impl/pnr/gowin_benchmark.fs"/>
14-
<ResultFile ResultFileType="RES.pnr.pin.rpt" ResultFilePath="impl/pnr/gowin_benchmark.pin.html"/>
15-
<ResultFile ResultFileType="RES.pnr.pwr.rpt" ResultFilePath="impl/pnr/gowin_benchmark.power.html"/>
16-
<ResultFile ResultFileType="RES.pnr.report" ResultFilePath="impl/pnr/gowin_benchmark.rpt.html"/>
17-
<ResultFile ResultFileType="RES.pnr.timing.rpt" ResultFilePath="impl/pnr/gowin_benchmark.tr.html"/>
1813
<ResultFile ResultFileType="RES.syn.report" ResultFilePath="impl/gwsynthesis/gowin_benchmark_syn.rpt.html"/>
1914
<ResultFile ResultFileType="RES.syn.resource" ResultFilePath="impl/gwsynthesis/gowin_benchmark_syn_rsc.xml"/>
2015
</ResultFileList>
21-
<Ui>000000ff00000001fd00000002000000000000010000000282fc0200000001fc00000035000002820000000000fffffffaffffffff0200000003fb00000030004600700067006100500072006f006a006500630074002e00500061006e0065006c002e00440065007300690067006e0100000000ffffffff0000000000000000fb00000032004600700067006100500072006f006a006500630074002e00500061006e0065006c002e00500072006f00630065007300730100000000ffffffff0000000000000000fb00000036004600700067006100500072006f006a006500630074002e00500061006e0065006c002e0048006900650072006100720063006800790100000000ffffffff0000000000000000000000030000078000000140fc0100000001fc00000000000007800000000000fffffffaffffffff0100000002fb00000032004600700067006100500072006f006a006500630074002e00500061006e0065006c002e00470065006e006500720061006c0100000000ffffffff0000000000000000fb0000002e004600700067006100500072006f006a006500630074002e00500061006e0065006c002e004900730073007500650100000000ffffffff00000000000000000000067c0000028200000004000000040000000800000008fc000000010000000200000003000000220043006f00720065002e0054006f006f006c006200610072002e00460069006c00650100000000ffffffff0000000000000000000000220043006f00720065002e0054006f006f006c006200610072002e004500640069007401000000adffffffff0000000000000000000000240043006f00720065002e0054006f006f006c006200610072002e0054006f006f006c0073010000017fffffffff0000000000000000</Ui>
16+
<Ui>000000ff00000001fd00000002000000000000010000000280fc0200000001fc00000037000002800000000000fffffffaffffffff0200000003fb00000030004600700067006100500072006f006a006500630074002e00500061006e0065006c002e00440065007300690067006e0100000000ffffffff0000000000000000fb00000032004600700067006100500072006f006a006500630074002e00500061006e0065006c002e00500072006f006300650073007303fffffeeb0000003c0000010000000269fb00000036004600700067006100500072006f006a006500630074002e00500061006e0065006c002e0048006900650072006100720063006800790100000000ffffffff0000000000000000000000030000078000000140fc0100000001fc00000000000007800000000000fffffffaffffffff0100000002fb00000032004600700067006100500072006f006a006500630074002e00500061006e0065006c002e00470065006e006500720061006c0100000000ffffffff0000000000000000fb0000002e004600700067006100500072006f006a006500630074002e00500061006e0065006c002e004900730073007500650100000000ffffffff00000000000000000000067c0000028000000004000000040000000800000008fc000000010000000200000003000000220043006f00720065002e0054006f006f006c006200610072002e00460069006c00650100000000ffffffff0000000000000000000000220043006f00720065002e0054006f006f006c006200610072002e004500640069007401000000adffffffff0000000000000000000000240043006f00720065002e0054006f006f006c006200610072002e0054006f006f006c0073010000017fffffffff0000000000000000</Ui>
2217
</UserConfig>
Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE gowin-synthesis-project>
3+
<Project>
4+
<Version>beta</Version>
5+
<Device id="GW2A-55C" package="PBGA1156" speed="7" partNumber="GW2A-LV55PG1156C7/I6"/>
6+
<FileList>
7+
<File path="J:\basic_verilog\benchmark_projects\gowin_benchmark\src\dynamic_delay.sv" type="verilog"/>
8+
<File path="J:\basic_verilog\benchmark_projects\gowin_benchmark\src\main.sv" type="verilog"/>
9+
</FileList>
10+
<OptionList>
11+
<Option type="disable_insert_pad" value="0"/>
12+
<Option type="dsp_balance" value="0"/>
13+
<Option type="looplimit" value="2000"/>
14+
<Option type="output_file" value="J:\basic_verilog\benchmark_projects\gowin_benchmark\impl\gwsynthesis\gowin_benchmark.vg"/>
15+
<Option type="print_all_synthesis_warning" value="0"/>
16+
<Option type="ram_rw_check" value="1"/>
17+
<Option type="top_module" value="main"/>
18+
<Option type="verilog_language" value="sysv-2017"/>
19+
<Option type="vhdl_language" value="vhdl-1993"/>
20+
</OptionList>
21+
</Project>

benchmark_projects/gowin_benchmark/impl/project_process_config.json

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"Allow_Duplicate_Modules" : false,
33
"Annotated_Properties_for_Analyst" : true,
4-
"BACKGROUND_PROGRAMMING" : false,
4+
"BACKGROUND_PROGRAMMING" : "off",
55
"COMPRESS" : false,
66
"CRC_CHECK" : true,
77
"Clock_Conversion" : true,
@@ -22,10 +22,14 @@
2222
"Generate_Post_Place_File" : false,
2323
"Generate_SDF_File" : false,
2424
"GwSyn_Loop_Limit" : 2000,
25+
"HOTBOOT" : false,
26+
"I2C" : false,
27+
"I2C_SLAVE_ADDR" : "00",
2528
"Implicit_Initial_Value_Support" : false,
2629
"IncludePath" : [
2730

2831
],
32+
"Incremental_Compile" : "",
2933
"Initialize_Primitives" : false,
3034
"JTAG" : false,
3135
"MODE_IO" : false,
@@ -34,10 +38,14 @@
3438
"Number_of_Critical_Paths" : "",
3539
"Number_of_Start/End_Points" : "",
3640
"OUTPUT_BASE_NAME" : "gowin_benchmark",
41+
"POWER_ON_RESET" : false,
3742
"PRINT_BSRAM_VALUE" : true,
43+
"PROGRAM_DONE_BYPASS" : false,
3844
"Pipelining" : true,
45+
"PlaceInRegToIob" : true,
46+
"PlaceIoRegToIob" : true,
47+
"PlaceOutRegToIob" : true,
3948
"Place_Option" : "0",
40-
"Place_register_to_IOB" : true,
4149
"Process_Configuration_Verion" : "1.0",
4250
"Promote_Physical_Constraint_Warning_to_Error" : false,
4351
"Push_Tristates" : true,
@@ -67,5 +75,6 @@
6775
"Verilog_Standard" : "Vlg_Std_Sysv2017",
6876
"WAKE_UP" : "0",
6977
"Write_Vendor_Constraint_File" : true,
70-
"dsp_balance" : false
78+
"dsp_balance" : false,
79+
"show_all_warnings" : false
7180
}

benchmark_projects/gowin_benchmark/src/dynamic_delay.sv

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
//--------------------------------------------------------------------------------
2-
// dynamic_delay.v
2+
// dynamic_delay.sv
3+
// published as part of https://github.com/pConst/basic_verilog
34
// Konstantin Pavlov, pavlovconst@gmail.com
45
//--------------------------------------------------------------------------------
56

benchmark_projects/gowin_benchmark/src/gowin_benchmark.cst

Whitespace-only changes.

benchmark_projects/gowin_benchmark/src/main.sv

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,11 @@
11
//------------------------------------------------------------------------------
22
// main.sv
3+
// published as part of https://github.com/pConst/basic_verilog
34
// Konstantin Pavlov, pavlovconst@gmail.com
45
//------------------------------------------------------------------------------
56

67
// INFO ------------------------------------------------------------------------
7-
// Vivado benchmark project
8+
// Gowin benchmark project
89
//
910
// This project uses dynamic_delay.sv module to model both high-register count and
1011
// combinational-intensive design. See "Messages" tab for TOTAL time

benchmark_projects/gowin_benchmark/src/timing.sdc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
#------------------------------------------------------------------------------
22
# timing.sdc
3+
# published as part of https://github.com/pConst/basic_verilog
34
# Konstantin Pavlov, pavlovconst@gmail.com
45
#------------------------------------------------------------------------------
56

0 commit comments

Comments
 (0)