适用于不同类型FPGA电路编程的列地址分配器电路制造技术

技术编号:7996031 阅读:140 留言:0更新日期:2012-11-22 04:56
本发明专利技术公开了一种适用于不同类型FPGA电路编程的列地址分配器电路,包括列末位信号与清零信号控制电路、far信号与地址跳转信号选择电路、类地址跳转信号选择电路、cfgdata信号与地址跳转信号选择电路、far信号输出保持电路、mnr信号产生电路、第一类地址跳转模块和第二类地址跳转模块。利用本发明专利技术,解决了大规模多模块FPGA配置电路中列地址分配器电路版图大延时长的问题,达到了节约面积提高工作频率的目的。

【技术实现步骤摘要】

本专利技术涉及现场可编程门阵列(FPGA)
,更具体地是指ー种适用于不同类型FPGA电路编程的列地址分配器电路
技术介绍
现场可编程门阵列(FPGA)具有的用户可编程性和低开发成本等特性使它成为实现现代电路和系统的ー种重要技术。与专用集成电路(Application Specific IntegratedCircuits,简称ASIC)相比,FPGA的研发成本低和开发周期短等特性,使它成为实现现代数字电路和系统的ー种重要核心技术,其市场占有额也在逐年増加。作为FPGA中用于编程的列地址分配器电路,其设计在很大程度上直接影响到FPGA的编程速度和效率。一般来说,FPGA的编程地址分为三个部分类地址、块地址和位线地址。类地址表示的是配置的功能类的不同,例如输入输出模块(IOB)、逻辑模块(LB)和存储器模块(RB)等的不同;块地址表示的是同一功能类中块的不同,例如逻辑模块(LB)在编程时分为14个列块或者24个列块,而存储器模块(RB)在编程时分为2个或者4个列块;位线地址表示的是ー个列块中编程位线的不同地址,编程位线地址是编程过程中最低的地址,例如ー个逻辑模块(LB)中可能有十几到几十个不等的位线,那么就需要位线地址来区别它们。在编程过程中通常需要分别对FPGA中逐类、逐块、逐位线的编程,即编程的顺序先编程第一个类直至该类编程结束,再对第二个类编程直至该类编程结束,一直到对最后一个类编程直至该类编程结束。也就是对编程时所需要列地址进行有规律的输出,而不同的FPGA的类、块和位线的情形也不同,随着FPGA规模和复杂度的发展,会不断出现新的类, 也就将出现新的块和位线。图I、图2、图3表示的是现有技术中列地址分配器电路的结构示意图。其中,图I是现有技术中列地址分配器电路的结构示意图,0001、0002、0003表示的是传统型类地址跳转模块,0001是对FPGA中第一个类编程的模块,0002是对第二个类编程的模块,0003是对第三个类编程的模块,根据实际FPGA的不同,需要编程的类的数量也不同,但是每个类地址跳转模块的结构都是相近但不相同的;0004是ー组(C+M+N)个并行的多路选择器电路,它们的输入是每ー个类地址跳转模块的输出,根据多路选择器的控制信号,即地址的<C+M+N:M+N+1>位来判断当前多路选择器的哪个输入有效,除了各个类地址跳转模块的输出外,0004还有一组(C+M+N)位的gnd信号输入,以保证在各个类均不编程时对输出信号置零;0005是ー个两输入的或门,作用是在frendreg或clrmem信号有效时输出高电平;0006是ー组(C+M+N)个并行的双路选择器,作用是在控制端为“0”时输出(C+M+N)位的far信号,在控制端为“I”时输出0004的输出信号;0007是ー组(C+M+N)个并行的双路选择器,作用是在控制端为“0”时输出(C+M+N)位的0006的输出信号,在控制端为“I”时输出(C+M+N)位的cfgdata输入信号;0008是ー组(C+M+N)个D触发器,它们均是时钟上升沿触发,异步复位信号的,D端输入是0007的(C+M+N)位输出,Q端输出是(C+M+N)位far输出信号;0009是ー组(C+M+N)位的加I加法器,作用是将(C+M+N)位far信号加1,输出(C+M+N)位的mnr信号,0009是全组合逻辑。图2是现有技术中类地址跳转模块的结构示意图,0101、0102、0103是块地址跳转模块,它们的输入是ー组N位的far地址信号,ー组(C+M+N)位mnr信号,输出是ー组(C+M+N)位地址信号;0101是对本类中第一个块电路编程的地址跳转模块;0102是对本类中第二个块电路编程的地址跳转模块;0103是对本类中第三个块电路编程的地址跳转模块;根据不同的类中块电路的数量的不同,块地址跳转模块的数量也不同,因为跳转的地址不同,所以每ー个块地址跳转模块都是结构相似且不相同的;0104是ー组(C+M+N)个并行的多路选择器电路,它们的输入是每ー个块地址跳转模块的输出,根据多路选择器的控制信号,即地址的<M+N:N+1>位来判断当前多路选择器的哪个输入有效,0104的输出是ー组(C+M+N)位地址信号。图3是现有技术中块地址跳转模块的结构示意图,0201是地址控制电路,作用是当输入的N位far地址等于该块地址的边界值时,输出为1,否则为0 ;0202是ー组(C+M+N)位的双路选择器电路,控制信号为0时,输出信号输出(C+M+N)位mnr信号,控制信号为I 时,输出信号时提前预置的跳转地址,即下ー个块的起始地址。由此可见,现有技术中列地址分配器电路使用了大量的多路选择器电路,由于多路选择器电路会占用大量的版图面积和时间延时,特别是多输入多路选择器电路,因此现有技术当应用于大規模多模块的FPGA时候,会占用很大的版图面积并导致关键路径上的延时增加,从而导致工作频率的下降。
技术实现思路
(一 )要解决的技术问题有鉴于此,本专利技术的主要目的在于提供ー种适用于不同类型FPGA电路编程的列地址分配器电路,以解决大規模多模块FPGA配置电路中列地址分配器电路版图大延时长的问题,达到节约面积提高工作频率的目的。(ニ)技术方案为达到上述目的,本专利技术提供了ー种适用于不同类型FPGA电路编程的列地址分配器电路,该电路包括列末位信号与清零信号控制电路2001、far信号与地址跳转信号选择电路2002、类地址跳转信号选择电路2003、cfgdata信号与地址跳转信号选择电路2004、far信号输出保持电路2005、mnr信号产生电路2006、第一类地址跳转模块2100和第二类地址跳转模块2200。上述方案中,所述列末位信号与清零信号控制电路2001是ー个或门,其输入是frendreg信号和clrmem信号,用于对frendreg信号和clrmem信号做或运算后,将运算结果通过输出端输出给far信号与地址跳转信号选择电路2002的控制端。当frendreg信号和clrmem信号都为低时,所述列末位信号与清零信号控制电路2001向far信号与地址跳转信号选择电路2002输出低电平,当frendreg信号或者clrmem信号为高电平的时候,所述列末位信号与清零信号控制电路2001向far信号与地址跳转信号选择电路2002输出高电平。上述方案中,所述far信号与地址跳转信号选择电路2002是ー组〈C+M+N〉个ニ选ー选择器,控制端全部连接于列末位信号与清零信号控制电路2001的输出端,0输入端ロ分别接〈C+M+N〉位的far信号,I输入端ロ分别接〈C+M+N〉位的类地址跳转信号选择电路2003的输出,输出端输出〈C+M+N〉信号到cfgdata信号与地址跳转信号选择电路2004的0输入端。当控制信号frendreg和clrmem都为0时,所述far信号与地址跳转信号选择电路2002选择〈C+M+N〉位的far信号输出至cfgdata信号与地址跳转信号选择电路2004,以保持当前的配置地址;当控制信号frendreg和clrmem都为I时,所述far信号与地址跳转信号选择电路2002选择〈C+M+N〉位的类地址跳转信号选择电路2003输入的信号输出至cfgdata本文档来自技高网
...

【技术保护点】
一种适用于不同类型FPGA电路编程的列地址分配器电路,其特征在于,该电路包括列末位信号与清零信号控制电路(2001)、far信号与地址跳转信号选择电路(2002)、类地址跳转信号选择电路(2003)、cfgdata信号与地址跳转信号选择电路(2004)、far信号输出保持电路(2005)、mnr信号产生电路(2006)、第一类地址跳转模块(2100)和第二类地址跳转模块(2200)。

【技术特征摘要】

【专利技术属性】
技术研发人员:赵岩于芳韩小炜吴利华
申请(专利权)人:中国科学院微电子研究所
类型:发明
国别省市:

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

1