• Xilinx FPGA 超温关机保护


    在UG480文档,有关于FPGA芯片热管理的介绍。
    首先需要理解XADC中的 Over Temperature(OT)和User Temperature的关系。片上温度测量用于关键温度警告,也支持自动关机,以防止设备被永久损坏。片上温度测量在预配置和自动关机期间连续记录结温。
    Over Temperature是用于执行自动关机时所用设置。User Temperature是用于执行用户自定义的热管理程序,例如控制风扇转速。当设备温度超过温度上限控制寄存器限制(53H/50H)时,报警信号OT/ALM[0]为高。OT/ALM[0]保持高电平状态,直至温度低于下限控制寄存器(57H/54H)。一个典型的报警信号变化如下图所示。

    在这里插入图片描述
    使能FPGA芯片过温自动关机功能,需要将OT upper alarm register(53h)中的低4位设置为0011b,同时在xdc文件中添加如下语句。

    set_property BITSTREAM.CONFIG.OVERTEMPPOWERDOWN ENABLE [current_design]
    
    • 1

    当芯片温度超过OT上限阈值(或默认125℃)时,超温告警逻辑输出激活,10 ms后设备启动关机程序。当自动关机启动时,设备被禁用,GHIGH被断言以防止任何争用。当OT解除时,GHIGH也解除,启动启动顺序,释放全局资源。当器件关闭时,XADC自动使用内部时钟振荡器,但其他方面保持不变。自动关机功能是为了防止对设备造成永久性损坏。当温度降到OT下限以下,OT解除后,需要重新配置设备。

    如果XADC被实例化,自动关机功能可以通过在Config Reg 1 (41h) High中设置OT信号来禁用,或者通过在xdc文件中添加以下约束来禁用。

    set_property BITSTREAM.CONFIG.OVERTEMPPOWERDOWN DISABLE [current_design]
    
    • 1

    下面进行测试,为了加快测试速度,将XADC IP核中的两个温度阈值,设低一点。
    在这里插入图片描述
    检查一下生成的IP核V文件,可以看到OT上限阈值寄存器(53H)的低4位默认是3h,也就是0011b。同时在xdc文件中添加前面所说的语句以使能过温关机功能。
    在这里插入图片描述
    在顶层文件中例化xadc_wiz_0,本次测试只需要给IP核接上时钟和复位信号即可。为了观察输出,再将user_temp_alarm_out信号和ot_out信号引出接到开发板上的两个LED上。
    生成并下载Bitstream,打开XADC数据面板。下图为温度数据,可以看到在未到达OT上限温度时,芯片温度一直处于上升状态,当芯片温度超过OT上限温度50度,芯片自动关机,此时芯片温度开始下降。从开发板上的LED状态可以验证芯片确实关机了。
    在这里插入图片描述
    在测试中发现,芯片温度不需要下降到OT下限以下,也可以重新下载程序。
    将程序固化到板载Flash中后,在芯片温度达到OT上限后,芯片自动关机。重新上电配置即可恢复正常。

  • 相关阅读:
    浪漫烟花------哈哈哈哈哈哈哈哈哈哈哈哈
    UE4 TextRender显示中文方法
    Spring框架面试题总结(面试必备)
    定时执行专家 - 循环触发的危险操作,例如:电脑循环关机、循环重启、循环注销等,请谨慎尝试
    【Python】-- 元组、字符串常用方法、序列切片
    520表白小程序设计Python代码详解(PyQt5界面,B站动漫风)
    MySQL
    【附源码】计算机毕业设计SSM特大城市地铁站卫生防疫系统
    spring cloud sream 统一集成mq中间件
    synchronized锁升级过程
  • 原文地址:https://blog.csdn.net/weixin_44625313/article/details/132717966