首页资源分类FPGA/CPLDAltera > FPGA器件设计技术发展综述_杨海钢

FPGA器件设计技术发展综述_杨海钢

已有 445176个资源

下载专区

文档信息举报收藏

标    签:FPGA器件设计技术发展综述_杨海钢

分    享:

文档简介

FPGA器件设计技术发展综述_杨海钢

文档预览

第 32 卷第 3 期 2010 年 3 月 电子与信息学报 Journal of Electronics & Information Technology Vol.32No.3 Mar.2010 FPGA 器件设计技术发展综述 杨海钢① 孙嘉斌①② 王 慰③ ①(中国科学院电子学研究所 北京 100190) ②(中国科学院研究生院 北京 100039) ③(美国纽约州立大学) 摘 要:现场可编程门阵列(Field Programmable Gate Array,FPGA)作为一种可编程逻辑器件,在短短二十多年 里从电子设计的外围器件逐渐演变为数字系统的核心,在计算机硬件、通信、航空航天和汽车电子等诸多领域有着 广泛的应用。伴随着半导体工艺技术的进步,FPGA 器件的设计技术取得了飞跃性突破。该文在回顾 FPGA 发展 历史的同时,对目前主流 FPGA 器件的前沿技术进行总结,并对新一代 FPGA 的发展前景进行展望。 关键词:现场可编程门阵列(FPGA);VLSI;可编程器件;CMOS 中图分类号:TN47 文献标识码: A 文章编号:1009-5896(2010)03-0714-14 DOI:10.3724/SP.J.1146.2009.00751 An Overview to FPGA Device Design Technologies Yang Hai-gang① Sun Jia-bin①② Wang Wei③ ① (Institute of Electronics, Chinese Academy of Sciences, Beijing 100190, China) ② (Graduate University, Chinese Academy of Sciences, Beijing 100039, China) ③ (The State University of New York) Abstract: As a programmable logic device, Field Programmable Gate Array(FPGA)has evolved from merely a peripheral component in an electronic design to become a core processing element of digital systems over the last two decades. It finds extensive applications in many fields, such as computer hardware, communication, aviation, spaceflight and automobile-electronics, etc. The FPGA chip design research achieves a significant progress with the advance of semi-conductor technologies. This survey reviews the past history, presents status and future trend in the ever quest for high performance FPGAs. Key words: Field Programmable Gate Arrays (FPGA); VLSI; Programmable logic device; CMOS 1 序言 现场可编程门阵列(Field Programmable Gate Arrays,FPGA)是一种可编程使用的信号处理器件, 用户可通过改变配置信息对其功能进行定义,以满 足设计需求。与传统数字电路系统相比,FPGA 具 有可编程、高集成度、高速和高可靠性等优点,通 过配置器件内部的逻辑功能和输入/输出端口,将原 来电路板级的设计放在芯片中进行,提高了电路性 能,降低了印刷电路板设计的工作量和难度,有效 提高了设计的灵活性和效率[1]。 与 ASIC(Application Specific Integrated Circuit)相比,FPGA 具有显著的优势:开发周期短、 前期投资风险小、产品上市速度快、市场适应能力 强和硬件升级空间大[2];当产品定型和扩大产量后, 在 FPGA 中实现的设计也可迅速定制为专用芯片进 行投产[3];在新工艺节点上用 FPGA 转换和重新实 现已有 ASIC 产品,将使产品的升级更容易。 与通用 DSP(Digital Signal Processing)器件相 比,FPGA 利用并行架构实现 DSP 功能,在不少应 用场合性能可超过通用 DSP 处理器的串行执行架 构。在需要大数据吞吐量、数据并行运算等高性能 应用中,往往使用具有 DSP 运算功能的 FPGA 或 FPGA 与 DSP 协同处理实现[4]。 本文第 2 节回顾可编程器件的发展历史;第 3 节对目前主流 FPGA 的结构理论和设计方法进行概 述与分析;第 4 节对 FPGA 前沿设计技术的发展趋 势和面临的挑战进行探讨,对未来 FPGA 技术发展 前景进行展望;最后,第 5 节总结全文。 2 可编程器件发展历史 2009-05-18 收到,2009-11-24 改回 通信作者:杨海钢 ynaghg@mail.ie.ac.ce 自 20 世纪 70 年代以来,可编程逻辑器件(PLD, 第3期 杨海钢等:FPGA 器件设计技术发展综述 715 Programmable Logic Device)作为一种通用型器件 迅速发展起来,改变了采用固定功能器件、自下而 上的传统数字系统设计方法。使用可编程逻辑器件, 用户可通过编程的方式实现所需逻辑功能,而不必 依赖由芯片制造商设计和制造的 ASIC 芯片。 从 PLD 的发展历程来看,按照结构区分,前后 共有 4 种可编程逻辑器件类型:PLA、PAL、CPLD 和 FPGA。 PLA(Programmable Logic Arrays)同时具有可 编程的“与逻辑”和“或逻辑”阵列结构,采用反 熔丝[5,6]编程方式,集成密度较低,只能完成相对简 单的组合逻辑功能,进行一次性编程。为实现时序 逻辑,MMI 公司开发出 PAL(Programmable Array Logic)[7]:PAL 具有可编程的“与逻辑”阵列和固定 的或门,具有 D 触发器和反馈功能,能够实现时序 电路,但同样采用反熔丝编程方式,也是一种低密 度、一次性编程的逻辑器件。 由于整体架构的原因,若将 PAL 的规模和密度 进一步提高,就需要增加“与逻辑”阵列的规模和 更多的 I/O 端口,由此会带来版图面积指数增长[8]。 可行的方法是将更多的 PAL 集成在一起,于是便出 现了 CPLD 器件(Complex Programmable Logic Device)。 早期 CPLD 大都采用 EPROM[9]、Flash(闪存式 存 储 器 )[10] 或 E2PROM( 电 擦 除 可 编 程 只 读 存 贮 器)[11,12]的可编程技术,后期基于 SRAM(静态随机 存储器)[13]可编程技术的发展使 CPLD 器件的密度 得到了提高,可实现复杂的组合和时序逻辑。由于 继承了 PAL 的架构体系,CPLD 器件规模与密度很 难随着半导体工艺技术的发展而进一步提高,需要 寻求截然不同的设计方法。 基于 SRAM 可编程技术的 FPGA 概念最初由 Wahlstrom 于 1967 年提出[14],与 PAL 器件的“与 或”逻辑阵列结构不同,FPGA 是由许多独立的可 编程逻辑模块组成,逻辑模块之间的连接通过可编 程开关实现。这种体系结构具有逻辑单元灵活、集 成度高、适用范围广等优点。为充分利用连线资源, 通常 FPGA 具有多种长度的连线单元,电路的延时 特性具有多种可能。 基于 SRAM 控制的可编程开关结构使可编程 器件具有最大的配置灵活性,但是与 ROM 相比, 需要耗费较大的版图面积来实现可编程开关,因此 直到 1984 年,随着亚微米 CMOS 工艺的出现,Xilinx 公 司 才 推 出 第 一 片 基 于 SRAM 编 程 技 术 的 FPGA[13]。 FPGA 既具有门阵列器件的高集成度和通用 性,又具有用户可编程的灵活性,在规模和密度上 的发展并不受到整体架构的限制,同时 FPGA 还具 有功能强大的 EDA 软件的支持,在随后的 20 多年 中得到了飞速发展。 3 主流 FPGA 设计技术 3.1 可编程技术 可编程技术是 FPGA 的核心,采用不同类型的 存储器实现可编程功能对 FPGA 器件的结构和性能 有着巨大的影响。SRAM 使用标准 CMOS 工艺设计 加工,在 FPGA 中应用最为广泛;Flash/E2PROM 可编程技术和反熔丝结构具有其独特的优点。本节 将分别介绍这 3 种可编程技术,分析其优劣势。 (1)SRAM 编程技术 最基本的 5 管 SRAM 单 元结构如图 1 所示,通过传输管控制存储信息的读 写。当传输管导通时,SRAM 单元内存储的信息可 由数据端读取或改写;当传输管截止时,存储的信 息被首尾相连的两个反相器锁定,由 Q 和Q' 端输 出。理论上,SARM 单元可被配置无数次。 图 1 5 管 SRAM 单元结构 FPGA 中的 SRAM 单元主要实现以下功能:作 为多路开关、交叉开关、互连通道等可编程结构的 控制端,对信号的传输路径进行编程;对片内相对 独立的逻辑功能模块(如可编程触发器、用户可编程 I/O)进行配置;作为查找表(LookUp-Table,LUT)[13] 的存储单元,用来实现 FPGA 的逻辑功能;使用 SRAM 存储阵列作为嵌入式存储器,实现复杂的数 字信号处理和存储功能。 基于 SRAM 单元的可编程技术存在一系列需 要解决的问题:(1)断电后,SRAM 存储的信息将全 部丢失,所以通常使用外部非易失性存储器来存储 相关配置信息,如 Flash 或 E2PROM 等;(2)上电 复位后,配置信息需从外部存储器写入器件,配置 信息有可能被截取;(3)SRAM 单元用来控制传输管 的导通或截止,对 FPGA 内的信号传输路径进行编 程,传输管并不是一种理想开关元件,对信号传输 会带来相当大的阻性和容性负载,降低信号完整性。 (2)Flash/E2PROM 编 程 技 术 Flash 和 E2PROM 存储结构都具有非易失性的特点,即使关 闭电源,内部的存储信息也不会丢失。Flash 存储单 716 电子与信息学报 元取消了 E2PROM 隧道型存储单元的选择管,结构 更简单有效,可通过一个信号一次性擦除一个区域 的存储信息,集成密度更高。基于 Flash 存储结构 的可编程开关电路如图 2(a)所示,配置晶体管和开 关晶体管的浮栅(floating gate)连接在一起,通过控 制配置晶体管的栅极和源/漏极之间的电压,向其浮 栅注入电荷,就可改变开关晶体管导通或截止状态。 基于浮栅结构的开关晶体管截面图如图 2(b)所示。 第 32 卷 图2 与 SRAM 相比,Flash 结合了非易失性和可重 复编程的特点,上电后无需配置时间。用 Flash 结 构替代 FPGA 中的 5 管或 6 管 SRAM 存储单元, 可大大减少晶体管数量,降低静态功耗,整个器件 的静态电流可低至微安量级[15],而基于 SRAM 存储 结构的主流商用 FPGA 产品,静态电流普遍在毫安 量级[16,17]。 基于 Flash 结构的 FPGA 具有其自身局限性: (1)Flash 存储单元擦写寿命是有限的,如 Actel 公 司的 PorASIC3 系列产品,只能编程 500 次左右[18], 这个次数对于大多数 FPGA 开发应用来说是远远不 够的;(2)Flash 结构需要特殊的半导体工艺,无法 在第一时间应用最新工艺技术,器件规模和密度也 远低于基于 SARM 可编程技术的 FPGA,目前基于 Flash 结构的最大规模的商用 FPGA 器件,只有约 300 万系统门容量[18],而最新基于 SRAM 存储单元 的产品,容量可达数千万系统门[19];(3)同样具有传 输管带来的信号完整性问题。 (3)反熔丝编程技术 反熔丝结构在编程之前 通常是开路的,通过编程,使反熔丝结构局部的小 区域内具有相当高的电流密度,瞬间产生巨大的热 功耗,将薄绝缘层介质融化形成永久性通路。 反熔丝结构有两种,一种是多晶-扩散反熔丝, 具有氧-氮-氧(Oxide-Nitride-Oxide,ONO)的介质夹 层,简称 ONO 反熔丝,结构如图 3(a)所示;另一 种是金属-金属(Metal-to-Metal,M2M)反熔丝,简 称 M2M 反熔丝,结构如图 3(b)[20]所示。二者相比, M2M 技术采用无源结构,具有更低编程电压和更小 图3 的电阻(20-100Ω)[5,21],是目前主流反熔丝工艺。 采用反熔丝结构的 FPGA 具有非易失性,版图 面积小,信号传输路径具有较小寄生电阻和电容, 可上电后直接使用,信息安全性高等优点。由于不 能重复编程,就没有系统级相关配置电路,相对其 他两种编程方式,开发成本更低。 反熔丝技术的局限性非常明显:(1)无法重复编 程,不适用于新产品开发;(2)一次性编程不利于器 件可靠性检测,编程后器件良率低于另外两种技术; (3)在不同工艺下,反熔丝材料的电性能具有相当大 差异,在最新工艺节点下实现反熔丝结构非常困难。 采用反熔丝结构的 FPGA 在工艺上往往要落后于最 新的工艺节点,规模和密度也低于采用 SRAM 可编 程 技 术 的 FPGA , 目 前 最 大 规 模 的 商 用 反 熔 丝 FPGA 产品也只有约 400 万系统门容量[20]。 3.2 逻辑模块结构 FPGA 中逻辑模块(logic block)的主要功能是 为数字系统提供最基本的逻辑运算操作和数据存储 功能,研究者们曾经提出过多种结构:基于传输 管[22]、与非门[23]、多路开关(MUX)[24]、查找表和多 输入门阵列[25]等。综合考虑功能、版图面积、速度 和功耗等因素,目前 FPGA 中普遍采用的是基于 LUT 结构和基于 MUX 结构的逻辑模块。基于 LUT 结构的逻辑模块主要应用于 SRAM 存储结构的 FPGA,基于 MUX 结构的逻辑模块主要应用于反 熔丝和 Flash 存储结构的 FPGA。 LUT 可被认为是一个具有 1 位输出端的存储器 阵列,存储器的地址线就是 LUT 的输入信号线,一 个具有 K 输入的 LUT 就对应 2k bit 的存储器。在 第3期 杨海钢等:FPGA 器件设计技术发展综述 717 FPGA 中,LUT 通常由 SRAM 实现,用户将逻辑 功能的真值表通过编程的方式写入 LUT 中,可实现 任意 K 输入的组合逻辑。 FPGA 中的基本逻辑单元(BLE)由多输入的 LUT 组成,用以实现用户的逻辑功能。一个可行的 提高 FPGA 逻辑密度的方法是将多个 BLE 组成一 列,构成逻辑模块(Cluster)[26],如图 4 所示,在一 个逻辑模块中共具有 N 个 BLE,所有的 LUT 的输 入端连接到的局部互连总线,整个逻辑模块通过局 部互连总线与其他逻辑模块传输信号 [27−29] 。 Architecture)[37] 和 孤 岛 型 互 连 结 构 (Island-Style Routing Architecture)[38]。 通道型互连结构如图 5[39]所示:水平通道在横 轴方向上穿越整个芯片,提供水平信号通路;垂直 通道在纵轴方向上为逻辑模块的输入和输出信号提 供通路,或为处于不同层的水平通道之间提供信号 通路;水平和垂直通道间通过交叉开关进行信号传 递。 图 4 逻辑模块构成示意图 LUT 输入端数量与 BLE 延时、版图面积、结 构设计复杂度等因素相互影响,相互制约,在 FPGA 结构设计过程中应综合考虑。研究者们对 LUT 输入 端的数量和 FPGA 功能、性能之间的相互影响,以 及对 FPGA 逻辑结构的优化 [30−33] 进行了大量的探 索和试验,其中,Ahmed 给出了同一个电路在采用 不同规模 LUT 的 FPGA 经综合、映射、布局布线 后,延时特性和版图面积的比较[30]——增大 LUT 输 入端的数量使得同一个逻辑电路中关键路径上使用 的 BLE 数量减少,能够更容易实现复杂逻辑功能, 但 BLE 的延时却呈增大的趋势;同时具有 k 个输入 的 LUT 对应 2k 个存储单元,意味着随着 LUT 输入 端数量的增长,使得单个 BLE 的版图面积将呈现指 数增长(Cluster 呈平方增长)。此外,LUT 输入信号 的互连线复杂度也随 LUT 规模相应增长[34]。 基于 MUX 结构的逻辑模块通过对一个 2 输入 MUX 的输入端和信号选择端进行控制,可实现多种 逻辑功能[24]。一般来说,基于 MUX 结构逻辑模块 的 FPGA 产品具有细颗粒度的特点,由于其布线的 灵活性,其资源利用率相当高,但器件的规模和密 度要远远小于基于 LUT 结构的 FPGA。 3.3 互连结构 互连结构为 FPGA 中逻辑模块之间、逻辑模块 与 I/O 模块之间提供可编程的信号通路。在 FPGA 的发展历史上,出现过多种互连结构:通道型互连 结构(Channel-Style Routing Architecture)[35,36]、层 次 化 互 连 结 构 (Hierarchical Routing 图 5 FPGA 通道型互连结构示意图 这种互连结构在通道交叉点处需要大量交叉开 关进行信号路由,早期半导体技术条件下,只有反 熔丝结构的开关能够满足这种密度要求,故 Actel 公司推出的大部分基于反熔丝技术的 FPGA,如 ACT[40]系列、SX[20]系列、MX[39]系列等,都采用了 这种通道型互连结构。用户根据设计需要,通过编 程,将需要连接通路上的反熔丝开关导通,不需要 的信号通路则保持关断状态。 层次化的互连结构顾名思义,是将整个 FPGA 的全局互连结构按层次来进行划分[41]。如图 6 所示, 只有最底层的互连线段与逻辑模块直接相连,版图 上位置靠近的底层互连线段组成局部数据通道,并 通过更高层的互连线段进行连接,而顶层的数据通 道具有最大宽度和数据吞吐能力,作为最主要的数 据传输路径。这样,各层次的互连结构具有可预测 的延时特性,理想状态下同一个层次中的每根互连 线段延时都是一样的。 凭借在商用 CPLD 器件领域取得的巨大成功, 图 6 层次化互联结构示意图 718 电子与信息学报 第 32 卷 Altera 公司将 CPLD 中层次化的互连结构引入其早 期的商用 FPGA 产品中,如 Flex 10K 系列[42], Apex[43]和 Apex II[44]系列等。 这种层次化互连结构具有很大的局限性:每根 互连线段的延时在理论上都是相等的,用户无法通 过改变信号路由调整时序电路中关键路径的延时。 由于存在工艺偏差,实际每根线段的阻容参数总会 存在差异,也就引起数据通道间延时的相对差别, 使大规模时序逻辑电路的设计变得非常困难和复 杂。当用户的设计使用了多个逻辑模块,且这些逻 辑模块处于不同的局部数据通道之内,数据必须经 过多个层次的互连线段才能进行传递,加大了整个 设计的延时。基于上述原因,商业 FPGA 逐渐放弃 了层次化互连结构,而大多采用孤岛型互连结构。 孤岛型互连结构是目前 FPGA 中使用最为广泛 的,其结构示意图如图 7 所示[45]。 的。从统计角度来说,要实现的用户电路越大,一 个数据通道内往正、反两个方向传输信号的互连线 段数目越接近。有鉴于此,研究者们提出可将数据 通道内互连线段等分为两部分,每部分互连线段具 有相同且固定的信号传输方向,两部分互连线段之 间的信号传输方向则正好相反。如此设计不会降低 数据通道内可传输信号的数量,还可在交叉开关处 用单向缓冲器替代双向缓冲器[47],使实现数据通道 互连的交叉开关模块所需要的晶体管数目与采用双 向缓冲器实现方式相比减少一半[48],具有较好的面 积特性。 由于孤岛型互连结构中的数据通道采用了具有 不同长度的互连线段[26,49],使 FPGA 在信号延时、 布通率、布线灵活程度和布线资源的利用率上较采 用固定长度的互连结构都有很大提高。短线段用来 满足相邻逻辑模块之间较小延时的传输要求,长线 段则用来在距离较远的逻辑模块之间传递信号。 数据通道的互连线段采用何种长度的组合才是 最优设计,一些研究证明[35,48,50,51],采用大量中等长 度的互连线段,通常为 4-6 个逻辑模块长度,可有 效提高电路的速度和布通率[52],如图 8 所示。这一 研究成果被随后推出的 Stratix 系列 FPGA 的结构 所验证——在其数据通道中,包含了大量长度为 4 和长度为 8 的互连线段[53]。 图 7 孤岛型互连结构示意图 这种结构大多具有以下特点:多个完全相同的 逻辑模块组成一个阵列,用以实现逻辑功能;每个 逻辑模块在上下左右 4 边都具有输入/输出端口,通 过连接模块(connection block)与数据通道进行信号 传递;数据通道具有不同长度的互连线段,并且交 错排布,经过多个逻辑模块,每个逻辑模块都可连 接到不同互连线段的起点和终点;数据通道之间通 过交叉开关(switch block)[46]进行信号传递。 可编程逻辑器件在实现一个具体的用户电路 时,无论连线交叉开关处的缓冲器是单向,还是双 向的,信号最终都只是往一个固定的方向传输。也 就是说,任意一条互连线段上的信号流向都是确定 图 8 互连线段长度与面积特性和延时特性的关系 在过去若干年中出现了多种不同的交叉开关设 计,其中最典型的如图 9 所示。disjoint 型[54]早期被 广泛采用。由图 9(a)可看出,信号经过 disjoint 型 交叉开关后,输入和输出的互连线段编号没有改变, 即 disjoint 型交叉开关无法在不同编号的互连线段 之间进行信号传递,降低了布线的灵活性。 universal 型 [55−57] 和 Wilton 型[58]对此进行了改 进,对固定长度的数据通道来说,这两种结构与 disjoint 相比,使用了相同晶体管数,却提供了不同 编号的互连线段之间的信号传递,大大提高了布线 的灵活程度。设计者们还提出了 Imran[58]和 shifty[59] 第3期 杨海钢等:FPGA 器件设计技术发展综述 719 图 9 不同的交叉开关结构 型交叉开关:交叉开关被要求在互连线段的起始点、 中间点、结束点都要提供信号的跳转。试验表明, 这两种交叉开关在版图面积和延时特性上与前面所 述的结构类似,却提供了更大的布线灵活性[58,59]。 4 FPGA 前沿设计技术与未来发展趋势 半导体产品的集成度和成本迄今一直按照摩尔 定律(Moore’s Law)[60]所预见的规律变化,作为半导 体器件的重要一部分——可编程逻辑器件也不例 外,每一次工艺升级带来的优势,都会在 FPGA 产 品的功耗、频率、密度及成本方面得到体现。 本节简要阐述了目前深亚微米工艺下集成电路 设计领域内传统设计方法面临的困境和挑战,并试 从研究和开发 FPGA 的角度分析 FPGA 前沿设计 技术的演变,及未来可能对 FPGA 设计产生重大影 响的新技术进行了讨论,同时对未来发展趋势进行 了大胆预测。 4.1 深亚微米工艺下半导体设计所面临的挑战 在深亚微米制造工艺下,晶体管的特征尺寸从 130 nm、90 nm、65 nm、45 nm 发展到更新的 32 nm 及 22 nm 等,FPGA 器件的密度和速度不断攀升, 片上集成功能更加复杂,静态功耗也在不断增加, 传输线延时已大大超过单元电路的门延时,这些因 素对传统半导体设计技术带来了巨大的挑战。 (1)器件的良率 FPGA 密度和速度的不断提 高,纳米级的加工而带来的生产良率的问题变得不 容忽视。半导体制造工艺造成的影响来自多种原因, 包括光刻效应、化学机械抛光(CMP)导致的金属层 厚度变化、掺杂波动、逻辑门尺寸和氧化层厚度的 变化等。为了解决工艺所导致的性能偏离问题,必 须在设计中引入新的方法和流程,以减小这种不稳 定性对器件生产良率的影响 [61−63] 。 (2)功耗 半导体器件中的功耗包含两种:静态 功耗和动态功耗。静态功耗是指由器件中所有晶体 管的漏电流(leakage current)引起的功耗,包括从源 极(source)到漏极(drain)之间漏往衬底(body)的电流、 栅极(gate)直接漏至衬底的电流,以及任何其他恒定 功耗(如上拉电阻等)之和。FPGA 的漏电流很大程度 上取决于供电电压、结温、晶体管尺寸和自身可编 程的冗余结构,静态功耗问题随着工艺节点的进步 变得越来越严峻 [64−66] 。 动态功耗是由器件内部容性负载充放电所产生 的,其主要影响因素是充电电容、供电电压和时钟 频率等。随着工艺节点的进步,由于 FPGA 的密度 和容量在不断扩大,时钟频率不断提高,整个器件 的动态功耗仍是需要考虑的重要问题[67]。 (3)互连线延时 由于在纳米级工艺下,逻辑设 计则必须结合物理特性才能精确给出时延、功耗、 可布性、面积等,使得设计中前后端延时的偏差越 来越大,互连线变成时延主要因素。同时,互连线 的最小宽度和间距不断减小,使生产后的器件性能 波动范围也越来越大,成为限制芯片性能的瓶颈。 在这种超大规模的系统级芯片中实现高速信号的传 输以满足时序要求、实现一个低抖动和偏差的时钟 树结构,成为目前 FPGA 设计所需考虑的首要问 题[68,69]。 (4) 信 号 完 整 性 高 速 信 号 带 来 的 电 磁 兼 容 (EMI)问题也越来越突出:随着金属线宽和间距的 不断减小,互连线之间的串扰现象更加严重,交叉 耦合电容、耦合电感、IR 压降、信号反射等现象带 来的影响都可能是致命的。信号完整性问题对 EDA 工具提出了更多的挑战,对于芯片设计者,IP 厂商, 半导体加工厂等也提出了更为严格的要求。 (5)可测性设计 测试在集成电路设计中所占 的比重越来越大,FPGA 本身复杂的通道结构特点 决定了其测试的复杂度。此外,主流商用 FPGA 器 件中大量复用 IP 模块,而这些预先设计好的 IP 模 块会影响片上系统的测试,所以要求设计者在设计 前期从整体上考虑验证和测试技术的实施,并寻找 能使用较少测试矢量覆盖更多芯片故障的方法。 4.2 基于传统设计技术的 FPGA 发展趋势 在深亚微米半导体工艺下,传统的设计技术面 临困难和挑战,但 FPGA 在过去几年内仍保持高速 的发展——基于传统设计技术的 FPGA 的主流发展 方向呈现出高密度、高性能、低功耗的特点,片上 资源的集成度得到进一步提高,向 SOPC[70,,71](可编 程片上系统)方向发展,FPGA 器件也从最早的通用 型半导体器件向平台化的系统级器件发展。 4.2.1 FPGA 器件向高密度、高性能方向发展 自 FPGA 问世以来,半导体制造工艺的发展和市场的 多样化需求不断推动 FPGA 设计技术的创新,目前 最先进的半导体技术往往都会在第一时间内应用于 FPGA 产品中:Altera 公司于 2008 年 12 月发布业 界第一款 40 nm FPGA 芯片 Stratix IV GX[72], 720 电子与信息学报 第 32 卷 Xilinx 公司于 2009 年 2 月 6 日发布了 40 nm 的 Virtex-6 系列和 45 nm 的 Spartan-6 系列[19]。FPGA 由最初的 64 个逻辑单元和 58 个可编程 I/O 的规 模[13],发展到现有 758784 个逻辑单元,1200 个可 编程 I/O 的规模[19]。 同时,FPGA 中 LUT 表的规模也呈现出不断 增大的趋势。Xilinx 公司早期推出的 XC3000 系列, 采用一个 5 输入的 LUT 结构,用户可实现一个 5 输入的组合逻辑功能,也可通过共用输入端的方式 来实现两个 4 输入逻辑组合功能。这个看起来稍显 复杂的结构,以当时 EDA 工具的水平,很难对复杂 的数字电路实现高效率的综合和布局[73]。 在后来很长一段时间内,各大 FPGA 公司推出 的产品都采用了 4 输入 LUT 的结构(如 Xilinx 公司 的 XC4000 系列、Virtex 至 Virtex IV 系列,Altera 公司的 Flex、Apex、Cyclone I 和 Stratix I 系列等), 这个选择可看作是性能和面积的折衷。基于 SRAM 存储单元的 FPGA 产品,逐渐采用了逻辑模块阵列 和局部互连总线的架构,整体规模也由最初的细颗 粒 度 (fine-grained) 向 粗 颗 粒 度 (coarse-grained) 转 变。 在最新的 FPGA 产品中,又重新出现了多输入 LUT 结构的基本逻辑单元[19,74,75],这与半导体工艺 的进步和 EDA 软件的发展密不可分。Xilinx 公司的 Virtex-5 系列和 Virtex-6 系列 FPGA 产品,都采用 了基于 6 输入 LUT 结构的逻辑单元[19,74]。Altera 公 司则从 Stratix II 系列产品开始就采用更为灵活的 8 输入 ALM 结构(Adaptive Logic Module)[16,75]。 两大公司所采用的 LUT 结构还引发一系列争 论:Altera 公司在资料中宣称,ALM 结构与 Xilinx 公司 Virtex-5 系列器件采用的固定 6 输入 LUT 结 构相比更具优势,每个 ALM 的性能平均为固定 6 输入 LUT 结构的 1.8 倍[76]。Xilinx 公司承认 6 输入 LUT 结构的性能处于劣势,但认为 ALM 结构的性 能仅相当于固定 6 输入 LUT 结构的 1.2 倍,同时认 为 ALM 结构的版图面积较大,Virtex-5 器件的整体 逻辑容量仍大于具有可比型号的 Stratix III 器件[77]。 但无论争论的结果如何,采用多输入的 LUT 结构作 为基本逻辑单元,已经成为 FPGA 发展的主流趋势。 4.2.2 片上集成资源不断丰富 随着半导体技术的进 步,各大厂商在不断的扩充 FPGA 片上集成资源, 包括嵌入式处理器、可编程存储器、高速收发器、 嵌入式逻辑分析仪、复杂数字信号处理模块[78]等, 这些片上集成资源都经过 FPGA 设计厂商的验证和 优化,可确保其功能和性能。 目前主流 FPGA 可通过配置在片内实现软核处 理器,或直接在 FPGA 中集成硬核处理器。集成软 核还是硬核取决于对系统的性能、功能、应用和可 重构性的平衡考虑。硬核处理器一般作为独立的专 用模块集成于 FPGA 中,与软核相比具有更高的性 能,但在可重构性和灵活性上有所不足。 在 FPGA 中实现软核处理器具有较大的优势, 其灵活的总线结构、可扩展性、并行处理能力等都 是硬核处理器无法比拟的,用户可根据具体设计的 需要灵活配置软核处理器,选择外围 IP 模块,还可 以通过编程使用多个处理器实现并行运算。 研究者们对嵌入式软核处理器进行了一系列的 优化:通过 HW/SW Partioning 技术提高软核处理 器的性能[79];利用 FPGA 器件提供的低功耗技术降 低软核处理器的动态功耗[80];还有一些研究者提出 了自行定制设计的嵌入式软核处理器[81,82]。 在 FPGA 中嵌入可编程的低功耗、高速收发器 成为目前主流 FPGA 的发展趋势,具有嵌入式高速 收发器的 FPGA 为数据传输提供了可行的单芯片解 决方案,克服了多芯片解决方案中出现的互操作、 布线和功率问题,用户能够快速地解决协议和速率 的变化问题,以及为了提高性能和为产品增加新功 能时所做的设计修改所需的重新编程问题。 高速收发器在 FPGA 中作为独立的专用电路模 块存在,由多个混合信号模块组成,包括锁相环 (PLL)、CDR、预加重、均衡器、速率匹配器、字 对准器、8B/10B 编码器/解码器、模式检测器和状 态机等模块[83]。将高速收发器嵌入 FPGA 中,相当 于把接口问题从板级电路设计者转移给了 FPGA 设 计者,对 FPGA 芯片的版图布局、信号完整性、电 路设计和功耗等方面都带来了巨大的挑战。高速收 发器具有严格的抖动产生和容差规范,必须与 FPGA 中其它数字电路部分隔开来以避免其噪声耦 合到敏感的 PLL 和 CDR 等电路,通常需要设计者 对版图上的高速信号传输路径进行手工布线,以保 证高速信号的完整性。 随着 FPGA 器件的规模和复杂程度的不断增 加,其设计和调试工作日益复杂。在传统的设计中, 一般采用接入外部逻辑分析仪的方式进行调试。使 用外部的逻辑分析仪进行调试具有极大的局限性: 在复杂系统设计中,一般可用测试的 I/O 很少或很 难引出;外接的逻辑分析仪由于探针引入的负载, 很可能对高速系统设计的信号带来影响。为了解决 上述问题,设计者们提出利用 FPGA 的资源实现嵌 入式逻辑分析仪对系统进行调试。 嵌入式逻辑分析仪通常在 FPGA 中以软核的形 式实现,其构成如图 10 所示。其中 ELA(Embeded 第3期 杨海钢等:FPGA 器件设计技术发展综述 721 logic analyzer)模块的采样时钟和触发逻辑均可根 据实际需要进行编程设定。在嵌入式逻辑分析器工 作时,待测信号在时钟的上升沿被 ELA 实时捕获, 经 FPGA 嵌入式存储器缓冲后,通过 JTAG 端口传 送至 EDA 软件中显示。 图 10 嵌入式逻辑分析仪原理图 相对于传统逻辑分析仪,嵌入式逻辑分析仪具 有极大的优势:无需进行任何的外部探测或修改便 可获取设计中任意的内部节点或 I/O 引脚的状态, 在整个设计过程中以零成本和系统级的速度实时捕 获和显示 FPGA 中的信号,对系统进行观测和调试。 4.2.3 低功耗成为 FPGA 的设计目标 制造工艺的 发展使 FPGA 静态的漏电流不断增大[84],这个问题 从 90 nm 开始尤其显著。为降低静态功耗,设计者 们在 FPGA 中对速度不关键的晶体管,通过提高阈 值[64]、增大栅氧层厚度[65],增大沟道长度的方式, 减小其漏电流。相反,对于关键时序路径上的晶体 管,则降低其阈值,减小栅氧层厚度,减小沟道长 度,以提高晶体管的传输速度,满足时序要求。 电路设计者们也提出多种解决方案:采用冗余 的 SRAM 位控制多输入 MUX,将不使用的 MUX 信号通路关闭,降低动态功耗[66];对晶体管采用不 同的体偏置,改善亚阈值翻转漏电流现象,降低静 态功耗[62];在速度不关键的路径,采用晶体管堆叠 的电路结构,降低静态功耗[85]等。 在 FPGA 设计的综合和布局布线过程中,主流 EDA 软件可通过多种手段对电路进行优化,以降低 动态功耗:合理规划逻辑模块布局,选择合适的逻 辑输入,降低逻辑模块总面积和连线要求,降低布 线的动态功耗;修改布局,降低时钟功耗;对时序 不重要的数据信号进行布线时,可降低其速率以减 小动态功耗。 目前主流 FPGA 产品还普遍提供了功耗分析工 具(如 Altera 公司的 PowerPlay,Xilinx 公司的 Xilinx Power Estimator,Actel 公司的 SmartPower 等),可根据器件类型、封装类型、工作条件以及器 件的使用情况来进行早期的功耗估算。这种软件工 具一般是基于表格结构的,其中具有精确的功能元 件模型,能够根据实际设计的逻辑配置信息,布局 布线信息以及仿真波形对器件的静态和动态功耗进 行估算。 从应用角度看,无需将 FPGA 中所有的逻辑门 都置于高性能、高动态功耗的状态,基于这一考虑, Altera 公司提出了可编程功耗技术[86]:EDA 工具能 够根据设计的需求,在不改变设计流程的情况下, 自动调整晶体管的偏置电压,将少量的关键时序逻 辑模块设置成高性能模式,满足设计中的时序约束; 将时序不重要的电路设置为低功耗模式,减小器件 的漏电流;对不使用的资源,则关闭其电源,进一 步减小静态功耗。 4.3 未来 FPGA 设计技术的关注热点 4.3.1 基于异步电路的 FPGA 前文涉及的所有 FPGA 设计技术和商用器件,都是基于同步时序电 路原理。同步时序电路概念简单,设计方便,具有 主流的 EDA 工具支持,至今一直占据着数字集成电 路设计领域的主导地位。在半导体技术进入深亚微 米后,随着 FPGA 密度增大、电路复杂度的提高, 互连线延时带来的影响越来越明显,同步设计中时 钟的偏移问题变得难以处理,时序收敛成为首要问 题。此外,全局时钟分布带来的功耗问题也限制 FPGA 的速度进一步提高。 为解决上述问题,研究者们提出采用异步电路 技术来提高 FPGA 的性能 [87−89] 。异步电路的概念 最早在上世纪 50 年代就被提出,具有非常显著的优 势:(1)异步电路的模块化特性突出,在设计复杂电 路时具有内在的灵活性;(2)对信号的延迟不敏感, 可避免同步电路带来的时钟偏移问题;(3)异步电路 的性能由电路的平均延迟决定,有潜在的高性能特 性;(4)异步电路主要由数据驱动,具有低功耗的特 性;(5)异步电路的辐射频谱含能量少且分散性好, 有电磁兼容性好的优点。 由于结构复杂,缺乏自动化设计工具等问题, 异步电路设计技术一直没有像同步时序电路那样得 到迅速发展,但随着传统 FPGA 设计方法面临困难, 人们又开始探索异步电路技术在 FPGA 中的应用。 然而设计基于异步电路的 FPGA 芯片,需解决其设 计方法和设计流程,EDA 工具,可测性理论,性能 评估及仿真验证等一系列关键技术。 Hauck 基于同步 FPGA 结构的基础,最早提出 了异步 FPGA 设计[90]的概念,但直到 2008 年,FPGA 领域的初创公司 Achronix 才推出了号称业内第一 款基于异步电路设计技术的商用 FPGA 产品[91]。实 际上 Achronix 公司的 FPGA 基本体系结构与传统 FPGA 类似:都是基于 SRAM 存储结构,采用孤岛 722 电子与信息学报 第 32 卷 型互连结构、采用 LUT 作为最基本的逻辑单元,所 以并不能说这款 FPGA 器件是完全基于异步电路设 计技术的 FPGA。这款器件与传统 FPGA 不同的是, 其数据通道放弃了传统的并行结构,而增加额外的 电路模块,采用基于握手协议的串行收发器结构, 在通道上实现握手协议和流水线结构来高效的控制 数据流,提高了数据的传输速率,降低了信号传输 的绝对延时。 4.3.2 基于 3-D 集成技术的 FPGA 随着 FPGA 规 模的增大,互连线长度和寄生效应逐渐成为限制 FPGA 性能的瓶颈。为解决这一问题,有设计者提 出使用 3-D 集成技术可以有效减小 FPGA 中 20% -40%的互连线长度,简化互连资源的结构,减小 FPGA 芯片的面积,改善器件性能[92,93]。 传统的 2-D 芯片设计技术中,所有有源器件都 处于同一个平面上,器件与器件之间通过不同层的 金属互连线进行连接,而 3-D 集成技术通过堆叠的 方式,使有源器件可以处于不同高度的平面内,通 过垂直方向上的金属互连线进行连接。 在实现 3-D 集成技术的方案中,wafer bonding 被认为是最有前途的技术[94]:将两块或多块加工完 成的芯片通过 face-to-face(f2f)或 face-to-back(f2b) 的方式键合到一起,通过内层金属通孔(Inter-layer VIA)进行垂直方向上的互连。 在 f2f 方式中,如图 11(a)所示,一块芯片倒置 与另一块芯片进行键合,由于内层金属通孔不能通 过衬底,故这种方式仅能将两块芯片进行键合。而 在 f2b 方式中,如图 11(b)所示,所有芯片保持一致 的方向,内层金属通孔可以通过衬底,对多块芯片 进行互连。 图 12 3-D FPGA 交叉开关示意图 尽管 3-D FPGA 技术与传统 2-D 结构 FPGA 相比在面积、性能和功耗等方面具有优势,但堆叠 的 3-D 结构增大了单位面积上的功耗,不利于散热, 使器件的结温更高[94]。克服的方法包括尝试通过改 变封装形式[94],加入分布式温度传感器对结温进行 监控[95,97],改善芯片布局[98,99]等。 4.3.3 基于新型半导体结构的 FPGA 4.3.3.1 碳纳米管交叉开关结构 为解决 FPGA 功耗 增大的问题,一些研究人员探讨将碳纳米管(carbon nanotube,CNT)的微机械结构用于 FPGA 中的交 叉开关矩阵:在文献[100]中,提出了由 3 个 CNT 构成的纳米继电器(nanorelay)结构,如图 13 所示。 通过对 CNT1 和 CNT2 施加电压,使两个 CNT 互 相吸附,当除去外接电压后,由于范德华力的存在, 互相吸附的 CNT 仍然保持接触;此时,若对 CNT1 和 CNT3 施加电压时,中间的 CNT1 会与 CNT2 脱离,与 CNT3 接触。 图 13 水平方向碳纳米继电器结构示意图 图 11 wafer bonding 的两种堆叠方式 3-D FPGA 的交叉开关模块简单的原理如图 12 所示,3-D 交叉开关与普通 2-D 交叉开关不同,在 6 个 方 向 上 与 附 近 的 逻 辑 模 块 互 连 , 而 不 是 2-D FPGA 的 4 个方向。关于 3-D 交叉开关的具体结构, 在文献[95,96]中进行了深入研究。 上述碳纳米继电器的工作原理可用于 FPGA 的 交叉开关和多路开关设计,仿真结果表明,这种基 于微机械结构的 FPGA,其平均功耗与传统设计相 比大约低 30%左右。 但是这种结构导致水平方向上的 CNT 加工难 度变大,同时由于依靠碳纳米管的接触导电进行数 据信号的传递,其电阻较大,势必影响高速信号的 传输。由此,基于半导体 CVD 工艺,垂直方向的 碳纳米继电器结构被提出[101],如图 14 所示。由一 个 CNT 和两个接触点构成,通过施加电压使 CNT 第3期 杨海钢等:FPGA 器件设计技术发展综述 723 图 14 垂直方向碳纳米继电器结构 与不同的接触点吸附实现可编程的目的。同样由于 范德华力的存在,这种结构在除去外接电压后,碳 纳米管与接触点依然保持吸附。 这种结构便于加工,但其通路电阻仍然较大, 约为 6.5 kΩ 。针对这一问题,文献[92,101]提出了一种 使用垂直碳纳米继电器结构作为 FPGA 交叉开关的 方法。这种交叉开关结构与水平方向的碳纳米继电 器的用途不同,垂直的碳纳米继电器被用来控制开 关管的栅极,通过外界施加电压控制 CNT 吸附的方 向,来控制开关管栅极的电平为“1”或“0”,实现 对信号通路的控制。由于不直接影响信号通路的电 阻,能够实现高速信号的传输,同时保持了基于碳 纳米管开关结构的 FPGA 较低静态功耗的特点。 4.3.3.2 忆阻器结构 忆阻器(Memristor)的概念最 早由加州大学伯克利分校蔡少棠教授(Leon Chua) 于 1971 年提出[102],他从理论上大胆预测:除电阻、 电容和电感外,存在第 4 种基本无源器件——忆阻 器。其基本特性是,在其两端通过施加不同方向、 不同大小的电压能够改变其阻值,并且在切断电源 后,其阻值仍保持最后状态。如果利用其不同阻值 代表数字信号,忆阻器将是一种理想的无源非易失 性存储器。 2008 年 3 月,惠普实验室的研究人员在 Nature 杂志上发表名为《The missing memristor》的论文, 证明了忆阻器的存在,并在纳米级实现了二氧化钛 薄膜结构的忆阻器[103]。2008 年 11 月,首届“忆阻 器及忆阻器系统论坛”在美国加州伯克利举行,惠 普实验室在会议上展示了首个使用忆阻器作为存储 单元的 3-D FPGA 芯片。研究人员通过在一块采用 CMOS 工艺加工的 FPGA 芯片表面堆叠交叉开关 矩阵结构的忆阻器存储单元,作为 FPGA 的配置位, 从而论证基于忆阻器存储单元的电路功能。 忆阻器的出现无疑具有划时代的意义。从理论 上说,无源忆阻器一旦替代 SRAM 存储单元,能够 有效降低 FPGA 中晶体管的数量和功耗,提高器件 的密度,同时兼有可重构性和非易失性。但就目前 来说,忆阻器的实现流程较为复杂,还处于实验室 阶段,离大规模制造还有相当长的距离,预计在未 来几年后,才可能会有忆阻器存储元件进入商业应 用领域。 5 结束语 本文对主流 FPGA 器件的设计技术进行了综 述,对其特点进行了比较与分析,对相关前沿性问 题进行探讨。在过去 20 多年中,应用领域的变化和 半导体制造工艺的进步,对 FPGA 设计者不断提出 各种挑战。为满足用户和市场日益变化的需求, FPGA 不断在密度、功能、性能和功耗等方面演变; 面对深亚微米工艺带来的各种不良影响,如漏电流、 良率、设计复杂度等,又迫切需要最切实际的解决 方案。随着挑战的发展,可以预言,未来 FPGA 的 设计技术必将继续呈现出巨大的创新与进步。 参考文献 [1] Slimane-Kadi M, Brasen D, and Saucier G. A fast-FPGA prototyping system that uses inexpensive high-performance FPIC. Proc. 2nd Annual Workshop on FPGAs, Berkeley, 1994: 147-156. [2] Chinnery D and Keutzer K. Closing the Gap Between ASIC and Custom Tools and Techniques for High-Performance ASIC Design. Netherland: Kluwer Academic Publishers, 2002: 157-158. [3] Altera Corporation. Hardcopy series handbook. http://www. altera.com.cn/literature/hb/hrd/hc_handbook.pdf, 2008, 9. [4] Kuon I and Rose J. Measuring the gap between FPGAs and ASICs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2007, 26(2): 203-215. [5] Hamdy E and McCollum J, et al.. Dielectric based antifuse for logic and memory IC. International Electron Devices Meeting Technical Digest, San Francisco, 1988: 786-789. [6] Birkner J and Chan A, et al.. A very-high-speed field-programmable gate array using metalto-metal antifuse programmable elements. Microelectronics Journal, 1992, 23(7): 561-568. [7] Birkner J and Chua H T. Programmable array logic circuit. U.S.Patent, 4124899, 1978. [8] Brown S and Rose J. FPGA and CPLD architectures. A tutorial. IEEE Design and Test of Computers, 1996, 12(2): 42-57. [9] Frohman-Dentchkowsky D. A fully-decoded 2048-bit electrically programmable MOS ROM. IEEE International Solid State Circuits Conference Digest of Technical Papers, Philadelphia, 1971: 80-81. [10] Guterman D C and Rimawi L H, et al.. An electrically alterable nonvolatile memory cell using a floating-gate structure. IEEE Transactions on Electron Devices, 1997, 26(4): 576-586. 724 电子与信息学报 第 32 卷 [11] Cuppens R and Hartgring C D, et al.. An EEPROM for microprocessors and custom logic. IEEE Journal of Solid-State Circuits, 1985, 20(2): 603-608. [12] Scheibe A and Krauss W. A two-transistor SIMOS EAROM cell. IEEE Journal of Solid-State Circuits, 1980, 15(3): 353-357. [13] Carter W and Duong K, et al.. A user programmable reconfiguration gate array. Proceedings of the IEEE Custom Integrated Circuits Conference, Boston, 1986: 233-235. [14] Wahlstrom S E. Programmable logic arrays—cheaper by the millions. Electronics, 1967, 40(25): 90-95. [15] Actel Corporation. IGLOO low-power flash FPGAs. http://www.actel.com/documents/IGLOO_HB.pdf, 2009, 11. [16] Altera Corporation. Stratix II GX device handbook. http://www.altera.com/literature/hb/stx2gx/stxiigxhandbo ok. pdf, 2005, 10. [17] Xilinx. Virtex-4 family overview. http://china.xilinx.com /support/documentation/data_sheets/ds112.pdf, 2007, 9. [18] Actel Corporation. ProASIC3 flash family FPGAs. http:// www.actel.com/documents/PA3 DS.pdf, 2005, 10. [19] Xilinx. Virtex-6 Family Overview. http://china.xilinx.com/ support/documentation/data_sheets/ds150.pdf, 2009, 11. [20] Actel Corporation. SX-A Family FPGAs datasheet. http://www.actel.com/documents/SXA_DS.pdf, 2007, 2. [21] Shih C and Lambertson R, et al.. Characterization and modeling of a highly reliable metal- to-metal antifuse for high-performance and high-density field-programmable gate arrays. Proceedings of the 1997 IEEE International Reliability Physics Symposium, Denver, 1997: 25-33. [22] Marple D and Cooke L. An MPGA compatible FPGA architecture. Proceedings of the IEEE Custom Integrated Circuits Conference, Boston, 1992: 421-422. [23] Plessey Semiconductor. ERA60100 preliminary data sheet. Swindon, England, 1989. [24] Gamal A E and Greene J, et al.. An architecture for electrically configurable gate arrays. IEEE Journal of Solid-State Circuits, 1989, 24(2): 394-398. [25] Wong S C, So H C, Ou J H, and Costello J. A 5000-gate CMOS EPLD with multiple logic and interconnect arrays. Proceedings of the IEEE Custom Integrated Circuits Conference, San Diego, 1989: 581-584. [26] Betz V, Rose J, and Marquardt A. Architecture and CAD for Deep-Submicron FPGAs. Nehterland: Kluwer Academic Publishers, 1999: 83-87. [27] Brown S and Rose J. FPGA and CPLD Architectures: A Tutorial. IEEE Design & Test of Computers, 1998, 13(2): 42-57. [28] Cong J, Xie M, and Zhang Y. An enhanced multilevel routing system. Proc. International Conference on CAD, San Jose, 2002: 51-58. [29] Lin S P and Chang Y W. A novel framework for multilevel routing considering routability and performance. Proc. International Conference on CAD, San Jose, 2002: 44-50. [30] Ahmed E, et al.. The effect of logic block granularity on deep-submicron FPGA performance and density. [MA dissertation], University of Toronto, Department of Electrical and Computer Engineering, 2001. [31] Ahmed E and Rose J. The effect of LUT and cluster size on deep-submicron FPGA performance and density. Proceedings of the 2000 ACM/SIGDA Eighth International Symposium on Field Programmable Gate Arrays, Meonterey, 2000: 3-12. [32] Ahmed E and Rose J. The effect of LUT and cluster size on deep-submicron FPGA performance and density. IEEE Transactions on Very Large Scale Integration (VLSI) Systems, 2004, 12(3): 288-298. [33] 李威, 杨海钢, 龚萧. FPGA连线连接盒中基于信息熵优化的 结 构 设 计 . 计 算 机 辅 助 设 计 与 图 形 学 学 报 , 2006, 21(2): 203-208. [34] Gamal A E, et al.. Two-dimensional stochastic model for interconnections in master slice integrated circuits. IEEE Transactions on Circuits and Systems, 1981, 28(2): 127-138. [35] Roy K and Mehendale M. Optimization of channel segmentation for channeled architecture FPGAs. Proceedings of the IEEE Custom Integrated Circuits Conference, Boston, 1992: 441-444. [36] Greene J, Roychowdhury V, Kaptanoglu S, and El Gamal A. Segmented channel routing. Proceedings of ACM/IEEE Design Automation Conference, Orlando, 1990: 567-572. [37] Aggarwal A and Lewis D. Routing architectures for hierarchical field programmable gate arrays. IEEE International Conference on Computer Design, Cambrige, 1994: 475-478. [38] Brown S D, Francis R, Rose J, and Vranesic Z. FieldProgrammable Gate Arrays. Netherland: Kluwer Academic Publishers, 1992: 127-133. [39] Actel Corporation. 40MX and 42MX FPGA Families. http://www.actel.com/documents/MX_DS.pdf, 2009, 4. [40] Actel Corporation. ACT 1 series FPGAs. http://www. actel.com/documents/ACT1_DS.pdf, 1996, 4. [41] Tsu W, Macy K, and Joshi A, et al.. HSRA: High-speed, hierarchical synchronous reconfigurable array. Proceedings of ACM/SIGDA International Symposium on FieldProgrammable Gate Arrays, Meonterey, 1999: 125-134. [42] Altera Corporation. FLEX 10K embedded programmable logic device family. http://www.altera.com.cn/literature /ds/dsf10k.pdf, 2003, 1. 第3期 杨海钢等:FPGA 器件设计技术发展综述 725 [43] Altera Corporation. APEX 20K programmable logic device family data sheet. http://www.altera.com.cn/literature /ds/apex.pdf, 2004, 3. [44] Altera Corporation. APEX II programmable logic device family. http://www.altera.com.cn/literature/ds/ds_ap2.pdf, 2002, 8. [45] Fan H, Liu J, Wu Y L, and Cheung C C. On optimal hyperuniversal and rearrangeable switch box designs. IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, 2003, 22(12): 1637-1649. [46] Rose J and Brown S. Flexibility of interconnection structures for field programmable gate arrays. IEEE Journal of Solid-State Circuits, 1991, 26(3): 277-282. [47] Young S P, Bauer T J, Chaudhary K, and Krishnamurthy S. FPGA repeatable interconnect structure with bidirectional and unidirectional interconnect lines. US Patent, 5,942,913, 1999. [48] Lemieux G, Lee E, Tom M, and Yu A. Directional and single-driver wires in FPGA interconnect. Proceedings of International Conference on Field-Programmable Technology, Brisbane, 2004: 41-48. [49] 杨海钢, 李兴政. 可编程逻辑器件的对称型连线通道. 中国发 明专利, 200510086897.5, 2005. [50] Zhou C and Wu T L. Optimal MST-based graph algorithm on FPGA segmentation design. Proceedings of International Conference on Communications, Circuits, and Systems, Chengdu, 2004, 2: 1290-1294. [51] Li X Z, Yang H G, and Zhong H. Use of VPR in Design of FPGA Architecture. The 8th International Conference on Solid-State and Integrated Circuit Technology (ICSICT2006), Shanghai, 2006: 1880-1882. [52] Betz V and Rose J. FPGA routing architecture: Segmentation and buffering to optimize speed and density. Proceedings of ACM/SIGDA International Symposium on Field Programmable Gate Arrays, Meonterey, 1999: 140-149. [53] Lewis D, Betz V, and Jefferson D, et al.. The Stratix routing and logic architecture. Proceedings of the 2003 ACM/SIGDA Eleventh International Symposium on Field Programmable Gate Arrays, Meonterey, 2003: 12-20. [54] Wu Y L and Marek-Sadowska M. Orthogonal greedy coupling — a new optimization approach for 2-D fieldprogrammable gate arrays. Proceedings of ACM/IEEE Design Automation Conference, San Francisco, 1995: 568-573. [55] Chang Y W, Wong D F, and Wong C K. Universal switch-module design for symmetric-array-based FPGAs. Proceedings of the 1996 ACM Fourth International Symposium on Field-Programmable Gate Arrays, Meonterey, 1996: 80-86. [56] Chang Y W, Wong D F, and Wong C K. Universal switch modules for FPGA design. ACM Transactions on Design Automation Electronic Systems, 1996, 1(1): 80-101. [57] Wilton S. Architectures and algorithms for fieldprogrammable gate arrays with embedded memories. [Ph.D. dissertation], University of Toronto, Department of Electrical and Computer Engineering, 1997. [58] Masud M I and Wilton S. A new switch block for segmented FPGAs. Proceedings of International Workshop on Field Programmable Logic and Applications, Glasgow, 1999: 274-281. [59] Lemieux G and Lewis D. Analytical framework for switch block design. Proceedings of International Symposium on Field Programmable Logic and Applications, Montpellier, 2002: 122-131. [60] Rabaey J M, Chandrakasan A, and Nikolic B. Digital Integrated Circuits: A Design Perspective. second edition, USA: Pearson Education Inc, 2003: 151-173. [61] Wong H Y, Cheng L, Lin Y, and He L. FPGA device and architecture evaluation considering process variations. Proceedings of the 2005 IEEE/ACM International Conference on Computer-Aided Design, Washington DC, 2005: 19-24. [62] Nabaa G, Azizi N, and Najm F N. An adaptive FPGA architecture with process variation compensation and reduced leakage. Proceedings of the 43rd Annual Conference on Design Automation, New York, 2006: 624-629. [63] Sedcole P and Cheung P Y K. Parametric yield in FPGAs due to withindie delay variations: A quantitative analysis. Proceedings of the 2007 ACM/SIGDA 15th International Symposium on Field Programmable Gate Arrays, New York, 2007: 178-187. [64] Lodi A, Ciccarelli L, Loparco D, Canegallo R, and Guerrieri R. Low leakage design of LUT-based FPGAs. Proc. European Solid-State Circuits Conf., Grenoble, 2005: 153-156. [65] Lodi A, Ciccarelli L, and Giansante R. Combining lowleakage techniques for FPGA routing design. Proc. 13th ACM/SIGDA Int. Symp. Field Programmable Gate Arrays, Meonterey, 2005: 208-214. [66] Rahman A and Polavarapuv V. Evaluation of low-leakage design techniques for field programmable gate arrays. Proceedings of ACM/SIGDA International Symposium on Field-Programmable Gate Arrays, Meonterey, 2004: 23-30. [67] Shang L, Kaviani A, and Bathala K. Dynamic power consumption in Virtex-II FPGA family. Proceedings of ACM/SIGDA International Symposium on FieldProgrammable Gate Arrays, Meonterey, 2002: 157-164. [68] Friedman E. Clock Distribution Networks in Synchronous Digital Integrated Circuits. Proceedings of the IEEE, 2001, 726 电子与信息学报 第 32 卷 89(5): 665-692. [69] Tam S. Clock generation and distribution for the 130-nm itanium 2 processor with 6-MB on-die L3 cache microprocessor. IEEE Journal Solid-State Circuits, 2004, 39(4): 636-642. [70] Keating M and Bricaud P. Reuse Methodology Manual for System-on-a-Chip Designs. Third Edition, USA, Springer, 2002: 10-40. [71] Birnbaurn M and Johnson C C. VSIA quality metrics for IP and SoC. Proc. of the 2nd IEEE ISQED, San Jose, 2001: 279-283. [72] Altera Corporation. Stratix IV Device Handbook. http://www.altera.com.cn/literature/hb/stratix-iv/stratix4 _handbook.pdf, 2009, 11. [73] Michael J and Sebastian S. Application-Specific Integrated Circuits. USA: Addision-Wesley, 2001: 204-206. [74] Xilinx. Virtex-5 user guide. http:// china. xilinx. com/ support/documentation/data_sheets/ds112.pdf, 2009, 6. [75] Lewis D and Ahmed E, et al.. The Stratix II logic and routing architecture. Proceedings of the 2005 ACM/SIGDA 13th International Symposium on Field-Programmable Gate Arrays, New York, 2005: 14-20. [76] Altera Corporation. Stratix III FPGA vs. Xilinx Virtex-5 devices: architecture and performance comparison. http:// www.altera.com.cn/literature/wp/wp-01007_CN.pdf, 2007, 10. [77] Xilinx. Advantages of virtex-5 FPGA 6-input LUT architecture. http://china.xilinx.com/support/documentation/ white_papers/c_wp284.pdf, 2007, 12. [78] Kafafi N, Bozman K, and Wilton S. Architectures and algorithms for synthesizable embedded programmable logic cores. Proceedings of the 2003 ACM/SIGDA eleventh international symposium on Field programmable gate arrays, Meonterey, 2003: 3-11. [79] Lysecky R and Vahid F. A study of the speedups and competitiveness of FPGA soft processor cores using Dynamic hardware/software partitioning. Proceeding of the conference on Design, Automation and Test in Europe, Paris, 2005, 1: 18-23. [80] Biswas P, Banerjee S, Dutt N, Ienne P, and Pozzi L. Performance and energy benefits of instruction set extensions in an FPGA soft core. Proceedings of International Conference on VLSI Design, Hyderabad, 2006: 651-656. [81] Cong J, Fan Y, Han G, and Zhang Z. Application-specific instruction generation for configurable processor architectures. Proceedings of International Symposium on Field-Programmable Gate Arrays, Meonterey, 2004: 183-189. [82] Yiannacouras P, Steffan J G, and Rose J. Applicationspecific customization of soft processor microarchitecture. Proceedings of International Symposium on FieldProgrammable Gate Arrays, Meonterey, 2006: 201-210. [83] Altera Corporation. 40-nm FPGA: architecture and performance comparison. http://www.altera.com.cn/ literature/wp/wp-01088-40nm-architecture-performance-co m-parison_CN.pdf, 2008, 12. [84] Kao J, Narendra S, and Chandrakasan A. Sub-threshold leakage modeling and reduction techniques. Proc. IEEE/ ACM Int. Conf. Computer-Aided Design, San Jose, 2002: 141-148. [85] Lodi A, Ciccarelli L, and Guerrieri R. Low Leakage Techniques for FPGAs. IEEE Journal of Solid-State Circuits, 2006, 41(7): 1662-1672. [86] Altera Corporation. Stratix IV FPGA power management and advaentages. http://www.altera.com.cn/literature/wp/ wp-01059_CN.pdf, 2008, 5. [87] Wong C G, Martin A J, and Thomas P. An architecture for asynchronous FPGAs. IEEE International Conference on Proceedings 2003, Tokyo, 2003: 170-177. [88] Teifel J and Manohar R. Highly pipelined asynchronous FPGAs. Proceedings of the 2004 ACM/SIGDA 12th International Symposium on Field Programmable Gate Arrays, New York, 2004: 133-142. [89] Teifel J and Manohar R. An asynchronous dataflow FPGA architecture. IEEE Transactions on Computers, 2004, 53(11): 1376-1392. [90] Hauck S, Burns S, Borriello G, and Ebeling C. An FPGA for implementing asynchronous circuits. IEEE Design and Test of Computers, 1994, 11(3): 60-69. [91] Achronix Semiconductor Corporation. Speedster FPGA family. www.acaltechnology.com/documents/ speedster_ product_brif_pb001.pdf, 2008, 9. [92] Davis W R,Wilson J, Xu J, Hua H, Mineo C, Sule A M, Steer M, and Ftanzon P D. Demystifying 3D Ics: the pros and cons of going vertical. IEEE Design and Test of Computers, 2005, 22(6): 498-510. [93] Ababei C, Maidee P, and Bazrgan K. Exploring potential benefits of 3D FPGA integration. Proceedings of Field Programmable Logic and Application, Berlin/Heidelberg, 2004: 874-880. [94] Gayasen A, Narayanan V, Kandemir M, and Rahman A. Designing a 3-D FPGA: Switch box zrchitecture and thermal issues. IEEE Transacions on Very Large Scale Integration (VLSI) Systems, 2008, 16(7): 882-893. [95] Wu G M, Shyu M, and Chang Y W. Universal switch blocks for three-dimensional FPGA design. IEE Proc.-Circuits Devices Systemts ., 2004, 151(1): 49-57. [96] Gayasen A, Vijaykrishnan N, Kandemir M, and Rahman A. Switch box architectures for three-dimensional FPGAs. 第3期 杨海钢等:FPGA 器件设计技术发展综述 727 Proceedings of 14th Annual IEEE Symposium on Field-Programmable Custom Computing (FCCM'06), NAPA, 2006: 335-336. Machines [97] Lopez-Buedo S, Garrido J, and BoemoE. Dynamically inserting, operating, and eliminating thermal sensors of FPGA-based systems. IEEE Transacions on Components Package Technology, 2002, 25(4): 561-566. [98] Velusamy S, et al.. Monitoring temperature in FPGA based SoCs. Int. Conf. Comput. Des. (ICCD), San Jose, 2005: 634-640. [99] Sankaranarayanan K, Velusamy S, Stan S, and Skadron K. A case for thermal-aware floorplanning at the microarchitectural level. Journal of Instruction-Level Parallelism. 2005, 7: 1-16. [100] Lee S W, et al.. A three-terminal carbon nanorelay. Nano Lett., 2004, 4(10): 2027-2030. [101] Chakraborty R S and Bhunia S. Hybriddization of CMOS with CNT-Based nano electromechanical switch for low leakage and robust circuit design using nanocsaled CMOS devices. IEEE Transacions on Circuits and Systems, 2007, 54(11): 2480-2488. [102] Chua L O. Memristor—the missing circuit element. IEEE Transactions on Circuit Theory, 1971, 18(5): 507-519. [103] Strukov, Dmitri B, and Snider, et al.. The missing memristor found. Nature, 2008, 453(1): 80-83. 杨海钢: 男,1960年生,研究员,中科院“百人计划”引进国外 杰出人才,研究方向为数模混合信号SOC设计技术、高 速可编程逻辑芯片设计技术. 孙嘉斌: 男,1982年生,助理研究员,研究方向为高速可编程逻 辑芯片设计技术. 王 慰: 男,1969年生,美国纽约州立大学教授,研究方向为纳 米电子.

Top_arrow
回到顶部
EEWORLD下载中心所有资源均来自网友分享,如有侵权,请发送举报邮件到客服邮箱bbs_service@eeworld.com.cn 或通过站内短信息或QQ:273568022联系管理员 高进,我们会尽快处理。