一种面积优化的fpga互连结构的制作方法

文档序号:7541899阅读:225来源:国知局
一种面积优化的fpga互连结构的制作方法
【专利摘要】本发明提出一种FPGA互连结构。所述的FPGA互连结构包括第一级多路复用器和至少另一级多路复用器,其中第一级多路复用器的输出信号构成所述至少另一级多路复用器的输入信号;所述至少另一级多路复用器包括多个多路复用器,所述多个多路复用器具有相同的多位第一输入信号。多位数据通路经过基本相同的绕线路径,即每条通路的延时基本相同,从而保证了数据的正常传输,并减小了具有相同输入的多路复用器间的设计面积。
【专利说明】一种面积优化的FPGA互连结构

【技术领域】
[0001]本发明涉及FPGA互连结构,更具体地讲涉及面积优化的FPGA互连结构。

【背景技术】
[0002]有许多应用要求集成电路具有可编程或可配置的互联网络。一个这样的应用是现场可编程逻辑门阵列(Field programmable gate array,简称FPGA),其中,逻辑门通过可配置的互联网络而彼此连接。作为独立芯片或系统中核心部分起作用的FPGA已经广泛被应用于大量微电子设备中。
[0003]在FPGA的基本结构当中,多路复用器(MUX)应用的非常广泛。多路复用器是构成FPGA的基本互连单元,通常FPGA有80%的面积被互连单元占用。因此减小基本互连单元的面积对于减小FPGA芯片的整体面积有着很重要的意义。
[0004]图1为现有技术中通常采用的FPGA互连结构64 X I多路复用器的结构示意图。如图1所示,该结构采用两级多路复用器来实现,其中第一级由16个4选I多路复用器组成,该第一级中所有4选I多路复用器共享相同的配置位,第二级由一个16选I多路复用器组成。
[0005]图2为现有技术中通常采用的FPGA互连结构64X4多路复用器的结构示意图。如图2所示,该结构采用四组FPGA互连结构64X I多路复用器组成,该结构占用了较大的版图面积。
[0006]本发明根据多路复用器的版图设计特点,设计了一种互连结构(xbar),可以有效的减小互连单元的面积。


【发明内容】

[0007]本发明的目的是提供能够克服以上问题的FPGA互连结构。
[0008]本发明提供一种FPGA互连结构,包含:第一级多路复用器和至少另一级多路复用器,其中第一级多路复用器的输出信号构成所述至少另一级多路复用器的输入信号;所述至少另一级多路复用器包括多个多路复用器,所述多个多路复用器具有相同的多位第一输入信号。
[0009]第一级多路复用器由N组次级多路复用器组成,每组次级多路复用器共享配置位。次级多路复用器由M组多路复用器组成,所述M组多路复用器具有相同的多位第二输入信号。

【专利附图】

【附图说明】
[0010]图1是现有技术中FPGA互连结构64X I多路复用器的结构示意图;
[0011]图2是现有技术中FPGA互连结构64X4多路复用器的结构示意图
[0012]图3是本发明实施例的FPGA互连结构64X4多路复用器的结构示意图;;
[0013]图4是图3所示的第二级多路复用器的结构示意图;
[0014]图5是实施例中采用的源-漏共享技术图;
[0015]图6是图4所示第二级多路复用器一部分的的设计版图;
[0016]图7是图3所示的第一级多路复用器的结构示意图;
[0017]图8是本发明实施例的FPGA互连结构64X32多路复用器的结构示意图;

【具体实施方式】
[0018]下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
[0019]图3是根据本发明实施例的FPGA互连结构64X4多路复用器的结构示意图。如图3所示,该结构系统有64位输入信号和4位输出信号,由两级多路复用器组成。
[0020]输入端的64位信号分离为四组16位信号,每组16位信号又分离为四组4位信号作为第一级多路复用器的输入信号。第一级多路复用器包括四组次级多路复用器,每组次级多路复用器包括4个4选I多路复用器并共享配置位,每组次级多路复用器输入一组16位信号并输出一组4位信号。第一级多路复用器输出的四组4位信号经叠加后形成一组16位信号并作为第二级多路复用器的输入信号。
[0021]第二级多路复用器由四个16选I的多路复用器组成,每个16选I的多路复用器输入一组16位信号并输出四组I位信号,该四组I位信号经叠加后形成一组4位信号作为系统的输出信号。其中输入到每组16选I的多路复用器的16位信号是相同的。
[0022]图4是图3所示第二级多路复用器的结构示意图。如图4所示,有由上到下排列的四组(行)4选I多路复用器,每组由多路复用器sO、多路复用器S1、多路复用器s2、多路复用器s3和多路复用器s4组成。
[0023]在每组4选I多路复用器中,多路复用器sO、多路复用器S1、多路复用器s2和多路复用器s3共享配置位。多路复用器sO接收输入信号X0_0、X1_0、X2_0和X3_0,输出Y0_0;多路复用器si接收输入信号Χ0_1、Χ1_1、Χ2_1和X3_l,输出Υ0_1;多路复用器s2接收输入信号X0_2,X1_2,X2_2和X3_2,输出Y0_2 ;多路复用器s3接收输入信号Χ0_3、Χ1_3、Χ2_3和Χ3_3,输出Υ0_3。在相同的配置位的控制下,多路复用器sO、多路复用器S1、多路复用器s2和多路复用器s3选择同样位置的输入信号作为各自输出。输出信号Y0〈0:3>经多路复用器s4选择I位信号,由此实现一个16选I的多路复用器。
[0024]从图4中可见,由于不同组但是列位置相同的4选I多路复用器s0_s3采用相同的输入信号,不同组的4选I多路复用器s4输出4个不同的I位信号,各组4选I多路复用器实际构成的16选I多路复用器具有相同的16位输入和I位不同的输出。因此,图4所示的4组4选I多路复用器共同构成图3中的第二级16选4多路复用器。
[0025]不同于现有技术中在第二级多路复用器中每个多路复用器的输入是不同的特点,在本发明实施例中不同组但列位置相同的多路复用器的输入信号是相同的,例如四个4选I多路复用器sO的输入信号为相同的。如果替换构成这些不同组但列位置相同的多路复用器的相邻晶体管的源极位置和漏极位置并将替换后的晶体管的相同节点进行共享,可减小节点之间的最小距离,从而有效的减小不同组多路复用器之间的最小距离,节约了设计面积。
[0026]图5是实施例中采用的源-漏共享技术图。如图6A中所示为四组晶体管(I IIIIIIV),其中A为源极,B为漏极,C为栅极。晶体管的栅极相当于多路复用器的配置位,用于控制多路复用器的输出信号;晶体管的源极和漏极相当于多路复用器的输入端和输出端,用于输入信号和输出信号。举例来说,第I组晶体管可以对应于图5中的第I组多路复用器s0-s3分别对X0_0-X3_0、X0_1-X3_1、X0_2-X3_2和X0_3_X3_3的选择。当晶体管的输入不同时,相邻晶体管不同的节点之间必需保持一个最小距离。
[0027]前文提及不同组但列位置相同的多路复用器s0_s3具有相同的输入信号,这意味着,相邻组(例如第I和II组)晶体管的漏极B (如果把B选为输入端的话)可具有相同的信号。如图6B所示,为了节约面积,可将相隔晶体管(II和IV或I和III)的源极和漏极进行位置对换,源极和漏极位置对换后的晶体管与未进行调整的晶体管的相邻节点是相同的。如图6C所示,由于晶体管的输入是相同的,故可将相邻晶体管的相同节点进行共享而形成面积优化的晶体管结构,该结构避免了晶体管节点之间的最小距离,可有效的节约面积。
[0028]图6是图4所示第二级多路复用器一部分的设计版图。如图6所示为图4的第二级多路复用器中相邻的两组多路复用器s0-s3。下文以第一组和第二组复用器为例。在图中X代表输入,Xm_n表不对图4中各组第η列多路复用器的第m个输入;S代表输出,Sp_q表示图4中第P列第q组多路复用器的输出。
[0029]S0_1、X0_0及其之间的配置位构成一个晶体管;S1_1、X0_1及其之间的配置位构成一个晶体管;S2_1、X0_2及其之间的配置位构成一个晶体管;S3_1、X0_3及其之间的配置位构成一个晶体管。该第一排晶体管共享配置位。
[0030]同理,X0_0和 S0_0,X0_1 和 S1_0,X0_2 和 S2_0,X0_3 和 S3_0 分别构成一个晶体管。该第二排晶体管共享配置位。
[0031]第一排晶体管和第二排晶体管具有共同的输入信号,所以共享相同的输入节点。由此,可减小相邻晶体管不同节点之间的最小距离,从而有效地减小了不同组多路复用器之间的设计面积。
[0032]由于每组多路复用器共享配置位,可有效的减小当配置位不相同时为多路复用器提供独立配置位而增加的设计面积。
[0033]图7是图3所示的第一级多路复用器的结构示意图。如图7所示有由上到下排列的四组(行)4选I多路复用器,每组由多路复用器z0、多路复用器zl、多路复用器z2和多路复用器z3组成。
[0034]在每组4选I多路复用器中,多路复用器z0、多路复用器zl、多路复用器z2和多路复用器z3共享配置位。多路复用器z0接收输入信号10_0,11_0,12_0和13_0,输出X0_0;多路复用器zl接收输入信号10_1,11_1,12_1和13_1,输出X0_1;多路复用器z2接收输入信号10_2,11_2,12_2和13_2,输出X0_2 ;多路复用器z3接收输入信号10_3,11_3,12_3和13_3,输出X0_3。在相同的配置位的控制下,多路复用器sO、多路复用器S1、多路复用器s2和多路复用器s3选择同样位置的输入信号作为各自输出。输出信号X0〈0:3>,由此实现一个16选4的多路复用器。
[0035]从图7中可见,由于不同组但是列位置相同的4选I多路复用器z0-z3采用相同的输入信号,输出4个不同的I位信号,各组4选I多路复用器实际构成的16选4多路复用器具有相同的16位输入和4位不同的输出。因此,图7所示的4组4选I多路复用器共同构成图3中的第一级16选4多路复用器。
[0036]本发明实施例的第一级多路复用器相对于现有技术的第一级多路复用器虽然会因每组配置位的不同而增加一定的设计面积,但是由于该第一级多路复用器产生的4组4位信号为第二级多路复用器的总输入信号而不是现有技术中使用4组共享配置位的第一级多路复用器产生的4组16位信号分别作为第二级多路复用器4组16选I多路复用器的输入信号,故可减少约四分之三的第一级多路复用器的设计面积,从而有效的减小了 FPGA互连结构的整体设计面积。
[0037]图8是本发明实施例的FPGA互连结构64X32多路复用器的结构示意图。
[0038]在一个优选的例子中,FPGA互连结构为64X32多路复用器。如图8所示该结构系统有64位输入信号和32位输出信号,由两级多路复用器组成。
[0039]输入端的64位信号分离为四组16位信号,每组16位信号又分离为四组4位信号作为第一级多路复用器的输入信号。第一级多路复用器由四组次级多路复用器组成,每组次级多路复用器又包含8个小组,每个小组由4个4选I多路复用器组成并共享配置位。第一级多路复用器的每个小组输出一组4位信号,每组次级多路复用器共输出四组4位信号,该四组4位信号经叠加后形成16位信号作为第二级多路复用器的输入信号。
[0040]第二级多路复用器由8组多路复用器组成,每组多路复用器由4个16选I多路复用器组成。每个16选I多路复用器通过对输入第一级多路复用器输出的16位信号进行选取并输出一组I位信号,每组多路复用器输出的四组I位信号经叠加后形成4位信号作为系统的输出信号,该第二级多路复用器共可产生八组4位信号。其中输入到每个16选I的多路复用器的16位信号是相同的。
[0041]在又一个优选的例子中,FPGA互连结构为128X4多路复用器。该结构系统有128位输入信号和4位输出信号,由三级多路复用器组成。
[0042]输入端的128位输入信号输入到第一级多路复用器,第一级多路复用器由四组各自共享配置位的32选16多路复用器组成,该32选16多路复用器从输入的一组32位信号中选取16位信号作为输出信号,四组16位信号作为第二级多路复用器的输入信号。
[0043]第二级多路复用器由四组各自共享配置位的16选4多路复用器组成,该16选4的多路复用器从输入的一组16位信号中选取4位信号作为输出信号,第二级多路复用器输出的四组4位信号经叠加后成型一组16位信号作为第三级多路复用器的输入信号。其中输入到每个16选4的多路复用器的16位信号是相同的。
[0044]第三级多路复用器由四组各自共享配置位的16选I多路复用器组成,该16选I的多路复用器从输入的一组16位信号中选取I位信号作为输出信号,第三级多路复用器共输出四组I位信号经叠加后成型一组4位信号作为输出信号。其中输入到每个16选I的多路复用器的16位信号是相同的。
[0045]需要指出的是在至少另一极多路复用器中,至少有一级多路复用器采用本发明中多个多路复用器具有相同输入信号的结构,优选的非第一级多路复用器可全部采用该结构以减小设计面积。第一级多路复用器采用其他的互连结构也以达到相同的技术效果,优选的第一级多路复用器可采用本发明中多个多路复用器具有相同输入信号的结构以减小设计面积。
[0046]以上所述的【具体实施方式】,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的【具体实施方式】而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种FPGA互连结构,包含:第一级多路复用器和至少另一级多路复用器,其中第一级多路复用器的输出信号构成所述至少另一级多路复用器的输入信号;所述至少另一级多路复用器包括多个多路复用器,所述多个多路复用器具有相同的多位第一输入信号。
2.根据权利要求1所述的FPGA互连结构,其特征在于所述第一级多路复用器由N组次级多路复用器组成,每组次级多路复用器共享配置位。
3.根据权利要求2所述的FPGA互连结构,其特征在于所述次级多路复用器由M组多路复用器组成,所述M组多路复用器具有相同的多位第二输入信号。
【文档编号】H03K19/177GK104242913SQ201310248170
【公开日】2014年12月24日 申请日期:2013年6月21日 优先权日:2013年6月21日
【发明者】崔运东, 王潘丰, 刘成利, 刘明 申请人:京微雅格(北京)科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1