CN101390062A - 具有地址转换旁路的数据处理系统及其方法 - Google Patents

具有地址转换旁路的数据处理系统及其方法 Download PDF

Info

Publication number
CN101390062A
CN101390062A CNA2007800063456A CN200780006345A CN101390062A CN 101390062 A CN101390062 A CN 101390062A CN A2007800063456 A CNA2007800063456 A CN A2007800063456A CN 200780006345 A CN200780006345 A CN 200780006345A CN 101390062 A CN101390062 A CN 101390062A
Authority
CN
China
Prior art keywords
address
bypass
logical address
translator
handling system
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
CNA2007800063456A
Other languages
English (en)
Other versions
CN101390062B (zh
Inventor
W·C.·莫耶
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.)
Lanbushi company
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 CN101390062A publication Critical patent/CN101390062A/zh
Application granted granted Critical
Publication of CN101390062B publication Critical patent/CN101390062B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

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/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • 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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

在数据处理系统中,包括处理逻辑的处理器执行数据处理。耦合至处理逻辑的地址转换器(70)执行地址转换及其方法。地址转换器(70)接收逻辑地址(80)并且将逻辑地址转换为物理地址(82)和一个或多个地址属性(86)。耦合至地址转换器的旁路电路(72)选择性地提供逻辑地址作为被接收的逻辑地址的已转换地址。为了加快存储器地址转换,逻辑地址在提供与逻辑地址相关联的一个或多个地址属性之前被选择性地作为已转换地址来提供。

Description

具有地址转换旁路的数据处理系统及其方法
技术领域
本发明总体上涉及数据处理器,并且更具体地涉及具有地址转换旁路性能的数据处理器。
背景技术
在当今的许多数据处理系统中,地址转换被执行以将由处理器(如中央处理器)生成的逻辑地址转换为由存储器使用的物理地址。然而,对于地址转换的需求通常导致物理地址在一个时钟周期的后期有效,其导致接收已转换地址的存储器的建立时间(setup time)减少。因此,在很多情况下,对于地址转换的需求需要以更低频率运行的时钟以为这些存储器提供足够的建立时间,从而可能降低数据处理系统的整体性能。
附图说明
本发明由附图以示例的方式进行阐述但不限于附图,附图中相似的附图标记表示相似的元件。
图1图解了根据本发明一个实施例的系统的框图。
图2图解了根据本发明一个实施例的图1的地址转换电路的至少一部分。
图3图解了根据本发明一个实施例的图2的旁路控制寄存器。
图4图解了提供针对图3的旁路控制寄存器的指令旁路和数据旁路字段的描述的表格。
图5图解了描述使用能够由根据本发明一个实施例的图1的系统执行的旁路的地址转换方法的流程图。
图6图解了描述根据本发明一个实施例的系统时钟周期样本的时序图。
本领域技术人员能够理解,为了简单和清楚起见而示出了附图中的元件,这些元件不需要按比例绘制。例如,可相对于其它元件而放大附图中某些元件的尺寸,以有助于促进对本发明实施例的理解。
具体实施方式
如上所述,对数据处理系统中地址转换的需求可能导致需要已转换地址的存储器的建立时间的减少并且可能导致需要更低的时钟频率。在本发明的一个实施例中,使用基于旁路控制逻辑的旁路电路,其允许地址转换旁路。当地址转换被旁路时,在完成地址转换之前将逻辑地址直接作为已转换地址来提供。在一个实施例中,地址转换包括使用逻辑地址来执行表查找以获得已转换地址(即,物理地址)和相应属性。因此,当地址转换被旁路时,在相应属性的提供之前(因为相应属性直到表查找完成才可用)将逻辑地址直接作为已转换地址(而不是来自查找表的转换地址)来提供。通过将逻辑地址直接作为已转换地址来提供,已转换地址与由地址转换所生成的已转换地址相比在时钟周期内更早的有效,所述由地址转换所生成的已转换地址与相应属性通常可能在时钟周期内更晚的有效。通过更早地将逻辑地址直接作为已转换地址来提供,接收该已转换地址的存储器能够具有更长的建立时间并且能够更快地开始处理。
本申请所使用的术语“总线”涉及可以用来传输一个或多个各种类型的信息(如数据、地址、控制或者状态)的多个信号或者导体。本申请所讨论的导体可以参考单个导体、多个导体、单向导体或者双向导体来阐述或者描述。然而,不同的实施例可以改变导体的实现方式。例如,可以使用分离的单向导体而不是双向导体,并且反之亦然。同样,多个导体可以由串行地或者以时分复用的方式传输多个信号的单个导体来替代。同样,可以将承载多个信号的单个导体分割为承载这些信号的子集的各种不同导体。因此,对于传输信号,存在很多选择。
当分别涉及信号、状态位或者为其逻辑真或逻辑假状态的类似装置的描述(rendering)时,术语“置为信号的有效值(assert)”或者“设置”和“使无效(negate)”(或者“置为信号的无效值(deassert)”或者“清除”)被使用。如果逻辑真状态是逻辑电平1,那么逻辑假状态则是逻辑电平0。并且如果逻辑真状态是逻辑电平0,那么逻辑假状态则是逻辑电平1。因此,本申请所描述的每个信号可以被指定为正或者负逻辑,其中负逻辑能够由信号名称上方的横线或者名称后的星号(*)来指示。在负逻辑信号的情况中,在逻辑真状态对应于逻辑电平0时信号低电平有效。在正逻辑信号的情况中,在逻辑真状态对应于逻辑电平1时信号高电平有效。请注意,本申请所描述的信号中的任何一个能够被指定为正或者负逻辑信号。因此,在替代实施例中,被描述为正逻辑信号的那些信号可以实现为负逻辑信号,并且被描述为负逻辑信号的那些信号可以实现为正逻辑信号。
图1图解了根据本发明一个实施例的数据处理系统10。系统10包括处理电路12、系统存储器14、其它模块16和系统总线18。处理电路12、系统存储器14和其它模块16中的每一个与系统总线18双向耦合。系统存储器14可以是任何类型的存储器,例如,只读存储器(ROM)、随机访问存储器(RAM)如静态RAM或者动态RAM、非易失性存储器(例如闪存)等等。系统10可以不包括其它模块(在这种情况下其它模块16可以不出现)或者可以包括任何数目的其它模块,其中这些模块可以包括,例如,其它处理电路、外围设备、存储器、I/O设备等等。
系统10的处理电路12包括处理器20、地址转换电路22、数据总线接口单元(BIU)24和指令总线接口单元(BIU)26。数据BIU24经由数据地址48提供数据地址至系统总线18,经由数据50提供数据至系统总线18并且从系统总线18接收数据,以及经由控制52提供控制信号至系统总线18并且从系统总线18接收控制信号。指令BIU26经由指令地址56提供指令地址至系统总线18,经由指令58提供指令至系统总线18并且从系统总线18接收指令,以及经由控制54提供控制信号至系统总线18并且从系统总线18接收控制信号。
处理器20经由内部数据总线36、控制信号38和数据属性35耦合至数据BIU 24。处理器20经由数据逻辑地址28、指令逻辑地址30、控制信号32、数据属性35和指令属性34耦合至地址转换电路22。处理器20经由内部指令总线40、控制信号41和指令属性34耦合至指令BIU 26。地址转换电路22经由指令属性34、控制信号46和指令物理地址44耦合至指令BIU 26。处理电路12还接收外部信号:数据旁路控制60、指令旁路控制62、数据重置控制64、指令重置控制66和重置68。这些信号可以从系统10内的其它模块16提供或者它们可以从位于系统10外部的源提供。同样,这些外部信号的每一个都被提供给地址转换电路22,并且重置68还被提供给处理器20。在一个实施例中,这些信号的一个或多个还能够由处理器20提供给地址转换电路22。请注意,这些信号的任何一个都是非必需的,并且因此可以不出现在系统10中。同样,处理电路12可以接收图1中没有图解的其它外部信号。
处理器20、数据BIU 24和指令BIU 26中的每一个都以现有技术中已知的方式操作并且因而在本申请中不会被更详细地讨论。请注意,处理器20能够是任何类型的处理器,例如,微控制器、数字信号处理器、直接存储器访问单元、中央处理器等等,并且可以包括用于执行数据处理和用于执行数据处理之外的任何其它期望功能的任何类型的处理逻辑。因而,地址转换电路22可以位于处理器20外部并且耦合至处理逻辑。在替代实施例中,地址转换电路22可以位于处理器20内(并且耦合至处理逻辑)。同样,在替代实施例中,数据BIU 24和指令BIU 26可以实现为与系统总线18进行数据和指令地址、数据和指令以及控制通信的单个BIU。系统总线18被图解为单个总线,但还可以实现为具有分离的地址、数据和控制总线。还请注意,处理电路12可以包括图解的框和信号之外的其它电路。下面将参考图2至6更加详细地讨论地址转换电路22的操作。
图2图解了根据本发明一个实施例的地址转换电路22的至少一部分。地址转换电路22包括转换旁路逻辑72、多路复用器(MUX)76和地址转换器70。地址转换器70包括控制电路94、地址转换部分88和属性部分90。地址转换器70接收逻辑地址80并且提供命中/未命中指示92、已转换逻辑地址82(还被称为物理地址)和地址属性86。转换旁路逻辑72包括旁路控制寄存器74。转换旁路逻辑72接收数据旁路控制60、指令旁路控制62、数据重置控制64、指令重置控制66和重置68。(请注意,如上所述,这些信号的任何一个可以是非必需的并且因而不提供给转换旁路逻辑72。)转换旁路逻辑72提供选择78给MUX 76的控制输入端,并且非必需地提供选择78给地址转换器70。MUX 76在第一输入端接收逻辑地址80并且在第二输入端接收已转换逻辑地址82,并且基于选择78(还被称为旁路使能控制信号)而提供这些信号中的一个作为被选地址84。请注意,从地址转换器70输出的已转换逻辑地址82还可以被称为物理地址,其中MUX76或者提供物理地址或者提供逻辑地址80作为被选地址84。同样,MUX 76能够由当旁路使能时能够提供逻辑地址80作为被选地址84的任何类型的电路来替换。
在一个实施例中,地址转换器70包括查找表,其中控制电路94比较输入逻辑地址80和查找表中的条目以确定是否查找到匹配。如果在查找表中查找到匹配,命中/未命中指示92被设置为有效值,并且从查找表中输出相应的已转换逻辑地址82和地址属性86。例如,在一个实施例中,内容可寻址存储器(CAM)部分被用来存储逻辑地址,其中每个CAM条目具有相应的物理地址条目(在地址转换部分88内)和相应的地址属性条目(在属性部分90内)。因而,在一个实施例中,已转换地址和相应的属性被实现为单个查找表。可替代地,分离的查找表可以被实现以提供已转换逻辑地址82和相应的地址属性86。在这个实施例中,控制电路94使用逻辑地址80在每个查找表中执行查找。在替代实施例中,查找表可以实现为缓存地址转换信息的直接映射或者组关联阵列。又在另一个替代实施例中,其它电路而不是查找表可以被用来提供已转换逻辑地址82和地址属性86。例如,可以从逻辑地址80算术地生成已转换逻辑地址82。
图2中图解的地址转换电路22的实施例可以用于数据或者指令地址转换。例如,逻辑地址80可以对应于数据逻辑地址28或者指令逻辑地址30,其中被选地址84可以分别对应于提供给图1的数据BIU24的数据物理地址42或者提供给图1的指令BIU 26的指令物理地址44,并且地址属性86可以分别对应于数据属性35(提供给处理器20或者数据BIU 24或者两者)或者指令属性34(提供给处理器20或者指令BIU 26或者两者)。因而,请注意,能够复制图2的电路的一部分或者全部以转换数据和指令地址。
例如,在一个实施例中,地址转换电路22可以包括分离的数据和指令地址转换电路,每个都包括在图2中总体图解的电路的一部分或者全部。例如,地址转换电路12可以包括用于数据和指令地址的分离的地址转换器(每一个都类似于地址转换器70),其中数据逻辑地址28可以被输入到一个地址转换器并且指令逻辑地址30可以被输入到另一个。接收数据逻辑地址28的地址转换器还可以提供数据属性35,并且接收指令逻辑地址30的地址转换器还可以提供指令属性34。地址转换电路22还可以包括类似于MUX 76的分离的MUX或者分离的选择电路,其耦合至每个分离的地址转换器以用于输出数据物理地址或者数据逻辑地址作为被选数据地址至数据BIU 24并且用于输出指令物理地址或者指令逻辑地址作为被选指令地址至指令BIU26。而且,在这个实施例中,每个地址转换器可以提供其自己的命中/未命中指示,类似于命中/未命中指示92(其中任何命中/未命中指示可以作为一个或多个控制信号32提供给处理器20)。在一个实施例中,转换旁路逻辑72可以由数据转换电路和指令转换电路共享,如图2中所图解的一样,其中转换旁路逻辑接收指令和数据控制信号,并且其中旁路控制寄存器74包括数据和指令旁路控制字段。然而,即使转换旁路逻辑72被共享,转换旁路逻辑72也可以针对每个分离的MUX输出类似于选择78的分离的选择信号或者旁路控制信号,以基于地址是指令地址还是数据地址而独立地控制地址转换。在另一个实施例中,图2的电路能够针对指令和数据地址转换电路中的每一个被完全复制,从而转换旁路逻辑特别针对指令或者数据。在这个实施例中,转换旁路逻辑可以接收仅仅数据或者仅仅指令控制并且旁路控制寄存器可以仅仅包括数据或者指令旁路控制字段。
如上所述,图2的电路能够应用至指令或者数据。因而,在下面描述图2操作的讨论中,请注意该描述能够相似地应用至数据和指令地址转换。参考图2的操作,转换旁路逻辑72提供选择78至MUX 76以选择已转换逻辑地址82(从地址转换器70输出)或者逻辑地址80中的一个作为被选地址84来提供。请注意,被选地址84还可以被称为已转换地址,其中已转换地址对应于从地址转换器70输出的已转换逻辑地址82或者直接作为已转换地址提供的逻辑地址80。
仍然参考图2,如果转换旁路逻辑72基于旁路控制寄存器74中的值旁路地址转换,那么选择78被提供从而MUX 76选择逻辑地址80作为将要提供的被选地址84。因而,在执行旁路的情况中,逻辑地址80被直接作为被选地址84来提供。也就是说,逻辑地址80而不是已转换逻辑地址82被直接作为已转换地址来提供。然而,在图解的实施例中,即使逻辑地址80被直接作为被选地址84来提供,逻辑地址80仍然被提供给提供已转换逻辑地址82和地址属性86的地址转换器70。请注意,当执行旁路时已转换逻辑地址82和地址属性86在被选地址84之后被提供,因为逻辑地址80通过MUX 76比由地址转换器70提供的已转换逻辑地址82和地址属性86更快地传播至被选地址84。例如,在查找表被用来提供已转换逻辑地址82和地址属性86的实施例中,查找自身导致延迟。然而,因为MUX 76被设置为选择逻辑地址80作为被选地址84来提供,已转换逻辑地址82被忽略。然而,地址转换仍然发生,并且属性86仍然在地址转换完成时被提供。
在一个实施例中,不管转换旁路逻辑72确定逻辑地址80和已转换逻辑地址82中的哪一个被选择并被作为被选地址84来提供,地址转换器70仍然执行逻辑地址80的地址转换。作为地址转换器70操作的一部分,查找可能不能找到相应的地址转换,导致“未命中”事件。由地址转换器70执行的转换处理的成功或者失败经由命中/未命中指示92提供信号给处理器20。处理器20可以使用命中/未命中指示92以响应经由命中/未命中指示92提供信号的“未命中”指示来实现异常处理或者其它替代活动。再次重申,在这个实施例中,由地址转换器70执行的地址转换和命中/未命中信号提供独立于转换旁路逻辑72的操作而发生。
转换旁路逻辑72基于存储在旁路控制寄存器74中的值并且如果存在的话基于指令旁路控制62和数据旁路控制60的值而确定选择78的值。图3图解了具有指令旁路字段96和数据旁路字段98的旁路控制寄存器74的一个实施例。请注意,在某些实施例中,旁路控制寄存器74可以包括一个或多个其它控制字段99。图4图解了提供每个旁路字段的描述的表。在一个实施例中,每个旁路字段都是1位字段。例如,指令旁路字段96可以是逻辑电平0或者逻辑电平1并且应用在指令地址转换的情况中。逻辑电平0表示地址转换电路22正常地将指令逻辑地址转换为指令已转换逻辑地址(即,指令物理地址)。也就是说,在此情况下,转换旁路逻辑72可以设置选择78从而已转换逻辑地址82作为被选地址84来输出。然而,逻辑电平1表示地址转换旁路发生,其中地址转换电路22旁路指令逻辑地址直接作为已转换地址。也就是说,在此情况下,转换旁路逻辑72可以生成选择78从而逻辑地址80直接作为被选地址84来输出。还请注意,当设置为逻辑电平1时,由地址转换器70输出的已转换逻辑地址82(即,物理地址)被忽略,并且实际上,使用逻辑地址80的1对1映射。然而,在使用用于地址转换的查找表的一个实施例中,仍然由地址转换器70执行地址转换器查找以提供相应的地址属性86。同样,因为在这个实施例中地址转换器查找仍然出现,地址转换器未命中仍然能出现。
在替代实施例中,选择78还被提供给地址转换器70。在这个实施例中,当指令旁路96是逻辑电平1时,控制电路94可以使用选择78来禁止地址转换部分88,从而仅仅提供属性86并且根本不提供已转换逻辑地址82。也就是说,在这个替代实施例中,尽管地址转换部分88被禁止,但仍然创建或者提供一个或多个地址属性。
请注意,以上关于指令旁路96而提供的上述描述相似地应用至数据旁路98。例如,数据旁路字段98可以是逻辑电平0或者逻辑电平1并且应用在数据地址转换的情况中。也就是说,当设置为逻辑电平0时,地址转换电路22正常地将数据逻辑地址转换为数据已转换逻辑地址(即,数据物理地址)。也就是说,已转换逻辑地址82作为被选地址84来提供。当设置为逻辑电平1时,地址转换旁路发生,其中地址转换电路22旁路数据逻辑地址直接作为已转换地址。也就是说,在此情况下,转换旁路逻辑72可以生成选择78,从而逻辑地址80直接作为被选地址84来输出。还请注意,当设置为逻辑电平1时,由地址转换器70输出的已转换逻辑地址82(即,物理地址)被忽略,并且实际上,使用逻辑地址80的1对1映射。然而,在使用用于地址转换的查找表的一个实施例中,仍然由地址转换器70执行地址转换器查找以提供相应的地址属性86。同样,因为在这个实施例中地址转换器查找仍然出现,地址转换器未命中仍然能出现。
将参考能够应用至指令或者数据地址转换的图5的流程100更加详细地描述图2的操作。同样,流程100图解了实施例,其中地址转换器70被实现为逻辑地址与条目进行比较的单个查找表,并且如果出现命中,则提供相应的已转换逻辑地址(即,物理地址)和相应的属性。
流程100开始于开始102并且前进至框104,其中逻辑地址(如逻辑地址80)被接收。(再次,请注意逻辑地址80能够涉及数据逻辑地址或者指令逻辑地址。)例如,从处理器20接收该逻辑地址(作为数据逻辑地址28或者指令逻辑地址30)。流程接着进行至框106,其中初始化逻辑地址的查找并且初始化旁路确定。因而,控制电路94开始比较逻辑地址80和地址转换器70的查找表中的条目并且转换旁路逻辑72开始确定选择78的值。(在某些实施例中,转换旁路逻辑72可以在接收用于转换查找的逻辑地址之前已经确定选择78的值。)
流程进行到菱形判断框108,其中确定是否应当发生旁路。例如,根据是数据还是指令逻辑地址被作为逻辑地址来接收,转换旁路逻辑可以使用数据旁路字段98或者指令旁路字段96的值来确定是否发生旁路并且因此可以生成旁路控制信号,如选择78。如果没有发生旁路,流程进行到框110,其中地址查找完成。流程进行到菱形判断框112,其中确定是否已经出现命中。也就是说,如果查找到逻辑地址80匹配地址转换器70的查找表中的条目,那么出现命中;否则出现未命中。因而,如果没有出现命中(表明未命中),流程进行到框114,其中执行未命中处理。例如,在一个实施例中,命中/未命中指示92被设置为指示未命中(例如,其可以相应地设置命中/未命中指示92为逻辑电平0)。指示92接着能够被提供给处理器20(例如,经由控制信号32),其中处理器20可以执行未命中处理。本领域所公知的用于已接收逻辑地址的任何未命中处理能够被执行并且因此将不会在本申请中被更加详细地描述。
回到菱形判断框112,如果出现命中,即查找到逻辑地址80匹配地址转换器70的查找表内的条目,那么流程进行到框118,其中已转换逻辑地址(即,物理地址)作为被选地址来提供并且其中对应于逻辑地址的属性与被选地址一同被提供。也就是说,例如,查找完成并且已转换逻辑地址82作为被选地址84来提供。(因为转换旁路逻辑72已经确定不发生旁路,转换旁路逻辑72设置选择78为选择已转换逻辑地址82。)同样,在与已转换逻辑地址82作为被选地址84来提供的基本上相同时间,地址属性86也被提供。因而,在不执行旁路的情况中,地址属性在与已转换逻辑地址基本上相同的时间被提供,因为它们都作为地址查找的结果被提供。流程100接着结束于结束116。
回到菱形判断框108,如果转换旁路逻辑72确定发生旁路,流程从菱形判断框108进行到框120,其中逻辑地址直接作为被选地址来输出。也就是说,转换旁路逻辑72能够设置选择78从而逻辑地址80作为被选地址84来输出。流程接着进行到框122,其中查找完成。因而,请注意被选地址84在地址查找完成之前被提供。也就是说,逻辑地址80作为已转换逻辑地址(作为被选地址84)被直接提供而不是等待地址查找完成。在此情况下,作为查找结果而提供的实际已转换逻辑地址82被忽略。然而,因为仍然执行查找,即使忽略已转换逻辑地址82,但命中或者未命中仍然被确定。
因而,流程进行到菱形判断框126,其中确定是否已经出现命中或者未命中。如果没有出现命中(表明未命中),流程进行到框124,其中执行未命中处理。例如,在一个实施例中,命中/未命中指示92被设置为指示未命中(例如,其可以相应地设置命中/未命中指示92为逻辑电平0)。指示92接着能够被提供给处理器20(例如,经由控制信号32),其中处理器20可以执行未命中处理。本领域所公知的任何未命中处理能够被执行并且因此将不会在本申请中被更加详细地描述。
然而,如果在菱形判断框126,出现命中,流程进行到框128,其中对应于逻辑地址的地址属性被提供。也就是说,作为完成查找的结果而提供的地址属性86在逻辑地址80直接作为已转换逻辑地址(即,作为被选地址84)被提供后的某一时间被提供。同样,请注意命中/未命中指示也在逻辑地址80直接作为被选地址84被提供后的某一时间被提供。在一个实施例中,流程100的框120中的逻辑地址和框128中的相应属性在不同的时间被提供(逻辑地址在提供相应属性之前被直接作为已转换逻辑地址来提供),但在相同的时钟周期内。可替代地,相应属性可以在后续时钟周期中提供。流程接着结束于结束116。
请注意,相应地址属性可以包括任意数目和任何类型的属性、权限或者它们的任何组合。例如,相应属性可以包括保护的、可缓存的、字节序(Endianness)、指令集选择、存储器一致性所需的、共享的、读/写/执行权限等等。同样,这些属性的一个或多个能够经由例如控制信号32提供给处理器20。同样,这些属性的一个或多个在需要时能够被提供给数据BIU 24和指令BIU 26中的每一个。在一个实施例中,属性的一个或多个还可以经由数据总线接口24的控制52,或者经由指令总线接口26的控制54提供给系统总线18,或者可以被用来确定由控制54或者控制52提供给系统总线18的其它控制信号的值。此外,属性的一个或多个可以被提供给处理电路12或者数据处理系统10内的其它逻辑。
尽管流程100是关于执行地址查找但在使用旁路的情况下忽略由地址查找所导致的已转换逻辑地址来描述的,但在替代实施例中,能够禁止地址转换从而不提供从地址转换器70输出的已转换逻辑地址。然而,在这个示例中,仍然可以提供地址属性86。在这个示例中禁止地址转换可以导致功耗减少,或者更早提供来自地址查找处理的地址属性86。
图6图解了一个时序图,其图解了系统时钟、不使用旁路的被选地址、使用旁路的被选地址和属性(如果有的话)的示例性时序。请注意,当没有使用旁路并且已转换逻辑地址82作为被选地址84来提供时,从当前时钟周期的起点开始测量的到有效地址132的时间相当长,仅仅留下很短的建立时间134。也就是说,建立时间134是接收被选地址的存储器可用来准备后面的时钟周期以适当地使用已接收的被选地址的时间。然而,当使用旁路并且逻辑地址80直接作为被选地址84来提供时,从当前时钟周期的起点开始测量的到有效地址136的时间与到有效地址132的时间相比更短。因而,建立时间138更长,允许接收被选地址的存储器有更多的时间来准备下一个时钟周期。因而,当不使用旁路与使用旁路相比时,被选地址变成有效所需的时间上的差别130允许更大的建立时间。同样,在某些情况下,当不使用旁路时,建立时间134对于特定存储器是不够的,因此需要通过延长时钟周期而让系统时钟在更低频率下操作。这反过来降低了性能。因而,旁路能力可以阻止在更低频率下操作系统时钟的需求。同样,请注意如果任何属性被提供,则该属性在没有旁路的被选地址有效的同时有效,因为在一个实施例中,地址转换(例如,查找)必须被完成以提供属性。然而,在很多情况下,属性仅仅在处理电路12中被使用并且不提供给接收被选地址的存储器。因而,从接收被选地址的存储器来看,地址属性的时序不如被选地址自身的时序重要。因而,通过使用旁路,被选地址与属性相比在时钟周期内更早的有效,这可能允许改进的性能。
如上参照流程100所述,转换旁路逻辑72可以使用旁路控制寄存器74中的值以确定是否允许旁路。在一个实施例中,旁路控制寄存器74被实现为存储多个可编程位的寄存器。可替代地,存储在旁路控制寄存器74中的信息能够存储在任何类型的存储电路中并且能够位于处理电路12或者系统10中的任何地方。在一个实施例中,旁路控制寄存器74在重置时能够被设置为预定值(如默认值)或者能够由转换旁路逻辑72或者处理器20编程。在一个实施例中,在重置时(由重置68提供),转换旁路逻辑72可以轮询数据重置控制64和指令重置控制66以分别确定存储在数据旁路字段98和指令旁路字段96中的值。例如,在一个实施例中,数据重置控制64和指令重置控制66的值能够分别存储至数据旁路字段98和指令旁路字段96。请注意,重置68能够经由位于系统10外部的输入端提供或者从系统10内提供。重置68可以用来重置系统10的全部或者仅仅系统10的部分。例如,重置68可以用来重置处理电路12的全部或者部分。
又在另一个替代实施例中,通过数据旁路控制60和指令旁路控制62的使用能够动态地确定旁路控制。例如,转换旁路逻辑72在接收到逻辑地址而确定是否旁路时,可以首先轮询数据旁路控制60和指令旁路控制62。在一个实施例中,数据旁路控制60和指令旁路控制62的值可以被用来优先于由旁路控制寄存器74中的数据旁路字段98和指令旁路字段96所指示的决定。例如,数据旁路控制60或者指令旁路控制62的逻辑电平1可以指示执行旁路,而不考虑旁路控制寄存器74中的值。可替代地,逻辑电平1可以指示旁路控制寄存器74中的值应当被更新为指示旁路。又在另一个替代实施例中,旁路控制寄存器74可以完全不出现并且转换旁路逻辑72一直使用旁路控制60和62来生成旁路控制信号如选择78。请注意,旁路控制信号60和62能够经由来自位于系统10外部的源的引脚来提供或者能够由处理器20或者系统10内的其它电路来提供。
还请注意,上述实施例参照具有用于数据和指令地址的分离的旁路控制和转换电路来描述。然而,在替代实施例中,对于数据和指令地址的控制可以相同,或者可以仅仅针对指令或者数据地址中的一个来执行旁路控制功能。
至此,应当理解,已经提供了一种能够进行地址转换旁路的处理系统。因为实现本发明的装置的大部分是由本领域技术人员所公知的电子部件和电路构成的,为了本发明的基本概念的理解和认识并且为了不使本发明的教导模糊或者分散对它的注意力,除上面所述的被认为是必需的解释之外,不再对电路细节进行更详细的解释。
上述的某些实施例,如果适用的话,可以通过使用各种不同的信息处理系统来实现。例如,尽管图1及其讨论描述了示例性的信息处理体系结构,但这个示例性体系结构仅仅用来提供对本发明各个方面的讨论有用的参考。当然,出于讨论的目的已经简化了该体系结构的描述,并且这只是根据本发明可以使用的许多不同类型的合适体系结构中的一个。本领域技术人员将认识到逻辑模块之间的边界只是说明性的,并且替代实施例可以合并逻辑模块或电路元件或者对各种逻辑模块或电路元件进行可替换的功能分解。
还例如,在一个实施例中,所示的系统10的元件是位于单个集成电路或者同一设备内的电路。可替代地,系统10可以包括任意数目的分离的集成电路或者分离的相互连接的设备。还例如,系统10或者它的一部分可以是物理电路或者可转换为物理电路的逻辑表示的软件或代码表示。因此,系统10可用任何合适类型的硬件描述语言来体现。此外,本领域技术人员将认识到上述操作功能之间的边界只是说明性的。多个操作的功能可以被组合成单个操作,和/或单个操作的功能可以被分配到额外的操作中。此外,替代实施例可以包括具体操作的多种情况,并且操作顺序可以在各种其它实施例中被改变。
在前面的说明书中,我们已经参考具体的实施例对本发明进行了描述。然而,本领域技术人员会意识到,在不背离由下文权利要求所阐述的本发明范围的情况下,可以进行各种修改和改变。因此,说明书和附图应当只看作是举例,而没有限制性意义,并且所有这样的修改都意图包含在本发明的范围之内。
上面参考具体实施例描述了本发明的优点、其它优势和解决问题的方法。然而,这些优点、优势、解决问题的方法以及任何可以导致任何优点、优势或解决方法出现或者更加明了的要素都不应当理解认为是任何或全部权利要求的重要的、必需的或基本的特征或要素。本申请所使用的术语“包括”、“由......构成”或其任何其它的变化都意图覆盖非排它性的内涵,例如处理、方法、物件或装置,它们所包含的要素的列表并不只是包括这些要素,而是可以包括其它没有表达列举的要素或者属于该处理、方法、物件或装置固有的要素。
本申请所使用的术语“多个”被定义为两个或者多于两个。本申请所使用的术语“另一个”被定义为至少第二个或者更多。
本申请所使用的术语“耦合”被定义为连接,尽管不必是直接地,以及不必是机械地连接。
因为上述详细描述是示例性的,所以当“一个实施例”被描述时,其是示例性的实施例。因此,在该上下文中词语“一个”的使用不旨在指示一个并且只有一个实施例可以具有所描述的特征。而是,许多其它实施例可以并且通常具有示例性的“一个实施例”的所描述特征。因此,当如上使用时,当本发明在一个实施例的上下文中被描述时,该一个实施例是本发明许多可能实施例中的一个。
尽管存在关于词语“一个实施例”在详细描述中的使用的上述警告,但本领域技术人员将理解如果引导的权利要求要素的具体数量在下面的权利要求中被意旨,那么这种意旨将在权利要求中被明确地叙述,而在没有这种叙述时就没有这种限制存在或被意旨。例如,在下面的权利要求中,当权利要求要素被描述为具有“一个”特征时,将意旨该要素应该被限制为一个并且是所描述特征的唯一一个。
此外,本申请所使用的术语“一”被定义为一个或者多于一个。同样,权利要求中例如“至少一个”和“一个或多个”的引导性短语的使用不应该被解释为暗示通过不定冠词“一”引导的另一个权利要求要素将含有这种引导的权利要求要素的任何具体的权利要求限制为只包含一个这种要素的发明,即使在相同的权利要求包括引导性短语“一个或多个”或“至少一个”和例如“一”的不定冠词时。定冠词的使用也一样。

Claims (20)

1.一种数据处理系统,包含:
地址转换器,用于执行地址转换,所述地址转换器接收逻辑地址并且将所述逻辑地址转换为物理地址并且提供一个或多个地址属性;以及
旁路电路,耦合至所述地址转换器,所述旁路电路选择性地提供所述逻辑地址作为被接收的所述逻辑地址的已转换地址,其中所述选择性地提供在提供与所述逻辑地址相关联的所述一个或多个地址属性之前完成。
2.如权利要求1所述的数据处理系统,其中所述地址转换器在提供所述一个或多个地址属性的同时将所述逻辑地址转换为物理地址,但所述旁路电路并不将所述物理地址作为所述已转换地址来输出。
3.如权利要求1所述的数据处理系统,其中所述旁路电路进一步包含:
具有一个或多个位的控制寄存器,所述一个或多个位的值确定所述地址转换器是否在提供与所述逻辑地址相关联的所述一个或多个属性之前将被接收的所述逻辑地址作为所述已转换地址来提供。
4.如权利要求3所述的数据处理系统,其中所述旁路电路进一步包含重置输入端,其中响应于收到重置信号,在所述控制寄存器中放置预定值以控制是否旁路由所述地址转换器提供的所述物理地址。
5.如权利要求3所述的数据处理系统,其中所述控制寄存器包含第一个位以及第二个位,所述第一个位的值在被接收的所述逻辑地址是指令的逻辑地址时控制已转换物理地址值的旁路,所述第二个位的值在被接收的所述逻辑地址是数据的逻辑地址时控制已转换物理地址值的旁路。
6.如权利要求3所述的数据处理系统,其中所述旁路电路进一步包含重置输入端,其中响应于收到具有预定值的重置信号,所述旁路电路确定所述一个或多个位的值。
7.如权利要求1所述的数据处理系统,其中所述旁路电路进一步包含:
控制输入端,用于接收旁路控制信号,所述旁路控制信号的值确定所述地址转换器是否将被接收的所述逻辑地址作为所述已转换地址来提供。
8.如权利要求7所述的数据处理系统,其中所述旁路控制信号耦合至所述地址转换器,所述控制信号选择性地禁止所述地址转换器提供已转换逻辑地址而同时允许所述地址转换器提供与所述逻辑地址相关联的所述一个或多个属性。
9.如权利要求1所述的数据处理系统,其中所述地址转换器进一步包含:
输出端,用于提供命中/未命中信号,所述命中/未命中信号表明在选择性地提供所述逻辑地址作为所述已转换地址之后所述地址转换器是否包含与被接收的所述逻辑地址相对应的值。
10.一种数据处理系统中的地址转换方法,包含:
接收逻辑地址;
初始化所述逻辑地址到物理地址和一个或多个属性的转换;以及
响应于控制信号,在使得所述一个或多个属性可用之前选择性地提供所述逻辑地址作为所选择的已转换地址。
11.如权利要求10所述的地址转换方法,进一步包含响应于存储在控制寄存器中的可编程控制位而生成所述控制信号。
12.如权利要求11所述的地址转换方法,进一步包含:
重置所述数据处理系统;以及
响应于所述重置而将所述可编程控制位的值设置为预定值。
13.如权利要求10所述的地址转换方法,进一步包含禁止所述逻辑地址到物理地址的转换,但使用所述逻辑地址来创建所述一个或多个属性,所述禁止是响应于所述控制信号的。
14.如权利要求10所述的地址转换方法,进一步包含:
接收所述逻辑地址作为指令的逻辑地址;以及
接收第二逻辑地址,所述第二逻辑地址是响应第二控制信号而被转换的数据逻辑地址,其中所述控制信号和所述第二控制信号基于地址是指令地址还是数据地址而独立地控制地址转换。
15.一种数据处理系统,包含:
处理逻辑,用于执行数据处理;以及
地址转换电路,耦合至所述处理逻辑以执行地址转换,所述地址转换电路包含:
地址转换器,用于接收逻辑地址并且将所述逻辑地址转换为物理地址和一个或多个地址属性;
选择电路,用于接收所述逻辑地址并且耦合至所述地址转换器以接收所述物理地址,所述选择电路具有控制输入端和输出端以提供被选地址;以及
旁路电路,耦合至所述选择电路,所述旁路电路提供控制信号至所述选择电路的所述控制输入端以在提供与所述逻辑地址相关联的所述一个或多个地址属性之前选择性地提供所述逻辑地址作为被选地址,所述旁路电路旁路所述物理地址作为被选地址的使用。
16.如权利要求15所述的数据处理系统,其中所述旁路电路进一步包含:
控制寄存器,具有第一控制位,所述第一控制位用于在所述逻辑地址是指令地址时生成所述控制信号,并且所述控制寄存器具有第二控制位,所述第二控制位用于在所述逻辑地址是数据地址时生成所述控制信号。
17.如权利要求15所述的数据处理系统,其中所述控制信号还耦合至所述地址转换器,所述控制信号选择性地禁止提供物理地址而同时所述地址转换器对所述逻辑地址进行转换以提供所述一个或多个地址属性。
18.如权利要求15所述的数据处理系统,其中所述旁路电路进一步包含用于接收重置信号的重置输入端,所述重置信号确定所述控制信号的值以选择性地旁路所述物理地址作为所述被选地址的使用。
19.如权利要求15所述的数据处理系统,其中所述旁路电路进一步包含:
控制信号输入端,用于接收在生成所述控制信号中使用的输入信号。
20.如权利要求15所述的数据处理系统,其中所述地址转换器确定被接收的所述逻辑地址是否表示所述地址转换器中已存地址值的命中或者未命中,并且响应其而在指示输出端上生成命中/未命中信号,所述数据处理系统响应未命中指示而执行未命中处理。
CN2007800063456A 2006-02-23 2007-01-29 具有地址转换旁路的数据处理系统及其方法 Expired - Fee Related CN101390062B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/360,926 2006-02-23
US11/360,926 US7376807B2 (en) 2006-02-23 2006-02-23 Data processing system having address translation bypass and method therefor
PCT/US2007/061191 WO2007117746A2 (en) 2006-02-23 2007-01-29 Data processing system having address translation bypass and method therefor

Publications (2)

Publication Number Publication Date
CN101390062A true CN101390062A (zh) 2009-03-18
CN101390062B CN101390062B (zh) 2011-02-23

Family

ID=38429766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2007800063456A Expired - Fee Related CN101390062B (zh) 2006-02-23 2007-01-29 具有地址转换旁路的数据处理系统及其方法

Country Status (5)

Country Link
US (2) US7376807B2 (zh)
JP (1) JP5144542B2 (zh)
CN (1) CN101390062B (zh)
TW (1) TW200817900A (zh)
WO (1) WO2007117746A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102460403A (zh) * 2009-06-11 2012-05-16 飞思卡尔半导体公司 用于地址转换的动态和选择性改变的处理器和方法
CN104067246A (zh) * 2012-01-10 2014-09-24 高通股份有限公司 通过物理地址进行的非分配存储器存取

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272635A (ja) * 2006-03-31 2007-10-18 Toshiba Corp メモリシステム及びコントローラ
US7401201B2 (en) * 2006-04-28 2008-07-15 Freescale Semiconductor, Inc. Processor and method for altering address translation
US7707383B2 (en) * 2006-11-21 2010-04-27 Intel Corporation Address translation performance in virtualized environments
US20100122017A1 (en) * 2007-03-28 2010-05-13 Masayuki Toyama Memory controller, non-volatile memory system, and host device
US7925842B2 (en) 2007-12-18 2011-04-12 International Business Machines Corporation Allocating a global shared memory
US7921261B2 (en) 2007-12-18 2011-04-05 International Business Machines Corporation Reserving a global address space
US8275947B2 (en) 2008-02-01 2012-09-25 International Business Machines Corporation Mechanism to prevent illegal access to task address space by unauthorized tasks
US8893126B2 (en) * 2008-02-01 2014-11-18 International Business Machines Corporation Binding a process to a special purpose processing element having characteristics of a processor
US8200910B2 (en) 2008-02-01 2012-06-12 International Business Machines Corporation Generating and issuing global shared memory operations via a send FIFO
US8146094B2 (en) * 2008-02-01 2012-03-27 International Business Machines Corporation Guaranteeing delivery of multi-packet GSM messages
US7844746B2 (en) * 2008-02-01 2010-11-30 International Business Machines Corporation Accessing an effective address and determining whether the effective address is associated with remotely coupled I/O adapters
US8484307B2 (en) 2008-02-01 2013-07-09 International Business Machines Corporation Host fabric interface (HFI) to perform global shared memory (GSM) operations
US8214604B2 (en) 2008-02-01 2012-07-03 International Business Machines Corporation Mechanisms to order global shared memory operations
US8239879B2 (en) 2008-02-01 2012-08-07 International Business Machines Corporation Notification by task of completion of GSM operations at target node
US8255913B2 (en) 2008-02-01 2012-08-28 International Business Machines Corporation Notification to task of completion of GSM operations by initiator node
US20140325129A1 (en) * 2008-12-31 2014-10-30 Micron Technology, Inc. Method and apparatus for active range mapping for a nonvolatile memory device
JP5608738B2 (ja) * 2009-06-26 2014-10-15 インテル・コーポレーション 無制限トランザクショナルメモリ(utm)システムの最適化
US9164886B1 (en) 2010-09-21 2015-10-20 Western Digital Technologies, Inc. System and method for multistage processing in a memory storage subsystem
US8358152B2 (en) 2010-11-17 2013-01-22 Apple Inc. Integrated circuit including pulse control logic having shared gating control
US9916257B2 (en) * 2011-07-26 2018-03-13 Intel Corporation Method and apparatus for TLB shoot-down in a heterogeneous computing system supporting shared virtual memory
GB2493340A (en) * 2011-07-28 2013-02-06 St Microelectronics Res & Dev Address mapping of boot transactions between dies in a system in package
FR2979443B1 (fr) * 2011-08-30 2013-09-27 Maxim Integrated Products Microcontroleur securise a base de mode
US9448960B2 (en) * 2013-03-14 2016-09-20 Linear Technology Corporation Address translation in I2C data communications system
US9933980B2 (en) * 2014-02-24 2018-04-03 Toshiba Memory Corporation NAND raid controller for connection between an SSD controller and multiple non-volatile storage units
US9720661B2 (en) 2014-03-31 2017-08-01 International Businesss Machines Corporation Selectively controlling use of extended mode features
US9715449B2 (en) 2014-03-31 2017-07-25 International Business Machines Corporation Hierarchical translation structures providing separate translations for instruction fetches and data accesses
US9734083B2 (en) 2014-03-31 2017-08-15 International Business Machines Corporation Separate memory address translations for instruction fetches and data accesses
US9858058B2 (en) 2014-03-31 2018-01-02 International Business Machines Corporation Partition mobility for partitions with extended code
US9483295B2 (en) 2014-03-31 2016-11-01 International Business Machines Corporation Transparent dynamic code optimization
US9256546B2 (en) 2014-03-31 2016-02-09 International Business Machines Corporation Transparent code patching including updating of address translation structures
US9569115B2 (en) 2014-03-31 2017-02-14 International Business Machines Corporation Transparent code patching
US9824021B2 (en) 2014-03-31 2017-11-21 International Business Machines Corporation Address translation structures to provide separate translations for instruction fetches and data accesses
DE102016108525B4 (de) * 2016-05-09 2022-01-27 Infineon Technologies Ag Vorrichtung zur Verwendung beim Zugriff auf einen Speicher
US10503649B2 (en) * 2016-11-28 2019-12-10 Taiwan Semiconductor Manufacturing Co., Ltd. Integrated circuit and address mapping method for cache memory
US10402355B2 (en) * 2017-02-08 2019-09-03 Texas Instruments Incorporated Apparatus and mechanism to bypass PCIe address translation by using alternative routing
US11221957B2 (en) 2018-08-31 2022-01-11 International Business Machines Corporation Promotion of ERAT cache entries
WO2020236283A1 (en) 2019-05-23 2020-11-26 Cray Inc. System and method for dynamic allocation of reduction engines
TWI719786B (zh) 2019-12-30 2021-02-21 財團法人工業技術研究院 資料處理系統與方法
US11455110B1 (en) * 2021-09-08 2022-09-27 International Business Machines Corporation Data deduplication

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4488228A (en) * 1982-12-03 1984-12-11 Motorola, Inc. Virtual memory data processor
US4524415A (en) * 1982-12-07 1985-06-18 Motorola, Inc. Virtual machine data processor
US4493035A (en) * 1982-12-07 1985-01-08 Motorola, Inc. Data processor version validation
US4635193A (en) * 1984-06-27 1987-01-06 Motorola, Inc. Data processor having selective breakpoint capability with minimal overhead
US4763250A (en) * 1985-04-01 1988-08-09 Motorola, Inc. Paged memory management unit having variable number of translation table levels
JPS62131352A (ja) * 1985-12-04 1987-06-13 Fujitsu Ltd アドレス変換制御方式
US5029072A (en) * 1985-12-23 1991-07-02 Motorola, Inc. Lock warning mechanism for a cache
US4763244A (en) * 1986-01-15 1988-08-09 Motorola, Inc. Paged memory management unit capable of selectively supporting multiple address spaces
US4890223A (en) * 1986-01-15 1989-12-26 Motorola, Inc. Paged memory management unit which evaluates access permissions when creating translator
US4862352A (en) * 1987-09-16 1989-08-29 Motorola, Inc. Data processor having pulse width encoded status output signal
US4888688A (en) * 1987-09-18 1989-12-19 Motorola, Inc. Dynamic disable mechanism for a memory management unit
JPS6482152A (en) * 1987-09-24 1989-03-28 Nec Corp Information processor
US5319763A (en) * 1991-04-02 1994-06-07 Motorola, Inc. Data processor with concurrent static and dynamic masking of operand information and method therefor
US5239642A (en) * 1991-04-02 1993-08-24 Motorola, Inc. Data processor with shared control and drive circuitry for both breakpoint and content addressable storage devices
US5341500A (en) * 1991-04-02 1994-08-23 Motorola, Inc. Data processor with combined static and dynamic masking of operand for breakpoint operation
JPH04307646A (ja) * 1991-04-04 1992-10-29 Nec Corp 論実一致空間作成によるアドレシング高速化方式
US5375216A (en) * 1992-02-28 1994-12-20 Motorola, Inc. Apparatus and method for optimizing performance of a cache memory in a data processing system
US5732405A (en) * 1992-10-02 1998-03-24 Motorola, Inc. Method and apparatus for performing a cache operation in a data processing system
US5388226A (en) * 1992-10-05 1995-02-07 Motorola, Inc. Method and apparatus for accessing a register in a data processing system
JPH07175663A (ja) * 1993-12-16 1995-07-14 Fuji Xerox Co Ltd 情報処理装置の処理高速化方法
US5666509A (en) * 1994-03-24 1997-09-09 Motorola, Inc. Data processing system for performing either a precise memory access or an imprecise memory access based upon a logical address value and method thereof
US5535351A (en) * 1994-04-04 1996-07-09 Motorola, Inc. Address translator with by-pass circuit and method of operation
US6154826A (en) * 1994-11-16 2000-11-28 University Of Virginia Patent Foundation Method and device for maximizing memory system bandwidth by accessing data in a dynamically determined order
US6185657B1 (en) * 1998-04-20 2001-02-06 Motorola Inc. Multi-way cache apparatus and method
US6442664B1 (en) * 1999-06-01 2002-08-27 International Business Machines Corporation Computer memory address translation system
GB9921698D0 (en) * 1999-09-14 1999-11-17 Coolflow Ltd Beverage cooling system
US6519684B1 (en) * 1999-11-23 2003-02-11 Motorola, Inc. Low overhead method for selecting and updating an entry in a cache memory
US6748558B1 (en) * 2000-05-10 2004-06-08 Motorola, Inc. Performance monitor system and method suitable for use in an integrated circuit
US6859875B1 (en) * 2000-06-12 2005-02-22 Freescale Semiconductor, Inc. Processor having selective branch prediction
US6766431B1 (en) * 2000-06-16 2004-07-20 Freescale Semiconductor, Inc. Data processing system and method for a sector cache
US6651156B1 (en) 2001-03-30 2003-11-18 Mips Technologies, Inc. Mechanism for extending properties of virtual memory pages by a TLB
US6643759B2 (en) 2001-03-30 2003-11-04 Mips Technologies, Inc. Mechanism to extend computer memory protection schemes
US6728859B1 (en) 2001-07-13 2004-04-27 Mips Technologies, Inc. Programmable page table access
US6523104B2 (en) 2001-07-13 2003-02-18 Mips Technologies, Inc. Mechanism for programmable modification of memory mapping granularity
KR100450675B1 (ko) 2002-03-19 2004-10-01 삼성전자주식회사 성능향상 및 전력소모를 감소시킬 수 있는 tlb
US6725289B1 (en) * 2002-04-17 2004-04-20 Vmware, Inc. Transparent address remapping for high-speed I/O
JP4026753B2 (ja) * 2002-07-25 2007-12-26 株式会社日立製作所 半導体集積回路
US6829762B2 (en) * 2002-10-10 2004-12-07 International Business Machnies Corporation Method, apparatus and system for allocating and accessing memory-mapped facilities within a data processing system
US6925542B2 (en) * 2003-03-21 2005-08-02 Freescale Semiconductor, Inc. Memory management in a data processing system
US6963963B2 (en) * 2003-03-25 2005-11-08 Freescale Semiconductor, Inc. Multiprocessor system having a shared main memory accessible by all processor units
US7243208B2 (en) * 2003-08-13 2007-07-10 Renesas Technology Corp. Data processor and IP module for data processor
US7159095B2 (en) * 2003-12-09 2007-01-02 International Business Machines Corporation Method of efficiently handling multiple page sizes in an effective to real address translation (ERAT) table
CN100426259C (zh) * 2005-08-18 2008-10-15 北京中星微电子有限公司 一种存储器文件数据虚拟存取方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102460403A (zh) * 2009-06-11 2012-05-16 飞思卡尔半导体公司 用于地址转换的动态和选择性改变的处理器和方法
CN102460403B (zh) * 2009-06-11 2016-01-27 飞思卡尔半导体公司 用于地址转换的动态和选择性改变的处理器和方法
CN104067246A (zh) * 2012-01-10 2014-09-24 高通股份有限公司 通过物理地址进行的非分配存储器存取
CN104067246B (zh) * 2012-01-10 2018-07-03 高通股份有限公司 通过物理地址进行的非分配存储器存取

Also Published As

Publication number Publication date
US20070198804A1 (en) 2007-08-23
US7447867B2 (en) 2008-11-04
JP5144542B2 (ja) 2013-02-13
US7376807B2 (en) 2008-05-20
TW200817900A (en) 2008-04-16
JP2009527861A (ja) 2009-07-30
WO2007117746A2 (en) 2007-10-18
US20070198805A1 (en) 2007-08-23
CN101390062B (zh) 2011-02-23
WO2007117746A3 (en) 2008-10-30

Similar Documents

Publication Publication Date Title
CN101390062B (zh) 具有地址转换旁路的数据处理系统及其方法
KR100263672B1 (ko) 가변적인 페이지 크기를 지원하는 어드레스 변환장치
US5956744A (en) Memory configuration cache with multilevel hierarchy least recently used cache entry replacement
US5850632A (en) Memory access controller utilizing cache memory to store configuration information
JP2013513893A (ja) パターン認識プロセッサにおける消費電力を低減させるための方法及び装置
US5634013A (en) Bus bridge address translator
JP3532533B2 (ja) アービタ及びそのアービタを採用したバスシステム
US20090235010A1 (en) Data processing circuit, cache system, and data transfer apparatus
US20100257334A1 (en) Semiconductor integrated circuit, information processing device, and control method for semiconductor integrated circuit
US8108574B2 (en) Apparatus and methods for translation of data formats between multiple interface types
KR100436051B1 (ko) 입출력 포트가 간소화된 마이크로 컨트롤러 개발 시스템
JPH07226079A (ja) 半導体メモリ装置
JPH10116225A (ja) アドレス変換回路及びマルチプロセッサシステム
CN117795494A (zh) 处理器以及字节序转换方法
KR950012069B1 (ko) 직렬통신을 이용한 외부데이타 입력장치
JP2728759B2 (ja) データ伝送装置
JPH10240678A (ja) 拡張入出力バス
SU1264172A1 (ru) Микропрограммное устройство управлени
KR100791176B1 (ko) 디지털 데이터 폭 정합을 통한 인터페이스 장치
CN117421268A (zh) 一种互联系统、设备及网络
KR19990055468A (ko) 디티브이의 온-스크린 디스플레이 처리장치
JPH0660019A (ja) データ格納方式
KR20000074477A (ko) 버스 변환기
JP2003296105A (ja) データ処理装置
JPH07325913A (ja) 情報処理システム

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
ASS Succession or assignment of patent right

Owner name: RAMBUS INC.

Free format text: FORMER OWNER: FREESCALE SEMICONDUCTOR, INC.

Effective date: 20120814

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20120814

Address after: American California

Patentee after: Lanbushi company

Address before: Texas in the United States

Patentee before: Fisical Semiconductor Inc.

C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20110223

Termination date: 20130129