TC3xx MTU概述(1)

本文介绍了TC3xx中的MTU在内存管理和控制中的作用,特别是MBIST内存内置自测功能,以及其在安全标准ISO26262下的非破坏性测试(NDT)策略。MTU通过SSH进行配置,同时区分了ForegroundTest和BackgroundTest两种测试模式。
摘要由CSDN通过智能技术生成

目录

1.MTU基本功能

2.MBIST

3.小结


1.MTU基本功能

在TC3xx中,MTU(Memory Unit Test)被用来管理控制芯片内部各种RAM的测试、初始化和数据完整性检查。

既然MTU主要是管理和控制,那干活的想必另有他人。所以在该平台中,我们可以看到SRAM周围设计了特别的数字逻辑电路,称之为SRAM Support Hardware(SSH);SSH主要用于控制其关联SRAM的ECC、MBIST(Memory Built In Self Test)等。

因此MTU、SSH、RAM在TC3xx的结构示意如下:

其中,CPU通过SPB总线访问MTU;MTU针对每个SSH又都有一套独立寄存器,可以配置不同的SRAM测试类型、控制SSH的功能运行。 根据TC39x-B UserManual描述,在该平台中设计了多达96个SSH(包括预留),截图如下:

这意味着,在不同IP的内部SRAM也可以通过MTU和SSH配置进行测试,即使CPU不能直接访问该SRAM。

值得注意的是,SSH寄存器只能通过MTU->SSH这样的路径进行访问,因此在访问效率上会比直接通过SPB访问寄存器要慢一些。

2.MBIST

MBIST是一种功能安全机制,用于检查SRAM内部Cell是否出现永久随机硬件失效。TC3xx使用MTU来实现MBIST,在UserMannul里仅提供了Non-Destructive Test的实现方法、功耗和耗时。

这是为什么呢?

因为在ISO26262中,SRAM的Cell故障被认为是潜伏故障,而在一次驾驶循环内至少得有一次测试用于覆盖潜伏故障,所以使用者有权决定在MCU启动、APP运行和下电这三个阶段任意时刻进行MBIST,因此这种非破坏性测试(NDT)是最为友好。

NDT允许在程序运行时进行memory的测试,并且不会破坏当前memory里的应用数据。之所以能这样,是因为该算法的运行逻辑如下:

  1. 从SRAM读取一个word,包括数据+ECC bits,记为"r" ;
  2. 对上述word取反,并写回SRAM,记为 “w*”;
  3. 再次读取word,记为 “ r* ”;
  4. 对上述word再次取反,写回SRAM,记为“w”;

其中 “ * ”表示始终对原始数据相反,可以看到要保证应用数据不被污染,写"w"的次数必须是偶数次,因此NDT的算法在时间复杂度上至少为4N。

执行MBIST期间,每次发生读访问,SRAM自身的ECC机制会计算此次读出数据的校验码,并检查该校验码是否与存入该数据时计算的校验码一致。如果不一致,则会产生错误并通知SMU或者产生中断。

不过,在执行MBIST前还需要注意如下事项:

  • 测试期间,被测试SRAM不可访问;
  • 测试前,SRAM应该被正确初始化。

这些事项与我们设计Online Bist任务息息相关。

在CP AUTOSAR RamTst模块里提出了Foreground Test和Background Test两个概念;其中Foreground Test是同步测试,不可以被中断;Backgroud Test由OS或者调度器周期调度,它可以在每个测试序列完成时被打断。

由于Background Test涉及到数据一致和中断概念,目前用的比较少,比较常见的就是在上电前执行NDT,运行期间选择关键memory进行测试。

3.小结

本篇我们讲解了MTU基本功能和MBIST基本概念,下一篇我们继续讲解MTU如何配置NDT算法。

  • 19
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: Aurix MTU(Memory Test Unit)是一种针对嵌入式系统中内存的检测和测试工具。TC 397是指Aurix中的一个测试用例或者相关规范。 内存检测是嵌入式系统开发中非常重要的一环,它主要用于确保系统的稳定性和可靠性。Aurix MTU可以在设计和生产阶段对内存模块进行全面的测试和诊断,以确保内存的质量和可靠性。 Aurix MTU的工作原理是通过对内存进行读写操作,并对读写结果进行验证,以检测内存中是否存在故障或错误。它可以检测到多种类型的内存故障,如数据丢失、位翻转、位失效、存储器损坏等。此外,Aurix MTU还可以进行多种测试模式的切换,以适应不同的应用场景和测试需求。 内存检测是嵌入式系统开发中必不可少的一项工作,它对于确保系统的稳定性和可靠性至关重要。Aurix MTU提供了一种简单而有效的方式来进行内存测试,它可以帮助开发人员及时发现内存中的故障并进行修复,从而提高系统的可靠性和性能。 总之,TC 397 Aurix MTU内存检测是一种针对Aurix嵌入式系统中内存的测试和诊断工具,它的作用是确保系统的稳定性和可靠性,并提供了多种测试模式以适应不同的应用场景和需求。 ### 回答2: tc 397是AURIX MTU(内存测试单元)的规范,用于测试AURIX芯片上的内存模块。 AURIX芯片是一种高性能的嵌入式微控制器,广泛应用于汽车电子系统和工业控制领域。MTU是AURIX芯片上的一个模块,用于测试内存的可靠性和稳定性。 tc 397规范中描述了对AURIX MTU进行内存测试的方法和要求。这个测试旨在确保内存模块能够正常工作,不会发生数据错误或存储故障。 在进行内存测试之前,需要编写测试程序,并将其加载到AURIX芯片上运行。测试程序会执行一系列测试,如随机数据写入和读取、地址线和数据线测试、擦除测试等。 通过执行这些测试,可以检测内存中的潜在问题,如写入错误、读取错误、位反转错误等。如果有错误被检测到,测试程序会记录错误信息以便后续分析。 内存测试可以帮助开发人员对AURIX芯片进行故障分析和排除,确保其在实际应用中的可靠性和稳定性。同时,tc 397规范也为开发人员提供了一套标准化的内存测试方法,以确保测试的统一性和可比性。 总的来说,tc 397 aurix mtu内存检测是针对AURIX芯片上的内存模块进行的一系列测试,旨在保证内存的可靠性和稳定性,提高AURIX芯片在汽车电子和工业控制等领域的应用质量。 ### 回答3: TC 397是一种用于AURIX系列芯片的MTU(Memory Test Unit,内存测试单元)的测试方法。AURIX芯片是用于汽车电子系统的高性能微控制器。 MTU内存检测是一种用于检测AURIX芯片中内置的存储器单元的方法。内存在嵌入式系统中起着至关重要的作用,因为它们用于存储程序代码、数据和临时变量等信息。 TC 397使用MTU进行内存检测的主要目的是确保内存的可靠性和稳定性。内存故障可能会导致系统崩溃、程序运行出错或数据丢失等问题,因此进行内存检测是十分重要的。 TC 397通过使用MTU模块中的各种测试模式和算法来检测内存。这些测试模式包括读/写测试、地址线测试、数据线测试等。通过对内存进行多种测试,可以检测出不同类型的内存错误,如位翻转、读写冲突、数据损坏等。 进行TC 397 MTU内存检测时,首先需要配置MTU模块的寄存器并设置测试模式和测试参数。然后,启动内存测试,MTU会自动检测内存的各种错误。在测试完成后,可以通过读取MTU模块的状态寄存器来获取内存测试结果。 在实际应用中,TC 397 MTU内存检测可以在生产阶段用于对AURIX芯片进行出厂测试,以确保芯片的质量和可靠性。此外,也可以在系统部署和运行阶段对内存进行定期测试,以确保系统的稳定性和可靠性。 总之,TC 397是一种用于AURIX芯片的MTU内存检测方法,通过使用MTU模块的测试模式和算法来检测内存错误,以确保内存的可靠性和稳定性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CyberSecurity_zhang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值