CN116633488A - 数据帧的存储方法、装置、车辆及存储介质 - Google Patents
数据帧的存储方法、装置、车辆及存储介质 Download PDFInfo
- Publication number
- CN116633488A CN116633488A CN202310580856.XA CN202310580856A CN116633488A CN 116633488 A CN116633488 A CN 116633488A CN 202310580856 A CN202310580856 A CN 202310580856A CN 116633488 A CN116633488 A CN 116633488A
- Authority
- CN
- China
- Prior art keywords
- data frame
- frame
- data
- length
- cyclic redundancy
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 125000004122 cyclic group Chemical group 0.000 claims abstract description 77
- 238000012795 verification Methods 0.000 claims abstract description 32
- 238000012545 processing Methods 0.000 claims description 46
- 239000002699 waste material Substances 0.000 abstract description 9
- 238000004891 communication Methods 0.000 abstract description 7
- 238000010586 diagram Methods 0.000 description 13
- 238000013461 design Methods 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 101100283411 Arabidopsis thaliana GMII gene Proteins 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000003999 initiator Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0001—Systems modifying transmission characteristics according to link quality, e.g. power backoff
- H04L1/0006—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format
- H04L1/0007—Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission format by modifying the frame length
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0061—Error detection codes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Small-Scale Networks (AREA)
Abstract
本申请涉及一种数据帧的存储方法、装置、车辆及存储介质,涉及通信技术领域。该方法应用于媒体访问控制MAC控制器,该方法包括:获取第一数据帧,并存储第一数据帧。确定第一数据帧的帧长度和第一数据帧的起始地址。通过循环冗余校验对第一数据帧进行校验。若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,则确定第一数据帧未通过校验,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。第一数据帧未通过校验的情况下,获取第二数据帧。基于第一数据帧的起始地址,存储第二数据帧。由此,使第二数据帧覆盖第一数据帧,减少错误数据帧的存储,避免造成存储资源的浪费。
Description
技术领域
本申请涉及通信技术领域,具体涉及一种数据帧的存储方法、装置、车辆及存储介质。
背景技术
汽车电子电气(electrical/electronic,E/E)架构将汽车中的各类传感器、电子控制单元(electrical control unit,ECU)、线束拓扑等整合在一起,以完成运算、动力和能量的分配。汽车的电子电气架构的发展将会经历过去的分布式E/E架构、当前的域集中式E/E架构以及未来的中央集中式E/E架构、车云计算阶段。在域集中式架构中,车内的通信网络由控制器局域网路(controller area network,CAN)、本地互连网络(localinterconnect network,LIN)等叠加以太网来实现。
以太网交换机为基于以太网传输数据的交换机。以太网交换机可以通过媒体访问控制(media access control,MAC)控制器接收数据帧,并存储数据帧。之后,MAC控制器可以对数据帧进行校验。如此,若MAC控制器确定数据帧发生错误,MAC控制器则存储有错误的数据帧,减少了正确数据帧的存储资源,造成存储资源的浪费。
发明内容
本申请提供一种数据帧的存储方法、装置、车辆及存储介质,以至少解决相关技术中正确数据帧的存储资源减少,浪费存储资源的技术问题。本申请的技术方案如下:
根据本申请涉及的第一方面,提供一种数据帧的存储方法,应用于媒体访问控制MAC控制器,该方法包括:获取第一数据帧,并存储第一数据帧。确定第一数据帧的帧长度和第一数据帧的起始地址。通过循环冗余校验对第一数据帧进行校验。若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,则确定第一数据帧未通过校验,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。在第一数据帧未通过校验的情况下,获取第二数据帧,第二数据帧为第一数据帧的后一个数据帧。基于第一数据帧的起始地址,存储第二数据帧,第二数据帧的起始地址与第一数据帧的起始地址相同。
根据上述技术手段,本申请中MAC控制器可以对第一数据帧进行校验,确定第一数据帧是否为错误数据帧。若第一数据帧为错误数据帧,MAC控制器则基于第一数据帧的起始地址存储第二数据帧。这样一来,MAC控制器可以使第二数据帧覆盖第一数据帧,减少错误数据帧的存储,避免造成存储资源的浪费。
在一种可能的实施方式中,数据帧的存储方法还包括:基于第二数据帧,确定第二数据帧的帧长度。通过循环冗余校验对第二数据帧进行校验。若第二数据帧未通过循环冗余校验,和/或,第二数据帧的帧长度未满足预设条件,则确定第二数据帧未通过校验。在第二数据帧未通过校验的情况下,获取第三数据帧,第三数据帧为第二数据帧的后一个数据帧。基于第二数据帧的起始地址,存储第三数据帧。若第二数据帧通过循环冗余校验,且第二数据帧的帧长度满足预设条件,则确定第二数据帧通过校验。在第二数据帧通过校验的情况下,存储第二数据帧的帧信息,帧信息包括:帧长度和起始地址。
根据上述技术手段,本申请中若第二数据帧未通过校验,则说明第二数据帧为错误的数据帧,MAC控制器可以使第三数据帧覆盖第二数据帧,减少错误数据帧的存储,避免造成存储资源的浪费。若第二数据帧通过校验,则说明第二数据帧为正确的数据帧,MAC控制器存储第二数据帧,避免正确数据帧的丢失。
在一种可能的实施方式中,数据帧的存储方法还包括:若第一数据帧通过循环冗余校验,且第一数据帧的帧长度满足预设条件,则确定第一数据帧通过校验。在第一数据帧通过校验的情况下,存储第一数据帧的帧信息。
根据上述技术手段,本申请中若第一数据帧通过校验,则说明第一数据帧为正确的数据帧,MAC控制器存储正确数据帧的帧信息,避免数据帧的丢失,保证存储数据的准确性。同时还可以避免错误数据帧占用存储资源,为正确的数据帧提供存储资源。
根据本申请提供的第二方面,提供一种数据帧的存储装置,该装置包括:获取单元,用于获取第一数据帧,并存储第一数据帧。处理单元,用于确定第一数据帧的帧长度和第一数据帧的起始地址。上述处理单元,还用于通过循环冗余校验对第一数据帧进行校验。上述处理单元,还用于若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,则确定第一数据帧未通过校验,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。上述获取单元,还用于在第一数据帧未通过校验的情况下,获取第二数据帧,第二数据帧为第一数据帧的后一个数据帧。上述处理单元,还用于基于第一数据帧的起始地址,存储第二数据帧,第二数据帧的起始地址与第一数据帧的起始地址相同。
在一种可能的实施方式中,上述处理单元,还用于基于第二数据帧,确定第二数据帧的帧长度。上述处理单元,还用于通过循环冗余校验对第二数据帧进行校验。上述处理单元,还用于若第二数据帧未通过循环冗余校验,和/或,第二数据帧的帧长度未满足预设条件,则确定第二数据帧未通过校验。上述获取单元,还用于在第二数据帧未通过校验的情况下,获取第三数据帧,第三数据帧为第二数据帧的后一个数据帧。上述处理单元,还用于基于第二数据帧的起始地址,存储第三数据帧。上述处理单元,还用于若第二数据帧通过循环冗余校验,且第二数据帧的帧长度满足预设条件,则确定第二数据帧通过校验。上述处理单元,还用于在第二数据帧通过校验的情况下,存储第二数据帧的帧信息,帧信息包括:帧长度和起始地址。
在一种可能的实施方式中,上述处理单元,还用于若第一数据帧通过循环冗余校验,且第一数据帧的帧长度满足预设条件,则确定第一数据帧通过校验。上述处理单元,还用于在第一数据帧通过校验的情况下,存储第一数据帧的帧信息。
根据本申请提供的第三方面,提供一种车辆,包括:处理器;用于存储处理器可执行指令的存储器;其中,处理器被配置为执行指令,以实现上述第一方面及其任一种可能的实施方式的方法。
根据本申请提供的第四方面,提供一种计算机可读存储介质,当计算机可读存储介质中的指令由车辆的处理器执行时,使得车辆能够执行上述第一方面中及其任一种可能的实施方式的方法。
根据本申请提供的第五方面,提供一种计算机程序产品,计算机程序产品包括计算机指令,当计算机指令在车辆上运行时,使得车辆执行上述第一方面及其任一种可能的实施方式的方法。
由此,本申请的上述技术特征具有以下有益效果:
(1)可以对第一数据帧进行校验,确定第一数据帧是否为错误数据帧。若第一数据帧为错误数据帧,MAC控制器则基于第一数据帧的起始地址存储第二数据帧。这样一来,MAC控制器可以使第二数据帧覆盖第一数据帧,减少错误数据帧的存储,避免造成存储资源的浪费。
(2)可以通过循环冗余校验的方法对第一数据帧进行校验,确定第一数据帧是否为错误的数据帧,保证数据帧的准确性,避免存储错误的数据帧。
(3)若第一数据帧通过校验,则说明第一数据帧为正确的数据帧,MAC控制器存储正确数据帧的帧信息,避免数据帧的丢失,保证存储数据的准确性。同时还可以避免错误数据帧占用存储资源,为正确的数据帧提供存储资源。
需要说明的是,第二方面至第五方面中的任一种实现方式所带来的技术效果可参见第一方面中对应实现方式所带来的技术效果,此处不再赘述。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理,并不构成对本申请的不当限定。
图1是一种以太网交换机的架构示意图;
图2是一种以太网交换机中MAC控制器的结构示意图;
图3是根据一示例性实施例示出的一种以太网交换机中MAC控制器的结构示意图;
图4是根据一示例性实施例示出的一种数据帧的存储方法的流程图;
图5是根据一示例性实施例示出的另一种数据帧的存储方法的流程图;
图6是根据一示例性实施例示出的一种随机存取存储器的结构示意图;
图7是根据一示例性实施例示出的另一种随机存取存储器的结构示意图;
图8是根据一示例性实施例示出的又一种数据帧的存储方法的流程图;
图9是根据一示例性实施例示出的一种数据帧的存储装置的框图;
图10是根据一示例性实施例示出的一种车辆的框图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在对本申请实施例的数据帧的存储方法进行详细介绍之前,先对本申请实施例的实施环境和应用场景进行介绍。
以太网交换机为基于以太网传输数据的交换机。如图1所示,其示出了一种以太网交换机的架构示意图。以太网交换机100包括:至少一个接收单元(mac_r)、至少一个发送单元(mac_t)、数据帧合路单元(interface_mux)、数据帧处理单元(frame_process)、队列管理器(switch_top)和哈希散列查表单元(hash_2_bucket)。
其中,接收单元和发送单元可以为MAC控制器。接收单元可以用于接收数据帧,并校验数据帧。发送单元可以用于发送数据帧。数据帧合路单元可以用于采用优先级策略对接收的至少一个数据帧进行优先级排序,并向数据帧处理单元发送优先级最高的数据帧。数据帧处理单元可以用于解析数据帧,向哈希散列查表单元发送数据帧的源地址和目标地址,数据帧处理单元还用于向队列管理器发送数据帧和数据帧的输出端口。队列管理器可以用于基于数据帧的输出端口,确定数据帧的发送单元。哈希散列查表单元可以根据数据帧的源地址和目的地址,查询数据帧的输出端口,并向数据帧处理单元发送数据帧的输出端口。
目前,以太网交换机可以通过MAC控制器从物理层(physical layer,PHY)芯片接收数据帧,并采用先进先出队列(first input first output,FIFO)存储数据帧。如图2所示,其示出了一种以太网交换机中MAC控制器的结构示意图。MAC控制器200包括:第一状态(st_sof)、第二状态(st_wait)、第三状态(st_eof)和第四状态(st_done)。MAC控制器还包括:循环冗余校验(cyclical redundancy check,CRC)单元201、数据帧存储单元202(data_fifo)和帧信息存储单元203(ptr_fifo)。
其中,第一状态(st_sof)为空闲状态,用于表示等待MAC帧开始。第二状态(st_wait)为帧传输开始状态,用于表示等待帧起始符。第三状态(st_eof)为帧传输结束状态,用于表示存储数据帧和帧对应的指针,等待MAC结束,数据帧对应的指针包括:数据帧的帧长度、帧长度错误标识和CRC校验错误标识。第四状态(st_done)为帧传输完成状态,用于表示将各信息传递至FIFO队列。循环冗余校验单元可以用于对数据帧进行CRC校验。数据帧存储单元(data_fifo)可以用于存储数据帧。帧信息存储单元(ptr_fifo)可以用于存储数据帧对应的指针。
在一种可能的设计中,结合图2,在接收到数据帧的前导符和帧首定界符的情况下,MAC控制器可以从第一状态跳转至第三状态,即MAC控制器开始存储数据帧。
在另一种可能的设计中,结合图2,在接收到数据帧中的前导符的情况下,MAC控制器可以从第一状态跳转至第二状态,即MAC控制器处于等待帧起始符状态。若MAC控制器接收到数据帧中的帧首定界符,MAC控制器则可以从第二状态跳转至第三状态,即MAC控制器开始存储数据帧。在接收到帧结束(end of frame,EOF)信号的情况下,MAC控制器从第三状态跳转至第四状态,对数据帧进行校验。若MAC控制器未接收到数据帧中的帧首定界符,MAC控制器则可以保持第二状态。
需要说明的是,在本申请实施例中,在MAC控制器处于第二状态的情况下,若MAC控制器接收到无效的Rx_dv信号,MAC控制器则可以从第二状态跳转至第一状态。若MAC控制器接收到有效的Rx_dv信号,MAC控制器则可以保持第二状态。
如此,在MAC控制器对数据帧校验之后,若MAC控制器确定数据帧发生错误,MAC控制器则存储有错误的数据帧,减少了正确数据帧的存储资源。并且,在存储资源不足的情况下,可以会导致MAC控制器丢弃新接收的数据帧,从而出现通信质量问题。
为了解决上述问题,本申请实施例提供一种数据帧的存储方法,该方法包括:MAC控制器可以获取第一数据帧和第一数据帧的帧长度,并存储第一数据帧。接着,MAC控制器可以确定第一数据帧的起始地址。MAC控制器可以通过循环冗余校验对第一数据帧进行校验。若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,则确定第一数据帧未通过校验。其中,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。也就是说,第一数据帧为错误的数据帧。在第一数据帧未通过校验的情况下,MAC控制器可以获取第二数据帧,第二数据帧为第一数据帧的后一个数据帧。MAC控制器可以基于第一数据帧的起始地址,存储第二数据帧,第二数据帧的起始地址与第一数据帧的起始地址相同。这样一来,MAC控制器可以使第二数据帧覆盖第一数据帧,从而减少错误数据帧的存储,避免造成存储资源的浪费。
下面对本申请实施例的实施环境进行介绍。
图3为根据一示例性实施例示出的一种以太网交换机中MAC控制器的结构示意图,如图3所示,该以太网交换机中MAC控制器300包括:第一状态(st_sof)、第二状态(st_wait)、第三状态(st_eof)和第四状态(st_done),该以太网交换机中MAC控制器300还包括:第五状态(st_check)和第六状态(st_rst)。该以太网交换机中MAC控制器300还包括:循环冗余校验(cyclical redundancy check,CRC)单元301、数据帧存储单元302(data_ram)和帧信息存储单元303(ptr_ram)。
需要说明的是,在本申请实施例中,一般读时钟为rx_clk信号,写时钟为sys_clk信号。本申请采用双口随机存取存储器(random access memory,RAM)存储数据帧。双口RAM可以实现接收数据帧和发送数据帧的同时进行,还可以实现地址索引,可以更加灵活地存取数据。
其中,第三状态(st_eof)为帧传输结束状态,可以用于将数据帧存储至数据帧存储单元(data_ram),等待MAC结束。
第五状态为帧信息校验状态,可以用于对数据帧进行帧长度校验、字节对齐校验、CRC校验。若数据帧通过校验,MAC控制器则可以将帧信息存储至帧信息存储单元(ptr_ram),帧信息包括:帧长度和起始地址。若数据帧未通过校验,MAC控制器则可以跳转至第六状态。
第六状态为错误帧重写准备状态,可以用于在数据帧未通过校验的情况下,从帧信息存储单元(ptr_ram)中读取前一个数据帧的帧长度和起始地址。还可以用于根据前一个数据帧的帧长度和起始地址,确定当前数据帧的起始地址,为后一个数据帧的存储作准备。
数据帧存储单元302(data_ram)可以用于存储数据帧。帧信息存储单元303(ptr_ram)可以用于存储数据帧的帧信息。
需要说明的是,在本申请实施例中,第一状态、第二状态、第四状态和循环冗余校验单元301与现有技术中的第一状态、第二状态、第四状态和循环冗余校验单元201相同。对于第一状态、第二状态、第四状态和循环冗余校验单元301的介绍,可以参考上述对图2的MAC控制器结构中第一状态、第二状态、第四状态和循环冗余校验单元201的描述,此处不予赘述。
为了便于理解,以下结合附图对本申请提供的数据帧的存储方法进行具体介绍。图4是根据一示例性实施例示出的一种数据帧的存储方法的流程图,如图4所示,该数据帧的存储方法应用于MAC控制器,该方法包括以下步骤:
S401、MAC控制器获取第一数据帧,并存储第一数据帧。
在一种可能的实现方式中,PHY芯片可以向MAC控制器发送第一数据帧。MAC控制器可以通过介质独立接口(media independent interface,MII)或者千兆位媒体独立接口(gigabit media independent interface,GMII)接收来自PHY芯片的第一数据帧,并存储第一数据帧。
在本申请实施例中,在MAC控制器接收第一数据帧之前,MAC控制器可以确定MAC控制器的存储内存是否大于或者等于预设内存阈值。若MAC控制器的存储内存大于或者等于预设内存阈值,MAC控制器可以接收第一数据帧。
需要说明的是,在本申请实施例中,预设内存阈值大于或者等于1518字节(一个最大数据帧)。例如,通常情况下,预设内存阈值为2048字节(一个最大数据帧)。又例如,预设内存阈值可以为4096字节。又例如,预设内存阈值可以为8192字节。
在本申请实施例中,数据帧可以包括:前导符、帧首定界符、目标地址、源地址、类型、数据、帧校验序列。其中,前导符的长度为7个字节,内容为“0”、“1”交错出现的比特流(即“10101010”)。帧首定界符的长度为1个字节,内容为“10101011”,标识数据帧的开始。目的地址的长度为6个字节,内容为数据帧的目标地址。源地址的长度为6个字节,内容为数据帧的源地址。类型的长度为2个字节,用于表示高层所使用的协议。数据的长度应在46到1500字节之间。帧校验序列的长度为4个字节,内容为CRC校验码。
S402、MAC控制器确定第一数据帧的帧长度和第一数据帧的起始地址。
在一种可能的实现方式中,MAC控制器可以基于第一数据帧,确定第一数据帧的帧长度。MAC控制器可以获取第四数据帧的帧长度和起始地址,第四数据帧为第一数据帧的前一个数据帧。MAC控制器可以基于第四数据帧的帧长度和起始地址,确定第一数据帧的起始地址。
需要说明的是,在本申请实施例中,第四数据帧已存储在MAC控制器中,说明第四数据帧为正确的数据帧,MAC控制器中可以存储有第四数据帧的帧长度和起始地址。本申请实施例中,根据第四数据帧的帧长度和起始地址,可以计算得到第一数据帧的起始地址。
在一种可能的设计中,若在第一数据帧存储之前,未存储有其他数据帧,服务器则可以基于MAC控制器中随机存取存储器的首地址,存储第一数据帧。
S403、MAC控制器确定第一数据帧的帧长度是否满足预设条件。
其中,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。
需要说明的是,在本申请实施例中,预设范围阈值为数据帧的长度范围,数据帧的长度范围为[64,1518]。也就是说,最小的数据帧为64字节,最大的数据帧为1518字节。
在一种可能的设计中,若第一数据帧的帧长度未在预设范围阈值内,MAC控制器则可以确定第一数据帧的帧长度未满足预设条件。
示例性的,假如第一数据帧的帧长度为60字节,则第一数据帧的帧长度未在预设范围阈值内。假如第一数据帧的帧长度为1600字节,则第一数据帧的帧长度未在预设范围阈值内。假如第一数据帧的帧长度为128字节,则第一数据帧的帧长度在预设范围阈值内。
在另一种可能的设计中,若第一数据帧的帧长度不为整数个字节,MAC控制器则可以确定第一数据帧的帧长度未满足预设条件。
示例性的,假如第一数据帧的帧长度为128.5字节,则第一数据帧的帧长度不为整数个字节。假如第一数据帧的帧长度为128字节,则第一数据帧的帧长度为整数个字节。
在另一种可能的设计中,若第一数据帧的帧长度未在预设范围阈值内,且第一数据帧的帧长度不为整数个字节,MAC控制器则可以确定第一数据帧的帧长度未满足预设条件。
在本申请实施例中,若第一数据帧的帧长度满足预设条件,MAC控制器则可以执行S404。
在本申请实施例中,若第一数据帧的帧长度未满足预设条件,MAC控制器则可以执行S405。
S404、MAC控制器通过循环冗余校验对第一数据帧进行校验。
在本申请实施例中,循环冗余校验的原理为:PHY芯片可以根据第一数据帧,按照预设计算方式,得到第一CRC值,第一CRC值可以为帧校验序列中的校验码。PHY芯片可以向MAC控制器发送携带第一CRC值的第一数据帧。MAC控制器可以接收来自PHY的携带第一CRC值的第一数据帧。MAC控制器可以根据携带第一CRC值的第一数据帧,按照预设计算方式,得到第二CRC值。之后,MAC控制器可以确定第一CRC值与第二CRC值是否相同。
在一种可能的设计中,若第一CRC值与第二CRC值相同,MAC控制器则可以确定第一数据帧通过循环冗余校验。
在另一种可能的设计中,若第一CRC值与第二CRC值不同,MAC控制器则可以确定第一数据帧未通过循环冗余校验。
在本申请实施例中,若第一数据帧未通过循环冗余校验,MAC控制则可以执行S405。
S405、MAC控制器确定第一数据帧未通过校验。
在一种可能的实现方式中,若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,MAC控制器则可以确定第一数据帧未通过校验。
也就是说,若第一数据帧未通过循环冗余校验,MAC控制器则可以确定第一数据帧未通过校验。若第一数据帧未满足预设条件,MAC控制器则可以确定第一数据帧未通过校验。若第一数据帧未通过循环冗余校验,且第一数据帧未满足预设条件,MAC控制器则可以确定第一数据帧未通过校验。
需要说明的是,在本申请实施例中,若第一数据帧未通过校验,则说明第一数据帧为错误的数据帧。若第一数据帧通过校验,则说明第一数据帧为正确的数据帧。
在本申请实施例中,在第一数据帧未通过校验的情况下,MAC控制器可以执行S406-S407。
S406、MAC控制器获取第二数据帧。
其中,第二数据帧为第一数据帧的后一个数据帧。
在一种可能的实现方式中,PHY芯片可以向MAC控制器发送第二数据帧。MAC控制器可以接收来自PHY芯片的第二数据帧。需要说明的是,在本申请实施例中,对MAC控制器获取第二数据帧的介绍,可以参考S401中对MAC控制器获取第一数据帧的描述,此处不予赘述。
S407、MAC控制器基于第一数据帧的起始地址,存储第二数据帧。
其中,第二数据帧的起始地址与第一数据帧的起始地址相同。
在一种可能的实现方式中,在第一数据帧未通过校验的情况下,MAC控制器可以基于第一数据帧的起始地址,存储第二数据帧。
需要说明的是,在本申请实施例中,基于第一数据帧的起始地址,存储第二数据帧,则说明第二数据帧将第一数据帧覆盖。由于第一数据帧未通过校验,第一数据帧的帧长度和起始地址均为存储。
在本申请实施例中,MAC控制器可以将第二数据帧存储至随机存取存储器的数据帧存储单元(data_ram)。
需要说明的是,在本申请实施例中,对数据帧存储单元(data_ram)的深度和宽度不作限定。由于一个最大数据帧为1518字节,通常情况下数据帧存储单元(data_ram)的深度可以设计为两个最大数据帧或者大于两个最大数据帧。数据帧存储单元(data_ram)的深度还可以大于两个最大数据帧。由于1字节(byte)等于8位(bit),并且MII、GMII等接口的每个时钟周期数据宽度分别为4位和8位,为了兼容设计,数据帧存储单元(data_ram)的宽度则可以设计为8位。
可以理解的是,MAC控制器可以获取第一数据帧和第一数据帧的帧长度,并存储第一数据帧。接着,MAC控制器可以确定第一数据帧的起始地址。MAC控制器可以通过循环冗余校验对第一数据帧进行校验。若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,则确定第一数据帧未通过校验。其中,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。也就是说,第一数据帧为错误的数据帧。在第一数据帧未通过校验的情况下,MAC控制器可以获取第二数据帧,第二数据帧为第二数据帧的后一个数据帧。MAC控制器可以基于第一数据帧的起始地址,存储第二数据帧,第二数据帧的起始地址与第一数据帧的起始地址相同。这样一来,MAC控制器可以使第二数据帧覆盖第一数据帧,从而减少错误数据帧的存储,避免造成存储资源的浪费。
在一些实施例中,如图5所示,数据帧的存储方法还包括:若第一数据帧的帧长度满足预设条件,且第一数据帧通过循环冗余校验,则MAC控制器可以执行S501。
S501、MAC控制器确定第一数据帧通过校验。
在一种可能的实现方式中,若第一数据帧通过循环冗余校验,且第一数据帧的帧长度满足预设条件,MAC控制器则可以确定第一数据帧通过校验。
在本申请实施例中,在第一数据帧通过校验的情况下,MAC控制器可以执行S502。
S502、MAC控制器存储第一数据帧的帧信息。
其中,帧信息包括:帧长度和起始地址。
在一种可能的实现方式中,在第一数据帧通过校验的情况下,MAC控制器可以存储第一数据帧的帧信息。
在本申请实施例中,MAC控制器可以将第一数据帧的帧信息存储至随机存取存储器的帧信息存储单元(ptr_ram)。
需要说明的是,在本申请实施例中,在通常情况下,数据帧存储单元(data_ram)可以存储多少个最小数据帧(64字节),则帧信息存储单元(ptr_ram)则需要多少深度。帧信息存储单元(ptr_ram)的宽度可以根据数据帧的帧信息确定。由于数据帧最长为1518字节,1518的二进制为010111101110,则数据帧的帧长度的宽度需要12位。由于首位0不需要存储,则帧长度实际需要11位。由于存储方式不同,存储的起始地址不同,下面会结合具体实例对起始地址需要的宽度进行介绍,此处不予赘述。
在一种可能的设计中,MAC控制器可以采用绝对地址访问的方式连续存储第一数据帧和第一数据帧的信息。
示例性的,如图6所示,图6示出了一种随机存取存储器的结构示意图。其中,随机存取存储器包括:数据帧存储单元(data_ram)和帧信息存储单元(ptr_ram)。数据帧存储单元(data_ram)的深度可以设计为两个最大数据帧(4096字节),数据帧存储单元(data_ram)的宽度可以设计为8位。由于数据帧存储单元(data_ram)的深度可以设计为两个最大数据帧(4096字节),可以存储64个最小数据帧(64字节),则帧信息存储单元(ptr_ram)的深度为64。由于数据帧存储单元(data_ram)的深度为4096字节,存储地址为0至4095,4095的二进制为111111111111,则起始地址需要的宽度为12位。由于帧长度需要的宽度为12位,帧信息存储单元(ptr_ram)的宽度为24位。如此,若第一数据帧之前无其他数据帧存储,第一数据帧的长度为64字节,第一数据帧则占用数据帧存储单元(data_ram)的前64个地址块,起始地址为0,帧长度为01000000。
在另一种可能的设计中,MAC控制器可以将随机存取存储器中数据帧存储单元(data_ram)的存储空间分成多个最小数据块,离散地存储第一数据帧和第一数据帧的帧信息。其中,最小数据块的深度为最小数据帧(64字节)。
示例性的,如图7所示,图7示出了另一种随机存取存储器的结构示意图。其中,随机存取存储器包括:数据帧存储单元(data_ram)和帧信息存储单元(ptr_ram)。数据帧存储单元(data_ram)的深度可以设计为两个最大数据帧(4096字节),数据帧存储单元(data_ram)的宽度可以设计为8位,则数据帧存储单元(data_ram)包括64个数据块。由于数据帧存储单元(data_ram)的深度可以设计为两个最大数据帧(4096字节),可以存储64个最小数据帧(64字节),则帧信息存储单元(ptr_ram)的深度为64。由于数据帧存储单元(data_ram)包括64个数据块,存储地址为0至63,63的二进制为00111111,由于首位的0无需存储,则起始地址需要的宽度为6位。由于帧长度需要的宽度为12位,帧信息存储单元(ptr_ram)的宽度为18位。如此,若第一数据帧之前无其他数据帧存储,第一数据帧的长度为64字节,第一数据帧则占用数据帧存储单元(data_ram)的第1个数据块,起始地址为0,帧长度为01000000。
在一些实施例中,在MAC控制器存储第一数据帧的帧信息之后,服务器可以获取第二数据帧,并存储第二数据帧,第二数据帧为第一数据帧的后一个数据帧。之后,服务器可以对第二数据帧执行S402-S404的步骤。
需要说明的是,在本申请实施例中,服务器可以根据第一数据帧的帧长度和起始地址,确定第二数据帧的起始地址,并基于第二数据帧的起始地址存储第二数据帧。
也就是说,服务器可以对每个数据帧均执行S401-S404,以确定每个数据帧是否为正确的数据帧。
这样一来,第一数据帧通过校验,说明第一数据帧为正确的数据帧,MAC控制器存储正确数据帧的帧信息,避免数据帧的丢失,保证存储数据的准确性。同时可以避免错误数据帧占用存储资源,从而为正确的数据帧提供存储资源。
在一些实施例中,如图8所示,在基于第一数据帧的起始地址,存储第二数据帧之后,数据帧的存储方法还包括以下步骤:
S801、MAC控制器基于第二数据帧,确定第二数据帧的帧长度。
S802、MAC控制器确定第二数据帧的帧长度是否满足预设条件。
需要说明的是,在本申请实施例中,对于MAC控制器确定第二数据帧的帧长度是否满足预设条件的介绍,可以参考S403中对MAC控制器确定第一数据帧的帧长度是否满足预设条件的描述,此处不予赘述。
在本申请实施例中,若第二数据帧的帧长度满足预设条件,MAC控制器则可以执行S803。
在本申请实施例中,若第二数据帧的帧长度未满足预设条件,MAC控制器则可以执行S804。
S803、MAC控制器通过循环冗余校验对第二数据帧进行校验。
需要说明的是,在本申请实施例中,对于MAC控制器通过循环冗余校验对第二数据帧进行校验的介绍,可以参考S404中对MAC控制器通过循环冗余校验对第一数据帧进行校验的描述,此处不予赘述。
在本申请实施例中,若第二数据帧通过循环冗余校验,MAC控制器则可以执行S807。
也就是说,若第二数据帧的帧长度满足预设条件,且第二数据帧通过循环冗余校验,MAC控制器可以执行S807。
在本申请实施例中,若第二数据帧未通过循环冗余校验,MAC控制器则可以执行S804。
S804、MAC控制器确定第二数据帧未通过校验。
在一种可能的实现方式中,若第二数据帧未通过循环冗余校验,和/或,第二数据帧的帧长度未满足预设条件,MAC控制器则可以确定第二数据帧未通过校验。
需要说明的是,在本申请实施例中,对于MAC控制器确定第二数据帧未通过校验的介绍,可以参考S405中对MAC控制器确定第一数据帧未通过校验的描述,此处不予赘述。
在本申请实施例中,在第二数据帧未通过校验的情况下,MAC控制器可以执行S805-S806。
S805、MAC控制器获取第三数据帧。
其中,第三数据帧为第二数据帧的后一个数据帧。
在一种可能的实现方式中,PHY芯片可以向MAC控制器发送第三数据帧。MAC控制器可以接收来自PHY芯片的第三数据帧。
S806、MAC控制器基于第二数据帧的起始地址,存储第三数据帧。
在一种可能的实现方式中,在第二数据帧未通过校验的情况下,MAC控制器可以基于第二数据帧的起始地址,存储第三数据帧。
需要说明的是,在本申请实施例中,对于“MAC控制器基于第二数据帧的起始地址,存储第三数据帧”的介绍,可以参考S407中对“MAC控制器基于第一数据帧的起始地址,存储第二数据帧”的描述,此处不予赘述。
S807、MAC控制器确定第二数据帧通过校验。
在本申请实施例中,在MAC控制器通过校验的情况下,MAC控制器可以执行S808。
S808、MAC控制器存储第二数据帧的帧信息。
其中,帧信息包括:帧长度和起始地址。
在一种可能的实现方式中,在第二数据帧通过校验的情况下,MAC控制器可以存储第二数据帧的帧信息。
需要说明的是,在本申请实施例中,对于MAC控制器存储第二数据帧的帧信息的介绍,可以参考S502中对MAC控制器存储第一数据帧的帧信息的描述,此处不予赘述。
在本申请实施例中,MAC控制器可以对每个数据帧均执行S801-S808,以确定每个数据帧是否为正确的数据帧,以覆盖错误的数据帧,存储正确的数据帧。
可以理解的是,在MAC控制器存储第二数据帧之后,MAC控制器可以基于第二数据帧,确定第二数据帧的帧长度。若第二数据帧的帧长度未满足预设条件,MAC控制器则可以确定第二数据帧未通过校验。在第二数据帧未通过校验的情况下,MAC控制器可以获取第三数据帧,第三数据帧为第二数据帧的后一个数据帧。MAC控制器可以基于第二数据帧的起始地址,存储第三数据帧。如此,第二数据帧未通过校验,说明第二数据帧为错误的数据帧,MAC控制器可以使第三数据帧覆盖第二数据帧,减少错误数据帧的存储,避免造成存储资源的浪费。在第二数据帧通过校验的情况下,MAC控制器可以存储第二数据帧的帧信息,帧信息包括:帧长度和起始地址。如此,第二数据帧通过校验,说明第二数据帧为正确的数据帧,MAC控制器存储第二数据帧,避免正确数据帧的丢失。
上述主要从方法的角度对本申请实施例提供的方案进行了介绍。为了实现上述功能,数据帧的存储装置或车辆包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法,示例性的对数据帧的存储装置或车辆进行功能模块的划分,例如,数据帧的存储装置或车辆可以包括对应各个功能划分的各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
图9是根据一示例性实施例示出的一种数据帧的存储装置的框图。参照图9,该数据帧的存储装置用于执行图4、图5和图8所示的方法。该数据帧的存储装置包括:获取单元901和处理单元902。
获取单元901,用于获取第一数据帧,并存储第一数据帧。处理单元902,用于确定第一数据帧的帧长度和第一数据帧的起始地址。上述处理单元902,还用于通过循环冗余校验对第一数据帧进行校验。上述处理单元902,还用于若第一数据帧未通过循环冗余校验,和/或,第一数据帧的帧长度未满足预设条件,则确定第一数据帧未通过校验,预设条件包括:帧长度在预设范围阈值内,和/或,帧长度为整数个字节。上述获取单元901,还用于在第一数据帧未通过校验的情况下,获取第二数据帧,第二数据帧为第一数据帧的后一个数据帧。上述处理单元902,还用于基于第一数据帧的起始地址,存储第二数据帧,第二数据帧的起始地址与第一数据帧的起始地址相同。
在一种可能的实施方式中,上述处理单元902,还用于基于第二数据帧,确定第二数据帧的帧长度。上述处理单元902,还用于通过循环冗余校验对第二数据帧进行校验。上述处理单元902,还用于若第二数据帧未通过循环冗余校验,和/或,第二数据帧的帧长度未满足预设条件,则确定第二数据帧未通过校验。上述获取单元901,还用于在第二数据帧未通过校验的情况下,获取第三数据帧,第三数据帧为第二数据帧的后一个数据帧。上述处理单元902,还用于基于第二数据帧的起始地址,存储第三数据帧。上述处理单元902,还用于若第二数据帧通过循环冗余校验,且第二数据帧的帧长度满足预设条件,则确定第二数据帧通过校验。上述处理单元902,还用于在第二数据帧通过校验的情况下,存储第二数据帧的帧信息,帧信息包括:帧长度和起始地址。
在一种可能的实施方式中,上述处理单元902,还用于若第一数据帧通过循环冗余校验,且第一数据帧的帧长度满足预设条件,则确定第一数据帧通过校验。上述处理单元902,还用于在第一数据帧通过校验的情况下,存储第一数据帧的帧信息。
关于上述实施例中的装置,其中各个单元执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是根据一示例性实施例示出的一种车辆的框图。如图10所示,车辆1000包括但不限于:处理器1001和存储器1002。
其中,上述的存储器1002,用于存储上述处理器1001的可执行指令。可以理解的是,上述处理器1001被配置为执行指令,以实现上述实施例中的数据帧的存储方法。
需要说明的是,本领域技术人员可以理解,图10中示出的车辆结构并不构成对车辆的限定,车辆可以包括比图10所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
处理器1001是车辆的控制中心,利用各种接口和线路连接整个车辆的各个部分,通过运行或执行存储在存储器1002内的软件程序和/或模块,以及调用存储在存储器1002内的数据,执行车辆的各种功能和处理数据,从而对车辆进行整体监控。处理器1001可包括一个或多个处理单元。可选的,处理器1001可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器1001中。
存储器1002可用于存储软件程序以及各种数据。存储器1002可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能模块所需的应用程序(比如处理单元)等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
在示例性实施例中,还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器1002,上述指令可由车辆1000的处理器1001执行以实现上述实施例中的数据帧的存储方法。
在实际实现时,图9中的获取单元901和处理单元902的功能均可以由图10中的处理器1001调用存储器1002中存储的计算机程序实现。其具体的执行过程可参考上实施例中的数据帧的存储方法部分的描述,这里不再赘述。
可选地,计算机可读存储介质可以是非临时性计算机可读存储介质,例如,该非临时性计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存储器(Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
在示例性实施例中,本申请实施例还提供了一种包括一条或多条指令的计算机程序产品,该一条或多条指令可以由车辆的处理器执行以完成上述实施例中的数据帧的存储方法。
需要说明的是,上述计算机可读存储介质中的指令或计算机程序产品中的一条或多条指令被车辆的处理器执行时实现上述数据帧的存储方法实施例的各个过程,且能达到与上述数据帧的存储方法相同的技术效果,为避免重复,这里不再赘述。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种数据帧的存储方法,其特征在于,应用于媒体访问控制MAC控制器,所述方法包括:
获取第一数据帧,并存储所述第一数据帧;
确定所述第一数据帧的帧长度和所述第一数据帧的起始地址;
通过循环冗余校验对所述第一数据帧进行校验;
若所述第一数据帧未通过循环冗余校验,和/或,所述第一数据帧的帧长度未满足预设条件,则确定所述第一数据帧未通过校验,所述预设条件包括:所述帧长度在预设范围阈值内,和/或,所述帧长度为整数个字节;
在所述第一数据帧未通过校验的情况下,获取第二数据帧,所述第二数据帧为所述第一数据帧的后一个数据帧;
基于所述第一数据帧的起始地址,存储所述第二数据帧,所述第二数据帧的起始地址与所述第一数据帧的起始地址相同。
2.根据权利要求1所述的方法,其特征在于,在基于所述第一数据帧的起始地址,存储所述第二数据帧之后,所述方法还包括:
基于所述第二数据帧,确定所述第二数据帧的帧长度;
通过循环冗余校验对所述第二数据帧进行校验;
若所述第二数据帧未通过循环冗余校验,和/或,所述第二数据帧的帧长度未满足所述预设条件,则确定所述第二数据帧未通过校验;
在所述第二数据帧未通过校验的情况下,获取第三数据帧,所述第三数据帧为所述第二数据帧的后一个数据帧;
基于所述第二数据帧的起始地址,存储所述第三数据帧;
若所述第二数据帧通过循环冗余校验,且所述第二数据帧的帧长度满足所述预设条件,则确定所述第二数据帧通过校验;
在所述第二数据帧通过校验的情况下,存储所述第二数据帧的帧信息,所述帧信息包括:所述帧长度和所述起始地址。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若所述第一数据帧通过循环冗余校验,且所述第一数据帧的帧长度满足所述预设条件,则确定所述第一数据帧通过校验;
在所述第一数据帧通过校验的情况下,存储所述第一数据帧的帧信息。
4.一种数据帧的存储装置,其特征在于,所述装置包括:
获取单元,用于获取第一数据帧,并存储所述第一数据帧;
处理单元,用于确定所述第一数据帧的帧长度和所述第一数据帧的起始地址;
所述处理单元,还用于通过循环冗余校验对所述第一数据帧进行校验;
所述处理单元,还用于若所述第一数据帧未通过循环冗余校验,和/或,所述第一数据帧的帧长度未满足预设条件,则确定所述第一数据帧未通过校验,所述预设条件包括:所述帧长度在预设范围阈值内,和/或,所述帧长度为整数个字节;
所述获取单元,还用于在所述第一数据帧未通过校验的情况下,获取第二数据帧,所述第二数据帧为所述第一数据帧的后一个数据帧;
所述处理单元,还用于基于所述第一数据帧的起始地址,存储所述第二数据帧,所述第二数据帧的起始地址与所述第一数据帧的起始地址相同。
5.根据权利要求4所述的装置,其特征在于,
所述处理单元,还用于基于所述第二数据帧,确定所述第二数据帧的帧长度;
所述处理单元,还用于通过循环冗余校验对所述第二数据帧进行校验;
所述处理单元,还用于若所述第二数据帧未通过循环冗余校验,和/或,所述第二数据帧的帧长度未满足所述预设条件,则确定所述第二数据帧未通过校验;
所述获取单元,还用于在所述第二数据帧未通过校验的情况下,获取第三数据帧,所述第三数据帧为所述第二数据帧的后一个数据帧;
所述处理单元,还用于基于所述第二数据帧的起始地址,存储所述第三数据帧;
所述处理单元,还用于若所述第二数据帧通过循环冗余校验,且所述第二数据帧的帧长度满足所述预设条件,则确定所述第二数据帧通过校验;
所述处理单元,还用于在所述第二数据帧通过校验的情况下,存储所述第二数据帧的帧信息,所述帧信息包括:所述帧长度和所述起始地址。
6.根据权利要求4或5所述的装置,其特征在于,
所述处理单元,还用于若所述第一数据帧通过循环冗余校验,且所述第一数据帧的帧长度满足所述预设条件,则确定所述第一数据帧通过校验;
所述处理单元,还用于在所述第一数据帧通过校验的情况下,存储所述第一数据帧的帧信息。
7.一种车辆,其特征在于,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如权利要求1至3中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中存储的计算机执行指令由车辆的处理器执行时,所述车辆能够执行如权利要求1至3中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310580856.XA CN116633488A (zh) | 2023-05-22 | 2023-05-22 | 数据帧的存储方法、装置、车辆及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310580856.XA CN116633488A (zh) | 2023-05-22 | 2023-05-22 | 数据帧的存储方法、装置、车辆及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116633488A true CN116633488A (zh) | 2023-08-22 |
Family
ID=87620739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310580856.XA Pending CN116633488A (zh) | 2023-05-22 | 2023-05-22 | 数据帧的存储方法、装置、车辆及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116633488A (zh) |
-
2023
- 2023-05-22 CN CN202310580856.XA patent/CN116633488A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10382221B2 (en) | Communication method based on automotive safety integrity level in vehicle network and apparatus for the same | |
US11233750B2 (en) | Method and apparatus for allocating transmission opportunities in vehicle network | |
RU2596582C2 (ru) | Способ и устройство для адаптируемой к размерам памяти последовательной передачи данных | |
RU2620989C2 (ru) | Способ и устройство для повышения пропускной способности при передаче данных в последовательной шинной системе | |
KR102205776B1 (ko) | 제네릭 인터페이스를 제공하기 위한 방법 및 제네릭 인터페이스를 구비한 마이크로컨트롤러 | |
TWI524699B (zh) | 控制器區域網路(can)控制器單元、儲存can訊息之方法及相關聯微控制器 | |
RU2595962C2 (ru) | Способ и устройство для адаптации надежности передачи данных в последовательной шинной системе | |
KR100970300B1 (ko) | 통신 모듈의 메시지 메모리의 데이터를 액세스하기 위한 방법 및 장치 | |
US6697366B1 (en) | Ethernet memory management system and methods for operation thereof | |
RU2390053C2 (ru) | Диспетчер сообщений и способ управления доступом к данным в памяти сообщений коммуникационного компонента | |
KR102202408B1 (ko) | 제네릭 인터페이스를 제공하기 위한 방법 및 제네릭 인터페이스를 구비한 마이크로컨트롤러 | |
JP2014239432A (ja) | 汎用インタフェースを提供する方法、及び、汎用インタフェースを有するマイクロコントローラ | |
RU2678715C2 (ru) | Протокол передачи данных с состоянием исключения протокола | |
CN110995507B (zh) | 一种网络加速控制器及方法 | |
JP2009502072A (ja) | FlexRay通信モジュール及びFlexRay通信制御装置、並びにFlexRay通信接続とFlexRay加入者装置との間でメッセージを伝送する方法 | |
CN116633488A (zh) | 数据帧的存储方法、装置、车辆及存储介质 | |
CN117014361A (zh) | 数据传输方法、装置、设备及存储介质 | |
KR20170117326A (ko) | 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치 | |
Kern | Ethernet and IP for automotive E/E-architectures-technology analysis, migration concepts and infrastructure | |
JP4209186B2 (ja) | パケットの高速ルーティング及びスイッチングに対するメモリ要件を低減するように構成されたプロセッサ | |
US11636061B2 (en) | On-demand packetization for a chip-to-chip interface | |
CN115801498A (zh) | 一种车载以太网网关系统、运行方法 | |
CN113454935B (zh) | 一种线路编码方法及装置 | |
CN111901126B (zh) | 一种基于v2x协议栈网络层避免解密验签模块耗时的方法 | |
CN113886316A (zh) | 数据通信方法及相关装置、设备、系统和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |