管线式标签控制器的制作方法

文档序号:6655495阅读:218来源:国知局
专利名称:管线式标签控制器的制作方法
技术领域
本发明提供一种标签控制器,特别是一种不会出现失速状态的管线式标签控制器,其为一种在管线式(pipeline)的系统中可防止故障(stall)的标签控制器。
在目前的电脑系统中,快取存储器被广泛应用于储存一随时可被处理器提取的存储数据,且该存储数据储存在随机存储器(RAM)中;而为求节省储存空间及加快存取的速度,目前一般的做法是将地址及数据分开储存在存储器中,以节省存储器空间,且地址与数据之间有一对应关系,因此,当处理器找到储存在存储器间的地址时,其对应的数据即可被找到。
而在每一个快取存储器的入口处,为求检索其数据是否储存在于快取存储器中,用一部分地址做为标签(tag),若此笔数据是存取在于快取存储器中,则被定义为″找到″,反之,若此笔数据并未存在快取存储器中,则被定义为″遗漏″。而以往用以增进标签随机存储器的存取速率的标签控制器1,如

图1所示,其用以接收一外部输入地址,此标签控制器1为一种管线式(Pipeline)结构,并包括有一标签暂存器10、一地址暂存器11、一写入暂存器12、一标签随机存储器13、一比较器14及一选择器15;该外部输入地址2分成一第一标签及一检索地址,在第一周期时,此第一标签储存在标签暂存器10内;而其检索地址则储存在地址暂存器11中,该标签随机存储器13是根据其检索地址找出储存在此标签随机存取存储器13中的对应标签,并经比较器比较具第一标签是否和检索出的对应标签相同。
请对应参考图2,若相同,则比较器14则输出一″找到″的信号至选择器15中,此选择器15则根据此信号输出一控制信号至快取存储器中,并找出对应的数据(图未示),在第二周期时,再由外部输入地址2传入一第二标签。
若不相同,则如图3所示,比较器14则输出一″遗漏″的信号至选择器15中,此时该选择器在第二周期时,将此第一标签及其一替换地址经写入暂存器12及地址暂存器11写入第一标签至标签随机存取存储器13中,此一步骤即称为更新。
由上述可知,以往的管线式的标签控制器大略包含下列步骤,如1、输入标签的储存,2、标签随机存储器的检索,3、对该等标签进行比较,4、对标签RAM的替代的地址及更新进行选择;然而,由前述可知,以往的标签控制器在″遗漏″的情形时,必须有一延迟时间以便重新排列读取及更新写入的动作,且更新的步骤往往比在管线式内所处理的时间延迟一个甚至数个周期,会引起管线流通的时间延迟问题,有监于斯,本案发明人集多年研发的经验,以能防止时间延迟或故障,以可增加管线的流畅度。
本发明的目的在于提供一种可防止时间延迟或故障的标签控制器。
为达到上述目的,本发明采取如下技术措施本发明主要包括有一个第一及第二暂存器,其中,第一暂存器用以储存一由外部输入的第一标签,第二暂存器,耦合于第一暂存器的输出端,以用以接收在下一周期时由第一暂存器所输出的第一标签,并在同时由外部输入一第二标签至该第一暂存器中;一存取存储模组,具有一存取单元及一比较单元,该存取单元内储存有多个标签及可供接收一更新标签,第一比较单元则接收第一标签,并分别与该多个标签及更新标签比较后输出一第一决定信号;该状态模组具有一第二比较单元及一决定单元,该第二比较单元接收该第一标签及第二标签并经比较后输出一第二决定信号,该决定单元则接收并比较该第一决定信号及该第二决定信号后输出一第三决定信号;该选择模组,接收该第三决定信号以判断是否产生一替代的地址以输出该更新标签。
当第一标签由外部输入后,会先检索该多数个标签及与该更新标签比较后,发出一第一决定信号以决定该第一标签是否储存在该存取单元中,倘若该第一决定信号发出为一“找到”的情况,则该选择模组将确定发出一″找到″的第三决定信号,反之,若该第一决定信号发出为一″遗漏″的情况,则必须再由该第二决定单元比较第一标签及第二标签以进一步确定欲寻找的标签是否存在于第二暂存器中。
因此,即使是在″遗漏″状况,此标签控制器仍可在同一周期中同时写入一个新的标签及存入一个更新的标签,以达到防止时间延迟或故障的目的。
本发明采取如下具体结构本发明的一种管线式标签控制器,包含一第一及第二暂存器、一存储模组、一状态模组、一选择模组;第一暂存器用以储存一由外部输入的第一标签,第二暂存器耦合于第一暂存器的输出端,以用以接收储存上一笔由第一暂存器所输出的第二标签;存储模组具有一存取单元及一第一比较单元,存取单元内储存有多数个标签及供接收一更新标签,第一比较单元则接收该第一标签,并分别与该多数个标签及更新标签比较,并输出一第一决定信号;状态模组具有一第二比较单元及一决定单元,第二比较单元接收该第一标签及第二标签并经比较后输出一第二决定信号,该决定单元则接收并比较该第一决定信号及该第二决定信号后输出一第三决定信号;选择模组接收该第三决定信号以判断是否产生一替代的地址以输出该更新标签。
结合附图及实施例对本发明的结构特征详细说明如下图1为以往标签控制器的电路框图。
图2为以往标签控制器的时序示意图。
图3为以往标签控制器的另一时序示意图。
图4为本发明标签控制器实施例的电路框图。
图5为本发明实施例中存取存储模组的电路框图。
图6为本发明实施例中状态模组的电路框图。
图7为本发明实施例选择模组的电路框图。
图8为本发明实施例的时序示意图。
图9为本发明另一实施例中存取存储模组的电路框图。
如图4所示,其为本发明实施例的电路框图,此标签控制器3由一第一及第二暂存器30、31、一存取存储模组4、一状态模组5及一选择模组6所构成,其中第一及第二暂存器30、31,在本实施例中,第一暂存器30用以储存一由外部32(如中央处理单元)所输入的第一标签(标签1);该第二暂存器31耦合于第一暂存器30的输出端300,以用以接收在下一周期时由第一暂存器30所输出的第一标签(标签1),并在同时由外部输入一第二标签(标签2)至该第一暂存器30中。该存取存储模组4,请续参阅图5,具有一存取单元40及一比较单元41,在本实施例中,存取单元40由一标签随机存储器400、一读取地址暂存器401、一写入暂存器402及一写入地址暂存器403所构成,该标签随机存取存储器400内储存有多数个标签以供检索;该读取地址暂存器401其一端接收由外部32输入的检索地址,另一端则耦合至该标签随机存取存储器400上,以供自标签随机存取存储器400中读出与该检索地址对应的标签;写入暂存器402接收来自选择模组6所输出的一更新标签(可对应参考图4);而写入地址暂存器403则接收来自选择模组6所输出的替代地址,以提供该更新标签至一新的地址。
该比较单元41在本实施例中由一第一比较电路410、一第二比较电路411及一非门电路412所构成;该第一比较电路410分别耦合至该第一暂存器30及该标签随机存储器400,以用以比较该第一标签(标签1)及检索标签;第二比较电路411则分别耦合至第一暂存器30及写入暂存器402的输出端4020,以用以比较该第一标签及更新标签;该非门电路412则分别耦合至第一及第二比较电路410、411用以接收此两比较电路的输出信号,经运算比较后输出一定义为“找到/遗漏”的第一决定信号。
状态模组5,请参阅图6,具有一比较单元50及一决定单元51,在本实施例中,比较单元50由一比较电路500、一匹配暂存器501及一状态暂存器502所构成;比较电路500分别耦合至该第一暂存器30及第二暂存器31的输出端300、310,以用以比较此时存在于此两暂存器30、31的第二及第一标签是否相同,并在比较后输出一第二决定信号;该匹配暂存器501耦合至该比较电路500处,以用以储存由该比较电路500所输出的第二决定信号;该状态暂存器502接收并储存由该非门电路412所传出的第一决定信号;决定单元51则分别连接,至匹配暂存器501及该状态暂存器502,以用以比较第一及第二决定信号后输出一“找到/遗漏”的第三决定信号。
该选择模组6,如图7所示,在本实施例中由一选择器60及一替代地址产生器61所构成,该选择器60连接至该决定单元51以用以接收该第三决定信号并决定是否选择一最近可用的替代地址,该替代地址产生器61则连接至该选择器60及该第二暂存器31上,以可经计算后提供其选定的替代地址以供更新标签。
因此,请参考图4、5、6、7并对应参考图8的时序图,在第一周期时,其第一标签(标签1)由外部32输入至第一暂存器30内时,其对应的检索地址即输入至该读取地址暂存器401中,暂存器401读出位于该标签随机存取存储器400所在地址的标签,并经第一比较电路410与第一标签作一比较;同时该第一标签并经第二比较电路411与一存在写入暂存器402内的更新标签作一比较,而后再经由非门电路412输出一定义为″找到/遗漏″的第一决定信号至状态暂存器502中。
在第二周期时,该第一标签即由第一暂存器30输出至第二暂存器31中,此时,由外部32也输入一第二标签(标签2)至第一暂存器30内;并与存在于第二暂存器31内的第一标签经比较单元50中的比较电路500作一比较后输出一第二决定信号至匹配暂存器501中,最后再经该决定单元51比较第一及第二决定信号后,输出定义为″找到/遗漏″的第三决定信号至选择模组6中。
因此,在第三周期时,该第二标签输出至第二暂存器31中,此时,由外部输入一第三标签(标签3)至第一暂存器30内,该第二标签比较的流程则与第一标签相同,在此不再赘述;而上述输入至选择模组6的第三决定信号则提供选择器60中以决定是否选择一最近可用的替代地址,并可借由该替代地址产生器61经计算后提供一选定的地址以可供更新标签。
该第三决定信号在本实施例中为本标签控制器经检索比较后最终的结果,因此,如果结果为″找到″,则该选择器60输出一控制信号将此第一标签输出至数据随机存取存储器7中,以提取对应的数据。
若结果为″遗漏″,此时存在第二暂存器31中的第一标签则为被选定为一更新标签,并被输入该写入暂存器402中;选择器60发出一控制信号至该替代地址产生器61中,以可提供一选定的替代地址至该写入地址暂存器403中,以供更新标签存入其替代地址中。
因此,借由图8所示,本发明不论结果为″找到″或″遗漏″,由外部输入的标签皆能顺畅的进行且不受影响,如在第二周期时,虽结果为″遗漏″,但在第三周期时仍可输入一第三标签而不需如以往般等待更新写入后才可输入,使此标签控制器不会产生延迟的状态。
值得一提的是,第一比较单元内的比较电路数目随标签随机存取存储器的数目增加而增加,请续参阅图9,为本发明另一实施例,其主要的改变在存取存储模组4’中,具有二标签随机存取存储器(TAGRAM)400’、401’,及三比较电路410’、411’、412’;因此,当一标签输入后,则须分别与上述三个比较电路410’、411’、412’比较后再经由非门电路413’输出;而需更新时,选择器(图未示)即选择所欲存入的标签随机存储器(TAG RAM)为400’或401’,至于其他动作则与前一实施例大致相同,在此不再加以赘述。
与现有技术相比,本发明具有如下效果综上所述,本发明和以往相较,在″遗漏″的情形发生时,本发明确能借上述所公开的电路,解决以往所无法解决的问题,也就是在″遗漏″的情形发生时,需等待更新写入标签后,才能再输入标签而导致时间延迟或故障的问题。
上述内容是利用实施例说明本发明的技术特征,并非用于限制本发明的保护范围,即使有人在本发明构思的基础上稍作变动,仍应属于本发明的保护范围内。
权利要求
1.一种管线式标签控制器,包含一第一及第二暂存器、一存储模组、一状态模组、一选择模组,其特征在于第一暂存器用以储存一由外部输入的第一标签,第二暂存器耦合于第一暂存器的输出端,以用以接收储存上一笔由第一暂存器所输出的第二标签;存储模组具有一存取单元及一第一比较单元,存取单元内储存有多数个标签及供接收一更新标签,第一比较单元则接收该第一标签,并分别与该多数个标签及更新标签比较,并输出一第一决定信号;状态模组具有一第二比较单元及一决定单元,第二比较单元接收该第一标签及第二标签并经比较后输出一第二决定信号,该决定单元则接收并比较该第一决定信号及该第二决定信号后输出一第三决定信号;选择模组接收该第三决定信号以判断是否产生一替代的地址以输出该更新标签。
2.如权利要求1所述的标签控制器,其特征在于,所述存取单元包括至少一标签随机存储器,各标签随机存取存储器内皆储存有多个标签;一读取地址暂存器、一写入暂存器及一写入地址暂存器。
3.如权利要求1所述的标签控制器,其特征在于,所述比较单元由至少一比较电路及一非门电路构成。
4.如权利要求1所述的标签控制器,其特征在于,所述状态模组还包括一用以储存该第一决定信号的状态暂存器及一用以储存该第二决定信号的匹配暂存器。
5.如权利要求1所述的标签控制器,其特征在于,所述选择模组由一选择器及一替代地址产生器构成,选择器用以接收所述第三决定信号已决定是否选择一替代地址,并可借由替代地址产生器提供选定的地址,以可更新标签。
6.如权利要求5所述的标签控制器,其特征在于,所述替代地址为一最近可用的地址。
全文摘要
一种管线式标签控制器,包括:第一及第二暂存器,第一暂存器用以储存一由外部输入的第一标签,第二暂存器耦合于第一暂存器的输出端;一存取存储模组,具有一存取单元及一比较单元;状态模组具有一第二比较单元及一决定单元,第二比较单元接收第一标签及第二标签,经比较后输出一第二决定信号,决定单元接收并比较第一决定信号及第二决定信号后输出一第三决定信号;选择模组接收第三决定信号以判断是否产生一替代的地址以输出更新标签。
文档编号G06F12/00GK1379332SQ0110974
公开日2002年11月13日 申请日期2001年4月2日 优先权日2001年4月2日
发明者廖明豪, 吕忠晏 申请人:矽统科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1