antmicro / rowhammer-tester

https://antmicro.github.io/rowhammer-tester/
Apache License 2.0
52 stars 16 forks source link

Half-Double needs 526784 bytes - can't close timing with 1MByte Payload Size #142

Open rolin-ron opened 1 year ago

rolin-ron commented 1 year ago

Hello, When running example_half_double.json on the ddr4 datacenter test board I get this error:

Memory required for payload executor instructions (526784 bytes) exceeds available payload memory (1024 bytes) The payload memory size can be changed with '--payload-size ' option.

However, when I change the payload size to 1048576, the design doesn't close timing:

WNS(ns)      TNS(ns)  TNS Failing Endpoints  TNS Total Endpoints      WHS(ns)      THS(ns)  THS Failing Endpoints  THS Total Endpoints     WPWS(ns)     TPWS(ns)  TPWS Failing Endpoints  TPWS Total Endpoints  
-------      -------  ---------------------  -------------------      -------      -------  ---------------------  -------------------     --------     --------  ----------------------  --------------------  
 -3.580   -27995.277                  24192                72831        0.037        0.000                      0                72831        0.264        0.000                       0                 25578  

Here is the Vivado version I used:

Vivado v2022.1.2 (64-bit) SW Build 3605665 on Fri Aug 5 22:52:02 MDT 2022 IP Build 3603185 on Sat Aug 6 04:07:44 MDT 2022

Has this design been able to meet timing to test the example_half_double.json?

mtdudek commented 1 year ago

I was able to reproduce your issue with Vivado 2020.2. We are looking into how we can refactor the logic of the payload executor in order to reduce length of combi paths. This should resolve timing violations you are seeing.