实现快速存取数据结构元素的系统、方法及装置制造方法及图纸

技术编号:2854773 阅读:217 留言:0更新日期:2012-04-11 18:40
本发明专利技术涉及一种可实现快速存取数据结构元素的一处理器,此处理器包含一位于具有数组的数据结构中的元素以及至少一索引、一基地址;该处理器包含一分割位移器,该分割位移器用以将该索引值往上位移三个比特位置以及输出一字节偏移;该处理器亦包含一加法器,该加法器用以将上述字节偏移与上述基地址相加,并且输出一最终地址;该处理器还包含一通用位移器,该通用位移器用以执行左旋、右旋以及左移、右移;以及该处理器包含一选择器,该选择器用以选择上述最终地址或者是上述通用位移器的一输出信号。

【技术实现步骤摘要】

本专利技术是有关于减少一处理器内的延迟时间,特别是有关于一种在单一频率周期内计算一数组元素地址的逻辑结构。
技术介绍
计算机软件内较常见的操作之一是存取一数据结构内的元素,而此存取通常接收像是此数据结构的基地址及一对应此数据结构中元素的索引,此为一般常见的数组元素的存取。而计算机软件程序一般指示一数组中的第i个元素系使用术语,例如“x=array”。当数组为一储存半字组、字组或双字组的混合结构时,其索引往往由将其索引值左移1、2或3个比特位置而转换成字节偏移以得到偏移值,然后此偏移值被加至基地址,进而产生最终地址用以存取内存内数据。一般实行转换索引至偏移值的方法,是在管线执行的阶段利用一具有加法器的通用位移器,此通用位移器具有左移、逻辑右移、算数右移及右旋转0~32比特位置的能力。此通用位移器会在第一频率周期移动索引适当的数量;然后加法器则在第二频率周期将此索引加至基地址。上述结构的缺点在于其花费了两个频率周期执行此经常性的操作。由于处理器在操作期间执行许多次此操作,因此在某种程度而言,处理器的时间是因上述操作时间的消耗而浪费掉。鉴于以上所述的缺点,实有需要持续发展新的改良系统、方法及装置,以克服上述所提及的限定及缺失。
技术实现思路
本专利技术的目的在于提供一种实现快速存取数据结构元素的系统、方法及装置。为实现上述目的,本专利技术提供的存取数据结构元素的装置,包含一第一位移器,用以接收一第一位移输入及一第一位移数量并传递一位移值;一第二位移器,用以接收一第二位移输入及一第二位移数量并传递一基底偏移值;一加法器,耦接该第二位移器,该加法器用以接收该基底偏移值及一基地址并传递一最终地址;以及一多任务器,在存取一数据结构的情况下会选取该最终地址,在非存取一数据结构的情况下会选取该位移值。所述的存取数据结构元素的装置,其中该第一位移器为一通用位移器。所述的存取数据结构元素的装置,其中该第二位移器还用以逻辑左移。所述的存取数据结构元素的装置,其中该第二位移器较该第一位移器运作于较少的闸级延迟。所述的存取数据结构元素的装置,其中该第一位移器执行该第二位移器所无法执行的至少一操作。所述的存取数据结构元素的装置,包含至少一正反器用以保持一信号至少一频率周期。本专利技术提供的存取数据结构元素的方法,包含接收具有至少一索引值的一数组;接收一基地址;利用一分割位移器位移该索引值,其中该分割位移器用以执行逻辑左移并传递一基底偏移值;由相加该基底偏移值与该基地址产生一最终地址;以及在存取一数据结构时,从一加法器选取该最终地址,以及在非存取一数据结构时,从一通用位移器选取一输出信号。所述的存取数据结构元素的方法,其中该通用位移器执行该分割位移器所无法执行的至少一功能。所述的存取数据结构元素的方法,其中该分割位移器操作较该通用位移器快。所述的存取数据结构元素的方法,包含在存取一数据结构时,从该分割位移器选取该基底偏移值,以及在非存取一数据结构时,从该通用位移器选取一输出信号。本专利技术提供的存取数据结构元素的系统,包含具有至少一索引值的一数组;一基地址;一分割位移器,该分割位移器由位移该索引值产生一字节地址;以及一加法器,该加法器由相加该基地址与该字节地址产生一最终地址。所述的存取数据结构元素的系统,包含一通用位移器用以执行该分割位移器所无法执行的至少一功能。所述的存取数据结构元素的系统,其中该分割位移器较该通用位移器运作于较少的闸级延迟。所述的存取数据结构元素的系统,包含一选择器用以在存取一数据结构时,选取该最终地址,以及在非存取一数据结构时,从该通用位移器选取一输出信号。附图说明图1为一微处理器内的一管线结构的机能方块图;图2为图1的微处理器的另一实施例的机能方块图,其描绘一数据结构的一元素的存取;图3为执行图2部分管线结构的电路的机能方块图;图4为图1的微处理器电路操作于单一频率周期的机能方块图;图5为一通用位移器的机能方块图,如图3、图4所示;图6为图5的通用位移器内的电路的机能方块图; 图7为可与图1微处理器使用的一分割位移器的机能方块图;图8为图7分割位移器内的电路的机能方块图;图9为图7分割位移器内的附加电路的机能方块图;图10为使用于图1微处理器内的另一分割位移器实施例的机能方块图;图11为图10分割位移器内的电路的机能方块图;图12为利用本专利技术的一实施例的微处理器内的一管线结构的机能方块图,其与图1的微处理器比较;图13为本专利技术使用于第一图的微处理器内的一电路实施例的机能方块图;以及图14为图13的另一实施例的机能方块图。具体实施例方式本专利技术的部分目的、优点及创新的特征将于下列描述中提出,且依其后的检视或实际学习可成为熟悉该项技术人员显而易知的事项。本专利技术提供一具有改良逻辑电路的处理器,在一实施例中,此处理器包含至少一索引及一基地址以及一实现较快存取一数组型数据结构中的一元素的系统;此处理器亦包含一用以移动此索引值并输出一字节偏移的分割位移器;一用以将上述的字节偏移与上述的基地址相加并输出一最终地址的加法器;以及一通用位移器及一选择器,而此选择器是用以选择上述最终地址或上述通用位移器的一输出信号。其它的系统、方法、特征及/或优点,依附图及详细描述的检视将或可能成为熟悉该项技艺者显而易知的事项。而所有此类修改的系统、方法、特征及/或优点均应包含在本专利技术中及申请的专利范围保护。本专利技术的一些实施例会详细描述如下。然而,除了详细描述外,本专利技术还可以广泛地在其它的实施例施行,且本专利技术的范围不受限定,其以专利范围为准。并且,为提供更清楚的描述及更容易理解本专利技术,附图内各部分并没有依照其相对尺寸绘图,某些尺寸与其它相关尺度的比例已经被夸张;不相关的细节部分也未完全绘出,以求附图的简洁。一管线结构包含一中央处理单元(central processing unit;CPU),用以在一程序中运转以执行每一机械码指令的一序列动作。在每一周期的开始,中央处理单元将程序计数器的值呈现在地址总线(未绘出)上,然后中央处理单元经由数据总线从主存储器(可能经由快取及/或管线)撷取指令到指令缓存器内。请参照图1,为一中央处理单元内一管线结构的功能方块图。在此范例中,中央处理单元系执行6个阶段。在第一阶段105,中央处理单元是从计算机的另一部分撷取一指令。在指令撷取阶段105执行的后,处理器则在阶段110将此指令译码以决定如何执行此指令。此指令的译码可能揭示此指令是呼叫一算数逻辑单元的功能(例如加法、减法等),是执行一寻址功能或是其它类型的功能。译码阶段110亦决定此指令执行时所需的一些缓存器以及从缓存器组(未绘出)中存取该些缓存器。一但该些缓存器被确认,指令译码阶段110亦会从适当的缓存器(或随机存取内存(RAM)、高速缓存等)撷取数据以供执行阶段120使用。一但指令被译码且缓存器被存取,执行阶段120即执行此指令,此表示执行阶段120会计算此指令的结果。这些结果包含一些地址的加载与储存以及算数逻辑单元所计算的值。如一非限制本专利技术范围的范例所示,如果指令呼叫加法,执行阶段120将执行两个指定值的相加。一但指令被执行,处理器会在数据存取阶段125中存取数据以及在阶段130中将数据写回位于缓存器组内的一(些)适当缓存器。对于一加法功能,算数逻辑单元一般本文档来自技高网...

【技术保护点】
一种存取数据结构元素的装置,包含:一第一位移器,用以接收一第一位移输入及一第一位移数量并传递一位移值;一第二位移器,用以接收一第二位移输入及一第二位移数量并传递一基底偏移值;一加法器,耦接该第二位移器,该加法器用以接 收该基底偏移值及一基地址并传递一最终地址;以及一多任务器,在存取一数据结构的情况下会选取该最终地址,在非存取一数据结构的情况下会选取该位移值。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:查理斯雪洛
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1