用于中止主控制器与所连接的外围设备之间的阻塞总线访问的方法和装置制造方法及图纸

技术编号:32207107 阅读:17 留言:0更新日期:2022-02-09 17:12
本发明专利技术公开了一种用于中止经由总线协议通过总线进行通信的主控制器与所连接的外围设备之间的阻塞总线访问的方法以及执行本发明专利技术方法的装置。本发明专利技术的目的为指示和指明一种方法,通过该方法可以终止外围设备的总线访问,SoC的主控制器在中断服务程序中也可返回对所连接的外围设备的访问,将通过一种方法来解决,该方法包括以下步骤:

【技术实现步骤摘要】
【国外来华专利技术】用于中止主控制器与所连接的外围设备之间的阻塞总线访问的方法和装置


[0001]本专利技术涉及一种用于中止经由总线协议通过总线进行通信的主控制器与所连接的外围设备之间的阻塞总线访问的方法,以及一种执行本专利技术方法的装置。

技术介绍

[0002]常见的片上系统(SoC)包括控制器(微控制器、RISC、DSP)和外围设备,比如,经由被称为总线(例如,ARM AHB

ARM高级高性能总线)的常见的基础设施连接的存储器或I/O设备。外围设备大部分是SoC中的从设备。
[0003]微控制器,也称为主控制器,是SoC的主设备,其经由总线控制外围设备。通过读取或写入总线访问来完成外围设备控制。外围设备的读写访问在总线协议中定义。市面上有不同的总线协议并且它们被标准化,例如,ARM AHB协议。一些总线协议不支持主设备发起的中止总线访问。也存在阻塞传输的协议,即,主设备等待直到从设备发回响应。这种总线阻塞还导致较长的处理器空闲时间。

技术实现思路

[0004]以下场景旨在示出尤其对于实时应用而言的缺点,这些缺点出现在经由总线协议在片上系统(SoC)的主设备微控制器与作为从设备的外围设备之间进行的先前通信中。
[0005]主设备微控制器发起对从设备外围设备的总线访问。由于未知的时间和未知的原因,外围设备阻塞对总线进行总线访问。同时,主设备微控制器获得中断消息并且必须尽可能做出反应。主设备微控制器必须在其中断服务程序中访问外围设备连接,但是因为由主设备微控制器发起的外围设备的先前读取或写入尚未完成,总线被外围设备阻塞。主设备微控制器必须等待直到阻塞的外围设备释放总线从而服务其中断程序。未知的阻塞时间干扰实时应用和需求。
[0006]因此,期望指示和指明一种方法,通过该方法,可以终止外围设备的总线访问,并且在中断服务程序的情况下,SoC的主控制器也可返回对所连接的外围设备的访问。
[0007]本专利技术的目的通过一种用于中止经由总线协议通过总线进行通信的片上系统的主控制器与所连接的外围设备之间的阻塞总线访问的方法来实现,其中,该方法包括以下步骤:
[0008]‑
发送中断事件消息至主控制器以启动中断服务程序,还发送中断事件消息至所连接的阻塞总线的外围设备,
[0009]‑
主控制器跳入中断服务程序,
[0010]‑
外围设备通过向主控制器发送中止中断消息来中断其总线访问并解除对总线的阻塞,
[0011]‑
主控制器访问未被阻塞的总线以服务于中断服务程序,以及
[0012]‑
主控制器在离开中断服务程序之后,跳回主程序。
[0013]本专利技术方法的核心思想是主控制器不能中止它自己发起的传输,但片上系统中的从设备可以做到。因此,本专利技术的方法不仅允许主控制器获得中断服务程序的指示,还允许SoC的每个外围设备获得中断服务程序的的指示。重要的是满足每个系列总线协议。最后,阻塞总线的外围设备通过向主控制器发送中止中断消息来解除对总线的阻塞,使得主控制器自身可以访问总线并且在主控制器跳回主程序之前服务于中断服务程序。在没有本专利技术的情况下,不可能利用总线访问时间未知的的外围设备来处理在SoC控制器上运行的实时协议。
[0014]因此,在本专利技术方法的变形中,在外围设备进行总线读取访问的情况下,外围设备向主控制器的缓存返回无效的伪数据。这具有以下优点:由于没有发回错误响应,主控制器不需要处理错误响应,因而满足总线协议。
[0015]在本专利技术方法的另一变形中,如果主控制器期望专用总线错误响应,则由外围设备发送该响应。由此,主控制器知道主控制器的中断控制中何时不再有硬件中断。如果使用外部中断控制器,那么主控制器保存用于读取中断控制器状态以及清除中断源的指令。主设备决定其是否期望来自外围设备的总线错误响应。外围设备包括针对该功能的控制寄存器。
[0016]在本专利技术方法的另一变形中,在外围设备进行总线写入访问的情况下,外围设备丢弃数据。这具有以下优点:由于外围设备知道数据不是有效的,因此不需要发回错误响应,因而满足总线协议。
[0017]由此可见本专利技术方法的优点:主控制器可以在不违反总线协议的情况下实时地进行总线访问,并且主控制器可以访问执行中断服务程序所必需或者由于中断服务程序而变得必需的各个外围设备。
[0018]在本专利技术方法的另一变形中,中止中断消息初始化中止中断服务程序,主控制器使最后的缓存项无效。这具有以下优点:在终止阻塞的外围设备访问之前,主控制器无需复杂的程序序列恢复程序即可跳回主程序。
[0019]在本专利技术方法的另一变形中,触发中断事件消息的中断事件可以是看门狗信号。看门狗信号必须经由IRQ使能模块连接到外围设备。
[0020]本专利技术的方法可应用于不同的总线协议,例如,高级高性能总线

AHB

协议或者用于NB

IoT或APB(ARM)、Whishbone(Opencore)、STBus(STMicroelectronics)的无线协议。
[0021]本专利技术的目的通过一种适于执行根据权利要求1至6所述的方法的装置来实现。该装置包括主控制器,该主控制器使用总线协议经由总线与一个以上外围设备连接进行通信,主控制器包括内部缓存,外围设备经由同一端口与内部缓存连接,其中,主控制器和外围设备经由中断线连接。
[0022]在本专利技术装置的变形中,该装置包括用于使能或禁用外围设备的中断源的附加的掩码模块,这些外围设备经由掩码的中断线与该掩码模块连接。掩码模块与主控制器连接,将未掩码的中断传输至主控制器。这具有以下优点:主控制器识别所有中断,可以控制以决定使用哪个连接的中断线来终止阻塞的总线访问或不终止阻塞的总线访问。
[0023]在本专利技术装置的另一变形中,外围设备包括控制寄存器,用于如果主控制器期望则使能专用总线错误响应。因此,外围设备能够向主设备发送专用总线错误响应。这在主控制器的中断控制器没有剩余的中断输入或者主控制器是处理专用总线错误的电缆的情况
下是有利的。
[0024]在另一个非常优选的变形中,该装置包括一个以上主控制器。多个主设备共享一个从设备。可以组合(简单的或门)每个主设备的触发事件,外围设备如上所述地动作。外围设备的中断信号连接至每个主设备。
[0025]将使用示例性实施例来更详细地解释本专利技术。
附图说明
[0026]所附的附图示出了:
[0027]图1为根据本专利技术的片上系统的示意图;
[0028]图2为根据本专利技术的片上系统的示例性实施例;
[0029]图3为根据本专利技术方法的由本专利技术装置执行的中断程序的时间线;
[0030]图4为本专利技术装置的第二实施例。
具体实施方式
[0031]图1示出了包括主控制器1、两个外围设备A 2和B 3以及总线4的片上系统(SoC)。主控制器1在其主程序中执行对外围设备A 2的总线访问。在本文档来自技高网
...

【技术保护点】

【技术特征摘要】
【国外来华专利技术】1.一种用于中止经由总线协议进行通信的主控制器(1)与所连接的外围设备(2,3)之间的阻塞总线访问的方法,所述方法包括以下步骤:

发送中断事件消息(5)至所述主控制器(1)以启动中断服务程序,还发送所述中断事件消息(5)至所连接的阻塞所述总线(4)的外围设备(2,3),

所述主控制器(1)跳入所述中断服务程序,

所述外围设备(2,3)通过向所述主控制器(1)发送中止中断消息(6)来中止其总线访问并解除对所述总线(4)的阻塞,

所述主控制器(1)访问未被阻塞的总线(4)以服务于所述中断服务程序,以及

所述主控制器(1)在离开所述中断服务程序之后,跳回主程序。2.根据权利要求1所述的用于中止阻塞总线访问的方法,其中,在所述外围设备(2,3)进行总线读取访问的情况下,所述外围设备(2,3)将无效的伪数据返回至所述主控制器(1)的缓存中。3.根据权利要求1或2所述的用于中止阻塞总线访问的方法,其中,如果所述主控制器(1)期望,所述外围设备(2,3)发送专用总线错误响应。4.根据权利要求1所述...

【专利技术属性】
技术研发人员:乌韦
申请(专利权)人:深圳市汇顶科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1