CN106708168A - 多处理器系统及时钟同步方法 - Google Patents
多处理器系统及时钟同步方法 Download PDFInfo
- Publication number
- CN106708168A CN106708168A CN201510778794.9A CN201510778794A CN106708168A CN 106708168 A CN106708168 A CN 106708168A CN 201510778794 A CN201510778794 A CN 201510778794A CN 106708168 A CN106708168 A CN 106708168A
- Authority
- CN
- China
- Prior art keywords
- tsc
- processor
- pld
- pins
- low level
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 38
- 230000001360 synchronised effect Effects 0.000 claims abstract description 21
- 230000000630 rising effect Effects 0.000 claims abstract description 18
- 238000005070 sampling Methods 0.000 claims abstract description 18
- 238000003780 insertion Methods 0.000 claims description 14
- 230000037431 insertion Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 claims description 8
- 210000001367 artery Anatomy 0.000 claims description 2
- 238000004080 punching Methods 0.000 claims description 2
- 210000003462 vein Anatomy 0.000 claims description 2
- 238000004549 pulsed laser deposition Methods 0.000 claims 18
- 230000001965 increasing effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 5
- 230000002708 enhancing effect Effects 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005611 electricity Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/12—Synchronisation of different clock signals provided by a plurality of clock generators
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Multi Processors (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
本发明实施例涉及多处理器系统及时钟同步方法,该方法包括:当主处理器检测到发生热插入的从处理器时,若TSC同步管脚高电平有效,则使能所有处理器的TSC同步管脚,并向第一可编程逻辑器件发送指示信号,指示信号用于指示第一可编程逻辑器件在第一数目个总线时钟的下降沿产生一个由低电平开始的大于预设时间长度的高脉冲;主处理器和每个从处理器检测出高脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;根据每个从处理器采样的TSC计数器的计数值和主处理器采样的TSC计数器的计数值,使从处理器与主处理器进行TSC时钟同步。由上可见,本发明实施例中,主处理器与可编程逻辑器件相配合,可以提高TSC时钟同步的成功率。
Description
技术领域
本发明涉及计算机领域,尤其涉及多处理器系统及时钟同步方法。
背景技术
当前,多处理器系统已经比较普遍,在多处理器系统中各个处理器的内核之间需要时钟进行线程之间的时间同步,目前X86服务器比较主流的内核时钟有两种:时间戳计时器(time stamp counter,TSC)时钟和高精度定时器(high precision event timer,HPET)时钟。两者的区别是TSC时钟是基于中央处理器(central processing unit,CPU)内部的一个64位的硬件计数器,而HPET时钟的计数器的值需要从内存中读取。当系统工作在HPET时钟的时候,在实际的TPC-C数据库应用性能测试时,发现大量的CPU时间损耗在处理读取位于内存时钟的操作上。经过实际的TPC-C测试,在4P(INTELIVB)系统中,发现系统工作于HPET时钟时候的性能是工作于TSC时钟时候性能的49%。在更大的系统中,由于内存访问延时的加大,这个指标会更加恶化,这就有必要要求系统一直工作于TSC时钟状态下。
基于X86平台的服务器在向着小型机方向迈进,通过节点互联(nodeconnect,NC)芯片的扩展以后可以支持构建32P系统;在基于X86的系统中,TSC时钟同步可以发生在两种状态下:(1)上电过程;(2)CPU热插拔过程。其中,上电过程的TSC同步的条件有两个:(1)一个系统所有处理器的PROCESS_PG(电源上电完成指示信号)需要在10ns以内有效;(2)时钟同步。CPU热插拔过程中发生的TSC同步条件有三个:(1)正在工作的系统使用的是TSC时钟;(2)热插入CPU的PROCESS_PG需要在原有系统的PROCESS_PG信号的864BCLKs(对应CPU型号IVB-EX)或者384BCLKs(对应CPU型号HSW-EX)整数倍延时以后有效,误差不能超过一个BCLK,其中BCLK为CPU的输入参考时钟,也可称为总线时钟,一个BCLK通常为10ns;(3)系统的BIOS需要主动发起TSC同步请求。
在硬件领域,其中上电同步流程中的条件(1)和条件(2)已经有方案解决;热插拔同步流程中的条件(1)由上电同步流程保证,热插拔流程条件(2)也已经有相关方案解决,但是热插拔流程的条件(3)在大系统领域存在一些挑战。
当前的整机系统是以1P为单元,8个CPU板的QPI(CPU之间互联的一种高速链路)通过无源的信号背板互联构成一个8P系统,4个8P框通过NI链路(NC芯片上的一种高速链路)构成一个32P系统,现有的方案是将一个系统32个CPU的TSC同步管脚(TSC_SYNC管脚)通过3m长线缆与外部的杂散板进行直接互联,实现TSC同步过程。
现有技术的时钟同步方法,基于当前的多处理器系统构成,对于高电平有效的TSC同步管脚,在实际进行TSC同步的时候,基本输入输出系统(basicinput output system,BIOS)逐个拉高每个CPU的TSC同步管脚,最后一个CPU的TSC同步管脚被拉高以后线与的结果使得整条TSC总线变成高电平,系统在TSC的高电平窗口内,使用内部同步时钟(internal sync clock)的上升沿采样当前的TSC计数器(counter)值进行同步;
由于器件延时、线缆延时和CPU输出类型为漏极开路(Open Drain,OD)输出导致的上升沿变换所产生的延时,导致TSC波形上升沿到达各个CPU的时间差会超过Intel给出的500ns指标,尽管经过实际验证TSC_SYNC信号的边沿相差1us也能同步成功,但是余量太小,稳定性存在隐患。
发明内容
本发明实施例提供多处理器系统及时钟同步方法,可以提高时钟同步的成功率和稳定性。
第一方面,提供了一种多处理器系统的时钟同步方法,所述多处理器系统包括一个主处理器和至少一个从处理器,通过TSC总线连接所述主处理器和所述从处理器的TSC同步管脚,所述TSC总线上连接有第一可编程逻辑器件,所述方法包括:
当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚高电平有效,则使能所有处理器的TSC同步管脚,并向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第一数目个总线时钟的下降沿产生一个由低电平开始的大于预设时间长度的高脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器检测出所述高脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
根据所述至少一个从处理器中的每个从处理器采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使所述至少一个从处理器与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
结合第一方面,在第一方面的第一种可能的实现方式中,所述使能所有处理器的TSC同步管脚后,所述方法还包括:
保持所有处理器的TSC同步管脚的使能状态一定时间后,拉低所有处理器的TSC同步管脚,使所有处理器的TSC同步管脚恢复到初始态。
结合第一方面,在第一方面的第二种可能的实现方式中,所述方法还包括:
当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚低电平有效,则向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第二数目个总线时钟的下降沿产生一个由高电平开始的大于预设时间长度的低脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器检测出所述低脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
根据所述至少一个从处理器中的每个从处理器采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使所述至少一个从处理器与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
结合第一方面或第一方面的第一种或第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述向所述第一可编程逻辑器件发送指示信号,包括:
操作平台控制集线器(Platform Controller Hub,PCH)的通用输入输出(General Purpose Input/Output,GPIO)管脚为低电平,通过所述GPIO管脚输出的低电平向所述第一可编程逻辑器件发送指示信号。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述TSC总线上连接有第二可编程逻辑器件;所述向所述第一可编程逻辑器件发送指示信号,包括:
操作PCH的GPIO管脚为低电平,通过所述GPIO管脚输出的低电平控制所述第二可编程逻辑器件输出低电平,通过所述第二可编程逻辑器件输出的低电平向所述第一可编程逻辑器件发送指示信号。
第二方面,提供了一种多处理器系统,所述多处理器系统包括一个主处理器和至少一个从处理器,通过TSC总线连接所述主处理器和所述从处理器的TSC同步管脚,所述TSC总线上连接有第一可编程逻辑器件;
所述主处理器,用于当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚高电平有效,则使能所有处理器的TSC同步管脚,并向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第一数目个总线时钟的下降沿产生一个由低电平开始的大于预设时间长度的高脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器,用于检测出所述高脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
所述至少一个从处理器中的每个从处理器,用于根据自身采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使自身与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
结合第二方面,在第二方面的第一种可能的实现方式中,所述主处理器,还用于在所述使能所有处理器的TSC同步管脚后,保持所有处理器的TSC同步管脚的使能状态一定时间后,拉低所有处理器的TSC同步管脚,使所有处理器的TSC同步管脚恢复到初始态。
结合第二方面,在第二方面的第二种可能的实现方式中,所述主处理器,还用于当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚低电平有效,则向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第二数目个总线时钟的下降沿产生一个由高电平开始的大于预设时间长度的低脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器,还用于检测出所述低脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
所述至少一个从处理器中的每个从处理器,还用于根据自身采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使自身与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
结合第二方面或第二方面的第一种或第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述主处理器,具体用于操作PCH的GPIO管脚为低电平,通过所述GPIO管脚输出的低电平向所述第一可编程逻辑器件发送指示信号。
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述TSC总线上连接有第二可编程逻辑器件;所述主处理器,具体用于操作PCH的GPIO管脚为低电平,通过所述GPIO管脚输出的低电平控制所述第二可编程逻辑器件输出低电平,通过所述第二可编程逻辑器件输出的低电平向所述第一可编程逻辑器件发送指示信号。
本发明实施例提供了一种时钟同步方法,通过在多处理器系统中引入可编程逻辑器件将TSC总线分成多个域,由主处理器发出同步信号控制可编程逻辑器件对TSC总线上的信号进行同步,其中,可编程逻辑器件还起到增强驱动的功能,从而可以减少TSC波形上升沿到达各个CPU的时间差,确保热插拔以后的系统工作在TSC时钟下,稳定性好。
附图说明
图1为热插拔过程中的TSC时钟同步时序图;
图2为TSC_SYNC管脚类型示意图;
图3为一种TSC_SYNC直连情况下的多处理器系统结构示意图;
图4为本发明实施例提供的多处理器系统结构示意图;
图5为本发明一个实施例提供的时钟同步方法信号流图;
图6为本发明实施例的TSC同步波形示意图;
图7为本发明另一个实施例提供的时钟同步方法信号流图。
具体实施方式
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述。
本发明针对现有的多处理器系统中TSC_SYNC直连链路太长所带来的TSC时钟同步成功率低和稳定性不好的问题提出了解决方案,本发明方案采用的是化整为零,将TSC_SYNC总线分为多个小的域,由主处理器发出同步信号控制可编程逻辑器件对TSC总线上的信号进行同步,其中,可编程逻辑器件还起到增强驱动的功能,从而可以减少TSC波形上升沿到达各个CPU的时间差,确保热插拔以后的系统工作在TSC时钟下,稳定性好。
在本发明的一个具体的实施例中,通过主处理器控制PCH(X86平台中的南桥芯片)的GPIO管脚进行同步或延时,通过逻辑器件增强驱动。由于当前8P或者4P服务器的TSC同步信号直接互联的可靠性已经得到验证,因此通过可编程逻辑器件将信号完整性风险较高的32P系统分解为风险较低的4P或者8P系统。
本发明实施例中,对于多处理器系统包含的处理器数目不做具体限定,为描述方便仅以32P系统为例进行说明。
图1为热插拔过程中的TSC时钟同步时序图,参照图1,CPU的电源上电完成指示信号(PWRGOOD)到达热插入的CPU的时间与原先CPU该信号在时域上需要存在特定关系:864BCLKs(对应CPU型号IVB-EX)或者384BCLKs(对应CPU型号HSW-EX);TSC_SYNC有效边沿到达所有CPU管脚的的时间差不能超过500ns;当前平台上,IVB-EX中TSC_SYNC高电平有效,HSW-EX中TSC_SYNC低电平有效。
图2为TSC_SYNC管脚类型示意图,参照图2,对于热插拔时钟同步流程中,需要系统的BIOS主动发起TSC同步请求,当前的处理方式是由BIOS通过写CPU的PCODE寄存器来控制CPU的TSC_SYNC管脚,该信号在CPU处的IO类型是I/OD,在板级要求将所有CPU的该管脚使用硬件相连,板级上拉。
为了与本发明实施例提供的多处理器系统结构进行比较,本发明实施例提供了一种TSC_SYNC直连情况下的多处理器系统结构,参照图3,整机系统是以1P为单元,8个CPU板的QPI(CPU之间互联的一种高速链路)通过无源的信号背板互联构成一个8P系统,4个8P框通过NI链路(NC芯片上的一种高速链路)构成一个32P系统,将一个系统32个CPU的TSC_SYNC管脚通过3m长线缆与外部的杂散板进行直接互联,实现TSC同步过程。其中,总线器件上所有的电平变换器件均是双向、OD输出型器件,Translater为不带总线驱动能力的转换器,通过外部上拉电阻来调整总线的驱动能力。
X86平台的TSC管脚在CPU内部为I/OD型接口,高电平有效,在实际进行TSC同步的时候,BIOS逐个拉高TSC,最后一个CPU的管脚被拉高以后线与的结果使得整条TSC总线变成高电平,系统在TSC的高电平窗口内使用Internal Sync Clock的上升沿采样当前的TSC Counter值进行同步。
本发明实施例提供的多处理器系统在图3的基础上进行了改进,如图4所示,是本专利方案一个实施例的一种大系统TSC_SYNC管脚互联方案,该系统是一个32P的XNC系统,其中,XNC系统为使用NC芯片互联CPU的系统,该系统中包含4框8P子服务器系统,每个8P子服务器系统使用中置背板,两块管理板(PBI板)和8块BPN板,每块BPN板包含一颗CPU,杂散板用于系统杂散信号的互联,高速链路通过NC芯片出的NI链路互联。
参照图4,该系统中预留了两条同步信号的硬件通道。一条为1驱8的硬件通道,如图中两块PBI板中间的硬件连接线所示;另一条为1驱4的硬件通道,该通道在信号背板上做交叉,如图中两块PBI板逻辑器件之间的虚线所示。
4个CPU或者8个CPU通过模拟开关相连,经过转换器(switch)以后连接到逻辑器件,本方案的转换器可以使用LSF0108或者GTL2003,该逻辑器件包括但不限于是复杂可编程逻辑器件(complex programmable logic device,CPLD)、现场可编程门阵列(field-programmable gate array,FPGA);杂散板中的逻辑器件取代了原先的模拟开关,能够起到增强驱动以及时间同步的作用。PBI板中的逻辑器件主要起到两个作用:(1)接收杂散板下发的TSC_SYNC信号;(2)使用一对交叉线(图中虚线所示)作为预留的1驱4通道。
PBI板与杂散板之间的杂散信号对于杂散板来说都设置为LVCMOS输出,其中,LVCMOS输出为一种电平类型,相对于漏极开路输出电平类型来说驱动更强,可以减少时延,PCH的GPIO设置成输出,GPIO管脚输出的信号通过逻辑器件与杂散板逻辑器件相连,相对于杂散信号板来说设置为输入。
在CPU热插入的过程中,BIOS代码将热插入的CPU与正常工作的CPU的TSC时钟域进行同步,将系统中所有从CPU的TSC计数器的值与主CPU的计数器值进行校准,其TSC同步实现的详细步骤如下,由于IVB-EX和HSW-EX在同步信号处理上的差异,下面分别进行描述:
图5为本发明实施例提供的时钟同步方法信号流图,该实施例的IVB-EX同步方案中,针对TSC_SYNC默认为低电平,在TSC_SYNC为高电平的时候进行同步的情况,采用了下面的时钟同步方法:
步骤501,从CPU热插入以后,主CPU的BIOS运行到TSC同步阶段。
其中,该方法可以作为一段程序挂载在主CPU下,在多处理器系统包含的多个CPU中指定一个主CPU。
步骤502,BIOS通过PCODE命令使能CPU0到CPU31的TSC_SYNC管脚。
此时,所有逻辑器件输出低电平保持整条TSC总线为低,由于CPU的TSC输出管脚是OpenDrain输出,作为开路输出IO类型,可以实现所有IO之间的线与,总线中只要有一个IO保持低电平,整个总线网络就可以保持低电平。
步骤503,BIOS操作PCH的GPIO为低电平。
步骤504,GPIO指示杂散信号板逻辑器件所有CPU的TSC管脚都已经不再拉到GND。
步骤505,杂散板逻辑器件将整个16P/32P/64P的TSC总线在杂散板的864BCLKs计数时钟的下降沿拉出一个>10us的高脉冲。
其中,高脉冲的时间长度这个数值要求脉冲长度大于1个CPUInternalSync的时钟周期,因为条件2中的864BCLKs时间长度是8.64us,所以此处选择10us;拉高以后,使能CPU内部的TSC同步模块,CPU的PCODE代码在此时进行TSC同步。
步骤506,CPU在TSC_SYNC有效以后通过Internal Sync Clock的上升沿采样TSC Counter的Snapshot值并保存。
步骤507,BIOS代码将使能状态延时100ms后,拉低所有CPU的TSC管脚,把所有CPU的TSC管脚恢复到初始态。
步骤508,BIOS读取所有CPU(包括主CPU)Snapshot的寄存器值(所有CPU的TSC COUNTER在Internal Sync CLOCK上升沿的瞬时值),计算所有CPU与主CPU之间的偏移(Offset)值,使用PCODE命令操作CPU的TSC Counter计数值与主CPU保持一致。
图6为本发明实施例的TSC同步波形示意图,参照图6,从宏观上看,上述的方案实际是通过BIOS控制,在原先的TSC_SYNC同步波形中截出一段可控的高脉冲,由于增加了增强驱动的器件,该高脉冲在大系统中传输会有更优的信号完整性,即更加优化的延时以及满足要求的信号边沿和信号电平。
图7为本发明实施例提供的时钟同步方法信号流图,该实施例的HSW-EX同步方案中,TSC_SYNC默认为高电平,在TSC_SYNC为低电平的时候进行同步,该方法包括:
步骤701,从CPU热插入以后,主CPU的BIOS运行到TSC同步阶段。
步骤702,BIOS在进行TSC同步的过程中,操作PCH的GPIO为低电平。
步骤703,GPIO指示杂散板逻辑器件系统发起TSC同步流程。
步骤704,CPLD使用384BCLKs的计数时钟的下降沿触发整个32P的TSC总线拉出一个100us的低脉冲(HSW)。
这个过程在杂散板板内实现,然后将该低脉冲下发到系统的各个PBI板的逻辑器件,传到所有CPU。
步骤705,CPU的PCODE在Internal Sync Clock上升沿自动抓取TSC COUNT的值到Snapshot寄存器。
步骤706,BIOS读取所有CPU(包括主CPU)Snapshot的寄存器值(所有CPU的TSC COUNTER在Internal Sync CLOCK上升沿的瞬时值),计算所有CPU与主CPU之间的Offset值,使用PCODE命令操作CPU的TSC Counter计数值与主CPU保持一致。
相比于IVB-EX的方案,该方案的实际TSC_SYNC波形与原方案相比没有时间上的关联。
使用该方案进行TSC管脚的互联可以确保经过热插拔以后的系统工作在TSC时钟下,不会导致原有系统的性能严重下降。
对于所有在大系统设计中碰到的需要互联所有处理器的杂散信号,在实现过程中存在信号完整性风险的,都可以使用本专利的思维方式来实现:将存在风险的信号分成多个域,同时使用同步信号进行同步。
专业人员应该还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令处理器完成,所述的程序可以存储于计算机可读存储介质中,所述存储介质是非短暂性(non-transitory)介质,例如随机存取存储器,只读存储器,快闪存储器,硬盘,固态硬盘,磁带(magnetic tape),软盘(floppy disk),光盘(optical disc)及其任意组合。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种多处理器系统的时钟同步方法,其特征在于,所述多处理器系统包括一个主处理器和至少一个从处理器,通过时间戳计时器TSC总线连接所述主处理器和所述从处理器的TSC同步管脚,所述TSC总线上连接有第一可编程逻辑器件,所述方法包括:
当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚高电平有效,则使能所有处理器的TSC同步管脚,并向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第一数目个总线时钟的下降沿产生一个由低电平开始的大于预设时间长度的高脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器检测出所述高脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
根据所述至少一个从处理器中的每个从处理器采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使所述至少一个从处理器与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
2.如权利要求1所述的方法,其特征在于,所述使能所有处理器的TSC同步管脚后,所述方法还包括:
保持所有处理器的TSC同步管脚的使能状态一定时间后,拉低所有处理器的TSC同步管脚,使所有处理器的TSC同步管脚恢复到初始态。
3.如权利要求1所述的方法,其特征在于,所述方法还包括:
当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚低电平有效,则向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第二数目个总线时钟的下降沿产生一个由高电平开始的大于预设时间长度的低脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器检测出所述低脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
根据所述至少一个从处理器中的每个从处理器采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使所述至少一个从处理器与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
4.如权利要求1或2或3所述的方法,其特征在于,所述向所述第一可编程逻辑器件发送指示信号,包括:
操作平台控制集线器PCH的通用输入输出GPIO管脚为低电平,通过所述GPIO管脚输出的低电平向所述第一可编程逻辑器件发送指示信号。
5.如权利要求4所述的方法,其特征在于,所述TSC总线上连接有第二可编程逻辑器件;所述向所述第一可编程逻辑器件发送指示信号,包括:
操作平台控制集线器PCH的通用输入输出GPIO管脚为低电平,通过所述GPIO管脚输出的低电平控制所述第二可编程逻辑器件输出低电平,通过所述第二可编程逻辑器件输出的低电平向所述第一可编程逻辑器件发送指示信号。
6.一种多处理器系统,其特征在于,所述多处理器系统包括一个主处理器和至少一个从处理器,通过时间戳计时器TSC总线连接所述主处理器和所述从处理器的TSC同步管脚,所述TSC总线上连接有第一可编程逻辑器件;
所述主处理器,用于当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚高电平有效,则使能所有处理器的TSC同步管脚,并向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第一数目个总线时钟的下降沿产生一个由低电平开始的大于预设时间长度的高脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器,用于检测出所述高脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
所述至少一个从处理器中的每个从处理器,用于根据自身采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使自身与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
7.如权利要求6所述的系统,其特征在于,所述主处理器,还用于在所述使能所有处理器的TSC同步管脚后,保持所有处理器的TSC同步管脚的使能状态一定时间后,拉低所有处理器的TSC同步管脚,使所有处理器的TSC同步管脚恢复到初始态。
8.如权利要求6所述的系统,其特征在于:
所述主处理器,还用于当所述主处理器检测到存在发生热插入的从处理器时,若TSC同步管脚低电平有效,则向所述第一可编程逻辑器件发送指示信号,所述指示信号用于指示所述第一可编程逻辑器件在第二数目个总线时钟的下降沿产生一个由高电平开始的大于预设时间长度的低脉冲;
所述主处理器和所述至少一个从处理器中的每个从处理器,还用于检测出所述低脉冲到达自身的TSC同步管脚后,通过内部同步时钟的上升沿采样TSC计数器的计数值;
所述至少一个从处理器中的每个从处理器,还用于根据自身采样的TSC计数器的计数值和所述主处理器采样的TSC计数器的计数值,使自身与所述主处理器的TSC计数器的计数值相等,进行TSC时钟同步。
9.如权利要求6或7或8所述的系统,其特征在于,所述主处理器,具体用于操作平台控制集线器PCH的通用输入输出GPIO管脚为低电平,通过所述GPIO管脚输出的低电平向所述第一可编程逻辑器件发送指示信号。
10.如权利要求9所述的系统,其特征在于,所述TSC总线上连接有第二可编程逻辑器件;所述主处理器,具体用于操作平台控制集线器PCH的通用输入输出GPIO管脚为低电平,通过所述GPIO管脚输出的低电平控制所述第二可编程逻辑器件输出低电平,通过所述第二可编程逻辑器件输出的低电平向所述第一可编程逻辑器件发送指示信号。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510778794.9A CN106708168B (zh) | 2015-11-13 | 2015-11-13 | 多处理器系统及时钟同步方法 |
PCT/CN2016/095697 WO2017080274A1 (zh) | 2015-11-13 | 2016-08-17 | 多处理器系统及时钟同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510778794.9A CN106708168B (zh) | 2015-11-13 | 2015-11-13 | 多处理器系统及时钟同步方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106708168A true CN106708168A (zh) | 2017-05-24 |
CN106708168B CN106708168B (zh) | 2019-12-06 |
Family
ID=58694708
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510778794.9A Active CN106708168B (zh) | 2015-11-13 | 2015-11-13 | 多处理器系统及时钟同步方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106708168B (zh) |
WO (1) | WO2017080274A1 (zh) |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109367569A (zh) * | 2018-09-10 | 2019-02-22 | 广州大铁锐威科技有限公司 | 用于轨道几何参数测量的检测数据同步采集系统和方法 |
CN109977069A (zh) * | 2017-12-28 | 2019-07-05 | 杭州华为数字技术有限公司 | 一种设备 |
CN110308934A (zh) * | 2018-03-22 | 2019-10-08 | 龙芯中科技术有限公司 | Hpet驱动方法和装置、可读存储介质及电子设备 |
CN110945454A (zh) * | 2017-07-21 | 2020-03-31 | 集成装置技术公司 | 满足功能安全要求的集成电路的同步方法 |
CN111158867A (zh) * | 2018-11-07 | 2020-05-15 | 阿里巴巴集团控股有限公司 | 时间同步处理方法、线程调度方法、装置及电子设备 |
CN111258371A (zh) * | 2020-01-08 | 2020-06-09 | 深圳市源拓光电技术有限公司 | 一种多个fpga芯片之间计数器同步的装置、系统及方法 |
CN112835321A (zh) * | 2019-11-25 | 2021-05-25 | 富士电机株式会社 | 可编程控制器系统和模块 |
CN113204516A (zh) * | 2021-04-26 | 2021-08-03 | 北京京东乾石科技有限公司 | 处理器时间同步的方法和装置 |
CN113381831A (zh) * | 2021-05-12 | 2021-09-10 | 聚融医疗科技(杭州)有限公司 | 多片fpga的收发同步方法、系统和超声控制设备 |
CN113721703A (zh) * | 2021-08-19 | 2021-11-30 | 飞腾信息技术有限公司 | 一种多路cpu系统中时钟同步控制装置、系统及控制方法 |
CN113821469A (zh) * | 2021-09-23 | 2021-12-21 | 深圳市元征科技股份有限公司 | 多处理器的同步方法、装置、终端设备及存储介质 |
CN113835467A (zh) * | 2021-09-26 | 2021-12-24 | 深圳市杰普特光电股份有限公司 | 一种时钟同步系统、方法、电子设备及存储介质 |
TWI782316B (zh) * | 2020-08-24 | 2022-11-01 | 達明機器人股份有限公司 | 作業程序同步的方法 |
WO2024078338A1 (zh) * | 2022-10-11 | 2024-04-18 | 比亚迪股份有限公司 | 时间同步系统、域控制器和车辆 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11137794B2 (en) * | 2020-01-06 | 2021-10-05 | Woodward, Inc. | Systems and methods for synchronization of multiple processors |
JP2023543974A (ja) * | 2020-10-12 | 2023-10-19 | バイエリシエ・モトーレンウエルケ・アクチエンゲゼルシヤフト | 時刻同期の検証 |
CN112769518B (zh) * | 2021-01-22 | 2022-09-13 | 上海宽域工业网络设备有限公司 | 一种带秒准时沿的串口时间发送系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101388741A (zh) * | 2008-10-24 | 2009-03-18 | 中国科学院计算技术研究所 | 一种用于计算机网络的高精度时间同步设备、系统及方法 |
US20090222684A1 (en) * | 2008-02-28 | 2009-09-03 | Serebrin Benjamin C | Fast, Automatically Scaled Processor Time Stamp Counter |
CN101958745A (zh) * | 2009-07-20 | 2011-01-26 | 华为技术有限公司 | 实现时间同步的方法、装置及系统 |
US20120057865A1 (en) * | 2010-09-06 | 2012-03-08 | Hitachi, Ltd. | Communication system and time synchronization method |
CN102799212A (zh) * | 2012-07-16 | 2012-11-28 | 中船重工(武汉)凌久电子有限责任公司 | 用于多核多处理器并行系统的全局时钟系统及其使用方法 |
-
2015
- 2015-11-13 CN CN201510778794.9A patent/CN106708168B/zh active Active
-
2016
- 2016-08-17 WO PCT/CN2016/095697 patent/WO2017080274A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090222684A1 (en) * | 2008-02-28 | 2009-09-03 | Serebrin Benjamin C | Fast, Automatically Scaled Processor Time Stamp Counter |
CN101388741A (zh) * | 2008-10-24 | 2009-03-18 | 中国科学院计算技术研究所 | 一种用于计算机网络的高精度时间同步设备、系统及方法 |
CN101958745A (zh) * | 2009-07-20 | 2011-01-26 | 华为技术有限公司 | 实现时间同步的方法、装置及系统 |
US20120057865A1 (en) * | 2010-09-06 | 2012-03-08 | Hitachi, Ltd. | Communication system and time synchronization method |
CN102799212A (zh) * | 2012-07-16 | 2012-11-28 | 中船重工(武汉)凌久电子有限责任公司 | 用于多核多处理器并行系统的全局时钟系统及其使用方法 |
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110945454A (zh) * | 2017-07-21 | 2020-03-31 | 集成装置技术公司 | 满足功能安全要求的集成电路的同步方法 |
CN110945454B (zh) * | 2017-07-21 | 2024-01-23 | 集成装置技术公司 | 满足功能安全要求的集成电路的同步方法 |
CN109977069A (zh) * | 2017-12-28 | 2019-07-05 | 杭州华为数字技术有限公司 | 一种设备 |
CN109977069B (zh) * | 2017-12-28 | 2021-04-20 | 华为技术有限公司 | 一种设备 |
CN110308934B (zh) * | 2018-03-22 | 2022-03-29 | 龙芯中科(成都)技术有限公司 | Hpet驱动方法和装置、可读存储介质及电子设备 |
CN110308934A (zh) * | 2018-03-22 | 2019-10-08 | 龙芯中科技术有限公司 | Hpet驱动方法和装置、可读存储介质及电子设备 |
CN109367569B (zh) * | 2018-09-10 | 2021-03-12 | 广州大铁锐威科技有限公司 | 用于轨道几何参数测量的检测数据同步采集系统和方法 |
CN109367569A (zh) * | 2018-09-10 | 2019-02-22 | 广州大铁锐威科技有限公司 | 用于轨道几何参数测量的检测数据同步采集系统和方法 |
CN111158867A (zh) * | 2018-11-07 | 2020-05-15 | 阿里巴巴集团控股有限公司 | 时间同步处理方法、线程调度方法、装置及电子设备 |
CN111158867B (zh) * | 2018-11-07 | 2023-05-16 | 阿里巴巴集团控股有限公司 | 时间同步处理方法、线程调度方法、装置及电子设备 |
CN112835321A (zh) * | 2019-11-25 | 2021-05-25 | 富士电机株式会社 | 可编程控制器系统和模块 |
CN112835321B (zh) * | 2019-11-25 | 2024-05-14 | 富士电机株式会社 | 可编程控制器系统和模块 |
CN111258371A (zh) * | 2020-01-08 | 2020-06-09 | 深圳市源拓光电技术有限公司 | 一种多个fpga芯片之间计数器同步的装置、系统及方法 |
TWI782316B (zh) * | 2020-08-24 | 2022-11-01 | 達明機器人股份有限公司 | 作業程序同步的方法 |
CN113204516A (zh) * | 2021-04-26 | 2021-08-03 | 北京京东乾石科技有限公司 | 处理器时间同步的方法和装置 |
CN113204516B (zh) * | 2021-04-26 | 2024-06-18 | 北京京东乾石科技有限公司 | 处理器时间同步的方法和装置 |
CN113381831A (zh) * | 2021-05-12 | 2021-09-10 | 聚融医疗科技(杭州)有限公司 | 多片fpga的收发同步方法、系统和超声控制设备 |
CN113721703A (zh) * | 2021-08-19 | 2021-11-30 | 飞腾信息技术有限公司 | 一种多路cpu系统中时钟同步控制装置、系统及控制方法 |
CN113721703B (zh) * | 2021-08-19 | 2024-02-13 | 飞腾信息技术有限公司 | 一种多路cpu系统中时钟同步控制装置、系统及控制方法 |
CN113821469A (zh) * | 2021-09-23 | 2021-12-21 | 深圳市元征科技股份有限公司 | 多处理器的同步方法、装置、终端设备及存储介质 |
CN113835467A (zh) * | 2021-09-26 | 2021-12-24 | 深圳市杰普特光电股份有限公司 | 一种时钟同步系统、方法、电子设备及存储介质 |
CN113835467B (zh) * | 2021-09-26 | 2024-03-29 | 深圳市杰普特光电股份有限公司 | 一种时钟同步系统、方法、电子设备及存储介质 |
WO2024078338A1 (zh) * | 2022-10-11 | 2024-04-18 | 比亚迪股份有限公司 | 时间同步系统、域控制器和车辆 |
Also Published As
Publication number | Publication date |
---|---|
CN106708168B (zh) | 2019-12-06 |
WO2017080274A1 (zh) | 2017-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106708168A (zh) | 多处理器系统及时钟同步方法 | |
DE69721654T2 (de) | Fehlereingrenzung | |
US7612582B2 (en) | Programmable logic controller and related electronic devices | |
CN101938260B (zh) | 用于限制伪唤醒的静噪滤波 | |
DE69721393T2 (de) | Umschalten eines Systemwirtsrechners | |
DE69724048T2 (de) | Leistungsüberwachung eines Computersystembusses | |
CN103246588B (zh) | 一种自校验串行总线控制器和自校验串行总线实现方法 | |
US11176297B2 (en) | Detection and isolation of faults to prevent propagation of faults in a resilient system | |
CN103744753B (zh) | 一种双机系统的数据交互方法与装置 | |
US8036874B2 (en) | Software executing device and co-operation method | |
CN110399324A (zh) | 中断转换器及中断转换方法 | |
CN103718186A (zh) | 存储系统及数据操作请求处理方法 | |
CN113791937A (zh) | 一种数据同步冗余系统及其控制方法 | |
CN102651044B (zh) | 一种仿真节点、多余度仿真计算机系统及方法 | |
US10769038B2 (en) | Counter circuitry and methods including a master counter providing initialization data and fault detection data and wherein a threshold count difference of a fault detection count is dependent upon the fault detection data | |
CN115037651B (zh) | 一种rdma带宽传输测试方法、系统及存储介质 | |
CN105426171A (zh) | 多个二取二系统的同步和切换方法、系统 | |
DE102022127895A1 (de) | Schnelle ecc-speicherfehlerkorrektur | |
CN103472733B (zh) | 一种基于光纤通信的电力系统数字实时仿真物理接口装置 | |
CN109815073A (zh) | 一种基于pxi平台的高速串口srio的测试方法 | |
CN108647124A (zh) | 一种存储跳变信号的方法及其装置 | |
Ahmed et al. | Multiple reset domains verification using assertion based verification | |
CN115586982A (zh) | 一种系统事件日志的处理方法、装置及介质 | |
Chipana et al. | SET susceptibility estimation of clock tree networks from layout extraction | |
CN113132047A (zh) | 双芯电能表协议一致性测试装置的通信同步方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211227 Address after: 450046 Floor 9, building 1, Zhengshang Boya Plaza, Longzihu wisdom Island, Zhengdong New Area, Zhengzhou City, Henan Province Patentee after: xFusion Digital Technologies Co., Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |