CN115982067A - 总线控制装置、方法以及工控处理芯片和工业控制系统 - Google Patents
总线控制装置、方法以及工控处理芯片和工业控制系统 Download PDFInfo
- Publication number
- CN115982067A CN115982067A CN202310277130.9A CN202310277130A CN115982067A CN 115982067 A CN115982067 A CN 115982067A CN 202310277130 A CN202310277130 A CN 202310277130A CN 115982067 A CN115982067 A CN 115982067A
- Authority
- CN
- China
- Prior art keywords
- bus
- control
- industrial
- control information
- information
- 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.)
- Pending
Links
Images
Classifications
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Multi Processors (AREA)
Abstract
本发明公开了一种总线控制装置、方法以及工控处理芯片和工业控制系统,总线控制装置包括:N个总线控制器,对应N种通信总线设置,每个总线控制器用以通过对应的通信总线连接至对应的外部设备,其中,N为大于1的整数;输入输出控制寄存器堆,分别与N个总线控制器连接,具有N个存储条目,N个存储条目与N个总线控制器一一对应,每个存储条目用于存储对应总线控制器所连接外部设备的控制信息和状态信息,以供工业处理器访问。本发明在总线控制装置中设置一个输入输出控制寄存器堆以供工业处理器直接访问外部设备的信息,这样工业处理器不需要多次经过AXI/AHBA总线和APB总线,提高了访问的实时性和执行效率。
Description
技术领域
本发明涉及工业控制技术领域,尤其涉及一种总线控制装置、方法以及工控处理芯片和工业控制系统。
背景技术
目前,工业控制处理器(以下简称CPU)一般需要通过I2C(Inter-IntegratedCircuit,集成电路总线)总线控制器频繁访问外部设备来获取外部设备数据,然后对数据进行计算和分析处理之后,提取特定的信息,根据信息的结果去控制GPIO(General-purpose Input/Output,通用型输入输出)控制器执行CPU的控制命令。而GPIO总线控制器和I2C总线控制器都是独立地挂在CPU总线上的中低速接口,CPU需要先通过AXI/AHBA总线访问APB总线,然后再通过APB总线访问I2C接口,同理GPIO也是一样的数据流程,这样分别操作I2C总线控制器和GPIO总线控制器才能得到数据,运算和执行控制命令,数据链路传输延时非常大,不利于工业控制处理器的强实时性应用场景。
并且,I2C总线的速率要远远小于CPU的速率,需要采用“停-等”的方法即当CPU需要传输数据时先发起请求,停下等待I2C总线的数据是否准备好,然后再进行传输,极大地增加了访问期间的等待延迟。在强实时性场景中,外部设备数据的需求和控制信号的需求都是十分关键的,较长数据链路传输延时、数据访问时的等待延迟和控制的延迟会使得工业控制响应速率慢,效率降低,严重的影响生产效率。
发明内容
本发明旨在至少在一定程度上解决相关技术中的技术问题之一。为此,本发明的目的在于提出一种总线控制装置、方法以及工控处理芯片和工业控制系统,总线控制装置中设置一个输入输出控制寄存器堆以供工业处理器直接访问外部设备的信息,这样工业处理器不需要多次经过AXI/AHBA总线和APB总线,提高了访问的实时性和执行效率。
为达到上述目的,本发明第一方面实施例提出一种总线控制装置,所述装置包括:N个总线控制器,对应N种通信总线设置,每个总线控制器用以通过对应的通信总线连接至对应的外部设备,其中,N为大于1的整数;输入输出控制寄存器堆,分别与N个所述总线控制器连接,具有N个存储条目,N个所述存储条目与N个所述总线控制器一一对应,每个所述存储条目用于存储对应总线控制器所连接外部设备的控制信息和状态信息,以供工业处理器访问。
另外,根据本发明上述实施例提出的总线控制装置还可以具有如下附加的技术特征:
根据本发明的一个实施例,所述输入输出控制寄存器堆具体用于:在接收到所述工业处理器发送的访问请求时,将第一目标存储条目中存储的控制信息和状态信息反馈给所述工业处理器,以使所述工业处理器根据所述状态信息和所述控制信息生成新的控制信息,以控制目标外部设备,其中,所述第一目标存储条目根据所述访问请求确定,所述目标外部设备根据所述新的控制信息确定。
根据本发明的一个实施例,所述输入输出控制寄存器堆具体还用于:在接收到工业处理器发送的所述新的控制信息时,更新第二目标存储条目中存储的控制信息,并将所述新的控制信息通过对应的总线控制器发送至所述目标外部设备,以使所述目标外部设备执行所述新的控制信息,以及通过对应的总线控制器接收所述目标外部设备反馈的状态信息,更新所述第二目标存储条目中存储的状态信息,其中,所述第二目标存储条目为与所述目标外部设备对应的存储条目。
根据本发明的一个实施例,所述输入输出控制寄存器堆还包括:计算部件,分别与N个所述存储条目和N个所述总线控制器连接,并用以连接至所述工业处理器,用于将接收到的控制信息和状态信息存储至对应的存储条目,并将接收到的控制信息通过对应的总线控制器发送至对应的外部设备,以及根据接收到的访问请求,从对应存储条目中获取控制信息和状态信息反馈给所述工业处理器。
根据本发明的一个实施例,所述访问请求中携带有指示所述第一目标存储条目的地址信息,所述新的控制信息中携带有指示所述第二目标存储条目的地址信息。
根据本发明的一个实施例,N的取值为2。
根据本发明的一个实施例,两个所述总线控制器分别为集成电路I2C总线控制器和通用型输入输出GPIO总线控制器。
根据本发明的一个实施例,所述计算部件还用于:对所述I2C总线控制器反馈的状态信息进行实时运算,并根据运算结果生成GPIO控制信息,以及根据所述GPIO控制信息更新所述GPIO总线控制器对应的存储条目中存储的控制信息,并通过所述GPIO总线控制器将所述GPIO控制信息发送至对应的外部设备,以使该外部设备执行所述GPIO控制信息。
为达到上述目的,本发明第二方面实施例提出了一种工控处理芯片,包括根据上述的总线控制装置。
为达到上述目的,本发明第三方面实施例提出了一种工业控制系统,所述系统包括:工业处理器、N个外部设备,以及上述的工控处理芯片。
另外,根据本发明上述实施例提出的工业控制系统还可以具有如下附加的技术特征:
根据本发明的一个实施例,所述工业处理器包括逻辑运算单元,当所述处理器需要访问外设数据时,所述逻辑运算单元用于:向所述工控处理芯片发送访问请求,并接收所述工控处理芯片针对所述访问请求反馈的外部设备的控制信息和状态信息;根据所述状态信息和所述控制信息生成新的控制信息,并将所述新的控制信息发送至所述工控处理芯片,以通过所述工控处理芯片控制目标外部设备,其中,所述目标外部设备根据所述新的控制信息确定。
根据本发明的一个实施例,所述工业处理器内置有多级缓存和内存,当所述处理器需要访问非外设数据时,所述逻辑运算单元还用于:向第i级缓存发送访问请求;若所述第i级缓存命中,则接收所述第i级缓存返回的请求数据,否则将i加1,并判断i的取值是否达到M;若否,则返回所述向第i级缓存发送访问请求的步骤;若是,则向所述内存发送访问请求,并接收所述内存返回的请求数据。
根据本发明的一个实施例,所述工业处理器依次经过AXI/AHBA总线、APB总线与所述工控处理芯片连接。
为达到上述目的,本发明第四方面实施例提出了一种总线控制方法,该方法用于上述实施例的总线控制装置中的输入输出控制寄存器堆,所述方法包括:在接收到所述工业处理器发送的访问请求时,根据所述访问请求确定第一目标存储条目;将第一目标存储条目中存储的控制信息和状态信息反馈给所述工业处理器,以使所述工业处理器根据所述状态信息和所述控制信息生成新的控制信息,以控制目标外部设备,其中,所述目标外部设备根据所述新的控制信息确定。
另外,根据本发明上述实施例提出的总线控制方法还可以具有如下附加的技术特征:
根据本发明的一个实施例,所述方法还包括:在接收到工业处理器发送的所述新的控制信息时,更新第二目标存储条目中存储的控制信息,其中,所述第二目标存储条目为与所述目标外部设备对应的存储条目;将所述新的控制信息通过对应的总线控制器发送至所述目标外部设备,以使所述目标外部设备执行所述新的控制信息;通过对应的总线控制器接收所述目标外部设备反馈的状态信息,并更新所述第二目标存储条目中存储的状态信息。
本发明实施例的总线控制装置、方法以及工控处理芯片和工业控制系统,将总线控制器合并在一起,设计了一个输入输出控制寄存器堆,与N个总线控制器相连接,用来存储外部设备的状态信息和控制信息,同时在总线控制装置中设计了计算部件即算术逻辑单元(ALU),与输入输出控制寄存器堆连接起来,控制外部设备的状态并获取外部设备信息,输入输出控制寄存器堆通过总线控制器将控制信息传递给外部设备,并将外部设备信息保存在输入输出控制寄存器堆的对应条目当中,这样工业处理器可以独立地获取外部设备数据和发送控制指令,不需要经过多次经过AXI/AHBA总线和APB总线。提高了访问的实时性和执行效率。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
图1是本发明一个实施例的总线控制装置的结构示意图;
图2是本发明一个实施例的输入输出控制寄存器堆的结构示意图;
图3是本发明一个实施例的工业控制器和总线控制器的连接示意图;
图4是本发明一个具体实施例的总线控制装置的结构示意图;
图5是本发明一个实施例的工控处理芯片的示意图;
图6是本发明一个实施例的工业控制器系统的结构示意图;
图7是本发明一个实施例的工业处理器访问数据的流程图;
图8是本发明一个实施例的总线控制方法的流程图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
下面参考附图描述本发明实施例的总线控制装置、方法以及工控处理芯片和工业控制系统进行详细说明。
图1是本发明一个实施例的总线控制装置的结构示意图。
在本发明的一个实施例中,如图1所示,总线控制装置100包括:N个总线控制器20,对应N种通信总线设置,每个总线控制器用以通过对应的通信总线连接至对应的外部设备30,其中,N为大于1的整数;输入输出控制寄存器堆10,分别与N个总线控制器20连接,具有N个存储条目,N个存储条目与N个总线控制器一一对应,每个存储条目用于存储对应总线控制器所连接外部设备30的控制信息和状态信息,以供工业处理器50访问。
具体的,传统的工业处理器50(即图3、图4中的CPU)通过总线控制器访问外部设备30的控制信息和状态信息,但总线控制器20是独立地挂在CPU的总线上的中低速接口,CPU需要先通过AXI/AHBA总线访问APB总线,然后再通过APB总线访问总线控制器,这样使得工业控制响应速率慢,效率降低,严重地影响了生产效率。本发明在总线控制装置100设置了一个输入输出控制寄存器堆10,与N个总线控制器20相连,用来存储外部设备30的状态信息和控制信息。工业处理器50访问外部设备30的控制信息和状态信息时,可直接访问输入输出控制寄存器堆10,提高了访问的实时性和执行效率。
进一步具体地,总线控制装置100中有N个总线控制器20,N个总线控制器20,每个总线控制器20用以通过对应的通信总线连接至对应外部设备30,总线控制器20根据接收到的相关控制信息控制对应外部设备30,外部设备30将自身状态信息返回给对应的总线控制器20,总线控制器20还与输入输出控制寄存器堆10相连,输入输出控制寄存器堆10存储总线控制器20传输的外部设备30更新后的状态信息。输入输出控制寄存器堆10有N个存储条目ADDR,每个存储条目与N个总线控制器20一一对应,外部设备30的控制信息和状态信息储存在输入输出控制寄存器堆10的存储条目中。
在本发明的一个实施例中,输入输出控制寄存器堆10具体用于:在接收到工业处理器50发送的访问请求时,将第一目标存储条目中存储的控制信息和状态信息反馈给工业处理器50,以使工业处理器50根据状态信息和控制信息生成新的控制信息,以控制目标外部设备30,其中,第一目标存储条目根据访问请求确定,目标外部设备30根据新的控制信息确定。
具体地,当工业处理器50访问外部设备30的信息时,工业处理器50向输入输出控制寄存器堆10发送的访问请求,输入输出控制寄存器堆10根据访问请求确定输入输出控制寄存器堆10所需访问的第一目标存储条目,并将第一目标存储条目存储的控制信息和状态信息反馈给工业处理器50,工业处理器50根据第一目标存储条目存储的状态信息和控制信息生成新的控制信息,工业处理器50将新的控制信息传输给输入输出控制寄存器堆10,输入输出控制寄存器堆10根据新的控制信息去控制对应的外部设备30。
在本发明的一个实施例中,输入输出控制寄存器堆10具体还用于:在接收到工业处理器50发送的新的控制信息时,更新第二目标存储条目中存储的控制信息,并将新的控制信息通过对应的总线控制器20发送至目标外部设备30,以使目标外部设备30执行新的控制信息,以及通过对应的总线控制器接收所述目标外部设备30反馈的状态信息,更新第二目标存储条目中存储的状态信息,其中,第二目标存储条目为与目标外部设备30对应的存储条目。
具体地,工业控制器50将新的控制信息传输给输入输出控制寄存器堆10之后,输入输出控制寄存器堆10根据新的控制信息确定第二目标存储条目中存储的控制信息,第二目标存储条目为与目标外部设备30对应的存储条目,第二目标存储条目根据将新的控制信息通过对应的总线控制器20发送至目标外部设备30,目标外部设备30根据接收到的新的控制信息执行操作,并将操作后的状态信息返回给对应的总线控制器20,总线控制器20将目标外部设备30传输的状态信息反馈给第二目标存储条目,完成第二目标存储条目中存储的状态信息的更新。这样工业控制器50通过输入输出控制寄存器堆10直接访问外部设备30的状态信息和控制信息,没有通过多级缓存和内存的访问,有效地降低了访问外部设备30时的延迟时间。
在本发明的一个实施例中,访问请求中携带有指示第一目标存储条目的地址信息,新的控制信息中携带有指示第二目标存储条目的地址信息。
具体地,工业处理器50向输入输出控制寄存器堆10发送的访问请求中携带有指示第一目标存储条目的地址信息,输入输出控制寄存器堆10根据访问请求中携带有指示第一目标存储条目的地址信息确定第一目标存储条目,并将第一目标存储条目存储的控制信息和状态信息反馈给工业处理器50,工业控制器50生成新的控制信息,新的控制信息中携带有指示第二目标存储条目的地址信息,输入输出控制寄存器堆10根据新的控制信息确定示第二目标存储条目,第二目标存储条目将新的控制信息通过对应的总线控制器20发送至目标外部设备30,以控制目标外部设备30执行操作。
在本发明的一个实施例中,如图2所示,输入输出控制寄存器堆10还包括:计算部件40,分别与N个存储条目和N个总线控制器20连接,并用以连接至工业处理器50,用于将接收到的控制信息和状态信息存储至对应的存储条目,并将接收到的控制信息通过对应的总线控制器发送至对应的外部设备30,以及根据接收到的访问请求,从对应存储条目中获取控制信息和状态信息反馈给工业处理器50。
具体地,输入输出控制寄存器堆10还包括计算部件40,计算部件40与N个存储条目和N个总线控制器20连接,计算部件40通过实时输入输出控制寄存器堆10获取外部设备30的状态信息并对其进行控制。计算部件40还与工业处理器50相连,工业处理器50访问外部设备30的信息时,工业处理器50向输入输出控制寄存器堆10中的计算部件40发送的访问请求,计算部件40根据访问请求确定第一目标存储条目,并将第一目标存储条目存储的控制信息和状态信息反馈给工业处理器50。
进一步具体地,工业控制器50将新的控制信息传输给计算部件40,计算部件40将接收到的新的控制信息通过对应的总线控制器20发送至对应的外部设备30,外部设备30反馈状态信息,计算部件40用于将接收到的控制信息和状态信息存储至对应的存储条目。
需要说明的是,输入输出控制寄存器堆10在实地址空间中占用一段连续的地址空间,每个输入输出控制寄存器堆10中的存储条目为16字节,计算部件40可通过实地址直接访问输入输出控制寄存器堆10中的任意条目。每个存储条目对应于一个总线控制器20连接的外部设备30,每个存储条目的内部格式可由程序员自主定义。
在本发明的一个实施例中,N的取值为2。
在本发明的一个实施例中,两个总线控制器20分别为集成电路I2C总线控制器和通用型输入输出GPIO总线控制器。
举例说明,N的取值为2,输入输出控制寄存器堆10与两个总线控制器20连接,两个总线控制器20分别为集成电路I2C总线控制器(以下简称I2C总线控制器)和通用型输入输出GPIO总线控制器(以下简称GPIO总线控制器),下述以I2C总线控制器和GPIO总线控制器为例进行说明。GPIO总线控制器用于将输入输出控制寄存器堆10中的相关控制信息通过GPIO发送给外部设备30,并获取外部设备30的状态保存至输入输出控制寄存器堆10中的对应条目中。I2C总线控制器用于将输入输出控制寄存器堆10中的相关控制信息通过I2C发送给外部设备30,并将获取到的外部设备30的状态信息保存至输入输出控制寄存器堆10中的对应条目中。
如图3所示,本发明设计将I2C总线控制器和GPIO总线控制器结合起来,在GPIO-I2C总线控制器中还设有输入输出控制寄存器堆10,用于存储与GPIO和I2C总线连接的外部设备30的状态信息和控制信息,工业处理器50访问外部设备30的信息时,通过GPIO-I2C总线控制器获取外部设备30的控制信息和状态信息。这样工业处理器50不需要多次经过AXI/AHBA总线和APB总线,提高了访问的实时性和执行效率。在工业控制领域的实时操作场景中,经常会出现同时使用I2C总线控制器接口进行数据采集器,对数据运算后通过GPIO去控制外部设备30的情况,如图3所示,工业处理器50通过AXI/AHBA总线经过APB总线实时地向I2C接口发出读取数据,I2C接口采集外部设备30的数据,采集到外部设备30的数据反馈给工业处理器50。
在本发明的一个实施例中,计算部件40还用于:对I2C总线控制器反馈的状态信息进行实时运算,并根据运算结果生成GPIO控制信息,以及根据GPIO控制信息更新GPIO总线控制器对应的存储条目中存储的控制信息,并通过GPIO总线控制器将GPIO控制信息发送至对应的外部设备30,以使该外部设备30执行GPIO控制信息。
具体地,如图4所示,工业处理器50向I2C总线控制器发出读取数据请求,I2C总线控制器(即图4中的数据接收/发送状态机)采集对应的外部设备1(I2C摄像头)数据和GPIO总线控制器(即图4中的GPIO控制器)采集对应外部设备2的状态信息存入输入输出控制寄存器堆10(条目为ADDR0-N)中,输入输出控制寄存器堆将数据直接送给算术逻辑单元ALU(即计算部件40)进行运算,然后再根据运算结果再更新GPIO的控制信息,并转发给GPIO总线控制器连接的外部设备2(GPIO控制的生产设备),外部设备2获取控制信息后更新自己的状态,并将自身状态返回给GPIO总线控制器,GPIO总线控制器再将外部设备2的状态信息通过APB接口转换-数据缓存器-数据接收/发送状态机-ADDR0-N传递给输入输出控制寄存器堆10的对应条目中,即为输入输出控制寄存器堆10的实时更新过程,形成了一个实时的控制闭环。
进一步具体地,I2C控制器同样首先获取输入输出控制寄存器堆10的状态信息并转发给I2C连接的外部设备1,外部设备1获取控制信息后更新自己的状态,并将自身状态返回给I2C控制器,I2C控制器将外部设备1状态传递给输入输出控制寄存器堆10的对应条目中,完成了输入输出控制寄存器堆10的实时更新过程。此过程的所有状态CPU可以实时获取,而不需要重复发出指令,大大节省了数据链路的传播时延、访问期间的等待延迟和控制GPIO执行命令的延迟问题,提高了访问的实时性和执行效率。
需要说明的是,图4、图5中DMA(Direct Memory Access,直接存储器访问)、EFC(Embedded Flash Controller,内嵌闪存控制器)、FLASH(闪存)和国密算法SM4,可根据工业处理器50的处理需要设置。图5中,两数据去抖器的设置是为了保证所采集外部设备30数据的准确性;数据缓存器可在写入或读取数据时对数据进行缓存,以加快写入或读取速度;信息判决和控制单元可辅助算术逻辑单元工作,两单元可集成设置;数据计数器可对I2C总线控制器采集的数据进行统计,如统计采集图像的帧数,当达到一定数值时,可通过I2C总线控制器触发算术逻辑单元进行数据处理;时钟波特率发生器用以设定I2C的数据传输率。
本发明实施例的总线控制装置100,将I2C总线控制器和GPIO总线控制器合并在一起,设计了一个输入输出控制寄存器堆10,与GPIO和I2C总线控制器相连接,用来存储外部设备30的状态信息和控制信息,同时在总线控制装置100中设计了计算部件40即算术逻辑单元(ALU),与输入输出控制寄存器堆10连接起来,控制外部设备30的状态并获取外部设备信息,输入输出控制寄存器堆10通过GPIO总线控制器和I2C总线控制器将控制信息传递给外部设备30,并将外部设备30信息保存在输入输出控制寄存器堆10的对应条目当中,这样工业处理器50可以独立地获取外部设备数据和发送控制指令,不需要经过多次经过AXI/AHBA总线和APB总线。提高了访问的实时性和执行效率。
本发明还提出了一种工控处理芯片。
在本发明的一个实施例中,如图5所示,工控处理芯片200包括上述的总线控制装置100。
本发明还提出了一种工业控制系统。
在本发明的一个实施例中,如图6所示,工业控制系统300包括:工业处理器50、N个外部设备30,以及上述的工控处理芯片200。
在本发明的一个实施例中,如图7所示,工业处理器50包括逻辑运算单元ALU,当处理器需要访问外设数据时,逻辑运算单元ALU用于:向工控处理芯片200发送访问请求,并接收工控处理芯片200针对访问请求反馈的外部设备的控制信息和状态信息;根据状态信息和控制信息生成新的控制信息,并将新的控制信息发送至工控处理芯片200,以通过工控处理芯片200控制目标外部设备,其中,目标外部设备根据新的控制信息确定。
具体地,工业处理器50包括逻辑运算单元ALU,当处理器CPU访问外设数据时,ALU向工控处理芯片200发送访问请求,工控处理芯片200根据访问请求从实地址中找到对应的存储条目,从中读取对应外设的控制信息和状态信息,工控处理芯片200将对应外设的控制信息和状态信息传输给ALU,计算得到新的控制信息,并传递给输入输出控制寄存器堆10(也可称为RTIRF)并更新对应条目的控制信息。RTIRF接收到新的控制信息后将该控制信息传递给对应的控制器如GPIO总线控制器,该GPIO总线控制器将控制信息通过对应的传输方式如GPIO或者I2C总线的方式传递给该控制器连接的外设,外设根据接收到的控制信息执行操作,然后将操作后的状态信息返回给对应的控制器,该控制器将状态信息返回给RTIRF,RTIRF接收到新的状态信息后更新条目中对应的状态信息,ALU通过RTIRF直接访问外设的状态信息和控制信息,没有通过多级缓存和内存的访问,有效地降低了访问外设时的延迟时间。
在本发明的一个实施例中,工业处理器50依次经过AXI/AHBA总线、APB总线与工控处理芯片200连接。
具体地,如图3所示,工业处理器50的访问请求通过AXI/AHBA总线,再通过APB总线与工控处理芯片200连接,工控处理芯片200根据访问请求从实地址中找到对应的存储条目,从中读取对应外设的控制信息和状态信息,工控处理芯片200将对应外设的控制信息和状态信息传输给工业处理器50。
在本发明的一个实施例中,如图7所示,工业处理器50内置有多级缓存和内存,当处理器需要访问非外设数据时,逻辑运算单元ALU还用于:向第i级缓存发送访问请求;若第i级缓存命中,则接收第i级缓存返回的请求数据,否则将i加1,并判断i的取值是否达到M;若否,则返回向第i级缓存发送访问请求的步骤;若是,则向内存发送访问请求,并接收内存返回的请求数据。
具体地,工业处理器50内置有多级缓存和内存,当工业处理器50需要访问非外设数据时,ALU逐级向缓存进行访问,例如,如图7所示,ALU向第一级缓存L1 cache发送访问请求,并判断L1 cache是否命中,若L1 cache命中,则返回L1 cache缓存返回的请求数据;否则向L2 cache发送访问请求,若L2 cache命中,则返回L1 cache最终返回到ALU,否则向L3cache发送访问请求,若L3 cache命中,则返回L2 cache最终返回到ALU。ALU逐级向缓存进行访问的过程中,还判断访问的缓存数量是否达到M,若达到M,则向内存DRAM发送访问请求,从内存中返回请求命令最终到ALU。
图8是本发明实施例的总线控制方法的流程图。
在该实施例中,总线控制方法用于上述实施例的总线控制装置100中的输入输出控制寄存器堆10。参见图8,方法包括:
S81,在接收到工业处理器发送的访问请求时,根据访问请求确定第一目标存储条目。
S82,将第一目标存储条目中存储的控制信息和状态信息反馈给工业处理器,以使工业处理器根据状态信息和控制信息生成新的控制信息,以控制目标外部设备,其中,目标外部设备根据新的控制信息确定。
在一些实施例中,方法还包括:在接收到工业处理器发送的新的控制信息时,更新第二目标存储条目中存储的控制信息,其中,第二目标存储条目为与目标外部设备对应的存储条目;将新的控制信息通过对应的总线控制器发送至目标外部设备,以使目标外部设备执行新的控制信息;通过对应的总线控制器接收目标外部设备反馈的状态信息,并更新第二目标存储条目中存储的状态信息。
需要说明的是,本发明实施例的总线控制方法的其他具体实施方式参见本发明上述实施例的总线控制装置100的具体实施方式。
本发明实施例的总线控制装置、方法以及工控处理芯片和工业控制系统,提出了一种新型的面向强实时性应用场景的GPIO/I2C控制器结构,将I2C总线控制器和GPIO总线控制器合并在一起,设计了一个输入输出控制寄存器堆,与GPIO和I2C总线控制器相连接,用来存储外设的状态信息和控制信息。还设计了计算部件即算术逻辑单元,与输入输出控制寄存器堆连接起来,控制外设的状态并获取外设信息,实时输入输出控制寄存器堆通过GPIO总线控制器和I2C总线控制(I2C Controller)将控制信息传递给外设并将外设信息保存在实时输入输出控制寄存器堆的对应条目当中,这样工业控制处理器可以独立地获取外设数据和发送控制指令,不需要经过多次经过AXI/AHBA总线和APB总线。输入输出控制寄存器堆收集I2C接口的实时数据和GPIO的实时状态,并实时更新和反馈给工业处理器(CPU),而不需要CPU重复发来指令,提高了访问的实时性和执行效率。
需要说明的是,在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
在本发明的描述中,需要理解的是,术语“中心”、“纵向”、“横向”、“长度”、“宽度”、“厚度”、“上”、“下”、“前”、“后”、“左”、“右”、“竖直”、“水平”、“顶”、“底”“内”、“外”、“顺时针”、“逆时针”、“轴向”、“径向”、“周向”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”、“固定”等术语应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
在本发明中,除非另有明确的规定和限定,第一特征在第二特征“上”或“下”可以是第一和第二特征直接接触,或第一和第二特征通过中间媒介间接接触。而且,第一特征在第二特征“之上”、“上方”和“上面”可是第一特征在第二特征正上方或斜上方,或仅仅表示第一特征水平高度高于第二特征。第一特征在第二特征“之下”、“下方”和“下面”可以是第一特征在第二特征正下方或斜下方,或仅仅表示第一特征水平高度小于第二特征。
尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。
Claims (15)
1.一种总线控制装置,其特征在于,所述装置包括:
N个总线控制器,对应N种通信总线设置,每个总线控制器用以通过对应的通信总线连接至对应的外部设备,其中,N为大于1的整数;
输入输出控制寄存器堆,分别与N个所述总线控制器连接,具有N个存储条目,N个所述存储条目与N个所述总线控制器一一对应,每个所述存储条目用于存储对应总线控制器所连接外部设备的控制信息和状态信息,以供工业处理器访问。
2.根据权利要求1所述总线控制装置,其特征在于,所述输入输出控制寄存器堆具体用于:
在接收到所述工业处理器发送的访问请求时,将第一目标存储条目中存储的控制信息和状态信息反馈给所述工业处理器,以使所述工业处理器根据所述状态信息和所述控制信息生成新的控制信息,以控制目标外部设备,其中,所述第一目标存储条目根据所述访问请求确定,所述目标外部设备根据所述新的控制信息确定。
3.根据权利要求2所述总线控制装置,其特征在于,所述输入输出控制寄存器堆具体还用于:
在接收到工业处理器发送的所述新的控制信息时,更新第二目标存储条目中存储的控制信息,并将所述新的控制信息通过对应的总线控制器发送至所述目标外部设备,以使所述目标外部设备执行所述新的控制信息,以及通过对应的总线控制器接收所述目标外部设备反馈的状态信息,更新所述第二目标存储条目中存储的状态信息,其中,所述第二目标存储条目为与所述目标外部设备对应的存储条目。
4.根据权利要求3所述的总线控制装置,其特征在于,所述输入输出控制寄存器堆还包括:
计算部件,分别与N个所述存储条目和N个所述总线控制器连接,并用以连接至所述工业处理器,用于将接收到的控制信息和状态信息存储至对应的存储条目,并将接收到的控制信息通过对应的总线控制器发送至对应的外部设备,以及根据接收到的访问请求,从对应存储条目中获取控制信息和状态信息反馈给所述工业处理器。
5.根据权利要求3所述的总线控制装置,其特征在于,所述访问请求中携带有指示所述第一目标存储条目的地址信息,所述新的控制信息中携带有指示所述第二目标存储条目的地址信息。
6.根据权利要求4所述的总线控制装置,其特征在于,N的取值为2。
7.根据权利要求6所述的总线控制装置,其特征在于,两个所述总线控制器分别为集成电路I2C总线控制器和通用型输入输出GPIO总线控制器。
8.根据权利要求7所述的总线控制装置,其特征在于,所述计算部件还用于:
对所述I2C总线控制器反馈的状态信息进行实时运算,并根据运算结果生成GPIO控制信息,以及根据所述GPIO控制信息更新所述GPIO总线控制器对应的存储条目中存储的控制信息,并通过所述GPIO总线控制器将所述GPIO控制信息发送至对应的外部设备,以使该外部设备执行所述GPIO控制信息。
9.一种工控处理芯片,其特征在于,包括根据权利要求1-8中任一项所述的总线控制装置。
10.一种工业控制系统,其特征在于,所述系统包括:工业处理器、N个外部设备,以及根据权利要求9所述的工控处理芯片。
11.根据权利要求10所述的工业控制系统,其特征在于,所述工业处理器包括逻辑运算单元,当所述处理器需要访问外设数据时,所述逻辑运算单元用于:
向所述工控处理芯片发送访问请求,并接收所述工控处理芯片针对所述访问请求反馈的外部设备的控制信息和状态信息;
根据所述状态信息和所述控制信息生成新的控制信息,并将所述新的控制信息发送至所述工控处理芯片,以通过所述工控处理芯片控制目标外部设备,其中,所述目标外部设备根据所述新的控制信息确定。
12.根据权利要求11所述的工业控制系统,其特征在于,所述工业处理器内置有多级缓存和内存,当所述处理器需要访问非外设数据时,所述逻辑运算单元还用于:
向第i级缓存发送访问请求;
若所述第i级缓存命中,则接收所述第i级缓存返回的请求数据,否则将i加1,并判断i的取值是否达到M;
若否,则返回所述向第i级缓存发送访问请求的步骤;
若是,则向所述内存发送访问请求,并接收所述内存返回的请求数据。
13.根据权利要求10所述的工业控制系统,其特征在于,所述工业处理器依次经过AXI/AHBA总线、APB总线与所述工控处理芯片连接。
14.一种总线控制方法,其特征在于,用于如权利要求1-8中任一项所述的总线控制装置中的输入输出控制寄存器堆,所述方法包括:
在接收到所述工业处理器发送的访问请求时,根据所述访问请求确定第一目标存储条目;
将第一目标存储条目中存储的控制信息和状态信息反馈给所述工业处理器,以使所述工业处理器根据所述状态信息和所述控制信息生成新的控制信息,以控制目标外部设备,其中,所述目标外部设备根据所述新的控制信息确定。
15.根据权利要求14所述总线控制方法,其特征在于,所述方法还包括:
在接收到工业处理器发送的所述新的控制信息时,更新第二目标存储条目中存储的控制信息,其中,所述第二目标存储条目为与所述目标外部设备对应的存储条目;
将所述新的控制信息通过对应的总线控制器发送至所述目标外部设备,以使所述目标外部设备执行所述新的控制信息;
通过对应的总线控制器接收所述目标外部设备反馈的状态信息,并更新所述第二目标存储条目中存储的状态信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310277130.9A CN115982067A (zh) | 2023-03-21 | 2023-03-21 | 总线控制装置、方法以及工控处理芯片和工业控制系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310277130.9A CN115982067A (zh) | 2023-03-21 | 2023-03-21 | 总线控制装置、方法以及工控处理芯片和工业控制系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115982067A true CN115982067A (zh) | 2023-04-18 |
Family
ID=85970563
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310277130.9A Pending CN115982067A (zh) | 2023-03-21 | 2023-03-21 | 总线控制装置、方法以及工控处理芯片和工业控制系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115982067A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117591380A (zh) * | 2024-01-18 | 2024-02-23 | 芯动微电子科技(武汉)有限公司 | 一种总线性能监测的方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1763734A (zh) * | 2005-11-10 | 2006-04-26 | 苏州国芯科技有限公司 | 一种基于amba总线的8051系列微处理器应用系统 |
US20130227235A1 (en) * | 2012-02-28 | 2013-08-29 | Standard Microsystems Corporation | Extensible hardware device configuration using memory |
CN107153412A (zh) * | 2017-06-16 | 2017-09-12 | 北方电子研究院安徽有限公司 | 一种具有发送fifo的can总线控制器电路 |
CN113849433A (zh) * | 2021-09-14 | 2021-12-28 | 深圳市昂科技术有限公司 | 一种总线控制器的执行方法、装置、总线控制器、计算机设备和存储介质 |
CN115098412A (zh) * | 2022-07-27 | 2022-09-23 | 北京智芯微电子科技有限公司 | 外设访问控制器、数据访问装置及对应方法、介质和芯片 |
CN115348363A (zh) * | 2022-08-15 | 2022-11-15 | 西安万像电子科技有限公司 | 一种基于国密算法的加/解密芯片、方法、设备和介质 |
-
2023
- 2023-03-21 CN CN202310277130.9A patent/CN115982067A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1763734A (zh) * | 2005-11-10 | 2006-04-26 | 苏州国芯科技有限公司 | 一种基于amba总线的8051系列微处理器应用系统 |
US20130227235A1 (en) * | 2012-02-28 | 2013-08-29 | Standard Microsystems Corporation | Extensible hardware device configuration using memory |
CN107153412A (zh) * | 2017-06-16 | 2017-09-12 | 北方电子研究院安徽有限公司 | 一种具有发送fifo的can总线控制器电路 |
CN113849433A (zh) * | 2021-09-14 | 2021-12-28 | 深圳市昂科技术有限公司 | 一种总线控制器的执行方法、装置、总线控制器、计算机设备和存储介质 |
CN115098412A (zh) * | 2022-07-27 | 2022-09-23 | 北京智芯微电子科技有限公司 | 外设访问控制器、数据访问装置及对应方法、介质和芯片 |
CN115348363A (zh) * | 2022-08-15 | 2022-11-15 | 西安万像电子科技有限公司 | 一种基于国密算法的加/解密芯片、方法、设备和介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117591380A (zh) * | 2024-01-18 | 2024-02-23 | 芯动微电子科技(武汉)有限公司 | 一种总线性能监测的方法和装置 |
CN117591380B (zh) * | 2024-01-18 | 2024-05-03 | 芯动微电子科技(武汉)有限公司 | 一种总线性能监测的方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12061562B2 (en) | Computer memory expansion device and method of operation | |
EP0434250B1 (en) | Apparatus and method for reducing interference in two-level cache memories | |
US11379381B2 (en) | Main memory device having heterogeneous memories, computer system including the same, and data management method thereof | |
CN114020655A (zh) | 一种内存扩展方法、装置、设备及存储介质 | |
US8055805B2 (en) | Opportunistic improvement of MMIO request handling based on target reporting of space requirements | |
CN107291629B (zh) | 一种用于访问内存的方法和装置 | |
US7783840B2 (en) | Method and apparatus for controlling memory system | |
CN106569736A (zh) | NVMe协议处理器及其处理方法 | |
US6606688B1 (en) | Cache control method and cache controller | |
CN115982067A (zh) | 总线控制装置、方法以及工控处理芯片和工业控制系统 | |
CN102662885B (zh) | 对称式多核处理器维护二级缓存一致性的装置及其方法 | |
US20140244920A1 (en) | Scheme to escalate requests with address conflicts | |
US6341334B1 (en) | Bridge method, bus bridge, and multiprocessor system | |
US20110022802A1 (en) | Controlling data accesses to hierarchical data stores to retain access order | |
US7945754B2 (en) | Multiprocessor system, processor, and cache control method | |
US5455925A (en) | Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory | |
CN116601613A (zh) | 利用分组元数据的数据放置 | |
CN108234147B (zh) | Gpdsp中基于主机计数的dma广播数据传输方法 | |
US8255632B2 (en) | Pre-fetch control apparatus | |
CN116126517A (zh) | 访问请求处理方法、多核处理器系统、芯片及电子设备 | |
CN114281570A (zh) | 嵌入式控制电路、控制方法、装置及芯片 | |
CN112559434B (zh) | 一种多核处理器及核间数据转发方法 | |
CN113238869A (zh) | 一种计算加速方法、设备和系统及存储介质 | |
US20070180195A1 (en) | Method and apparatus for allowing uninterrupted address translations while performing address translation cache invalidates and other cache operations | |
CN107526686B (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 |