nvdla / hw

RTL, Cmodel, and testbench for NVDLA
Other
1.68k stars 561 forks source link

Generating weight.dat and featuremap.dat for use with trace.txn #299

Open fisherxue opened 4 years ago

fisherxue commented 4 years ago

I've managed to generate some form of trace.txn by parsing the output after setting debug flag for virtual platform. However, I am still not sure how to generate weight.dat and featuremap.dat. Any help is appreciated.

Here's a sample .txn for lenet: (May not work)

read_reg 0xffff2401 0x7ff1 #0x9004
write_reg 0xffff2401 0x0 #0x9004
write_reg 0xffff1c01 0x0 #0x7004
write_reg 0xffff2001 0x0 #0x8004
write_reg 0xffff1801 0x0 #0x6004
write_reg 0xffff1401 0x0 #0x5004
read_reg 0xffff2400 0x0 #0x9000
read_reg 0xffff1c00 0x0 #0x7000
read_reg 0xffff2000 0x0 #0x8000
read_reg 0xffff1800 0x0 #0x6000
read_reg 0xffff1400 0x0 #0x5000
write_reg 0xffff2403 0x2000 #0x900c
write_reg 0xffff2404 0x170017 #0x9010
write_reg 0xffff2405 0x13 #0x9014
write_reg 0xffff2406 0x0 #0x9018
write_reg 0xffff2407 0x0 #0x901c
write_reg 0xffff2408 0x300 #0x9020
write_reg 0xffff2409 0x4800 #0x9024
write_reg 0xffff240a 0x0 #0x9028
write_reg 0xffff240b 0x0 #0x902c
write_reg 0xffff1c03 0x2000 #0x700c
write_reg 0xffff2003 0x2000 #0x800c
write_reg 0xffff1803 0x10002200 #0x600c
write_reg 0xffff1804 0x0 #0x6010
write_reg 0xffff1805 0x1b001b #0x6014
write_reg 0xffff1806 0x0 #0x6018
write_reg 0xffff1807 0x0 #0x601c
write_reg 0xffff1808 0x0 #0x6020
write_reg 0xffff1809 0x6 #0x6024
write_reg 0xffff180a 0x0 #0x6028
write_reg 0xffff180b 0x40004 #0x602c
write_reg 0xffff180c 0x130000 #0x6030
write_reg 0xffff180d 0x400 #0x6034
write_reg 0xffff180e 0x0 #0x6038
write_reg 0xffff180f 0x170017 #0x603c
write_reg 0xffff1810 0x13 #0x6040
write_reg 0xffff1811 0x23f #0x6044
write_reg 0xffff1812 0x1b #0x6048
write_reg 0xffff1813 0x0 #0x604c
write_reg 0xffff1814 0x0 #0x6050
write_reg 0xffff1815 0x0 #0x6054
write_reg 0xffff1816 0x0 #0x6058
write_reg 0xffff1817 0x0 #0x605c
write_reg 0xffff1818 0x0 #0x6060
write_reg 0xffff1405 0x10002200 #0x5014
write_reg 0xffff1406 0x100000 #0x5018
write_reg 0xffff1407 0x1b001b #0x501c
write_reg 0xffff1408 0x0 #0x5020
write_reg 0xffff1409 0x1b001b #0x5024
write_reg 0xffff140b 0x1 #0x502c
write_reg 0xffff140c 0x0 #0x5030
write_reg 0xffff140d 0xc0400000 #0x5034
write_reg 0xffff140e 0x0 #0x5038
write_reg 0xffff140f 0xc0400000 #0x503c
write_reg 0xffff1410 0x380 #0x5040
write_reg 0xffff1412 0x6200 #0x5048
write_reg 0xffff1411 0x0 #0x5044
write_reg 0xffff1413 0x10001 #0x504c
write_reg 0xffff1416 0x0 #0x5058
write_reg 0xffff1417 0x0 #0x505c
write_reg 0xffff1418 0x6 #0x5060
write_reg 0xffff1419 0x0 #0x5064
write_reg 0xffff141a 0x0 #0x5068
write_reg 0xffff141b 0x31 #0x506c
write_reg 0xffff141c 0x13 #0x5070
write_reg 0xffff141d 0x1 #0x5074
write_reg 0xffff141e 0x0 #0x5078
write_reg 0xffff141f 0xc0200000 #0x507c
write_reg 0xffff1420 0x400 #0x5080
write_reg 0xffff1426 0x0 #0x5098
write_reg 0xffff1429 0x0 #0x50a4
write_reg 0xffff142c 0x0 #0x50b0
write_reg 0xffff142d 0x0 #0x50b4
write_reg 0xffff142e 0x0 #0x50b8
write_reg 0xffff142f 0x0 #0x50bc
read_reg 0xffff2401 0x0 #0x9004
write_reg 0xffff2401 0x1 #0x9004
write_reg 0xffff1c01 0x1 #0x7004
write_reg 0xffff2001 0x1 #0x8004
write_reg 0xffff1801 0x1 #0x6004
write_reg 0xffff1401 0x1 #0x5004
read_reg 0xffff2400 0x0 #0x9000
read_reg 0xffff1c00 0x0 #0x7000
read_reg 0xffff2000 0x0 #0x8000
read_reg 0xffff1800 0x0 #0x6000
read_reg 0xffff1400 0x0 #0x5000
write_reg 0xffff2403 0x2000 #0x900c
write_reg 0xffff2404 0x170017 #0x9010
write_reg 0xffff2405 0x13 #0x9014
write_reg 0xffff2406 0x0 #0x9018
write_reg 0xffff2407 0x0 #0x901c
write_reg 0xffff2408 0x300 #0x9020
write_reg 0xffff2409 0x4800 #0x9024
write_reg 0xffff240a 0x0 #0x9028
write_reg 0xffff240b 0x0 #0x902c
write_reg 0xffff1c03 0x2000 #0x700c
write_reg 0xffff2003 0x2000 #0x800c
write_reg 0xffff1803 0x10102200 #0x600c
write_reg 0xffff1804 0x0 #0x6010
write_reg 0xffff1805 0x1b001b #0x6014
write_reg 0xffff1806 0x0 #0x6018
write_reg 0xffff1807 0x0 #0x601c
write_reg 0xffff1808 0x0 #0x6020
write_reg 0xffff1809 0x6 #0x6024
write_reg 0xffff180a 0x0 #0x6028
write_reg 0xffff180b 0x40004 #0x602c
write_reg 0xffff180c 0x130000 #0x6030
write_reg 0xffff180d 0x400 #0x6034
write_reg 0xffff180e 0x0 #0x6038
write_reg 0xffff180f 0x170017 #0x603c
write_reg 0xffff1810 0x13 #0x6040
write_reg 0xffff1811 0x23f #0x6044
write_reg 0xffff1812 0x1b #0x6048
write_reg 0xffff1813 0x0 #0x604c
write_reg 0xffff1814 0x0 #0x6050
write_reg 0xffff1815 0x0 #0x6054
write_reg 0xffff1816 0x0 #0x6058
write_reg 0xffff1817 0x0 #0x605c
write_reg 0xffff1818 0x0 #0x6060
write_reg 0xffff1405 0x10102200 #0x5014
write_reg 0xffff1406 0x100000 #0x5018
write_reg 0xffff1407 0x1b001b #0x501c
write_reg 0xffff1408 0x0 #0x5020
write_reg 0xffff1409 0x1b001b #0x5024
write_reg 0xffff140b 0x1 #0x502c
write_reg 0xffff140c 0x0 #0x5030
write_reg 0xffff140d 0xc0406200 #0x5034
write_reg 0xffff140e 0x0 #0x5038
write_reg 0xffff140f 0xc0406200 #0x503c
write_reg 0xffff1410 0x380 #0x5040
write_reg 0xffff1412 0x6200 #0x5048
write_reg 0xffff1411 0x0 #0x5044
write_reg 0xffff1413 0x10001 #0x504c
write_reg 0xffff1416 0x0 #0x5058
write_reg 0xffff1417 0x0 #0x505c
write_reg 0xffff1418 0x6 #0x5060
write_reg 0xffff1419 0x0 #0x5064
write_reg 0xffff141a 0x0 #0x5068
write_reg 0xffff141b 0x31 #0x506c
write_reg 0xffff141c 0x13 #0x5070
write_reg 0xffff141d 0x1 #0x5074
write_reg 0xffff141e 0x0 #0x5078
write_reg 0xffff141f 0xc0200000 #0x507c
write_reg 0xffff1420 0x400 #0x5080
write_reg 0xffff1426 0x0 #0x5098
write_reg 0xffff1429 0x0 #0x50a4
write_reg 0xffff142c 0x0 #0x50b0
write_reg 0xffff142d 0x0 #0x50b4
write_reg 0xffff142e 0x0 #0x50b8
write_reg 0xffff142f 0x0 #0x50bc
read_reg 0xffff2c01 0x0 #0xb004
read_reg 0xffff2801 0x0 #0xa004
write_reg 0xffff2c01 0x0 #0xb004
write_reg 0xffff2801 0x0 #0xa004
read_reg 0xffff0001 0x0 #0x4
write_reg 0xffff0001 0x0 #0x4
write_reg 0xffff281c 0x0 #0xa070
write_reg 0xffff280a 0x0 #0xa028
write_reg 0xffff2810 0x0 #0xa040
write_reg 0xffff2816 0x0 #0xa058
write_reg 0xffff281c 0xa9 #0xa070
write_reg 0xffff2803 0x17 #0xa00c
write_reg 0xffff2804 0x17 #0xa010
write_reg 0xffff2805 0x13 #0xa014
write_reg 0xffff280a 0x2a #0xa028
write_reg 0xffff280b 0xc0201000 #0xa02c
write_reg 0xffff280c 0x0 #0xa030
write_reg 0xffff280d 0x20 #0xa034
write_reg 0xffff280e 0x20 #0xa038
write_reg 0xffff2810 0x31 #0xa040
write_reg 0xffff2816 0x31 #0xa058
write_reg 0xffff2c0f 0x17 #0xb03c
write_reg 0xffff2c10 0x17 #0xb040
write_reg 0xffff2c11 0x13 #0xb044
write_reg 0xffff2c13 0x0 #0xb04c
write_reg 0xffff2c12 0xc0800000 #0xb048
write_reg 0xffff2c14 0x300 #0xb050
write_reg 0xffff2c15 0x4800 #0xb054
write_reg 0xffff2c16 0x58 #0xb058
write_reg 0xffff2c17 0x1 #0xb05c
write_reg 0xffff2c19 0x1 #0xb064
write_reg 0xffff2c1b 0x53 #0xb06c
write_reg 0xffff2c20 0x53 #0xb080
write_reg 0xffff2c2c 0x1 #0xb0b0
write_reg 0xffff2c2d 0x1 #0xb0b4
write_reg 0xffff2c2f 0xa #0xb0bc
write_reg 0xffff2c30 0x0 #0xb0c0
write_reg 0xffff2c31 0x1 #0xb0c4
write_reg 0xffff2c32 0x0 #0xb0c8
write_reg 0xffff2c01 0x0 #0xb004
write_reg 0xffff2801 0x0 #0xa004
write_reg 0xffff2802 0x1 #0xa008
write_reg 0xffff2c0e 0x1 #0xb038
write_reg 0xffff2401 0x0 #0x9004
write_reg 0xffff1c01 0x0 #0x7004
write_reg 0xffff2001 0x0 #0x8004
write_reg 0xffff1801 0x0 #0x6004
write_reg 0xffff1401 0x0 #0x5004
read_reg 0xffff1403 0x0 #0x500c
write_reg 0xffff2402 0x1 #0x9008
write_reg 0xffff1c02 0x1 #0x7008
write_reg 0xffff2002 0x1 #0x8008
write_reg 0xffff1802 0x1 #0x6008
write_reg 0xffff1404 0x1 #0x5010
vigneshrad commented 4 years ago

Did you figure it out?