用于流水线式路由的钟控的制作方法_4

文档序号:8318384阅读:来源:国知局
6、图7及图8中的第二时钟选择级的可用性。例如,布局可以通过基于时序元件是否需要将附加的时钟路由到边界盒(boundingbox)内来赋予将该时序元件布局在该边界盒内的成本,由此限制进入集成电路的给定区域的时钟信号的数目。
[0079]在步骤1330期间,可以生成时钟选择电路中的多个时钟信号的排序(ranking)。该排序可以基于每个时钟信号同步的时序元件的数目,由此该排序可以从最大数目到最小数目或者从最小数目到最大数目。该排序也可以基于在流水线式路由资源中每个时钟信号的使用次数。替换地,该排序可以基于时钟信号的频率要求或者与时钟信号有关的关键度(例如,在连接由给定的时钟信号同步的时序元件的路径上的时序松弛或者相对时序松弛,或者某些其他关键度或者加权关键度)。
[0080]在步骤1370期间,第一时钟选择级可以被配置为将区域时钟(例如,区域时钟430)分别连接到路由时钟(例如,图5、图6、图7及图8中的路由时钟520、620、720和820)。此配置可以基于在步骤1330期间所确定的多个时钟信号的排序。例如,第一时钟选择级可以按流水线式路由资源中时钟信号的使用次数的降序选择区域时钟。
[0081]在步骤1380期间,可以将成本值赋予第二时钟选择级的每个多路复用器,第二时钟选择级耦合在路由时钟和流水线式路由资源(例如,图5、图6、图7及图8中的流水线式路由资源)之间。该成本可以基于每个相应的多路复用器可以进行选择的路由时钟的数目。例如,与能够访问较少路由时钟的多路复用器相比,能够访问更多路由时钟的多路复用器可以被赋予更高的成本值。
[0082]在步骤1390期间,第二时钟选择级的多路复用器可以被配置为将流水线式路由资源中的每个寄存器连接到路由时钟中的一个时钟信号。可以首先赋予第二时钟选择级中成本值较低的多路复用器的配置,之后赋予成本值较高的多路复用器。
[0083]在已经确定了时钟选择电路的初始配置之前或者之后,可以执行附加的优化步骤。为此,可以在步骤1340期间针对已布局布线的电路描述测量性能结果。基于这些性能结果,可以在步骤1350期间对已布局布线的电路描述进行重新布线。重新布线还可以考虑现有的路由时钟。例如,重新布线可以避免使用还未使给定的时钟信号作为路由时钟的流水线式路由资源。重新布线还可以考虑性能结果以估计每个流水线式路由资源实际使用流水线寄存器的可能性。可以迭代地执行步骤1340和1350,直到测量到令人满意的性能结果O
[0084]在步骤1360期间,流水线路由资源可以被重新定时(retime)。例如,之前绕过流水线寄存器的给定路径中的流水线式路由资源可以被配置为使用寄存器,而之前已经使用流水线寄存器的另一流水线式路由资源可以被配置为绕过寄存器,由此有效地对流水线式路由资源重新定时。步骤1340、1350以及1360也可以被迭代地执行。
[0085]重新布线和重新定时可能需要对时钟选择电路进行重新配置,这可以由上述的步骤 1370、1380 和 1390 执行。
[0086]在此所描述的方法和装置可以被合并到任何合适的电子器件或者电子器件的系统中。例如,该方法和装置可以被合并到多种类型的器件中,例如微处理器或者其他1C。示例性IC包括可编程阵列逻辑(PAL)、可编程逻辑阵列(PLA)、现场可编程逻辑阵列(FPLA)、电可编程逻辑器件(EPLD)、电可擦除可编程逻辑器件(EEPLD)、逻辑单元阵列(LCA)Jlg可编程门阵列(FPGA)、专用标准产品(ASSP)、专用集成电路(ASIC),仅举几例。
[0087]在此所描述的集成电路可以是包括以下部件中的一个或多个的数据处理系统的一部分:处理器、存储器、I/o电路以及外围器件。集成电路可以被使用多种应用中,例如,计算机联网、数据联网、仪表化、视频处理、数字信号处理或者期望使用高速串行接口电路的优势的任何合适的其他应用。
[0088]虽然以特定的顺序描述了方法操作,但是应当理解,其他操作可以在所描述的操作之间被执行,所描述的操作可以被调整,使得这些操作在稍微不同的时间处发生,或者所描述的操作可以被分发到允许处理操作在与处理相关的各种间隔处发生的系统中,只要重叠操作的处理以期望的方式被执行。
[0089]附加实施例:
[0090]附加实施例1.一种集成电路上的路由电路,其包括:多个流水线式可编程路由资源;传送第一多个时钟信号的第一多个互连;传送第二多个时钟信号的第二多个互连;耦合在所述第一和第二多个互连之间的第一选择器电路,其中所述第一选择器电路接收所述第一多个时钟信号,并且在接收到的第一多个时钟信号中进行选择,以产生所述第二多个时钟信号;以及第二选择器电路,其耦合到所述第二多个互连,其中所述第二选择器电路从所述第二多个互连接收所述第二多个时钟信号中的至少一部分,从所述第二多个时钟信号中接收到的部分中选择信号,并且向所述流水线式可编程路由资源中的至少一个提供选定的信号。
[0091]附加实施例2.根据附加实施例1的路由电路,其中在所述第二多个互连中的至少两个互连传送同一信号。
[0092]附加实施例3.根据附加实施例1的路由电路,其中所述第一选择器电路包括多个多路复用器,并且其中所述多个多路复用器中的每个多路复用器产生所述第二多个时钟信号中相应的一个。
[0093]附加实施例4.根据附加实施例1的路由电路,进一步包括:在所述第二多个互连中的一个和所述多个流水线式可编程路由资源中的至少另一个流水线式可编程路由资源之间的连接,其中该连接绕过所述第二选择器电路。
[0094]附加实施例5.根据附加实施例1的路由电路,进一步包括:耦合到所述第二多个互连的附加的多路复用器,其中所述附加的多路复用器从所述第二多个互连接收所述第二多个时钟信号中的至少一部分,从所述第二多个时钟信号中接收到的一部分中选择信号,并且向所述流水线式可编程路由资源中的至少另一个流水线式可编程路由资源提供选定的信号。
[0095]附加实施例6.根据附加实施例5的路由电路,其中所述多路复用器耦合到所述第二多个互连中的第一子集的互连,并且其中所述附加的多路复用器耦合到所述第二多个互连中的第二子集的互连。
[0096]附加实施例7.根据附加实施例6的路由电路,其中所述第一子集与所述第二子集不相交。
[0097]附加实施例8.根据附加实施例6的路由电路,其中所述第一子集包括所述第二子集。
[0098]附加实施例9.一种可配置的流水线式互连电路,其包括:具有多条线路的路由通道;传送时钟信号的多个互连;耦合到所述多个互连的时钟选择电路,其中所述时钟选择电路选择时钟信号的第一和第二子集;具有第一数据输入、第一时钟输入以及第一输出的第一流水线式路由电路,其中第一数据输入中的一个耦合到所述多条线路中的第一线路,其中所述第一时钟输入耦合到所述时钟选择电路并且接收所述第一子集的时钟信号,并且其中所述第一输出耦合到所述多条线路中的第二线路;以及具有第二数据输入、第二时钟输入和第二输出的第二流水线式路由电路,其中所述第二数据输入中的一个耦合到所述多条线路中的第三线路,其中所述第二时钟输入耦合到所述时钟选择电路并且接收所述第二子集的时钟信号,并且其中所述第二输出耦合到所述多条线路中的第四线路。
[0099]附加实施例10.根据附加实施例9的电路,其中所述第一流水线式路由电路包括:具有多个输入和一个输出的第一多路复用器,其中所述多个输入中的每个输入耦合到所述第一数据输入中的一个;具有输入、时钟端口以及输出的寄存器,其中所述第一多路复用器的输出親合到所述寄存器的输入;具有第一和第二输入和一个输出的第二多路复用器,其中所述第二多路复用器的第一输入耦合到所述第一多路复用器的输出,并且所述第二多路复用器的第二输入耦合到所述寄存器的输出;以及耦合在所述第一时钟输入和所述寄存器的时钟端口之间的附加的时钟选择电路,其中所述附加的时钟选择电路将信号从所述第一时钟输入中选定的一个路由到所述寄存器的时钟端口。
[0100]附加实施例11.根据附加实施例9的电路,进一步包括:具有第三输入的第三流水线式路由电路,其中所述第三输入中的一个输入耦合到所述第二线路;以及具有第四输入的第四流水线式路由电路,其中所述第四输入中的一个输入耦合到所述第四线路。
[0101]附加实施例12.根据附加实施例11的电路,其中所述第四流水线式路由电路具有附加的输入,并且其中所述附加的输入耦合到所述第二线路。
[0102]附加实施例13.根据附加实施例12的电路,其中所述第三流水线式路由电路具有另一输入,并且其中所述另一输入耦合到所述第四线路。
[0103]附加实施例14.根据附加实施例11的电路,其中所述第一子集的时钟信号是所述第二子集的时钟信号的子集。
[0104]附加实施例15.根据附加实施例14的电路,其中所述第三和第四流水线式路由电路进一步包括第三和第四时钟输入,其中所述第三时钟输入接收所述第二子集的时钟信号,并且其中所述第四时钟信号接收所述第一子集的时钟信号。
[0105]附加实施例16.—种使用在计算设备上实现的设计自动化工具来配置具有流水线式路由资源的集成电路的方法,其中所述集成电路上的每个流水线式路由资源包括寄存器和多路复用器,其中所述多路复用器可配置为在第一和第二信号之间进行选择,并且其中通过在所述寄存器中存储所述第一信号来产生所述第二信号,所述方法包括:接收具有多个时钟信号和多个时钟选择电路的电路描述,其中所述多个时钟选择电路中的每个时钟选择电路可配置为提供所述多个时钟信号中的一个;执行接收到的电路描述的布局;使用所述流水线式路由资源执行已布局的电路描述的布线;将所述流水线式路由资源的第一子集配置为选择所述第一信号;将所述流水线式路由资源的第二子集配置为选择所述第二信号;以及针对所述第二子集的流水线式路由资源中的每个流水线式路由资源,将所述多个时钟选择电路中的一个配置为向所述寄存器提供所述多个时钟信号中的一个。
[0106]附加实施例17.根据附加实施例16的方法,其中配置所述多个时钟选择电路中的一个进一步包括:为所述多个时钟信号定义成本函数;基于所述成本函数生成所述多个时钟信号的排序;以及基于所述排序向所述寄存器提供所述多个时钟信号中的一个。
[0107]附加实施例18.根据附加实施例17的方法,进一步包括:获得已布局布线的电路描述的性能结果。
[0108]附加实施例19.根据附加实施例18的方法,其中所述成本函数基于已布局布线的电路描述的性能结果。
[0109]附加实施例20.根据附加实施例18的方法,进一步包括:基于所述性能结果,使用所述流水线式路由资源对已布局布线的电路描述进行重新布线;将所述流水线式路由资源的第三子集配置
当前第4页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1