工具与软件:
您好、支持团队!
STREX/LDREX 指令无疑应在 CC_ARMSS0中有效工作、但它们在 CC_ARMSS0和 CC_ARMSS1之间是否可以正常工作?
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.
工具与软件:
您好、支持团队!
STREX/LDREX 指令无疑应在 CC_ARMSS0中有效工作、但它们在 CC_ARMSS0和 CC_ARMSS1之间是否可以正常工作?
很抱歉这么晚才回复。
我们已经确认 STREX/LDREX 指令本身执行正常、没有出现任何异常。 但是、根据使用 STREX/LDREX 在模块中观察到的行为、一个内核上存储的 STREX 值可能会被另一个内核上的 LDREX 读取为意外值。 换言之、缓存一致性似乎没有得到维持。
到目前为止、我们一直使用 MSMC SRAM 作为 SRAM、但当我们尝试将整个 MSMC SRAM 区域设置为 L3高速缓存(值设置为8)时、有些情况下它可以正常运行、而有些情况下不能正常运行。