This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
工具与软件:
大家好、我想问问、为什么在我使用函数 STL_March_testRAM 进行测试时没有返回值
如何判断测试是否成功?
我还尝试了使用函数 STL_March_inpractError 注入错误
然后、使用 STL_March_checkErrorStatus 函数尝试读取错误状态。
但它仍会返回成功的测试
STL_March_testRAM()函数不会检查通过/失败本身。 该测试依赖于 RAM 的 ECC 逻辑的触发来检测问题、而 STL_March_checkErrorStatus ()读取 RAM 错误状态寄存器。
预计 STL_March_injectError()函数将不能与 STL_March_testRAM()函数一起使用。 错误注入函数使用 RAM 测试模式在数据和 ECC 之间创建不匹配、ECC 将在读取时被检测到。 然而,STL_March_testRAM()会在读取触发错误检测逻辑之前将其模式写入 RAM 位置(从而覆盖我们注入的错误)。
您会注意到,如果您使用 STL_March_testRAMCopy ()函数,您可以检测到错误,因为 STL_March_testRAMCopy ()函数会在写入模式之前读取内存位置。
惠特尼
你好,我使用了函数 STL_March_testRAMCopy (),正如你所说的,但在我注入了错误后,我使用了函数 STL_March_inpractError ,返回的状态值仍然是成功的,你能帮我看一下我的代码,这是我理解的问题吗
这是我的代码:
errorHandle.address = 0x00008001;
errorHandle.ramSection = MEMCFG_SEC_LS0;
errorHandle.TESTMODE = MEMCFG_TEST_WRITE_DATA;
STL_March_inpractError (&errorHandle);
STL_March_testRAMCopy (STL_March_pattern_one、0x00008000、0x000003FF、0x0000E000);
SelfTestStatus = STL_March_checkErrorStatus ();
if (SelfTestStatus!= STL_March_PASS)
{
gErrorTestFlag = 1;
gStructErrorTestFlag。 RAM_RAM Start_Check = 6;
}