diff --git a/run-docker.sh b/run-docker.sh index 6883f13c727b89f5370b3458be1d574fd2d6701a..d63c84beac2aceb2820c1ad42c50cba9a5ed5009 100755 --- a/run-docker.sh +++ b/run-docker.sh @@ -86,7 +86,7 @@ VIVADO_IP_CACHE=$BUILD_LOCAL/vivado_ip_cache git clone --branch feature/finn_onnx_export $BREVITAS_REPO $BREVITAS_LOCAL || git -C "$BREVITAS_LOCAL" pull git clone $EXAMPLES_REPO $EXAMPLES_LOCAL || git -C "$EXAMPLES_LOCAL" pull git clone $CNPY_REPO $CNPY_LOCAL || git -C "$CNPY_LOCAL" pull -git clone $FINN_HLS_REPO $FINN_HLS_LOCAL; git -C "$FINN_HLS_LOCAL" checkout b5dc957a16017b8356a7010144b0a4e2f8cfd124 || git -C "$FINN_HLS_LOCAL" checkout b5dc957a16017b8356a7010144b0a4e2f8cfd124 +git clone $FINN_HLS_REPO $FINN_HLS_LOCAL || git -C "$FINN_HLS_LOCAL" checkout master; git -C "$FINN_HLS_LOCAL" pull git clone $PYVERILATOR_REPO $PYVERILATOR_LOCAL || git -C "$PYVERILATOR_LOCAL" pull git clone $PYNQSHELL_REPO $PYNQSHELL_LOCAL || git -C "$PYNQSHELL_LOCAL" pull diff --git a/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py b/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py index a2c88c5d6eca723f4e853e09a685bc6478e9a01c..9b4dfe69f6b7240909dfdb94e5353fb937ee3030 100644 --- a/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py +++ b/src/finn/custom_op/fpgadataflow/streamingfclayer_batch.py @@ -272,13 +272,13 @@ class StreamingFCLayer_Batch(HLSCustomOp): inp_hls_str = self.get_input_datatype().get_hls_datatype_str() out_hls_str = self.get_output_datatype().get_hls_datatype_str() inp_is_binary = self.get_input_datatype() == DataType.BINARY - out_is_binary = self.get_output_datatype() == DataType.BINARY + # out_is_binary = self.get_output_datatype() == DataType.BINARY wt_is_binary = self.get_weight_datatype() == DataType.BINARY bin_xnor_mode = self.get_nodeattr("binaryXnorMode") == 1 if (inp_is_binary or wt_is_binary) and (not bin_xnor_mode): raise Exception("True binary (non-bipolar) inputs not yet supported") inp_is_bipolar = self.get_input_datatype() == DataType.BIPOLAR - out_is_bipolar = self.get_output_datatype() == DataType.BIPOLAR + # out_is_bipolar = self.get_output_datatype() == DataType.BIPOLAR wt_is_bipolar = self.get_weight_datatype() == DataType.BIPOLAR # reinterpret inp/wt as bipolar if bin_xnor_mode is iset inp_is_bipolar = inp_is_bipolar or (inp_is_binary and bin_xnor_mode) @@ -299,10 +299,7 @@ class StreamingFCLayer_Batch(HLSCustomOp): ret["TSrcI"] = "Slice<%s>" % inp_hls_str ret["TWeightI"] = "Identity" # fill in TDstI - if out_is_bipolar or out_is_binary: - ret["TDstI"] = "Identity" - else: - ret["TDstI"] = "Slice<%s>" % out_hls_str + ret["TDstI"] = "Slice<%s>" % out_hls_str return ret def get_hls_compatible_weight_tensor(self, orig_weight_matrix):