Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
138 commits
Select commit Hold shift + click to select a range
e1ff6ab
Directly included barvinok 0.41
jack-melchert Oct 6, 2021
d417bd0
Merged
jack-melchert Oct 22, 2021
dd397db
Fixed final merge bugs
jack-melchert Oct 22, 2021
74434f8
add new command, need to modify coreIR library
joyliu37 Oct 27, 2021
5cad8a9
all lake tests passed with unified lake wrapper
joyliu37 Oct 28, 2021
09aade6
IO tiles added
jack-melchert Oct 29, 2021
4fe5d0f
Fixed aha glb
jack-melchert Nov 1, 2021
2e07638
work with new lake generator
joyliu37 Nov 1, 2021
3d08ecb
all tests pass
joyliu37 Nov 1, 2021
1f94e6c
should fix the file system issue
joyliu37 Nov 1, 2021
02b4e7d
fix the scheduler issue in DB schedule
joyliu37 Oct 21, 2021
e582781
cgra flow with verilator test working
joyliu37 Nov 2, 2021
5717f64
dp work for stencil applications, counter need updating
joyliu37 Nov 3, 2021
e6d78b8
dp test pass for a bunch of applications, need to fix upsample
joyliu37 Nov 4, 2021
f296aa4
move the split dimension outside of vectorization
joyliu37 Nov 4, 2021
744987d
resnet with dual port tile works
joyliu37 Nov 5, 2021
e8a8018
add a resource count coreIR pass
joyliu37 Nov 6, 2021
7569e67
fix m1 tests, all isca program pass
joyliu37 Nov 8, 2021
084c477
add lapalacian apps and compute file
joyliu37 Nov 8, 2021
d63e796
add a resource counting pass for m1
joyliu37 Nov 9, 2021
0bb1be2
m1 works for camera_pipeline with downsample upsample
joyliu37 Nov 11, 2021
dfee7f5
all local collateral changes
joyliu37 Nov 11, 2021
b8d2b21
Merge branch 'master' into dse-flow-new
jack-melchert Nov 11, 2021
b64dde1
resnet 1x1 works, fix cyclic banking, need to fully test
joyliu37 Nov 14, 2021
b5d6fe2
add detect equalities to simplify in isl_utils, all garnet tests work
joyliu37 Nov 14, 2021
896e92b
local update, work for buffet then
joyliu37 Nov 14, 2021
53000ff
Fixed resnet output stationary
jack-melchert Nov 16, 2021
eb7bfca
resnet88 chain work with M1, add support to arbitrary chianing
joyliu37 Nov 22, 2021
4382b54
add port sharing to garnet pass
joyliu37 Nov 22, 2021
0b05e4e
all local collateral changes
joyliu37 Nov 22, 2021
2e6fa79
unsharp large with 7x7 window works
joyliu37 Nov 23, 2021
d328d55
forget example_progs.h
joyliu37 Nov 23, 2021
1e61cb4
add an interface to lakecollateral
joyliu37 Dec 2, 2021
2b3f32a
add dual port interface
joyliu37 Dec 2, 2021
9b8172c
fix a bug in sram name search in lake verilog
joyliu37 Dec 3, 2021
8ccde5e
dual port memory created
joyliu37 Dec 3, 2021
b8e1914
Added pond support
jack-melchert Dec 3, 2021
e51903f
add a hack for glb latency sync
joyliu37 Dec 7, 2021
bf9cfd8
all tests pass
joyliu37 Dec 8, 2021
5825efa
add two test for 7x7 resnet layer size test
joyliu37 Dec 14, 2021
69fb6c6
add write schedule relaxation, remove buffer write extend padding
joyliu37 Dec 14, 2021
69e8860
collateral update
joyliu37 Dec 14, 2021
dbbddbd
resnet first layer with proper size work
joyliu37 Dec 15, 2021
33f61e4
Added pond pass to add schedules for pipelining
jack-melchert Dec 15, 2021
769686c
add bfloat type, link float DW library, link bfloat functional unit
joyliu37 Dec 17, 2021
46462f8
add fp app, regression test run but verilator has error
joyliu37 Dec 17, 2021
2465fe5
fix data transfer unroll in resnet
joyliu37 Dec 29, 2021
ab1eabe
Joey's fix to align kernel and input start
kalhankoul96 Jan 5, 2022
09a0fb7
fix a issue with both shift register and banking, codegen success tes…
joyliu37 Jan 5, 2022
6bd28bd
camera pipeline with extra buffer works
joyliu37 Jan 7, 2022
6b0e251
Merge branch 'new_lake' of https://github.com/dillonhuff/clockwork in…
joyliu37 Jan 7, 2022
bf83862
add a new glb unrolling app for resnet
joyliu37 Jan 8, 2022
1ea58e1
add unroll camera pipeline, extract linear rational approximation has…
joyliu37 Jan 11, 2022
9dfda81
add new camera pipeline tests
joyliu37 Jan 12, 2022
6a4afaf
add another loop perfection for root level, not work
joyliu37 Jan 12, 2022
6d8b169
change glb output config parsing
joyliu37 Jan 12, 2022
08d5a30
add resnet5_x_unroll, did not pass glb test
joyliu37 Jan 18, 2022
6eaaa44
add a dimension merging pass and schedule fallback to pond, resnet wi…
joyliu37 Jan 18, 2022
fcd088f
merged new_lake
jack-melchert Jan 18, 2022
4ac2939
Fixed merge
jack-melchert Jan 18, 2022
7a254c0
fix the stencil valid config
joyliu37 Jan 19, 2022
f82af8a
Fixed merge
jack-melchert Jan 19, 2022
5cc0fd1
Merge remote-tracking branch 'origin/new_lake' into meta-new-lake
jack-melchert Jan 19, 2022
9134dce
add resnet5x with multiple channels it stuck
joyliu37 Jan 21, 2022
5a03586
update float to bfloat16
joyliu37 Jan 21, 2022
66fd3da
Add new bfloat ops
jeffsetter Jan 21, 2022
067d8f4
merge
jeffsetter Jan 21, 2022
8d22d8a
Fix bfloat functions
jeffsetter Jan 21, 2022
37da24d
Change capacity to 32
kongty Jan 24, 2022
0a02ea2
need to put output channel in the inner most dimension for weight
joyliu37 Jan 24, 2022
8bb13a3
Merge branch 'new_lake' of https://github.com/dillonhuff/clockwork in…
joyliu37 Jan 24, 2022
630e69c
Merge remote-tracking branch 'origin/new_lake' into meta-new-lake
jack-melchert Jan 24, 2022
635cd97
add pond coreir json
joyliu37 Jan 24, 2022
7508ddb
add bitwidth checking pass
joyliu37 Jan 25, 2022
bf1e494
Merge remote-tracking branch 'origin/new_lake' into meta-new-lake
jack-melchert Jan 26, 2022
400b11f
Merge branch 'bfloat' into new_lake
joyliu37 Jan 27, 2022
d706937
Merge branch 'new_lake' of https://github.com/dillonhuff/clockwork in…
joyliu37 Jan 27, 2022
914db59
add nlmeans apps
joyliu37 Jan 30, 2022
e19fa10
add loop depth padding algorithm with auto loop alignment
joyliu37 Jan 30, 2022
b3fff97
refactor bank merging algorithm nlmeans pass codegen for coreir
joyliu37 Jan 30, 2022
a6c984a
reorder the pond resnet loop make sure it work
joyliu37 Jan 30, 2022
29b1da7
add nlmeans rolled app
joyliu37 Feb 1, 2022
2382418
nlmeans rolled stencil pass compilation
joyliu37 Feb 1, 2022
62b0dc5
add 7x7 nlmeans
joyliu37 Feb 4, 2022
452df83
refactor banking pass:
joyliu37 Feb 4, 2022
7c2c797
dsa writer logic change
joyliu37 Feb 4, 2022
1432692
Merge pull request #175 from dillonhuff/nlmeans_fix
joyliu37 Feb 4, 2022
40e0ec4
merged new lake
jack-melchert Feb 6, 2022
d20ae12
Merged new_lake
jack-melchert Feb 6, 2022
fdfb90f
Added all headers
jack-melchert Feb 10, 2022
6eb9fc7
Fixed flatten issue
jack-melchert Feb 10, 2022
b71febf
add two nlmeans integer app for simulation sanity check
joyliu37 Feb 10, 2022
f808057
refactor vectorization for non-fully unroll reduction, has bug
joyliu37 Feb 10, 2022
8617d23
add 2x2 unroll camerapipe
joyliu37 Feb 11, 2022
8f9242a
add harris color unroll by 4 app
joyliu37 Feb 12, 2022
cb651c2
add gemm unroll by 2 app
joyliu37 Feb 14, 2022
ce46f29
matmul unroll2 pass
joyliu37 Feb 14, 2022
9ccd219
Merge pull request #176 from dillonhuff/meta-new-lake
jack-melchert Feb 16, 2022
4ed51f8
add baseline shift register test and latency test
joyliu37 Feb 18, 2022
80e520f
Merge branch 'new_lake' of https://github.com/dillonhuff/clockwork in…
joyliu37 Feb 18, 2022
769f3bf
Cleaning up metamapper vs old flow
jack-melchert Feb 24, 2022
e1b3183
Changed name for metamapper test-mem
jack-melchert Feb 24, 2022
2d45340
nlmeans simple works, track json
joyliu37 Mar 2, 2022
7713fc3
Fixed inlining pass
jack-melchert Mar 3, 2022
076eda0
add nlmeans simple trunc for sanity check
joyliu37 Mar 5, 2022
2277289
update the nlmeans simple json
joyliu37 Mar 6, 2022
888c950
track resnet tiny
joyliu37 Mar 9, 2022
993ffc9
add nlmeans_simple apps
joyliu37 Mar 9, 2022
33cb70e
nlmeans simple works
joyliu37 Mar 9, 2022
cfc57cb
decouple ubuffer implementaiton extraction from coreir codegen
joyliu37 Mar 11, 2022
07fb754
Fixed pond naming in metamapper mapping
jack-melchert Mar 11, 2022
cf76e2a
Fixed pond naming
jack-melchert Mar 14, 2022
fdbc72a
refactor bank merging pass,merge after vectorization
joyliu37 Mar 17, 2022
5b82b5a
nlmeans simple works
joyliu37 Mar 17, 2022
69f9965
add a port map for new lake interface
joyliu37 Mar 18, 2022
f0cc97a
Merge branch 'nlmeans_fix' into new_lake
joyliu37 Mar 21, 2022
8e190fe
Merge pull request #177 from dillonhuff/new_lake
joyliu37 Mar 21, 2022
426421f
Merge pull request #178 from dillonhuff/nlmeans_fix
joyliu37 Mar 22, 2022
d0b3d2c
change embarassing banking condition, only consider memory port numbe…
joyliu37 Mar 23, 2022
21a02f1
fix a bug in lexmax for 1D schedule with simutaneous events
joyliu37 Mar 23, 2022
45e1aca
Merge pull request #179 from dillonhuff/new_lake
joyliu37 Mar 28, 2022
e868a23
port_rename for running on cgra
jack-melchert Mar 28, 2022
626cf5f
add a loop split pass
joyliu37 Mar 30, 2022
58e3dca
modify isl aff expr approximation
joyliu37 Mar 30, 2022
2eb143a
refactor shift register optimization pass
joyliu37 Mar 30, 2022
8f232ba
update camera pipeline app
joyliu37 Mar 30, 2022
d193c92
fixed rom port naming
jack-melchert Mar 31, 2022
b07d0fc
Added flush conn
jack-melchert Mar 31, 2022
d691766
Added missing bracket
jack-melchert Apr 4, 2022
6632194
change rom addr name mapping
joyliu37 Apr 6, 2022
9784588
Merge branch 'port_rename' of https://github.com/dillonhuff/clockwork…
joyliu37 Apr 6, 2022
2dcf816
Fixed cgralib port outputs/inputs
jack-melchert Apr 6, 2022
0ea271b
Merge pull request #180 from dillonhuff/port_rename
joyliu37 Apr 11, 2022
0554bf2
Added flush pass to new_lake branch
jack-melchert Apr 7, 2022
afe6cd0
Merge pull request #181 from dillonhuff/flush-fixed
kongty Apr 14, 2022
b0e81e7
Fixed pond configuration
jack-melchert Apr 15, 2022
08b585a
Remove Pond flushes for pipelining
jack-melchert Apr 19, 2022
4011232
Rate match
Ritvik1sharma Apr 26, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ COREIR_INCLUDE = $(COREIR_PATH)/include
COREIR_LIB = $(COREIR_PATH)/lib

CXX_FLAGS += -I $(COREIR_INCLUDE) -D COREIR
LINK_FLAGS += -L $(COREIR_LIB) -Wl,-rpath $(COREIR_LIB) -lcoreir -lcoreirsim -lcoreir-commonlib
LINK_FLAGS += -L $(COREIR_LIB) -Wl,-rpath $(COREIR_LIB) -lcoreir -lcoreirsim -lcoreir-commonlib -lcoreir-float -lcoreir-float_DW
endif

ifeq ($(CGRAFLOW),1)
Expand All @@ -43,7 +43,7 @@ LIB_HEADER_FILES = $(patsubst %.cpp,%.h,$(TEST_FILES))
PROGS_CPP_FILES := $(shell find example_progs -name "*.cpp")
PROGS_OBJ := $(patsubst example_progs/%.cpp, $(BUILD_DIR)/%.o, $(PROGS_CPP_FILES))

LIB_CPP_FILES = qexpr.cpp expr.cpp app.cpp isl_utils.cpp prog.cpp codegen.cpp ubuffer.cpp coreir_backend.cpp cgralib.cpp cwlib.cpp options.cpp lake_target.cpp utils.cpp simple_example_progs.cpp rdai_collateral.cpp verilog_backend.cpp
LIB_CPP_FILES = qexpr.cpp expr.cpp app.cpp isl_utils.cpp prog.cpp codegen.cpp ubuffer.cpp coreir_backend.cpp cgralib.cpp cwlib.cpp options.cpp lake_target.cpp utils.cpp simple_example_progs.cpp rdai_collateral.cpp verilog_backend.cpp cgra_flow.cpp
LIB_CPP_FILES += build_set_test.cpp prog_splitting_test.cpp
LIB_HEADER_FILES = $(patsubst %.cpp,%.h,$(LIB_CPP_FILES))
#LIB_CPP_FILES += $(PROGS_CPP_FILES)
Expand Down
601 changes: 186 additions & 415 deletions aha_garnet_design_new/camera_pipeline_new/camera_pipeline_new.json

Large diffs are not rendered by default.

1,087 changes: 341 additions & 746 deletions aha_garnet_design_new/camera_pipeline_new/camera_pipeline_new_garnet.json

Large diffs are not rendered by default.

118 changes: 54 additions & 64 deletions aha_garnet_design_new/cascade/cascade.json

Large diffs are not rendered by default.

208 changes: 96 additions & 112 deletions aha_garnet_design_new/cascade/cascade_garnet.json

Large diffs are not rendered by default.

8 changes: 4 additions & 4 deletions aha_garnet_design_new/conv_1_2/conv_1_2.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@
},
"op_hcompute_hw_input_global_wrapper_stencil_port_controller":{
"genref":"cgralib.Mem_amber",
"genargs":{"ID":["String","_U5"], "ctrl_width":["Int",16], "has_chain_en":["Bool",true], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",0], "num_outputs":["Int",0], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[0],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64]}},"mode":"lake","verilog_name":"aff_ctrl_counter__U5"}
"genargs":{"ID":["String","_U5"], "ctrl_width":["Int",16], "has_chain_en":["Bool",false], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",1], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[0],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64]}},"mode":"lake"}
},
"op_hcompute_hw_input_global_wrapper_stencil_port_controller_clk_en_const":{
"modref":"corebit.const",
Expand All @@ -61,8 +61,8 @@
},
"op_hcompute_hw_output_stencil_port_controller":{
"genref":"cgralib.Mem_amber",
"genargs":{"ID":["String","_U1"], "ctrl_width":["Int",16], "has_chain_en":["Bool",true], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",0], "num_outputs":["Int",0], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[1],"cycle_stride":[1,64],"dimensionality":2,"extent":[63,64]}},"mode":"lake","verilog_name":"aff_ctrl_counter__U1"}
"genargs":{"ID":["String","_U1"], "ctrl_width":["Int",16], "has_chain_en":["Bool",false], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",1], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[1],"cycle_stride":[1,64],"dimensionality":2,"extent":[63,64]}},"mode":"lake"}
},
"op_hcompute_hw_output_stencil_port_controller_clk_en_const":{
"modref":"corebit.const",
Expand Down
2 changes: 1 addition & 1 deletion aha_garnet_design_new/conv_1_2/conv_1_2_garnet.json
Original file line number Diff line number Diff line change
Expand Up @@ -210,7 +210,7 @@
},
"op_hcompute_hw_output_stencil_port_controller_garnet":{
"genref":"cgralib.Mem",
"genargs":{"ID":["String","_U1"], "ctrl_width":["Int",16], "has_chain_en":["Bool",true], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",0], "num_outputs":["Int",0], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"genargs":{"ID":["String","_U1"], "ctrl_width":["Int",16], "has_chain_en":["Bool",false], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",1], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"modargs":{"config":["Json",{"stencil_valid":{"cycle_starting_addr":[1],"cycle_stride":[1,64],"dimensionality":2,"extent":[63,64]}}], "init":["Json",null], "mode":["String","lake"]}
}
},
Expand Down
81 changes: 38 additions & 43 deletions aha_garnet_design_new/conv_3_3/conv_3_3.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
["hw_output_stencil_op_hcompute_hw_output_stencil_write",["Array",1,["Array",16,"Bit"]]]
]],
"instances":{
"_U16":{
"_U15":{
"genref":"mantle.reg",
"genargs":{"has_clr":["Bool",false], "has_en":["Bool",false], "has_rst":["Bool",false], "width":["Int",16]},
"modargs":{"init":[["BitVector",16],"16'h0000"]}
Expand All @@ -36,48 +36,48 @@
"modref":"global.cu_op_hcompute_hw_input_global_wrapper_stencil"
},
"op_hcompute_hw_input_global_wrapper_stencil_exe_start":{
"modref":"global.op_hcompute_hw_input_global_wrapper_stencil_exe_start_pt__U14"
"modref":"global.op_hcompute_hw_input_global_wrapper_stencil_exe_start_pt__U13"
},
"op_hcompute_hw_input_global_wrapper_stencil_port_controller":{
"genref":"cgralib.Mem_amber",
"genargs":{"ID":["String","_U12"], "ctrl_width":["Int",16], "has_chain_en":["Bool",true], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",0], "num_outputs":["Int",0], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[0],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64]}},"mode":"lake","verilog_name":"aff_ctrl_counter__U12"}
"genargs":{"ID":["String","_U11"], "ctrl_width":["Int",16], "has_chain_en":["Bool",false], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",1], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[0],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64]}},"mode":"lake"}
},
"op_hcompute_hw_input_global_wrapper_stencil_port_controller_clk_en_const":{
"modref":"corebit.const",
"modargs":{"value":["Bool",true]}
},
"op_hcompute_hw_input_global_wrapper_stencil_read_start":{
"modref":"global.op_hcompute_hw_input_global_wrapper_stencil_read_start_pt__U13"
"modref":"global.op_hcompute_hw_input_global_wrapper_stencil_read_start_pt__U12"
},
"op_hcompute_hw_input_global_wrapper_stencil_write_start":{
"modref":"global.op_hcompute_hw_input_global_wrapper_stencil_write_start_pt__U15"
"modref":"global.op_hcompute_hw_input_global_wrapper_stencil_write_start_pt__U14"
},
"op_hcompute_hw_output_stencil":{
"modref":"global.cu_op_hcompute_hw_output_stencil"
},
"op_hcompute_hw_output_stencil_exe_start":{
"modref":"global.op_hcompute_hw_output_stencil_exe_start_pt__U10"
"modref":"global.op_hcompute_hw_output_stencil_exe_start_pt__U9"
},
"op_hcompute_hw_output_stencil_port_controller":{
"genref":"cgralib.Mem_amber",
"genargs":{"ID":["String","_U8"], "ctrl_width":["Int",16], "has_chain_en":["Bool",true], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",0], "num_outputs":["Int",0], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[130],"cycle_stride":[1,64],"dimensionality":2,"extent":[62,62]}},"mode":"lake","verilog_name":"aff_ctrl_counter__U8"}
"genargs":{"ID":["String","_U7"], "ctrl_width":["Int",16], "has_chain_en":["Bool",false], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",true], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",1], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"stencil_valid":{"cycle_starting_addr":[130],"cycle_stride":[1,64],"dimensionality":2,"extent":[62,62]}},"mode":"lake"}
},
"op_hcompute_hw_output_stencil_port_controller_clk_en_const":{
"modref":"corebit.const",
"modargs":{"value":["Bool",true]}
},
"op_hcompute_hw_output_stencil_read_start":{
"modref":"global.op_hcompute_hw_output_stencil_read_start_pt__U9"
"modref":"global.op_hcompute_hw_output_stencil_read_start_pt__U8"
},
"op_hcompute_hw_output_stencil_write_start":{
"modref":"global.op_hcompute_hw_output_stencil_write_start_pt__U11"
"modref":"global.op_hcompute_hw_output_stencil_write_start_pt__U10"
}
},
"connections":[
["self.clk","_U16.clk"],
["self.hw_input_stencil_op_hcompute_hw_input_global_wrapper_stencil_read.0","_U16.in"],
["self.clk","_U15.clk"],
["self.hw_input_stencil_op_hcompute_hw_input_global_wrapper_stencil_read.0","_U15.in"],
["self.clk","conv_stencil.clk"],
["op_hcompute_conv_stencil_1.conv_stencil_op_hcompute_conv_stencil_1_write","conv_stencil.op_hcompute_conv_stencil_1_write"],
["op_hcompute_hw_output_stencil.conv_stencil_op_hcompute_hw_output_stencil_read","conv_stencil.op_hcompute_hw_output_stencil_read"],
Expand Down Expand Up @@ -435,9 +435,10 @@
["op_hcompute_hw_input_global_wrapper_stencil_write_extra_ctrl","BitIn"]
]],
"instances":{
"chain_en_const_U1":{
"modref":"corebit.const",
"modargs":{"value":["Bool",false]}
"d_reg__U1":{
"genref":"mantle.reg",
"genargs":{"has_clr":["Bool",false], "has_en":["Bool",false], "has_rst":["Bool",false], "width":["Int",16]},
"modargs":{"init":[["BitVector",16],"16'h0000"]}
},
"d_reg__U2":{
"genref":"mantle.reg",
Expand All @@ -464,41 +465,35 @@
"genargs":{"has_clr":["Bool",false], "has_en":["Bool",false], "has_rst":["Bool",false], "width":["Int",16]},
"modargs":{"init":[["BitVector",16],"16'h0000"]}
},
"d_reg__U7":{
"genref":"mantle.reg",
"genargs":{"has_clr":["Bool",false], "has_en":["Bool",false], "has_rst":["Bool",false], "width":["Int",16]},
"modargs":{"init":[["BitVector",16],"16'h0000"]}
},
"ub_hw_input_global_wrapper_stencil_BANK_0":{
"genref":"cgralib.Mem_amber",
"genargs":{"ID":["String","_U0"], "ctrl_width":["Int",16], "has_chain_en":["Bool",true], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",false], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",2], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"agg2sram_0":{"cycle_starting_addr":[4],"cycle_stride":[4,64],"dimensionality":2,"extent":[16,64],"read_data_starting_addr":[0],"read_data_stride":[1,0],"write_data_starting_addr":[0],"write_data_stride":[1,16]},"in2agg_0":{"cycle_starting_addr":[0],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64],"write_data_starting_addr":[0],"write_data_stride":[1,0]},"sram2tb_0":{"cycle_starting_addr":[62],"cycle_stride":[4,64],"dimensionality":2,"extent":[16,64],"read_data_starting_addr":[0],"read_data_stride":[1,16],"write_data_starting_addr":[0],"write_data_stride":[1,0]},"sram2tb_1":{"cycle_starting_addr":[125],"cycle_stride":[4,64],"dimensionality":2,"extent":[16,64],"read_data_starting_addr":[0],"read_data_stride":[1,16],"write_data_starting_addr":[0],"write_data_stride":[1,0]},"tb2out_0":{"cycle_starting_addr":[64],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64],"read_data_starting_addr":[0],"read_data_stride":[1,0]},"tb2out_1":{"cycle_starting_addr":[128],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64],"read_data_starting_addr":[0],"read_data_stride":[1,0]}},"mode":"lake","verilog_name":"lake__U0"}
"genargs":{"ID":["String","_U0"], "ctrl_width":["Int",16], "has_chain_en":["Bool",false], "has_external_addrgen":["Bool",false], "has_flush":["Bool",true], "has_read_valid":["Bool",false], "has_reset":["Bool",false], "has_stencil_valid":["Bool",false], "has_valid":["Bool",false], "is_rom":["Bool",false], "num_inputs":["Int",1], "num_outputs":["Int",2], "use_prebuilt_mem":["Bool",true], "width":["Int",16]},
"metadata":{"config":{"agg2sram_0":{"cycle_starting_addr":[4],"cycle_stride":[4,64],"dimensionality":2,"extent":[16,64],"read_data_starting_addr":[0],"read_data_stride":[1,0],"write_data_starting_addr":[0],"write_data_stride":[1,16]},"in2agg_0":{"cycle_starting_addr":[0],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64],"write_data_starting_addr":[0],"write_data_stride":[1,0]},"sram2tb_0":{"cycle_starting_addr":[62],"cycle_stride":[4,64],"dimensionality":2,"extent":[16,64],"read_data_starting_addr":[0],"read_data_stride":[1,16],"write_data_starting_addr":[0],"write_data_stride":[1,0]},"sram2tb_1":{"cycle_starting_addr":[125],"cycle_stride":[4,64],"dimensionality":2,"extent":[16,64],"read_data_starting_addr":[0],"read_data_stride":[1,16],"write_data_starting_addr":[0],"write_data_stride":[1,0]},"tb2out_0":{"cycle_starting_addr":[64],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64],"read_data_starting_addr":[0],"read_data_stride":[1,0]},"tb2out_1":{"cycle_starting_addr":[128],"cycle_stride":[1,64],"dimensionality":2,"extent":[64,64],"read_data_starting_addr":[0],"read_data_stride":[1,0]}},"mode":"lake"}
},
"ub_hw_input_global_wrapper_stencil_BANK_0_clk_en_const":{
"modref":"corebit.const",
"modargs":{"value":["Bool",true]}
}
},
"connections":[
["ub_hw_input_global_wrapper_stencil_BANK_0.chain_chain_en","chain_en_const_U1.out"],
["self.clk","d_reg__U1.clk"],
["self.op_hcompute_hw_input_global_wrapper_stencil_write.0","d_reg__U1.in"],
["d_reg__U2.in","d_reg__U1.out"],
["self.op_hcompute_conv_stencil_1_read.8","d_reg__U1.out"],
["self.clk","d_reg__U2.clk"],
["self.op_hcompute_hw_input_global_wrapper_stencil_write.0","d_reg__U2.in"],
["d_reg__U3.in","d_reg__U2.out"],
["self.op_hcompute_conv_stencil_1_read.8","d_reg__U2.out"],
["self.op_hcompute_conv_stencil_1_read.6","d_reg__U2.out"],
["self.clk","d_reg__U3.clk"],
["self.op_hcompute_conv_stencil_1_read.6","d_reg__U3.out"],
["ub_hw_input_global_wrapper_stencil_BANK_0.data_out_0","d_reg__U3.in"],
["d_reg__U4.in","d_reg__U3.out"],
["self.op_hcompute_conv_stencil_1_read.4","d_reg__U3.out"],
["self.clk","d_reg__U4.clk"],
["ub_hw_input_global_wrapper_stencil_BANK_0.data_out_0","d_reg__U4.in"],
["d_reg__U5.in","d_reg__U4.out"],
["self.op_hcompute_conv_stencil_1_read.4","d_reg__U4.out"],
["self.op_hcompute_conv_stencil_1_read.3","d_reg__U4.out"],
["self.clk","d_reg__U5.clk"],
["self.op_hcompute_conv_stencil_1_read.3","d_reg__U5.out"],
["ub_hw_input_global_wrapper_stencil_BANK_0.data_out_1","d_reg__U5.in"],
["d_reg__U6.in","d_reg__U5.out"],
["self.op_hcompute_conv_stencil_1_read.1","d_reg__U5.out"],
["self.clk","d_reg__U6.clk"],
["ub_hw_input_global_wrapper_stencil_BANK_0.data_out_1","d_reg__U6.in"],
["d_reg__U7.in","d_reg__U6.out"],
["self.op_hcompute_conv_stencil_1_read.1","d_reg__U6.out"],
["self.clk","d_reg__U7.clk"],
["self.op_hcompute_conv_stencil_1_read.0","d_reg__U7.out"],
["self.op_hcompute_conv_stencil_1_read.0","d_reg__U6.out"],
["ub_hw_input_global_wrapper_stencil_BANK_0.clk","self.clk"],
["ub_hw_input_global_wrapper_stencil_BANK_0.data_out_1","self.op_hcompute_conv_stencil_1_read.2"],
["ub_hw_input_global_wrapper_stencil_BANK_0.data_out_0","self.op_hcompute_conv_stencil_1_read.5"],
Expand All @@ -509,7 +504,7 @@
["ub_hw_input_global_wrapper_stencil_BANK_0_clk_en_const.out","ub_hw_input_global_wrapper_stencil_BANK_0.rst_n"]
]
},
"op_hcompute_hw_input_global_wrapper_stencil_exe_start_pt__U14":{
"op_hcompute_hw_input_global_wrapper_stencil_exe_start_pt__U13":{
"type":["Record",[
["in","BitIn"],
["out","Bit"]
Expand All @@ -518,7 +513,7 @@
["self.out","self.in"]
]
},
"op_hcompute_hw_input_global_wrapper_stencil_read_start_pt__U13":{
"op_hcompute_hw_input_global_wrapper_stencil_read_start_pt__U12":{
"type":["Record",[
["in","BitIn"],
["out","Bit"]
Expand All @@ -527,7 +522,7 @@
["self.out","self.in"]
]
},
"op_hcompute_hw_input_global_wrapper_stencil_write_start_pt__U15":{
"op_hcompute_hw_input_global_wrapper_stencil_write_start_pt__U14":{
"type":["Record",[
["in","BitIn"],
["out","Bit"]
Expand All @@ -536,7 +531,7 @@
["self.out","self.in"]
]
},
"op_hcompute_hw_output_stencil_exe_start_pt__U10":{
"op_hcompute_hw_output_stencil_exe_start_pt__U9":{
"type":["Record",[
["in","BitIn"],
["out","Bit"]
Expand All @@ -545,7 +540,7 @@
["self.out","self.in"]
]
},
"op_hcompute_hw_output_stencil_read_start_pt__U9":{
"op_hcompute_hw_output_stencil_read_start_pt__U8":{
"type":["Record",[
["in","BitIn"],
["out","Bit"]
Expand All @@ -554,7 +549,7 @@
["self.out","self.in"]
]
},
"op_hcompute_hw_output_stencil_write_start_pt__U11":{
"op_hcompute_hw_output_stencil_write_start_pt__U10":{
"type":["Record",[
["in","BitIn"],
["out","Bit"]
Expand Down
Loading