【技术实现步骤摘要】
一种报文传输缓冲区快速检索方法和电路
[0001]本申请涉及通信
,特别是涉及一种报文传输缓冲区快速检索方法和电路。
技术介绍
[0002]在报文传输过程中,通常电路需要对接收到的报文信息进行报文过滤、缓存以及中央处理器对报文信息的获取等操作。当接收到大量报文时,就需要根据一定的优先级对存放报文信息的缓冲区进行检索,从而获取到优先级最高的报文信息。因此如何准确、快速地根据一定优先级检索到接收的报文信息,并最终传输给中央处理器,就成为报文传输的关键。
技术实现思路
[0003]基于此,有必要针对上述技术问题,提供一种报文传输缓冲区快速检索方法和电路。该方法在报文接收、过滤、检索过程中,具有速度快、简单实用的特点。另外,在此过程中不需要软件过多的参与,因此软件资源开销很小。
[0004]一种报文传输缓冲区快速检索方法,所述方法包括:通过中央处理器单元对报文缓冲区的所有缓冲单元进行初始化。
[0005]通过中央处理器单元配置指示寄存器;所述指示寄存器的值用于表示所述缓冲单元是否有效。
...
【技术保护点】
【技术特征摘要】
1.一种报文传输缓冲区快速检索方法,其特征在于,所述方法包括:通过中央处理器单元对报文缓冲区的所有缓冲单元进行初始化;通过中央处理器单元配置指示寄存器;所述指示寄存器的值用于表示所述缓冲单元是否有效;根据所述指示寄存器的信息采用位检测电路进行检测,得到优先级最高的有效缓冲单元对应的缓冲单元的序号N;将第N个缓冲单元的传输方向位、标识符掩码、标识符以及报文长度传输至报文过滤单元;在报文过滤单元中,根据接收到的缓冲单元传输方向位判断是否接收报文;如果接收报文,则根据接收到的缓冲单元的标识符掩码和标识符、接收报文信息中的标识符以及报文过滤规则进行报文过滤,如果过滤成功,再根据报文长度,将相应字节长度的报文数据输出,存放在第N个缓冲单元的第0~3字节报文数据和/或第4~7字节报文数据中;所述报文过滤规则为:标识符掩码中的值为0的位,对应位的缓冲单元的标识符和报文信息的标识符不参与过滤;标识符掩码中的值为1的位,对应位的缓冲单元的标识符和报文信息的标识符需要进行过滤,两者必须一致才能成功过滤;所有来自于缓冲单元的标识符和接收报文信息的标识符参与过滤的位都一致时,才能完全成功过滤;所述中央处理器单元获取第N个缓冲单元的第0~3字节报文数据和/或第4~7字节报文数据。2.根据权利要求1所述的方法,其特征在于,报文缓冲区包括32个缓冲单元,每个缓冲单元包括6行,每行包含32位存储空间;通过中央处理器单元对报文缓冲区的所有缓冲单元进行初始化,包括:通过中央处理器单元对报文缓冲区的32个缓冲单元中缓冲的传输方向位、标识符掩码、标识符以及报文长度进行初始化,所述缓冲区中第P个所述缓冲单元,地址为6P+0的行存放传输方向位,地址为6P+1的行存放标识符掩码,地址为6P+2的行存放标识符,地址为6P+3的行存放报文长度,地址为6P+4的行存放第0~3字节报文数据,地址为6P+5的行存放第4~7字节报文数据;其中,P=0, 1, 2,
ꢀ……
, 31。3.根据权利要求1所述的方法,其特征在于,指示寄存器是32位寄存器,所述指示寄存器的一位的值代表对应缓冲单元的有效性;通过中央处理器单元配置指示寄存器,包括:通过中央处理器单元对指示寄存器进行配置,如果所述指示寄存器的32位数据序列中一位为1,则表示该位对应序号的缓冲单元有效;如果所述指示寄存器的一位为0,则表示该位对应序号的缓冲单元无效。4.根据权利要求1所述方法,其特征在于,指示寄存器是32位寄存器,所述指示寄存器的一位的值代表对应缓冲单元的有效性;根据所述指示寄存器的信息采用位检测电路进行检测,得到优先级最高的有效缓冲单元对应的缓冲单元的序号N,包括:将所述指示寄存器的32位数据序列输入到位检测电路中,从第0位开始检测,当检测到出现第一个1时,将该位对应的缓冲单元的序号输出,得到优先级最高的有效缓冲单元对应的缓冲单元的序号N。
5.根据权利要求4所述方法,其特征在于,将所述指示寄存器的32位数据序列输入到位检测电路中,从第0位开始检测,当检测到出现第一个1时,将该位对应的缓冲单元的序号输出,得到优先级最高的有效缓冲单元对应的缓冲单元的序号N,包括:将所述指示寄存器的32位数据序列输入到位检测电路中,将32位数据序列划分为4个字节;判断第零个字节是否为全0,如果不为全0,则对该字节数据采用8
‑
3编码器进行编码,输出3位的二进制码;如果所述第零个字节为全0,则判断第一个字节是否为全0,如果不为全0,则对该字节数据采用8
‑
3编码器进行编码,输出3位的二进制码;如果所述第一个字节为全0,则判断第二个字节是否为全0,如果不为全0,则对该字节数据采用8
‑
3编码器进行编码,输出3位的二进制码;如果所述第二个字节为全0,则判断第三个字节是否为全0,如果不为全0,则对该字节数据采用8
‑
3编码器进行编码,输出3位的二进制码;根据3位的二进制码,计算出现第一个1的位序号,并将出现第一个1的位序号作为优先级最高的有效缓冲单元对应的缓冲单元的序号N;将所述指示寄存器的32位数据序列中出...
【专利技术属性】
技术研发人员:龚晓,杨唤荣,陈虎,
申请(专利权)人:湖南毂梁微电子有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。