Open Erdbeerenjanzi opened 4 years ago
While looking in the compilers source code I found the following configuration for the CBUF:
From: sw/umd/core/src/compiler/TargetConfig.cpp
if ( isFullConfig() ) { [...] m_targetConfigParams.m_numConvBufBankAllotted = 16; m_targetConfigParams.m_numConvBufEntriesPerBank = 256; m_targetConfigParams.m_numConvBufEntryWidth = 128;
However, the hardware configuration is different:
From: hw/spec/defs/nv_full.spec:
#define CBUF_BANK_NUMBER_16 #define CBUF_BANK_WIDTH_64 #define CBUF_BANK_DEPTH_512
The uploaded SystemC model uses parameters which comply with the compiler:
From: hw/cmod/cbuf/NV_NVDLA_cbuf.h
// FIXME, add buswidth define #define CBUF_BANK_NUM 16 #define CBUF_ENTRY_PER_BANK 256 #undef CBUF_ENTRY_NUM #define CBUF_ENTRY_NUM CBUF_BANK_NUM*CBUF_ENTRY_PER_BANK
For me this looks like the spec-file uses a wrong set of parameters which will lead to not properly working generated vmods. Can anyone confirm this?
While looking in the compilers source code I found the following configuration for the CBUF:
From: sw/umd/core/src/compiler/TargetConfig.cpp
However, the hardware configuration is different:
From: hw/spec/defs/nv_full.spec:
The uploaded SystemC model uses parameters which comply with the compiler:
From: hw/cmod/cbuf/NV_NVDLA_cbuf.h
For me this looks like the spec-file uses a wrong set of parameters which will lead to not properly working generated vmods. Can anyone confirm this?