CN102163182A - 具有调试单元的信息处理设备及其调试方法 - Google Patents

具有调试单元的信息处理设备及其调试方法 Download PDF

Info

Publication number
CN102163182A
CN102163182A CN2011100431174A CN201110043117A CN102163182A CN 102163182 A CN102163182 A CN 102163182A CN 2011100431174 A CN2011100431174 A CN 2011100431174A CN 201110043117 A CN201110043117 A CN 201110043117A CN 102163182 A CN102163182 A CN 102163182A
Authority
CN
China
Prior art keywords
data
clock
clock signal
external tool
tool unit
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
Application number
CN2011100431174A
Other languages
English (en)
Other versions
CN102163182B (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.)
Renesas Electronics Corp
Original Assignee
Renesas Electronics Corp
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 Renesas Electronics Corp filed Critical Renesas Electronics Corp
Publication of CN102163182A publication Critical patent/CN102163182A/zh
Application granted granted Critical
Publication of CN102163182B publication Critical patent/CN102163182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/273Tester hardware, i.e. output processing circuits
    • G06F11/2733Test interface between tester and unit under test
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/28Error detection; Error correction; Monitoring by checking the correct order of processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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
    • G06F11/3656Software debugging using additional hardware using a specific debug interface
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation

Landscapes

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

Abstract

本发明涉及一种具有调试单元的信息处理设备及其调试方法。信息处理设备包括配置为向调试用户提供人机接口的外部工具单元以及微控制器。微控制器包括:CPU部,配置为响应于第一时钟信号执行作为调试目标的程序,其中,响应于来自CPU部的指示改变第一时钟信号的时钟速率;第一发送部,配置为响应于第一时钟信号向外部工具单元发送调试数据;第二发送部,配置为响应于与第一时钟信号不同的第二时钟信号向外部工具单元发送调试数据;以及接收部,配置为接收从外部工具单元发送的数据。

Description

具有调试单元的信息处理设备及其调试方法
技术领域
本发明涉及信息处理设备、调试单元以及信息处理设备的调试方法。
背景技术
在专利文献1(JP 2006-252006A)所述的示例中,通过利用异步通信单元(UART:通用异步收发器),将1针式外部端子用于外部工具(主装置)与在其中设立有微控制器(MCU)的调试单元之间的接口。从CPU(中央处理单元)向异步通信单元发出发送/接收指令,并且从时钟振荡器提供异步通信单元的操作时钟信号。该时钟信号也被供给CPU。
因此,当微控制器改变为低功耗模式以停止时钟信号时,异步通信单元也停止,以中止与外部工具的通信,因此导致调试操作中断。
专利文献2(日本专利No.4145146)公开了一种将后台调试系统用于外部工具(主单元)与在其中设立有微控制器(MCU)的调试单元之间的接口。在具有微控制器的调试单元中,将1针式外部端子用于与外部工具的接口。后台调试系统可独立于CPU操作。通过来自时钟单元的专用后台调试时钟信号来提供操作时钟。当通过EN_BDM信号向时钟单元通知后台调试系统的启动时,即使停止向CPU等提供时钟信号,也不停止提供后台调试时钟信号。在这一点上,专利文献2中公开的技术与专利文献1中公开的技术有很大区别。
专利文献2进一步公开了将后台调试系统与外部工具之间的通信速率同步的方法,分频时钟信号被从时钟控制部提供给后台调试系统,时钟控制部具有将时钟信号分频的功能。通信速率同步程序如下。首先,外部工具输出同步请求。当检测到同步请求时,后台调试系统响应该请求输出“L”脉冲,“L”脉冲的宽度为预定数量的时钟(128个周期)。外部工具可通过测量“L”脉冲的宽度(时间),识别后台调试系统使用的后台调试时钟信号的时钟速率。外部工具以与后台调试时钟的时钟速率相同的时钟速率进行通信。通过这种方式,可将通信速率同步。
如上所述,当启动后台调试系统时,即使微控制器(MCU)停止其时钟信号并切换到低功耗模式,也不停止后台调试时钟。因此,微控制器可在任何时候与外部工具通信,从而继续调试操作。但是,根据将微控制器切换到低功耗模式的一般方法,经常根据待调试的用户应用程序改变时钟控制部的分频比。因此,当微控制器(MCU)切换到低速时钟模式时,也就是说,当共同地提供低功耗模式、时钟控制部和振荡器时,后台调试时钟信号的时钟速率的转换点通常与后台调试系统与外部工具之间的通信状态无关,并且通信速率可能异步地改变,导致错误通信。换而言之,不能正常地继续调试操作。
专利文献2公开了将后台调试系统与外部工具之间的通信速率同步的方法。但是,根据通信速率同步方法,因为是响应于外部工具的同步请求来启动开始同步程序,所以即使在调试操作期间(特别是在通信期间)改变时钟控制部的分频比时,外部工具也不能在正确的时序改变通信速率。因此,因为外部工具没有手段和方法来检测改变后台调试时钟信号的时钟速率的时序,所以不可能避免上述错误通信。
参考文献
[专利文献1]:JP 2006-252006A
[专利文献2]:日本专利No.4145146
发明内容
本发明提供一种调试单元、通信方法和信息处理设备,能以适合于通信内容的通信速率发送/接收数据,而不会引起通信错误,因此能最佳地维持调试功能的执行。
在本发明的一个方面,一种信息处理设备包括:外部工具单元,配置为向调试用户提供人机接口;以及微控制器。微控制器包括:CPU部,配置为响应于第一时钟信号执行作为调试目标的程序,其中,响应于来自CPU部的指示改变第一时钟信号的时钟速率;第一发送部,配置为响应于第一时钟信号向外部工具单元发送调试数据;第二发送部,配置为响应于与第一时钟信号不同的第二时钟信号向外部工具单元发送调试数据;以及接收部,配置为接收从外部工具单元发送的数据。
在本发明的另一方面,一种微控制器包括:CPU部,配置为响应于第一时钟信号执行作为调试目标的程序,其中,基于来自CPU部的指示改变第一时钟信号的时钟速率;第一发送部,配置为响应于第一时钟信号向外部工具单元发送调试数据,外部工具单元具有与调试用户的人机接口;第二发送部,配置为响应于与第一时钟信号不同的第二时钟信号向外部工具单元发送调试数据;以及接收部,配置为接收从外部工具单元发送的数据。
在本发明的另一方面,一种调试设备包括:第一发送部,配置为响应于第一时钟信号向外部工具单元发送调试数据,其中,基于来自CPU部的指令改变第一时钟信号的时钟速率,CPU部执行作为调试目标的程序;第二发送部,配置为响应于与第一时钟信号不同的第二时钟信号向外部工具单元发送调试数据;以及接收部,配置为接收从外部工具单元发送的数据。
在本发明的另一方面,一种外部工具单元包括:接收部,配置为接收响应于第一时钟信号从执行作为调试目标的程序的微控制器的第一发送部发送的调试数据,并接收基于与第一时钟信号不同的第二时钟信号从微控制器的第二发送部发送的调试数据,第一时钟信号的时钟速率基于来自CPU部的指令而被改变;以及工具发送部,配置为向微控制器的接收部发送指令。
在本发明的另一方面,提供一种通过使用微控制器和外部工具单元的调试方法,微控制器响应于第一时钟信号执行作为调试目标的程序,外部工具单元向调试用户提供人机接口。调试方法通过以下步骤实现:响应于第一时钟信号从微控制器的第一发送部向外部工具单元发送调试数据;响应于与第一时钟信号不同的第二时钟信号从微控制器的第二发送部向外部工具单元发送调试数据;通过微控制器中的接收部接收从外部工具单元发送的数据;以及基于来自微控制器的指令而改变第一时钟信号的时钟速率。
根据本发明,可提供信息处理设备、信息处理设备的调试单元和调试方法,其中即使独立于调试操作根据用户程序改变了系统时钟速率,也能最佳地维持调试通信速率,不会由于外部工具引起任何通信错误。
附图说明
根据下面一些实施例结合附图的描述,本发明的上述及其他目的、优点和特点将更加明显,附图中:
图1是方框图,示出根据本发明第一实施例的信息处理设备的构造;
图2是方框图,示出CPU部201的构造;
图3是方框图,示出发送和接收部301的构造;
图4是方框图,示出发送部400的构造;
图5是方框图,示出外部工具501的构造;
图6是示意图,示出通信速率管理表521的构造;
图7是示意图,示出第一实施例中描述的指令;
图8A至图8D是示意图,示出微控制器101与外部工具501之间的通信中的传输格式;
图9是流程图,示出外部工具501的操作;
图10是流程图,示出发送和接收部301的操作;
图11是方框图,示出根据本发明第二实施例的信息处理设备的构造;
图12是方框图,示出CPU部202的构造;
图13是方框图,示出发送和接收部302的构造;
图14是方框图,示出发送部402的构造;
图15是方框图,示出外部工具502的构造;
图16是示意图,示出第二实施例中的指令;
图17是方框图,示出通信速率管理表522的构造;
图18A至图18E是示意图,示出微控制器102与外部工具502之间的通信中的传输格式;
图19A至图19C是示意图,示出发送/接收数据的格式;
图20是流程图,示出外部工具502的操作;
图21是流程图,示出数据跟踪结束时外部工具502的操作;以及
图22A和图22B是流程图,示出发送和接收部302的操作。
具体实施方式
下面参照附图描述根据本发明的信息处理设备。
[第一实施例]
图1是方框图,示出根据本发明的信息处理设备中与调试操作有关的构造。信息处理设备包括微控制器(MCU)101和外部工具501。这里,可将外部工具501设置在信息处理设备中或与信息处理设备分离。外部工具向用户提供人机接口。微控制器101设置有发送和接收部301、发送部401、CPU部201、调试时钟产生部150、同步电路130和140、时钟速率显示寄存器120以及时钟产生部110。除了CPU部201之外的部分构成所谓的调试单元,并且CPU部201具有支持调试操作的功能。在这些部分中,发送和接收部301、发送部401和时钟速率显示寄存器120是本发明的特征。本发明的特征还在于,将调试时钟产生部150输出的调试时钟信号DCLK提供给发送和接收部301,将CPU部201产生的系统时钟信号SCLK提供给发送部401。本实施例将实现RAM监视器功能的示例示出为调试功能之一。同步电路130和140是用于将在其中基准操作时钟信号不同的部分之间输入/输出的信号同步的电路。因为在同步前后信号的含义不变,所以通过将表示同步之前的信号的符号加上“(SYN)”来表示同步之后的信号。
图2是方框图,示出CPU部201的构造。CPU部201包括CPU 210、ROM 220、RAM 230、系统时钟控制部240、RAM地址设定寄存器250以及RAM监视器控制部260,并且CPU部201支持RAM监视器功能作为调试功能。ROM 220是在其中存储用户应用程序的只读存储器。RAM230是在其中保持执行用户应用程序所需数据的随机访问存储器。RAM230有一个访问端口来自CPU 201,有一个访问端口来自RAM监视器控制部260。CPU 201是执行在ROM 220中存储的用户应用程序的中央处理单元。
RAM地址设定寄存器250是保持用于访问RAM 230的地址的寄存器,以用于调试操作。通过调试局部总线DLB,将要访问的地址设定在RAM地址设定寄存器250中。设定的地址被通知给RAM监视器控制部260。RAM监视器控制部260基于从RAM地址设定寄存器250通知的RAM地址向RAM 230产生访问周期。通过RAM监视器数据信号RMNT将作为访问结果获得的数据输出到发送部401。通过调试局部总线DLB,通过在RAM监视器控制部260中设定RAM访问开始控制位来进行对RAM 230的访问。
系统时钟控制部240将基于输入时钟信号ICLK产生的系统时钟信号SCLK输出。也就是说,系统时钟控制部240具有将时钟信号ICLK分频并停止时钟信号的功能,并且可以从CPU 210设定。此外,系统时钟控制部240在进行时钟速率的改变之前例如分频和停止时钟之前输出时钟速率改变请求信号CREQ。之后,当响应时钟速率改变请求信号CREQ从发送和接收部301输出的时钟速率改变确认信号CACK被设定为生效时,系统时钟控制部240改变时钟速率。在本实施例中,将未经过分频的系统时钟信号的时钟速率称为“高速系统时钟速率”,将经过分频的系统时钟信号的时钟速率称为“低速系统时钟速率”,将系统时钟信号被停止的状态称为“系统时钟停止”。当然,在“系统时钟停止”状态中,CPU部201停止其操作。响应向CPU部201输入复位请求、以及中断等,进行“系统时钟停止”状态的取消。在初始状态中,已经设定“高速系统时钟速率”。
如图3所示,发送和接收部301包括序列控制部311、发送部405、接收数据采样部321、接收移位器330、指令缓冲部340、写入数据缓冲部350以及指令执行部360。序列控制部311在实现RAM监视器处理中起主要作用,并进行发送/接收程序控制、指令分析、指令执行的指示、系统时钟控制部240的时钟速率改变确认控制以及添加INFO位的指示。下面描述详细操作。
接收数据采样部321基于调试时钟信号DCLK对表示从外部工具501传输的数据的调试通信输入信号DI异步地采样,并将获得的1位数据输出到接收移位器330。接收数据采样部321还具有检测开始位(STR位)和停止位(STP位)的功能,用于识别接收的开始和结束。当开始位被用于仅检测接收的开始并且不作为1位数据输出时,将停止位的2位数据值输出到接收移位器330。
接收移位器330是11位移位寄存器,其从接收数据采样部321接收1位数据,并逐位移位以进行串行-并行转换。当移位了11位时,接收移位器330通过接收数据信号RCVD将位0至位7输出作为接收数据。同时,接收移位器330激活接收结束信号RVED并通知序列控制部311已经从外部工具501接收到接收数据。
当将指令获得信号CMGT设定为生效时,指令缓冲部340通过接收数据信号RCVD接收8位接收数据,从接收到的数据中提取指令代码(CMD[0:1]),并通过指令数据信号CD将提取的指令代码输出到序列控制部311。
当将写入数据获得信号WDGT设定为生效时,写入数据缓冲部350通过接收数据信号RCVD接收8位接收数据,并通过写入数据信号WD将接收数据输出到指令执行部360。
当将指令执行开始信号CST设定为生效时,指令执行部360进行与每个指令相对应的操作。指令执行开始信号CST包含正在处理的指令数据。当指令处理被结束时,指令执行部360向序列控制部311输出指令执行结束信号CED。例如,当正在处理的指令数据指示写入数据传输指令“02H”(RAM地址设定寄存器写入),指令执行部360通过8位写入数据信号WD接收数据并将数据输出到指令执行部写入总线WB。将数据输出后,指令执行部360输出指令执行结束信号CED。当指令数据指示读取数据传输指令“00H”(时钟速率显示寄存器读取)时,指令执行部360通过指令执行部读取总线RB接收8位数据,通过指令执行部读取数据输出信号CRDO将数据输出到发送部405,并将指令执行结束信号CED输出到序列控制部311。例如“00H”这样的符号表示十六进制数字。
图4是方框图,示出发送部400的构造。发送部405安装在发送和接收部301中,并且发送部401与图4所示发送部400相同的构造,包括读取数据缓冲部410和发送移位器420。读取数据缓冲部410通过数据输入信号RDI接收和保持8位数据,并输出读取缓冲部有效信号BVD。这里,对于发送部405,数据输入信号RDI与从指令执行部360提供的指令执行部读取数据输出信号CRDO相对应,对于发送部401,数据输入信号RDI与从CPU部201输出的RAM监视器数据信号RMNT相对应。对于发送部405,读取缓冲部有效信号BVD与输出到序列控制部311的读取缓冲部有效信号BVDB相对应,对于发送部401,读取缓冲部有效信号BVD与通过同步电路140输出到序列控制部311的读取缓冲部有效信号BVDA相对应。
发送移位器420是12位移位寄存器。当将发送开始信号SST设定为生效时,将存储在读取数据缓冲部410中的8位数据设定到发送移位器420,并根据图8A至图8D所示的读取数据传输格式,在输入时钟信号CLK的时钟速率下将其移位和输出作为发送部输出信号RDO。当在移位和输出中将INFO信息设定请求信号SIQ设定为生效时,发送移位器420将位9的INFO位设定为在激活状态中的“1”。当完成12位数据的移位和输出时,发送移位器420激活发送结束信号SED。这里,对于发送部401,输入时钟信号CLK与系统时钟信号SCLK相对应,对于发送部405,输入时钟信号CLK与调试时钟信号DCLK相对应。对于发送部401,发送开始信号SST与发送开始信号SSTA(SYN)相对应,对于发送部405,发送开始信号SST与发送开始信号SSTB相对应。对于发送部401,发送部输出信号RDO与发送部输出信号SDO相对应,对于发送部405,发送部输出信号RDO与发送部输出信号SRO相对应。对于发送部401,INFO信息设定请求信号SIQ与INFO信息设定请求信号SIQA(SYN)相对应,对于发送部405,INFO信息设定请求信号SIQ与INFO信息设定请求信号SIQB相对应。对于发送部401,发送结束信号SED与发送结束信号SEDA相对应,对于发送部405,发送结束信号SED与发送结束信号SEDB相对应。
图5是方框图,示出外部工具501的构造。外部工具501包括工具控制部511、通信速率管理表521、工具发送部530以及工具接收部540。工具发送部530基于预定的传输格式,通过调试通信输入/输出信号DIO将来自外部工具501的数据发送到微控制器101。工具接收部540基于预定的传输格式,通过调试通信输入/输出信号DIO接收从微控制器101发送到外部工具501的数据。参照通信速率管理表521,工具控制部511此时控制通信速率。
图6示出通信速率管理表521的构造。通信速率管理表521与指令代码CMD相关联地存储与微控制器101相通信的发送时钟速率和接收时钟速率的数据。参照表格,工具控制部511基于每个发出的指令,适当地转换发送时钟速率和接收时钟速率。工具控制部511根据必要性更新表格的内容。
图7示出本实施例中所述指令的内容。通过从外部工具501发出这些指令并通过微控制器101处理指令来实现本实施例中所述的RAM监视器功能。
图8A至图8B是示意图,示出通过使用调试通信输入/输出信号DIO在微控制器101与外部工具501之间的通信中的读取/写入传输格式。固定为“0”的开始位(STR)被分配到位0,8位数据被分配到位1至位8,预定数据被分配到位9,固定为“1”的停止位(STP)被分配到位10至位11。以传输格式来传输通过外部工具501发出并通过微控制器101执行的指令。如图8A所示,根据读取指令传输格式,指令代码CMD被分配到位1至位2,不使用位3至位8,位9固定为“0”。如图8B所示,根据读取数据传输格式,传输的8位读取数据被分配到位1至位8。根据读取数据传输格式,指示时钟速率显示寄存器120已经被更新的INFO位被分配到位9。如图8C所示,根据写入指令传输格式,指令代码CMD被分配到位1至位2,不使用位3至位8,位9固定为“0”。如图8D所示,根据写入数据传输格式,传输的8位写入数据被分配到位1至位8。
下面,描述本实施例的操作的要点。通过使用单针,发送和接收部301和发送部401通过使用调试通信输入/输出信号DIO异步地与外部工具501通信。根据图8A至图8D所示的读取/写入传输格式进行通信。
进行写入传输如下。当图7所示的要求写入传输的指令代码(CMD[0:1])从外部工具501传输到发送和接收部301时,发送和接收部301接收并分析指令,然后执行指令。例如,当指令代码(CMD[0:1])为“02H”(RAM地址设定寄存器写入)时,发送和接收部301在指令的传输之后接收从外部工具501传输的数据,并通过同步电路130将数据输出到调试局部总线DLB以进行写入周期。传输的数据被写入设置在CPU部201中的RAM地址设定寄存器250中。
进行读取传输如下。当图7所示要求读取传输的指令代码(CMD[0:1])从外部工具501传输到发送和接收部301时,发送和接收部301接收并分析指令,然后执行指令。例如,当指令代码(CMD[0:1])为“03H”(RAM监视器读取)时,发送和接收部301通过同步电路130将控制数据输出到调试局部总线DLB以进行写入周期,并指示RAM监视器控制部260开始对RAM 230的读取访问。
响应来自发送和接收部301的指示,RAM监视器控制部260基于保持在RAM地址设定寄存器250中的RAM地址进行对RAM 230的读取访问。通过RAM监视器数据信号RMNT将作为读取访问的结果获得的数据输出到发送部401。发送部401以系统时钟信号SCLK的时钟速率通过发送部输出信号SDO输出RAM监视器数据。根据图8B所示的传输格式传输RAM监视器数据。用于发送部输出信号SDO的总线是与用于调试通信输入/输出信号DIO的总线相连接的三态总线。因此,通过调试通信输入/输出信号DIO将从发送部401输出的RAM监视器数据传输到外部工具501。
在将指令“03H”(RAM监视器读取)传输到微控制器101之后,外部工具501准备通过调试通信输入/输出信号DIO获得从微控制器101输出的RAM监视器数据。换言之,参考通信速率管理表521,工具控制部511将用于接收响应指令“03H”而被传输的数据的接收时钟速率设定到工具接收部540。之后,工具接收部540通过调试通信输入/输出信号DIO接收从CPU部201输出到外部工具501的RAM监视器数据。然后,外部工具501在显示单元等上显示获得的RAM监视器数据,以将RAM监视器数据通知给进行调试的用户。
类似地,当指令代码(CMD[0:1])为“00H”(时钟速率显示寄存器读取)时,发送和接收部301通过指令执行部读取总线RB读取设置到时钟速率显示寄存器120的数据。发送部405以调试时钟速率通过发送和接收部输出信号SRO输出读取数据。
在将指令“00H”(时钟速率显示寄存器读取)传输到微控制器101之后,外部工具501准备通过调试通信输入/输出信号DIO获得从微控制器101输出的数据。换言之,参考通信速率管理表521,工具控制部511将用于接收响应指令“00H”而被传输的数据的接收时钟速率设定到工具接收部540。之后,工具接收部540通过调试通信输入/输出信号DIO接收从微控制器101输出到外部工具501的数据。获得的数据用于控制工具接收部540的接收速率。
微控制器101具有降低时钟速率以转换到低功耗模式的功能。因此,在包括上述通信处理的调试处理过程中,微控制器101可降低系统时钟速率。在这种情况下,根据以下程序改变系统时钟信号SCLK的速率。
例如,给出一个示例为,在处理指令“03H”(RAM监视器读取)之前或处理指令“03H”(RAM监视器读取)的过程中,CPU 210请求系统时钟控制部240改变时钟速率。在这种情况下,系统时钟控制部240激活时钟速率改变请求信号CREQ,将其通知发送和接收部301并将指示已改变的速率的数据设定到时钟速率显示寄存器120。
当将时钟速率改变请求信号CREQ设定为生效时,发送和接收部301激活INFO信息设定请求信号SIQA,将其通知发送部401。当将INFO信息设定请求信号SIQA设定为生效时,发送部401将位9的INFO位激活为生效状态(“1”)并进行读取数据传输。
当将接收到的数据的INFO位设定为生效时,外部工具501发出指令“00H”(时钟速率显示寄存器读取),获得并分析时钟速率显示寄存器120的内容。当将位7的“请求”位设定为生效时(参照图7),外部工具501根据在位0至位2显示的系统时钟速率更新在通信速率管理表521中的指令“03H”的接收时钟速率列(参照图6)。之后,当发出指令“03H”以接收RAM监视器数据时,使用更新的接收时钟速率数据。因此,工具接收部540能以改变的系统时钟速率正常地接收数据。
一旦读取之后,在位7的“请求”位就自动清除。当在位0至位2显示的系统时钟速率表示“系统时钟停止”时,外部工具501重复地读取时钟速率显示寄存器120并等待直到系统时钟速率表示“高速系统时钟速率”或“低速系统时钟速率”。
当完成来自发送部401的包括INFO位的数据的发送以后,发送部401通过同步电路140将发送结束信号SEDC通知发送和接收部301以指示发送的结束。当从发送部401被通知发送的结束时,发送和接收部301激活发送到CPU部201的系统时钟控制部240的时钟速率改变确认信号CACK。当将时钟速率改变确认信号CACK设定为生效时,系统时钟控制部240改变系统时钟信号SCLK的时钟速率。
下面进一步描述每个部分的详细操作。图9和图10示出与实现RAM监视器功能所需的指令处理有关的操作以及用于系统时钟信号SCLK的改变确认控制的操作。
图9是流程图,示出在RAM监视器功能以及系统时钟信号SCLK的改变确认控制中外部工具501的操作。参照图9,下面描述外部工具501的操作。
在步骤S102,参考通信速率管理表521,工具控制部511将在发出指令“02H”(RAM地址设定寄存器写入)中的适合于写入指令传输和写入数据传输的时钟速率设定到工具发送部530。对于指令“02H”,如图6所示,发送时钟速率变为“调试时钟速率”。
在步骤S104,以调试时钟速率通过调试通信输入/输出信号DIO将CMD[0:1]=“02H”发送到微控制器101。
在步骤S106,以调试时钟速率通过调试通信输入/输出信号DIO发送期望的8位RAM地址值。
在步骤S108,参考通信速率管理表521,工具控制部511将在发出指令“03H”(RAM监视器读取)中的适合于读取指令传输和读取数据传输的时钟速率设定到工具发送部530和工具接收部540。对于指令“03H”,如图6所示,发送时钟速率变为“调试时钟速率”,接收时钟速率变为“高速系统时钟速率(初始值)”。
在步骤S110,工具发送部530以调试时钟速率通过调试通信输入/输出信号DIO将CMD[0:1]=03H的数据发送到微控制器101。
在步骤S112,工具接收部540以高速系统时钟速率通过调试通信输入/输出信号DIO接收从微控制器101的发送部401输出的8位RAM监视器数据和INFO位。
在步骤S114,外部工具501进行处理,以在显示单元上显示接收到的RAM监视器数据。
在步骤S120,工具控制部511检查接收到的INFO位的值。当INFO位的值为“0”时,控制流程返回步骤S102,工具控制部511进行处理以读取随后监视的RAM数据。当INFO位的值为“1”时,也就是说,当时钟速率显示寄存器120已经被更新时,在步骤S122至步骤S130,工具控制部511进行处理以更新通信速率管理表521。
在步骤S122,参考通信速率管理表521,工具控制部511将在发出指令“00H”(时钟速率显示寄存器读取)中的适合于写入指令传输和读取数据传输的时钟速率设定到工具发送部530和工具接收部540。对于指令“00H”,如图6所示,将发送时钟速率和接收时钟速率设定为“调试时钟速率”。
在步骤S124,工具发送部530以调试时钟速率通过调试通信输入/输出信号DIO将CMD[0:1]=00H的数据发送到微控制器101。
在步骤S126,工具接收部540以调试时钟速率通过调试通信输入/输出信号DIO接收从发送部405输出的在时钟速率显示寄存器120中的8位值。
在步骤S128,工具控制部511基于接收到的时钟速率显示寄存器120的值更新通信速率管理表521。
在步骤S130,工具控制部511检查时钟速率显示寄存器120的值。当将位2“停止”设定为生效时,控制流程返回步骤S124,工具控制部511再次读取时钟速率显示寄存器120的值并等待直到将位0“高速”或位1“低速”被设定为生效。这是因为在“系统时钟停止”的状态中,CPU部201已经停止其操作,并且RAM监视器控制部260不能进行RAM监视器处理。当没有将位2“停止”设定为生效时,控制流程返回步骤S102,工具控制部511进行处理以读取随后监视的RAM数据。
下面描述发送和接收部301的详细操作,主要关于发送部405和序列控制部311。图10是流程图,示出发送和接收部301的详细操作,主要关于发送部401和序列控制部311。
在步骤S201,为了检测读取指令传输或写入指令传输,接收数据采样部321监视调试通信输入信号DI并等待直到检测到STR位。
在步骤S203,接收数据采样部321通过基于调试时钟信号DCLK产生的时钟信号对调试通信输入/输出信号DIO采样,并将获得的1位数据输出到接收移位器330。接收移位器330接收从接收数据采样部321发送的数据,同时逐位地移位数据。然后,当完成11位的数据的存储时,接收移位器330通过接收数据信号RCVD输出8位数据的一部分,激活接收结束信号RVED,并将接收的结束通知给序列控制部311。当将接收结束信号RVED设定为生效时,序列控制部311激活指令获得信号CMGT并指示指令缓冲部340接收指令。当将指令获得信号CMGT设定为生效时,指令缓冲部340通过接收数据信号RCVD接收8位数据并将指令数据信号CD输出到序列控制部311。
在步骤S205,序列控制部311提取从指令缓冲部340输出的指令数据信号CD的指令部分(CMD[0:1]的2位数据)并分析指令。当指令(CMD[0:1])为“00H”时,控制流程进入步骤S210,当指令(CMD[0:1])为“02H”时,控制流程进入步骤S222,并且当指令(CMD[0:1])为“03H”时,控制流程分支到步骤S230。当指令(CMD[0:1])为其他值时,控制流程返回步骤S201,并且序列控制部311等待指令输入。
在步骤S210,序列控制部311激活指令执行开始信号CST并指示指令执行部360执行指令。指令执行开始信号CST包含指示正在处理指令“00H”(时钟速率显示寄存器读取)的数据。当将指令执行开始信号CST设定为生效时,指令执行部360通过指令执行部读取总线RB进行对时钟速率显示寄存器120的读取访问。当接收设定到时钟速率显示寄存器120的8位值时,指令执行部360通过指令执行部读取数据输出信号CRDO输出读取数据,激活指令执行结束信号CED并将读取的结束通知给序列控制部311。当将从指令执行部360输出的指令执行部读取数据输出信号CRDO的8位数据存储在内部读取数据缓冲部410中时,发送部405激活读取缓冲部有效信号BVDB并将完成发送准备通知给序列控制部311。
在步骤S212,当将读取缓冲部有效信号BVDB设定为生效时,序列控制部311检查时钟速率改变请求信号CREQ的状态。当将时钟速率改变请求信号CREQ设定为生效时,序列控制部311将INFO信息设定请求信号SIQB激活为生效状态(“1”)(步骤S214)。当没有将时钟速率改变请求信号CREQ设定为生效时,序列控制部311将INFO信息设定请求信号SIQB去激活为失效状态(“0”)(步骤S215)。
在步骤S217,序列控制部311激活发送开始信号SSTB并指示发送部405发送数据。发送部405将通过组合存储在读取数据缓冲部410中的8位数据、通过INFO信息设定请求信号SIQB指定的1位数据、STR位的1位和STP位的2位而获得的12位数据存储在发送移位器420中。与调试时钟信号DCLK同步地,发送移位器420逐位地移位和输出数据作为发送和接收部输出信号SRO。当完成12位的移位和输出以后,发送移位器420激活发送结束信号SEDB。
在步骤S219,序列控制部311激活时钟速率改变确认信号CACK。当将时钟速率改变确认信号CACK设定为生效时,系统时钟控制部240改变系统时钟信号SCLK的速率。之后,控制流程返回到步骤S201,并且发送和接收部301等待下一个指令。
在步骤S222,为了检测写入数据传输,接收数据采样部321监视调试通信输入/输出信号DIO并等待直到检测到STR位。
在步骤S224,接收数据采样部321通过基于调试时钟信号DCLK产生的信号对调试通信输入/输出信号DIO采样,并将获得的数据输出到接收移位器330。接收移位器330接收从接收数据采样部321发送的数据,同时逐位地移位数据。当完成11位数据的存储以后,接收移位器330通过接收数据信号RCVD输出8位数据部分,激活接收结束信号RVED并将接收的结束通知给序列控制部311。序列控制部311激活写入数据获得信号WDGT并指示写入数据缓冲部350接收数据。写入数据缓冲部350接收接收数据信号RCVD的8位数据并将写入数据信号WD输出到指令执行部360。
在步骤S226,序列控制部311激活指令执行开始信号CST并将其通知指令执行部360。指令执行开始信号CST包含指示正在处理指令“02H”的数据。当将指令执行开始信号CST设定为生效时,指令执行部360通过指令执行部写入总线WB将要写入RAM地址设定寄存器250的数据输出到调试局部总线DLB,以执行写入周期。指令执行部360激活指令执行结束信号CED并将执行的结束通知给序列控制部311。之后,发送和接收部301返回到步骤S201并等待下一个指令。
当调试局部总线DLB处于向RAM地址设定寄存器250的写入周期时,RAM地址设定寄存器250从调试局部总线DLB接收8位写入数据并保持该数据在其中。将保持内容通知给RAM监视器控制部260。
在步骤S230,序列控制部311激活指令执行开始信号CST并通知指令执行部360执行指令。指令执行开始信号CST包含指示正在处理指令“03H”的数据。当将指令执行开始信号CST设定为生效时,指令执行部360通过指令执行部写入总线WB输出指示RAM监视器控制部260中的RAM访问开始控制位被设定到调试局部总线DLB的控制数据,以执行写入周期。指令执行部360激活指令执行结束信号CED并将指令执行的结束通知给序列控制部311。
在步骤S231,当设定RAM访问开始控制位时,RAM监视器控制部260通过利用从RAM地址设定寄存器250提供的8位RAM地址进行到RAM 230的读取访问。通过RAM监视器数据信号RMNT将作为读取访问的结果获得的8位读取数据输出。发送部501将包含在RAM监视器数据信号RMNT中的8位读取数据存储在内部读取数据缓冲部410中,并激活读取缓冲部有效信号BVDA。通过同步电路140将作为读取缓冲部有效信号BVDA(SYN)的读取缓冲部有效信号BVDA通知给序列控制部311。
在步骤S232,当将读取缓冲部有效信号BVDA设定为生效时,序列控制部311检查时钟速率改变请求信号CREQ的状态。当将时钟速率改变请求信号CREQ设定为生效时,序列控制部311将INFO信息设定请求信号SIQA激活为生效状态(“1”)(步骤S234)。当没有将时钟速率改变请求信号CREQ设定为生效时,序列控制部311将INFO信息设定请求信号SIQA去激活为失效状态(“0”)(步骤S235)。
在步骤S237,序列控制部311激活发送开始信号SSTA并通过同步电路140将其通知给发送部401。当将发送开始信号SSTA(SYN)设定为生效时,发送部401将包括存储在读取数据缓冲部410中的8位数据、通过经同步电路140输入的INFO信息设定请求信号SIQA(SYN)指定的1位数据、STR位的1位和STP位的2位的12位数据存储在发送移位器420中。与系统时钟信号SCLK同步地,发送移位器420逐位地移位和输出发送数据作为发送和接收部输出信号SRO。当完成12位的移位和输出后,发送移位器420激活发送结束信号SEDC。为了结束发送,通过同步电路140向序列控制部311通知作为发送结束信号SEDA(SYN)的发送结束信号SEDC。
在步骤S239,当将发送结束信号SEDA(SYN)设定为生效时,序列控制部311激活发送到CPU部201中的系统时钟控制部240的时钟速率改变确认CACK。当将时钟速率改变确认信号CACK设定为生效时,系统时钟控制部240将系统时钟信号SCLK的时钟速率改变为通过CPU 210设定的系统时钟速率。之后,控制流程返回到步骤S201,并且发送和接收部301等待下一个指令。
如上所述,根据本发明,信息处理设备包括基于一般低速不停止调试时钟信号DCLK操作的发送和接收部301、基于具有可变时钟速率的一般高速系统时钟操作的发送部401以及显示速率可变系统时钟的速率数据的时钟速率显示寄存器120,发送和接收部301中的序列控制部311具有与CPU部201中的系统时钟控制部240同步信息交互的功能,和向发送部401通知指示时钟速率显示寄存器120中的显示内容被改变的数据的功能,从而向外部发送数据。因此,微控制器能进行控制,使得微控制器与外部工具之间的调试通信速率同步。因此,即使当根据应用程序,与调试通信异步地改变系统时钟速率时,也能正常进行调试通信。
[第二实施例]
图11示出根据本发明第二实施例的信息处理设备的构造。在本实施例中,分别用发送和接收部302、发送部402、CPU部202和外部工具502替代第一实施例中的发送和接收部301、发送部401、CPU部201和外部工具501,这些替代部分相对于第一实施例中的各个部分被部分地改变。第一实施例中的调试时钟产生部150被省略,并且从外部工具502提供调试时钟信号DCLK。此外,没有INFO信息设定请求信号SIQA从发送和接收部302输出,并且到发送部402的对应输入被固定为失效(“0”)。其他组件与第一实施例的相同,因此省略其描述。
图12是方框图,示出CPU部202的构造,CPU部202用于进行数据跟踪功能作为调试功能之一。CPU 210、系统时钟控制部240、RAM 230以及ROM 220与第一实施例的相同,并且它们的操作相同。但是,RAM230的调试访问端口未被连接。第一实施例中执行RAM监视器功能的RAM地址设定寄存器250和RAM监视器控制部260被用于执行数据跟踪功能的数据跟踪控制部270替代。数据跟踪控制部270监视CPU 210的操作,当CPU 210向RAM 230等发出存储指令时产生跟踪数据,并与系统时钟信号SCLK同步地通过跟踪输出信号TRO输出跟踪数据。跟踪数据是在图19A的格式A中的16位数据。当将从系统时钟控制部240输出的时钟速率改变请求信号CREQ设定为生效时,通过跟踪输出信号TRO产生并输出在图19B的格式B中的8位数据。当在将读取缓冲部繁忙信号RBSY设定为生效的同时产生数据时,将数据保持在内部,并且然后,在将读取缓冲部繁忙信号RBSY设定为失效以后,将数据输出。通过调试局部总线DLB,操作数据跟踪控制部270中的控制位来进行数据跟踪控制部270的有效/无效的设定。
在本实施例中,为了进行作为一个调试功能的数据跟踪功能,将图7所示的指令改为图16所示的指令。图16示出本实施例中所述的指令。通过这些指令来进行数据跟踪功能。
图13是方框图,示出发送和接收部302的构造。发送和接收部302包括序列控制部312、发送部405、接收数据采样部322、接收移位器330、指令缓冲部340、写入数据缓冲部350以及指令执行部360。在这些部分中,接收移位器330、写入数据缓冲部350、指令缓冲部340、指令执行部360以及发送部405与第一实施例中的相同,并且它们的操作相同。接收数据采样部322与调试时钟信号DCLK同步地进行采样。除此操作外,与接收数据采样部321相似,接收数据采样部322也对从外部工具502传输的调试通信输入信号DI采样,以获得1位数据。与序列控制部311相似,序列控制部312分析从指令缓冲部340提供的指令(CMD[0:2]),并通过利用写入数据缓冲部350、指令执行部360、发送部405以及时钟速率改变确认信号CACK进行与指令相对应的处理。
图14是方框图,示出发送部402的构造。发送部402包括发送控制部430、发送移位器420以及读取数据缓冲部411。发送移位器420与第一实施例中的相同并进行相同的操作。读取数据缓冲部411是包括M缓冲部412和L缓冲部413的存储单元,M缓冲部412和L缓冲部413均保持8位数据。M缓冲部412和L缓冲部413均保持从发送控制部430写入的8位数据。发送控制部430控制跟踪数据的存储和发送移位器420的操作。
当通过跟踪输出信号TRO从CPU部202提供的跟踪数据是格式A(参照图19A)的跟踪数据时,发送控制部430将位0至位7的8位数据存储在读取数据缓冲部411的M缓冲部412中,将位8至位15的8位数据存储在读取数据缓冲部411的L缓冲部413中。发送控制部430激活读取缓冲部有效信号BVDC。之后,当将发送开始信号SST设定为生效时,发送控制部430向发送移位器420发送存储在M缓冲部412和L缓冲部413的每个中的8位数据,并将数据作为发送部输出信号SSO输出到外部工具502。当发送移位器420通过发送部输出信号SSO完成16位数据的输出时,发送控制部430激活发送结束信号SEDC。
当通过跟踪输出信号TRO提供的跟踪数据是格式B(参照图19B)的数据时,将位0至位7的8位数据存储在M缓冲部412中。然后,发送控制部430激活读取缓冲部有效信号BVDC。之后,当将发送开始信号SSTC(SYN)设定为生效时,将存储在M缓冲部412中的8位数据发送到发送移位器420,激活移位开始信号SFTS,并通过发送部输出信号SSO将该信号输出。当发送移位器420完成8位数据的输出时,发送移位器420激活指示发送结束的移位结束信号SFTE。当从移位结束信号SFTE检测到发送的结束时,发送控制部430激活发送结束信号SEDC并向发送和接收部302(序列控制部312)通知发送的结束。
图15是方框图,示出外部工具502的构造。外部工具502包括工具控制部512、通信速率管理表522、工具发送部530、工具接收部540、跟踪存储部550以及调试时钟产生部560。工具接收部540与第一实施例中的相同,并且进行相同的操作。本实施例中的工具发送部530与第一实施例中的工具发送部具有不同的同步时钟。本实施例中的工具发送部530与调试时钟信号DCLK同步地以图18A至图18E中所示的传输格式发送数据。与调试时钟产生部150相似,调试时钟产生部560产生调试时钟信号DCLK。在本实施例中,从外部工具502将调试时钟信号DCLK提供给微控制器102。跟踪存储部550是存储单元,用于将通过工具接收部540接收的跟踪数据存储在其中。工具控制部512参考通信速率管理表522控制接收时钟速率。当工具接收部540接收到图19A中所示格式的跟踪数据时,工具控制部512向跟踪存储部550发送跟踪数据并将数据存储在跟踪存储部550中。工具控制部512还包括与第一实施例中的工具控制部511相同的功能。
图17是示意图,示出通信速率管理表522的构造。通信速率管理表522与指令代码CMD相关地存储如下的数据,即,所述数据指示在与微控制器102的通信中的发送时钟速率和接收时钟速率。与第一实施例中的通信速率管理表521相似,在与微控制器102的通信中,参考通信速率管理表522。在本实施例中,为了描述作为一个调试功能的数据跟踪功能,改变了一些指令。因为是通过外部工具502的调试时钟产生部560产生指令(CMD[0:2])“00H”的发送时钟速率和接收时钟速率,所以将时钟速率固定为调试时钟速率。但是,时钟速率可变。
图18A至图18E为示意图,示出通过调试通信输入信号DI和调试通信输出信号DO在微控制器102与外部工具502通信的传输格式。传输格式包括读取指令传输格式(图18A)、读取数据传输格式(图18B)、数据跟踪传输格式(图18C和图18D)、控制指令传输格式(图18E)。如图18C和图18D所示,通过发送8位数据两次来实现在数据跟踪传输中的16位数据的发送。当数据跟踪控制部270产生多个16位跟踪数据时,重复地进行跟踪传输L和跟踪传输M。类似地,当产生8位跟踪数据时,重复地进行跟踪传输L。在第一实施例中分配用于读取数据传输的位9的INFO位未使用并固定为“0”。
图19A至图19C示出发送/接收数据的格式。图19A示出通过数据跟踪控制部270产生的16位跟踪数据的数据格式(格式A)。图19B示出8位数据的格式(格式B),该8位数据指示已经将从系统时钟控制部240输出的时钟速率改变请求信号CREQ设定为生效。格式B的跟踪数据充当第一实施例中的INFO位信息的替代物。图19C示出在每种格式中通过分配给位0至位2的TCODE表示的数据。
下面将描述实现数据跟踪功能中和系统时钟信号SCLK的改变确认控制的操作。图20是流程图,示出外部工具502的操作。
在步骤S301,工具控制部512与调试时钟信号DCLK同步地通过调试通信输入信号DI向微控制器102发送CMD[0:2]=04H(“数据跟踪开始”)作为控制指令数据。
在步骤S303,参照通信速率管理表522,工具控制部512将适合于随后待传输的指令“06H”(跟踪传输L、跟踪传输M)的接收时钟速率设定到工具接收部540。
在步骤S304,工具控制部512与调试时钟信号DCLK同步地通过调试通信输入信号DI向微控制器102发送CMD[0:2]=06H(“跟踪数据获得”)作为读取指令数据。
在步骤S305,作为CPU 210的执行的结果,因为通过调试通信输出信号DO传输由数据跟踪控制部270产生的跟踪数据,所以工具接收部540接收跟踪数据。跟踪数据是采取格式A的低8位跟踪数据或采取格式B的8位跟踪数据。将接收到的跟踪数据暂时存储在工具控制部512中。
在步骤S306,工具控制部512分析包含在通过工具接收部540接收的8位数据中的TCODE[0:1]。如果TCODE[0:1]=01H,则通过工具接收部540接收随后传输的采取格式A的高8位跟踪数据(步骤S308)。工具控制部512基于步骤S308接收的8位跟踪数据和步骤S305接收的8位跟踪数据而恢复采取格式A的跟踪数据,并将恢复数据存储在跟踪存储部550中(步骤S309)。
如果TCODE[0:1]=02H,则微控制器102请求改变时钟速率。因此,进行以下处理。
在步骤S311,参考通信速率管理表522,工具控制部512将适合于随后待传输的指令“00H”的读取数据传输的接收时钟速率设定到工具接收部540。
在步骤S313,工具控制部512发出CMD[0:2]=00H(“时钟速率显示寄存器读取”)作为读取指令数据,并且工具发送部530与调试时钟信号DCLK同步地通过调试通信输入信号DI向微控制器102发送指令。
在步骤S314,工具接收部540通过调试通信输出信号DO接收以调试时钟速率提供的数据。接收的数据是在时钟速率显示寄存器120中的8位值。
在步骤S316,工具控制部512根据时钟速率显示寄存器120的接收值将通信速率管理表522更新。
在步骤S317,工具控制部512发出CMD[0:2]=01H(“时钟速率改变确认”)作为控制指令。工具发送部530与调试时钟信号DCLK同步地通过调试通信输入信号DI向微控制器102发送指令。
在步骤S319,工具控制部512检查接收到的时钟速率显示寄存器120的值,并且当将位2“停止”被设定为生效时,控制流程返回到步骤S313。工具控制部512再次读取时钟速率显示寄存器120的值,并等待直到将位0“高速”或位1“低速”设定为生效。因为在“系统时钟停止”状态中数据跟踪控制部270停止,所以不产生跟踪数据。当“系统时钟停止”状态被清除时(步骤S319中的否),控制流程返回到步骤S303,并且工具控制部512重新开始处理以获得跟踪数据。
图21示出在完成数据跟踪处理中工具控制部512的操作。在步骤S350,工具控制部512发出CMD[0:2]=05H(“数据跟踪结束”)作为控制指令,并且工具发送部530与调试时钟信号DCLK同步地通过调试通信输入信号DI向微控制器102发送指令。通过发出该指令,将步骤S301至步骤S319的数据跟踪处理结束。
图22A和图22B是流程图,示出微控制器102的操作,也就是,发送和接收部302的操作,主要关于发送部402和序列控制部312。
在步骤S402(图22A),为了检测读取指令传输或控制指令传输,接收数据采样部322监视调试通信输入信号DI并等待直到检测到STR位。
在步骤S404,接收数据采样部322基于调试时钟信号DCLK对调试通信输入/输出信号DIO进行采样,并将获得的1位数据输出到接收移位器330。在逐位地移位的同时,接收移位器330接收从接收数据采样部321发送的数据。当完成11位数据的存储时,接收移位器330通过接收数据信号RCVD输出8位数据部分,激活接收结束信号RVED,并将接收的结束通知给序列控制部312。序列控制部312激活指令获得信号CMGT并指示指令缓冲部340接收指令。指令缓冲部340接收接收数据信号RCVD的8位数据并将指令数据信号CD输出到序列控制部312。
在步骤S410,序列控制部312从通过来自指令缓冲部340的指令数据信号CD输出的8位数据中提取指令(CMD[0:2])的3位并分析指令。当指令(CMD[0:2])为“00H”时,控制流程进入步骤S412(图22B),当指令(CMD[0:2])为“01H”时,控制流程进入步骤S422(图22B),当指令(CMD[0:2])为“04H”时,控制流程进入步骤S432(图22B),当指令(CMD[0:2])为“05H”时,控制流程进入步骤S442(图22B),当指令(CMD[0:2])为“06H”时,控制流程分支到步骤S452(图22A)。
在步骤S412(图22B),指令(CMD[0:2])表示“00H”(时钟速率显示寄存器读取),并且序列控制部312激活指令执行开始信号CST,并指示指令执行部360执行指令。指令执行开始信号CST包含指示正在处理指令“00H”(时钟速率显示寄存器读取)的数据。当将指令执行开始信号CST设定为生效时,指令执行部360通过指令执行部读取总线RB进行对时钟速率显示寄存器120的读取访问。指令执行部360通过指令执行部读取数据输出信号CRDO输出读取的8位数据,激活指令执行结束信号CED并将读取的结束通知给序列控制部312。同时,发送部405将从指令执行部360输出的指令执行部读取数据输出信号CRDO的8位数据存储在内部读取数据缓冲部410中,激活读取缓冲部有效信号BVDB,并向序列控制部312通知发送准备的结束。
在步骤S414,序列控制部312激活发送开始信号SSTB,并指示发送部405进行发送。发送部405将包括存储在读取数据缓冲部410中的8位数据、通过INFO信息设定请求信号SIQB指定的1位数据(值固定为“0”)、1个STR位和2个STP的12位数据存储在内部发送移位器420中。发送移位器420与调试时钟信号DCLK同步地通过发送和接收部输出信号SRO逐位地移位和输出数据。当完成12位的移位和输出以后,发送移位器420激活发送结束信号SEDB。
在步骤S422,指令(CMD[0:2])表示“01H”(时钟速率改变确认),并且序列控制部312激活时钟速率改变确认信号CACK,并通知系统时钟控制部240时钟速率的改变被确认。CPU部201中的系统时钟控制部240改变系统时钟信号SCLK的速率。
在步骤S432,指令(CMD[0:2])表示“04H”(数据跟踪开始),并且序列控制部312激活指令执行开始信号CST,并指示指令执行部360开始数据跟踪。指令执行开始信号CST包含指示正在处理指令“04H”的数据。指令执行部360通过指令执行部写入总线WB操作数据跟踪控制部270中的内部控制位,并指示数据跟踪的开始。同时,指令执行部360激活指令执行结束信号CED,并通知序列控制部312数据跟踪开始。
在步骤S442,指令(CMD[0:2])表示“05H”(数据跟踪结束),并且序列控制部312激活指令执行开始信号CST,并指示指令执行部360完成数据跟踪。指令执行开始信号CST包含指示正在处理指令“05H”的数据。指令执行部360通过指令执行部写入总线WB操作数据跟踪控制部270中的控制位,并指示数据跟踪的结束。同时,指令执行部360激活指令执行结束信号CED,并通知序列控制部312数据跟踪完成。
在步骤S452(图22A),指令(CMD[0:2])表示“06H”(跟踪数据获得),并且发送控制部430等待直到8位跟踪数据,也就是格式A的低8位跟踪数据或格式B的跟踪数据,通过跟踪输出信号TRO从CPU部202传输。当传输8位跟踪数据时(步骤S452中的是),发送控制部430进入下一操作(步骤S454)。
在步骤S454,发送控制部430将通过跟踪输出信号TRO传输的8位跟踪数据存储在M缓冲部412中。
在步骤S456,发送控制部430检查传输的跟踪数据的TCODE。当TCODE为“01H”(CPU写入)时,控制流程进入步骤S458,当TCODE为“02H”(INFO生效)时,控制流程分支到步骤S472。
在步骤S458,发送控制部430等待直到通过跟踪输出信号TRO传输接下来的8位跟踪数据,也就是格式A的高8位跟踪数据。
在步骤S462,发送控制部430将传输的8位跟踪数据存储在L缓冲部413中。
在步骤S463,发送控制部430激活读取缓冲部繁忙信号RBSY,并通知CPU部202已经保持待输出的跟踪数据。发送控制部430激活读取缓冲部有效信号BVDC,并通知发送和接收部302已经将格式A的16位跟踪数据存储在M缓冲部412和L缓冲部413中。当将读取缓冲部繁忙信号RBSY设定为生效时,即使产生了跟踪数据,CPU部202中的数据跟踪控制部270仍然保持跟踪数据并等待直到读取缓冲部繁忙信号RBSY被设定为失效。
在步骤S465,当将通过同步电路140提供的读取缓冲部有效信号BVDC(SYN)设定为生效时,序列控制部312激活发送开始信号SSTC。当将通过同步电路140提供的发送开始信号SSTC(SYN)设定为生效时,发送控制部430激活发送开始信号SFTS,并指示发送移位器420开始发送。发送移位器420与系统时钟信号SCLK同步地通过发送部输出信号SSO逐位地移位和输出如下的12位数据,即,该12位数据包括从发送控制部430输出的M缓冲部412的8位数据、1个STR位、固定值为“0”的1个位以及2个STP位。当完成12位的移位和输出时,发送移位器420激活指示发送结束的发送结束信号SFTE。
在步骤S466,当将发送结束信号SFTE设定为生效时,发送控制部430激活发送开始信号SFTS,并指示发送移位器420发送接下来的数据。发送移位器420与系统时钟信号SCLK同步地通过发送部输出信号SSO逐位地移位和输出如下的12位数据,即,该12位数据包括从发送控制部430输出的L缓冲部413的8位数据、1个STR位、固定值为“0”的1个位以及2个STP位。当完成12位的移位和输出时,发送移位器420激活发送结束信号SFTE,并向发送控制部430通知发送结束。发送控制部430激活发送结束信号SEDC,并向序列控制部312通知16位跟踪数据的发送结束。
在步骤S468,发送控制部430去激活读取缓冲部繁忙信号RBSY。序列控制部312基于通过同步电路140提供的发送结束信号SEDC(SYN)被设定为生效的事实,而检测数据发送结束,返回到指令分析(步骤S410),并重复数据发送直到指令被改变。
在步骤S472,TCODE表示“02H”(INFO生效),发送控制部430激活读取缓冲部繁忙信号RBSY和读取缓冲部有效信号BVDC。读取缓冲部有效信号BVDC指示格式B的8位跟踪数据已经被存储在M缓冲部412中。
在步骤S474,当将通过同步电路140提供的读取缓冲部有效信号BVDC(SYN)设定为生效时,序列控制部312激活发送开始信号SSTC,并指示发送部402开始8位数据的发送。当将通过同步电路140提供的发送开始信号SSTC(SYN)设定为生效时,发送控制部430激活发送开始信号SFTS,并指示发送移位器420开始发送。发送移位器420与系统时钟信号SCLK同步地通过发送部输出信号SSO逐位地移位和输出如下的12位数据,即,该12位数据通过组合从发送控制部430输出的在M缓冲部412中的8位数据、1个STR位、固定值为“0”的1个位以及2个STP位而获得。当完成12位的移位和输出时,发送移位器420激活发送结束信号SFTE,并向发送控制部430通知发送结束。发送控制部430激活发送结束信号SEDC,并向序列控制部312通知8位数据的发送被完成。
在步骤S476,发送控制部430去激活读取缓冲部繁忙信号RBSY。序列控制部312基于通过同步电路140提供的发送结束信号SEDC(SYN)已经被设定为生效的事实,而检测数据发送结束,返回到指令分析(步骤S410),并重复数据发送直到指令被改变。
在本实施例中,示出了操作示例,其中能不受限地进行数据跟踪,不需要从外部工具502进行读取指令传输。换言之,因为能从微控制器102向外部工具502发送数据,而不需要从外部工具502进行读取指令传输,所以可以将能够监视对CPU 210的数据写入访问的执行状态的数据跟踪功能实现作为微控制器102与外部工具502之间的通信的一部分。
根据本发明,因为将微控制器中的系统时钟信号用作调试通信时钟,所以有这样的情况:即使与调试通信状态无关地改变系统时钟的速率(包括停止),也不能正确进行用于调试的通信。因此,可以继续基于用于调试的通信的调试操作,而不需要依靠系统时钟的速率。此外,可将微控制器中的高速时钟用作用于调试通信的时钟,从而有助于增加通信速率和改善调试功能的执行。
在以上描述中,除了CPU部之外,调试设备具有与微控制器等同的构造。
虽然参照实施例描述了本发明,但是本发明并不限于上述实施例,并且可以被组合和实施从而不至于引起任何矛盾。可以理解,本领域技术人员对本发明可实现落入本发明范围的多种改型。

Claims (24)

1.一种信息处理设备,包括:
外部工具单元,配置为向调试用户提供人机接口;以及
微控制器,
其中,所述微控制器包括:
CPU部,配置为响应于第一时钟信号执行作为调试目标的程序,其中,响应于来自所述CPU部的指示改变所述第一时钟信号的时钟速率;
第一发送部,配置为响应于所述第一时钟信号向所述外部工具单元发送调试数据;
第二发送部,配置为响应于与所述第一时钟信号不同的第二时钟信号向所述外部工具单元发送所述调试数据;以及
接收部,配置为接收从所述外部工具单元发送的数据。
2.根据权利要求1的信息处理设备,其中,所述外部工具单元包括:
工具接收部,配置为接收从所述第一发送部和所述第二发送部发送的所述调试数据;
工具发送部,配置为向所述接收部发送指令;
发送速率管理表,配置为与所述指令相关地存储指示在发送和接收中的通信速率的数据;以及
工具控制部,配置为基于所述指令参考所述发送速率管理表以确定通信速率,并将所述工具接收部和所述工具发送部的通信速率切换为确定的通信速率。
3.根据权利要求2的信息处理设备,进一步包括:
速率改变数据存储部,配置为存储指示所述第一时钟信号的时钟速率的改变的数据,
其中,存储在所述速率改变数据存储部中的数据被发送到所述外部工具单元并被用于更新所述发送速率管理表。
4.根据权利要求1至3任一项的信息处理设备,进一步包括:
序列控制部,配置为响应于从所述外部工具单元发出的指令,选择所述第一发送部和所述第二发送部中的一个,并通过使用选择的一个发送部来发送所述调试数据。
5.根据权利要求1的信息处理设备,其中,所述CPU部在向所述外部工具单元通知切换之后,切换所述第一时钟信号的时钟速率。
6.根据权利要求4的信息处理设备,其中,所述CPU部包括:
CPU,配置为响应于所述第一时钟信号执行所述程序;以及
时钟控制部,配置为接收所述第一时钟信号的时钟速率的改变请求作为来自所述CPU的指示,将时钟速率改变请求通知给所述序列控制部,并且当从所述序列控制部接收到对所述时钟速率改变请求的许可时,改变所述第一时钟信号的时钟速率,以及
其中,所述序列控制部响应于所述时钟速率改变请求的通知,将所述时钟速率改变请求通知给所述外部工具单元,并将对所述时钟速率改变请求的许可输出到所述时钟控制部。
7.根据权利要求1至3任一项的信息处理设备,其中,所述第一时钟信号是被提供给所述CPU部的系统时钟信号,所述第二时钟信号是用于调试的具有固定时钟速率的调试时钟信号。
8.一种微控制器,包括:
CPU部,配置为响应于第一时钟信号执行作为调试目标的程序,其中,基于来自所述CPU部的指示改变所述第一时钟信号的时钟速率;
第一发送部,配置为响应于所述第一时钟信号向外部工具单元发送调试数据,所述外部工具单元具有与调试用户的人机接口;
第二发送部,配置为响应于与所述第一时钟信号不同的第二时钟信号向所述外部工具单元发送所述调试数据;以及
接收部,配置为接收从所述外部工具单元发送的数据。
9.根据权利要求8的微控制器,进一步包括:
速率改变数据存储部,配置为存储指示所述第一时钟信号的时钟速率的改变的数据,
其中,存储在所述速率改变数据存储部中的数据被发送到所述外部工具单元,并被用于改变与所述外部工具单元的通信速率。
10.根据权利要求8的微控制器,进一步包括:
序列控制部,配置为响应于从所述外部工具单元发出的指令,选择所述第一发送部和所述第二发送部中的一个,并通过使用选择的一个发送部来发送所述调试数据。
11.根据权利要求8的微控制器,其中,所述CPU部在向所述外部工具单元通知切换之后,切换所述第一时钟信号的时钟速率。
12.根据权利要求10的微控制器,其中,所述CPU部包括:
CPU,配置为响应于所述第一时钟信号执行程序;以及
时钟控制部,配置为接收所述第一时钟信号的时钟速率的改变请求作为来自所述CPU的指示,将时钟速率改变请求通知给所述序列控制部,并且当从所述序列控制部接收到对所述时钟速率改变请求的许可时,改变所述第一时钟信号的时钟速率,以及
其中,所述序列控制部响应于所述时钟速率改变请求的通知,将所述时钟速率改变请求通知给所述外部工具单元,并将对所述时钟速率改变请求的许可输出到所述时钟控制部。
13.一种调试设备,包括:
第一发送部,配置为响应于第一时钟信号向外部工具单元发送调试数据,其中,基于来自CPU部的指令改变所述第一时钟信号的时钟速率,并且所述CPU部执行作为调试目标的程序;
第二发送部,配置为响应于与所述第一时钟信号不同的第二时钟信号向所述外部工具单元发送所述调试数据;以及
接收部,配置为接收从所述外部工具单元发送的数据。
14.根据权利要求13的调试设备,进一步包括:
速率改变数据存储部,配置为存储指示所述第一时钟信号的时钟速率的改变的数据,
其中,存储在所述速率改变数据存储部中的数据被发送到所述外部工具单元,从而所述数据被用于改变与所述调试设备的通信速率。
15.根据权利要求13的调试设备,进一步包括:
序列控制部,配置为响应于从所述外部工具单元发出的指令,选择所述第一发送部和所述第二发送部中的一个,并通过使用选择的一个发送部来发送所述调试数据。
16.根据权利要求15的调试设备,其中,所述序列控制部响应于时钟速率改变请求的通知,将所述时钟速率改变请求通知给所述外部工具单元,并将对所述时钟速率改变请求的许可输出到所述时钟控制部。
17.一种外部工具单元,包括:
接收部,配置为接收响应于第一时钟信号从执行作为调试目标的程序的微控制器的第一发送部发送的调试数据,并接收基于与所述第一时钟信号不同的第二时钟信号从所述微控制器的第二发送部发送的调试数据,所述第一时钟信号的时钟速率基于来自CPU部的指令而改变;以及
工具发送部,配置为向所述微控制器的所述接收部发送指令。
18.根据权利要求17的外部工具单元,进一步包括:
发送速率管理表,配置为与所述指令相关地存储指示用于发送和接收的通信速率的数据;以及
工具控制部,配置为基于所述指令参考所述发送速率管理表以确定通信速率,并将通信速率改变为确定的通信速率。
19.根据权利要求18的外部工具单元,其中,基于从所述微控制器接收的时钟速率更新所述发送速率管理表。
20.一种通过使用微控制器和外部工具单元的调试方法,所述微控制器响应于第一时钟信号执行作为调试目标的程序,所述外部工具单元向调试用户提供人机接口,所述调试方法包括:
响应于所述第一时钟信号从所述微控制器中的第一发送部向所述外部工具单元发送调试数据;
响应于与所述第一时钟信号不同的第二时钟信号从所述微控制器中的第二发送部向所述外部工具单元发送调试数据;
通过所述微控制器中的接收部接收从所述外部工具单元发送的数据;以及
基于来自所述微控制器的指令改变所述第一时钟信号的时钟速率。
21.根据权利要求20的调试方法,进一步包括:
通过所述外部工具单元中的工具接收部接收从所述第一发送部和所述第二发送部发送的调试数据;
从所述外部工具单元中的工具发送部向所述微控制器中的所述接收部发送指令;
基于来自所述外部工具单元的指令参考发送速率管理表以确定与所述工具接收部和所述工具发送部的通信速率;以及
将通信速率改变为确定的通信速率,
其中,所述发送速率管理表与来自所述外部工具单元的指令相关地存储指示通信速率的数据。
22.根据权利要求21的调试方法,进一步包括:
读取存储在速率改变数据存储部中的数据,所述速率改变数据存储部配置为存储指示所述第一时钟信号的时钟速率的改变的数据;以及
基于读取的数据更新所述发送速率管理表。
23.根据权利要求20的调试方法,进一步包括:
响应于从所述外部工具单元发出的指令,选择所述第一发送部和所述第二发送部中的一个;以及
通过使用选择的一个发送部来发送调试数据。
24.根据权利要求20至23任一项的调试方法,其中所述改变时钟速率包括:
向所述外部工具单元通知时钟速率的改变,
其中,在通知之后改变所述第一时钟信号的时钟速率。
CN201110043117.4A 2010-02-19 2011-02-21 具有调试单元的信息处理设备及其调试方法 Active CN102163182B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2010034338A JP5467891B2 (ja) 2010-02-19 2010-02-19 情報処理装置、デバッグ装置、デバッグ方法
JP2010-034338 2010-02-19

Publications (2)

Publication Number Publication Date
CN102163182A true CN102163182A (zh) 2011-08-24
CN102163182B CN102163182B (zh) 2016-03-23

Family

ID=44464415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110043117.4A Active CN102163182B (zh) 2010-02-19 2011-02-21 具有调试单元的信息处理设备及其调试方法

Country Status (3)

Country Link
US (2) US8996918B2 (zh)
JP (1) JP5467891B2 (zh)
CN (1) CN102163182B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589350A (zh) * 2014-11-12 2016-05-18 罗伯特·博世有限公司 工具和用于通过外部控制装置配置工具的方法
US20210089419A1 (en) * 2019-09-25 2021-03-25 Alibaba Group Holding Limited Debugging unit and processor

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013068105A (ja) * 2011-09-21 2013-04-18 Hitachi Automotive Systems Ltd 自動車用電子制御装置
GB2527108A (en) 2014-06-12 2015-12-16 Ibm Tracing data from an asynchronous interface
US9619214B2 (en) 2014-08-13 2017-04-11 International Business Machines Corporation Compiler optimizations for vector instructions
US9588746B2 (en) 2014-12-19 2017-03-07 International Business Machines Corporation Compiler method for generating instructions for vector operations on a multi-endian processor
US10169014B2 (en) 2014-12-19 2019-01-01 International Business Machines Corporation Compiler method for generating instructions for vector operations in a multi-endian instruction set
US9880821B2 (en) 2015-08-17 2018-01-30 International Business Machines Corporation Compiler optimizations for vector operations that are reformatting-resistant
US9594668B1 (en) * 2015-09-04 2017-03-14 International Business Machines Corporation Debugger display of vector register contents after compiler optimizations for vector instructions
US10110234B1 (en) * 2017-07-19 2018-10-23 Xilinx, Inc. Efficient system debug infrastructure for tiled architecture
CN109344066B (zh) * 2018-09-29 2022-02-25 深圳市奇林软件有限公司 一种浏览器页面的测试方法、系统及终端
US20210389371A1 (en) * 2021-08-30 2021-12-16 Intel Corporation Debug data communication system for multiple chips

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092686A (ja) * 1999-09-22 2001-04-06 Hitachi Ltd 半導体装置
CN1494688A (zh) * 2001-02-24 2004-05-05 �Ҵ���˾ 新颖的大规模并行超级计算机
US20100040123A1 (en) * 2006-11-10 2010-02-18 Shunichi Iwata System debugging method, system debugging equipment, processor, wireless-communications interface ic and interface method thereof

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6591369B1 (en) * 1999-10-01 2003-07-08 Stmicroelectronics, Ltd. System and method for communicating with an integrated circuit
US6823224B2 (en) 2001-02-21 2004-11-23 Freescale Semiconductor, Inc. Data processing system having an on-chip background debug system and method therefor
US7089467B2 (en) * 2002-08-21 2006-08-08 Freescale Semiconductor, Inc. Asynchronous debug interface
US7565576B2 (en) * 2003-04-17 2009-07-21 Seagate Technology Llc Method and apparatus for obtaining trace data of a high speed embedded processor
JP2006252006A (ja) * 2005-03-09 2006-09-21 Seiko Epson Corp デバッグシステム、半導体集積回路装置、マイクロコンピュータ及び電子機器
US8473724B1 (en) * 2006-07-09 2013-06-25 Oracle America, Inc. Controlling operation of a processor according to execution mode of an instruction sequence
KR100825779B1 (ko) * 2006-09-28 2008-04-29 삼성전자주식회사 반도체 메모리장치 및 이에 대한 웨이퍼 레벨 테스트 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001092686A (ja) * 1999-09-22 2001-04-06 Hitachi Ltd 半導体装置
CN1494688A (zh) * 2001-02-24 2004-05-05 �Ҵ���˾ 新颖的大规模并行超级计算机
US20100040123A1 (en) * 2006-11-10 2010-02-18 Shunichi Iwata System debugging method, system debugging equipment, processor, wireless-communications interface ic and interface method thereof

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105589350A (zh) * 2014-11-12 2016-05-18 罗伯特·博世有限公司 工具和用于通过外部控制装置配置工具的方法
CN105589350B (zh) * 2014-11-12 2021-09-07 罗伯特·博世有限公司 工具和用于通过外部控制装置配置工具的方法
US20210089419A1 (en) * 2019-09-25 2021-03-25 Alibaba Group Holding Limited Debugging unit and processor
US11755441B2 (en) * 2019-09-25 2023-09-12 Alibaba Group Holding Limited Debugging unit and processor

Also Published As

Publication number Publication date
US9213615B2 (en) 2015-12-15
JP5467891B2 (ja) 2014-04-09
US20150161019A1 (en) 2015-06-11
JP2011170654A (ja) 2011-09-01
US20110209003A1 (en) 2011-08-25
US8996918B2 (en) 2015-03-31
CN102163182B (zh) 2016-03-23

Similar Documents

Publication Publication Date Title
CN102163182A (zh) 具有调试单元的信息处理设备及其调试方法
JP3566304B2 (ja) バス制御装置及びバス制御システム
CN106649166A (zh) 一种基于统一接口的通用型惯组数据处理系统
US9273984B2 (en) Device and method for transmitting data between a position-measuring device and sequential electronics
CN100370409C (zh) 用于校准随机存取存储器的方法和存储器接口单元
CN109901469A (zh) 一种基于fpga技术实现profibus-pa总线通信的方法
CN104932997A (zh) 一种单总线通信方法和系统
CN105629902B (zh) 一种can总线精确定时和流水线测试的通讯系统
CN110474828B (zh) 一种mbus总线通信方法及系统
CN103488600A (zh) 通用从机同步串行接口电路
US6665757B1 (en) Communication interface having a master activating/deactivating a first signal with a clock signal after a predetermined time after a slave activating/deactivating the first signal
CN103186488A (zh) 用于内存系统的电压与时序校准方法
JP7165882B2 (ja) 通信装置および通信システム
CN110268393A (zh) 通信装置、通信方法、程序和通信系统
EP0807875B1 (en) Control method and apparatus for a production line
US20030172233A1 (en) Plural station memory data sharing system
CN112463703A (zh) 一种i2c总线的数据收发控制方法和系统
CN108228520B (zh) 一种面向bmc的i2c控制器的快速传输方法
CN101727421A (zh) Usb存储设备及其接口电路
CN1322443C (zh) 高速数据传输的装置及方法
JP2920441B2 (ja) プロセスデータ処理システムおよび処理方法
WO2021056631A1 (zh) 可自主回复写应答的axi总线传输装置
CN102098837A (zh) 照明控制系统
CN104317688B (zh) 一种电池状态检测方法
CN114968870B (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
CB02 Change of applicant information

Address after: Tokyo, Japan

Applicant after: Renesas Electronics Corporation

Address before: Kanagawa

Applicant before: Renesas Electronics Corporation

COR Change of bibliographic data
C14 Grant of patent or utility model
GR01 Patent grant