数据转发装置及数据转发方法

文档序号:9383081阅读:318来源:国知局
数据转发装置及数据转发方法
【技术领域】
[0001]本发明涉及DMA (Direct Memory Access)控制装置,其通过编制出描述符链,从而能够利用I次转发启动而对多帧的数据进行转发。
【背景技术】
[0002]在编制出描述符链而进行DMA转发的情况下,通常在寄存器或存储器中预先设定有描述符信息,控制电路对描述符信息进行读取,按照读取出的描述符信息,执行DMA转发。描述符信息包含转发源的起始地址、转发帧尺寸、下一个描述符编号(地址)、末尾描述符标志之类的信息。
[0003]在进行DMA转发时,对于利用I次启动能够转发的帧的数量有限的情况等,有时利用I次启动不能转发完整个描述符链。
[0004]在专利文献I中记载了下述内容,S卩,在描述符信息中追加表示是否进行DMA转发的I比特的值,在控制电路读取出的值表示不进行转发的情况下,不进行该帧的转发,而转移至对下一个描述符信息进行读取的动作。
[0005]专利文献1:日本特开平7 - 36806号公报

【发明内容】

[0006]在利用专利文献I所记载的方法,设定为对不能转发完的帧不进行转发的情况下,针对不进行转发的帧,也必须读取描述符信息。因此,特别是在具有多个不进行转发的帧的情况下,需要额外的时间。
[0007]本发明的目的在于,在利用I次启动不能转发完整个描述符链的情况下,高速地进行数据转发。
[0008]本发明所涉及的数据转发装置的特征在于,具有:
[0009]描述符信息存储部,其存储包含数据转发的控制信息在内的描述符信息;
[0010]描述符信息读取部,如果转发启动信号被设为有效,则该描述符信息读取部对由所述描述符信息存储部存储的描述符信息依次进行读取;
[0011]转发判定部,其对由所述描述符信息读取部读取出的描述符信息的数量进行计数,在计数得到的数量小于或等于预定的可转发帧数的期间,将所述描述符信息所包含的控制信息输出,并且在计数得到的数量与所述可转发帧数相等的情况下,输出后方跳过指示;以及
[0012]数据转发部,其依据由所述转发判定部输出的控制信息,进行数据转发,
[0013]所述描述符信息读取部在由所述转发判定部输出了后方跳过指示的情况下,跳过剩余的所述描述符信息的读取。
[0014]发明的效果
[0015]本发明所涉及的数据转发装置,如果帧的转发达到可转发帧数,则进行跳过而不读取此后的帧的描述符信息。因此,不进行不必要的描述符信息的读取,与此相应地,能够缩短转发时间。
【附图说明】
[0016]图1是表示实施方式I所涉及的DMA控制装置100的功能的框图。
[0017]图2是实施方式I所涉及的DMA控制装置100的动作的说明图。
[0018]图3是表示实施方式2所涉及的DMA控制装置100的功能的框图。
[0019]图4是实施方式2所涉及的DMA控制装置100的动作的说明图。
[0020]图5是表示实施方式3所涉及的DMA控制装置100的功能的框图。
[0021]图6是实施方式3所涉及的DMA控制装置100的动作的说明图。
[0022]图7是实施方式4所涉及的DMA控制装置100的动作的说明图。
[0023]图8是实施方式4所涉及的DMA控制装置100的动作的说明图。
[0024]图9是实施方式4所涉及的DMA控制装置100的动作的说明图。
【具体实施方式】
[0025]实施方式I
[0026]在实施方式I中,对下述DMA控制装置100进行说明,其在读取了与能够转发的帧数对应量的描述符信息的情况下,进行跳过而不读取以后的帧的描述符信息。
[0027]图1是表示实施方式I所涉及的DMA控制装置100 (数据转发装置)的功能的框图。
[0028]DMA控制装置100具有描述符信息存储部110、描述符信息控制部120 (描述符信息读取部)、转发判定部130、数据转发部140。另外,转发判定部130具有后方跳过控制部131。
[0029]描述符信息存储部110是存储描述符信息的存储器,该描述符信息包含转发源的起始地址、转发帧尺寸、下一个描述符编号(地址)、表示转发是否已完成的转发完成标志、末尾描述符标志等。
[0030]描述符信息控制部120在启动时或任意的定时,将允许写入信号11、写入目标的地址13和写数据14向描述符信息存储部110输出,向描述符信息存储部110写入描述符
?目息O
[0031]另外,如果转发启动信号16被设为有效,则描述符信息控制部120向描述符信息存储部110输出允许读取信号12和读取目标的地址13,从描述符信息存储部110作为读数据15而读取描述符信息。
[0032]转发判定部130基于由描述符信息控制部120读取的读数据15中的转发完成标志,判定是否进行帧转发。转发判定部130在转发完成标志为O的情况下判定为进行帧转发,向数据转发部140输出转发指示信号19和控制信息20 (起始地址、帧尺寸)。另一方面,转发判定部130在转发完成标志为I的情况下判定为不进行帧转发,不输出转发指示信号19和控制信息20。
[0033]此外,转发指示信号19还输出至描述符信息存储部110,使与进行了转发的帧相对应的描述符信息的转发完成标志从O变化为I。
[0034]后方跳过控制部131从转发启动信号16刚被设为有效起,对由描述符信息控制部120读取出的描述符信息中的、转发完成标志为O的描述符信息的数量(即,要被转发的帧的数量)进行计数。如果读取出的描述符信息的数量与由CPU声明的可转发帧数17—致,则后方跳过控制部131针对描述符信息控制部120,将后方跳过指示18设为有效。
[0035]如果后方跳过指示18被设为有效,则描述符信息控制部120跳过下次及其以后的从描述符信息存储部110进行的读取,对末尾描述符信息进行读取。
[0036]图2是实施方式I所涉及的DMA控制装置100的动作的说明图。
[0037]表200表示描述符信息存储部110所存储的信息。
[0038]针对各描述符信息分配有描述符编号,在各描述符信息中,包含表示下一个要读取的描述符的编号的下一个描述符编号、转发源的起始地址、转发尺寸、以及转发完成标
V 1、1、O
[0039]此外,下一个描述符编号为Last的描述符信息是最后要读取的末尾描述符信息。在这里,下一个描述符编号兼作表示末尾描述符信息的末尾描述符标志。
[0040]在图2中,能够储存在描述符信息存储部110中的描述符的数量是32个。
[0041]在图2中,如果从描述符编号2开始转发,则直至描述符编号8为止按顺序进行转发。由于描述符编号8的下一个描述符编号为23,因此在描述符编号8之后描述符编号23被转发。在直至描述符编号27为止进行了转发后,描述符编号14被转发。在直至描述符编号19为止进行了转发后,向作为末尾描述符信息的描述符编号31跳转并结束。到此为止是从描述符编号2开始的描述符链的一系列动作。
[0042]数组201是按照描述符链的顺序对描述符编号进行排列而得到的。
[0043]假设将利用I次转发启动而能够转发的帧数限制为8。在该情况下,描述符信息控制部120如箭头202所示,直至描述符编号23为止按顺序读取描述符信息。然后,转发判定部130将读取出的描述符信息所包含的控制信息142向数据转发部140输出,数据转发部140依据控制信息142进行数据转发。
[0044]如果读取出描述符编号23的描述符信息,则读取出的描述符信息的数量与可转发帧数17—致。因此,后方跳过控制部131将后方跳过指示18设为有效。这样,描述符信息控制部120如虚线203所示,将以后的读取跳过直至到达最后的描述符编号31。
[0045]此外,与进行了转发的帧相对应的描述符信息的转发完成标志从O变化为1,在下次及其以后的启动中不进行转发。
[0046]在这里,假设描述符编号31的末尾描述符信息不属于转发帧数限制的对象,必定在最后进行读取。但是,并不需要一定如此。
[0047]如上所述,实施方式I所涉及的DMA控制装置100在读取出与能够转发的帧数对应量的描述符信息的情况下,将后方跳过指示18设为有效,进行跳过而不读取以后的帧的描述符信息。由此,能够削减不必要的读取时间。
[0048]实施方式2
[0049]在实施方式2中,对下述DMA控制装置100进行说明,其进行跳过而不读取直至前次启动时为止转发了的帧的描述符信息。
[0050]图3是表示实施方式2所涉及的DMA控制装置100的功能的框图。
[0051]图3所示的DMA控制装置100与图1所示的DMA控制装置100的不同点在于,转发判
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1