diff --git a/lib/CPUs/MIPS/bsp/examples/testbench.c b/lib/CPUs/MIPS/bsp/examples/testbench.c index a2e5ebd..0014312 100644 --- a/lib/CPUs/MIPS/bsp/examples/testbench.c +++ b/lib/CPUs/MIPS/bsp/examples/testbench.c @@ -362,6 +362,49 @@ int main (void) // Memtest BEGIN printf("SDRAM Memory Test\n"); printf("Test size %d kByte\n\n", TEST_SIZE/1024); + + ram8 = (UINT8*)calloc(TEST_SIZE,sizeof(UINT8)); + printf("Zeroize Memory (memset)..."); + start = clock(); + memset(ram8, 0, TEST_SIZE); + end = clock(); + printf("done (%.2f MByte/s)\n", (double)TEST_SIZE/(1000*(end-start))); + + free(ram8); + + ram8 = (UINT8*)calloc(TEST_SIZE,sizeof(UINT8)); + printf("Zeroize Memory (8-Bit access)..."); + start = clock(); + for (i=0; i < TEST_SIZE; i++) + ram8[i] = (UINT8)0; + + end = clock(); + printf("done (%.2f MByte/s)\n", (double)TEST_SIZE/(1000*(end-start))); + + free(ram8); + + ram16 = (UINT16*)calloc(TEST_SIZE/2,sizeof(UINT16)); + printf("Zeroize Memory (16-Bit access)..."); + start = clock(); + for (i=0; i < TEST_SIZE/2; i++) + ram16[i] = (UINT16)0; + + end = clock(); + printf("done (%.2f MByte/s)\n", (double)TEST_SIZE/(1000*(end-start))); + + free(ram16); + + ram32 = (UINT32*)calloc(TEST_SIZE/4,sizeof(UINT32)); + printf("Zeroize Memory (32-Bit access)..."); + start = clock(); + for (i=0; i < TEST_SIZE/4; i++) + ram32[i] = (UINT32)0; + + end = clock(); + printf("done (%.2f MByte/s)\n", (double)TEST_SIZE/(1000*(end-start))); + + free(ram32); + ram8 = (UINT8*)calloc(TEST_SIZE,sizeof(UINT8)); printf("Write (8-Bit access)..."); start = clock();