CN114355802A - 一种多核并起的处理器同步调试方法 - Google Patents
一种多核并起的处理器同步调试方法 Download PDFInfo
- Publication number
- CN114355802A CN114355802A CN202111534272.6A CN202111534272A CN114355802A CN 114355802 A CN114355802 A CN 114355802A CN 202111534272 A CN202111534272 A CN 202111534272A CN 114355802 A CN114355802 A CN 114355802A
- Authority
- CN
- China
- Prior art keywords
- signal
- software
- core
- stop
- controlling
- 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
- 230000001360 synchronised effect Effects 0.000 title claims abstract description 44
- 238000000034 method Methods 0.000 title claims abstract description 24
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 238000002360 preparation method Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical compound C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012938 design process Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本申请提供了一种多核并起的处理器同步调试方法,所述方法应用于主机端,所述主机端包括调试总线接口、离散控制卡以及控制软件;所述方法包括:离散控制卡生成停止信号或运行信号,发送所述停止信号至目标机端;其中,所述停止信号用于控制多核处理器实现同步停止;控制软件生成软件信号,发送所述软件信号和运行信号至目标机端;其中,所述软件信号用于控制所述多核处理器处于待命状态;所述运行信号用于控制所述多核处理器实现同步运行;以达到多核处理器的多个内核实现同步停止、同步运行的目的,实现多核处理器的同步调试。
Description
技术领域
本发明属于嵌入式多核调试技术领域,尤其涉及一种多核并起的处理器同步调试方法。
背景技术
在航空航天飞行控制、空中交通管制、银行及核电站控制等领域,为提高系统的任务可靠性与安全可靠性,多采用余度控制技术。在多余度控制软件的开发设计过程中,常常需要在某一通道运行到某种特定条件时,停止所有通道来观察各通道当前的运行状态,分析各通道数据,验证软件逻辑设计是否合理。
在单核多余度同步调试中,每个CPU独占调试总线和同步调试的外部接口,通道间依靠同步信号的高低握手来实现通道同步。
多核同步调试中,一个CPU外部仅有一套调试资源,但是一个CPU内部却有多核调试目标,如何解决一套调试资源下的多核同步调试问题,是一项必须突破的关键技术。
于是,设计并实现CPU内部多核间的同步停止、同步运行,就成为了研制余度多核控制软件的重要技术难题。针对这种需求的提出和工程实现方法国外相关技术均处于保密状态,国内也未出现相关报道。
发明内容
针对上述技术问题,第一方面,本申请提供了一种多核并起的处理器同步调试方法,所述方法应用于主机端,所述主机端包括调试总线接口、离散控制卡以及控制软件;所述方法包括:
离散控制卡生成停止信号或运行信号,发送所述停止信号至目标机端;其中,所述停止信号用于控制多核处理器实现同步停止;
控制软件生成软件信号,发送所述软件信号和运行信号至目标机端;其中,所述软件信号用于控制所述多核处理器处于待命状态;所述运行信号用于控制所述多核处理器实现同步运行。
优选地,所述离散控制卡生成停止信号和运行信号,发送所述停止信号至目标机端,包括:
控制软件发送指令给所述离散控制卡,所述离散控制卡基于所述指令生成所述停止信号,发送所述停止信号至目标机端。
优选地,所述控制软件生成软件信号,发送所述软件信号和运行信号至目标机端,包括:
控制软件生成软件信号,并将所述软件信号发送至主核;
将所述运行信号发送至中断控制器。
优选地,所述离散控制卡生成运行信号,包括:
控制软件发送指令给所述离散控制卡,所述离散控制卡基于所述指令生成所述运行信号。
第二方面,本申请提供了一种多核并起的处理器同步调试方法,其特征在于,所述方法应用于目标机端,所述目标机端包括多核处理器,所述多核处理器包括中断控制器;所述方法包括:
所述中断控制器接收所述停止信号或运行信号,基于所述停止信号控制所述多核处理器同步停止;其中,所述多核处理器包括主核和从核;
所述主核接收所述软件信号,并将所述软件信号转发给所述从核,基于所述软件信号和所述运行信号控制所述主核和从核同步运行。
优选地,所述中断控制器接收所述停止信号,基于所述停止信号控制所述多核处理器同步停止,包括:
所述中断控制器接收所述停止信号,并将所述停止信号投递给所述多核处理器;
基于所述停止信号控制所述多核处理器同步停止。
优选地,所述软件信号是所述主核和所述从核同步运行的准备信号。
优选地,所述中断控制器接收所述运行信号,包括:
所述中断控制器接收所述运行信号,并将所述运行信号投递给所述主核和从核。
本发明的有益效果:
本发明提出一种多核并起的处理器同步调试方法,当某个内核在事件产生时,不但要停止本核运行并保护现场,并且要同步停止多核处理器内的其它内核。当目标内核调试完成后恢复运行时也必须通知多核处理器内的其它内核同步运行,以达到多核处理器的多个内核实现同步停止、同步运行的目的,实现多核处理器的同步调试。
附图说明
图1为本申请实施例提供的一种多核处理器同步调试原理示意图;
图2为本申请实施例提供的一种多核处理器同步停止控制流图;
图3为本申请实施例提供的一种多核处理器同步运行控制流图;
图4为本申请实施例提供的一种多核处理器同步停止信号处理示意图;
图5为本申请实施例提供的一种多核处理器“多核并起”机制原理示意图;
图6为本申请实施例提供的一种多核处理器系统Timer补偿原理示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本申请的技术方案由以下部分组成:
1)如图1,根据调试原理图将调试设备与多核处理器嵌入式计算机进行连接,实现主机端与目标机端间调试信号、离散信号和复位信号的信号通路;
2)在主机端通过调试控制软件控制离散控制卡向目标机发送复位脉冲信号,复位脉冲电平及宽度需要与处理器要求的复位信号一致。复位信号使能多核处理器的RST引脚,多核处理器内部逻辑引导多核处理器复位启动;
3)如图2,在主机端通过控制软件控制离散控制卡向目标机发送停止信号,硬件停止信号到达多核处理器的中断控制器,通过中断控制器将停止信号投递到所有内核,保证所有内核同步响应;
4)目标机多核同步停止后,主机端可通过控制软件对目标机进行调试,调试完成后进行下一步骤;
5)“多核并起”机制的实现。如图3,在主机端连续发送两个信号:首先,调试控制软件通过调试总线向目标机发送“同步准备”调试命令;然后,控制软件进行同步延时;最后,控制软件控制离散控制卡向目标机发送“运行信号”。如图5,在目标机端,多核处理器内核收到“同步准备”信号后,调试命令处理模块先将核挂起,进行等待;当多核处理器内核接收到“运行信号”,同时退出中断处理程序,恢复同步运行。
6)重复3、4、5步骤可实现多核处理器的多次同步调试。
需要说明的是,在步骤3中,目标机端进行“停止信号”处理逻辑如图4。
1)信号采样逻辑中识别下降沿加低电平脉冲宽度40ns双保险,过滤干扰信号;
2)在中断处理程序中设计专用寄存器清除采样脉冲信号发送,避免重复响应。
在步骤5中,目标机多核退出中断处理程序,恢复同步运行。
1)主机端控制软件的同步延时时间需要根据实际硬件性能进行适配;
2)需要对目标机应用软件系统Timer进行中断响应时间补偿,具体的补偿时间以系统实际处理逻辑为准。如图6,由于“同步调试”进入中断服务后进行“现场保存”和退出中断服务时“现场恢复”都会消耗应用软件系统Timer,现场处理主要包括中断上下文、状态字、程序指针等关键信息。
在本申请其他实施例中,PowerPC2020同步调试
1)如图1,根据调试原理图将调试设备与多核处理器嵌入式计算机进行连接,实现主机端与目标机端间调试信号、停止信号、复位信号的信号通路;
2)在主机端通过调试控制软件控制离散控制卡向目标机发送一个10ms低脉冲复位信号,PowerPC2020复位启动;
3)同步停止调试:
a)提前在PowerPC2020可编程中断控制器中将停止信号同时绑定到核1和核2;
b)如图2,在主机端通过调试控制软件控制离散控制卡向目标机发送一个10ms低脉冲停止信号;
c)如图3,目标机端“调试代理”进行“停止信号”处理,首先识别“停止信号”下降沿;识别到下降沿后同时判断“停止信号”低电平脉冲宽度是否大于40ns。通过下降沿加脉冲宽度双门槛,过滤干扰信号;
d)如图3,目标机端在中断处理程序中设置专用寄存器清除采样脉冲信号持续发送,避免“同步停止”调试命令重复响应。
4)目标机多核同步停止后,主机端可通过调试控制软件对目标机进行调试,如读取关键变量、设置变量数值和设置断点等,调试完成后进行下一步骤;
5)同步运行调试:
a)如图5,调试设备通过调试控制软件向目标机发送“同步准备”调试命令,并启动500ms延时;
b)目标机端主核“调试代理”收到“同步准备”调试命令后,将“同步准备”调试命令分发到从核;
c)当CPU核收到“同步准备”调试命令后,各核的“调试代理”调试命令处理模块将核进行挂起等待;
d)调试设备延时500ms后,调试控制软件控制离散控制卡向目标机发送一个10ms低脉冲“运行信号”;
e)如图6,目标机收到“运行信号”后,目标机端各核“调试代理”补偿系统Timer300us中断响应时间,然后退出中断处理程序,恢复各核间的同步运行。
以上所述,仅为本发明的具体实施例,对本发明进行详细描述,未详尽部分为常规技术。但本发明的保护范围不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。本发明的保护范围应以所述权利要求的保护范围为准。
Claims (8)
1.一种多核并起的处理器同步调试方法,其特征在于,所述方法应用于主机端,所述主机端包括调试总线接口、离散控制卡以及控制软件;所述方法包括:
离散控制卡生成停止信号或运行信号,发送所述停止信号至目标机端;其中,所述停止信号用于控制多核处理器实现同步停止;
控制软件生成软件信号,发送所述软件信号和运行信号至目标机端;其中,所述软件信号用于控制所述多核处理器处于待命状态;所述运行信号用于控制所述多核处理器实现同步运行。
2.根据权利要求1所述的方法,其特征在于,所述离散控制卡生成停止信号和运行信号,发送所述停止信号至目标机端,包括:
控制软件发送指令给所述离散控制卡,所述离散控制卡基于所述指令生成所述停止信号,发送所述停止信号至目标机端。
3.根据权利要求1所述的方法,其特征在于,所述控制软件生成软件信号,发送所述软件信号和运行信号至目标机端,包括:
控制软件生成软件信号,并将所述软件信号发送至主核;
将所述运行信号发送至中断控制器。
4.根据权利要求3所述的方法,其特征在于,所述离散控制卡生成运行信号,包括:
控制软件发送指令给所述离散控制卡,所述离散控制卡基于所述指令生成所述运行信号。
5.一种多核并起的处理器同步调试方法,其特征在于,所述方法应用于目标机端,所述目标机端包括多核处理器,所述多核处理器包括中断控制器;所述方法包括:
所述中断控制器接收所述停止信号或运行信号,基于所述停止信号控制所述多核处理器同步停止;其中,所述多核处理器包括主核和从核;
所述主核接收所述软件信号,并将所述软件信号转发给所述从核,基于所述软件信号和所述运行信号控制所述主核和从核同步运行。
6.根据权利要求5所述的方法,其特征在于,所述中断控制器接收所述停止信号,基于所述停止信号控制所述多核处理器同步停止,包括:
所述中断控制器接收所述停止信号,并将所述停止信号投递给所述多核处理器;
基于所述停止信号控制所述多核处理器同步停止。
7.根据权利要求5所述的方法,其特征在于,所述软件信号是所述主核和所述从核同步运行的准备信号。
8.根据权利要求7所述的方法,其特征在于,所述中断控制器接收所述运行信号,包括:
所述中断控制器接收所述运行信号,并将所述运行信号投递给所述主核和从核。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534272.6A CN114355802B (zh) | 2021-12-15 | 2021-12-15 | 一种多核并起的处理器同步调试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534272.6A CN114355802B (zh) | 2021-12-15 | 2021-12-15 | 一种多核并起的处理器同步调试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114355802A true CN114355802A (zh) | 2022-04-15 |
CN114355802B CN114355802B (zh) | 2024-09-13 |
Family
ID=81100326
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111534272.6A Active CN114355802B (zh) | 2021-12-15 | 2021-12-15 | 一种多核并起的处理器同步调试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114355802B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540918A (zh) * | 2020-12-04 | 2021-03-23 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于arinc659总线的多余度飞管计算机同步调试方法 |
CN114866499A (zh) * | 2022-04-27 | 2022-08-05 | 曙光信息产业(北京)有限公司 | 片上多核系统的同步广播通信方法、装置和存储介质 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050220127A1 (en) * | 2004-03-22 | 2005-10-06 | Cane Gary R | Modular programmable automation controller with multi-processor architecture |
CN102446158A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 多核处理器及多核处理器组 |
WO2012088930A1 (zh) * | 2010-12-31 | 2012-07-05 | 华为技术有限公司 | 触发操作方法、多核分组调试方法、装置及系统 |
CN104050066A (zh) * | 2013-03-15 | 2014-09-17 | 飞思卡尔半导体公司 | 多核处理的系统及方法 |
CN105224454A (zh) * | 2015-09-25 | 2016-01-06 | 华为技术有限公司 | 一种调试方法、多核处理器和调试设备 |
KR20170112358A (ko) * | 2016-03-31 | 2017-10-12 | 엘에스산전 주식회사 | 원격감시 제어시스템 및 이의 데이터베이스 업데이트 방법 |
US20180024519A1 (en) * | 2013-09-04 | 2018-01-25 | Fisher-Rosemount Systems, Inc. | Technology for assessing and presenting field device commissioning information associated with a process plant |
CN108073105A (zh) * | 2016-11-18 | 2018-05-25 | 中国科学院沈阳计算技术研究所有限公司 | 基于异构双处理器冗余结构的安全plc装置和实现方法 |
CN112540918A (zh) * | 2020-12-04 | 2021-03-23 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于arinc659总线的多余度飞管计算机同步调试方法 |
-
2021
- 2021-12-15 CN CN202111534272.6A patent/CN114355802B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050220127A1 (en) * | 2004-03-22 | 2005-10-06 | Cane Gary R | Modular programmable automation controller with multi-processor architecture |
CN102446158A (zh) * | 2010-10-12 | 2012-05-09 | 无锡江南计算技术研究所 | 多核处理器及多核处理器组 |
WO2012088930A1 (zh) * | 2010-12-31 | 2012-07-05 | 华为技术有限公司 | 触发操作方法、多核分组调试方法、装置及系统 |
CN104050066A (zh) * | 2013-03-15 | 2014-09-17 | 飞思卡尔半导体公司 | 多核处理的系统及方法 |
US20180024519A1 (en) * | 2013-09-04 | 2018-01-25 | Fisher-Rosemount Systems, Inc. | Technology for assessing and presenting field device commissioning information associated with a process plant |
CN105224454A (zh) * | 2015-09-25 | 2016-01-06 | 华为技术有限公司 | 一种调试方法、多核处理器和调试设备 |
KR20170112358A (ko) * | 2016-03-31 | 2017-10-12 | 엘에스산전 주식회사 | 원격감시 제어시스템 및 이의 데이터베이스 업데이트 방법 |
CN108073105A (zh) * | 2016-11-18 | 2018-05-25 | 中国科学院沈阳计算技术研究所有限公司 | 基于异构双处理器冗余结构的安全plc装置和实现方法 |
CN112540918A (zh) * | 2020-12-04 | 2021-03-23 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于arinc659总线的多余度飞管计算机同步调试方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112540918A (zh) * | 2020-12-04 | 2021-03-23 | 中国航空工业集团公司成都飞机设计研究所 | 一种基于arinc659总线的多余度飞管计算机同步调试方法 |
CN114866499A (zh) * | 2022-04-27 | 2022-08-05 | 曙光信息产业(北京)有限公司 | 片上多核系统的同步广播通信方法、装置和存储介质 |
CN114866499B (zh) * | 2022-04-27 | 2024-02-23 | 曙光信息产业(北京)有限公司 | 片上多核系统的同步广播通信方法、装置和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114355802B (zh) | 2024-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114355802A (zh) | 一种多核并起的处理器同步调试方法 | |
CN101976217B (zh) | 网络处理器异常检测方法及系统 | |
KR20190079809A (ko) | 결함 주입 테스트 장치 및 그 방법 | |
EP3343377A1 (en) | Debugging method, multi-core processor, and debugging equipment | |
EP2787444A2 (en) | Central processing unit, information processing apparatus, and intra-virtual-core register value acquisition method | |
CN102640119B (zh) | 用于运行计算单元的方法 | |
CN114416435A (zh) | 一种微处理器架构及微处理器故障检测方法 | |
CN108121683B (zh) | 基于多核架构高速差分总线的无缝切换快速自恢复方法 | |
CN105446933A (zh) | 多核心处理器的调试系统与调试方法 | |
CN105760241A (zh) | 一种内存数据导出方法和系统 | |
CN112363972B (zh) | 支持多cpu间通信的电子设备及方法 | |
CN105740139A (zh) | 一种基于虚拟环境的嵌入式软件调试方法 | |
WO2019173018A1 (en) | Non-intrusive on-chip debugger with remote protocol support | |
CN113806290B (zh) | 一种用于综合模块化航空电子系统的高完整性片上系统 | |
CN115220944A (zh) | 一种应用于多核异构处理器看门狗的控制方法 | |
US8060778B2 (en) | Processor controller, processor control method, storage medium, and external controller | |
CN111930573B (zh) | 一种基于管理平台的任务级双机热备系统及其方法 | |
US9026838B2 (en) | Computer system, host-bus-adaptor control method, and program thereof | |
CN101739336A (zh) | 调试系统、调试方法和调试控制方法 | |
CN111124780B (zh) | 一种UPI Link降速测试方法、系统、终端及存储介质 | |
CN117111525A (zh) | 一种基于多cpu的可信冗余控制系统及控制方法 | |
CN112540918A (zh) | 一种基于arinc659总线的多余度飞管计算机同步调试方法 | |
CN112416856A (zh) | 一种面向多核技术的分布式可重构机载容错系统 | |
CN115454881B (zh) | Risc-v架构的调试系统及调试方法 | |
CN107894930A (zh) | 死机状态数据被动恢复处理的方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |