CN115454757A - 芯片总线调试装置及方法、soc芯片、计算设备、介质 - Google Patents
芯片总线调试装置及方法、soc芯片、计算设备、介质 Download PDFInfo
- Publication number
- CN115454757A CN115454757A CN202211167210.0A CN202211167210A CN115454757A CN 115454757 A CN115454757 A CN 115454757A CN 202211167210 A CN202211167210 A CN 202211167210A CN 115454757 A CN115454757 A CN 115454757A
- Authority
- CN
- China
- Prior art keywords
- write
- data
- read
- debugging
- bus
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/263—Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请提供了一种芯片总线调试装置及方法、SOC芯片、计算设备、存储介质,涉及芯片架构技术领域。所述芯片总线调试装置集成于SOC芯片内,所述装置包括接口单元和处理单元;所述接口单元,通过通用外设接口与上位机连接,用于将通过通用外设接口接收到的上位机的调试命令数据串并转换为读写控制命令后发送给所述处理单元,并将所述处理单元返回的调试结果数据进行并串转换后输出到所述上位机;所述处理单元用于将所述读写控制命令转换为总线命令,并将SOC芯片执行所述总线命令的调试结果数据发送到所述接口单元。本申请能够基于标准的总线互连架构,使得上位机通过通用的外设总线接口即可对SOC芯片进行总线调试,降低了调试成本。
Description
技术领域
本申请涉及芯片架构技术领域,特别涉及一种芯片总线调试装置及方法、SOC芯片、计算设备、存储介质。
背景技术
SoC(System on Chip,片上系统)芯片基于标准的总线互连架构,如高级微控制器总线架构(Advanced Microcontroller Bus Architecture,AMBA)、片上网络(Network onChip,NoC)、Wishbone总线架构等。SoC芯片的总线调试要求在调试过程中,上位机(一般指PC机)配合一定的调试设备和芯片预留调试接口,通过芯片内总线互连访问整个芯片的地址空间,进而控制/判断芯片内相应IP或者电路的工作状态。如图1所示,主流总线调试方式是在芯片内部集成专用的ARM Coresight相关组件,并使用专用的调试器套件,通过芯片专用的JTAG/SWD接口来对芯片内总线进行调试。
ARM Coresight相关组件功能非常强大,除了能对总线进行调试外,更主要的作用是对CPU Core进行调试。但仍有相当多的调试场景并不需要对CPU Core进行调试。例如大批量量产芯片的客户调试,由于CPU Core已经充分验证,大批量量产芯片的客户无需再对CPU Core进行验证和调试,仅仅需要对总线(包括其关联的IP)进行调试;又例如采用成熟的CPU core的小规模SoC芯片,对于这类芯片来说,可以裁剪CPU Core调试功能,减小芯片面积,从而降低芯片的成本。
并且,一旦采用了Coresight组件,就需要配合专用的调试器套件,这些调试套件价格昂贵,进一步造成芯片调试方案成本的增加。因此,对于无需CPU Core调试功能的调试方案,可以采用一套更简单更低成本的总线调试方案。
发明内容
有鉴于此,本申请提出一种芯片总线调试装置及方法、SOC芯片、计算设备、存储介质,能够基于标准的总线互连架构,使得上位机通过通用的外设总线接口即可对SOC芯片进行总线调试,降低了调试成本。
第一方面,本申请提供了一种芯片总线调试装置,集成于SOC芯片内,所述装置包括接口单元和处理单元;
所述接口单元,通过通用外设接口与上位机连接,用于将通过通用外设接口接收到的上位机的调试命令数据串并转换为读写控制命令后发送给所述处理单元,并将所述处理单元返回的调试结果数据进行并串转换后输出到所述上位机;
所述处理单元用于将所述读写控制命令转换为总线命令,并将SOC芯片执行所述总线命令的调试结果数据发送到所述接口单元。
由上,本申请提供的芯片总线调试装置,其接口模块可通过标准总线连接外部的上位机,以接收上位机的调试命令数据,并将其进行串并转换形成并行的读写控制命令后发送到处理单元,处理单元根据总线协议将该读写控制命令转换为总线命令,以提供给SOC芯片进行相应的功能调试,同时该处理单元还将调试结果数据发送到接口单元,以返回到上位机。本申请基于标准的总线互连架构,能够使得上位机通过外设总线接口即可实现对SOC芯片的总线调试,无需使用专业调试器套件,降低了调试成本。
可选的,所述接口单元具体用于将接收到的上位机的调试命令数据进行缓存和串并解析,将解析出的读地址、获取读数据状态、写地址、写数据、获取写数据状态发送至所述处理单元,并将所述处理单元返回的所述SOC芯片执行读写调试操作后的调试结果数据进行并串转换后输出到所述上位机。
可选的,所述处理单元具体用于将所述读地址、写地址、写数据分别对应转换为读地址通道、写地址通道、写数据通道发送至所述SOC芯片,并将所述SOC芯片执行读调试操作后的读数据通道转换为读数据和读数据状态反馈到所述接口单元,执行写调试操作后的写响应通道转换为写数据状态反馈到所述接口单元。
可选的,所述接口单元包括接口控制模块、输入数据移位缓存器、输出数据移位缓存器、命令解析器、命令参数缓存器、写控制器和读控制器;
所述接口控制模块用于接收所述上位机的调试命令数据后存入所述输入数据移位缓存器,并将所述输出数据移位缓存器返回的调试结果数据输出到所述上位机;
所述输入数据移位缓存器用于将所述调试命令数据中的调试命令发送至所述命令解析器,将命令参数发送至所述命令参数缓存器;
所述命令解析器用于对所述调试命令进行解析,将解析出的发送读地址、获取读数据状态发送至所述读控制器,将解析出的发送写地址、发送写数据、获取写数据状态发送至所述写控制器;
所述命令参数缓存器用于将所述命令参数中的读地址发送至所述读控制器,将写地址和写数据发送至所述写控制器;
所述读控制器用于根据读地址从所述处理单元获取读数据和读数据状态;
所述写控制器用于根据写地址将所述写数据写入所述处理单元,并获取写数据状态。
由上,接口控制模块可用于进行总线协议解析,将上位机发送的调试命令数据存入输入数据移位寄存器,该调试命令数据包括调试命令和命令参数,然后由输入数据移位寄存器分别将调试命令发送至命令解析器,将命令参数发送至命令参数缓存器,并分别进行解析后,将解析得到的发送写地址、发送写数据、获取写数据状态、写地址和写数据发送到写控制器,还将解析得到的发送读地址、获取读数据状态、读地址发送到读控制器,从而实现调试命令数据到读写控制命令的转换,接口控制模块还连接有输出数据移位缓存器,该输出数据移位缓存器用于将读控制器和写控制器反馈的数据通过接口控制模块输出到上位机,以便于上位机得到调试结果。
可选的,所述处理单元包括写地址通道控制模块、写数据通道控制模块、写响应通道控制模块、读地址通道控制模块和读数据通道控制模块;
所述写地址通道控制模块连接所述写控制器,用于将所述写地址转换为写地址通道;
所述写数据通道控制模块连接所述写控制器,用于将所述写数据转换为写数据通道;
所述写响应通道控制模块连接所述写控制器,用于将写响应通道转换为写数据状态并反馈到所述写控制器;
所述读地址通道控制模块连接所述读控制器,用于将所述读地址转换为读地址通道;
所述读数据通道控制模块连接所述读控制器,用于将读数据通道转换为读数据和读数据状态并反馈到所述读控制器。
由上,通过处理单元可将接口单元发送的读写控制命令转换为总线命令,处理单元的各模块均包含响应的有限状态机,以分别处理对应的通道协议,其中写地址通道控制模块、写数据通道控制模块和写响应通道控制模块分别连接接口单元的写控制器,写地址通道控制模块用于将写地址转换为写地址通道,写数据通道控制模块用于将写数据转换为写数据通道,写响应通道控制模块用于将写响应通道转换为写数据状态并反馈到写控制器,读地址通道控制模块和读数据通道控制模块则分别连接接口单元的读控制器,读地址通道控制模块用于将读地址转换为读地址通道,读数据通道控制模块用于将读数据通道转换为读数据和读数据状态并反馈到读控制器。
可选的,所述处理单元通过总线连接所述SOC芯片的至少一个功能模块,以根据所述总线命令执行对功能模块的调试并获取调试结果数据。
由上,处理单元可通过总线连接SOC芯片的至少一个功能模块,示例的,该总线可以是AXI总线,AXI总线是一种面向高性能、高带宽、低延迟的片内总线,无需采用复杂的桥接,就可以实现高频率的操作,通过AXI总线实现处理单元与SOC芯片的各功能模块的连接,从而使得处理单元将解析得到的AXI总线命令发送到SOC芯片的各功能模块,以实现对各功能模块的功能调试。
可选的,所述接口单元通过UART接口或SPI接口连接所述上位机。
由上,本申请的接口单元可通过设置UART(Universal Asynchronous Receiver/Transmitter,通用异步接收/发送)接口或SPI(Serial Peripheral Interface,串行外设)接口等标准外设接口,从而使得上位机能够通过UART总线或SPI总线等标准总线连接该芯片总线调试装置,通过总线控制该芯片总线调试装置,进而实现对整个芯片地址空间的调试和访问。
第二方面,本申请提供了一种芯片总线调试方法,包括:
将SOC芯片通过通用外设接口接收到的上位机的调试命令数据进行串并转换为读写控制命令;
将所述读写控制命令转换为总线命令,并获取SOC芯片执行所述总线命令的调试结果数据;
将所述调试结果数据进行并串转换后输出到所述上位机。
第三方面,本申请提供了一种SOC芯片,包括上述的芯片总线调试装置、总线及至少一个功能模块;
所述芯片总线调试装置通过所述总线对所述功能模块进行调试。
第四方面,本申请提供了一种计算设备,所述计算设备包括:
处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述处理器执行,使得所述处理器实现上述的芯片总线调试方法。
第五方面,本申请提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现上述的芯片总线调试方法。
本申请的这些和其它方面在以下(多个)实施例的描述中会更加简明易懂。
附图说明
图1为现有的一种采用Coresight组件的芯片调试架构示意图;
图2为本申请实施例提供的一种芯片总线调试装置的模块图;
图3为本申请实施例提供的一种SOC芯片调试架构示意图;
图4为本申请实施例提供的一种接口单元的结构图;
图5为本申请实施例提供的一种处理单元的结构图;
图6为本申请实施例提供的一种芯片总线调试方法的流程图;
图7为本申请实施例提供的一种计算设备的结构图。
应理解,上述结构示意图中,各框图的尺寸和形态仅供参考,不应构成对本申请实施例的排他性的解读。结构示意图所呈现的各框图间的相对位置和包含关系,仅为示意性地表示各框图间的结构关联,而非限制本申请实施例的物理连接方式。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
本申请实施例提供了一种芯片总线调试装置,可适用于上位机通过总线对SOC芯片进行调试,具体可通过本申请实施例的芯片总线调试装置与SOC芯片内的总线相连,将上位机发送的调试命令转换为对应的总线命令,从而实现对采用多种片内总线架构的SOC芯片进行调试。示例的,该SOC芯片的片内总线架构可以包括但不限于AHB总线、APB总线和AXI总线等。下述实施例将以AXI总线为例,AXI总线是一种面向高性能、高带宽、低延迟的片内总线,无需采用复杂的桥接,就可以实现高频率的操作。如图2所示,该芯片总线调试装置包括接口单元10和处理单元20;其中,该接口单元10用于将通过总线接收到的上位机的调试命令数据串并转换为读写控制命令后发送给处理单元20,并将处理单元20返回的数据进行并串转换后输出到上位机;处理单元20用于将读写控制命令转换为AXI总线命令,并将SOC芯片执行该AXI总线命令的调试结果数据发送到接口单元10。
本实施例的芯片总线调试装置可集成于SOC芯片内部架构中,其中接口单元10可通过通用外设接口(例如UART接口、SPI接口)连接上位机,接收上位机发送的调试命令数据,处理单元20可通过AXI总线连接SOC芯片的至少一个功能模块,以使SOC芯片根据AXI总线命令执行对功能模块的调试,并将调试结果数据通过接口单元10输出到上位机。基于图2所示的芯片总线调试装置,本申请另一实施例还提供了一种包含上述芯片总线调试装置的SOC芯片调试架构,如图3所示,该芯片调试架构包括集成于SOC芯片2内部的总线调试装置1,该SOC芯片2基于标准的总线互连架构(Bus interconnect),使得该总线调试装置1、芯片的CPU核心(ARM CPU Cores)、各功能模块(如IP1、IP2…IPn等)均遵循标准总线协议,形成总线互连架构,并且该SOC芯片架构提供一总线接口,以使外部的上位机3通过总线控制该总线调试装置1,进而实现对该SOC芯片的访问和调试。
在一些实施例中,该SOC芯片架构提供的总线接口可以是UART接口,则上位机3即可通过标准的UART总线控制该总线调试装置1,进而实现对该SOC芯片的访问和调试;该SOC芯片架构提供的总线接口还可以是SPI接口,则上位机3即可通过标准的SPI总线控制该总线调试装置1,进而实现对该SOC芯片的访问和调试。该UART接口和SPI接口均属于通用的标准低速外设接口,采用该类总线接口能够使得包含该总线调试装置的SOC芯片架构的成本更低,且调试适用范围更广。
具体的,该总线调试装置包括接口单元10和处理单元20,该接口单元10用于将通过总线接收到的上位机3的调试命令数据进行串并转换,将串并转换后的读写控制命令后发送给处理单元20,并将处理单元20返回的数据进行并串转换后输出到上位机3;处理单元20用于将读写控制命令转换为AXI总线命令,并将SOC芯片执行该AXI总线命令的调试结果数据发送到接口单元10。
在一些实施例中,接口单元10具体可用于将接收到的上位机的调试命令数据进行缓存和串并解析,将解析出的读地址、获取读数据状态、写地址、写数据、获取写数据状态发送至处理单元20;处理单元20具体可用于将读地址、写地址、写数据分别对应转换为AXI读地址通道、AXI写地址通道、AXI写数据通道发送至SOC芯片,并将SOC芯片执行读调试操作后的AXI读数据通道转换为读数据和读数据状态反馈到接口单元10,执行写调试操作后的AXI写响应通道转换为写数据状态反馈到接口单元10;接口单元10还可将处理单元20返回的SOC芯片执行读写调试操作后的读数据、读数据状态、写数据状态进行并串转换后输出到上位机3。
如图4所示的一种接口单元的结构图,本实施例的接口单元10包括接口控制模块(uart_if_control)101、输入数据移位缓存器(datain_shift_buffer)102、输出数据移位缓存器(dataout_shift_buffer)103、命令解析器(cmd_parser)104、命令参数缓存器(data_buffer)105、写控制器(write_control)106和读控制器(read_control)107;
其中,接口控制模块101用于实现UART协议解析,通过接收上位机3的调试命令数据后存入输入数据移位缓存器102,并将输出数据移位缓存器103返回的数据输出到上位机3;该调试命令数据具体包括调试命令和命令参数,该输入数据移位缓存器102用于将调试命令数据中的调试命令发送至命令解析器104,将命令参数发送至命令参数缓存器105;命令解析器104用于对调试命令进行解析,将解析出的发送读地址、获取读数据状态发送至读控制器107,将解析出的发送写地址、发送写数据、获取写数据状态发送至写控制器106;命令参数缓存器105用于将命令参数中的读地址发送至读控制器107,将写地址和写数据发送至写控制器106;读控制器107用于实现自定义的读握手协议,该读握手协议用于实现读控制器107和处理单元20之间的身份确认,其包含类型、长度和内容三个字段,通过对该读握手协议中的类型、长度和内容分别进行设置,使读控制器和处理单元确认彼此身份后,即可建立通信以便于读控制器107将读地址发送至处理单元20,并从处理单元20获取读数据;写控制器106用于实现自定义的写握手协议,同理,该写握手协议用于实现写控制器106和处理单元20之间的身份确认,其包含类型、长度和内容三个字段,通过对该写握手协议中的类型、长度和内容分别进行设置,使写控制器106和处理单元20确认彼此身份后,即可建立通信以便于写控制器106将写地址和写数据发送至处理单元20。
如图5所示的一种处理单元的结构图,本实施例的处理单元20包括写地址通道控制模块(aw_ch_control)201、写数据通道控制模块(w_ch_control)202、写响应通道控制模块(b_ch_control)203、读地址通道控制模块(ar_ch_control)204和读数据通道控制模块(r_ch_control)205;该处理单元20包含的各模块均包含相应的FSM(Finite StateMachine,有限状态机),用以处理对应的通道协议,在本实施例中,用于实现AXI总线协议;
其中,写地址通道控制模块201、写数据通道控制模块202和写响应通道控制模块203分别连接上述接口单元10的写控制器106,写地址通道控制模块201用于实现写地址通道协议,将写地址(waddr)转换为AXI写地址通道(AXI_AW_CH);写数据通道控制模块202用于实现写数据通道协议,将写数据(wdata)转换为AXI写数据通道(AXI_W_CH);写响应通道控制模块203用于实现写地址通道协议,将AXI写响应通道(AXI_B_CH)转换为写数据状态(wack)并反馈到写控制器106;
读地址通道控制模块204和读数据通道控制模块205分别连接上述接口单元10的读控制器107,读地址通道控制模块204用于实现读地址通道协议,将读地址(raddr)转换为AXI读地址通道(AXI_AR_CH);读数据通道控制模块205用于实现读数据通道协议,用于将AXI读数据通道(AXI_R_CH)转换为读数据(rdata)和读数据状态(rack)并反馈到读控制器107。
在一些实施例中,本申请的上述SOC芯片调试架构中的总线互连架构可以是AXI总线互连架构,还可以是其他AMBA总线互连架构,例如AHB总线互连架构、APB总线互连架构等,均属于本申请实施例的实施范围。
基于图2-图5所示的硬件结构,本申请实施例还提供了一种芯片总线调试方法,如图6所示,该方法包括:
S301:将SOC芯片通过通用外设接口接收到的上位机的调试命令数据进行串并转换为读写控制命令;
本步骤中,SOC芯片通过内部的芯片总线调试装置提供的通用外设接口连接外部的上位机,并接收上位机通过总线发送的调试命令数据,然后通过芯片总线调试装置中的接口单元进行串并转换,转换为读写控制命令后发送到芯片总线调试装置中的处理单元。
S302:将所述读写控制命令转换为AXI总线命令,并获取SOC芯片执行所述AXI总线命令的调试结果数据;
本步骤中,芯片总线调试装置中的处理单元根据内部预设的AXI总线协议,将接口单元发送的读写控制命令转换为AXI总线命令,以使SOC芯片根据该AXI总线命令执行对各功能模块的调试,并将调试结果数据反馈到该处理单元。
S303:将所述调试结果数据进行并串转换后输出到所述上位机。
本步骤中,处理单元在获取SOC芯片执行AXI总线命令的调试结果数据后,发送到接口单元,由接口单元进行并串转换后通过总线输出到外部的上位机中,以便于上位机得到调试反馈结果。
本实施例提供的芯片总线调试方法的具体执行过程可参考图2-图5所示的实施例,此处不再赘述。
图7是本申请实施例提供的一种计算设备1000的结构性示意性图。该计算设备1000包括:处理器1010、存储器1020、通信接口1030、总线1040。
应理解,图7所示的计算设备1000中的通信接口1030可以用于与其他设备之间进行通信。
其中,该处理器1010可以与存储器1020连接。该存储器1020可以用于存储该程序代码和数据。因此,该存储器1020可以是处理器1010内部的存储单元,也可以是与处理器1010独立的外部存储单元,还可以是包括处理器1010内部的存储单元和与处理器1010独立的外部存储单元的部件。
可选的,计算设备1000还可以包括总线1040。其中,存储器1020、通信接口1030可以通过总线1040与处理器1010连接。总线1040可以是外设部件互连标准(PeripheralComponent Interconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。所述总线1040可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条线表示,但并不表示仅有一根总线或一种类型的总线。
应理解,在本申请实施例中,该处理器1010可以采用中央处理单元(centralprocessing unit,CPU)。该处理器还可以是其它通用处理器、数字信号处理器(digitalsignal processor,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field programmable gate Array,FPGA)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。或者该处理器1010采用一个或多个集成电路,用于执行相关程序,以实现本申请实施例所提供的技术方案。
该存储器1020可以包括只读存储器和随机存取存储器,并向处理器1010提供指令和数据。处理器1010的一部分还可以包括非易失性随机存取存储器。例如,处理器1010还可以存储设备类型的信息。
在计算设备1000运行时,所述处理器1010执行所述存储器1020中的计算机执行指令执行上述芯片总线调试方法的操作步骤。
应理解,根据本申请实施例的计算设备1000可以对应于执行根据本申请各实施例的方法中的相应主体,并且计算设备1000中的各个模块的上述其它操作和/或功能分别为了实现本实施例各方法的相应流程,为了简洁,在此不再赘述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行上述芯片总线调试方法,该方法包括上述各个实施例所描述的方案中的至少之一。
本申请实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括、但不限于无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
需要说明的是,本申请所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,上述对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
说明书和权利要求书中的词语“第一、第二、第三等”或模块A、模块B、模块C等类似用语,仅用于区别类似的对象,不代表针对对象的特定排序,可以理解地,在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
在上述的描述中,所涉及的表示步骤的标号,并不表示一定会按此步骤执行,还可以包括中间的步骤或者由其他的步骤代替,在允许的情况下可以互换前后步骤的顺序,或同时执行。
说明书和权利要求书中使用的术语“包括”不应解释为限制于其后列出的内容;它不排除其它的元件或步骤。因此,其应当诠释为指定所提到的所述特征、整体、步骤或部件的存在,但并不排除存在或添加一个或更多其它特征、整体、步骤或部件及其组群。因此,表述“包括装置A和B的设备”不应局限为仅由部件A和B组成的设备。
本说明书中提到的“一个实施例”或“实施例”意味着与该实施例结合描述的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在本说明书各处出现的用语“在一个实施例中”或“在实施例中”并不一定都指同一实施例,但可以指同一实施例。此外,在本申请的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
注意,上述仅为本申请的较佳实施例及所运用的技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明的构思的情况下,还可以包括更多其他等效实施例,均属于本发明的保护范畴。
Claims (11)
1.一种芯片总线调试装置,其特征在于,集成于SOC芯片内,所述装置包括接口单元和处理单元;
所述接口单元,通过通用外设接口与上位机连接,用于将通过通用外设接口接收到的上位机的调试命令数据串并转换为读写控制命令后发送给所述处理单元,并将所述处理单元返回的调试结果数据进行并串转换后输出到所述上位机;
所述处理单元用于将所述读写控制命令转换为总线命令,并将SOC芯片执行所述总线命令的调试结果数据发送到所述接口单元。
2.根据权利要求1所述的装置,其特征在于,所述接口单元具体用于将接收到的上位机的调试命令数据进行缓存和串并解析,将解析出的读地址、获取读数据状态、写地址、写数据、获取写数据状态发送至所述处理单元,并将所述处理单元返回的所述SOC芯片执行读写调试操作后的调试结果数据进行并串转换后输出到所述上位机。
3.根据权利要求2所述的装置,其特征在于,所述处理单元具体用于将所述读地址、写地址、写数据分别对应转换为读地址通道、写地址通道、写数据通道发送至所述SOC芯片,并将所述SOC芯片执行读调试操作后的读数据通道转换为读数据和读数据状态反馈到所述接口单元,执行写调试操作后的写响应通道转换为写数据状态反馈到所述接口单元。
4.根据权利要求1至3任意一项所述的装置,其特征在于,所述接口单元包括接口控制模块、输入数据移位缓存器、输出数据移位缓存器、命令解析器、命令参数缓存器、写控制器和读控制器;
所述接口控制模块用于接收所述上位机的调试命令数据后存入所述输入数据移位缓存器,并将所述输出数据移位缓存器返回的调试结果数据输出到所述上位机;
所述输入数据移位缓存器用于将所述调试命令数据中的调试命令发送至所述命令解析器,将命令参数发送至所述命令参数缓存器;
所述命令解析器用于对所述调试命令进行解析,将解析出的发送读地址、获取读数据状态发送至所述读控制器,将解析出的发送写地址、发送写数据、获取写数据状态发送至所述写控制器;
所述命令参数缓存器用于将所述命令参数中的读地址发送至所述读控制器,将写地址和写数据发送至所述写控制器;
所述读控制器用于根据读地址从所述处理单元获取读数据和读数据状态;
所述写控制器用于根据写地址将所述写数据写入所述处理单元,并获取写数据状态。
5.根据权利要求4所述的装置,其特征在于,所述处理单元包括写地址通道控制模块、写数据通道控制模块、写响应通道控制模块、读地址通道控制模块和读数据通道控制模块;
所述写地址通道控制模块连接所述写控制器,用于将所述写地址转换为写地址通道;
所述写数据通道控制模块连接所述写控制器,用于将所述写数据转换为写数据通道;
所述写响应通道控制模块连接所述写控制器,用于将写响应通道转换为写数据状态并反馈到所述写控制器;
所述读地址通道控制模块连接所述读控制器,用于将所述读地址转换为读地址通道;
所述读数据通道控制模块连接所述读控制器,用于将读数据通道转换为读数据和读数据状态并反馈到所述读控制器。
6.根据权利要求1所述的装置,其特征在于,所述处理单元通过总线连接所述SOC芯片的至少一个功能模块,以根据所述总线命令执行对功能模块的调试并获取调试结果数据。
7.根据权利要求1所述的装置,其特征在于,所述接口单元通过UART接口或SPI接口连接所述上位机。
8.一种芯片总线调试方法,其特征在于,包括:
将SOC芯片通过通用外设接口接收到的上位机的调试命令数据进行串并转换为读写控制命令;
将所述读写控制命令转换为总线命令,并获取SOC芯片执行所述总线命令的调试结果数据;
将所述调试结果数据进行并串转换后输出到所述上位机。
9.一种SOC芯片,其特征在于,包括权利要求1至7任意一项所述的芯片总线调试装置、总线及至少一个功能模块;
所述芯片总线调试装置通过所述总线对所述功能模块进行调试。
10.一种计算设备,其特征在于,包括:
处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述处理器执行,使得所述处理器实现如权利要求8所述的芯片总线调试方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被计算机执行时实现如权利要求8所述的芯片总线调试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211167210.0A CN115454757A (zh) | 2022-09-23 | 2022-09-23 | 芯片总线调试装置及方法、soc芯片、计算设备、介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211167210.0A CN115454757A (zh) | 2022-09-23 | 2022-09-23 | 芯片总线调试装置及方法、soc芯片、计算设备、介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115454757A true CN115454757A (zh) | 2022-12-09 |
Family
ID=84306567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211167210.0A Pending CN115454757A (zh) | 2022-09-23 | 2022-09-23 | 芯片总线调试装置及方法、soc芯片、计算设备、介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115454757A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116684506A (zh) * | 2023-08-02 | 2023-09-01 | 浪潮电子信息产业股份有限公司 | 数据处理方法、系统、电子设备及计算机可读存储介质 |
CN116775542A (zh) * | 2023-08-22 | 2023-09-19 | 成都芯脉微电子有限责任公司 | 一种ai芯片、系统及数据处理方法 |
CN116909951A (zh) * | 2023-09-11 | 2023-10-20 | 归芯科技(深圳)有限公司 | 芯片及其控制方法 |
CN117171044A (zh) * | 2023-08-16 | 2023-12-05 | 上海同星智能科技有限公司 | 基于汽车标定信号自动化读写方法的开发调试系统及方法 |
CN117171044B (zh) * | 2023-08-16 | 2024-06-07 | 上海同星智能科技有限公司 | 基于汽车标定信号自动化读写方法的开发调试系统及方法 |
-
2022
- 2022-09-23 CN CN202211167210.0A patent/CN115454757A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116684506A (zh) * | 2023-08-02 | 2023-09-01 | 浪潮电子信息产业股份有限公司 | 数据处理方法、系统、电子设备及计算机可读存储介质 |
CN116684506B (zh) * | 2023-08-02 | 2023-11-07 | 浪潮电子信息产业股份有限公司 | 数据处理方法、系统、电子设备及计算机可读存储介质 |
CN117171044A (zh) * | 2023-08-16 | 2023-12-05 | 上海同星智能科技有限公司 | 基于汽车标定信号自动化读写方法的开发调试系统及方法 |
CN117171044B (zh) * | 2023-08-16 | 2024-06-07 | 上海同星智能科技有限公司 | 基于汽车标定信号自动化读写方法的开发调试系统及方法 |
CN116775542A (zh) * | 2023-08-22 | 2023-09-19 | 成都芯脉微电子有限责任公司 | 一种ai芯片、系统及数据处理方法 |
CN116775542B (zh) * | 2023-08-22 | 2023-11-03 | 成都芯脉微电子有限责任公司 | 一种ai芯片、系统及数据处理方法 |
CN116909951A (zh) * | 2023-09-11 | 2023-10-20 | 归芯科技(深圳)有限公司 | 芯片及其控制方法 |
CN116909951B (zh) * | 2023-09-11 | 2023-12-19 | 归芯科技(深圳)有限公司 | 芯片及其控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115454757A (zh) | 芯片总线调试装置及方法、soc芯片、计算设备、介质 | |
US10718812B2 (en) | Device, system and method to support communication of test, debug or trace information with an external input/output interface | |
US7058855B2 (en) | Emulation interface system | |
US9684583B2 (en) | Trace data export to remote memory using memory mapped write transactions | |
US9639447B2 (en) | Trace data export to remote memory using remotely generated reads | |
US8825922B2 (en) | Arrangement for processing trace data information, integrated circuits and a method for processing trace data information | |
US8914566B2 (en) | Managing interrupts | |
CN112035302B (zh) | 一种总线数据的实时监控分析方法、装置及系统 | |
US8301936B2 (en) | Apparatus and method for performing a screening test of semiconductor integrated circuits | |
US6484273B1 (en) | Integrated EJTAG external bus interface | |
US20140359374A1 (en) | System and method for managing trace data in a portable computing device | |
US9710349B2 (en) | Storing first computer trace information in memory of second computer | |
US10896119B1 (en) | Common input/output interface for application and debug circuitry | |
CN117076337B (zh) | 一种数据传输方法、装置、电子设备及可读存储介质 | |
CN112231161B (zh) | 多芯片调试方法及多芯片调试装置 | |
CN115454881B (zh) | Risc-v架构的调试系统及调试方法 | |
CN116610590A (zh) | 基于zynq平台实现多片fpga远程调试方法及系统 | |
CN111079922B (zh) | 基于axi-apb的神经网络交互系统、方法、服务器及存储介质 | |
CN116820867B (zh) | 一种芯片调试方法、装置及芯片 | |
CN117370257B (zh) | 串口转总线的装置、现场可编程门阵列及其调试方法 | |
CN116107827A (zh) | 一种内置mcu单元的小型芯片的软件调试系统及调试方法 | |
CN114546917A (zh) | 一种fpga侧辅助ip系统 | |
JP2003099336A (ja) | Usb通信評価システム | |
CN117472779A (zh) | 一种应用于处理器的两线制硬件调试系统 | |
CN117149675A (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 |