具体实施方式
下面将结合本实用新型实施例中的附图,对本实用新型实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本实用新型一部分实施例,而不是全部的实施例。基于本实用新型中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本实用新型保护的范围。
由于目前的车载电子控制单元(Electronic Control Unit,ECU)基于控制器局域网络(Controller Area Network,CAN)通信,而CAN的传输带宽小,难以满足车载ECU的通信对于传输带宽的要求。
为提高车载ECU通信的传输带宽,本实用新型实施例提供了一种车载设备,如图1所示,该车载设备包括系统级芯片(System on Chip,SOC)101、现场可编程门阵列(FieldProgrammable Gate Array,FPGA)102和以太网收发器(Ethernet PHY)103。FPGA 102通过安全数字输入输出(Secure Digital Input and Output,SDIO)接口连接于SOC 101,FPGA102通过以太网接口连接于以太网收发器103。
FPGA 102,用于通过第一SDIO接口接收SOC发送的第一SDIO总线数据,将第一SDIO总线数据中的第一业务数据封装为第一以太网数据包,并通过以太网接口向以太网收发器发送第一以太网数据包,以使得以太网收发器向以太网发送第一以太网数据包。
FPGA 102,还用于通过以太网接口接收以太网收发器发送的第二以太网数据包,将第二以太网数据包中的第二业务数据转换为第二SDIO总线数据,并通过第一SDIO接口向SOC发送所述第二SDIO总线数据。
在本实用新型实施例中,以太网收发器103具体用于通过以太网向服务器或者诊断仪等设备发送以太网数据包。以太网收发器103具体用于通过以太网接收服务器或者诊断仪等设备发送发以太网数据包。
本实用新型实施例提供的车载设备,由于FPGA通过第一SDIO接口连接于SOC,FPGA通过以太网接口连接于以太网收发器,而且FPGA能够转换SOC和以太网收发器传输的数据格式,使得SOC能够基于FPGA与以太网通信,由于以太网的传输带宽大,因此提高了车载ECU通信的传输带宽。其中,车载设备可以是车载ECU。
在本实用新型实施例中,FPGA 102与以太网收发器103的以太网接口,包括:简化媒体独立接口(Reduced Media Independent Interface,RMII)、媒体独立接口(MediaIndependent Interface,MII)或者千兆媒体独立接口(Gigabit Medium IndependentInterface,GMII)等,本实用新型实施例对此不作具体限定。
SOC 101通过FPGA 102与以太网通信前,车载设备需要通电并初始化,配置SOC101为SDIO HOST模式,并配置FPGA 102为SDIO SLAVE模式。其中,SOC 101在SDIO HOST模式下,可以向FPGA 102发送状态控制指令,FPGA 102为SDIO SLAVE模式下,可以接收SOC 101的状态控制指令,从而将FPGA 102配置为与该状态控制指令对应的状态,并响应SOC 101发送的在该状态下可进行的各类操作控制指令。例如状态控制指令为读写状态控制指令,将FPGA 102的状态配置为可读写状态,可读写状态下通过读操作控制指令和写操作控制指令可以分别对FPGA 102进行读操作或写操作。
在本实用新型实施例中,SOC 101具有第二SDIO接口,与FPGA 102的第一SDIO接口连接,SOC 101通过第二SDIO接口向FPGA 102发送读写状态控制指令,FPGA 102通过第一SDIO接口接收该读写状态控制指令,并响应于读写状态控制指令,将FPGA 102自身配置为可读写状态,然后向SOC 101发送响应读写状态控制指令的应答信号,以表示FPGA 102可进行读写操作。SOC 101在接收到应答信号后,可以通过第二SDIO接口向FPGA 102发送写操作控制指令,控制SOC101将数据写入FPGA 102,或者SOC 101通过第二SDIO接口向FPGA 102发送读操作控制指令,控制SOC 101从FPGA 102读取数据。
可选的,本实用新型实施例的FPGA 102中设置有第一寄存器和第二寄存器,其中,FPGA 102通过第一SDIO接口接收SOC 101发送的读写状态控制指令,该读写状态控制指令中具有读操作需要的寄存器地址以及写操作需要的寄存器地址,因此FPGA 102根据该读写状态控制指令配置用于写操作的第一寄存器,以及用于读操作的第二寄存器。
在一实施例中,SOC 101向以太网发送第一业务数据,首先需要向FPGA 102写入第一业务数据。如图2所示,车载设备中的FPGA 102包括:第一转换单元1021、第一寄存器1022和第二转换单元1024。
所述第一转换单元1021通过第一SDIO接口连接于SOC 101,用于通过第一SDIO接口接收SOC 101发送的写操作控制信号,响应于写操作信号,将第一业务数据写入第一寄存器1022,写操作控制信号包括写操作指令和第一业务数据。即第一SDIO总线数据为写操作控制信号。
第二转换单元1024通过以太网接口连接于以太网收发器103,用于根据以太网协议,从第一寄存器1022中读取第一业务数据,将第一业务数据按照以太网数据包协议规则封装为第一以太网数据包,并通过以太网接口向以太网收发器发送第一以太网数据包。
在本实用新型实施例中,FPGA 102的第一SDIO接口具有指令控制通道SDIO1 CMD和数据通道SDIO1 D0~D3,SOC 101的第二SDIO接口具有指令控制通道SDIO2 CMD和数据通道SDIO2 D0~D3。图3可以表示SOC 101发送的数据,此时图3中的SDIO CMD表示SDIO2 CMD,图3中的SDIO D0~D3表示SDIO2 D0~D3;或者图3可以表示FPGA 102接收的数据,此时图3中的SDIO CMD表示SDIO1 CMD,图3中的SDIO D0~D3表示SDIO1 D0~D3。SOC 101通过第二SDIO接口的指令控制通道SDIO2 CMD向FPGA 102的第一SDIO接口的指令控制通道SDIO1CMD发送写操作指令,写操作指令可以是CMD53命令,即图3中SDIO CMD通道可以传输SDIOCMD53 Write命令。或者该写操作指令也可以是CMD52命令。相应的,FPGA 102通过自身的指令控制通道SDIO1 CMD端口接收写操作指令。SOC 101通过第二SDIO接口的数据通道SDIO2D0~D3向FPGA的第一SDIO接口的数据通道SDIO1D0~D3端口发送第一业务数据,即图3中的SDIO D0~D3可以传输第一业务数据。第一业务数据为需要执行的具体内容,可以包括帧长度数据(TX Frame length)和帧信息数据(TX Frame Data)。图3中通过3个Block传输第一业务数据包括的TX Frame length和TX Frame Data,其中,TX Frame length大小为2B,TXFrame Data大小为510+512+512=1534B。相应的,FPGA 102通过数据通道SDIO1 D0~D3端口接收第一业务数据。SOC 101通过第二SDIO接口的数据通道SDIO2 D0~D3向FPGA102的第一SDIO接口的数据通道SDIO1 D0~D3还可以发送循环冗余校验(Cyclic RedundancyCheck,CRC)数据,即图3中的SDIO D0~D3还可以在3个Block后传输SDIO CRC数据。
在一实施例中,第一转换单元1021具体用于根据写操作控制信号,向第一寄存器1022的存储位置写入第一业务数据。
在本实用新型实施例中,如图3所示,SOC 101向FPGA 102发送第一业务数据时,可采用块(Block)传输模式,且每个Block的大小为512字节(Byte,B)。SOC 101在向FPGA 102传输第一业务数据时,可以通过1个、2个或者3个Block传输第一业务数据。
基于此,第一转换单元1021具体用于:
在第一业务数据的大小小于等于512B时,将第一业务数据放入block1中传输;同时由于每个Block必须包含512B,因此若第一业务数据的大小小于512B,则在第一业务数据后补“0”,使得补“0”后的第一业务数据等于512B。
在第一业务数据的大小大于512B且小于等于1024B时,将第一业务数据放入block1和block2中传输;同时由于每个Block必须包含512B,因此若第一业务数据的大小小于1024B,则在第一业务数据后补“0”,使得补“0”后的第一业务数据等于1024B。
在第一业务数据的大小大于1024B且小于等于1536B时,将第一业务数据放入block1、block2和block3中传输。同时由于每个Block必须包含512B,因此若第一业务数据的大小小于1536B,则在第一业务数据后补“0”,使得补“0”后的第一业务数据等于1536B。
本实用新型实施例中,FPGA可以将SOC写入的第一业务数据,存储在专门用于存放SOC写入的数据的第一寄存器,使得FPGA向以太网收发器发送数据时可以从第一寄存器中读取,避免将SOC和以太网收发器发送的数据存在同一寄存器中而导致的数据读取错误的问题。
本实用新型实施例中,FPGA 102向以太网收发器103发送的第一以太网数据包可采用标准的以太网传输格式。例如,如图4所示,图4所示的格式为以太网数据包的标准传输格式。FPGA 102在将第一业务数据封装为以太网数据包时,FPGA 102可以在第一业务数据之前添加前导码、帧起始、目的物理地址和源物理地址,并在第一业务数据之后添加帧序列检测。其中,源物理地址为FPGA 102的以太网接口的物理地址,目的物理地址为以太网收发器103的物理地址。第一业务数据中帧长度数据位于图4中的长度位置,帧信息数据即第一业务数据位于图4中的数据位置。图4中的前导码、帧起始、目的物理地址、源物理地址、长度、数据和帧序列的可用大小分别为7byte、1byte、6byte、6byte、2byte、46-1500byte、4byte。其中数据可用大小为46-1500byte区间内的任一值。
在一实施例中,以太网向SOC 101发送第二业务数据,首先以太网需要向FPGA 102写入第二业务数据。如图2所示,FPGA 102包括:第一转换单元1021、第二寄存器1023和第二转换单元1024;
第二转换单元1024通过以太网接口连接于以太网收发器103,用于通过以太网接口接收以太网收发器103发送的第二以太网数据包,解析第二以太网数据包获取第二业务数据,将第二业务数据写入第二寄存器1023。其中,第二以太网数据包中的数据包括前导码、帧起始、目的物理地址、源物理地址和第二业务数据等。
第一转换单元1021通过第一SDIO接口连接于SOC 101,用于通过第一SDIO接口接收SOC 101发送的读操作控制信号,响应读操作控制信号,从第二寄存器1023中读取第二业务数据,并根据SDIO协议规则,将第二业务数据按照SDIO协议规则转换为第二SDIO总线数据,并通过第一SDIO接口向SOC 101发送第二SDIO总线数据。其中,读操作控制信号可以为CMD17命令或者CMD18命令等。
在一实施例中,第二以太网数据包的格式如图4所示,第二以太网数据包中目的物理地址、源物理地址、长度和数据为第二以太网数据包携带的第二业务数据。第一转换单元1021,具体用于在读取的第二业务数据的长度小于指定长度时,对读取的第二业务数据进行补零,其中补零后的第二业务数据的长度等于指定长度,并将补零后的第二业务数据转换为第二SDIO总线数据。
第二业务数据的长度可以为60-1514Bytes范围内的任一长度,3个Block共需添加1536B数据。构建第二SDIO总线数据时,需要在第二业务数据后添加第二以太网数据包的帧统计数据(大小为2B)以及第二以太网数据包的长度数据(大小为2B),由于第二业务数据最长为1514B,为了达到1536B还需要在第二业务数据后添加零数据(18B的“0”)。
例如,指定长度为1514B,在第二业务数据小于1514B时,FPGA在第二业务数据后补“0”,以使得将补零后的第二业务数据、零数据、帧统计数据和长度数据转换为第二SDIO总线数据长度为3个block,即1536B。第二SDIO总线数据还可以包括CRC数据。
在本实用新型实施例中,第二SDIO总线数据包括读状态信号以及第二业务数据,FPGA 102响应读操作控制信号,根据读状态信号将第一SDIO接口的指令控制通道SDIO1CMD端口配置为读状态,读状态下FPGA 102向SOC 101发送数据,通过数据通道SDIO1 D0~D3向SOC发送第二SDIO总线数据,SOC 101通过SOC 101的第二SDIO接口的数据通道接收FPGA 102发送的第二SDIO总线数据。
由于第一SDIO接口包括指令控制通道SDIO1 CMD和数据通道SDIO1 D0~D3,因此第一转换单元1021,具体用于通过指令控制通道SDIO1 CMD接收读操作控制信号,相应的通过数据通道SDIO1 D0~D3向SOC 101发送第二SDIO总线数据。
可选的,在本实用新型实施例中,第一寄存器1022和第二寄存器1023可以是不同的寄存器,或者第一寄存器1022和第二寄存器1023可以相同的寄存器中不同的存储区域。
在本实用新型实施例中,FPGA 102的第一SDIO接口包括多个数据通道,FPGA 102的第二寄存器1023的大小可以为32B,FPGA 102可以在至少获取到一帧完整的以太网帧数据时,通知SOC 101读取以太网帧数据。
基于此,第一转换单元1021,还用于在第二寄存器1023中至少写入一帧完整的第二业务数据时,将多个数据通道中的一个指定的数据通道置为高电平。
SOC 101,还用于在识别到指定的数据通道为高电平的情况下,向第一转换单元1021发送读操作控制信号。
在本实用新型实施例中,指定的数据通道可以是SDIO1 D1。第一转换单元1021通过将SDIO1 D1置为高电平,以使向SOC拉起中断信号,通知SOC读取以太网帧数据。
本实用新型实施例中的SDIO接口为SDIO标准接口,RMII接口为RMII标准接口,SDIO标准接口和RMII标准接口包括的各端口如图5所示,图5中,singnal表示端口,PINType表示引脚类型,IO standard表示输入输出标准,PIN description表示引脚描述。
以下对本实用新型实施例中的FPGA 102的性能指标进行说明。
FPGA 102为第一代超高速接口(Ultra Hight Speed-I,UHS-I)模式,支持1.8V电压。其中,UHS-I模式是一种高速通讯模式。
FPGA 102支持SD传输模式,该模式下支持1位和4位数据传输。
FPGA 102的时钟速率为100兆赫(Mega Hertz,MHz)。
FPGA 102接收以太网数据包的速率为100兆字节每秒(Mega Byte/second,Mb/s)。
以下对本实用新型实施例中FPGA 102的功能进行说明。
FPGA 102工作于UHS-I Card模式、组(Bank)电压和SDIO接口上拉电阻电压为1.8伏特(Volt,V)。
FPGA 102支持SDR12、SDR25和SDR50速率模式。
FPGA 102支持SD传输模式,支持的SDIO命令(Command)类型包括:CMD0、CMD3、CMD5、CMD7、CMD11、CMD15、CMD19、CMD52和CMD53。
FPGA 102不支持SPI模式,因此在初始化接收到CMD0时,无论SDIO_DAT3是否为高电平,第一转换单元1021的IP核都会保持在SD mode模式。
FPGA 102支持CRC7和CRC16的自动生成和校验。
FPGA 102被配置为UHS-I Card模式,当FPGA 102接收到CMD19命令后,自动回应R1,并提供协调块模式(Tuning Block Pattern),SOC 101可以通过Tuning Block Pattern在找到一个合适的SDIO信号采样窗口位置。
FPGA 102标准定义公共信息区(Common Information Area,CIA)寄存器,允许SOC101读取FPGA 102状态和配置功能。SOC 101可以通过CMD52或CMD53命令,读写FPGA中的CIA寄存器中的数据。CIA寄存器包括卡公共控制寄存器(Card Common Control Registers,CCCR)、函数基本寄存器(Function Basic Registers,FBR)、卡片的公共卡片信息结构(card's common Card Information Structure,CIS)寄存器和代码存储区(Code StorageArea,CSA)寄存器。FPGA102中的寄存器1022包括:CCCR寄存器、FBR寄存器和/或CIS寄存器。
在初始化阶段,当第一转换单元1021的IP核收到的指令CMD5 S18R为0时,该IP核回应R4中S18A为0;当该IP核收到的CMD5 S18R为1时,该IP核回应R4中S18A为1。当该IP核收到CMD11回应R1,并支持电压开关顺序(Voltage Switch Sequence),不改变IO电压。当Voltage Switch Sequence结束后,该IP核进入UHS-I模式。
FPGA 102在上电并被SOC 101控制初始化后正常工作,该初始化指的是SOC101与FPGA 102的通信初始化,该初始化流程遵循SDIO标准,具体初始化过程如图6所示,初始化时钟频率范围为100千赫兹(Kilo Hertz,KHz)~400KHz。
S601,FPGA 102上电后,对SDIO接口进行初始化并对内存进行初始化。
S602,FPGA 102进入空闲状态,并确认SOC 101的SDIO接口状态。其中,默认确认SDIO接口状态为低。
S603,FPGA 102检查SOC 101的SDIO接口是否有响应。若无响应,则执行S604。其中,默认SOC 101的SDIO接口无响应。
S604,FPGA 102将SDIO接口状态标示设置为低,并执行S607。其中。SDIO接口状态,指的是SOC 101的SDIO接口的电源状态。
S605,FPGA 102在接收到重新初始化SDIO接口指令时,初始化SDIO接口。
S606,FPGA 102进入空闲状态,并执行S607。
S607,FPGA 102检测SDIO接口状态标示是否为低。若SDIO接口状态标示为低,则执行S608。
本实用新型实施例中,对FPGA 102初始化存在两种情况,第一种是在上电时,对FPGA 102初始化,此时执行S601-S604以及S607-S624。这种情况下,S604已将SDIO接口状态标示设置为低。
第二种是上电后,重新对FPGA 102进行初始化,此时执行S605-S624。这种情况下,默认SDIO接口状态标示为低。
S608,FPGA 102获取SOC 101支持的操作电压域。
其中,FPGA 102可以请求获取SOC 101的运行条件寄存器的配置以及SOC101配置,以获取SOC 101支持的操作电压域。
S609,FPGA 102检查SOC 101的I/O功能数量是否大于零,或者SOC 101的运行条件寄存器是否有效。若是,则执行S610;若否,则执行S613。
S610,FPGA 102获取SOC 101的电压参数。其中,电压参数表示SOC 101是否支持切换到1.8V信号电压。
S611,FPGA 102检查SOC 101的SDIO接口的电源状态是否为低。若SDIO接口的电源状态为低,则返回S610;若SDIO接口的电源状态为高,则执行S612。
S612,FPGA 102设置SDIO接口的初始化标识为高。
S613,FPGA 102检测内存初始化标志是否为低。若内存初始化标志为低,则跳过内存初始化,执行S615;若内存初始化标志为高,则执行S614。
S614,FPGA 102初始化内存,并设置内存初始化标志为低。
S615,FPGA 102检查SDIO接口的初始化标识是否为高。若SDIO接口的初始化标识为高,则执行S616。由于S612设置了SDIO接口的初始化标识为高,因此一般情况下,S615判断的SDIO接口的初始化标识为高。
S616,FPGA 102检查SOC 101是否支持1.8V工作电压。若支持,则执行S617。一般不会存在不支持的情况,如果不支持也可以执行S617。
S617,FPGA 102确认开始切换电压为1.8V。其中,S617确认开始切换电压,实际切换电压为S619执行。
S618,FPGA 102检测SOC 101是否无错误。若无错误,则执行S619。可以默认SOC101无错误。
S619,FPGA 102切换电压到1.8V。
S620,FPGA 102对检测自身是否无错误。若无错误,则执行S621。可以默认FPGA102无错误。
S621,FPGA 102检查自身的内存初始化标识是否为低且SOC 101的寄存器存储区公共端口标识是否为高。若自身的内存初始化标识为低且SOC 101的寄存器存储区公共端口标识为高,则执行S622。可以默认FPGA 102自身的内存初始化标识为低且SOC 101的寄存器存储区公共端口标识为高。
S622,FPGA 102获取自身相对于SOC 101的相对地址。其中,SOC 101可以通过该相对地址访问FPGA 102。
S623,FPGA 102检查SDIO接口初始化标识是否为高,且内存初始化标识是否为低。若SDIO接口初始化标识为高,且内存初始化标识为低,则执行S623。
其中,S612设置了SDIO接口初始化标识为高,且S613-S614已判断或设置内存初始化标志为低。因此一般不会出现SDIO接口初始化标识为低,或者内存初始化标识为高的情况。
S624,FPGA 102确认与SOC 101的通信初始化完成。
本实用新型实施例还可以预先对FPGA 102寄存器1022进行初始化,初始化流程如下:
步骤1、FPGA 102上电。
步骤2、FPGA 102内部逻辑复位。
逻辑复位包括:FPGA 102的SDIO接口的rstn电平拉低一定时间后再拉高,开始IP全局复位。SOC 101的SDIO接口的rstn电平拉低一定时间后再拉高,开始IP全局复位。其中,rstn表示三条相线进线和一条零线进线。
步骤3、步骤2后FPGA 102的内部逻辑配置参数如下:第一转换单元1021的IP核为低速卡,该IP核支持高速(High Speed)配置,配置CCCRCIS指针(Pointer),配置Function1CIS Pointer,配置CCCR最大块尺寸(Max Block Size),配置Function1 Max Block Size,配置IO Ready=1。其中,Function1是SDIO接口的一种功能,用于传输数据,IO Ready=1表示读写正常。
步骤4、完成上述配置后,当第一转换单元1021的IP核接收到SOC 101发送的CMD5指令时,在R4C字段回应1,以通知SOC 101,FPGA 102读写正常。
步骤5、在该IP核初始化完成后,该IP核进入指令状态(Command State),SOC 101可以通过CMD52指令,配置第一转换单元1021的function0 Block Size及function1 BlockSize。
步骤6、SOC 101可以通过CMD52指令,配置寄存器1022的CCCR IOE=1,使使得第一转换单元1021具有Function1功能,此时该IP核将fun1_ioe端口电平拉高,形成复位信号,FPGA 102可以根据该复位信号,复位或者初始化实现Function1功能的寄存器,实现Function1的初始化。
步骤7、Function1初始化完成后,FPGA 102内部逻辑通过CPU Slave Interface配置Reg0x30 bit8=1,即设置CCCR IOR1=1,表示Function1正常读写。
SOC 101通过CMD52指令读取到CCCR IOR1为1后,表示寄存器初始化完成,SOC 101可以开始访问Function1对应的寄存器。其中,Function1对应的寄存器为部分寄存器1022。
寄存器1022初始化完成后,SOC 101可以通过CMD52或者AMD53命令通过第一转换单元1021访问寄存器1022,获取或者修改寄存器1022的软件版本号以及媒体存取控制位址(MAC Address)。
以下对本实用新型实施例中的以太网收发器103的功能进行说明。
本实用新型实施例中第二转换单元1022和以太网收发器103可以通过RMII接口连接,RMII接口符合IEEE 802.3标准,固定工作在100M/全双工模式。
FPAG 102支持PAD功能,即若SOC 101发送到FPGA 102的SDIO数据小于60字节(不包括帧序列检测(Frame Check Sequence,FCS)),FPGA 102对SDIO数据自动补0,使得补0后的SDIO数据达到60字节,再在补0后的SDIO数据后添加FCS字段,形成以太网数据包后,通过以太网接口发送,以保证发送以太网帧符合最小64字节的要求。
以太网数据包的最小帧间距(Interframe Gap,IFG)为12字节,即96比特(bit)。
正确的以太网帧数据的长度为64字节~1518字节(非VLAN帧)或64字节~1522字节(VLAN帧),第一转换单元1021的IP核在检测到以太网帧长度不属于该范围时,过滤该以太网帧数据,不向SOC 101发送该以太网帧数据。
SOC 101无需计算并向FPGA 102发送FCS字段,由FPGA 102计算FCS字段,并添加到以太网数据包。
FPGA 102向SOC 101发送的以太网帧数据中不包括FCS字段,由FPGA 102校验FCS字段,若校验错误,FPGA过滤该以太网数据包,不向SOC 101发送该以太网帧数据。
FPGA 102具有以太网帧过滤功能,包括:若从以太网收发器103接收到的以太网数据包是单播帧,且目的物理地址与本地物理地址匹配,则FPGA 102接收该以太网数据包,并向SOC 101发送以太网数据包的帧数据;若从以太网接口接收到的以太网数据包是单播帧,且目的物理地址与本地物理地址不匹配,则FPGA 102过滤该数据包,不向SOC 101发送该以太网数据包的帧数据。FPGA102可以通过以太网收发器103接收广播帧或者组播帧。
FPGA 102支持全双工模式下的流控(Flow Control)功能,通过配置内部参数,自动发送或者接收Pause帧,实现以太网流控功能。其中,Pause帧是一种控制帧,用于控制数据包停止发送。
SOC 101可以接收到以太网数据包中的目的物理地址、源物理地址、长度和数据。
本实用新型实施例还提供了一种车辆,包括上述任一所述的车载设备。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于车辆实施例而言,由于其基本相似于设备实施例,所以描述的比较简单,相关之处参见设备实施例的部分说明即可。
以上所述仅为本实用新型的较佳实施例,并非用于限定本实用新型的保护范围。凡在本实用新型的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本实用新型的保护范围内。