CN105760321B - SOC芯片的debug时钟域电路 - Google Patents
SOC芯片的debug时钟域电路 Download PDFInfo
- Publication number
- CN105760321B CN105760321B CN201610111615.0A CN201610111615A CN105760321B CN 105760321 B CN105760321 B CN 105760321B CN 201610111615 A CN201610111615 A CN 201610111615A CN 105760321 B CN105760321 B CN 105760321B
- Authority
- CN
- China
- Prior art keywords
- speed
- debug
- unit
- cpu
- circuit
- 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.)
- Active
Links
- 230000009471 action Effects 0.000 claims abstract description 7
- 230000002093 peripheral effect Effects 0.000 claims abstract description 4
- 238000000034 method Methods 0.000 claims description 12
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 6
- 238000013461 design Methods 0.000 description 4
- 238000011161 development Methods 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/382—Information transfer, e.g. on bus using universal interface adapter
- G06F13/385—Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/38—Universal adapter
- G06F2213/3852—Converter between protocols
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种SOC芯片的debug时钟域电路,包括超高速CPU系统、高速debug系统、中速系统以及低速debug系统四个时钟域;所述超高速CPU系统包括多核cpu和cache电路,运行频率为全芯片最高;所述高速debug系统负责将cpu高速运行过程中的大量debug数据实时导出;所述中速系统是芯片中的主要总线和外部设备控制电路;所述低速debug系统主要负责debug过程中的配置动作;且所述时钟域之间的信号连接均是通过处于时钟域边界的异步桥进行连接。
Description
技术领域
本发明涉及一种SOC芯片的debug时钟域电路。
背景技术
随着SOC芯片技术的快速发展,CPU运行速度越来越快,如果需要debug速度可以将芯片状态实时输出,这其实对debug的速度提出了更高的要求。
在传统的设计中,由于SOC芯片运行速度和debug速度都十分低下,时钟域的划分上通常都是一个单一的时钟域,所有的debug电路都工作在一个时钟下,这种设计方法非常简单实用,但是随着芯片的发展,这种设计方法缺点也越来越明显,Debug的速度会明显受限于部分运行速度最慢的模块,造成debug信息不能实时输出芯片内部的状态,造成严重的信息丢失等现象。
发明内容
本发明要解决的技术问题,在于提供一种debug电路的时钟域设计方法,将debug电路中的各个部分用时钟域分开,使高性能的部分工作于高频时钟下,对速度要求不高且运行频率也跑不高的电路运行于低频时钟下,这样使得电路可以充分发挥性能,使debug电路整体性能得到极大提高,可以满足新型的SOC高性能debug需求。
本发明是这样实现的:一种SOC芯片的debug时钟域电路,包括超高速CPU系统、高速debug系统、中速系统以及低速debug系统四个时钟域;
所述超高速CPU系统包括多核CPU和cache电路,运行频率为全芯片最高;
所述高速debug系统负责将CPU高速运行过程中的大量debug数据实时导出;
所述中速系统是芯片中的主要总线和外部设备控制电路;
所述低速debug系统主要负责debug过程中的配置动作;
所述超高速CPU系统与高速debug系统进行信号连接,所述高速debug系统与低速debug系统进行信号连接,所述低速debug系统与中速系统进行信号连接;且所述信号连接均是通过处于时钟域边界的异步桥进行连接。
进一步的,所述超高速CPU系统的运行频率为2GHz以上,电路实现以高速LVT cell为主要单元;
所述高速debug系统运行频率在0.9~1.1GHz,电路实现是以高速LVT cell为主要单元;
所述中速系统的运行频率小于1GHz,电路实现以中速RVT cell为主要单元,
所述低速debug系统运行频率9-11MHz,电路实现以低速HVT cell为主要单元。
进一步的,所述高速debug系统进一步包含时间信息单元、时间信息控制单元、debug信息采集单元、ATB协议转化单元、ATB混合单元和接口控制单元;
所述中速系统进一步包括相线连接的系统总线和外设模块;
所述低速debug系统进一步包括apb配置总线和jtag协议解析单元;
所述多核CPU中的每个CPU和所述cache电路均分别连接一所述时间信息单元和一所述debug信息采集单元,所述时间信息控制单元分别连接时间信息单元、ATB混合单元和接口控制单元;每个所述debug信息采集单元均通过一所述ATB协议转化单元依次连接至所述所述ATB混合单元和接口控制单元;所述接口控制单元再通过芯片可观测IO连接至芯片外部;
所述jtag协议解析单元通过apb配置总线分别通过一所述异步桥连接每个时间信息单元、每个debug信息采集单元、所述ATB混合单元和接口控制单元,再通过一所述异步桥连接所述中速系统的系统总线。
本发明具有如下优点:将debug电路中的各个部分用时钟域分开,使高性能的部分工作于高频时钟下,对速度要求不高且运行频率也跑不高的电路运行于低频时钟下,这样使得电路可以充分发挥性能,使debug电路整体性能得到极大提高,可以满足新型的SOC高性能debug需求。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明电路的原理结构框图。
具体实施方式
如图1所示,本发明的SOC芯片的debug时钟域电路,包括超高速CPU系统100、高速debug系统200、中速系统300以及低速debug系统400四个时钟域;
所述超高速CPU系统100包括多核CPU和cache电路,运行频率为全芯片最高;所述超高速CPU系统100的运行频率为2GHz以上,电路实现以高速LVT cell为主要单元;
所述高速debug系统200负责将CPU高速运行过程中的大量debug数据实时导出;所述高速debug系统运行频率在0.9~1.1GHz,电路实现是以高速LVT cell为主要单元;
所述中速系统300是芯片中的主要总线和外部设备控制电路;所述中速系统的运行频率小于1GHz,电路实现以中速RVT cell为主要单元,
所述低速debug系统400主要负责debug过程中的配置动作;所述低速debug系统运行频率9-11MHz,电路实现以低速HVT cell为主要单元。
所述超高速CPU系统100与高速debug系统200进行信号连接,所述高速debug系统200与低速debug系统400进行信号连接,所述低速debug系统400与中速系统300进行信号连接;且所述信号连接均是通过处于时钟域边界的异步桥A进行连接。
其中,所述高速debug系统200进一步包含时间信息单元201、时间信息控制单元202、debug信息采集单元203、ATB协议转化单元204、ATB混合单元205和接口控制单元206;
所述中速系统300进一步包括相线连接的系统总线301和外设模块302;
所述低速debug系统400进一步包括apb配置总线401和jtag协议解析单元402;
所述多核CPU中的每个CPU和所述cache电路均分别连接一所述时间信息单元和一所述debug信息采集单元203,所述时间信息控制单元202分别连接时间信息单元201、ATB混合单元205和接口控制单元206;每个所述debug信息采集单元203均通过一所述ATB协议转化单元204依次连接至所述所述ATB混合单元205和接口控制单元206;所述接口控制单元206再通过芯片可观测IO连接至芯片外部,即依次连接至芯片外部的ATB解混合单元501、ATB协议解析单元502以及电脑503;
所述jtag协议解析单元402通过apb配置总线401分别通过一所述异步桥A连接每个时间信息单元201、每个debug信息采集单元203、所述ATB混合单元205和接口控制单元206,再通过一所述异步桥A连接所述中速系统300的系统总线301。
其中,
所述时间信息单元201用于产生时间信息送往对应的相互间有时间关系的debug对象,包括CPU、cache以及接口控制单元206;并收集CPU每个动作时对应的时间信息送往时间信息控制单元202做debug先后顺序控制;
所述时间信息控制单元202用于控制协调各个时间信息单元201的先后顺序和控制接口控制单元206的输出优先级;
所述多核CPU中每个CPU都可以独立执行程序,可以多核并行工作,接收时间信息单元201送来的时间信息,进行debug行为的先后控制,和debug信息导出动作;
所述cache是配合多核CPU工作的缓存,可以将数据通过PTMHz导出;
所述debug信息采集单元203负责采集debug对象的debug信息,并送往ATB协议转换单元204;
所述ATB协议转换单元204在接收各个debug源的debug信息数据流后,转化为ATB协议数据流,并将ATB协议的各个数据流送往ATB混合单元205;
所述ATB混合单元205负责将多个ATB数据流合成一路ATB数据,并送往接口控制单元206;
所述接口控制单元206根据配置输出debug信息;
所述高速debug系统200还可包括其他模块(未图示),其他模块是多核CPU之外的其他模块,比如gpu,video_decoder等模块,该其他模块也可以通过debug信息采集单元203把debug信息导出;
所述jtag协议解析单元402负责将jtag协议转为apb配置总线协议,然后通过apb控制debug系统中的各模块,此处的jtag是标准的边界扫描协议,可以通过所述jtag协议解析单元402控制所有的模块。
本发明电路的工作流程如下:
1、电路上电并进入debug模式后,通过jtag接口控制apb配置总线401将所有的时间信息单元201和时间信息控制单元202进行初始化;设置CPU的优先级;同时设置接口控制单元206的输出优先级;设置多核之间的优先级断点;配置debug信息采集单元203。
2、当CPU开始工作后,每个CPU一旦出现程序指针变化,或者读写操作,对应的CPU监视器即debug信息采集单元203就会采集一次该CPU的debug信息,对应CPU的debug信息,包括运行指针,运行程序内容,读取和写入数据的值,并和时间信息产生单元送来的时间信息值一起送往debug信息采集单元203;同时,cache的每次内部数据变化也会将对应的地址和新的数据送往对应的debug信息采集单元203。
3、时间信息单元201会产生时间信息送往CPU,同时会将CPU每个动作的时间信息送往时间信息控制单元202,可以实现以下功能:
A)产生时间信息给CPU,让每个CPU行为产生debug信息数据时可以带上时间信息,以保证在最后输出还原debug信息时可以得到多核之间每个指令执行的先后顺序信息;
B)在设置多核之间的先后执行的优先级断点debug约束时,让有先后执行约束的CPU中后执行的CPU等待前面执行的CPU完成指令后再开始后续指令的执行;具体为:在没有收到时间信息控制单元202送来的先执行CPU指令完成标志前,后执行的CPU已经完成指令执行,则会停止指令运行去等待标志信息,直到先执行CPU指令完成后,时间信息单元201将先执行指令的CPU完成指令的标志送往时间信息控制单元202,时间信息控制单元202再将标志分发到后执行的那些CPU中,让其开始执行后续指令;
C)在debug信息数据过大想节省debug数据带宽,或者用户不希望导出某些debug源的信息时,可以通过时间信息控制单元202控制ATB混合单元205对相应的通道不进行ATB混合操作,从而实现屏蔽某个debug源数据,同时也可以设置屏蔽的时间段,ATB混合单元205会根据时间信息单元201的时间信息来判断屏蔽通道对应的时间信息是否在设置时间段内来决定是否评估该通道;
4、debug信息采集单元203收到所有debug信息后,根据配置将信息打包送往ATB协议转换单元204转为ATB协议数据;数据打包时将时间信息、运行指针、运行程序、读数据、写数据等信息根据配置进行打包,如果配置某些数据不打包则将这些数据不做打包处理;比如配置运行时的读数据和写数据不打包,则打包后的数据不包含读数据和写数据。通过这个方法可以根据用户需求进行数据保密保护和节省debug数据带宽的目标.
5、ATB协议转换单元204再送往ATB混合单元205进行混合,在混合时会根据时间信息控制单元202设置的关闭通道和关闭通道时间段来将屏蔽通道ATB信息不混合入最终的debug数据流中;
6、debug数据流可以根据时间信息控制单元202的控制进行输出,时间信息控制单元202可以通过配置来控制输出的时间段,即在某些时间段不进行debug信息输出,通过这个方法可以根据用户需求在关键指令或者程序段执行时进行关键信息保护;
7、debug信息输出芯片后,外部电路板通过连接ATB的解混合单元501和ATB协议解析单元502,连到电脑503内存中的debug信息池,然后debug软件可以将每个CPU的debug信息池的内容实时更新到显示屏幕上供工作人员进行分析。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (2)
1.一种SOC芯片的debug时钟域电路,其特征在于:包括超高速CPU系统、高速debug系统、中速系统以及低速debug系统四个时钟域;
所述超高速CPU系统包括多核CPU和cache电路,运行频率为2GHz以上,电路实现以高速LVT cell为主要单元,运行频率为全芯片最高;
所述高速debug系统负责将CPU高速运行过程中的大量debug数据实时导出;运行频率在0.9~1.1GHz,电路实现是以高速LVT cell为主要单元;
所述中速系统是芯片中的主要总线和外部设备控制电路;运行频率小于1GHz,电路实现以中速RVT cell为主要单元;
所述低速debug系统主要负责debug过程中的配置动作;运行频率9-11MHz,电路实现以低速HVT cell为主要单元;
所述超高速CPU系统与高速debug系统进行信号连接,所述高速debug系统与低速debug系统进行信号连接,所述低速debug系统与中速系统进行信号连接;且所述信号连接均是通过处于时钟域边界的异步桥进行连接。
2.根据权利要求1所述的SOC芯片的debug时钟域电路,其特征在于:所述高速debug系统进一步包含时间信息单元、时间信息控制单元、debug信息采集单元、ATB协议转化单元、ATB混合单元和接口控制单元;
所述中速系统进一步包括相线连接的系统总线和外设模块;
所述低速debug系统进一步包括apb配置总线和jtag协议解析单元;
所述多核CPU中的每个CPU和所述cache电路均分别连接一所述时间信息单元和一所述debug信息采集单元,所述时间信息控制单元分别连接时间信息单元、ATB混合单元和接口控制单元;每个所述debug信息采集单元均通过一所述ATB协议转化单元依次连接至所述ATB混合单元和接口控制单元;所述接口控制单元再通过芯片可观测IO连接至芯片外部;
所述jtag协议解析单元通过apb配置总线分别通过一所述异步桥连接每个时间信息单元、每个debug信息采集单元、所述ATB混合单元和接口控制单元,再通过一所述异步桥连接所述中速系统的系统总线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610111615.0A CN105760321B (zh) | 2016-02-29 | 2016-02-29 | SOC芯片的debug时钟域电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610111615.0A CN105760321B (zh) | 2016-02-29 | 2016-02-29 | SOC芯片的debug时钟域电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105760321A CN105760321A (zh) | 2016-07-13 |
CN105760321B true CN105760321B (zh) | 2019-08-13 |
Family
ID=56330417
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610111615.0A Active CN105760321B (zh) | 2016-02-29 | 2016-02-29 | SOC芯片的debug时钟域电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105760321B (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8407457B2 (en) * | 2007-09-28 | 2013-03-26 | Freescale Semiconductor, Inc. | System and method for monitoring debug events |
US9552206B2 (en) * | 2010-11-18 | 2017-01-24 | Texas Instruments Incorporated | Integrated circuit with control node circuitry and processing circuitry |
CN103810074B (zh) * | 2012-11-14 | 2017-12-29 | 华为技术有限公司 | 一种片上系统芯片及相应的监控方法 |
US9021306B2 (en) * | 2012-12-13 | 2015-04-28 | Apple Inc. | Debug access mechanism for duplicate tag storage |
CN105068898B (zh) * | 2015-06-24 | 2018-12-18 | 福州瑞芯微电子股份有限公司 | USB type-C高速debug方法及装置 |
-
2016
- 2016-02-29 CN CN201610111615.0A patent/CN105760321B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN105760321A (zh) | 2016-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110603528B (zh) | 调试系统和方法 | |
US10318468B2 (en) | FPGA-based interface signal remapping method | |
US7058855B2 (en) | Emulation interface system | |
JP3105223B2 (ja) | マイクロコンピュータ,マイクロプロセッサおよびコア・プロセッサ集積回路用デバッグ周辺装置 | |
US7930162B1 (en) | Accelerating hardware co-simulation using dynamic replay on first-in-first-out-driven command processor | |
US8527812B2 (en) | Information processing device | |
US8825922B2 (en) | Arrangement for processing trace data information, integrated circuits and a method for processing trace data information | |
US9684583B2 (en) | Trace data export to remote memory using memory mapped write transactions | |
US10102050B2 (en) | System and method for generating cross-core breakpoints in a multi-core microcontroller | |
US10180850B1 (en) | Emulating applications that use hardware acceleration | |
US6526501B2 (en) | Adapter for a microprocessor | |
CN105446933A (zh) | 多核心处理器的调试系统与调试方法 | |
US20190271740A1 (en) | Non-intrusive on-chip debugger with remote protocol support | |
US9946823B2 (en) | Dynamic control of design clock generation in emulation | |
Su et al. | Multi-core software/hardware co-debug platform with ARM CoreSight™, on-chip test architecture and AXI/AHB bus monitor | |
CN105760321B (zh) | SOC芯片的debug时钟域电路 | |
CN111008042B (zh) | 基于异构流水线的高效通用处理器执行方法及系统 | |
CN102110066B (zh) | 一种税控加密卡的控制方法 | |
CN100474266C (zh) | 一种用于数字信号处理器的调试系统及其调试方法 | |
Vermeulen et al. | Interactive debug of socs with multiple clocks | |
CN115221070A (zh) | 基于NVMe盘的片上系统诊断方法 | |
CN105760322B (zh) | 一种多目标的高速debug电路 | |
Hochberger et al. | Acquiring an exhaustive, continuous and real-time trace from SoCs | |
Stollon | Multicore Debug | |
Hong et al. | A run-pause-resume silicon debug technique for multiple clock domain systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: 350000 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China Patentee after: Ruixin Microelectronics Co., Ltd Address before: 350000 building, No. 89, software Avenue, Gulou District, Fujian, Fuzhou 18, China Patentee before: Fuzhou Rockchips Electronics Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |