CN100365594C - 信息处理控制系统 - Google Patents

信息处理控制系统 Download PDF

Info

Publication number
CN100365594C
CN100365594C CNB2004100118457A CN200410011845A CN100365594C CN 100365594 C CN100365594 C CN 100365594C CN B2004100118457 A CNB2004100118457 A CN B2004100118457A CN 200410011845 A CN200410011845 A CN 200410011845A CN 100365594 C CN100365594 C CN 100365594C
Authority
CN
China
Prior art keywords
program
application program
control system
information processing
miss hit
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 - Lifetime
Application number
CNB2004100118457A
Other languages
English (en)
Other versions
CN1601488A (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.)
Socionext Inc
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN1601488A publication Critical patent/CN1601488A/zh
Application granted granted Critical
Publication of CN100365594C publication Critical patent/CN100365594C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)
  • Advance Control (AREA)

Abstract

本发明提供一种信息处理控制系统,将程序细分成某个统一单位,通过在处理器执行前将已细分的每个单位所需要的命令从主存储器预先下载到高速缓冲存储器中,削减Miss hit;另外,在Miss hit已发生时,通过切换Application program,隐蔽访问未命中损失,提高程序的运转率,实现一边进行命令替换一边实时处理。通过采用Miss hit History flag(222)和DMA Process flag(223),实现上述功能。

Description

信息处理控制系统
技术领域
本发明涉及信息处理控制系统,特别涉及对需要一边替换存储于高速缓冲存储器的命令一边实现实时处理的系统进行支援的系统。
背景技术
图15表示使用一般的高速缓冲存储器的信息处理控制系统的构成。这个系统包括:主存储器400H,其存储程序的全部命令;高速缓冲存储器401H,其只存储必要的命令;高速缓存控制器402H,其对主存储器以及高速缓冲存储器进行控制;和处理器403H,其执行存储于高速缓冲存储器的命令。
在上述信息处理控制系统中,在高速缓冲存储器401H中有必要的命令时,处理器403H解读存储于高速缓冲存储器401H的命令并执行。当在高速缓冲存储器401H上必要的命令不存在时,发生访问未命中,终止处理器或者通过内核程序查询(等待),在这期间,高速缓存控制器402H将必要的命令从主存储器400H转送到高速缓冲存储器401H中;在高速缓冲存储器401H内的命令变为有效时,重新开始执行通过处理器403H已发生访问未命中时的命令。
在上述信息处理控制系统中,图16表示一边替换存储于高速缓冲存储器中的命令一边执行程序时的程序流程图(比如,参照非专利文献1)。在图16中,420表示时间顺序,421表示Kernel program的处理,422表示Application program的处理。423表示往来于Kernel program与Application program之间的程序的流程,424表示从主存储器到高速缓冲存储器必要命令的Down load起动,425表示在高速缓冲存储器中必要命令不存在时发生的Miss hit中断。420t、423t、426t表示程序从Kernelprogram到Application program的处理移动的时刻,421t、424t表示程序从Application program到Kernel program的处理移动的时刻,422t、425t表示从主存储器到高速缓冲存储器必要命令的Down load起动时刻。
以下对往来于Kernel program与Application program之间的程序的流程423进行说明。从Kernel program被起动的程序在时刻420t移动到Application program的处理。在这之后,Application program一直运行到发生Miss hit中断425。在时刻421t Miss hit中断425一发生,程序处理从Application program移动到Kernel program。在Kernel program查询阶段的时刻422t,起动从主存储器到高速缓冲存储器必要命令的Down load。在时刻423t Down load一结束,处理就从Kernel program移动到Applicationprogram,从已发生Miss hit中断425的时点(421t)的命令重新开始执行程序。另外,作为从发生Miss hit中断425到Down load结束的处理,无论由Kernel program查询,还是由Application program停止命令都可以。
图17表示在上述信息处理控制系统中的高速缓存控制器402H的内部构成(比如,参照非专利文献1)。在图17中,440表示用于表示程序上的逻辑地址与物理地址的对应的Cache Table Register;442表示tagAddress;443表示物理Address(物理地址)。44 1表示用于表示Tag Address442与物理Address 443的对应是无效还是有效的Valid flag。444表示程序的逻辑Address(逻辑地址)的高位,445表示程序的逻辑Address的低位。446表示程序的Cache Address的高位,447表示程序的Cache Address的低位。447与445为同样的信号。449表示比较回路,450表示让发生Misshit中断的Miss hit flag。
以下说明上述回路的动作。在该回路中,如果用比较回路449比较程序的逻辑Address的高位444和Tag Address 442后的结果一致并且Validflag 441是有效的,那么将物理Address 443的高位作为Cache Address的高位446,进一步将程序的逻辑Address的低位445作为Cache Address的低位447,作为Cache Address送入高速缓冲存储器401H。用比较回路449比较程序的逻辑Address的高位444和Tag Address 442后的结果一致并且Valid flag 441为有效的内容不存在于Cache Table Register 440内时,Misshit Flag 450变为Active,发生Miss hit中断。
在以上已说明的以往的信息处理控制系统中,在高速缓冲存储器上没有用于执行程序的必要的命令时,发生访问未命中(以下,与miss hit的表示意义相同),频繁发生Application program停止直到必要的命令被传送到高速缓冲存储器中。因此,存在不能保证一边替换命令一边实时处理的问题。
进一步,在以往的信息处理控制系统中,用某一Application program发生了miss hit时,起动其它的Application program,在这期间,由于在miss hit已发生的Application program中没有从主存储器Down load必要命令到高速缓冲存储器的机构,存在使处理器的运转率下降的问题。
进一步,在以往的信息处理控制系统中,由于在cache Table register中没有表示Down load的DMA的状况以及miss hit的状况的flag,通过在处理器执行前从主存储器预先传送必要的命令到高速缓冲存储器中,进一步,在发生miss hit中断时切换Application program,存在不能构筑一边进行替换命令一边实现实时处理的信息处理控制系统的问题。
进一步,在以往的信息处理控制系统中,由于没有作为表示进行Download的命令的DMA结束的flag的valid flag,在DMA结束时发生中断,根据中断通过程序的替换损失频繁发生,存在使处理器的处理效率降低的问题。
非专利文献1:David A.Patterson/John L.Hennessy著「计算机的构成与设计下」日经BP社,1996年4月19日。
发明内容
本发明正是解决上述问题的发明,其目的在于提供一种保证一边替换命令一边实时处理的信息处理控制系统。
依据本发明的信息处理控制系统,包括:控制操作系统的内核程序以及执行应用的应用程序、存储所述内核程序和所述应用程序的全部命令的主存储器、只存储必要命令的高速缓冲存储器、和执行在所述高速缓冲存储器中存储的命令的处理器,其特征在于,
在所述内核程序和所述应用程序内部,按照每个所述应用程序具有在所述处理器执行前预先将必要的命令从所述主存储器下载到所述高速缓冲存储器中的程序,在所述内核程序处理中或者所述应用程序处理中,当用于所述下载的程序出现被起动的情况时,用于所述下载的程序将所述处理器所需必要的命令,在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
根据上述信息处理控制系统,具有能够降低Miss hit的发生频率,能够一边替换命令一边实现实时处理的效果。
在上述信息处理控制系统中,优选将内核程序以及应用程序采用某个统一单位细分,用于所述下载的程序将包含为执行所述内核程序以及所述应用程序的所述处理器所需必要的命令的细分后的单位,在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
根据上述信息处理控制系统,具有能够降低Miss hit的发生频率,降低访问未命中损失,由此可一边替换命令一边实现更加高速的实时处理的效果。
在上述信息处理控制系统中,优选进一步高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;在所述高速缓存控制器内部,具有对按照每个包含为执行所述内核程序以及所述应用程序的所述处理器所需必要的命令的细分后的单位的下载执行状况进行监视的机构;用于所述下载的程序确认由所述高速缓存控制器内的所述机构所监视的所述下载执行状况,当下载没有结束并且下载不是在执行中的情况时,将包含为执行所述内核程序以及所述应用程序而所述处理器所需必要的命令的细分后的单位在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
根据上述信息处理控制系统,具有能够在适当时候只执行适当数量的每个module的Pre load的效果。而且,这里,把在处理器执行前将必要的命令从主存储器预先传送到高速缓冲存储器中称为Pre load,将Kernelprogram以及Application program细分成某个统一单位称为module化。
在上述信息处理控制系统中,优选进一步包括Miss hit中断以及DMA结束中断作为对所述处理器的中断机构,通过Miss hit中断,内核程序切换应用程序,通过DMA结束中断,内核程序可以复归到发生了Miss hit中断的应用程序。
根据上述信息处理控制系统,具有能够在将命令从主存储器Download到高速缓冲存储器中时隐蔽发生的访问未命中损失,提高作为处理器的运转率的效果。
在上述信息处理控制系统中,优选进一步包括高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;在所述高速缓存控制器内部,具有监视下载执行状况的机构;进一步,在所述内核程序内部具有切换所述应用程序的程序;用于切换所述应用程序的程序,确认由所述高速缓存控制器内的所述机构所监视的下载执行状况,当存在下载已经结束的应用程序时,切换应用程序。
根据上述信息处理控制系统,具有可以隐蔽由于执行Pre load或者Down load引起的访问未命中损失的效果。
在上述信息处理控制系统中,优选进一步包括高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;在所述高速缓存控制器内部,具有与所述细分后的单位对应的、命令的逻辑地址和物理地址的对应表,在所述对应表内部具有有效/无效flag、Miss hit管理flag、DMA管理flag。
根据上述信息处理控制系统,具有能够构筑在以module单位的Preload或者Miss hit中断发生时能够一边切换Application program一边执行程序,一边进行命令替换一边实现实时处理的信息处理控制系统的效果。
在上述信息处理控制系统中,优选Miss hit中断的机构采用Miss hit发生时的命令获取程序计数器值,实现Miss hit中断处理;具有通过Misshit中断处理,内核程序可以切换应用程序的装置。
根据上述信息处理控制系统,具有能够处理执行Pre load状态的Misshit中断与不执行Pre load状态的Miss hit中断的任意一个中断的效果。
在上述信息处理控制系统中,优选DMA Done中断的机构,其采用Miss hit管理flag和DMA管理flag,产生DMA结束中断;由此具有内核程序能实现复归到发生了Miss hit中断的应用程序的装置。
根据上述信息处理控制系统,具有能够减少每次DMA结束时发生的程序切换损失,抑制处理器的处理效率的下降,能够抑制DMA Done中断的发生,控制DMA Done中断的发生的效果。
在上述信息处理控制系统中,优选将内核程序以及应用程序采用某个统一单位细分,按照将每个细分后的单位所需必要的命令在处理器执行前预先从主存储器下载到高速缓冲存储器中那样进行控制。
根据上述信息处理控制系统,具有根据DMA Process flag判定Pre load的执行状态,能够在适当时候只执行适当数量的每个module的Pre load的效果。
在上述信息处理控制系统中,优选包括Miss hit中断以及DMA结束中断作为对所述处理器的中断机构,通过Miss hit中断,内核程序切换应用程序,通过DMA结束中断,内核程序可以复归到发生了Miss hit中断的应用程序。
根据上述信息处理控制系统,具有能够隐蔽由于执行Pre load或者Down load引起的访问未命中损失,进一步,能实现提早复归到发生了Miss hit中断的Application program的效果。
在上述信息处理控制系统中,优选具有在Miss hit发生时切换应用程序,之后,屏蔽发生的DMA结束中断的机构。
根据上述信息处理控制系统,具有如下效果:能保护其它的应用程序的处理,另外,在解除中断屏蔽的时点由于再次发生DMA Done中断,所以能复归到发生了Miss hit中断的Application program。
在上述信息处理控制系统中,优选包括对高速缓冲存储器中的命令解读的命令解读装置和管理处理器状态的状态管理装置,具有在发生向处理器的中断后,让命令解读装置的输出无效,进而复位状态管理装置的机构。
根据上述信息处理控制系统,具有防止由于无效命令而状态管理装置陷入到错误状态的情况,在中断复归后也能正常进行命令解读的效果。
根据本发明的信息处理控制系统,具有能够降低Miss hit的发生频率,能够一边替换命令一边实现实时处理的效果。
附图说明
图1表示根据第1实施方式的信息处理控制系统的全体构成框图。
图2表示在有关本发明第1实施方式的信息处理控制系统中,Pre load处理时的程序流程图。
图3表示在有关本发明第2实施方式的信息处理控制系统中,module化后的软件构成图。
图4表示在有关本发明第2实施方式的信息处理控制系统中,以module单位Pre load处理时的程序的流程图。
图5表示在有关本发明第3实施方式的信息处理控制系统中,以module单位Pre load处理时的流程图。
图6表示在有关本发明第4实施方式的信息处理控制系统中,Miss hit发生时一边切换Application program一边执行时的程序的流程图。
图7表示在有关本发明第5实施方式的信息处理控制系统中,Miss hit发生时一边切换Application program一边执行时的流程图。
图8表示在有关本发明第6实施方式的信息处理控制系统中,CacheTable Register与高速缓冲存储器的构成框图。
图9表示在有关本发明第7实施方式的信息处理控制系统中,实现Miss hit中断处理时的流程图。
图10表示在有关本发明第8实施方式的信息处理控制系统中,被发生DMA Done中断时的Cache Table Register与高速缓冲存储器的构成框图。
图11表示在有关本发明第9实施方式的信息处理控制系统中,以module单位Pre load处理时的流程图。
图12表示在有关本发明第10实施方式的信息处理控制系统中,Misshit发生时一边切换Application program一边执行时的流程图。
图13表示在有关本发明第11实施方式的信息处理控制系统中,实现DMA Done中断屏蔽时的流程图。
图14表示在有关本发明第12实施方式的信息处理控制系统中,存储器、命令解读装置、状态管理装置以及中断管理装置之间的关系框图。
图15表示一般的采用高速缓冲存储器的信息处理控制系统的构成图。
图16表示一边替换存储在高速缓冲存储器的命令一边执行程序时的一般的程序的流程图。
图17表示高速缓存控制器内的Cache Table Register与高速缓冲存储器的构成的一般框图。
图中:100-时间顺序,101-Kernel program处理,102-Applicationprogram A处理,103-Application program B处理,104-程序的流程,105-Break point中断,100t~106t-时刻,120-软件构成,121-Kernelprogram,122-Application program A,123-Application program B,124-Application program C,125-Application program D,140-时间顺序,141-Kernel program处理,142-Application program A处理,143-Application program B处理,144-程序的流程,145-Pre load起动,146-Break point中断,147-Application program A module A处理区间,148-Application program A module B处理区间,149-Application program Amodule C处理区间,150-Application program B module A处理区间,151-Application program B module B处理区间,140t~158t-时刻,160~167-流程图内处理,180-时间顺序,181-Kernel program处理,182-Application program A处理,183-Application program B处理,184-程序的流程,185-Down load起动,186-Miss hit中断,187-Break point中断,180t~190t-时刻,200~208-流程图内处理,201H、202H-硬件处理,220-Cache Table Register,221~225-寄存器,226~229-控制信号,230-存储器,231-比较回路,232-控制信号,233-控制信号,240~248-程序流程图内处理,240H-硬件处理,280~288H-流程图内处理,280H~283H-硬件处理,300~312-流程图内处理,300H~306H-硬件处理,320~329-流程图内处理,320H~322H-硬件处理,340H-中断管理机构,341H-存储器,342H-命令解读装置,343H-状态管理装置,340S~342S-控制信号,401H-高速缓冲存储器,402H-高速缓存控制器,403H-处理器,420-时间顺序,421-Kernel program处理,4222-Application program处理,423-程序的流程,424-Down loan处理,425-Miss hit中断,420t~423t-时刻。
具体实施方式
以下,参照附图详细说明本发明的实施方式。另外,在图中对相同部分或者相应部分采用相同符号,并不进行重复说明。
(第1实施方式)
图1表示根据第1实施方式的信息处理控制系统的构成。该系统包括:存储程序的全部命令的主存储器400H;只存储必要命令的高速缓冲存储器401H;控制主存储器400H以及高速缓冲存储器401H的高速缓存控制器402;执行存储于高速缓冲存储器的命令的处理器403H。
以下,说明图1所示信息处理控制系统的动作。这里,把在处理器403H执行前将必要的命令从主存储器400 H预先下载到高速缓冲存储器401H称作Pre load。为了实现Pre load,需要将实现Pre load的结构编入程序。关于在Application program(应用程序)内的Pre load,包括以下两种方法:将在Application program起动时起动Pre load的时刻(程序计数器值)作为Break point设定在寄存器中,如果程序命中(hit)了Break point那么通过发生Break point中断而起动Pre load的方法;和通过在Applicationprogram内部直接编入Pre load起动程序而起动Pre load的方法。关于不同的Application program对应的Pre load,由于不知道各自的Applicationprogram起动彼此的Pre load的时刻,将Kernel program(内核程序)起动各自的Application program的Pre load的时刻作为Break point设定在寄存器中,如果程序命中了Break point那么发生Break point中断,启动Pre load的方法。
图2表示在图1所示信息处理控制系统中实现Pre load时的程序的流程。在图2中,100表示时间顺序,101表示Kernel program的处理,102表示Application program A的处理,103表示Application program B的处理,104表示来往于Kernel program与Application program之间的程序的流程,105表示Break point中断,106表示Pre load起动。100t表示将Preload起动时刻作为Break point设定到寄存器的时刻,103t表示Pre load起动时刻,101t、104t表示处理从Kernel program移动到Application programA的时刻,102t、105t表示处理从Application program A移动到Kernelprogram的时刻,106t表示处理从Kernel program移动到Applicationprogram B的时刻。
下面,说明实现Pre load时的程序的流程。Kernel program起动后,在时刻100t将Pre load起动时刻作为Break point设定在寄存器中。设定后,在时刻101t,处理从Kernel program移动到Application program A,开始Application program A的处理。Application program A在到达Breakpoint设定的程序计数器的时点时发生Break point中断105,在时刻102t处理从Application program A移动到Kemel program。Kernel program接受Break point中断105,在时刻103t起动对Application program B的Pre load。Pre load一起动,Kernel program的处理就结束,在时刻104t处理从Kernelprogram移动到Application program A。在时刻105t,Application program A的处理到达Application program切换时刻,处理再次移动到Kernelprogram。在时刻106t,Kernel program起动Application program B。在该时点,由于Application program B的命令被Pre load到高速缓冲存储器401H上,不会发生Miss hit中断,能够实行Application program B的处理。
在图2中虽然说明了对不同的Application program的Pre load,在Application program内的Pre load中,只是Pre load时刻的设定方法不同,而处理的流程基本相同。另外,在图2中Application program只记载了A/B两种,显然并不是说对Application program的数目有制约。
根据这样的第1实施方式,关于在Application program内的Pre load,通过采取在Application program起动时,将起动Pre load的时刻(程序计数器值)作为Break point设定在寄存器中,根据Break point中断起动Preload的方法;和将Pre load起动程序直接编入到Application program内部起动Pre load的方法,实现Pre load。关于对不同的Application program的Pre load,通过采取将Kernel program起动各自的Application program的Preload的时刻作为Break point设定在寄存器中,根据Break point中断起动Pre load的方法,实现Pre load。通过这样实现Pre load,由于能降低Misshit的发生频率,能实现一边替换命令一边实现实时处理。
(第2实施方式)
根据第2实施方式的信息处理控制系统的构成与图1所示相同。该系统的特征在于具有将Pre load处理的单位module化,以每个module化的单位实现Pre load的结构。
下面对有关本发明第2实施方式的信息处理控制系统进行说明。首先,将Kernel program以及Application program细分成某个统一单位称作module化。图3表示将Kernel program和Application program等软件module化后的图。作为软件构成成为在Kernel program上Application program动作的构成。120表示module化后的软件全体构成,121表示Kernel program,122表示Application program A,123表示Application program B,124表示Application program C,125表示Application program D,这里所示Application program虽然为A/B/C/D四种,显然并不是说对Applicationprogram的数目有制约。Kernel program 121、Application program 122~125各自被module化,具有以每个module化后的单位实现Pre load的结构。
图4表示根据第2实施方式,Pre load已module化后的程序时的流程图。作为Pre load起动方法包括以下两种:关于在Application program内的Pre load,通过设定Break point起动Pre load的方法;和通过在Application program内部将Pre load起动时刻直接记述在程序而起动Preload的方法。在图4中采用后者进行说明。140表示时间顺序,141表示Kernel program的处理,142表示Application program A的处理,143表示Application program B的处理。144表示来往于Kemel program与Applicationprogram的程序的流程,145表示Pre load起动,146表示Break point中断。147、148、149分别表示Application program A的module A、module B、module C的处理区间。150、151分别表示Application program B的moduleA、module B的处理区间。140t表示将Pre load起动时刻作为Break point设定在寄存器中的时刻,143t、147t、151t、156t表示Pre load起动时刻,141t、144t、148t、152t表示处理从Kernel program移动到Application programA的时刻,142t、146t、150t、153t表示处理从Application program A移动到Kernel program的时刻,154t、157t表示处理从Kemel program移动到Application program B的时刻,155表示处理从Application program B移动到Kemel program的时刻。另外,145t表示在Application program A内部处理从module A移动到module B的时刻,149t表示在Application programA内部处理从module B移动到module C的时刻,158t表示在Applicationprogram B内部处理从module A移动到module B的时刻。
以下,说明以module单位实现Pre load时的程序的流程。Kemel program起动后,在时刻140t,将对Application program B的Pre load起动时刻作为Break point设定在寄存器中。设定后,在时刻141t,处理从Kernel program移动到Application program A,开始Application program A的处理。在发出在Application program A的module A内部记述的对module B的Pre load起动命令的时点,处理从Application program A移动到Kernel program(时刻142t),在时刻143t起动对module B的Pre load。起动Pre load后,Kemelprogram的处理结束,在时刻144t处理从Kernel program移动到Applicationprogram A的module A。在到达时刻145t的时点,Application program A的module A结束,开始module B的处理。在发出在Application program A的module B内部记述的对module C的Pre load起动命令的时点,处理从Application program A移动到Kernel program(时刻146t),在时刻147t起动对module C的Pre load。起动Pre load后,Kernel program的处理结束,在时刻148t处理从Kernel program移动到Application program A的module B。在到达时刻149t的时点,Application program A的module B结束,开始module C的处理。Application program A的module C在到达用Break point设定的程序计数器的时点,发生Break point中断146,在时刻150t处理从Application program A移动到Kernel program。Kernel program接受Breakpoint中断,在时刻151t起动Pre load。起动Pre load后,Kernelprogram的处理结束,在时刻152t处理从Kernel program移动到Applicationprogram A。在时刻153t,Application program A的处理一到达Applicationprogram切换时刻,就处理再次移动到Kernel program。Kernel program在时刻154t起动Application program B,以后,Application program B的处理同样被进行。Application program A的module B,module C以及Application program B的module A的处理开始的时点,由于必要的命令被Pre load到高速缓冲存储器上,可以在不会发生Miss hit中断的情况下,实现Application program的处理。
关于在上述说明中没有陈述的Pre load,通过module,即使对多个module的Pre load进行起动或者完全不进行Pre load的起动也没有关系。
图4中Application program虽然只记载了A/B两种,module虽然只记载了A/B/C三种,显然并不是说对Application program或者module的数目有制约。
这样,根据第2实施方式,module化Pre load处理的单位,通过具有按每个module化后的单位实现Pre load的结构,与module化前相比,提高了Pre load起动的预测精度,因此,能降低Miss hit的发生频率。进一步,由于能缩短一次Pre load所花费的DMA时间,即使发生了Miss hit,也可降低发生访问未命中损失(Miss hit Penalty)。这样第2实施方式能一边替换命令一边实现实时处理,进一步,对于在第1实施方式以上的高速实时处理也能适应。
(第3实施方式)
第3实施方式的信息处理控制系统的构成与图1所示的相同。该系统的特征在于通过利用高速缓存控制器402H内部的Cache Table Register的信息和Pre load执行状态的信息,能够在适当时间只执行适当数目的每个module的Pre load。
以下对有关本发明第3实施方式中的信息处理控制系统进行说明。图5表示在本发明第3实施方式中对Application program的每个module执行Pre load时的流程图。在该流程图中,根据高速缓存控制器402H的状态(特别地Pre load执行状态)判定是否起动Pre load。在步骤160中,起动Preload时,经过步骤161,处理从Application program的module A进入到Kernel program的步骤162。在module的内部,在没有起动Pre load时,进行步骤166的module A的处理,在此之后,在不执行Pre load的状态时转移到步骤167的module B的处理。在步骤162中,判断与在Cache TableRegister内进行Pre load预定的程序计数器(PC)相等的Tag Address是否存在。不存在时处理进入到步骤164,进行Pre load起动。存在时处理进入到步骤163,判断满足步骤162的条件的情况是否在Pre load中。没有在Pre load中时,处理进入到步骤164,进行Pre load起动。在Pre load中时,不执行任何处理,处理进入到步骤165。另外,在步骤164进行Pre load起动后处理也进入到步骤165。在步骤165中判断全部的Pre load起动完成与否。没有完成时,返回到步骤162,重复上述处理。已完成时,处理进入到步骤166,进行module A的其余的处理,在这之后,进行步骤167的module B的处理。
这样,根据第3实施方式,通过利用高速缓存控制器402H内部的CacheTable Register的信息和Pre load执行状态的信息,能够在适当时间只执行适当数目的每个module的Pre load。
(第4实施方式)
第4实施方式的信息处理控制系统的构成与图1所示相同。该系统的特征在于,作为向处理器403H的中断装置,通过具有Miss hit中断以及DMA Done中断,当命令已Miss hit时能一边切换应用程序一边执行。
下面说明有关本发明第4实施方式的信息处理控制系统。图6表示根据第4实施方式,通过具备Miss hit中断以及DMA结束中断(以下称为DMA Done中断),在命令的Miss hit已发生时,一边切换Applicationprogram一边执行程序时的程序流程图。180表示时间顺序,181表示Kemelprogram的处理,182表示Application program A的处理,183表示Application program B的处理,184表示来往于Kernel program与Application program A的程序流程。185表示Down load起动,186表示Miss hit中断,187表示DMA Done中断。DMA Done中断在Down load结束后发生。180t、185t、190t表示处理从Kernel program移动到applicationProgram A的时刻,181t、186t表示处理从Application program A移动到Kernel program的时刻,183t、188t表示处理从Kernel program移动到Application program B的时刻,184t、189t表示处理从Application programB移动到Kernel program的时刻。
以下,说明在命令的Miss hit已发生时,一边切换Application program一边执行程序时的程序流程图。Kemel program起动后,在时刻180t,处理从Kernel program移动到Application program A,Application program A的处理开始。在高速缓冲存储器401H上必要的命令如果不存在,就发生Miss hit中断。在时刻181t,Miss hit中断186来临时,处理从Applicationprogram A移动到Kernel program。在时刻182接受Miss hit中断,起动对Application program A命令的Down load。这之后,Kernel program检测到处于等待状态的Application program,Kernel program进行Applicationprogram的切换。Application program B处于等待状态时,Kernel program起动Application program B(时刻183t)。在Application program B执行中也执行Down load,在Down load结束时点,发生DMA Done中断187,处理从Application program B移动到Kernel program(时刻184t)。在DMADone中断187有与Application program A对应的情况时,Kernel program起动Application program A,从Miss hit中断186发生时点的命令(时刻185t)重新开始执行。关于DMA Done中断1 87在各个Application program或者module中存在中断的要因。
图6虽然对两种Application program的切换进行了说明,Applicationprogram有多个,Miss hit中断后,切换Application program,进一步,即使在切换目标的Application program已发生Miss hit中断,基本上也是相同的处理。另外,在图6中Application program虽然只记载了A/B两种,显然并不是说对Application program的数目有制约。
这样根据第4实施方式,作为对处理器403H的中断装置,通过具备Miss hit中断186以及DMA Done中断187,在命令已Miss hit时一边切换Application program一边能执行命令。特别地,关于DMA Done中断187,在每个Application program和每个module中有中断的要因,Miss hit中断186发生后,即使切换Application program,在DMA Done中断187发生时,能返回到原来的Application program。在已发生Miss hit时通过进行Application program的切换,将命令从主存储器400H向高速缓冲存储器401H进行Down load,能隐蔽发生的访问未命中损失,能提高处理器的运转率。
(第5实施方式)
第5实施方式的信息处理控制系统的构成与图1所示相同。该系统的特征在于,通过利用高速缓存控制器402H内部的Cache Table Register的信息以及Pre load执行状态的信息,判断是否应该起动Down load。
下面说明有关本发明第5实施方式中的信息处理控制系统。图7表示在本发明第5实施方式中,在Miss hit发生时,一边切换Application program一边执行时的流程图。在该流程图中,根据高速缓存控制器402H的状态(特别是Pre load执行状态)判断是否起动Down load。另外,在Miss hit已发生时判断有无处在等待状态中的Application program的基础上,执行Application program的切换。在图7中,200H、201H为硬件的处理。比如,在Application program A的module A处理中,在200H用硬件检测Miss hit中断后,从步骤200的Application program A的module A的处理移动到Kernel program的处理,进入到步骤201。在步骤201中,判断在Cache TableRegister内部与Down load预定的程序计数器(PC)一致的Tag Address是否存在。不存在时处理进入到步骤203,进行Down load起动。存在时,处理进入到步骤202,判断满足步骤201条件的情况是否在Pre load中。不在Pre load中时,处理进入到步骤203,进行Down load起动。在Pre load中时,不用进行任何处理,处理进入到步骤204。另外,在步骤203,Download起动后,处理也进入到步骤204。在步骤204中判断是否有处于等待状态中的Application program,如果有,进行Application program的切换,进入到步骤206,执行另外的Application program,如果没有,在用Kernelprogram内的步骤205,Down load结束之前进行查询。Down load结束,如果在201H,硬件检测到DMA Done中断,从步骤205、206移动到Kernelprogram内的步骤207的DMA Done中断处理。在步骤207进行DMA Done中断处理后,返回到原来的Application program的module A处理,从发生Miss hit中断的时点的命令重新开始运行程序。
这样根据第5实施方式,通过利用高速缓存控制器402H内部的CacheTable Register的信息以及Pre load执行状态的信息,能判断是否应该起动Down load。另外,在Pre load或者Down load起动后时,判断是否有处于等待状态的Application program,通过执行Application program切换,能隐藏由于Pre load或者Down load执行引起的访问未命中损失(Miss hitPenalty)。
(第6实施方式)
第6实施方式的信息处理控制系统的构成与图1所示的相同。该系统的特征在于具有按module单位知道DMA执行状况和Miss hit发生状况的结构。
以下说明有关本发明第6实施方式的信息处理控制系统。图8表示在第6实施方式中高速缓存控制器402H的内部结构框图。在图8中,220表示Cache Table Register,其表示程序上的逻辑Address和物理Address的对应关系;224表示Tag Address,225表示物理Address。221表示Validflag,其用来表示Tag Address 224与物理Address 225的对应有效还是无效。Cache Table Register 220作为以module单位的对应表被构成。222表示Miss hit History flag,其用来表示在对应Tag Address 224与物理Address225的module中是否发生Miss hit。223表示DMA Process flag,其用来表示在对应Tag Address 224与物理Address 225的module中,Pre load或者Down load的DMA是否在执行中,(以后,将Tag Address、物理Address、Valid flag、Miss hit History flag、DMA Process flag的对称为块。Cache Table Register 220由多个块构成)。226表示程序的逻辑Address的高位,227表示程序的逻辑Address的低位。228表示Cache Address的高位,229表示Cache Address的高位。229与227为同样的信号。231表示比较回路,232表示让Miss hit中断发生的Miss hit flag。Cache Table Register220成为从程序可读写的构成。进一步,做成Valid flag 221在DMA结束的时点被设置,DMA Process flag 223在DMA结束的时点被复位的结构。
以下,说明图8所示的回路的动作。在该回路中,如果由比较回路231比较程序的逻辑Address的高位226与Tag Address 224,其结果一致并且Valid flag 221为有效,那么将物理Address的高位225作为Cache Address的高位228,进一步,将程序的逻辑地址的低位227作为Cache Address的低位229,作为Cache Address送到高速缓冲存储器401H中。在CacheTable Register 220内,如果由比较回路231比较程序的逻辑Address的高位226与Tag Address 224,其结果一致并且Valid flag 221为有效的情况不存在时,Miss hit flag 232成为Active,发生Miss hit中断。另外,如果在已发生Miss hit中断时设置Miss hit History flag222,成为可以知道在Cache Table Register的何处正在发生Miss hit中断的结构。进一步,由于DMA process flag 223成为在DMA结束的时点自动被复位的结构,如果在Pre load或者Down load的DMA起动时设置,则成为能知道以module单位的DMA执行状况的结构。
这样根据第6实施方式,由于成为能够知道以module单位的DMA执行状况和Miss hit发生状况的结构,可构筑以module单位的Pre load或者Miss hit中断发生时能够一边切换Application program一边执行程序,一边进行命令替换一边实现实时处理的信息处理控制系统。
(第7实施方式)
根据第7实施方式的信息处理控制系统是发展第6实施方式后的内容。该系统具有自动保存在Miss hit中断发生时Miss hit中断发生时的命令获取程序计数器值(以下称为EIPC)、和命令解码程序计数器值(以下称为EPC)的结构。图9表示采用图8所示的有关本发明第6实施方式的信息处理控制系统、EIPC和DMA Process flag,实现Miss hit中断处理时的流程图。在图9中,240H是硬件(处理器403H或者高速缓存控制器402H)的处理。在Application program A的module A执行中,在240H硬件检测到Miss hit中断,自动保存EIPC与EPC,从步骤240的Applicationprogram A的module A的处理移动到Kernel program的处理,进入到步骤241。在步骤241中,判断在Cache Table Register内部中是否存在与EIPC一致的Tag Address。不存在时处理进入到步骤243,任意选择Cache TableRegister。存在时,处理进入到步骤242,在步骤241的条件成立的块中,判断DMA Process flag是否为1。DMA Process flag不为1时,判断为Pre load不在执行中,处理进入到步骤243,任意选择Cache Table Register。DMAProcess flag为1时,判断Pre load在执行中,不进行任何处理,处理进入到步骤245。另外,在步骤243移动到任意选择Cache Table Register的处理时,在这之后,进入到步骤244。在步骤244将被选择块的Valid flag设定为0,DMA Process flag设定为1,设定Tag Address与物理Address,进行Down load起动。在这之后,进入到步骤245。在步骤245中,在从步骤242移动到步骤245时,将满足步骤242条件的块的Miss hit History设定为1;在从步骤244移动到步骤245时,将在步骤243选择的块的Misshit History设定为1。步骤245的处理结束后,进入到步骤246。在步骤246中判断是否存在处于等待状态的Application program。如果存在,切换Application program,执行步骤248的别外的Application program,如果不存在,在Kernel program内的步骤247在Down load结束之前进行查询。
这样根据第7实施方式,采用有关本发明第6实施方式的信息处理控制系统、EIPC、DMA Process flag,通过实现Miss hit中断处理,能够处理在Pre load执行状态中的Miss hit中断与在Pre load不执行状态的Miss hit中断的任意一个中断。
(第8实施方式)
根据第8实施方式的信息处理控制系统的构成与图1所示的相同。图10表示在第8实施方式中的高速缓存控制器402H的内部构成框图。在图10中,与图8相同的符号表示同一或者相当部分,233表示DMA Done中断flag。DMA Done中断flag 233为对将Miss hit History flag 222设定为1的块仅在DMA已结束时发生的构成。其构成为:当发生Miss hit中断时,将DMA Process flag 223设定为1,然后,起动Pre load或者Down load的DMA,将Miss hit History flag 222设定为1;当没有发生Miss hit中断时,将DMA Process flag 223设定为1,然后,起动Pre load或者Down load的DMA,将Miss hit History flag 222设定为0。由于构成为在DMA结束的时点DMA Process flag 223自动复位而成为0,只有在发生Miss hit中断时,才发生DMA Done中断。
这样,根据第8实施方式,由于在没有发生Miss hit中断的情况下,在DMA每次结束时不需要发生DMA Done中断,能削减在DMA结束时已发生的块切换损失,能抑制处理器的处理效率的降低。另外,假如即使在发生了Miss hit中断时,而不想让DMA Done中断发生时等,通过设置Miss hit History flag为0,能抑制DMA Done中断的发生,能控制DMA Done中断的发生。
(第9实施方式)
根据第9实施方式的信息处理控制系统是第8实施方式的应用例。图11表示采用图10所示的有关本发明第8实施方式的信息处理控制系统,对Application program的每个module执行Pre load时的流程图。在步骤280,起动Pre load时,经过步骤28 1,从Application program的module A进入到Kernelprogram的步骤282的处理。在module内部没有起动Pre load时,进行步骤287的module A的处理,在这之后,在不执行Pre load的状态下移动到步骤288的module B的处理。在步骤282中,判断在Cache Table Register 220内与进行Preload预定的程序计数器(PC)一致的Tag Address 224是否存在。不存在时处理进入到步骤284,任意选择Cache Table Register 220。存在时处理进入到步骤283,在步骤282的条件成立的块中,判断DMA Process flag 223是否为1。DMA Process flag 223不为1的时候,判断Pre load不在执行中,处理进入到步骤284,任意选择Cache Table Register 220。DMA Process flag 223为1的时候,判断Pre load在执行中,不进行任何处理,处理进入到步骤286。另外,在步骤284移动到任意选择Cache Table Register 220的处理时,在这之后,进入到步骤285。在步骤285中,将所选择块的Valid flag 221设定为0,将DMAProcess flag 223设定为1,设定Tag Address 224与物理Address 225,进行Preload起动。在这之后,进入到步骤286。在步骤286中,判断全部Pre load起动是否完成,没有完成时,返回到步骤282,重复上述处理。完成时,处理进入到步骤287,进行module A的剩余的处理,在这之后,进行步骤288的module B的处理。另外,在进行步骤285的处理的时点,硬件在280H,将Valid flag 221设定为0,将DMA Process flag 223设定为1,在281H进行DMA起动。在282 H DMA结束的时点,将Valid flag 221自动设定1,将DMA Process flag 223设定为0。
这样,根据第9实施方式,采用有关本发明第8实施方式的信息处理控制系统,根据DMA Process flag 223判断Pre load的执行状态,能够在适当的时间只执行适当数量的每个module的Pre load。
(第10实施方式)
有关本发明第10实施方式的信息处理控制系统,采用图9所示有关本发明第7实施方式的信息处理控制系统、和图10所示有关本发明第8实施方式的信息处理控制系统,在Miss hit中断发生时一边切换Applicationprogram一边执行。该处理的流程图如图12所示。在图12中,300H、301H、302H、303H、304H、305H、306H为硬件的处理。在Application programA的module A的执行中,在300H硬件检测到Miss hit中断后,自动保存EIPC与EPC,从步骤300的Application program A的module A的处理移动到Kernel program的处理,进入到步骤301。在步骤301中,判断在CacheTable Register 220内部与EIPC一致的Tag Address 224是否存在。不存在时处理进入到步骤303,任意选择Cache Table Register 220。存在时处理进入到步骤302,在步骤301的条件成立的块中,判断DMA Process flag 223是否为1。DMA Process flag 223不为1时,判断Pre load不在执行中,处理进入到步骤303,任意选择Cache Table Register 220。DMA Process flag223为1时,判断Pre load在执行中,不执行任何处理,处理进入到步骤305。另外,在步骤303移动到任意选择Cache Table Register 220的处理时,在这之后,进入到步骤304。在步骤304将所选择的块的Valid flag 221设定为0,将DMA Process flag 223设定为1,设定Tag Address 224与物理Address 225,进行Down load起动。在这之后,进入到步骤305。在步骤305中,在从步骤302移动到步骤305时,使步骤302的条件成立的块的Miss hit History flag 222设定为1;在从步骤304移动到步骤305时,将由步骤304选择的块的Miss hit History flag 222设定为1。步骤305的处理一结束,就进入到步骤306。在步骤306中,判断是否存在处于等待状态中的Application program。如果存在,切换Application program,执行步骤308的另外的Application program;如果不存在,在Kernel program内的步骤307在Down load结束之前一直查询。另外,在进行304的处理的时点,硬件在301H中将Valid flag 221设定为0,将DMA Process flag 223设定为1,在302H开始DMA起动。
在这之后,在进行步骤305的处理的时点,在303H中将Miss hitHistory flag 222设定为1;在305H在DMA结束的时点,在304H中自动将Valid flag 221设定为1;将DMA Process flag 223设定为0。在将Misshit History flag 222设定为1的状态下,如果DMA Process flag 223变为0,在检测到DMA Done中断,从步骤307和步骤308的处理移动到Kernelprogram的步骤309的DMA Done中断子程序的处理。在这之后,在步骤310进行切换目标的Application program的module判定,在步骤311将Miss hit History flag 222设定为0,在步骤312,处理移动到发生了DMADone中断的Application program的module。
这样,根据第10实施方式,通过采用有关本发明第7实施方式的信息处理控制系统、和有关本发明第8实施方式的信息处理控制系统,控制程序,由于一边能进行Application program切换一边能执行程序,能隐蔽由于执行Pre load或者Down load引起的访问未命中损失(Miss hitPenalty)。另外,由于DMA Done中断发生在以module单位的必要的命令在高速缓冲存储器上聚齐的时点,能提早实现复归到已发生Miss hit中断的Application program。
(第11实施方式)
有关第11实施方式的信息处理控制系统,采用有关第6实施方式的信息处理控制系统与DMA Done中断屏蔽机构,对DMA Done中断进行屏蔽。在该信息处理控制系统中,其构成为:具有屏蔽对每个module发生的DMA Done中断的机构,对于该机构不是消除了DMA Done中断主要原因本身,而是可以保持中断主要原因本身,在解除了中断屏蔽的时点中断主要原因再次发生,进入中断。图13表示采用有关第6实施方式的信息处理控制系统与DMA Done中断屏蔽机构,屏蔽DMA Done中断时的流程图。该流程图表示Miss hit中断发生后的处理。320H、321H、322H为硬件的处理。Miss hit中断发生后,进行Down load起动等后,在步骤320中将Miss hit History flag设定为1。步骤320的处理一结束,就进入到步骤321。在步骤321判断是否存在处于等待状态中的Applicationprogram。如果存在,切换Application program,进入到步骤323;如果没有,在Kernel program中的步骤322在Down load结束之前进行查询。在步骤323判断是否需要中断屏蔽。如果需要,在步骤324设定中断屏蔽,在这之后,在步骤325执行其它的Application program。如果不需要,直接进入到步骤325,执行其它的Application program。另外,在进行320的处理的时点,硬件在320H中将Miss hit History flag设定为1;在进行324的处理的时点,硬件在321H中设置DMA Done中断屏蔽。在这之后,在322H中,检测DMA Done中断。在步骤322中,在检测到DMA Done中断的时点,DMA Done中断发生,进行步骤329的DMA Done中断处理。另外,在步骤325,在没有设定DMA Done中断屏蔽时,在检测到DMA Done中断的时点,DMA Done中断发生,进行步骤329的DMADone中断处理。在步骤325,设置DMA Done中断屏蔽时,在检测DMADone中断的时点,DMA Done中断不发生,进入到步骤327,继续其它的Application program的处理。在这之后,在步骤328在解除中断屏蔽的时点,DMA Done中断发生,进行步骤329的DMA Done中断处理。
这样,根据第11实施方式,通过对Miss hit中断后的DMA Done中断,在残留中断主要原因的情况下进行中断屏蔽,能够保护其它的Application program的处理。另外,由于在残留中断主要原因的状态下屏蔽DMA Done中断,在已解除中断屏蔽的时点,再次发生DMA Done中断,能够复归到发生Miss hit中断的Application program。
(第12实施方式)
以下说明有关本发明第12实施方式的信息处理控制系统。
图14表示有关本发明第12实施方式的信息处理控制系统的框图。340H表示中断管理机构,341H表示存储程序的存储器,342H为命令解读装置,343H表示状态管理装置。340S作为表示命令的信号线,341S为343H所示的状态管理装置控制342H所示的命令解读装置的控制线。342S为用于控制340H所示的中断管理机构控制342H所示的命令解读装置与343H所示状态管理装置的控制线。在通常的处理器中,不存在343H所示状态管理装置。在命令比特字段之外命令以外的命令,比如,含有暗号化情报等时,存在进行通常的命令的解读的命令解读装置与根据暗号化情报变化状态的状态管理装置。这时,通过从343H的状态管理装置输出的控制线341H,可以改变342H所示的命令解读装置的命令解读方法。
在图14中,340H中断管理机构检测到中断后,与342H表示的命令解读装置和343H所示的状态管理装置连接的342S所示的控制线成为Active。通过让342S成为Active,让342H所示命令解读装置的的输出无效化,进一步,复位343H所示状态管理装置。
这样,根据第12实施方式,在中断发生时,通过复位343H所示的状态管理装置,能防止根据无效的命令让状态管理装置陷入错误状态,中断复位后也能正常进行命令解读。
本发明为需要一边替换在高速缓冲存储器存储的命令一边实现实时处理的系统,比如能够适用于MPEGAV解码器或者数字TV相关的LSI等中。

Claims (15)

1.一种信息处理控制系统,包括:控制操作系统的内核程序以及执行应用的应用程序、存储所述内核程序和所述应用程序的全部命令的主存储器、只存储必要命令的高速缓冲存储器、和执行在所述高速缓冲存储器中存储的命令的处理器,其特征在于,
在所述内核程序和所述应用程序内部,按照每个所述应用程序具有在所述处理器执行前预先将必要的命令从所述主存储器下载到所述高速缓冲存储器中的程序,在所述内核程序处理中或者所述应用程序处理中,当用于所述下载的程序出现被起动的情况时,用于所述下载的程序将所述处理器所需必要的命令,在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
2.根据权利要求1所述的信息处理控制系统,其特征在于,将内核程序以及应用程序采用某个统一单位细分,用于所述下载的程序将包含为执行所述内核程序以及所述应用程序的所述处理器所需必要的命令的细分后的单位,在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
3.根据权利要求2所述的信息处理控制系统,其特征在于,
进一步包括高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;
在所述高速缓存控制器内部,具有对按照每个包含为执行所述内核程序以及所述应用程序的所述处理器所需必要的命令的细分后的单位的下载执行状况进行监视的机构;
用于所述下载的程序确认由所述高速缓存控制器内的所述机构所监视的所述下载执行状况,当下载没有结束并且下载不是在执行中的情况时,将包含为执行所述内核程序以及所述应用程序的所述处理器所需必要的命令的细分后的单位在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
4.根据权利要求2所述的信息处理控制系统,其特征在于,
进一步包括高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;
在所述高速缓存控制器内部,具有与所述细分后的单位对应的、命令的逻辑地址和物理地址的对应表,
在所述对应表内部具有有效/无效flag、Miss hit管理flag、DMA管理flag。
5.根据权利要求4所述的信息处理控制系统,其特征在于,
进一步包括Miss hit中断机构,其采用Miss hit发生时的命令获取程序计数器值,实现Miss hit中断处理;
所述信息处理控制系统具有通过所述Miss hit中断处理,内核程序切换应用程序的装置。
6.根据权利要求4所述的信息处理控制系统,其特征在于,
进一步具有DMA Done中断机构,其采用Miss hit管理flag和DMA管理flag,产生DMA结束中断;由此具有内核程序能实现复归到发生了Miss hit中断的应用程序的装置。
7.根据权利要求4所述的信息处理控制系统,其特征在于,
包括Miss hit中断以及DMA结束中断作为对所述处理器的中断机构,通过Miss hit中断,内核程序切换应用程序,通过DMA结束中断,内核程序复归到发生了Miss hit中断的应用程序。
8.根据权利要求4所述的信息处理控制系统,其特征在于,
具有在Miss hit发生时切换应用程序,之后,屏蔽发生的DMA结束中断的机构。
9.根据权利要求1所述的信息处理控制系统,其特征在于,
包括Miss hit中断以及DMA结束中断作为对所述处理器的中断机构,通过Miss hit中断,内核程序切换应用程序,通过DMA结束中断,内核程序复归到发生了Miss hit中断的应用程序。
10.根据权利要求9所述的信息处理控制系统,其特征在于,
进一步包括高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;
在所述高速缓存控制器内部,具有监视下载执行状况的机构;
进一步,在所述内核程序内部具有切换所述应用程序的程序;
用于切换所述应用程序的程序,确认由所述高速缓存控制器内的所述机构所监视的下载执行状况,当存在下载已经结束的应用程序时,切换应用程序。
11.根据权利要求9所述的信息处理控制系统,其特征在于,
将内核程序以及应用程序采用某个统一单位细分,用于所述下载的程序,将包含为执行所述内核程序以及所述应用程序的所述处理器所需必要的命令的细分后的单位在所述处理器执行前预先从所述主存储器下载到所述高速缓冲存储器中。
12.根据权利要求11所述的信息处理控制系统,其特征在于,
进一步包括高速缓存控制器,将必要的命令从所述主存储器传送到所述高速缓冲存储器中;
在所述高速缓存控制器内部,具有与所述细分后的单位对应的、命令的逻辑地址和物理地址的对应表,
在所述对应表内部具有有效/无效flag、Miss hit管理flag、DMA管理flag。
13.根据权利要求12所述的信息处理控制系统,其特征在于,
所述Miss hit中断的机构,其采用Miss hit发生时的命令获取程序计数器值,实现Miss hit中断处理;
所述信息处理控制系统具有通过所述Miss hit中断处理,内核程序切换应用程序的装置。
14.根据权利要求12所述的信息处理控制系统,其特征在于,
所述DMA结束中断的机构,其采用Miss hit管理flag和DMA管理flag,产生DMA结束中断;由此具有内核程序能实现复归到发生了Miss hit中断的应用程序的装置。
15.根据权利要求12所述的信息处理控制系统,其特征在于,
具有在Miss hit发生时切换应用程序,之后,屏蔽发生的DMA结束中断的机构。
CNB2004100118457A 2003-09-24 2004-09-22 信息处理控制系统 Expired - Lifetime CN100365594C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2003331964A JP4837247B2 (ja) 2003-09-24 2003-09-24 プロセッサ
JP2003331964 2003-09-24

Publications (2)

Publication Number Publication Date
CN1601488A CN1601488A (zh) 2005-03-30
CN100365594C true CN100365594C (zh) 2008-01-30

Family

ID=34308958

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100118457A Expired - Lifetime CN100365594C (zh) 2003-09-24 2004-09-22 信息处理控制系统

Country Status (3)

Country Link
US (1) US8135909B2 (zh)
JP (1) JP4837247B2 (zh)
CN (1) CN100365594C (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100833178B1 (ko) 2005-08-26 2008-05-28 삼성전자주식회사 캐시 메모리에 저장되는 블록개수를 제어할 수 있는 캐시메모리 시스템 및 동작 방법
JP4882625B2 (ja) * 2005-12-26 2012-02-22 株式会社デンソー マイクロコンピュータ
US8595747B2 (en) * 2005-12-29 2013-11-26 Sony Computer Entertainment Inc. Efficient task scheduling by assigning fixed registers to scheduler
JP2007323358A (ja) * 2006-05-31 2007-12-13 Toshiba Corp コンパイラプログラムを記録する媒体、コンパイル方法及びこれを伴う情報処理装置
JP2008015668A (ja) * 2006-07-04 2008-01-24 Toyota Infotechnology Center Co Ltd タスク管理装置
JP2009123064A (ja) * 2007-11-16 2009-06-04 Toshiba Corp 計算機システム
JP5494243B2 (ja) * 2010-06-01 2014-05-14 富士電機株式会社 プログラマブルコントローラ、プログラマブルコントローラのプログラム実行方法
WO2013015835A1 (en) 2011-07-22 2013-01-31 Seven Networks, Inc. Mobile application traffic optimization
US20120167122A1 (en) * 2010-12-27 2012-06-28 Nokia Corporation Method and apparatus for pre-initializing application rendering processes
EP2541404B1 (en) * 2011-06-30 2014-08-13 Telefonaktiebolaget LM Ericsson (publ) Technique for task sequence execution
CN102724585B (zh) * 2012-06-29 2016-01-13 Tcl集团股份有限公司 一种用于终端设备网络视频播放预加载的方法及装置
US10089233B2 (en) 2016-05-11 2018-10-02 Ge Aviation Systems, Llc Method of partitioning a set-associative cache in a computing platform

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761515A (en) * 1996-03-14 1998-06-02 International Business Machines Corporation Branch on cache hit/miss for compiler-assisted miss delay tolerance
CN1217506A (zh) * 1997-11-07 1999-05-26 日本电气株式会社 高速缓存存储器系统
CN1109967C (zh) * 1996-12-27 2003-05-28 国际商业机器公司 多线程处理器中指令和关联读取请求的后台完成

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4375083A (en) * 1980-01-31 1983-02-22 Bell Telephone Laboratories, Incorporated Signal sequence editing method and apparatus with automatic time fitting of edited segments
JPS56117384A (en) * 1980-02-20 1981-09-14 Nec Corp Cash controller
JPS56159886A (en) * 1980-05-13 1981-12-09 Nec Corp Buffer memory device
US4481573A (en) * 1980-11-17 1984-11-06 Hitachi, Ltd. Shared virtual address translation unit for a multiprocessor system
JPS57185545A (en) * 1981-05-11 1982-11-15 Hitachi Ltd Information processor
JPS58197553A (ja) * 1982-05-12 1983-11-17 Mitsubishi Electric Corp プログラム監視装置
JPS60263238A (ja) * 1984-06-11 1985-12-26 Nippon Telegr & Teleph Corp <Ntt> 情報処理装置
FR2593621A1 (fr) * 1986-01-24 1987-07-31 Intel Corp Appareil de point de rupture pour microprocesseur
US5053944A (en) 1986-01-24 1991-10-01 Intel Corporation Microprocessor breakpoint apparatus
US5249278A (en) 1986-01-24 1993-09-28 Intel Corporation Microprocessor breakpoint apparatus
US5165027A (en) 1986-01-24 1992-11-17 Intel Corporation Microprocessor breakpoint apparatus
US4860195A (en) 1986-01-24 1989-08-22 Intel Corporation Microprocessor breakpoint apparatus
US4811208A (en) * 1986-05-16 1989-03-07 Intel Corporation Stack frame cache on a microprocessor chip
JP2672599B2 (ja) * 1988-10-18 1997-11-05 ヤマハ 株式会社 コンピュータシステム
GB2234613B (en) 1989-08-03 1993-07-07 Sun Microsystems Inc Method and apparatus for switching context of state elements in a microprocessor
JPH03154139A (ja) * 1989-11-10 1991-07-02 Fuji Xerox Co Ltd キャッシュメモリ
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
JP2820752B2 (ja) * 1990-01-19 1998-11-05 日本電信電話株式会社 密結合マルチプロセッサシステムにおけるキャッシュメモリ一致制御方法
EP0449369B1 (en) * 1990-03-27 1998-07-29 Koninklijke Philips Electronics N.V. A data processing system provided with a performance enhancing instruction cache
JP2938511B2 (ja) * 1990-03-30 1999-08-23 三菱電機株式会社 半導体記憶装置
JP3203701B2 (ja) * 1990-11-01 2001-08-27 インターナショナル・ビジネス・マシーンズ・コーポレーション コードセグメントのリンク方法とそのシステム及びコードセグメントのダイナミックリンク方法
JP2522176B2 (ja) * 1993-08-13 1996-08-07 日本電気株式会社 プロセッサの制御方法
JPH09218823A (ja) * 1996-02-08 1997-08-19 Hitachi Ltd キャッシュメモリ制御装置
US6055621A (en) * 1996-02-12 2000-04-25 International Business Machines Corporation Touch history table
JPH1040106A (ja) * 1996-07-19 1998-02-13 Nec Corp 関数型言語処理装置
US5901225A (en) * 1996-12-05 1999-05-04 Advanced Micro Devices, Inc. System and method for performing software patches in embedded systems
JPH10340197A (ja) * 1997-06-09 1998-12-22 Nec Corp キャッシング制御方法及びマイクロコンピュータ
JPH1139153A (ja) * 1997-07-15 1999-02-12 Matsushita Electric Ind Co Ltd プログラムがromに記録されているマイコンシステムにおけるメンテナンス方法、そのマイコンシステムに用いられる中央処理装置、キャッシュシステム、及びマイコンシステムの応用装置
JPH11328123A (ja) * 1998-05-20 1999-11-30 Sony Corp プロセッサ、並列プロセッサおよび演算処理方法
US6134710A (en) * 1998-06-26 2000-10-17 International Business Machines Corp. Adaptive method and system to minimize the effect of long cache misses
JP2001056781A (ja) * 1999-08-19 2001-02-27 Sharp Corp 情報処理装置
US6587966B1 (en) * 2000-04-25 2003-07-01 Hewlett-Packard Development Company, L.P. Operating system hang detection and correction
US6665748B1 (en) * 2000-09-06 2003-12-16 3Com Corporation Specialized PCMCIA host adapter for use with low cost microprocessors
JP2002259209A (ja) * 2001-03-01 2002-09-13 Oki Electric Ind Co Ltd 演算処理システム
US6889331B2 (en) * 2001-08-29 2005-05-03 Analog Devices, Inc. Dynamic voltage control method and apparatus
JP2003076559A (ja) * 2001-09-03 2003-03-14 Matsushita Electric Ind Co Ltd 情報処理装置
AU2003221510A1 (en) * 2002-03-05 2003-09-16 International Business Machines Corporation Method of prefetching data/instructions
US20050268195A1 (en) * 2004-04-29 2005-12-01 Lund Morten W Apparatus and method for improving emulation speed of high-level languages in on-chip emulation systems

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761515A (en) * 1996-03-14 1998-06-02 International Business Machines Corporation Branch on cache hit/miss for compiler-assisted miss delay tolerance
CN1109967C (zh) * 1996-12-27 2003-05-28 国际商业机器公司 多线程处理器中指令和关联读取请求的后台完成
CN1217506A (zh) * 1997-11-07 1999-05-26 日本电气株式会社 高速缓存存储器系统

Also Published As

Publication number Publication date
CN1601488A (zh) 2005-03-30
US20050066132A1 (en) 2005-03-24
US8135909B2 (en) 2012-03-13
JP2005100034A (ja) 2005-04-14
JP4837247B2 (ja) 2011-12-14

Similar Documents

Publication Publication Date Title
US10521375B2 (en) Controller for a memory system
KR102564165B1 (ko) 비휘발성 메모리 익스프레스 컨트롤러에 의한 입출력 큐 관리 방법
CN100365594C (zh) 信息处理控制系统
TWI426452B (zh) Work processing device
US6996821B1 (en) Data processing systems and method for batching tasks of the same type in an instruction cache
CN100495370C (zh) 根据优先级次序操作闪存的设备和方法
EP3147793B1 (en) Interrupt processing method and interrupt controller
EP0943996B1 (en) Processor having real-time execution control for debug functions without a debug monitor
CN101221541B (zh) 用于soc的可编程通信控制器
TWI426451B (zh) Work processing device
JP2021527892A (ja) 分岐命令のタイプに基づく先行分岐予測の選択的実行
CN109308213B (zh) 基于改进任务调度机制的多任务断点调试方法
US10769050B2 (en) Managing and maintaining multiple debug contexts in a debug execution mode for real-time processors
US10761968B2 (en) Managing and maintaining multiple debug contexts in a debug execution mode for real-time processors
WO2015009267A1 (en) Techniques for controlling use of locks
JP4676289B2 (ja) デバッグシステム及び方法
JPH04243458A (ja) チャネルー直接アクセス記憶装置間非同期通信システム
US7945754B2 (en) Multiprocessor system, processor, and cache control method
CN115686625A (zh) 一种集成芯片及指令处理方法
US11216356B2 (en) Managing and maintaining multiple debug contexts in a debug execution mode for real-time processors
US20090217019A1 (en) Method for Processing Interrupt Requests in a Processor
KR101655236B1 (ko) 디버깅 장치 및 방법
CN100492299C (zh) 一种嵌入式软件开发的方法及系统
JP6488962B2 (ja) キャッシュ制御装置、キャッシュ制御方法およびキャッシュ制御プログラム
CN106897051B (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
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151112

Address after: Kanagawa

Patentee after: SOCIONEXT Inc.

Address before: Osaka Japan

Patentee before: Matsushita Electric Industrial Co.,Ltd.

CX01 Expiry of patent term

Granted publication date: 20080130