fpga初始化错误_FPGA低温启动失败

本文来源:https://blog.csdn.net/shanekong/article/details/29923925

现象描述

在给 medium 板光端机做低温试验时,分别给发送版、接收板断电重新启动,发现有的板子在 -40° 可以启动,而有些板子在 -20° 都不能启动,需要升高温度到 0° 以上才能启动,此时观察到的现象是指示状态的 4 个 led 灯都点亮,表现为 FPGA 一直处于复位模式。

问题分析

主串配置模式电路图

82ce5ff4a23a8d8f592c3f8951e87f41.png

Medium 光端机使用的 FPGA 芯片是 Spartan3E,PlatformFlash 是 XCF04S 。

FPGA 芯片有两个配置触发事件:上电复位(POR, power on reset),软件复位。低温试验中,我们采用断电重启的方式来检测 FPGA 是否在低温下可以重新启动,这里主要对上电复位触发重新配置的过程进行如下描述:

d39a7e2230fe52cbc35e000188a0f9ea.png

(1)FPGA 上电后,只有在内核电压、参考电压、IO 口电压都正常的情况下,才进入配置模式;

(2)下拉 PROG_B ,FPGA 复位,同时对配置存储空间进行初始化;

(3)将INIT_B ,DONE 管脚信号拉低,DONE 信号与 PROM 芯片的 CE 管脚信号相连,从而使 PROM 片选信号有效;INIT_B 为低,指示电源供压正常,FPGA 正处于配置存储空间初始化中;

(4)FPGA 在 PROG_B 管脚信号变为高电平时,开始配置过程;

(5)FPGA 在 INIT_B 上升沿中读取配置管脚 M[2:0] 的值,从而确定 FPGA 的配置模式;

(6)PROM 通过 Do 管脚将配置数据以 CCLK 时钟信号的速率传给 FPGA

(7)配置完成后,将 DONE 管脚信号置为低电平,指示配置已经完成。

以下将针对 FPGA 主串模式配置过程中几个关键的因素进行分析:

POR 电压要求

上电复位过程中,如果配置电源电压没有到达门限值,POR 电路将保持复位状态。配置电源有三个:

f27c5afc159604384aa5464b7fce20c8.png

VCCIINT:给 FPGA 内核逻辑供压

VCCAUX:给专用配置管脚供压

VOCC_2:给外部连接的配置数据源(如 PROM )接口管脚供压

FPGA检测这三个电压值,一旦所有的三个电压值超出了特定的电压门限值要求,POR上电复位电路会释放对RESET控制,FPGA就可以在PROG_B出现低电平时,启动重新配置。

c9f2d2bd81087218a03113ccddd0b2b8.png

配置模式选择:主串模式(Master Serial)

M[2:0]= <0:0:0>,FPGA 配置模式选择管脚M[2:0]都应为低电平。在 FPGA 完成了内部配置存储空间初始化后,FPGAT_B在 INIT_B 上升沿的时候读取配置模式管脚的电平值,从而确定 FPGA 的配置模式。

b5ac2b258123a890d5e7a54106502987.png

查一下M0 M1 M2上的下拉电阻,这些脚 FPGA 内置的上拉很强,如果外接下拉电阻太大的话有可能下拉电平不够低,加上温度变化造成输入门限电压的变化就可能造成低温的时候不去用 SPI Flash 初始化。推荐阻值 470 欧以下,如果不复用引脚的话,建议直接接地。

配置时钟 CCLK

CCLK 信号是 JATG 配置数据传输的时钟信号,其信号完整性非常关键。CCLK 是由 FPGA 内部振荡器产生的,传给 Platform Flash PROM的 CLK 管脚。相应的,PlatformFlash PROM 通过 DO 以 CCLK 的速率将配置数据送给 FPGA 。如果CCLK 信号没有,重点检查内核供压是否为 1.2v 。FPGA 配置电路刚开始以最低的频率工作,如果没有特别指定,将逐渐提高频率。对于不同芯片和电平,CCLK 最大值如下。

e61341dce588b8f71b892f09fa9d7893.png

PROG_B—FPGA 复位或者重新配置

PROG_B 对 FPGA 来说是一个异步控制输入信号,当 PROG_B 为低时,FPGA 复位,同时对配置存储空间进行初始化;当 PROG_B 由低变为高时,FPGA 开始重新配置过程;重新配置完成后,PROG_B 保持高电平,一旦 PROG_B 出现下降沿,并且低电平持续时间大于 500ns 时,FPGA 将开始重新配置过程。

1d4e899e8a8cc74e3f51f1aaef1aa80f.png

PROG_B 为低期间,IO 管脚将表现为何种状态呢。在 HSWAP 为低电平的情况下,使能上拉电阻,一旦检测到 PROG_B 出现下降沿时,FPGA 的 IO 管脚将无效,被上拉为高电平。如果 HSWAP 为高电平,上拉电阻无效,FPGA 的 IO 管脚的状态是不确定的。

Medium 光端机中,HSWAP 通过一个510欧姆的电阻接地,因此 HSWAP 为低电平,当 PROG_B 为低电平时,FPGA 的 IO 管脚将被上拉为高电平,此时指示状态的四个 LED 灯点亮正好说明了这一现象。

INIT_B—FPGA 配置存储空间初始化指示信号

当电源供压达到电压门限值后,FGPA 将 INIT_B 置为低电平,指示正在对配置存储空间进行初始化。在 INIT_B 信号由低变为高电平时,FPGA 读取配置模式管脚 M[2:0] 的电平值,从而确定 FPGA 的配置模式。

在配置过程中,FPGA 通过将 INIT_B 置为低电平来指示配置数据错误,比如 CRC 出错。

DONE—FPGA 配置状态指示信号

当 FPGA 处于配置过程中时,DONE 为低电平;配置完成后变为高电平。可以用来指示 FPGA 的配置状态。

==>Medium 光端机中 FPGA 的 DONE 管脚外接 240 欧姆电阻(推荐值为 330 欧姆)与 相连,并且另一端外连接一个 LED ,然后接地。当 LED 点亮时,表示 FPGA 已经完成了配置。

总结

通过以上的分析,当 FPGA 不能正常配置时,可以从以下几个方面进行排查

  1. DONE 指示信号 LED 灯是否亮,亮表示配置完成;

  2. 测量电压是否正常,分别有内核电压(1.2v)、参考电压(2.5v)、IO口电压(3.3v);

  3. 检查配置模式 M[2:0] 是否正确,(M[2:0]=<0:0:0>);

  4. 使用示波器采集配置时钟信号,看是否正常,低于 12M(Spartan 3e + XCF04S)

  5. 查 PROM 的数据手册,PROM--XCF04S 可以工作在-40°到+85°的环境下。

参考链接

chrome-extension://ibllepbpahcoppkjjllbabhnigcbffpi/https://www.xilinx.com/support/documentation/user_guides/ug332.pdf
chrome-extension://ibllepbpahcoppkjjllbabhnigcbffpi/https://www.xilinx.com/support/documentation/data_sheets/ds312.pdf
4750f4f3f82b7a371ef4cd0feb179d59.png扫码关注一起畅聊

深耕在FPGA  扎根于视频领域 

卓越于神经网络

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/527997.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

机器人最新天赋符文天赋加点图_常德2020中小学机器人竞赛开赛 286名选手现场比拼技能...

尚一网讯(记者 肖志芳 文/图)自己设计机器人&#xff0c;还要操控他们完成各项高难度动作进行竞技对抗&#xff0c;这似乎挺难&#xff0c;但是许多中小学生却对此游刃有余。10月11日&#xff0c;常德市2020年中小学机器人竞赛在武陵区第一小学举行&#xff0c;来自全市143支代…

cmd imp导入dmp文件_这是一篇长篇入门级数据库讲解:oracle数据库数据导入导出步骤...

正如标题一样&#xff0c;本文内容主要介绍了浅谈入门级oracle数据库数据导入导出步骤&#xff0c;文章通过步骤解析介绍的非常详细&#xff0c;对大家的学习或者工作具有一定的参考学习价值&#xff0c;需要的朋友们下面随着小编来一起学习学习吧&#xff01;&#xff01;&…

linux 使用ssr客户端_【第一期】基于 @vue/cli3 与 koa 创建 ssr 工程

什么是基于同构代码的 SSR 服务(Server-side rendering based on isomorphic code)首先&#xff0c;我们需要先明白什么是 spa (single page application)&#xff0c;以及基于 vue 的 spa 是如何工作的&#xff0c;这里不展开&#xff0c;请参考&#xff1a;单页应用:https://…

读保护_混合ASIL系统中不同安全等级模块间的边界保护

01功能安全组件的软件开发针对ISO 26262对功能安全软件研发的要求&#xff0c;AUTOSAR将功能安全需求进行了具体拆分。当前的AUTOSAR规范囊括了诸多功能安全组件软件开发的需求概念。在AUTOSAR系统设计的架构中&#xff0c; 从系统功能设计到ECU功能实现&#xff0c;每个功能特…

android studio javah不是内部或外部命令,Android Studio 环境搭建参考,jdk10javac命令提示不是内部或外部命令...

https://blog.csdn.net/qq_33658730/article/details/78547789 win10下Android Studio和SDK下载、安装和环境变量配置http://yanmin99.com/ android-0基础从入门到精通环境变量ANDROID_HOMEE:\Program Files (x86)\Android\SdkJAVA_HOMEE:\Program Files\Java\jdk1.8.0_161TOMC…

starops 云效运维 文档_阿里云 SAE 携手云效助力「石家庄掌讯」持续交付、降本提效...

背景石家庄掌讯信息技术有限公司创立于2009年&#xff0c;是一家提供企业信息化咨询、创新型软件产品、电商代运营服务&#xff0c;标准化管理、快速发展的高新技术企业。当前公司正处于企业互联网市场突破转型重要阶段&#xff0c;希望将更多精力转移到业务创新&#xff0c;提…

setdata改数组里的值 微信小程序_今日艰难笔记redux小程序随记

redux的前身Flux https://zhuanlan.zhihu.com/p/38050036Flux的一整套抽象(action&#xff0c;dispatcher&#xff0c;store)&#xff0c;在单向数据流的基础上可以提高应用的可维护性和代码的可预测性。然而&#xff0c;全局action多store的架构面对复杂的应用依然不能很好地解…

竞赛数据清洗缺失值_Kaggle 数据清洗挑战 Day 1 - 手把手教你五步处理缺失值

前些天报名参加了 Kaggle 的 Data Cleaning 5天挑战&#xff0c;5天的任务如下&#xff1a;Day 1: Handling missing valuesDay 2: Data scaling and normalizationDay 3: Cleaning and parsing datesDay 4: Fixing encoding errors (no more messed up text fields!)Day 5: Fi…

html5中行内样式写法,react怎么写行内样式?

react怎么写行内样式&#xff1f;下面本篇文章给大家介绍一下react 行内样式几种写法。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对大家有所帮助。react 行内样式几种写法法一这是评论列表组件1法二const title{color:"red",fontSize:3…

程序左上角的字_微信内测7.0.7新版本,小程序迎来大改动!

最近几个月来&#xff0c;微信就跟打了鸡血一样不断更新了多个版本上线多个新功能。此前7月末&#xff0c;微信安卓7.0.6带来了将收藏笔记&#xff0c;文件预览等页面设为浮窗的功能&#xff0c;目前最多支持5个文档或笔记设为浮窗。这不&#xff0c;距离微信7.0.6 for Android…

html 跑步比赛小游戏,疯狂趣味跑步竞赛3D

疯狂趣味跑步竞赛3D是一款跑酷类型的休闲游戏&#xff0c;游戏在整体画面上搭配了最新的技术&#xff0c;使得游戏画面看起来非常华丽&#xff0c;人物的建模也很可爱。玩家在游戏中可以在各种风格的跑道上进行比赛&#xff0c;还可以在线跟别的玩家进行匹配。喜欢这款游戏的快…

得到进程id_搞懂进程组、会话、控制终端关系,才能明白守护进程干嘛的?

守护进程概念&#xff1a;守护进程&#xff0c;也就是通常所说的Daemon进程&#xff0c;是Linux中的后台服务进程。周期性的执行某种任务或等待处理某些发生的事件。Linux系统有很多守护进程&#xff0c;大多数服务都是用守护进程实现的。比如&#xff1a;像我们的tftp&#xf…

w7计算机的收藏夹里弄出桌面,Win7电脑桌面的便签怎么弄出来?

原标题&#xff1a;Win7电脑桌面的便签怎么弄出来&#xff1f;可能很多人都不知道&#xff0c;作为常用的一款电脑桌面操作系统&#xff0c;Windows 7上除了有Txt记事本和Office办公文档外&#xff0c;还有便笺小工具呢&#xff01;这款便笺小工具虽然很不起眼&#xff0c;但是…

native html5 区别,H5与Native优劣对比

即将启动爱奇艺商城(mall.iqiyi.com)移动端的native化。项目开始之前当然要梳理下为什么做native&#xff0c;究竟H5跟native比有什么劣势&#xff0c;而H5又为什么占比那么高并且有“Html5才是未来”的说法呢。下面简单理下对比。H5&#xff0c;即Html5&#xff0c;指第5代HTM…

html制作圆盘时钟,jquery+html5制作超酷的圆盘时钟表

自己封装的一个用HTML5jQuery写的时钟表代码&#xff1a;超酷数码钟表//引用的是在线jquery地址&#xff0c;如果不行请自行下载切换(function($){$.fn.drawClock function(options){var mainId $(this);//设置默认参数var defaultOptions {width: 300px,height: 300px,marg…

调用外部程序处理文件_Python使用内置方法、模块调用外部命令

导读Python内置调用外部命令&#xff1a;os.systemos.popenos.popen2os.popen3os.popen4commands模块subprocess模块在Python3中&#xff0c;将os.popen2、os.popen3、os.popen4、commands等模块方法移除所以不用花精力了解&#xff0c;可以绕过了os.system方法os.system("…

计算机软件类ui工资多少,ui设计师工资一般多少

ui设计师月薪大概多少&#xff0c;UI设计师的收入现处于中等水平&#xff0c;一般月薪5000~7000元&#xff0c;资深设计师的收入可上升至7000~10000元。ui设计师月薪大概多少&#xff0c;ui设计师工资有多少&#xff1f;&#xff0c;不清楚ui设计师工资有多少的伙伴可以看看。U…

大学计算机课第二章内容总结,第四周市政系《大学计算机基础》课程总结

本周大一的新生终于在漫长的等待、报到、军训之后开始了大学课程的学习&#xff0c;在《大学计算机基础》课程的学习中&#xff0c;其实只是需要大学确立一种新的学习思想&#xff1a;计算机是人类智慧的结晶&#xff0c;它给予我们这样一种工具&#xff0c;通过对它的使用&…

在maven项目中打开jsp_零基础在intellij中打开一个项目复制粘贴内容即可运行的java拼图...

我刚学java语言&#xff0c;在学习java简单的拼图游戏时发现网上有些居然要导入调试&#xff0c;而且网上有些说的调试方法不明不白&#xff0c;所以我就分享了我的可直接复制在新项目中的源码&#xff0c;如果要直接要搞好的话就可以用结尾的分享提取链接进行百度网盘获取(该项…

计算机考试报名无法弹出支付界面,教资报名支付页面不弹出怎么办 2021教师资格证报名入口网址...

2021教师资格证报名入口是中小学教师资格考试网站&#xff0c;教师资格证报名时间是1月14-17日&#xff0c;请大家请及时登陆教师资格证报名官网报名以防错过考试。点击进入&#xff1a;2021年教师资格考试报名入口教师资格证报名缴费进不了支付页面的话原因可能有以下几点&…