用于跨边界存储器访问的方法及装置的制作方法

文档序号:6749898阅读:192来源:国知局
专利名称:用于跨边界存储器访问的方法及装置的制作方法
技术领域
本发明总体上涉及存储器领域。具体而言,本发明涉及到跨边界(off boundary)存储器访问。
背景技术
存储器集成电路器件广为人知。存储器单元可以是只读的(ROM)、可随机访问的(RAM)、静态的(SRAM)、半静态的、动态的(DRAM)、可编程的(PROM、EPROM、EEPROM)、易失性的、非易失性的(NVRAM)、或者是属于其它存储器类型。用于构成存储器单元的晶体管集成电路技术同时也可以变化。所使用技术的示例性类型包括NMOS、PMOS、CMOS、双极型、双CMOS、或者,其它电路或技术类型。
典型地,存储器单元被安排在存储器单元的阵列或者矩阵之中,并且被用行和列地址译码器访问。行地址译码器一般会在字线上生成一信号,以选择存储器单元的一所需行。然后,列译码器选择在该行中的某些存储器单元的所需位线。依据是否需要写或者读操作,数据分别被写入所选择的存储器单元,或者被从所选择的存储器单元中读出。存储器单元的阵列或矩阵等的组织可以变化。对于一给定容量的或者整个数目的存储器单元来说,它们可以被排列成使得能够访问N个W位的字。对于每个地址,访问一W位的字,能提供数据的W位。示例中的字宽W包括1位、4位、8位、16位、32位以及64位。字的个数N则依赖于所需的容量。字的个数的例子包括1024(1K)字;4096(4K)字,1兆(1M)字等。于是,存储器按位的总容量为字的个数与每个字的位数之积(N×W)。
根据所述存储器的组织,某种类型的地址边界通常与该存储器相关联。典型地,地址的上界位或者多个位就建立了一地址边界。例如,一些存储器设备被安排成用于提供页式寻址或者包括了用于提供页式寻址的电路。一旦一特定页被访问,访问相同页的地址中的存储器单元典型地就更快了。然而,如果由于寻址一不同页而跨越了所述页的边界,则在新页中的初始访问则较慢。根据存储器的类型,地址边界可以小于页。跨越边界的访问时间在存储器的选择上通常是重要的性能考虑。
存储器集成电路器件的性能,包括功率和速度,在电路、组织和容量的选择上通常是很重要的。被集成到其它类型集成电路中的存储器性能也要重点考虑。当今,一些集成电路,包括微处理器集成电路、微型计算机集成电路、专用集成电路、定制的集成电路、数字信号处理集成电路以及专用信号处理集成电路等,通常在其中具大量的存储器电路块。由于存储器在这些集成电路中已变得大得多,所有存储器的性能也就变得很重要。


图1为根据本发明的一个实施例的专用信号处理器(ASSP)的框图。
图2为根据在ASSP中的一个本发明实施例的多个核心处理器之一的实例的框图。
图3A为描述了根据本发明一个实施例的跨边界访问存储器的功能的图。
图3B为描述了根据本发明的一个实施例的局部数据存储器的程序员视图的图。
图3C为描述了根据本发明的一个实施例的从硬件设计师角度的局部数据存储器的图。
图4为描述了根据本发明的一个实施例的跨边界访问局部数据存储器的图。
图5A为描述了根据本发明的一个实施例的静态存储器单元的图。
图5B为描述了根据本发明的一个实施例的动态存储器单元的图。
图6为描述了根据本发明的一个实施例的跨边界行地址译码器的框图。
在所述附图中相似参考数字和名称指明那些提供相似功能的相似元件。在参考指示数字之后的字母代表具有该参考指示数字的元件的实例。
详细说明在下列详细说明中,阐明了大量的具体细节以便于提供对本发明的彻底理解。但是,本发明的实施例在没有这些具体细节的情况下亦可加以实践。在其它实例中,公知的方法、步骤、部件及电路未被详细描述,以免无不必要地混淆本发明的各方面。进一步来说,本发明将在特定的实施例中加以描述,但是可以采用硬件、软件、固件或者它们的组合加以实现。
本发明提供用于跨边界存储器的方法及装置,以便实现跨边界存储器的访问。在本发明的一个实施例中,跨边界存储器包括具有多个右存储器行的右存储器阵列,以及具有多个左存储器行的左存储器阵列。这样就构成了具有多条行线的存储器,其中每条行线都分别地具有右存储器行及左存储器行。跨边界行地址译码器被耦合于所述右、左存储器阵列这两者,并且能够执行跨边界存储器访问,此项访问包括在一个存储器访问周期内基本同时地从一行线的右或左存储器行之一和从一相邻行线的左或右存储器行之一访问所需的多个存储器地址。
因此,多个数据字可被在一个存储器访问周期内基本同时地从存储器中的任一点访问。这样就避免了如下的先前存储器的限制,所述先前存储器在一跨边界存储器被要求时常常需要两个存储器访问周期(即,要求一个额外的重对齐指令)。
此外,用于跨边界存储器的本发明与用于执行数字信号处理指令的核心信号处理器200的体系结构一起工作。如图2所示,在一个实施例中,核心信号处理器200具有四个信号处理单元300A-D,它们通过数据总线203耦合于局部数据存储器202。通过使用根据本发明的一个实施例的跨边界存储器202,数据就能更有效地馈送到信号处理单元300。例如,四个数据字可被一次从跨边界存储器202中访问,并且每个数据字能够同时地馈送到信号处理单元300,以进行数字信号处理。如果数据字的开始地址要求跨边界存储器访问,则因为四个数据字可被在一个存储器周期内基本同时地从跨边界局部存储器访问,所有这样就不会明显地减慢四个信号处理器的操作。以此方式,用于跨边界存储器的本发明通过这四个信号处理单元增加了对被访问数据的数字信号处理(DSP)指令的执行效率。
现参见图1,它描述了专用信号处理器(ASSP)150的框图。在ASSP150的中心有四个核心处理器200A-200D。核心处理器200A-200D中的每一个都分别耦合于数据存储器202A-202D及程序存储器204A-204D。核心处理器200A-200D中的每一个都通过多通道串行接口206、多通道存储器移动引擎208、缓冲存储器210以及数据存储器202A-202D与外部通道进行通信。ASSP 150进一步包括了外部存储器接口212,以便耦合到可选的外部局部存储器。ASSP 150包括外部主机接口214,以连接于外部主机处理器。在ASSP 150中还包括定时器216、时钟发生器及锁相环218、杂项控制逻辑220、以及用于边界扫描测试的连接测试动作组(JTAG)测试访问端口222。ASSP 150进一步包括了微控制器223,以便执行核心处理器200A-200D的进程调度以及在ASSP内数据移动的协调;ASSP还包括中断控制器224,以协助ASSP150的控制和中断处理。
参见图2,它描述了核心处理器200的框图,核心处理器200耦合于它的相应数据存储器202和程序存储器204。核心处理器200是对应于核心处理器200A-200D中的每一个的框图。数据存储器202和程序处理器204是指数据存储器202A-202D和程序存储器204A-204D的对应实例。核心处理器200包括四个信号处理单元SP0 300A、SP1300B、SP2 300C和SP3 300D。核心处理器200进一步包括精简指令集计算机(RISC)控制单元302以及流水线控制单元304。信号处理单元300A-300D对数据执行信号处理任务,RISc控制单元302及流水线控制单元304执行与由SP300A-300D执行的信号处理功能相关的控制任务。RISC控制单元302所提供的控制在流水线级与SP300A-300D相耦合,以产生使信号处理单元300的利用率保持在一个很高级别的紧密集成的核心处理器200。此外,信号处理单元300A-300D均经由数据总线203连接于数据存储器202、相互间连接、以及连接到RISC302,以便进行数据(例如,操作数)的交换。
所述信号处理任务在信号处理单元300A-300D内的数据通路上加以执行。DSP算法的性质是这样的,它们本身是对数据流进行的向量操作,它们具有最小的时间局部性(数据重用)。这样,请求调页的数据高速缓冲存储器不被使用,因为它不会发挥良好功效并且会降低操作性能。因此,信号处理单元300A-300D被允许直接从数据存储器202访问向量元素(操作数),而不会有将大量的加载和存储指令发到存储器的开销,产生很有效的数据处理。于是,具有可扩充成40位指令字的20位指令字的本发明的指令集体系结构,通过使ISA适配于DSP算法结构,实现了比使用256位或更高位的指令宽度的VLIW体系结构的更好的效率。被适配的ISA导致可扩展到更高计算需求的很紧凑且功耗低的硬件。ASSP能容纳的操作数在数据类型和数据大小上是变化的。数据类型可为实数或复数,整数值或分数值,具有含不同大小的多个元素的向量。在优选实施例中的数据大小为64位,但采用正确的指令编码可容纳更大的数据大小。
图3A为描述了根据本发明的一个实施例的跨边界访问存储器之功能的图。现参见图3A,它描述了与局部数据访问存储器202(图2)的字相关联的地址。每个字都可以有W位。在一个实施例中,字为16位宽。但其它字的大小也是可以的,如8位、32位、64位等等。地址是以作为该存储器中的第一个字的16进制地址00(00h)开始的16进制形式显示的。此外,局部数据存储器202被划分成右存储器阵列404R和左存储器阵列404L。
根据本发明的一个实施例的跨边界行地址译码器402被耦合到右存储器阵列404R和左存储器阵列404L。跨边界行地址译码器402把局部数据存储器202划分成对应左存储器阵列(例如左存储器行线)和右存储器阵列404R(例如右存储器行线)的行线(有时也称为字线),这将在以后进行讨论。每条行线均分别包括右存储器行及和左存储器行。行线分别在每个存储器行的左远端和右远端标示(例如,右字线(RWL1...RWLN)、左字线(LWL1...LWLN))。
在图3A中描述的局部数据存储器202横跨8列,但可被扩展成具有在每行中都可被访问的其它数目的列(如,在对应列中的每个字)。对于每个列,分别都有被选择来选择每个字的位线的指示符(如,左字位列(LWBC)和右字位列(RWBC))。例如,为选择16进制字地址00(00h),左字位列1(LWBC1)被选择,同时左行线1(LWL1)也被选择。作为访问地址04h的字的另一个例子,右行线1(RWL1)被选择且右字位列1(RWBC1)也被选择。
为访问一个以上的字,一、二、三或者四个字的序列被选择,以便以开始地址开始访问。跨边界行地址译码器接收开始地址及序列号,以表示多于一、二、三或者四个字,它们将被基本同时地访问。如果附加字被提供,那么其它译码就被提供并且附加字序列能够被读取或者写入到存储器202中。
确定对所需多个存储器地址的存储器访问是否为跨边界存储器访问依赖于许多因素,这些因素包括对应待访问字的数目的序列号和开始地址。通常,跨边界访问发生在开始地址起始于右字位列2(RWBC2)或者更大并且序列号指示的字在被相邻左字线(LWL)访问的行(如更高或更低的行)中时。
例如,对于07h的开始地址,右字线1(RWL1)被使能,且对应右字位列4(RWBC4)的位线被使能,以选择地址07h。使用二、三或四的序列号,附加地址就可分别选择数据地址08h、09h和0Ah。例如,如果序列号是2,则在地址07h和08h的数据将被访问。这样就请求了跨边界访问。在地址08h的数据通过使能左字线2(LWL2)和左字位列1(LWBC1)加以选择。为访问在地址08h的数据,左字线2(LWL2)被接通而左字线1(LWL1)被断开。因此,在此实例中,局部存储器202在近似一个存储器周期内基本同时地访问了在地址07h和08h的这两个数据组。
作为非跨边界访问的例子,考虑地址0Bh是开始地址且序列号是4的这一种情况。在此情形中,在地址0Bh、0Ch、0Dh和0Eh的数据将作为一组被一起访问。此情形中,不存在跨边界存储器访问,而且,被类似定位的字线,左字线2(LWL2)和右字线2(RWR2)被一起访问。位线通过经由左读出放大器阵列和右读出放大器阵列来激活适当列的寻址(如,左和右字位列)加以选择,如将被讨论的。在图3A中,这会是LWBC4、RWBC1、RWBC2和RWBC3。
如果用序列号4作为对能被选择的字序列的号的限制,则导致LWBC1-LWBC4以及RWBC1列选择的开始地址就不产生跨边界存储器访问。在另一方面,如果序列号合适,则导致字位列RWBC2、RWBC3和RWBC4被选择的开始地址,就能够产生跨边界存储器访问。正如以前所讨论的那样,当对应从左到右选择的每个字的地址产生从较低右字线到接着的较高左字线的移动之时,跨边界存储器访问发生。或者,在行地址译码从右到左(而不是从左到右)情形,相反的情况就会发生,其中操作会从较高的右字线向所述接着的较低左字线移动。另外,如若为这种情况,列译码就会被交换。
图3B为描述了根据本发明的一个实施例的局部数据存储器的程序员视图的图。参见图3B,局部数据存储器202可由程序员从开始后的地址W1访问。每个字都是W位宽,并且地址在从字W1到字WN的线性逻辑地址空间上以线性方式进展。不幸的是,用硬件以这样的方式提供线性逻辑存储器地址空间是困难的。
图3C为描述了根据本发明的一个实施例的从硬件设计师角度的局部数据存储器202的图。参见图3c,程序员数据的开始地址通常以向后一偏移量开始,从而使得格1(01)被定位在存储器内部中的某处。存储器访问以W1、W2、W3和W4的顺序向下一个字进展。然而,存储器访问并不是以线性方式来这样做的,因为存储器访问必须从存储器中的字位置W3转移到存储器中开始位置W4,由此就改变了行地址。每次下一个字的存储器访问要求从一行改变到下一行之时,都发生跨边界访问。这通常会要求一个附加周期来访问下一行。举例来说,如果所有四个字都需要被同时访问,例如W1、W2、W3和W4,则正常情况下就会要求至少两个访问周期。第一个访问能够产生对应字W1、W2和W3的行地址。下一个周期会被要求以改变到对字W4的行访问。理想情况是,用能够在一个周期内基本上同时访问所有四个字的跨边界数据存储器来避免所述附加访问周期(例如,重对齐指令),如将在下面讨论的。
图4为描述了根据本发明的一个实施例的跨边界访问局部数据存储器的图。参见图4,跨边界访问局部数据存储器202包括跨边界行地址译码器402、具有多个左存储器行的左存储器阵列404L、具有多个右存储器行的右存储器阵列404R、左读出放大器阵列/驱动器406L、右读出放大器阵列/驱动器406R、左锁存器阵列408L、右锁存器阵列408R、以及列选择译码器410。行线,或者术语称为的字线分别包括右存储器行和左存储器行。
列选择译码器410接收一开始地址,以寻址存储器阵列404L和/或404R中的一序列字。
跨边界行地址译码器402被耦合于右和左存储器阵列,并且接通对应左存储器阵列404L和右存储器阵列404R的合适的字线/行。在左存储器阵列中的字线被标记为左字线1(LWL1)-左字线N(LWLN)而在右存储器阵列404R中的字线被标记为右字线(RWL1)-右字线N(RWLN)(亦参见图3A)。在左存储器阵列和右存储器阵列的每一个中的存储器单元内的数据通过由出现在所述阵列的每个中的列的位线加以访问(举例来说,如图3A中的LWBC1-LWBC4和RWBC1-RWBC4)。对应每个字的位的位线可以如左存储器阵列404L中所示那样分组,或者如右存储器阵列404R中所示那样被扩展跨越整个存储器阵列。左存储器阵列404L和右存储器阵列404R包括用于存储对应数据存储器202的数据的存储器单元。每个存储器单元都接收依赖于存储器单元类型的字线和位线。
左和右读出放大器阵列/驱动器406L和406R,根据读/写信号(R/W)并且结合被访问的存储器单元,或是从存储器单元读取数据或是把数据写入存储器单元。左和右锁存器阵列408L和408R或是把从存储器202读出的数据写到数据总线203上,或是从数据总线203读取数据以写到存储器202。列选择译码器410接收开始地址的最低有效位,以便于适时接通读出放大器阵列并接着锁存数据信号。
列选择译码器410仅仅接通那些为读出适当序列数据所必须的读出放大器,以便降低功耗。列选择译码器410相互独立地驱动左读出放大器406L和右读出放大器406R,以提供对跨边界存储器访问的支持。
列选择译码器410还接收序列号。该序列号代表要以开始地址为开始访问的、按照顺序的字的数目。在一个实施例中,存储器为2K×16位。如果每个存储器阵列以4为宽度,则在那种情况下的阵列为256行高×128位宽。另外,每个字线能够一次访问四个字,或者4×16位,即64位。
跨边界行地址译码器402通过使能一行的右字线而基本同时地使能不同行的左字线来提供对跨边界存储器访问的支持。例如,跨边界行地址译码器402使能右字线1(RWL1)以访问右存储器阵列404R中某些数据位置,而基本同时地使能左字线2(LWL2)以便在近似一个存储器周期内寻址所需的接着的更高数据字。
图5A为描述了根据本发明的一个实施例的静态存储器单元的图。图5B为描述了根据本发明的另一个实施例的动态存储器单元的图。以下参考图5A和图5B,图示并讨论示例性的存储器阵列404L和404R的存储器单元。
图5A中的静态存储器单元包括第一开关501L、第二开关501R以及一对交叉耦合的反相器503和504。开关501L和501R被行线506控制,以允许访问存储在所述对反相器503、504之中的数据。开关501L分别在一侧耦合于正极位线510,和在相对侧耦合于并列交叉耦合的反相器的开和关位侧。反之,开关501R分别在一侧连接到负极位线NBL 511,和在相对侧连接到并列且交叉耦合的反相器的开和关位侧。在图5A中描述的静态存储器单元能够接收在正极位线PBL 510和负极位线NBL 511之间的差动信号。所述对交叉耦合反相器503和504能够把差动信号平稳过渡(ride out)到正极位线PBL 510和负极位线NBL 511之上。每个静态存储器单元在数据被交叉耦合的反相器503和504存储意义上是静态的,并且在其被访问时,典型地不会遭受破坏。
图5B为图示了根据本发明的另一个实施例的动态存储器单元的图。该动态存储器单元包括开关521,以及耦合于开关521的电容器523。开关521由行线526所控制。该开关在一侧耦合于单条位线530,并且在相对侧耦合于电容器523的一个极片。动态存储器单元因其较少的部件而远比图5A的静态存储器单元要小。但是,在存储器被泄漏到位线530时,通常存储在电容器523上的电荷被破坏。在此情形中,一个颠簸周期也许是必要的,以便把先前泄漏的数据写回到所述单元,从而将它再存储一次。
在这些存储器单元的每一个中,行或格线通常都在单元的行中,并且位线都处在单元的列中。为形成存储器单元的字,它们中的许多可以在一行中被分组在一起。来自存储器单元的每个位线都耦合到左或右读出放大器阵列406L或406R之中。
图6为示出了根据本发明的一个实施例的跨边界行地址译码器402的框图。参见图6,跨边界行地址译码器402接收对应需要被从局部数据存储器202中访问的字的序列号和开始地址。开始地址被提供为地址A0-AN。跨边界行地址译码器402包括跨边界检测器602、多个第一字线缓冲器603A-603N和多个第二字线缓冲器604A-604N、N个行译码器605A-605N、以及N个多路复用器608A-608N。
N个第二字线缓冲器604A-604N缓冲来自右存储器阵列404R的行线的加载。N个第一字线缓冲器603A-603N缓冲来自左存储器阵列404L的行线的加载。
行译码器605A-605N中的每一个都接收开始地址。每个行译码器都译码对应每条行线中所包含的那些字的唯一地址。每一行译码器耦合到行线的对应的左和右存储器行。例如,行译码器605A将生成一输出信号(例如,字线信号),以响应00h到07h的开始地址(参见图3A)。每个行译码器都生成一输出信号,以响应于具有各自开始地址的字的范围。一次,只有行译码器605A-605N中的一个生成字线信号。
提供多路复用器608A-608N以从由对应的行译码器原始地(例如,从右字线到接着的更高的左字线)选择的字线(即,行)中选择不同的字线(即,行)。除了多路复用器608A以外,每个多路复用器608B-608N都接收来自各较低的行译码器的较低行译码器信号以及来自其自己的行译码器的其自身的行译码器信号作为输入。
例如,多路复用器608B接收来自行译码器605A的字线1信号(对应行1)以及来自行译码器605B的字线2信号(对应行2)。应注意到,多路复用器608A接收接地作为一个输入并接收来自行译码器605A的字线1信号。在此情形中,多路复用器608A在其自己的行译码器信号或者“接地”之间作出选择,以断开耦合于左行线1的那些开关。另外,在第二字线即左字线2(LWL2)被选择以便LWL1其后接地的情形中,多路复用器608A输入组中之一接地。
每个多路复用器608A-608N都接收一个跨边界信号OBS 610来作为其控制输入。跨边界信号OBS 610由跨边界检测器602所生成以响应开始地址和序列号。跨边界检测器还响应存储器阵列的组织尤其是跨越左和右存储器阵列的每个的字的数目。即,在跨边界检测器中的逻辑适用于存储器阵列的组织。知道开始地址的跨边界检测器602确定开始地址从哪列起始,以及确定该序列号是否要求使能其它字可被定位的另一个较高的字线。如果字的序列和开始地址要求使能另一个更高的字线,那么,跨边界信号就被生成,并且多路复用器受到适当控制,以便正控制右存储器阵列的较低字线被耦合进左存储器阵列的上部的下一较高字线中。以此方式,跨边界后面地址译码器402提供跨边界存储器访问。
结合图3A来参见图6,为了解释的目的,现在讨论跨边界行地址译码器402的操作。例如,假定,跨边界行地址译码器402,包括跨边界检测器602,接收对应于字地址07h的开始地址(如,提供为地址A0-AN)和序列号4,这样就请求所需的多个存储器地址07h、08h、09h和0Ah。
每个行译码器605A-605N都接收这个开始地址。在本实例中,行译码器605A,它生成输出信号(例如字线信号)以响应于从00h到07h的开始地址,生成对应存储器地址07h的输出信号。对于开始地址07h,行译码器605A使能右字线1(RWL1)和对应右字位列4(RWBC4)的位线,以选择右存储器阵列404R中的地址07h。
因为序列号4已被选择,从而使得在地址08h、09h及0Ah的数据已被选择,而且由于07h处于右字线1(RWL1)的右远端,所以跨边界检测器602确定需要跨边界访问。因此,跨边界检测器生成跨边界信号OBS 610以作为至多路复用器605A-605N的控制输出。尤其是,在此例中的跨边界信号OBS 610控制多路复用器608A和608B,以便于在数据地址07h被访问之后,多路复用器608A被接地且多路复用器608B被使能以便选择不同的行线-左字线2(LWL2)。于是,数据能被从数据存储器202的右字线1(RWL1)访问到下一更高的左字线2(LWL2)。
多路复用器608B使能行译码器605B以传送输出信号(如字线信号)到左存储器阵列404L,从而访问存储器地址08h、09h和0Ah。对于地址08h,行译码器605B使能要被选择的左字位列1(LWBC1)和左字线2(LWL2)。此外,对于地址09h,行译码器605B使能要被选择的左字位列2(LWBC2)和左字线2(LWL2),以及对于地址0Ah来说,行译码器605B使能要被选择的左字位列3(LWBC3)和左字线2(LWL2)。因此,跨边界检测器允许在一个存储器周期内基本上同时对在地址07h、08h、09h和0Ah的数据组进行存储器访问。
因而,能在一个存储器周期内基本上同时地从存储器中的任何一点来访问多个数据字。这就避免了当要求访问跨边界存储器时通常需要两个存储器访问周期(即,要求一个额外的重对齐指令)的先前存储器的局限。
此外,用于跨边界存储器的本发明与用于执行数字信号处理指令的公开核心信号处理器200体系结构一起工作。如图2所示,在一个实施例中,核心信号处理器200具有通过数据总线203耦合于局部数据存储器202的四个信号处理单元300A-D。通过使用根据本发明的一个实施例的跨边界存储器202,数据能够被更加有效地馈送给信号处理单元300。例如,四个数据字能够一次被从跨边界存储器202访问,并且每个数据字都能同时被馈送到信号处理单元300,以用于数字信号处理。如果数据字的开始地址要求跨边界存储器访问,则因为四个数据字可被在一个存储器周期中基本上同时地从跨边界局部存储器加以访问,所以这样就不明显降低四个信号处理器的操作。以此方式,用于跨边界存储器的本发明通过四个信号处理单元就增加了对被访问数据的数字信号处理(DSP)指令执行的效率。
尽管某些实施例在附图中已被描述及示出,但是应该理解这些实施例只是对本宽的发明的说明而不是限制,并且本发明并不限于图示和描述的具体结构和排列,因为本领域的普通技术人员会想到各种其他的修改。
另外,虽然本发明已经在特定实施例中描述了,但是它可以采用硬件、软件、固件或其组合加以实现,以及能在系统、子系统、部件或其子部件中来加以使用。当以软件实现时,本发明的元件基本上是执行必要任务的代码段。所述程序或代码段能被存储在处理器可读介质中或者能由在传输介质或者通信链路之上的载波中所实施的计算机数据信号来传送。该“处理器可读介质”可以包含能存储或传送信息的任一介质。处理器可读介质的实例包括电子电路、半导体存储器设备、ROM、闪速存储器、可擦除ROM(EPROM)、软磁盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路等等。计算机数据信号可以包括能在传输介质上传播的任何信号,此传输介质诸如是电子网络通道、光纤、空气、电磁、RF链路,等等。代码段可经由诸如因特网、内联网等等的计算机网络加以下载。在任何情形中,本发明不应该按照由这些实施例所限制的那样理解,而应根据以下权利要求来加以理解。
权利要求
1.一种提供跨边界存储器访问的存储器,包括具有多个右存储器行的右存储器阵列;具有多个左存储器行的左存储器阵列;多条行线,每一个均分别具有右存储器行和左存储器行;以及耦合于所述右和左存储器阵列的跨边界行地址译码器,所述跨边界行地址译码器用于执行跨边界存储器访问。
2.如权利要求1所述的存储器,其中,所述存储器为跨边界存储器。
3.如权利要求1所述的存储器,其中,所述跨边界存储器访问包括从一行线的右或左存储器行之一以及从一相邻行线的左或右存储器行之一,访问所需的多个存储器地址。
4.如权利要求1所述的存储器,其中,所述跨边界存储器访问被在一个存储器访问周期内执行。
5.如权利要求1所述的存储器,其中,所述跨边界行地址译码器根据开始地址和序列号选择适当的右和左存储器行,以访问所需的多个存储器地址。
6.如权利要求1所述的存储器,还包括,列选择译码器,用于根据开始地址和序列号选择右和左存储器行的适当位列,以访问所需的多个存储器地址。
7.如权利要求1所述的存储器,其中,所述跨边界行地址译码器进一步包括多个行译码器,每一个行译码器都耦合于一行线的相应的左和右存储器行,所述行译码器用于对地址译码,以访问在所述行线的相应左和右存储器行内的所需的多个存储器地址数据。
8.如权利要求7所述的存储器,其中,每一个行译码器都耦合于至少一个相邻行译码器。
9.如权利要求8所述的存储器,其中,每一个行译码器都通过多路复用器耦合到所述至少一个相邻行译码器。
10.如权利要求9所述的存储器,其中,所述跨边界行地址译码器进一步包括耦合于所述多路复用器的每一个的跨边界检测器。
11.如权利要求10所述的存储器,其中,所述跨边界检测器根据开始地址和序列号确定是否需要跨边界存储器访问,并且如果需要,所述跨边界检测器生成用于控制所述多路复用器的跨边界信号。
12.如权利要求11所述的存储器,其中,所述跨边界信号控制所述多路复用器的原因在于,在访问来自由行译码器所选择的第一行线的右或左存储器行之一的所述存储器地址之后,接着相邻行译码器访问来自相邻行线的左或右存储器行之一的所述适当的存储器地址。
13.一种信号处理器,包括至少一个信号处理单元,所述至少一个信号处理单元通过数据总线耦合于跨边界存储器,所述跨边界存储器包括具有多个右存储器行的右存储器阵列;具有多个左存储器行的左存储器阵列;多条行线,每一个均分别具有右存储器行和左存储器行;以及耦合于所述右和左存储器阵列的跨边界行地址译码器,所述跨边界行地址译码器用于执行跨边界存储器访问。
14.如权利要求13所述的信号处理器,其中,所述信号处理器是用于执行数字信号处理指令的数字信号处理器。
15.如权利要求13所述的信号处理器,其中,所述跨边界存储器访问包括从一行线的右或左存储器行之一以及从一相邻行线的左或右存储器行之一,访问所需的多个存储器地址。。
16.如权利要求13所述的信号处理器,其中,所述跨边界存储器访问被在一个存储器访问周期内执行。
17.如权利要求13所述的信号处理器,其中,所述跨边界行地址译码器根据开始地址和序列号选择适当的右和左存储器行,以访问所需的多个存储器地址。
18.如权利要求13所述的信号处理器,进一步包括列选择译码器,用于根据开始地址和序列号选择右和左存储器行的适当位列,以访问所需的多个存储器地址。
19.如权利要求13所述的信号处理器,其中,所述跨边界行译码器进一步包括多个行译码器,每一个行译码器都耦合于一行线的相应的左和右存储器行,所述行译码器用于对地址译码,以访问在所述行线的相应左和右存储器行内的所需的多个存储器地址数据。
20.如权利要求19所述的信号处理器,其中,每一个行译码器都耦合于至少一个相邻行译码器。
21.如权利要求20所述的信号处理器,其中,每一个行译码器都通过多路复用器耦合到所述至少一个相邻行译码器。
22.如权利要求21所述的信号处理器,其中,所述跨边界行地址译码器进一步包括耦合于所述多路复用器的每一个的跨边界检测器。
23.如权利要求22所述的信号处理器,其中,所述跨边界检测器根据开始地址和序列号确定是否需要跨边界存储器访问,并且如果需要,所述跨边界检测器生成用于控制所述多路复用器的跨边界信号。
24.如权利要求23所述的信号处理器,其中,所述跨边界信号控制所述多路复用器的原因在于,在访问来自由行译码器所选择的第一行线的右或左存储器行之一的所述存储器地址之后,接着相邻行译码器访问来自相邻行线的左或右存储器行之一的所述适当的存储器地址。
25.一种在存储器中提供跨边界存储器访问的方法,所述方法包括把存储器分成具有多个右存储器行的右存储器阵列以及具有多个左存储器行的左存储器阵列;定义多条行线,每一个均分别具有右存储器行和左存储器行;以及通过访问来自一行线的右或左存储器行之一和来自一相邻行线的左或右存储器行之一的所需的多个存储器地址,来执行跨边界存储器访问。
26.如权利要求25所述的方法,其中,所述跨边界存储器访问被在一个存储器访问周期内执行。
27.如权利要求25所述的方法,进一步包括根据开始地址和序列号选择适当的右和左存储器行,以访问所需的多个存储器地址。
28.如权利要求25所述的方法,进一步包括根据开始地址和序列号选择右和左存储器行的适当位列,以访问所需的多个存储器地址。
29.如权利要求25所述的方法,进一步包括对地址译码,以访问在一行线的相应的左和右存储器行之中的所需的多个存储器地址数据。
30.如权利要求29所述的方法,进一步包括通过多路复用器把每条行线都耦合到至少一个相邻行线。
31.如权利要求30所述的方法,进一步包括根据开始地址和序列号确定是否需要跨边界存储器访问,并且如果需要,生成用于控制所述多路复用器的跨边界信号。
32.如权利要求31所述的方法,其中,所述跨边界信号控制所述多路复用器的原因在于,在访问来自第一行线的右或左存储器行之一的所述存储器地址之后,接着访问来自相邻行线的左或右存储器行之一的所述适当的存储器地址。
全文摘要
所公开的是一种用于跨边界存储器的方法及装置,以便提供跨边界存储器访问。所述跨边界存储器包括具有多个右存储器行的右存储器阵列,以及具有多个左存储器行的左存储器阵列。这样就构成了具有多条行线的存储器,每条行线都分别具有右存储器行及左存储器行。一跨边界行地址译码器被耦合于所述右、左存储器阵列这两者,并且能够执行跨边界存储器访问,此项访问包括在一个存储器访问周期内基本同地访问来自于一行线的右或左存储器行之一以及来自于一相邻行线的左或右存储器行之一的所需的多个存储器地址。
文档编号G11C8/00GK1503975SQ02808743
公开日2004年6月9日 申请日期2002年2月20日 优先权日2001年2月24日
发明者T·S·恩古延, K·加纳帕蒂, R·卡纳帕蒂皮莱, T S 恩古延, 膳恋, 膳恋倨だ 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1