CN1097781C - 后台操作模式下透明操作的数据处理器及其实现的方法 - Google Patents

后台操作模式下透明操作的数据处理器及其实现的方法 Download PDF

Info

Publication number
CN1097781C
CN1097781C CN95118137A CN95118137A CN1097781C CN 1097781 C CN1097781 C CN 1097781C CN 95118137 A CN95118137 A CN 95118137A CN 95118137 A CN95118137 A CN 95118137A CN 1097781 C CN1097781 C CN 1097781C
Authority
CN
China
Prior art keywords
peripheral circuit
state
data processor
register
mode
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.)
Expired - Fee Related
Application number
CN95118137A
Other languages
English (en)
Other versions
CN1159032A (zh
Inventor
沙利·L·曼
戴维·J·A·皮纳
查尔斯·F·斯图多尔
高尔顿·W·迈克金农
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.)
NXP USA Inc
Original Assignee
Motorola Inc
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 Motorola Inc filed Critical Motorola Inc
Publication of CN1159032A publication Critical patent/CN1159032A/zh
Application granted granted Critical
Publication of CN1097781C publication Critical patent/CN1097781C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Microcomputers (AREA)

Abstract

像集成电路微控制器(10)这样的数据处理器。包括一个中央处理单元(12),一个系统集成块(14)及通过信息总线(32)共同相连的芯片上外围设备(16,24,28,30)。通过既保留中央处理单元(12)的状态也保留芯片上外围设备(16,24,28,30)的状态,微控制器(10)支持透明后台模式操作。在后台模式中,读状态寄存器(86)并不导致状态位清除。当微控制器在后台模式时,有选择地允许改变芯片上外围设备(16,24,28,30)的状态。

Description

后台操作模式下透明操作的数据处理器及其实现的方法
技术领域
本发明涉及一般数据处理器,尤其涉及后台模式的数据处理器。
背景技术
计算机系统传统地被定义为具有中央处理器单元(CPU),存储器和输入/输出外围设备。随着近代集成电路技术发展,已经能把很多传统计算机功能集成在单个集成电路芯片上。若这芯片包括中央处理单元及某些外围电路,可以称它为“集成数据处理器”。一个集成数据处理器的例子是Motorola公司的集成多协议处理器MC68302。如果芯片上还包括某些存储器,它得到更大的系统集成,这样一个芯片可称为“微控制器”,尽管它也有大家熟知的术语,如微计算机、嵌入控制器等等。例举的微控制器是Motorola公司的MC68HC11微控制器。集成数据处理器和微控制器都包括称为系统集成模块的“粘合逻辑(glue logic)”电路,以把芯片上存储器和/或外围设计同CPU结合起来。因为它们的高度集成化,集成数据处理器和微控制器理想的应用于如汽车发动机控制器,冰箱,蜂窝电话,遥控器等等方面。在应用操作时,为了开发软件,观察一下软件流程是有益的。这种观察可以检测软件故障,通过通常称为后台模式的诊断模式实现。在后台模式中,数据处理器可以通过一系列软件指令单步工作。每执行一指令后,CPU寄存器的内容可被检验,以测定软件对它们产生的影响。这也有助于通过改变寄存器观察软件的修改将会对操作的影响。
典型地,数据处理器也包括检测使它进入后台模式的某些条件的电路。这些条件通常称为断点。例如,可通过观察访问特定存储单元的CPU或观察处理某确定数据模式的数据总线,检测断点。在检测断点以后,系统集成模块强制进行一例外事件(如通过一中断信令)。响应这个例外事件,CPU把有关它操作的重要信息放到栈上。如果没有发生什么事,栈信息允许CPU在后台模式结束后返回到正常操作模式。因此,通常进入后台模式和退出后台模式对应用操作是透明的。
然而,因为数据处理器包括其它外围设备,保证CPU自己从后台模式透明地返回是不够的。期望整个芯片操作透明。例如,许多数据处理器包括串行通信模块。这些模块发送和接收数据并根据出现的某些条件(如字符发送或接收)中断CPU。在CPU接收到中断以后,它读状态寄存器以确定哪个事件引发此中断。
正常情况下,断点电路提供一个指示进入后台模式的信号。这信号使外围时钟停止。通常,这对保留透明操作是足够的。偶然地,在调试处理时,也要测试外围设备的状态。而且,读外围设备状态寄存器使外围设备状态改变。当返回到正常操作模式时,外围设备的状态不同于它正进入后台模式时的状态。因此需要这样一种数据处理器,它可通过允许检查外围设备的状态但不更改这些状态来确保后台模式中的透明操作。
发明内容
本发明提供一个在后台模式中用以透明操作的数据处理器(10),其中后台模式是一种诊断模式,数据处理器响应于中断信号而进入诊断模式,其特征在于:
一个中央处理单元,用来执行指令和访问存储器;
一个外围设备电路,它连到所说的中央处理单元并具有很多状态,当数据处理器处于正常操作模式时,所说外围设备电路为响应所述中央处理单元对所述外围设备电路执行预定的访问而作出状态转换;及
一个系统集成模块连到所说外围设备电路,它在诊断模式下工作以控制所说外围设备电路,防止当在诊断模式下访问所述外围设备电路时其状态在第一状态,即外围设备电路存在于正常操作模式中的状态,与第二状态,即外围设备电路具有用于接收控制信号的控制输入的状态,之间转换,并且系统集成模块在诊断模式期间激活控制信号,以防止当数据处理器处于诊断模式时外围设备电路在第一状态与第二状态间转换,
从而,数据处理器在诊断模式期间保留所说外围设备电路的状态。
本发明还提供在后台模式下透明地操作数据处理器的一种方法,其中后台模式是一种诊断模式,其特征在于:
存储一中断清除标志使能位,所说的中断清除标志使能位表示是否外围设备电路的状态在诊断模式中会受影响,其中当所述外围设备电路处于正常工作模式时,所述外围设备电路的所述状态发生改变;
检测断点条件,所说的断点条件引起数据处理器离开操作模式并进入诊断模式;
如果所说中断清除标志使能位是在第一逻辑状态,为响应所说检测断点条件的步骤使控制信号有效,如果所说中断清除标志使能位是在第二逻辑状态,为响应所说检测断点条件的步骤,保持所说控制信号无效;及
通过提供所说控制信号到外围设备电路的输入端,控制所说外围设备电路以防止其在诊断模式期间发生状态转换,其中当所述控制信号有效时,在诊断模式中不能影响所述外围设备电路的所述状态,当所述控制信号无效时,可能在诊断模式中影响所述外围设备电路的所述状态。
本发明的这个问题,其特点和优点从结合附图的下述详细说明中将能更清楚的理解。
附图说明
图1以方块图的形式说明按照本发明的微控制器形式的数据处理器。
图2以方块图的形式说明图1的微控制器的系统集成模块。
图3以方块图的形式说明图1的微控制器的中断(break)模块。
图4说明一时序图,以有助于对图1的微控制器的了解。
图5说明图1的串行件的部分方块图,以有助于对本发明的了解。
具体实施方式
图1说明了按照本发明的微控制器10形式的数据处理器。微控制器10是一个集成电路微控制器,通常包括一个中央处理单元(CPU)12,一系统集成模块14,一中断模块15,一串行部件电路16,随机存取存储器(RAM)电路18,一只读存储器(ROM)电路20,一替代存储器(Alternate memory)电路22(例如,一电可擦除可编程只读存储器EEPROM),一个端口逻辑电路24,一个外部总线接口电路26,定时器部件电路28及直接存储器存取(DMA)电路30。CPU12,系统集成模块14,中断模块15,串行部件16,RAM18,ROM20,替代存储器22,端口逻辑电路24,外部总线接口26,定时器电路28及DMA30的每一个均双向地同信息总线32相连。CPU12和系统集成模块14通过总线34双向相连。同样地,CPU12经过总线36同DMA30相连。
系统集成模块14通过大量集成电路引脚38能接收和发送外部到微控制器10的信号在此未详细显示集成电路的大量引脚。串行部件16经过很多集成电路引脚40接收和发送外部到微控制器10的信号。同样,在这里没有详细显示很多集成电路引脚。根据存储器的类型,替代存储器22可以经过很多集成电路引脚42(在此未详细显示)接收和发送外部到微控制器10的信号端口逻辑电路24也能够通过很多集成电路引脚44接收和发送外部到微控制器10的信号。此外,外部总线接口26能够经很多集成电路引脚46接收和发送外部到微控制器10的信号。定时器部分28也能够经很多集成电路引脚48接收和发送外部到微器10的信号。
图1说明了在微控制器系列中一个可能的微控制器。因为在同一系列数据处理器中的微控制器通常有很多不同连在板上的外围设备(on-board peripherals),微控制器10仅提供本发明在此描述的一个实施例。例如,微控制器10的另一实施例可以没有ROM20,没有外部总线接口26或DMA30。另外,在微控制器10中,用其它协处理器也要以被实现。事实上,微控制器10的其它实施例可以具有比图1中说明的更少的,更多的或不同的外围设备。
此外,在图1中说明的本发明的实施例中,微控制器10是一个8位微控制器,它包括16位地址及8位和16位的存储寄存器。
在图1中说明的本发明的实施例的工作期间,系统集成模块14作为微控制10的通用控制器。通常,系统集成模块14提供大量使能(enable)操作和禁止(disable)操作的控制信息,提供时序控制并实现对微控制器10的例外事件处理请求。系统集成模块14可以直接通过总线34同中央处理单元12相互连接,通过很多集成电路引脚38同外围装置接口,经过信息总线32同微控制器10的余下很多部件互连接。
中断模块15连到信息总线32并检测出现的断点。为响应检测到的断点,中断模块15激活一个标为“BKPT”的打断信号给系统集成模块14。信号BKPT,系统集成模块14强使一软件中断(SWI)指令到CPU12的指令寄存器。强使SWI指令会使微控制器10在当前指令执行完后进入后台模式。
系统集成模块14最好也对外部中断输入信号作出响应,允许外部仿真器强使微控制器10进入后台模式。在这种情况下,微控制器10进入后台模式的条件是2个中断条件的“或”,这可以在低有效(active-low)BKPT和外部中断信号之间作逻辑“与非”来实现。这附加中断信号原使外部仿真器强使微控制器10在更宽条件范围进入后台,例如在数据总线上传导了数据,指令序列等等。这些附加中断信号将不作进一步讨论。显然,仅有一个中断信号原是需要的。而且,中断模块15允许微控制器10进入后台模式,即使是微控制器10以单片方式操作。因此,中断模块包含在微控制器10中更好。
在微控制器10中,DMA30允许存储器为内部到微控制器10和很多外围设备(未显示)之间数据直接通信。当用户需要快速存储器存取方式时,DMA30可被选择在微控制器10上实现。直接存储器存取电路的实现和使用在数据处理领域内是熟知的,不再作进一步的详细讨论。
定时器部件28基于自激(free-runing)16位计数器执行很多时序功能。当使能信号通过很多集成电路引脚48时,定时器部件28可以实现输入捕捉(input-capture)功能,输出比较功能,实时中断功能,或计算机运行适当的看门狗功能。这些功能的每一种的实现和使用在数据处理技术领域内是为大家熟知的,不再作进一步的详细讨论。
外部总线接口26控制在外部用户或外部外围设备同微控制器10之间地址和数据值的接收和发送。外部总线接口26经信息总线32把很多地址和数据值传递给微控制器10的余下部分。外部总线接口的使用和实现在数据处理技术领域内是为大家熟知的,不再作进一步的详细讨论。
端口逻辑电路24控制很多集成电路引脚44的各引脚的操作和功能。端口逻辑电路24构成很多集成电路引脚44,在操作的第一方式中,各个作为一般目的输入/输出引脚用。在操作的第2种方式中,端口逻辑电路24可以用很多集成电路引脚44的各个传送多路地址和数据信息。端口逻辑电路的使用和实现在数据处理技术领域内是大家熟知的,不再作进一步的详细讨论。
RAM18,ROM20以及替代存储器22是起存储所需信息的作用,为微控制器10的适当操作。此外,对用户程序中指定的其它数据和地址值也可能存储在内。在微控制器中的存储器的使用和实现在技术上是大家熟知的,不再作进一步的详细讨论。
串行部件16在微控制器10和外部用户或外围设备之间传送串行数字数据。串行数字数据和适当的控制信号经集成电路引脚40而被连系。串行部件16说明一个外设例子,它的状态根据本发明保留在后台模式中,串行部件16将按照下面图5作进一步说明。
CPU12在微控制器10的工作期间,执行程序,这个程序由CPU12的指令集的具体指令组成。各种微处理器和微控制器指令集在技术上是熟知的。显然,根据本发明的微控制器可以用各种指令集操作。因此,CPU12的具体的指令集将不作进一步讨论。
图2以方块图的形式说明了图1的微控制器10的部分系统集成模块14,这有助于了解本发明。从图2可以看到系统集成模块通常包括条件电路49,标作“SIM BREAKPOINTSTATUS REGISTER”的寄存器52及一逻辑电路54。
条件电路49具有第一输入端为了从中断模块15接收信号BKPT,第二输入端为了接收标作“CTMBKPT”的信号,第三输入端为了接收标作“LAST”的信号和输出端以把标作“IBREAK”的信号提供给信息总线32。条件电路49是一个逻辑电路,它可识别或者是一内部中断条件(通过中断模块15激活信号BKPT),或者是通过激活输入信号CTMBKPT的外部中断条件。条件电路49有效信号IBREAK以响应有效信号BKPT或者CTMBKPT,而信号IBREAK同步于用信号LAST的有效来表示的指令边界。当有效时,信号LAST表示当前的时钟周期是指令的最后时钟周期。为退出后台模式,中断模块15及外部中断模块阻止(hold.off)它们各自的断点信号无效直到从中断(RTI)返回指令的最后一个周期。在图2中未显示检测RTI指令的附加逻辑。
寄存器50和52是出现在CPU12地址空间中的存储器映象寄存器,更具体地说,在地址空间部分包括涉及系统集成模块14的操作寄存器。寄存器50有一位作为SIM中断/停止/等待(SBSW)位51。SBSW位51是在退出中断打断(break interrupt)以后应用要求返回到等待或停止方式时有用的。如果SBSW位51设置成2进制1表示通过中断打断退出停止或等待方式。若SBSW位51清除为0表示通过中断打断没有退出停止或等待方式。通过对寄存器50的位1写入2进制0该位实现清除。停止和等待方式是使微控制器10用低功耗工作的方式。参考在美国专利号No.4,748,559,由Smith等人发表于1988年5月3日的,题目为“Apparatus for Reducing Power Consumed by staticMicroprocessor(用静态微处理器降低功耗的装置)”。
寄存器52有一位称作断点清除标志使能(BCFE)位53。BCFE位53在复位时缺省2进制0清除,但在以后可以变化。寄存器52有一输出它将指示BCFE位53的状态的信号传到逻辑电路54的输入。BCFE位53是一个可读、可写位,它决定是否软件能在后台模式期间影响外设状态。当它设置为2进制1时,BCFE位53允许软件在后台模式期间改变外设的状态。例如,当BCFE位53被置位时,允许访问外设的状态寄存器去清除它的某些位或全部的位。为了在后台模式时清除状态位,BCFE必须设置成2进制1。如果清除成二进制0,BCFE位53表示在后台模式期间状态位不能清除。
逻辑电路54包括与非门56和57,反相器58和59。与非门56的第一输入端连到寄存器52以接收指示BCFE位53的逻辑信号。第2输入端从中断模块15接收信号BKPT,与非门56还有一个输出端。与非门57的第一输入端连到与非门56的输出端,第2输入端用来接收信号BKPT,与非门57还有一输出端。反相器58具有一输入端,它连到与非门57的输出端,并且还有一输出端。反相器59的一个输入端连到反相器58的输出端,而它的输出端提供一标志为“ICLRFLGEN”的信号送到信息总线32。若BCFE位53置位,逻辑电路54在后台模式期间激活信号ICLRFLGEN。因此,BCFE位53允许用户确定是否利用访问接收信号ICLRFLGEN的外围设备改变它的状态。
图3以方块图的形式说明图1的微控制器10的中断模块15。中断模块15包括标记为“BREAK STATVS/CONTROLREGISTER”的寄存器60。寄存器60是一个可读、可写的存储器映象寄存器,它包括一中断允许(BRKE)位61和一中断有效(BRKA)位62。BRKE位61是一个可读可写位,它能在中断寄存器匹配情况下中断。当它设置为2进制1时,BRKE位61使能在16位地址匹配的情况下产生BKPT信号。在被清除为二进制0时,BRKE位地址匹配的情况下产生BKPT信号。BRKE位61可以在退出中断例程之前,通过写逻辑零而被清除,而在复位时被自动清除。BRKA位62是一可读、可写的状态位,在检测到中断地址匹配后,中断模块15将它设置成二进制1。这位在退出中断例程之前通过把它写成逻辑零而可能被清除成二进制零。这位也在复位时被清除。
中断模块15也包括为在16位地址匹配时激活信号BKPT的电路,包含称为BREAK ADDRESS REGISTER HIGH的寄存器63,8位比较器64,8位比较器65,称为BREAK ADDRESSREGISTER LOW的寄存器66及控制块67。寄存器63和66是可读可写的寄存器,分别包括8位低和高匹配地址部分。比较器64的第一输入端为接收标为“A15:8”总线地址的高端部分,第2输入端连到寄存器63,其输出响应“A15:8”和寄存器63的内容之间匹配而激活。比较器65的第一输入端用来接收标为“A7:0”的总线地址的低端部分,第2输入端连到寄存器66,其输出响应“A7:0”和寄存器66的内容之间匹配而激活。控制块67的第一输入端连到比较器64的输出,第2输入端连到比较器65的输出,第3输入端用来接收信号LAST,输出端用于提供信号BKPT。当BRKE位61被置位且二个输入均有效时,控制块67使信号BKPT有效,在PT1指令末尾响应信号LAST使信号BKPT无效。在使信号BKPT有效的同时,控制块67置位BRKA位62。
在图4中,对后台模式期间的操作作了更清楚的说明,图4的时序图有助于理解图1的微控制器10。在图4中,水平轴代表时间,2个感兴趣的时间点分别表示为“t1”“t2”。在t1以前,微控制器10处在正常操作模式。该模式由信号BKPT指示在逻辑高电平时表示。信号IBREAK在逻辑低时无效。在时间t1,这时间出现在当前CPU指令周期的结束,系统集成模块14使信号IBREAK有效。因此,在时间t1和t2之间,微控制器10处在后台模式。当微控制器10在正常操作模式时,信号ICLRFLGEN是在逻辑高时有效。在后台模式期间,信号ICLRFLGEN的逻辑状态取决于BCFE位的状态。如果BCFE位被清除(2进制0),逻辑电路54使信号ICLRFLGEN无效(在逻辑低电平)。因此,接收信号ICLRFLGEN的任何外设中寄存器的试验不能使外设改变它的状态。然而,如果在复位以后,用户设置BCFE位52成二进制1,那么信号ICLRFLGEN在后台模式期间在逻辑高有效,若试图读外设的寄存器可能造成改变逻辑状态。
在后台模式中透明外围设备操作的例子
在后台模式下维持外设状态的微控制器10的能力通过一专门例子能最好地理解。图5说明了图1的微控制器10的串行部件16的方块图。串行部件16说明三种方法,其中信号ICLRFLGEN用于在后台模式间保护外设的状态。第一,在串行部件16的状态寄存器中的某些控制位随对它们的读操作而被清除。信号ICLRFLGEN确定在后台模式中在被读以后是否要清除这些位,也就是是否要保留他们前面的状态。第二,读状态寄存器并不立即清除某些其它控制位。确切地说,读这些状态位的作用是开启清除机制,在某些其它条件发生时才完成清除。该机制的例子是对其它寄存器的写入。信号ICLRFLGEN使读状态寄存器的作用不开启清除机制。第三,写到另外寄存器可能使状态寄存器中一位被清除。而信号ICLRFLGEN允许写到其它寄存器而并不改变状态寄存器。
再回到图5,可以看到串行部件包括一发送数据寄存器81,一移位寄存器82,一接收数据寄存器83,一个引脚控制逻辑块84,一个标为“SPI CONTROL REGISTER”的寄存器85,一个标为“SPI STATUS AND CONTROL REGISTER86”的寄存器86及一个串行外设接口(SPI)控制块88。发送数据寄存器81是一个8位寄存器,其输入端接收来自信息总线32的数据部分的8位数据元素,其标为“D7:0”,而8位输出端连到移位寄存器82的输入端。移位寄存器82也有8位输出,这8位输出连到接收数据寄存器83的输入,移位寄存器82的串行输入端连到引脚控制逻辑块84的输出端,而串行输出端连到引脚控制逻辑块84的输入端。因此,移位寄存器82既作串行部件16的发送部分用,又作接收部分用。对发送操作,移位寄存器82接收要发送的一字节数据,同时向引脚控制逻辑84移位输出一次一位数据。对接收操作,移位寄存器82接收从引脚控制逻辑块84来的串行数据流,形成数据字节,存储到接收数据寄存器83中。接收数据寄存器83也有一输出用以提供信号D7:0给信息总线32。
引脚控制块84连到集成电路引脚40。集成电路40同寄存器以及串行部件16的控制逻辑一起形成串行外设接口(SPI)。集成电路引脚40的作用示于如下表1中:
表1
  引脚名  方向(主/从)                  说  明
MISO(主输入/从输出)MOSI(主输出/从输入)SPSCK(串行时钟)SS(从选择) 输入/输出输入/输出输入/输出输入 在全双工操作中,主SPI模块的MISO引脚连到从SPI模块的MISO引脚,主SPI同时地从MISO引脚接收数据,从MOSI脚发送数据,在MISO引脚上的从输出数据仅当SPI被配置为“从”时被使能。当它的SPMSTR位是二进制零的它的SS引脚是逻辑低时,SPI被配置为“从”。在全双工操作中,主SPI模块的MOSI引脚连到从SPI模块的MOSI引脚,主SPI同时地从MOSI引脚发送数据,从MISO引脚接收数据。在多从系统中,在SS引脚的逻辑高使MISO引脚成高阻态。串行时钟,串行时钟使主从设备之间的数据发送同步,在主微控制器中,SPSCK引脚是时钟输出,在全双工操作中,主和从微控制器在8个串行时钟周期内交换一数据字节,在从控制器中,SPSCK引脚是时钟输入。对主SPI模块的SS引脚施加一逻辑高电平允许模块从它的MOSI引脚发送数据,用逻辑低设置MODF位。对从SPI模块施加一逻辑低电平允许它在MOSI引脚接收数据,该引脚对于“从”必须是逻辑低,因为逻辑高电平禁止从操作。
SPI CONTROL REGISTER 85是一个存储器映象寄存器,这寄存器包括8个控制位。寄存器85的输出连到SP1控制块88去控制串行部件16的操作。这些位的各位的功能在表2中说明如下
表2
    位名                     说  明
 SPRIEDMASSPMSTRCPOLSPHASPWOMSPESPTIE SPI接收中断允许位,这读/写位使能通过SPRF位产生的CPU中断请求或DMA服务请求,当一字节从移位寄存器82传送到寄存器83时,SPRF位被置位,通过清除SPE位禁用SPI模块亦清除SPRIE。DMA选择位,当SPI接收全部位(SPRF)或SPI发送空位(SPTE)置位时,读/写位选择DMA服务请求。设定的DMAS位禁止SPRF CPU中断请求及SPTE CPU中断请求,复位清除DMAS位。SPI主位,读/写位选择主方式操作(当置位时)或从方式操作(当清除后)时钟极性位。这读/写位确定传送期间SPSCK引脚的逻辑状态,为在SPI模块之间传送数据,各SPI模块必须具有同样的CPOL位,复位清除CPOL位。时钟相位位。这读/写位控制串行时钟和SPI数据之间的时序关系,在SPI模块之间发送数据,这些SPI模块必须具有相同的CPHA位,复位置位CPHA位。SPI Wired-OR(线或)方式位。当置位时,此读/写位禁止在引脚SPSCK,MOSI和MISO上加上拉(pull-up)器件以使这些引脚变成漏极开路输出。SPE使能。当置位时,读/写位使能SPI模式,清除SPE位返回SPI状态及控制寄存器到复位状态。SPI发送中断使能。这读/写位使能通过SPTE位产生的CPU中断请求或DMA服务请求,当一个字节从发送数据寄存器传到移位寄存器时SPTE置位。复位时清除SPTIE位。通过清除SPE位禁止SPI模块亦清除SPIE位。
此外,SP1 STATUS AND CONTROL REGISTER86包括涉及串行部件状态的6位,它们将在表3中说明如下:
表3
    位名                        说  明
 SPRFOVRFMODFSPTESPR1/SPR0 SPI接收器满位。每次一个字节从移位寄存器82传送到接收数据寄存器83,这个可清除的只读标志置位。如果在寄存器85中SPRIE位置位,SPRF产生CPU中断请求或DMA服务请求。DMAS位确定是否SPRF产生SPRF CPU中断请求或SPRF DMA服务请求。在SPRF CPU中断(DMAS=0)后,CPU 12通过读寄存器86及其后读寄存器83清除SPRF,在SPRF DMA传输期间(DMAS=1),DMA 30通过读寄存器83自动地清除SPRF。溢出位。如果在下个字节进入移位寄存器82之间,软件未读接收数据寄存器83中的字节,这个可清除的只读位置位。在溢出条件下,已在接收数据寄存器83中的字节不受影响,但移位的最后字节丢失。OVRF位可以通过读寄存器86及其后的读寄存器83而清除,复位清除OVRF位。方式失效位。MODF位仅当串行部件16在主模式中有意义,当SPMSTR位为二进制1时,如果SS引脚为低,这个可清除的只读位置位。通过写寄存器86清除MODF位,复位时清除MODF位SPI发送器空位。每次寄存器81把一数据节传到移位寄存器82时,这个可清除的只读位置,如果在寄存器85中SPTIE位置位,SPTE产生一个SPTE CPU中断请求或一个SPTEDMA服务请求。在寄存器85中DMAS确定是否SPTE产生SPTE中断请求或-SPTE DMA服务请求。在SPTE CPU中断(DMAS=0)期间,CPU 12通过写寄存器83清除SPTE。在SPTE DMA传输期间(DMAS=1),DMA 30通过写寄存器81自动清除SPTE。SPI速率选择位。在主模式中,通过分别对00,01,10或11的SP1:SP0的值建立因子2,8,32或128,这些读/写位设置波特率。复位时清除这些位。
通常,SPI控制块88是一系列逻辑块,这些逻辑块控制串行部件16的操作。部分的操作涉及数据的发送和接收信令。为此目的,SPI控制块88包括4位输出端,这些输出端给CPU12提供2个中断请求信号(一个表示发送寄存器81满,另一个表示接收寄存器83空)。而将2个DMA服务请求信号送到DMA30(一个表示发送寄存器满,另一个表示接收寄存器83空)。
此外,当微控制器10进入后台模式时SP1控制块88响应信号ICLRFLGEN提供保留串行部件16状态的机制。ICLRFLGEN的各位的作用显示于如下表4中:
                                 表4
    位名                       访问寄存器86的作用
    ICLRFLGEN=0     ICLRFLGEN=1
SPRF 读寄存器86并不预触发清除机构 读寄存器86预触发清除机构,一旦清除机制发生,对寄存器83的随后读取会清除该位。
OVRF 读寄存器86不清除此位 读寄存器86清除此位
MODF 无影响 无影响
SPTE 写寄存器81并不影响此位 此位通过写寄存器81而被清除
SPR1/SPR0 无影响 无影响
注意当DMA30读寄存器86时(DMAS=1),无需任何预触发机制SPRF和SPTE位被清除。而且,显然状态寄存器清除和预触发机制正好是可能状态的一个例子,这状态可根据信号ICLRFLGEN有条件地被保留。
此外,一外围设备可以局部地确定是否在后台模式时期按信号ICLRFLGEN确定对它的状态发生作用。例如,串行部件16可以包括一附加控制位去决定是否响应信号ICLRFLGEN对某些状态的改变,如果这个状态位置位,那么串行部件16将响应信号ICLRFLGEN在后台方式期间选择性的改变状态。也就是串行部件16将允许某些状态改变,只要信号ICLRFLGEN在后台模式时期是有效的。如果这个状态位被清除,那么串行部件16将使状态在后台期间改变,不管信号ICLRFLGEN是否有效。在串行部件16中,这个控制位能放在寄存器86的未用位置。作为一个例子,对定时器部件28,产生具有是否响应信号ICLRFLGEN的这个“局部”确定。该机制提供一灵活性附加级别,可能对某些应用是需要的。注意,这局部控制位可以仅控制外围设备中某些状态的改变。
尽管本发明已经说明一个优选实施例的内容,对在技术上熟悉的人来说,很明显本发明可用很多方法修改,除了上面专门提出和陈述的外,且还可以给出其它很多实施例。在不同的实施例中,在后台模式下能被选择性地改变或保留的特定外围设备状态也有所不同。实施例实施中可改变。用于实现透明后台模式的信号的有效逻辑状态可以被反向。而且,按照本发明的数据处理器可以是一个微控制器(有芯片上存储器)或者只是一个有至少一个芯片上外围电路的集成数据处理器。再有,所用外围设备电路的类型从一个实施例到另一实施例可以变化。而信息总线32包括16位地址总线和8位数据总线。地址总线和数据总线的宽度从一个实施例到另一实施例可改变。因此,通过所附权利要求书试图包括属于本发明的精神和范围之列的本发明的所有修改。

Claims (8)

1.一个在后台模式中用以透明操作的数据处理器(10),其中后台模式是一种诊断模式,数据处理器响应于中断信号而进入诊断模式,其特征在于:
一个中央处理单元(12),用来执行指令和访问存储器;
一个外围设备电路(16),它连到所说的中央处理单元(12)并具有很多状态,当数据处理器处于正常操作模式时,所说外围设备电路(16)为响应所述中央处理单元对所述外围设备电路执行预定的访问而作出状态转换;及
一个系统集成模块(14)连到所说外围设备电路(16),它在诊断模式下工作以控制所说外围设备电路(16),防止当在诊断模式下访问所述外围设备电路时其状态在第一状态,即外围设备电路存在于正常操作模式中的状态,与第二状态,即外围设备电路具有用于接收控制信号的控制输入的状态,之间转换,并且系统集成模块在诊断模式期间激活控制信号,以防止当数据处理器处于诊断模式时外围设备电路在第一状态与第二状态间转换,
从而,数据处理器(10)在诊断模式期间保留所说外围设备电路(16)的状态。
2.权利要求1的数据处理器(10),其中所说的系统集成模块(14)的特征在于寄存器(52),所说寄存器(52)存储中断清除标志使能位(53)以便有选择地使能所说系统集成模块(14)去控制在诊断模式中所说外围设备电路(16)在所说很多状态之间的所说转换。
3.权利要求2的数据处理器(10),其特征还在于:
一个信息总线(32)连到所说的中央处理单元(12)、所说的外围设备电路(16)及所说系统集成模块(14)以便在所说中央处理单元(12)、所说外围设备电路(16)和所说系统集成模块(14)各个之间传播信号;及
一中断模块(15),它的输入连到所说信息总线(32),它的输出用于提供中断信号,所说的中断信号表示数据处理器(10)进入诊断模式。
4.权利要求1的数据处理器(10),其中所说外围设备电路(16)包括一个控制寄存器(86),它具有至少一个控制位,用于确定是否所说的外围设备电路(16)为响应所说控制信号在诊断模式期间在所说第一状态和所说第二状态之间作出转换。
5.权利要求1的数据处理器(10),其特征还在于一个第二外围设备电路(28),它连到所说中央处理单元(12),并包括具有至少一个控制位的控制寄存器,该控制位用于确定是否所说第二外围设备电路(28)响应所说控制信号在诊断模式期间在很多状态之间作出转换。
6.权利要求1的数据处理器(10),其中所说的外围设备电路(16)的特征在于一个串行外围设备接口,并且其中所说系统集成模块(14)在诊断模式下工作,通过防止状态寄存器的至少一位的变化以控制所说串行外围设备接口。
7.在后台模式下,透明地操作数据处理器(10)的一种方法,其中后台模式是一种诊断模式,其特征在于:
存储一中断清除标志使能位(52),所说的中断清除标志使能位(52)表示是否外围设备电路(16)的状态在诊断模式中会受影响,其中当所述外围设备电路处于正常工作模式时,所述外围设备电路的所述状态发生改变;
检测断点条件,所说的断点条件引起数据处理器(10)离开操作模式并进入诊断模式;
如果所说中断清除标志使能位(52)是在第一逻辑状态,为响应所说检测断点条件的步骤使控制信号有效,如果所说中断清除标志使能位(52)是在第二逻辑状态,为响应所说检测断点条件的步骤,保持所说控制信号无效;及
通过提供所说控制信号到外围设备电路的输入端,控制所说外围设备电路(16)以防止其在诊断模式期间发生状态转换,其中当所述控制信号有效时,在诊断模式中不能影响所述外围设备电路的所述状态,当所述控制信号无效时,可能在诊断模式中影响所述外围设备电路的所述状态。
8.权利要求7的方法,其中所说的控制步骤的特征在于控制所说外围设备电路(16),以禁止其在诊断模式期间进一步响应外围设备电路(16)的控制寄存器(86)中控制位而在很多状态之间进行转换的步骤。
CN95118137A 1994-11-10 1995-10-31 后台操作模式下透明操作的数据处理器及其实现的方法 Expired - Fee Related CN1097781C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US33696794A 1994-11-10 1994-11-10
US336967 1994-11-10
US336,967 1994-11-10

Publications (2)

Publication Number Publication Date
CN1159032A CN1159032A (zh) 1997-09-10
CN1097781C true CN1097781C (zh) 2003-01-01

Family

ID=23318508

Family Applications (1)

Application Number Title Priority Date Filing Date
CN95118137A Expired - Fee Related CN1097781C (zh) 1994-11-10 1995-10-31 后台操作模式下透明操作的数据处理器及其实现的方法

Country Status (7)

Country Link
US (1) US5954813A (zh)
EP (1) EP0712078B1 (zh)
JP (1) JP3943616B2 (zh)
KR (1) KR100385499B1 (zh)
CN (1) CN1097781C (zh)
DE (1) DE69525129T2 (zh)
TW (1) TW247949B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19611942C2 (de) * 1996-03-26 2003-02-20 Daimler Chrysler Ag Halbleiterschaltkreis für ein elektronisches Steuergerät
US6175913B1 (en) * 1997-09-12 2001-01-16 Siemens Ag Data processing unit with debug capabilities using a memory protection unit
EP0935195A2 (en) 1998-02-06 1999-08-11 Analog Devices, Inc. "An integrated circuit with a high resolution analog-to-digital converter, a microcontroller and high density memory and an emulator for an integrated circuit
US6385689B1 (en) 1998-02-06 2002-05-07 Analog Devices, Inc. Memory and a data processor including a memory
US6701395B1 (en) 1998-02-06 2004-03-02 Analog Devices, Inc. Analog-to-digital converter that preseeds memory with channel identifier data and makes conversions at fixed rate with direct memory access
US6233627B1 (en) * 1998-08-10 2001-05-15 Micron Technology, Inc. Processor with internal register for peripheral status
US6564269B1 (en) * 1998-09-10 2003-05-13 Silicon Image, Inc. Bi-directional data transfer using the video blanking period in a digital data stream
US6681280B1 (en) * 1998-10-29 2004-01-20 Fujitsu Limited Interrupt control apparatus and method separately holding respective operation information of a processor preceding a normal or a break interrupt
US6754749B1 (en) * 2001-01-22 2004-06-22 Sharewave, Inc. Multiple use integrated circuit for embedded systems
TW564350B (en) * 2002-03-01 2003-12-01 Via Tech Inc Control chip for speeding up memory access and the operation method
KR100462177B1 (ko) * 2002-08-26 2004-12-17 삼성전자주식회사 주변 장치의 동작 상태를 실시간으로 백업할 수 있는엠베디드 컨트롤러
US7574585B1 (en) * 2003-01-31 2009-08-11 Zilog, Inc. Implementing software breakpoints and debugger therefor
US7395443B1 (en) 2004-12-28 2008-07-01 Advanced Micro Devices, Inc. Integrated circuit with a hibernate mode and method therefor
US7752363B2 (en) * 2005-07-04 2010-07-06 Mediatek Inc. Signal generating circuit and related method for activating physical channel between host and peripheral device
US7533106B2 (en) * 2005-09-09 2009-05-12 Quickfilter Technologies, Inc. Data structures and circuit for multi-channel data transfers using a serial peripheral interface
EP2041937A1 (en) * 2006-07-05 2009-04-01 Freescale Semiconductor, Inc. Improvements in or relating to buffer management
CN109726163B (zh) * 2018-12-30 2020-12-11 广东大普通信技术有限公司 一种基于spi的通信系统、方法、设备和储存介质
CN115562464B (zh) * 2022-02-14 2023-09-12 荣耀终端有限公司 电子设备的激活模式的控制方法、电子设备以及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0428111A2 (en) * 1989-11-14 1991-05-22 Hitachi, Ltd. Data transfer control method and data processor using the same
US5084814A (en) * 1987-10-30 1992-01-28 Motorola, Inc. Data processor with development support features

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4942516A (en) * 1970-12-28 1990-07-17 Hyatt Gilbert P Single chip integrated circuit computer architecture
US4056846A (en) * 1976-06-30 1977-11-01 Ibm Corporation Data processing system with apparatus for sharing channel background processing
US4532587A (en) * 1981-08-26 1985-07-30 Texas Instruments Incorporated Single chip processor connected to an external memory chip
US4545015A (en) * 1982-12-27 1985-10-01 Pitney Bowes Inc. Word processing system with foreground/background capability
US4813009A (en) * 1984-11-02 1989-03-14 Tektronix, Inc. Method and apparatus for determining internal status of a processor
US4674089A (en) * 1985-04-16 1987-06-16 Intel Corporation In-circuit emulator
US5073968A (en) * 1988-08-09 1991-12-17 Hewlett-Packard Company Method and apparatus for marking emulation analysis states
KR0136594B1 (ko) * 1988-09-30 1998-10-01 미다 가쓰시게 단일칩 마이크로 컴퓨터
JPH0644236B2 (ja) * 1989-03-08 1994-06-08 富士ゼロックス株式会社 記録装置のモニタ制御装置
US5307464A (en) * 1989-12-07 1994-04-26 Hitachi, Ltd. Microprocessor and method for setting up its peripheral functions
US5157781A (en) * 1990-01-02 1992-10-20 Motorola, Inc. Data processor test architecture
JPH0682901A (ja) * 1992-09-07 1994-03-25 Hitachi Ltd カメラの日付位置設定方法
JPH06103109A (ja) * 1992-09-22 1994-04-15 Hitachi Ltd データプロセッサ、及びこれを用いるデバッグ装置
JPH0778731B2 (ja) * 1993-03-10 1995-08-23 日本電気株式会社 情報処理装置
US5530858A (en) * 1993-04-01 1996-06-25 Intel Corporation Method and apparatus for background processing for PCMCIA card services

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5084814A (en) * 1987-10-30 1992-01-28 Motorola, Inc. Data processor with development support features
EP0428111A2 (en) * 1989-11-14 1991-05-22 Hitachi, Ltd. Data transfer control method and data processor using the same

Also Published As

Publication number Publication date
JP3943616B2 (ja) 2007-07-11
EP0712078A1 (en) 1996-05-15
KR100385499B1 (ko) 2003-08-02
CN1159032A (zh) 1997-09-10
US5954813A (en) 1999-09-21
DE69525129T2 (de) 2002-07-11
DE69525129D1 (de) 2002-03-14
KR960018880A (ko) 1996-06-17
JPH08235010A (ja) 1996-09-13
TW247949B (en) 1995-05-21
EP0712078B1 (en) 2002-01-23

Similar Documents

Publication Publication Date Title
CN1097781C (zh) 后台操作模式下透明操作的数据处理器及其实现的方法
CN100568187C (zh) 一种用于对调试消息进行掩码的方法和装置
US6145122A (en) Development interface for a data processor
JP3105223B2 (ja) マイクロコンピュータ,マイクロプロセッサおよびコア・プロセッサ集積回路用デバッグ周辺装置
US6378064B1 (en) Microcomputer
KR102413593B1 (ko) 교착상태 방지를 위한 방법들 및 회로들
US7805638B2 (en) Multi-frequency debug network for a multiprocessor array
US7574581B2 (en) Cross-chip communication mechanism in distributed node topology to access free-running scan registers in clock-controlled components
EP1343076A2 (en) integrated circuit with multiple functions sharing multiple internal signal buses according to distributed bus access and control arbitration
JPS58225442A (ja) 優先順位制御回路
CN1303545C (zh) 多节点系统及其硬件事件的聚集方法
CN111209247A (zh) 一种集成电路计算设备及计算处理系统
US6269458B1 (en) Computer system and method for diagnosing and isolating faults
US8380963B2 (en) Apparatus and method for enabling inter-sequencer communication following lock competition and accelerator registration
US5675749A (en) Method and apparatus for controlling show cycles in a data processing system
US5751641A (en) Microprocessor memory test circuit and method
EP0840223B1 (en) Microcomputer capable of accessing an external memory
US5860161A (en) Microcontroller configured to indicate internal memory accesses externally
US5712822A (en) Microprocessor memory test circuit and method
US6260132B1 (en) Method and apparatus for secure address re-mapping
US6185523B1 (en) Apparatus and method for computer system interrupt emulation
GB1595471A (en) Computer system
CN210955072U (zh) 一种集成电路计算设备及计算处理系统
US6519555B1 (en) Apparatus and method of allowing PCI v1.0 devices to work in PCI v2.0 compliant system
Bermbach et al. Development of a debug module for a FPGA-based microcontroller

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
ASS Succession or assignment of patent right

Owner name: FREEDOM SEMICONDUCTORS CO.

Free format text: FORMER OWNER: MOTOROLA, INC.

Effective date: 20040820

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20040820

Address after: Texas in the United States

Patentee after: FreeScale Semiconductor

Address before: Illinois, USA

Patentee before: Motorola, Inc.

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20030101

Termination date: 20111031