缓冲控制装置及其管理方法制造方法及图纸

技术编号:2880440 阅读:173 留言:0更新日期:2012-04-11 18:40
本发明专利技术提供一种缓冲控制装置及其管理方法,以使缓冲控制装置在处理封包存取,管理缓冲记忆体的配置与释回动作上能够更为快速,该链结结构系将第一个缓冲暂存器的连结节点直接指向最后一个缓冲暂存器,接着最后一个缓冲暂存器的连结节点才指回第二个缓冲暂存器后,再由该第二个缓冲暂存器依序串列指到最后一个缓冲暂存器,以使释回此种链结结构的缓冲暂存器,可快速地将串列链结的缓冲暂存器释回给未使用串列。(*该技术在2022年保护过期,可自由使用*)

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术系有关于一种缓冲控制装置(Buffer controller)及其管理方法,进一步地说明,本专利技术系一种利用新颖的链结结构(Linked Structure)来管理缓冲暂存器(Buffers)的配置与释回的缓冲控制装置及其缓冲暂存器管理方法。请参阅附图说明图1所示,为习知利用链结串列方式(Linked List)的缓冲器管理示意图。当开始初始化时,由一指标器40指向缓冲记忆体30内第一个未使用缓冲暂存器30.0001,而未使用缓冲暂存器30.0001至30.2048形成链结串列结构,即缓冲暂存器30.0001利用其连结节点30.0002,而缓冲暂存器30.0002的连结节点则指向30.0003,如此;接续指向缓冲暂存器30.2048为止,而最后缓冲暂存器30.2048的连结节点则指向无效(Null),代表此串列的结束。请配合参阅图3,显示图2的缓冲器管理所实施缓冲控制装置的硬体示意图。缓冲控制装置20内设有一指标器40,用以记录第一个未使用缓冲暂存器的位址30.0001。当一开始时,指标器40指向缓冲暂存器30.0001,若缓冲暂存器30.0001至30.0003被连续存入资料时,则该指标器40便需要读取缓冲暂存器30.0003的连结节点以改变其内容值而指向30.0004;之后,若缓冲暂存器30.0001至30.0003使用完毕,则缓冲控制装置20应将该用毕的缓冲暂存器30.0001至30.0003逐一释回(free)链结至串列的最前端,意即将缓冲暂存器30.0003的连结节点必须改变记录而指向原指标器40中所记录的未使用缓冲暂存器30.0004,再将于标器40指向释回的缓冲暂存器30.0003,接着逐一释回缓冲暂存器30.0002至30.0001,方可完成链结。由此可见,虽是单纯释回缓冲暂存器,却牵涉到复杂的硬体运作,且需回报给缓冲控制装置20知道释回缓冲暂存器的第一位址(First address)、第二位址(second address)以及区隔段长度(segment Counter)等资讯供指标器40定位使用,但这些资讯皆需要占据记忆体空间,若大量的传输资料,会造成SRAM的负载(Loading)增加。再者,缓冲控制装置20仅设一指标器40,使配置动作与释回动作皆从串列的最前端进行会抢用该指标器40,而影响缓冲控制装置20对缓冲暂存器的管理效率。若以交换控制器为例,通常缓冲记忆体系以缓冲暂存器为单位来分派记忆体,而各缓冲暂存器的大小可以依照不同应用而定。该缓冲暂存器一般容量系以128bytes为主;以乙太网路封包而言,其传输最大封包长度可至1522bytes,而最小长度也要64bytes,故在一个区隔段内可能要配置到12个缓冲暂存器来做为封包传输及接收的储存器,并利用其静态随机存取记忆体的高速传输特性做为中央处理器与动态随机存取记忆体间的沟通桥梁,以加速传输率,但是若交换控制器连续接收最大乙太网路封包时,即需要使用快取记忆体来做有效缓和串列链结的负荷,可是由于快取记忆体数量有限,在这种情况下串列链结的负载仍然很重,且缓冲暂存器归还的速度很慢,故需要寻求另一更有效的管理方法来因应目前日趋追求快速的网路社会。
技术实现思路
本专利技术的主要目的系提供一种缓冲控制装置,以新颖的链结结构管理缓冲暂存器的配置与释回,以改善缓冲记忆体存取效率并简化硬体架构的设计。有鉴于习知缓冲器管理技术在释回用毕的区隔段仅依照已使用的链结串列逐一释回缓冲暂存器而牵涉到复杂的硬体运作,执行效率也低且SDRAM的负载甚重等缺点,本专利技术的一种实施例遂于缓冲控制装置中设置一头指标器与一尾指标器,分别指向一未使用串列(free lise)的第一个缓冲暂存器位址与最后一个缓冲暂存器位址,且缓冲控制装置包含一快取记忆体,用以存放使用区隔段的第一位址,该缓冲控制装置配置(allocate)一区隔段系先从快取记忆体优先配置,再逐一链结由头指标器指向的位址取出串列的缓冲暂存器形成串列结构的区隔段,并将头指标器指向该取出串列的下一个缓冲暂存器位址该缓冲控制装置于释回动作(release)较佳地回报链结区隔段的第一位址、第二位址、最后位址(Last address)以及区隔段长度的资讯,先将第一位址存入快取记忆体,而将尾指标器指向的缓冲暂存器指向第二位址,再将最后位址直接存入尾指标器,使串列结构的区隔段可一起串于未使用串列的最末端。在本专利技术的另一种较佳实施例中,一种新颖的链结结构应用于缓冲控制装置的配置动作,以使在释回用毕的区隔段可很快取得第二位址的资讯,而不必记录于该区隔段中回报给缓冲控制装置,该新颖的链结结构系将第一个缓冲暂存器直接指向最后一个缓冲暂存器,接着才指回第二个缓冲暂存器后,再依序指到最后一个缓冲暂存器,因此,释回动作可迅速籍由最后一个缓冲暂存器的连结结点而取得第二位址,而将第二位址存入尾指标器所指向的缓冲暂存器的连结结点,再将最后位址存入尾指标器,使具有前述链结结构的区隔段可一起串于未使用串列的末端,无须逐一释回节点,不但节省记忆体空间去记录第二位址,亦保有原硬体设计架构使得缓冲记忆体能有效率的使用。本专利技术提供一种新颖的链结串列结构应用于缓冲控制装置,以使缓冲控制装置在处理封包存取的记忆体配置与释回动作上能够更为快速,且可有效节省记忆体空间,使得缓冲记忆体能更有效率的使用与管理。图式标号单说明10 控制器;20 缓冲控制装置,30 缓冲记忆体;31 连结节点;40 指标器;50 头指标器;51 尾指标器;52 快取记忆体。于本专利技术的第二实施例中,假设交换控制器的缓冲控制装置内嵌的快取记忆体52具有三个快取单元,其具体实施方式可以为内嵌式SRAM单元、正反器或者暂存器等等。当交换控制器开始初始化时,会将缓冲暂存器位址30.0001、30.0002、30.0003填入快取记忆体52之中,且头指标器50指向缓冲暂存器位址30.0004。当要求配置暂存空间时,则优先至快取记忆体52要求配置可以储存的记忆体位址。如同先前的规划,每个要到的缓冲暂存器大小皆为128bytes,可以发现,当进来的封包皆为小封包时(最小为64bytes),皆只需要要求快取记忆体52配置一个缓冲暂存器即可,而且用完之后,该缓冲暂存器位址会被归还至此快取记忆体52之中,因此几乎很少需要用到头指标器50的运作,此代表SRAM的存取动作次数被有效地减少。应注意到,实际实施时,由于每个缓冲暂存器大小皆规划为128bytes,因此并无须真的记录缓冲暂存器的实体位址(physical address),而仅需记录其所对应的缓冲暂存器号码(Buffer_ID)即可,藉由增设一实体位址转换器模组,即可便利地将缓冲暂存器号码转换为对应的实体位址,此可有效加快存取速度,并减少相关硬体设计的闸数(gate counts)。此外,应注意到本专利技术的缓冲控制装置,系可运用于所有有关缓冲暂存器管理的情形,此处的实施例系以交换控制器说明。上述实施例中,若当交换控制器一开始初始化之后被要求配置一区隔段(segment)时,例示地表示所需区隔段长度为10,会由该快取记忆体52优先释出缓冲暂存器位址30.0001、30.0002、30.0003,并将其适当地编串(sti本文档来自技高网
...

【技术保护点】
一种缓冲控制装置,用以管理一缓冲记忆体,该缓冲记忆体具有一未使用串列,前述未使用串列包含复数个缓冲暂存器,该缓冲控制装置包含: 一头指标器,用以指向前述未使用串列的一第一个缓冲暂存器; 一尾指标器,用以指向前述未使用串列的一最后缓冲暂存器;以及 一快取记忆体,用以快取复数个未使用的缓冲暂存器的位址: 其中,当该缓冲控制装置被要求配置出一区隔段时,系由前述快取记忆体优先配置出复数个缓冲暂存器以供使用。

【技术特征摘要】
【国外来华专利技术】

【专利技术属性】
技术研发人员:陈任凯胡永谦
申请(专利权)人:威盛电子股份有限公司
类型:发明
国别省市:71[中国|台湾]

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

1