CN114281751B - 芯片系统 - Google Patents
芯片系统 Download PDFInfo
- Publication number
- CN114281751B CN114281751B CN202011045791.1A CN202011045791A CN114281751B CN 114281751 B CN114281751 B CN 114281751B CN 202011045791 A CN202011045791 A CN 202011045791A CN 114281751 B CN114281751 B CN 114281751B
- Authority
- CN
- China
- Prior art keywords
- core
- cores
- signal
- control
- control unit
- 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.)
- Active
Links
- 230000005540 biological transmission Effects 0.000 claims description 5
- 238000013507 mapping Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 238000000034 method Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 9
- 238000013461 design Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000012546 transfer Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008054 signal transmission Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005265 energy consumption Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000001681 protective effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microcomputers (AREA)
Abstract
本公开实施例提供一种芯片系统,包括多个IP核,以及控制单元,用于通过控制电路对所述多个IP核中的至少一个IP核的目标信号进行控制,所述目标信号包括时钟信号或复位信号。
Description
技术领域
本公开涉及芯片技术领域,尤其涉及一种芯片系统。
背景技术
在芯片系统中,时钟和复位的设计结构关系到系统初态的稳定、启动的效率,以及时序和能耗的性能。而在系统级芯片(System on Chip,SoC)中,不同的IP(IntellectualProperty,知识产权)核对应不同的时钟信号和复位信号。通过控制各个IP核的时钟信号和/或复位信号,从而控制对应IP核的工作状态。在传统方式中,时钟信号和复位信号一般是由中央处理器(Central Processing Unit,CPU)进行控制,发送控制指令需要花费较多时间,效率较低。
发明内容
本公开提供一种芯片系统。
根据本公开实施例的第一方面,提供一种芯片系统,所述芯片系统包括:多个IP核,以及控制单元,用于通过控制电路对所述多个IP核中的至少一个IP核的目标信号进行控制,所述目标信号包括时钟信号或复位信号。
在一些实施例中,所述控制单元用于基于读取到的第一配置信息,并发地控制所述多个IP核中的至少两个IP核的目标信号的开启和/或关闭,其中,所述第一配置信息用于指示所述至少两个IP核。
在一些实施例中,所述第一配置信息占用寄存器的至少一个特定存储比特,所述控制单元用于基于多个预设控制模式与预设编码信息之间的映射关系以及所述至少一个特定存储比特的当前编码信息,确定所述至少两个IP核,其中,所述多个预设控制模式对应不同的IP核组合。
在一些实施例中,所述控制单元还用于:基于读取到的第二配置信息所配置的顺序和/或间隔,并发地控制所述至少两个IP核的目标信号的开启和/或关闭。
在一些实施例中,所述目标信号包括时钟信号的情况下,所述第一配置信息和第二配置信息存储在同一寄存器中;和/或所述目标信号包括复位信号的情况下,所述第一配置信息和第二配置信息存储在不同的寄存器中。
在一些实施例中,所述芯片系统还包括中央处理单元,用于:在一个指令周期内,将所述第一配置信息和所述第二配置信息写入寄存器;和/或在第一指令周期内,将所述第一配置信息写入第一寄存器,以及在第二指令周期内,将所述第二配置信息写入第二寄存器。
在一些实施例中,所述控制电路包括:多个开关单元,所述多个开关单元中每个开关单元的使能端分别电连接所述控制单元以及所述多个IP核中的一个IP核;所述控制单元用于:控制所述多个开关单元中至少一个开关单元的开关状态,以控制对应的IP核的时钟信号的开启和/或关闭。
在一些实施例中,所述控制单元与所述多个IP核中的至少一个IP核电连接,并用于向所述至少一个IP核传输复位信号;和/或所述控制单元与所述多个IP核中的至少一个IP核的时钟开关单元电连接,并用于向所述至少一个IP核的时钟开关单元发送时钟使能信号,以控制所述至少一个IP核的时钟信号的传输电路的导通。
在一些实施例中,所述控制单元用于:将所述多个IP核中的第一IP核的状态控制信号作为所述第一IP核的时钟使能信号。
在一些实施例中,所述控制单元用于:基于所述多个IP核中的第二IP核的时钟状态,控制第三IP核的时钟信号,其中,所述第二IP核和所述第三IP核之间具有主从关系。
在一些实施例中,所述控制单元用于:基于多个IP核中至少两个第四IP核中每个第四IP核的投票信息,控制第五IP核的时钟信号,其中,所述至少两个第四IP核为所述第五IP核的使用者,所述投票信息用于指示所述第五IP核的时钟信号的开启或关闭。
在一些实施例中,所述控制单元用于:在作为第五IP核的时钟使用者的多个第四IP核中每个第四IP核的时钟信号关闭的情况下,关闭所述第五IP核的时钟信号;和/或在所述多个第四IP核中的任一第四IP核的时钟信号开启的情况下,使得所述第五IP核的时钟信号处于开启状态。
本公开实施例中的控制单元通过控制电路对所述多个IP核中的至少一个IP核的时钟信号或复位信号进行控制,相比于传统的软件控制方式,本公开通过硬件进行时钟信号或复位信号的控制,提高了时钟信号或复位信号的控制效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,这些附图示出了符合本公开的实施例,并与说明书一起用于说明本公开的技术方案。
图1是相关技术中控制时钟信号的示意图。
图2和图3分别是本公开实施例的芯片系统的示意图。
图4A是传统的时钟信号控制方式的示意图。
图4B是本公开实施例的时钟信号控制方式的示意图。
图4C是本公开实施例的复位信号控制方式的示意图。
图5是本公开实施例的主从式设计机制的示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
在本公开使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。另外,本文中术语“至少一种”表示多种中的任意一种或多种中的至少两种的任意组合。
应当理解,尽管在本公开可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本公开范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
为了使本技术领域的人员更好的理解本公开实施例中的技术方案,并使本公开实施例的上述目的、特征和优点能够更加明显易懂,下面结合附图对本公开实施例中的技术方案作进一步详细的说明。
相关技术中时钟信号(clock)和复位信号(reset)的控制方式基于指令的方式实现。下面以时钟信号的控制为例,对指令控制方式进行说明。在多核CPU中,不同CPU核的指令之间存在竞争关系。如图1所示,示出了包括两个CPU核的情况。假设当前需要通过第一CPU核101来控制一个IP核的时钟信号。其中,第一CPU核101和第二CPU核102发送的指令会先传输到一个仲裁单元103,由仲裁单元103确定两个CPU核的指令的发送优先级,然后依次将对应的指令输出到总线104上。在将第一CPU核101的指令输出至总线之后,由于不同的指令在总线104上的优先级也不同,总线104需要根据第一CPU核101的指令与其他指令的优先级依次发送各条指令。在上述过程中,由于指令间存在竞争,因此,CPU发送的控制指令可能需要经过较长的时间才能被写入寄存器105中以用于控制一条时钟信号,导致控制效率较低。
基于此,本公开提供一种芯片系统,如图2和图3所示,所述芯片系统可包括多个IP核201,以及控制单元202,用于通过控制电路203对所述多个IP核201中的至少一个IP核的目标信号进行控制,所述目标信号包括时钟信号或复位信号。
控制单元202通过控制电路203对目标信号进行控制,而不是通过软件方式对目标信号进行控制,控制电路203可以通过与控制单元202之间的导线直接读取到控制单元202产生的控制信息,而控制电路203在读取到控制信息之后,可以直接响应控制信息来改变自身的电路状态(例如,导通状态或者断开状态),从而实现对目标信号进行控制。上述过程不存在指令之间的竞争,通过导线进行的信息读取,时延可以忽略不计,从而有效地节约了对目标信号的控制时间,提高了目标信号的控制效率。
本公开实施例中的IP核可以是芯片系统中的任意硬件单元,例如,看门狗定时器(Watch Dog Timer,WDT)、电源管理单元(Power Management Unit,PMU)、NOC(Network OnChip,片上网络)总线、直接存储器访问(Direct Memory Access,DMA)控制器、双倍速率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM)、安全控制单元(security control)、调试单元(debug)等。
控制单元202可以电连接到控制电路203,以便通过控制电路对所述多个IP核201中的至少一个IP核的目标信号进行控制。对目标信号的控制可包括开启目标信号和关闭目标信号中的至少一者。在一些实施例中,所述目标信号可以包括时钟信号或复位信号。由于控制单元202可以对芯片系统的时钟信号和复位信号进行控制,因此,控制单元202可以称为时钟信号和复位信号的全局控制模块(GRCC,Global Reset and Clock Control)。
在目标信号包括时钟信号的情况下,控制单元202可以与所述多个IP核201中的至少一个IP核的时钟开关单元电连接,并用于向所述至少一个IP核的时钟开关单元发送时钟使能信号,以控制所述至少一个IP核的时钟信号的传输电路的导通,从而对应控制所述每个IP核的时钟信号的状态。其中,一个IP核的时钟信号的传输电路用于连接该IP核与产生该IP核的时钟信号的信号源,在时钟信号的传输电路导通的情况下,时钟信号的信号源可以将时钟信号输出至对应的IP核,即该IP核的时钟信号为开启状态;在时钟信号的传输电路断开的情况下,时钟信号的信号源将不输出至对应的IP核,即该IP核的时钟信号为关闭状态。通过将所述控制单元202与时钟开关单元电连接,使得控制单元202输出的时钟使能信号能够直接被时钟开关单元读取到,从而提高了对IP核的时钟信号进行控制的控制效率。
在目标信号包括复位信号的情况下控制单元202可以与所述多个IP核201中的至少一个IP核电连接,并用于向所述至少一个IP核传输复位信号。其中,复位信号为第一电平时生效(也称为开启复位信号),为第二电平时释放(也称为关闭复位信号)。所述第一电平和第二电平可以分别是高电平和低电平,或者分别是低电平和高电平。通过将所述控制单元202与IP核电连接,使得控制单元202输出的复位使能信号能够直接被IP核读取到,从而提高了对IP核的复位信号进行控制的控制效率。
在一些实施例中,所述控制单元202可以并发地对所述多个IP核201中的至少两个IP核的目标信号进行控制。例如,在某种启动模式下,需要启动IP核1、IP核2和IP核3,则需要并发地对IP核1、IP核2和IP核3的时钟信号进行控制。又例如,在某种运行模式下,需要对功能1和功能2所需的各个IP核进行复位,则需要并发地对功能1和功能2所需的各个IP核的复位信号进行控制。应当说明的是,所述并发控制并不要求对所述至少两个IP核的目标信号的控制同时发生,也可以是按照某种先后顺序依次对所述至少两个IP核的目标信号进行控制。
所述控制单元202可以基于多种控制方式对目标信号进行控制。在一些实施例中,所述控制单元202可以基于读取到的第一配置信息对目标信号进行控制。例如,所述控制单元202可以基于读取到的针对某个IP核的第一配置信息,单独地对该IP核的目标信号进行控制。或者,所述控制单元202也可以基于读取到的针对所述多个IP核中的至少两个IP核的第一配置信息,并发地控制所述多个IP核中的至少两个IP核的目标信号。在这种情况下,所述第一配置信息用于指示所述至少两个IP核。
所述第一配置信息可以存储在第一寄存器中。所述第一寄存器可以集成在控制单元202内部,也可以与控制单元202在物理上分开设置,并与控制单元202电连接。这样,控制单元202可以直接读取到所述第一寄存器中的第一配置信息,该过程的时延可以忽略不计,从而提高了对目标信号的控制效率。在一些实施例中,为了便于读取第一配置信息,可以将第一配置信息存储到第一寄存器中的至少一个特定比特位。所述特定比特位的位置信息(即,所述特定比特位为所述第一寄存器中的哪个或哪些比特位)可以存储在控制单元202中。
可选地,所述控制单元202可以基于多个预设控制模式与预设编码信息之间的映射关系以及所述至少一个特定存储比特的当前编码信息,确定所述至少两个IP核,其中,所述多个预设控制模式对应不同的IP核组合。例如,预设编码信息0001对应的预设编码模式表示对IP核1的目标信号进行单独控制,预设编码信息0010对应的预设编码模式表示对IP核2的目标信号进行单独控制,预设编码信息0011对应的预设编码模式表示对IP核1的目标信号和IP核2的目标信号进行并发控制。本领域技术人员可以理解,前文所述的编码信息除了是上述二进制数值编码信息之外,还可以是其他类型的数值编码信息、非数值编码信息或者数值编码信息与非数值编码信息的组合。
或者可选地,所述控制单元202可以基于所述特定比特位的位置信息确定所述至少两个IP核,其中,每种位置信息对应不同的IP核组合。例如,所述特定比特位为所述第一寄存器中的第1位表示对IP核1的目标信号进行单独控制,所述特定比特位为所述第一寄存器中的第2位表示对IP核1的目标信号和IP核2的目标信号进行并发控制。
或者可选地,所述控制单元202可以基于所述特定比特位中有效位的位数信息确定所述至少两个IP核,所述有效位可以是取值为特定数值的比特位,例如,取值为1的比特位。其中,每种位数信息对应不同的IP核组合。例如,所述特定比特位中有效位的位数为1位表示对IP核1的目标信号进行单独控制,所述特定比特位中有效位的位数为2位表示对IP核1的目标信号和IP核2的目标信号进行并发控制。
或者可选地,所述第一寄存器的数量为多个,不同的第一寄存器或者不同第一寄存器的组合对应不同的IP核组合。例如,所述控制单元202在仅检测到第一寄存器1中的特定比特位的情况下,对IP核1的目标信号进行单独控制,所述控制单元202在检测到第一寄存器1和第一寄存器2中的特定比特位的情况下,对IP核1的目标信号和IP核2的目标信号进行并发控制。
除了上述描述的各种方式之外,控制单元202还可以基于其他方式来确定所述至少两个IP核,此处不再赘述。
在控制单元202并发地对至少两个IP核的目标信号进行控制的情况下,所述控制单元202还可以基于读取到的第二配置信息所配置的顺序和/或间隔,并发地对所述至少两个IP核的目标信号进行控制。
其中,所述间隔可以以控制单元202的时钟信号(称为第一时钟信号)的周期为基准。目标信号的一个周期称为一拍,则所述控制单元202可以在对所述至少两个IP核中的前一个IP核的目标信号控制完成的情况下,经过n(n为正整数)拍再对所述至少两个IP核中的后一个IP核的目标信号进行控制。
所述第二配置信息可以存储在第二寄存器中。所述第二寄存器可以集成在控制单元202内部,也可以与控制单元202在物理上分开设置,并与控制单元202电连接。这样,控制单元202可以直接读取到所述第二寄存器中的第二配置信息,该过程的时延可以忽略不计,从而提高了对目标信号的控制效率。在一些实施例中,为了便于读取第二配置信息,可以将第二配置信息存储到第二寄存器中的至少一个特定比特位。所述特定比特位在所述第二寄存器中的位置信息可以存储在控制单元202中。
所述控制单元202可以基于多个预设控制模式与预设编码信息之间的映射关系以及所述至少一个特定存储比特的当前编码信息,确定对所述至少两个IP核的目标信号进行控制的顺序和/或间隔。其中,所述多个预设控制模式对应不同的顺序和/或间隔的组合。例如,预设编码信息0001对应的预设控制模式表示依次对IP核1、IP核2和IP核3的控制信号进行控制。又例如,预设编码信息0010对应的预设控制模式表示第一个IP核的控制信号与第二个IP核的控制信号之间的控制间隔2拍,第二个IP核的控制信号与第三个IP核的控制信号之间的控制间隔3拍。又例如,预设编码信息0011对应的预设控制模式表示依次对IP核1、IP核2和IP核3的控制信号进行控制,且IP核1的控制信号与IP核2的控制信号之间的控制间隔2拍,IP核2的控制信号与IP核3的控制信号之间的控制间隔3拍。
除了上述描述的方式之外,控制单元202还可以基于其他方式来确定对所述至少两个IP核的目标信号进行控制的顺序和/或间隔,例如,基于所述特定比特位的位置信息或所述特定比特位中有效位的位数信息来确定对所述至少两个IP核的目标信号进行控制的顺序和/或间隔,或者,在第二寄存器的数量为多个的情况下,可以基于不同的第二寄存器或者不同第二寄存器的组合来确定对所述至少两个IP核的目标信号进行控制的顺序和/或间隔,具体可参考基于第一配置信息确定所述至少两个IP核的方式,此处不再赘述。
在一些实施例中,第二配置信息可以携带在第一配置信息中。也就是说,第一配置信息不仅可以指示对哪几个IP核的目标信号进行并发控制,还可以指示按照何种顺序和/或间隔对这几个IP核的目标信号进行控制。例如,第一配置信息对应的编码信息为0111,指示的IP核及其顺序和间隔依次为:IP核1,2拍,IP核2,3拍,IP核3。在另一些实施例中,所述第二配置信息也可以是与第一配置信息相互独立的两条配置信息。
可选地,在所述目标信号包括时钟信号的情况下,所述第一配置信息和第二配置信息可以存储在同一寄存器中。可选地,在所述目标信号包括复位信号的情况下,所述第一配置信息和第二配置信息存储在不同的寄存器中。通过将第一配置信息和第二配置信息存储在不同的寄存器中,能够提高复位信号的控制灵活性。
在一些实施例中,所述芯片系统还包括中央处理器204,用于在一个指令周期内,将所述第一配置信息和所述第二配置信息写入寄存器;和/或在第一指令周期内,将所述第一配置信息写入第一寄存器,以及在第二指令周期内,将所述第二配置信息写入第二寄存器。所述中央处理器204可以是单独的一台单核处理器或者多核处理器,也可以是包括多个处理器的处理器集群,集群中的每个处理器都可以是单核处理器或者多核处理器。
例如,在所述控制信号包括时钟信号的情况下,中央处理器204可以在一个指令周期内,将时钟信号对应的第一配置信息和所述第二配置信息写入同一个寄存器。又例如,在所述控制信号包括复位信号的情况下,中央处理器204可以第一指令周期内,将复位信号对应的第一配置信息写入第一寄存器,以及在第二指令周期内,将复位信号对应的第二配置信息写入第二寄存器。
在将第一配置信息和所述第二配置信息写入对应的寄存器之后,控制单元202可以直接读取到对应寄存器中的第一配置信息和所述第二配置信息,并基于读取到的第一配置信息和所述第二配置信息对各IP核的时钟信号或复位信号进行控制。
在一些实施例中,所控制电路203包括多个开关单元205,所述多个开关单元205中每个开关单元的使能端分别电连接所述控制单元202以及所述多个IP核201中的一个IP核。所述控制单元202用于控制所述多个开关单元205中至少一个开关单元的开关状态,以控制对应的IP核的时钟信号的开启和/或关闭。所述多个开关单元205中每个开关单元可采用clock gating实现。所述控制单元202通过控制clock gating导通,从而控制对应的IP核的目标信号的开启,通过控制clock gating断开,从而控制对应的IP核的时钟信号的关闭。
传统的控制方式为软件控制方式,而对目标信号进行的信号与CPU发送的其他信号之间存在竞争关系,因此,传统的控制方式不仅控制效率较低,同时,也无法对各个IP核的目标信号的控制时间进行精确控制,只能对各个IP核的目标信号的顺序进行控制。而本公开实施例由于采用了硬件控制方式,控制单元202直接基于硬件连接控制时钟信号和复位信号,提高了控制效率。此外,通过硬件方式能够精确地将控制时序定位到第一时钟信号的某一拍,提高了控制精确度。
为了更清楚地区分出传统的信号配置方式与本公开实施例的信号配置方式的区别,现结合图4A、图4B和图4C,对两种不同的信号配置方式进行说明。假设在某一工作场景下需要IP核1、IP核2和IP核3协同工作,并假设默认状态下IP核1、IP核2和IP核3的时钟信号的状态为关闭状态。
如图4A所示,在传统的时钟信号配置方式中,第一寄存器1、第一寄存器2和第一寄存器3分别用于存储IP核1、IP核2和IP核3的时钟信号对应的第一配置信息,CPU在第一个指令周期配置第一寄存器1中的第一配置信息,从而对IP核1的时钟信号进行控制,在第二个指令周期配置第一寄存器2中的第一配置信息,从而对IP核2的时钟信号进行控制,在第三个指令周期配置第一寄存器3中的第一配置信息,从而对IP核3的时钟信号进行控制。
如图4B所示,在本公开实施例的时钟信号配置方式中,通过一个寄存器来存储IP核1、IP核2和IP核3的时钟信号对应的第一配置信息。只需配置一个寄存器中的第一配置信息,即可同时完成对IP核1、IP核2和IP核3的时钟信号进行控制。例如,在一个指令周期内,将寄存器中的第一配置信息从“0”切换为“1”,从而将IP核1、IP核2和IP核3的时钟信号从关闭状态控制为开启状态。这种对时钟信号进行控制的方式成为fastboot控制机制。
可以看出,在传统配置方式中,软件需要配置多个指令周期,完成对多个IP核的时钟信号进行控制;而fastboot机制只需要一个指令周期,即可完成对多个IP核的时钟信号进行控制,节省了控制时间,提高了控制效率。本公开实施例从芯片系统的工作场景上,区分出各场景下时钟的并发需求,利用fastboot设计,一笔软件配置,在硬件上将控制单元202输出的控制信息同时接给多个IP核的时钟通路,导通所需的时钟通路。例如,在PCIE(peripheral component interconnect express,高速串行计算机扩展总线标准)使用场景下,通过fastboot能够将PCIE所需的bus时钟和内部状态机时钟信号的时钟通路一并导通。
如图4C所示,rst1至rst5各表示一种功能对应的复位信号,每种功能所需的一个或多个IP核的复位信号需要并发地开启或关闭。例如,rst1对应的功能需要并发地开启或关闭IP核1和IP核3的复位信号,rst4对应的功能需要开启或关闭IP核3的复位信号,rst5对应的功能需要开启或关闭IP核4的复位信号。在某一场景下,多种功能所需的IP核的复位信号需要并发地开启或关闭,例如,rst4对应的功能所需的IP核3和rst5对应的功能所需的IP核4的复位信号需要并发地开启或关闭。可以在设计时除了IP核3、IP核4自身功能需求上的软硬件复位外,提供两者共同的reset控制,如图4C中IP核3、IP核4的公共复位信号misc_rstn;该信号可以被单一软件地址控制,一笔软件指令操作misc_rst生效和释放,将使IP核3和IP核4的复位信号并发地生效和释放。通过这种方式,可以使多种功能所需的IP核的复位信号并发地生效和释放。这种方式称为一键式reset控制机制。公共复位信号可以基于前文所述的第一配置信息进行配置,所述第一配置信息可以存储在寄存器中并通过一笔软件进行配置。除此之外,每个IP核还可以有自身的专用复位信号,用于单独控制该IP核的复位信号生效和释放。在一些实施例中,复位信号为高电平时生效。图中灰色的模块表示或门,一个IP核的公共复位信号和专用复位信号中只要有一者生效,该IP核的复位信号即生效。最终输出的各个IP核的复位信号为IPi_rst,i=1,2,3或4。
本公开实施例从SoC场景上,归纳协同工作的IP核,通过一笔软件配置,将寄存器中的第一配置信息结果直接连接到reset的控制端,多个IP核的复位信号同时生效和释放,提高了对复位信号的控制效率。
在一些实施例中,所述控制单元202还用于基于所述多个IP核中的第二IP核的时钟状态(包括时钟信号的启动状态和关闭状态),控制第三IP核的时钟信号,其中,所述第二IP核和所述第三IP核之间具有主从关系。具体来说,所述第二IP核可以是主IP核,所述第三IP核可以是从IP核。主IP核可以是从IP核的使用者。上述方式称为主从式设计机制。
下面以一个具体应用场景为例,对上述主从式设计机制进行说明。如图5所示,是一些实施例的芯片系统的示意图,该芯片系统包括PMU、debug单元、DMA、DDR、CPU core0、CPU core1、WDT、NOC和security control单元。图中的cxo_clk、rtc_clk和jtag_clk均为GRCC的时钟信号,其中,cxo_clk为GRCC正常工作状态下的时钟信号,同时也是DDR的时钟信号。rtc_clk为GRCC在bootup(启动)阶段的时钟信号,jtag_clk是GRCC在调试阶段的时钟信号。jtag_rst和rtc_rst为GRCC的复位信号,用于将GRCC的状态复位。GRCC可以输出复位信号,例如,输出PMU的复位信号rst。
在SoC中当希望将数据从DMA控制器搬运到NOC总线的过程中,常常需要安全控制单元配合判断,该段数据是否符合当前安全机制下允许搬运的数据。在安全控制单元允许搬运的机制下,才能够开启从DMA到NOC总线的数据搬运路径,进行数据传输。在以往的工作方式中,需要CPU根据DMA内部状态机的控制状态寄存器,去频繁开关安全控制单元和NOC总线相应的时钟信号。这一过程增加了CPU的调度需求和开启时钟信号的时长。
在本公开实施例中,控制单元202可以将DMA和安全控制单元、NOC总线设定为同一主从式的工作族群,且将DMA作为该族群的主IP核。在数据希望从DMA开始搬运时,软件只需要配置DMA的时钟信号开启,那么安全控制单元和NOC总线将作为从IP核自动开启时钟信号,而无需CPU再次配置安全控制单元和NOC总线相应的时钟信号。上述过程减少了CPU的调度,缩短了时钟转换时间,降低了无效时段的功耗浪费。
在一些实施例中,所述控制单元202还可以基于多个IP核201中至少两个第四IP核中每个第四IP核的投票信息,控制第五IP核的时钟信号,其中,所述至少两个第四IP核均为所述第五IP核的使用者,所述投票信息用于指示所述第五IP核的时钟信号的开启或关闭。这种方式称为多用户投票机制。
可选地,在作为第五IP核的时钟使用者的多个第四IP核中每个第四IP核的时钟信号关闭的情况下,所述控制单元202关闭所述第五IP核的时钟信号。可选地,在所述多个第四IP核中的任一第四IP核的时钟信号开启的情况下,所述控制单元202使得所述第五IP核的时钟信号处于开启状态。使用同一个第五IP核的所述多个第四IP核称为一个投票组(vote group),一个第五IP核也称为一个投票用户(vote user)。
本公开实施例从SoC场景上,归纳从IP核的各个主IP核的时钟使能信号,利用多用户投票机制,保证从IP核的时钟信号的状态可以同时基于多个主IP核进行控制;只有当所有的主IP核都希望将从IP核的时钟信号的状态控制为关闭状态时,从IP核的时钟信号的状态才可以被关闭。所以在具体实施时,一个投票组中有多个投票用户可以进行投票,并将投票结果发送给控制单元202。只有在所有投票用户都投票将从IP核的时钟信号的状态控制为关闭状态时,投票组中的从IP核的时钟信号的状态才会被控制为关闭状态。
在传统的多核CPU(即上述目标第一IP核)的SoC应用中,各CPU都可能使用到DDR,那么常出现如下场景:
1)CPU核core0使用时需要读DDR,因此软件配置将DDR的时钟信号开启,并轮询时钟状态寄存器为开启状态后,进行数据传输;2)在CPU核core1在此期间也希望使用DDR,但因为core0正在使用,所以轮询等待core0完成;3)core0完成后关闭DDR的时钟信号,完成core0操作;4)core1发现core0完成后,重新开启DDR clock配合core1进行。
在此过程中DDR的时钟需要软件进行三次配置:1)为了core0进程开启DDR的时钟信号;2)core0完成后,关闭DDR的时钟信号;3)为了core1进程再次开启DDR的时钟信号。如此频繁操作DDR的时钟信号开关,增加了core0/core1间的切换时长,增加了软件调度。
在本公开实施例中,可以将CPU核core 0和CPU核core1都作为DDR的投票用户,当其中之一需要DDR的时钟信号开启时,DDR的时钟信号将处于开启状态。因此,在core1未占用DDR而core0正在占用DDR时,仍可以指示将DDR的时钟信号开启,那么在DDR响应完成core0的时钟开启需求后,无须关闭DDR的时钟信号,可以直接响应core1的需求,继续将DDR的时钟信号保存开启状态。
在一些实施例中,所述控制单元202还用于将所述多个IP核201中的第一IP核的状态控制信号作为所述第一IP核的时钟使能信号。例如,所述第一IP核可以是接口单元(例如,USB接口等)。所述第一IP核的状态控制信号用于指示所述第一IP核当前是否被占用,从而使控制单元202确定当前是否需要输出所述第一IP核的时钟使能信号来开启所述第一IP核的时钟信号。例如,在所述第一IP核的状态控制信号指示所述第一IP核当前被占用的情况下,则所述控制单元202开启所述第一IP核的时钟信号。又例如,在所述第一IP核的状态控制信号指示所述第一IP核当前未被占用的情况下,所述控制单元202关闭所述第一IP核的时钟信号。通过这种方式,无需CPU来控制所述第一IP核的时钟信号的状态,减轻了CPU的负担。
相比于传统的信号控制方式,本公开实施例实现了软硬件协同,多模块协同间的轻CPU/软件调度(即,无需CPU通过多笔配置实现目标信号的控制),硬件快速响应,进一步提升有效时钟功耗使用窗口等。让设计者从场景使用角度出发,通过fastboot/主从式/多用户投票设计/一键式reset控制机制,替代软硬件间的频繁交互调度。
基于该方法的设计实现,可以支持多场景下的时钟控制需求,减少CPU/软件参加,降低因时钟切换造成的场景切换的延迟,提高有效场景窗口下的时钟使用效率。
以上所述仅是本说明书实施例的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本说明书实施例原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本说明书实施例的保护范围。
Claims (10)
1.一种芯片系统,其特征在于,所述芯片系统包括:
多个IP核,以及
控制单元,用于通过控制电路对所述多个IP核中的至少一个IP核的目标信号进行控制,所述目标信号包括时钟信号或复位信号;
所述控制单元用于基于读取到的第一配置信息,并发地控制所述多个IP核中的至少两个IP核的目标信号的开启和/或关闭,其中,所述第一配置信息用于指示所述至少两个IP核;
所述第一配置信息占用寄存器的至少一个特定存储比特,所述控制单元用于基于多个预设控制模式与预设编码信息之间的映射关系以及所述至少一个特定存储比特的当前编码信息,确定所述至少两个IP核,其中,所述多个预设控制模式对应不同的IP核组合。
2.根据权利要求1所述的芯片系统,其特征在于,所述控制单元还用于:
基于读取到的第二配置信息所配置的顺序和/或间隔,并发地控制所述至少两个IP核的目标信号的开启和/或关闭。
3.根据权利要求2所述的芯片系统,其特征在于,所述目标信号包括时钟信号的情况下,所述第一配置信息和第二配置信息存储在同一寄存器中;和/或
所述目标信号包括复位信号的情况下,所述第一配置信息和第二配置信息存储在不同的寄存器中。
4.根据权利要求2所述的芯片系统,其特征在于,所述芯片系统还包括中央处理单元,用于:
在一个指令周期内,将所述第一配置信息和所述第二配置信息写入寄存器;和/或
在第一指令周期内,将所述第一配置信息写入第一寄存器,以及在第二指令周期内,将所述第二配置信息写入第二寄存器。
5.根据权利要求1所述的芯片系统,其特征在于,所述控制电路包括:
多个开关单元,所述多个开关单元中每个开关单元的使能端分别电连接所述控制单元以及所述多个IP核中的一个IP核;
所述控制单元用于:控制所述多个开关单元中至少一个开关单元的开关状态,以控制对应的IP核的时钟信号的开启和/或关闭。
6.根据权利要求1所述的芯片系统,其特征在于,所述控制单元与所述多个IP核中的至少一个IP核电连接,并用于向所述至少一个IP核传输复位信号;和/或
所述控制单元与所述多个IP核中的至少一个IP核的时钟开关单元电连接,并用于向所述至少一个IP核的时钟开关单元发送时钟使能信号,以控制所述至少一个IP核的时钟信号的传输电路的导通。
7.根据权利要求1所述的芯片系统,其特征在于,所述控制单元用于:
将所述多个IP核中的第一IP核的状态控制信号作为所述第一IP核的时钟使能信号。
8.根据权利要求1所述的芯片系统,其特征在于,所述控制单元用于:
基于所述多个IP核中的第二IP核的时钟状态,控制第三IP核的时钟信号,其中,所述第二IP核和所述第三IP核之间具有主从关系。
9.根据权利要求1所述的芯片系统,其特征在于,所述控制单元用于:
基于多个IP核中至少两个第四IP核中每个第四IP核的投票信息,控制第五IP核的时钟信号,其中,所述至少两个第四IP核为所述第五IP核的使用者,所述投票信息用于指示所述第五IP核的时钟信号的开启或关闭。
10.根据权利要求1至9中任一项所述的芯片系统,其特征在于,所述控制单元用于:
在作为第五IP核的时钟使用者的多个第四IP核中每个第四IP核的时钟信号关闭的情况下,关闭所述第五IP核的时钟信号;和/或
在所述多个第四IP核中的任一第四IP核的时钟信号开启的情况下,使得所述第五IP核的时钟信号处于开启状态。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011045791.1A CN114281751B (zh) | 2020-09-28 | 2020-09-28 | 芯片系统 |
PCT/CN2021/120529 WO2022063255A1 (zh) | 2020-09-28 | 2021-09-26 | 芯片系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011045791.1A CN114281751B (zh) | 2020-09-28 | 2020-09-28 | 芯片系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114281751A CN114281751A (zh) | 2022-04-05 |
CN114281751B true CN114281751B (zh) | 2024-01-02 |
Family
ID=80844976
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011045791.1A Active CN114281751B (zh) | 2020-09-28 | 2020-09-28 | 芯片系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114281751B (zh) |
WO (1) | WO2022063255A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115292054B (zh) * | 2022-10-08 | 2022-12-06 | 湖北芯擎科技有限公司 | 数据处理方法、装置、系统级芯片及存储介质 |
CN116881185A (zh) * | 2023-06-14 | 2023-10-13 | 珠海妙存科技有限公司 | Jtag接口信号切换方法、系统、设备、装置与介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007011203A1 (en) * | 2005-07-22 | 2007-01-25 | Stichting Astron | Scalable control interface for large-scale signal processing systems. |
CN101788644A (zh) * | 2009-12-30 | 2010-07-28 | 北京龙芯中科技术服务中心有限公司 | 具有多个同构ip核的片上系统芯片测试装置和方法 |
CN101936234A (zh) * | 2010-07-22 | 2011-01-05 | 中国船舶重工集团公司第七一一研究所 | 集成多种发动机控制ip核的控制单元 |
CN102629192A (zh) * | 2012-04-20 | 2012-08-08 | 西安电子科技大学 | 用于片上多核并发多线程处理器的指令包及其操作方法 |
CN102820885A (zh) * | 2012-07-13 | 2012-12-12 | 电子科技大学 | 一种时钟恢复控制器 |
CN206162380U (zh) * | 2016-10-20 | 2017-05-10 | 南方电网科学研究院有限责任公司 | 异构多核处理器功耗控制装置和异构多核处理器系统 |
CN110291588A (zh) * | 2017-02-13 | 2019-09-27 | 高通股份有限公司 | 用于安全关键汽车用例的具有存储的测试模式的现场多核自测试控制器 |
CN111427686A (zh) * | 2020-03-23 | 2020-07-17 | 贵阳块数据城市建设有限公司 | 一种处理器多线程并发方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140101500A1 (en) * | 2012-10-05 | 2014-04-10 | Lsi Corporation | Circuits and methods for functional testing of integrated circuit chips |
CN104409099B (zh) * | 2014-12-15 | 2017-12-29 | 成都傅立叶电子科技有限公司 | 基于FPGA的高速eMMC阵列控制器 |
US20190050020A1 (en) * | 2017-08-10 | 2019-02-14 | Qualcomm Incorporated | Clock Signal Staggering with Clock Frequency Adjustment |
CN111123083B (zh) * | 2019-12-06 | 2022-04-29 | 国家电网有限公司 | 一种针对fpga pll ip核的测试系统及方法 |
-
2020
- 2020-09-28 CN CN202011045791.1A patent/CN114281751B/zh active Active
-
2021
- 2021-09-26 WO PCT/CN2021/120529 patent/WO2022063255A1/zh active Application Filing
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2007011203A1 (en) * | 2005-07-22 | 2007-01-25 | Stichting Astron | Scalable control interface for large-scale signal processing systems. |
CN101788644A (zh) * | 2009-12-30 | 2010-07-28 | 北京龙芯中科技术服务中心有限公司 | 具有多个同构ip核的片上系统芯片测试装置和方法 |
CN101936234A (zh) * | 2010-07-22 | 2011-01-05 | 中国船舶重工集团公司第七一一研究所 | 集成多种发动机控制ip核的控制单元 |
CN102629192A (zh) * | 2012-04-20 | 2012-08-08 | 西安电子科技大学 | 用于片上多核并发多线程处理器的指令包及其操作方法 |
CN102820885A (zh) * | 2012-07-13 | 2012-12-12 | 电子科技大学 | 一种时钟恢复控制器 |
CN206162380U (zh) * | 2016-10-20 | 2017-05-10 | 南方电网科学研究院有限责任公司 | 异构多核处理器功耗控制装置和异构多核处理器系统 |
CN110291588A (zh) * | 2017-02-13 | 2019-09-27 | 高通股份有限公司 | 用于安全关键汽车用例的具有存储的测试模式的现场多核自测试控制器 |
CN111427686A (zh) * | 2020-03-23 | 2020-07-17 | 贵阳块数据城市建设有限公司 | 一种处理器多线程并发方法 |
Non-Patent Citations (1)
Title |
---|
USB2.0设备接口IP核的OPB接口技术研究和实现;杨娟;李晓潮;郭东辉;;中国集成电路(第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2022063255A1 (zh) | 2022-03-31 |
CN114281751A (zh) | 2022-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109564556B (zh) | 具有条纹和读取/写入事务管理的存储器控制器仲裁器 | |
US4112490A (en) | Data transfer control apparatus and method | |
EP0720094B1 (en) | Circuit for reassigning the power-on processor in a multiprocessing system | |
US5960458A (en) | Shared memory system | |
US7007108B2 (en) | System method for use of hardware semaphores for resource release notification wherein messages comprises read-modify-write operation and address | |
EP1239374B1 (en) | Shared program memory for use in multicore DSP devices | |
US5495569A (en) | Circuit for ensuring that a local interrupt controller in a microprocessor is powered up active | |
US8531893B2 (en) | Semiconductor device and data processor | |
EP0186006A2 (en) | Multiprocessor system | |
CN114281751B (zh) | 芯片系统 | |
CN110457243B (zh) | 一种可扩展多输出中断控制器 | |
CN102449612B (zh) | 数据空间仲裁器 | |
KR100633773B1 (ko) | 버스 시스템 및 버스 중재 방법 | |
TW201638771A (zh) | 具有多個獨立微控制器之微控制器裝置 | |
CN114691594B (zh) | 一种基于非对称双核mcu设计的芯片架构及其实现方法 | |
US20070038795A1 (en) | Asynchronous bus interface and processing method thereof | |
CN114780248A (zh) | 资源访问方法、装置、计算机设备及存储介质 | |
CN116225995B (zh) | 一种总线系统及芯片 | |
KR100630693B1 (ko) | 소비 전력을 절감시키는 버스 중재 시스템 및 방법 | |
CN112506851B (zh) | 一种解决多核访问冲突的soc芯片架构构建方法 | |
CN100476767C (zh) | 主机与从属设备之间的连接方法、装置、计算机系统 | |
CN113886104A (zh) | 多核芯片及其通信方法 | |
CN214751393U (zh) | 微控制器和计算系统 | |
JP2007052685A (ja) | マイクロコントローラ | |
CN118210750B (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 | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40062797 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |