0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

SEM IP在MPSoC器件上的使用指南

安富利 ? 来源:安富利 ? 2025-08-13 16:59 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

01SEM IP的功能概述

SEM(Soft Error Mitigation)技术通过目标式ECC奇偶校验位注入实现可观测的软错误模拟。该机制在配置存储器帧(CRAM Frame)内精确选择校验位进行可控翻转,确保注入错误位于冗余校验区域而非功能逻辑位,从而避免对设计功能完整性造成干扰。主要应用于要求苛刻的场景(如航天、工业控制等)中,SEM控制器可以确保更高的可靠性水平。至于决定是否要在设计中使用SEM IP,需要了解可能性和系统级考虑因素。

41ad1276-736e-11f0-a18e-92fbcf53809c.png

图1. 软错误决策树示例

02SEM IP接口及配置

02.1SEM IP接口介绍

41c55ae8-736e-11f0-a18e-92fbcf53809c.png

图2. SEM的参考设计的模块设计

系统级示例设计封装了SEM控制器和用于控制器与其他设备接口的通道。值得注意的是,SEM控制器没有复位信号。这是由于SEM控制器的任务是监视和维护原始配置状态,而不是从一些临时(可能错误的)状态重新启动,故不设置复位。它自动初始化自身与内部同步复位派生自全局复位信号的解除。下表展示各个接口的详细描述。

41d7910e-736e-11f0-a18e-92fbcf53809c.png

表1. 各个接口的功能描述

02.2SEM IP配置介绍

41e927f2-736e-11f0-a18e-92fbcf53809c.jpg

图3. SEM IP配置界面

控制器的模式

从模式上划分:

SEM IP可以分成六个模式:

? 缓解和测试

? 仅缓解

? 检测和测试

? 仅检测

? 仿真

? 监控

按照IP内对各个模式的特性对比,“缓解和测试”是最适合用于测试仿真的模式。该模式与其他模式最核心的差异在于可同时支持错误注入和纠错能力。

41f44290-736e-11f0-a18e-92fbcf53809c.jpg

图4. SEM IP高级配置界面

错误分类功能仅在纠错模式(缓解和测试/仅缓解)下可用,用于判断已纠正的软错误是否影响设计功能。顺带一提的是,IP默认针对开发板将错误分类的功能禁用,是因为评估板默认不包括外部SPI内存。

控制器的时钟

控制器的时钟周期通过“Clock period”字段设定,其值越小,频率值越高,错误缓解时间越短。但是设计时需要确保目标器件支持设定的周期,否则会触发警告。下表提供了ICAP FMax的总结。当评估板为目标时,默认的控制器时钟周期自动选择到基于示例设计中提供的特定时钟频率的引脚。

4204d812-736e-11f0-a18e-92fbcf53809c.jpg

表2. ICAP支持的最大频率

控制器的结构选项

SEM IP配置中原语(ICAP/FRAME_ECC)的包含方式分为两种,核心差异是原语的可见性与连接控制权:

1. 包含在核心中:

适用场景:无其他逻辑需访问ICAP/FRAME_ECC原语时。

特点:原语自动嵌入核心,连接对用户透明(不暴露为端口)。

限制:不适用于UltraScale SSI器件。

2. 包含在示例设计中:

适用场景:其他逻辑需访问ICAP/FRAME_ECC原语时。

特点:原语在示例设计层级显式实例化,需用户手动连接端口。

03上板实测

03.1测试环境搭建

工程的搭建基于xapp1298

硬件平台:MPSoC(ZCU102)

软件版本:Vivado2019.1、SDK2019.1

42120834-736e-11f0-a18e-92fbcf53809c.jpg

图5. 工程设计示意框图

在本工程设计中,PS通过专用PL时钟接口(pl_clk0)给SEM控制器提供ICAP时钟信号(icap_clk),ICAP仲裁控制及状态LED信号通过PS扩展EMIO接口集中管控。

03.2SEM IP调试

本文在“缓解和测试”模式下进行,旨在观察错误注入以及IP的纠错功能。其中关于SEM在运行过程中涉及的关键步骤包括:PCAP权限移交ICAP,时钟使能,ICAP仲裁切换行为以及调试方式。下面围绕这些详细介绍。

PCAP权限移交ICAP

由于缺乏FPGA的启动独立性,MPSoC在调试过程中必须要在PS启动后,主动释放PCAP权限,并将配置控制权移交给ICAP。这是因为PCAP和ICAP的功能类似,都是PS访问配置控制端接口,无法同时运行。因此,像MPSoC器件在使用SEM时,必须修改寄存器pcap_ctrl(地址0XFFCA3008)的bit0位,将其清零以切换至ICAP控制。否则将会初始化失败,导致SEM卡在“Initialization”状态,无法启动纠错功能。

421e4202-736e-11f0-a18e-92fbcf53809c.png

图6. MPSoC pcap_ctrl寄存器

可采用下面的两种方式实现寄存器配置:

1. PS侧添加如下代码

422e0c50-736e-11f0-a18e-92fbcf53809c.png

2. XSCT下配置寄存器

423e2cfc-736e-11f0-a18e-92fbcf53809c.png

BUFGCE使能

观察图5会发现,时钟路径中集成BUFGCE模块。该模块的使能端口CE默认为低,是因为系统级的要求下,经过MMCM/PLL的时钟需要等到稳定后才能提供给SEM。比如,在一些用到MIG的场景下,由于MIG做BIST阶段需要极高的时序精度,这个阶段使用SEM会有概率导致MIG校验错误,使能开关的作用可以规避这一问题。

ICAP仲裁切换行为

ICAP仲裁接口按照下面流程图的逻辑实现多个功能共享ICAP的机制。其中,需要注意的是,由于IP不知道在停止访问ICAP时是否操纵了配置内存,会导致再次被访问后会重新引导和重新初始化。

424852c2-736e-11f0-a18e-92fbcf53809c.png

图6. ICAP仲裁切换行为流程图

调试的方式

主要可以通过下面两种方式观察注入错误实验,两者各有优势,按需选择。

通过VIO的方式,在硬件调试窗口界面修改错误注入地址,再执行注入触发。

通过串口敲击命令,通常建议使用更简易的串口指令方式进行调试。

执行“I”,可进入IDLE状态

执行“O”,可进入Observation状态

注入命令输入“N”+“inject_address”;

执行“S”,获取当前状态,包括获取MF(Maximum Frame)的值,确保注入错误不会越界。对于不同类型、Virtex-6,7 series和 Zynq-7000、Ultrascale)的器件,MF的大小也不一样。


当SEM发生状态切换,会输出对应的打印信息,信息以“SC”开头。错误类型信息以“FC”开头,从可纠错与不可纠错、必要错误和非必要错误排列可以组合分成4种。

4262193c-736e-11f0-a18e-92fbcf53809c.jpg

表3. 状态报告

4272b83c-736e-11f0-a18e-92fbcf53809c.jpg

表4. 错误标记报告

扫描和纠错

42839300-736e-11f0-a18e-92fbcf53809c.png

图7. 串口指令控制SEM扫描和纠错

如上图,通过串口指令,分别调试注入单bit错误和多bit错误后,SEM扫描和纠错的情况。并通过VIO监测对应实验下观测确认两边的结果一致,由此证明SEM工作正常。

429698ce-736e-11f0-a18e-92fbcf53809c.jpg

42a25178-736e-11f0-a18e-92fbcf53809c.jpg

图7. VIO指令监控SEM扫描和纠错

04SEM注入错误的补充说明

错误注入命令只有在配置IP时,勾选了“错误注入使能”才能工作。

注入前,需要确认为IDLE状态,注入后,必须显示过渡到observation才能让IP尝试检测或纠正。

一次注入超过4个bit位,超出限制(ECC algorithm-based correction that supports correction of configuration memoryframes with up to 4-bit errors.见pg187),注入命令会丢失。

此外,如果配置帧,没有显示变化,可能是不存在该地址。

关于安富利

安富利是全球领先的技术分销商和解决方案提供商,在过去一个多世纪里一直秉持初心,致力于满足客户不断变化的需求。通过遍布全球的专业化和区域化业务覆盖,安富利可在产品生命周期的每个阶段为客户和供应商提供支持。安富利能够帮助各种类型的公司适应不断变化的市场环境,在产品开发过程中加快设计和供应速度。安富利在整个技术价值链中处于中心位置,这种独特的地位和视角让其成为了值得信赖的合作伙伴,能够帮助客户解决复杂的设计和供应链难题,从而更快地实现营收。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    114

    文章

    17250

    浏览量

    185406
  • 接口
    +关注

    关注

    33

    文章

    9066

    浏览量

    154254
  • IP
    IP
    +关注

    关注

    5

    文章

    1824

    浏览量

    153132
  • SEM
    SEM
    +关注

    关注

    0

    文章

    264

    浏览量

    15062
  • MPSoC
    +关注

    关注

    0

    文章

    202

    浏览量

    24806

原文标题:AMD技术干货|SEM IP在MPSoC器件上的使用指南

文章出处:【微信号:AvnetAsia,微信公众号:安富利】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    看门狗Zynq MPSoC的使用技巧

    Zynq MPSoC器件里,PS (Processing System )集成了三个看门狗,分别是CSU SWDT,LPD SWDT和FPD SWDT。
    的头像 发表于 06-30 09:47 ?2386次阅读
    看门狗<b class='flag-5'>在</b>Zynq <b class='flag-5'>MPSoC</b><b class='flag-5'>上</b>的使用技巧

    Vivado使用指南

    Vivado使用指南
    发表于 07-18 14:27

    如何调试Zynq UltraScale+ MPSoC VCU DDR控制器

    的普通问题,还是一个出现在正在使用 Zynq UltraScale+ MPSoC VCU DDR 控制器的地方的特殊问题。  DDR 性能:  对于性能问题,可将板的性能与 ZCU106 进行比较,也可以参考 (PG252) H.264/H.265 视频编解码器 (VC
    发表于 01-07 16:02

    PWM使用指南

    日期作者版本说明2020.09.26TaoV0.0撰写中目录简要介绍常用配置设置更新中断输出PWM脉冲捕获输出带死区控制的互补PWM使用指南简要介绍常用配置设置更新中断输出PWM脉冲捕获输出带死区控制的互补PWM使用指南...
    发表于 08-09 08:54

    AT32F421 CMP使用指南

    AT32F421 CMP 使用指南描述了怎么使用AT32F421xx的比较器(CMP)。AT32F421系列内置一个超低功耗比较器CMP,它可用作独立器件(I/O提供了全部接口),也可以与定时器结合使用。
    发表于 10-24 08:07

    Synplicity软件使用指南

    Synplicity软件使用指南 Agenda Product OverviewSynplifySynplify ProAmplify
    发表于 04-14 11:36 ?25次下载

    Quartus_II使用指南

    Quartus_II使用指南(非常详细)
    发表于 05-19 15:16 ?0次下载

    quartus使用指南

    quartus使用指南,有需要的朋友下来看看
    发表于 05-20 11:16 ?30次下载

    FreeRTOS 使用指南

    FreeRTOS 使用指南
    发表于 10-24 13:37 ?25次下载
    FreeRTOS <b class='flag-5'>使用指南</b>

    电子票使用指南免费下载

    电子票使用指南电子票使用指南电子票使用指南电子票使用指南电子票使用指南电子票使用指南
    发表于 11-24 14:02 ?3次下载

    mast语言使用指南

    mast语言使用指南说明免费下载。
    发表于 04-16 14:42 ?25次下载

    LM3644工业扫描中应用使用指南

    LM3644工业扫描中应用使用指南
    发表于 10-28 12:00 ?0次下载
    LM3644<b class='flag-5'>在</b>工业扫描中应用<b class='flag-5'>使用指南</b>

    LM3644工业扫描中应用使用指南

    LM3644工业扫描中应用使用指南
    发表于 11-01 08:25 ?0次下载
    LM3644<b class='flag-5'>在</b>工业扫描中应用<b class='flag-5'>使用指南</b>

    几种常见的关于SEM IP的冲突

    SEM IP是一种比较特殊的IP。它的基本工作就是不停地后台扫描检测FPGA配置RAM中的数据
    的头像 发表于 07-10 16:40 ?1208次阅读

    AMD MPSoC器件中启用SEM IP的策略与方法

    IP 初始化阶段就卡住了。从 Uart 口的 log 看 ‘ICAP’ 后续无字符输出,这是典型的 IP 无法通过 ICAP 访问控制端的状态。
    的头像 发表于 03-01 09:53 ?1623次阅读
    AMD <b class='flag-5'>MPSoC</b><b class='flag-5'>器件</b>中启用<b class='flag-5'>SEM</b> <b class='flag-5'>IP</b>的策略与方法