自主车辆数据记录器的制作方法

文档序号:26622222发布日期:2021-09-11 04:37阅读:88来源:国知局
自主车辆数据记录器的制作方法
自主车辆数据记录器
1.相关申请
2.本技术要求于2019年1月31日提交的题为“自主车辆数据记录器(autonomous vehicle data recorders)”的美国专利申请序列号16/263,403的优先权,其全部公开内容由此通过引用并入本文。
3.本技术涉及于2019年1月31日提交的题为“自主车辆的数据记录器(data recorders for autonomous vehicles)”的美国专利申请序列号16/263,359、于2018年3月16日提交的题为“自主驾驶车辆的黑盒子数据记录器(black box data recorder for autonomous driving vehicle)”的美国专利申请序列号15/923,820、于2018年3月28日提交的题为“自主驾驶车辆中的具有人工智能处理器的黑盒子数据记录器(black box data recorder with artificial intelligence processor in autonomous driving vehicle)”的美国专利申请序列号15/938,504、于2018年6月18日提交的题为“响应于事件检测下载系统存储器数据(downloading system memory data in response to event detection)”的美国专利申请序列号16/010,646、于2017年12月29日提交的题为“用于增强人工神经网络的分布式架构(distributed architecture for enhancing artificial neural network)”的美国专利申请序列号15/858,143和于2017年12月29日提交的题为“用于增强人工神经网络的分布式架构中的自学习(self

learning in distributed architecture for enhancing artificial neural network)”的美国专利申请序列号15/858,505,所述申请的全部内容通过引用并入本文。
技术领域
4.本文公开的至少一些实施例涉及记录自主车辆的传感器数据以用于后续分析,例如事故回顾和/或更新由高级驾驶员辅助系统(adas)使用的数据、地图和人工神经网络模型。


背景技术:

5.自主车辆通常包含许多传感器以帮助控制自主车辆的操作。在涉及自主车辆的事故、碰撞或近似碰撞的情况下,回顾事故之前和/或期间记录的传感器数据可能会对潜在地帮助确定事故的原因和/或是否已存在设计缺陷和/或车辆故障有所帮助。
6.如果在事故期间断电,存储在易失性存储器中的车辆传感器数据可能会丢失。易失性存储器需要电力来维持存储在其中的数据。易失性存储器的实例包含动态随机存取存储器(dram)和静态随机存取存储器(sram)。
7.一些存储器集成电路是非易失性的,并且即使在很长一段时间(例如,数天、数月、数年)不供电时也能保留所存储的数据。非易失性存储器的实例包含闪速存储器、只读存储器(rom)、可编程只读存储器(prom)、可擦除可编程只读存储器(eprom)和电子可擦除可编程只读存储器(eeprom)存储器等。
8.一些非易失性存储器的有用服务周期受限于编程和擦除以存储新数据的周期。编
程擦除(p/e)预算表示可以可靠地进行以替换可擦除媒体中的数据的预定数量的编程和擦除周期。在预定的擦除周期之后,此可擦除媒体的编程擦除(p/e)预算用完;并且因此,从统计学意义上讲,媒体可能变得不可靠并因此被视为处于其使用寿命的末期。例如,单层胞元(slc)闪速存储器的p/e预算可以在近似100,000个周期之间;多层胞元(mlc)闪速存储器的p/e预算范围可以为10,000到30,000个周期;而三层胞元(tlc)或四层胞元(qlc)闪速存储器的p/e预算可以在3,000到5,000个周期之间。
附图说明
9.实施例通过实例而非限制在附图的图中示出,其中相似的附图标记指示相似的元件。
10.图1示出了系统,其中车辆配置有数据记录器以收集传感器数据以用于改进其高级驾驶员辅助系统(adas)和/或用于事故回顾。
11.图2示出了根据一个实施例的具有数据记录器的自主车辆。
12.图3示出了根据一个实施例的数据记录器。
13.图4示出了根据一个实施例的操作数据记录器的方法。
14.图5示出了根据一个实施例的操作数据记录器的另一种方法。
15.图6示出了根据一个实施例的另一种数据记录器。
16.图7示出了根据一个实施例的又一种数据记录器。
17.图8

10示出了根据一些实施例的操作数据记录器的方法。
具体实施方式
18.本文公开的至少一些实施例提供了系统、方法和装置以在不同条件下并且出于不同目的收集和存储在自主车辆或具有高级驾驶员辅助系统(adas)的另一个车辆中生成的传感器数据。
19.在一个实例中,在事故(例如,碰撞或近似碰撞)或近似事故事件之后,可以回顾传感器数据以确定事件的原因。此传感器数据在本文中可以被称为事故传感器数据。事故传感器数据可以被分析以例如标识事故或近似事故事件的原因和/或自主车辆的不安全方面或设计。所述分析可以导致用于自主车辆和/或类似车辆的安全操作的改进的控制设计和/或配置。
20.在另一个实例中,在车辆的adas(例如,自主驾驶系统)检测到处理传感器数据时的故障/错误,或检测到标识来自传感器数据的对象时的失配,或无法标识/分类来自传感器数据的对象,或无法以最低置信水平识别、检测、标识或分类对象之后,可以使用传感器数据来改进高级驾驶员辅助系统(adas)。与事故或近似事故事件不相关的此类传感器数据在本文中可以被称为训练传感器数据。例如,可以通过使用传感器数据进行机器学习和/或更新adas中使用的数据模型以分类或标识对象来进行改进。此类数据模型可以包含自主车辆行驶所在的道路系统的高清晰度(hd)地图和/或用于对象检测、分类、识别和/或标识的人工神经网络。
21.高清晰度(hd)地图通常用于自主车辆中进行运动规划。此地图可以具有厘米级的高精度。hd地图可以提供有关车辆操作所在的环境(例如,道路系统)的几何和语义信息。hd
地图中提供的几何信息可以包含由光探测和测距(激光雷达)、雷达、摄像头、声纳、gps等收集的原始传感器数据。语义信息可以标识对象,例如车道边界、交叉路口、停车位、停车标志、交通灯和其它信息(例如,车速、变道限制等)。
22.已经开发了一些技术以进一步使用hd地图来生成用于使用人工神经网络(ann)进行的对象检测、分类、标识和/或识别的表示/输入。
23.可以将hd地图中标识的对象与经由由数码摄像头、激光雷达(光探测和测距)、雷达(无线电探测和测距)、超声波声纳(声音导航和测距)等生成的传感器数据标识的对象进行比较。当对象检测、分类、识别或标识中存在失配时,可以将传感器数据用于分析以更新hd地图和/或训练用于对象检测、分类、识别或标识的人工神经网络(ann)。
24.在本文公开的一些实施例中,自主车辆的数据记录器配置有两个单独的循环缓冲器,用于缓冲事故传感器数据以进行后续事故回顾和用于缓冲训练传感器数据以改进adas(例如,hd地图和/或ann模型)。单独的循环缓冲器可以被分别配置成满足缓冲传感器数据的不同要求以用于不同用途(例如,事故回顾和adas改进)。在本文公开的其它实施例中,单个循环缓冲器由控制器控制以满足两个单独的循环缓冲器的不同要求。
25.例如,数据记录器可以配置有事故数据循环缓冲器以缓冲事故传感器数据以进行后续事故回顾,以及训练数据循环缓冲器以缓冲训练传感器数据以改进adas。
26.例如,数据记录可以接收含有来自安装在车辆上的各种摄像头的实时视频数据和来自其它传感器(例如,雷达、激光雷达、超声波声纳等)的各种输出信号的数据流。传感器数据可以是来自传感器的原始数据或经压缩的图像/视频数据。
27.每个循环缓冲器被配置成循环地缓冲数据,其中传入的数据被填充到缓冲器中直到缓冲器已满,然后更多的新数据被缓冲以替换循环缓冲器中的最旧数据。循环缓冲器可以使用一种具有非常高耐久性的存储器(例如,允许在循环缓冲器中写入和重写数百拍字节的数据)来实施。例如,循环缓冲器可以经由sram或dram(其是易失性的并且需要电力来保留其内容)来实施。可替代地,循环缓冲器可以使用具有非常高耐久性的非易失性存储器(例如,交叉点存储器)来实施。
28.交叉点存储器使用无晶体管存储器元件,每个无晶体管存储器元件具有存储器胞元和选择器,它们堆叠在一起作为一列。存储器元件列经由两个垂直的线层连接,其中一层位于存储器元件列上方,而另一层位于存储器元件列下方。每个存储器元件可以在两层中每一层上的一根线的交叉点处单独选择。交叉点存储器装置速度快且是非易失性的,并且可以用作用于处理和存储的统一的存储器池。
29.一些具有非常高耐用性的非易失性存储器的数据保留很短(例如,几分钟或几小时)。
30.自主车辆可以被配置成生成指示事故发生或潜在事故预测的信号。此信号在本文中可以被称为事故信号。
31.事故信号可以由adas(例如,自主驾驶系统)基于传感器数据生成。例如,自动紧急制动的激活可能导致为数据记录器生成事故信号。例如,防抱死制动系统的激活可能导致向数据记录器生成事故信号。例如,加速超过阈值可能导致向数据记录器生成事故信号。例如,当车辆的防碰撞系统检测到撞击威胁或确定撞击的概率高于阈值时,可以为数据记录器生成事故信号。例如,当气囊传感器在车祸的初始撞击期间确定正在发生碰撞时,可以为
数据记录器生成事故信号。例如,当adas从传感器数据检测到危险场景(例如,另一个汽车或对象距自主车辆的距离相较于阈值更近)时,会为数据记录器生成事故信号。
32.车辆的数据记录器被配置成具有非易失性存储器。数据记录器的非易失性存储器可以使用高密度和高数据保留闪速存储器来实施,所述闪速存储器可以在不供电的情况下将数据保留数月和/或数年。例如,可以使用三层胞元(tlc)或四层胞元(qlc)nand闪速存储器作为数据记录器的非易失性存储器。
33.响应于事故信号,数据记录器将事故数据循环缓冲器的内容拷贝到非易失性存储器中,使得可以在事故之后保存事故传感器数据,这可以防止数据记录器在很长一段时间内供电。
34.优选地,数据记录器的非易失性存储器被配置成包含用于事故传感器数据的多个插槽。每个插槽是专用的存储空间,用于保存从事故数据循环缓冲器拷贝的传感器数据。响应于每个事故信号,事故数据循环缓冲器的内容被拷贝到非易失性存储器中的插槽中的一个可用插槽中。最初,所有插槽都可用于存储从事故数据循环缓冲器拷贝的传感器数据。在响应于过去的事故信号而使用所有插槽之后,存储与最旧事故信号相关联的传感器数据的插槽可用于响应于当前事故信号而存储从事故数据循环缓冲器拷贝的新的当前传感器数据。
35.数据记录器被配置成确保完成将传感器数据从事故数据循环缓冲器拷贝到非易失性存储器,即使事故导致数据记录器的供电中断。例如,数据记录器可以具有备用电源,其足以为操作供电,以完成将传感器数据从事故数据循环缓冲器拷贝到非易失性存储器,即使数据记录器的外部电源在事故信号之后被立即去除。备用电源可以经由电容器来实施,所述电容器被充电以存储用于操作的电力,同时数据记录器经由外部电源正常供电(例如,在事故之前在事故数据循环缓冲器中记录数据的操作期间)。可替代地或组合地,备用电源可以包含安装在数据记录器的外壳内的电池。
36.事故数据循环缓冲器被配置成在事故信号之前的一段时间(例如,30秒)内缓冲传感器数据。响应于事故信号,这段时间缓冲的传感器数据被拷贝到数据记录器的非易失性存储器中的插槽中;并且在将相应数据拷贝到插槽中之前,事故信号时的事故数据循环缓冲器中的现有数据不会被来自传感器的新数据覆写。
37.在一个实施方案中,响应于事故信号,事故数据循环缓冲器暂时停止缓冲传入的新传感器数据以保存其内容并在事故数据循环缓冲器中的内容的至少最旧部分已被拷贝到数据记录器的非易失性存储器中的插槽中之后恢复缓冲数据。任选地,事故数据循环缓冲器可以在完成将事故信号的现有数据存储到非易失性存储器中之后恢复传入的新传感器数据的缓冲。任选地,事故数据循环缓冲器可以在事故数据循环缓冲器的内容的预定部分已被拷贝到非易失性存储器中的插槽之后并且在事故数据循环缓冲器的全部内容被拷贝到插槽中之前恢复传入的新传感器数据的缓冲,其中传入的新传感器数据的缓冲不会覆写待拷贝到数据记录器的非易失性存储器的事故传感器数据。
38.在另一个实施方案中,响应于事故信号,事故数据循环缓冲器被配置成读取事故数据循环缓冲器中的内容的最旧部分以记录在非易失性存储器中,然后将传入的新传感器数据记录到位以覆写事故数据循环缓冲器中的最旧部分。因此,数据记录器将内容从事故数据循环缓冲器腾出到非易失性存储器中的插槽中,同时继续将传入的传感器数据记录在
事故数据循环缓冲器的腾出部分的部分中;并且数据记录器可以继续缓冲传入的传感器数据,而不会无法缓冲任何传入的传感器信号,同时将与事故信号相关联的内容(例如,在事故信号之前的30秒时间段内生成)拷贝到非易失性存储器中的插槽中。
39.任选地,数据记录器和/或自主车辆可以被配置成通过通信网络/连接将数据内容从非易失性存储器中的插槽上传到远程服务器。例如,数据转移可以被配置成以多个选项中的一个进行。一个选项是经由蜂窝通信网络将数据无线传输到服务器。另一个选项是通过无线局域网(例如,wi

fi)将数据无线传输到服务器。又一个选项是通过有线连接经自主车辆的诊断端口进行传输。再一个选项是从自主车辆去除数据记录器以有线连接到数据记录器的通信端口。
40.可以使用数据记录器的非易失性存储器的插槽中记录的事故传感器数据进行事故或近似事故事件的调查。
41.自主车辆可以生成指示保存传感器数据以用于训练和/或改进adas的请求的信号。此信号在本文中可以被称为训练信号。
42.例如,训练信号可以由adas(例如,自主驾驶系统)响应于hd地图中标识的道路对象(例如,车道边界、障碍物、交通标志等)和从传感器数据检测或识别的相对应对象之间的失配而生成。与失配相关联的传感器数据可以用于训练adas识别对象和/或更新hd地图的相对应路段。
43.训练数据循环缓冲器被配置成与事故数据循环缓冲器缓冲事故传感器数据并行地缓冲训练传感器数据。训练数据循环缓冲器被配置成具有某一容量,以存储在较长一段时间(例如,3分钟)(相较于事故数据循环缓冲器(例如,30秒))内收集的数据。
44.响应于训练信号,训练传感器数据被从训练数据循环缓冲器拷贝到数据记录器的非易失性存储器中。响应于训练信号而被拷贝的训练传感器数据可以包含在训练信号之前生成的部分和在训练信号之后生成的剩余部分。在一些情况下,在训练信号之前生成的部分的时间段等于或长于在事故数据循环缓冲器中缓冲的流段的长度(例如,30秒或更长时间)。在其它情况下,响应于训练信号而被拷贝的全部训练传感器数据是在训练信号之前生成的。任选地,时间段选择指示与训练信号一起提供,使得数据记录器可以选择性地拷贝训练信号之前生成的部分和训练信号之后生成的剩余部分。可替代地,adas可以通过调整训练信号的定时来选择时间段,使得相对于训练信号预定的时间窗口是待保存为训练传感器数据的传感器数据流段的时间段。在一些情况下,在数据记录器中接收训练信号之时,训练数据循环缓冲器继续缓冲传入的传感器数据信号,直到在训练信号之后生成的剩余部分被缓冲在训练数据循环缓冲器中以拷贝到数据记录器的非易失性存储器中。任选地,在在训练信号之后生成的剩余部分被缓冲在训练数据循环缓冲器中之后并且在完成将与训练信号相关联的训练传感器数据拷贝到训练数据记录器的非易失性存储器之前,训练数据循环缓冲器可以暂时停止缓冲进一步传入的传感器数据。训练传感器数据的拷贝可以被配置成响应于训练信号并且在完成缓冲与训练信号相关联的全部训练传感器数据之前开始。可替代地,训练传感器数据的拷贝可以被配置成在完成缓冲与训练信号相关联的全部训练传感器数据之时或之后开始。
45.优选地,数据记录器的非易失性存储器被配置成具有专用区域,其被保留以存储训练传感器数据。非易失性存储器中的训练数据区域与被配置用于事故回顾的传感器数据
的插槽分开。
46.任选地,训练数据区域可以具有多个插槽,用于存储与多个训练信号相关联的训练传感器数据。数据记录器可以被配置成保留与最新训练信号相关联的训练传感器数据。
47.任选地,数据记录进一步被配置成接收训练信号的优先级指示。例如,adas可以评估hd地图中标识的对象和从传感器数据检测/识别的相对应对象之间的失配程度。高失配程度会被分配高优先级。类似地,检测、分类、识别或标识对象时的低置信水平可以被分配高优先级。因此,当数据记录器没有足够的插槽来存储尚未传输到服务器的训练数据时,数据记录器可以被配置成基于优先级指示保留训练传感器数据。
48.拷贝到数据记录器的非易失性存储器的训练数据区域中的内容可以经由以上讨论的一些用于传输事故数据的通信选项(例如,无线蜂窝通信网络(例如,5g蜂窝通信)和/或无线局域网(例如,wi

fi))自动传输到远程服务器。取决于网络带宽和覆盖范围,数据传输可能需要几分钟到几小时/几天的时间段。数据记录器的非易失性存储器可以在完成数据传输之前在没有电力的情况下保留数据。
49.图1示出了系统,其中车辆配置有数据记录器以收集传感器数据以用于改进其高级驾驶员辅助系统(adas)和/或用于事故回顾。
50.图1的系统包含具有数据记录器(101)的车辆(111)。数据记录器(101)可以根据本文公开的任何实施例来配置。车辆(111)具有高级驾驶员辅助系统(adas)(105)和一或多个向adas(105)提供传感器数据输入的传感器(103)。
51.例如,传感器(103)可以包含数码摄像头、激光雷达、雷达、超声波声纳、制动传感器、速度传感器、加速度传感器、气囊传感器、gps(全球定位系统)接收器等。
52.随时间变化的传感器(103)的输出作为传感器数据流提供给adas(105)以支持其操作并提供给数据记录器(101)用于缓冲和/或记录。adas(105)可以生成事故信号和/或训练信号以启动传感器数据从循环缓冲器到数据记录器(101)的非易失性存储器的转移,如上所讨论。
53.例如,响应于事故或近似事故事件的检测,adas(105)可以生成事故信号以使数据记录器(101)存储持续时间b(例如,30秒)的事故传感器数据(例如,127)。事故传感器数据(127)通常由传感器在持续时间b(例如,30秒)内生成并在由adas(105)生成的事故信号之前缓冲在数据记录器(101)的循环缓冲器中。
54.例如,响应于检测到训练或改进adas(105)的可能性而不是事故或近似事故事件,adas(105)可以生成训练信号以使数据记录器(101)存储持续时间a(例如,3分钟)的训练传感器数据(例如,121)。训练传感器数据(121)由传感器在持续时间a(例如,3分钟)内生成并缓冲在数据记录器(101)的循环缓冲器中。持续时间a(例如,3分钟)可以包含在由adas(105)生成的训练信号之前的部分并且任选地包含在训练信号之后的部分。
55.车辆(111)配置有无线通信装置,以经由无线信号(113)和通信网络(117)向远程服务器(119)传输事故传感器数据(127)和/或训练传感器数据(121)。远程服务器(119)通常被配置在远离车辆(111)所服务的道路(102)的位置处。通信网络(117)的一个实例是具有一或多个基站(例如,115)以接收无线信号(例如,113)的蜂窝电话网络。通信网络(117)的另一个实例是互联网,其中由车辆(113)传输的无线局域网信号(例如,113)在接入点(例如,115)中被接收以进一步与服务器(119)通信。在一些实施方案中,车辆(111)使用到卫星
(109)或通信气球的通信链路(107)将传感器数据(例如,121或127)传输到服务器(119)。
56.服务器(119)可以被配置成包含事故模块(129)。可以在事故模块(129)中回顾和/或分析事故传感器数据(127)以标识事故的原因和/或可能的设计或配置改变以改进自主驾驶和/或adas。
57.服务器(119)可以被配置成包含训练和更新模型(123)。训练传感器数据(121)可以用于训练和更新模块(123)以改进adas(105)的人工神经网络(ann)(125)和/或更新车辆(111)使用的道路(102)的高清晰度(hd)地图(126)。
58.在一些实施方案中,adas(105)可以任选地包含机器学习模块,其被配置成使用存储在数据记录器(101)的非易失性存储器中的训练传感器数据(121)来改进其ann(在有或没有来自服务器的帮助(119)的情况下)。
59.图2示出了根据一个实施例的具有数据记录器(101)的自主车辆(111)。例如,图1的系统中的车辆(111)可以使用图2的自主车辆(111)来实施。
60.图2的车辆(111)被配置成具有高级驾驶员辅助系统(adas)(105)。车辆(111)的adas(105)可以具有用于运动规划的高清晰度(hd)地图(126)和用于对象检测、识别、标识和/或分类的人工神经网络(ann)(125)。任选地,hd地图(126)也可以用于对象检测、识别、标识和/或分类。
61.当hd地图(126)中标识的对象和经由ann(125)的对象的标识之间存在失配时,adas(105)可以为数据记录器(101)生成训练信号。
62.当adas(105)检测到事故或近似事故事件时,adas(105)可以为数据记录器(101)生成事故信号。
63.车辆(111)通常包含信息娱乐系统(149)、通信装置(139)、一或多个传感器(103)以及计算机系统(131),所述计算机系统连接到车辆(111)的一些控制,例如用于车辆(111)的方向的转向控制(141)、用于车辆(111)的停止的制动控制(143)、用于车辆(111)的速度的加速度控制(145)等。在一些实施例中,图1的系统中的车辆(111)具有相似的配置和/或相似的组件。
64.车辆(111)的计算机系统(131)包含一或多个处理器(133)、数据记录器(101)和存储器(135),所述存储器存储固件(或软件)(147),包含计算机指令和adas(105)的数据模型。adas(105)的数据模型可以包含hd地图(126)和ann(125)。
65.一或多个传感器(103)可以包含可见光摄像头、红外摄像头、激光雷达、雷达或声纳系统、外围传感器、全球定位系统(gps)接收器、卫星定位系统接收器、制动传感器和/或气囊传感器。传感器可以向计算机系统(131)提供实时传感器数据流。由车辆的传感器(103)生成的传感器数据可以包含使用使用人眼可见的光成像的摄像头或使用红外光或声纳、雷达或lidar系统成像的摄像头捕捉对象的图像。从车辆的至少一个传感器获得的图像数据是所收集的传感器数据的一部分,用于记录在数据记录器中。
66.adas(105)的输出可以用于控制(例如,(141)、(143)、(145))自主驾驶期间的车辆(111)的加速度、车辆(111)的速度和/或车辆(111)的方向。
67.在一些实施例中,在服务器(119)更新ann(125)和/或hd地图(125)之后,服务器(119)可以通过通过通信装置(139)和/或无线信号(113)向车辆(111)的计算机系统(131)下载ann(125)和/或hd地图(125)来空中更新车辆(111)的adas。
68.图3示出了根据一个实施例的数据记录器。例如,图1的系统和/或图2的车辆(111)中的数据记录器(101)可以使用图3的数据记录器(101)来实施。
69.图3的数据记录器(101)可以包含封闭其组件的外壳(137)。任选地,数据记录器(101)的外壳(137)密封数据记录器(101)的组件并保护数据记录器(101)和/或存储在非易失性存储器(165)中的数据在事故期间不被破坏;并且因此,在撞击/碰撞、火灾和/或洪水(其在涉及车辆的事故中是典型的)之后,可以检索存储在数据记录器(101)的非易失性存储器(165)中的数据。
70.图3的数据记录器(101)包含一或多个通信接口或装置(153)、事故数据循环缓冲器(161)、训练数据循环缓冲器(163)、控制器(159)和非易失性存储器(165)。
71.通信接口或装置(153)可以用于从其中安装了数据记录器(101)的车辆(111)的传感器(103)接收传感器数据流(151)。传感器数据流(151)被并行地提供给事故数据循环缓冲器(161)和训练数据循环缓冲器(163)。
72.此外,通信接口或装置(153)可以用于从车辆(111)和/或其adas(105)接收训练信号(例如,157)和事故信号(155)。
73.响应于事故信号(155),控制器(159)停止将传入的传感器数据流(151)记录到事故数据循环缓冲器(161)中,并且开始将内容从事故数据循环缓冲器(161)拷贝到非易失性存储器(165)。
74.非易失性存储器(165)具有多个插槽(171、173、
……
、179)。每个插槽足以存储事故数据循环缓冲器(161)的全部内容。控制器(159)可以以循环(round robin/cyclic)方式使用插槽(171、173、
……
、179),使得在多个事故信号之后,插槽(171、173、
……
、179)存储与最近事故信号相关联和/或由其标识的最新事故传感器数据集。
75.响应于训练信号(157),控制器(159)可以继续将传入的传感器数据流(151)缓冲到训练数据循环缓冲器(163)中,使得训练数据循环缓冲器(163)含有传感器数据集(部分在训练信号(157)之前记录,并且部分在训练信号(157)之后记录)。然后,控制器(159)将训练传感器数据集拷贝到非易失性存储器(165)中为训练传感器数据保留的区域(167)中。
76.任选地,区域(167)还可以包含多个插槽,每个插槽足以存储训练数据循环缓冲器(163)的内容。
77.任选地,数据记录器(101)包含备用电源,例如电容器或可充电电池。
78.图4示出了根据一个实施例的操作数据记录器的方法。例如,图4的方法可以在图1的系统中的图2的车辆(111)中的图3的数据记录器(101)中实施。
79.在块201和211,数据记录器(101)提供第一循环缓冲器(161)和第二循环缓冲器(163)。
80.在块203,数据记录器(101)在第一循环缓冲器(161)中缓冲第一持续时间(例如,30秒)的第一传感器数据流。
81.在块213,数据记录器(101)在第二循环缓冲器(163)中缓冲第二持续时间(例如,3分钟)的第二传感器数据流。
82.第一和第二循环缓冲器(161和163)并行操作。数据以循环方式缓冲到每个循环缓冲器(161和163)中,使得当缓冲器已满时,最新数据覆写最旧数据。例如,数据从缓冲器的开头向缓冲器的末尾进行记录。一旦到达缓冲器的末尾,数据将再次从缓冲器的开头向缓
冲器的末尾进行写入,就好像缓冲器的末尾在缓冲器的开头之后。
83.在块205,数据记录器(101)接收记录传感器数据的请求。所述请求可以是事故信号或训练信号。
84.在块207,数据记录器(101)确定所述请求是否用于记录事故(例如,碰撞或近似碰撞)。
85.如果请求是记录事故,则在块209,数据记录器(101)将第一内容从第一循环缓冲器(161)拷贝到非易失性存储器(165)。
86.任选地,数据记录器(101)在一段时间内停止将传入的传感器数据缓冲到第一循环缓冲器(161)中,以作为对记录事故的请求的响应(例如,以防止第一循环缓冲器(161)中的现有数据覆写和/或在数据记录器(101)的外部电源中断时保存备用电力)。
87.在块221,数据记录器(101)在事故之后将第一内容从非易失性存储器(165)传输或提供到服务器(119)。
88.在块223,服务器(119)基于第一内容回顾事故。
89.如果请求不是记录事故,则在块219,数据记录器(101)将第二内容从第二循环缓冲器(163)拷贝到非易失性存储器(165)。
90.任选地,数据记录器(101)在一段时间内继续将传入的传感器数据缓冲到第一循环缓冲器(161)中,以作为对请求的响应,并且因此将含有传感器数据的第二内容缓冲某一持续时间(部分在请求之前,部分在请求之后)。在继续缓冲的时间段之后,数据记录器(101)可以在完成将第二内容拷贝到非易失性存储器(165)中之前的另一段时间内停止缓冲。
91.在块231,数据记录器(101)将第二内容从非易失性存储器(165)传输到服务器(119)。
92.在块233,服务器(119)基于第二内容改进高级驾驶员辅助系统(adas)。
93.图5示出了根据一个实施例的操作数据记录器的另一种方法。例如,图5的方法可以在图1的系统中的图2的车辆(111)中的图3的数据记录器(101)中实施。图5的方法可以与图4的方法相组合进行。
94.在块251,数据记录器(101)提供用于缓冲与事故有关的传感器数据的第一循环缓冲器(161)和用于缓冲与事故无关的传感器数据的第二循环缓冲器(163)。
95.在块253,数据记录器(101)提供非易失性存储器(165)。
96.在块255,数据记录器(101)将非易失性存储器(165)划分为第一部分(171、173、
……
、179)和第二部分(167),其中第一部分的存储容量是第一循环缓冲器(161)的容量的数倍,而第二部分足以存储第二循环缓冲器(167)中缓冲的数据。
97.在块257,数据记录器(101)将第一部分组织到预定数量的插槽(171、173、
……
、179),每个插槽具有存储第一循环缓冲器(161)中缓冲的数据的容量。
98.在块259,数据记录器(101)在预定数量的插槽(171、173、
……
、179)中存储多至预定数量的最近事故的传感器数据。
99.例如,数据记录器(101)响应于初始事故信号而将事故传感器数据从事故数据循环缓冲器(161)拷贝到第一插槽(171)中。对于每个后续事故信号,数据记录器(101)将事故传感器数据存储在下一个插槽(例如,173、
……
、179)中。在到达最后一个插槽(179)之后,
数据记录器(101)使用第一插槽(171)作为下一个插槽,就好像第一插槽(171)是最后一个插槽(179)之后的下一个插槽。
100.任选地,为训练数据循环缓冲器(163)中缓冲的训练传感器数据保留的第二部分(167)也被配置成具有多个插槽。每个插槽存储标识相应插槽中存储的训练传感器数据的优先级的指示符。当第二部分(167)中的插槽已满时,数据记录器(101)重新使用具有低于训练数据循环缓冲器(163)中的当前训练传感器数据的最低优先级的插槽。
101.在一个实例中,自主车辆(111)具有被配置成在自主车辆(111)在道路(102)上操作期间生成传感器数据流(151)的传感器(103)。车辆(111)的高级驾驶员辅助系统(adas)(105)可以被配置成基于传感器数据流(151)在道路(102)上自主地操作车辆(111)。高级驾驶员辅助系统(adas)(105)进一步被配置成响应于事故的检测或预测而生成事故信号(155)并响应于对象检测、识别、标识或分类中的故障而生成训练信号(157)。
102.所述实例中的车辆(111)的数据记录器(101)包含非易失性存储器(165)、第一循环缓冲器(161)、第二循环缓冲器(163)和控制器(159)。第一循环缓冲器(161)具有缓冲传感器数据流(151)的第一段(例如,30秒)的容量;而第二循环缓冲器具有缓冲传感器数据流(151)的第二段(例如,3分钟)的容量。在没有事故信号和训练信号的情况下,第一循环缓冲器(161)和第二循环缓冲器(163)被分别配置成在其相应容量内并行且循环地缓冲传感器数据流(151)。在事故信号(155)和训练信号(157)的生成之前,第二循环缓冲器(163)中缓冲的传感器数据流段可以包含第一循环缓冲器(161)中缓冲的传感器数据流段。
103.响应于事故信号(155),控制器(159)被配置成将传感器数据流段从第一循环缓冲器(161)拷贝到非易失性存储器(165)中。响应于训练信号(157),控制器(159)被配置成将传感器数据流段从第二循环缓冲器(163)拷贝到非易失性存储器(165)中。
104.来自传感器(103)的传感器数据流(151)可以包含传感器(103)(例如,数码摄像头、雷达、激光雷达或超声波声纳或其任何组合)的输出。高级驾驶员辅助系统(adas)(105)可以包含道路(102)的地图(126)和人工神经网络(125),用于基于传感器数据流(151)检测、识别、标识和/或分类道路(102)上的对象。响应于道路(102)的地图(126)中对象的标识和通过在人工神经网络(125)中应用传感器数据流(151)进行的相对应对象的标识之间的失配,高级驾驶员辅助系统(adas)(105)可以生成训练信号(155)。
105.优选地,在训练信号(157)之后,自主车辆(111)被配置成响应于训练信号(157)而自动将拷贝到非易失性存储器(165)中的传感器数据流段传输到远程服务器(119)。服务器(119)可以配置有训练和更新模块(123),以根据从车辆(111)接收的传感器数据流段更新道路(102)的地图(126),和/或使用机器学习技术(例如,有监督机器学习技术)更新人工神经网络(125)。
106.响应于事故信号(155),在事故信号(155)之前生成和/或在事故信号(155)时在第一循环缓冲器(161)中缓冲的传感器数据流(151)的段被拷贝到非易失性存储器(165)中。任选地,控制器(159)可以在事故信号(155)之后立即停止第一循环缓冲器(161)缓冲传感器数据流(151)的传入段,以在内容的至少一部分被从第一循环缓冲器(161)拷贝到非易失性存储器(165)之前防止在事故信号(155)时位于第一循环缓冲器(161)中的传感器数据流(151)的段的一部分的丢失。
107.任选地,响应于训练信号(157),部分在训练信号(157)之前和部分在训练信号
(157)之后生成的传感器数据流(151)的段被缓冲在第二循环缓冲器(163)中并被拷贝到非易失性存储器(165)中。例如,控制器(159)可以继续使用第二循环缓冲器(161)来缓冲训练信号(157)之后的传感器数据流(151)的段,以完成待拷贝到非易失性存储器(165)中的段的缓冲。一旦待拷贝到非易失性存储器(165)中的传感器数据流(151)的段位于第二循环缓冲器(163)中,控制器(159)然后可以停止第二循环缓冲器(163)缓冲传感器数据流(151)的进一步传入段。
108.在一些实施方案中,不使用事故数据循环缓冲器(161)。响应于事故信号(155),控制器(159)将与将在事故数据循环缓冲器(161)中缓冲的段相对应的训练数据循环缓冲器(163)的内容的一部分拷贝到非易失性存储器(165)中的插槽中。在其它实施方案中,不使用训练循环缓冲器(163)。响应于训练信号(157),控制器(159)将与将被缓冲在训练数据循环缓冲器(163)中的段相对应的事故数据循环缓冲器(161)的内容的至少一部分拷贝到非易失性存储器(165)中的插槽(173)中,同时将训练信号(155)之后的传感器数据流(151)的段直接存储到非易失性存储器(185)的区域(167)中。从事故数据循环缓冲器(161)拷贝到相对应插槽(例如,173)中的插槽中的段和直接保存到区域(167)中的段的组合提供了与训练信号(157)相对应的训练传感器数据,如以下结合图6和7所进一步讨论。
109.在一些实施方案中,响应于事故信号(155),控制器(159)可以停止训练数据循环缓冲器(163)的操作以保存用于将数据从事故数据循环缓冲器(161)拷贝到非易失性存储器(例如,165)(例如,响应于检测到数据记录器(101)的外部电源的损失)的电力。
110.第一和第二循环缓冲器(161和163)可以是易失性存储器(例如,dram或sram);并且非易失性存储器(165)可以包含tlc/qlc nand闪速存储器。第一和第二循环缓冲器(161和163)可以在接收事故信号(155)或训练信号(157)之前缓冲传感器数据流(151)的公共段。
111.任选地,控制器(159)将非易失性存储器(165)划分为第一区域(171、173、
……
、179)和第二区域(167)。此外,控制器(159)将第一区域(171、173、
……
、179)组织到多个插槽(171、173、
……
、179)中,其中每个插槽(例如,171)具有足以存储第一循环缓冲器(161)的全部内容的存储容量。与训练信号(157)相关联和/或由其标识的传感器数据流段被拷贝到第二区域(167)中;而与事故信号(155)相关联和/或由其标识的传感器数据流段被拷贝到第一区域中的一个插槽(171、173、
……
、179)中。控制器(159)可以根据循环方案使用插槽以在插槽(171、173、
……
、179)中保持多至预定数量的与自主车辆(111)的高级驾驶员辅助系统(adas)(105)生成的最新事故信号相关联和/或由其标识的事故传感器数据流段。
112.任选地,控制器(159)还可以将非易失性存储器(165)的第二区域(167)组织到插槽中,其中每个插槽具有足以存储第二循环缓冲器(163)的全部内容的存储容量。控制器(159)可以存储(例如,在非易失性存储器或另一个存储器中)插槽中存储的数据的优先级指示符。响应于训练信号(157),控制器(159)基于第二区域(167)中的插槽中的现有数据的优先级指示符和与训练信号(157)相关联的优先级指示符来从第二区域(167)中的插槽选择一个插槽。训练传感器数据被从第二循环缓冲器(163)拷贝到第二区域(167)中的选择插槽中。
113.在一些实施例中,数据记录器(101)的非易失性存储器(165)的至少一部分(例如,167)具有某一数据记录性能水平,其足以允许控制器(159)在不使用循环缓冲器的条件下
将传入的传感器数据流存储到所述部分(例如,167)中。因此,在将数据保存到非易失性存储器(165)的请求之后的传感器数据流(151)的段可以直接拷贝到非易失性存储器(165)中,而无需经过循环缓冲器。在这种情形下,可以减少图3的数据记录器(101)的循环缓冲器(161和163),如以下所进一步讨论。
114.图6示出了根据一个实施例的另一种数据记录器。例如,图6的数据记录器(101)可以用在图1的系统和/或图2的车辆(111)中。
115.图6的数据记录器(101)可以将传感器数据流(151)直接存储到非易失性存储器(165)的区域b(167)中。
116.为了数据记录器(101)的寿命,图6的数据记录器(101)的控制器(159)被配置成使用循环缓冲器(161)来选择传感器数据流(151)的一部分用于存储在非易失性存储器(165)中;并且使用触发信号(156)来标识待存储到非易失性存储器(165)中的传感器数据流(151)的段。
117.在控制器(159)接收触发信号(156)之前,控制器(159)使用循环缓冲器(161)来缓冲传感器数据流(151)的最近段。在触发信号(156)时,循环缓冲器(161)具有在触发信号(156)之前生成的传感器数据流(151)的段。因此,在触发信号(156)到达之时或之后,传感器数据流(151)的期望部分可以从循环缓冲器(161)拷贝到非易失性存储器(165)。
118.在接收触发信号(156)之后,控制器(159)在循环缓冲器(161)中保存至少传感器数据流段的期望部分,并将传入的传感器数据流(151)的后续段直接保存到非易失性存储器的区域b(167)中。与将传感器数据流(151)的传入段记录到区域b(167)中并行(或在其之后),可以将循环缓冲器(161)中的传感器数据流段的期望部分拷贝到非易失性存储器(165)的区域a(166)中。直接记录到区域b(167)中的段和从循环缓冲器(161)拷贝到区域a(166)中的段提供了与触发信号(156)相关联和/或由其标识的传感器数据集(例如,基于相对于触发信号(156)到达的时间窗口)。
119.通常,触发信号(156)可以是事故信号(155)或训练信号(155)。在一些实施方案中,触发信号(156)包含标识触发信号(156)之前的时间段和/或触发信号(156)之后的时间段的时间窗口选择器。时间窗口选择器的时间段可以用于从循环缓冲器(161)选择期望部分以拷贝到区域a(166)中并从传入的传感器数据流(151)选择段以用于直接存储到区域b(167)中(例如,绕过循环缓冲器(161))。
120.在对应于触发信号(156)的传感器数据集被存储在非易失性存储器(165)中之后,通信装置(例如,153和/或139)可以被配置成以类似于以上结合数据记录器(101)的其它实施例所讨论的方式自动将传感器数据集从非易失性存储器(165)的区域(166和167)传输到远程服务器(119)。
121.图7示出了根据一个实施例的又一种数据记录器。例如,图7的数据记录器(101)可以用在图1的系统和/或图2的车辆(111)中。
122.类似于图6的数据记录器(101),图7的数据记录器(101)能够将传感器数据流(151)直接记录到区域b(167)中。
123.响应于事故信号(155),图7的数据记录器(101)的控制器(159)以类似于图3的数据记录器(101)操作其事故数据循环缓冲器(161)的方式操作循环缓冲器(161)。例如,由事故信号(155)标识的事故传感器数据从循环缓冲器(161)拷贝到非易失性存储器(165)的一
个插槽(171、173、
……
、179)中(例如,以循环方式),使得插槽(171、173、
……
、179)存储与最近接收的事故信号(155)相关联和/或由其标识的事故传感器数据。
124.响应训练信号(157),图7的数据记录器(101)的控制器(159)以类似于图6的数据记录器(101)操作其循环缓冲器(161)的方式操作循环缓冲器(161)。与将在训练信号(157)之后生成的训练传感器数据的部分直接保存到非易失性存储器(165)的区域b(167)中并行(或在其之后),将在训练信号(157)之前生成的训练传感器数据的部分从循环缓冲器(161)拷贝到区域a(166)中。
125.响应于训练信号(157),图7的数据记录器(101)的控制器(159)可以任选地暂停将传入的传感器数据流(151)缓冲到循环缓冲器(151)中。
126.可替代地,代替将训练信号(157)之后的传入的传感器数据流(151)直接写入区域b(167)中,控制器(159)可以被配置成缓冲到正好在写入非易失性存储器(165)时被腾出的循环缓冲器(161)的一部分中。
127.例如,控制器(159)在接收传入的传感器数据流(151)中的数据的同时从循环缓冲器(161)检索数据的最旧部分。来自传感器数据流(151)的新接收的数据可以写入到由刚刚检索的数据的最旧部分占用的存储单元中。响应于训练信号(157),刚刚从循环缓冲器(161)检索的数据的最旧部分可以写入到非易失性存储器(例如,在区域166和167中),同时来自传感器数据流(151)的新接收数据可以写入到循环缓冲器(161)中以进行缓冲。因此,传感器数据流(151)被连续缓冲到循环缓冲器(161)中,同时缓冲流(151)的一部分可以由训练信号(157)选择并拷贝到非易失性存储器(165)中。
128.图7的数据记录器(101)可以以类似于图3的数据记录器(101)的方式将存储在非易失性存储器(165)的插槽(171、173、
……
、179)中的事故传感器数据和/或存储在区域(166和167)中的训练传感器数据提供到远程服务器(119)。
129.任选地,可以在非易失性存储器(165)中组织多个插槽以用于训练数据集,其中每个插槽具有用于接受来自循环缓冲器(161)的数据的相对应区域a(166)和用于直接从传感器数据流(151)保存数据的相对应区域b(167)。
130.图8

10示出了根据一些实施例的操作数据记录器的方法。例如,图8

10的方法可以在图1的系统中的图2的车辆(111)中的图6或7的数据记录器(101)中实施。
131.图8示出了一种方法,其中数据记录器(101)的控制器(159)被配置成与将来自传入的传感器数据流(151)的数据直接存储到非易失性存储器(165)中并行地将数据从循环缓冲器(161)拷贝到非易失性存储器(165)。
132.在块271,数据记录器(101)(例如,图6或7中所示)的循环缓冲器(161)通过循环地使用缓冲器(161)的容量来缓冲传感器数据流(151)。例如,当缓冲器(161)已满时,传感器数据流(151)的最新接收的数据被存储在由先前从传感器数据流(151)获得的最旧数据占用的存储单元中。因此,缓冲器(161)的内容可以连续更新以含有预定长度(例如,30秒)的传感器数据流(151)的最近段。
133.在块273,数据记录器(101)接收触发信号(156),例如训练信号(157)或事故信号(155)。
134.在块275,数据记录器(101)的控制器(159)从循环缓冲器(161)检索传感器数据流(161)的第一段,其中第一段是在数据记录器(101)中在触发信号(156)到达之前生成的
(和/或在数据记录器(101)中接收的)。例如,传感器数据流(161)的第一段可以包含来自数码摄像头、雷达、激光雷达、超声波声纳或此类传感器的任何组合的30秒的视频记录。
135.在块277,数据记录器(101)的控制器(159)将从循环缓冲器(161)检索的传感器数据流(161)的第一段存储到数据记录器(101)的非易失性存储器(165)中。
136.与块275和277中进行的操作并行,在块276,数据记录器(101)的控制器(159)将传感器数据流(151)的第二段存储到数据记录器(101)的非易失性存储器(165)中,其中传感器数据流(161)的第二段是在数据记录器(101)中在触发信号(156)到达之后生成的(和/或在数据记录器(101)中接收的)。例如,传感器数据流(161)的第二段可以包含来自数码摄像头、雷达、激光雷达、超声波声纳或此类传感器的任何组合的两分30秒的视频记录。
137.由于传感器数据流(161)的第一段在触发信号(156)之前到达数据记录器(101),传感器数据流(161)的第一段经由循环缓冲器(161)缓冲,使得在触发信号(156)之后,传感器数据流(161)的第一段在循环缓冲器(161)中可用于拷贝到数据记录器(101)的非易失性存储器(165)中。相比之下,传感器数据流(161)的第二段在触发信号(156)之后到达数据记录器(101),传感器数据流(161)的第二段可以在其到达之时写入数据记录器(101)的非易失性存储器(165)中,而无需在任何循环缓冲器中缓冲。
138.在块279,车辆(111)和/或数据记录器(101)可以将来自易失性存储器(165)的第一和第二段作为一组训练传感器数据(或事故传感器数据)传输到远程服务器(119)。
139.图9示出了一种方法,其中数据记录器(101)的控制器(159)被配置成在将来自传入的传感器数据流(151)的数据直接存储到非易失性存储器(165)之后将数据从循环缓冲器(161)拷贝到非易失性存储器(165)。
140.在块271,数据记录器(101)的循环缓冲器(161)通过循环地使用缓冲器(161)的容量(例如,以类似于图8的块271的操作的方式)来缓冲传感器数据流(151)。
141.在块273,数据记录器(101)接收触发信号(156,例如157或155)。
142.在块281,数据记录器(101)的控制器(159)暂停将来自传感器数据流(151)的新数据缓冲到循环缓冲器(161)中。在触发信号(156)之后的传感器数据流(151)的第二段被保存到非易失性存储器(165)中之后,在触发信号(156)时位于循环缓冲器(161)中的传感器数据流(151)的第一段可以被拷贝到非易失性存储器(165),而无需经过循环缓冲器(161)。
143.在块276,数据记录器(101)的控制器(159)将在触发信号(156)之后生成和/或接收的传感器数据流(101)的第二段存储到数据记录器(101)的非易失性存储器(165)中(例如,以类似于图8的块276的操作的方式)。
144.在将传感器数据流(101)的第二段写入非易失性存储器中之后,在块283,数据记录器(101)的控制器(159)将在触发信号之前生成和/或接收的传感器数据流(151)的第一段拷贝到数据记录器(101)的非易失性存储器(165)中。
145.在将第一段从循环缓冲器(161)拷贝到非易失性存储器(165)中之后,循环缓冲器(161)可以擦除其内容和/或恢复传入的传感器数据流(151)的缓冲。
146.在块279,车辆(111)和/或数据记录器(101)可以将第一和第二段从易失性存储器(165)传输到远程服务器(119)(例如,以类似于图8的操作279的方式)。
147.在一些实施例中,循环缓冲器(161)中的数据可以根据先进先出(fifo)方案检索,使得可以将传入的传感器数据流(151)连续地缓冲在循环缓冲器(161)中,并且可以任选地
检索循环缓冲器(161)中的数据以保存到非易失性存储器(165)中。循环缓冲器(161)有效地将传感器数据流(101)延迟一段时间(例如,30秒),使得响应于触发信号(156),可以选择从循环缓冲器(161)检索的延迟段以存储到非易失性存储器(165)中,其中延迟段可以包含在触发信号(156)之前由传感器(103)生成的第一段和在触发信号(156)之后由传感器(103)生成的第二段,如图10的方法。
148.在块301,数据记录器(101)的控制器(159)接收传感器数据流(151)的新部分。
149.与接收新部分并行,在块305,控制器(159)还从循环缓冲器(161)检索当前缓冲在循环缓冲器(161)中的传感器数据流(151)的段的最旧部分。
150.在块303,控制器(159)通过覆写循环缓冲器(161)中的最旧部分来将新部分缓冲到循环缓冲器(161)中。由于已从循环缓冲器(161)检索最旧部分,因此缓冲新部分不会导致最旧部分的丢失。
151.如果在块307确定应保存所检索的部分(例如,在数据记录器(101)中已接收触发信号之后),则在块309,控制器(159)将所检索的部分存储到数据记录器(101)的非易失性存储器(165)中(例如,与在块303将新部分写入到循环缓冲器(161)并行)。
152.块303的缓冲和块309的存储可以与块301的下一个新部分的接收和块305的下一个最旧部分的检索并行进行。因此,传感器数据流(151)的新的传入部分可以连续缓冲到循环缓冲器中,同时传感器数据流(151)的较旧延迟部分可以从循环缓冲器检索以存储到非易失性存储器(165)中。
153.本公开包含进行上述方法的方法和设备,包含进行这些方法的数据处理系统,以及含有指令的计算机可读媒体,当在数据处理系统上执行时,所述指令会使系统进行这些方法。
154.服务器(119)、计算机系统(131)和/或数据记录器(101)可以各自被实施为一或多个数据处理系统。
155.典型的数据处理系统可以包含互连(例如,总线和系统核心逻辑),其将微处理器和存储器互连。微处理器通常耦合到缓存存储器。
156.互连将微处理器和存储器互连在一起,并且还经由i/o控制器将它们互连到输入/输出(i/o)装置。i/o装置可以包含显示装置和/或外围装置,例如鼠标、键盘、调制解调器、网络接口、打印机、扫描仪、摄像机和本领域已知的其它装置。在一个实施例中,当数据处理系统是服务器系统时,一些i/o装置(例如,打印机、扫描仪、鼠标和/或键盘)是任选的。
157.互连可以包含通过各种桥接器、控制器和/或适配器相互连接的一或多个总线。在一个实施例中,i/o控制器包含用于控制usb外围设备的usb(通用串行总线)适配器和/或用于控制ieee

1394外围设备的ieee

1394总线适配器。
158.存储器可以包含以下中的一或多种:rom(只读存储器)、易失性ram(随机存取存储器)和非易失性存储器(例如,硬盘驱动器、闪速存储器等)。
159.易失性ram通常被实施为动态ram(dram),它需要持续供电才能刷新或维持存储器中的数据。非易失性存储器通常是磁性硬盘驱动器、磁光驱动器、光盘驱动器(例如,dvd ram)或其它类型的存储系统(即使在从系统去除电力之后,其也能维持数据)。非易失性存储器也可以是随机存取存储器。
160.非易失性存储器可以是直接耦合到数据处理系统中的其余组件的本地装置。也可
以使用远离系统的非易失性存储器,例如通过网络接口(例如,调制解调器或以太网接口)耦合到数据处理系统的网络存储装置。
161.在本公开中,为了简化描述,一些功能和操作被描述为由软件代码进行或由其引起。然而,此类表达也用于指定功能是由处理器(例如,微处理器)执行代码/指令而产生的。
162.可替代地或组合地,可以使用专用电路系统(有或没有软件指令)来实施此处描述的功能和操作,例如使用专用集成电路(asic)或现场可编程门阵列(fpga)。可以使用硬连线电路系统(没有软件指令)或结合软件指令来实施实施例。因此,所述技术既不限于硬件电路系统和软件的任何特定组合,也不限于由数据处理系统执行的指令的任何特定来源。
163.尽管一个实施例可以在功能齐全的计算机和计算机系统中实施,但各个实施例能够以各种形式作为计算产品进行分售,并且能够被应用而不管用于实际上实现分售的机器或计算机可读媒体的特定类型如何。
164.所公开的至少一些方面可以至少部分地体现在软件中。也就是说,所述技术可以在计算机系统或其它数据处理系统中执行,以响应于其处理器(例如,微处理器)执行含在存储器(例如,rom、易失性ram、非易失性存储器、缓存或远程存储装置)中的指令序列。
165.为实施实施例而执行的例程可以被实施为操作系统的一部分或特定应用、组件、程序、对象、模块或被称为“计算机程序”的指令序列。计算机程序通常包含一或多个指令,所述指令在不同时间设置在计算机中的各种存储器和存储装置中,并且当被计算机中的一或多个处理器读取和执行时,所述指令使计算机进行执行涉及各个方面的元素所必需的操作。
166.机器可读媒体可以用于存储软件和数据,当由数据处理系统执行时,所述软件和数据使系统进行各种方法。可执行软件和数据可以存储在各种地方,包含例如rom、易失性ram、非易失性存储器和/或缓存。本软件和/或数据的部分可能存储在这些存储装置中的任何一个中。此外,可以从集中式服务器或对等网络获得数据和指令。数据和指令的不同部分可以在不同时间并且在不同的通信会话或同一通信会话中从不同的集中式服务器和/或对等网络获得。可以在执行应用之前完整地获得数据和指令。可替代地,当需要执行时,可以动态及时地获得数据和指令的部分。因此,不要求数据和指令在特定时刻完整地位于机器可读媒体上。
167.计算机可读媒体的实例包含但不限于非暂时性、可记录和不可记录类型的媒体,例如易失性和非易失性存储装置、只读存储器(rom)、随机存取存储器(ram)、闪速存储器装置、软盘和其它可移动磁盘、磁盘存储媒体、光存储媒体(例如,光盘只读存储器(cd rom)、数字多功能磁盘(dvd)等)等。计算机可读媒体可以存储指令。
168.指令还可以体现在数字和模拟通信链路中,用于电、光、声或其它形式的传播信号,例如载波、红外信号、数字信号等。然而,传播信号(例如,载波、红外信号、数字信号等)不是有形的机器可读媒体并且未被配置成存储指令。
169.通常,机器可读媒体包含以机器(例如,计算机、网络装置、个人数字助理、制造工具、具有一组一或多个处理器的任何装置等)可存取的形式提供(即,存储和/或传输)信息的任何机构。
170.在各个实施例中,硬连线电路系统可以与软件指令结合使用以实施所述技术。因此,所述技术既不限于硬件电路系统和软件的任何特定组合,也不限于由数据处理系统执
行的指令的任何特定来源。
171.以上描述和附图是说明性的,并且不应被解释为是限制性的。描述了许多具体细节以提供透彻的理解。然而,在某些情况下,未描述熟知或常规的细节,以免混淆描述。本公开中对一个实施例的引用不一定是指同一实施例;并且,此类引用是指至少一个。
172.在前述说明书中,已经参考本公开的具体示范性实施例描述了本公开。很明显,在不脱离以下权利要求中阐述的更广泛的精神和范围的情况下,可以对其进行各种修改。因此,说明书和附图被认为是说明性的而不是限制性的。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1