发明名称 重排复数个用来存取资料处理系统上主记忆体之资料存取指令的方法与装置
摘要 本发明系提供一种重排复数个用来存取资料处理系统上主记忆体之资料存取指令的方法与装置。该方法包含有接收复数个资料存取指令以依据一第一预定顺序存取一记忆装置,以及依据将存取一记忆分页的第一资料存取指令排列于存取同一记忆分页的第二资料存取指令之后的方式重排一指令伫列所接收的资料存取指令以使其对应一第二预定顺序来提高资料存取效能。此外,若一第三资料存取指令于重排后会造成一延迟时间值超过一预定限制值,则禁止执行该重排操作。
申请公布号 TWI240166 申请公布日期 2005.09.21
申请号 TW093100948 申请日期 2004.01.14
申请人 威盛电子股份有限公司 发明人 林瑞霖;吴胜宗;蔡日兴;黄祥毅;张维昀;刘国平;何桓蓁
分类号 G06F12/00 主分类号 G06F12/00
代理机构 代理人 许锺迪 台北县永和市福和路389号5楼
主权项 1.一种存取电脑系统之记忆装置的方法,该记忆装置系电连接于一记忆体控制电路(memory controller),该记忆体控制电路系依据一主控制器(master device)依序输出之资料存取指令(access request)来逐一地回应该主控制器,该记忆体控制电路包含有一指令伫列(request queue)以及一延迟时间监控单元(latencymonitoring unit)电连接于该指令伫列,该方法包含有:(a)使用该指令伫列储存该主控制器输出之资料存取指令;(b)使用该延迟时间监控单元纪录复数个延迟时间値(latency value),该复数个延迟时间値系分别对应该指令伫列所储存之资料存取指令;(c)使用该记忆体控制电路接收一第一资料存取指令,将该第一资料存取指令存入该指令伫列,以及依据已储存于该指令伫列之资料存取指令所对应之延迟时间値来设定该第一资料存取指令所对应之执行优先权;以及(d)依据该指令伫列所储存之资料存取指令所对应的执行优先权,使用该记忆体控制电路来逐一地存取该记忆装置。2.如申请专利范围第1项所述之方法,其中步骤(c)另包含有:判断该第一资料存取指令是否用来存取该记忆装置之第一记忆分页;以及判断该指令伫列是否已储存一第二资料存取指令与一第三资料存取指令分别用来存取该记忆装置之第一分页与该记忆装置之第二分页,该第三资料存取指令系紧邻于该第二资料存取指令之后,且该第三资料存取指令所对应之执行优先权低于该第二资料存取指令所对应之执行优先权。3.如申请专利范围第2项所述之方法,其中步骤(c)另包含有:若对应该第三资料存取指令之第三延迟时间値不大于一最大可容许数値,设定该第一资料存取指令之执行优先权高于该第三资料存取指令所对应之执行优先权,使用一初始値设定对应该第一资料存取指令之第一延迟时间値,以及使用一递增値增加该第三延迟时间値;以及若对应该第三资料存取指令之第三延迟时间値大于该最大可容许数値,设定该第一资料存取指令之执行优先权低于该第三资料存取指令所对应之执行优先权,且使用一该初始値设定对应该第一资料存取指令之第一延迟时间値。4.如申请专利范围第3项所述之方法,其中该最大可容许数値系为可程式化(programmable)。5.如申请专利范围第3项所述之方法,其中若对应该第三资料存取指令之第三延迟时间値不大于该最大可容许数値,该第一资料存取指令所设定之执行优先权系低于该第二资料存取指令所对应之执行优先权。6.如申请专利范围第2项所述之方法,其中步骤(c)另包含有:若已储存于该指令伫列之第二资料存取指令系对应一最低执行优先权,则存入该第一资料存取指令至该指令伫列而使该第一资料存取指令对应该最低执行优先权,以及使用一初始値设定对应该第一资料存取指令之第一延迟时间値。7.如申请专利范围第2项所述之方法,其中步骤(c)另包含有:若该指令伫列系为空置(empty),则存入该第一资料存取指令至该指令伫列,以及使用一初始値设定对应该第一资料存取指令之第一延迟时间値。8.如申请专利范围第1项所述之方法,其另包含有:分别使用一预定递增値来增加该指令伫列中具有执行优先权低于该第一资料存取指令之执行优先权之资料存取指令所对应的延迟时间値。9.如申请专利范围第1项所述之方法,其中该记忆装置价为该写脑系统之主记忆体。10.如申请专利范围第9项所述之方法,其中该主记忆体系为动态随机存取记忆体。11.如申请专利范围第1项所述之方法,其中该记忆体控制电路系设置于该电脑系统之北桥电路。12.一种经由记忆体控制电路存取电脑系统之记忆装置的方法,该记忆体控制电路系依据一主控制器(master device)依序输出之资料存取指令(access request)来逐一地回应该主控制器,该方法包含有:(a)储存该主控制器输出之资料存取指令于该指令伫列中;(b)纪录复数个延迟时间値(latency value),该复数个延迟时间値系分别对应该指令伫列所储存之资料存取指令;(c)接收一第一资料存取指令,将该第一资料存取指令存入该指令伫列,以及依据已储存于该指令伫列之资料存取指令所对应之延迟时间値来设定该第一资料存取指令所对应之执行优先权;以及(d)依据该指令伫列所储存之资料存取指令所对应的执行优先权来逐一地存取该记忆装置。13.如申请专利范围第12项所述之方法,其中步骤(c)另包含有:判断该第一资料存取指令是否用来存取该记忆装置之第一记忆分页;以及判断该指令伫列是否已储存一第二资料存取指令与一第三资料存取指令分别用来存取该记忆装置之第一分页与该记忆装置之第二分页,该第三资料存取指令系紧邻于该第二资料存取指令之后,且该第三资料存取指令所对应之执行优先权低于该第二资料存取指令所对应之执行优先权。14.如申请专利范围第13项所述之方法,其中步骤(c)另包含有:若对应该第三资料存取指令之第三延迟时间値不大于一最大可容许数値,设定该第一资料存取指令之执行优先权高于该第三资料存取指令所对应之执行优先权,使用一初始値设定对应该第一资料存取指令之第一延迟时间値,以及使用一递增値增加该第三延迟时间値;以及若对应该第三资料存取指令之第三延迟时间値大于该最大可容许数値,设定该第一资料存取指令之执行优先权低于该第三资料存取指令所对应之执行优先权,且使用该初始値设定对应该第一资料存取指令之第一延迟时间値。15.如申请专利范围第14项所述之方法,其中该最大可容许数値系为可程式化(programmable)。16.如申请专利范围第14项所述之方法,其中若对应该第三资料存取指令之第三延迟时间値不大于该最大可容许数値,该第一资料存取指令所设定之执行优先权系低于该第二资料存取指令所对应之执行优先权。17.如申请专利范围第13项所述之方法,其中步骤(c)另包含有:若已储存于该指令伫列之第二资料存取指令系对应一最低执行优先权,则存入该第一资料存取指令至该指令伫列而使该第一资料存取指令对应该最低执行优先权,以及使用一初始値设定对应该第一资料存取指令之第一延迟时间値。18.如申请专利范围第13项所述之方法,其中步骤(c)另包含有:若该指令伫列系为空置(empty),则存入该第一资料存取指令至该指令伫列,以及使用一初始値设定对应该第一资料存取指令之第一延迟时间値。19.如申请专利范围第12项所述之方法,其另包含有:分别使用一预定递增値来增加该指令伫列中具有执行优先权低于该第一资料存取指令之执行优先权之资料存取指令所对应的延迟时间値。20.如申请专利范围第12项所述之方法,其中该记忆装置系为该电脑系统之主记忆体。21.如申请专利范围第20项所述之方法,其中该主记忆体系为动态随机存取记忆体。22.如申请专利范围第12项所述之方法,其中该记忆体控制电路系设置于该电脑系统之北桥电路。23.一种记忆体控制电路(memory controller),用来存取一电脑系统之记忆装置,该记忆装置系电连接于该记忆体控制电路,该记忆体控制电路系依据一主控制器(master device)依序输出之资料存取指令(accessrequest)来逐一地回应该主控制器,该记忆体控制电路包含有:一指令伫列(request queue),用来储存该主控制器输出之资料存取指令;一延迟时间监控单元(latency monitoring unit),电连接于该指令伫列,用来纪录复数个延迟时间値(latencyvalue),该复数个延迟时间値系分别对应该指令伫列所储存之资料存取指令;以及一重排控制单元(reorder decision-making unit),电连接于该指令伫列,用来依据已储存于该指令伫列之资料存取指令所对应之延迟时间値控制一第一资料存取指令存入该指令伫列并对应一执行优先权;其中该记忆装置系依据该指令伫列所储存之资料存取指令所对应的执行优先权而依序地被存取。24.如申请专利范围第23项所述之记忆体控制电路,其另包含有:一记忆分页/记忆库比较单元(page/bank comparing unit),电连接于该重排控制单元与该指令伫列,用来判断该第一资料存取指令是否用来存取该记忆装置之第一记忆分页,以及判断该指令伫列是否已储存一第二资料存取指令与一第三资料存取指令分别用来存取该记忆装置之第一分页与该记忆装置之第二分页,其中该第三资料存取指令系紧邻于该第二资料存取指令之后,且该第三资料存取指令所对应之执行优先权低于该第二资料存取指令所对应之执行优先权。25.如申请专利范围第24项所述之记忆体控制电路,其另包含有:一延迟时间控制单元(latency control unit),电连接于该重排控制单元与该延迟时间监控单元,用来侦测对应该第三资料存取指令之第三延迟时间値是否大于一最大可容许数値。26.如申请专利范围第25项所述之记忆体控制电路,其中该最大可容许数値系为可程式化(programmable)。27.如申请专利范围第23项所述之记忆体控制电路,其中该记忆装置系为该电脑系统之主记忆体。28.如申请专利范围第27项所述之记忆体控制电路,其中该主记忆体系为动态随机存取记忆体。29.如申请专利范围第23项所述之记忆体控制电路,其中该记忆体控制电路系设置于该电脑系统之北桥电路。30.一种存取电脑系统之记忆装置之方法,其包含有:接收复数个资料存取指令(access request)以依据一第一预定顺序存取该记忆装置;以及依据一第二预定顺序于一指令伫列(request queue)中重排(reorder)该复数个资料存取指令,以重新安置用来存取一记忆分页之第一资料存取指令紧接于用来存取该记忆分页之第二资料存取指令之后;其中若重新安置该第一资料存取指令会造成一第三资料存取指令之延迟时间値超过一预定限制値,则禁止重新安置该第一资料存取指令。31.如申请专利范围第30项所述之方法,其中于该第一资料存取指令存入该指令伫列前,该第三资料存取指令于该指令伫列中系紧接于该第二资料存取指令之后。32.如申请专利范围第30项所述之方法,其中重新安置该第一资料存取指令之操作另包含有:判别该第一资料存取指令与该第二资料存取指令均存取该记忆分页;判断该第三资料存取指令系存取另一记忆分页;以及于该指令伫列中,插入该第一资料存取指令于该第二资料存取指令与该第三资料存取指令之间。33.如申请专利范围第32项所述之方法,其另包含有:判别对应该第三资料存取指令之延迟时间値;于存入该第一资料存取指令至该指令伫列前,检查该第三资料存取指令之延迟时间値是否会于插入该第一资料存取指令后增加而超过该预定限制値;以及于存入该第一资料存取指令至该指令伫列后,使用一预定递增値增加该第三资料存取指令之延迟时间値。34.如申请专利范围第33项所述之方法,其中该预定递增値系为可程式化(programmable)。35.如申请专利范围第30项所述之方法,其中该预定限制値系为可程式化(programmable)。36.一种存取电脑系统之记忆装置之方法,其包含有:接收复数个资料存取指令(access request)以存取该记忆装置之一或复数个记忆分页;以及将存取同一记忆分页之资料存取指令聚集于一或复数个群组(group)中来重排一指令伫列(request queue)中原本对应一预定顺序之复数个资料存取指令;其中若聚集一资料存取指令会造成该指令伫列中另一资料存取指令之延迟时间値超过一预定限制値,则禁止聚集该资料存取指令。37.如申请专利范围第36项所述之方法,其中重排对应该预定顺序之复数个资料存取指令的操作另包含有:(a)判别于一第二资料存取指令后接收之第一资料存取指令与该第二资料存取指令均存取同一记忆分页;(b)判断一第三资料存取指令系存取另一记忆分页;(c)于该指令伫列中,插入该第一资料存取指令于该第二资料存取指令与该第三资料存取指令之间;以及(d)对于所有接收之复数个资料存取指令重复执行上述步骤(a)、(b)、(e)。38.如申请专利范围第37项所述之方法,其中步骤(c)另包含有:判别对应该第三资料存取指令之延迟时间値;于存入该第一资料存取指令至该指令伫列前,检查该第三资料存取指令之延迟时间値是否会于插入该第一资料存取指令后增加而超过该预定限制値;以及于存入该第一资料存取指令.至该指令伫列后,使用一预定递增値增加该第三资料存取指令之延迟时间値。39.如申请专利范围第38项所述之方法,其中该预定递增値系为可程式化(programmable)。40.如申请专利范围第36项所述之方法,其中该预定限制値系为可程式化(programmable)图式简单说明:图一为习知电脑系统的示意图。图二为记忆装置之第一种习知资料存取操作的示意图。图三为记忆装置之第二种习知资料存取操作的示意图。图四为本发明记忆体控制电路的功能方块示意图。图五为本发明重排资料存取指令的操作流程图。图六为记忆装置于本发明重排资料存取指令执行后的运作示意图。
地址 台北县新店市中正路533号8楼