Xilinx FPGA电源设计与注意事项

1 引言

随着半导体和芯片技术的飞速发展,现在的FPGA集成了越来越多的可配置逻辑资源、各种各样的外部总线接口以及丰富的内部RAM资源,使其在国防、医疗、消费电子等领域得到了越来越广泛的应用。当采用FPGA进行设计电路时,大多数FPGA对上电的电源排序和上电时间是有要求的,所以电源排序是需要考虑的一个重要的方面。通常情况下,FPGA供应商都规定了电源排序、上电时间的要求。因为一个FPGA所需要的电源轨数量会从3个到10个以上不等。通过遵循推荐的电源序列,可以避免在启动期间吸取过大的电流,同时又可以防止器件受损坏。对一个FPGA的最小电路中的电源进行排序有多种方法。本文中主要以MP5650为例,来叙述把PGOOD引脚级联至使能引脚来实现排序。

  1. 研发案例

今天分享的案例是以明德扬公司研发的K7核心板,命名为MP5650为例。MP5650采用XILINX Kintex-7系列的XC7K325T-2FFG900I/XC7K410T-2FFG900I作为主控制器,在FPGA 芯片的HP 端口上挂载了4片DDR3存储芯片,每片DDR3 容量高达512M 字节,每片16bit组成64bit 位的数据位宽。1片128Mb 的QSPI FLASH 芯片用来静态存储FPGA 芯片的配置文件或者其它用户数据。核心板采用4个0.5mm间距120Pin 镀金连接器与底板连接,核心板四个脚放置了4个3.5mm固定孔,此孔可以与底板通过螺丝紧固,确保了在强烈震动的环境下稳定运行。核心板结构尺寸为65(mm)× 85(mm)。整个开发系统的结构如图1所示,实物图如图2所示。该板很适合高速数据通信;视频采集、视频输出、消费电子;机器视觉、工业控制;项目研发前期验证;电子信息工程、自动化、通信工程等电子类相关专业开发人员学习等领域及人群。

在这里插入图片描述

图1 核心板结构图

在这里插入图片描述

图2 核心板实物图

MP5650的K7FPGA所需要的电源轨如下:

(1)VCCINT

FPGA内部核心电压。其不损坏FPGA器件的范围为-0.5V1.1V,正常工作电压为0.97V1.03V,推荐工作电压为1.0V。

(2)VCCAUX

辅助供电电压。其不损坏FPGA器件的范围为-0.5V2.0V。正常工作电压为1.71V1.89V。推荐工作电压为1.8V。

(3)VCCBRAM

内部Block RAM的供电电压。其不损坏FPGA器件的范围为-0.5V1.1V。正常工作电压为0.97V1.03V,推荐工作电压为1.00V。

(4)VCCIO

对于HR BANK的接口电压来说,需要与外部器件的信号电平保持一致,其不损坏FPGA器件的范围为-0.5V3.6V。正常工作电压为1.14V3.465V。推荐工作电压与外部信号电平一致即可。对于HP BANK的接口电压来说,需要与外部器件的信号电平保持一致,其不损坏FPGA器件的范围为-0.5V2.0V。正常工作电压为1.14V1.89V。推荐工作电压与外部信号电平一致即可。

(5)VCCAUX_IO

IO辅助电压。其不损坏FPGA器件的范围为-0.5V2.06V。正常工作电压为1.14V1.89V/2.06V。推荐工作电压为1.8V/2V。

(6)VCCADC

XADC的供电电压。其不损坏FPGA器件的范围为-0.5V2.0V。正常工作电压为1.71V1.89V。推荐工作电压为1.80V。

(7)MGTAVCC

GTX收发器核心电压。其不损坏FPGA器件的范围为-0.5V1.1V。正常工作电压为0.97V1.08V,推荐工作电压为1.00V。

(8)MGTAVTT

GTX收发器终端匹配电压。其不损坏FPGA器件的范围为-0.5V1.32V。正常工作电压为1.17V1.23V。推荐工作电压为1.20V。

(9)MGTVCCAUX

GTX收发器辅助电压。其不损坏FPGA器件的范围为-0.5V1.935V。正常工作电压为1.75V1.85V。推荐工作电压为1.80V。

(10)MGTAVTTRCAL

GTX收发器校正电压。其不损坏FPGA器件的范围为-0.5V1.32V。正常工作电压为1.17V1.23V。推荐工作电压为1.20V。

官方推荐的上电顺序依次为VCCINT、VCCBRAM、VCCAUX、VCCAUX_IO、VCCO,断电顺序和上电顺序正好相反。另外如果VCCINT和VCCBRAM电源轨一致,则可同时上电/断电。VCCAUX_IO、VCCAUX与VCCO电源轨一致也可同时上电/断电。其它电源轨则无上电顺序。GTX收发器的上电顺序为VCCINT、MGTAVCC、MGTAVTT或者MGTAVCC、VCCINT、MGTAVTT。断电顺序正好相反。MGTVCCAUX无顺序。

  1. MP5650电源排序方法

实现排序的一种方法是把一个电源的电源良好(PGOOD)管脚级联至相继的下一个电源的使能(EN)管脚,如图3所示。在电源芯片在PG门限得到满足时开始接通。该方法的优势是成本低,但是无法轻松的控制定时。在EN管脚上增加电容在上电的级联上引入定时延时。

在这里插入图片描述

图3 把PGOOD引脚级联至使能引脚示意图

MP5650上选用的DC-DC电源芯片为LTM4628和LTNM4622,芯片的使用典型电路如图4所示。芯片通过控制TRACK/SS管脚,通过给该管脚外加电容来改变上电时间。电容越小,上电时间越短。若FPGA电源级数较多较多,若每级上电时间较长,会导致电源总的上电时间过慢,超过官方给的最大值,导致无法启动配置工作,FPGA工作不正常。官方提供的上电时间要求如图5所示,最大不超过50ms。

在这里插入图片描述

图4 LTM4628和LTNM4622芯片使用典型电路
在这里插入图片描述

图5 官方提供的上电时间要求

在我们最初的设计中TRACK/SS管脚电容选为0.1uF,我们发现经过四级级联后,上电有时Flash配置芯片配置不成功,经示波器测试发现上电时间过长,超过了Xilinx要求的50ms,如图6所示。经修改TRACK/SS管脚电容选为4.7nF后,上电时间大大缩短,如图7所示,约为3ms。满足了Xilinx上电时间要求,FPGA可以正常工作。设计中也可以将TRACK/SS管脚悬空,在默认情况下,上电时间有默认延时时间约为几百微秒。
在这里插入图片描述

图6 TRACK/SS管脚电容为0.1uF时,最后一级电源上电时间

  1. 总结

总得来说,kintex7 FPGA电源结构比较复杂。目前用户设计的7系列FPGA带上电顺序的电源方案常用各个电源芯片的输入EN和输出PGOOD来控制顺序,上电时间需满足Xilinx官方要求。通过开始描述,我们能够清晰看到这个MP5650核心板所含有的接口和功能。对于需要大量IO的用户,此核心板将是不错的选择。而且IO连接部分,同一个BANK管脚到连接器接口之间走线做了等长和差分处理,对于二次开发来说,非常适合。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

html富文本编辑器

接了个单子&#xff0c;需要添加一个文章模块&#xff0c;一看用到的技术这么老&#xff0c;人傻了&#xff0c;纯html css js 。 在普通页面中 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"…

DAY01_Spring简介IOC、DI入门案例Bean基础配置Bean实例化Bean生命周期依赖注入(DI配置)

目录 一 Spring1 Spring简介1.1 为什么要学1.2 学什么1.3 怎么学 2 初识Spring2.1 Spring家族2.2 Spring发展史 3 Spring体系结构问题导入3.1 Spring Framework系统架构图3.2 Spring Framework课程学习路线 4 Spring核心概念问题导入4.1 目前我们代码存在的问题4.2 核心概念 二…

【计算机网络】408统考2014年题36

题目描述 【2014年题36】主机甲与主机乙之间使用后退N帧(GBN)协议传输数据&#xff0c;甲的发送窗口尺寸为1000&#xff0c;数据帧长为1000字节&#xff0c;信道带宽为100Mbps&#xff0c;乙每收到一个数据帧就立即利用一个短帧&#xff08;忽略其传输延迟&#xff09;进行确认…

利用vscode--sftp,将本地项目/文件上传到远程服务器中详细教程

1、首先在 vscode 中下载 sftp&#xff1a; 2、然后在 vscode 中打开本地将要上传的项目或文件&#xff1a; 3、安装完后&#xff0c;使用快捷键 ctrlshiftP 打开指令窗口&#xff0c;输入 sftp:config &#xff0c;回车&#xff0c;在当前目录中会自动生成 .vscode 文件夹及 s…

Java面向对象之方法的使用

文章目录 一、什么是方法二、方法的声明格式三、方法的分类四、方法的调用五、方法的注意点六、方法的重载七、可变形参的方法八、方法参数的值传递机制九、递归方法 一、什么是方法 方法(method)是类或对象行为特征的抽象&#xff0c;用来完成某个功能操作。在某些语言中也称…

【设计模式——学习笔记】23种设计模式——代理模式Proxy(原理讲解+应用场景介绍+案例介绍+Java代码实现)

介绍 基础介绍 代理模式为一个对象提供一个代理对象&#xff0c;以控制对这个对象的访问。即通过代理对象访问目标对象&#xff0c;这样做的好处是&#xff1a;可以在不修改目标对象代码的基础上&#xff0c;增强额外的功能操作&#xff0c;即扩展目标对象的功能被代理的对象…

Go学习第一天

闲聊两句 从事java后端开发8年多&#xff0c;期间也曾零星看过Go语言、Python、Erlang等等&#xff0c;但都未曾认真学习过&#xff0c;恰好公司最近项目需要&#xff0c;之前用Go开发的项目因为同事离职&#xff0c;暂未人来接手&#xff0c;所以老大就找到我和另外一个同事&…

【RabbitMQ(day3)】扇形交换机和主题交换机的应用

文章目录 第三种模型&#xff08;Publish/Subscribe 发布/订阅&#xff09;扇型&#xff08;funout&#xff09;交换机Public/Subscribe 模型绑定 第四、第五种模型&#xff08;Routing、Topics&#xff09;第四种模型&#xff08;Routing&#xff09;主题交换机&#xff08;To…

使用css和js给按钮添加微交互的几种方式

使用css和js给按钮添加微交互的几种方式 在现实世界中&#xff0c;当我们轻弹或按下某些东西时&#xff0c;它们会发出咔嗒声&#xff0c;例如电灯开关。有些东西会亮起或发出蜂鸣声&#xff0c;这些响应都是“微交互”&#xff0c;让我们知道我们何时成功完成了某件事。在本文…

一起学数据结构(2)——线性表及线性表顺序实现

目录 1. 什么是数据结构&#xff1a; 1.1 数据结构的研究内容&#xff1a; 1.2 数据结构的基本概念&#xff1a; 1.2.1 逻辑结构&#xff1a; 1.2.2 存储结构&#xff1a; 2. 线性表&#xff1a; 2.1 线性表的基本定义&#xff1a; 2.2 线性表的运用&#xff1a; 3 .线性…

对话CSDN副总裁-邹欣:先行动的才是赢家,践行长期主义的价值创造者终将收获价值 | COC上海城市开发者社区

文章目录 ⭐️ COC上海城市开发者社区的首次集结契机⭐️ 关于 "技术人如何应对35岁中年危机"&#x1f31f; 30岁了没转管理&#xff0c;应该焦虑么&#xff1f;&#x1f31f; 30岁没转管理&#xff0c;是否还有其他选择&#xff1f; ⭐️ 践行长期主义的价值创造者终…

DHorse v1.3.0 发布,基于k8s的发布平台

综述 DHorse是一个简单易用、以应用为中心的云原生DevOps系统&#xff0c;具有持续集成、持续部署、微服务治理等功能&#xff0c;无需安装依赖Docker、Maven、Node等环境即可发布Java、Vue、React应用&#xff0c;主要特点&#xff1a;部署简单、操作简洁、功能快速。 新增特…

AI情绪鼓励师(基于PALM 2.0 finetune)

AI情绪鼓励师&#xff08;基于PALM 2.0 finetune) 目录 一、写在前面的话 二、前言 三、获取用于finetune的“夸夸”数据集 四、 获取并finetune PALM 2.0 预训练生成模型 模型 五、模型调用应用 一、写在前面的话 从小我就是极端内向和社恐的孩子&#xff0c;我普通之极…

【Uniapp 中实现微信登录】

要在 Uniapp 中实现微信登录&#xff0c;需要完成以下步骤&#xff1a; 在微信开放平台注册一个应用&#xff0c;并获取到该应用的 AppID 和 AppSecret。 在 manifest.json 中点击App模块配置。勾选微信登录模块&#xff0c;填入该应用的 AppID 在代码中调用 uni.login 方法&…

算法训练营第五十七天||647.回文子串、516.最长回文子序列、动态规划总结

647.回文子串 出自代码随想录 如果大家做了很多这种子序列相关的题目&#xff0c;在定义dp数组的时候 很自然就会想题目求什么&#xff0c;我们就如何定义dp数组。 绝大多数题目确实是这样&#xff0c;不过本题如果我们定义&#xff0c;dp[i] 为 下标i结尾的字符串有 dp[i]个…

IntelliJ IDEA 2023.2新特性详解第二弹!

4 性能分析器 4.1 从 Run&#xff08;运行&#xff09;工具窗口使用分析功能 2023.2 中&#xff0c;可直接从 Run&#xff08;运行&#xff09;工具窗口轻松访问 IntelliJ 分析器的功能。 使用新按钮&#xff0c;点击即可调用&#xff1a; Attach IntelliJ Profiler&#xff…

【Java多线程学习4】volatile关键字及其作用

说说对于volatile关键字的理解&#xff0c;及的作用 概述 1、我们知道要想线程安全&#xff0c;就需要保证三大特性&#xff1a;原子性&#xff0c;有序性&#xff0c;可见性。 2、被volatile关键字修饰的变量&#xff0c;可以保证其可见性和有序性&#xff0c;但是volatile…

实验-路由器配置静态路由

软件&#xff1a;cicso packet tracer 8.0 拓扑图&#xff1a;路由器&#xff1a;Router-PT、连接线&#xff1a;Serial DTE、连接口&#xff1a;Serial口&#xff08;serial是串行口,一般用于连接设备,不能连接电脑&#xff09; 实验步骤&#xff1a; 1、构建拓扑图&#xf…

pytorch学习——正则化技术——权重衰减

一、概念介绍 权重衰减&#xff08;Weight Decay&#xff09;是一种常用的正则化技术&#xff0c;它通过在损失函数中添加一个惩罚项来限制模型的复杂度&#xff0c;从而防止过拟合。 在训练参数化机器学习模型时&#xff0c; 权重衰减&#xff08;weight decay&#xff09;是…

windows环境下adb 下载和配置,连接手机。

ADB下载地址&#xff1a; https://adbdownload.com/ 选择下载windows系统的。 下载后解压&#xff0c;查看adb.exe所在的目录&#xff0c;如下 这里将路径复制下来&#xff1a;D:\ADB 配置到系统环境变量中。 然后再打开cmd&#xff0c;输入adb version查看版本。 出现…