用的是官方给的K1 STK V1.1 中的srio例程 测试的是digital loopback 在6678上测试的时候出现了以下问题 数据不匹配。
请问这是什么问题?那一块出问题了 要怎么解决呢?
SWRITE from 0x10802200 to 0x82014000, 8 bytes, 4125 cycles, 15 Mbps, completion code = 0
data mismatch at unit 0, 0x1b (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 16 bytes, 4488 cycles, 28 Mbps, completion code = 0
data mismatch at unit 0, 0x1c (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 32 bytes, 4494 cycles, 56 Mbps, completion code = 0
data mismatch at unit 0, 0x1d (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 64 bytes, 4836 cycles, 105 Mbps, completion code = 0
data mismatch at unit 0, 0x1e (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 128 bytes, 5356 cycles, 191 Mbps, completion code = 0
data mismatch at unit 0, 0x1f (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 256 bytes, 6242 cycles, 328 Mbps, completion code = 0
data mismatch at unit 0, 0x20 (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 512 bytes, 8327 cycles, 491 Mbps, completion code = 0
data mismatch at unit 0, 0x21 (at 0x10802200) != 0x0 (at 0x82014000)
SWRITE from 0x10802200 to 0x82014000, 1024 bytes, 12475 cycles, 656 Mbps, completion code = 0
data mismatch at unit 0, 0x22 (at 0x10802200) != 0x0 (at 0x82014000)
Shine:
请问用的是EVM板吗?对例程有改动吗?
,
user6510364:
您好 我用的是自己画的板子 芯片用的是c6678 例程用的是srio test.c 把里面kestong ddr init()这句话注释掉了 因为用的是digital loopback 模式没用到ddr3
,
Shine:
SWRITEfrom 0x10802200 to 0x82014000
0x82014000这块是DDR3地址,所以不能把初始化DDR3的函数注释掉。
,
user6510364:
谢谢您,那下面这些问题也是由于初始化ddr3的函数被注释掉导致的吗
External exception happened. MEXPFLAG[3]=0x4000000.Event 122: DMC_CMPA CPU memory protection fault for L1D (and other memory read finally goes through the L1D controller)memory protection exception caused by local access at 0x0Supervisor Read violation
NRP=0xc04da46, NTSR=0x1000e, IRP=0x20b01120, ITSR=0x1, TSCH= 0x0, TSCL= 0x13b6796B3=0xc04adb4, A4=0x0, B4= 0x10812200, B14= 0x8254b8, B15= 0x823090
Exception happened at a place can not safely return!
,
Shine:
把DDR3初始化函数打开后看能不能消除这个错误。
,
user6510364:
谢谢回复 您的建议我去尝试一下
还有就是 内循环成功之后 为什么无法在memory browser 中看到搬移后的数据呢?
例如 我用swrite格式 将数据from 10802200 to 1080a200 completion code=0 这说明传输成功了。可是我在memory browser 中查看 1080a200这个地址时 显示无法转到指定地址(unable go to specified address) 这是怎么回事儿呢? 期待您的解答!辛苦了
,
Shine:
请问在运行SRIO例程之前,能通过memory browser查看地址1080a200的数据吗?
,
user6510364:
您好 还没有试过在运行程序之前就去查看地址1080a200的数据。 正常情况下,不运行srio程序也可以直接查看地址 1080a200的数据吗?
,
Shine:
是的。