From 684488da2de5730738d818d471e153a826155084 Mon Sep 17 00:00:00 2001 From: auphelia <jakobapk@web.de> Date: Mon, 11 Nov 2019 13:53:47 +0000 Subject: [PATCH] [ONNX finn hls model] Added domain and backend attribute --- .../finn-hls-model/finn-hls-onnx-model.onnx | 65 +++++++++++-------- tests/finn-hls-onnx-model.onnx | 65 +++++++++++-------- tests/test_finn_hls_onnx_graph.py | 18 +++-- 3 files changed, 87 insertions(+), 61 deletions(-) diff --git a/src/finn/data/onnx/finn-hls-model/finn-hls-onnx-model.onnx b/src/finn/data/onnx/finn-hls-model/finn-hls-onnx-model.onnx index 21ea5401e..c2db9153f 100644 --- a/src/finn/data/onnx/finn-hls-model/finn-hls-onnx-model.onnx +++ b/src/finn/data/onnx/finn-hls-model/finn-hls-onnx-model.onnx @@ -1,8 +1,9 @@ -finn-hls-onnx-model:ˆ -0 -inp memInStrm memInStrm"FIFO* -depth€ -° +finn-hls-onnx-model:º +R +inp memInStrm memInStrm"FIFO* +backend"fpgadataflow * +depth€ :finn +Ò memInStrm weights0 thresh0out1"StreamingFCLayer_Batch* @@ -11,13 +12,15 @@ MWÀ * PE * -SIMD@ *! +SIMD@ * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -* -out1inter0inter0"FIFO* -depth - +resType"ap_resource_lut() :finn +L +out1inter0inter0"FIFO* +backend"fpgadataflow * +depth :finn +Ï inter0 weights1 thresh1out2"StreamingFCLayer_Batch* @@ -26,13 +29,15 @@ MW€ * PE@ * -SIMD *! +SIMD * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -* -out2inter1inter1"FIFO* -depth - +resType"ap_resource_lut() :finn +L +out2inter1inter1"FIFO* +backend"fpgadataflow * +depth :finn +Ï inter1 weights2 thresh2out3"StreamingFCLayer_Batch* @@ -41,13 +46,15 @@ MW€ * PE * -SIMD@ *! +SIMD@ * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -* -out3inter2inter2"FIFO* -depth -¬ +resType"ap_resource_lut() :finn +L +out3inter2inter2"FIFO* +backend"fpgadataflow * +depth :finn +Î inter2 weights3 thresh3out4"StreamingFCLayer_Batch* @@ -55,13 +62,15 @@ MW€ * PE * -SIMD *! +SIMD * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -- +resType"ap_resource_lut() :finn +O out4outp -memOutStrm"FIFO* -depth€ finn_hls_onnx_graphZ +memOutStrm"FIFO* +backend"fpgadataflow * +depth€ :finnfinn_hls_onnx_graphZ inp diff --git a/tests/finn-hls-onnx-model.onnx b/tests/finn-hls-onnx-model.onnx index 21ea5401e..c2db9153f 100644 --- a/tests/finn-hls-onnx-model.onnx +++ b/tests/finn-hls-onnx-model.onnx @@ -1,8 +1,9 @@ -finn-hls-onnx-model:ˆ -0 -inp memInStrm memInStrm"FIFO* -depth€ -° +finn-hls-onnx-model:º +R +inp memInStrm memInStrm"FIFO* +backend"fpgadataflow * +depth€ :finn +Ò memInStrm weights0 thresh0out1"StreamingFCLayer_Batch* @@ -11,13 +12,15 @@ MWÀ * PE * -SIMD@ *! +SIMD@ * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -* -out1inter0inter0"FIFO* -depth - +resType"ap_resource_lut() :finn +L +out1inter0inter0"FIFO* +backend"fpgadataflow * +depth :finn +Ï inter0 weights1 thresh1out2"StreamingFCLayer_Batch* @@ -26,13 +29,15 @@ MW€ * PE@ * -SIMD *! +SIMD * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -* -out2inter1inter1"FIFO* -depth - +resType"ap_resource_lut() :finn +L +out2inter1inter1"FIFO* +backend"fpgadataflow * +depth :finn +Ï inter1 weights2 thresh2out3"StreamingFCLayer_Batch* @@ -41,13 +46,15 @@ MW€ * PE * -SIMD@ *! +SIMD@ * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -* -out3inter2inter2"FIFO* -depth -¬ +resType"ap_resource_lut() :finn +L +out3inter2inter2"FIFO* +backend"fpgadataflow * +depth :finn +Î inter2 weights3 thresh3out4"StreamingFCLayer_Batch* @@ -55,13 +62,15 @@ MW€ * PE * -SIMD *! +SIMD * +backend"fpgadataflow *! resDataType"Recast<XnorMul> * -resType"ap_resource_lut() -- +resType"ap_resource_lut() :finn +O out4outp -memOutStrm"FIFO* -depth€ finn_hls_onnx_graphZ +memOutStrm"FIFO* +backend"fpgadataflow * +depth€ :finnfinn_hls_onnx_graphZ inp diff --git a/tests/test_finn_hls_onnx_graph.py b/tests/test_finn_hls_onnx_graph.py index 5066d3dbe..42c31716a 100644 --- a/tests/test_finn_hls_onnx_graph.py +++ b/tests/test_finn_hls_onnx_graph.py @@ -11,12 +11,14 @@ def test_manually_construct_onnx_graph(): outp = helper.make_tensor_value_info("outp", TensorProto.FLOAT, [1, 1, 64]) memInStrm_node = helper.make_node( - "FIFO", ["inp"], ["memInStrm"], "memInStrm", depth=1024 + "FIFO", ["inp"], ["memInStrm"], "memInStrm", domain='finn', backend='fpgadataflow', depth=1024 ) FCLayer0_node = helper.make_node( "StreamingFCLayer_Batch", ["memInStrm", "weights0", "thresh0"], ["out1"], + domain='finn', + backend='fpgadataflow', resType="ap_resource_lut()", MW=832, MH=1024, @@ -24,11 +26,13 @@ def test_manually_construct_onnx_graph(): PE=32, resDataType="Recast<XnorMul>", ) - inter0_node = helper.make_node("FIFO", ["out1"], ["inter0"], "inter0", depth=16) + inter0_node = helper.make_node("FIFO", ["out1"], ["inter0"], "inter0", domain='finn', backend='fpgadataflow', depth=16) FCLayer1_node = helper.make_node( "StreamingFCLayer_Batch", ["inter0", "weights1", "thresh1"], ["out2"], + domain='finn', + backend='fpgadataflow', resType="ap_resource_lut()", MW=1024, MH=1024, @@ -36,11 +40,13 @@ def test_manually_construct_onnx_graph(): PE=64, resDataType="Recast<XnorMul>", ) - inter1_node = helper.make_node("FIFO", ["out2"], ["inter1"], "inter1", depth=16) + inter1_node = helper.make_node("FIFO", ["out2"], ["inter1"], "inter1", domain='finn', backend='fpgadataflow', depth=16) FCLayer2_node = helper.make_node( "StreamingFCLayer_Batch", ["inter1", "weights2", "thresh2"], ["out3"], + domain='finn', + backend='fpgadataflow', resType="ap_resource_lut()", MW=1024, MH=1024, @@ -48,11 +54,13 @@ def test_manually_construct_onnx_graph(): PE=32, resDataType="Recast<XnorMul>", ) - inter2_node = helper.make_node("FIFO", ["out3"], ["inter2"], "inter2", depth=8) + inter2_node = helper.make_node("FIFO", ["out3"], ["inter2"], "inter2", domain='finn', backend='fpgadataflow', depth=8) FCLayer3_node = helper.make_node( "StreamingFCLayer_Batch", ["inter2", "weights3", "thresh3"], ["out4"], + domain='finn', + backend='fpgadataflow', resType="ap_resource_lut()", MW=1024, MH=64, @@ -61,7 +69,7 @@ def test_manually_construct_onnx_graph(): resDataType="Recast<XnorMul>", ) memOutStrm_node = helper.make_node( - "FIFO", ["out4"], ["outp"], "memOutStrm", depth=1024 + "FIFO", ["out4"], ["outp"], "memOutStrm", domain='finn', backend='fpgadataflow', depth=1024 ) graph = helper.make_graph( -- GitLab