Skip to content
Closed
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
Expand Up @@ -41,18 +41,18 @@ namespace lutNN {
template <int input_I, int input_F, size_t inputSize, int lut_I, int lut_F, int neurons, int output_I>
class LutNeuronLayerFixedPoint {
public:
static const int input_W = input_I + input_F;
static const int lut_W = lut_I + lut_F;
constexpr static const int input_W = input_I + input_F;
constexpr static const int lut_W = lut_I + lut_F;

//the lut out values sum
//static const int lutOutSum_I = lut_I + ceil(log2(inputSize)); //MB: ceil(log2(inputSize)) is not constexpr which makes issue for code-checks
static const int lutOutSum_I = lut_I + ceillog2(inputSize);
static const int lutOutSum_W = lutOutSum_I + lut_F;
constexpr static const int lutOutSum_I = lut_I + ceillog2(inputSize);
constexpr static const int lutOutSum_W = lutOutSum_I + lut_F;

static const int output_W = output_I + lut_F;
constexpr static const int output_W = output_I + lut_F;

//static_assert( (1<<input_I) <= lutSize);
static const size_t lutSize = 1 << input_I;
constexpr static const size_t lutSize = 1 << input_I;

typedef std::array<ap_ufixed<input_W, input_I, AP_TRN, AP_SAT>, inputSize> inputArrayType;

Expand Down