一种SoC总线监视装置及其工作方法与流程

文档序号:11386385阅读:568来源:国知局
一种SoC总线监视装置及其工作方法与流程

本发明属于数据监控领域,尤其涉及一种soc总线监视装置及其工作方法。



背景技术:

任何一个微处理器都要与一定数量的部件和外围设备连接,但如果将各部件和每一种外围设备都分别用一组线路与cpu直接连接,那么连线将会错综复杂,甚至难以实现。为了简化硬件电路设计、简化系统结构,常用一组线路,配置以适当的接口电路,与各部件和外围设备连接,这组共用的连接线路被称为总线。采用总线结构便于部件和设备的扩充,尤其制定了统一的总线标准则容易使不同设备间实现互连。

由于总线是连接各个部件的一组信号线。通过信号线上的信号表示信息,通过约定不同信号的先后次序即可约定操作如何实现。总线一个操作过程是完成两个模块之间传送信息,启动操作过程的是主模块,另外一个是从模块。某一时刻总线上只能有一个主模块占用总线。

在现有的mcu及soc系统中,由于片上设备及外设大量增加,大大增加了嵌入式软件开发的难度,尤其在调试及稳定性方面问题尤为明显,如何快速的定位故障代码位置并维护固件安全稳定的运行是现有soc总线监视装置亟需解决的问题。



技术实现要素:

为了解决现有技术的不足,本发明提供了一种soc总线监视装置,其能够快速定位故障代码位置并维护固件安全稳定的运行。

本发明的soc总线监视装置,包括:

配置电路,其与soc系统总线相互通信,其用于将操作错误类型信息写入sram中;所述配置电路还与实时对比电路相连,用于配置实时对比电路的对比模式和中断使能;

所述实时对比电路还直接与soc系统总线和sram分别相连,其用于直接获取soc系统总线上的所有信号,并通过配置的对比模式和中断使能来检测获取的信号是否存在错误,若存在,则将错误信号传送至错误存报电路;

所述错误存报电路对接收的错误信号进行存储并通过中断报告的形式传送至cpu。

进一步的,所述实时对比电路一个或逻辑器件,所述或逻辑器件的两个输入分别与第一比较器和第二比较器相连,所述第一比较器和第二比较器的其中一个输入端均与sram相连,另一个输入端均与soc系统总线相连。

进一步的,所述配置电路包括地址译码器,所述地址译码器的输出端并联连接有若干个寄存器。

进一步的,所述错误存报电路包括读写控制电路,所述读写控制电路还并联有一个地址寄存器、一个移位寄存器和一个中断寄存器。

进一步的,所述cpu还与报警器相连。其中,报警器用于当cpu接收到错误信号后进行提示报警。

进一步的,所述cpu还与显示器相连。其中,显示器用于实时显示cpu输出的错误信号。

进一步的,所述cpu还通过无线通信模块与监控终端相连。

本发明还提供了一种soc总线监视装置的工作方法。

其中,本发明的soc总线监视装置的工作方法,包括:

首先,配置电路将操作错误类型信息写入sram中,还配置实时对比电路的对比模式和中断使能;

然后,实时对比电路还直接获取soc系统总线上的所有信号,并通过配置的对比模式和中断使能来检测获取的信号是否存在错误,若存在,则将错误信号传送至错误存报电路;

最后,错误存报电路对接收的错误信号进行存储并通过中断报告的形式传送至cpu。

进一步的,所述操作错误类型信息包括操作地址错误和操作数据类型错误。

进一步的,当cpu接收到中断报告后,还通过报警器或显示器予以及时提示或警示用户。

与现有技术相比,本发明的有益效果是:

本发明通过cpu配置监视装置,使硬件监视装置实时检测ahb/axi等系统总线的传输信息,硬件监视装置相当于硬件陷阱,一旦cpu软件的总线操作不符合预期,与违法操作相同时,硬件检测装置将报告cpu中断,使cpu进入错误处理模式,通过在错误处理模式中检查硬件监视装置的错误信息进行处理。

附图说明

构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。

图1是一种soc总线监视装置结构示意图;

图2是实时对比电路原理图;

图3是配置电路原理图;

图4是错误存报电路原理图;

图5是地址错误检测原理图;

图6是实时比对波形图;

图7是传输类型错误检测原理图。

具体实施方式

应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属技术领域的普通技术人员通常理解的相同含义。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

名词解释:

soc:systemonchip的缩写,称为芯片级系统,也有称片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。

sram:staticrandomaccessmemory,即静态随机存取存储器。它是一种具有静止存取功能的内存,不需要刷新电路即能保存它内部存储的数据。

axi总线:axi(advancedextensibleinterface)是一种总线协议,该协议是arm公司提出的amba(advancedmicrocontrollerbusarchitecture)3.0协议中最重要的部分,是一种面向高性能、高带宽、低延迟的片内总线。它的地址/控制和数据相位是分离的,支持不对齐的数据传输,同时在突发传输中,只需要首地址,同时分离的读写数据通道、并支持outstanding传输访问和乱序访问,并更加容易进行时序收敛。axi是amba中一个新的高性能协议。axi技术丰富了现有的amba标准内容,满足超高性能和复杂的片上系统(soc)设计的需求。

ahb总线:ahb=advancedhighperformancebus,译作高级高性能总线。如同usb(universalserialbus)一样,也是一种总线接口。ahb主要用于高性能模块(如cpu、dma和dsp等)之间的连接,作为soc的片上系统总线,它包括以下一些特性:单个时钟边沿操作;非三态的实现方式;支持突发传输;支持分段传输;支持多个主控制器;可配置32位~128位总线宽度;支持字节、半字和字的传输。ahb系统由主模块、从模块和基础结构(infrastructure)3部分组成,整个ahb总线上的传输都由主模块发出,由从模块负责回应。

wishbone总线:wishbone总线最先是由silicore公司提出,现在己被移交给opencores组织维护,它通过在ip核之间建立一个通用接口完成互连。可以用于在软核、固核以及硬核之间进行互联。

htrans:其为总线的信号,来源于主机,htrans[1:0],其表示当前传输类型,00-空闲,01-忙,10-非连续,11-连续。

haddr:其为总线的信号,来源于主机,haddr[31:0],是32位地址总线。

hburst:其为总线的信号,来源于主机,hburst[2:0],其表示突发类型,例如:000-单一传输,001-未指定长度的增量突发,010-4拍回环突发。011-4拍增量突发。

图1是一种soc总线监视装置结构示意图。

如图1所示,本发明的soc总线监视装置,包括:

配置电路,其与soc系统总线相互通信,其用于将操作错误类型信息写入sram中;所述配置电路还与实时对比电路相连,用于配置实时对比电路的对比模式和中断使能;

所述实时对比电路还直接与soc系统总线和sram分别相连,其用于直接获取soc系统总线上的所有信号,并通过配置的对比模式和中断使能来检测获取的信号是否存在错误,若存在,则将错误信号传送至错误存报电路;

所述错误存报电路对接收的错误信号进行存储并通过中断报告的形式传送至cpu。

其中,本发明的soc总线为axi总线或ahb总线或wishbone总线。

图2是实时对比电路原理图。

如图2所示,本发明的实时对比电路一个或逻辑器件,所述或逻辑器件的两个输入分别与第一比较器和第二比较器相连,所述第一比较器和第二比较器的其中一个输入端均与sram相连,另一个输入端均与soc系统总线相连。

如图3所示,所述配置电路包括地址译码器,所述地址译码器的输出端并联连接有若干个寄存器。其中,寄存器选用32位寄存器,地址译码电路主要根据外部输入地址,从而选中对应的32位寄存器,进行读写配置操作。

如图4所示,所述错误存报电路包括读写控制电路,所述读写控制电路还并联有一个地址寄存器、一个移位寄存器和一个中断寄存器。

其中,地址寄存器和移位寄存器分别为32位地址寄存器和3位移位寄存器。

读写控制电路根据实时对比电路的结果,将非法地址及非法操作分别存放于32位地址寄存器和3位移位寄存器中,并有效中断寄存器。

其中,所述cpu还与报警器相连。其中,报警器用于当cpu接收到错误信号后进行提示报警。

所述cpu还与显示器相连。其中,显示器用于实时显示cpu输出的错误信号。

所述cpu还通过无线通信模块与监控终端相连。

本发明的soc总线监视装置的工作方法,包括:

首先,配置电路将操作错误类型信息写入sram中,还配置实时对比电路的对比模式和中断使能;

然后,实时对比电路还直接获取soc系统总线上的所有信号,并通过配置的对比模式和中断使能来检测获取的信号是否存在错误,若存在,则将错误信号传送至错误存报电路;

最后,错误存报电路对接收的错误信号进行存储并通过中断报告的形式传送至cpu。

其中,所述操作错误类型信息包括操作地址错误和操作数据类型错误。

当cpu接收到中断报告后,还通过报警器或显示器予以及时提示或警示用户。

具体地,图5是地址错误检测原理图,

如图5所示,实时对比电路对系统总线上的实时传输进行检测,以图5中的ahb总线传输为例,当发现htrans信号有效时(nonseq和seq),对haddr地址进行数据对比,如果haddr处于无效地址段,则将无效地址及当前htrans信号发送给错误存报电路,错误存报电路接收到对比错误信号后,将无效地址及当前htrans信号寄存下来,并发出cpu中断,其中,地址错误检测过程的波形图如图5所示。

图7是传输类型错误检测原理图。

如图7所示,仍以ahb总线传输为例,当发现htrans信号有效时(nonseq和seq),对hburst信号进行数据对比,如果hburst等于非法操作类型,则将无效类型及当前htrans信号发送给错误存报电路,错误存报电路接收到对比错误信号后,将无效类型及当前htrans信号寄存下来,并发出cpu中断。

本发明通过cpu配置监视装置,使硬件监视装置实时检测ahb/axi等系统总线的传输信息,硬件监视装置相当于硬件陷阱,一旦cpu软件的总线操作不符合预期,与违法操作相同时,硬件检测装置将报告cpu中断,使cpu进入错误处理模式,通过在错误处理模式中检查硬件监视装置的错误信息进行处理。

上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1