CN1279450C - 内存读取/写入仲裁方法 - Google Patents
内存读取/写入仲裁方法 Download PDFInfo
- Publication number
- CN1279450C CN1279450C CN 02150691 CN02150691A CN1279450C CN 1279450 C CN1279450 C CN 1279450C CN 02150691 CN02150691 CN 02150691 CN 02150691 A CN02150691 A CN 02150691A CN 1279450 C CN1279450 C CN 1279450C
- Authority
- CN
- China
- Prior art keywords
- write
- req
- reading
- threshold
- cmdwrt
- 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
Links
Images
Landscapes
- Static Random-Access Memory (AREA)
Abstract
本发明的内存读取/写入仲裁方法至少包括:提供仲裁器;提供具有数个读取命令要求的读取要求先进先出(FIFO)队列;提供具有数个写入命令要求的写入要求FIFO队列;执行判断步骤以产生优先权,其中判断步骤包括有:执行第一副判断步骤以决定这些写入命令要求中的一个具有较这些读取命令要求中的一个高的优先权且被优先递送,或者是符合适当的第一步骤条件下写入命令要求被递送至第二副判断步骤;执行第二副判断步骤以决定读取命令要求具有较来自于第一副判断步骤的写入命令要求高的优先权,或是来自于第一副判断步骤的写入命令要求具有较读取命令要求高的优先权。
Description
技术领域
本发明涉及一种内存读/写仲裁方法,特别涉及应用在内存控制器中的内存读/写仲裁方法,借以增加列命中(Row Hit)率以及降低内存存取时的延迟。
背景技术
请参阅图1,其为个人计算机系统的现有架构的示意图。如图1所示,个人计算机系统的现有架构中具有处理单元10、分别透过内存总线18和AGP总线20连接内存模块14和显示设备(如AGP设备)16的主桥模块12、以及透过PCI总线24连接主桥模块12的南桥模块22。处理单元10透过主总线26、主桥模块12和内存总线18存取内存模块14,而PCI设备28则透过PCI总线24、主桥模块12和内存总线18存取内存模块14。
在主桥模块12中内嵌有内存控制器30,此内存控制器30作为处理单元10和内存总线18之间的接口,而且内存控制器30包括有IOQ、至少一个读取要求先进先出(Read Request FIFO;RFIFO)队列、至少一个写入要求先进先出(Write Request FIFO;WFIFO)队列以及至少一个内存仲裁器(MemoryArbitrator)。
请参阅图2,其为根据图1,内存控制器的现有仲裁架构的示意图。如图2所示,RFIFO队列50包括有N+1个读取输入项(Read Entry)54(例如:N+1个读取命令要求),WFIFO队列52包括有M+1个写入输入项(Write Entry)56(例如:M+1个写入命令要求),其中N和M为实数且等于或大于零。数个比较器58用以对RFIFO队列50中每个读取输入项54的相关地址和WFIFO队列52中每个写入输入项56的相关地址进行比较。
例如,当RFIFO队列50中前方的读取输入项62安排往前递送至内存仲裁器60时,此位于前方的读取输入项62的相关地址将与每个写入输入项56的相关地址进行比较。若WFIFO队列52中第i个写入输入项56的相关地址与其吻合时,此位于前方的读取输入项62将被暂缓处理,直至第i个写入输入项56前的写入输入项56及第i个写入输入项56皆已送入内存仲裁器60后,此位于前方的读取输入项62才被送入内存仲裁器60。
若此位于前方的读取输入项62的相关地址与每个写入输入项56的相关地址比对后的结果并无吻合时,此位于前方的读取输入项54将直接送入内存仲裁器60。在计算机架构中,此种减少读取延迟的运作一般称为读取围绕写入运作(Read Around Write Operation)。换言的,当比对结果吻合时,RFIFO队列50中的读取输入项62不会被递送至内存仲裁器60。
应用读取围绕写入运作时,当RFIFO队列50中没有读取输入项或RFIFO队列50的组合资料队列满载时,WFIFO队列52则可获得较RFIFO队列50高的优先权,其中组合资料队列用以储存读取要求的暂时回复。
请再参阅图1,由于处理单元10急切从内存模块14中要求资料来处理,设计人员常关心如何加快读取循环、如何加快取得内存模块14中的资料,以及如何减少读取延迟等,所以读取围绕写入运作常被应用,借以使得RFIFO队列50常获得较WFIFO队列52高的优先权。然而,当处理单元10发出写入循环,且写入循环已于主总线26完成时,设计人员并未太在意此写入循环是何时且有多快传送至内存总线18,并于内存总线18完成。所以内存总线18的利用相对下降,又由于应用读取围绕写入运作时,列命中率在连续读取输入项或连续写入输入项出现时非常高,但若连续同类型的输入项被打断,列命中率会受到污染而下降。
发明内容
针对上述的发明背景中,设计人员主要集中于如何加快读取循环、如何加快取得内存模块中的资料,以及如何减少读取延迟等,而应用读取围绕写入运作时,传统的内存读取/写入仲裁方法常让RFIFO队列获得较WFIFO队列高的优先权。所以,列命中便因连续同类型的输入项被打断而受到污染和下降,而且,内存总线的利用亦下降,从读取转为写入或从写入转为读取时的存取延迟的次数亦明显增加。
本发明的主要目的在于提供了一种内存读取/写入仲裁方法。在本发明中,内存读取/写入仲裁方法将对RFIFO队列和WFIFO队列进行判断,而且利用二判断步骤进行。其中,第一副判断步骤(First Sub-judgment Step)根据适当的预设条件来判断WFIFO队列中的写入命令要求能否往前送至第二副判断步骤(Second Sub-judgment Step)。第一副判断步骤的预设条件例如是写入命令要求的数量是否等于或大于其高门槛,又或是读取命令要求的等待数量是否低于其低门槛等。
第二副判断步骤根据适当的预设条件,评估来自第一副判断步骤的写入命令要求是否具有比RFIFO队列的读取命令要求高的优先权,或RFIFO队列的读取命令要求是否具有比来自第一副判断步骤的写入命令要求高的优先权,其中,第二副判断步骤的预设条件例如是连续写入命令要求的数量低于其低门槛或介于其高门槛和低门槛之间,同时,目前写入命令要求所存取的页地址(PageAddress)等于之前被写入命令要求或读取命令要求存取而开启的页地址。
为实现上述的目的,本发明提供了内存读取/写入仲裁方法,借以增加列命中率和内存总线的频宽应用。内存读取/写入仲裁方法至少包括:提供仲裁器;提供具有数个读取命令要求的读取要求FIFO队列;提供具有数个写入命令要求的写入要求FIFO队列;执行判断步骤以决定递送数个读取命令要求中之一个,此读取命令要求具有较数个写入命令要求中之一个高的优先权,又或是递送数个写入命令要求中之一个,此写入命令要求具有较数个读取命令要求中之一个高的优先权,其中判断步骤至少包括:执行第一副判断步骤以获得Cmd_Wrt_Req_Mask信号,并且当Cmd_Wrt_Req_Mask信号使能(Enable)时,写入命令要求具有较读取命令要求高的优先权且被优先递送,否则,当Cmd_Wrt_Req_Mask信号符合数个第一步骤条件中的至少一个而失能(Disable)时,写入命令要求将被递送至第二副判断步骤,其中第一步骤条件例如是写入命令要求的数量等于或大于其高门槛、读取命令要求的等待数量少于其低门槛等;对来自于第一副判断步骤的写入命令要求和读取命令要求进行第二副判断步骤,借以获得Mem_Gnt_Wrt_Window信号,而当Mem_Gnt_Wrt_Window信号未使能时,读取命令要求具有较写入命令要求高的优先权且被优先递送,否则,当Mem_Gnt_Wrt_Window信号符合数个第二步骤条件而使能时,写入命令要求具有较读取命令要求高的优先权且被优先递送,其中数个第二步骤条件例如是连续写入要求的数量低于其低门槛或介于其高门槛和低门槛之间,同时,目前写入命令要求所存取的页地址等于之前被写入命令要求或读取命令要求存取而开启的页地址。
附图简要说明
下文,将结合附图,通过对本发明的较佳实施例的详细描述,使本发明的技术方案及其有益效果显而易见。
附图中,
图1为个人计算机系统的现有架构的示意图;
图2为根据图1,内存控制器的现有仲裁架构的示意图;
图3为本发明中内存控制器的仲裁架构的一实施例的示意图;
图4为本发明的内存读取/写入仲裁方法的运作流程图;以及
图5为根据读取要求和写入要求间的优先权判断的示意图。
具体实施方式
应用读取围绕写入运作时,由于在读取时可保持一定的列命中率,而在写入循环时列未命中率(Row Miss Rate)则提升,所以当WFIFO队列取得较RFIFO队列高的优先权时需要预留一定的占有权(Tenure)给WFIFO队列。因此,为了提升列命中率,本发明提供了一种内存读取/写入仲裁方法以减少列命中的污染。
请参阅图3,其为本发明中内存控制器的仲裁架构的一实施例的示意图。如图3所示,RFIFO队列102和WFIFO队列104分别依序进入内存仲裁器100,其中RFIFO队列102包括有数个读取命令要求106,而WFIFO队列104亦包括有数个写入命令要求108。在本发明提供的内存读取/写入仲裁方法中,需预先宣告及设定数种参数,以下为这些参数的说明。
CmdWrt_Req_Cnt:用以记录写入命令要求108的数量的参数。
Wrt_Req_Cnt_High_Threshold:写入命令要求108的高门槛。
CmdRd_Req_Pend_Cnt:用以记录读取命令要求106的等待数量的参数。
CmdRd_Req_Low_Threshold:读取命令要求106的等待(Pending)数量的低门槛。
CmdRd_Req_Idle_Timer:用以计算和记录当RFIFO队列102中没有读取命令要求106时RFIFO队列102的闲置(Idle)时间的参数。
CmdRd_Req_Idle_Time_Threshold:RFIFO队列102的闲置时间的门槛。
CmdRd_Line_Hit:用以监测数种不同的读取命中信号(例如:一般读取命中信号、图形读取命中信号和表格读取命中信号等)的参数,
Continuous_CmdWrt_Number:用以记录连续的写入命令要求108的数量的参数。
Continuous_CmdWrt_High_Threshold:连续的写入命令要求108的数量的高门槛。
Continuous_CmdWrt_Low_Threshold:连续的写入命令要求108的数量的低门槛。
Page_Addr_Current_CmdWrt_Req:目前写入命令要求108所存取的页地址。
Page_Addr_Opene:过去数个写入命令要求108和读取命令要求106存取时所开启的页地址。
本发明提供的内存读取/写入仲裁方法包括有第一副判断步骤和第二副判断步骤,其中第一副判断步骤用以仲裁WFIFO队列104中的写入命令要求108能否往前递送至第二副判断步骤以要求优先权,而第二副判断步骤用以仲裁写入命令要求108和读取命令要求106二者中的哪一者可获得优先权。在第二副判断步骤中判断谁拥有优先权后,写入命令要求108和读取命令要求106二者中获得较高优先权的便可继续进行后续的处理。
请参阅图3和图4,图4为本发明的内存读取/写入仲裁方法的运作流程图。在第一副判断步骤152中,应用Cmd_Wrt_Req_Mask信号以控制屏蔽窗口(Mask Window)150。当Cmd_Wrt_Req_Mask信号未使能时,屏蔽窗口150打开,WFIFO队列104中的写入命令要求108可前送至第二副判断步骤154。相反地,当Cmd_Wrt_Req_Mask信号使能时,屏蔽窗口150关闭,WFIFO队列104中的写入命令要求108便停止前送至第二副判断步骤154,此时读取命令要求106便具有较写入命令要求108高的优先权。
当以下四个第一步骤条件中的至少一个符合时,Cmd_Wrt_Req_Mask信号为未使能:
1、CmdWrt_Req_Cnt≥Wrt_Req_Cnt_High_Threshold:
记录写入命令要求108的数量的参数等于或大于预先适当设定的写入命令要求108的高门槛;
2、CmdRd_Req_Pend_Cnt<CmdRd_Req_Low_Threshold:记录读取命令要求106的等待数量的参数小于预先适当设定的读取命令要求106的等待数量的低门槛;
3、CmdRd_Req_Idle_Timer>CmdRd_Req_Idle_Time_Threshold:计算和记录RFIFO队列102的闲置时间的参数超过RFIFO队列102的闲置时间的门槛;以及
4、CmdRd_Line_Hit信号激活。
根据第一步骤条件1,为了避免当读取要求连续获得较高优先权时等待的写入命令要求108溢满(Overflow),首先需预设适当的Wrt_Req_Cnt_High_Threshold参数。例如,若Wrt_Req_Cnt High_Threshold参数预设为4个输入项时,当CmdWrt_Req_Cnt参数等于或大于4时Cmd_Wrt_Req_Mask信号便未使能而屏蔽窗口150将打开。
根据第一步骤条件2,当RFIFO队列中读取命令要求106的数量接近零时为了增加频宽的应用和提升内存的存取效能,首先需预设适当的CmdRd_Req_Low_Threshold参数。例如,若CmdRd_Req_Low_Threshold参数预设为3个输入项时,当CmdRd_Req_Pend_Cnt参数小于3时Cmd_Wrt_Req_Mask信号便未使能而屏蔽窗口150将打开。
另外,若设计当全部读取命令要求106通过内存仲裁器100的一段时间后,写入命令要求108才往前递送至第二副判断步骤154,则根据第一步骤条件3,首先需预设适当的CmdRd_Req_Idle_Time_Threshold参数,而且CmdRd_Req_Idle_Timer参数开始计算和记录当RFIFO队列102中没有读取命令要求106时RFIFO队列102的闲置时间。例如,若CmdRd_Req_Idle_Time_Threshold参数预设为12个记忆时序(Memory Clock)时,当RFIFO队列102的闲置时间超过12个记忆时序,亦即CmdRd_Req_Idle_Timer>CmdRd_Req_Idle_Time_Threshold时,Cmd_Wrt_Req_Mask信号便未使能而屏蔽窗口150将打开。
根据第一步骤条件4,有时候写入命令要求108必须先于读取命令要求106往前送,例如读取命中信号、图形读取命中信号和表格读取命中信号等出现时,所以需提供且应用CmdRd_Line_Hit信号。当前述的读取命中(如读取命中信号、图形读取命中信号和表格读取命中信号等)出现时,CmdRd_Line_Hit信号激活,Cmd_Wrt_Req_Mask信号便未使能而屏蔽窗口150将打开。
基于电路的设计,用以决定屏蔽窗口150是否打开的前述四个第一步骤条件可以不同的组合来实施,例如条件1、条件2和条件3的组合、条件1、条件2和条件4的组合和条件1、条件2、条件3和条件4的组合等。
在第二副判断步骤154中,应用Mem_Gnt_Wrt_Window信号以控制写入准许保护窗口(Write Grant Protection Window)160。当Mem_Gnt_Wrt_Window信号使能,写入准许保护窗口160便打开,然后透过屏蔽窗口150的写入命令要求108可获得较读取命令要求106高的优先权,所以写入命令要求108能继续往前送至记忆模块。相反地,当Mem_Gnt_Wrt_Window信号未使能,写入准许保护窗口160便关闭,RFIFO队列102中的读取命令要求106获得较写入命令要求108高的优先权,此时透过屏蔽窗口150的写入命令要求108便停止往前送。
当以下两个第二步骤条件中之一个符合时,Mem_Gnt_Wrt_Window信号为使能:
1、Continuous_CmdWrt_Low_Threshold<Continuous_CmdWrt_Number<Continuous_CmdWrt_High_Threshold和Page_Addr_Current_CmdWrt_Req=Page_Addr_Opened:
记录连续的写入命令要求108的数量的参数介于连续的写入命令要求108的数量的高门槛和低门槛之间,同时目前写入命令要求108所存取的页地址等于过去数个写入命令要求108和读取命令要求106存取时所开启的页地址;以及
2、Continuous_CmdWrt_Number<Continuous_CmdWrt_Low_Threshold:记录连续的写入命令要求108的数量的参数小于连续的写入命令要求108的数量的低门槛。
明显地,Continuous_CmdWrt_High_Threshold参数的数值表示介于两相邻读取存取间的连续的写入存取的数量。根据第二步骤条件1和条件2,当透过屏蔽窗口150的写入命令要求108具有较读取命令要求106高的优先权时,Continuous_CmdWrt_Number参数为介于Continuous_CmdWrt_Low_Threshold参数和Continuous_CmdWrt_High_Threshold参数之间,或受限在低于Continuous_CmdWrt_Low_Threshold参数。而且,为了提高读取转为写入和写入转为读取时的列命中率和降低存取延迟,Continuous_CmdWrt_Number参数不仅需要受限于Continuous_CmdWrt_Low_Threshold参数和Continuous_CmdWrt_High_Threshold参数之间,目前写入命令要求108所存取的页地址更需等于过去数个写入命令要求108和读取命令要求106存取时所开启的页地址,来自第一副判断步骤152的写入命令要求108才可具有较读取命令要求106高的优先权,其中上述有关于地址的比较可利用比较器110执行。
换句话说,当Continuous_CmdWrt_Number参数大于Continuous_CmdWrt_High_Threshold参数时,读取命令要求106将具有较来自第一副判断步骤152的写入命令要求108高的优先权。因此,读取要求和写入要求的存取顺序分配和频宽更能有效地运作。
因为断续的小量已累积的连续写入命令要求108影响读取命令要求106的工作效率,又因读取转为写入的转换时间和写入转为读取的转换时间明显地降低存取效率,所以需应用写入准许保护窗口160借以规范连续写入命令要求108的数量正常化,从而降低在写入至读取的转换和读取至写入的转换时的存取延迟,以及增加列命中率。
当内存仲裁器100判断读取命令要求106和写入命令要求108的优先权时,有两原则可供参考:
1、当Cmd_Wrt_Req_Mask信号使能或Mem_Gnt_Wrt_Window信号未使能时,读取命令要求106(或RFIFO队列102)常拥有较写入命令要求108(或WFIFO队列104)高的优先权。
2、当Cmd_Wrt_Req_Mask信号未使能,同时Mem_Gnt_Wrt_Window信号使能时,写入命令要求108(或WFIFO队列104)常拥有较读取命令要求106(或RFIFO队列102)高的优先权。
另一原则为当CmdWrt_CmdQueue_Nearly_Full参数使能时,写入命令要求108拥有较读取命令要求106高的优先权,其中CmdWrt_CmdQueue_Nearly_Full参数用以表示WFIFO队列104是否接近满载。当WFIFO队列104接近满载时,CmdWrt_CmdQueue_Nearly_Full参数使能。
请参阅图5,其为读取要求200和写入要求202间的优先权判断的示意图,其中读取要求200和写入要求202间的优先权由以下四种情况来决定:
情况一:目前若读取要求200拥有较写入要求202高的优先权,而RFIFO队列中具有读取要求200且CmdWrt_CmdQueue_Nearly_Full参数未使能时,读取要求200将继续拥有较写入要求202高的优先权;
情况二:目前若读取要求200拥有较写入要求202高的优先权,但CmdWrt_CmdQueue_Nearly_Full参数使能,或者RFIFO队列中没有读取要求200而WFIFO队列中具有写入要求202时,写入要求202将于稍后拥有较读取要求200高的优先权;
情况三:目前若写入要求202拥有较读取要求200高的优先权,而CmdWrt_CmdQueue_Nearly_Full参数使能,或者Cmd_Wrt_Req_Mask信号未使能但Mem_Gnt_Wrt_Window信号使能时,写入要求202将继续拥有较读取要求200高的优先权;以及
情况四:目前若写入要求202拥有较读取要求200高的优先权,但当CmdWrt_CmdQueue_Nearly_Full参数未使能,或Cmd_Wrt_Req_Mask信号使能,又或Mem_Gnt_Wrt_Window信号未使能时,读取要求200将于稍后拥有较写入要求202高的优先权。
传统的仲裁方法常判断RFIFO具有较WFIFO高的优先权,但本发明的内存读取/写入仲裁方法提供了RFIFO队列和WFIFO队列间的优先权判断。在本发明的内存读取/写入仲裁方法中,第一副判断步骤和第二副判断步骤可以各自独立施行,或如上所述依序合并实施,借以获得更高的列命中和更佳的频宽利用效率。另外,可应用一训练机制以优化本发明的内存读取/写入仲裁方法中的选项与参数等。此训练机制至少包括有:
(1)当命令总线的闲置增加时,减少CmdRd_Req_Low_Threshold参数的数值或减小写入准许保护窗口160的尺寸。
(2)当读取要求未激活时,应用移动平均数作为读取命令要求106的等待数量。
本发明的优点为提供一种内存读取/写入仲裁方法,特别是有关于应用在内存控制器中的内存读/写仲裁方法,借以增加列命中(Row Hit)率以及降低内存存取时的延迟。与传统设计相比,本发明提供有效的方法及设备以降低读取至写入的转换次数和写入至读取的转换次数,其中这些转换次数会严重降低列命中率。所以,应用本发明后列命中率得以增加,写入要求和读取要求的存取顺序分配和频宽将更有效率。
如熟悉此技术的人员所了解的,以上所述仅为本发明的较佳实施例而已,并非用以限定本发明的权利要求;凡是其它未脱离本发明所揭示的构思下所完成的等效改变或修饰,均应包含在所述的权利要求内。
Claims (4)
1、一种内存读取/写入仲裁方法,应用在一内存控制器中,该内存读取/写入仲裁方法包括:
提供一仲裁器;
提供一读取要求FIFO队列,其中该读取要求FIFO队列包含数个读取命令要求;
提供一写入要求FIFO队列,其中该写入要求FIFO队列包含数个写入命令要求;以及
执行一判断步骤以决定该写入要求FIFO队列中的一写入命令要求,或该读取要求FIFO队列中的一读取命令具有一较高的优先权,其中该判断步骤至少包括:
执行一第一副判断步骤以获得一Cmd_Wrt_Req_Mask信号,且当该Cmd_Wrt_Req_Mask信号使能时,该读取命令要求具有较该写入命令要求高的优先权,另外,当该Cmd_Wrt_Req_Mask信号符合数个第一步骤条件的至少一个而未使能时,该写入命令要求将往前送至被一第二副判断步骤处理,这些第一步骤条件至少包括:
a.CmdWrt_Req_Cnt≥Wrt_Req_Cnt_High_Threshold:其中该CmdWrt_Req_Cnt参数用以记录这些写入命令要求的一数量,而该Wrt_Req_Cnt_High_Threshold参数为这些写入命令要求的该数量的一高门槛;
b.CmdRd_Req_Pend_Cnt<CmdRd_Req_Low_Threshold:其中该CmdRd_Req_Pend_Cnt参数用以记录这些读取命令要求的一等待数量,而该CmdRd_Req_Low_Threshold参数为这些读取命令要求的该等待数量的一低门槛;
c.CmdRd_Req_Idle_Timer>CmdRd_Req_Idle_Time_Threshold:其中该CmdRd_Req_Idle_Timer参数用以计算和记录该读取要求FIFO队列的一闲置时间,而该CmdRd_Req_Idle_Time_Threshold参数为该读取要求FIFO队列的该闲置时间的一门槛;以及
d.CmdRd_Line_Hit信号激活,其中一信号用以监测数种读取命中信号,当这些读取命中信号出现时,该CmdRd_Line_Hit信号激活;以及
对来自于该第一副判断步骤的该写入命令要求和该读取命令要求执行该第二副判断步骤以获得一Mem_Gnt_Wrt_Window信号,且当该Mem_Gnt_Wrt_Window信号未使能时,该读取命令要求具有较该写入命令要求高的优先权而被往前递送,当该Mem_Gnt_Wrt_Window信号符合数个第二步骤条件之一个而使能时,该写入命令要求具有较该读取命令要求高的优先权被往前递送,这些第二步骤条件至少包括:
a.Continuous_CmdWrt_Low_Threshold<
Continuous_CmdWrt_Number<Continuous_CmdWrt_High_Threshold和Page_Addr_Current_CmdWrt_Req==Page_Addr_Opened:其中该Continuous_CmdWrt_Number参数用以记录这些写入命令要求中数个连续写入命令要求的一数量,该Continuous_CmdWrt_High_Threshold参数为这些连续写入命令要求的该数量的一高门槛,而该Continuous_CmdWrt_Low_Threshold参数为这些连续写入命令要求的该数量的低高门槛,该Page_Addr_Current_CmdWrt_Req参数为目前这些写入命令要求的一写入命令要求所存取的一页地址,而该Page_Addr_Opened参数为过去这些写入命令要求和这些读取命令要求存取时所开启的一页地址;以及
b.Continuous_CmdWrt_Number<Continuous_CmdWrt_Low_Threshold。
2、如权利要求1所述的内存读取/写入仲裁方法,其中这些读取命中信号包括一读取命中信号、一图形读取命中信号和一表格读取命中信号。
3、如权利要求1所述的内存读取/写入仲裁方法,其中上述的判断步骤还包括执行一队列检查步骤以决定当该写入要求FIFO队列接近满载时该写入命令要求具有较该读取命令要求高的优先权而被往前递送,又当该写入要求FIFO队列未接近满载时,继续执行该第一副判断步骤。
4、如权利要求1所述的内存读取/写入仲裁方法,其中执行该第二副判断步骤后还包括执行一训练步骤,该训练步骤包括:
当一命令总线的一闲置增加时,减少该CmdRd_Req_Low_Threshold参数的数值;以及
当这些读取命令要求未激活时,应用一移动平均数作为该CmdRd_Req_Pend_Cnt参数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02150691 CN1279450C (zh) | 2002-11-13 | 2002-11-13 | 内存读取/写入仲裁方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 02150691 CN1279450C (zh) | 2002-11-13 | 2002-11-13 | 内存读取/写入仲裁方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1501254A CN1501254A (zh) | 2004-06-02 |
CN1279450C true CN1279450C (zh) | 2006-10-11 |
Family
ID=34234009
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 02150691 Expired - Fee Related CN1279450C (zh) | 2002-11-13 | 2002-11-13 | 内存读取/写入仲裁方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1279450C (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7272692B2 (en) * | 2004-11-12 | 2007-09-18 | International Business Machines Corporation | Arbitration scheme for memory command selectors |
US7761656B2 (en) * | 2007-08-22 | 2010-07-20 | Advanced Micro Devices, Inc. | Detection of speculative precharge |
TWI588652B (zh) * | 2015-09-01 | 2017-06-21 | 慧榮科技股份有限公司 | 讀取及寫入命令排程方法以及使用該方法的裝置 |
KR102386811B1 (ko) * | 2017-07-18 | 2022-04-15 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US10877906B2 (en) | 2018-09-17 | 2020-12-29 | Micron Technology, Inc. | Scheduling of read operations and write operations based on a data bus mode |
-
2002
- 2002-11-13 CN CN 02150691 patent/CN1279450C/zh not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
CN1501254A (zh) | 2004-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1102265C (zh) | 用于在多条总线之间传送信息的系统和方法 | |
US5623700A (en) | Interface circuit having zero latency buffer memory and cache memory information transfer | |
US7155618B2 (en) | Low power system and method for a data processing system | |
US20070156955A1 (en) | Method and apparatus for queuing disk drive access requests | |
CN102231142A (zh) | 一种带有仲裁器的多通道dma控制器 | |
CN1615474A (zh) | 统一存储器结构中仲裁的方法与设备 | |
US6667926B1 (en) | Memory read/write arbitration method | |
US6868087B1 (en) | Request queue manager in transfer controller with hub and ports | |
US20090100200A1 (en) | Channel-less multithreaded DMA controller | |
JPH071495B2 (ja) | データ処理システム | |
CN101030182A (zh) | 执行dma数据传输的设备和方法 | |
CN103809917A (zh) | 用于存储器的工作调度方法及其存储系统 | |
CN1902566A (zh) | 用于计算机系统中的功率管理的方法和设备 | |
CN1864145A (zh) | 用于处理输入/输出命令的方法、系统和程序 | |
KR20130009926A (ko) | 유연한 플래시 명령어 | |
CN103064807A (zh) | 多通道直接存储器存取控制器 | |
US6393505B1 (en) | Methods and apparatus for data bus arbitration | |
CN112559405B (zh) | 一种具有令牌桶结构的多通道dma的控制方法和装置 | |
WO2023045203A1 (zh) | 一种任务调度方法、芯片以及电子设备 | |
CN110716691A (zh) | 调度方法、装置、闪存设备和系统 | |
CN1286029C (zh) | 控制芯片片内存储装置及其存储方法 | |
CN1279450C (zh) | 内存读取/写入仲裁方法 | |
CN103150216A (zh) | 一种SoC集成的多端口DDR2/3调度器及调度方法 | |
US20050289254A1 (en) | Dynamic buffer allocation method | |
WO2024114728A1 (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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20061011 Termination date: 20091214 |