处理器、数据处理方法及包含该处理器的存储系统的制作方法

文档序号:6370515阅读:172来源:国知局
专利名称:处理器、数据处理方法及包含该处理器的存储系统的制作方法
技术领域
本发明涉及ー种存储系统,更具体地,涉及存储系统中一种能够管理可变存取延迟的处理器、该处理器的ー种数据处理方法及ー种包含该处理器的存储系统。
背景技术
在包含多个与动态随机存取存储器(DRAM)连接操作的处理器的存储系统中,当所述处理器之一响应存取命令正在存取DRAM时,其他处理器不能存取该DRAM。在这样的存储系统中,当RAS/CAS延迟设置得很长,即使所述处理器之一的存取延迟是可变的,系统的性能也可能变差。一种分组方法可以用于连接所述多个处理器并避免系统性能的恶化。除了处理器中已有的DRAM控制器之外,这样的分组方法还利用了逻辑。

发明内容
本发明的示范性实施例包括能够管理可变存取延迟的处理器、该处理器的ー种数据处理方法及ー种包含该处理器的存储系统。根据本发明的示范性实施例,处理器包含被配置为从第二存储控制器接收存取命令的模拟器,及配置为控制存储器操作的第一存储控制器。模拟器被配置为确定第一存储控制器是否能够相应于存取命令执行操作,并且在确定第一存储控制器不能够相应于存取命令执行操作时向第二存储控制器发送等待信号。模拟器可以包含可操作地耦接到第二存储控制器并配置为接收存取命令的存储器接ロ,及配置为通过所述存储接ロ向第二存储控制器发送等待信号的模拟器控制器。模拟器可以包含配置为存储从存储器接收的读数据以及要写到存储器的写数据的高速缓冲存储器;以及配置为控制高速缓冲存储器的操作的高速缓冲控制器。模拟器可以包含配置为存储从存储器接收的读数据的预取缓冲器,或包括配置为存储要写到存储器的写数据的写缓冲器。存取命令可以包含优先权信息,模拟器可以接收该优先权信息、分析该优先权信息,并根据分析结果控制第一存储控制器相应于存取命令执行操作。优先权信息可以包含芯片选择信号或地址信号。根据本发明的示范性实施例,存储系统包括存储器和第二处理器,第二处理器包含通过第一处理器存取存储器的第二存储控制器。第一处理器包含配置为从第二存储控制器接收存取命令的模拟器,及配置为控制存储器操作的第一存储控制器。模拟器被配置为确定第一存储控制器是否能够相应于存取命令执行操作,并且在确定第一存储控制器不能够相应于存取命令执行操作时向第二存储控制器发送等待信号。模拟器可以包含可操作地耦接到第二存储控制器并配置为接收存取命令的存储器接ロ,及配置为通过所述存储接ロ向第二存储控制器发送等待信号的模拟器控制器。模拟器可以控制配置为存储从存储器接收的读数据和要写到存储器的写数据的高速缓冲存储器,及配置为控制该高速缓冲存储器的操作的高速缓冲控制器。
模拟器可以包含配置为存储从存储器接收的读数据的预取缓冲器。模拟器可以包含配置为存储要写到存储器的写数据的写缓冲器。第二处理器可以包含多个知识产权(IP)块和内部连接器,IP块可以通过内部连接器可操作地耦接到第二存储控制器。根据本发明的示范性实施例,ー种数据处理方法包括从布置在第二处理器中的第二存储控制器接收存取命令,确定第一处理器中的第一存储控制器是否能够相应于该存取命令执行操作,确定第一存储控制器不能够执行操作时产生等待信号,向第二存储控制器发送等待信号,并且在确定第一存储控制器能够执行操作时执行该操作。


通过參照附图详细描述示范性实施例,本发明的上述和其他特征将更加明显,其中图I是根据本发明的示范性实施例的存储系统的框图;图2A到2D是根据本发明的示范性实施例的图I所示模拟器的框图;图3是显示了根据本发明的示范性实施例的、在图I所示的存储系统中读数据的方法的流程图;图4是显示了根据本发明的示范性实施例、在图I所示的存储系统中写数据的方法的流程图;图5是根据本发明的示范性实施例、相应于图I所示的存储系统的读操作的时序图;图6是根据本发明的示范性实施例、相应于图I所示的存储系统的写操作的时序图;图7是显示了根据本发明的示范性实施例、在图I所示的存储系统中读数据的方法的流程图;以及图8是显示了根据本发明的示范性实施例、在图I所示的存储系统中写数据的方法的流程图。
具体实施例方式下面将參照附图更全面地描述本发明的示范性实施例。贯穿附图,相似的參考数字可以指代相似的组件。应当理解,当一个组件被指“可操作地耦接”到另ー个组件时,它可以直接连接或耦接到各一个组件或者可以出现中间组件。应当理解,虽然这里可以使用术语第一、第二等来描述各种组件,但是这些组件不应该被这些术语所限制。这些术语只是用来将ー个组件区分于另ー个组件。例如,不脱离本公开的教导时,第一处理器可以被称作第二处理器,而且类似地,第二处理器可以被称作
第一处理器。这里使用的术语是用于描述特定实施例的目的,而不是意欲限制本发明。这里使用的単数形式“一”、“ー个”和“此”意在同样包括复数形式,除非上下文清楚地指出除外。还应当理解,当本说明书使用术语“包括了”和/或“包括”,或者“包含了”和/或“包含”吋,它们具体指所述特征、操作、组件和/或部件的存在,但是不排除由此而来的一个或更多其他特征、操作、组件、部件和/或它们的组的存在或补充。图I是根据本发明的示范性实施例的存储系统I的框图。存储系统I包括第一处理器100、第二处理器200及可操作地耦接到第一处理器100的存储器300。第一处理器100可以包括第一存储控制器110和模拟器120。第一处理器100也可以包括第一内部连接器130和多个知识产权(IP)块IP1、IP2……IPn。也可以利用IP模块或IP内核,并且所述IP块、IP模块或IP内核可以执行预定的功能。第一存储控制器110、模拟器120和从IPl到IPn的IP块可以通过第一内部连接器130彼此可操作地耦接。第一存储控制器110控制第一处理器100的操作。第一存储控制器110可操作地耦接到存储器300,将数据DATA写到存储器300和从存储器300读数据DATA。模拟器120可操作地耦接到第二处理器200包含的第二存储控制器210,发送数据DATA到第二处理器200和从第二处理器200接收数据DATA。从第二存储控制器210 —接 到存取命令ACC,模拟器120就检查第一存储控制器110,以确定第一存储控制器110是否能够相应于存取命令ACC (如写操作或读操作)执行操作,并且当第一存储控制器110不能够执行存取命令ACC时产生并发送等待信号WAIT到第二存储控制器210。模拟器120可以接收包含优先权信息的存取命令ACC,分析该优先权信息,并基于分析结果请求第一存储控制器110相应于该存取命令ACC执行操作。所述优先权信息可以包括例如芯片选择信号或地址信号。第二处理器200可以包含第二存储控制器210、第二内部连接器220及多个IP块IPU IP2……IPm。也可以利用IP模块或IP内核,并且所述IP块、IP模块或IP内核可以执行预定的功能。从IPl到IPm的IP块可以通过第二内部连接器220可操作地耦接到第ニ存储控制器210上。第二存储控制器210控制第二处理器200的操作。第二存储控制器210可操作地耦接到第一处理器100的模拟器120上,并发送存取命令ACC到模拟器120。另外,第二存储控制器210从模拟器120接收等待信号WAIT。存储器300存储数据DATA。存储器300可操作地耦接到第一处理器100的第一存储控制器Iio上,并且在第一存储控制器110的控制下从存储器300读数据DATA或写数据DATA到存储器300。图2A到2D是根据本发明的示范性实施例的图I所示模拟器120的框图。模拟器120可以包括,例如,如图2A所示的存储器接ロ 123和模拟器控制器121。存储器接ロ 123可操作地耦接到第二存储控制器210并接收存取命令ACC。模拟器控制器121控制模拟器120的操作。模拟器控制器121通过存储器接ロ123从第二存储控制器210接收存取命令ACC。当接收到读命令时,模拟器控制器121针对相应于该读命令的读数据向第一存储控制器110作出请求。该读命令包含存储器300中存储位置的引用。当接收到写命令吋,模拟器控制器121发送该写命令到第一存储控制器110,并针对相应于所述到存储器300的写命令的写数据向第一存储控制器110作出请求。当从第二存储控制器210接收到存取命令ACC时,模拟器控制器121确定第一存储控制器Iio是否能够相应于该存取命令ACC执行操作。当确定第一存储控制器110不能相应于该存取命令ACC执行操作吋,模拟器控制器121产生等待信号WAIT并通过存储器接ロ 123发送该等待信号WAIT到第二存储控制器210。模拟器控制器121可以接收来自第二存储控制器210的开始写数据到存储器300的写命令,或来自第二存储控制器210的开始从存储器300读数据的读命令。第一存储控制器110当前正在执行写操作(例如第一写操作)或读操作(例如第一读操作)吋,该第一存储控制器110不能够执行相应于写命令(例如第二写命令)的另ー写操作(例如第二写操作),或相应于读命令(例如第二读命令)的另ー读操作(例如第二读操作)。当第一存储控制器110不能够执行第二写或读操作时,模拟器控制器121产生并发送等待信号WAIT到第二存储控制器210。该等待信号WAIT通知第二存储控制器210,相应于第二写命令或第二读命令的操作尚未执行。在示范性实施例中,模拟器120可以包括存储可以写到存储器300的写数据(例如第二写数据)的写缓冲器129,如图2B所示。在示范性实施例中,模拟器120可以包括存储从存储器300接收的读数据(例如第二读数据)的预取缓冲器127,如图2C所示。在示范性实施例中,模拟器120可以包括高速缓冲控制器125和高速缓冲存储器 126,如图2D所示。高速缓冲存储器126受高速缓冲控制器125控制,可以存储从存储器300接收的第二读数据或可以写到存储器300的第二写数据。图3是显示了根据本发明的示范性实施例的在图I所示的存储系统I中读数据的方法的流程图。在參照图I到图3描述如下的例子中,在操作S302,第一处理器100的模拟器120从第二处理器200的第二存储控制器210接收第二读命令。第二存储控制器210和模拟器120通过存储器接ロ 123彼此可操作地耦接,并且彼此通信数据DATA。一接到第二读命令,在操作S304中模拟器控制器121就检查第一存储控制器110以确定第一存储控制器110是否能够执行相应于第二读命令的第二读操作。模拟器控制器121可以通过向第一存储控制器110发送第二读命令生成到第一存储控制器Iio的请求以从存储器300读取数据。当第一存储控制器110不能执行相应于从模拟器120接收的第二读命令的第二读操作时(例如,当第一存储控制器110正在执行对存储器300的诸如第一读操作或第一写操作的存取操作吋),第一存储控制器110可以通知模拟器控制器121 :它现在不能执行第二读操作。在操作S304中,当第一存储控制器110能够相应于从模拟器120接收的第二读命令读取第二读数据时,在操作S308中模拟器控制器121从第一存储控制器110接收第二读数据。模拟器控制器121在操作S310中接着通过存储器接ロ 123向第二存储控制器210
发送第二读数据。在操作S304中,当第一存储控制器110不能够读取第二读数据时,在操作S306中模拟器120产生并发送等待信号WAIT到第二存储控制器210。模拟器120可以连续产生并发送该等待信号WAIT到第二存储控制器210,直到第一存储控制器110通知模拟器控制器121 :它能够从存储器300读取第二读数据。当第一存储控制器110变成能够从存储器300读取第二读数据时,第一存储控制器110读取第二读数据并将其发送到模拟器120。在操作S308中模拟器120从第一存储控制器110接收第二读数据,并在操作S310中发送该第二读数据到第二存储控制器210。图4是显示了根据本发明的示范性实施例的在图I所示的存储系统I中写数据的方法的流程图。在參照图I到图2D和图4描述的例子中,在操作S402中,第一处理器100的模拟器120从第二处理器200的第二存储控制器210接收第二写命令。一旦接到第二写命令,在操作S404中模拟器控制器121就检查第一存储控制器110以确定第一存储控制器110是否能够相应于第二写命令写第二写数据。模拟器控制器121可以通过向第一存储控制器110发送第二写命令生成到第一存储控制器100的请求以写第二写数据到存储器300。当第一存储控制器110不能执行相应于第二写命令的第二写操作时(例如,当第一存储控制器110正在执行第一读操作或第一写操作吋),第一存储控制器110可以通知模拟器控制器121 :它现在不能执行第二写操作。在操作S404中,当第一存储控制器110能够写第二写数据时,在操作S408中第一 存储控制器Iio执行相应于第二写命令的第二写操作。当操作S404中第一存储控制器110不能够写第二写数据时,在操作S406模拟器120产生并发送等待信号WAIT到第二存储控制器210。模拟器120可以连续产生并发送该等待信号WAIT到第二存储控制器210,直到第一存储控制器110通知模拟器控制器121 :它能够写第二写数据到存储器300。当第一存储控制器110变成能够写第二写数据到存储器300时,在操作S408第一存储控制器110执行相应于第二写命令的第二写操作。在示范性实施例中,图3和图4所示的方法可以包括使用模拟器120接收包含优先权信息的存取命令ACC,分析该优先权信息,基于分析结果执行存取命令ACC。该优先权信息可以包含,例如,芯片选择信号或地址信号。图5是根据本发明的示范性实施例的相应于图I所示存储系统I的读操作的时序图500。该时序图500包含时钟信号CK、存取命令ACC、地址信号ADD、等待信号WAIT、数据选通信号DQS和数据DQ。在參照图5描述如下的例子中,CAS延迟是2,突发长度是4,但是该CAS延迟和突发长度不限于此。參照图5,模拟器120基于在时刻TO或T2从第二存储控制器210接收的存取命令ACC (例如,读命令READ)和地址信号ADD (例如,BA和Col η或BA和Col b)从第一存储控制器110请求读数据。当第一存储控制器110不能够响应时钟信号CK在时刻Tl或T3立即执行该读命令READ时,模拟器120产生并发送等待信号WAITl或WAIT2到第二存储控制器210。当第一存储控制器110在时刻Tw或Tw’变成能够执行读命令READ吋,模拟器控制器121停止产生等待信号WAITl或WAIT2,并且第一存储控制器110产生数据选通信号DQS。接着响应该数据选通信号DQS的上升和下降沿,输出数据DO η或DOb。在CAS延迟变成2之前可以开始产生等待信号WAITl或WAIT2,继续直到准备好执行读命令READ。例如,等待信号WAITl或WAIT2的产生可以从时刻Tl持续到时刻Tw,或者从时刻T3持续到时刻 Tw,。图6是根据示范性实施例的相应于图I所示的存储系统的写操作的时序图600。该时序图600包含时钟信号CK、存取命令ACC、地址信号ADD、等待信号WAIT、数据选通信号DQS、数据DQ和数据屏蔽信号DM。在參照图6描述的例子中,歪斜的tDQSS (例如DQS域和时钟域之间的相对外部接ロ时间)大约为O. 75tCK,突发长度为4,但是该歪斜的tDQSS和突发长度不限于此。
參照图6,模拟器120在时刻TO或T2从第二存储控制器210接收写命令WRITE和地址信号ADD,在歪斜的tDQSS过去之后产生数据选通信号DQS。当第一存储控制器110不能立即执行写命令WRITE时,模拟器120产生并发送等待信号WAITl或WAIT2到第二存储控制器210。当第一存储控制器110在时刻Tw或IV变成可以执行写命令WRITE时,模拟器控制器121停止产生等待信号WAITl或WAIT2,并且第一存储控制器110产生数据选通信号DQS。接着响应该数据选通信号DQS的上升和下降沿,写数据Di b或Di η被写入到存储器300。在CAS延迟变成2之前可以开始产生等待信号WAITl或WAIT2,继续直到准备好执行写命令WRITE。例如,等待信号WAITl或WAIT2的产生可以从时刻Tl持续到时刻Tw,或者从时刻T3持续到时刻Tw’。
图7是显示了根据本发明的示范性实施例的在图I所示的存储系统I中读数据的 方法的流程图。在參照图I到2D和图7描述如下的例子中,操作S702中第一处理器100的模拟器120从第二处理器200的第二存储控制器210接收第二读命令。第二存储控制器210和模拟器120通过存储器接ロ 123彼此可操作地耦接并彼此通信数据DATA。一旦接到第二读命令,操作S704中模拟器控制器121就确定高速缓冲存储器126或预取缓冲器127是否能够存储相应于第二读命令的第二读数据。模拟器控制器121可以将第二读数据存储到高速缓冲存储器126或预取缓冲器127中。例如,当第二存储控制器210请求从连续存储器地址位置读取的第二读数据时,模拟器控制器121可以从第一存储控制器110接收第二读数据并在第二存储控制器210请求该第二读数据之前将其存储到高速缓冲存储器126或预取缓冲器127中。例如,考虑这个例子第二存储控制器210针对相应于存储器地址位置0001、
0010、0011、0100、0101、0110和0111的第二读数据向第一处理器作出请求,按照0001、
0010、0011、0100、0101、0110和0111的顺序。当第二存储控制器210已经请求了相应于存储器地址位置0001到0101的第二读数据吋,模拟器120可以从第一存储控制器110接收相应于随后的存储器地址位置(例如0110到0111)的第二读数据,并将所述第二读数据存储在高速缓冲存储器126或预取缓冲器127中。当操作S704中确定高速缓冲存储器126或预取缓冲器127能够存储第二读数据时,操作S708中模拟器120将该第二读数据存储到高速缓冲存储器126或预取缓冲器127中。例如,模拟器120可以预先将待读取的第二读数据存储到模拟器120中包含的高速缓冲存储器126或预取缓冲器127中。当待读的第二读数据如上所述存储在高速缓冲存储器126或预取缓冲器127中,模拟器120可以缩短第二存储控制器210接收第二读数据的等待时间。当操作S704中确定高速缓冲存储器126或预取缓冲器127不能够存储第二读数据时,在操作S706模拟器120产生并发送等待信号WAIT到第二存储控制器210。模拟器120可以连续产生并发送该等待信号WAIT到第二存储控制器210,直到高速缓冲存储器126或预取缓冲器127能够存储所述第二读数据。当高速缓冲存储器126或预取缓冲器127变成能够存储第二读数据时,模拟器120停止产生等待信号WAIT并且在操作S708中第二读数据存储到高速缓冲存储器126或预取缓冲器127中。图8是显示了根据本发明的示范性实施例的在图I所示的存储系统I中写数据的方法的流程图。在參照图I到图2D和图8描述如下的例子中,在操作S802,第一处理器100的模拟器120从第二处理器200的第二存储控制器210接收第二写命令。一旦接到第二写命令,操作S804中模拟器控制器121确定高速缓冲存储器126或预取缓冲器127是否能够存储相应于第二写命令的第二写数据。当操作S804中确定高速缓冲存储器126或写缓冲器129能够存储第二写数据时,在操作S808模拟器控制器121将第二写数据存储到高速缓冲存储器126或写缓冲器129中。 模拟器120可以预先在高速缓冲存储器126或写缓冲器129中保证ー块空间用于存储相应于第二写命令的第二写数据。当如上所述第二写数据存储进高速缓冲存储器126或写缓冲器129时,模拟器120可以缩短第一存储控制器110写第二写数据的等待时间。当操作S804中确定高速缓冲存储器126或写缓冲器129不能够存储第二写数据时,在操作S806模拟器120产生并发送等待信号WAIT到第二存储控制器210。当高速缓冲存储器126或写缓冲器129变成能够存储第二写数据时,模拟器120停止产生等待信号WAIT并且在操作S808中第二写数据被存储到高速缓冲存储器126或写缓冲器129。如上所述,根据本发明的示范性实施例,当多个处理器之一正在执行响应存取命令的操作时,向其它处理器发送等待信号并可以管理该处理器的可变存取延迟。尽管已经參照本发明的示范性实施例具体显示并描述本发明,但是本领域普通技术人员应当理解,在不脱离由所附权利要求书所限定的本发明的精神和范围的情况下,可以在其中进行形式和细节上的各种修改。对相关申请的交叉引用本申请要求于2011年5月30日向韩国特许厅提交的韩国专利申请No. 10-2011-0051253的优先权,通过引用将其公开的全部内容合并于此。
权利要求
1.一种处理器,包括 模拟器,配置为从第二存储控制器接收存取命令 '及 第一存储控制器,配置为控制存储器的操作, 其中模拟器被配置为确定第一存储控制器是否能够执行相应于所述存取命令的操作,并且一旦确定第一存储控制器不能执行该操作,就向第二存储控制器发送等待信号。
2.如权利要求I所述的处理器,其中模拟器包括 存储器接ロ,可操作地耦接到第二存储控制器并配置为接收存取命令;及 模拟器控制器,配置为通过存储器接ロ发送等待信号到第二存储控制器。
3.如权利要求I所述的处理器,其中模拟器包括 高速缓冲存储器,配置为存储从存储器接收的读数据和要写到存储器的写数据;及 高速缓冲控制器,配置为控制该高速缓冲存储器的操作。
4.如权利要求I所述的处理器,其中模拟器包括预取缓冲区,配置为存储从存储器接收的读数据。
5.如权利要求I所述的处理器,其中模拟器包括写缓冲区,配置为存储要写到存储器的写数据。
6.如权利要求I所述的处理器,其中存取命令包含优先权信息,并且模拟器配置为分析该优先权信息并基于分析结果执行相应于存取命令的操作。
7.如权利要求6所述的处理器,其中优先权信息包含芯片选择信号。
8.如权利要求6所述的处理器,其中优先权信息包含地址信号。
9.如权利要求I所述的处理器,还包括 多个知识产权(IP)块 '及 内部连接器,可操作地耦接到模拟器、第一存储控制器和所述多个IP块。
10.ー种存储系统,包括 存储器;及 第二处理器,包括第二存储控制器,配置为通过第一处理器存取该存储器, 其中第一处理器包括 模拟器,配置为从第二存储控制器接收存取命令,及 第一存储控制器,配置为控制所述存储器的操作, 其中模拟器配置为确定第一存储控制器是否能够执行相应于存取命令的操作,并且ー旦确定第一存储控制器不能够执行该操作,就发送等待信号到第二存储控制器。
11.如权利要求10所述的存储系统,其中模拟器包括 存储器接ロ,可操作地耦接到第二存储控制器并配置为接收存取命令;及 模拟器控制器,配置为通过该存储器接ロ发送等待信号到第二存储控制器。
12.如权利要求10所述的存储系统,其中模拟器包括 高速缓冲存储器,配置为存储从存储器接收的读数据或要写到存储器的写数据;及 高速缓冲控制器,配置为控制该高速缓冲存储器的操作。
13.如权利要求10所述的存储系统,其中模拟器包括预取缓冲器,配置为存储从存储器接收的读数据。
14.如权利要求10所述的存储系统,其中模拟器包括写缓冲器,配置为存储要写到存储器的写数据。
15.如权利要求10所述的存储系统,其中第二处理器包括多个知识产权(IP)块和内部连接器,该IP块通过该内部连接器可操作地耦接到第二存储控制器。
16.ー种数据处理方法,包括 从布置在第二处理器中的第二存储控制器接收存取命令; 确定第一处理器中的第一存储控制器是否能够执行相应于该存取命令的操作; 一旦确定第一存储控制器不能够执行该操作就产生等待信号; 发送该等待信号到第二存储控制器;以及 一旦确定第一存储控制器能够执行操作就执行该操作。
17.如权利要求16所述的数据处理方法,其中所述操作是读操作或写操作。
18.如权利要求16所述的数据处理方法,其中所述操作是对可操作地耦接到第一处理器的存储器执行。
19.如权利要求16所述的数据处理方法,还包括 一旦确定第一存储控制器能够执行该操作,就产生数据选通信号;以及 当该操作是读操作吋,响应于数据选通信号从存储器读数据, 当该操作是写操作吋,响应于数据选通信号向存储器写数据。
20.如权利要求16所述的数据处理方法,还包括 将数据存储在布置在第一处理器里的高速缓冲存储器或预取缓冲器中,其中所述数据与存取命令相应,并且在第二存储控制器请求该数据之前存储所述数据。
全文摘要
一种处理器,包括模拟器,配置为从第二存储控制器接收存取命令,以及第一存储控制器,配置为控制存储器的操作。该模拟器被配置用于确定第一存储控制器是否能够执行相应于存取命令的操作,并且一旦确定第一存储控制器不能够执行该操作,就发送等待信号到第二存储控制器。
文档编号G06F13/16GK102831085SQ20121017396
公开日2012年12月19日 申请日期2012年5月30日 优先权日2011年5月30日
发明者郑世雄, 孔在燮 申请人:三星电子株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1