Skip to content

Reducing the high LUT utilization in StreamingMaxPool_hls #1264

Answered by Anuki16
Anuki16 asked this question in Q&A
Discussion options

You must be logged in to vote

I found a solution to this. As far as I understand from the source code, StreamingMaxPool does not have a way to reduce folding below the number of channels. However, this layer can be replaced by a Pool layer preceded by a ConvolutionInputGenerator. These two layers support any folding factor.

To make this change, I modified the following part of step_convert_to_hw in the build dataflow steps:

model = model.transform(to_hw.InferConvInpGen())
model = model.transform(to_hw.InferStreamingMaxPool())

as follows.

model = model.transform(to_hw.InferConvInpGen())
model = model.transform(to_hw.InferPool())
model = model.transform(to_hw.InferConvInpGen())

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by Anuki16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
1 participant