CN105095041A - 芯片的调试方法 - Google Patents
芯片的调试方法 Download PDFInfo
- Publication number
- CN105095041A CN105095041A CN201510566200.8A CN201510566200A CN105095041A CN 105095041 A CN105095041 A CN 105095041A CN 201510566200 A CN201510566200 A CN 201510566200A CN 105095041 A CN105095041 A CN 105095041A
- Authority
- CN
- China
- Prior art keywords
- card
- debugging
- cpu
- draw
- pin
- 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.)
- Granted
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种芯片的调试方法,嵌入式芯片内部将SD卡接口的时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用;且嵌入式芯片内部有一个微处理器在运行或后台有看门狗单元在运行;SD卡插入情况下,SD驱动将所述6根IO全部切换成SD卡功能脚;调试时需要拔出SD卡,接上调试接口,通过微处理器修改对应的IO管脚为三种调试接口功能,或因看门狗单元超时未处理而跳转到ROM内,执行ROM内固化的代码,将6根IO强行切换成三种调试接口进行调试;SD卡拔出情况下,SD驱动将所述6根IO全部切换成三种调试接口的IO功能;之后就能直接进行调试。本发明既节省了板级资源,又能够有效地进行调试。
Description
技术领域
本发明涉及一种嵌入式芯片复用SD接口的调试方法。
背景技术
现有的嵌入式设备调试依赖串口和一些常用的硬件工具,比如JTAG(JointTestActionGroup,联合测试行为组织)或者其他TRACE(跟踪调试器)工具。首先这需要嵌入式芯片在管脚上给这些接口专门预留IO,增加芯片封装的难度。其次如果整机产品需要这些调试接口,将使得布板增加负载,而且对结构件摆放和成品的厚度要求较高,因此整机一般都不预留。然而在很多生产线上遇到突发问题需要进行调试的时候,往往因为整机的布板没有预留这些接口,导致临时不能追加,而无法进行调试。所以本发明基于此考虑,设计一种复用SD接口的调试方法和系统,来解决这些问题。
发明内容
本发明要解决的技术问题,在于提供一种芯片的调试方法,有效地节省了板级资源,又能够有效地进行调试。
本发明可以这样实现:一种芯片的调试方法,嵌入式芯片的SD卡接口设有时钟信号线、命令线、四根数据线以及一根卡检测脚信号线;嵌入式芯片内部将所述时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用;且嵌入式芯片内部有一个微处理器在运行;
(1)SD卡插入情况下,SD驱动读取到SD控制器所识别到的卡检测脚为低,判定SD卡插入,将所述6根IO全部切换成SD卡功能脚;之后当CPU异常需要调试时,则需要拔出SD卡,接上调试接口,此时微处理器会接收到SD卡拔出中断信号,即可读取SD卡检测脚信号,确认SD卡已被拔出,再读取对应IO管脚的配置,发现仍为SD卡IO配置,说明此时CPU异常无法响应,则微处理器修改对应的IO管脚为三种调试接口功能,随后就能直接进行调试;
(2)SD卡拔出情况下,SD驱动读取到SD控制器所识别到卡检测脚为高,判定SD卡拔出,将所述6根IO全部切换成三种调试接口的IO功能;之后当CPU异常时,由于6根IO已经全部切换成三种调试接口功能了,就能直接进行调试。
本发明还可以这样实现:一种嵌入式芯片复用SD接口的调试方法,其特征在于:嵌入式芯片的SD卡接口设有时钟信号线、命令线、四根数据线以及一根卡检测脚信号线;嵌入式芯片内部将所述时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用;且嵌入式芯片后台有一个看门狗单元在运行,需要CPU定时处理它;
(1)SD卡插入情况下,SD驱动读取到SD控制器所识别到的卡检测脚为低,判定SD卡插入,将所述6根IO全部切换成SD卡功能脚;之后当CPU异常需要调试时,则需要拔出SD卡,接上调试接口,此时由于CPU异常无法定时处理看门狗单元的中断,导致看门狗单元超时未处理,则跳转到ROM内,执行ROM内固化的代码,该固化代码就是将SD卡的接口(6根IO)强行切换成三种调试接口进行调试;
(2)SD卡拔出情况下,SD驱动读取到SD控制器所识别到卡检测脚为高,判定SD卡拔出,将所述6根IO全部切换成三种调试接口的IO功能;之后当CPU异常时,由于6根IO已经全部切换成三种调试接口功能了,就能直接进行调试。
进一步的,对于本发明,所述(1)中,当SD卡插入卡槽后,SD卡槽的检测脚会产生一个下降沿的电位变化,此时SD控制器会将此插卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的初始化,初始化过程包括了将IO单元内的对应IO切换成SD卡的功能,使得SD控制器的时钟,命令和数据能够通过这6根IO与SD卡进行通信。
进一步的,对于本发明,所述(2)中,当SD卡拔出卡槽后,SD卡槽的检测脚会产生一个上升沿的电位变化,此时SD控制器会将此拔卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的反初始化,反初始化过程包括了将IO单元内的对应IO两两分组,切换成三种调试接口功能,再从SD卡槽飞线引出这些接口,就能够从外部进行调试。
本发明具有如下优点:本发明通过设计一种复用SD接口的调试方法,实现嵌入式设备的调试,无需嵌入式芯片在管脚上给接口专门预留IO,有效地节省了板级资源,又能够有效地进行调试。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明方法常规插卡模式的结构框图。
图2为本发明方法拔插SD卡模式的结构框图。
图3为本发明方法实施例一CPU异常下的切换过程示意图。
图4为本发明方法实施例二CPU异常下的切换过程示意图。
具体实施方式
实施例一
如图1至图3所示,本实施例中,嵌入式芯片的SD卡接口设有时钟信号线、命令线、四根数据线以及一根卡检测脚信号线;嵌入式芯片内部将所述时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用,该6根IO即图中的时钟IO、命令IO、数据线IO0~IO3;且嵌入式芯片内部有一个微处理器(MCU)在运行,它是功能相对简单的处理器,系统使用的是功能复杂、性能高的CPU,微处理器和CPU都可接收SD卡拔插中断信号,但是正常情况下微处理器只接收不处理,由CPU来处理(调用SD卡驱动来执行响应的操作)。
(1)SD卡插入情况下,SD驱动读取到SD控制器所识别到的卡检测脚为低,判定SD卡插入,将所述6根IO全部切换成SD卡功能脚;之后当CPU异常需要调试时,SD卡在SD卡槽内,则需要拔出SD卡,接上调试接口,由于此时SD驱动无法运行(CPU异常了,而驱动代码是CPU执行的),此时虽然SD卡拔出了,但是6根IO无法被切换成调试接口功能,此时微处理器也会接收到SD卡拔出中断信号,即可读取SD卡检测脚信号,确认SD卡已被拔出,再读取对应IO管脚的配置,发现仍为SD卡IO配置,说明此时CPU异常无法响应,则微处理器修改对应的IO管脚为三种调试接口功能,随后就能直接进行调试;
(2)SD卡拔出情况下,SD驱动读取到SD控制器所识别到卡检测脚为高,判定SD卡拔出,将所述6根IO全部切换成三种调试接口的IO功能;之后当CPU异常时,由于6根IO已经全部切换成三种调试接口功能了,就能直接进行调试。
实施例二
如图1、图2及图4所示,本实施例中,嵌入式芯片的SD卡接口设有时钟信号线、命令线、四根数据线以及一根卡检测脚信号线;嵌入式芯片内部将所述时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用,该6根IO即图中的时钟IO、命令IO、数据线IO0~IO3;且嵌入式芯片后台有一个看门狗单元在运行,作用是定时触发一个事件要求CPU进行处理,因此需要CPU定时处理它;
(1)SD卡插入情况下,SD驱动读取到SD控制器所识别到的卡检测脚为低,判定SD卡插入,将所述6根IO全部切换成SD卡功能脚;之后当CPU异常需要调试时,SD卡在卡槽内,则需要拔出SD卡,接上调试接口,此时SD驱动无法运行(CPU异常了,驱动代码是CPU执行的),此时虽然SD卡拔出了,但是6根IO无法被切换成调试接口功能,由于CPU异常无法定时处理看门狗单元的中断,导致看门狗单元超时未处理,则跳转到ROM内,执行ROM内固化的代码,该固化代码就是将SD卡的接口(6根IO)强行切换成三种调试接口进行调试;
(2)SD卡拔出情况下,SD驱动读取到SD控制器所识别到卡检测脚为高,判定SD卡拔出,将所述6根IO全部切换成三种调试接口的IO功能;之后当CPU异常时,由于6根IO已经全部切换成三种调试接口功能了,就能直接进行调试。
上述两个实施例的所述(1)中,当SD卡插入卡槽后,SD卡槽的检测脚(中断IO触地)会产生一个下降沿的电位变化,此时SD控制器会将此插卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的初始化,初始化过程包括了将IO单元内的对应IO切换成SD卡的功能,使得SD控制器的时钟,命令和数据能够通过这6根IO与SD卡进行通信。
上述两个实施例的所述(2)中,当SD卡拔出卡槽后,SD卡槽的检测脚(中断IO触地)会产生一个上升沿的电位变化,此时SD控制器会将此拔卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的反初始化,反初始化过程包括了将IO单元内的对应IO两两分组,切换成三种调试接口功能,再从SD卡槽飞线引出这些接口,就能够从外部进行调试。
图2中,SD控制器是SD数据卡通讯的物理逻辑单元,用于上位机发送SD协议格式数据给SD卡。串口控制器是上位机用于产生并发送特定协议格式的指令,该指令为符合UART格式,所以也可以称之为通用异步收发传输器。管脚选择单元用于管理IO单元的IO管脚,及用于切换不同功能输出到不同IO管脚。
如前所述,本发明通过设计一种复用SD接口的调试方法,实现嵌入式设备的调试,无需嵌入式芯片在管脚上给接口专门预留IO,有效地节省了板级资源,又能够有效地进行调试。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (6)
1.一种芯片的调试方法,其特征在于:嵌入式芯片的SD卡接口设有时钟信号线、命令线、四根数据线以及一根卡检测脚信号线;嵌入式芯片内部将所述时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用;且嵌入式芯片内部有一个微处理器在运行;
(1)SD卡插入情况下,SD驱动读取到SD控制器所识别到的卡检测脚为低,判定SD卡插入,将所述6根IO全部切换成SD卡功能脚;之后当CPU异常需要调试时,则需要拔出SD卡,接上调试接口,此时微处理器会接收到SD卡拔出中断信号,即可读取SD卡检测脚信号,确认SD卡已被拔出,再读取对应IO管脚的配置,发现仍为SD卡IO配置,说明此时CPU异常无法响应,则微处理器修改对应的IO管脚为三种调试接口功能,随后就能直接进行调试;
(2)SD卡拔出情况下,SD驱动读取到SD控制器所识别到卡检测脚为高,判定SD卡拔出,将所述6根IO全部切换成三种调试接口的IO功能;之后当CPU异常时,由于6根IO已经全部切换成三种调试接口功能了,就能直接进行调试。
2.根据权利要求1所述的芯片的调试方法,其特征在于:所述(1)中,当SD卡插入卡槽后,SD卡槽的检测脚会产生一个下降沿的电位变化,此时SD控制器会将此插卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的初始化,初始化过程包括了将IO单元内的对应IO切换成SD卡的功能,使得SD控制器的时钟,命令和数据能够通过这6根IO与SD卡进行通信。
3.根据权利要求1所述的芯片的调试方法,其特征在于:所述(2)中,当SD卡拔出卡槽后,SD卡槽的检测脚会产生一个上升沿的电位变化,此时SD控制器会将此拔卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的反初始化,反初始化过程包括了将IO单元内的对应IO两两分组,切换成三种调试接口功能,再从SD卡槽飞线引出这些接口,就能够从外部进行调试。
4.一种芯片的调试方法,其特征在于:嵌入式芯片的SD卡接口设有时钟信号线、命令线、四根数据线以及一根卡检测脚信号线;嵌入式芯片内部将所述时钟信号线、命令线以及四根数据线分别作为三种调试接口的6根IO复用;且嵌入式芯片后台有一个看门狗单元在运行,需要CPU定时处理它;
(1)SD卡插入情况下,SD驱动读取到SD控制器所识别到的卡检测脚为低,判定SD卡插入,将所述6根IO全部切换成SD卡功能脚;之后当CPU异常需要调试时,则需要拔出SD卡,接上调试接口,此时由于CPU异常无法定时处理看门狗单元的中断,导致看门狗单元超时未处理,则跳转到ROM内,执行ROM内固化的代码,该固化代码就是将所述6根IO强行切换成三种调试接口进行调试;
(2)SD卡拔出情况下,SD驱动读取到SD控制器所识别到卡检测脚为高,判定SD卡拔出,将所述6根IO全部切换成三种调试接口的IO功能;之后当CPU异常时,由于6根IO已经全部切换成三种调试接口功能了,就能直接进行调试。
5.根据权利要求4所述的芯片的调试方法,其特征在于:所述(1)中,当SD卡插入卡槽后,SD卡槽的检测脚会产生一个下降沿的电位变化,此时SD控制器会将此插卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的初始化,初始化过程包括了将IO单元内的对应IO切换成SD卡的功能,使得SD控制器的时钟,命令和数据能够通过这6根IO与SD卡进行通信。
6.根据权利要求4所述的芯片的调试方法,其特征在于:所述(2)中,当SD卡拔出卡槽后,SD卡槽的检测脚会产生一个上升沿的电位变化,此时SD控制器会将此拔卡事件通知到CPU,由CPU来运行SD卡驱动程序完成对SD卡的反初始化,反初始化过程包括了将IO单元内的对应IO两两分组,切换成三种调试接口功能,再从SD卡槽飞线引出这些接口,就能够从外部进行调试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510566200.8A CN105095041B (zh) | 2015-09-08 | 2015-09-08 | 芯片的调试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510566200.8A CN105095041B (zh) | 2015-09-08 | 2015-09-08 | 芯片的调试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105095041A true CN105095041A (zh) | 2015-11-25 |
CN105095041B CN105095041B (zh) | 2018-07-03 |
Family
ID=54575537
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510566200.8A Active CN105095041B (zh) | 2015-09-08 | 2015-09-08 | 芯片的调试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105095041B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528270A (zh) * | 2015-12-30 | 2016-04-27 | 东风商用车有限公司 | 一种jtag和bdm集成调试接口及其使用方法 |
CN105701011A (zh) * | 2015-12-31 | 2016-06-22 | 上海盈方微电子有限公司 | 一种调试方法、应用该方法的电子产品及调试卡 |
CN106776191A (zh) * | 2016-11-28 | 2017-05-31 | 湖南国科微电子股份有限公司 | 一种soc芯片调试的实现方法及系统 |
CN107894930A (zh) * | 2017-10-19 | 2018-04-10 | 湖南国科微电子股份有限公司 | 死机状态数据被动恢复处理的方法和装置 |
CN112988271A (zh) * | 2021-03-19 | 2021-06-18 | 四川航天神坤科技有限公司 | 一种被动SelectMAP模式下动态配置FPGA的系统及其方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1326172A2 (en) * | 2001-12-28 | 2003-07-09 | Texas Instruments Incorporated | Communication Method and Apparatus for Assigning Device Identifier |
CN102289419A (zh) * | 2010-06-17 | 2011-12-21 | 珠海全志科技有限公司 | 功能接口与调试接口复用的soc集成电路 |
CN102750243A (zh) * | 2012-07-05 | 2012-10-24 | 中颖电子股份有限公司 | 复用sd接口的易调试嵌入式系统 |
CN103376400A (zh) * | 2012-04-27 | 2013-10-30 | 华为技术有限公司 | 芯片测试方法及芯片 |
-
2015
- 2015-09-08 CN CN201510566200.8A patent/CN105095041B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1326172A2 (en) * | 2001-12-28 | 2003-07-09 | Texas Instruments Incorporated | Communication Method and Apparatus for Assigning Device Identifier |
CN102289419A (zh) * | 2010-06-17 | 2011-12-21 | 珠海全志科技有限公司 | 功能接口与调试接口复用的soc集成电路 |
CN103376400A (zh) * | 2012-04-27 | 2013-10-30 | 华为技术有限公司 | 芯片测试方法及芯片 |
CN102750243A (zh) * | 2012-07-05 | 2012-10-24 | 中颖电子股份有限公司 | 复用sd接口的易调试嵌入式系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105528270A (zh) * | 2015-12-30 | 2016-04-27 | 东风商用车有限公司 | 一种jtag和bdm集成调试接口及其使用方法 |
CN105528270B (zh) * | 2015-12-30 | 2018-03-30 | 东风商用车有限公司 | 一种jtag和bdm集成调试接口及其使用方法 |
CN105701011A (zh) * | 2015-12-31 | 2016-06-22 | 上海盈方微电子有限公司 | 一种调试方法、应用该方法的电子产品及调试卡 |
CN106776191A (zh) * | 2016-11-28 | 2017-05-31 | 湖南国科微电子股份有限公司 | 一种soc芯片调试的实现方法及系统 |
CN107894930A (zh) * | 2017-10-19 | 2018-04-10 | 湖南国科微电子股份有限公司 | 死机状态数据被动恢复处理的方法和装置 |
CN112988271A (zh) * | 2021-03-19 | 2021-06-18 | 四川航天神坤科技有限公司 | 一种被动SelectMAP模式下动态配置FPGA的系统及其方法 |
Also Published As
Publication number | Publication date |
---|---|
CN105095041B (zh) | 2018-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105095041A (zh) | 芯片的调试方法 | |
TWI628545B (zh) | 計算裝置、通用序列匯流排埠以及操作通用序列匯流排的方法 | |
CN107273329B (zh) | 虚拟gpio | |
CN108475227A (zh) | 测试功能组件及数据调试方法 | |
CN103019991A (zh) | 接口系统及切换方法、USB key及UART终端 | |
US20120047295A1 (en) | Multiplexing application and debug channels on a single usb connection | |
CN105446933A (zh) | 多核心处理器的调试系统与调试方法 | |
CN102478940A (zh) | 一种用于计算机系统复用引脚的控制电路 | |
CN102890662A (zh) | 通过对usb hid设备进行二次枚举以识别主机操作系统的方法 | |
CN104750226A (zh) | Usb otg模式识别系统及方法 | |
CN112799985A (zh) | Usb接口控制方法、usb控制电路及智能网联设备主板 | |
CN114355802A (zh) | 一种多核并起的处理器同步调试方法 | |
CN103810068A (zh) | 一种基于sd卡槽的调试设备、系统及其方法 | |
CN112347017A (zh) | Lpc总线接口的ps/2键盘双机外挂系统和切换方法 | |
US9547615B2 (en) | Peripheral protocol negotiation | |
CN104035844A (zh) | 一种故障测试方法及电子设备 | |
CN108153626B (zh) | 一种usb、串口复用与安全隔离系统 | |
CN103207850B (zh) | 异质设备的传输系统 | |
US11334506B2 (en) | Interface connection device, system and method thereof | |
CN105224431A (zh) | 一种嵌入式芯片复用sd接口的调试方法 | |
TWI579704B (zh) | 超高速晶片互連裝置與超高速晶片互連裝置之連線控制方法 | |
CN201667067U (zh) | 一种usb接口 | |
CN107894930A (zh) | 死机状态数据被动恢复处理的方法和装置 | |
CN109597630B (zh) | 一种带检测功能的p2mp软件烧写装置及方法 | |
CN104252430A (zh) | 一种状态指示的方法及电子设备 |
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 |