专利名称:信息处理装置和存储器存取安排方法
技术领域:
本发明涉及一种包括外部输入/输出机制的信息处理装置,该外部输入/输出机制可以在处理器中提供的存储器装置与外部装置之间执行高速读或写,本发明还涉及一种在产生对存储器装置的存取争用情况下的存储器存取安排方法。
背景技术:
通常,在由多个控制装置从一个存储器装置执行读或向一个存储器装置执行写时,使用双端口存储器作为最简便的实现方法。然而,近几年,把重点放在了LSI市场中的系统LSI上,并且电路的规模增加了。为此,在需要具有大容量存储器的系统LSI中占据大面积芯片的双端口存储器在费用方面是不利的。因此,为了减小芯片面积,可以建议使用单端口存储器。然而,根据多个控制设备存取的计时,会发生存取争用情况。为此,有必要对存取进行安排。
通常,根据多个控制设备存取的安排方法,存取是以下列方式进行安排的。在具有比第一控制装置的优先级高的第二控制装置进行存取、同时第一控制装置允许对存储器的存取的情况下,使第二控制装置等待(待命),直到第一控制装置结束对所述存储器的存取为止。当第一控制装置结束对所述存储器的存取时,开始第二控制装置对所述存储器的存取。此外,当第二控制装置存取所述存储器时,完全禁止第一控制装置存取所述存储器。从而,第二控制装置可以以高于第一控制装置的优先级存取所述存储器(例如,参见JP-A-9-198298)。
更具体地说,在由先允许存取的控制装置执行存取期间,后允许存取的控制装置不能存取所述存储器,直到先允许存取的控制装置结束存取为止。
然而,假定允许控制装置中任何一个具有优先级的装置进行存取。比如说,在允许外部处理器通过外部输入/输出机制存取处理器内置存储器的情况下,例如,外部处理器对处理器内置存储器的存取不需要花费很长时间。但是,外部处理器需要高速操作。为此,需要总是由具有优先级的外部处理器进行存取。
在应用上述技术到包括需要对处理器中提供的存储器进行高速存取的外部输入/输出机制的处理器时,当从外部输入/输出机制对存储器产生存取同时处理器核心存取存储器时,使外部输入/输出机制进行等待直到处理器核心结束存取为止。因此,外部输入/输出机制的存取速度降低了。
更具体地说,在某些情况下,外部输入/输出机制的存取速度根据处理器对存储器的存取状态而降低。在应用此机制通过外部输入/输出机制从外部处理器向处理器中提供的存储器传送数据的情况下,外部存取速度因此而降低,此外,终集的运算速度也会降低。
发明内容
为了解决所述传统问题,本发明的一个目的是提供一种实现外部输入/输出机制的信息处理装置,所述外部输入/输出机制可以总是给具有优先级的装置高速存取而无需等待,也不考虑处理器对存储器的存取状态,本发明还提供一种存储器存取安排方法。
本发明的第一个方面在于一种信息处理装置,该装置包括数据存储装置,第一和第二数据输入/输出装置,用于存取所述数据存储装置,时钟发生装置,用于向第二数据输入/输出装置提供时钟,切换装置,用于切换第一数据输入/输出装置和第二数据输入/输出装置对所述数据存储装置的存取,以及存取安排装置,用于当发生第一数据输入/输出装置和第二数据输入/输出装置对所述数据存储装置的存取争用时,使用于第二数据输入/输出装置的时钟等待并先执行第一数据输入/输出装置的存取,并用于在结束第一数据输入/输出装置的存取之后开始第二数据输入/输出装置的存取。
根据上述结构,当对于容许对数据存储装置存取的第一和第二数据输入/输出装置中发生存取争用时,使一个数据输入/输出装置的时钟等待以执行存取安排。从而,第一和第二数据输入/输出装置中的任何一个可以总是以优先级实现高速存取而无需等待。
本发明的第二个方面在于一种信息处理装置,该装置包括内置存储器,处理器,用于处理存储在所述内置存储器中的数据,时钟发生装置,用于向所述处理器提供时钟信号,输入/输出控制装置,用于在从外部控制装置接收到指令后执行对所述内置存储器的存取,以及存取安排装置,用于当发生所述处理器和输入/输出控制装置对所述内置存储器的存取争用时,产生等待请求信号以使所述时钟信号等待并执行具有优先级的输入/输出控制装置的存取。
根据上述结构,当对于容许对所述内置存储器存取的处理器和外部控制装置发生存取争用时,给外部控制装置的存取优先级,从而执行存取安排。因此,可以增加从外部控制装置对内置存储器的数据传送速度。
本发明的第三个方面在于根据本发明第二个方面的信息处理装置,进一步包括选择装置,用于切换处理器和输入/输出控制装置对所述内置存储器的存取,其中当在处理器存取内置存储器期间产生输入/输出控制装置对所述内置存储器的存取请求时,所述存取安排装置输出控制信号给选择装置,并且接收该控制信号的选择装置切换处理器对内置存储器的存取到输入/输出控制装置对内置存储器的存取。
根据上述结构,在处理器存取内置存储器的情况下,当在内置存储器和外部控制装置之间读或写数据时,处理器的存取被切换为输入/输出控制装置的存取。从而,可以实现优先于处理器的外部控制装置的高速存取。
本发明的第四个方面在于根据本发明第二个方面的信息处理装置,进一步包括保存装置,用于在处理器的等待操作期间保存在处理器等待操作之前从内置存储器输出的读数据,其中所述存取安排装置在从内置存储器输出的读数据与由所述保存装置保存的读数据之间切换将提供给处理器的读数据。
根据上述结构,同样地在处理器连续存取所述存储器的情况下,切换从内置存储器输出的读数据和由所述保存装置保存的读数据。从而,可以实现高速存取而不依靠存取状态。
本发明的第五个方面在于一种信息处理装置的存储器存取安排方法,所述信息处理装置包括数据存储装置和用于存取所述数据存储装置的第一及第二数据输入/输出装置,所述方法包括以下步骤当发生第一数据输入/输出装置和第二数据输入/输出装置对所述数据存储装置的存取争用时,使用于第二数据输入/输出装置的时钟等待,先执行第一数据输入/输出装置的存取,并在结束第一数据输入/输出装置的存取之后取消第二数据输入/输出装置的时钟等待,并执行第二数据输入/输出装置的存取。
根据上述结构,当对于容许对数据存储装置存取的第一和第二数据输入/输出装置中发生存取争用时,使任一个数据输入/输出装置的时钟等待以执行存取安排。从而,第一和第二数据输入/输出装置中的任何一个可以总是以优先级实现高速存取而无需等待。
本发明的第六个方面在于一种信息处理装置的存储器存取安排方法,所述信息处理装置包括用于通过指令执行流水线处理的处理器,在所述处理器中提供的存储器,以及用于以比所述处理器更高的优先级执行对所述存储器进行存取的输入/输出控制装置,所述方法包括以下步骤当发生处理器和输入/输出控制装置对所述存储器的存取争用时产生等待请求信号,用于使提供给所述处理器的时钟等待,切换处理器对存储器的存取到输入/输出控制装置对存储器的存取,并在结束输入/输出控制装置对存储器的存取之后取消所述处理器的时钟等待,并执行所述处理器对存储器的存取。
根据上述结构,在处理器存取内置存储器的情况下,当在内置存储器与外部设备之间读或写数据时,处理器的存取被切换到输入/输出控制装置的存取。从而,可以实现优先于处理器的优先级的高速存取。此外,在发生处理器和外部输入/输出装置的存取争用时,通过简单执行流水线级等待可以实现重新开始存取的高速存取。
本发明的第七个方面在于一种信息处理装置的存储器存取安排方法,所述信息处理装置具有用于通过指令执行流水线处理的处理器,在所述处理器中提供的存储器,用于以比处理器更高的优先级对所述存储器执行存取的输入/输出控制装置,以及保存装置,用于在处理器的等待操作期间保存在处理器的等待操作之前从内置存储器输出的读数据,所述方法包括以下步骤当在处理器连续读取所述存储器的一段时间内发生输入/输出控制装置的读取争用时,保存在处理器的等待操作之前从所述存储器输出的读数据,使提供给所述处理器的时钟等待,执行输入/输出控制装置对所述存储器的存取,并在结束输入/输出控制装置对存储器的存取之后取消处理器的时钟等待,将保存在所述保存装置中的数据提供给所述处理器,并重新开始处理器对所述存储器的存取。
根据上述结构,同样地在处理器连续存取所述存储器的情况下,保存在保存装置中的数据被提供给所述处理器,并且重新开始处理器对所述存储器的存取。从而,可以实现高速存取而不依靠存取状态。
图1是表示根据本发明的第一个实施例的信息处理装置的结构框图;图2是表示图1所示的信息处理装置的操作流程图;图3是表示根据本发明的第二个实施例的信息处理装置的示意结构框图;图4是表示根据本发明的所述实施例的读数据保存部分的结构电路图;图5是表示图3所示信息处理装置的操作流程图;图6是表示图3所示信息处理装置的操作的一个例子的计时图(处理器单独存取的情况),以及图7是表示图3所示信息处理装置的操作的一个例子的计时图(处理器连续存取的情况)。
具体实施例方式
下面将参照附图对本发明的实施例进行说明。
(第一实施例)附图1是表示根据本发明的第一个实施例的信息处理装置的结构框图。在附图1中,信息处理装置150包括数据存储装置101,第一数据输入/输出装置102,具有对数据存储装置101的高存取优先级,第二数据输入/输出装置103,具有低存取优先级,时钟发生装置104,用于向第二数据输入/输出装置103提供时钟,存取安排装置109,以及控制信号选择器112。
存取安排装置109监控第一数据输入/输出装置102的控制信号106和第二数据输入/输出装置103的控制信号108,并产生存取选择信号110,用于在第一数据输入/输出装置102与第二数据输入/输出装置103之间切换都将提供给数据存储装置101的控制信号114和写数据113,并且当发生第一数据输入/输出装置102与第二数据输入/输出装置103对数据存储装置101的存取争用时,产生时钟等待请求信号111,用于使第二数据输入/输出装置103等待。
在接收到从存取安排装置109输出的存取选择信号110之后,控制信号选择器112切换将从第一数据输入/输出装置102提供给数据存储装置101的写数据105和控制信号106,以及切换将从第二数据输入/输出装置103提供给数据存储装置101的写数据107和控制信号108。
参考具有上述结构的实施例,下面将参照图2的流程图来说明其操作。存取安排装置109监控第一数据输入/输出装置102和第二数据输入/输出装置103对数据存储装置101的存取状态(S201)。如果在不允许存取数据存储装置101的状态下(S200)仅允许第一数据输入/输出装置102存取(S201的A),存取安排装置109切换控制信号选择器112到第一数据输入/输出装置102侧(S202),并且第一数据输入/输出装置102执行对数据存储装置101的存取(S203)。当第一数据输入/输出装置102结束对数据存储装置101的存取时(S203的A),则结束对数据存储装置101的存取(S204)。
另一方面,如果在第一数据输入/输出装置102结束对数据存储装置101的存取之前第二数据输入/输出装置103要进行存取(S203的B),则存取安排装置109检测存取争用并输出时钟等待请求信号111给第二数据输入/输出装置103,第二数据输入/输出装置103进入等待状态(S205)。其后,第一数据输入/输出装置102执行对数据存储装置101的存取(S206)。
当第一数据输入/输出装置102结束对数据存储装置101的存取时,取消第二数据输入/输出装置103的等待状态(S207),并且存取安排装置109切换控制信号选择器112到第二数据输入/输出装置103侧(S208),第二数据输入/输出装置103执行对数据存储装置101的存取(S209)。
如果在不允许存取数据存储装置101的状态下(S200)仅允许第二数据输入/输出装置102存取(S201的C),类似地,存取安排装置109切换控制信号选择器112到第二数据输入/输出装置103侧(S208),并且第二数据输入/输出装置103执行对数据存储装置101的存取(S209)。如果第二数据输入/输出装置103对数据存储装置101的存取结束(S209的B),则结束对数据存储装置101的存取(S204)。
另一方面,如果在第二数据输入/输出装置103对数据存储装置101的存取结束之前第一数据输入/输出装置102要进行存取(S209的A)或者在不允许存取数据存储装置101的状态下(S200)第一数据输入/输出装置102和第二数据输入/输出装置103同时允许存取数据存储装置101时(S201的B),存取安排装置109检测存取争用并输出时钟等待请求信号111给第二数据输入/输出装置103,第二数据输入/输出装置103进入到等待状态(S210)。然后,存取安排装置109切换控制信号选择器112到第一数据输入/输出装置102侧(S211),第一数据输入/输出装置102执行对数据存储装置101的存取(S206)。在步骤S207之后将执行的操作已在上面描述过。
如上所述,根据所述实施例,提供了数据存储装置101作为数据存储装置,第一数据输入/输出装置102作为第一数据输入/输出装置,第二数据输入/输出装置102作为第二数据输入/输出装置,时钟发生装置104作为时钟发生装置,控制信号选择器112作为用于切换存取的切换装置,并且提供了存取安排装置109作为用于安排存取的存取安排装置。当发生第一数据输入/输出装置102和第二数据输入/输出装置103对数据存储装置101的存取争用时,使第二数据输入/输出装置103的时钟等待,并先执行第一数据输入/输出装置102的存取。当第一数据输入/输出装置102的存取结束时,取消第二数据输入/输出装置103的时钟等待,并执行第二数据输入/输出装置103的存取。因此,可以以这种小规模的电路结构相对简便地执行时钟的等待控制来实现存取安排,在所述存取安排中,第一数据输入/输出装置102能够总是以优先级存取数据存储装置101。
(第二实施例)附图3是表示根据本发明的第二个实施例的信息处理装置的示意结构框图。在附图3中,信息处理装置350包括时钟发生部分301,在处理器中提供并可以从处理器外部进行存取的处理器内置存储器部分304,处理器核心部分305,用于通过指令执行流水线处理,外部输入/输出控制部分310,具有比处理器核心部分305对处理器内置存储器304的存取优先级更高的存取优先级,读数据保存部分322,用于保存从外部输入/输出控制部分310输出的处理器侧读数据320,以及存取安排部分315,用于当处理器核心部分305和外部输入/输出控制部分310同时发生存取时,产生等待请求信号316。
时钟发生部分301包括时钟振荡部分338,和时钟等待控制部分337,用于在输入等待请求信号316期间停止从时钟振荡部分338提供时钟,并且用于产生具有整数倍那样的周期的时钟。时钟302没有从时钟振荡部分338输出的等待控制。时钟303是从时钟等待控制部分337输出的等待控制时钟。
处理器核心部分305具有用于接收来自存储器部分304的读数据323的存储器存取控制部分330,和多个触发器331、332、333和334,所述处理器核心部分305产生用于存取存储器部分304的处理器侧地址306、处理器侧片选(CS)信号307、存储装置控制信号308,例如读使能信号(RE)和写使能信号(WE),并产生处理器侧写数据309。
外部输入/输出控制部分310具有外部输入/输出信号同步部分336和存储器存取选择器部分335。外部输入/输出信号同步部分336接收外部输入/输出地址325、外部输入/输出读使能/写使能(RE/WE)信号326和外部输入/输出写数据327,并产生存储装置控制信号,例如同步以存取处理器内置存储器部分304的外部输入/输出侧地址311、外部输入/输出侧片选(CS)信号312和外部输入/输出侧写使能/读使能(WE/RE)信号313,以及外部输入/输出侧写数据314。存储器存取选择器部分335切换从外部输入/输出信号同步部分336发送的存储器控制信号和写数据以及从处理器核心部分305发送的存储器控制信号和写数据,将写数据317和存储器控制信号318提供给处理器内置存储器304,并切换从处理器内置存储器304发送的读数据319给处理器核心部分305和外部处理器328,从而将处理器侧读数据(未保存)320提供给读数据保存部分322并将外部输入/输出侧读数据321提供给外部处理器328。处理器内置存储器304输出读数据319给存储器存取选择器部分335。
存取安排部分315监控从处理器核心部分305发送的写/读使能信号308以及在外部输入/输出控制部分310中产生的写/读使能信号313,并将选择器控制信号324提供给外部输入/输出控制部分310中的存储器存取选择器部分335,以便切换处理器核心部分305侧的存储器控制信号和写/读数据以及外部输入/输出控制部分310侧的存储器控制信号和写/读数据。此外,当同时发生处理器核心部分305及外部输入/输出控制部分310对处理器内置存储器部分304的存取时,存取安排部分315产生等待请求信号316,用于使提供给处理器核心部分305的时钟等待。
读数据保存部分322保存从外部输入/输出控制部分310中的存储器存取选则器部分335输出的处理器侧读数据(未保存)320,并提供处理器侧读数据323给处理器核心部分305。
附图4是表示所述读数据保存部分322的结构电路图;在附图4中,读数据保存部分322包括触发器401,用于在周期内下一个时钟的上升沿更新数据,在该周期内触发器的使能信号411为“1”,并且该触发器用于保存从外部输入/输出控制部分310中的存储器存取选择器部分335输出的读数据320,所述读数据保存部分322还包括触发器403,用于延迟对应于没有等待控制的时钟302的一个周期的处理器侧读使能(RE)信号308的计时,以及触发器405,用于延迟对应于没有等待控制的时钟302的一个周期的等待请求信号316的计时。此外,读数据保存部分322包括与门407,用于对处理器侧读使能(RE)信号308、延迟一个周期的处理器侧读使能信号404以及延迟一个周期的等待请求信号406进行取与(逻辑运算),选择器409,用于当作为与门407的输出信号的选择器控制信号408是“1”时,发送保存数据输出402给处理器侧读数据323并且用于当选择器控制信号408为“0”时输出读数据320给处理器侧读数据323,以及与门410,用于对延迟一个周期的处理器侧读使能信号404与延迟一个周期的等待请求信号的负逻辑406进行与运算,并用于产生触发器使能信号。
参照具有上述结构的实施例,下面将参照附图5的流程图来说明其操作。存储器304监控外部输入/输出控制部分310和处理器核心部分305对存储器304的存取状态(S501)。如果在不允许存取存储器304的状态下(S500)仅允许外部输入/输出控制部分310存取(S501的A),则存取安排部分315切换外部输入/输出控制部分310中的存储器存取选择器部分335到外部输入/输出控制部分310侧(S502),并且外部输入/输出控制部分310执行对存储器304的存取(S503)。当外部输入/输出控制部分310对存储器304的存取结束时(S503的A),则结束对存储器304的存取(S504)。
另一方面,如果在外部输入/输出控制部分310对存储器304的存取结束之前处理器核心部分305进行存取(S503的B),则存取安排部分315检测存取争用并输出等待请求信号316给处理器核心部分305,并且处理器核心部分305进入到等待状态(S505)。之后,外部输入/输出控制部分310执行对存储器304的存取(S506)。当外部输入/输出控制部分310对存储器304的存取结束时,取消处理器核心部分305的等待状态(S507)。
如果在发生处理器核心部分305连续读取存储器304期间引起存取争用(S508的Y),则提供由读数据保存部分322保存的数据作为处理器核心部分305的读数据(S509)。
另一方面,如果在处理器核心部分305连续读取存储器304期间没有引起存取争用(S508的N),则提供处理器侧读数据(未保存)320作为处理器核心部分305的读数据。然后,存取安排部分315切换外部输入/输出控制部分310中的存储器存取选择器部分335到处理器核心部分305侧(S510),并且处理器核心部分305执行对存储器305的存取(S511)。
如果在不允许存取存储器304的状态下(S500)仅允许处理器核心部分305存取(S501的C),则类似地,存取安排部分315切换外部输入/输出控制部分310中的存储器存取选择器部分335到处理器核心部分305侧(S510),并且处理器核心部分305执行对存储器304的存取(S511)。如果处理器核心部分305对存储器304的存取结束(S511的B),则结束对存储器304的存取(S504)。
另一方面,如果在处理器核心部分305对存储器304的存取结束之前外部输入/输出控制部分310要进行存取(S511的A),或者在不允许存取存储器304的状态下(S500)外部输入/输出控制部分310和处理器核心部分305同时存取存储器304(S501的B)时,则存取安排部分315检测存取争用并输出等待请求信号316给处理器核心部分305,并且处理器核心部分305进入到等待状态(S512)。然后,存取安排部分315切换外部输入/输出控制部分310中的存储器存取选择器部分335到外部输入/输出控制部分310侧(S513),并且外部输入/输出控制部分310执行对存储器304的存取(S506)。接下来的操作已在上面描述过。
参照根据本发明所述实施例的信息处理装置,更进一步地,将参照附图6和7对其操作的详细情况进行说明。附图6的计时图说明了当处理器核心部分305单独存取处理器内置存储器304时,外部输入/输出控制部分310对处理器内置存储器304的存取引起争用的情况。附图7的计时图说明了处理器核心部分305连续读取处理器内置存储器304的一段时间内外部输入/输出控制部分310对处理器内置存储器304的存取引起争用的情况。
在附图6中,当处理器侧读使能信号308和外部输入/输出侧读使能信号313在图6的时间A同时产生时,图3中的存取安排部分315检测存取争用并将等待请求信号316提供给图3中的时钟发生部分301。
因此,图3中的时钟发生部分301使待提供给处理器核心部分305的等待控制时钟303等待在图6所示时间B的一个周期。从处理器核心部分305输出的处理器侧地址306、处理器侧CS信号307以及处理器侧读使能(RE)信号308分别通过处理器核心部分305中提供的触发器331-334发送。因此,在时间A的输出状态保持在时间B作为处理器核心部分305的等待时间。
此时,图3中的存取安排部分315控制图3中外部输入/输出控制部分310中的存储器存取选择器部分335。然后,外部输入/输出控制部分310中的存储器存取选择器部分335在图6的时间A的一段时间将存储器控制信号从外部输入/输出控制部分310提供给处理器内置存储器304。也就是,在一个周期内提供的一段时间,在此时间之前处理器核心部分305执行等待操作,并且在图6的时间B的一段时间从处理器核心部分305提供存储器控制信号,即处理器核心部分305执行等待操作的时间。
因此,处理器内置存储器304输出通过外部输入/输出控制部分310在图6的时间B的一段时间,即处理器核心部分305执行等待操作的一段时间存取所获得的读数据作为读数据319,并输出通过处理器核心部分305在图6的时间C的一段时间,即处理器从等待返回的第一个周期内的一段时间存取所获得的读数据作为读数据319。对于图6中时间C的一段时间,图4中的选择器控制信号408为“0”,并且读数据319通过处理器侧读数据(未保存)320被提供给处理器侧读数据323。
在图7的计时图中,当外部数据/输出控制部分310在图7的时间A的一段时间要存取处理器内置存储器304,同时处理器核心部分305连续执行对处理器内置存储器304的读取时,在图7的时间A的一段时间内产生等待请求信号316,并且处理器核心部分305以与图6的情况相同的方式在时间B的一段时间内开始等待操作。
此时,处理器内置存储器304以与图6相同的方式输出通过外部数据输入/输出控制部分310在图7的时间B的一段时间内存取读数据319所获得的读数据,并输出通过处理器核心部分305在图7的时间C的一段时间内存取读数据319所获得的读数据。
然而,此时,在发生处理器核心部分305对处理器内置存储器304的存取以及外部输入/输出控制部分310的存取争用之前的一个周期内从处理器核心部分305发送给处理器内置存储器304的读指令中,关于此指令的读数据在图7的时间A输出,并且处理器核心部分305在下一个时间B开始等待操作。从而,在处理器核心部分305从等待返回的时间C,处理器核心部分305不能获取必要的读数据。
因此,在时间A输出的读数据一直由图4中的触发器401保存到时间B,并且输出给保存数据输出402,此外,通过图4中的与门407检测在处理器核心部分305的连续读取期间设置的等待操作状态,并且选择器控制信号408在时间B被设置为“1”。因此,选择器409提供保存数据输出402给处理器侧读数据323,以便处理器核心部分305可以在时间C获取数据。
另一方面,在时间C取消等待状态。因此,选择器控制信号408返回到“0”,并且选择器409提供读数据319给处理器侧读数据323。
同时在处理器核心部分305连续存取处理器内置存储器部分304期间产生外部输入/输出控制部分310存取的争用情况下,如图7所示,因此可以执行存取安排。
如上所述,根据所述实施例,提供了处理器核心部分305作为用于通过指令执行流水线处理的处理器,处理器内置存储器304作为处理器中提供的存储器,外部输入/输出控制部分310作为以优先级对存储器执行存取的输入/输出控制装置,时钟发生部分301作为用于向处理器核心部分305提供时钟的时钟发生装置,以及存取安排部分315作为用于监控处理器核心部分305以及外部输入/输出控制部分310对处理器内置存储器304的存取并用于执行存取安排的存取安排装置。在外部输入/输出控制部分310引起存取争用一段时间的情况下,在该时间内处理器核心部分305存取处理器内置存储器304,使提供给处理器核心部分305的时钟等待并且执行外部输入/输出控制部分310对处理器内置存储器304的存取。当外部输入/输出控制部分310对处理器内置存储器304的存取结束时,取消处理器核心部分305的时钟等待,并且执行处理器核心部分305的存取。
在处理器核心部分305单独允许存取处理器内置存储器304的情况下,通过简单添加一个用于使提供给处理器核心部分305的时钟等待的电路所获得的小规模的电路,可以实现外部输入/输出控制部分310能够以高速存取处理器内置存储器而无需等待。
在发生处理器核心部分305与外部输入/输出装置的存取争用的情况下,更进一步地,处理器核心部分305简单经历一流水线级等待从而可以实现能够重新开始存取的存取安排。此外,提供了读数据保存部分322作为用于保存存储器输出的数据的保存装置。同样地在外部输入/输出控制部分310存取处理器内置存储器304以致于当处理器核心部分305连续存取处理器内置存储器304时产生存取争用的情况下,保存在读数据保存部分322中的数据被提供给处理器核心部分305,并且重新开始对处理器内置存储器304的存取,在处理器核心部分305的连续存取期间外部输入/输出控制部分310也可以存取。
根据本发明的第一和第五个方面,可以以小规模的电路实现存取安排电路,用于在存取数据存储装置的数据输入/输出装置中发生存取争用的情况下通过简单使两个数据输入/输出装置中的任何一个的时钟等待来执行存取安排。
根据本发明的第二和第六个发面,可以通过在处理器单独允许存取内置存储器的情况下,当在处理器内置存储器与外部之间读或写数据时通过简单添加用于使提供给处理器的时钟等待的电路所得到的小规模电路以高于处理器的优先级实现高速存取而无需等待。此外,可以实现能够在处理器与外部输入/输出装置发生存取争用时通过简单执行一流水线级等待来重新开始存取的存取安排电路。
根据本发明的第三和第七个方面,可以实现在处理器连续存取存储器的情况下不依靠存取状态而执行的外部输入/输出装置。
权利要求
1.一种信息处理装置,包括数据存储装置;第一和第二数据输入/输出装置,用于允许对所述数据存储装置进行存取;时钟发生装置,用于向第二数据输入/输出装置提供时钟;切换装置,用于切换第一数据输入/输出装置和第二数据输入/输出装置对所述数据存储装置的存取;以及存取安排装置,用于当发生第一数据输入/输出装置和第二数据输入/输出装置对所述数据存储装置的存取争用时,使第二数据输入/输出装置的时钟等待,以及较早地执行第一数据输入/输出装置的存取,并且在结束第一数据输入/输出装置的存取之后开始第二数据输入/输出装置的存取。
2.一种信息处理装置,包括内置存储器;处理器,用于处理存储在所述内置存储器中的数据;时钟发生装置,用于向所述处理器提供时钟信号;输入/输出控制装置,用于在从外部控制装置接收到指令时,执行对所述内置存储器的存取;以及存取安排装置,用于当发生所述处理器和输入/输出控制装置对所述内置存储器的存取争用时,产生等待请求信号以使所述时钟信号等待,以及执行具有优先级的输入/输出控制装置的存取。
3.根据权利要求2所述的信息处理装置,进一步包括选择装置,用于切换处理器和输入/输出控制装置对所述内置存储器的存取,其中当在处理器对所述内置存储器进行存取期间产生输入/输出控制装置对内置存储器的存取请求时,所述存取安排装置向选择装置输出控制信号,并且接收该控制信号的选择装置把处理器对内置存储器的存取切换到输入/输出控制装置对内置存储器的存取。
4.根据权利要求2所述的信息处理装置,进一步包括保存装置,用于在处理器的等待操作期间保存在处理器的等待操作之前从内置存储器输出的读数据,其中所述存取安排装置在从内置存储器输出的读数据与由所述保存装置保存的读数据之间切换将提供给处理器的读数据。
5.一种信息处理装置的存储器存取安排方法,所述信息处理装置包括数据存储装置和用于存取所述数据存储装置的第一及第二数据输入/输出装置,所述方法包括以下步骤当发生第一数据输入/输出装置和第二数据输入/输出装置对所述数据存储装置的存取争用时,使用于第二数据输入/输出装置的时钟等待;先执行第一数据输入/输出装置的存取;以及在结束第一数据输入/输出装置的存取之后取消第二数据输入/输出装置的时钟等待,并执行第二数据输入/输出装置的存取。
6.一种信息处理装置的存储器存取安排方法,所述信息处理装置包括用于通过指令执行流水线处理的处理器、在所述处理器中提供的存储器、以及用于以比处理器高的优先级对存储器执行存取的输入/输出控制装置,所述方法包括以下步骤当发生处理器和输入/输出控制装置对所述存储器的存取争用时产生等待请求信号,用于使提供给所述处理器的时钟等待;把处理器对存储器的存取切换到输入/输出控制装置对存储器的存取;以及在结束输入/输出控制装置对存储器的存取之后取消处理器的时钟等待,并执行处理器对存储器的存取。
7.一种信息处理装置的存储器存取安排方法,所述信息处理装置具有用于通过指令执行流水线处理的处理器,在所述处理器中提供的存储器,用于以比处理器高的优先级对所述存储器执行存取的输入/输出控制装置,以及保存装置,用于在处理器的等待操作期间保存在处理器的等待操作之前从内置存储器输出的读数据,所述方法包括以下步骤当在处理器连续读取存储器的一段时间内发生输入/输出控制装置的读取争用时,保存在处理器的等待操作之前从存储器输出的读数据;使提供给所述处理器的时钟等待;执行输入/输出控制装置对所述存储器的存取;以及在结束输入/输出控制装置对存储器的存取之后取消处理器的时钟等待,将保存在所述保存装置中的数据提供给所述处理器,并重新开始处理器对所述存储器的存取。
全文摘要
本发明的一个目的在于实现小规模的数据输入/输出机制,对于在处理器中提供的存储器任何时候都可以以优先级对存储器高速存取。在信息处理装置中,包括用于通过指令执行流水线处理的处理器,在所述处理器中提供的存储器,以及用于允许以高优先级对存储器进行存取的输入/输出控制装置,一种存储器存取安排方法,包括当发生处理器和输入/输出控制装置对存储器的存取争用时,使提供给处理器的时钟等待的步骤(S512),执行输入/输出控制装置对存储器的存取步骤(S506),以及在结束输入/输出控制装置对存储器的存取之后取消处理器的时钟等待,并执行处理器对存储器的存取步骤(S507,S511)。
文档编号G06F13/36GK1530839SQ200410035239
公开日2004年9月22日 申请日期2004年1月27日 优先权日2003年1月27日
发明者森敦弘 申请人:松下电器产业株式会社