本发明专利技术提供一种基于FPGA的多输入LUT的布局方法,实现在FPGA的一个逻辑区LP内增加至少一根外部信号输入端口,用于LP中的寄存器接入外部输入信号时使用。对FPGA进行布局,当寄存器有外部信号驱动并发生布线冲突时,判断LUT使用的输入端口和输入端口数量。当LUT的输入端口和输出端口有悬空时,通过模式选择设置,将LUT的任一悬空输入端和任一悬空输出端布局成一个单输入单输出的选通器,选通器的输入端用作给寄存器提供一个新的外部输入端口,LUT原有使用的输入端口和输出端口所实现的逻辑功能保持不变。本发明专利技术布局方法减少了需要重新布局的FPGA芯片中LP单元的数量,使FPGA芯片布局结果更加紧凑,布线距离更短,从而减小电信号传输时延。号传输时延。号传输时延。
【技术实现步骤摘要】
一种基于FPGA的多输入LUT的布局方法
[0001]本申请涉及集成电路应用领域,尤其涉及一种基于FPGA的多输入LUT的布局方法。
技术介绍
[0002]在FPGA(Field Programmable Gate Array)芯片设计过程的综合实现阶段中,综合布局阶段会将硬件描述语言设计的电路编译为由基本逻辑单元连接而成的逻辑网表,网表的基本组成部分主要是各类寄存器REG(Register)和多输入查找表LUT(Lookup table)。在之后的实现布线阶段中,程序会将这些网表分配到芯片上实际存在的门电路上,并确定它们的连接路径。
[0003]通常,FPGA芯片包括多个可编程逻辑模块(Programmable Logic Block,PLB),基于不同的型号,每个PLB包含一定数量的逻辑区LP(Logic Parcel),每个LP包括一定数量的查找表LUT、寄存器REG、加法器ADD和多路选择器MUX等,在布局阶段,以PLB为一个独立的单元,实现逻辑映射的信号除了来自于PLB内部,还有来自于PLB外部的输入信号,由于每个LP中对外部输入信号进行布线的资源是有限的,往往需要再重新寻找新的LP进行布局,这样会造成新的LP中主体资源LUT、REG等的浪费。
技术实现思路
[0004]本专利技术的目的是针对现有技术的缺陷,提供了一种基于FPGA的多输入LUT的布局方法,能够充分利用PLB内部的端口资源。在寄存器REG有外部信号驱动,且外部信号的输入端发生布线冲突时,判断LUT实际使用的输入端口数的个数。在至少一个LUT的输入端口和输出端口都有悬空的情况下,将LUT任一悬空的输入端口和任一悬空的输出端口转化为寄存器REG外部信号的布线资源使用。从而减少需要重新布局的LP的数量,使布局结果更加紧凑,使用面积更小。
[0005]本专利技术提供了一种基于FPGA的多输入LUT的布局方法,所述布局方法实现在FPGA的一个逻辑区LP内增加至少一根外部信号输入端口,所述LP中包括多输入查找表LUT,至少两个寄存器REG;所述外部信号输入端口用于所述寄存器接入外部输入信号时使用,所述布局方法包括:
[0006]对FPGA进行布局,所述FPGA包含PLB,所述PLB包含LP,使用所述LP中LUT的输入端口和输出端口实现逻辑功能;所述LP中包括LUT,至少两个寄存器;
[0007]当所述寄存器有外部信号驱动时,判断所述外部信号的输入端是否发生布线冲突;当所述外部信号的输入端发生布线冲突时,判断所述LP中LUT使用的输入端口数量和输出端口数量;
[0008]当所述LP中至少一个LUT的输入端口和输出端口都有悬空时,选择所述至少一个LUT中的一个特定LUT;将所述特定LUT的任意一个悬空输入端口结合特定LUT的任意一个悬空输出端口布局成一个单输入单输出的选通器;所述选通器的输入端用于给所述寄存器接入外部输入信号时使用;所述特定LUT除所述任意一个悬空端口和所述任意一个输出端口
之外的其他输入端口和输出端口的所述逻辑功能保持不变。
[0009]所述多输入LUT具有两个输出端口,所述输出端口为x、xy。
[0010]优选的在所述输出端的xy端口通过选通规则输出任意需要的功能信号,将输出端x端口悬空。所述选通规则在所述LUT查找表中进行设置。
[0011]优选的,将所述LUT没有使用的输入端口悬空。
[0012]优选的,在所述特定LUT查找表控制数据的开头写b0表示所述特定LUT布局不变,写b1表示将所述特定LUT的任意一个悬空输入端口结合特定LUT的任意一个悬空输出端口布局成一个所述单输入单输出的选通器。
[0013]优选的,FPGA为HME C1/P1 FPGA芯片。
[0014]本专利技术实施例提供的一种基于FPGA的多输入LUT的布局方法,基于HME C1/P1的LP结构,相比现有技术,在LUT的输入端口和输出端口有悬空的情况下,通过对查找表LUT控制数据的模式选择,将LUT的任意一个悬空输入端口结合任意一个悬空输出端口布局成一个单输入单输出的选通器,将悬空的端口转化为布线资源使用。可以在LP中寄存器由外部驱动且发生布线冲突时,减少需要重新布局的LP的数量,使相关线网的门电路元件实际布局位置更加接近,减少布线所用时间,缩短布线路径长度,由此可以减小FPGA芯片延时,提高FPGA芯片的关键频率。
附图说明
[0015]为了更简单说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0016]图1为本专利技术实施例中基于HME C1/P1 FPGA器件的LUT,在现有技术中设置为六输入单输出的电路图;
[0017]图2为本专利技术实施例中基于HME C1/P1 FPGA器件的LUT,其悬空输入和输出端口设置成单输入单输出选通器的电路图;
[0018]图3为本专利技术实施例中基于HME C1/P1 FPGA器件的一个LP的内部结构图。
具体实施方式
[0019]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例,本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0020]本专利技术下述实施例中的方法是基于HME C1/P1 FPGA器件实现的,为更好的理解本专利技术实施例提供的技术方案,首先对HME C1/P1 FPGA器件的逻辑结构进行简单说明。
[0021]在HME C1/P1 FPGA的硬件架构中,FPGA芯片中包括多个可编程逻辑模块(Programmable Logic Block,PLB),一般为N
×
M的矩形阵列,每一个PLB包括4个逻辑区LP(Logic Parcel),每个LP包括两个六输出单输出查找表LUT6和四个寄存器REG,两个加法器ADD和八个多路选择器。
功能没有闲置,输入信号占用端口号为f2:m(0≤m≤4,,m≠n),占用端口数为M个,通过修改查找表可以在xy端口输出需要的功能信号。LUT5_2用于实现原有LUT6的逻辑功能,所使用的输入端和输出端位置和顺序是否改变不做限定。
[0037]图2中,因为FPGA芯片内部结构原因,LUT5_1的输出端口x虽然和LUT5_2的输出端口xy连接到一个MUX,但可以通过对MUX的选通设置,使MUX忽略来自x端口的输入信号,从而不影响原有功能模块LUT5
‑
2的逻辑功能。
[0038]优选的,将LUT中没有使用的输入端悬空。
[0039]图3中,基于HME C1/P1 FPGA的LP的内部结构如图所示,一个LP中有两个LUT,四个本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种基于FPGA的多输入LUT的布局方法,其特征在于,所述布局方法包括:对FPGA进行布局,所述FPGA包含PLB,所述PLB包含LP,使用所述LP中LUT的输入端口和输出端口实现逻辑功能;所述LP中包括LUT,至少两个寄存器;当所述寄存器有外部信号驱动时,判断所述外部信号的输入端是否发生布线冲突;当所述外部信号的输入端发生布线冲突时,判断所述LP中LUT使用的输入端口数量和输出端口数量;当所述LP中至少一个LUT的输入端口和输出端口都有悬空时,选择所述至少一个LUT中的一个特定LUT;将所述特定LUT的任意一个悬空输入端口结合所述特定LUT的任意一个悬空输出端口布局成一个单输入单输出的选通器;所述选通器的输入端用于给所述寄存器接入外部输入信号时使用;所述特定LUT除所述任意一个悬空端口和所述任意一个输出端口之外的其他输入...
【专利技术属性】
技术研发人员:罗钧,蒋中华,郭敬霞,刘桂林,王海力,
申请(专利权)人:京微齐力北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。