CN112860622B - 一种处理系统以及一种片上系统 - Google Patents

一种处理系统以及一种片上系统 Download PDF

Info

Publication number
CN112860622B
CN112860622B CN202110182144.3A CN202110182144A CN112860622B CN 112860622 B CN112860622 B CN 112860622B CN 202110182144 A CN202110182144 A CN 202110182144A CN 112860622 B CN112860622 B CN 112860622B
Authority
CN
China
Prior art keywords
command
control unit
subsystem
chip
scheduler
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
Application number
CN202110182144.3A
Other languages
English (en)
Other versions
CN112860622A (zh
Inventor
王金富
王凛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202110182144.3A priority Critical patent/CN112860622B/zh
Publication of CN112860622A publication Critical patent/CN112860622A/zh
Application granted granted Critical
Publication of CN112860622B publication Critical patent/CN112860622B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种片上系统,包括:N个子系统,N为正整数,与N个子系统均连接的根控制单元;根控制单元包括:命令生成器,用于在接收到任一子系统发送的状态信号之后,按照命令生成器中的寄存器配置,输出对应于状态信号的各条命令至命令缓冲器的命令队列中;命令缓冲器;命令发送状态器,用于从命令缓冲器的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统的枝控制单元中以进行该命令的执行。应用本申请的方案,有效地提高了片上系统的效率,且提高了任务耗时的稳定性。本申请还提供了一种处理系统,具有相应技术效果。

Description

一种处理系统以及一种片上系统
技术领域
本发明涉及计算机技术领域,特别是涉及一种处理系统以及一种片上系统。
背景技术
目前的SoC(System on Chip,片上系统)的开发已经呈现出设计功能越来越复杂、设计规模越来越大,芯片制造工艺尺寸越来越小的趋势,对芯片的高性能,低功耗,多应用场景等的需求也越来越高。高性能的要求意味着芯片的内部运行频率越来越高,低功耗的要求意味着芯片设计时要尽可能多地采用低功耗设计方法,例如把芯片逻辑划分成其供电电源可以单独打开或关断的电源域Power Domain、采用门控时钟单元Clock Gating Cell控制时钟开关、采用多个供电电源且它们的值动态可调等等。多应用场景则是根据芯片的每一种应用情况,定义相应的时钟开关状态和运行频率、相应的电源域开关状态以及每个供电电源值等,以使得在满足应用场景需求的前提下功耗和性能最优化。在SoC中,实现上述功能的电路称为SCU(System Control Unit,系统控制单元),通常包括三部分:CCU(Clock Control Unit,时钟控制单元)、RCU(Reset Control Unit,复位控制单元)以及PCU(Power Control Unit,电源控制单元),且有时需要各个部分协同工作来完成某种功能。
图1为目前的SoC系统的控制单元的实现方法,各个子系统的结构相同,仅示出了子系统1的结构。以子系统1的系统控制单元为例,工作流程如下:1、子系统1完成某项工作任务,向中断处理单元发送位宽为M的中断或状态信号[M-1:0]。2、中断处理单元按照优先级给CPU发送中断信号。3、CPU响应中断请求,获得子系统1的当前状态并确定其下一步行动方案。4、CPU通过“AHB/AXI从接口2”端口向片上互联模块发送控制命令,该命令经过片上互联模块的“总线仲裁器1”端口、片上互联模块的“AHB主接口1”端口,传输到子系统1系统控制单元的AHB接口。最后,子系统1系统控制单元的AHB接口在处理控制命令后,通过寄存器读写信号去实现对时钟控制单元的时钟频率、复位控制单元的逻辑复位或电源控制单元的电源域、门控时钟和供电电源值等的设置。
图1的SoC系统由硬件部分和软件部分组成。在上述过程中,CPU需要一定的时间来执行软件程序从而对中断信号进行判断和处理,得出子系统的下一步行动方案。并且,片上互联模块控制命令传输的时间不确定。此外,由于片上互联模块与多个CPU连接,可能同时接收多个“AHB/AXI从接口”的访问,这样上述过程中“AHB/AXI从接口2”到“AHB主接口1”的命令传输时间较长且具有很大的不确定性。基于以上原因,使得目前的SoC系统存在效率不高,且执行任务耗时不稳定的问题。
综上所述,如何有效地提高片上系统的效率,提高任务耗时的稳定性,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种处理系统以及一种片上系统,以有效地提高片上系统的效率,提高任务耗时的稳定性。
为解决上述技术问题,本发明提供如下技术方案:
一种片上系统,包括:
N个子系统,N为正整数,与N个子系统均连接的根控制单元;
所述根控制单元包括:
命令生成器,用于在接收到任一子系统发送的状态信号之后,按照所述命令生成器中的寄存器配置,输出对应于所述状态信号的各条命令至命令缓冲器的命令队列中;
所述命令缓冲器;
命令发送状态器,用于从所述命令缓冲器的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统的枝控制单元中以进行该命令的执行。
优选的,所述命令生成器生成的命令中至少携带了枝控制单元的编号以及枝控制单元执行命令的字段信息;每个子系统中均具有1个枝控制单元,且编号互不相同;
所述命令发送状态器具体用于:从所述命令缓冲器的命令队列中顺序读取命令,并且读取了任意一条命令之后,根据读取的该条命令中的枝控制单元的编号,将该条命令发送至与该条命令的编号相同的子系统的枝控制单元中以进行该命令的执行。
优选的,所述根控制单元中还包括:
第一配置接口,所述第一配置接口与所述命令生成器中的寄存器以及所述命令缓冲器连接,用于接收第一配置调整指令以对所述命令生成器中的寄存器的配置进行调整,并且用于接收调试命令以将所述调试命令输出至所述命令缓冲器的命令队列中。
优选的,所述第一配置接口为第一AHB配置接口。
优选的,每个子系统中均包括1个枝控制单元和多个叶控制单元;
每个子系统中的枝控制单元中均包括:
命令接收器,用于判断接收的命令是否为状态查询命令,如果是,则读取所述命令接收器中的状态值并且向所述根控制单元反馈;如果否,则将接收的命令发送至命令解析调度器中;
所述命令解析调度器,用于当接收到命令时,按照所述命令解析调度器中的寄存器配置,将接收的命令进行拆分,并且按照执行时序依次将拆分之后的命令发送至对应的命令执行器中;
各个所述命令执行器,每个命令执行器均用于在接收到所述命令解析调度器发送的命令时,控制与该命令执行器连接的叶控制单元执行接收到的命令,并且在该命令成功执行之后,向所述命令解析调度器返回表示该命令成功执行的提示信息。
优选的,所述命令解析调度器,还用于:
按照执行时序依次将拆分之后的命令发送至对应的命令执行器中,且拆分之后的各个命令均成功执行之后,向命令接收器返回第一信息;
所述命令接收器,还用于:将接收的命令发送至命令解析调度器之后,在接收到所述第一信息之前,设置状态标识为非空闲状态,在接收到所述第一信息之后,未接收到所述根控制单元新发送的命令之前,设置状态标识为空闲状态;
所述命令发送状态器,还用于,在进行任意一条命令的发送时,判断对应于该条命令的子系统的枝控制单元是否为空闲状态,如果是,则进行该命令的发送,否则暂停该命令的发送。
优选的,所述枝控制单元中还包括:
第二配置接口,所述第二配置接口与所述命令解析调度器中的寄存器连接,用于接收第二配置调整指令以对所述命令解析调度器中的寄存器的配置进行调整。
优选的,所述第二配置接口为第二AHB配置接口。
优选的,每个子系统中均至少包括:
用于进行时钟控制的时钟叶控制单元;
用于进行复位控制的复位叶控制单元;
用于进行电源控制的电源叶控制单元。
优选的,所述命令生成器为包括M个命令生成电路的命令生成器,每个命令生成电路与对应的子系统连接,以使所述命令生成器在同时接收到M个子系统发送的状态信号时,同时进行M个状态信号的处理,M为正整数。
一种处理系统,包括上述任一项所述的片上系统。
应用本发明实施例所提供的技术方案,基于全硬件的方式实现片上系统。具体的,本申请不需要CPU参与,而是设置了与N个子系统均连接的根控制单元,根控制单元中的命令生成器用来生成命令,具体的,命令生成器在接收到任一子系统发送的状态信号之后,是按照命令生成器中的寄存器配置,输出对应于状态信号的各条命令至命令缓冲器的命令队列中,可以看出,本申请是直接通过硬件实现命令的生成,提高了效率,降低了耗时,且生成命令的耗时较为稳定。命令发送状态器则可以从命令缓冲器的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统的枝控制单元中以进行该命令的执行。可以看出,本申请的方案中不需要传统的片上互联模块,直接由命令发送状态器将读取的该条命令发送至对应于该条命令的子系统的枝控制单元中,因此,也不会出现传统方案中片上互联模块这一环节导致的传输时间较长且具有很大的不确定性的问题。综上所述,本申请的方案有效地提高了片上系统的效率,且提高了任务耗时的稳定性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为目前的SoC系统的控制单元的实现示意图;
图2为本发明中一种片上系统的结构示意图;
图3为本发明一种具体实施方式中的片上系统的结构示意图。
具体实施方式
本发明的核心是提供一种片上系统,有效地提高了片上系统的效率,且提高了任务耗时的稳定性。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图2,图2为本发明中一种片上系统的结构示意图,该片上系统可以包括:
N个子系统200,N为正整数,与N个子系统200均连接的根控制单元100;
根控制单元100包括:
命令生成器110,用于在接收到任一子系统200发送的状态信号之后,按照命令生成器110中的寄存器配置,输出对应于状态信号的各条命令至命令缓冲器120的命令队列中;
命令缓冲器120;
命令发送状态器130,用于从命令缓冲器120的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统200的枝控制单元210中以进行该命令的执行。
子系统200的具体数量以及每个子系统200的具体功能可以根据实际需要进行设定和调整,根控制单元100与N个子系统200均连接,可以接收到各个子系统200发送的状态信号,并且需要强调的是,中断信号的功能可以被状态信号涵盖,即中断信号可以作为本申请实施方式中描述的状态信号中的一种类型。
命令生成器110在接收到任一子系统200发送的状态信号之后,会按照命令生成器110中的寄存器配置,输出对应于状态信号的各条命令至命令缓冲器120的命令队列中。可以理解的是,状态信号的内容不同,生成的命令不同。
还需要说明的是,命令生成器110接收到某一个子系统200发送的状态信号时,可能是生成1条命令,也可能生成多条命令,例如当接收到子系统1发送的状态信号A时,生成1条命令A,该命令A需要由子系统1执行,例如当接收到子系统1发送的状态信号B时,生成命令B和命令C,分别由子系统1和子系统4执行。此外,在实际应用中,当根据接收的状态信号生成一条对应的命令时,该命令通常是由发送该状态信号的子系统200执行,当生成对应的多条命令时,通常是由包括发送状态信号的子系统200在内的多个子系统200分别执行一条命令。
考虑到命令生成器110会不断地输出命令,因此,本申请由命令缓冲器120进行命令的缓冲。
命令发送状态器130则可以从命令缓冲器120的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统200的枝控制单元210中以进行该命令的执行。
可以理解的是,针对任意一条命令,该条命令中应当携带有执行该命令的子系统200的信息,以使得命令发送状态器130能够知道应当将该命令发送至哪一个子系统200执行。
例如在本发明的一种具体实施方式中,命令生成器110生成的命令中至少携带了枝控制单元的编号以及枝控制单元执行命令的字段信息;每个子系统200中均具有1个枝控制单元210,且编号互不相同;
命令发送状态器130具体用于:从命令缓冲器120的命令队列中顺序读取命令,并且读取了任意一条命令之后,根据读取的该条命令中的枝控制单元210的编号,将该条命令发送至与该条命令的编号相同的子系统200的枝控制单元210中以进行该命令的执行。
该种实施方式中,命令的格式定义为:
Figure BDA0002942414440000071
目标枝控制单元即为该命令所对应的枝控制单元,目标枝控制单元的编号表示的是该命令应当被发送至具有该编号的枝控制单元执行。此外需要说明的是,每一个枝控制单元执行命令的字段信息的定义,可以根据每个子系统200的具体功能不同而不同。
例如对于子系统1而言,目标枝控制单元执行命令的字段信息为0:查询子系统1枝控制单元的状态。目标枝控制单元执行命令的字段信息为1:子系统1进入关电状态。目标枝控制单元执行命令的字段信息为2:子系统1进入睡眠状态。
而对于子系统2而言,例如目标枝控制单元执行命令的字段信息为0:子系统2的时钟降低频率到工作模式2。目标枝控制单元执行命令的字段信息为1:子系统2时钟升高频率到工作模式1。目标枝控制单元执行命令的字段信息为2:子系统2的主要功能电路复位。
进一步的,可参阅图3,在本发明的一种具体实施方式中,根控制单元100中还可以包括:
第一配置接口,第一配置接口与命令生成器110中的寄存器以及命令缓冲器120连接,用于接收第一配置调整指令以对命令生成器110中的寄存器的配置进行调整,并且用于接收调试命令以将调试命令输出至命令缓冲器120的命令队列中。
第一配置接口与命令生成器110中的寄存器连接,从而使得工作人员可以通过第一配置调整指令对命令生成器110中的寄存器的配置进行调整。与此同时,第一配置接口与命令缓冲器120连接,使得工作人员可以直接将调试命令发送到命令缓冲器120,便于进行片上系统的调试。
第一配置接口的具体类型可以根据实际需要进行设定,例如本申请的图3的实施方式中,第一配置接口具体选取为第一AHB配置接口。
每个子系统200的具体构成可以根据实际需要进行设定和调整,在本发明的一种具体实施方式中,每个子系统200中均包括1个枝控制单元210和多个叶控制单元,即每个子系统200的系统控制单元均是由1个枝控制单元210和多个叶控制单元构成。此外需要指出的是,不同的子系统200的叶控制单元的数量以及功能可以不同。本申请的该种实施方式中,每个子系统200中的枝控制单元210以及叶控制单元均是由全硬件实现,保障了片上系统的效率以及任务延时时间的稳定性。
可参阅图3,每个子系统200中的枝控制单元210中均包括:
命令接收器,用于判断接收的命令是否为状态查询命令,如果是,则读取命令接收器中的状态值并且向根控制单元100反馈;如果否,则将接收的命令发送至命令解析调度器中;
命令解析调度器,用于当接收到命令时,按照命令解析调度器中的寄存器配置,将接收的命令进行拆分,并且按照执行时序依次将拆分之后的命令发送至对应的命令执行器中;
各个命令执行器,每个命令执行器均用于在接收到命令解析调度器发送的命令时,控制与该命令执行器连接的叶控制单元执行接收到的命令,并且在该命令成功执行之后,向命令解析调度器返回表示该命令成功执行的提示信息。
图3中仅详细示出了子系统1的系统控制单元的具体结构,包括1个枝控制单元210和x个叶控制单元。
该种实施方式中,当命令接收器判断出接收的命令为状态查询命令时,不需要进行命令的下发,而是可以直接读取命令接收器中的状态值并且向根控制单元100反馈,有利于提高状态查询命令的执行效率。
如果不是状态查询命令,则命令接收器需要将接收的命令发送至与自身连接的命令解析调度器中。
因为不同的命令的复杂度不同,需要参与执行的叶控制单元的数量可能不同,因此本申请通过命令解析调度器按照命令解析调度器中的寄存器配置,将接收的命令进行拆分,从而细化到可以对每一个叶控制单元进行操作的程度
操作叶控制单元则是由命令执行器来实现,每个命令执行器均可以在接收到命令解析调度器发送的命令时,控制与该命令执行器连接的叶控制单元执行接收到的命令,并且在该命令成功执行之后,向命令解析调度器返回表示该命令成功执行的提示信息。即命令执行器将接收到的命令解析调度器发送的命令,转化成与叶控制单元的控制/应答信号。
例如一种具体场景中,如前文的描述,目标枝控制单元210执行命令的字段信息为1:子系统1进入关电状态。则需要操作的叶控制单元的顺序为:
①命令解析调度器利用图3中的命令执行器2给图3中的叶控制单元2(复位控制)发送控制信号,使得子系统1被复位;
②叶控制单元2(复位控制)通过命令执行器2给命令解析调度器发送完成信号;
③命令解析调度器利用图3中的命令执行器x给图3中的叶控制单元x(电源控制)发送控制信号,从而关闭子系统1中的相应逻辑电路的供电电源;
④叶控制单元x(电源控制)通过命令执行器x给命令解析调度器发送完成信号;
⑤命令解析调度器利用图3中的命令执行器1给图3中的叶控制单元1(时钟控制)发送控制信号,关闭子系统1时钟;
⑥叶控制单元1(时钟控制)利用命令执行器1给命令解析调度器发送完成信号;
⑦命令解析调度器给命令接收器返回全部命令执行完成信号。
在本发明的一种具体实施方式中,每个子系统中均至少包括:
用于进行时钟控制的时钟叶控制单元;
用于进行复位控制的复位叶控制单元;
用于进行电源控制的电源叶控制单元。
如前文的描述,不同的子系统200的叶控制单元的数量以及功能可以不同。在该种实施方式中,考虑到通常的子系统200均具有时钟控制,电源控制以及复位控制的要求,因此,在每个子系统200中均设置了时钟叶控制单元,复位叶控制单元以及电源叶控制单元,分别实现对于该子系统200的时钟控制,复位控制以及电源控制。
时钟控制通常可以包括时钟频率的切换控制以及时钟的开关控制,复位控制则可以对子系统200的全局或者部分电路进行复位,电源控制则是对子系统200中的电源域,门控时钟部件,供电电源的电压等项目进行控制。
在本发明的一种具体实施方式中,命令解析调度器,还可以用于:
按照执行时序依次将拆分之后的命令发送至对应的命令执行器中,且拆分之后的各个命令均成功执行之后,向命令接收器返回第一信息;
命令接收器,还用于:将接收的命令发送至命令解析调度器之后,在接收到第一信息之前,设置状态标识为非空闲状态,在接收到第一信息之后,未接收到根控制单元100新发送的命令之前,设置状态标识为空闲状态;
命令发送状态器130,还用于,在进行任意一条命令的发送时,判断对应于该条命令的子系统200的枝控制单元210是否为空闲状态,如果是,则进行该命令的发送,否则暂停该命令的发送。
该种实施方式中,当命令解析调度器正在执行命令时,命令接收器可以设置该子系统200的枝控制单元210的状态标识为非空闲状态,相应的,命令解析调度器将命令执行完毕时,命令接收器可以设置该子系统200的枝控制单元210的状态标识为空闲状态,从而使得命令发送状态器130在子系统200的枝控制单元210处于空闲状态时,才会进行命令的下发,避免出现异常情况。
在本发明的一种具体实施方式中,枝控制单元210中还包括:
第二配置接口,第二配置接口与命令解析调度器中的寄存器连接,用于接收第二配置调整指令以对命令解析调度器中的寄存器的配置进行调整。
通过第二配置接口,可以对命令解析调度器中的寄存器进行配置的调整,例如上文中,对于目标枝控制单元执行命令的字段信息为0:子系统2的时钟降低频率到工作模式2,具体降低多少赫兹的频率,可以由命令解析调度器中的寄存器进行确定。
第二配置接口的具体类型也可以根据需要进行设定和调整,例如通常可以为第二AHB配置接口。
此外,根控制单元100与各个枝控制单元210通常可以通过总线连接,例如采用串行总线,或者自定义的本地总线。
在本发明的一种具体实施方式中,命令生成器110为包括M个命令生成电路的命令生成器110,每个命令生成电路与对应的子系统200连接,以使命令生成器110在同时接收到M个子系统200发送的状态信号时,同时进行M个状态信号的处理,M为正整数。
该种实施方式中,考虑到命令生成器110可能同时接收到多个子系统200发送的状态信号,如果按照顺序处理,由于本申请是基于硬件实现,因此处理效率很高,但是,在一些场合中,当子系统200的数量特别多,或者发送状态信号较为频繁时,为了进一步的提高效率,该种实施方式的命令生成器110由M个命令生成电路构成,从而可以最多并行处理M个子系统200发送的状态信号,因此进一步地提高了片上系统的效率。M的具体取值可以根据实际需要进行设定。
应用本发明实施例所提供的技术方案,基于全硬件的方式实现片上系统。具体的,本申请不需要CPU参与,而是设置了与N个子系统200均连接的根控制单元100,根控制单元100中的命令生成器110用来生成命令,具体的,命令生成器110在接收到任一子系统200发送的状态信号之后,是按照命令生成器110中的寄存器配置,输出对应于状态信号的各条命令至命令缓冲器120的命令队列中,可以看出,本申请是直接通过硬件实现命令的生成,提高了效率,降低了耗时,且生成命令的耗时较为稳定。命令发送状态器130则可以从命令缓冲器120的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统200的枝控制单元210中以进行该命令的执行。可以看出,本申请的方案中不需要传统的片上互联模块,直接由命令发送状态器130将读取的该条命令发送至对应于该条命令的子系统200的枝控制单元210中,因此,也不会出现传统方案中片上互联模块这一环节导致的传输时间较长且具有很大的不确定性的问题。综上所述,本申请的方案有效地提高了片上系统的效率,且提高了任务耗时的稳定性。
相应于上面的片上系统的实施例,本发明实施例还提供了一种处理系统,可以包括上述任一实施例中的片上系统,该处理系统可以是进行视频数据处理的处理系统,可以是服务器、计算机中的处理系统等等,可与上文相互对应参照,此处不再重复说明。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (10)

1.一种片上系统,其特征在于,包括:
N个子系统,N为正整数,与N个子系统均连接的根控制单元;
所述根控制单元包括:
命令生成器,用于在接收到任一子系统发送的状态信号之后,按照所述命令生成器中的寄存器配置,输出对应于所述状态信号的各条命令至命令缓冲器的命令队列中;
所述命令缓冲器;
命令发送状态器,用于从所述命令缓冲器的命令队列中顺序读取命令,并且读取了任意一条命令之后,将读取的该条命令发送至对应于该条命令的子系统的枝控制单元中以进行该命令的执行;
每个所述子系统中均包括1个枝控制单元和多个叶控制单元;
每个子系统中的所述枝控制单元中均包括:
命令接收器,用于判断接收的命令是否为状态查询命令,如果是,则读取所述命令接收器中的状态值并且向所述根控制单元反馈;如果否,则将接收的命令发送至命令解析调度器中;
所述命令解析调度器,用于当接收到命令时,按照所述命令解析调度器中的寄存器配置,将接收的命令进行拆分,并且按照执行时序依次将拆分之后的命令发送至对应的命令执行器中;
各个所述命令执行器,每个命令执行器均用于在接收到所述命令解析调度器发送的命令时,控制与该命令执行器连接的叶控制单元执行接收到的命令,并且在该命令成功执行之后,向所述命令解析调度器返回表示该命令成功执行的提示信息。
2.根据权利要求1所述的片上系统,其特征在于,所述命令生成器生成的命令中至少携带了枝控制单元的编号以及枝控制单元执行命令的字段信息;每个子系统中均具有1个枝控制单元,且编号互不相同;
所述命令发送状态器具体用于:从所述命令缓冲器的命令队列中顺序读取命令,并且读取了任意一条命令之后,根据读取的该条命令中的枝控制单元的编号,将该条命令发送至与该条命令的编号相同的子系统的枝控制单元中以进行该命令的执行。
3.根据权利要求1所述的片上系统,其特征在于,所述根控制单元中还包括:
第一配置接口,所述第一配置接口与所述命令生成器中的寄存器以及所述命令缓冲器连接,用于接收第一配置调整指令以对所述命令生成器中的寄存器的配置进行调整,并且用于接收调试命令以将所述调试命令输出至所述命令缓冲器的命令队列中。
4.根据权利要求3所述的片上系统,其特征在于,所述第一配置接口为第一AHB配置接口。
5.根据权利要求1所述的片上系统,其特征在于,所述命令解析调度器,还用于:
按照执行时序依次将拆分之后的命令发送至对应的命令执行器中,且拆分之后的各个命令均成功执行之后,向命令接收器返回第一信息;
所述命令接收器,还用于:将接收的命令发送至命令解析调度器之后,在接收到所述第一信息之前,设置状态标识为非空闲状态,在接收到所述第一信息之后,未接收到所述根控制单元新发送的命令之前,设置状态标识为空闲状态;
所述命令发送状态器,还用于,在进行任意一条命令的发送时,判断对应于该条命令的子系统的枝控制单元是否为空闲状态,如果是,则进行该命令的发送,否则暂停该命令的发送。
6.根据权利要求1所述的片上系统,其特征在于,所述枝控制单元中还包括:
第二配置接口,所述第二配置接口与所述命令解析调度器中的寄存器连接,用于接收第二配置调整指令以对所述命令解析调度器中的寄存器的配置进行调整。
7.根据权利要求6所述的片上系统,其特征在于,所述第二配置接口为第二AHB配置接口。
8.根据权利要求1所述的片上系统,其特征在于,每个子系统中均至少包括:
用于进行时钟控制的时钟叶控制单元;
用于进行复位控制的复位叶控制单元;
用于进行电源控制的电源叶控制单元。
9.根据权利要求1至8任一项所述的片上系统,其特征在于,所述命令生成器为包括M个命令生成电路的命令生成器,每个命令生成电路与对应的子系统连接,以使所述命令生成器在同时接收到M个子系统发送的状态信号时,同时进行M个状态信号的处理,M为正整数。
10.一种处理系统,其特征在于,包括如权利要求1至9任一项所述的片上系统。
CN202110182144.3A 2021-02-08 2021-02-08 一种处理系统以及一种片上系统 Active CN112860622B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110182144.3A CN112860622B (zh) 2021-02-08 2021-02-08 一种处理系统以及一种片上系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110182144.3A CN112860622B (zh) 2021-02-08 2021-02-08 一种处理系统以及一种片上系统

Publications (2)

Publication Number Publication Date
CN112860622A CN112860622A (zh) 2021-05-28
CN112860622B true CN112860622B (zh) 2022-11-04

Family

ID=75989575

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110182144.3A Active CN112860622B (zh) 2021-02-08 2021-02-08 一种处理系统以及一种片上系统

Country Status (1)

Country Link
CN (1) CN112860622B (zh)

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7219173B2 (en) * 2001-07-31 2007-05-15 Micronas Usa, Inc. System for video processing control and scheduling wherein commands are unaffected by signal interrupts and schedule commands are transmitted at precise time
US7174401B2 (en) * 2002-02-28 2007-02-06 Lsi Logic Corporation Look ahead split release for a data bus
US7543119B2 (en) * 2005-02-10 2009-06-02 Richard Edward Hessel Vector processor
KR100694095B1 (ko) * 2005-03-05 2007-03-12 삼성전자주식회사 버스 연결 방법 및 장치
US7373444B2 (en) * 2005-04-15 2008-05-13 Kabushiki Kaisha Toshiba Systems and methods for manipulating entries in a command buffer using tag information
GB2430053B (en) * 2005-09-08 2010-09-22 Advanced Risc Mach Ltd Accessing external memory from an integrated circuit
US7613841B2 (en) * 2006-06-07 2009-11-03 Kabushiki Kaisha Toshiba Systems and methods for reducing data storage in devices using multi-phase data transactions
KR20100078193A (ko) * 2008-12-30 2010-07-08 주식회사 동부하이텍 슬레이브 및 그와 마스터 간의 통신 방법
US8266369B2 (en) * 2009-12-18 2012-09-11 Nxp B.V. Flash memory interface
KR101855399B1 (ko) * 2011-03-24 2018-05-09 삼성전자주식회사 데이터 트래픽을 개선한 SoC 및 이의 동작 방법
KR101861769B1 (ko) * 2011-11-24 2018-05-29 삼성전자주식회사 비동기식 브릿지 및 이의 동작 방법, 및 이를 포함하는 SoC
US9946680B2 (en) * 2012-10-05 2018-04-17 Analog Devices, Inc. Peripheral device diagnostics and control over a two-wire communication bus
CN103810074B (zh) * 2012-11-14 2017-12-29 华为技术有限公司 一种片上系统芯片及相应的监控方法
CN103235715B (zh) * 2013-03-27 2016-08-03 青岛中星微电子有限公司 一种片上系统SoC命令处理的方法、装置及芯片
CN104750638B (zh) * 2013-12-30 2018-10-19 北京信息科技大学 一种接口适配器及与Wishbone兼容的裁剪方法
US10719469B2 (en) * 2017-02-28 2020-07-21 Intel Corporation Inband messaging method for integrated type-C universal serial bus detection using enhanced serial peripheral interconnect
CN109947605A (zh) * 2017-12-21 2019-06-28 北京比特大陆科技有限公司 故障诊断方法
KR102414051B1 (ko) * 2018-11-21 2022-06-27 주식회사 엘지에너지솔루션 무선 제어 시스템 및 그것을 포함하는 배터리팩

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
一种公平而有效的动态轮询方案;任秀丽等;《东北大学学报(自然科学版)》;20030830(第08期);全文 *

Also Published As

Publication number Publication date
CN112860622A (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
KR101035832B1 (ko) 집적 종단점 장치와, 집적 pci 익스프레스 종단점 장치및 pci 익스프레스 통신 시스템
JPH0690699B2 (ja) 割込インタフェース回路
CN1570907B (zh) 多处理器系统
KR101056153B1 (ko) 배리어 동작들의 조건부 브로드캐스트를 위한 방법 및 장치
US7398378B2 (en) Allocating lower priority interrupt for processing to slave processor via master processor currently processing higher priority interrupt through special interrupt among processors
US20110314323A1 (en) Semiconductor device and data processor
US8990456B2 (en) Method and apparatus for memory write performance optimization in architectures with out-of-order read/request-for-ownership response
CN111901164A (zh) Ocp nic网卡的适配控制方法、装置、设备及系统
EP3933586A1 (en) Complex computing device, complex computing method, artificial intelligence chip and electronic apparatus
CN103377081A (zh) 嵌入式数控系统双核芯片和外设间中断机制的实现方法
CN110875867B (zh) 一种总线访问仲裁装置及方法
US20090177807A1 (en) Reset method for application specific integrated circuits (asic)
WO1994008291A9 (en) AUTOMATIC LOGICAL CPU ASSIGNMENT OF PHYSICAL CPUs
WO1994008291A1 (en) AUTOMATIC LOGICAL CPU ASSIGNMENT OF PHYSICAL CPUs
CN112860622B (zh) 一种处理系统以及一种片上系统
US6693914B1 (en) Arbitration mechanism for packet transmission
WO2021036421A1 (zh) 多核架构的同步信号产生电路、芯片和同步方法及装置
US6112272A (en) Non-invasive bus master back-off circuit and method for systems having a plurality of bus masters
CN112564924B (zh) 计算机扩展卡及区块链终端设备
US20030005185A1 (en) System and method for efficiently performing data transfer operations
CN108874166B (zh) 一种基于fpga和ps2协议的kvm控制器
US20060168314A1 (en) Intellectual property module for system-on-chip
JP2003099397A (ja) データ処理システム
Feng et al. A SoC architecture compatible with Cortex-M4
CN114021311A (zh) 一种基于rtx的异构并行半实物仿真装置和方法

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