当前位置:首页 > FPGA
  • FPGA中的功耗由哪些组成?低功耗设计如何实现?

    FPGA中的功耗由哪些组成?低功耗设计如何实现?

    功耗是大家较为关心的问题之一,在保证性能的前提下,我们往往追求低功耗设计。为增进大家对功耗的认识,本文将对FPGA架构的功耗以及低功耗相关内容予以介绍。如果你对本文内容具有兴趣,不妨继续往下阅读哦。 下面我们将介绍FPGA的功耗、流行的低功耗功能件以及影响功耗的用户选择方案,并探讨近期的低功耗研究,以洞察高功率效率FPGA的未来趋势。 功耗的组成部分 FPGA的功耗由两部分组成:动态功耗和静态功耗。信号给电容性节点充电时产生动态功耗。这些电容性节点可以是内部逻辑块、互连架构中的布线导线、外部封装引脚或由芯片输出端驱动的板级迹线。FPGA的总动态功耗是所有电容性节点充电产生的组合功耗。 静态功耗与电路活动无关,可以产生于晶体管漏电流,也可以产生于偏置电流。总静态功耗是各晶体管漏电功耗及FPGA中所有偏置电流之和。动态功耗取决于有源电容一侧,因而可随着晶体管尺寸的缩小而改善。然而,这却使静态功耗增加,因为较小的晶体管漏电流反而较大。因此静态功耗占集成电路总功耗的比例日益增大。 如图1所示,功耗很大程度上取决于电源电压和温度。降低FPGA电源电压可使动态功耗呈二次函数下降,漏电功耗呈指数下降。升高温度可导致漏电功耗呈指数上升。例如,把温度从85℃升高至100℃可使漏电功耗增加25%。 图1 电压和温度对功耗的影响 功耗分解 下面分析一下FPGA总功耗的分解情况,以便了解功耗的主要所在。FPGA功耗与设计有关,也就是说取决于器件系列、时钟频率、翻转率和资源利用率。 以Xilinx Spartan-3 XC3S1000 FPGA为例,假定时钟频率为100MHz,翻转率为12.5%,而资源利用率则取多种实际设计基准测试的典型值。 图2所示为XC3S1000的活动功耗和待机功耗分解图。据报告显示,活动功耗是设计在高温下活动时的功耗,包括动态和静态功耗两部分。待机功耗是设计空闲时的功耗,由额定温度下的静态功耗组成。CLB在活动功耗和待机功耗中占最主要部分,这不足为奇,但其他模块也产生可观的功耗。I/O和时钟电路占全部活动功耗的1/3,如果使用高功耗的I/O标准,其功耗还会更高。 图2 Spartan-3 XC3S1000 FPGA典型功耗分解图 配置电路和时钟电路占待机功耗近1/2,这在很大程度上是偏置电流所致。因此,要降低芯片的总功耗,就必须采取针对所有主要功耗器件的多种解决方案。 低功耗设计 FPGA的设计中使用了多种功耗驱动的设计技术。以Xilinx Virtex系列为例,因为配置存储单元可占到FPGA中晶体管数的1/3,所以在该系列中使用了一种低漏电流的“midox”晶体管来减少存储单元的漏电流。为了减少静态功耗,还全面采用了较长沟道和较高阈值的晶体管。动态功耗问题则用低电容电路和定制模块来解决。DSP模块中乘法器的功耗不到FPGA架构所构建乘法器的20%。鉴于制造偏差可导致漏电流分布范围很大,可筛选出低漏电流器件,以有效提供核心漏电功耗低于60%的器件。 除了融入FPGA设计之外,还有许多设计选择方案影响到FPGA的功耗。下面分析部分这类选择方案。 1 功耗估计 功耗估计是低功耗设计中的一个关键步骤。虽然确定FPGA功耗的最准确方法是硬件测量,但功耗估计有助于确认高功耗模块,可用于在设计阶段早期制定功耗预算。 如图1所示,某些外部因素对功耗具有呈指数的影响;环境的微小变化即可造成预估功耗的重大变化。使用功耗估计工具虽难以达到精准,但仍然可以通过确认高功耗模块来为功耗优化提供极好的指导。 2 电压和温度控制 如图1所示,降低电压和温度均可显着减少漏电流。电源电压降低5% 就可降低功耗10%。通过改变电源配置,很容易调整电源电压。目前的FPGA不支持大范围电压调整,推荐的电压范围通常是±5%。结温可以用散热器和气流等冷却方案来降低。温度降低20℃可减少漏电功耗25%以上。降低温度还可呈指数提高芯片的可靠性。研究表明,温度降低20℃可使芯片总体寿命延长10倍。 3 悬挂和休眠模式 悬挂和休眠等模式可有效降低功耗。以Xilinx Spartan-3A FPGA为例,该器件提供两种低功耗空闲状态。在悬挂模式下,VCCAUX电源上的电路被禁用,以减少漏电功耗和消除偏置电流,这样可降低静态功耗40%以上。悬挂时仍保持芯片配置和电路状态。将唤醒引脚置位即可退出悬挂模式。此过程用时不到1ms。 休眠模式允许关闭所有功率调节器,从而实现零功耗。若要重启,必须重开电源并配置器件,此过程需要数十毫秒。切断电源后,所有I/O均处于高阻抗状态。如有I/O需要在休眠模式下主动激活,则必须保持对相应I/O组供电,这会消耗少量待机功率。 4 I/O标准方案 不同I/O标准的功耗水平相差悬殊。在牺牲速度或逻辑利用率的情况下,选择低功耗I/O标准可显著降低功耗。例如,LVDS是功耗大户,其每对输入的电流为3mA,每对输出的电流为9mA。因此,从功耗角度来看,应该仅在系统技术规范要求或需要最高性能时才使用LVDS。 替代LVDS的一种功耗较低而性能较高的方案是HSTL或SSTL,但这二者仍要每输入消耗3mA。如果可能,推荐换用LVCMOS输入。此外,DCI标准是功耗大户。当连接到RLDRAM等存储器件时,请考虑在存储器上使用ODT,而在FPGA上使用LVDCI,以减少功耗。 5 嵌入式模块 用嵌入式模块替代可编程架构可显著降低功耗。嵌入式模块是定制设计的,因此其体积和开关电容都比可编程逻辑的小。这些模块的功耗是等效可编程逻辑的1/5~1/12。如果设计缩小并可装入较小的器件,则使用嵌入式模块可以降低静态功耗。一个潜在的缺点是,使用大型嵌入式模块可能无法更有效地实现非常简单的功能。 6 时钟生成器 在时钟生成中考虑功耗因素可以减少功耗。数字时钟管理器广泛用于生成不同频率或相位的时钟。然而,DCM消耗的功率占VCCAUX不可小觑的一部分;因此,应尽可能限制使用DCM。通过使用多种输出(如CLK2X、CLKDV 和CLKFX),一个DCM常常可生成多种时钟。与为同一功能使用多个DCM相比,这是一种功耗较低的解决方案。 7 Block RAM的构建 多个Block RAM常常可以组合起来构成一个大型RAM。组合的方式可以对功耗意义重大。时序驱动的方法是并行访问所有RAM。例如,可以用4个2k&TImes;9 RAM构成一个2k&TImes;36 RAM。这个较大RAM的访问时间与单个Block RAM相同;然而,其每次访问的功耗却相当于4个Block RAM的功耗之和。 一种低功耗的解决方案是用4个512&TImes;36b RAM 构成同样的2k&TImes;36b RAM。每次访问都会预先解码,以选择访问4个Block RAM之一。尽管预解码延长了访问时间,但较大RAM每次访问的功耗却与单个Block RAM大致相同。 低功耗研究 1 降低电压 降低电压是减少功耗的最有效方式之一,而且随之而来的性能下降对许多并不要求最高性能的设计来说是可以接受的。不过,目前FPGA的工作电压范围很小,在某些电压敏感型电路上还不能使用。 在Xilinx研究实验室,CLB电路被重新设计成能在降低许多的电压下工作,以便在较低功耗情况下提供宽裕的性能权衡余地。例如,对于90nm工艺,电压下降200mV可降低功耗40%,最高性能损失25%;电压下降400mV可降低功耗70%,最高性能损失55%。 2 细粒度电源开关 可编程逻辑设计特有的开销之一是并非所有片上资源都用于给定的设计。可是,未使用的资源保持供电状态,并以漏电功耗的形式增加了总功耗。模块级电源开关可分别关掉未使用模块的供电。每个模块通过一个电源开关耦接到电源。开关闭合时,该模块工作。开关断开时,该模块从电源有效断开,从而使漏电功耗降到1/50~1/100。电源开关的粒度可以小到单个CLB和Block RAM。在设计中,这些电源开关可以通过配置比特流进行编程,也可由用户直接控制或通过访问端口控制。实际设计的基准测试结果表明,细粒度电源开关可减少漏电功耗30%。 3 深睡眠模式 便携电子产品的主要要求之一是器件空闲时功耗极低或无功耗。以Xilinx Spartan-3A FPGA为例,该芯片可通过进入休眠模式来达到此目的,这需要外部控制,苏醒缓慢,且不能恢复FPGA状态。设计动态控制上述细粒度电源开关,令其关闭所有内部模块供电,仅保留配置和电路状态存储组件为供电状态。这样形成的状态是一种深睡眠模式,其漏电功耗为额定功耗的1%~2%,保存FPGA状态,退出此模式仅需数微秒。 4 异构架构 电路的最高时钟频率取决于其时序关键型路径的延迟。非关键型路径的速度可以较慢而不影响整体芯片性能。在大型系统中,可以有几个速度关键型模块(如处理器中的数据通路),其他模块可以是非关键型(如缓存)。 当今的FPGA就功耗和速度而言是相同的;每个CLB 均有同样的功耗和速度特性。异构架构可降低功耗,这种架构包含一些低功耗(同时也较慢)的模块,方法是在低功耗模块中实现非关键型模块。这样做不影响整体芯片性能,因为时序关键型模块并未损失性能。 创建异构架构的一种方法是,分配两条核心供电轨,即一条高电压轨(VDDH)和一条低电压轨(VDDL)。FPGA的每个器件用嵌入式电源开关选择这二者之一,并相应采用高速度或低功耗特性。设计的详细时序确定之后,电压选择便告完成,所以只有非关键型模块才应以VDDL供电。 创建异构架构的另一种方法是,将FPGA分成不同的区,并将这些区分别预制为具有高速度和低功耗特性。可以用不同电源电压、不同阈值或通过若干其他设计权衡条件来实现这些区。要避免性能下降,设计工具必须将设计的时序关键型器件映像成高速度区,而将非关键型器件映射成低功耗区。 5 低摆幅信令 随着FPGA容量增加,片上可编程互连的功耗越来越大。减少这种通信功耗的一种有效方法是使用低摆幅信令,其中导线上的电压摆幅比电源电压摆幅低得多。现今,低摆幅信令常见于在高电容性导线(如总线或片外链接)上进行通信的情况。低摆幅驱动器和接收器比CMOS 缓冲器更复杂,所以占用更多芯片面积。但是,随着片上互连逐渐成为总体功耗的较大组成部分,低摆幅信令的功耗优势将证明增加设计复杂性是值得的。当然,FPGA用户不会看到内部信号电压的差异。 除了目前用于现代FPGA设计的能源优化方案,一些用户设计决策也可以产生显著的功耗效益。可以预见,未来的新技术中会有更大胆地遏制功耗的架构解决方案,从而使新的FPGA应用成为可能。 以上便是此次小编带来的“功耗”相关内容,通过本文,希望大家对上述知识具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!

    时间:2020-10-23 关键词: 功耗 指数 FPGA

  • 还在了解什么是低功耗?FPGA低功耗设计详解

    还在了解什么是低功耗?FPGA低功耗设计详解

    功耗是各大设计不可绕过的话题,在各大设计中,我们应当追求低功耗。为增进大家对低功耗的认识,本文将对FPGA低功耗设计予以介绍。如果你对FPGA低功耗相关内容具有兴趣,不妨继续往下阅读哦。 FPGA的功耗高度依赖于用户的设计,没有哪种单一的方法能够实现这种功耗的降低。目前许多终端市场对可编程逻辑器件设计的低功耗要求越来越苛刻。在消费电子领域,OEM希望采用FPGA的设计能够实现与ASIC相匹敌的低功耗。 尽管基于90nm工艺的FPGA的功耗已低于先前的130nm产品,但它仍然是整个系统功耗的主要载体。此外,如今的终端产品设计大多要求在紧凑的空间内完成,没有更多的空间留给气流和大的散热器,因此热管理、功率管理继续成为FPGA设计的一个重要课题。 采用FPGA进行低功耗设计并不是一件容易的事,尽管有许多方法可以降低功耗。FPGA的类型、IP核、系统设计、软件算法、功耗分析工具及个人设计方法都会对产品功耗产生影响。值得注意的是,如果使用不当,有些方法反而会增加功耗,因此必须根据实际情况选择适当的设计方法。 FPGA设计的总功耗包括静态功耗和动态功耗两个部分。其中,静态功耗是指逻辑门没有开关活动时的功率消耗,主要由泄漏电流造成的,随温度和工艺的不同而不同。静态功耗主要取决于所选的FPGA产品。 动态功耗是指逻辑门开关活动时的功率消耗,在这段时间内,电路的输入输出电容完成充电和放电,形成瞬间的轨到地的直通通路。与静态功耗相比,通常有许多方法可降低动态功耗。 采用正确的结构对于设计是非常重要的,最新的FPGA是90nm的1.2 V器件,与先前产品相比可降低静态和动态功耗,且FPGA制造商采用不同的设计技术进一步降低了功耗,平衡了成本和性能。这些90nm器件都改变了门和扩散长度,优化了所需晶体管的开关速率,采用低K值电介质工艺,不仅提高了性能还降低了寄生电容。结构的改变,如增强的逻辑单元内部互连,可实现更强大的功能,而无需更多的功耗。StraTIx II更大的改变是采用了六输入查找表(LUT)架构,能够通过更有效的资源利用,实现更快速、低功耗的设计。 除常规的可重配置逻辑外,FPGA正不断集成更多的专用电路。最先进的PLD就集成了专门的乘法器、DSP模块、可变容量RAM模块以及闪存等,这些专用电路为FPGA提供了更加高效的功能。总体上看,采用这些模块节约了常规逻辑资源并增加了系统执行的速度,同时可以减少系统功耗。因此更高的逻辑效率也意味着能够实现更小的器件设计,并进一步降低静态功耗和系统成本。 不同供应商所提供的IP内核对于低功耗所起的作用各有侧重。选择正确的内核对高效设计至关重要,有的产品将注意力集中在空间、性能和功耗的平衡上。某些供应商提供的IP内核具有多种配置(如Altera的Nios II嵌入式处理器内核采用快速、标准和经济等三种版本),用户可根据自己的设计进行选择。例如,如果一个处理器在同一个存储分区中进行多个不同调用,则采用带板载缓存的Nios II/f就比从片外存储器访问数据的解决方案节约更多功耗。 如果用户能够从多种I/O标准中进行选择,则低压和无端接(nON-terminated)标准通常利于降低功耗,任何电压的降低都会对功耗产生平方的效果。静态功耗对于接口标准特别重要,当I/O缓冲器驱动一个高电平信号时,该I/O为外部端接电阻提供电压源;而当其驱动低电平信号时,芯片所消耗的功率则来自外部电压。差分I/O标准(如典型值为350 mV的低开关电压LVDS)可提供更低的功耗、更佳的噪声边缘、更小的电磁干扰以及更佳的整体性能。 利用FPGA的结构来降低功耗还有赖于所使用的软件工具。用户可以从众多综合工具经销商那里进行选择,那些能够使用专用模块电路并智能地设计逻辑功能的综合工具,将有助于用户降低动态功耗。此外,根据自己的设计,用户可以尝试以面积驱动来替代时序驱动的综合,以降低逻辑电平。不同综合工具的选项有所差别,因此应当了解哪个“开关”或“按钮”是必需的。同样重要的还有布局与布线工具,一旦用户选择了某种特殊的FPGA,他就必须采用该供应商的布局布线工具。由于互连会潜在地增加功耗,因而仔细进行布局规划和设计尤为重要。即便设计不需要很快完成,设计者也希望尽可能地加快进度。诸如Altera LogicLock之类的工具所增加的设计功能可使用户在器件定制区域内进行逻辑分组布局,因而一旦用户找到一种高效布局,就能很快改编为他用。  为使设计消耗最小的动态功耗,可采用优化的算法来降低多余和无意义的开关活动,例如具有许多不同状态的状态机。一个二进制编码的状态机将通过触发器产生多个比特并形成组合逻辑,采用格雷码或One-hot编码可降低从一个状态到另一个状态的开关次数。同时工程师在实现降低功耗的目标时,需要平衡格雷码所需的额外组合逻辑,或One-hot编码所需的附加触发器。 数据保护和操作数隔离是另一种降低功耗的技术。在这种技术中只要没有输出,数据路径算子的输入都会保持稳定。输入的开关行为会波及其它电路,因此即使在忽略输出的情况下也能消耗功率,例如某个集成了基本算术逻辑单元(ALU)的设计。通过保持输入的稳定性(停止开关),开关动作的数量就能得到减少。这种方法为每个模块的输入端提供了保护逻辑(触发器和/或门电路),减少了开关动作,从而降低了系统整体的功耗。 在时钟网络上减少开关动作也可大幅降低功耗。多数可提供独立全局时钟的FPGA是分割为几部分的,若一个设计间歇地采用部分逻辑,就可关掉其时钟以节省功耗。最新FPGA中的PLL可禁止时钟网络并支持时钟转换,因此既可关掉时钟也可转换为更低频率的时钟。更小的逻辑部分能够潜在地使用本地/局域时钟来替代全局时钟,因此不必使用不相称的大型时钟网络。 对易受干扰的设计而言,减少意外的逻辑干扰可大幅降低动态功耗。意外干扰是在组合逻辑输出时产生的暂时性逻辑转换。减少这种效应的一个方法是重新考虑时序设计,以平衡时序关键路径和非关键路径间的延迟。用户可在软件工具的帮助下应用这种方法,例如某软件可通过组合逻辑移动寄存器的位置,以实现平衡时序。另外一种方法是引入流水线结构,以减少组合逻辑深度,流水线还有助于增加速度。第二种方法对无意外干扰设计的效果不明显,相反还可能增加功耗。 方便快捷的精确功率估算工具,不仅有助于设计工程师对功率进行定量评估,同时也有助于加快产品设计进度。如果在初期功率评估工具和数据表中没有实际数据,设计工程师就不能在设计阶段走得更远。获取初期评估数据工具,可使设计人员在设计开始之前就进行功率估算。此外作为设计规划,工程师可将布局和布线设计加载到更精确的功率评估持续当中,从而得到一个更精准的功耗描述。最好的评估工具可使仿真文件无缝集成到电源工具中,因而能够获得开关功率的精确描述;若不能进行仿真,则该工具也能自动给出FPGA设计的评估参数。 以上便是此次小编带来的“功耗”相关内容,通过本文,希望大家对FPGA低功耗设计具备一定的了解。如果你喜欢本文,不妨持续关注我们网站哦,小编将于后期带来更多精彩内容。最后,十分感谢大家的阅读,have a nice day!

    时间:2020-10-23 关键词: 功耗 指数 FPGA

  • 能定义低功耗通用FPGA的全新Certus-NX,你了解吗?

    能定义低功耗通用FPGA的全新Certus-NX,你了解吗?

    你知道能定义低功耗通用FPGA的全新Certus-NX吗?中国北京——2020年6月25日——莱迪思半导体公司(NASDAQ:LSCC),低功耗可编程器件的领先供应商,今日宣布推出全新Lattice Certus™-NX系列FPGA。该系列器件在通用FPGA市场上拥有领先的IO密度,每平方毫米的IO密度最高可达同类FPGA竞品的两倍。Certus-NX FPGA拥有卓越的低功耗、小尺寸、高可靠性和瞬时启动等特性,支持高速PCI Express(PCIe)和千兆以太网接口,可实现数据协同处理、信号桥接和系统控制。Certus-NX FPGA面向从自动化工业设备中的数据处理到通信基础设施中的系统管理等一系列应用。Lattice Nexus™是业界首个基于28 nm FD-SOI工艺的低功耗FPGA技术平台,而Certus-NX器件是在该平台上开发的第二款FPGA系列产品。Certus-NX的发布标志着莱迪思在新产品开发战略的指导下仅用六个月就发布了第二款产品系列。 Linley Group首席分析师Linley Gwennap表示:“Certus-NX拥有使之脱颖而出的独特创新功能。与门数相近的其他FPGA竞品相比,莱迪思提供更小的封装尺寸、更高的IO密度和更低的功耗。” 莱迪思产品营销总监Gordon Hands表示:“得益于莱迪思Nexus开发平台在系统、架构和电路层面的创新,我们能够加速推出新产品,在客户评估其应用的性能和功耗要求时为其提供更多选择方案。Certus-NX提供并行处理能力和灵活的IO支持,可实现创新的器件设计,重新定义开发人员对通用FPGA的期待。” 随着工业自动化和5G等技术的发展,开发人员开始寻求为网络边缘应用添加处理和互连功能。为了顺应这种趋势,这些器件需要采用支持PCIe和千兆以太网等常见接口的低功耗处理硬件。设备开发人员还需要易于使用、统一的开发平台,提供将产品快速推向市场所需的硬件、软件和IP。 Logic Fruit Technologies公司首席执行官Sanjeev Kumar表示:“作为一家FPGA设计公司,我们看到PCIe等串行协议和以太网广泛应用于5G和IoT等系统的芯片连接。莱迪思最新一代Certus-NX FPGA不仅支持这些标准,且在提供高密度I/O的同时,极大减少功耗和整个设备的设计尺寸。这些FPGA有助于我们快速适应客户不断变化、充满挑战的互连和性能方面的需求。” 莱迪思Certus-NX FPGA的主要特性包括: ·尺寸缩小多达3倍——Certus-NX FPGA可以轻松应用于小尺寸设计中,对整体设计尺寸的影响极小。例如,Certus-NX FPGA可以在36 mm2内实现完整的PCIe解决方案。即便是使用Certus-NX FPGA系列的最小封装,其每平方毫米I/O密度仍是同类FPGA竞品的两倍,为桥接应用提供更大的设计灵活性和强大的支持。 ·可靠的IO连接性能——Certus-NX的开发人员可以使用莱迪思完善的IP库。可以在Certus-NX上使用的主要IP包括: o1.5 Gbps差分IO,性能超过竞品FPGA最高可达70% o5 Gbps PCIe、1.5 Gbps SGMII和1066 Mbps DDR3。开发人员可以在Certus-NX开发板上测试这些IP模块,快速实现在Certus-NX FPGA目标应用上常用的接口。 ·强大的认证和加密——为了保护器件的位流免于未经授权的访问/更改/复制,Certus-NX FPGA支持AES-256加密和领先的ECDSA认证,可在设备的整个生命周期内提供保护。 ·功耗降低多达4倍——Certus-NX FPGA的可编程基体偏压功能可根据用户的应用需求,可选择高性能或低功耗工作模式。与同类FPGA相比,该系列器件的功耗可降低多达4倍。 ·瞬时启动——全新器件还通过SPI存储器实现超快的器件配置,其速度最该可达同类FPGA竞品的12倍。单个I/O配置只需3 ms,整个器件启动时间仅为8-14 ms(取决于器件大小)。 ·可靠性高——对于安全性要求极高的工业和汽车应用而言,可靠的性能至关重要。这些应用中的器件必须达到预期的性能,以避免对人员和财产造成损害。Certus-NX FPGA的抗软错误率(SER)性能最高为同类FPGA的100倍。Certus-NX FPGA为工业温度级器件。它还支持片上ECC和SEC。 ·易于使用/设计——Certus-NX FPGA支持易于使用的LatticeRadiant®软件,它提供了统一的FPGA设计环境,集成了优秀的工具和功能,可帮助用户快速高效地开发应用。以上就是能定义低功耗通用FPGA的全新Certus-NX解析,希望能给大家帮助

    时间:2020-10-22 关键词: 莱迪思 certus-nx FPGA

  • 你了解过基于VGA接口之如何实现FPGA吗?

    你了解过基于VGA接口之如何实现FPGA吗?

    你知道2基于VGA接口之如何实现FPGA吗?FPGA是单片机的重要组成部分之一,而VGA更是FPGA的常见通用接口。本文就以VGA接口为例,给大家讲解关于基于VGA接口之如何实现FPGA。 VGA 输出的信号一共有 5 个有效信号,分别是: VGA_RED(红色端子),VGA_BLUE(蓝色端子),VGA_GREEN(绿色端子),VGA_HSYNC(水平同步端子),VGA_VSYNC(垂直同步端子)。 如果采用水平扫描的方法,且为 640 x 480 的分辨率,我们需要: 时钟频率为 25MHz(或者也可以采用 28.3MHz,参考 VGA 文档)。 水平同步端子输出信号包含 4 个阶段,每个周期共占用 800 个时钟周期。 脉冲周期(用于同步):96 周期,输出低电平 前端周期(用于缓冲):48 周期,输出高电平 显示周期(用于显示):640 周期,每一个时钟周期显示一个像素点的内容,读取红、蓝、绿色端子的信息作出显示。同步端子输出高电平。 后端周期(用于缓冲):16 周期,输出高电平 垂直同步端子输出信号也包含 4 个阶段,由于是水平扫描,所以在垂直同步中的显示周期中,水平同步端子将对其正确的进行显示,它包含了 480 个水平同步周期,扫描 480 行的内容。也可以说一个垂直同步周期中,显示出一个屏幕的内容。 垂直同步端子的脉冲周期为 2 个水平同步周期;后端周期为 29 个水平同步周期;显示周期为 480 个水平同步周期;前端周期为 10 个水平同步周期,故总周期数为 [latex]T=(480+2+10+29) * (96+16+640+48) = 416800[/latex]cycles 刷新频率为 [latex]f = frac {25MHz} {416800} = 59.98 Hz[/latex] 即屏幕的刷新频率约为 60Hz。若需采用其它的分辨率,只需改变显示周期长度以及为该模块提供不同的时钟周期即可。显示周期等参数都在 vga_header.v 文件中定义。编写过程中,如果出现屏幕提示类似于“显示超出范围”的提示语,则说明同步周期不正确,改正同步周期长度即可。 为了实现同步信号的准确计时,我们采用了有限状态机对它进行控制。以下源代码可供参考: always @ (negedge clk) begin /* Vertical Sync. Signal */ case (v_state) 0: begin /* TPW 同步脉冲周期*/ if (cv_thres == 0) begin v_sync <= 0; /* 信号置低*/ cv_en <= 0; /* 计数器继续计数 */ end else begin v_state <= 1; /* 进入下一状态*/ cv_en <= 1; /* 计数器清零 */ cv_value <= `VGA_SYNC_V_POR_BACK-1; /* 计数器置位 */ v_sync <= 1; /* 同步信号置高 */ end end 1: begin /* TFP 前端周期 */ if (cv_thres == 0) begin v_sync <= 1; /* 同步信号置高 */ v_addr <= 0; /* 垂直地址清零 */ cv_en <= 0; /* 计数器计数*/ end else begin v_state <= 2; /* 进入下一状态 */ cv_value <= `VGA_SYNC_V_DISPLAY-1; /* 计数器置位 */ cv_en <= 1; /* 计数器清零 */ v_sync <= 1; /* 垂直同步信号置高 */ h_state <= 0; /* 置水平同步状态 */ end end 2: begin /* TDISP显示周期 */ if (cv_thres == 0) begin v_sync <= 1; /* 垂直同步信号置高 */ cv_en <= 0; /* 计数器计数 */ end else begin v_state <= 3; /* 进入下一状态 */ cv_value <= `VGA_SYNC_V_POR_FRONT-1; /* 计数器置位 */ cv_en <= 1; /* 计数器清零 */ v_sync <= 1; /* 垂直同步信号置高 */ end end 3: begin /* TBP后端周期 */ if (cv_thres == 0) begin v_addr <= 0; /* 垂直地址清零 */ v_sync <= 1; /* 垂直同步信号置高 */ cv_en <= 0; /* 计数器计数 */ end else begin v_state <= 0; /* 进入下一状态,即状态0 */ cv_value <= `VGA_SYNC_V_PUL_WIDTH-1; /* 计数器置位 */ cv_en <= 1; /* 计数器清零 */ v_sync <= 0; /* 垂直同步信号置低 */ end end endcase /* ...... * 通过该模块生成了水平、垂直同步信号和对应的水平地址和垂直地址后,使用垂直地址和水平地址读取对应的像素点信息,分为两种: a. 图形模式:图形模式是一个一个的像素点,我们采用了 BlockRAM 来保存这些像素点信息。由于空间有限,我们只能保存 320 x 240 个像素点,并扩大输出范围,进行单色 640 x 480 输出,否则将因为空间不够而编译不通过。如果我们可以采用板上内置的 DDR 模块就可以拓展其规模,而且板上的 DDR SDRAM 具有 64M,是镁光生产的模块,在 Xilinx 提供的 IPCore 中有对应的模块,只需要提供建立后提供相对应的管脚即可完成输出。由于 D/A 模块无法做到(见下面),这个修改并没有太大的意义,所以我们没有做到这个工程中去。 b. 文字模式:文字模式支持的是 80 x 30 个文字的显示,我们依然采用了 BlockRAM 来保存这些文字,每个文字占用 3 个字节,分别表示其 ASCII 码(1 B)和 16位 RGB 信息(5-6-5格式,2B),文字后,再通过字库 TextFontROM 模块生成对应的像素点信息。读出某一行中应该显示的字符,而后显示在屏幕上。由于内存占用并不像图形模式那么大,我们采用了 640 x 480 格式的输出。以上就是基于VGA接口之如何实现FPGA解析,希望能给大家帮助。

    时间:2020-10-21 关键词: 接口 vga FPGA

  • FPGA 电源部分电路原理,你值得收藏!

    FPGA 电源部分电路原理,你值得收藏!

    U22 是电可擦除 ROM,用于存放 AS 下载后的数据,使得 FPGA 的程序段掉电也能得以保存,DATA 端是数据读取端,用于读取 ROM 内数据。DCLK 为时钟端口,用于接收时钟信号进行同步传输。nCS 是片选端口,用于接收片选信号表示对该芯片进行通讯。ASDI 为 AS 下载数据输入端,用于接收 AS 下载数据。VCC 与 GND 分别为电源端口与地端口,分别接 3.3V 与数字地。 FPGA 电源设计部分电路原理图如图 5-1 所示: Header 18X2 为 18 排 2 列排阵,两组排阵分别与 PIN 口、3.3V 电源、数字地相连,提供了可动的机制,使得 PIN 口可根据需要用排线与目标相连,打到信号传输的目的。而 3.3V 电源以及数字地针口则可以根据需要,用排线为目标提供逻辑高电平或逻辑低电平。 U21D 为 FPGA 芯片的时钟信号接收部分,通过网络标号“CLK0~3”与对应的时钟信号端口相连。 U21C 为 FPGA 芯片的供电及接地部分,含有“GND”字样的是“地”端口,与数字地相连,VCCIO1~4 为 I/O 口供电端口,采用 3.3V 电源供电,通过网络标号“+3.3V”与 3.3V 电源端口相连。VCCA_PLL1、VCCA_PLL2、VCCINT 为内部运算器和输入缓冲区的供电端口,采用 1.5V 电源供电,通过网络标号“+1.5V”与 1.5V 电源端口相连。 U21B 为 JTAG 与 AS 下载部分,TMS、TCK、TD1、TD0 分别为 JATAG 下载方式的模式选择端、时钟信号端、数据输入端、数据输出端。DATA0 为 AS 下载的数据端口,MSEL0、MSEL1、nCE、nCEO、CONF_ DONE、nCONFIG、nSTATUS 端口按照典型接法相连。值得注意的是:无论 AS 还是 JTAG 都是通过 JTAG 标准通讯,AS 下载一般是下载 POF 到 PROM(flash)里,重新上电仍然可以加载,JTAG 下载是通过 JTAG 口将 sof 文件直接下载到 FPGA 内,一般是临时调试用的,掉电就丢失了。

    时间:2020-10-20 关键词: 电源 串口 FPGA

  • 硬件设计对于LED大屏幕需求提升具有很大的影响

    硬件设计对于LED大屏幕需求提升具有很大的影响

    通常在 LED 大屏幕的显示过程中,读取数据频繁,且随着显示面积的增加与色彩变化的丰富,对数据输出速度的要求越来越高。普通方式读取一个字节的 RAM 数据,至少需要两个机器周期,即 24 T (时钟周期)。而使用 SPI 方式,数据的输出速度由 SPSCK(最高可设置为 f OSC 的 1/ 4) 决定,而普通方式读 RAM 的速度只有 1/ 24 f OSC ,即在 SPI 模式下,此 LED 大屏幕电路的数据输出速度最大可提高 6 倍。通过此方法对输出电路进行改造,可极大地使原有控制系统满足数据高速输出的要求。本文给出的例子虽是基于 LED 大屏幕应用的,但在 LCD 或是其他对数据有高速输出要求的系统中,同样具有借鉴运用意义。 1引 言 在 LED 大屏幕等显示系统对数据输出速度的要求日益提高的背景下,当前对控制设备进行改造的过程中,首选的办法是更换更高速率的微处理器,而对硬件电路的挖潜往往容易被忽视。 在实践运用中,建议应先考虑在原有的系统上进行硬件电路改造,如仍不能满足显示要求,可再考虑更换高速率微处理器及用 FPGA/ CPLD 器件进行输出电路替代处理的方案。本文以 LED 大屏幕控制电路为例,提出了一种在硬件电路改造上提高显示数据输出速度的实现办法。 2 数据输出电路的优化基理 由 LED 大屏幕的显示原理可知,一个数据显示在 LED 大屏幕的过程分为:从存储器中读出数据与送入到 LED 板中显示两个步骤。这一过程需要产生如下控制信号:数据地址送入存储器,存储器读信号,锁存器开通及 LED 单元板中的行信号、HC595 的 SCK 移位、RCK 锁存、E 使能信号等。这些必需信号的产生增加了数据显示过程的时间。如果能够复用其中的信号,势必减少这一过程的延时。在 LED 显示系统中,常把显示数据按行存储到外部 ROM/ RAM 中的办法即是一例。该办法设定存储器的高位并接到 L ED 的行控制线上,数据按行储存,送入数据地址后,按行读出数据,并同时开通了行控制信号。下面的信号复用方案也是类似的原理。 图 1  信号复用示例 在考查读外存的 MOVX 命令时发现:执行该命令时可产生读信号(RD # ),即读外存时不但不需要另外去产生读信号(RD # ),而且还可以将此信号供给锁存器 74HC273 及 LED 板上的移位信号 SCK 使用。这里要注意的是:在数据读出后,SCK 信号才送出,所以 RD # 信号不可直接做 SCK 信号使用,必须做延时处理(最小延时必须要略大于 RAM 的读写时间 tRC 与 74HC273 的数据锁存延时 tTL H 之和)。 而当连续读出一块存储器数据时,需要通过程序产生新的地址赋值给数据口, 而这些地址都是顺序变化的。基于这一特点,设计采用计数器电路用来保存读数据时的初始地址,利用外部供给的脉冲,只要对计数器的保存地址进行顺序增加,即可将数据连续读出。 单片机 ALE 脚或是利用串行口工作方式也会产生一定频率的脉冲,但没有 SPI 方式下产生的脉冲频率高,且这两种方式的使用均有一定的限制,而启动 SPI 方式比较方便。串行外围接口(Serial Perip heral Interface , SPI) 总线系统是一种同步串行外设接口,是 Motorola 首先在其 MC68HCXX 系列处理器上定义的。SPI 系统有 4 个 I/ O 脚,它们是串行时钟 SPSCK、主机输入 / 从机输出数据线 MISO、主机输出 / 从机输入数据线 MOSI 和低位有效的从机选择数据线 SS.SP2SCK 用于同步数据从 MOSI 输入和 MISO 的输出传送。通过对 SPI 控制寄存器 SPCR 的设置,SPSCK 的频率最高可以达到振荡器频率( fOSC )的 1/ 4。 因为 SPI 模式可方便产生出较高频率脉冲的优点,即采用 SPSCK 作为计数器的脉冲,利用计数器对存储器产生连续变化的地址,实现对数据的高速读出。并且 SPSCK 信号经过变换与延时处理,可同时供给 LED 做 SCK 移位信号使用。 图 2  SPI 在读取存储器的运用 3 SPI 运用的实现过程 从上文可以得到这样的启示:在 LED 控制电路的设计中,可借助于 SPI 模式读取数据,即增加一块 SPI 模式的 FLASH 存储器,一方面可以保存重要文档,另一方面可以利用 SPSCK 产生的信号,通过计数器电路实现对存储器高速读数据,并且复用此信号产生屏幕显示的控制信号。在给定了输出数据的首地址并启动 SPI 后,此方式使数据的读出到屏幕显示这一过程自动进行,同一信号源的全硬件方式大大减少了以往分别产生各控制信号方式时的衔接延时。图 3 为 SPI 在 LED 大屏幕控制电路中的运用示例。 图 3  SPI 模式下的 LED 大屏幕控制电路图 级联计数器的个数根据 RAM 的容量大小,即地址线的数目来确定。微处理器通过驱动器连接 SPI 串行存储器, 驱动器可以选择 7407 或 7417 的型号。RM_MODE 用来区别不同的读写操作方式。当 RM_MODE = 1 时,是普通读写外部存储器的方式,当 RM_MODE = 0 时,就可以让主机作为主器件,串行 FLASH 存储器作为从器件,两者以 SPI 方式进行通信,利用此时产生的 SPSCK 信号对存储器进行高速读数据操作。同时 SPSCK 信号经过变换与延时处理,可以供给 LED 做 SCK 移位信号用。在计数脉冲的输入端,可以使用跳线做加、减方式的选择处理。当脉冲接于计数器 UP 端时, 为加计数方式, 接于 DOWN 时,为减计数方式。图 3 也可扩展并接多组计数器,多组 RAM. 减计数器方式的运用大大增强了数据输出的灵活性。在 LED 大屏幕显示中,加、减计数器配合使用,可以使相同一块控制卡输出数据的显示长度提高一倍。当使用减计数器方式时,为了与使用加方式时 LED 大屏幕上显示的图文一致,必须对与减计数器连接的 RAM 的数据进行上、下半屏交换处理,并且在输出时要在程序中改变数据的起始点,给出的行控制信号(RCK) 也应做倒序处理(见图 4)。 图 4  加、减法模式下的数据组织与显示 4 本方式使用时的注意事项 本方式使用时要注意计数器及 RAM 芯片的读写速度必须与 SPSCK 相匹配。SPI 方式的速率比较高,电路各器件读取速度越高,数据出错的几率就会越小。 此外还有其他一些原因也会引起读数据时的错误。如软件编写不当导致数据地址超出 RAM 空间,电路设计未重视计数器高速工作时发热对周边器件与布线带来的影响等。 使用 SPSCK 信号读取外部储存器时,同样会产生 SPI 主、从模式下的溢出错误,即连续传输多个数据时, 后一个数据覆盖了前一个数据而产生的错误。这种错误产生的原因是从器件的传输标志 SPIF 从相对于主器件的传输标志 SPIF 主有一定的滞后,在主器件连续发送数据时,会导致从器件的传输标志和主器件下一个数据的传输标志相重叠,而利用 SPSCK 触发计数器使地址递加读取数据,第一个收到的数据也会被覆盖。 这种传输错误可以用软、硬件的方法进行改进。在本文的设计中,后期在软件编写上采用了如下解决方法:先启动 SPI 模式,再进入计数器读并行 RAM ,浪费一个时序。或是在 RAM 中存入数据时,全部存到它后一位的地址单元上,再用 SPI 方式产生的脉冲去读 RAM ,就可得到正确的数据。 理论上本文方式可使显示数据的输出速度高至 fOSC 的 1/ 4 ,但实际运用时却受到了 RAM、锁存器等输出电路器件的参数限制。SPSCK 的速率设定要根据所选择 RAM 的参数确定,即要满足 RAM 最小的地址有效时间与数据有效时间的要求。 图 5  主、从 SPIF 时序下的数据溢出错误

    时间:2020-10-19 关键词: LED 单片机 硬件电路 FPGA

  • 机器学习实战:GNN(图神经网络)加速器的FPGA解决方案

    机器学习实战:GNN(图神经网络)加速器的FPGA解决方案

    1. 概述 得益于大数据的兴起以及算力的快速提升,机器学习技术在近年取得了革命性的发展。在图像分类、语音识别、自然语言处理等机器学习任务中,数据为大小维度确定且排列有序的欧氏(Euclidean)数据。然而,越来越多的现实场景中,数据是以图(Graph)这种复杂的非欧氏数据来表示的。Graph不但包含数据,也包含数据之间的依赖关系,比如社交网络、蛋白质分子结构、电商平台客户数据等等。数据复杂度的提升,对传统的机器学习算法设计以及其实现技术带来了严峻的挑战。在此背景之下,诸多基于Graph的新型机器学习算法—GNN(图神经网络),在学术界和产业界不断的涌现出来。 GNN对算力和存储器的要求非常高,其算法的软件实现方式非常低效,所以业界对GNN的硬件加速有着非常迫切的需求。我们知道传统的CNN(卷积神经网络网络)硬件加速方案已经有非常多的解决方案;但是,GNN的硬件加速尚未得到充分的讨论和研究,在本文撰写之时,Google和百度皆无法搜索到关于GNN硬件加速的中文研究。本文的撰写动机,旨在将国外最新的GNN算法、加速技术研究、以及笔者对GNN的FPGA加速技术的探讨相结合起来,以全景图的形式展现给读者。 2. GNN 简介 GNN的架构在宏观层面有着很多与传统CNN类似的地方,比如卷积层、Polling、激活函数、机器学习处理器(MLP)和FC层等等模块,都会在GNN中得以应用。下图展示了一个比较简单的GNN架构。 图 1:典型的GNN架构 但是, GNN中的Graph数据卷积计算与传统CNN中的2D卷积计算是不同的。以图2为例,针对红色目标节点的卷积计算,其过程如下: · Graph卷积:以邻居函数采样周边节点特征并计算均值,其邻居节点数量不确定且无序(非欧氏数据)。 · 2D卷积:以卷积核采样周边节点特征并计算加权平均值,其邻居节点数量确定且有序(欧氏数据)。 图 2: Graph卷积和2D卷积 3. GraphSAGE算法简介 学术界已对GNN算法进行了非常多的研究讨论,并提出了数目可观的创新实现方式。其中,斯坦福大学在2017年提出的GraphSAGE是一种用于预测大型图中动态新增未知节点类型的归纳式表征学习算法,特别针对节点数量巨大、且节点特征丰富的图做了优化。如下图所示,GraphSAGE计算过程可分为三个主要步骤: 图 3:GraphSAGE算法的视觉表述 · 邻节点采样:用于降低复杂度,一般采样2层,每一层采样若干节点 · 聚合:用于生成目标节点的embedding,即graph的低维向量表征 · 预测:将embedding作为全连接层的输入,预测目标节点d的标签 为了在FPGA中实现GraphSAGE算法加速,我们需要知悉其数学模型,以便将算法映射到不同的逻辑模块中。下图所示的代码阐述了本算法的数学过程。 图 4:GraphSAGE算法的数学模型 对于每一个待处理的目标节点xv,GraphSAGE 执行下列操作: 1)通过邻居采样函数N(v),采样子图(subgraph)中的节点 2)聚合被采样的邻节点特征,聚合函数可以为mean()、lstm()或者 polling()等 3)将聚合结果与上一次迭代的输出表征合并,并以Wk做卷积 4)卷积结果做非线性处理 5)迭代若干次以结束当前第k层所有邻节点的处理 6)将第k层迭代结果做归一化处理 7)迭代若干次以结束所有K层采样深度的处理 8)最终迭代结果zv即为输入节点xv的嵌入(embedding) 4. GNN加速器设计挑战 GNN的算法中涉及到大量的矩阵计算和内存访问操作,在传统的x86架构的服务器上运行此算法是非常低效的,表现在速度慢,能耗高等方面。 新型GPU的应用,可以为GNN的运算速度和能效比带来显著收益。然而GPU内存扩展性的短板,使其无法胜任海量节点Graph的处理;GPU的指令执行方式,也造成了计算延迟过大并且不可确定,无法胜任需要实时计算Graph的场景。 如上所述种种设计挑战的存在,使得业界急需一种可以支持高度并发实时计算、巨大内存容量和带宽、以及在数据中心范围可扩展的GNN加速解决方案。 5. GNN加速器的FPGA设计方案 Achronix 公司推出的 Speedster7t系列高性能FPGA,专门针对数据中心和机器学习工作负载进行了优化,消除了CPU、GPU以及传统 FPGA 存在的若干性能瓶颈。Speedster7t FPGA 基于台积电的 7nm FinFET 工艺,其架构采用革命性的新型 2D 片上网络 (NoC),独创的机器学习处理器矩阵 (MLP),并利用高带宽 GDDR6 控制器、400G 以太网和 PCI Express Gen5 接口,在保障ASIC 级别性能的同时,为用户提供了灵活的硬件可编程能力。下图展示了Speedster7t1500高性能FPGA的架构。 图5: Achronix Speedster7t1500 高性能FPGA 架构 如上所述种种特性,使得Achronix Speedster7t1500 FPGA器件为GNN加速器设计中所面临的各种挑战,提供了完美的解决方案。 表1:GNN设计挑战与Achronix的Speedster7t1500 FPGA解决方案 5.1 GNN加速器顶层架构 本GNN加速器针对GraphSAGE进行设计,但其架构具有一定的通用性,可以适用于其他类似的GNN算法加速,其顶层架构如下图所示。 图6: GNN加速器顶层架构(来源:Achronix原创) 图中GNN Core为算法实现的核心部分,其设计细节将在下文展开谈论;RoCE-Lite为RDMA协议的轻量级版本,用于通过高速以太网进行远程内存访问,以支持海量节点的Graph计算,其设计细节将在本公众号的后续文章中讨论;400GE以太网控制器用来承载RoCE-Lite协议;GDDR6用于存放GNN处理过程中所需的高速访问数据;DDR4作为备用高容量内存,可以用于存储相对访问频度较低的数据,比如待预处理的Graph;PCIe Gen5x16提供高速主机接口,用于与服务器软件交互数据;上述所有模块,皆通过NoC片上网络来实现高速互联。 5.2 GNN Core 微架构 在开始讨论GNN Core 微架构之前,我们先回顾一下本文第3节中的GraphSAGE算法,其内层循环的聚合以及合并(包含卷积)等两个操作占据了算法的绝大部分计算和存储器访问。通过研究,我们得到这两个步骤的特征如下: 表2:GNN算法中聚合与合并操作对比 可以看出,聚合操作与合并操作,其对计算和存储器访问的需求完全不同。聚合操作中涉及到对邻节点的采样,然而Graph属于非欧氏数据类型,其大小维度不确定且无序,矩阵稀疏,节点位置随机,所以存储器访问不规则并难以复用数据;在合并操作中,其输入数据为聚合结果(节点的低维表征)以及权重矩阵,其大小维度固定,存储位置规则线性,对存储器访问不存在挑战,但是矩阵的计算量非常大。 基于以上分析,我们决定在GNN Core加速器设计中用两种不同的硬件结构来处理聚合操作与合并操作,功能框图如下图所示: 图7: GNN Core功能框图(来源:Achronix原创) 聚合器(Aggregator):通过SIMD(单指令多数据处理器)阵列来对Graph进行邻居节点采样并进行聚合操作。其中的“单指令”可以预定义为mean()均值计算,或者其他适用的聚合函数;“多数据”则表示单次mean()均值计算中需要多个邻居节点的特征数据作为输入,而这些数据来自于子图采样器(Subgraph Sampler);SIMD阵列通过调度器Agg Scheduler做负载均衡;子图采样器通过NoC从GDDR6或DDR4读回的邻接矩阵和节点特征数据h0v,分别缓存在Adjacent List Buffer和Node Feature Buffer之中;聚合的结果hkN(v)存储在Agg Buffer之中。 合并器(Combinator):通过脉动矩阵PE来执行聚合结果的卷积操作;卷积核为Wk权重矩阵;卷积结果通过ReLU激活函数做非线性处理,同时也存储在Partial Sum Buffer中以方便下一轮迭代。 合并的结果通过L2BN归一化处理之后,即为最终的节点表征hkv。 在比较典型的节点分类预测应用中,该节点表征hkv可以通过一个全连接层(FC),以得到该节点的分类标签。此过程属于传统的机器学习处理方法之一,没有在GraphSAGE论文中体现,此设计中也没有包含这个功能。 6. 结论 本文深入讨论了GraphSAGE GNN 算法的数学原理,并从多个维度分析了GNN加速器设计中的技术挑战。作者通过分解问题并在架构层面逐一解决的方法,综合运用Achronix Speedster7t1500 FPGA所提供的竞争优势,创造了一个性能极佳且高度可扩展的GNN加速解决方案。

    时间:2020-10-19 关键词: 机器学习 gnn FPGA

  • 并行工程适用于FPGA电源设计吗?

    并行工程适用于FPGA电源设计吗?

    要想理解和管理FPGA设计师如何在设计周期早期在FPGA上实现高处理状态和低处理状态之间的转换,将显著影响电源设计师优化电源设计和满足系统功耗要求的可选方法。FPGA中的每个电源轨没有要求也没有必要采用独立的电源,因为这样会增加成本,占用太多宝贵的电路板空间。相反,电源设计师可以使用分布式电源网络,由降压稳压器将系统电源降下来,然后分配给各个负载点稳压器再提供每个电压轨。每个稳压器设计提供恒定的输出电压,只要确保输入电压和输出负载电流在设计范围内。 如果设计师可以在开发过程早期就满足基于FPGA的设计,提出的功耗要求和约束条件,那么在系统的最终实现阶段就能形成极具竞争力的优势。然而,根据整个技术文献中这种自我暗示式的反复祷告,今天基于FPGA的系统中还有什么会使得完全遵循这个建议变得不切实际或过于困难呢?尽管能够使用各种开发工具,如专门针对FPGA项目开发的早期功耗预估器和功耗分析器,但对电源设计师来说,在设计过程早期就考虑最坏情况而不是最佳情况的电源系统是有好处的,因为在许多方面仍有太多的不确定性,比如在硬件设计完成和功耗可以测量之前,静态小电流状态与全速工作状态之间的动态负载要求将如何波动。 采用并行工程(CE)技术,可以为在项目中使用FPGA器件的开发团队,提供一种快速方便地在当前设计的处理性能、材料清单(BOM)成本和效率之间寻找和实现最有效平衡的方法吗?理解并行工程如何影响一个团队的设计工作,以及它如何影响开发团队从项目一开始就解决FPGA及系统其余部分的电源要求的能力,都有助于回答这个问题(参考副标题“并行工程”)。 并行工程,是一种有助于设计团队更加快速地发现和解决一起协作产生最终设计的各门科目之间假设脱节问题的机制。任何开发团队在设计开始就完全正确地获得一个复杂系统的全部要求基本上是不可能的——因此尽可能早地发现、判断和放弃假设与设计决策的脱节、并用能够以可能最低的成本指导项目更接近理想结果的条件与决策来代替是更加高效的一种方法。 后期设计阶段和最坏情况下,FPGA电源系统设计的复杂性和潜在后果足以证明采用并行工程方法的合理性吗?为了回答这个问题,我们需要理解:FPGA电源系统设计师面临的设计复杂性和不确定性根源是什么,这些原因如何影响他们在设计电源时必须做出的权衡决策? 复杂性和不确定性 设计团队中的每位成员都在经历复杂性和不确定性的增加——幸运的是,提高集成度和抽象水平多少可以降低一些复杂性和不确定性,并有助于将整体复杂性保持在人类设计师能够理解和应付的范围内。正如任何会在设计后期增加其影响力的科目一样,上游设计假设与决策可能会形成额外的复杂性与不确定性来源,如果能够较早地协调与交流,可以最大程度地减小这些复杂性与不确定性。 电源设计是在复杂性日益增加的系统中这些潜在的下游科目之一。在本例中,让我们从电源设计师的角度看一下复杂性和不确定性的来源。影响电源设计的两个关键FPGA因素是电压和电流要求。 FPGA电压要求趋势正在推升复杂性,因为它们要求日益增多的电源轨。今天的高端FPGA不再只是需要两个电源轨用于内核和I/O单元以及可能第三个电源轨用于辅助功能,而是要求十个以上的外部驱动电源轨。 为什么需要的电源轨数量增加得如此显著呢?SRAM单元可能要求比内部逻辑门稍微高一点的电压,以确保可靠的全速工作,同时还需较低的电压用于待机模式。工业标准会防止不同的I/O单元共享相同的电源轨,从而增加所需的电源轨数量,因为它们可能将不同的I/O单元和物理收发接口锁定到具有不同电源噪声极限和电压值的不同电源。举例来说,以太网工作时的I/O电压可能不同于I2C总线。一种是板上总线,另一种是外部总线,但两者都可以用FPGA实现。减少抖动或提高敏感电路(如低噪声放大器、锁相环、收发器和精密模拟电路)的噪声余量,也可能增加对更多电源轨的需求,因为它们无法与较高噪声元件共享相同的电源轨,即使它们工作在相同的电压。 除了要求日益增多的电源轨外,当前FPGA的工作电压也要比以前的FPGA低,因为这有助于降低功耗,提高集成度,但也增加了复杂性,因为电源必须能够保持越来越严格的电压容差要求(见图1)。举个例子,自从用130nm工艺生产FPGA以来,基于28nm技术节点的FPGA的内核电压纹波容差的公开幅度已经降低了一半还多。误差预算百分比已经从5%下降到3%,并正在向2%迈进。保持电压容差要求与理解并满足FPGA电流要求有关。 图1:经过4代工艺技术节点的发展,平均电压纹波容差下降了一半还多,对电源设计师来说这就是增加复杂性的原因。 FPGA电流特征趋势正在推动复杂性的提高,因为FPGA中更高的密度和包含的外设/功能/IP模块的数量正在呈摩尔定律增长——每两代工艺节点相比,相同面积的硅片所容纳的模块数量基本要翻倍。虽然提供给FPGA的电压是固定的,但每个电压的工作电流不是固定的,会根据FPGA逻辑的实现方法变化而发生波动。 当内部逻辑门块或I/O单元在高利用率和低利用率之间转换时,电流波动异常剧烈。随着FPGA切换到更高的处理速率,消耗电流将增加,电压将趋于下降。一个好的电源设计要防止压降超过电压瞬时门限。同样,当FPGA切换到较低处理速率时,电流消耗将下降,电压将趋于提高,电源设计应防止其超过相应的门限。总之,可能会实质影响电源设计的大量不确定性源自FPGA设计师如何在FPGA上实现系统。 这类不确定性特别影响FPGA系统,部分原因是因为使用FPGA的关键特性之一是,设计师可以创建任何大小的处理资源和任意数量的冗余处理资源,以便与软件可编程处理器相比能用较短的时间和/或较低的功耗解决他们的问题。因此,虽然软件可编程处理器拥有可以同时操作的有限处理资源,但FPGA提供了创建专门的、最优的和定制的处理资源的机会,不过要求定制的电源设计。

    时间:2020-10-15 关键词: 电源 并行工程 FPGA

  • 设计一块FPGA电路板应该注意的事项

    设计一块FPGA电路板应该注意的事项

    通常很难计算一块电路板要求的最大电流。但 FPGA 电源设计相当有技巧。FPGA 所需电流很大程度上取决于逻辑设计和时钟频率。同样一个器件在一个设计中可能只需 0.5W,而在另一个设计中可能高达 5W。 如果你在采用 FPGA 的电路板设计方面的经验很有限或根本没有,那么在新的项目中使用 FPGA 的前景就十分堪忧——特别是如果 FPGA 是一个有 1000 个引脚的大块头。继续阅读本文将有助于你的 FPGA 选型和设计过程,并且有助于你规避许多难题。 选取一家供应商 你面临的第一个问题当然是供应商和器件的选择。通常供应商决策倾向于你以前接触最多的那家——如果你是一位 FPGA 初学者当然另当别论了。或许这个决策早已由设计内部逻辑的工程师(也许就是你)依据熟悉的供应商或第三方 IP 及其成本完成了。 供应商的软件工具也会影响到上述决策。下载并使用这些软件工具,不需要硬件就能将设计带入仿真阶段。这也是判断需要多大规模的 FPGA 的一种方式,前提是你的内部逻辑设计基本做完了。 要想知道 FPGA 的水有多深,需要多逛逛各家供应商的网站。如果你想从这些网站提供的海量(而且并不总是想象中那么清晰的)信息中有所收获,必须确保你有一整天空闲的时间。Altera 和赛灵思公司是在市场份额和前沿技术方面都遥遥领先的两家公司。它们的器件使用内部配置 RAM,因此要求使用存放配置数据的外部 ROM 来“启动”器件(两家公司也都有些小的非易失性 CPLD 类产品)。值得考虑的其它供应商还有 Microsemi/Actel、莱迪思和赛普拉斯。它们的器件功能包括非常低的静态功耗、用于“即时开机”启动的基于 ROM 的配置和模拟外设。 好了,至此供应商问题解决了。接下来是选取 FPGA 的系列和规模。供应商都会将它们的产品细分成多个系列,通常以低端、中端和高端性能(和规模)这样的模糊概念加以区分。片上 RAM 需要多大?要多少 DSP/ 乘法模块,或千兆位收发器?你可能需要通读一遍数据手册,找出诸如最大时钟频率和 I/O 时延等参数来帮助你选择正确的系列。需要重申的是,拥有 HDL 代码是有很大帮助的,因为设计软件可以让你知道适合哪种器件,它们是否能够满足你的性能要求。 你的应用还可以从不改变 PCB 就能更新器件中受益。一些 FPGA 系列包含众多引脚兼容的器件,可以在需要时让你切换到更大(或更便宜和更小)的器件。只是要确保针对最少数量的引脚输出进行设计。 不要忘了考虑其它一些细节,比如如何为不同的供电电压和 I/O 标准划分 I/O 组、PLL 要求以及 DDR 接口要求。

    时间:2020-10-15 关键词: PCB 电源 FPGA

  • DC-DC电源的精度是随着FPGA的精度越来越精密

    DC-DC电源的精度是随着FPGA的精度越来越精密

    通常除了电源精度影响整个系统的稳定性和可靠性,更高精度的电源还可以帮助我们降低系统功耗。 FPGA 厂商不断采用更先进的工艺来降低器件功耗,提高性能,同时 FPGA 对供电电源的精度要求也越加苛刻,电压必须维持在非常严格的容限内,如果供电电压范围超出了规范的要求,就有会影响到 FPGA 的可靠性,甚至导致 FPGA 失效。 无论是 Intel (Altera)FPGA 还是 Xilinx FPGA 均在数据手册中明确提出了电源精度要求,其中要求最高的是内核和高速收发器的供电。举例来看,Intel 公司的 Cyclone V、Cyclone 10 GX、Arria10、Stratix 10 的电源精度要求在±30mV 以内。 Arria10 的 core 和 transceiver 数据手册上的供电要求(±30mV): Stratix10 的 core 和 transceiver 数据手册上的供电要求(±30mV): 如果 Stratix10 需要支持 26.6G transceiver 时,收发器供电精度要求 ±20mV 以内: Xilinx 公司的 Artix 7、Kintex7、Virtex 7 等器件电源精度要求也是在±30mV 以内,KU+、VU+器件要求电源精度必须达到±22mV 以内。 Kintek Ultrascale+的 core 和 transceiver 数据手册上的供电要求(±22mV): 由此可见,新一代 FPGA 的供电精度都在±20-30mv 左右,已经是单板中对电源精度要求最为苛刻的器件之一了。 由于输出精度都是理论计算值,并没有考虑单板 PCB 布线和其他外部设备引入的干扰和误差,因此实际设计产品时,电源输出精度不但必须符合数据手册中的要求,还必须预留一定的余量,通常设计中,我们还会保留 50%-100%余量,以保证系统长期可靠工作。 电源的稳态直流精度及计算方法 供电电源的稳态直流精度主要取决于两个因素:电压调整精度和输出电压纹波。这里有一个误区,很多工程师只通过 DC-DC 数据手册上的电压输出精度来判断器件是否符合要求,其实这是不正确的。 首先很多 DC-DC 需要外部反馈电阻来决定最终的输出电压,数据手册上的电压调整精度是指芯片本身的输出精度,并没有计算反馈电路引入的偏差。其次,器件数据手册上的电压输出精度并不包含输出电压纹波,必须将两者叠加计算才能得到正确的直流稳态精度。 正确的电源稳态直流精度的计算公式如下: 电源直流稳态精度 =器件输出精度(这里要求全温度,全负载时的精度,很多器件手册只给出典型值,因此要小心)+ ? 纹波 + 外部反馈电阻精度引入的误差。 高精度电源对减低 FPGA 功耗的作用 我们举一个例子,一个 FPGA 推荐的典型工作电压为 0.85V,最高工作电压为 0.88V,最低工作电压为 0.82V, 假设供电 DC-DC 实际稳态直流精度是±30mV ,那么 DC-DC 必须正好工作在 0.85V,如果电压更低,就会低于 FPGA 对电压下限的要求。

    时间:2020-10-15 关键词: Intel 电源 FPGA

  • FPGA 电源设计有哪些规范设计

    FPGA 电源设计有哪些规范设计

    作为一种复杂的集成电路,FPGA 系统供电的电源的设计与一般的电子系统相比,要求也更高,需要具备高精度、高密度、可控性、高效及小型化等的特点。本文系统介绍了 FPGA 电源的不同特性,同时会通过实例,让工程师更深入地了解各特性的意义,以及 FPGA 规范约束及其对电源设计的影响,以便快速完成 FPGA 系统的电源设计。 前言 FPGA (Field Programmable Gate Arrays) 是现今最复杂的集成电路之一。它们采用先进的晶体管技术和芯片架构实现高性能、小体积的高端产品,而为 FPGA 系统供电的电源与一般的电子系统相比,要求更高。 随着市场上对 FPGA 系统应用的普及,对其电源解决方案的需求也越来越旺盛,FPGA 电源系统除了需要满足基本要求外,还需要具备高精度、高密度、可控性、高效及小型化等的特点。 现实中,工程师希望将大部分时间花在编程上,而不想花太多的时间和精力考虑如何设计合适的电源耗材。所以在本文中,我们会介绍 FPGA 电源的不同特性,同时会通过实例,让工程师更深入地了解各特性的意义,以及 FPGA 规范约束及其对电源设计的影响。 电压精度 内核电源电压 (Core Power Supply) 是平衡 FPGA 功耗和性能的最重要关键要素之一。规格书中一般会列出可接受的电压范围,但此范围并不是完整的描述,对 FPGA 而言,电源电压在满足线路运作要求的同时,也需要权衡和优化。下图一是以 Intel 的 Arria 10 FPGA 内核电压要求为例,其也代表了其他 FPGA 内核的电压要求。一般会显示容差范围额定电压,例如 Arria 10 FPGA 为±0.03V,FPGA 会在这个电压窗口内运行得很好,但实际情况比图片显示复杂很多。 事实上,FPGA 可以在不同电压下工作,这具体取决于其特殊的制造公差以及所采用的特定逻辑设计。即使是同一电压要求,一个 FPGA 所需的静态电压也可能是与另一个 FPGA 不同,所以在电源设计时必须要考虑对应 FPGA 的动态与静态之间的变化而自行调控。 动态功率和静态功率 设计合适的 FPGA 电源方案,目标是产生恰当的性能水平来操作编程功能,减少不必要的功耗。我们从半导体物理学的角度看,动态和静态功率都随着内核 VDD 的增加而显著增加,因此我们的目标是让 FPGA 有足够电压来正常运行,以满足其时间要求——因为过量功耗不但对提高性能没有任何帮助,相反它会令晶体管漏电流随着温度的升温,消耗更多的不必要的电力。由于这些原因,当务之急是优化设计和工作点的电压。 该优化过程需要非常精确的电源才能获得成功。如果内核电压低于要求,则 FPGA 可能由于时序错误而发生故障。如果内核电压漂移超过最大规格,可能会损坏 FPGA,或者可能会在逻辑中产生保持时间故障。所以,必须考虑电源容差范围来防止所有这些情况,并且仅保证保持在规格限制内的指令电压。 问题是大多数电源调节器都不够准确。调节电压可以在被指令电压附近的公差范围内的任何地方,并且它可以随负载条件、温度和老化而漂移。±2%容差的电源即表示可以在 4%的电压范围内输出任何值。为了补偿电压处于 2%过低的可能性,被指令电压必须比满足时序所需的电压提高 2%。如果经过调节器后电压漂移到高于被指令电压 2%处,它将比该工作点所需的最小电压运行高 4%。这仍然符合规定的 FPGA 所需的电压要求,却浪费了大量功率,如下图 2 所示。 解决这一问题的方案是选择能够以更严格的电压容差运行的电源调节器。使用具有±0.5%容差的调节器,可以在所需的工作频率下、更接近所需的最小规格内工作,并且保证与所需的电压相差小于 1%。这样,好让 FPGA 在最小功耗的情况下,正常工作。 高电量需求 FPGA 系统中的器件通常需要不同调节电压,例如电压的内核电压处理器,其要求电压可以是 0.8V、1.0V、1.2V、1.5V 或 1.8V 等。虽然是低电压供应,但其密集的晶体管结构及长期保持高速运作的情况下,供电电源方案可能需要 10A 或以上,具体的处理器要求通常决定了其他电源要求,例如负载瞬态恢复、待机模式等,这需要负载点(Point-of-Load,或简称 PoL)稳压电源专为核心电压设计。 PoL 稳压电源是一种高性能稳压器,其各 Vout 电压轨独立于各自的负载设置。这有助于解决高瞬态电流的要求以及诸如 FPGA 高性能半导体器件的低噪声要求。例如 ADI 公司的 LTM4678 系列,包含两组能够同时提供高密度的电源供应输出,分别为 1V@25A 及 1.8V@25V。 可控性需求 FPGA 中含有大量而复杂编排的晶体管,一块芯片包含数亿个晶体管,当中被分割成可以设计并独立管理的内核段、模块段和隔断。这些特定的编排是的其具有许多不同电源域,在电压、电流、纹波和噪声以外,还包括启动、关断和故障条件期间的序列顺序,故可控性的 FPGA 电源需要妥善管理输出的次序及其电量。 市场中较新的 FPGA 在规格中会提供针对启动和关断电源时的序列顺序提出特定的要求,确保 FPGA 正常开启及复位,保持最小的电流消耗,并在电源转换期间将 I/O 保持在正确的三态配置下。再以 Arria 10 为例,其技术规格将电源分为三个序列组(1、2、3),并要求它们按升序排列为 1、2、3,然后按相反的顺序降序排列:3、 2、1。 例如 ADI 公司的 LTC2936 可以提供六个可编程阈值模拟比较器,用于检测快速事件并将数字状态发送到逻辑。该器件还有三个可编程 GPIO 引脚,可提供额外的功能。该可编程 IC 包括 EEPROM,后者可在启动时近乎即时地工作;该 IC 还能通过其 I2C/SMBus 接口存储故障遥测数据以便进行调试。 FPGA 开发套件支持 工程师可利用 FPGA 开发套件协助开发。例如 Arria 10 SoC 开发套件 (DK-SOC-10AS066S-A)展示了用于 Arria 10 SoC 电源要求的 ADI 的 LTM4677µmodule 电源解决方案。 在套件中,内核电源的工作电压为 0.95V,工作电流为 30A。由于这些电源要求相对宽松,单个 LTM4677 模块就可轻松提供所需电流(最高 36A)。对于要求更多电流且条件更为苛刻的应用,最多可以并行运行四个 LTM4677 模块,以提供高达 144A 的电流,如图 7 所示。 利用参数列表选料 了解应用的要求之后,工程师可在 Digi-Key 官网上,在「电源 - 板安装」分类中,选择「直流转换器」子分类。「应用筛选程序」中,工程师可在「类型」中找到「POL」,或直接在「在结果中搜寻」中输入「POL」以筛选 PoL 稳压电源。

    时间:2020-10-15 关键词: 电源 晶体管技术 FPGA

  • 对MLCC的电源要求是否过高,有待考究?

    对MLCC的电源要求是否过高,有待考究?

    目前随着智能电子、自动化和传感器在工业和汽车环境中的普及,提高了对电源数量和性能的要求。特别是低 EMI,已成为更加重要的关键电源参数考量因素,除此以外,还包括小解决方案尺寸、高效率、热性能、稳健性和易用性等常规要求。 多层陶瓷电容器(MLCC)的价格在过去几年急剧上涨,究其原因,与汽车、工业、数据中心和电信行业使用的电源数量增加有关。陶瓷电容被用在电源输出端,用于降低输出纹波,以及控制因为高压摆率加载瞬变而导致的输出电压过冲和欠冲。输入端则要求陶瓷电容进行解耦和过滤 EMI,这是因为在高频率下,它具备低 ESR 和低 ESL。 为了提高工业和汽车系统的性能,需要将数据处理速度提高几个等级,并且在微处理器、CPU、片上系统(SoC)、ASIC 和 FPGA 上集成更多耗电器件。这些复杂的器件类型需要多条稳压电轨:一般是内核 0.8 V,DDR3 和 LPDDR4 分别 1.2 V 和 1.1 V,外设和辅助组件分别为 5 V、3.3 V 和 1.8 V。降压(降压型)转换器被广泛用于调节电池或直流总线提供的电源。 例如,汽车中的高级驾驶员辅助系统(ADAS)产品组合大幅提升了陶瓷电容的使用率。随着电信行业开始采用 5G 技术,也需要用到高性能电源,这也会显著增加陶瓷电容的使用率。内核的电源电流从几安培增加到几十安培,且严格管控电源纹波、负载瞬变过冲 / 欠冲和电磁干扰(EMI),这些都需要额外的电容。 更高的电源工作(开关)频率可以降低瞬变对输出电压造成的影响,降低电容需求和整体解决方案的尺寸,但是更高的开关频率往往会导致开关损耗增加,降低整体效率。能否在先进的微处理器、CPU、SoC、ASIC 和 FPGA 需要极高的电流时,避免这种取舍并满足瞬变要求? ADI 的单芯片 Silent Switcher® 2 降压稳压器系列帮助实现紧凑的解决方案尺寸、高电流能力和高效率,更重要的是,还具备出色的 EMI 性能。LTC7151S 单芯片降压稳压器使用 Silent Switcher 2 架构来简化 EMI 滤波器设计。谷电流模式可以降低输出电容需求。我们来看看适合 SoC 的 20 V 输入至 1 V、15 A 输出解决方案。 01 面向 SoC 的 20 V 输入、15 A 解决方案 图 1 所示为适合 SoC 和 CPU 功率应用的 1 MHz、1.0 V、15 A 解决方案,其中输入一般为 12 V 或 5 V,可能在 3.1 V 至 20 V 之间波动。只需要输入和输出电容、电感、几个小型电阻和电容即会组成完整的电源。此电路易于修改,以生成其他输出电压,例如 1.8 V、1.1 V 和 0.85 V,一直到 0.6 V。输出电轨的负回流(至 V–引脚)使得其能够对负载附近的输出电压实施远程反馈检测,最大限度降低板路径的压降导致的反馈误差。 图 1 所示的解决方案使用 LTC7151S Silent Switcher 2 稳压器,该稳压器采用高性能集成式 MOSFET,以及 28 引脚散热增强型 4 mm × 5 mm × 0.74 mm LQFN 封装。通过谷电流模式实施控制。内置保护功能,以最大限度减少外部保护组件的数量。 顶部开关的最短导通时间仅为 20 ns(典型值),可以在极高频率下直接降压至内核电压。热管理功能支持可靠、持续地提供高达 15 A 的电流、20 V 的输入电压,无散热或气流,因此非常适合电信、工业、交通运输和汽车应用领域的 SOC、FPGA、DSP、GPU 和微处理器使用。 LTC7151S 具备广泛的输入范围,可以用作一级中间转换器,支持多个下游负载点或 LDO 稳压器在 5 V 或 3.3 V 时达到最高 15 A。 图 1. 适用于 SoC 和 CPU 的 1 MHz、15 A 降压稳压器的原理图和效率 02 使用最小的输出电容,满足严格的瞬变规格 一般来说,会扩大输出电容,以满足回路稳定性和负载瞬态响应要求。对于为处理器提供内核电压的电源,这些要求尤其严格,必须出色地控制负载瞬变过冲和欠冲。例如,在负载阶跃期间,输出电容必须介入,立即提供电流来支持负载,直到反馈回路将开关电流增高到足以接管。一般来说,可以通过在输出端安装大量多层陶瓷电容来抑制过冲和欠冲,在快速负载瞬变期间满足电荷存储要求。 另外,提高开关频率也可以改善快速回路响应,但这会增大开关损耗。 还有第三种选项:支持谷电流模式控制的稳压器可以动态改变稳压器的开关 TON 和 TOFF 时间,以满足负载瞬变需求。如此,可以大幅降低输出电容,以满足快速瞬变时间。图 2 所示为 LTC7151S Silent Switcher 稳压器立时响应 4 A 至 12 A 负载阶跃和 8 A/µs 压摆率之后的结果。 LTC7151S 采用受控导通时间(COT)谷电流模式架构,支持开关节点在 4 A 至 12 A 负载阶跃瞬变期间压缩脉冲。在上升沿启动约 1 µs 之后,输出电压开始恢复,过冲和欠冲则限制在 46 mV 峰峰值。图 2a 中所示的 3 个 100 µF 陶瓷电容足以满足典型的瞬变规格要求,如图 2b 所示。图 2c 显示负载阶跃期间的典型开关波形。 图 2.(a) 这种 5 V 输入至 1 V 输出的应用在 2 MHz 下运行,需要最小的输出电容达到快速地响应(b)负载阶跃,以及负载阶跃期间的(c)开关波形。 03 3 MHz 高效降压型稳压器可用于狭小空间 LTC7151S 采用 4 mm × 5 mm × 0.74 mm 封装,其中集成了 MOSFET、驱动器和热回路电容。让这些组件彼此靠近可以降低寄生效应,以便快速开关这些开关,且保持很短的死区时间。开关的反并联二极管的导通损耗也大大降低。集成式热回路解耦电容和内置补偿电路也可以帮助降低设计复杂性,最大限度减小解决方案的总体尺寸。 如前所述,顶部开关的 20 ns(典型)最短间隔允许在高频率下实现极低的占空比转换,使得设计人员能够利用极高频率操作(例如 3 MHz)来降低电感、输入电容和输出电容的大小和值。极为紧凑的解决方案适用于空间有限的应用,例如汽车和医疗应用领域的便携式设备或仪器仪表。使用 LTC7151S 时,可以不使用大体积散热组件(例如风扇和散热器),这是因为 LTC7151S 支持高性能功率转换,即使在极高频率下也是如此。 图 3 显示在 3 MHz 开关频率下运行的 5 V 至 1 V 解决方案。伊顿提供的小尺寸 100 nH 电感和 3 个 100 µF/1210 陶瓷电容一起,提供适用于 FPGA 和微处理器应用的纤薄紧凑型解决方案。效率曲线如图 3b 所示。在室温下,全负载范围内温度上升约 15°C。 图 3.5 V 输入至 1 V/15 A,fSW = 3 MHz 下的稳压器原理图和效率。 04 Silent Switcher 2 帮助实现出色的 EMI 性能 使用 15 A 应用满足已经发布的 EMI 规范(例如 CISPR 22/CISPR 32 传导和辐射 EMI 峰值限值),可能意味着多个迭代板旋转,涉及在解决方案尺寸、总效率、可靠性和复杂性之间取舍。传统方法通过减慢开关边沿和 / 或降低开关频率来控制 EMI。这两种方法都会产生不良的影响,例如效率下降,最短接通和关断时间增加,以及增大解决方案尺寸。复杂、大尺寸的 EMI 滤波器或金属屏蔽等强力 EMI 消除方案在所需的电路板空间、组件和装配方面增加了大量成本,并使热管理和测试复杂化。 使用 15 A 应用满足已经发布的 EMI 规范(例如 CISPR 22/CISPR 32 传导和辐射 EMI 峰值限值),可能意味着多个迭代板旋转,涉及在解决方案尺寸、总效率、可靠性和复杂性之间取舍。传统方法通过减慢开关边沿和 / 或降低开关频率来控制 EMI。这两种方法都会产生不良的影响,例如效率下降,最短接通和关断时间增加,以及增大解决方案尺寸。复杂、大尺寸的 EMI 滤波器或金属屏蔽等强力 EMI 消除方案在所需的电路板空间、组件和装配方面增加了大量成本,并使热管理和测试复杂化。 LTC7151S 前端采用简单的 EMI 滤波器,在 EMI 测试室中接受测试,通过了 CISPR 22/ CISPR 32 导通和辐射 EMI 峰值限值认证。图 4 显示 1 MHz、1.2 V/15 A 电路的原理图,图 5 显示吉赫兹横电磁波(GTEM)电池的辐射 EMI CISPR 22 的测试结果。 图 4. 开关频率为 1 MHz 的 1.2 V 稳压器的原理图 图 5.GTEM 中的辐射 EMI 通过 CISPR 22 Class B 限值测试

    时间:2020-10-15 关键词: CPU 电源 FPGA

  • 关于FPGA电源设计的经验交流,你值得收藏!

    关于FPGA电源设计的经验交流,你值得收藏!

    我们在实施电源方案时,设计人员应该明确知道这些供电电源 ( 也称为“轨式电源” ) 的总功率。而且,和器件外部消耗的总功率相比,设计人员还需要考虑器件内部实际消耗的总功率 ( 称为“热功率”或者“耗散功率” ) ,例如,外部输出电容负载和平衡电阻匹配网络的功耗。通常来说外部电源为 FPGA 或者 CPLD 内部和外部正常工作提供电能源。 一、FPGA 使用的电源类型 FPGA 电源要求输出电压范围从 1.2V 到 5V,输出电流范围从数十毫安到数安培。可用三种电源:低压差(LDO)线性稳压器、开关式 DC-DC 稳压器和开关式电源模块。最终选择何种电源取决于系统、系统预算和上市时间要求。 如果电路板空间是首要考虑因素,低输出噪声十分重要,或者系统要求对输入电压变化和负载瞬变做出快速响应,则应使用 LDO 稳压器。LDO 功效比较低(因为是线性稳压器),只能提供中低输出电流。输入电容通常可以降低 LDO 输入端的电感和噪声。LDO 输出端也需要电容,用来处理系统瞬变,并保持系统稳定性。也可以使用双输出 LDO,同时为 VCCINT 和 VCCO 供电。 如果在设计中效率至关重要,并且系统要求高输出电流,则开关式稳压器占优势。开关电源的功效比高于 LDO,但其开关电路会增加输出噪声。与 LDO 不同,开关式稳压器需利用电感来实现 DC-DC 转换。 二、FPGA 的特殊电源要求 为确保正确上电,内核电压 VCCINT 的缓升时间必须在制造商规定的范围内。对于一些 FPGA,由于 VCCINT 会在晶体管阈值导通前停留更多时间,因此过长的缓升时间可能会导致启动电流持续较长时间。如果电源向 FPGA 提供大电流,则较长的上电缓升时间会引起热应力。ADI 公司的 DC-DC 稳压器提供可调软启动,缓升时间可以通过外部电容进行控制。缓升时间典型值在 20ms 至 100ms 范围内。 许多 FPGA 没有时序控制要求,因此 VCCINT、VCCO 和 VCCAUX 可以同时上电。如果这一点无法实现,上电电流可以稍高。时序要求依具体 FPGA 而异。对于一些 FPGA,必须同时给 VCCINT 和 VCCO 供电。对于另一些 FPGA,这些电源可按任何顺序接通。多数情况下,先给 VCCINT 后给 VCCO 供电是一种较好的做法。 当 VCCINT 在 0.6V 至 0.8V 范围内时,某些 FPGA 系列会产生上电涌入电流。在此期间,电源转换器持续供电。这种应用中,因为器件需通过降低输出电压来限制电流,所以不推荐使用返送电流限制。但在限流电源解决方案中,一旦限流电源所供电的电路电流超过设定的额定电流,电源就会将该电流限制在额定值以下。 三、FPGA 配电结构 1. 集中式电源结构 对于高速、高密度 FPGA 器件,保持良好的信号完整性对于实现可靠、可重复的设计十分关键。适当的电源旁路和去耦可以改善整体信号完整性。如果去耦不充分,逻辑转换将会影响电源和地电压,导致器件工作不正常。此外,采用分布式电源结构也是一种主要解决方案,给 FPGA 供电时可以将电源电压偏移降至最低。 在传统电源结构中,AC/DC 或 DC/DC 转换器位于一个地方,并提供多 个输出电压,在整个系统内分配。这种设计称为集中式电源结构 (CPA),见图 1。以高电流分配低电压时,铜线或 PCB 轨道会产生严重的电阻损耗,CPA 就会发生问题。 图 1 集中式电源结构 2. 分布式电源结构 CPA 的替代方案是分布式电源结构(DPA),见图 2。采用 DPA 时,整个系统内仅分配一个半稳压的 DC 电压,各 DC/DC 转换器(线性或开关式)与各负载相邻。DPA 中,DC/DC 转换器与负载(例如 FPGA)之间的距离近得多,因而线路电阻和配线电感引起的电压下降得以减小。这种为负载提供本地电源的方法称为负载点(POL)。 图 2 分布式电源结构 四、FPGA 的管脚介绍 FPGA 引脚分为两类:专用引脚和用户自定义引脚; 专用引脚大概占 FPGA 引脚数的 20%~30%,也就是说其硬件编码都是为了实现专用功能而编写的。 而专用引脚又分为以下 3 个子类: 电源引脚:接地或阳极引脚(内核或 IO)。 配置引脚:用来“下载”FPGA。 专用输入或时钟引脚:它们能驱动 FPGA 内部的大网线,适合于带有大输出端口(fanout)的时钟和信号。 其它的引脚就是用户引脚了。 1. 用户引脚 FPGA 的大部分引脚属于“用户引脚”(比如所谓的“IOs",或者"I/Os",或"用户 I/Os",或"用户 IOs”,或"IO 引脚",或……自己理解)。IO 代表“输入 - 输出”。 注意: 用户可以完全自定制用户 IO。它们可以被编程作为输入,输出或双向 IO(三向缓冲)。每个“IO 引脚”被连接$到 FPGA 内部的 IO 单元上。这个“IO 单元”通过 VCCIO(IO 加电引脚)引脚来上电。 2.IO 簇 通常每个 FPGA 有很多 VCCIO 引脚(IO Power pins),都被加同样的电压。但是新一代的 FPGA 引入了“用户 IO 组”。可以把 IO 分为不同的组,每组加各自的电压。这就使 FPGA 可以用作一个变压转换器了,比如对于开发板部分工作于 3.3v,部分工作于 2.5v 的很有用。(比如 cyclone III 系列的接 DDR2 要 1.8V 的电压) 3.FPGA 电源 FPGA 通常需要两个电压才能运行:一个是“核心电压”,另一个是“IO 电压”。每个电压通过独立的电源引脚来提供。 内核电压(这里简称 VCCINT)是用来给 FPGA 内部的逻辑门和触发器上的电压。该电压随着 FPGA 的发展从 5v、3.3v、2.5v、1.8v、1.5v 变的越来越低。核心电压是固定的。(根据所用 FPGA 的模式来确定)。IO 电压(简称 VCCIO)是用于 FPGA 的 IO 模块(同 IO 引脚)上的电压。该电压应该与其它连接到 FPGA 上的器件的电压匹配。 实际上,FPGA 器件本身是允许 VCCINT 和 VCCIO 相同的(比如 VCCINT 和 VCCIO 两种引脚可以被连接在一起)。但是 FPGA 设计是面向低电压内核和高电压 IO 的,所以两种电压一般是不相同的。 命名 内部电压 Xilinx 简称 VCC,Altera 简称 VCCINT;IO 电压 Xilinx 简称 VCCO,而 Altera 简称 VCCIO。 五、FPGA 功耗分析 外部电源为 FPGA 或者 CPLD 内部和外部正常工作提供电能源。实施电源方案时,设计人员应该明确知道这些供电电源 ( 也称为“轨式电源” ) 的总功率。而且,和器件外部消耗的总功率相比,设计人员还需要考虑器件内部实际消耗的总功率 ( 称为“热功率”或者“耗散功率” ) ,例如,外部输出电容负载和平衡电阻匹配网络的功耗。 器件、输出负载、外部匹配网络 ( 如果有 ) 的总功耗通常包括以下几部分: 待机功耗 动态功耗 I/O 功耗 待机功耗来自器件待机模式下的 ICCINT 电流。内核动态功耗来自器件内部开关 ( 内部节点电容冲放电 )。 I/O 功耗来自外部开关 ( 和器件引脚连接的外部负载电容冲放电 )、 I/O 驱动和外部匹配网络 ( 如果有 ) 。 热功耗是器件封装内部实际消耗总功率的一部分,其余部分在外部耗散掉。设计人员在确定器件本身热传导能力 ( 称为热阻 ) 能否满足内部管芯结温正常工作要求时,或者需要铝热沉等其他散热方案来实现更好的热传导性能时,应该考虑器件内部的实际热功耗。一般而言,待机功耗、动态功耗以及部分 I/O 功耗组成了总功耗中的实际热功耗。 1. 待机功耗 由于泄漏电流的存在,器件在待机时也会消耗能量。待机功耗随管芯大小、温度以及工艺的变化而变化。可以利用器件特征参数来模拟待机功耗,并定义为两类:典型功耗和最大功耗。 Stratix® II 器件使用 90 nm 工艺技术,对功耗和性能进行了优化。和前一工艺技术的器件相比,90 nm 器件由于泄漏导致静态功耗增大,对总功耗有很大的影响。 90 nm 工艺节点的待机功耗比以前的工艺技术更依赖于管芯结温。设计人员应重视降低结温,以便降低总功耗的待机功耗。下面的图 1 是待机功耗和结温的关系。 2. 动态功耗 内部节点改变逻辑状态时会消耗器件内部动态功耗,因为它需要能量对逻辑阵列和互联网络的内部电容进行冲放电 ( 例如,从逻辑 0 变到逻辑 1) 。内核动态功耗包括导线功耗和逻辑单元 (LE) 功耗 ( 或者 Stratix II 的自适应逻辑模块 (ALM))。 LE/ALM 功耗来自内部节点电容冲放电以及内部电阻单元的电流。导线功耗来自每个 LE/ALM 驱动外部导线电容时的冲放电电流。内核动态功耗主要来自以下结构单元: RAM 模块 (M512、 M4K 和 M-RAM) DSP 乘法器模块 锁相环 (PLL) 时钟树网络 高速差分接口 (HSDI) 收发器 上面列出的每个单元结构总电流之和与 VCCINT (Stratix II 为 1.2V) 相乘得到动态总功耗: 动态功耗 = VCCINT × Σ ICCINT (LE/ALM, RAM, DSP, PLL, Clocks, HSDI, 导线 ) 得到多个电容之和后,采用等价 ( 集总 ) 电容值计算动态功耗。例如,信号驱动输入或者输出时,对引脚、走线和封装电容求和。如果明确了内部开关频率,这一近似方法是足够的。 Altera 利用近似曲线 ( 基于特征数据 ) 来确定内部开关频率,有效地估算大部分设计拓扑的动态功耗。估算器件资源的总功耗时,应考虑资源的最大开关频率、估算的触发因子、下游逻辑扇出,以及通过器件特征参数获得的资源系数等。 Altera 的 PowerPlay 功耗分析和优化工具包考虑了所有这些因素进行功耗估算和分析。 3、IO 功耗 I/O 功耗是 VCCIO 功耗,主要来自器件输出引脚连接的外部负载电容、阻抗模式输出驱动电路以及外部匹配网络 (如果有) 的冲放电电流。器件 I/O 功耗按下式计算: I/O power 功耗 = (有源输出驱动数 × 功耗系数) +0.5 × (管芯、封装走线、引脚和输出负载电容之和) ×I/O 标准电压摆幅 × fMAX × (触发因子 /100) × VCCIO 有源输出驱动数包括有源双向输出。除了上面计算的 I/O 功耗,还有其他因素影响 I/O 功耗,包括同时由 VCCIO 供电的 I/O 缓冲单元。下面的图 2 是 I/O 缓冲模型。 如前所述, FPGA 或者 CPLD 内部要实际消耗一部分 VCCIO 功耗,外部匹配电阻网络以及输出电容负载消耗了另一部分能量。设计人员在规划散热管理方案时,应考虑 VCCIO 的内部功耗 ( 器件本身或者通过外部热沉) 。作为 VCCIO 电压稳压器和转换器 ( 指轨式电源 ) 输出功率的一部分,设计人员应考虑外部功率组成。 4. 其他功耗要求 设计 FPGA 和 CPLD 时,设计人员还应该考虑和总功耗有关的其他几个因素:浪涌电流、配置功耗以及 VCCPD( 仅对 Stratix II) 。 4.1 浪涌电流 浪涌电流是器件初始化上电时的电流。在上电阶段,必须为器件提供最低逻辑阵列电流 (ICCINT) ,并维持一段时间。这一持续时间取决于电源提供的电流大小。如果电流较大, VCCINT 能够迅速上升。当电压达到额定值的 90%时,一般不再需要最初的大电流。最大浪涌电流和器件温度成反比。随着器件温度的提高,上电浪涌电流下降 ( 而待机电流会随着温度提高而增大 ) 。 4.2 配置功耗 对于普通的 FPGA ,配置功耗是配置器件时消耗的能量。在配置和初始化阶段,器件需要能量来复位寄存器,使能 I/O 引脚,进入工作模式。上电阶段, I/O 引脚在配置前以及配置期间为三态,以降低功耗,防止在这段时间驱动输出。

    时间:2020-10-15 关键词: 电源设计 轨式电源 FPGA

  • FPGA电源设计经验分享

    FPGA电源设计经验分享

    通常来说外部电源为 FPGA 或者 CPLD 内部和外部正常工作提供电能源。实施电源方案时,设计人员应该明确知道这些供电电源 ( 也称为“轨式电源” ) 的总功率。而且,和器件外部消耗的总功率相比,设计人员还需要考虑器件内部实际消耗的总功率 ( 称为“热功率”或者“耗散功率” ) ,例如,外部输出电容负载和平衡电阻匹配网络的功耗。 一、FPGA使用的电源类型 FPGA电源要求输出电压范围从1.2V到5V,输出电流范围从数十毫安到数安培。可用三种电源:低压差(LDO)线性稳压器、开关式DC-DC稳压器和开关式电源模块。最终选择何种电源取决于系统、系统预算和上市时间要求。 如果电路板空间是首要考虑因素,低输出噪声十分重要,或者系统要求对输入电压变化和负载瞬变做出快速响应,则应使用LDO稳压器。LDO功效比较低(因为是线性稳压器),只能提供中低输出电流。输入电容通常可以降低LDO输入端的电感和噪声。LDO输出端也需要电容,用来处理系统瞬变,并保持系统稳定性。也可以使用双输出LDO,同时为VCCINT和VCCO供电。 如果在设计中效率至关重要,并且系统要求高输出电流,则开关式稳压器占优势。开关电源的功效比高于LDO,但其开关电路会增加输出噪声。与LDO不同,开关式稳压器需利用电感来实现DC-DC转换。 二、FPGA的特殊电源要求 为确保正确上电,内核电压VCCINT的缓升时间必须在制造商规定的范围内。对于一些FPGA,由于VCCINT会在晶体管阈值导通前停留更多时间,因此过长的缓升时间可能会导致启动电流持续较长时间。如果电源向FPGA提供大电流,则较长的上电缓升时间会引起热应力。ADI公司的DC-DC稳压器提供可调软启动,缓升时间可以通过外部电容进行控制。缓升时间典型值在20ms至100ms范围内。 许多FPGA没有时序控制要求,因此VCCINT、VCCO和VCCAUX可以同时上电。如果这一点无法实现,上电电流可以稍高。时序要求依具体FPGA而异。对于一些FPGA,必须同时给VCCINT和VCCO供电。对于另一些FPGA,这些电源可按任何顺序接通。多数情况下,先给VCCINT后给VCCO供电是一种较好的做法。 当VCCINT在0.6V至0.8V范围内时,某些FPGA系列会产生上电涌入电流。在此期间,电源转换器持续供电。这种应用中,因为器件需通过降低输出电压来限制电流,所以不推荐使用返送电流限制。但在限流电源解决方案中,一旦限流电源所供电的电路电流超过设定的额定电流,电源就会将该电流限制在额定值以下。 三、FPGA配电结构 1.集中式电源结构 对于高速、高密度FPGA器件,保持良好的信号完整性对于实现可靠、可重复的设计十分关键。适当的电源旁路和去耦可以改善整体信号完整性。如果去耦不充分,逻辑转换将会影响电源和地电压,导致器件工作不正常。此外,采用分布式电源结构也是一种主要解决方案,给FPGA供电时可以将电源电压偏移降至最低。 在传统电源结构中,AC/DC或DC/DC转换器位于一个地方,并提供多 个输出电压,在整个系统内分配。这种设计称为集中式电源结构 (CPA),见图1。以高电流分配低电压时,铜线或PCB轨道会产生严重的电阻损耗,CPA就会发生问题。 图1 集中式电源结构 2.分布式电源结构 CPA的替代方案是分布式电源结构(DPA),见图2。采用DPA时,整个系统内仅分配一个半稳压的DC电压,各DC/DC转换器(线性或开关式)与各负载相邻。DPA中,DC/DC转换器与负载(例如FPGA)之间的距离近得多,因而线路电阻和配线电感引起的电压下降得以减小。这种为负载提供本地电源的方法称为负载点(POL)。 图2 分布式电源结构 四、FPGA的管脚介绍 FPGA引脚分为两类:专用引脚和用户自定义引脚; 专用引脚大概占FPGA引脚数的20%~30%,也就是说其硬件编码都是为了实现专用功能而编写的。 而专用引脚又分为以下3个子类: 电源引脚:接地或阳极引脚(内核或IO)。 配置引脚:用来“下载”FPGA。 专用输入或时钟引脚:它们能驱动FPGA内部的大网线,适合于带有大输出端口(fanout)的时钟和信号。 其它的引脚就是用户引脚了。 1.用户引脚 FPGA的大部分引脚属于“用户引脚”(比如所谓的“IOs",或者"I/Os",或"用户I/Os",或"用户IOs”,或"IO引脚",或……自己理解)。IO代表“输入-输出”。 注意: 用户可以完全自定制用户IO。它们可以被编程作为输入,输出或双向IO(三向缓冲)。每个“IO引脚”被连接$到FPGA内部的IO单元上。这个“IO单元”通过VCCIO(IO加电引脚)引脚来上电。 2.IO簇 通常每个FPGA有很多VCCIO引脚(IO Power pins),都被加同样的电压。但是新一代的FPGA引入了“用户IO组”。可以把IO分为不同的组,每组加各自的电压。这就使FPGA可以用作一个变压转换器了,比如对于开发板部分工作于3.3v,部分工作于2.5v的很有用。(比如cyclone III系列的接DDR2要1.8V的电压) 3.FPGA电源 FPGA通常需要两个电压才能运行:一个是“核心电压”,另一个是“IO电压”。每个电压通过独立的电源引脚来提供。 内核电压(这里简称VCCINT)是用来给FPGA内部的逻辑门和触发器上的电压。该电压随着FPGA的发展从5v、3.3v、2.5v、1.8v、1.5v变的越来越低。核心电压是固定的。(根据所用FPGA的模式来确定)。IO电压(简称VCCIO)是用于FPGA的IO模块(同IO引脚)上的电压。该电压应该与其它连接到FPGA上的器件的电压匹配。 实际上,FPGA器件本身是允许VCCINT和VCCIO相同的(比如VCCINT和VCCIO两种引脚可以被连接在一起)。但是FPGA设计是面向低电压内核和高电压IO的,所以两种电压一般是不相同的。 命名 内部电压Xilinx简称VCC,Altera简称VCCINT;IO电压Xilinx简称VCCO,而Altera简称VCCIO。 五、FPGA功耗分析 外部电源为 FPGA 或者 CPLD 内部和外部正常工作提供电能源。实施电源方案时,设计人员应该明确知道这些供电电源 ( 也称为“轨式电源” ) 的总功率。而且,和器件外部消耗的总功率相比,设计人员还需要考虑器件内部实际消耗的总功率 ( 称为“热功率”或者“耗散功率” ) ,例如,外部输出电容负载和平衡电阻匹配网络的功耗。 器件、输出负载、外部匹配网络 ( 如果有 ) 的总功耗通常包括以下几部分: 待机功耗 动态功耗 I/O功耗 待机功耗来自器件待机模式下的 ICCINT 电流。内核动态功耗来自器件内部开关 ( 内部节点电容冲放电 )。 I/O 功耗来自外部开关 ( 和器件引脚连接的外部负载电容冲放电 )、 I/O 驱动和外部匹配网络 ( 如果有 ) 。 热功耗是器件封装内部实际消耗总功率的一部分,其余部分在外部耗散掉。设计人员在确定器件本身热传导能力 ( 称为热阻 ) 能否满足内部管芯结温正常工作要求时,或者需要铝热沉等其他散热方案来实现更好的热传导性能时,应该考虑器件内部的实际热功耗。一般而言,待机功耗、动态功耗以及部分 I/O功耗组成了总功耗中的实际热功耗。 1.待机功耗 由于泄漏电流的存在,器件在待机时也会消耗能量。待机功耗随管芯大小、温度以及工艺的变化而变化。可以利用器件特征参数来模拟待机功耗,并定义为两类:典型功耗和最大功耗。 Stratix® II 器件使用 90 nm 工艺技术,对功耗和性能进行了优化。和前一工艺技术的器件相比,90 nm 器件由于泄漏导致静态功耗增大,对总功耗有很大的影响。 90 nm 工艺节点的待机功耗比以前的工艺技术更依赖于管芯结温。设计人员应重视降低结温,以便降低总功耗的待机功耗。下面的图 1 是待机功耗和结温的关系。 2.动态功耗 内部节点改变逻辑状态时会消耗器件内部动态功耗,因为它需要能量对逻辑阵列和互联网络的内部电容进行冲放电 ( 例如,从逻辑 0 变到逻辑 1) 。内核动态功耗包括导线功耗和逻辑单元 (LE) 功耗 ( 或者 Stratix II 的自适应逻辑模块 (ALM))。 LE/ALM 功耗来自内部节点电容冲放电以及内部电阻单元的电流。导线功耗来自每个 LE/ALM 驱动外部导线电容时的冲放电电流。内核动态功耗主要来自以下结构单元: RAM 模块 (M512、 M4K 和 M-RAM) DSP 乘法器模块 锁相环 (PLL) 时钟树网络 高速差分接口 (HSDI) 收发器 上面列出的每个单元结构总电流之和与 VCCINT (Stratix II 为 1.2V) 相乘得到动态总功耗: 动态功耗 = VCCINT × Σ ICCINT (LE/ALM, RAM, DSP, PLL, Clocks, HSDI, 导线 ) 得到多个电容之和后,采用等价 ( 集总 ) 电容值计算动态功耗。例如,信号驱动输入或者输出时,对引脚、走线和封装电容求和。如果明确了内部开关频率,这一近似方法是足够的。 Altera 利用近似曲线 ( 基于特征数据 ) 来确定内部开关频率,有效地估算大部分设计拓扑的动态功耗。估算器件资源的总功耗时,应考虑资源的最大开关频率、估算的触发因子、下游逻辑扇出,以及通过器件特征参数获得的资源系数等。 Altera 的 PowerPlay 功耗分析和优化工具包考虑了所有这些因素进行功耗估算和分析。 3、IO功耗 I/O 功耗是 VCCIO 功耗,主要来自器件输出引脚连接的外部负载电容、阻抗模式输出驱动电路以及外部匹配网络 (如果有) 的冲放电电流。器件 I/O 功耗按下式计算: I/O power功耗 = (有源输出驱动数 × 功耗系数) +0.5 × (管芯、封装走线、引脚和输出负载电容之和) ×I/O 标准电压摆幅 × fMAX × (触发因子/100) × VCCIO 有源输出驱动数包括有源双向输出。除了上面计算的 I/O 功耗,还有其他因素影响 I/O 功耗,包括同时由 VCCIO 供电的 I/O 缓冲单元。下面的图 2 是 I/O 缓冲模型。 如前所述, FPGA 或者 CPLD 内部要实际消耗一部分 VCCIO 功耗,外部匹配电阻网络以及输出电容负载消耗了另一部分能量。设计人员在规划散热管理方案时,应考虑 VCCIO 的内部功耗 ( 器件本身或者通过外部热沉) 。作为 VCCIO 电压稳压器和转换器 ( 指轨式电源 ) 输出功率的一部分,设计人员应考虑外部功率组成。 4.其他功耗要求 设计 FPGA 和CPLD 时,设计人员还应该考虑和总功耗有关的其他几个因素:浪涌电流、配置功耗以及 VCCPD( 仅对Stratix II) 。 4.1 浪涌电流 浪涌电流是器件初始化上电时的电流。在上电阶段,必须为器件提供最低逻辑阵列电流 (ICCINT) ,并维持一段时间。这一持续时间取决于电源提供的电流大小。如果电流较大, VCCINT 能够迅速上升。当电压达到额定值的 90%时,一般不再需要最初的大电流。最大浪涌电流和器件温度成反比。随着器件温度的提高,上电浪涌电流下降 ( 而待机电流会随着温度提高而增大 ) 。 4.2 配置功耗 对于普通的 FPGA ,配置功耗是配置器件时消耗的能量。在配置和初始化阶段,器件需要能量来复位寄存器,使能 I/O 引脚,进入工作模式。上电阶段, I/O 引脚在配置前以及配置期间为三态,以降低功耗,防止在这段时间驱动输出。

    时间:2020-10-13 关键词: 电源 功耗 FPGA

  • 当AI遇到FPGA,低功耗智能探测系统不再是难题

    当AI遇到FPGA,低功耗智能探测系统不再是难题

    从家庭控制中智能门铃和安全摄像头的存在检测,到零售应用中用于库存的对象计数,再到工业应用中物体和存在检测,越来越多的网络边缘应用正在不断推动新型AI解决方案面市。根据IHS Markit(现Omida)的预测,2018-2025年物联网设备数量将达到400亿,截至2022年,所有企业产生的数据中近50%会在传统数据中心或云端以外的地方进行处理。 但与此同时,市场一方面要求设计人员开发出性能比以往更高的解决方案;另一方面,延迟、带宽、隐私、功耗和成本问题又限制了他们依赖云的计算资源来执行分析。如何解决系统对于日益严格的功耗(毫瓦级)和小尺寸(5mm2到100mm2)要求?如何能够快速获得相应的硬件和软件工具、参考设计、演示示例和设计服务?莱迪思公司为此做出了有益的尝试。 Lattice sensAI再获重大更新 作为莱迪思推出的业界第一款用于网络边缘设备端AI处理的完整解决方案集合,sensAITM提供了供开发人员评估、开发和部署基于FPGA的机器学习/人工智能解决方案所需的全部资源,包括模块化硬件平台、演示示例、参考设计、神经网络IP核、软件开发工具和定制化设计服务。 图1:sensAI架构框图 2019年上半年,sensAI通过更新迎来10倍性能提升,这是由多个优化促成的,包括通过更新CNN IP和神经网络编译器、新增8位激活量化、智能层合并以及双DSP引擎等特性。而最令人感到兴奋的是它新增并优化了用于快速实现网络边缘常见AI应用的参考设计,为关键词检测、人脸识别、人员侦测、人员计数等赋予了更强大的特性。 图2:在训练过程中支持8位量化可在神经网络模型训练过程中实现更高的精度 为了演示关键词检测系统的功能,工程师使用了搭载iCE40 UltraPlus FPGA的HiMax HM01B0 UPduino shield开发板。该开发板有两个直连到FPGA的I2S麦克风、用于FPGA设计的外部闪存、权重激活存储器、以及LED指示灯用以指示是否检测到关键词。用户可以直接对麦克风说话,一旦检测到关键词,LED就会亮起。 图3:关键词检测演示系统 图4左侧是针对低功耗运行进行优化、采用CMOS图像传感器的人员侦测演示,通过VGG8网络提供64 x 64 x 3的分辨率,该系统以每秒5帧的速率运行,使用iCE40 UltraPlus FPGA功耗仅为7mW;右侧是性能经优化的人员计数应用演示,同样也使用CMOS图像传感器,通过VGG8网络提供128 x 128 x 3的分辨率。该演示以每秒30帧的速率运行,使用ECP5-85K FPGA功耗为850mW。 图4:这些参考设计展示了sensAI提供的功耗与性能可选方案 Lattice人员识别参考设计方案也应用于售卖机上检测人员的出现,唤醒售卖机的内核。通过减少非人员靠近造成的误触发,或人员路过造成的误触发,达到减小功耗的目的。 2020年5月,sensAI又成功升级至3.0版本。 在此前支持ECP5/ECP5-5G和iCE40 UltraPlus 模块化硬件平台的基础上,新推出的sensAI 3.0版本支持CrossLink-NX™系列FPGA,运行sensAI软件的CrossLink-NX FPGA比之前版本降低了一半的功耗,同时实现性能翻倍,从而为监控/安防、机器人、汽车和计算领域的智能视觉应用带来功耗和性能上的再次突破。同时,它还拥有定制化卷积神经网络CNN IP并新增支持MobileNet v2、SSD和ResNet模型,这些灵活的加速器IP可简化常见CNN网络的实现,经优化后可更加充分利用FPGA的并行处理能力,开发人员可轻松编译经过训练的神经网络模型并将其下载到CrossLink-NX FPGA中。 图6:sensAI支持多种AI算法模型 CrossLink-NX FPGA采用28nm FD-SOI工艺制造,与同类FPGA竞品相比,功耗可降低75%。在CrossLink-NX FPGA上运行解决方案时,sensAI可提供多达2.5Mb的分布式内存、RAM块以及额外的DSP资源,MIPI I/O提供瞬时启动的性能可在不到3ms的时间内完成自我配置,而整个器件的配置也只需8ms。在基于CrossLink-NX的对象计数演示中,——基于VGG的对象计数演示拥有10帧/秒的性能,功耗仅为200mW。 当AI遇见超低功耗FPGA 拥有5K LUT的iCE40 UltraPlus FPGA可实现网络边缘实时在线的智能应用所需的神经网络模式匹配。其拥有5280个4输入LUT、自定义I/O、多达80Kb和1Mb的嵌入式存储器,睡眠电流低至75uA,工作电流仅为1-10mA,功耗低至1mW,硬件平台尺寸小至5.5mm2。为了满足各类应用的需求,还采用了包括从专为电子消费品和IoT设备优化的超小尺寸2.15 mm x 2.50 mm x 0.45 mm WLCSP封装,到低成本应用的0.5mm间距7x7mm QFN封装在内的多种封装选项。 功耗优化遥遥领先的原因,得益于其采用的分布式异构处理(Distributed Heterogenous Processing, DHP)架构。由于不使用云端执行算法,而是使用内置的数字信号处理器(DSP)执行重复的数字处理任务,因此大幅减少了功耗极大的应用处理器(AP)的计算负载,从而实现更长时间的睡眠模式以延长电池使用时间。另一方面,内置的神经网络软IP和编译器实现了灵活的机器学习/人工智能应用,消除了云端智能应用带来的延迟,降低了整个系统解决方案的成本。 图7:iCE40 UltraPlus采用的分布式异构处理(DHP)架构 图8和图9描述了不同FPGA之间存在的资源差异如何影响到人脸检测和人员检测应用的性能和功耗。图8左侧的32x32输入示例中,橙色部分代表卷积层上运行的周期。在四个示例中,UltraPlus的乘法器数量最少,其他三片ECP5 FPGA的乘法器数量依次递增。随着乘法器数量的增加,卷积层所需的周期数减少;右侧的90x90输入示例中,在每个柱形图的底部有大面积的蓝色区域。这是由于设计更为复杂,需要占用外部DRAM,性能就有所折中。 图8:在UltraPlus和ECP5 FPGA上实现入门级和提高级人脸检测时的性能、功耗和占用面积 人员侦测应用的情况类似,两组分别采用了64x64输入和128x128输入的情况。同样,较多的乘法器会减少卷积层的负担,而依赖DRAM则会影响性能。 图9:在UltraPlus和ECP5 FPGA上实现简单和复杂人员检测时的性能、功耗和占用面积 其实,设计AI模型的最常见做法就是使用处理器,可能是GPU或者DSP,也有可能是微控制器(MCU)。不过,低端MCU可能连简单的AI模型也无法处理,高性能处理器又可能会违反设备的功耗和成本要求,但这正是低功耗FPGA发挥作用的地方。与增强处理器来处理算法的方式不同,莱迪思iCE40 UltraPlus FPGA可以作为MCU的协处理器,处理MCU无法解决的复杂任务之余,将功耗保持在要求范围内。 另一种思路是将低功耗FPGA作为单独运行的、完整的AI引擎,此时FPGA中的DSP就起到了关键作用。即便网络边缘设备没有其他的计算资源,也可以在不超出功耗、成本或电路板尺寸预算的情况下添加AI功能,更何况它们还拥有支持快速演进算法所需的灵活性和可扩展性。 无论采取哪种方法,都意味着设计人员可以采用莱迪思sensAI以及一片低功耗的iCE40 UltraPlus FPGA对传感器数据进行预处理,从而最大程度地降低了向SoC或云端传输数据进行分析的成本。例如,如果是用在智能门铃上,sensAI会初步读取来自图像传感器的数据。如果判断为不是人,比如说是一只猫,那么系统就不会唤醒SoC或连接到云端作进一步处理。因此,这种方法可以最大程度降低数据传输成本和功耗。如果预处理系统判断门口的对象是人,则唤醒SoC作进一步处理。这能极大减少系统需要处理的数据量,同时降低功耗要求,这对于实时在线的网络边缘应用来说至关重要。 图10:基于iCE40 UltraPlus FPGA的sensAI会预处理传感器数据以判断该数据是否需要发送到SoC作进一步处理 结语: 莱迪思的FPGA具有独特的优势,可以满足网络边缘设备快速变化的市场需求。设计人员可以在不依赖云端的情况下,快速为网络边缘设备提供更多计算资源的其中一个方法是使用FPGA中本身的并行处理能力来加速神经网络性能。此外,通过使用针对低功耗运行而优化的低密度、小尺寸封装FPGA,设计人员可以满足新的消费和工业应用对功耗和尺寸的严格限制。

    时间:2020-10-12 关键词: AI 智能探测 FPGA

  • 继NVIDIA收购ARM后,半导体行业进入整合期

    继NVIDIA收购ARM后,半导体行业进入整合期

    随着人工智能、5G和物联网行业的快速发展,对半导体的大量需求使得这个行业快速进入了繁荣期。2020年继英伟达400亿美元收购ARM后,AMD正在就收购可编程逻辑器生产商赛灵思深入谈判,这笔交易价值约在300亿美元左右。 1、AMD到底想得到什么? 赛灵思公司的主营业务是设计、开发和销售可编程平台。塞灵思是可编程逻辑门阵列(FPGA)的老大,其市场份额超过了50%。这家公司创立于1984年,是全球第一个无晶圆长半导体公司。 在2019年Q2中,全球无晶圆半导体厂排名中排名第六。只比AMD略微逊色一点。FPGA最大的优势就是设计开发周期都相对较短并且随着摩尔动律的失效。传统结构的处理器并不能够继续进行性能的稳定提升。这是FPGA的优势就体现出来。 赛灵思公司在眼下的时代成为一块“香饽饽”最重要的原因就是他可以生产用于数据中心的可编程芯片。在5G设施和人工智能芯片快速发展的今天。FPGA将会成为未来芯片发展的主流趋势。而赛灵思则会成为这领域中当之无愧的璞玉。 其实说到底,AMD之所以想要尽快完成这笔交易,最主要的目的就是想要通过生产可编程的芯片杀入由英特尔牢牢占领的服务器市场。能够占据服务器市场仅仅是第一步。更重要的是AMD想要通过收购赛灵思提前卡位未来的能够快速增长且行业潜力巨大的物联网市场、智能汽车等领域。 2、收购成功几率几何? 从消息中我们可以看出,AMD出手阔绰的豪掷300亿美元收购赛灵思。说明其自身财务状况处于非常乐观的状态。目前AMD公司市值975.64亿美元。赛思灵市值为295亿美元。从账面看来,收购成功几乎是手到擒来。 但是财务健康并不意味着收购成功。毕竟在行业中属于地震级别的交易,势必要遭到同行和反垄断法案的考验。就拿英伟达400亿收购ARM来说,英伟达公司不仅面对着来自监管部门的严格身缠。同时业内的一些竞争对手也表示反对。他们其中不乏英特尔、高通等巨头级的高科技企业。 监管部门严格监督、国家反垄断法案的坚决执行以及竞争对手在背后“痛下杀手”,各种各样的因素交织在一起让此次收购依旧扑朔迷离。更重要的是赛灵思公司并没有针对最近的收购消息发表官方态度。更是让人有些摸不到头脑。 对于全球半导体行业,不管是美国打压华为间接引起的新方向新发展,还是5G物联网等行业快速发展的催化,都使半导体行业迎来了为数不多的繁荣期。

    时间:2020-10-11 关键词: 英伟达 无晶圆 FPGA

  • AMD收购赛灵思,关于FPGA的重要性

    AMD收购赛灵思,关于FPGA的重要性

    超微半导体(AMD)正就收购芯片制造商赛灵思(Xilinx)进行深入谈判,该交易价值可能超过300亿美元,堪称芯片业的“世纪并购”。然而Xilinx是做什么的,AMD为什么要收购它呢? 赛灵思是FPGA的发明者,FPGA能够快速开发和成型,相较于其他标准类芯片,FPGA并不需要长达数年的开发周期。 FPGA(现场可编程门阵列)是可以快速动态重新配置的半导体器件。与其他类型的设备(例如CPU和GPU)相比,它们在各种工作负载中具有某些优势。 自从赛灵思发明了FPGA,至今已经36年了,在这个期间,无数大公司想杀入这个领域,每过十年,就有一批公司退出或倒下(被收购),直到最后形成了FPGA的双巨头格局。 即Xilinx和Altera占据了绝大部分市场,剩下的残羹冷炙分给几家小公司,其中第三是当年紫光收购失败的Lattice。 2015年,英特尔以167亿美元的价格收购了Xilinx的主要竞争对手FPGA制造商Altera,并将该公司整合到其可编程解决方案集团(PSG)中。自此以后,Xilinx成为了FPGA公司的独苗。 在高端芯片中,最顶端的明珠无疑属于CPU、GPU、FPGA,自从Intel收购Altera,英伟达收购Mellanox、ARM,AMD收购Xilinx之后,高端芯片领域将迅速形成三足鼎立的格局。 Intel的CPU很强,但是在两年内拼不过有台积电7nm加持的AMD,其GPU明年也将发布。Intel有Altera的FPGA技术。AMD目前则是CPU与GPU都还不错,CPU性能目前可以至少碾压Intel两年时间。GPU也有一席之地,胜在便宜量又足。如果收购Xilinx成功,将进占高端FPGA领域。英伟达的GPU非常强,如果收购ARM成功,将在物联网领域得到CPU/MCU的核心技术,而他收购的Mellanox,在服务器和存储连接领域将拥有巨大的优势。英伟达目前没有FPGA,消化目前的收购是阶段重点。 那么AMD收购Xilinx的技术动机在哪里呢? 两家公司有着在深度学习项目上紧密合作的历史,例如在AMD EPYC处理器上的Xilinx深度学习解决方案。在数据中心服务器领域,紧密集成的CPU+FPGA解决方案早已经不是新鲜事物了。 CPU长于控制,而FPGA则擅长运算。因此,很早就有人想到了在FPGA开发里引入CPU来进行逻辑控制,以弥补FPGA的缺陷。 Altera最早提出了SOPC(System On a Programmable Chip,可编程片上系统)技术,这种技术使用FPGA的逻辑和资源搭建的一个软核CPU系统,后来Xilinx也进行了跟进。Altera主推的软核是Nios-II,而Xilinx主推的软核则是MicroBlaze。 由于它们是厂商自己开发的一套封闭开发环境,没有形成行业标准,用起来不是很方便,因此一直没有流行起来。 随着大数据、物联网、AI的发展对于算力的需求增大,Xilinx意识到不如让FPGA给CPU做外设,直接在FPGA集成ARM的Cortex-A系列处理器。FPGA专门用于计算,除此之外的所有事,都由强大的Cortex-A系列处理器来完成。 在2010年4月硅谷举行的嵌入式系统大会上,Xilinx发布了ZYNQ 7000系列FPGA,它由双核A9+Xilinx 7系列FPGA组成。请注意,这已不再是单纯的FPGA芯片,而是一个嵌入式FPGA开发板。 Zynq系列取得了巨大的成功,使之成为了主流算力加速解决方案。在ZYNQ推出后,很多大学研究小组用它完成了卷积神经网络在FPGA平台上的部署,实现了对卷积神经网络的硬件加速,对FPGA加速器的研究一度成为人工智能领域的热门方向。 这种CPU+FPGA模式也被Altera迅速跟进,它们也推出了双核A9+Altera FPGA的开发平台,比如DE1-SoC等。严格来说,Cortex-A9处理器不是单片机(即微控制器,MCU),而是微处理器(MPU),但是它们都是CPU。 接下来,ARM成为了关键先生,在2015年ARM终于决定开源自己的Cortex-M0核。随后,ARM又在2017年6月20日开源了Cortex-M3核,并在2018年10月22日开源了Cortex-A5核。DesignStart计划的不断推进,使得ARM在物联网领域也逐渐建立起优势。 Cortex-M0/M4核的开源,使得ARM从FPGA开发商手里接过了SOPC的接力棒,传统的FPGA开发时代也彻底终结了,新时代的FPGA开发主要可分为两种:一种是开发板上本来就有硬核CPU,提供CPU+FPGA的开发环境;另一种是开发板上没有硬核,但我们可以通过使用ARM开源出来的verilog文件,用FPGA的逻辑和资源搭建出一个软核CPU,也能构建起CPU+FPGA的开发环境。 我们可以看到,现在的FPGA已经被彻底边缘化了,在赛灵思的产品销售中,纯FPGA芯片的销售量逐渐缩小,而CPU+FPGA水涨船高。 考虑到在通信市场中比如华为基站对于纯高端FPGA的需求还很大,这块市场赛灵思还不会放弃,但是随着华为被限供,赛灵思内部已经将华为订单剔除出KPI,将战略重点放在新方向上。 其实不只是CPU,现在的异构趋势下,MCU(MPU)、DSP和FPGA都已经有融合的态势。 ARM的M4系列里多加了一个精简的DSP核,TI的达芬奇系列本身就是ARM+DSP结构,Altera和Xilinx新推出的FPGA都包含了ARM的核在里面。所以三者之间的关系是越来越像三基色的三个圆了。 最近几年,AMD的数据中心处理器业务也在不断增长,与长期在该领域占据主导地位的英特尔展开越来越激烈的竞争,在服务器算力加速领域,双巨头都不约而同地采用了CPU+FPGA的核心架构,赛灵思的加入将使AMD在与英特尔的竞争中处于更有利的地位,并在快速增长的电信、国防市场中占据更大的份额。 另一个巨头英伟达唯有加强其云端GPU的优势,来和对手的CPU+FPGA架构比拼,而数据中心的另一个大玩家谷歌,则在默默修炼其TPU处理器(其并行处理架构“脉动阵列”与FPGA有相似之处),也不容小视。 总的来说,纯FPGA芯片走向边缘已经非常清晰,而FPGA技术本身不会消亡,必将会融合嵌入到新的异构环境中,与CPU、DSP通力合作,成为主流市场的必备兵器。

    时间:2020-10-11 关键词: 处理器 半导体器件 FPGA

  • FPGA将成为主流,从数据中心到云再到边缘

    FPGA将成为主流,从数据中心到云再到边缘

    Xilinx在1984年引入第一个现场可编程门阵列(FPGA),尽管到Actel在1988年普及这个术语它们才被称为FPGA。Achronix产品规划和业务开发副总裁Manoj Roge谈过去三十年来发生的三波FPGA浪潮,Achronix成立于2004年,并于2007年将其第一批产品投入该领域,但与可编程逻辑行业的先驱Altera(现已成为Intel的一部分),Xilinx和Lattice Semiconductor相比,这是市场的新贵,而后者早在20年前就已成立。 但是罗格(Roge)在赛普拉斯半导体(Cypress Semiconductor)担任产品线经理十年,然后在Altera担任了五年的FPGA产品管理工作,然后在Xilinx做了七年的相同工作,然后加入了更具进取心的Achronix两年多一点。 Roge对数据中心和边缘FPGA的前景看好,并在2020年1月22日举行的Next FPGA Platform活动的现场采访中解释了有关下一波采用这些可编程器件的更多信息以及这是如何实现的不同。 Roge解释说:“我们相信FPGA将充当从云到边缘到IoT部署的可编程加速器。” “以这种观点,五年前,我们建立了一种业务模型,以许可将我们的IP集成到客户的SoC或ASIC中,我们认为这可能是第四次浪潮。我们已经看到了这个开始。” 我们建议Achronix可能会与Nvidia获得FPGA许可协议,后者可能想考虑将可编程逻辑嵌入其GPU加速器以及可能基于Mellanox Technologies销售的“ BlueField”多核Arm处理器的SmartNIC中。 自去年3月宣布以69亿美元的收购交易以来,尚未成为Nvidia的一部分。“ Volta” GPU是具有硬编码整数和浮点单元的ASIC,并且考虑到AI框架和HPC工作负载的变化速度有多快,我们可以预见到GPU的某些部分在比特性方面可能更具延展性和相互之间的联系。从理论上讲,至少。 正如我们之前提到的,四大FPGA供应商的总收入约为65亿美元左右,FPGA的总可寻址市场相当大–由于FPGA能否在从理论上讲,可以完成CPU和GPU以及自定义ASIC的大量工作。我们将Roge摆在现场,讨论包括许可的FPGA逻辑以及整个器件在内的第四次浪潮将如何扩展TAM,因此,大概是收入流向了数据中心产品的FPGA制造商。 “我们采取自上而下的方法,”罗格说。“如果您看一下数据中心基础设施支出,这是一个庞大的数字,大约为1000亿美元左右。其中很大一部分是在技术支出上。即使我们能得到一小部分,正如其他人之前所讨论的,您也不能仅仅部署CPU来满足计算需求的指数级增长。随着新一轮的数据中心加速,我们预计将增加100亿美元,再加上TAM。” 因此,这就产生了一个问题,即来自网络,通信,航空航天,国防和消费市场的现有TAM加上不断扩展的数据中心TAM是否足以支持四个主要的FPGA厂商和许多较小的厂商。 我们肯定已经在CPU市场上看到了这种情况,CPU市场上有一个主要供应商(Intel),一个回头大供应商(AMD),一个尚存的专有和RISC芯片供应商,它们的数量相对较少,但系统却利润很高(IBM),并且两个Arm新贵(Ampere和Marvell)。 在Nvidia占主导地位的GPU方面也是如此,AMD是一种越来越可信的替代方案,英特尔也是PC上的竞争对手,但对数据中心抱有厚望。三到四名球员,其中一名统治者,似乎是魔术的分配。 另一个尚未解决的问题是如何在数据中心中部署FPGA。借助Nvidia创建的GPU和CUDA混合CPU-GPU计算环境,世界上一半的台式机和笔记本电脑都可以在其中装有Nvidia GPU来运行CUDA。 我们不希望将FPGA自动添加到PC或服务器中,因此开发人员没有内置的方式来学习如何对FPGA进行编程,并测试出他们如何将其集成到应用程序和数据工作流程中的想法。 但是,正如Roge所指出的和我们同意的那样,在Amazon Web Services和Microsoft Azure云上提供可用的FPGA实例是进行实验的合理替代,现在,由于服务器和网络的互连具有所有灵活性, Roge相信:“一旦软件堆栈成熟,我们认为FPGA将会成为主流,从数据中心到云再到边缘。”

    时间:2020-10-11 关键词: 处理器 数据中心 FPGA

  • 还原最真实的世界,FPGA是怎么做到的?

    还原最真实的世界,FPGA是怎么做到的?

    导言:“影像记录时代,只有真实才能打动人心。” 自从影像记录诞生以来,还原逼真世界的每一寸细节一直便是行业的终极追求。影响图像质量包括分辨率、位深度、帧速率、色域、亮度五个要素,近年来4K/8K 60Hz/120Hz的显示面板逐渐被人耳熟能详,伴随着分辨率、位深度、帧速率升级,色域和亮度也被提出新的要求。 然而事实上,人眼本身就是“奇迹的造物”,可以通过瞳孔的放大缩小感知方寸之间的每一处亮部和暗部,而现实世界则跟随自然的照度不同拥有不同的亮部与暗部细节。 因此,为了能够充分展现每一处细节,HDR(高动态范围)这一显示概念被提出。当然,最终图像仍然是要通过显示面板呈现给观者,其中尤其是大屏显示面板逐渐伴随8K的行业趋势,标配HDR这一技术。 但在激烈的市场竞争之下,大屏显示面板厂商更新迭代速度加快,面板技术也持续更新。这样的背景之下,如何快速适配HDR功能成为了竞争点的关键。 日前,赛灵思(Xilinx)展示了利用FPGA(现场可编程门阵列)器件的创新型TCON(Timing Controller,时序控制器)方案,利用FPGA高效实现供应商和特定面板色彩容量的转换,利用FPGA TCON的IO可编程性适应各种视频接口,以应对瞬息万变的行业。21ic中国电子网受邀参加本次讨论会,赛灵思公司大中华区核心市场事业部市场及业务开发总监酆毅(Bob Feng)现场讲解。 赛灵思公司大中华区核心市场事业部市场及业务开发总监酆毅(Bob Feng) 01 HDR影响着两个关键要素 “HDR是最近三到四年显示和电视技术最热的关键词,芯片、显示面板、PC、系统厂商均参与制定了HDR相关标准”,Bob Feng为记者介绍,与HDR(High-Dynamic Range,高动态范围)相对应的概念自然就是SDR(Standard Dynamic Range,标准动态范围),事实上HDR早已远超显示技术专家和学者研究方向这一范畴,真正渗透入了消费电视领域。 简单来说,HDR可以清晰还原图像更多细节。Bob Feng强调,HDR一直是个非常容易被误解的概念,宽动态很多人会直接联想到高对比度或高亮度,事实上并不是这样的。HDR所覆盖的范围包括宽色域(WCG)和高亮度范围(HLR),基于此二维色度范围与亮度范围的叠加转变为三维概念。 上文中也有提及,影响图像质量包括分辨率、位深度、帧速率、色域、亮度这五个要素,HDR所影响的参数就包括色域和亮度这两个关键参数,实际上在分辨率标准提升的现今,也对这两个关键参数提出新的要求。 在宽色域(WCG)方面,在显示业界2K HD级别的显示的色度范围遵循的是全高清广播标准BT.709(REC.709);而当在4K UHD级别下,则遵循DCI-P3标准色域更广;在8K SHV级别下,则遵循REC2020标准,色域越来越接近人眼。 在高亮度范围(HLR)方面,人眼所能覆盖的范围是0到10000 nits,显示行业现在技术则可达到16亿nits。不过需要注意的是超出人眼识别范围的亮度是没有意义的,因为最终呈现的效果必须是人眼能够辨别的。因此,业界为此制定了3条曲线,被称之为伽马曲线(A.K.A. Gamma Curves),摄像机的采集内容和显示传输的内容,即光电转换和电光转换的过程,二者是相辅相成的。 02 HDR对不同屏幕转换不同 从屏幕技术方面来谈,目前行业主流的显示技术正在以LCD、OLED和Micro LED的序列逐渐迭代。Bob Feng强调,显示技术的迭代最终的目标是更加完整地还原人眼所见,在逐次迭代的过程,也会越来越接近HDR。 LCD本身像素不是自发光的,依赖的是背光。上文也有讲到HDR的一项重要参数就是亮度,LCD背光照明方式也逐渐从边缘LED背光、直下式LED背光转向量子点LED背光mini LED和双电池背光(Dual Cell,叠屏)。 特别需要注意的是mini LED属于LCD的一种过渡态,虽然名字和OLED和Micro LED相近,但仍然是一种依赖背光的显示技术;叠屏则是利用一层背光和一层控光的方式,达成更多的背光分区。 Bob Feng表示,LCD中真正能够表征HDR的只有量子点LED、mini LED和叠屏这三种背光方式的面板,这是因为实现HDR亮度值需要能够提到800-4000 nits,色度尽可能接近DCIP3。 OLED和Micro LED两者则属于自发光的显示技术,本身相似之处很多,每个红绿蓝亚像素都能自身产生光源,而有句老话曾说过“HDR与OLED是绝配”。二者最大的区别在于OLED主要使用有机材料,Micro LED则是使用无机材料使得组件小于100μm,获得更薄的厚度。 不过,由于Micro LED只有在高亮度情况下蓝光eqe才具有明显优势、低电流低亮度下效率无优势以及成本过高和边缘效应等问题还正在解决之中。因此OLED是目前的主流发展方向,不过OLED本身也存在良率的一些问题。 Bob Feng强调,对于显示厂商来说,为了越来越接近人眼所见,就要不断推出新的显示面板技术,但事实上面板厂商正在面临着良率和成本的双重考验。 HDR是如何显示在屏幕上的?在摄像机端,环境光被收束至摄像机中的光电转换过程中,光线被PQ HDR或HLG HDR伽马曲线转换为电信号;在图像端,则需要针对不同屏幕进行电光转换,进行色量转换的这一器件便是TCON(时序控制器)。 Bob Feng为记者做了一个比喻,假设电信号是许多调色桶,TCON芯片便是控制色量调控和色量转换的关键芯片。事实上,LCD、OLED、Micro LED在颜色与电信号的映射上不可能是完全一样的,因此必然会带来转换算法的不同。 03 适配不同屏幕接口的FPGA TCON 正因为不同显示面板,TCON芯片的算法不同,因此在显示技术更新换代之时,厂商必然会遇到TCON设计的挑战。 假设使用传统ASIC/ASSP TCON方法,意味着针对不同分辨率下的LCD、OLED、Dual Cell、Micro LED等不同的屏幕类型,都要针对性设计开模,这主要是因为ASIC的程序是固定或者标准的,不可修改。 值得注意的是,TCON除了包揽列驱动器(Column driver)和行驱动器(Row driver)的色调和色域转换工作以外,还会集成smart TCON等图像缩放功能。 在OLED或Micro LED转变的过程中,本身的良率和成本问题本身并没有解决,还要考虑ASIC/ASSP TCON的适配问题,这无疑无形中又增加了一座“大山”。 在此方面,FPGA的灵活性似乎是“天生”为这种场景而生,针对不同的分辨率下,FPGA TCON所具有的的逻辑可编程性在LCD、OLED、Dual Cell、Micro LED下具有很好的适配性。 Xilinx提出了三种FPGA TCON适配,FHD的情况下使用SPARTAN 6系列产品、UHD下使用KINTEX 7系列产品、8K情况下使用KINTEX UltraSCALE系列产品。Bob Feng为记者介绍,之所以选用不同系列产品,主要是从功耗和成本上考虑。 具体来说,从FHD到8K的迭代中,主频也以4倍速度迭代。FHD下主频大约在150 MHz,SPARTAN则刚好贴合这一数值;UHD主频大约在600 MHz左右,但KINTEX 7无需其他厂家一样使用四像素并行总线,KINTEX 7只需做双像素并行总线,主频可以降到300 MHz,利用一半规模跑所需逻辑;8K方面,KINTEX UltraSCALE的主频甚至可以做到600 MHz。 需要注意的是,使用FPGA TCON的接口灵活性,可以简化整体设计,增强效率。具体来说,传统设计中包括Mobile SoC和TV SoC两颗芯片,但由于定制的AISC/ASSP是没有直接接口可以对接Mobile SoC,TV SoC仅仅是充当了转接的作用,整体的内容和服务均由Mobile SoC提供。 使用FPGA TCON则更加理想,从架构上来看,元器件选择从3芯片变成了2芯片。Bob Feng强调,Xilinx还剔除了一些冗余接口一对一(V-by-One)的选择,为智能电视设计带来极大的简单化和小型化。 在智能电视越来越轻薄化的行业动态下,一般采用面板后贴主芯片和外置芯片两种方式。但无论采用哪种方式,利用一对一(V-by-One)的接口相连,会显得非常臃肿。 基于这样的洞察,赛灵思和赛灵思的合作伙伴深圳视显光电公司推出4种解决方案,囊括了FHD TCON、4K60 TCON、8K60 TCON、8K120 TCON。正如上文所述,只要速度和性能满足这个范围,就可实现不同类型显示屏间的设计转换。 深圳市视显光电技术有限公司的8K@60Hz无损视频播放机在2020年全球同步量产,其使用的方案便是FPGA TCON。根据该公司总经理李兴龙的说法:“FPGA灵活的可编程特性,为我们快速开发新产品,新技术带来了极大的助力。比如我们用FPGA开发了针对视频领域的各种专用传输接口,针对8K应用的HDMI2.1、DP1.4等,我们利用FPGA可编程快速迭代的特点,最早给出了解决方案,可以比我们的竞争对手,或者ASIC方案,更快的推出新产品,这是我们的核心行业竞争力之一。” 对于ASIC/ASSP TCON和FPGA TCON, Bob Feng认为二者是共存关系,ASIC本身具有成本优势必然会长期存在,但FPGA TCON的灵活性和简化性相信在新兴面板技术转型中将发挥充足的优势。

    时间:2020-09-29 关键词: Xilinx FPGA

  • 如何简化电源系统设计?

    如何简化电源系统设计?

    现如今,另一个棘手的问题来自难以预料的FPGA或ASIC最佳运行参数的变化。最终的特性结果有时会迫使设计人员在构建了初始硬件后更改他们的设计,从而导致他们在以下两个方面上很难做出决定:利用性能更低的产品抓住所需的市场商机,还是冒可能给予竞争对手上市时间优势的延误风险。根据所选的电源架构,这种更改可能如同以下情况那样复杂:需要额外电压域和新的排序,以及调整系统的热作业面(operating profile),以确保在同一位置出现更高的总功耗时保持可靠性。 面向电信及数据通信市场的先进电子系统大量依赖于高性能、精细线度数字IC(FPGA、DSP和/或ASIC)快速有效地处理对时间敏感的数字数据。对更高带宽的需求已迫使这些数字IC的制造商追求领先的工艺技术,以便在将功耗降至最低时优化性能。但是,这一趋势也产生了前几代工艺中所没有的多种电源管理问题。降低内核电压电平提高负载电流,采用亚100纳米工艺技术实现的更小芯片尺寸使这些IC中的电流密度急剧增加。此外,分离的电压层与多核架构的使用还迫使系统设计人员提供更多的独特电压层,以及在这些电压之间提供特定的排序。外部电源管理IC已可提供,它们可解决这些高端系统所产生的一个或多个问题,但如何使这些IC与电源转换块无缝协作仍是一个亟待解决的问题,这经常需要多个分立元件并进行大量软件开发。 具有整合电源管理的负载点转换器有助于系统设计人员开发具有分布式智能的电源系统架构。这些架构具有更高的性能,而且比传统模拟电源架构更容易设计。这种智能电源系统还可使系统设计人员在研发周期后期快速适应系统要求变化,而且不会出现大量硬件再设计或重大的软件开发延迟问题,从而缩短了产品上市时间,并可使电源系统架构在具有不同电源要求的众多产品间轻松地进行再利用。 PMBus实现了兼容性 为简化智能电源系统设计,我们必须首先提供大量兼容的电源产品,而且这些产品需要具有实施复杂电源管理功能所需的灵活性和智能,同时可减轻结合不同电源元件的负担。为满足这一要求,几家电源IC及电源模块公司创建了Power Management Bus(PMBus),这是一个通过I2C或SMBus硬件接口提供的标准指令集。这种开放式标准指令集有助于电源元件制造商(IC及模块)提供兼容的产品。这些产品可轻松进行集成,以创建先前需要大量设计和定制软硬件的定制智能电源架构。此外,它还提供了标准PMBus命令,以支持多个电源管理功能,其中包括电压排序、边限、电压、电流及温度监控,以及广泛的故障管理。此外,每个PMBus命令必须由任何相一致的器件(无论制造商、外形或功率级如何)以同样方式加以解释,从而可轻松扩展简单的系统软件工作,以便包含所需数目的电源域。 系统设计示例 表1说明了嵌入式电信设计的典型系统电源要求,以及与各种电源域相关的任何管理要求。电压与负载电流范围广,在整个工作电压范围内测试功能需要电压边限,每个器件的电压必须能够动态加以控制,以便在各种工作条件下优化性能。此外,还必须监控每个负载器件的电压、电流及温度,以便提供有关这些高性能、高价格IC正常情况的准确反馈,并确保系统在指定的温度范围内运行。混合使用多种高密度逻辑IC还需要电压排序与跟踪的独特组合。为实现系统兼容性并将通过背板的输入电流降至最小,我们选择了12V的输入总线电压。这种设计一般涉及多个电源转换IC、多个外部电源管理IC及分立元件,以实施排序、跟踪、边限及监控功能。但通过使用可与PMBus兼容的产品,利用最少的独特电源转换IC及最少的器件间连接(如图1所示)即可轻松构建该系统。 对于更高的电流供应,我们选择了单相PMBus DC/DC控制器(ZL2005),因为该控制器能够灵活地处理高达30A的负载电流,而且通过与多个器件并联,它还能够传输更高的负载电流。对于低电流(低于3A)供应,我们选择了具有整合MOSFET的PMBus DC/DC转换器(ZL2105),因为其外形较小。每个器件中均整合了所有必需的电源管理功能,因此可非常轻松地根据每个设备的单独要求对它们进行配置,同时可将分立元件数减至最少,以及最大程度地减小与一般用于配置模拟电源IC的R/C网络相关的容差。此外,每个IC均整合了高度精确的温度传感器,从而使为特定负载IC供电的IC能够实时监控其温度。 无需使用排序器进行排序 这些IC的众多独特功能之一是它们能够在无需外部排序器IC或软件开发的情况下实施确定性的排序算法。利用简单的引脚连接可设定每个IC的输出电压上升持续时间,并可对每个电源加以配置,使其在特定时间开始输出上升,或者跟随另一个系统电压的输出上升。通过将跟踪器件的VTRK引脚与将加以跟踪的电压相连,还可轻松配置电压跟踪;可使用相同引脚连接方法选择一致跟踪或比例跟踪。使用这种简单方案可快速配置整个系统排序顺序和/或跟踪比率,无需主机处理器或软件开发。图2显示了多个电压间排序与一致跟踪的最终组合。 适应系统要求的变化 当为高性能数字IC供电时,例如FPGA、DSP及ASIC,初始化硬件后电压与排序要求经常会发生变化。例如,在最初测试后,确定只有在第一次对逻辑电源加电或在FPGA内核供电前对FPGA I/O电源加电(与最初设计假设相反)时系统性能才能符合设计目标。使用传统电源管理IC实施这种更改将需要进行硬件及系统软件更改,从而会失去关键的市场机会。但使用支持PMBus的电源管理IC,这些更改可通过几个简单的PMBus命令重新配置排序来加以实施。系统修改仅限于非常简单的软件更改,无硬件更改,从而可使设计人员保持相同的项目期限。图3显示了已快速进行了重新配置的新排序。

    时间:2020-09-21 关键词: asic 电源 FPGA

首页  上一页  1 2 3 4 5 6 7 8 9 10 下一页 尾页
发布文章

技术子站

更多

项目外包