NNgen / nngen

NNgen: A Fully-Customizable Hardware Synthesis Compiler for Deep Neural Network

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Vivado synthesis Error

kmichikura opened this issue · comments

If par_ich is greater than 32 and there are layers with less than 32 input channels, an error occurs during synthesis using Vivado.

The description causing the error is as follows:(par_ich = 64)

  wire  [63:0] cparam_conv2d_273_stream_omit_mask;
  assign cparam_conv2d_273_stream_omit_mask = (conv2d_273_control_param_index == 0)? 18446744069414584320 : 
                                              (conv2d_273_control_param_index == 1)? 0 : 
                                              (conv2d_273_control_param_index == 2)? 0 : 
                                              (conv2d_273_control_param_index == 3)? 18446744069414584320 : 
                                              (conv2d_273_control_param_index == 4)? 0 : 
                                              (conv2d_273_control_param_index == 5)? 0 : 
                                              (conv2d_273_control_param_index == 6)? 0 : 
                                              (conv2d_273_control_param_index == 7)? 0 : 0;

A decimal constant value without a bit width specified is interpreted as 32 bits, so it must specify a bit width or use a hexadecimal constant value.