A general FPGA automatic layout method based on analytic method, including: S1 is used to package the information of constraint and network table through mapping and packaging; S2 input the time delay information of user constraints through static time delay analyzer; S3 automatically layout each module module in the physical design of the chip in accordance with the user specified constraints. The corresponding position, including the input and output layout, the global clock layout, the initial layout, the overall layout, the legalized layout and the detailed layout; the overall layout is based on the initial position of the circuit unit module and the circuit topology, and uses the conjugate ladder method based on the mixed step adjustment strategy to solve the different levels of the circuit. Unit module, layout state, dynamic adjustment step size calculation method, distributed circuit unit module, S4 output circuit netlist information. This invention automatically layout the layout of the chip, and make the line length and time delay satisfy the user constraints, and optimize the quality and speed of the layout by adjusting the pace optimization strategy in the overall layout.
【技术实现步骤摘要】
一种基于解析方法的总体FPGA自动化布局方法
本专利技术涉及一种FPGA自动化布局方法,具体是指一种基于解析方法的总体FPGA自动化布局方法,属于集成电路设计领域,尤其是属于专用集成电路领域中的一种半定制电路FPGA(FieldProgrammableGateArray,现场可编程门阵列)的自动化布局相关
范畴。
技术介绍
FPGA采用了逻辑单元阵列(LCA,LogicCellArray)这样一个概念,内部包括的电路单元模块有:可配置逻辑模块(CLB,ConfigurableLogicBlock)、输入输出模块(IOB,InputOutputBlock)和内部连线(Interconnect)等部分。FPGA芯片是二维结构,每个点对应一个CLB,每个CLB里包含片结构SLICE,而SLICE里面包含门级表(GATE)。FPGA是可编程器件,与传统逻辑电路和门阵列(如PAL,GAL及CPLD器件)相比,FPGA具有不同的结构。FPGA利用小型查找表(16×1RAM)来实现组合逻辑,每个查找表连接到一个D触发器的输入端,该D触发器再驱动其他逻辑电路或驱动I/O,由此构成了既可实现组合逻辑功能又可实现时序逻辑功能的基本逻辑单元模块,这些模块间利用金属连线互相连接或连接到I/O模块。FPGA的逻辑是通过向内部静态存储单元加载编程数据来实现的,存储在存储器单元中的值决定了逻辑单元的逻辑功能以及各模块之间或模块与I/O之间的连接方式,并最终决定了FPGA所能实现的功能,FPGA允许无限次的编程。典型FPGA的开发流程一般包括功能定义、器件选型、设计输入、功能仿真、 ...
【技术保护点】
1.一种基于解析方法的总体FPGA自动化布局方法,其特征在于,包含:S1、将FPGA的芯片约束信息以及电路网表信息通过映射打包输入;S2、将FPGA的用户约束的时延信息通过静态时延分析器输入;S3、根据输入的芯片约束信息、电路网表信息和用户约束信息,将各个电路单元模块自动布局在整个芯片物理设计中的对应位置;包括依次进行的输入输出布局、全局时钟布局、初始布局、总体布局、合法化布局和详细布局;其中,总体布局是指根据所有电路单元模块的初始位置和电路的拓扑连接,构建近似于半周长的目标约束,并采用基于混合步长调整策略的共轭梯度法求解,针对不同级别的电路单元模块、布局的状态,动态调整步长的计算方式,总体分布电路单元模块;S4、输出完成布局之后的电路网表信息,进行后续布线操作。
【技术特征摘要】
1.一种基于解析方法的总体FPGA自动化布局方法,其特征在于,包含:S1、将FPGA的芯片约束信息以及电路网表信息通过映射打包输入;S2、将FPGA的用户约束的时延信息通过静态时延分析器输入;S3、根据输入的芯片约束信息、电路网表信息和用户约束信息,将各个电路单元模块自动布局在整个芯片物理设计中的对应位置;包括依次进行的输入输出布局、全局时钟布局、初始布局、总体布局、合法化布局和详细布局;其中,总体布局是指根据所有电路单元模块的初始位置和电路的拓扑连接,构建近似于半周长的目标约束,并采用基于混合步长调整策略的共轭梯度法求解,针对不同级别的电路单元模块、布局的状态,动态调整步长的计算方式,总体分布电路单元模块;S4、输出完成布局之后的电路网表信息,进行后续布线操作。2.如权利要求1所述的基于解析方法的总体FPGA自动化布局方法,其特征在于,所述的用户约束信息包括:存储在用户设计文件中的物理约束信息,以及存储在时钟约束文件中的时延约束信息。3.如权利要求1所述的基于解析方法的总体FPGA自动化布局方法,其特征在于,所述的S3中,自动布局电路单元模块的过程,具体包含以下步骤:S31、输入输出布局:摆放输入输出模块,根据FPGA的物理约束信息,随机将所有的输入输出模块摆放到指定的位置上,构建一个整数规划问题,通过求解获得最优的输入输出布局;如果不能获得最优解,报错并停止布局;S32、全局时钟布局:当FPGA中用到的时钟线网多于每个时钟区域支持的时钟线网数目时,需把由时钟线网驱动的模块进行位置的预分配,将其分配到指定的时钟区域内,形成时钟区域约束;如果不能完成由钟线线网驱动的模块的位置预分配,报错并停止布局;S33、初始布局:根据已经摆放好的输入输出模块的位置以及时钟区域约束,构建二次线长的目标约束问题,并采用预优处理的共轭梯度法对其求解,获得所有电路单元模块的初始位置,得到线长最短的布局;S34、总体布局;S35、合法化布局:将电路单元模块近距离移动到合法的整数位置上,保证各个电路单元模块之间不存在重叠,且电路单元模块移动到的位置与该电路单元模块的类型兼容;S36、详细布局:基于低温模拟退火方法,近距离的移动或者交换两个电路单元模块,弥补总体布局和合法化布局对局部布局造成的破坏。4.如权利要求3所述的基于解析方法的总体FPGA自动化布局方法,其特征在于,所述的S31~S36中,在每个步骤所进行的布局之后,需要衡量当前布局的状态,如果发现不可继续...
【专利技术属性】
技术研发人员:王似飞,叶翼,李小南,吴昌,
申请(专利权)人:上海复旦微电子集团股份有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。