一种fpga电路及其设计方法

文档序号:9914134阅读:946来源:国知局
一种fpga电路及其设计方法
【技术领域】
[0001]本发明涉及可编程集成电路设计领域,尤其是一种FPGA电路及其设计方法。
【背景技术】
[0002]FPGA(Field-ProgrammabIe Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
[0003]一般来说,FPGA由如下部分组成:输入输出单元、可配置逻辑单元、内部存储单元、全局时钟网络单元、乘法器、布线资源(Routing Resource)等其他资源。通过以上的单元模块,用户可以自由编程实现自己所需要的功能电路。同时,在应用FPGA做设计时,不仅仅需要满足功能的需要,很多时候需要满足时序的设计要求,比如:需要设计一个电路设计,并且对设计的最大频率有严格的要求,但是在进行设计的过程中,在某些地方或者路径上的设计不符合这个最小延迟要求,这个时候,往往需要利用flip_flop(触发器)资源的调整来改变该设计的整体时序。
[0004]对于目前的FPGA资源,flip_f1p只在输入输出单元,可配置逻辑单元等模块中,在routing资源中不存在对应的f Iip_f 1p资源。所以,设计时最短路径是从一个f Iip_f 1p经过routing然后到另外的f Iip_f lop。这种情况下,它的延迟是包含从第一个f Iip_f 1p到routing之间的组合逻辑延迟11,以及routing的延迟t2,和routing到第二个f I ip_f 1p之间的组合逻辑延迟t3,这三个部分。引入的路径相对比较长,一般情况下,能够满足需要,但是遇到高速信号时,这种结构可能无法满足设计的需求。

【发明内容】

[0005]本发明解决的主要技术问题是:本发明提供了一种FPGA电路以及设计方法,解决了现有的FPGA设计中对于设计关键路径延迟较长,无法达到对于高速信号电路设计的设计要求的技术问题。
[0006]为解决上述技术问题,本发明采用以下技术方案:
[0007]本发明提供了一种FPGA电路,包括:输入输出单元、布线单元和可配置逻辑单元,所述布线单元包括第一多路选择器;所述可配置逻辑单元包括组合逻辑电路;
[0008]所述第一多路选择器的输入端与所述输入输出单元的输出端连接,所述第一多路选择器的输出端与所述组合逻辑电路的输入端之间通过寄存器电路直接连接。
[0009]在本发明的另一实施例中,所述寄存器电路设置于所述布线单元中,所述寄存器电路的输入端与所述第一多路选择器的输出端连接,所述寄存器电路的输出端与所述组合逻辑电路的输入端连接。
[0010]在本发明的另一实施例中,所述布线单元还包括:缓冲器单元和第二多路选择器;
[0011]所述缓冲单元,用于接收所述第一多路选择器输出的输出信号,并将所述输出信号作为第二输出信号发送至所述第二多路选择器;
[0012]所述寄存器,用于将所述输出信号作为第一输出信号发送至所述第二多路选择器;
[0013]所述第二多路选择器,用于接收选择信号,并当所述选择信号为指示选取所述第一输出信号的第一选择信号时,从所述第一输出信号和所述第二输出信号中选取所述第一输出信号发送至所述组合逻辑电路;
[0014]当所述选择信号为指示选取所述第二输出信号的第二选择信号时,从所述第一输出信号和所述第二输出信号中选取所述第二输出信号发送至所述组合逻辑电路。
[0015]在本发明的另一实施例中,所述寄存器设置于所述可配置逻辑单元中,所述第一多路选择器将输出的所述输出信号直接发送至所述可配置逻辑单元中的寄存器,所述寄存器将接收到的所述输出信号发送至所述组合逻辑电路。
[0016]在本发明的另一实施例中,所述寄存器由至少一个触发器组成。
[0017]为了解决上述技术问题,本发明还提供了一种FPGA电路设计方法,所述FPGA电路包括输入输出单元、布线单元和可配置逻辑单元,所述方法包括:
[0018]在所述布线单元上设置第一多路选择器,在所述可配置逻辑单元上设置组合逻辑电路;
[0019]在所述第一多路选择器与所述组合逻辑电路之间设置寄存器电路,并将所述寄存器电路的输入端与所述输入输出单元的输出端连接,所述寄存器电路的输出端与所述组合逻辑电路的输入端连接。
[0020]在本发明的另一实施例中,所述通过在所述第一多路选择器与所述组合逻辑电路之间设置寄存器电路包括:将所述寄存器电路设置于所述布线单元中,通过所述寄存器电路将所述第一多路选择器输出的输出信号发送至所述组合逻辑电路。
[0021]如权利要求6所述的FPGA电路设计方法,其特征在于,所述通过在所述第一多路选择器与所述组合逻辑电路之间设置寄存器电路还包括:将所述寄存器设置于所述可配置逻辑单元中,所述第一多路选择器将输出的所述输出信号直接发送至所述可配置逻辑单元中的寄存器,所述寄存器将接收到的所述输出信号发送至所述组合逻辑电路。
[0022]在本发明的另一实施例中,当将所述寄存器设置于所述布线单元中时,还包括:在所述布线单元中设置缓冲单元和第二多路选择器;
[0023]通过所述缓冲单元接收所述第一多路选择器输出的输出信号,并将所述输出信号作为第二输出信号发送至第二多路选择器;
[0024]所述寄存器将所述输出信号作为第一输出信号发送至所述第二多路选择器;
[0025]所述第二多路选择器接收选择信号选择将所述第一输出信号或者第二输出信号发送至所述组合逻辑电路。
[0026]在本发明的另一实施例中,所述第二多路选择器接收选择信号选择将所述第一输出信号或者第二输出信号发送至所述组合逻辑电路具体包括:
[0027]当所述选择信号为指示选取所述第一输出信号的第一选择信号时,从所述第一输出信号和所述第二输出信号中选取所述第一输出信号发送给所述组合逻辑电路;
[0028]当所述选择信号为指示选取所述第一输出信号的第一选择信号时,从所述第一输出信号和所述第二输出信号中选取所述第一输出信号发送至所述组合逻辑电路。
[0029]本发明的有益效果:
[0030]本发明提供了一种FPGA电路及其设计方法,通过第一多路选择器将输入输出单元输出信号发送至所述寄存器电路,所述寄存器电路将所述输出信号发送至组合逻辑电路,通过设置寄存器电路将所述输出信号从输入输出单元输出端直接发送给组合逻辑电路,使得将由原来的输入输出寄存器到可配置逻辑单元寄存器的关键路径替换为由输入输出寄存器到寄存器电路的关键路径。
[0031]进一步地,所述寄存器电路为设置在布线单元中,这样的设置使得关键路径改变为从输入输出单元直接到布线单元中的寄存器电路,也即是相当于将可配置逻辑单元中的寄存器提前至布线单元中,从而有效地缩短了两寄存器之间的关键路径,也从而有效地减少了在设计电路时关键路径的最小延迟,进一步的提高了整个设计的时钟频率。
【附图说明】
[0032]图1为本发明实施例一提供的一种FPGA电路结构图;
[0033]图2为本发明实施例一提供的另一种FPGA电路结构图;
[0034]图3为普通routing情况下FPGA电路设计的信号路径结构示意图;
[0035]图4为本发明实施例一提供的一种FPGA电路的关键路径的结构不意图;
[0036]图5为图4所提供的FPGA电路的关键路径的具体电路结构图;
[0037]图6为本发明实施例二提供的一种FPGA电路设计方法的流程图。
【具体实施方式】
[0038]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例只是本发明中一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1