多核处理器的制作方法

文档序号:15216131发布日期:2018-08-21 16:52阅读:134来源:国知局

本发明涉及处理器技术领域,尤其涉及一种多核处理器。



背景技术:

处理器调试可以分为侵入式(intrusive)调试和非侵入式(non-intrusive)调试。侵入式调试使数据处理器停止运行而获取处理器内部信息;非侵入式调试不影响数据处理器的正常运行,能够实时获取处理器内部信息。支持侵入式调试和非侵入式调试功能已经成为多核处理器调试模块的基本需求。如今主流的多核处理器调试方案是arm提供的coresight调试架构。

coresight提供了侵入式调试和非侵入式调试功能。一个coresight模块是由调试转换接口(debugaccessport)和调试组件(debugcomponent)组成,调试转换接口提供了一种外部jtag接口访问内部调试组件的机制。调试组件包含调试寄存器组件,调试事件信号传输控制组件,其中调试寄存器组件用于配置调试条件,调试事件信号传输控制组件用于控制调试事件信号在多核之间的传输。调试事件信号传输控制组件由交叉传输接口(crosstriggerinterface)和交叉传输矩阵(crosstriggermatrix)组成。通过配置交叉传输接口实现调试事件信号传输的控制。

现有的多核处理器调试方案为了实现调试事件信号的同步传输,往往需要配置多个寄存器,在物理上增加了调试模块的功耗,同时影响了调试的效率。因此,有必要提供一种低功耗并且高效的调试事件信号传输解决方案,既能实现快速配置控制调试事件信号的传输,也能降低调试模块的功耗。



技术实现要素:

本发明提供的多核处理器,能够实现快速配置控制调试事件信号的传输,同时降低调试模块的功耗。

本发明提供一种多核处理器,包括:多个内核以及调试模块,所述内核用于完成指令的执行和数据处理,并输出指令执行信息;所述调试模块包括与所述内核个数相同的调试电路、与所述内核个数相同的传输控制器以及一个总控电路,每个所述调试电路分别与一个内核和一个传输控制器连接,所有的传输控制器均与所述总控电路连接,其中,

每个所述调试电路,用于各自产生调试事件信号,每个所述调试电路产生的调试事件信号经各自所连接的传输控制器、所述总控电路、各自的目标调试电路所连接的传输控制器传输至各自的目标调试电路;还用于响应各自产生的调试事件信号或者接收到的其他调试电路产生的调试事件信号,控制各自所连接的内核进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;

每个所述传输控制器,用于在各自所连接的调试电路和所述总控电路之间控制调试事件信号的传输;

所述总控电路,用于在不同传输控制器之间转发调试事件信号。

可选地,所述调试电路包括事件产生模块、响应模块以及事件清零模块,其中,

所述事件产生模块,用于产生调试事件信号,所述调试事件信号一方面直接进入所述事件产生模块所属调试电路的响应模块,另一方面以高电平信号的形式经所述事件产生模块所连接的传输控制器、所述总控电路、各目标调试电路的响应模块所连接的传输控制器传输至各所述目标调试电路的响应模块;

所述响应模块,用于响应输入的高电平调试事件信号,以控制所连接的内核进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;还用于在每次响应所述高电平调试事件信号之后,向发起所述高电平调试事件信号的事件产生模块所属调试电路的事件清零模块发送清零指示信号;

所述事件清零模块,用于在接收到所述事件清零模块所属调试电路的响应模块以及所有目标调试电路的响应模块发出的清零指示信号后,向所连接的事件产生模块发送清零信号。

可选地,所述调试电路包括事件产生模块、采样模块、响应模块以及事件清零模块,其中,

所述事件产生模块,用于产生调试事件信号,所述调试事件信号一方面直接进入所述事件产生模块所属调试电路的采样模块,另一方面以脉冲信号的形式经所述事件产生模块所连接的传输控制器、所述总控电路、各目标调试电路的采样模块所连接的传输控制器传输至各所述目标调试电路的采样模块;

所述采样模块,用于对输入的脉冲调试事件信号进行采样,输出高电平的采样电平;

所述响应模块,用于接收所连接的采样模块输出的采样电平,响应所述采样电平对应的脉冲调试事件信号,以控制所连接的内核进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;还用于在每次响应所述脉冲调试事件信号之后,向所连接的采样模块发送清零信号,并向发起所述脉冲调试事件信号的事件产生模块所属调试电路的事件清零模块发送清零指示信号;

所述事件清零模块,用于在接收到所述事件清零模块所属调试电路的响应模块以及所有目标调试电路的响应模块发出的清零指示信号后,向所连接的事件产生模块发送清零信号。

可选地,所述事件产生模块产生的调试事件信号包括进入调试模式事件信号和退出调试模式事件信号。

可选地,所述事件产生模块被配置为直接产生所述进入调试模式事件信号,或者,被配置为当与所述事件产生模块所连接的内核满足设定的调试条件时,产生所述进入调试模式事件信号。

可选地,所述事件产生模块被配置为当与所述事件产生模块所连接的内核满足设定的调试条件时,产生所述进入调试模式事件信号,所述事件产生模块包括:追踪调试控制寄存器、追踪调试计数寄存器及追踪调试监测模块,其中,

所述追踪调试控制寄存器,用于使能所述追踪调试监测模块;

所述追踪调试计数寄存器,用于配置所述内核进入调试模式所需执行指令的数量;

所述追踪调试监测模块,用于监测所述内核执行指令的数量,当指令执行数量与所述追踪调试计数寄存器中配置的数量相等时,所述追踪调试监测模块产生所述进入调试模式事件信号。

可选地,所述事件产生模块被配置为直接产生所述退出调试模式事件信号。

可选地,所述传输控制器包括:传入控制电路和传出控制电路,其中,

所述传入控制电路,用于禁止或者允许接收所述总控电路转发的其他调试电路产生的调试事件信号;

所述传出控制电路,用于禁止或者允许向所述总控电路传输所述传输控制器所连接的调试电路产生的调试事件信号。

可选地,所述总控电路包括:连接矩阵电路,通过设置所述连接矩阵电路,接收每个传输控制器传来的调试事件信号,并将接收到的调试事件信号发送给所有其他的传输控制器。

本发明提供的多核处理器,包括多个内核以及调试模块,所述内核用于完成指令的执行和数据处理,并输出指令执行信息;所述调试模块包括与所述内核个数相同的调试电路、与所述内核个数相同的传输控制器以及一个总控电路,每个所述调试电路分别与一个内核和一个传输控制器连接,所有的传输控制器均与所述总控电路连接,通过调试电路产生调试事件信号,并通过传输控制器、总控电路在不同的调试电路之间传输调试事件信号,实现多内核的同步调试。与现有技术相比,本发明结构简单,调试电路、传输控制器、总控电路便于配置,能够实现快速配置控制调试事件信号的传输,同时降低调试模块的功耗。

附图说明

图1为本发明的多核处理器的一个实施例的整体结构图;

图2为本发明的多核处理器的调试模块的一个实施例的结构示意图;

图3为本发明的多核处理器的调试模块的另一个实施例的结构示意图;

图4为本发明的多核处理器的调试模块的又一个实施例的结构示意图;

图5为本发明的多核处理器的调试模块的再一个实施例的结构示意图;

图6为本发明的事件产生模块的一个实施例的结构示意图;

图7为本发明的传输控制器的一个实施例的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供一种多核处理器,如图1所示,所述多核处理器10包括:第一内核12、第二内核13以及调试模块11,其中,

所述调试模块11包括第一调试电路14和第二调试电路15,第一传输控制器16和第二传输控制器17,以及总控电路18,第一调试电路14和第二调试电路15彼此为对方的目标调试电路,第一调试电路14分别与第一内核12和第一传输控制器16连接,第二调试电路15分别与第二内核13和第二传输控制器17连接,第一传输控制器16和第二传输控制器17均与总控电路18连接,

第一内核12,用于完成指令的执行和数据处理,将指令执行和数据信息传输至第一调试电路14;

第二内核13,用于完成指令的执行和数据处理,将指令执行和数据信息传输至第二调试电路15;

第一调试电路14,用于产生第一调试事件信号140,并响应第一调试事件信号140,根据第一调试事件信号140向所连接的第一内核12发送进入调试模式命令或者退出调试模式命令,以控制第一内核12进入或者退出调试模式,在第一内核12进入调试模式后,对第一内核12执行调试操作;还用于响应第二调试电路15产生的第二调试事件信号150,将第二调试事件信号150发送到所连接的第一内核12,以控制第一内核12进入或者退出调试模式,在第一内核12进入调试模式后,对第一内核12执行调试操作,其中,第二调试事件信号150经第二传输控制器17、总控电路18、第一传输控制器16传输至第一调试电路14;

第二调试电路15,用于产生第二调试事件信号150,并响应第二调试事件信号150,根据第二调试事件信号150向所连接的第二内核13发送进入调试模式命令或者退出调试模式命令,以控制第二内核13进入或者退出调试模式,在第二内核13进入调试模式后,对第二内核13执行调试操作;还用于响应第一调试电路14产生的第一调试事件信号140,将第一调试事件信号140发送到所连接的第二内核13,以控制第二内核13进入或者退出调试模式,在第二内核13进入调试模式后,对第二内核13执行调试操作,其中,第一调试事件信号140经第一传输控制器16、总控电路18、第二传输控制器17传输至第二调试电路15;

第一传输控制器16,用于控制第一/第二调试事件信号在第一调试电路14和总控电路18之间的传输;

第二传输控制器17,用于控制第一/第二调试事件信号在第二调试电路15和总控电路18之间的传输;

总控电路18,用于在第一传输控制器16和第二传输控制器17之间转发第一/第二调试事件信号。

本申请所说的响应调试事件信号,是指根据调试事件信号向所连接的内核发送进入调试模式命令或者退出调试模式命令,以控制内核进入或者退出调试模式。

可选的,本发明实施例中的调试电路产生的调试事件信号可以有两种传输方式:以电平信号或者脉冲信号传输调试事件信号。针对两种信号传输方式,调试电路的结构略有不同,下面举例说明。

当以高电平信号传输调试事件信号时,需要将调试电路产生的调试事件信号清零,整个调试模块的结构如图2所示。

以两个调试电路为例,调试电路21包括事件产生模块211、事件清零模块212、响应模块213,调试电路22包括事件产生模块221、事件清零模块222、响应模块223,每个调试电路拥有各自独立的事件清零模块,事件清零模块由各自所属调试电路传出的调试事件信号使能,即只有当产生调试事件信号时,事件清零模块才会使能。

以调试电路21为例说明各模块的作用。

事件产生模块211,用于产生调试事件信号2101,该调试事件信号2101以高电平的形式传输,一方面直接进入响应模块213,另一方面经传输控制器24、总控电路27、再经传输控制器25传输至响应模块223;

响应模块213、223分别用于响应输入的调试事件信号2101,各自控制所连接的内核(图示未画出内核,参见图1)进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;响应模块213、223在各自响应调试事件信号2101之后,分别向事件清零模块212发送清零指示信号;

事件清零模块212,用于在接收到响应模块213、223发送的清零指示信号后,向所连接的事件产生模块211发送清零信号,将调试事件信号2101清零。

另外一种情况,当以脉冲信号传输调试事件信号时,为了防止调试事件信号的丢失,每个调试电路还需要一个采样模块,该采样模块同样需要清零。此时每个调试电路的结构如图3所示,在图2的基础上,调试电路21增加一个采样模块214,调试电路22增加一个采样模块224。

同样以调试电路21为例说明各模块的作用。

事件产生模块211,用于产生调试事件信号2102,该调试事件信号2102以脉冲信号的形式传输,一方面直接进入采样模块214,另一方面经传输控制器24、总控电路27、再经传输控制器25传输至采样模块224;

采样模块214、224分别用于对输入的脉冲调试事件信号2102进行采样,输出高电平的采样电平;

响应模块213、223分别用于接收所连接的采样模块输出的采样电平,响应所述采样电平对应的脉冲调试事件信号2012,以控制所连接的内核进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;还用于在每次响应所述脉冲调试事件信号2102之后,向所连接的采样模块发送清零信号,清零采样模块,并分别向事件清零模块212发送清零指示信号;

事件清零模块212,用于在接收到响应模块213、223发送的清零指示信号后,向事件产生模块211发送清零信号,将调试事件信号2102清零。

上面是以两个调试电路为例,当存在三个调试电路时,以电平信号传输时整个调试模块的结构如图4所示,以脉冲信号传输时整个调试模块的结构如图5所示。

如图4所示,调试电路21包括事件产生模块211、事件清零模块212、响应模块213,调试电路22包括事件产生模块221、事件清零模块222、响应模块223,调试电路23包括事件产生模块231、事件清零模块232、响应模块233,

事件产生模块211,用于产生调试事件信号2101,该调试事件信号2101以高电平的形式传输,一方面直接进入响应模块213,另一方面经传输控制器24、总控电路27、再分别经传输控制器25传输至响应模块223,同时经传输控制器26传输至响应模块233;

响应模块213、223、233分别用于响应输入的调试事件信号2101,各自控制所连接的内核(图示未画出内核,参见图1)进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;响应模块213、223、233在各自响应调试事件信号2101之后,分别向事件清零模块212发送清零指示信号;

事件清零模块212,用于在接收到响应模块213、223、233发送的清零指示信号后,向所连接的事件产生模块211发送清零信号,将调试事件信号2101清零。

如图5所示,在图4的基础上,调试电路21增加一个采样模块214,调试电路22增加一个采样模块224,调试电路23增加一个采样模块234。

事件产生模块211,用于产生调试事件信号2102,该调试事件信号2102以脉冲信号的形式传输,一方面直接进入采样模块214,另一方面经传输控制器24、总控电路27、再分别经传输控制器25传输至采样模块224,同时经传输控制器26传输至采样模块234;

采样模块214、224、234分别用于对输入的脉冲调试事件信号2102进行采样,输出高电平的采样电平;

响应模块213、223、233分别用于接收所连接的采样模块输出的采样电平,响应所述采样电平对应的脉冲调试事件信号2012,以控制所连接的内核进入或者退出调试模式,在所述内核进入调试模式后,对所述内核执行调试操作;还用于在每次响应所述脉冲调试事件信号2102之后,向所连接的采样模块发送清零信号,清零采样模块,并分别向事件清零模块212发送清零指示信号;

事件清零模块212,用于在接收到响应模块213、223、233发送的清零指示信号后,向事件产生模块211发送清零信号,将调试事件信号2102清零。

由上述可知,本发明实施例提供的多核处理器,通过配置第一调试电路14产生第一调试事件信号140,第一调试事件信号140以高电平信号或脉冲信号的方式传输,使能第一传输控制器16,使其允许向外传输第一调试事件信号140,总控电路18接收到第一传输控制器16传来的第一调试事件信号140,转发给第二传输控制器17,使能第二传输控制器17,使其允许接收第一调试事件信号140,第二调试电路15响应第一调试事件信号140,之后第一调试事件信号140被清零。与现有技术相比,本发明实施例提供的多核处理器,结构简单,调试电路、传输控制器、总控电路便于配置,能够实现快速配置控制调试事件信号的传输,同时降低调试模块的功耗。

进一步地,每个事件产生模块产生的调试事件信号包括进入调试模式事件信号和退出调试模式事件信号。

提供两种配置事件产生模块产生所述进入调试模式事件信号的方法:一种是直接配置事件产生模块产生所述进入调试模式事件信号,另一种是配置事件产生模块所连接的内核需要满足的调试条件,当内核满足调试条件时,事件产生模块产生所述进入调试模式事件信号。事件产生模块的一种实现方式如图6所示,事件产生模块211能够实现追踪调试功能,包括:追踪调试控制寄存器2111、追踪调试计数寄存器2112及追踪调试监测模块2113,其中,

所述追踪调试控制寄存器2111,用于使能所述追踪调试监测模块2113;

所述追踪调试计数寄存器2112,用于配置所述内核进入调试模式所需执行指令的数量;

所述追踪调试监测模块2113,用于监测所述内核执行指令的数量,当指令执行数量与所述追踪调试计数寄存器2112中配置的数量相等时,所述追踪调试监测模块2113产生所述进入调试模式事件信号。

通过直接配置事件产生模块产生所述退出调试模式事件信号。

进一步地,每个传输控制器包括相互独立的传入控制电路和传出控制电路,通过配置这两个电路控制调试事件信号的传输,如图7所示,第一传输控制器16包括:

传入控制电路161,用于禁止或者允许接收总控电路转发的其他调试电路产生的调试事件信号;

传出控制电路162,用于禁止或者允许向总控电路传输所述传输控制器所连接的调试电路产生的调试事件信号。

结合图1,当第一传输控制器16接收到与之相连的调试电路14传来的第一调试事件信号140时,若配置关闭传出控制电路162,此时第一传输控制器16禁止向外传输第一调试事件信号140,第一调试事件信号140无法被传输到总控电路18;若配置使能传出控制电路162,此时第一传输控制器16允许向外传输第一调试事件信号140,第一调试事件信号140被传输到总控电路18。

当第一传输控制器16要接收总控电路18传来的第二调试事件信号150时,若配置关闭传入控制电路161,此时第一传输控制器16禁止接收第二调试事件信号150,第二调试事件信号150无法被传输到第一调试电路14;若配置使能传入控制电路161,此时第一传输控制器16允许接收第二调试事件信号150,第二调试事件信号150被传输到第一调试电路14。

由上述可以看出,第一传输控制器16是在总控电路18这一侧控制调试事件信号的发送或者接收,在对应的调试电路14一侧不进行控制。

进一步地,总控电路18包括:连接矩阵电路,通过设置所述连接矩阵电路,接收每个传输控制器传来的调试事件信号,并将接收到的调试事件信号发送给所有其他的传输控制器。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

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