CN103440216B - 一种通过i2c从设备调试mcu的芯片及方法 - Google Patents

一种通过i2c从设备调试mcu的芯片及方法 Download PDF

Info

Publication number
CN103440216B
CN103440216B CN201310369678.2A CN201310369678A CN103440216B CN 103440216 B CN103440216 B CN 103440216B CN 201310369678 A CN201310369678 A CN 201310369678A CN 103440216 B CN103440216 B CN 103440216B
Authority
CN
China
Prior art keywords
mcu
output
door
character string
trigger
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
Application number
CN201310369678.2A
Other languages
English (en)
Other versions
CN103440216A (zh
Inventor
郭正伟
王光耀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Hangshun Chip Technology R&D Co Ltd
Original Assignee
Shenzhen Huiding Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Huiding Technology Co Ltd filed Critical Shenzhen Huiding Technology Co Ltd
Priority to CN201310369678.2A priority Critical patent/CN103440216B/zh
Publication of CN103440216A publication Critical patent/CN103440216A/zh
Priority to PCT/CN2014/080725 priority patent/WO2015024414A1/zh
Application granted granted Critical
Publication of CN103440216B publication Critical patent/CN103440216B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种通过I2C从设备调试MCU的芯片及方法,属于电子电路技术领域。该芯片包括I2C总线、以及通过I2C总线相连的MCU、I2C从设备和两个以上外设,I2C从设备还用于在芯片外部I2C主设备的控制下进入或退出调试MCU的模式。采用本发明实施例,在对I2C从设备的通用功能不影响的情况下,还可以作为调试接口,不用额外增加其他调试接口就可以实现调试功能,节省了对资源的消耗。

Description

一种通过I2C从设备调试MCU的芯片及方法
技术领域
本发明涉及电子电路技术领域,尤其涉及一种通过I2C从设备调试MCU的芯片及方法。
背景技术
在传统的芯片系统中,I2C从设备通常是作为通用的数据传输接口。芯片外部与MCU进行通信和调试主要是使用JTAG、UART等方式,这样在芯片没有集成JTAG、UART等接口时,就要为调试增加了额外的接口,浪费了系统资源。
发明内容
有鉴于此,本发明要解决的技术问题是提供一种通过I2C从设备调试MCU的芯片及方法,以使I2C从设备可随时停住和释放MCU,且可与MCU执行的程序进行握手操作,用I2C从设备来实现外设对MCU的调试的功能,节省系统资源,并让调试更灵活。
本发明解决上述技术问题所采用的技术方案如下:
根据本发明的一个方面,提供的一种通过I2C从设备调试MCU的芯片包括I2C总线、以及通过I2C总线相连的MCU、I2C从设备和两个以上的外设,其中,I2C从设备还用于在芯片外部I2C主设备的控制下进入或退出调试MCU的模式。
优选地,I2C从设备包括I2C有限状态机、命令解析模块、I2C中断处理模块、I2C寄存器、FIFO写模块和FIFO读模块,其中,命令解析模块、I2C中断处理模块、I2C寄存器、FIFO写模块和FIFO读模块均与I2C有限状态机相连,FIFO写模块和FIFO读模块还分别与命令解析模块相连,I2C寄存器还与I2C中断处理模块相连;
I2C从设备还包括模式控制模块,模式控制模块分别与命令解析模块和I2C有限状态机相连,用于接收命令解析模块发送的第一预定的字符串后,向MCU的指令状态机发送停住MCU的信号,并等待预定的系统时钟周期数后,占据住总线以供芯片外部的I2C主设备与MCU执行的程序进行握手;还用于接收到命令解析模块发送的第二预定的字符串后,释放总线,并向MCU的指令状态机发送释放MCU的信号。
优选地,模式控制模块包括:
监测单元,用于监测是否接收到第一预定的字符串或者第二预定的字符串;
MCU控制单元,用于接收到第一预定的字符串后,向MCU的指令状态机发送停住MCU的信号;还用于接收到第二预定的字符串后,向MCU的指令状态机发送释放MCU的信号。
总线控制单元,用于接收到第一预定的字符串后,等待预定的系统时钟周期数后,占据住总线;还用于接收到第二预定的字符串后,释放总线。
优选地,模式控制模块包括:
字符串寄存器701、比较器702、第一触发器703、第一非门704、第二非门705、第一与门706、第二与门707、第一或门708、计数器709、第一MUX710、第二MUX711、第二或门712、第二触发器713、第三与门714和第三触发器715,其中:
字符串寄存器701,用于接收I2C主设备写入的字符串;
比较器702,用于比较字符串寄存器701的字符串与预设的字符串是否相同,根据比较结果输出高电平或者低电平信号给第一触发器703;
第一触发器703,用于将比较器702的结果寄存一次,输出到第一非门704和第二与门707;
第一非门704,用于将第一触发器703的输出取反,然后输出到第一与门706;
第一与门706,用于根据比较器702的比较结果和第一非门704的结果进行与运算,用于抓取比较器702输出的信号的上升沿,当其上升沿到来时,产生一个周期的高脉冲输出到第一或门708;
第二非门705,用于将比较器702的输出取反,然后输出到第二与门707;
第二与门707;用于根据第二非门705的输出和第一触发器703的输出进行与运算,用于抓取比较器702的输出信号的下降沿,当其下降沿到来时,产生一个周期的高脉冲信号输出到第一或门708;
第一或门708,用于将来自第一与门706以及第二与门707的两个持续一个周期的高脉冲信号都输出给计数器709;
计数器709,用于根据来自第一或门708的持续一个周期的高脉冲信号作为触发条件,开始时钟周期的脉冲计数,计数完毕后输出一个时钟周期的脉冲到第一MUX 710和第二MUX 711;
第一MUX 710,用于选择是输出低电平还是第二触发器713的输出值作为第二或门712的一个输入,当计数器709的输出为高时,选择低电平作为输出,否则,选择第二触发器713的输出值作为输出;
第二MUX 711,用于选择是输出高电平还是第三触发器715的输出值作为第三与门714的一个输入,当计数器709的输出为高时,选择高电平作为输出,否则,选择第三触发器715的输出值作为输出;
第二或门712以及第二触发器713,用于产生停住MCU的信号,当比较器702的输出转变为高时,其输出相应的转变为高,并一直保持为高输出,直到比较器702的输出转变为低、并且由此触发的计数器709计数且计数结束而产生的一个周期的高脉冲到来时,将其输出拉低;
第三与门714以及第三触发器715,用于产生I2C占住总线的信号,当比较器702的输出转变为高、并且由此触发的计数器709计数且计数结束而产生的一个周期的高脉冲到来时,其输出相应的转变为高,并一直保持为高输出,直到比较器702的输出转变为低时,将其输出拉低。
优选地,芯片外部的I2C主设备与MCU执行的程序进行握手包括:芯片外部的I2C主设备对外设的读或写操作控制。
优选地,预定的系统时钟周期数根据MCU执行其指令集中最长的一条所需要的时钟周期数来确定。
优选地,芯片内部外设包括:读寄存器、写寄存器、程序存储器、和/或数据存储器。
根据本发明的另一个方面,提供的一种通过I2C从设备调试MCU的方法包括:
I2C从设备接收到第一预定的字符串后,先向MCU的指令状态机发送停住MCU的信号;
等待预定的系统时钟周期数后,占据住总线以供芯片外部的I2C主设备与MCU执行的程序进行握手;
接收到第二预定的字符串后,先释放总线,再向MCU的指令状态机发送释放MCU的信号。
优选地,预定的系统时钟周期数根据MCU执行其指令集中最长的一条所需要的时钟周期数来确定。
优选地,芯片外部的I2C主设备与MCU执行的程序进行握手包括:芯片外部的I2C主设备对芯片外设的读或写操作控制。
本发明提供的一种通过I2C从设备调试MCU的芯片及方法,在对I2C从设备的通用功能不影响的情况下,使得I2C从设备可以访问芯片内部所有的外设,同时还可以停住和释放MCU,作为调试接口实现外部I2C主设备对芯片的MCU进行调试与MCU握手的功能。在芯片系统有I2C从设备功能的情况下,不用额外增加其他调试接口就可以实现调试功能,节省了对资源的消耗。
附图说明
图1是本发明实施例提供的一种通过I2C从设备调试MCU的芯片的控制示意图。
图2是本发明实施例提供的一种I2C从设备的结构示意图。
图3是本优选发明实施例提供的一种模式控制模块的结构示意图。
图4是本优选发明实施例提供的一种电路时序图。
图5是本发明实施例提供的一种通过I2C从设备调试MCU的方法流程图。
图6是本发明优选实施例提供的一种通过I2C从设备调试MCU的方法流程图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚、明白,以下结合附图和实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
图1是本发明实施例提供的一种通过I2C从设备调试MCU的芯片的控制示意图,该系统包括芯片10和I2C主设备20,其中:
芯片10,包括I2C总线101、MCU102、I2C从设备103和两个以上的外设104。MCU102、I2C从设备103和外设104通过I2C总线101相连。
其中,I2C总线101和MCU102属于现有技术,I2C从设备103除了保持现有的通用数据传输接口功能外,还可以用作调试接口,在芯片外部I2C主设备20的控制下进入或退出调试MCU的模式,从而达到选择用于通用数据传输接口或者调试接口。外设104也是现有的,包括但不限于包括读寄存器、写寄存器、程序存储器和数据存储器。
I2C主设备20,用于通过发送预设的字符串控制芯片10的I2C从设备103作为通用数据传输接口或者调试接口。
具体来说,在I2C主设备20需要对MCU102进行调试或者访问芯片中的外设104时,向芯片内部I2C从设备103发送预设的第一字符串,I2C从设备103接收到该预设的第一字符串后,先停住MCU102,且保持其所有状态不变,然后占据住I2C总线101,这时,外部I2C主设备20就可以完成所需要进行的任何操作;在操作完成之后,外部I2C主设备20再向内部I2C从设备103发送预设的第二字符串,I2C从设备103接收到该预设的第二字符串后,先释放I2C总线101,再释放MCU102。内部I2C从设备103可以像MCU102一样控制所有的芯片内部的外设104,从而可以做到所有的调试工作都对MCU102透明,MCU102可以在被释放后正确的继续执行。
如图2所示是本发明实施例提供的一种I2C从设备的结构示意图,包括I2C有限状态机1031、命令解析模块1032、I2C中断处理模块1033、I2C寄存器1034、FIFO写模块1035、FIFO读模块1036和模式控制模块1037,命令解析模块1032、I2C中断处理模块1033、I2C寄存器1034、FIFO写模块1035和FIFO读模块1036均与I2C有限状态机1031相连,FIFO写模块1035和FIFO读模块1036还分别与命令解析模块1032相连,I2C寄存器1034还与I2C中断处理模块1033相连;模式控制模块1037分别与I2C有限状态机1031及命令解析模块1032相连,其中:
I2C有限状态机(Finite State Machine)1031,用于对I2C从设备的工作状态控制以及与I2C主设备之间数据接收与发送。
命令解析模块(Command Decode)1032,用于对I2C从设备接收到的命令进行解析。
I2C中断处理模块(Interrupts)1033,用于对I2C从设备的中断控制,这是I2C从设备通用的通信功能。
I2C寄存器(Registers)1034,用于I2C从设备与MCU之间的交互,这是I2C从设备通用的通信功能。
FIFO写模块1035,用于I2C从设备对芯片内外设的写操作控制。
FIFO读模块1036,用于I2C从设备对芯片内外设的读操作控制。
模式控制模块1037,用于接收所述命令解析模块1032发送的第一预定的字符串后,向MCU的指令状态机发送停住MCU的信号,并等待预定的系统时钟周期数后占据住总线以供芯片外部的I2C主设备与MCU执行的程序进行握手;还用于接收到所述命令解析模块1032发送的第二预定的字符串后,释放总线,并向MCU的指令状态机发送释放MCU的信号。
这里,等待预定的系统时钟周期数是为了使MCU有足够的时间将当前正在执行的指令执行完毕,故预定的时钟周期数可以根据本MCU执行其指令集中最长的一条所需要的时钟周期数来确定。
其中,模式控制模块1037可以通过硬件电路来实现,也可以通过运行在I2C从设备上软件程序来实现。按功能模块来划分,模式控制模块可以包括:监测单元、MCU控制单元和总线控制单元,其中:
监测单元,用于监测是否接收到第一预定的字符串或者第二预定的字符串;
MCU控制单元,用于接收到第一预定的字符串后,向MCU的指令状态机发送停住MCU的信号;还用于接收到第二预定的字符串后,向MCU的指令状态机发送释放MCU的信号。
总线控制单元,用于接收到第一预定的字符串后,等待预定的系统时钟周期数后,占据住总线;还用于接收到第二预定的字符串后,释放总线。
本实施例提供的一种I2C从设备,通过增加模式控制模块,实现对MCU的停住或释放操作的控制以及MCU被停住期间对总线的完全占用或释放的控制,从而控制进入或退出调试MCU模式,使得I2C从设备根据需要充当通用数据传输接口或者调试接口。
如图3所示是本优选发明实施例提供的一种模式控制模块的结构示意图,该模块包括:字符串寄存器701、比较器702、第一触发器703、第一非门704、第二非门705、第一与门706、第二与门707、第一或门708、计数器709、第一MUX(多路复用器)710、第二MUX 711、第二或门712、第二触发器713、第三与门714和第三触发器715,其中:
字符串寄存器701,用于接收I2C主设备写入的字符串;
比较器702,用于比较字符串寄存器701的字符串与预设的字符串是否相同,根据比较结果输出高电平或者低电平信号(在本图所示的逻辑结构中,均以高电平有效作为示例,但也可以设置低电平有效,当设置低电平有效时,后续电路都进行相反调整)给第一触发器703;
第一触发器703,用于将比较器702的结果寄存一次,输出到第一非门704和第二与门707;
第一非门704,用于将第一触发器703的输出取反,然后输出到第一与门706;
第一与门706,用于根据比较器702的比较结果和第一非门704的结果进行与运算,用于抓取比较器702输出的信号的上升沿(因为本示例图是以比较结果高电平有效方式设计的电路结构图),当其上升沿(即比较结果由不相等转变为相等)到来时,产生一个周期的高脉冲输出到第一或门708;
第二非门705,用于将比较器702的输出取反,然后输出到第二与门707;
第二与门707;用于根据第二非门705的输出和第一触发器703的输出进行与运算,用于抓取比较器702的输出信号的下降沿(因为本示例图是以比较结果高有效方式设计的电路结构图),当其下降沿(即比较结果由相等转变为不相等)到来时,产生一个周期的高脉冲信号输出到第一或门708;
第一或门708,用于将来自第一与门706以及第二与门707的两个持续一个周期的高脉冲信号都输出给后面的计数器709;
计数器709,用于根据来自第一或门708的持续一个周期的高脉冲信号作为触发条件,开始时钟周期的脉冲计数,计数完毕后输出一个时钟周期的脉冲到第一MUX 710和第二MUX 711。其中,计数周期个数以保证MCU最长的一条指令可以执行完为标准。
第一MUX 710,用于选择是输出低电平(“0”)还是第二触发器713的输出值作为后面的第二或门712的一个输入,当计数器709的输出为高时,选择低电平作为输出,否则,选择第二触发器713的输出值作为输出;
第二MUX 711,用于选择是输出高电平(“1”)还是第三触发器715的输出值作为后面的第三与门714的一个输入,当计数器709的输出为高时,选择高电平作为输出,否则,选择第三触发器715的输出值作为输出;
第二或门712以及第二触发器713,用于产生停住MCU的信号,在本示例中以该信号高有效作为示例,当比较器702的输出转变为高(即相等)时,其输出相应的转变为高,并一直保持为高输出,直到比较器702的输出转变为低(即不相等)、并且由此触发的计数器709计数且计数结束而产生的一个周期的高脉冲到来时,将其输出拉低;
第三与门714以及第三触发器715,用于产生I2C占住总线的信号,在本示例中,该信号以高有效作为示例,当比较器702的输出转变为高(即相等)、并且由此触发的计数器709计数且计数结束而产生的一个周期的高脉冲到来时,其输出相应的转变为高,并一直保持为高输出,直到比较器702的输出转变为低(即不相等)时,将其输出拉低。
本实施例的模式控制模块仅仅举例说明,该举例中,所有信号都以高有效为前提进行的设计,包括电路实现过程中的中间信号以及最后的输出信号(停住MCU信号以及占住总线信号),对应的电路波形图如图4所示,图4中双斜杠“//”表示省略了若干周期,具体情况,由设计者确定。具体实现中,只要能够保证字符串序列的比较器702的输出与输出信号(停住MCU信号以及占住总线信号)之间的对应关系,其他部分均可替换;输入、输出信号,以及中间的信号是高有效还是低有效,均可由设计者自行定义。
如图5所示是本发明实施例提供的一种通过I2C从设备调试MCU的方法流程图,该方法包括:
S501、I2C从设备接收到第一预设的字符串后,向MCU的指令状态机发送停住MCU的信号;
S502、等待预定的系统时钟周期数后,占据住总线以供芯片外部的I2C主设备与MCU执行的程序进行握手;
S503、接收到第二预定的字符串后,释放总线,并向MCU的指令状态机发送释放MCU的信号。
本实例的方法可以通过硬件电路来实现,也可以通过运行在I2C从设备上软件程序来实现。当I2C从设备检测到I2C主设备发送的第一预定的字符串,先停住MCU,且保持其所有状态不变,然后占据住总线,这时,I2C主设备就可以完成所需要进行的任何操作;在操作完成之后,I2C主设备再向内部I2C从设备第二预定的字符串,当I2C从设备检测到该第二预定的字符串后,先释放总线,再释放MCU,从而可以做到所有的调试工作都对MCU透明,MCU可以在被释放后正确的继续执行之前执行完的指令的下一条指令。
如图6所示是本发明优选实施例提供的一种通过I2C从设备调试MCU的方法流程图,该方法包括:
S601、I2C从设备保持通用的功能;
S602、判断是否收到预定的第一字符串,如果是,执行步骤S603,否则回到步骤S601;
S603、向MCU的指令执行状态机发送停止MCU的信号;
S604、等待预定的时钟周期,挂起MCU;
S605、占据住总线以供I2C主设备使用;
S606、I2C主设备执行操作;
S607、I2C主设备发送第二预设的字符串;
S608、I2C从设备释放总线;
S609、向MCU的指令状态机发送释放MCU的信号;
S610、MCU继续执行原功能,转至步骤S601。
本发明提供的一种通过I2C从设备调试MCU的芯片及方法,在对I2C从设备的通用功能不影响的情况下,使得I2C从设备可以访问芯片内部所有的外设,同时还可以停住和释放MCU,作为调试接口实现外部I2C主设备对芯片的MCU进行调试与MCU握手的功能。在芯片系统有I2C从设备功能的情况下,不用额外增加其他调试接口就可以实现调试功能,节省了对资源的消耗。
以上参照附图说明了本发明的优选实施例,并非因此局限本发明的权利范围。本领域技术人员不脱离本发明的范围和实质,可以有多种变型方案实现本发明,比如作为一个实施例的特征可用于另一实施例而得到又一实施例。凡在运用本发明的技术构思之内所作的任何修改、等同替换和改进,均应在本发明的权利范围之内。

Claims (9)

1.一种通过I2C从设备调试MCU的芯片,该芯片包括I2C总线、以及通过所述I2C总线相连的MCU、I2C从设备和两个以上的外设,其特征在于,所述I2C从设备还用于在芯片外部I2C主设备的控制下进入或退出调试MCU的模式;所述I2C从设备包括I2C有限状态机、命令解析模块、I2C中断处理模块、I2C寄存器、FIFO写模块和FIFO读模块,其中,所述命令解析模块、所述I2C中断处理模块、所述I2C寄存器、所述FIFO写模块和所述FIFO读模块均与所述I2C有限状态机相连,所述FIFO写模块和所述FIFO读模块还分别与所述命令解析模块相连,所述I2C寄存器还与所述I2C中断处理模块相连;
所述I2C从设备还包括模式控制模块,所述模式控制模块分别与所述命令解析模块和所述I2C有限状态机相连,用于接收所述命令解析模块发送的第一预定的字符串后,向MCU的指令状态机发送停住MCU的信号,并等待预定的系统时钟周期数后,占据住总线以供芯片外部的I2C主设备与MCU执行的程序进行握手;还用于接收到所述命令解析模块发送的第二预定的字符串后,释放总线,并向MCU的指令状态机发送释放MCU的信号。
2.根据权利要求1所述的芯片,其特征在于,所述模式控制模块包括:
监测单元,用于监测是否接收到第一预定的字符串或者第二预定的字符串;
MCU控制单元,用于接收到第一预定的字符串后,向MCU的指令状态机发送停住MCU的信号;还用于接收到第二预定的字符串后,向MCU的指令状态机发送释放MCU的信号;
总线控制单元,用于接收到第一预定的字符串后,等待预定的系统时钟周期数后,占据住总线;还用于接收到第二预定的字符串后,释放总线。
3.根据权利要求1所述的芯片,其特征在于,所述模式控制模块包括:
字符串寄存器(701)、比较器(702)、第一触发器(703)、第一非门(704)、第二非门(705)、第一与门(706)、第二与门(707)、第一或门(708)、计数器(709)、第一MUX(710)、第二MUX(711)、第二或门(712)、第二触发器(713)、第三与门(714)和第三触发器(715),其中:
字符串寄存器(701),用于接收I2C主设备写入的字符串;
比较器(702),用于比较字符串寄存器(701)的字符串与预设的字符串是否相同,根据比较结果输出高电平或者低电平信号给第一触发器(703);
第一触发器(703),用于将比较器(702)的结果寄存一次,输出到第一非门(704)和第二与门(707);
第一非门(704),用于将第一触发器(703)的输出取反,然后输出到第一与门(706);
第一与门(706),用于根据比较器(702)的比较结果和第一非门(704)的结果进行与运算,用于抓取比较器(702)输出的信号的上升沿,当其上升沿到来时,产生一个周期的高脉冲输出到第一或门(708);
第二非门(705),用于将比较器(702)的输出取反,然后输出到第二与门(707);
第二与门(707);用于根据第二非门(705)的输出和第一触发器(703)的输出进行与运算,用于抓取比较器(702)的输出信号的下降沿,当其下降沿到来时,产生一个周期的高脉冲信号输出到第一或门(708);
第一或门(708),用于将来自第一与门(706)以及第二与门(707)的两个持续一个周期的高脉冲信号都输出给计数器(709);
计数器(709),用于根据来自第一或门(708)的持续一个周期的高脉冲信号作为触发条件,开始时钟周期的脉冲计数,计数完毕后输出一个时钟周期的脉冲到第一MUX(710)和第二MUX(711);
第一MUX(710),用于选择是输出低电平还是第二触发器(713)的输出值作为第二或门(712)的一个输入,当计数器(709)的输出为高时,选择低电平作为输出,否则,选择第二触发器(713)的输出值作为输出;
第二MUX(711),用于选择是输出高电平还是第三触发器(715)的输出值作为第三与门(714)的一个输入,当计数器(709)的输出为高时,选择高电平作为输出,否则,选择第三触发器(715)的输出值作为输出;
第二或门(712)以及第二触发器(713),用于产生停住MCU的信号,当比较器(702)的输出转变为高时,其输出相应的转变为高,并一直保持为高输出,直到比较器(702)的输出转变为低、并且由此触发的计数器(709)计数且计数结束而产生的一个周期的高脉冲到来时,将其输出拉低;
第三与门(714)以及第三触发器(715),用于产生I2C占住总线的信号,当比较器(702)的输出转变为高、并且由此触发的计数器(709)计数且计数结束而产生的一个周期的高脉冲到来时,其输出相应的转变为高,并一直保持为高输出,直到比较器(702)的输出转变为低时,将其输出拉低。
4.根据权利要求1所述的芯片,其特征在于,所述芯片外部的I2C主设备与MCU执行的程序进行握手包括:芯片外部的I2C主设备对所述外设的读或写操作控制。
5.根据权利要求1所述的芯片,其特征在于,所述预定的系统时钟周期数根据MCU执行其指令集中最长的一条所需要的时钟周期数来确定。
6.根据权利要求1-5任意一项权利要求所述的芯片,其特征在于,所述芯片内部外设包括:读寄存器、写寄存器、程序存储器、和/或数据存储器。
7.一种通过I2C从设备调试MCU的方法,其特征在于,该方法包括:
I2C从设备接收到第一预定的字符串后,先向MCU的指令状态机发送停住MCU的信号;
等待预定的系统时钟周期数后,占据住总线以供芯片外部的I2C主设备与MCU执行的程序进行握手;
接收到第二预定的字符串后,先释放总线,再向MCU的指令状态机发送释放MCU的信号。
8.根据权利要求7所述的方法,其特征在于,所述预定的系统时钟周期数根据MCU执行其指令集中最长的一条所需要的时钟周期数来确定。
9.根据权利要求7所述的方法,其特征在于,所述芯片外部的I2C主设备与MCU执行的程序进行握手包括:芯片外部的I2C主设备对芯片外设的读或写操作控制。
CN201310369678.2A 2013-08-22 2013-08-22 一种通过i2c从设备调试mcu的芯片及方法 Active CN103440216B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310369678.2A CN103440216B (zh) 2013-08-22 2013-08-22 一种通过i2c从设备调试mcu的芯片及方法
PCT/CN2014/080725 WO2015024414A1 (zh) 2013-08-22 2014-06-25 一种通过i2c从设备调试mcu的芯片及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310369678.2A CN103440216B (zh) 2013-08-22 2013-08-22 一种通过i2c从设备调试mcu的芯片及方法

Publications (2)

Publication Number Publication Date
CN103440216A CN103440216A (zh) 2013-12-11
CN103440216B true CN103440216B (zh) 2016-12-28

Family

ID=49693907

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310369678.2A Active CN103440216B (zh) 2013-08-22 2013-08-22 一种通过i2c从设备调试mcu的芯片及方法

Country Status (2)

Country Link
CN (1) CN103440216B (zh)
WO (1) WO2015024414A1 (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103440216B (zh) * 2013-08-22 2016-12-28 深圳市汇顶科技股份有限公司 一种通过i2c从设备调试mcu的芯片及方法
CN104899144B (zh) * 2015-06-18 2018-06-15 深圳市新格林耐特通信技术有限公司 一种基于串口中断的调试方法
CN105718396B (zh) * 2016-01-21 2018-05-29 哈尔滨理工大学 一种大数据主设备传输的i2c总线装置及其通讯方法
CN106021041B (zh) * 2016-04-29 2020-01-03 中国科学技术大学 基于有限状态机的多周期非流水线cpu调试方法
CN106126452B (zh) * 2016-06-17 2019-01-01 北京大学 基于IIC协议的Linux操作系统与裸机通信的方法
CN105930294A (zh) * 2016-06-25 2016-09-07 张宏彬 一种基于状态机的数字集成电路总线系统
CN107704417A (zh) * 2017-09-13 2018-02-16 成都锐成芯微科技股份有限公司 与被测设备通信的方法及其通信系统
CN107967230A (zh) * 2017-11-30 2018-04-27 广东高云半导体科技股份有限公司 I3c电路设备、系统和通信方法
WO2019178787A1 (zh) * 2018-03-21 2019-09-26 深圳市汇顶科技股份有限公司 芯片的访问方法、微芯片、智能卡以及调试设备
CN112134814B (zh) * 2020-08-24 2022-04-12 合肥学院 一种板级互联网络结构及通信方法
CN112052132B (zh) * 2020-09-11 2022-09-06 厦门紫光展锐科技有限公司 通过sdio接口调试外挂芯片的方法、装置、设备和介质
CN112612667B (zh) * 2020-12-24 2022-11-22 天津国芯科技有限公司 一种用于SoC芯片的跟踪调试信息处理电路及方法
CN112948242A (zh) * 2021-02-23 2021-06-11 深圳宝新创科技股份有限公司 嵌入式控制器的调试方法、终端设备及存储介质
CN113704104B (zh) * 2021-08-25 2024-02-27 宏晶微电子科技股份有限公司 程序调试方法、设备、系统、电子设备和存储介质
CN115033444B (zh) * 2022-08-10 2022-11-15 合肥健天电子有限公司 基于8051core在线调试电路控制装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6912606B2 (en) * 2001-06-08 2005-06-28 Sycamore Networks, Inc. Generic serial bus architecture
JP2006099410A (ja) * 2004-09-29 2006-04-13 Mitsubishi Electric Corp I2cバス制御方法
EP1877913B1 (en) * 2005-04-29 2010-03-10 Nxp B.V. Communications system and method having slave device with latched request for service
CN1770883A (zh) * 2005-09-16 2006-05-10 深圳创维-Rgb电子有限公司 一种实现对i2c器件特性参数进行调试的方法及装置
KR100801759B1 (ko) * 2005-12-29 2008-02-11 엠텍비젼 주식회사 슬레이브의 디버깅 방법 및 시스템
CN100480923C (zh) * 2006-01-13 2009-04-22 深圳创维-Rgb电子有限公司 I2c总线从控制器软实现方法
CN101998135A (zh) * 2009-08-13 2011-03-30 上海摩威电子科技有限公司 移动电视信号采集及播放系统、控制方法
CN103164313A (zh) * 2011-12-12 2013-06-19 鸿富锦精密工业(深圳)有限公司 调试系统及方法
CN102421010A (zh) * 2011-12-31 2012-04-18 四川长虹电器股份有限公司 兼容vga端口输入的软件调试系统及方法
CN103440216B (zh) * 2013-08-22 2016-12-28 深圳市汇顶科技股份有限公司 一种通过i2c从设备调试mcu的芯片及方法

Also Published As

Publication number Publication date
CN103440216A (zh) 2013-12-11
WO2015024414A1 (zh) 2015-02-26

Similar Documents

Publication Publication Date Title
CN103440216B (zh) 一种通过i2c从设备调试mcu的芯片及方法
US7617386B2 (en) Scheduling thread upon ready signal set when port transfers data on trigger time activation
CN107273329B (zh) 虚拟gpio
CN104380266B (zh) 具有复位条件跟踪能力的处理器装置
CN103454996A (zh) 主从机系统及其控制方法
CN106487372A (zh) 包括单线接口的装置和具有该装置的数据处理系统
US11022647B2 (en) Reconfiguring monitoring circuitry
EP2847683B1 (en) Processor device with instruction trace capabilities
US20210064564A1 (en) Daisy Chain Streaming Mode
CN101923525B (zh) 一种带事件捕获功能的通用目的输入输出电路
CN107305526B (zh) 一种用于微控制器的调试器
US9424166B2 (en) Routing debug messages
CN105378650B (zh) 用于控制处理模块的操作模式的方法和装置
US10088523B2 (en) Debug adapter
CN105718396A (zh) 一种大数据主设备传输的i2c总线装置及其通讯方法
CN111049718B (zh) Can总线模拟监控方法
CN104050121A (zh) 双收双发可编程arinc429通讯接口芯片
CN101751115B (zh) 一种解决dsp与低速输出设备数据传输匹配的方法
CN111459785B (zh) 一种芯片调试模式下时钟处理电路及其时钟处理方法
CN204706031U (zh) 串行外设接口spi总线电路以及电子设备
CN111158339A (zh) Can总线模拟监控系统
EP2137613B1 (en) Processor register architecture
CN109857485A (zh) 一种可编程gpio装置及基于该装置的时序实现方法
CN205594621U (zh) 一种用于微控制器的调试器
CN204652526U (zh) 一种基于fpga的视频采集存储电路

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
TR01 Transfer of patent right

Effective date of registration: 20210127

Address after: 2201, e times building, No.159, North Pingji Avenue, Hehua community, Pinghu street, Longgang District, Shenzhen, Guangdong 518000

Patentee after: SHENZHEN AIRLINES CHIP TECHNOLOGY DEVELOPMENT Co.,Ltd.

Address before: 518000 B, Arts crafts emporium, Futian Free Trade Zone, Futian, Guangdong, Shenzhen, 13

Patentee before: SHENZHEN GOODIX TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right