一种FPGA元构件布局区域分配方法组成比例

技术编号:5328110 阅读:233 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种FPGA元构件布局区域分配方法。所述FPGA元构件布局区域分配方法,首先获取对应FPGA硬件构件的元构件;并对所述FPGA元构件进行预处理,计算其所占逻辑块资源;然后根据FPGA元构件之间以及和外部端口之间的连接关系利用二次解析法求得FPGA元构件的最佳理论位置;根据目标布局区域内各个FPGA元构件的理论位置坐标和其占用资源对布局区域进行理论分割;根据理论分割资源比值与各物理分割点物理分割资源比值,确定分割线;根据分割线对FPGA元构件集合分配布局区域;选择任一分配给多元构件集合的布局区域为新的目标布局区域;继续对新的目标布局区域进行分割,直到所有FPGA元构件都被分配到相应的布局区域。

【技术实现步骤摘要】

本专利技术涉及计算机网络
,更具体地说,涉及一种FPGA元构件布局区域分 配方法。
技术介绍
随着IP (Internet Protocol,网络之间互连的协议)网络的蓬勃发展、新的应用 不断涌现,用户对网络带宽的要求也越来越高。运营商采用OC — 192 (IO(^bps)接口的光纤 传输大大提高了光传输网络的容量,而路由器作为网络的主要节点设备,其处理速度就成 为网络通信的主要瓶颈之一。在核心路由器设计中,转发引擎往往成为限制路由器性能提高的瓶颈,这不仅 是因为其功能的复杂性,更重要的是因为数据包的可用时间单元(ATU,available time unit)不断地减少。例如网络接口速率为10(ibp时,对40字节IP包而言,IP包的ATU仅 为32ns,而当速率为40(ibpS时,ATU仅为8ns。ATU指的是路由器处理单个任务的最大允许 时间,在进行各种任务的处理时,要求每一任务必须在ATU时间内完成,否则将导致数据包 阻塞和丢弃。要在这么短的时间里完成复杂的IP报文处理,必须采用流水线设计。考虑到 FPGA (Field Programmable Gate Array,现场可编程阵列)不仅有可编程能力,而且具有较 高的灵活性,便于实现多业务支持。同时,由于其可编程性是通过硬件实现的,因此可以提 供较高的处理速度,所以核心路由器一般选择了 FPGA作为转发引擎的核心器件。传统的FPGA电路设计需要经过如图1所示的处理流程。其中,逻辑综合把描述 FPGA功能的硬件描述语言翻译成最基本的与或非门的连接关系(网表),并根据要求(约束 条件)优化生成门级网表。映射的主要作用是将门级网表映射到具体型号FPGA内部的器件上(例如查找表 (LUT)、触发器(FF)等),生成基本元件级网表。装箱的目标就是把LUT和FF等电路功能元件进行组合,尽可能地放到具体型号 FPGA内部的逻辑块中(逻辑块由若干LUT、FF组成),生成逻辑块网表。布局布线根据用户约束和物理约束,对逻辑块进行实际的布局,并根据设计连接, 对布局后的模块进行布线。最后生成可直接下载到FPGA中的配置信息文件。传统对FPGA上的硬件构件开发时,将用户编写的针对整个硬件构件的硬件描述 语言统一进行逻辑综合、映射、装箱和布局布线处理。用户开发每个构件时都要将针对每个 构件的硬件描述语言统一进行FPGA电路设计流程处理。由于专业领域的差异,目前市场上各设备制造商针对不同的网络环境(如电信网、 互联网或广电网)设计不同的网络设备。而基于技术垄断和商业利益的考虑,即使对于同 一网络环境的设备制造商来说,其设备的内部接口一般也是不公开的。各厂家生产的网络 设备对于用户和其他厂商来说是封闭的,没有开放的操作接口。除了生产厂家外,用户和其 他厂家均无法了解该网络设备的底层构成如硬件构件的具体情况。用户无法对设备进行修 改、扩展或升级,这种工作只能由原厂家才能完成。上述现象使得用户无法根据设备工作的具体网络环境和功能需求对设备底层的 硬件构件进行修改,从而导致在不同的网络环境下需要配备不同的设备。对于设备中的可 重构硬件体来说,其无法通过下载不同的硬件构件来适应不同的网络环境或同一网络环境 下的不同业务应用,带来资源的浪费,限制了硬件体的可重构应用范围。为了避免上述情形的出现,现有技术中提出一种基于硬件元构件的硬件构件开发 装置(专利申请号200810149346. 2),通过该装置用户可以有效开发出适应不同网络环境、 不同业务应用的硬件构件,充分利用网络设备底层可重构硬件体资源,降低网络设备的成 本,增强其灵活性和扩展性。该硬件构件生成装置向外提供规范开放的统一操作接口,屏 蔽了设备底层不同可重构硬件体操作接口的差异性。用户通过该装置开发构件时,不必考 虑设备底层可重构硬件体的不同操作接口,只需向该装置开放的统一操作接口发送标准指 令,从而大幅度减轻了开发硬件构件的难度。然而,描述硬件构件的硬件描述语言映射到硬件电路要经过逻辑综合、映射、装箱 和布局布线阶段的处理,传统方案不考虑元构件的组成而将整个硬件构件设计进行统一处 理。而可重构设备要经常以元构件为基本单位进行硬件构件开发,不考虑元构件的组成而 将整个硬件构件设计进行统一处理效率低下。为了提高构件的开发效率,现有技术中提出一种FPGA硬件构件的生成方法及装 置(专利申请号201010002017. 2)。该方法流程如图2所示。该方法首先对元构件单独进 行逻辑综合、映射、装箱后再直接调用,这样硬件构件开发时直接调用的是元构件的逻辑块 网表,根据元构件的逻辑块级网表来生成针对整个硬件构件的逻辑块网表,然后对该逻辑 块网表进行布局布线阶段的处理最终生成可下载到FPGA的硬件构件配置信息文件。该方 法可省略FPGA逻辑综合、映射、装箱阶段处理,从而加快整个硬件构件的开发进程。该技术同时为了提高整个布局算法的运算速度,提出了二次布局方法。初始布局 时改变原有算法的任意逻辑块的初始布局,以元构件之间的流水线特性为出发点,结合输 入输出元构件与可编程器件输入、输出接口的互联关系以及中间元构件与外部存储单元的 互联关系,将逻辑块初始布局到各自的元构件初始位置。接着采用模拟退火算法对布局到 相应元构件的初始位置的逻辑块进行二次布局。上述元构件之间以及元构件和外部端口之间的连接关系比较简单,初始布局可采 用人工手段进行,而当元构件之间以及和外部端口之间的连接关系比较复杂时就难以根据 经验判断元构件的合理布局位置。并且各个元构件所占布局区域的大小是由其所占的逻辑 块资源决定的,给各个元构件手工分配布局区域存在较大的难度。
技术实现思路
本专利技术针对现有技术不足,提出一种FPGA元构件布局区域分配方法,以便加快整 个FPGA硬件构件的布局进程,克服了原有技术利用经验采用手工分配布局区域的局限性。本专利技术所采用的技术方案一种FPGA元构件布局区域分配方法,首先获取对应FPGA硬件构件的元构件(301);并 对所述FPGA元构件进行预处理,计算其所占逻辑块资源(302);所述FPGA元构件布局区域 分配方法,还包括下述步骤根据FPGA元构件之间以及和外部端口之间的连接关系利用二次解析法求得FPGA元构件的最佳理论位置(303);根据目标布局区域内各个FPGA元构件的理论位置坐标和其占用资源对布局区域进行 理论分割(304);根据理论分割资源比值与各物理分割点物理分割资源比值,确定分割线(305); 根据分割线对FPGA元构件集合分配布局区域(306); 选择任一分配给多元构件集合的布局区域为新的目标布局区域(307); 继续对新的目标布局区域进行分割,直到所有FPGA元构件都被分配到相应的布局区 域(308)。所述的FPGA元构件布局区域分配方法,根据FPGA元构件之间以及FPGA元构件 和外部端口之间的连接关系,利用二次解析法求得FPGA元构件的最佳理论位置,其步骤包 括构造有向图,将元构件和外部端口看作是图中的节点,它们之间的连线看作是图中的边;使用二次解析法将所有连线的欧氏距离平方和作为目标函数; 求得使目标函数最小的元构件节点理论坐标。所述的FPGA元构件布局区域分配方法,根据目标布局区域内各个FPGA元构件的 理本文档来自技高网
...

【技术保护点】
一种FPGA元构件布局区域分配方法,首先获取对应FPGA硬件构件的元构件(301);并对所述FPGA元构件进行预处理,计算其所占逻辑块资源(302);其特征在于,所述FPGA元构件布局区域分配方法,还包括下述步骤:根据FPGA元构件之间以及和外部端口之间的连接关系利用二次解析法求得FPGA元构件的理论位置(303);根据目标布局区域内各个FPGA元构件的理论位置坐标和其占用资源对布局区域进行理论分割(304);根据理论分割资源比值与各物理分割点物理分割资源比值,确定分割线(305);根据分割线对FPGA元构件集合分配布局区域(306);选择任一分配给多元构件集合的布局区域为新的目标布局区域(307);继续对新的目标布局区域进行分割,直到所有FPGA元构件都被分配到相应的布局区域(308)。

【技术特征摘要】

【专利技术属性】
技术研发人员:兰巨龙李鹏王保进黄万伟王婷邬钧霆韩晓亚王志明赵靓
申请(专利权)人:中国人民解放军信息工程大学
类型:发明
国别省市:41[中国|河南]

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

1