当前位置: 首页 > 专利查询>复旦大学专利>正文

一种现场可编程器件FPGA逻辑单元模型及其通用装箱算法制造技术

技术编号:3893222 阅读:232 留言:0更新日期:2012-04-11 18:40
一种现场可编程器件FPGA逻辑单元模型,其特征在于:它由三级组件构成:第一级为查找表,第二级为专用器件,第三级为时序器件; 所述第一级包含了两个K输入的查找表(701和702),K可以是2、3、4、5或6;所述第二级包含了K+1输入查 找表多路选择器(705)、K+2输入查找表多路选择器(706)、两个加法器进位链多路选择器(703和704)、两个多路选择器(708和710)和两个“和输出”专用器件(707和709);所述第三级包含两个多路选择器(711和712)和两个时序器件(713和714); 第一级查找表701和702的输出端O分别连接到第二级的多路选择器705的两个数据信号输入端IA和IB,K+1输入查找表的输入IN(K+1)连接到多路选择器705的数据选通端S,多路选择器705的输出端O和K +1输入查找表的输出OUT(K+1)相连;多路选择器705的输出端O和逻辑单元的输入IN分别连接到第二级多路选择器706的两个数据信号输入端IA和IB,K+2输入查找表的输入IN(K+2)连接到多路选择器706的数据选通端S,多路选择器706的输出端O和K+2输入查找表的输出OUT(K+2)相连; 第二级多路选择器704的数据信号输入端IA和互连线进位输入CIN1相连,而数据信号输入端IB和专用进位输入CIN相连;多路选择器703的数据信号输入端IA和互连线进位输入CI N0相连,而数据信号输入端IB和多路选择器704的输出端O相连;多路选择器703的输出端O和专用进位输出CO以及互连线进位输出CO0相连; 第二级“和输出”专用器件707的两个输入端I0和I1分别与第一级查找表701的输出端O和第二级 多路选择器704的输出端O相连;“和输出”专用器件707的输出端O与多路选择器708的IB输入端相连,多路选择器708的IA输入端则与第一级查找表701的输出端O相连;多路选择器708的输出端O与组合输出D0和多路选择器711的IA输入端相连;“和输出”专用器件709的两个输入端I0和I1分别与第一级查找表702的输出端O和专用进位输入CIN相连,“和输出”专用器件709的输出端O与多路选择器710的IB输入端相连,多路选择器710的IA输入端则与第一级查找表702的输出端O相连;多路选择器710的输出端O与组合输出D1和多路选择器712的IA输入端相连; 第三级多路选择器711的IB输入端与时序器件714的输出端O相连,多路选择器711的输出端O与时序器件713的D输入端相连;多路选择器712的IB输入 端则与移位输入SIN相连,多路选择器712的输出端O与时序器件714的D输入端相连;时序器件713的输出端O和时序输出Q0以及移位输出相连;时序器件714的输出端O和时序输出Q1相连。

【技术实现步骤摘要】

本专利技术属于现场可编程门阵列(FPGA)的电子设计自动化 (Electronic Design Automation, EDA)
中,具体涉及一种FPGA 逻辑单元的模型和一种基于查找表的现场可编程门阵列的逻辑单元 通用装箱算法。
技术介绍
文献1指出,逻辑块(Configurable Logic Block)是现场可编 程门阵列(Field Programmable Logic Array, FPGA)中用以实现用户 电路逻辑的部件,它和互连线资源(RoutingResources)、输入输出块 (Configurable I/O Block)是FPGA的三大重要组成部分,如图l所 示。随着FPGA结构的发展,逻辑块逐步发展成为层次化逻辑块,并 成为主流。层次化逻辑块(也称簇结构逻辑块,内含多个逻辑单元) 把原先需采用互连线资源的线网放在了逻辑块内部成为内部互连 (intraconnection),减轻了逻辑块与逻辑块之间的布线压力,从而提 高了性能。学术研究方面,文献2提出一种层次化逻辑块的结构 模型,如图2所示。层次逻辑块被称为逻辑簇(Logic Cluster),逻辑簇 中有N个逻辑单元,被称为BLE (Basic Logic Element),如图3所 示。每个BLE内部仅有一个K输入查找表(Look-up Table,查找表) 和一个触发器(DFF),可以实现组合或时序逻辑。逻辑簇中的内部互 连是每个BLE的唯一输出端都可以输出到逻辑簇外部或者反馈到逻 辑簇I个输入端一起经过一个(I+N)xKN的开关矩阵(Switch Matrix)选通到N个BLE的任一输入端。逻辑簇是层次化逻辑块的一种最简单的结构模型,它内部的逻辑 单元BLE和内部互连开关矩阵都采用了最简化的方式,它的不足之 处在于第一,逻辑单元BLE结构是能够实现组合或时序逻辑的最 简单的结构,不含有任何专用器件,描述的功能过于简单,这在商用 FPGA的实际应用领域并不适用;第二,内部互连开关矩阵是全连通 的,造成芯片的面积浪费。第三,内部的逻辑单元BLE之间的连接 和与逻辑簇之间的连接关系过于简单,这在商用FPGA的实际应用领 域也不适用。文献3针对逻辑簇模型的第二点不足研究了非全连 通的内部互连开关矩阵,提出了几种内部互连开关矩阵的方案。Xilinx 和Altera作为世界两大FPGA供应商,也推出多种全连通系列的 FPGA芯片,比如Xilinx的5200系列和Altera的FLEX系列,图4 是Xilinx公司XC4000系列FPGA的逻辑单元结构图,图5是Xilinx 公司Virtex-II系列FPGA的逻辑单元结构图,图6是Xilinx公司 Virtex-4系列FPGA的逻辑单元结构图。随着FPGA产品的逻辑块由 最初平面化向层次化结构发展,学术界的逻辑簇模型是无法准确描述 实用化FPGA的逻辑块的。因此合理的逻辑单元模型成为实用化 FPGA芯片CAD流程装箱算法亟待解决的问题之一。装箱是工艺映射的一个子步骤。装箱的目标就是在考虑约束(如 一个逻辑块中所容纳的查找表、不同的输入信号和时钟的数目等等) 情况下,把电路网表中的功能元件进行组合尽可能的放到一个逻辑块 中,装箱完成后就可以进行逻辑块的布局4。已有的装箱算法 T-VPack5、RPack6都是处理针对上述逻辑簇模型(逻辑单元为 BLE)的装箱问题。此装箱算法的共同的局限性在于逻辑簇模型过于 简单,不能足够用于描述当今商用FPGA器件。美国加利福尼亚大学 洛杉矶分校开发了 RASP7系统,其中集成了 3种与FPGA逻辑 单元结构有关的装箱模块,分别可以处理Xilinx公司的XC3000系列12和XC4000系列FPGA的逻辑单元,以及Altera公司的FLEX-8000 系列FPGA的逻辑单元8。此装箱算法局限于,仅仅针对早期平面 化的商用FPGA器件结构的逻辑单元所设计。虽然9也提出了 FPGA逻辑单元的功能模型和通用性逻辑单元装箱算法,但是该算法在功能 匹配过程中有大量的时间开销,因此并不适用于大规模的用户电路网 表。目前没有一种既具有通用性,同时也兼备实用性的逻辑单元的模 型和相关算法。参考文献1Xilinx Inc., The Programmable Logic Data Book, 2000.2V. Betz,丄Rose and A. Marquardt, Architecture and CAD for Deep Submicron FPGAs, Kluwer Academic Publisher, 1999.3M. Masud, "FPGA routing structures: A novel switch bbck and depopulated interconnect matrix architecture", MASc Thesis, December 1999.4V. Betz, J. Rose, "VPR: A new packing, placement and routing tool for FPGA research", Proceedings of the 7th international workshop on field-programmable logic and applications. London, UK: Springer-Verlag, 1997: 213-222.5A. Marquardt, V. Betz and J. Rose, "Using Cluster-Based Logic Block and Timing-Driven Packing to Improve FPGA Speed and. Density", ACM Symposium on FPGAs. 1999, pp. 37-46.6E. Bozorgzadeh, S. Ogrenci-Memik, M. Sarrafzadeh, "RPack: Routability-driven packingfor cluster based FPGAs", Proceedings of the Asia-South Pacific design automationconference, Yokohamaj Japan: IEEE Press, 2001, pp. 629-634.7Jason Cong, John Peck and Yuzhong Ding, "RASP: A General Logic Synthesis Systemfor SRAM-based FPGAs", Proceedings of the 4th ACM International Symposium onFPGAs, 1996, pp. 137-143.8Altera Inc., Data Bool^ 1998.19童家榕,倪刚,来金梅,"FPGA逻辑单元的功能模型和通用性逻辑单元装箱算法", 公开专利号CN 1 786968 A, 200
技术实现思路
本专利技术旨在寻求一种既简单又实用并含有专用器件的FPGA逻 辑单元模型,并在此基础上研究一种具有本文档来自技高网
...

【技术保护点】
一种现场可编程器件FPGA逻辑单元模型,其特征在于:它由三级组件构成:第一级为查找表,第二级为专用器件,第三级为时序器件; 所述第一级包含了两个K输入的查找表(701和702),K可以是2、3、4、5或6;所述第二级包含了K+1输入查 找表多路选择器(705)、K+2输入查找表多路选择器(706)、两个加法器进位链多路选择器(703和704)、两个多路选择器(708和710)和两个“和输出”专用器件(707和709);所述第三级包含两个多路选择器(711和712)和两个时序器件(713和714); 第一级查找表701和702的输出端O分别连接到第二级的多路选择器705的两个数据信号输入端IA和IB,K+1输入查找表的输入IN(K+1)连接到多路选择器705的数据选通端S,多路选择器705的输出端O和K +1输入查找表的输出OUT(K+1)相连;多路选择器705的输出端O和逻辑单元的输入IN分别连接到第二级多路选择器706的两个数据信号输入端IA和IB,K+2输入查找表的输入IN(K+2)连接到多路选择器706的数据选通端S,多路选择器706的输出端O和K+2输入查找表的输出OUT(K+2)相连; 第二级多路选择器704的数据信号输入端IA和互连线进位输入CIN1相连,而数据信号输入端IB和专用进位输入CIN相连;多路选择器703的数据信号输入端IA和互连线进位输入CI N0相连,而数据信号输入端IB和多路选择器704的输出端O相连;多路选择器703的输出端O和专用进位输出CO以及互连线进位输出CO0相连; 第二级“和输出”专用器件707的两个输入端I0和I1分别与第一级查找表701的输出端O和第二级 多路选择器704的输出端O相连;“和输出”专用器件707的输出端O与多路选择器708的IB输入端相连,多路选择器708的IA输入端则与第一级查找表701的输出端O相连;多路选择器708的输出端O与组合输出D0和多路选择器711的IA输入端相连;“和输出”专用器件709的两个输入端I0和I1分别与第一级查找表702的输出端O和专用进位输入CIN相连,“和输出”专用器件709的输出端O与多路选择器710的IB输入端相连,多路选择器710的IA输入端则与第一级查找表702的输出端O相连;多路选择器710的输出端O与组合输出D1和多路选择器712的IA输入端相连; 第三级多路选择器711的IB输入端与时序器件714的输出端O相连,多路选择器711的输出端O与时序器件713的D输入端相连;多路选择器712的IB输入 端则与移位输入SIN相连,多路选择器712的输出端O与时序器件714的D输入端相连;时序器件713的输出端O和时序输出Q0以及移位输出相连;时序器件714的输出端O和时序输出Q1相连。...

【技术特征摘要】
...

【专利技术属性】
技术研发人员:杨萌王侃文周学功童家榕
申请(专利权)人:复旦大学
类型:发明
国别省市:31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1