nvdla / hw

RTL, Cmodel, and testbench for NVDLA
Other
1.72k stars 567 forks source link

PDP doesn't support large images #356

Closed timzhang32 closed 2 years ago

timzhang32 commented 2 years ago

Hello,

when executing YOLO on NVDLA, I realized that currently it is hard-corded somewhere either in the HW implementation or KMD. When I pool an 448x448 image, the result is completely wrong. But when I reduce the image size to half (224x224), the pooling engine works fine. From what it looks like, for 448x448 images, there is basically a duplication of the original image in the pooling result and it starts from a little bit right than the center of the image.

Pooling result:

pool1_nvdla

Original image:

000000000139_224x224

I'm assuming the 256th pixel, because I have a feeling somewhere in the code uint8_t is used and it is not large enough for reading 448x448 images. Has anyone encountered the same problem? Or does anyone know there is indeed a hard-coded section? I am very curious about this.

Best Tim