CN102231129B - 一种基于串口的多层AHB总线架构SoC监测调试系统与方法 - Google Patents
一种基于串口的多层AHB总线架构SoC监测调试系统与方法 Download PDFInfo
- Publication number
- CN102231129B CN102231129B CN201110184825XA CN201110184825A CN102231129B CN 102231129 B CN102231129 B CN 102231129B CN 201110184825X A CN201110184825X A CN 201110184825XA CN 201110184825 A CN201110184825 A CN 201110184825A CN 102231129 B CN102231129 B CN 102231129B
- Authority
- CN
- China
- Prior art keywords
- monitoring
- submodule
- serial ports
- debugging
- channel
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种基于串口的多层AHB总线架构SoC监测调试系统与方法。本发明中的串口子模块接收上位机的配置信息,并存于可配置寄存器中。可配置寄存器分别与调试子模块、监测子模块相连,其中存储的配置信息用于控制这两个子模块如何工作。调试子模块一端与N条总线相连、另一端与串口子模块相连,能根据配置信息对N条总线中的某一条总线进行调试,并将调试信息通过串口子模块送回上位机。监测子模块一端与N条总线相连、另一端与串口子模块相连;能根据配置信息同时监测N条总线中的M条总线,并将监测信息通过串口子模块送回上位机。本发明减小了芯片内部资源使用,增大了顶层AHB总线能容纳的从设备数目。
Description
技术领域
本发明涉及一种SoC的监测调试系统与方法,尤其涉及一种基于串口的多层AHB总线架构SoC监测调试系统与方法。
背景技术
在传统的单层AHB(Advanced High-performance Bus,先进高性能总线)总线架构SoC(System on Chip,片上系统)中,多个AHB主设备连接在一条AHB总线上,同一时刻只能有一个AHB主设备占有总线,制约了整个系统的数据传输带宽。在高端通信及高性能多媒体应用领域,往往需要很强的实时数据处理能力,因此系统中的多个AHB主设备需要同时访问总线。这种情况下,可以采用多层AHB总线架构SoC,其典型的结构如图1所示,这里以含有三条AHB总线的结构为例进行说明。AHB总线之间通过AHB-AHB桥相连,各条AHB总线上连接有AHB主设备与AHB从设备,还可连接AHB-APB桥以访问APB从设备。这样,不同AHB总线上的AHB主设备可以同时占有各自的AHB总线,同时处理数据,提高了系统的整体效率。
随着SoC系统结构越来越复杂,模块与模块之间、总线层与层之间出现问题的可能性也越来越大,如何在开发阶段有效地测试系统逐渐成为一个关键问题。
中国专利(申请号:201010264838.3,公开号:CN101930394)公开了一种基于USB的AHB总线跟踪测试方法与系统,其方法如下:使用一个带USB接口或串口接口的AHB主设备对AHB总线施加激励,以达到测试目的;使用一个AHB从设备记录处理器对某个从设备的操作,以达到跟踪目的。
若将该中国专利申请所述方法用于多层AHB总线架构,则存在如下不足:一、只能跨层进行所有AHB总线的测试,则顶层AHB-AHB桥会占用很大地址范围,从而缩小顶层AHB总线能容纳的从设备数目;二、每条AHB总线都带有一个用于跟踪的从设备,其缓存会占用大量的芯片内部资源。因此,有必要设计一种专用于多层AHB总线架构SoC的监测调试系统与方法。
发明内容
本发明的目的是克服现有技术的不足,提供一种基于串口的多层AHB总线架构SoC监测调试系统与方法,以相对较小的芯片内部资源实现对多层AHB总线架构SoC的有效监测与调试。
本发明提供了一种基于串口的多层AHB总线架构SoC监测调试系统,包括有N条AHB总线的待监测调试SoC以及与该SoC中N条AHB总线相连的串口监测调试模块,该串口监测调试模块同时与SoC外的上位机串口相连。
所述的N是大于1的自然数。
所述的串口监测调试模块包含四个子模块:串口子模块、可配置寄存器、调试子模块、监测子模块,其中:
所述的串口子模块接收上位机的配置信息,并存于可配置寄存器中。
所述的可配置寄存器分别与调试子模块、监测子模块相连,其中存储的配置信息用于控制这两个子模块如何工作。
所述的调试子模块与N条总线相连,与串口子模块相连。其在多层AHB总线架构SoC中的地位相当于AHB主设备,能根据配置信息对N条总线中的某一条总线进行调试,并将调试信息通过串口子模块送回上位机。
所述的监测子模块与N条总线相连,与串口子模块相连。其在多层AHB总线架构SoC中的地位相当于AHB从设备,能根据配置信息同时监测N条总线中的M条总线,并将监测信息通过串口子模块送回上位机。
所述的M是大于或等于1且小于N的自然数。
进一步地,上述基于串口的多层AHB总线架构SoC监测调试系统还具有以下特点:串口子模块包含一个串口发送单元、一个串口接收单元、一个调试子模块接口、一个监测子模块接口、一个调试/监测切换单元,其中:
所述的串口发送单元将调试监测信息发送给上位机。
所述的串口接收单元接收从上位机传来的配置信息,并存入可配置寄存器。
所述的调试子模块接口从调试子模块读取调试信息。
所述的监测子模块接口从监测子模块读取监测信息。
所述的调试/监测切换单元根据配置信息,决定当前整个串口监测调试模块处于调试模式或监测模式。若处于调试模式,则将调试子模块的调试信息传送给串口发送单元;若处于监测模式,则将监测子模块的监测信息传送给串口发送单元。
进一步地,上述基于串口的多层AHB总线架构SoC监测调试系统还具有以下特点:调试子模块包含一个AHB主设备接口、一个FIFO缓存,其中:
所述的AHB主设备接口同时与N条总线相连,不同于普通的AHB主设备接口,具体为:HBUSREQ、HGRANT、HRDATA[31:0]、HRESP[1:0]、HREADY这6种总线信号需要N组,分别与N条总线相连;但其余的总线信号是N条总线共用的,只用一组。
所述的FIFO缓存接收从AHB主设备接口传来的数据,当其非空时,将通知串口子模块把调试信息从FIFO缓存中取走。
进一步地,上述基于串口的多层AHB总线架构SoC监测调试系统还具有以下特点:监测子模块包含N个AHB从设备接口、一个监测通道选择单元、一个监测处理单元、M个通道缓存、一个通道切换单元,其中:
所述的N个AHB从设备接口的结构与普通AHB从设备接口相同,分别与N条总线相连,并都连接到监测通道选择单元。
所述的监测通道选择单元根据配置信息,从N条总线中选择M条总线的地址、数据、控制信号作为后续M条并行监测通道的输入。
所述的监测处理单元根据配置信息,分别对M条并行监测通道的地址、数据、控制信号进行监测,得到符合条件要求且经过压缩的监测信息,并传给相应通道的缓存。
所述的M个通道缓存接收各自通道的监测信息,当任何一个缓存满时,向通道切换单元发送缓存满信号,请求串口子模块读取监测信息。
所述的通道切换单元选择M个通道缓存中的一个与串口子模块通信,串口子模块从被选中的通道缓存中读取监测信息。
进一步地,上述的监测子模块还具有以下特点:监测处理单元包含M个通道触发控制单元、M个通道监测模式选择单元、M个信息压缩单元,其中:
所述的通道触发控制单元根据配置信息,当通道地址、通道控制信号满足监测条件时,产生通道触发使能。
所述的通道监测模式选择单元根据配置信息,工作于不同监测粒度的监测模式,产生通道地址监测使能、通道数据监测使能、通道控制信号监测使能。
所述的信息压缩单元根据上述两个模块所给出的使能信号的组合情况,对通道地址、通道数据、通道控制信号进行有选择的压缩,并送出通道监测信息。
本发明还提供了一种基于串口的多层AHB总线架构SoC监测方法,包括以下步骤:
(1)串口监测调试模块接收上位机的配置信息,决定是否进入监测模式。在监测模式下,监测子模块处于工作状态,而调试子模块处于非工作状态。
(2)监测子模块中的监测通道选择单元根据配置信息,从N条总线中选择M条总线的地址、数据、控制信号,并将它们传给监测处理单元。
(3)监测处理单元中从以下6种不同粒度的监测模式中选择一种,从而有选择地对每个通道的地址、数据、控制信号进行监测:
①每个时钟周期记录符合监测条件的通道地址、数据、控制信号;
②每个时钟周期记录符合监测条件的通道地址、数据;
③每个时钟周期记录符合监测条件的通道数据、控制信号;
④当控制信号发生变化时,记录符合监测条件的通道地址、数据、控制信号;
⑤当控制信号发生变化时,记录符合监测条件的通道地址、数据;
⑥当控制信号发生变化时,记录符合监测条件的通道数据、控制信号;
(4)监测处理单元中对记录的监测信息进行压缩,压缩方法为:
①通道地址:只记录Non-sequential地址,不记录Sequential地址。
②通道数据:将当前监测数据与前一次监测数据相减。
③通道控制信号:由于在一次AHB总线数据传输过程中,控制信号不会变化,因此采用基于CAM(Content-addressable memory,内容可寻址存储器)字典的压缩方法,减少监测数据的位数,具体为:
使用8个9位宽的寄存器构成字典,则字典的索引只有3位;
若当前控制信号存在于字典中,则将对应的字典索引作为监测数据(3位);
若当前控制信号不存在于字典中,则将原控制信号作为监测数据(9位),并将该控制信号加入字典。
(5)各自通道的监测信息存入各自通道的缓存,当任何一个缓存满时,向通道切换单元发送缓存满信号,请求串口子模块读取监测信息。通道切换单元选择M个通道缓存中的一个与串口子模块通信。其切换遵循如下所述的优先级仲裁策略:
①通道序号越小,优先级越高;
②多条通道同时满,且无通道正与串口子模块通信时,序号小的通道取得与串口子模块的通信权;
③当有通道正与串口子模块通信时,必须等当前通道传输结束后,才允许其他通道与串口子模块通信。
(6)串口子模块从被通道切换单元选中的通道缓存读取监测信息,发送给上位机。
(7)当所有M条通道的监测都发送给上位机后,本次监测结束,如需开始另一次监测,重新由第(1)步开始。
本发明还提供了一种基于串口的多层AHB总线架构SoC调试方法,包括以下步骤:
(1)串口监测调试模块接收上位机的配置信息,决定是否进入调试模式。在调试模式下,调试子模块处于工作状态,而监测子模块处于非工作状态。
(2)调试子模块中的AHB主设备接口根据配置信息,对N条总线中的某一条总线进行调试。如果当前调试是读操作,则把读回的数据送入FIFO缓存;如果当前调试是写操作,则无需返回调试信息,直接跳到第(4)步。
(3)串口子模块从调试子模块的FIFO缓存读取调试信息,发送给上位机。
(4)根据配置信息,当完成预定次数的读/写操作后,本次调试结束,如需开始另一次调试,重新由第(1)步开始。
采用本发明的技术方案后,对于监测,N条AHB总线的监测可以共用M个通道缓存,并采用不同粒度的监测模式和压缩方法,在保留有效监测信息的同时减小了芯片内部资源使用;对于调试,则无需跨层进行,顶层AHB-AHB桥只需占用原系统本身必要的地址范围,从而增大了顶层AHB总线能容纳的从设备数目。
附图说明
图1是现有技术中常见的多层AHB总线架构SoC;
图2是本发明的一个实施例的系统模块图;
图3是串口监测调试模块中串口子模块的结构与连接关系图;
图4是串口监测调试模块中调试子模块的结构与连接关系图;
图5是串口监测调试模块中监测子模块的结构与连接关系图;
图6是监测子模块中监测处理单元的结构与连接关系图;
图7是本发明实施例监测与调试方法的流程图。
具体实施方式
以下结合附图和具体实施方式对本发明做进一步的详细说明。
图2是本发明的一个实施例的系统模块图。如图所示,以N=3为例说明情况,一个串口监测调试模块同时连接到N条AHB总线,并与SoC外的上位机串口相连。
图2中还示出了串口监测调试模块的结构,包括四个子模块:串口子模块、可配置寄存器、调试子模块、监测子模块,其中:
串口子模块接收上位机的配置信息,并存于可配置寄存器中。
可配置寄存器分别与调试子模块、监测子模块相连,其中存储的配置信息用于控制这两个子模块如何工作。
调试子模块与N条总线相连,与串口子模块相连。其在多层AHB总线架构SoC中的地位相当于AHB主设备,能根据配置信息对N条总线中的某一条总线施加激励,并将调试信息通过串口子模块送回上位机。
监测子模块与N条总线相连,与串口子模块相连。其在多层AHB总线架构SoC中的地位相当于AHB从设备,能根据配置信息同时监测N条总线中的M条总线,并将监测信息通过串口子模块送回上位机。
图3是串口监测调试模块中串口子模块的结构与连接关系图,串口子模块包含一个串口发送单元、一个串口接收单元、一个调试子模块接口、一个监测子模块接口、一个调试/监测切换单元,其中:
串口发送单元将调试监测信息发送给上位机。
串口接收单元接收从上位机传来的配置信息,并存入可配置寄存器。
调试子模块接口从调试子模块读取调试信息。
监测子模块接口从监测子模块读取调试信息。
调试/监测切换单元根据配置信息,决定当前整个串口监测调试模块处于调试模式或监测模式。若处于调试模式,则将调试子模块的调试信息传送给串口发送单元;若处于监测模式,则将监测子模块的监测信息传送给串口发送单元。
图4是串口监测调试模块中调试子模块的结构与连接关系图,调试子模块包含一个AHB主设备接口、一个FIFO缓存,其中:
AHB主设备接口同时与N条总线相连,不同于普通的AHB主设备接口,具体为:HBUSREQ、HGRANT、HRDATA[31:0]、HRESP[1:0]、HREADY这6种总线信号需要N组,分别与N条总线相连;但其余的6种总线信号HTRANS[1:0]、HBURST[2:0]、HADDR[31:0]、HWRITE、HSIZE[2:0]、HWDATA[31:0]都是N条总线共用的,只用一组。
FIFO缓存接收从AHB主设备接口传来的某条总线上的读数据HRDATA,当其非空时,将通知串口子模块发出读使能,把调试信息从FIFO缓存中取走。
图5是串口监测调试模块中监测子模块的结构与连接关系图,监测子模块包含N个AHB从设备接口、一个监测通道选择单元、一个监测处理单元、M个通道缓存、一个通道切换单元,其中:
N个AHB从设备接口分别与N条总线相连,并都连接到监测通道选择单元,其结构与普通的AHB从设备接口相同。
监测通道选择单元根据配置信息,从N条总线中选择M条总线的地址、数据、控制信号作为后续M条并行监测通道的输入。这里,地址是指HADDR[31:0],数据是指HWDATA[31:0]和HRDATA[31:0],控制信号是指HTRANS[1:0]、HBURST[2:0]、HWRITE、HSIZE[2:0](共9位)。
监测处理单元根据配置信息,分别对M条并行监测通道的地址、数据、控制信号进行监测,得到符合条件要求且经过压缩的监测信息,并传给相应通道的缓存。
M个通道缓存接收各自通道的监测信息,当任何一个缓存满时,向通道切换单元发送缓存满信号,请求串口子模块读取监测信息。
通道切换单元选择M个通道缓存中的一个与串口子模块通信。其切换遵循如下所述的优先级仲裁策略:
①通道序号越小,优先级越高;
②多条通道同时满,且无通道正与串口子模块通信时,序号小的通道取得与串口子模块的通信权;
③当有通道正与串口子模块通信时,必须等当前通道传输结束后,才允许其他通道与串口子模块通信。
串口子模块从被通道切换单元选中的通道缓存读取监测信息,发送给上位机。
图6是监测子模块中监测处理单元的结构与连接关系图,监测处理单元包含M个通道触发控制单元、M个通道监测模式选择单元、M个信息压缩单元。图中只给出了通道1作为示例,对于其他通道,连接关系依此类推,其中:
通道触发控制单元根据配置信息,当通道地址、通道控制信号满足监测条件时,产生通道触发使能。
通道监测模式选择单元根据配置信息,从以下几种不同粒度的监测模式中选择一种,产生通道地址监测使能、通道数据监测使能、通道控制信号监测使能。
①每个时钟周期监测通道地址、数据、控制信号;
②每个时钟周期监测通道地址、数据;
③每个时钟周期监测通道数据、控制信号;
④当控制信号发生变化时,监测通道地址、数据、控制信号;
⑤当控制信号发生变化时,监测通道地址、数据;
⑥当控制信号发生变化时,监测通道数据、控制信号;
信息压缩单元根据上述两个模块所给出的使能信号的组合情况,对通道地址、通道数据、通道控制信号进行有选择的压缩,并送出通道监测信息。具体为:
当触发使能、地址监测使能同时有效时,才压缩通道地址,并将其加入监测信息;压缩方法为:只记录Non-sequential地址,不记录Sequential地址。
当触发使能、数据监测使能同时有效时,才压缩通道数据,并将其加入监测信息;压缩方法为:将当前监测数据与前一次监测数据相减。
当触发使能、控制信号监测使能同时有效时,才压缩通道控制信号,并将其加入监测信息;压缩方法为:采用基于CAM(Content-addressable memory,内容可寻址存储器)字典的压缩方法,具体为:
使用8个9位宽的寄存器构成字典,则字典的索引只有3位;
若当前控制信号存在于字典中,则将对应的字典索引作为监测数据(3位);
若当前控制信号不存在于字典中,则将原控制信号作为监测数据(9位),并将该控制信号加入字典。
图7是本发明实施例监测与调试方法的流程图,包括如下步骤:
(1)上位机向串口监测调试模块发送配置信息,串口监测调试模块决定进入调试模式或是监测模式。若是监测模式,则从步骤2执行到步骤7;若是调试模式,则从步骤8执行到步骤12。
(2)监测子模块开始工作,调试子模块停止工作。
(3)监测子模块中的监测通道选择单元根据配置信息,从N条总线中选择M条总线的地址、数据、控制信号。
(4)监测处理单元根据触发条件、监测模式对地址、数据、控制信号进行监测并压缩。
(5)监测信息进入缓存,当任何一个缓存满时,向通道切换单元发送缓存满信号,请求串口子模块读取监测信息。通道切换单元选择M个通道缓存中的一个与串口子模块通信。
(6)串口子模块从缓存读出监测信息,发送给上位机。
(7)完成本次监测。
(8)调试子模块开始工作,监测子模块停止工作。
(9)调试子模块中的AHB主设备接口对N条总线中的某一条进行预调试,调试次数(即读/写次数)由配置信息决定。如果当前调试是读操作,则从步骤10继续执行;如果当前调试是写操作,则直接跳到第12步。
(10)把读回的数据送入FIFO缓存。
(11)串口子模块从调试子模块的FIFO缓存读取调试信息,发送给上位机。
(12)完成本次调试。
以上所述仅为本发明的具体实施方式,并不用以限制本发明,任何本发明所属领域内的技术人员,在本发明揭露的技术范围内,所作的修改或替换,都应涵盖在本发明的保护范围之内。
Claims (7)
1.一种基于串口的多层AHB总线架构SoC监测调试系统,包括串口子模块、可配置寄存器、调试子模块和监测子模块,其特征在于:
所述的串口子模块接收上位机的配置信息,并存于可配置寄存器中;
所述的可配置寄存器分别与调试子模块、监测子模块相连,其中存储的配置信息用于控制这两个子模块如何工作;
所述的调试子模块一端与N条总线相连、另一端与串口子模块相连;其在多层AHB总线架构SoC中的地位相当于AHB主设备,能根据配置信息对N条总线中的某一条总线进行调试,并将调试信息通过串口子模块送回上位机;
所述的监测子模块一端与N条总线相连、另一端与串口子模块相连;其在多层AHB总线架构SoC中的地位相当于AHB从设备,能根据配置信息同时监测N条总线中的M条总线,并将监测信息通过串口子模块送回上位机;
所述的M是大于或等于1且小于N的自然数。
2.根据权利要求1所述的一种基于串口的多层AHB总线架构SoC监测调试系统,其特征在于:所述的串口子模块包含一个串口发送单元、一个串口接收单元、一个调试子模块接口、一个监测子模块接口、一个调试/监测切换单元,其中:
所述的串口发送单元将调试监测信息发送给上位机;
所述的串口接收单元接收从上位机传来的配置信息,并存入可配置寄存器;
所述的调试子模块接口从调试子模块读取调试信息;
所述的监测子模块接口从监测子模块读取监测信息;
所述的调试/监测切换单元根据配置信息,决定当前整个串口监测调试模块处于调试模式或监测模式;若处于调试模式,则将调试子模块的调试信息传送给串口发送单元;若处于监测模式,则将监测子模块的监测信息传送给串口发送单元。
3.根据权利要求1所述的一种基于串口的多层AHB总线架构SoC监测调试系统,其特征在于:所述的调试子模块包含一个AHB主设备接口、一个FIFO缓存,其中:
所述的AHB主设备接口同时与N条总线相连,具体为:HBUSREQ、HGRANT、HRDATA[31:0]、HRESP[1:0]、HREADY这5种总线信号需要N组,分别与N条总线相连;但其余的总线信号是N条总线共用的,只用一组;
所述的FIFO缓存接收从AHB主设备接口传来的数据,当其非空时,将通知串口子模块把调试信息从FIFO缓存中取走。
4.根据权利要求1所述的一种基于串口的多层AHB总线架构SoC监测调试系统,其特征在于:所述的监测子模块包含N个AHB从设备接口、一个监测通道选择单元、一个监测处理单元、M个通道缓存、一个通道切换单元,其中:
所述的N个AHB从设备接口的结构与普通AHB从设备接口相同,分别与N条总线相连,并都连接到监测通道选择单元;
所述的监测通道选择单元根据配置信息,从N条总线中选择M条总线的地址、数据、控制信号作为后续M条并行监测通道的输入;
所述的监测处理单元根据配置信息,分别对M条并行监测通道的地址、数据、控制信号进行监测,得到符合条件要求且经过压缩的监测信息,并传给相应通道的缓存;
所述的M个通道缓存接收各自通道的监测信息,当任何一个缓存满时,向通道切换单元发送缓存满信号,请求串口子模块读取监测信息;
所述的通道切换单元选择M个通道缓存中的一个与串口子模块通信,串口子模块从被选中的通道缓存中读取监测信息。
5.根据权利要求4所述的一种基于串口的多层AHB总线架构SoC监测调试系统,其特征在于:所述的监测处理单元包含M个通道触发控制单元、M个通道监测模式选择单元、M个信息压缩单元,其中:
所述的通道触发控制单元根据配置信息,当通道地址、通道控制信号满足监测条件时,产生通道触发使能;
所述的通道监测模式选择单元根据配置信息,工作于不同监测粒度的监测模式,产生通道地址监测使能、通道数据监测使能、通道控制信号监测使能;
所述的信息压缩单元根据上述两个模块所给出的使能信号的组合情况,对通道地址、通道数据、通道控制信号进行有选择的压缩,并送出通道监测信息。
6.根据权利要求1所述的一种基于串口的多层AHB总线架构SoC监测调试系统,其特征在于该监测调试系统的监测方法具体包括以下步骤:
6-1.串口监测调试模块接收上位机的配置信息,决定是否进入监测模式;在监测模式下,监测子模块处于工作状态,而调试子模块处于非工作状态;
6-2.监测子模块中的监测通道选择单元根据配置信息,从N条总线中选择M条总线的地址、数据、控制信号,并将它们传给监测处理单元;
6-3.监测处理单元中从以下6种不同粒度的监测模式中选择一种,从而有选择地对每个通道的地址、数据、控制信号进行监测:
①每个时钟周期记录符合监测条件的通道地址、数据、控制信号;
②每个时钟周期记录符合监测条件的通道地址、数据;
③每个时钟周期记录符合监测条件的通道数据、控制信号;
④当控制信号发生变化时,记录符合监测条件的通道地址、数据、控制信号;
⑤当控制信号发生变化时,记录符合监测条件的通道地址、数据;
⑥当控制信号发生变化时,记录符合监测条件的通道数据、控制信号;
6-4.监测处理单元中对记录的监测信息进行压缩,压缩方法为:
①通道地址:只记录Non-sequential地址,不记录Sequential地址;
②通道数据:将当前监测数据与前一次监测数据相减;
③通道控制信号:采用基于CAM字典的压缩方法,减少监测数据的位数,具体为:
使用8个9位宽的寄存器构成字典,则字典的索引只有3位;
若当前控制信号存在于字典中,则将对应的字典索引作为监测数据;
若当前控制信号不存在于字典中,则将原控制信号作为监测数据,并将该控制信号加入字典;
6-5.各自通道的监测信息存入各自通道的缓存,当任何一个缓存满时,向通道切换单元发送缓存满信号,请求串口子模块读取监测信息;通道切换单元选择M个通道缓存中的一个与串口子模块通信,其切换遵循如下所述的优先级仲裁策略:
①通道序号越小,优先级越高;
②多条通道同时满,且无通道正与串口子模块通信时,序号小的通道取得与串口子模块的通信权;
③当有通道正与串口子模块通信时,必须等当前通道传输结束后,才允许其他通道与串口子模块通信;
6-6.串口子模块从被通道切换单元选中的通道缓存读取监测信息,发送给上位机;
6-7.当所有M条通道的监测都发送给上位机后,本次监测结束,如需开始另一次监测,重新由6-1开始。
7.根据权利要求1所述的一种基于串口的多层AHB总线架构SoC监测调试系统,其特征在于该监测调试系统的调试方法具体包括以下步骤:
7-1.串口监测调试模块接收上位机的配置信息,决定是否进入调试模式;在调试模式下,调试子模块处于工作状态,而监测子模块处于非工作状态;
7-2.调试子模块中的AHB主设备接口根据配置信息,对N条总线中的某一条总线进行调试;如果当前调试是读操作,则把读回的数据送入FIFO缓存;如果当前调试是写操作,则无需返回调试信息,直接跳到7-4;
7-3.串口子模块从调试子模块的FIFO缓存读取调试信息,发送给上位机;
7-4.根据配置信息,当完成预定次数的读/写操作后,本次调试结束,如需开始另一次调试,重新由7-1开始。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110184825XA CN102231129B (zh) | 2011-07-04 | 2011-07-04 | 一种基于串口的多层AHB总线架构SoC监测调试系统与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110184825XA CN102231129B (zh) | 2011-07-04 | 2011-07-04 | 一种基于串口的多层AHB总线架构SoC监测调试系统与方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102231129A CN102231129A (zh) | 2011-11-02 |
CN102231129B true CN102231129B (zh) | 2013-11-13 |
Family
ID=44843695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110184825XA Expired - Fee Related CN102231129B (zh) | 2011-07-04 | 2011-07-04 | 一种基于串口的多层AHB总线架构SoC监测调试系统与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102231129B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102710890B (zh) * | 2012-04-06 | 2014-11-05 | 东莞中山大学研究院 | 双ahb总线的视频处理片上系统 |
CN104991875A (zh) * | 2015-07-02 | 2015-10-21 | 成都智明达数字设备有限公司 | 一种地址总线的检测方法 |
CN105808396A (zh) * | 2016-03-04 | 2016-07-27 | 浙江大华技术股份有限公司 | 一种芯片调试装置、调试方法及soc芯片系统 |
CN105786576B (zh) * | 2016-03-17 | 2019-06-04 | 硅谷数模半导体(北京)有限公司 | 基于串口的芯片调试方法和装置 |
CN107872281A (zh) * | 2016-09-26 | 2018-04-03 | 上海数字电视国家工程研究中心有限公司 | 接收机调试装置 |
CN107872282A (zh) * | 2016-09-26 | 2018-04-03 | 上海数字电视国家工程研究中心有限公司 | 接收机调试装置 |
CN108009065B (zh) * | 2016-10-31 | 2020-02-07 | 深圳市中兴微电子技术有限公司 | 监控axi总线的方法和装置 |
CN106951356B (zh) * | 2017-03-27 | 2020-04-07 | 南京大学 | 基于fpga的信号接口处理板状态信息监测方法 |
CN107133148B (zh) * | 2017-05-10 | 2023-05-30 | 鸿秦(北京)科技有限公司 | 一种SoC总线监视装置及其工作方法 |
CN108197699B (zh) * | 2018-01-05 | 2020-04-07 | 中国人民解放军国防科技大学 | 针对卷积神经网络硬件加速器的调试模块 |
CN108427629A (zh) * | 2018-03-12 | 2018-08-21 | 杭州朔天科技有限公司 | 一种数据压缩的SoC芯片信息追踪装置和性能优化方法 |
CN113190400B (zh) * | 2021-04-19 | 2022-11-04 | 思澈科技(上海)有限公司 | 一种适用于ahb协议的总线监控模块与监控方法 |
CN114090480B (zh) * | 2022-01-17 | 2022-04-22 | 英韧科技(南京)有限公司 | 主控内嵌式指令和数据记录装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101676887A (zh) * | 2008-08-15 | 2010-03-24 | 北京北大众志微系统科技有限责任公司 | 一种基于ahb总线结构的总线监听方法及装置 |
CN102103565A (zh) * | 2009-12-21 | 2011-06-22 | 上海奇码数字信息有限公司 | 先进高性能系统总线连接装置及连接方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101685323B (zh) * | 2008-09-22 | 2011-06-22 | 联想(北京)有限公司 | 一种计算机扩展坞及其切换工作方法 |
-
2011
- 2011-07-04 CN CN201110184825XA patent/CN102231129B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101676887A (zh) * | 2008-08-15 | 2010-03-24 | 北京北大众志微系统科技有限责任公司 | 一种基于ahb总线结构的总线监听方法及装置 |
CN102103565A (zh) * | 2009-12-21 | 2011-06-22 | 上海奇码数字信息有限公司 | 先进高性能系统总线连接装置及连接方法 |
Also Published As
Publication number | Publication date |
---|---|
CN102231129A (zh) | 2011-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102231129B (zh) | 一种基于串口的多层AHB总线架构SoC监测调试系统与方法 | |
CN100336345C (zh) | 双主控网络设备及其主备切换方法 | |
US20100325481A1 (en) | Device having redundant core and a method for providing core redundancy | |
JP2011065685A (ja) | 開放形コアプロトコルを基盤とするバスシステム | |
CN1570907B (zh) | 多处理器系统 | |
CN100557589C (zh) | 功耗减少的先进微控制器总线架构系统及其驱动方法 | |
CN101140556A (zh) | 用可编程器件实现访问多个i2c从器件的方法及装置 | |
CN109308283A (zh) | 一种SoC片上系统及其外设总线切换方法 | |
CN114168520B (zh) | 光纤通信总线装置、设备和系统 | |
CN111338996B (zh) | 一种支持多协议的复合总线控制器 | |
CN105573951A (zh) | 一种针对数据流传输的ahb总线接口系统 | |
CN102169470B (zh) | 一种ahb总线到bvci总线的转换桥 | |
CN102636987B (zh) | 双重化控制装置 | |
CN110635985A (zh) | 一种FlexRay-CPCIe通信模块 | |
CN116841932A (zh) | 一种可灵活连接的便携式高速数据存取设备及其工作方法 | |
CN100377137C (zh) | 一种C*Core微处理器应用AMBA总线的设计方法 | |
CN100517283C (zh) | 先进高性能系统总线连接装置及先进高性能系统总线装置 | |
CN102419739A (zh) | 多主总线仲裁共享装置以及仲裁方法 | |
CN106874228A (zh) | 基于i2c总线的控制器及通信方法、多控制器间的通信方法 | |
CN101344875B (zh) | 一种片上集成系统SoC的APB总线桥 | |
CN102750254A (zh) | 高速高带宽ahb总线到低速低带宽ahb总线的双向转换桥 | |
CN101025772A (zh) | 一种时分隔离的数据交换方法及其装置 | |
CN114866497B (zh) | 一种全局异步站内同步的PCIe交换电路装置和方法 | |
CN203178870U (zh) | 网口转接卡 | |
CN113434445B (zh) | 一种i3c访问dimm的管理系统和服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131113 Termination date: 20150704 |
|
EXPY | Termination of patent right or utility model |