一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

片上系统和事务处理的制作方法

2022-06-08 21:42:16 来源:中国专利 TAG:

片上系统和事务处理
1.相关申请的交叉引用
2.本技术要求于2020年12月7日提交的第2012752号法国申请的优先权,该申请通过引用完整地并入本文。
技术领域
3.本公开总体涉及片上系统,并且在特定实施例中涉及用于管理主设备和从设备之间的事务的方法。


背景技术:

4.芯片上系统(也称为片上系统)是嵌入在芯片上的完整系统,它可以包括例如一个或多个处理器、存储器、接口外围设备或执行复杂功能所必需的其他组件。
5.片上系统通常包括分层体系结构。特别地,片上系统包括被称为“主”设备和“从”设备的设备。主设备向从设备发出读或写访问请求。
6.例如,主设备是诸如处理器或直接存储器访问控制器(也被缩写为“dma”)的电子组件。
7.从设备可以是存储存储器或网络外围设备。片上系统还包括从设备可以用来操作的时钟。
8.主机和从机之间的互连通常由与一个或多个通信协议兼容的内部计算机总线处理。
9.特别地,高级微控制器总线体系结构(amba)协议族是已知的,它是当今广泛使用的通信标准,尤其是由片上系统使用的通信标准。
10.在协议族中,主设备和从设备之间的事务包括主设备对从设备的访问请求,然后是从设备对主设备的响应。
11.特别地,主设备被编程为在发出请求之后等待从设备的响应。只要主设备没有接收到来自从设备的响应,就可以暂停由主设备执行的代码。如果响应没有到来,用户别无选择,只能重新启动片上系统。
12.此外,片上系统可用于一些需要低功耗的应用。例如,嵌入在可用于物联网(iot)或移动电话中的对象中的片上系统可能需要低功耗。
13.降低片上系统功耗的已知解决方案是,当不使用从设备时,停用(即,关闭)从设备与其一起操作的片上系统的时钟。然后,通过在片上系统的时钟控制器的寄存器中输入每个时钟的状态,通过软件编程来控制时钟的停用和激活。此外,为了减少能量消耗,还可以关闭从设备,特别是通过重置从设备。
14.然而,对于这样的解决方案,主设备的编程错误可能导致阻塞主设备的风险。特别地,存在这样的风险,即主设备将被编程为在该从设备操作的时钟被停用或当从设备断电时向该从设备发出访问请求。然后,从设备不可能生成对主设备的请求的响应。然后主设备对代码的执行被阻止,并且不能再继续。然后用户必须重新启动片上系统。
15.因此,有利的是提供一种片上系统,该片上系统被配置为在主设备向从设备发出访问请求时,该从设备所操作的时钟被停用或当该从设备断电时避免阻塞主设备。


技术实现要素:

16.根据一个方面,提供了一种片上系统,包括主设备、从设备、时钟和时钟控制器。主设备被配置为向从设备发出访问请求。时钟被配置为对从设备的操作进行时钟控制。时钟控制器被配置为激活或停用时钟。片上系统可以可选地包括加电控制器,加电控制器被配置为使从设备加电或关断。该系统还可以包括控制系统,控制系统被配置为当主设备向从设备发出访问请求时检测时钟被停用和/或从设备被断电。主设备被配置为:当控制系统检测到时钟被停用时,激活时钟控制器中的时钟和/或当控制系统检测到从设备被断电时,激活加电控制器中的从设备的加电,然后向从设备发出新的访问请求。
17.优选地,片上系统包括几个从设备和多个时钟。然后每个从设备使用各自的时钟操作。
18.这样的片上系统允许在等待来自主设备的响应时,当主设备向时钟被停用和/或被断电的从设备发出访问请求时避免阻塞。实际上,这样的片上系统被配置为如果在该时钟被停用和/或在该从设备断电时发出对该从设备的访问请求,则激活从设备操作所用的时钟和/或使该从设备加电。然后,主设备被配置为向从设备发出新的访问请求。因此,即使由于在向从设备发出访问请求之前忘记激活时钟而造成主设备的编程错误,也可以产生来自从设备的正确响应。用户不必重新启动片上系统。
19.在有利的实施例中,控制系统包括:检测电路,被配置为在主设备向从设备发出访问请求时检测时钟是否被停用和/或检测从设备是否被断电;集电极电路,被配置为在该从设备操作的时钟被停用和/或从设备被断电时存储主设备已经向其发出访问请求的从设备。
20.当片上系统包括几个从设备时,控制系统可以包括与从设备一样多的检测电路。然后检测电路与每个从设备相关联。可选地,对于几个从设备有一个检测电路是可能的,特别是当这些从设备用相同的时钟进行时钟控制并且例如通过用相同的信号重置它们可以断电时。
21.在一个有利的实施例中,集电极电路被配置为当检测电路检测到时钟被停用时对主设备发出中断。
22.优选地,主设备被配置为在接收到由集电极电路发出的中断之后访问集电极电路,以便在该从设备操作的时钟被停用和/或当从设备断电时知道主设备对其发出访问请求的从设备。
23.有利地,主设备通过总线连接到从设备。
24.在一个有利的实施例中,检测电路被配置为接收来自主设备的访问请求,并且当该从设备操作的时钟被激活并且从设备被加电时,将这些访问请求发送给从设备以及将来自从设备的响应发送给主设备。这可以由检测电路来完成,而不会减慢用于事务的频率。
25.特别地,检测电路可以通过总线连接到主设备,并直接连接到从设备。
26.有利地,时钟控制器包括用于存储时钟的激活状态的寄存器和/或加电控制器包括用于存储从设备的加电状态的寄存器,
27.并且其中,主设备被配置为改变时钟控制器寄存器中的时钟激活状态和/或加电控制器中的从设备的加电状态。
28.优选地,检测电路被配置为从时钟控制器接收时钟激活状态和/或从加电控制器接收从设备的加电状态。
29.有利地,检测电路被配置为当它检测到在主设备向从设备发出访问请求时,时钟停用和/或从设备断电时,生成错误消息并将其发送到主设备。
30.根据另一个方面,提供了一种用于在片上系统中管理主设备和从设备之间的事务的方法,该方法包括:由主设备向从设备发出访问请求,从设备利用时钟进行操作,由控制系统检测存储在时钟控制器中的时钟的停用状态和/或存储在加电控制器中的从设备的断电状态,如果检测到时钟的停用状态,则由主设备激活时钟控制器中的时钟,和/或如果检测到从设备的断电状态,则由主设备激活加电控制器中的从设备的加电,然后由主设备向从设备发出新的访问请求。
附图说明
31.在检查实施方式和实施例的详细描述时,本公开的其他优点和特征将变得显而易见,这些实施方式和实施例绝不是限制性的,以及附图的详细描述,其中:
32.图1是实施例片上系统的示意图;
33.图2是实施例检测电路的示意图;
34.图3是实施例集电极电路的图;
35.图4是实施例方法的流程图;和
36.图5、图6、图7、图8和图9是实施例片上系统的示意图。
具体实施方式
37.图1示出了根据本公开的一个实施例的片上系统(sp)。
38.片上系统(sp)包括主设备(mm)。主设备(mm)可以是诸如处理器或直接存储器访问控制器(dma)的电子部件。片上系统(sp)还包括几个从设备(me1)、(me2)、(me3)和(me4)。每个从设备(me1)、(me2)、(me3)和(me4)可以是例如存储存储器或网络外围设备。这里,片上系统(sp)包括四个从设备。然而,可以提供根据本公开的具有小于或大于四个从设备的数量的片上系统。标识符与每个从设备(me1)、(me2)、(me3)和(me4)相关联。
39.每个从设备还包括被配置为接收加电信号(rst1)、(rst2)、(rst3)和(rst4)的输入。每个加电信号允许从设备加电或关断。每个从设备的输入可以是根据接收到的加电信号复位从设备的输入。因此,加电信号可以是复位信号。特别地,可以在保持从设备复位的同时关闭其电源。当从设备断电时,从设备(me1)、(me2)、(me3)和(me4)不能对来自主设备的请求产生响应。
40.片上系统(sp)还包括允许将每个从设备(me1)、(me2)、(me3)和(me4)连接到主设备(mm)的总线(bs)。
41.主设备(mm)被配置为能够向从设备(me1)、(me2)、(me3)和(me4)发出访问请求。这些访问请求可以通过计算机总线(bs)发送到从设备(me1)、(me2)、(me3)和(me4)。
42.访问设备又被配置为生成对来自主设备(mm)的访问请求的响应。这些响应可以通
过计算机总线(bs)传输到主设备(mm)。
43.该片上系统优选地与高级微控制器总线体系结构(amba)协议族兼容。
44.片上系统还包括几个时钟(clk1)、(clk2)、(clk3)和(clk4)。每个从设备(me1)、(me2)、(me3)和(me4)连接到与其相关联的时钟(clk1)、(clk2)、(clk3)和(clk4),以便在该时钟上时钟控制其操作。
45.在实施例中,每个时钟(clk1)、(clk2)、(clk3)和(clk4)允许对从设备(me1)、(me2)、(me3)和(me4)的操作进行时钟控制,当该时钟处于激活状态时,与之相关联。
46.此外,当该时钟处于停用状态时,每个时钟(clk1)、(clk2)、(clk3)和(clk4)不允许对与其相关联的从设备(me1)、(me2)、(me3)和(me4)的操作进行时钟控制。然后,从设备(me1)、(me2)、(me3)和(me4)不能生成对来自主设备的请求的响应。
47.片上系统(sp)还包括时钟和加电控制器(rcc)。在实施例中,加电控制器(rcc)包括多个寄存器,如图1中以表的形式所示。加电控制器(rcc)的寄存器被配置为存储与从设备(me1)、(me2)、(me3)和(me4)相关联的每个时钟(clk1)、(clk2)、(clk3)和(clk4)的状态(clken)。
48.加电控制器(rcc)的寄存器还被配置为存储与每个从设备相关联的每个加电信号(rst1)、(rst2)、(rst3)和(rst4)的状态(rst)。
49.这里,系统包括单个加电控制器(rcc),用于存储时钟的状态以及从设备的加电状态。可选地,可以提供仅用于存储时钟的状态的第一控制器和仅用于存储从设备的加电状态的第二控制器。
50.此外,主设备(mm)被配置为写入和改变加电控制器(rcc)的寄存器中的每个时钟(clk1)、(clk2)、(clk3)和(clk4)的状态(clken),以及写入和改变加电控制器(rcc)的寄存器中的每个加电信号(rst1)、(rst2)、(rst3)和(rst4)的状态(rst)。
51.片上系统(sp)还包括控制系统(sc)。控制系统(sc)用于当从设备操作的时钟(me1)、(me2)、(me3)和(me4)被停用和/或当从设备断电时,在向从设备(me1)、(me2)、(me3)发出访问请求的情况下防止阻塞主设备(mm)。
52.在实施例中,控制系统(sc)用于防止由主设备(mm)的编程错误导致的主设备(mm)的阻塞。更具体地,该编程错误包括向与这些从设备相关联的时钟被停用的从设备和/或向被断电的从设备发出访问请求。主设备(mm)等待对发出的每个访问请求的响应。如果因为与访问请求所针对的从设备相关联的时钟被停用和/或从设备被断电而没有响应到达它,则主设备(mm)将无法推进其代码的执行。主设备(mm)将被阻塞。
53.控制系统(sc)包括分别与从设备(me1)、(me2)、(me3)和(me4)相关联的多个检测电路(det1)、(det2)、(det3)和(det4)。
54.检测电路(det1)、(det2)、(det3)和(det4)分别插入从设备(me1)、(me2)、(me3)和(me4)与主设备(mm)之间。
55.图2示出了例如可在图1的片上系统中使用的实施例检测电路。每个检测电路(det1)、(det2)、(det3)和(det4)包括连接到计算机总线(bs)的第一输入/输出(io1)。该第一输入/输出(io1)被配置为从主设备(mm)接收用于与检测电路相关联的从设备的访问请求(rq),并将该从设备的响应(re)发送到主设备。
56.每个检测电路(det1)、(det2)、(det3)和(det4)还包括连接到与该检测电路相关
联的从设备的第二输入/输出(io2)。该第二输入/输出(io2)被配置为将访问请求(rq)从主设备(mm)发送到与检测电路相关联的从设备,并从该从设备接收对主设备的访问请求的响应(re)。
57.每个检测电路(det1)、(det2)、(det3)和(det4)还包括连接到加电控制器(rcc)的输入(i1),以接收与检测电路相关联的从设备相关联的时钟的状态(clken)。
58.每个检测电路(det1)、(det2)、(det3)和(det4)还包括连接到时钟和加电控制器(rcc)的输入(i2),以接收与检测电路相关联的从设备的状态(rst)。
59.每个检测电路(det1)、(det2)、(det3)和(det4)还包括输入(aclk)和输入(arst),输入(aclk)被配置为接收允许对该检测电路的操作进行时钟控制的时钟信号,输入(arst)被配置为接收复位信号以对该检测电路进行复位。
60.每个检测电路还包括输出(o1)。
61.每个检测电路被配置为当主设备向该从设备发出访问请求时,检测与该检测电路相关联的从设备相关联的时钟是否被停用。在实施例中,将存储在加电控制器(rcc)的寄存器中的时钟的停用状态发送到检测电路,以便当主设备发出访问请求时,检测电路可以知道时钟是否停用。
62.每个检测电路还被配置为在主设备向该从设备发出访问请求时检测与该检测电路相关联的从设备是否断电。特别地,将存储在加电控制器(rcc)的寄存器中的从设备的断电状态发送到检测电路,以便当主设备发出访问请求时,检测电路可以知道从设备是否断电。
63.此外,每个检测电路(det1)、(det2)、(det3)和(det4)被配置为生成错误消息,然后当检测电路检测到当主设备向从设备发出访问请求时时钟被停用和/或从设备被断电时,该错误消息由第一输入/输出(io1)发送给主设备。当与该从设备相关联的时钟被停用和/或从设备被断电时,错误消息防止主设备在等待来自该从设备的响应时被阻塞。
64.此外,每个检测电路(det1)、(det2)、(det3)和(det4)被配置为向控制系统(sc)的集电极电路(cl)发出信号,即当与该从设备相关联的时钟被停用和/或从设备断电时向与该检测电路相关联的从设备发出访问请求。为此,每个检测电路被配置为使用其耦接到集电极电路(cl)的输出(o1)发出信令消息(ms)。在实施例中,输出(o1)直接连接到集电极电路(cl)。
65.控制系统(sc)还包括图3所示的集电极电路(cl)。集电极电路(cl)包括连接到计算机总线(bs)的输入/输出(io3)。集电极电路(cl)还包括输入(bclk),其被配置为接收允许对该集电极电路的操作进行时钟控制的时钟信号;以及输入(brst),其被配置为接收复位信号以对该集电极电路进行复位。
66.集电极电路(cl)还包括连接到检测电路的输出(o1)的至少一个输入(i3),以便接收信令消息(ms)。集电极电路(cl)还包括连接到主设备(mm)的输出(o2)。集电极电路(cl)还包括若干寄存器。集电极电路(cl)被配置为当从设备所用的时钟被停用和/或当这些从设备断电时,在其寄存器中存储主设备已经发出访问请求的从设备。
67.在实施例中,当集电极电路(cl)从检测器设备接收到信令消息时,集电极电路(cl)被配置为在其寄存器中存储与该检测器设备相关联的从设备的标识符。
68.此外,集电极电路(cl)还被配置为当它从检测电路接收到信令消息时产生中断以
警告主设备(mm)。中断由输出(o2)发出。因此,主设备(mm)被配置为接收由集电极电路(cl)产生的中断。
69.一旦主设备(mm)接收到集电极电路(cl)的中断,则主设备(mm)被配置为读取集电极电路(cl)的寄存器,以在该从设备操作的时钟被停用和/或当该从设备断电时确定访问请求所针对的从设备。
70.在实施例中,主设备(mm)还被配置为改变每个时钟的状态和/或改变加电控制器(rcc)的寄存器中的加电状态。
71.在实施例中,主设备(mm)被配置为一旦激活该从设备所用的时钟并且该从设备被加电,就更新其对该从设备的访问请求。
72.图4示出了管理主设备和从设备之间的事务的方法。在步骤20,主设备向从设备发出访问请求。在步骤21,与该从设备相关联的检测电路从主设备接收访问请求。在步骤22,检测电路检测与从设备相关联的时钟是激活还是停用,和/或从设备是加电还是断电。
73.特别地,检测电路从加电控制器(rcc)的寄存器中检索与从设备相关联的时钟的状态和与该从设备相关联的加电状态。
74.如果检测电路检测到该时钟被激活并且从设备加电,则在步骤23,检测电路向从设备发送访问请求。
75.在步骤24,从设备接收访问请求并产生它发送到检测电路的响应。
76.在步骤25,检测电路接收从设备的响应并将其发送到主设备。
77.在步骤26,主设备接收来自从设备的响应,并且事务结束。
78.此外,如果检测电路在步骤22检测到时钟停用和/或从设备断电,则事务管理方法包括步骤27。在该步骤27中,检测电路产生一个错误消息,该错误消息被发送给主设备(mm)。检测电路还产生一个信令消息,该信令消息被发送到集电极电路。
79.然后,在步骤28,集电极电路接收来自检测电路的信令消息,并存储从设备的标识符。此外,集电极电路产生中断,并将其发送到主设备。
80.当主设备在步骤29接收到中断时,主设备接着访问集电极电路的寄存器,以识别在与该从设备相关联的时钟被停用和/或当该从设备断电时向其发出访问请求的从设备。
81.一旦识别了从设备,在步骤30,主设备激活与从设备相关联的时钟和/或激活时钟和加电控制器中的从设备的加电。
82.当与从设备相关联的时钟随后被激活并且当从设备被加电时,主设备可以再次请求访问该从设备,同时确保从该从设备接收到正确的响应。
83.因此,事务管理方法然后可以在步骤20再次开始,其中主设备向从设备发出新的访问请求。
84.图5至图9示出了由图1所示的片上系统实现事务管理方法的示例。
85.在一个或多个实施例中,时钟最初被激活,并且从设备被加电。因此,对于每个时钟,与加电控制器(rcc)的每个时钟的状态相关的寄存器的值为1,以指示这些时钟被激活。因此,对于每个从设备,与加电控制器(rcc)的从设备的加电状态相关的寄存器的值为1,以指示这些从设备被加电。
86.在图5中,主设备将与时钟控制器寄存器中的设备(me3)和(me4)相关联的时钟(clk3)和(clk4)停用,以降低片上系统的功耗。因此,与设备(me3)和(me4)相关联的时钟
(clk3)和(clk4)相关的加电控制器(rcc)的寄存器的值切换到0,以指示这些时钟被停用。
87.此外,主设备(mm)向从设备(me1)发出访问请求,以从从设备(me1)检索数据。当与从设备(me1)相关联的时钟(clk1)被激活并且从设备(me1)被加电时,主设备(mm)从从设备(me1)接收数据。例如,数据可以是有用的数据或指令。
88.然后,主设备(mm)使用该数据执行计算,然后向从设备(me2)发出另一个访问请求,以将结果写入从设备(me2)。当与从设备(me2)相关联的时钟(clk2)被激活并且从设备(me2)被加电时,可以将数据写入从设备(me2)。
89.然后,主设备(mm)希望根据记录在从设备(me1)和(me3)中的数据执行计算。因此,如图6所示,主设备(mm)向从设备(me1)发出访问请求,以从该从设备(me1)检索数据。当与从设备(me1)相关联的时钟(clk1)被激活并且从设备(me1)被加电时,主设备(mm)从从设备(me1)接收数据。
90.此外,主设备(mm)向从设备(me3)发出访问请求,以从该从设备(me3)检索数据。然而,在向从设备(me3)发出访问请求之前,出现了编程错误,并且与从设备(me3)相关联的时钟(clk3)没有被重新激活。因此,从设备(me3)不能响应访问请求向主设备发送数据。主设备(mm)被阻塞,等待对其访问请求的响应。
91.然后,检测电路(det3)检测到在与从设备(me3)相关联的时钟(clk3)被停用时,对从设备(me3)的访问请求被发出。在实施例中,检测电路(det3)通过从与该时钟相关联的时钟控制器寄存器检索该时钟(clk3)的状态(clken)来知道该时钟(clk3)的状态(clken)。
92.然后,检测电路(det3)响应于访问请求向主设备(mm)发出错误消息,以解除对主设备(mm)的阻塞。
93.集电极电路(cl)在寄存器中记录从设备(me3)的标识符。
94.然后,如图7所示,集电极电路(cl)向主设备发出中断。然后,主设备(mm)读取集电极电路(cl)的寄存器,以识别在与该从设备相关联的时钟被停用时向其发出访问请求的从设备。因此,主设备从集电极电路中检索从设备(me3)的标识符。
95.然后,如图8所示,主设备(mm)激活与加电控制器(rcc)中的从设备(me3)相关联的时钟(clk3)。与该时钟相关的寄存器的值随后切换到1,以指示该时钟处于活动状态。
96.然后,当与从设备(me3)相关联的时钟(clk3)和与从设备(me1)相关联的时钟(clk1)被激活,并且从设备(me1)和(me3)被加电时,主设备可以再次请求访问这两个从设备(me1)和(me3)以执行所需的计算,同时确保从这两个从设备接收正确的响应。
97.因此,如图9所示,主设备向从设备(me1)发出访问请求,以从该从设备(me1)检索数据。当与从设备(me1)相关联的时钟(clk1)被激活并且从设备(me1)被加电时,主设备(mm)从从设备(me1)接收数据。
98.此外,主设备向从设备(me3)发出访问请求,以从该从设备(me3)检索数据。当与从设备(me3)相关联的时钟(clk3)被激活并且从设备(me3)被加电时,主设备(mm)从从设备(me3)接收数据。
99.然后,主设备可以根据在从设备(me1)和从设备(me3)中检索的数据执行所需的计算。
100.当然,本公开容易受到许多变化和修改的影响,这对于本领域技术人员来说是显而易见的。例如,对于几个从设备有一个检测电路是可能的,特别是当这些从设备用相同的
时钟进行时钟控制并且可以一起关断时,例如通过用相同的复位信号复位它们。
101.尽管已经详细描述了描述,但应当理解,在不脱离由所附权利要求定义的本公开的精神和范围的情况下,可以进行各种改变、替换和改变。在不同的图中,相同的元素用相同的参考号指定。此外,本公开的范围并不旨在限于本文所述的特定实施例,因为本领域的普通技术人员将从本公开中容易理解,当前存在或以后将开发的过程、机器、制造、物质组合物、装置、方法或步骤可以执行与本文所述的相应实施例基本相同的功能或实现基本相同的结果。因此,所附权利要求书旨在将这样的过程、机器、制造、物质组合物、装置、方法或步骤包括在其范围内。
102.因此,说明书和附图被简单地视为如所附权利要求所定义的本公开的说明,并且被预期覆盖落入本公开范围内的任何和所有修改、变化、组合或等同物。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献