加速资料存取的存储器结构 本发明是有关存储器结构设计的技术领域,尤指一种利用少量的资料闩锁器来加速资料存取的存储器结构。
随着半导体技术的进步,因存储器的容量的倍增,中央处理器(CentralProcessing Unit,CPU)速度的进步远快于存储器存取速度的进步。而传统上,为使CPU能加速对于存储器的存取速度,通常以快取存储器(Cache Memory)作为CPU及存储器模组间的缓冲,如图4所示,即是以设置于中央处理器41及存储器42间的快取存储器43来增进资料存取速度的示意图,其中该快取存储器43是由操作速度远较存储器42为快的静态随机存取存储器(SRAM)所构成,并用以储存例如曾经存取过的资料,以当CPU41在进行资料存取时,如当所存取的资料已曾存取过且尚存在快取存储器43中未被取代时,快取存储器43即可以很快的送资料给CPU41而不需额外的等待周期,故而得以增加资料存取的速度,惟此种加速资料存取的方式,第一次读取的资料皆须由存储器42读出,资料的第二次使用才有加速的机会,并由于快取存储器43的面积通常很大,故需耗费较高的硬件成本。
此外,亦有以页模式的存取来加速存储器本身地速度,如图5所示,其是将用以对存储器50定址的地址线51分为行地址线53及列地址线52,并分别以行解码器54及列解码器55对行、列地址线53、52解码,以对存储器50的贮存格(Memory Cells)进行读取,而同列不同行的贮存格即称为同页模式,故当所读取者为相同列地址的同页贮存格时,则不须再对列地址线52进行解码,而仅需对不同的行地址线53解码,此时即可加速资料的读取。然而当存储器50中不仅贮存指令亦同时存有资料的情况下,一般CPU的存取特性通常为指令及资料交插存取(例如,某一指令要提取存储器中某地址的资料),亦可能有中断发生的情况,程序可能在中断时跳到它处执行,因而导致存取同页资料的机率的大幅降低,而难以达到所预期的效益。因此,前述的加速存储器存取的方式实有予以改进的必要。
发明人爰因于此,本于积极发明的精神,亟思一种可以解决上述问题的加速资料存取的存储器结构,几经研究实验终至完成此项新颖进步的发明。
本发明的目的是在提供一种加速资料存取的存储器结构,其是利用少量的资料闩锁器以加速资料存取的速度,并可降低硬件的成本及减少电源的消耗。
依据本发明的一特色,一加速资料存取的存储器结构具有一由复数个记忆贮存格所构成的存储器单元;一列解码器将地址线中的列地址予以解码,以对该记忆贮存格子以定址;复数个资料闩锁单元选择性地将由该列解码器所予以定址的记忆贮存格的资料予以存入,其中,每一资料闩锁单元具有至少两个闩锁器,藉以同时储存多列记忆贮存格的资料;一比较选取逻辑依据列地址的内容以比较判断由列地址所定址的记忆贮存格的资料是否已存于资料闩锁单元,如未储存,则选取每一资料闩锁单元的其中一个闩锁器来储存该列地址所定址的记忆贮存格的资料;一行解码器将地址线中的行地址予以解码,以自该复数个资料闩锁单元中获得该地址线所定址的记忆贮存格的资料。
其中该行地址具有NC个位元,而该资料闩锁单元的个数为2NC个。
其中该比较选取逻辑于选取资料闩锁单元的闩锁器来储存记忆贮存格的资料时,是优先选取未存有资料的资料闩锁单元的闩锁器。
其中该比较选取逻辑于选取资料闩锁单元的闩锁器来储存记忆贮存格的资料时,是按照闩锁器在资料闩锁单元排列顺序予以选取。
其中该比较选取逻辑于选取资料闩锁单元的闩锁器来储存记忆贮存格的资料时,如所选取的资料闩锁单元的闩锁器已存有资料时,则将该已存在的资料予以替代。
依据本发明的另一特色,一加速资料存取的存储器结构具有一由复数个记忆贮存格所构成的存储器单元;一列解码器将地址线中的列地址予以解码,以对该记忆贮存格予以定址:一前级行解码器将地址线中的部分行地址予以解码,以对该已由列解码器所定址的记忆贮存格予以定址;复数个资料闩锁单元选择性地将由该列解码器及该前级行解码器所予以定址的记忆贮存格的资料予以存入,其中,每一资料闩锁单元具有至少两个闩锁器,藉以同时储存多列记忆贮存格的资料;一比较选取逻辑依据该列地址及该部分行地址的内容以比较判断由该列地址及该部分行地址所定址的记忆贮存格的资料是否已存于该复数个资料闩锁单元,如未储存,则选取每一资料闩锁单元的其中一个闩锁器来储存该列地址所定址的记忆贮存格的资料;一后级行解码器将地址线中的其余行地址予以解码,以自该复数个资料闩锁单元中获得该地址线所定址的记忆贮存格的资料。
其中该行地址具有NC个位元,而由前级行解码器所解码的部分行地址具有NC1个位元,而该资料闩锁单元的个数为2NC2个,当中,NC2=NC-NC1。
其中该比较选取逻辑于选取资料闩锁单元的闩锁器来储存记忆贮存格的资料时,是优先选取未存有资料的资料闩锁单元的闩锁器。
其中该比较选取逻辑于选取资料闪锁单元的闩锁器来储存记忆贮存格的资料时,是按照闩锁器在资料闩锁单元排列顺序予以选取。
其中该比较选取逻辑于选取资料闩锁单元的闩锁器来储存记忆贮存格的资料时,如所选取的资料闩锁单元的闩锁器已存有资料时,则将该已存在的资料予以替代。
由于本发明构造新颖,能提供产业上利用,且确有增进功效,故依法申请专利。
为使贵审查委员能进一步了解本发明的桔构、特征及其目的,兹附以图式及较佳具体实施例的详细说明如后,其中:
图1是依据本发明的加速资料存取的存储器结构的一较佳实施例的功能方块图。
图2是图1中的资料闩锁单元的结构图。
图3是依据本发明的加速资料存取的存储器结构的另一较佳实施例的功能方块图。
图4是显示使用快取存储器的习知存储器架构。
图5是显示使用页存取模式的习知存储器架构。
有关本发明的加速资料存取的存储器结构的一较佳实施例,请先参照图1所示,其主要包括存储器单元11、行解码器12、列解码器13、比较选取逻辑14及复数个资料闩锁单元15,其中,该存储器单元11是为一由复数个呈阵列排列的记忆贮存格(Memory Cells)所构成,并藉由NA个位元的地址线16以对该存储器单元11予以定址而存取特定的记忆贮存格。
该地址线16是被区分为NR个位元的列地址线161及NC个位元的行地址线162,其中NA=NR+NC,而列地址线161是由该列解码器13予以解码,而该列解码器13的解码输出即对存储器单元11的记忆贮存格予以定址,藉以选取一特定列的记忆贮存格,而使其资料内容可自存储器单元11的资料线112存取。
该存储器单元11的每一资料线112则连接至该复数个资料闩锁单元15之一,以当由列解码器13所定址的记忆贮存格的内容未存于该复数个资料闩锁单元15中时,将所定址的记忆贮存格的内容储存于该复数个资料闩锁单元15中,而该每一资料闩锁单元15的结构,则请参照图2所示,是由N个闩锁器(Latch)L1-LN所构成,其中N≥2,而每一资料闩锁单元15的输入151及输出152是相应切换于同一闩锁器,因此,由所有资料闩锁单元15的任一闩锁器Li(1≤i≤N)的组合即可用以储存一列的记忆贮存格的内容,而每一资料闩锁单元15具有N个闩锁器,故可储存N列的记忆贮存格的内容,又于本实施例中,每一列记忆贮存格的个数为2NC个,因此,该存储器单元11的行的资料线112即为2NC位元,而所需的资料闩锁单元15的个数亦为2NC个。
该比较选取逻辑14则依据列地址线161的内容以比较判断由该列地址线161所定址的记忆贮存格的资料是否已存于该复数个资料闩锁单元15,如未储存,则切换每一资料闩锁单元15的输出151、输入152至其中一个闩锁器来储存该列地址线161所定址的记忆贮有格的资料,而若已存在,则不必对列地址161解码,而可直接切换资料闩锁单元15的输出151、输入152至该已存有所定址的资料的闩锁器。又该比较选取逻辑14于选取资料闩锁单元15的闩锁器来储存记忆贮存格的资料时,是优先选取未存有资料的闩锁器,而当所有闩锁器皆已储存资料时,则可按照闩锁器在资料闩锁单元15排列顺序予以选取,并将该已存在的资料予以替代。
该行解码器12是与该复数个资料闩锁单元15的输出152相连,并将地址线16中的行地址线162予以解码,以选取该复数个资料闩锁单元15的一输出152,而获得该地址线16所定址的记忆贮存格的资料。
由前述的说明可知,本发明的加速资料存取的存储器结构是在行解码器12解码之前加入资料闩锁单元15,而每一资料闩锁单元15具有N个闩锁器,因此可以同时储存N笔同列的记忆贮存格的资料,放在切换程序、资料时,所欲存取者都有机会是属于已存在于资料闩锁单元15之中,因而在资料存取模式穿插的情况下,亦可以有很高的同列(即页存取模式的同页)存取机率,故能确实加速资料存取的速度,亦可解决快取中所有指令在第一次提取皆会较慢的情形,且由于在同列或资料已闩锁的情形下,资料的读取已不须对存储器单元11内的电路做充、放电的动作,因此可以大量减少电源的消耗。
又由于在存储器线路的布局中,行的资料线通常是相当密集(于本实施例中,行的资料线数目为2NC),且在每一行皆加入资料闩锁单元15会增加硬件的空间及成本,因此,在图3所示的另一实施例中,其是先以一前级行解码器321将NC位元的行地址线362中的部分NC1位元行地址线3621予以解码,以对已由列解码器33所定址的记忆贮存格予以定址,在部分解码之后,该前级行解码器321的输出再依据比较选取逻辑34对列地址线361及该部分行地址线3621的内容的比较结果,而选择性地将由该列解码器33及该前级行解码器321所予以定址的记忆贮存格的资料予以存入每一资料闩锁单元35的其中一个闩锁器,其工作方式相同于前一实施例,最后,再由一后级行解码器322将地址线36中的其余NC2位元的行地址线3622予以解码,而自该复数个资料闩锁单元35中获得该地址线36所定址的记忆贮存格的资料,以此实施例的结构,由于行地址线362是先经过部分解码,因此,所需的资料闩锁单元35的个数仅为2NC2个(NC2=NC-NC1),故可大幅降低硬件成本及减少电路布局所需的空间。
前述的实施例如以256K位元的存储器为例,其记忆贮存格可以分为512列及512行,而地址线36则为9条行地址线361及9条列地址线362(即NA=18,NR=9,NC=9),如果使用的每一资料闩锁单元35的闩锁器的个数为2(即N=2),并对5条行地址作部分解码(即NC1=5,而NC2=NC-NC1=4),所需的资料闩锁单元35的个数为24=16,而总共加入的闩锁器的个数为N×I6=32个。又就效能而言,一般存储器的存取时间为100ns,闩锁器的存取时间则仅为5ns,而资料及指令的存取有15/16的存取机率为已存于闩锁器中,则所需要的平均存取时间为100×1/16+5×15/16=10.93ns,因此,相较于原本的100ns的存取时间可有9.2倍的速度增进。
综上所陈,本发明无论就目的、手段及功效,在在均显示其迥异于习知技术的特征,为存储器结构设计上的一大突破,恳请贵审查委员明察,早日赐准专利,以嘉惠社会,实感德便。惟应注意的是,上述诸多实施例仅是为了便于说明而举例而已,本发明所主张的权利范围自应以申请专利范围所述为准,而非仅限于上述实施例。