一种基于FPGA的IO布局方法技术

技术编号:38330307 阅读:9 留言:0更新日期:2023-07-29 09:13
本发明专利技术提供一种基于FPGA的IO布局方法,该方法包括:采用硬件描述语言建立FPGA布局架构,所述FPGA布局架构中包括至少一个IO模块和至少一个其他逻辑资源模块;获取其他逻辑资源模块的绕线资源,所述绕线资源包括第一绕线资源和第二绕线资源;获取所述IO模块中用于与其他逻辑资源模块进行连接的多个端口的端口信息;所述多个端口中的任意一个端口通过第二绕线资源完成绕线。本发明专利技术能够充分利用FPGA中的绕线资源,使得FPGA中的IO布局更加合理,提高FPGA面积利用率,降低总体延迟,满足FPGA芯片布局以后的更优性能。布局以后的更优性能。布局以后的更优性能。

【技术实现步骤摘要】
一种基于FPGA的IO布局方法


[0001]本专利技术涉及FPGA(Field Programmable Gate Array,现场可编程门阵列)设计
,尤其涉及一种基于FPGA的IO布局方法。

技术介绍

[0002]FPGA(Field Programmable Gate Array,现场可编程门阵列)由大量的可编程逻辑单元(如门、触发器)和可编程互连资源组成。这些逻辑单元和互连资源可以根据需要进行编程,以实现不同的数字电路功能。
[0003]在通常的FPGA系统中,每个IO资源(如Input/Output输入输出引脚)都需要与FPGA内部的IOBUF(Input/Output Buffer,输入输出缓冲器)单元相连,以实现电信号的转换和驱动。为了提高电路的可靠性和性能,通常每个IO资源都会对应一组独立的IO绕线资源,包括不同的逻辑(例如输入逻辑和输出逻辑)、引脚位置(例如物理引脚位置和逻辑位置)和方向(例如输入和输出方向)等。具体来说,每个IO资源可以有多个输入和输出引脚,每个引脚都需要与相应的IO绕线资源相连,以实现电信号的转换和驱动。
[0004]因为每个IO资源都有自己独立的IO绕线资源,这导致FPGA电路的布局和绕线更加复杂。此外,如果IO资源的数量很多,就需要额外的FPGA芯片面积来放置IO绕线资源,导致FPGA芯片面积浪费和成本增加。

技术实现思路

[0005]有鉴于此,本申请实施例提供了一种基于FPGA的IO布局方法,能够充分利用FPGA中的绕线资源,使得FPGA中的IO布局更加合理,提高FPGA面积利用率,降低总体延迟,满足FPGA芯片布局以后的更优性能。
[0006]第一方面,本申请实施例提供了一种基于FPGA的IO布局方法,包括:
[0007]采用硬件描述语言建立FPGA布局架构,所述FPGA布局架构中包括至少一个IO模块和至少一个其他逻辑资源模块;
[0008]针对所述至少一个其他逻辑资源模块中的任意一个其他逻辑资源模块,获取其他逻辑资源模块的绕线资源,所述绕线资源包括第一绕线资源和第二绕线资源,其中所述第一绕线资源为其他逻辑资源模块已占用绕线资源,第二绕线资源为其他逻辑资源模块未使用的富余绕线资源;
[0009]针对所述至少一个IO模块中的任意一个IO模块,获取所述IO模块中用于与其他逻辑资源模块进行连接的多个端口的端口信息;
[0010]所述多个端口中的任意一个端口通过第二绕线资源完成绕线。
[0011]可选地,所述多个端口中的任意一个端口通过第二绕线资源完成绕线,包括:
[0012]根据所述端口信息确定可对所述多个端口中的每一个端口进行绕线的第二绕线资源的绕线坐标;
[0013]根据所述端口的第二绕线资源的绕线坐标计算该端口与其他逻辑资源模块连接
的时序性能信息;
[0014]选择时序性能信息最优的第二绕线资源的绕线坐标作为端口的绕线资源,完成IO模块的绕线。
[0015]可选地,在根据所述端口信息确定可对所述多个端口中的每一个端口进行绕线的第二绕线资源的绕线坐标之后,所述方法还包括:
[0016]将所述多个端口中的每一个端口的绕线坐标保存为数据文件;
[0017]计算时序性能信息时,将所述数据文件存储到内存中。
[0018]可选地,将所述数据文件存储到内存中,包括:
[0019]对同一个IO模块的多个端口,在内存中保存所述多个端口中的每一个端口的端口名、每一个端口对应的第二绕线资源的坐标值。
[0020]可选地,所述端口包括所述IO模块的输入端口和输出端口。
[0021]可选地,所述端口的绕线坐标包括X值和Y值。
[0022]可选地,所述硬件描述语言为VHDL或Verilog语言。
[0023]本申请实施例提供了一种基于FPGA的IO布局方法。在一个实施例中,FPGA芯片中IO并没有独立的绕线资源,而IO的绕线是通过它附近逻辑资源模块的绕线资源,本申请实施例提供的FPAG中逻辑资源模块的绕线资源并不会被逻辑资源模块完全占用,设计时候一定会留出一些富余的绕线资源,IO就是通过这些富余的绕线资源完成绕线,充分利用FPGA中的绕线资源,从而节约了FPGA芯片中的绕线资源,使得FPGA中的IO布局更加合理,提高FPGA面积利用率,减少绕线资源被浪费的情况发生,降低总体延迟,满足FPGA芯片布局以后的更优性能。
[0024]同时,本申请实施例采用硬件描述语言建立FPGA布局架构,通过找到IO中与绕线资源xbar相连接的所有端口并保存端口名称和对应的绕线资源xbar坐标值,可以确定它们在FPGA架构中的位置关系。计算时序性能信息时,FPGA布局架构中的布局模块可以使用这些坐标值来确定模块和端口的位置并对齐,具体可以根据端口的名称和对应的绕线资源xbar坐标值来进行匹配和对齐,从而实现bus信号的对齐。
附图说明
[0025]以下,结合附图详细描述本申请的具体实施方式,其中:
[0026]图1为本申请实施例提供的FPGA芯片上的IO模块通过其他逻辑单元富余绕线资源进行绕线的示意图;
[0027]图2为本申请实施例提供的一种基于FPGA的IO布局方法的流程图。
具体实施方式
[0028]下面通过附图和实施例,对本专利技术的技术方案做进一步的详细描述。
[0029]在本文中,术语“一”、“一个”和其它类似词语并不意在表示只存在一个所述事物,而是表示有关描述仅仅针对所述事物中的一个,所述事物可能具有一个或多个。在本文中,术语“包含”、“包括”和其它类似词语意在表示逻辑上的相互关系,而不能视作表示空间结构上的关系。例如,“A包括B”意在表示在逻辑上B属于A,而不表示在空间上B位于A的内部。另外,术语“包含”、“包括”和其它类似词语的含义应视为开放性的,而非封闭性的。例如,“A
包括B”意在表示B属于A,但是B不一定构成A的全部,A还可能包括C、D、E等其它元素。
[0030]在本文中,术语“第一”、“第二”和其它类似词语并不意在暗示任何顺序、数量和重要性,而是仅仅用于对不同的元件进行区分。在本文中,术语“实施例”、“本实施例”、“一实施例”、“一个实施例”并不表示有关描述仅仅适用于一个特定的实施例,而是表示这些描述还可能适用于另外一个或多个实施例中。本领域技术人员应理解,在本文中,任何针对某一个实施例所做的描述都可以与另外一个或多个实施例中的有关描述进行替代、组合、或者以其它方式结合,所述替代、组合、或者以其它方式结合所产生的新实施例是本领域技术人员能够容易想到的,属于本申请的保护范围。
[0031]在本申请各实施例中,采用硬件描述语言建立FPGA布局架构可以是指FPGA设计中的一个步骤。FPGA设计通常包括前端设计和后端设计;前端设计可以包括RTL(Register Transfer Level,寄存器传输级)设计、验证、静态时序分析、覆盖率和逻辑综合;后端设计可以包括本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于FPGA的IO布局方法,其特征在于,包括:采用硬件描述语言建立FPGA布局架构,所述FPGA布局架构中包括至少一个IO模块和至少一个其他逻辑资源模块;针对所述至少一个其他逻辑资源模块中的任意一个其他逻辑资源模块,获取其他逻辑资源模块的绕线资源,所述绕线资源包括第一绕线资源和第二绕线资源,其中所述第一绕线资源为其他逻辑资源模块已占用绕线资源,第二绕线资源为其他逻辑资源模块未使用的富余绕线资源;针对所述至少一个IO模块中的任意一个IO模块,获取所述IO模块中用于与其他逻辑资源模块进行连接的多个端口的端口信息;所述多个端口中的任意一个端口通过第二绕线资源完成绕线。2.根据权利要求1所述的方法,其特征在于,所述多个端口中的任意一个端口通过第二绕线资源完成绕线,包括:根据所述端口信息确定可对所述多个端口中的每一个端口进行绕线的第二绕线资源的绕线坐标;根据所述端口的第二绕线资源的绕线坐标计算该端口与其他逻辑资源模块连接的时序性能信息;选择时序性...

【专利技术属性】
技术研发人员:靳松刘桂林王海力
申请(专利权)人:京微齐力北京科技股份有限公司
类型:发明
国别省市:

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

1