处理器和计算系统的制作方法

文档序号:26135144发布日期:2021-08-03 13:22阅读:92来源:国知局
处理器和计算系统的制作方法

本公开涉及处理器和计算系统。



背景技术:

近年来,数字货币受到越来越多的关注。在相关领域中,需要改进的处理器和计算系统。

矿机类处理器设计通常采用流水线的结构。根据算法,将运算逻辑分成若干级流水线,每级流水线有相似的功能设计和运算结构。每级流水线都需要输入工作时钟,即脉冲时钟。

随着矿机处理器的生产使用更加先进的制造工艺,工艺的复杂度和离散度也越来越高,导致处理器的实际工作条件和设计阶段的仿真环境偏差较大。时钟驱动电路在设计阶段即使满足仿真条件下对时钟的要求,实际的处理器也往往因为与仿真环境的差异,导致某些处理器的流水线时钟无法达到设计要求。

因此,需要改进的处理器和计算系统。



技术实现要素:

根据本公开的一个方面,提供了一种处理器,包括:流水线级,所述流水线级包括时序器件;以及时钟驱动模块,用于提供时钟信号到所述流水线级,所述时钟驱动模块包括第一时钟驱动电路,所述第一时钟驱动电路包括:多个第一时钟路径,分别提供对应的时钟信号;以及第一选择器,用于从所述多个第一时钟路径所提供的时钟信号中选择时钟信号,以用于所述流水线级。

在一些实施例中,所述处理器包括一个或多个核,所述流水线级和所述时钟驱动模块设置于所述核中。

在一些实施例中,所述时钟驱动模块还包括:第二时钟驱动电路,用于调节通过所述选择器所选择的时钟信号的脉宽,并提供脉宽调节的时钟信号以用于所述流水线级。

在一些实施例中,所述第二时钟驱动电路包括:多个第二时钟路径,其分别接收所述选择的时钟信号,并且在各个第二时钟路径上基于所选择的时钟信号提供不同相位的时钟信号;逻辑单元,基于所述不同相位的时钟信号中的至少一部分,产生脉宽调节的时钟信号以用于所述流水线级。

在一些实施例中,所述多个第二时钟路径至少包括第一路径和第二路径,所述第一路径提供所述选择的时钟信号到所述逻辑单元,以及所述第二路径提供与所选择的时钟信号的反相版本或反相并延时的版本到所述逻辑单元。

在一些实施例中,所述逻辑单元是与门或或门。

在一些实施例中,所述第二路径包括:反相器,其接收所述选择的时钟信号,并产生与所述选择的时钟信号反相的时钟信号;一个或多个子路径,用于分别提供所述反相的时钟信号的相应版本到第二选择器;以及所述第二选择器,从所述反相的时钟信号的不同的版本中选择,并提供所选择的版本到所述逻辑单元。

在一些实施例中,所述一个或多个子路径分别提供所述反相的时钟信号的不同延时的版本到所述第二选择器。

在一些实施例中,所述多个第一时钟路径接收共同的时钟输入,并基于所述时钟输入分别提供不同相位的时钟信号。

在一些实施例中,所述处理器是用于数字货币的处理器。

在一些实施例中,所述时序器件包括一个或多个锁存器,所述选择的时钟信号用于所述一个或多个锁存器。

根据本公开的另一方面,还提供了一种计算系统,其包括根据本公开任意实施例所述的处理器。

通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。

附图说明

构成说明书的一部分的附图描述了本公开的实施例,并且连同说明书一起用于解释本公开的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:

图1示出了一种用于示例性的流水线处理器的示意图;

图2示出了根据本公开一个实施例的处理器的示意图;

图3示出了根据本公开另一实施例的处理器的示意图;

图4示出了根据本公开又一实施例的处理器的示意图;

图5示出了根据本公开一个实施例的流水线的示例性时序图;以及

图6示出了根据本公开一个实施例的处理器中锁存器的示意图。

注意,在以下说明的实施方式中,有时在不同的附图之间共同使用同一附图标记来表示相同部分或具有相同功能的部分,而省略其重复说明。在本说明书中,使用相似的标号和字母表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

为了便于理解,在附图等中所示的各结构的位置、尺寸及范围等有时不表示实际的位置、尺寸及范围等。因此,所公开的实用新型并不限于附图等所公开的位置、尺寸及范围等。

具体实施方式

现在将参照附图来详细描述本公开的各种示例性实施例。应注意:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。另外,对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。

应理解,以下对至少一个示例性实施例的描述仅仅是说明性的,并非是对本公开及其应用或使用的任何限制。还应理解,在此示例性描述的任意实现方式并不必然表示其比其它实现方式优选的或有利的。本公开不受在上述技术领域、背景技术、实用新型内容或具体实施方式中所给出的任何所表述的或所暗示的理论所限定。

另外,仅仅为了参考的目的,还可以在下面描述中使用某种术语,并且因而并非意图限定。例如,除非上下文明确指出,否则涉及结构或元件的词语“第一”、“第二”和其它此类数字词语并没有暗示顺序或次序。

还应理解,“包括/包含”一词在本文中使用时,说明存在所指出的特征、整体、步骤、操作、单元和/或组件,但是并不排除存在或增加一个或多个其它特征、整体、步骤、操作、单元和/或组件以及/或者它们的组合。

图1示出了一种用于示例性的流水线处理器的示意图。在常规的流水线处理器中,每级流水线的工作时钟通常都来自于同一时钟源,通过用于流水线各级的各级时钟驱动电路在流水线各级之间传递,如图1所示。

另一方面,处理器的流水线级中往往具有一个或多个时序器件,例如触发器。而选择使用锁存器作为流水线中的时序器件可以有效减少功耗和面积的开销,提升矿机产品的竞争力。

对于使用锁存器的流水线设计,相邻流水线之间的时钟需要满足以一定的相位要求以满足锁存器特定的时序要求,例如,锁存器保持(hold)时序的要求和锁存器的最小脉冲宽度的要求,从而对时钟相关电路的设计和制造工艺提出了更高的要求。然而,随着先进工艺的使用,工艺的复杂度和离散度也越来越高,导致处理器的实际工作条件和设计阶段的仿真环境偏差较大。使得时钟驱动电路在设计阶段即使满足仿真条件下对时钟的要求,实际的处理器也往往因为与仿真环境的差异,导致某些处理器的流水线时钟无法达到设计要求。这也造成了处理器的良率受限。

本申请的发明人认识到上述的一个或多个问题,并提出了在此公开的改进的处理器和计算系统。

图2示出了根据本公开一个实施例的处理器的示意图。

根据本公开的实施例,提供了一种处理器。如图2所示,该处理器可以包括时钟驱动模块(未标示)和流水线级120。所述时钟驱动模块可以包括时钟驱动电路(第一时钟驱动电路)100。流水线级120可以包括时序器件,例如触发器或锁存器。优选地,所述时序器件为锁存器。时钟驱动电路100可以用于提供时钟信号到所述流水线级。在图2所示的实施例中,时钟驱动模块也可以以附图标记100来指示。而在其他实施例中,如后面的图将示出的,时钟驱动模块还可以包括第一是种病驱动电路100以外的其他部件。

锁存器是一种对脉冲电平敏感的存储单元电路,属于时序器件。图6示出了根据本公开一个实施例的处理器中锁存器的示意图。锁存器可以包括三态门和反相器/缓冲器。三态门接收输入d,并接收时钟信号和反相的时钟信号。三态门的输出连接到反相器/缓冲器(inv/buf)。反相器/缓冲器(inv/buf)的输出作为锁存器的输出q。

锁存器的一个重要指标是时钟脉冲的最小脉冲宽度,即锁存器器件处于导通状态时,高电平时钟或低电平时钟需要维持的时间长度。也就是说,锁存器对高电平或低电平占空比有一定的要求。锁存器的另一个重要指标是锁存器的保持时序,即锁存器的输入端的信号在时钟锁存后需要保持不变的最小时间。

回到图2,如图2所示,时钟驱动电路100可以包括多个时钟路径(第一时钟路径)101和103等,分别提供对应的时钟信号到选择器mux0。这里,在图2中仅示例性地示出了时钟路径101和103,然而在其他实施例中,时钟驱动电路可以包括更多个时钟路径(第一时钟路径)。

在一些实施例中,各个时钟路径可以接收相同的输入时钟,并对该输入时钟进行多种多样的延时和/或反相处理,以得到不同版本的时钟信号。例如,在一些实施例中,各时钟路径对输入时钟提供彼此不同的延时和/或提供反相;在另一些实施例中,某些时钟路径也可以提供相同的延迟或反相。至少一部分时钟路径可以具有时钟调节单元105,例如缓冲器或反相器等,以例如调节时钟信号的属性,例如相位。如图中所示,时钟路径101具有一个缓冲器(假设延时τ)和反相器(进行反相),时钟路径103具有两个缓冲器(假设分别延时τ)和反相器(进行反相),从而对输入时钟进行不同的延时,从而分别提供反相并延时τ的时钟信号版本以及反相并延时2τ的时钟信号版本。在某些情况下,也可以提供未设置调节单元105的时钟路径。还应理解,相位调节单元可以根据需要来设置。

时钟驱动电路100可以包括所述选择器(第一选择器)mux0107,用于从所述多个第一时钟路径所提供的时钟信号中选择时钟信号,以用于对应的流水线级120。例如,选择器107可以基于选择信号(例如,选择信号0)从多个第一时钟路径中选择,以将所选择的时钟信号作为时钟输出111提供给流水线级120或者下一级流水线级。

在处理器的实际工作条件下,可以通过选择信号(信号0)来决定哪路时钟信号作为输出时钟,以满足流水线级的时序要求,例如锁存器的保持时序和最小时钟脉宽的要求。

如图2所示,在时钟路径101和103上经过不同延时的时钟到达mux0的两个输入端。可以根据需求设定选择信号0来选择两路时钟通路中的一路作为时钟输出传递给当前流水线级和/或流水线的下一级的时钟驱动电路。相邻两级流水线中的时钟相位可以分别调整(各有两种(或更多种)不同的延时),从而更好的满足各流水线级中锁存器的时序要求。

在另外的一些实施例中,处理器可以具有一个或多个核。前述的流水线级和时钟驱动电路等可以被设置在所述核中。

图3示出了根据本公开另一实施例的处理器的示意图。相比图2所示的处理器的实施例,图3所示的实施例中的处理器中的时钟驱动模块还包括另外的时钟驱动电路(第二时钟驱动电路)200,其接收从时钟驱动电路100提供的时钟输出,并提供进一步调节的时钟输出到流水线级120。

这里,与图2的实施例中相同的部件被赋予相同的编号,上面就图2所描述的内容可以同样或适应性地适用于此,并因此省略了对其重复说明。

在一些实施例中,第二时钟驱动电路200被配置用于调节通过选择器mux0107所选择的时钟信号的脉宽,并提供脉宽调节的时钟信号以用于所述流水线级。

这里,需要说明的是,“时钟信号以用于所述待测试的时序器件”意图表示所述的时钟信号可以直接用于(例如,直接提供给)待测试的时序器件,或者所述的时钟信号可以间接用于(例如,间接而不是直接提供给)待测试的时序器件。换而言之,在所述的时钟信号和待测试的时序器件之间可以存在中间模块或器件,所述中间模块或器件可以基于所述的时钟信号提供时钟到所述待测试的时序器件。

在一种具体实现中,如图3所示,第二时钟驱动电路200可以包括多个第二时钟路径201、203等,其分别接收所述选择的时钟信号,并且在各个第二时钟路径上基于所选择的时钟信号提供不同相位的时钟信号到逻辑单元205。逻辑单元205基于所述不同相位的时钟信号中的至少一部分,产生脉宽调节的时钟信号以用于流水线级120。在一些具体实施例中,逻辑单元205可以是与门或或门;本公开不限于此。

所述多个第二时钟路径至少包括第一路径和第二路径。在如图3所示的示例中,第一路径201可以被配置为直接提供从mux0接收的时钟输出(即,前述的所选择的时钟信号)到逻辑单元205。第二路径203可以被配置为基于从mux0接收的时钟输出提供进行了进一步调节的版本(例如,反相版本或反相并延时的版本)到逻辑单元205。

如图所示,第二路径203可以包括反相器207。反相器207接收第一时钟驱动电路100的时钟输出(即,所述选择的时钟信号)111,并产生与该时钟输出(即,所述选择的时钟信号)111反相的时钟信号。第二路径203可以还包括一个或多个子路径,例如图中所示出的子路径209和211。子路径209和211分别提供所述反相的时钟信号的相应版本到第二选择器215。例如,在图3所示的示例中,子路径211通过缓冲器对所述反相的时钟信号进行延时,从而提供所述反相的时钟信号的延时版本,而子路径209则提供未经处理的所述反相的时钟信号。如此,反相器的输出信号经过两路不同延时的时钟传递路径到达选择器mux1的两个输入端。这里还应理解,反相器207的提供与否可以根据需要来设置,其设置的位置或数量也可以根据需要来改变。

第二选择器mux1215从所述反相的时钟信号的不同的版本中选择,并提供所选择的版本到所述逻辑单元。mux1可以选择合适的时钟路径延时,以满足本级流水线中的时序器件(例如,锁存器)对脉冲宽度的需求。

在图3所示的示例中,提供到本级流水线级的时钟可以由本级流水线的第一时钟驱动电路100的时钟输出信号和该时钟输出信号的不同版本的反相时钟通过逻辑单元(例如,或门或与门逻辑)产生。提供到本级流水线级的时钟的脉冲宽度可由本级流水线的第一时钟驱动电路的输出信号和它的选定版本的反相时钟的相位(即,该版本的反相时钟相对于时钟输出信号的延迟时间)决定。

选择器mux1可以根据选择信号1选择两路(可以更多)子时钟路径中的一路作为逻辑单元205的输入之一,而逻辑单元205的另一个输入是本级流水线的第一时钟驱动电路的时钟输出信号。这样逻辑单元205的输出信号作为给本级流水线(尤其是其中的锁存器器件)的时钟信号,使得占空比宽度可调。

图4示出了根据本公开又一实施例的处理器的示意图。在图4的实施例中,示出了流水线的多个级以及与各流水线级对应的时钟驱动模块。图示的各级时钟驱动模块可以包括前面实施例所描述的时钟驱动电路100和/或200。上面就各实施例描述的内容可以同样应用于此实施例,因此不再就细节进行更多说明。

另外,尽管在图4的示例中,各级的选择信号被示出了选择信号0和选择信号1,但应理解,各级的选择信号也可以独立设置。

图5示出了根据本公开一个实施例的流水线的示例性时序图。图5中示例性地示出了如图4所示的流水线中的三级p1、p2和p3。如图所示,各级流水线中的mux0可以用于控制提供到本级流水线的时钟的延迟(delay),而mux1可以用于控制时钟脉冲的宽度。从而可以满足流水线的时序要求,例如锁存器保持(hold)时序的要求和锁存器的最小脉冲宽度的要求等。

应理解,上面就图3等所描述的第二时钟驱动电路也可以和第一时钟驱动电路一起设置在处理器的核中。

根据本公开实施例的处理器可以用于数字货币处理或计算。数字货币的例子可以有,例如,比特币、莱特币、以太币以及其他数字货币。

还应理解,本公开还提供了一种计算系统,其可以包括如任意实施例所述的处理器。

根据本公开的实施例,提供了新颖的处理器和计算系统。根据本公开的处理器和计算系统可以用于数字货币或虚拟货币的处理和计算。根据本公开的实施例,提供了灵活配置的时钟路径,并为流水线级提供了多种时钟选择。以图3的实施例为例,其提供了(mux0的输入路径数=2)乘以(mux1的输入路径数=2)=4种时钟选择。路径越多,则提供的选择越多。根据本公开实施例,可以为各级流水线提供灵活配置的时钟,从而极大地提高了矿机处理器的设计的灵活性或产品良品率。

本领域技术人员应当意识到,在上述实施例中描述操作(或步骤)之间的边界仅仅是说明性的。多个操作可以结合成单个操作,单个操作可以分布于附加的操作中,并且操作可以在时间上至少部分重叠地执行。而且,另选的实施例可以包括特定操作的多个实例,并且在其他各种实施例中可以改变操作顺序。但是,其它的修改、变化和替换同样是可能的。因此,本说明书和附图应当被看作是说明性的,而非限制性的。

虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。在此公开的各实施例可以任意组合,而不脱离本公开的精神和范围。本领域的技术人员还应理解,可以对实施例进行多种修改而不脱离本公开的范围和精神。本公开的范围由所附权利要求来限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1