neurosim / DNN_NeuroSim_V1.3

Benchmark framework of compute-in-memory based accelerators for deep neural network (inference engine focused)
62 stars 36 forks source link

`TileSize > 4*param->numRowSubArray` #20

Closed sepehrMSP closed 2 years ago

sepehrMSP commented 2 years ago

Hi, can you explain the reason of this condition (used in chipFloorPlan)? XTileSize > 4 * param->numRowSubArray It is logical that TileSize be greater than numRowSubArray, however I cannot understand why 4 is used? it could be a meaningful parameter. @neurosim

neurosim commented 2 years ago

This condition is used for conventional mapping. We assume a memory hierarchy from sub-array to processing element and to tile. To keep the hierarchy, there are at least 2 sub-arrays in one PE and at least 2 PEs in one tile, therefore, there are at least 4 sub-arrays in one tile. And for novel mapping, the condition is maxPESizeNM < 2*param->numRowSubArray to make sure at least 2 subarrays in one PE, and there are normally 3*3 PEs in one tile (corresponding to the kernel size).