CN1650272A - 指令缓存和减少存储器冲突的方法 - Google Patents

指令缓存和减少存储器冲突的方法 Download PDF

Info

Publication number
CN1650272A
CN1650272A CNA038094053A CN03809405A CN1650272A CN 1650272 A CN1650272 A CN 1650272A CN A038094053 A CNA038094053 A CN A038094053A CN 03809405 A CN03809405 A CN 03809405A CN 1650272 A CN1650272 A CN 1650272A
Authority
CN
China
Prior art keywords
memory
buffer memory
buffer
sub
read
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.)
Granted
Application number
CNA038094053A
Other languages
English (en)
Other versions
CN1297906C (zh
Inventor
多隆·舒佩尔
雅科夫·托卡尔
雅各布·埃弗拉特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NXP USA Inc
Original Assignee
Freescale Semiconductor Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Freescale Semiconductor Inc filed Critical Freescale Semiconductor Inc
Publication of CN1650272A publication Critical patent/CN1650272A/zh
Application granted granted Critical
Publication of CN1297906C publication Critical patent/CN1297906C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0855Overlapped cache accessing, e.g. pipeline
    • G06F12/0859Overlapped cache accessing, e.g. pipeline with reload from main memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01MCATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
    • A01M1/00Stationary means for catching or killing insects
    • A01M1/14Catching by adhesive surfaces
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01MCATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
    • A01M1/00Stationary means for catching or killing insects
    • A01M1/24Arrangements connected with buildings, doors, windows, or the like
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0851Cache with interleaved addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1045Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] associated with a data cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01MCATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
    • A01M2200/00Kind of animal
    • A01M2200/01Insects
    • A01M2200/011Crawling insects
    • AHUMAN NECESSITIES
    • A01AGRICULTURE; FORESTRY; ANIMAL HUSBANDRY; HUNTING; TRAPPING; FISHING
    • A01MCATCHING, TRAPPING OR SCARING OF ANIMALS; APPARATUS FOR THE DESTRUCTION OF NOXIOUS ANIMALS OR NOXIOUS PLANTS
    • A01M2200/00Kind of animal
    • A01M2200/01Insects
    • A01M2200/012Flying insects

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Pest Control & Pesticides (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Insects & Arthropods (AREA)
  • Wood Science & Technology (AREA)
  • Zoology (AREA)
  • Environmental Sciences (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

通过将存储器配置成两个奇偶阵列子块(12,13),并在存储器(11)和更新(16)之间增加输入缓冲(10)减少指令缓存存储器(11)中的读/写冲突。根据读序列通过缓冲区(10)移动更新序列从而减少存储器读和存储器写之间的竞争。本发明可以自我调节适用于具有不同外部存储器行为且关注等待时间和突发脉冲能力的数字信号处理***。

Description

指令缓存和减少存储器冲突的方法
技术领域
本发明涉及指令缓存和它的工作方法,且尤其涉及减少缓存存储器中的冲突。
背景技术
缓存存储器用于提高处理***的性能,并常用于与数字信号处理器(DSP)核心协同工作。通常,缓存存储器位于DSP核心的外部存储器(通常较慢)和快速的中央处理单元(CPU)之间。缓存存储器典型地存储诸如频繁使用的程序指令(或代码)的数据,这些数据能根据要求迅速提供给CPU。缓存存储器的内容可以移除(软件控制),也可以用DSP核心后面使用的新代码进行更新。缓存存储器或缓存存储器阵列构成指令缓存的一部分。
在图1中,存储在外部存储器4中的代码对组成指令缓存2一部分的缓存存储器1进行更新(通过更新总线3)。DSP核心5经由程序总线访问指令缓存2和它的存储器1。当核心5请求已经存储在缓存存储器1中的代码时,称作“缓存命中(cache hit)”。相反,当核心5要求的代码当前没有存储在缓存存储器1中时,称为“缓存缺失(cache miss)”。“缓存缺失”需要从外部存储器4中“提取”所需代码。与直接从缓存存储器1中访问代码的任务相比,“提取”操作非常耗时。因此,命中与缺失比率越高,DSP的性能越好。因而增加这个比率的机制将非常有利。
未决的美国专利申请US 09/909,562公开了一种预先提取机制,在缓存缺失时,预先提取模块从外部存储器提取所需代码,并将其装载到缓存存储器中,随后猜测DSP下一步需要的代码并将此代码从外部存储器装载到缓存存储器中。预先提取的代码地址和缓存缺失的地址是连续的。然而,由于同时试图从缓存存储器读取代码(DSP要求)和更新缓存存储器(预先提取操作的结果),在缓存存储器中会出现冲突。换句话说不是所有的读和写操作可以并行地执行。因此,由于竞争的访问源中的一方不得不迟延或中止,DSP核心的性能会下降。此外,由于DSP核心访问和预先提取的连续的特性,冲突的情形可以持续几个DSP操作周期。
存储器交叉存取可以部分地减轻这个问题。US-A-4,818,932公开了一种随机存取存储器(RAM),这种存储器根据访问的存储器位置地址的最不重要位(LSB)的状态排列成一个奇存储库和一个偶存储库。这种安排在两个或多个处理设备竞争访问RAM时减少等待时间。然而,由于缓存存储器更新和DSP要求的连续的特性,光靠存储器交叉存取不能完全消除冲突的可能性。因此,有必要进一步改进,减少这些冲突的影响。
发明内容
根据本发明的第一个方面,提供一种连接处理器核心和外部存储器的指令缓存,该指令缓存包括由至少两个子块组成的缓存存储器,其中每个子块可由存储器地址的一个或多个最不重要位辨识;该指令缓存还包括从处理器核心接收请求从缓存存储器中读取所需数据序列的装置,以及用于将更新数据序列时间偏移的缓冲区,该缓冲区根据所需数据序列从外部存储器接收并写入缓存存储器,从而减少了缓存存储器子块中的读/写冲突。
根据本发明的第二个方面,提供一种在缓存存储器中减少读/写冲突的方法,其中缓存存储器连接处理器核心和外部存储器,且缓存存储器由至少两个存储器子块组成,每个子块可由存储器地址的一个或多个最不重要位辨识,该方法包括如下步骤:
从处理器核心接收请求,以从缓存存储器中读取所需数据序列,
从外部处理器接收写入缓存存储器的更新数据序列,和
根据所需数据序列,通过缓冲更新数据将更新序列时间偏移,从而减少缓存存储器子块中的读/写冲突。
本发明基于如下假设,即核心程序请求和外部更新在绝大部分时间是连续的。
在一种实施例中,缓存的存储器分为两个子块,其中一个用于偶地址,另一个用于奇地址。这样,只有在核心的需求和更新具有相同的校验位的地址的时候才会发生竞争。
通常,通过地址的最不重要位辨识存储器的子块。然而,因为存储器子块只能支持一个读(对于DSP核心)或一个更新(通过预先提取单元,从外部存储器),所以仅仅提供多个存储器子块不能在所有情况下阻止通过预先提取单元的连续更新和来自DSP核心的连续需求之间的冲突。
缓冲区用于缓冲与DSP核心请求相关的单个阻碍可能的更新序列的竞争。缓冲区的进入/输入端口与缓存存储器的更新总线端口连接,并布置向所有存储器子块传输。
因此,本发明包含一个最小的特定交叉存储器的缓冲区,从而只损失非常小的核心性能。
在一种实施例中,缓冲区每个周期对更新总线进行采样。然而写入缓存存储器的数据序列并不总是需要缓冲的数据。例如,在没有理由延迟写操作的情况下,更新数据将绕过缓冲区直接写入缓存存储器。因而有多路更新数据流入缓存存储器,或者通过缓冲区或者直接来自外部存储器。优选地,采用选择器装置,从缓冲区或从绕过缓冲区的通道选择数据序列。
对于存储器冲突的仲裁机制比较简单。如果冲突是外部总线之间的,则本发明缓冲更新总线并且为核心服务,否则停止核心并将缓冲区的数据写入缓存存储器。
本发明还消除了使用一些序列定义协议的需要。本发明将自然识别序列并将其作为任何其它的输入一样处理。到核心和外部存储器的接口同样非常简单。外部存储器保持不理会所有的缓存仲裁,而核心只需要一个停止信号。
上面的优点使本发明能够适合多个阵列的存储器***的配置。同样只需要单个阶段缓冲区。通过将缓存存储器分成较小的子块并将更多的最不重要位用于交叉存储,可以在不进行大量重新设计工作的基础上,减少代价。
附图说明
现在以附图为例对本发明的一些实施例进行描述,其中:
图1是已知的指令缓存排列的模块图;
图2是依照本发明的包括指令缓存的处理***的模块图;和
图3到图5是图示在三种不同情况下本发明操作的时序图。
具体实施方式
在图2中,DSP核心6可以通过程序总线8对指令缓存7进行访问。指令缓存包括多路复用模块9、输入缓冲区10和缓存存储器11。缓存存储器11包含偶阵列存储器子块12、奇阵列子块13和阵列逻辑模块14,后者与程序总线8和存储器块12,13连接。阵列逻辑模块14还与多路复用模块9和指令缓存外部的预先提取单元15连接。预先提取单元15与输入缓冲区10、多路复用模块9和更新总线16连接。外部存储器17与更新总线16连接。
输入缓冲区10通过预先提取单元15对更新总线16进行采样,并通过将缓冲预先提取单元15提取的代码使得存储器子块12,13在交替的DSP时钟周期里在更新(写)和访问(读)操作之间轮换,直到完成一次冲突读操作。
预先提取单元15如下操作。当核心7通过阵列逻辑模块14发出请求,需要从缓存存储器11访问代码,而此代码不在任何一个存储器子块中,阵列逻辑模块14向预先提取单元15发出缺失的指示。接收到这个缺失的指令,预先提取单元15开始从外部存储器15中以缺失地址开始(顺序)提取一块代码。块的大小是使用者配置的参数,通常比一个核心请求要大。因此,一次缓存缺失通过输入缓冲区10对缓存存储器11产生一系列连续更新。更新之间的时间安排(即等待时间)依赖于从预先提取单元15中获取连续更新请求以到达外部存储器以及所需代码抵达输入缓冲区10的时间。更新可以分别是几个DSP操作周期。然而,本发明可以自我调节,适用于具有不同外部存储器行为且关注等待时间和突发脉冲能力的***。
当阵列逻辑模块14发现存在读/写竞争时,它向多路复用模块9发出信号,将当前存储在输入缓冲区10中的数据序列装载到缓存存储器11。当不存在竞争时,阵列逻辑模块14指示多路复用模块9直接将预先提取单元15中的数据装载到缓存存储器11。
图3图示了图2的处理***在更新之间具有较长等待时间的操作。读序列P0,P1,P2,P3,P4,P5在偶和奇存储器阵列中轮流切换,且写序列U0,U1,U2,U3,U4同样如图所示在每一个DSP时钟周期在偶和奇阵列之间切换。在时钟周期T0,更新总线传送装载到偶阵列的代码U0而DSP同样希望从偶阵列读取代码P0。因此,将会产生内部竞争P0-U0。为了缓解这个矛盾,缓冲区在一个时钟周期T0存储U0,然后在下一个时钟周期T1将其装载(存储器写)到偶阵列,而此时DSP在访问奇阵列(读P1)。同样地,下一个读/写序列,P1-P5和U1-U4在不损失性能的情况下并行处理。因此,通过将更新序列转移一个周期,采用缓冲的办法并利用偶/奇交叉存储,可以在不停止核心的情况下处理两个序列。
图4图示了本发明在更新之间具有较长等待时间的处理***的操作,并图示了读序列P0,P1,P2,P3,P4,P5在每一个DSP时钟周期上在偶和奇存储器阵列中轮流切换。写序列U0,U1在三个时钟周期后在偶和奇阵列间切换。在时钟周期T0和T3有可能产生内部竞争P0-U0和P3-U1。为了缓解这个矛盾,输入缓冲区将冲突的更新(存储器写)转移一个时钟周期,从而在读取P1和P4的时候从缓冲区写U0和U1。因此避免了核心的停止。
图5图示了在已转移的更新和新的核心请求冲突的时候DSP核心将停止的情况,即,当两个连续的核心请求具有相同的最不重要位的时候的情况。即使在这种情况下,本发明也减少了一个DSP时钟周期的损失,因为现在新的核心序列根据更新序列进行转移。在这个例子中的读序列是第一个时钟周期T0的P0,时钟周期T1和T2的P4以及分别对应时钟周期T3,T4和T4的P5,P6,P7。更新包括分别对应时钟周期T0,T1,T2,T3和T4的U0,U1,U2,U3,U4。因此,没有缓冲的话有可能在时钟周期T0,T2,T3和T4产生竞争(以及核心停止)。通过将更新序列转移一个时钟周期(通过输入缓冲区的作用),核心的停止将减少到仅一个时钟周期。

Claims (6)

1.一种连接处理器核心和外部存储器的指令缓存,该指令缓存包括由至少两个子块组成的缓存存储器,每个子块由存储器地址的一个或多个最不重要位辨识,该指令缓存还包括从处理器核心接收请求以从缓存存储器读取所需数据的装置,和一个将更新数据序列时间偏移的缓冲区,该缓冲区根据所需数据序列从外部存储器接收以写入缓存存储器,从而在缓存存储器子块中减少读/写冲突。
2.如权利要求1所述的指令缓存,其中,所述缓存存储器分为两个子块,一个具有偶地址,另一个具有奇地址。
3.如前面任何一个权利要求所述的指令缓存,进一步包括从缓冲区或者通过绕过缓冲区的通道直接从外部存储器选择更新数据以写入缓存存储器的装置。
4.一种在缓存存储器中减少读/写冲突的方法,其中,缓存存储器连接处理器核心和外部存储器,且所述缓存存储器由至少两个存储器子块组成,每个子块由存储器地址的一个或多个最不重要位辨识,该方法包括如下步骤:
从处理器核心接收请求,以从缓存存储器读取所需的数据序列,
从外部存储器接收更新数据序列以写入缓存存储器,和
根据所需数据序列,通过缓冲输入数据,将更新序列时间偏移,从而减少缓存存储器子块中的读/写冲突。
5.一种依照附图2到附图5在上文中所描述的指令缓存。
6.一种依照附图2到附图5在上文中所描述的在缓存存储器中减少读/写冲突的方法。
CNB038094053A 2002-04-26 2003-03-03 指令缓存和减少存储器冲突的方法 Expired - Fee Related CN1297906C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0209572A GB2391337B (en) 2002-04-26 2002-04-26 Instruction cache and method for reducing memory conflicts
GB0209572.7 2002-04-26

Publications (2)

Publication Number Publication Date
CN1650272A true CN1650272A (zh) 2005-08-03
CN1297906C CN1297906C (zh) 2007-01-31

Family

ID=9935566

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB038094053A Expired - Fee Related CN1297906C (zh) 2002-04-26 2003-03-03 指令缓存和减少存储器冲突的方法

Country Status (8)

Country Link
US (1) US20050246498A1 (zh)
EP (1) EP1550040A2 (zh)
JP (1) JP4173858B2 (zh)
KR (1) KR100814270B1 (zh)
CN (1) CN1297906C (zh)
AU (1) AU2003219012A1 (zh)
GB (1) GB2391337B (zh)
WO (1) WO2003091820A2 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015024493A1 (zh) * 2013-08-19 2015-02-26 上海芯豪微电子有限公司 基于指令读缓冲的缓存***和方法
CN110264995A (zh) * 2019-06-28 2019-09-20 百度在线网络技术(北京)有限公司 智能设备的语音测试方法、装置电子设备及可读存储介质
CN111865336A (zh) * 2020-04-24 2020-10-30 北京芯领航通科技有限公司 基于RAM总线的Turbo译码存储方法及装置和译码器

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7320053B2 (en) * 2004-10-22 2008-01-15 Intel Corporation Banking render cache for multiple access
US20060225060A1 (en) * 2005-01-19 2006-10-05 Khalid Goyan Code swapping in embedded DSP systems
US8082396B2 (en) * 2005-04-28 2011-12-20 International Business Machines Corporation Selecting a command to send to memory
CN100370440C (zh) * 2005-12-13 2008-02-20 华为技术有限公司 处理器***及其数据操作方法
JP2014035431A (ja) * 2012-08-08 2014-02-24 Renesas Mobile Corp ボコーダ処理方法、半導体装置、及び電子装置
GB2497154B (en) * 2012-08-30 2013-10-16 Imagination Tech Ltd Tile based interleaving and de-interleaving for digital signal processing
KR102120823B1 (ko) * 2013-08-14 2020-06-09 삼성전자주식회사 비휘발성 메모리 장치의 독출 시퀀스 제어 방법 및 이를 수행하는 메모리 시스템
KR102579319B1 (ko) 2023-04-19 2023-09-18 메티스엑스 주식회사 캐시 메모리 장치 및 이를 이용하는 캐시 스케줄링 구현 방법

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4818932A (en) * 1986-09-25 1989-04-04 Tektronix, Inc. Concurrent memory access system
US5752259A (en) * 1996-03-26 1998-05-12 Advanced Micro Devices, Inc. Instruction cache configured to provide instructions to a microprocessor having a clock cycle time less than a cache access time of said instruction cache
US6029225A (en) * 1997-12-16 2000-02-22 Hewlett-Packard Company Cache bank conflict avoidance and cache collision avoidance
US6240487B1 (en) * 1998-02-18 2001-05-29 International Business Machines Corporation Integrated cache buffers
US6360298B1 (en) * 2000-02-10 2002-03-19 Kabushiki Kaisha Toshiba Load/store instruction control circuit of microprocessor and load/store instruction control method

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015024493A1 (zh) * 2013-08-19 2015-02-26 上海芯豪微电子有限公司 基于指令读缓冲的缓存***和方法
US10067767B2 (en) 2013-08-19 2018-09-04 Shanghai Xinhao Microelectronics Co., Ltd. Processor system and method based on instruction read buffer
US10656948B2 (en) 2013-08-19 2020-05-19 Shanghai Xinhao Microelectronics Co. Ltd. Processor system and method based on instruction read buffer
CN110264995A (zh) * 2019-06-28 2019-09-20 百度在线网络技术(北京)有限公司 智能设备的语音测试方法、装置电子设备及可读存储介质
CN111865336A (zh) * 2020-04-24 2020-10-30 北京芯领航通科技有限公司 基于RAM总线的Turbo译码存储方法及装置和译码器
CN111865336B (zh) * 2020-04-24 2021-11-02 北京芯领航通科技有限公司 基于RAM总线的Turbo译码存储方法及装置和译码器

Also Published As

Publication number Publication date
JP2005524136A (ja) 2005-08-11
GB0209572D0 (en) 2002-06-05
GB2391337A (en) 2004-02-04
AU2003219012A1 (en) 2003-11-10
CN1297906C (zh) 2007-01-31
US20050246498A1 (en) 2005-11-03
WO2003091820A2 (en) 2003-11-06
KR20050027213A (ko) 2005-03-18
JP4173858B2 (ja) 2008-10-29
AU2003219012A8 (en) 2003-11-10
KR100814270B1 (ko) 2008-03-18
WO2003091820A3 (en) 2003-12-24
GB2391337B (en) 2005-06-15
EP1550040A2 (en) 2005-07-06

Similar Documents

Publication Publication Date Title
CN1297906C (zh) 指令缓存和减少存储器冲突的方法
US5581734A (en) Multiprocessor system with shared cache and data input/output circuitry for transferring data amount greater than system bus capacity
CN1150455C (zh) 强静态预测分支指令的优化执行
EP0165822A2 (en) Memory access control system
US6738891B2 (en) Array type processor with state transition controller identifying switch configuration and processing element instruction address
EP1896983B1 (en) A memory arrangement for multi-processor systems
CN101432703B (zh) 用于高速缓存可变长度指令的方法及设备
KR100955433B1 (ko) 파이프라인 구조를 갖는 캐시 메모리 및 이를 제어하는방법
US20100191918A1 (en) Cache Controller Device, Interfacing Method and Programming Method Using the Same
US20080140980A1 (en) Memory arrangement for multi-processor systems
CN1831757A (zh) 中央处理单元中的提前执行
CN1675626A (zh) 用于转移目标的指令高速缓冲存储器通路预测
WO2000030116A1 (en) Method and apparatus for memory control circuit
CN1296836C (zh) 用以于嵌入程序只读存储器中实施修正机制的电路与方法
CN1828765A (zh) 存储器模块的缓冲器组件、存储器模块和存储器***
CN1758208A (zh) 对挂接在片外单总线上的多种存储器进行访问的方法
US5835746A (en) Method and apparatus for fetching and issuing dual-word or multiple instructions in a data processing system
CN1308828C (zh) 用于处理事件的方法和装置
EP1607879A1 (en) Memory interleaving in a computer system
CN101194236A (zh) 多端口高速缓冲存储器结构
US7836277B2 (en) Pre-tracing instructions for CGA coupled processor in inactive mode for execution upon switch to active mode and continuing pre-fetching cache miss instructions
US20040111592A1 (en) Microprocessor performing pipeline processing of a plurality of stages
EP1990730A1 (en) Cache controller and cache control method
US5500814A (en) Memory system and cache memory system
US7050059B2 (en) Method for a graphics chip to access data stored in a system memory of a computer device

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070131

Termination date: 20150303

EXPY Termination of patent right or utility model