CN101546277A - 一种多核处理器平台及多核处理器同步的方法 - Google Patents
一种多核处理器平台及多核处理器同步的方法 Download PDFInfo
- Publication number
- CN101546277A CN101546277A CN200910135577A CN200910135577A CN101546277A CN 101546277 A CN101546277 A CN 101546277A CN 200910135577 A CN200910135577 A CN 200910135577A CN 200910135577 A CN200910135577 A CN 200910135577A CN 101546277 A CN101546277 A CN 101546277A
- Authority
- CN
- China
- Prior art keywords
- processor
- core
- interrupt
- dsp
- down trigger
- 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
Images
Landscapes
- Multi Processors (AREA)
Abstract
本发明实施例公开了一种多核处理器平台及多核处理器同步的方法。本发明实施例公开的方法包括:多核处理器的各处理器核接收中断源同时对所述各处理器核发起的中断触发;所述多核处理器的各处理器核响应所述中断触发,执行各自的同步任务。通过本发明实施例,提高了多核处理器平台的稳定性,避免了处理器核发生死锁。
Description
技术领域
本发明涉及核间同步技术领域,尤其涉及一种多核处理器平台及多核处理器同步的方法。
背景技术
数字信号处理器(DSP,Digital Signal Processing)是对数字信号进行高速实时处理的专用处理器,已广泛应用于数字通信、智能控制、消费类电子产品等领域。随着应用领域的扩大,人们对DSP应用系统的性能、功耗和成本提出了越来越高的要求,并尝试着在单一硅片上集成更多的数字信号处理器核,于是多核DSP应运而生。
多核DSP的多个核在工作时,如何安全可靠、有效地进行同步正成为多核DSP在应用领域的热点技术。
现有的一种多核DSP实现同步的方法如下:假设多核DSP包括3个DSP核。一个外部定时器配置给第一DSP核,定时触发第一DSP核的中断线程。第一DSP核经交换中心(Switch Center)的桥寄存器配置IPC(inter-processor(core)communication register,核间通信寄存器)。第一DSP核通过配置IPC将中断请求转发给第二DSP核以及第三DSP核。第二DSP核以及第三DSP核接收到中断请求后,通过桥寄存器返回中断响应,同时执行同步任务,例如:监控,信令接收等。
发明人在研究过程中,发现现有多核DSP实现同步的方法至少存在以下缺点:IPC的使用离不开桥寄存器,若桥寄存器同时接收到第一DSP核发送的中断请求,以及第二DSP核或第三DSP核返回的中断响应,桥寄存器可能会丢失来自第二DSP核或第三DSP核的中断响应,引发多核DSP平台不稳定,甚至导致第一DSP核发生死锁(unexpected stall)。
发明内容
有鉴于此,本发明实施例提供了一种多核处理器平台及多核处理器同步的方法,以提高多核处理器平台的稳定性。
一种多核处理器同步的方法,所述方法包括:
多核处理器的各处理器核接收中断源同时对所述各处理器核发起的中断触发;
所述多核处理器的各处理器核响应所述中断触发,执行各自的同步任务。
一种多核处理器平台,所述多核处理器平台包括:
多核处理器,用于接收来自中断源的中断触发,并执行同步任务;
所述中断源,用于向所述多核处理器的各处理器核同时发起中断触发,所述中断触发用于触发所述多核处理器的各处理器核。
本发明实施例中,所述中断源可以同时触发多核处理器的各处理器核,多核处理器的各处理器核接收到中断触发后,执行同步任务。由于不再需要IPC转发中断请求以及中断响应,所以可以不再使用桥寄存器,从而,提高了多核处理器平台的稳定性,避免了处理器核发生死锁。
附图说明
图1为本发明实施例一方法流程图;
图2为本发明实施例二方法流程图;
图3为本发明实施例三多核处理器平台结构框图;
图4为本发明实施例四多核DSP平台结构示意图。
具体实施方式
为了使本发明实施例的上述特征、优点更加明显易懂,下面结合具体实施方式进行详细说明。
请参考图1,为本发明实施例一方法流程图,可以包括以下步骤:
步骤101:多核处理器的各处理器核接收中断源同时对所述各处理器核发起的中断触发;
步骤102:所述多核处理器的各处理器核响应所述中断触发,执行各自的同步任务。
本发明实施例一中,所述中断源可以同时触发多核处理器的各处理器核,多核处理器的各处理器核接收到中断触发后,执行同步任务。由于不再需要IPC转发中断请求以及中断响应,所以可以不再使用桥寄存器,从而,提高了多核处理器平台的稳定性,避免了处理器核发生死锁。
同时,本发明实施例一中处理器核间之间不再承担转发任务,减小了该处理器核的开销。此外提高了多核处理器执行同步操作的精确性。此外,本发明实施例一提供的方法适用于各种多核处理器。多核处理器可以包括多核DSP,多核中央处理器(CPU)等。
需要指出的是,所述中断源可以是定时器。通过对定时器软件进行改进,即可实现同时对各处理器核发起终端触发。下面结合本发明实施例二进行详细说明。
在实施例二中,仅以中断源为定时器,多核处理器为多核DSP为例进行说明。
请参考图2,为本发明实施例二方法流程图,可以包括以下步骤:
步骤201:将定时器与多个DSP核中的每个DSP核连通;
步骤202:对定时器的软件进行配置,以使定时器具有向多个DSP核同时发起中断的功能;
步骤202的具体实现可以为:根据所述多核处理器的各处理器核对于中断向量的配置情况,通过多核DSP平台的操作系统将定时器对应的中断选择号分别配置在每个DSP核的一个中断向量上,由于各DSP核的中断向量可以相同,也可以不同;当相同时,将定时器对应的中断选择号分别配置在多个DSP核的相同的中断向量上,当不相同时,将定时器对应的中断选择号分别配置在多个DSP核的不同的中断向量上。分别为多个DSP核各自的中断向量设置相应的中断服务程序,中断服务程序用于激活相应的同步任务。
例如:假设多核DSP包括三个DSP核,定时器相应的中断选择号是36。将中断选择号36配置在第一DSP核的中断向量7上,将中断选择号36配置在第二DSP核的中断向量6上,将中断选择号36配置在第三DSP核的中断向量8上。分别为第一DSP核的中断向量7、第二DSP核的中断向量6以及第三DSP核的中断向量8设置相应的中断服务程序。中断服务程序可以发出旗语信号(semaphore),用来激活相应的同步任务。
步骤203:定时器产生中断触发,中断触发对应的中断服务程序触发多个DSP核上的同步任务;
需要指出的是,中断服务程序还可以发出旗语信号激活中断转发线程,再由中断转发线程通过信号量或者消息的形式激活相应的同步任务,此时,步骤203中,定时器还可以通过中断服务程序定时触发三个核上的中断转发线程,然后,由中断转发线程触发同步任务。
步骤204:多个DSP核接收到触发后,各自执行同步任务,例如:进行监控,信令接收等。
为了更好地保证多个DSP核的同步性,进一步地,还可以定期校准定时器。在本发明实施例中,采用周期性校准方式,即采用以1000秒为单位重新复位定时器的方式。
本发明实施例二中定时器可以同时触发多个DSP核,多个DSP核接收到中断触发后,执行同步任务。由于不再需要中断寄存器转发中断线程,所以可以不再使用桥寄存器,从而,提高了多核DSP平台的稳定性,避免了DSP核发生死锁。
同时,由于不用使一个DSP核承担转发任务,减小了该DSP核的开销。提高了多核DSP执行同步操作的精确性。此外,本发明实施例二提供的方法适用于各种多核DSP。
请参考图3,为本发明实施例三多核处理器平台结构框图,可以包括:
多核处理器301,用于接收来自中断源302的中断触发,并执行同步任务;
所述中断源302,用于向所述多核处理器301的各处理器核同时发起中断触发,所述中断触发用于触发所述多核处理器301的各处理器核。
所述中断源302可以为定时器。
多核处理器中的任意一个处理器核进一步可以包括:
接收单元:用于接收来自所述中断源的中断触发;
执行单元:用于在所述接收单元接收到所述中断触发后,响应所述中断触发并执行同步任务。
图3所示多核处理器平台可以应用于WiMAX(World Interoperability forMicrowave Access,全球微波接入互操作性),长期演进技术(LTE,Long TermEvolution),UMTS(Universal Mobile Telecommunication System,通用无线通信系统)等多种通信系统。并且,可适用于各种型号的多核处理器。
请参考图4,为本发明实施例四多核DSP平台结构示意图,本实施例以三个核为例进行说明,可以包括:
第一DSP核401,第二DSP核402,第三DSP核403,用于接收来自定时器404的中断触发,并执行同步任务;
定时器404,用于同时向第一DSP核401、第二DSP核402以及第三DSP核403发起中断触发,所述中断触发用于触发所述多核处理器301的各处理器核。
可以看出,本发明实施例提供的定时器可以同时触发各DSP核,各DSP核接收到中断触发后,执行同步任务。由于不再需要IPC转发中断请求以及中断响应,所以可以不再使用桥寄存器,从而,提高了多核DSP平台的稳定性,避免了DSP核发生死锁。
同时,由于不用使一个DSP核承担转发任务,减小了该DSP核的开销。提高了多核DSP执行同步操作的精确性。此外,本发明实施例提供的方法适用于各种多核DSP。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的硬件平台的方式来实现,当然也可以全部通过硬件来实施,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案对背景技术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1、一种多核处理器同步的方法,其特征在于,所述方法包括:
多核处理器的各处理器核接收中断源同时对所述各处理器核发起的中断触发;
所述多核处理器的各处理器核响应所述中断触发,执行各自的同步任务。
2、根据权利要求1所述的方法,其特征在于,所述中断源为定时器。
3、根据权利要求2所述的方法,其特征在于,所述多核处理器的各处理器核与所述中断源连通;使所述中断源向所述多核处理器的各处理器核同时发起中断触发包括:
根据所述多核处理器的各处理器核对于中断向量的配置情况,将所述定时器对应的中断选择号分别配置在所述各处理器核的中断向量上;
分别为所述各处理器核各自的中断向量设置相应的中断服务程序,所述中断服务程序用于激活相应的同步任务。
4、根据权利要求1所述的方法,其特征在于,所述方法还包括:
定期校准所述中断源,以保证所述各处理器核的同步性。
5、根据权利要求1至4任意一项所述的方法,其特征在于,所述多核处理器包括多核数字信号处理器DSP。
6、一种多核处理器平台,其特征在于,所述多核处理器平台包括:
多核处理器,用于接收来自中断源的中断触发,并执行同步任务;
所述中断源,用于向所述多核处理器的各处理器核同时发起中断触发,所述中断触发用于触发所述多核处理器的各处理器核。
7、根据权利要求6所述的多核处理器平台,其特征在于,所述中断源为定时器。
8、根据权利要求6所述的多核处理器平台,其特征在于,所述多核处理器中任意一个处理器核包括:
接收单元:用于接收来自所述中断源的中断触发;
执行单元:用于在所述接收单元接收到所述中断触发后,响应所述中断触发并执行同步任务。
9、根据权利要求6所述的多核处理器平台,其特征在于,所述多核处理器平台应用于全球微波接入互操作性WiMAX、长期演进技术LTE或者通用无线通信系统UMTS。
10、根据权利要求6至9任意一项所述的多核处理器平台,所述多核处理器平台包括:多核DSP处理器平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101355772A CN101546277B (zh) | 2009-04-27 | 2009-04-27 | 一种多核处理器平台及多核处理器同步的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101355772A CN101546277B (zh) | 2009-04-27 | 2009-04-27 | 一种多核处理器平台及多核处理器同步的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101546277A true CN101546277A (zh) | 2009-09-30 |
CN101546277B CN101546277B (zh) | 2011-11-02 |
Family
ID=41193424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101355772A Active CN101546277B (zh) | 2009-04-27 | 2009-04-27 | 一种多核处理器平台及多核处理器同步的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101546277B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901177A (zh) * | 2010-01-22 | 2010-12-01 | 威盛电子股份有限公司 | 多核微处理器及其除错方法 |
CN101908034A (zh) * | 2010-06-28 | 2010-12-08 | 中国科学院计算技术研究所 | 众核处理器片上同步方法和其系统 |
CN102334104A (zh) * | 2011-08-15 | 2012-01-25 | 华为技术有限公司 | 一种基于多核系统的同步处理方法及装置 |
CN102446155A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 同步装置及方法 |
CN102681889A (zh) * | 2012-04-27 | 2012-09-19 | 电子科技大学 | 一种云计算开放平台的调度方法 |
CN102880585A (zh) * | 2012-09-28 | 2013-01-16 | 无锡江南计算技术研究所 | 用于具有多个处理器核心的处理器系统的同步器 |
CN104933009A (zh) * | 2015-04-29 | 2015-09-23 | 中国人民解放军国防科学技术大学 | 一种用于多核dsp间的片上通信方法及数据通信装置 |
CN105009086A (zh) * | 2014-03-10 | 2015-10-28 | 华为技术有限公司 | 一种实现处理器切换的方法、计算机和切换装置 |
CN107562685A (zh) * | 2017-09-12 | 2018-01-09 | 南京国电南自电网自动化有限公司 | 一种基于延时补偿的多核处理器核心间数据交互的方法 |
CN108288247A (zh) * | 2017-12-07 | 2018-07-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多核dsp平台上的实时图像细节增强方法 |
CN108984464A (zh) * | 2013-08-28 | 2018-12-11 | 威盛电子股份有限公司 | 微处理器及在微处理器的处理核间同步的方法 |
WO2022111465A1 (zh) * | 2020-11-24 | 2022-06-02 | 北京灵汐科技有限公司 | 核心簇同步的方法、控制方法及设备、核心、介质 |
-
2009
- 2009-04-27 CN CN2009101355772A patent/CN101546277B/zh active Active
Cited By (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101901177B (zh) * | 2010-01-22 | 2012-11-21 | 威盛电子股份有限公司 | 多核微处理器及其除错方法 |
CN101901177A (zh) * | 2010-01-22 | 2010-12-01 | 威盛电子股份有限公司 | 多核微处理器及其除错方法 |
CN101908034A (zh) * | 2010-06-28 | 2010-12-08 | 中国科学院计算技术研究所 | 众核处理器片上同步方法和其系统 |
CN101908034B (zh) * | 2010-06-28 | 2012-05-23 | 中国科学院计算技术研究所 | 众核处理器片上同步方法和其系统 |
CN102446155A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 同步装置及方法 |
CN102334104B (zh) * | 2011-08-15 | 2013-09-11 | 华为技术有限公司 | 一种基于多核系统的同步处理方法及装置 |
CN102334104A (zh) * | 2011-08-15 | 2012-01-25 | 华为技术有限公司 | 一种基于多核系统的同步处理方法及装置 |
WO2012106943A1 (zh) * | 2011-08-15 | 2012-08-16 | 华为技术有限公司 | 一种基于多核系统的同步处理方法及装置 |
US9424101B2 (en) | 2011-08-15 | 2016-08-23 | Huawei Technologies Co., Ltd. | Method and apparatus for synchronous processing based on multi-core system |
CN102681889B (zh) * | 2012-04-27 | 2015-01-07 | 电子科技大学 | 一种云计算开放平台的调度方法 |
CN102681889A (zh) * | 2012-04-27 | 2012-09-19 | 电子科技大学 | 一种云计算开放平台的调度方法 |
CN102880585B (zh) * | 2012-09-28 | 2015-05-06 | 无锡江南计算技术研究所 | 用于具有多个处理器核心的处理器系统的同步器 |
CN102880585A (zh) * | 2012-09-28 | 2013-01-16 | 无锡江南计算技术研究所 | 用于具有多个处理器核心的处理器系统的同步器 |
CN108984464B (zh) * | 2013-08-28 | 2022-01-28 | 威盛电子股份有限公司 | 微处理器及在微处理器的处理核间同步的方法 |
CN108984464A (zh) * | 2013-08-28 | 2018-12-11 | 威盛电子股份有限公司 | 微处理器及在微处理器的处理核间同步的方法 |
CN105009086B (zh) * | 2014-03-10 | 2019-01-18 | 华为技术有限公司 | 一种实现处理器切换的方法、计算机和切换装置 |
CN105009086A (zh) * | 2014-03-10 | 2015-10-28 | 华为技术有限公司 | 一种实现处理器切换的方法、计算机和切换装置 |
CN104933009A (zh) * | 2015-04-29 | 2015-09-23 | 中国人民解放军国防科学技术大学 | 一种用于多核dsp间的片上通信方法及数据通信装置 |
CN107562685B (zh) * | 2017-09-12 | 2020-06-09 | 南京国电南自电网自动化有限公司 | 一种基于延时补偿的多核处理器核心间数据交互的方法 |
CN107562685A (zh) * | 2017-09-12 | 2018-01-09 | 南京国电南自电网自动化有限公司 | 一种基于延时补偿的多核处理器核心间数据交互的方法 |
CN108288247A (zh) * | 2017-12-07 | 2018-07-17 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多核dsp平台上的实时图像细节增强方法 |
CN108288247B (zh) * | 2017-12-07 | 2021-04-20 | 中国航空工业集团公司西安航空计算技术研究所 | 一种多核dsp平台上的实时图像细节增强方法 |
WO2022111465A1 (zh) * | 2020-11-24 | 2022-06-02 | 北京灵汐科技有限公司 | 核心簇同步的方法、控制方法及设备、核心、介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101546277B (zh) | 2011-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101546277B (zh) | 一种多核处理器平台及多核处理器同步的方法 | |
CN100373299C (zh) | 用于控制两处理器之间的数据通信的方法和双处理器装置 | |
KR101664108B1 (ko) | 멀티 코어의 동기화를 효율적으로 처리하기 위한 하드웨어 가속 장치 및 방법 | |
CN106844165B (zh) | 告警方法及装置 | |
CN110351828B (zh) | 一种定位方法及装置 | |
EP3840522A1 (en) | Methods and devices for controlling rrc state | |
CN105187327A (zh) | 一种分布式消息队列中间件 | |
CN114727312A (zh) | 一种节点设备的配置方法、装置、通信设备和存储介质 | |
CN102937893A (zh) | 一种动态重载定时长度的软件定时方法 | |
EP3860171A1 (en) | Configuration parameter update method and apparatus | |
WO2011003316A1 (zh) | 一种进行多节点事务处理的集群系统及请求消息分发方法 | |
CN110958562B (zh) | 一种调制方式选择方法及近场通信装置、存储介质 | |
EP3562259B1 (en) | Context release method and devices | |
CN106162775B (zh) | 一种接入无线网络的方法及装置 | |
EP3065445B1 (en) | Method, cse, and system for transmitting m2m application request | |
CN110401939A (zh) | 一种低功耗蓝牙控制器链路层装置 | |
WO2012171398A1 (zh) | 实时处理系统中的共享资源访问方法和实时处理系统 | |
CN111031138B (zh) | 物联网的通信方法和装置及计算机可读存储介质 | |
EP4021063A1 (en) | Method for determining abnormal offline state and related device | |
WO2020163976A1 (zh) | 数据处理方法、智能锁系统及存储介质 | |
CN111314272A (zh) | 一种任务处理方法及装置 | |
CN109996194A (zh) | 一种发送短信的方法和设备 | |
WO2022188005A1 (zh) | 一种寻呼控制信息的监听、指示方法及装置 | |
CN104811391A (zh) | 数据包的处理方法、装置及服务器 | |
WO2014079326A1 (en) | Method, apparatus, and system for controlling a computer device through a mobile terminal |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |