From e8c59da0d176c4c2fd054df78a56db58d047885d Mon Sep 17 00:00:00 2001 From: Yaman Umuroglu <maltanar@gmail.com> Date: Tue, 28 Apr 2020 16:57:48 +0100 Subject: [PATCH] [StreamingFC] pad decoupled weight stream width to nearest 4 this is needed to get correct packing --- src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py b/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py index ab7ad3703..2fcb03f48 100644 --- a/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py +++ b/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py @@ -525,8 +525,10 @@ class StreamingFCLayer_Batch(HLSCustomOp): """Saves weights into .dat file""" # convert weight values into hexstring weight_width = self.get_weightstream_width() + # pad to nearest 4 bits to get hex strings + weight_width_padded = roundup_to_integer_multiple(weight_width, 4) weight_tensor_unflipped = pack_innermost_dim_as_hex_string( - weight_tensor_unflipped, export_wdt, weight_width, prefix="" + weight_tensor_unflipped, export_wdt, weight_width_padded, prefix="" ) weight_stream_len = np.prod(weight_tensor_unflipped.shape) factor = math.ceil(weight_stream_len / 1024) -- GitLab