Other Parts Discussed in Thread: HALCOGEN, RM48L952
部件号: RM48L952
主题中讨论的其他器件: HALCOGEN、
尊敬的团队:
我遇到了一些问题、我想进行验证、因为它也出现在 sys_startup.c 中通过 Halcgen 生成的代码中。 我的主要目标是在单独的模块中提供与 RAM 相关的测试代码。
下面是附加代码片段:
#define RAM_DIAG_DP_PBIST_RINFOL \
((uint32_t) 0x00000000U /* EMAC RAM */ \
|(Uint32) 0x00000000U /* USB RAM */ \
|(Uint32) 0x00000800U /* DMA RAM */ \
|(Uint32) 0x00000200U /* VIM RAM */ \
/*|(Uint32) 0x00000040U MIBSPI1 RAM(未通过“或“运算整合到掩码中)*/ \
/*|(Uint32) 0x00000080U MIBSPI3 RAM(未通过“或“运算整合到掩码中)*/ \
/*|(Uint32) 0x00000100U MIBSPI5 RAM(未通过“或“运算合并掩码)*/ \
|(Uint32) 0x00000004U /* CAN1 RAM */ \
/*|(Uint32) 0x00000008U CAN2 RAM(未通过“或“运算整合到掩码中)*/ \
/*|(Uint32) 0x00000010U CAN3 RAM(未通过“或“运算整合到掩码中)*/ \
/*|(Uint32) 0x00000400U ADC1 RAM(未通过“或“运算合并为掩码)*/ \
|(Uint32) 0x00020000U /* ADC2 RAM */ \
/*|(Uint32) 0x00001000U HET1 RAM(未通过“或“运算整合到掩码中)*/ \
/*|(Uint32) 0x00040000U HET2 RAM(未通过“或“运算放大掩码)*/ \
/*|(Uint32) 0x00002000U HTU1 RAM(未通过“或“运算整合到掩码中)*/ \
|(Uint32) 0x00080000U /* HTU2 RAM */ \
|(Uint32) 0x00004000U /* RTP RAM */ \
|(Uint32) 0x00000000U /*帧 RAM */)
#define RAM_DIAG_DP_PBIST_ALGO \
((Uint32) PBIT_March13N_DP /* 0x004 */ \
|(Uint32) PBI_DOWN1a_DP /* 0x010 */ \
|(Uint32) PBIT_MapColumn_DP)/* 0x040—总计 0x054 */
/**相位 2:双端口 PBIST + checkRAMECC(在 PBIST 同时运行
* 在外设 RAM 上运行—TRM§7.6.1 和§7.6.2 序列)。
* ALGO = RAM_DIAG_DP_PBIT_ALGO (0x054):March13N_DP | Down1A_DP |
* MapColumn_DP. MapColumn_DP 对于双端口 RAM 是必需的。 */
静态 void ram_diag_phase_dpbist_ecc (void){
pbistRun (RAM_DIAG_DP_PBIT_RINFOL、RAM_DIAG_DP_PBIT_ALGO);
checkRAMECC();
/*SAFETYMCUSW 28 D 先生:不适用 “硬件状态位读取检查“*/
while (pbistIsTestCompleted()!= true){
}/*等待*/
if (pbistIsTestPassed()!= true ){
/*在 pbistFail()—pbistFail() 之前捕获诊断寄存器
*从不返回(调用 memoryPort0TestFailNotification 可能循环)。
*快照存储在 s_pbist_fail_snapshot 中;可在调试器下读取。
* rgs = s_pbist_fail_snapshot.ramt >> 24 标识发生故障的 RAM 组。 */
RAM_diag_pbist_registers_read (&s_pbist_fail_snapshot.fsrf0、
&s_pbist_fail_snapshot.ramt);
pbistFail();
}
pbistStop();
}
在 RAM_DIAG_DP_PBIST_RINFOL 宏内部、当 I 启用任何外设的存储器偏移时、它会失败、否则会随着当前配置传递。 我想提的是、所有外设都已通过哈可根启用。 如果我们需要实施任何具体的解决方案、或者这是已知问题、请告诉我。
此致