CN1326048C - 存储器存取装置与方法 - Google Patents
存储器存取装置与方法 Download PDFInfo
- Publication number
- CN1326048C CN1326048C CNB200510073315XA CN200510073315A CN1326048C CN 1326048 C CN1326048 C CN 1326048C CN B200510073315X A CNB200510073315X A CN B200510073315XA CN 200510073315 A CN200510073315 A CN 200510073315A CN 1326048 C CN1326048 C CN 1326048C
- Authority
- CN
- China
- Prior art keywords
- data
- memory module
- buffer
- memory
- redundant area
- 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.)
- Active
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一种存储器存取装置,包含一存储器模块、一中央处理单元及一北桥芯片组。存储器模块具有一正常区及一冗余区。中央处理单元输出一冗余区地址数据。北桥芯片组至少设有一存储器模块控制器、一数据缓存器及一指示缓存器,指示缓存器纪录冗余区地址数据。当执行写入程序时,数据缓存器纪录一待储存数据,而存储器模块控制器依据指示缓存器以及数据缓存器,将待储存数据储存至冗余区的一第一实体地址。另外,当执行读取程序时,数据缓存器纪录一待读取量,而存储器模块控制器则依据指示缓存器以及数据缓存器,自冗余区的一第二实体地址读取一待读取数据。
Description
技术领域
本发明涉及一种存储器存取装置与方法,特别涉及一种应用于存储容量超出操作系统所支持的存储空间的情况的存储器存取装置与方法。
背景技术
一般在计算机中所使用的存储器均是动态随机存取存储器(DRAM),随着技术的进步,动态随机存取存储器的容量越来越大将是不可避免的趋势,且在价格上也可被一般消费者接受,因此在消费者的计算机中,将可能会装配存储容量庞大的动态随机存取存储器。
然而,市面上一般的操作系统(OS),例如Windows XP Home edition或Windows XP Professional,最多只能支持到4GB的存储容量的寻址空间,除非是使用特殊的操作系统,例如Windows XP Server。举例来说,当计算机中设置有8GB容量的存储器,而操作系统装载着WindowsXP Professional时,因只能支持4GB寻址空间,故只能使用4GB大小的存储容量,其余的4GB则无法存取,因此而浪费了许多存储空间。
因此面对系统中容量越来越大的存储器,如何使操作系统能克服其原始的设定,而使用被浪费的存储空间,实属当前课题之一。
发明内容
有鉴于上述课题,本发明的目的为提供一种使用存储器的冗余区的存储器存取装置与方法。
因此,为达上述目的,依据本发明的存储器存取装置包含一存储器模块、一中央处理单元及一北桥芯片组。存储器模块具有一正常区(ordinary area)及一冗余区(redundant area)。中央处理单元输出一冗余区地址数据。北桥芯片组至少设有一存储器模块控制器、一数据缓存器及一指示缓存器,指示缓存器用于纪录冗余区地址数据。当执行写入程序时,数据缓存器纪录下待储存数据,存储器模块控制器则依据指示缓存器以及数据缓存器,将待储存数据储存至一冗余区的第一实体地址,其中,第一实体地址是依据冗余区地址数据而定的。另外,当执行读取程序时,数据缓存器纪录待读取量,存储器模块控制器则依据指示缓存器以及数据缓存器,而从一冗余区的第二实体地址读取一待读取数据,其中,第二实体地址是依据冗余区地址数据而定的,待读取数据的数据量则依据该待读取量而定。
另外,为达上述目的,本发明的存储器读取方法系与一中央处理单元、一北桥芯片组及一存储器模块配合。北桥芯片组具有一存储器模块控制器、一数据缓存器及一指示缓存器,存储器模块具有一正常区与一冗余区,所述存储器读取方法包含以下步骤:首先,由中央处理单元输出一冗余区地址数据至指示缓存器;接着,纪录一待读取量于数据缓存器中;最后,由存储器模块控制器依据指示缓存器以及数据缓存器自一冗余区的实体地址读取一待读取数据,其中,实体地址是依据冗余区地址数据而定的,待读取数据的数据量系依据待读取量而定。
进一步的是,为达上述目的,本发明的存储器写入方法系与一中央处理单元、一北桥芯片组及一存储器模块配合,北桥芯片组具有一存储器模块控制器、一数据缓存器及一指示缓存器,且存储器模块具有一正常区与一冗余区,存储器读取方法包含以下步骤:首先,中央处理单元输出一冗余区地址数据至指示缓存器中;接着,纪录一待储存数据于数据缓存器中;最后,由存储器模块控制器依据指示缓存器以及数据缓存器将待储存数据储存至一冗余区的实体地址,其中,实体地址是依据冗余区地址数据而定的。
综上所述,依据本发明的存储器存取装置与方法通过将中央处理单元所输出的冗余区地址数据及待储存数据或待读取数据量分别输入至北桥芯片组所增加的数据缓存器以及指示缓存器,再由存储器模块控制器指向存储器模块的冗余区的一实体地址,以存取存储器模块的冗余区,进而达到使用操作系统无法支持的存储空间。
附图说明
图1为显示依本发明较佳实施例的存储器存取装置来执行写入操作的一示意图;
图2为显示依本发明较佳实施例的存储器存取装置执行读取操作的一示意图;
图3为显示依本发明较佳实施例的存储器存取装置执行正常区存取的一示意图;
图4为显示依本发明较佳实施例的存储器写入方法的一流程图;
图5为显示依本发明较佳实施例的存储器读取方法的一流程图;以及
图6为显示依本发明较佳实施例的存储器存取装置的一示意图。
组件符号一览表
附图标记 | 组件 | 附图标记 | 组件 |
11 | 存储器模块 | 14 | 基本输出输入系统 |
111 | 正常区 | D1 | 冗余区地址数据 |
112 | 冗余区 | D2 | 待储存数据 |
12 | 中央处理单元 | D3 | 待读取量 |
13 | 北桥芯片组 | D4 | 待读取数据 |
131 | 存储器模块控制器 | D5 | 正常区地址数据 |
132 | 数据缓存器 | M1 | 存储器映射输出输入缓存器 |
133 | 指示缓存器 | P1~P3 | 存储器写入方法流程图 |
P4~P6 | 存储器读取方法流程图 |
具体实施方式
以下将参照相关附图,说明依据本发明较佳实施例的存储器存取装置与方法,其中相同的组件将以相同的附图标记加以说明。
请参照图1所示,本发明较佳实施例的存储器存取装置包含一存储器模块11、一中央处理单元12及一北桥芯片组13。
存储器模块11的容量大于计算机操作系统所支持的存储容量,本实施例中,计算机操作系统可以是Windows XP Professional,而存储器模块11的容量大于4GB。存储器模块11具有一正常区(ordinary area)111及一冗余区(redundant area)112。本实施例中,存储器模块11的容量为7GB,正常区111的地址是由0至3G的地址,而冗余区112的地址是由4G至8G的地址。
中央处理单元12输出一冗余区地址数据D1,本实施例中,例如为产生一4.2G地址的冗余区地址数据D1。
北桥芯片组13至少设有一存储器模块控制器131、一数据缓存器132及一指示(pointer)缓存器133。本实施例中,当执行一写入程序时,指示缓存器133用于纪录4.2G地址的冗余区地址数据D1。数据缓存器132纪录一待储存数据D2,而存储器模块控制器131则依据指示缓存器133以及数据缓存器132,而将待储存数据D2储存至冗余区112的4.2G的一第一实体地址。本实施例中,第一实体地址是依据冗余区地址数据D1而定的。
再请参照图2所示,本实施例中,中央处理单元12系输出例如为4.2G地址的冗余区地址数据D1,当执行一读取程序时,指示缓存器133用于纪录4.2G地址的冗余区地址数据D1,而数据缓存器132纪录一待读取量D3,此待读取量例如为64位,代表要从4.2G地址开始读取数据大小为64位的数据。存储器模块控制器131则依据指示缓存器133以及数据缓存器132,自冗余区112的4.2G的一第二实体地址读取一数据大小为64位的待读取数据D4,并将待读取数据D4传送至中央处理单元12。本实施例中,第二实体地址是依据冗余区地址数据D1而定的,而待读取数据D4的数据量则依据该待读取量D3而定。另外,本实施例中,进一步包含有一基本输出输入系统(BIOS)14,其将待读取数据D4储存于存储器模块11的冗余区112之中,而这些待读取数据D4可以是例如外围部件互连接口(Peripheral Component Interconnect,PCI)所需使用的数据。
上述实施例中,数据缓存器132以及指示缓存器133可设置于北桥芯片组13中的一存储器映射输出输入(Memory mapping input output,MMIO)缓存器M1中。
再请参照图3所示。本实施例中,若中央处理单元12系产生2.5G地址的一正常区地址数据D5,则存储器模块控制器131系依据2.5G地址的正常区地址数据D5,而指向存储器模块11的正常区111的2.5G的实体地址,再执行读取或是写入的操作。
请参照图4并配合参照图1所示,本发明较佳实施例的存储器写入方法是与一存储器模块11、一中央处理单元12及一北桥芯片组13配合。北桥芯片组13具有一存储器模块控制器131、一数据缓存器132及一指示缓存器133。存储器模块11具有一正常区111与一冗余区112,本实施例中,存储器模块11的容量为7GB,而正常区111的地址是由0至3G,冗余区112的地址则是由4G至8G。此存储器存取方法包含以下步骤:
首先,在步骤P1,由中央处理单元12输出一冗余区地址数据D1至指示缓存器133中。本实施例中,冗余区地址数据D1例如为4.2G的冗余区地址数据D1。
接着,在步骤P2,纪录一待储存数据D2于数据缓存器132中。
最后,在步骤P3,由存储器模块控制器131依据指示缓存器133以及数据缓存器132,将待储存数据D2储存至冗余区112的4.2G的一实体地址。本实施例中,实体地址是依据冗余区地址数据D2而定的。
再请参照图5并配合参照图2所示,本发明较佳实施例的存储器读取方法是与一存储器模块11、一中央处理单元12及一北桥芯片组13配合。北桥芯片组13具有一存储器模块控制器131、一数据缓存器132及一指示缓存器133,而存储器模块11具有一正常区111与一冗余区112,本实施例中,存储器模块11的容量为7GB,而正常区111的地址和由0至3G,冗余区112的地址则是4G至8G,此存储器读取方法包含以下步骤:
首先,在步骤P4,由中央处理单元12输出一冗余区地址数据D1至指示缓存器133中。本实施例中,冗余区地址数据D1例如为4.2G的冗余区地址数据D1。
接着,在步骤P5,纪录一待读取量D3于数据缓存器132中,此待读取量例如为64位,代表要从4.2G地址开始读取数据大小为64位的数据。
最后,由存储器模块控制器131依据指示缓存器133以及数据缓存器132,自冗余区112的4.2G的一实体地址读取一数据大小为64位的待读取数据D4,并将待读取数据D4传送至中央处理单元12。本实施例中,实体地址是依据冗余区地址数据D1而定的,而待读取数据D4的数据量则依据待读取量D3而定。
另外,上述的读取与写入方法,若中央处理单元12系输出0至3G之间的正常区地址数据D5至存储器模块控制器131,例如正常区地址数据D5为2.5G,则存储器模块控制器131会依据2.5G的正常区地址数据D1,而指向存储器模块11的正常区111的2.5G的实体地址,再执行读取或写入操作。
另外,除上述的冗余区112系用来储存外围部件互连接口所需的数据之外,冗余区112也可用来作为硬盘的缓冲区(buffer)、直接存储器存取(Direct Memory Access,DMA)的缓冲区或任何需要数据存取的用途。
以下将再另举一实例,以使公众能进一步了解依据本发明的存储器存取装置与方法。
请参照图6所示,存储器模块11例如由七条DRAM所组成,此存储器模块可分成正常区111和冗余区112,其中正常区111由地址0至1G、1G至2G及2G至3G所组成,而冗余区112则由地址4G至5G、5G至6G及6G至7G所组成。另外,地址3G至4G供系统其它需求使用,例如供所有外围部件互连接口、基本输出输入系统、或是存储器输出输入缓存器存放数据使用。在本实施例中,地址3.5G系提供给数据缓存器132使用,而地址3.6G则提供给指示缓存器133使用。
在进行写入程序时,当一操作系统要将待储存数据D2储存于3.6G的地址时,则中央处理单元12会输出例如4.2G地址的冗余区地址数据D1至指示缓存器133中3.6G的地址,并且将待储存数据D2输出至例如为3.5G的地址的数据缓存器132中。接着,存储器模块控制器133会依据指示缓存器133以及数据缓存器132,而将待储存数据D2储存至4.2G的冗余区112的实体地址中。
综上所述,本发明的存储器存取装置与方法,能够将操作系统所无法支持的存储空间,例如在Windows XP Professional操作系统下超过4GB的存储空间(即本发明中的冗余区),利用增加一组数据缓存器及指示缓存器将地址与数据指向存储器模块的冗余区,而使中央处理单元得以存取超过4GB的存储空间中的数据。另外,若系统中有多组的数据缓存器及指示缓存器,则可以完成更多任务。因此,面对拥有庞大存储容量的系统,不必担心因为操作系统不支持而造成存储空间的浪费。
以上说明所述仅为举例性质,而非限定性质。任何未脱离本发明的精神与范畴,而对其进行等效的修改或变更,均应包含于所附权利要求范围中。
Claims (10)
1、一种存储器存取装置,包含:
一存储器模块,其具有一正常区及一冗余区;
一中央处理单元,其输出一冗余区地址数据;以及
一北桥芯片组,其至少设有一存储器模块控制器、一数据缓存器及一指示缓存器,该指示缓存器纪录该冗余区地址数据,其中
当执行写入程序时,该数据缓存器纪录一待储存数据,该存储器模块控制器依据该指示缓存器以及该数据缓存器,而将该待储存数据储存至该冗余区的一第一实体地址,其中,该第一实体地址是依据该冗余区地址数据而定的,及
当执行读取程序时,该数据缓存器纪录一待读取量,该存储器模块控制器依据该指示缓存器以及该数据缓存器而自该冗余区的一第二实体地址读取一待读取数据,其中,该第二实体地址是依据该冗余区地址数据而定的,该待读取数据的数据量则依据该待读取量而定。
2、如权利要求1所述的存储器存取装置,其中该中央处理单元还输出一正常区地址数据,而该存储器模块控制器则依据该正常区地址数据动作,而指向该存储器模块的该正常区的一实体地址。
3、如权利要求1所述的存储器存取装置,其中该存储器模块的容量大于一计算机操作系统所支持的存储容量。
4、如权利要求3所述的存储器存取装置,其中该存储容量为4GB。
5、如权利要求1所述的存储器存取装置,进一步包含:
一基本输出输入系统,其将该待读取数据储存于该存储器模块的该冗余区之中。
6、如权利要求1所述的存储器存取装置,其中该指示缓存器与该数据缓存器是设置在一存储器映射输出输入缓存器之中的。
7、一种存储器读取方法,其与一中央处理单元、一北桥芯片组及一存储器模块配合,其中该北桥芯片组具有一存储器模块控制器、一数据缓存器及一指示缓存器,该存储器模块具有一正常区与一冗余区,该存储器读取方法包含以下步骤:
该中央处理单元输出一冗余区地址数据至该指示缓存器中;
纪录一待读取量于该数据缓存器中;以及
由该存储器模块控制器依据该指示缓存器以及该数据缓存器,自该冗余区的一实体地址读取一待读取数据,其中,该实体地址是依据该冗余区地址数据而定的,该待读取数据的数据量则依据该待读取量而定。
8、如权利要求7所述的存储器读取方法,进一步包含:
由该中央处理单元输出一正常区地址数据至该存储器模块控制器;以及
该存储器模块控制器依据该正常区地址数据而指向该存储器模块的该正常区的一实体地址。
9、一种存储器写入方法,其与一中央处理单元、一北桥芯片组及一存储器模块配合,其中该北桥芯片组具有一存储器模块控制器、一数据缓存器及一指示缓存器,该存储器模块具有一正常区与一冗余区,该存储器读取方法包含以下步骤:
该中央处理单元输出一冗余区地址数据至该指示缓存器中;
纪录一待储存数据于该数据缓存器中;以及
由该存储器模块控制器依据该指示缓存器以及该数据缓存器,将该待储存数据储存至该冗余区的一实体地址,其中,该实体地址是依据该冗余区地址数据而定的。
10、如权利要求8所述的存储器写入方法,进一步包含:
由该中央处理单元输出一正常区地址数据至该存储器模块控制器;以及
该存储器模块控制器依据该正常区地址数据而指向该存储器模块的该正常区的一实体地址。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510073315XA CN1326048C (zh) | 2005-05-31 | 2005-05-31 | 存储器存取装置与方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB200510073315XA CN1326048C (zh) | 2005-05-31 | 2005-05-31 | 存储器存取装置与方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1687903A CN1687903A (zh) | 2005-10-26 |
CN1326048C true CN1326048C (zh) | 2007-07-11 |
Family
ID=35305944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB200510073315XA Active CN1326048C (zh) | 2005-05-31 | 2005-05-31 | 存储器存取装置与方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1326048C (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030041223A1 (en) * | 2001-07-12 | 2003-02-27 | Bi-Yun Yeh | Data memory controller that supports data bus invert |
CN1403923A (zh) * | 2002-10-21 | 2003-03-19 | 威盛电子股份有限公司 | 维持动态随机存取存储器的存储数据的方法及相关装置 |
CN1421784A (zh) * | 2001-11-27 | 2003-06-04 | 矽统科技股份有限公司 | 计算机系统以图形卡存储器作为延伸存储器的系统与方法 |
JP2004005627A (ja) * | 2003-05-01 | 2004-01-08 | Mitsubishi Electric Corp | 二重化メモリシステム |
US20040153904A1 (en) * | 2002-09-09 | 2004-08-05 | Shiou-Je Lin | [memory architecture and method for repairing a serial access memory] |
CN1564139A (zh) * | 2004-03-25 | 2005-01-12 | 威盛电子股份有限公司 | 数据撷取方法及系统 |
-
2005
- 2005-05-31 CN CNB200510073315XA patent/CN1326048C/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030041223A1 (en) * | 2001-07-12 | 2003-02-27 | Bi-Yun Yeh | Data memory controller that supports data bus invert |
CN1421784A (zh) * | 2001-11-27 | 2003-06-04 | 矽统科技股份有限公司 | 计算机系统以图形卡存储器作为延伸存储器的系统与方法 |
US20040153904A1 (en) * | 2002-09-09 | 2004-08-05 | Shiou-Je Lin | [memory architecture and method for repairing a serial access memory] |
CN1403923A (zh) * | 2002-10-21 | 2003-03-19 | 威盛电子股份有限公司 | 维持动态随机存取存储器的存储数据的方法及相关装置 |
JP2004005627A (ja) * | 2003-05-01 | 2004-01-08 | Mitsubishi Electric Corp | 二重化メモリシステム |
CN1564139A (zh) * | 2004-03-25 | 2005-01-12 | 威盛电子股份有限公司 | 数据撷取方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN1687903A (zh) | 2005-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102543179B (zh) | 串行接口存储器中的同时读取与写入存储器操作 | |
US7669033B2 (en) | Pretranslating input/output buffers in environments with multiple page sizes | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
US20140325148A1 (en) | Data storage devices which supply host with data processing latency information, and related data processing methods | |
CN107741913B (zh) | 用来管理一记忆装置的方法、记忆装置与控制器 | |
CN107423231B (zh) | 用来管理一记忆装置的方法以及记忆装置与控制器 | |
US8001354B2 (en) | Implementing dynamic physical memory reallocation | |
CN106484316A (zh) | 用来管理一记忆装置的方法以及记忆装置与控制器 | |
US7861074B2 (en) | Electronic systems using flash memory modules as main storage and related system booting methods | |
CN106802870B (zh) | 一种高效的嵌入式系统芯片Nor-Flash控制器及控制方法 | |
US20070027940A1 (en) | Defragmenting one or more files based on an indicator | |
CN101661431B (zh) | 用于快闪存储器的区块管理方法、快闪储存系统及控制器 | |
CN103309619A (zh) | 一种闪存数据存储方法 | |
US20190114112A1 (en) | Data storage management method and data storage system with namespace planning | |
CN103218308B (zh) | 缓冲存储器管理方法、存储器控制器与存储器储存装置 | |
CN1326048C (zh) | 存储器存取装置与方法 | |
US20060248327A1 (en) | Computer rapid boot system and method | |
CN100514271C (zh) | 芯片组、北桥芯片以及磁盘数据存取方法 | |
CN116010029A (zh) | 数据清除方法、装置、电子设备及计算机可读取存储介质 | |
TW200419585A (en) | Address decode | |
CN100416484C (zh) | 具磁盘阵列控制功能的核心逻辑单元及磁盘阵列控制方法 | |
CN111177027A (zh) | 动态随机存取存储器、内存管理方法、系统及存储介质 | |
US20060224855A1 (en) | Device and method for accessing memory | |
CN100385417C (zh) | 请求页面调度方法及将有关页面信息输入到页面内的方法 | |
US7805567B2 (en) | Chipset and northbridge with raid access |
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 |