工业、汽车、通信、航空航天和安防市场对关键任务(Mission-critical)应用的需求越来越大。如今,莱迪思NexusTM技术平台为用于关键任务(Mission-critical)应用的FPGA提供了绝对的优势。
引言(MPU vs.FPGA)
如今的关键任务系统可能要求相当大的算力。一种计算解决方案就是采用微处理器单元(MPU),例如PC和工作站。尽管这种处理器看似很强大,但实际上它们只执行简单的任务CONTROL ENGINEERING China版权所有,例如将两个数字相加或者比较两个数字的大小。同样,它们看似很快,是因为系统时钟以2.4 GHz或者更高频率运行。
问题的关键在于,尽管MPU可以很好地处理决策任务,在执行很多数据处理任务时就不那么高效了。因此, MPU在执行此类任务时往往功耗更大,产生热量更多。
在嵌入式应用中实现信号和数据处理的更有效方法是采用现场可编程门阵列(FPGA)。FPGA受益于自身的并行架构,能以低延迟并行执行数据处理操作。正如专栏文章《FPGA基础知识:FPGA是什么?为什么需要FPGA?》所述:"任何FPGA的核心都在于其可编程架构,它以可编程逻辑模块阵列的形式出现。每个逻辑模块都包含多个要素:一个查找表(LUT)、一个多路开关和一个寄存器,所有这些都可以配置(编程)执行用户所需的功能。"
图1. 通用FPGA可编程架构(图片来源:Max Maxfield)
一种更为形象的描述方法是将可编程逻辑视为可编程互连这片"海洋"中的"岛屿"。可编程逻辑模块组可以经过配置执行所需的逻辑功能,而可编程互连则将逻辑模块相互连接,并且连接到主要的通用输入/输出接口(GPIO)。
需要注意的是,以上描述只是极端简化的情况。除了可编程架构之外,FPGA还可以包含相当于数兆RAM的存储模块以及大量数字信号处理(DSP)单元。同样,除了通用I/O外,FPGA还可以包括支持千兆位串行接口的高速SERDES模块以及与外部存储器连接的高速接口。
FPGA广为人知的一个主要原因是其可编程逻辑可以配置为以大规模并行方式执行相应的数据处理算法,这不仅比MPU快几个数量级,而且功耗很低。此外www.cechina.cn,与算法"冻结在芯片中"的SoC不同,FPGA的设计可以随时重新配置。此外www.cechina.cn,由于用户IP由终端用户自行编程, FPGA在制造时不包含任何用户IP,这使得FPGA能够在不受保护的供应链中运输,而不会造成用户IP被盗窃或篡改。这一点也和SOC及ASIC不同。因此,FPGA是包括工业机器人和通信基础设施设备在内的关键任务系统的理想选择。
辐射的挑战
为了拓展容量、提高性能、降低功耗和成本CONTROL ENGINEERING China版权所有,每一代新芯片的晶体管都变得越来越小。如今芯片中制造的结构大小仅为几十纳米(nm)(一纳米等于一米的十亿分之一)。这些结构非常微小,可能会受到地球上辐射的影响。
此外www.cechina.cn,关键任务应用的系统一般都部署在持续高水平辐射的环境中,包括高纬度地区甚至太空。
对这类应用而言,有两种辐射效应影响最为严重:单粒子效应(SEE)和电离总剂量效应(TID)。
SEE是指由单个电离粒子(电子、质子、离子、光子等)在集成电路中引起的即时效应。处理SEE需要在辐射发生时能够快速恢复。相比之下,由于长期暴露在辐射下不断累积,TID最终会导致半导体晶格老化。典型的TID效应包括晶体管开关阈值偏移、漏电流增加、性能下降以及最终导致功能故障。因此,解决TID需要长时间抵御辐射并能从中恢复。
单粒子翻转(SEU)是SEE的一种情形,指高能粒子撞击微电路中的敏感节点并引起状态变化。例如,SEU可能导致寄存器单元或存储单元从逻辑0翻转为逻辑1或由到0。与TID引起的问题不同,SEU被定义为"软错误",因为它可以被校正。
图2. 时序逻辑中的单粒子翻转(SEU)(图片来源:Max Maxfield)
不幸的是,制程越来越先进会导致多单元翻转(MCU)的趋势愈发严重。这意味着,由于芯片中的结构排列非常紧密,SEU实际上可能会使多个存储元件发生逻辑翻转。此外www.cechina.cn,多位翻转(MBU)是指一种在同一数据字或帧内出现的MCU,可能会对系统的纠错能力产生负面影响。
SEE的另一种形式是单粒子瞬态(SET),它是指辐射粒子影响一部分组合逻辑而形成脉冲(也称为毛刺或尖峰)。
图3. 组合逻辑中的单粒子瞬态(SET)(图片来源:Max Maxfield)
SET本身并不会造成太大问题,因为通常在系统其他部分检测到之前,它就已经消失了。话虽如此,如果SET恰好发生在错误的时间,则可能在时钟信号控制下进入寄存器元件或存储单元中,这时它就会变为SEU。
另一个潜在的问题是单粒子锁定(SEL),SEE会可能导致CMOS电路的电源和接地轨之间产生低阻抗通路(实际是短路)。如果发生这种情况,则需要立即对设备重启(关闭电源然后再打开),防止对其造成严重损坏。不言而喻,在许多情况下重启关键任务设备的电源可能会造成很多问题。
对于FPGA还需要进一步考虑。FPGA除了寄存器元件和RAM单元之外,还包括用于配置可编程逻辑块的配置单元、可编程互连和可编程通用I/O。并且不同的FPGA采用的配置单元技术也不尽相同。
莱迪思提供基于SRAM的全新器件www.cechina.cn,该器件采用莱迪思Nexus FPGA技术平台开发,为实现用于执行关键任务应用的先进系统提供了绝对的优势。
Nexus技术平台
莱迪思的Nexus技术平台基于28纳米FD-SOI工艺,为FPGA市场提供了巨大的差异化优势。
FD-SOI工艺直接带来两大重要优势。首先,由于采用全耗尽型工艺,因此芯片本身具有很强的抗辐射能力。FD-SOI本质上不受单粒子锁定的影响,这意味着在关键任务应用下无需停机,而通常则需要重启电源才能解除这种状态。
第二个值得注意的优势是灵活性。通过改变基底的偏压,用户可以选择采用高性能(HP)还是低功耗(LP)模式运行。此外www.cechina.cn,可以通过程序控制让系统在两个模式下实时切换。
例如我们之前已经讨论过,当辐射以高能粒子的形式穿过寄存器元件或存储器单元时,就会出现单粒子翻转,使半导体材料电离(产生电荷),形成短暂的电流脉冲。这种脉冲可能足以干扰到存储的数据。
观察如图4(a)所示的bulk CMOS工艺。辐射(红色箭头)穿过芯片生成一条电离路径,随之留下正负电荷。这些电荷随后在入射点处聚集(蓝色箭头)。
图4. SEU对Bulk CMOS工艺(a)和FD-SOI工艺(b)的影响比较
相比之下,我们再来观察如图4(b)所示的FD-SOI工艺。在此情况下,由于氧化物层(黄色)下方的任何电荷都无法在敏感节点处聚集,因此,该氧化物层可以将生成的电荷隔离开来。较少的电荷意味着瞬态电流脉冲也较弱,也就不太可能使寄存器元件或存储单元发生故障。
之前提到的另一个潜在问题就是MCU和MBU,这两种情况下单个粒子可能破坏多个存储元件。在如图5(a)所示的Bulk CMOS工艺下,辐射(红色箭头)穿过芯片生成一条电离路径,随之留下正负电荷。除了在入射节点处聚集(蓝色箭头)外,这些电荷还可能在相邻节点处聚集(紫色箭头),从而导致MCU或MBU。
图5. Bulk CMOS工艺(a)容易受到MCU和MBU的影响,而FD-SOI工艺(b)可以防止这些干扰
相比之下,我们来考察一下图5(b)所示的FD-SOI工艺。除了将入射节点与大部分生成的电荷隔离开外,掩埋的氧化物层(黄色)还极大地缩小了每个单元的敏感区域,让单个粒子轨迹很难影响到多个数据位CONTROL ENGINEERING China版权所有,从而大幅减少了MCU和MBU的发生。
关键任务系统和安全系统的设计人员通常使用FIT(故障率)的概念。器件的FIT是指器件在十亿(109)个小时的运行中可以预期的故障次数(例如,一个器件运行十亿小时,1000个器件每个运行100万小时,一百万个器件每个运行1000小时,以此类推)。
就28纳米技术节点下采用Bulk CMOS工艺的FPGA而言,其FIT约为100。相比之下,同样是28纳米制程,采用Nexus平台FD-SOI工艺的莱迪思FPGA其FIT仅为1。这意味着Nexus平台就将FIT降低了两个数量级。基于Nexus平台的FPGA(例如Lattice CrossLink?-NX)提供了详细的SEU描述报告,可用于估算辐射效应导致的故障率。
Nexus平台凭借自身优势,让基于该技术的FPGA真正脱颖而出,更好地服务于医疗、汽车、安防等领域。然而这仅仅是开始,因为莱迪思的使命是将FIT降低到几乎为零,这可以通过强化FD-SOI工艺以及下面讨论的技术实现。
莱迪思Nexus FPGA
纠错码(ECC)存储器是一种数据存储方式,它可以检测和校正任何内部数据损坏,例如由辐射引起的数据损坏。由于SEU被称为"软错误",从而有了软错误检测(SED)和软错误校正(SEC)的概念。
同时,内存刷洗(Memory Scrubbing)是指从每个存储位置读取数据,使用纠错码校正位错误(如果有),然后将校正后的数据写回到同一位置。内存刷洗通常用于关键任务和安全系统以及易受高辐射环境影响的系统。
设计人员通常必须自己来实现内存刷洗功能,但这会消耗宝贵的可编程逻辑资源。相比之下,Nexus FPGA已经包括了专用的IP模块,能够在后台自动执行基于ECC的内存刷洗功能。
此外www.cechina.cn,Nexus FPGA在配置存储器中还内置了SED/SEC模块,从而在不需要外部电路的情况下逐帧进行快速检测和错误校正。尽管此类错误很少见,但理论上仍是有可能的。如果辐射以某种方式导致配置单元状态翻转,此专用IP会将其翻转回去。
因此在莱迪思Nexus FPGA中尚未观察到不可纠正的SEU。底层工艺将理论FIT降低为1,这意味着仍有可能会遇到数位发生错误的情形,但受到影响的数位几乎会立即恢复正常。
虽然如此,但依然可能出现内部SED/SEC引擎可能无法纠正错误的情况。第一种情况是出现多个单独的SEU,其中两个或多个粒子随机扰乱同一数据帧内的多个数位。第二情况是出现MBU,单个粒子使同一数据帧内的两个或多个数位出现异常。
在分析Nexus平台抵御MCU和MBU辐射影响时,要特别注意观察这些效应。这些测试证实了上述技术优势,表明单个粒子很少会影响到多个单元。此外www.cechina.cn,由于莱迪思的存储器阵列设计,所有观察到的MCU都出现在不同的数据帧中,从而可以通过SED/SEC引擎进行校正。
除了使用真实辐射源测试Nexus FPGA外,这些器件还提供能让系统开发人员自行注入模拟辐射的机制。实际上,开发人员可以同步或异步输入单位和多位错误。通过这些机制,开发人员可以验证内存刷洗功能和SED/SEC引擎的运作,以及器件是否正常运行并生成正确的数据,这样可以确保器件和设计即便处于辐射密集的恶劣环境中也能够按预期工作。
结论
与所有电子元件一样,FPGA可能会受到辐射的负面影响,随着芯片中结构的不断缩小,这种影响也变得更加明显。莱迪思Nexus技术平台基于28纳米FD-SOI工艺,能让用户选择高性能或低功耗模式运行,并通过程序控制实时做出更改。此外www.cechina.cn,由于FD-SOI工艺本身具有抗辐射性,因此其故障率FIT仅为1,与同一技术节点下的标准CMOS FPGA相比,提高了两个数量级。
出于以上原因,莱迪思Nexus FPGA非常适合用于商业、工业、通信、安防和汽车等领域的关键任务和安全应用。