CN105590642B - 用于数据存储的机械减振的装置和方法 - Google Patents
用于数据存储的机械减振的装置和方法 Download PDFInfo
- Publication number
- CN105590642B CN105590642B CN201510740267.9A CN201510740267A CN105590642B CN 105590642 B CN105590642 B CN 105590642B CN 201510740267 A CN201510740267 A CN 201510740267A CN 105590642 B CN105590642 B CN 105590642B
- Authority
- CN
- China
- Prior art keywords
- stored
- vehicle data
- disk
- data
- nvsm
- 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.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0617—Improving the reliability of storage systems in relation to availability
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
- G07C5/085—Registering performance data using electronic data carriers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/17—Embedded application
- G06F2212/173—Vehicle or other transportation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/205—Hybrid memory, e.g. using both volatile and non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/217—Hybrid disk, e.g. using both magnetic and solid state storage devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/22—Employing cache memory using specific memory technology
- G06F2212/222—Non-volatile memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/28—Using a specific disk cache architecture
- G06F2212/281—Single cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/008—Registering or indicating the working of vehicles communicating information to a remotely located station
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C5/00—Registering or indicating the working of vehicles
- G07C5/08—Registering or indicating performance data other than driving, working, idle, or waiting time, with or without registering driving, working, idle or waiting time
- G07C5/0841—Registering performance data
- G07C5/085—Registering performance data using electronic data carriers
- G07C5/0866—Registering performance data using electronic data carriers the electronic data carrier being a digital video recorder in combination with video camera
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Traffic Control Systems (AREA)
Abstract
本申请涉及用于数据存储的机械减振。一种适于捕获车辆数据或监视数据的装置包括磁盘和非易失性固态存储器(NVSM)。该车辆数据或该监视数据被接收在该装置的缓冲器中用于存储在该磁盘上,并且接收指示机械振动水平的输入。确定该输入指示该机械振动水平是否超过了指示撞击的第一阈值。如果该输入指示该机械振动水平超过该第一阈值,来自该缓冲器的该车辆数据或该监视数据被存储在该NVSM中并且确定将数据存储在该磁盘上的状态。
Description
相关申请的交叉引用
本申请要求由Alain Chahwan等人于2014年11月6日提交的标题为“在汽车监视应用中的事故灾难的固态混合硬盘(SSHD)处理(SOLID-STATE HYBRID DRIVE(SSHD)HANDLINGOF CATASTROPHIC ACCIDENTS IN AUTOMOTIVE SURVEILLANCE APPLICATIONS)”美国临时申请号62/076,081(律师卷号T7882.P)的权益,在此以引用的方式将其全部内容结合在此。
背景技术
经常使用数据存储装置(DSD)来将数据记录到存储介质上或从存储介质复制数据。一种类型的存储介质包括旋转磁盘,其中DSD的磁头能够在磁盘表面上的磁道中读写数据,例如在硬盘驱动器(HDD)中。另一类型的存储介质能够包括固态存储器,其中单元被充电以存储数据。最近,已经引入能够包括用于非易失性存储数据的旋转磁盘和固态存储器两者的固态混合硬盘(SSHD)。
对包括磁盘的DSD的大的撞击能够造成在该磁盘上读写数据的问题,甚至可能致使该磁盘无法用于存取来自该磁盘的数据。这能够导致问题,特别是当该磁盘用于存储监视数据或车辆数据时,其中在大的撞击的时间前后所记录的数据能够是重要的。例如,这样的数据可以被用于确定发生事故的原因或用在犯罪调查中。
附图说明
当结合附图时,根据以下阐述的具体实施方式,本公开的多个实施例的特征和优点将变得更明显。提供的附图和相关说明用来图示说明本公开的多个实施例但并不限制权利要求书的范围。
图1是根据实施例描绘了具有用于捕获车辆数据的装置的车辆的框图。
图2是根据实施例提供了关于图1的装置的更多细节的图。
图3是根据实施例用于图1和图2的装置的控制器的电路图。
图4是根据实施例考虑机械振动水平的数据存储过程的流程图。
图5是根据实施例考虑机械振动水平的另一个数据存储过程的流程图。
图6是根据实施例描绘了具有多个部分的缓冲器的图。
图7是根据实施例描绘了非易失性固态存储器(NVSM)的两个保留部分和循环缓冲器的图。
图8是根据实施例描绘了NVSM的多于两个的保留部分和循环缓冲器的图。
具体实施方式
在下面的详细说明中,为了提供对本公开的更充分理解,阐述了大量具体细节。然而,对于本领域的普通技术人员之一将明显的是,可以在没有这些具体细节中的一些的情况下实践所公开的不同的实施例。在其他情况下,没有详细地示出公知的结构和技术,以避免不必要地模糊这些不同的实施例。
系统综述
图1是根据实施例描绘了具有用于捕获车辆数据的装置107的车辆100的框图。尽管图1将车辆100描绘为汽车,但是装置107能够被用于不同的车辆(例如载重车、飞机、直升机、船、公交车、火车或摩托车)中。在其他的实施例中,装置107能够是位于例如企业、家庭、库房、机构或公共场所中的监视系统。
在图1的示例中,装置107包括摄像机104、主监视单元103和数据存储装置(DSD)106。在以下描述的不同实施例中,DSD 106能够被配置为保存可能对事故调查关键的监视数据或车辆数据。
主监视单元103与摄像机104和DSD 106通信。另外,主监视单元103还与电子控制单元(ECU)101通信,该电子控制单元进而与撞击传感器102通信。ECU 101提供车辆100的电子控制并且能够将车辆数据发送至主监视单元103用于存储在DSD 106中。由ECU 101提供的车辆数据的示例能够包括例如关于由传感器102检测的撞击的信息、车辆100的速度或加速度、座椅安全带或气囊指示器、或车辆100的制动或转向历史。车辆数据还能够来自于摄像机104,该摄像机可以将视频或其他图像数据提供给主监视单元103作为车辆数据存储在DSD 106中。
图2是根据实施例提供关于装置107的更多细节的图。在图2的实施例中,DSD 106包括旋转磁盘150形式的非易失性存储器(NVM)和非易失性固态存储器(NVSM)128)。就此而言,DSD 106由于包括固态介质和磁盘介质两者而能够被认为是固态混合硬盘(SSHD)。在其他实施例中,磁盘150或NVSM128各自都分别可以由多个硬盘驱动器(HDD)或多个固态驱动器(SSD)来替换,使得DSD 106包括HDD池(pool)和/或SSD池。其他实施例还可以包括不同于图2中所示的那些部件的部件。
DSD 106包括控制器120,该控制器包括例如用于执行指令的一个或多个处理器的电路,并能够包括微控制器、DSP、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、硬布线逻辑、模拟控制器和/或它们的组合。在一个实施方案中,控制器120能够包括片上系统(SoC)。
主机接口126被配置为将DSD 106与主监视单元103接合并且根据标准(例如串行高级技术附件(SATA)、PCI高速(PCIe)、小型计算机系统接口(SCSI)或串行连接SCSI(SAS))接合。如将由本领域普通技术人员理解的是,主机接口126能够被包括为控制器120的一部分。尽管图1描绘了主监视单元103和DSD 106是同位置的,但是在其他实施例中,这两个单元在物理上不需要是共同定位的。在这种实施例中,DSD 106可远离主监视单元103而定位并且经由网络接口连接至主监视单元103。
在图2的示例中,磁盘150由转轴马达(未示出)旋转并且磁头136被定位以在磁盘150的表面上读写数据。更详细地,磁头136被连接至致动器130的远端,该致动器由音圈马达(VCM)132旋转以将磁头136定位在磁盘150之上,从而在磁盘150上的磁道152中读或写数据。
如在图2中所示出的,磁盘150包括用于存储数据的多条径向间隔开的同心磁道152。在一些实施方案中,磁道152可以使用叠瓦式磁记录(SMR)来写入使得磁道152重叠。在另一些实施方案中,磁道152可以不重叠或磁盘150可以包括重叠磁道和非重叠磁道152两者。磁盘150还包括沿磁道152的多个伺服楔形物(未示出),这些伺服楔形物被用于控制磁头136关于磁盘150的位置。控制器120使用这些伺服楔形物,从而用VCM控制信号34来控制磁头136的位置并且用SM控制信号38来控制磁盘150的旋转。
DSD 106还包括用于将数据存储在NVM中的NVSM 128。尽管在本文中的说明一般指固态存储器,但应理解的是,固态存储器可以包括各种类型的存储装置中的一个或多个,例如闪存集成电路、硫系化合物RAM(C-RAM)、相变存储器(PC-RAM或PRAM)、可编程金属化单元RAM(PMC-RAM或PMCm)、双向通用存储器(OUM)、电阻式RAM(RRAM)、与非存储器(例如单极单元(SLC)存储器、多级单元(MLC)存储器或它们的任意组合)、或非存储器、EEPROM、铁电存储器(FeRAM)、磁阻RAM(MRAM)、其他分立NVM(非易失性存储器)芯片或它们的任意组合。
在图2中,DSD 106还包括存储器140,该存储器能够包括例如动态随机存取存储器(DRAM)。存储器140能够被DSD 106用于暂时性地存储数据。在存储器140中存储的数据能够包括从NVM(例如磁盘150或NVSM 128)读取的数据或待存储在NVM中的数据。如在图2中所示出的,存储器140还存储从DSD固件28加载的多个指令,这些指令由控制器120执行以控制DSD 106的运行。存储器140还可以存储在执行DSD固件28中使用的数据。如在下文中更加详细描述的,存储器140包括在将车辆数据写在磁盘150上之前用于存储车辆数据的缓冲器30。
DSD 106还包括传感器122,该传感器将指示装置107的机械振动水平的输入20提供给控制器120。传感器122能够包括例如加速度计(例如压电加速度换能器)或其他类型的振动传感器。在其他实施例中,传感器122可以在DSD106外部。在一个这样的实施例中,主监视单元103可以包括用于检测机械振动水平的传感器并且可以将指示机械振动水平或高度振动事件的输入提供给DSD 106。在其他实施例中,装置107可以从ECU 101接收指示由传感器102检测到的机械振动水平、振动事件或撞击的输入。
在图2的示例中,主监视单元103被示出为与ECU 101和摄像机104接合,这允许主监视单元103经由主机接口126收集能够存储在DSD 106中的数据。另外,主监视单元103经由网络105与远程存储装置109通信。这能够允许主监视单元103将存储在DSD 106中的车辆数据发送给远程存储装置109。网络105能够包括例如局域网或广域网、或者互联网。在一个实施例中,当装置107不处于车辆中时,主监视单元103能够从DSD 106检索监视数据以发送至远程存储装置109。
数据保存
在正常运行期间,主机接口126接收来自主监视单元103的主机读写命令,用于在DSD 106的NVM中读写车辆数据或监视数据。对于待写在磁盘150上的数据,控制器120将车辆数据或监视数据存储在缓冲器30中,并且控制器120的读/写通道(未示出)可以将缓存的数据编码为写信号32,该写信号被提供给磁头136用于以磁性方式将数据写在磁盘150上。控制器120还能够将VCM控制信号34提供给VCM 132以将磁头136定位在用于写数据的特定磁道152之上。在一个实施例中,由于它们的相对成本,磁盘150的存储容量可以比NVSM 128大很多,并且因此适于存储可能持续产生的大容量的监视数据或车辆数据。因此,例如视频、音频数据等的监视数据或车辆数据可以被持续地写入磁盘150。
响应于对存储在磁盘150上的数据的读取命令,控制器120将磁头136定位在特定磁道152之上。控制器120控制磁头136以磁性方式读取存储在该磁道中的数据并且将读取的数据作为读取信号32来发送。然后控制器120的读/写通道能够解码并且将该数据缓存在存储器140中,用于经由主机接口126传输至主监视单元103。
对于待存储在NVSM 128中的数据,控制器120从主机接口126接收数据并且可以将该数据缓存在存储器140中。在一个实施方案中,然后该数据被编码为用于充电NVSM 128的单元(未示出)的电荷值以存储该数据。
响应于对于存储在NVSM 128中的数据的读取命令,在一个实施方案中,控制器120读取用于NVSM 128中的单元的当前值并且将这些当前值解码为能够经由主机接口126传输至主监视单元103的数据。
虽然磁盘150可以容纳可能持续生成的大容量的监视数据或车辆数据,但是在对装置107的高度机械振动水平事件(例如事故的情况)中,由于对于磁盘150运行所需的运动部件,磁盘150总体上比NVSM 128更易于变得不可存取的。例如,对装置107的撞击可能造成磁头136接触磁盘150,使得磁头136不再正确地工作或者使得磁盘150的表面不再能够存储数据。在另一个示例中,对装置107的撞击可能造成松散微粒而积累在磁盘150的表面上,使得它不再能够可靠地存取数据。
因此在下文所讨论的过程尝试在高度机械振动水平的事件中保存将以其他方式被存储在磁盘150上的车辆数据或监视数据。在一个实施方案中,如果来自传感器122的输入20指示高度机械振动水平,存储在缓冲器30中用于存储在磁盘150上的车辆数据或监视数据能够替代地被存储在NVSM 128中。以此方式,本应写入磁盘150的数据被转移到NVSM128,在NVSM 128中这些数据随后具有更好可存取的机会。鉴于车辆数据或监视数据在时间上接近高度机械振动水平的事件,存储在缓冲器30中的这种车辆数据或监视数据可以包括关于该高度机械振动水平的起因的重要信息。就这一点而言,存储在缓冲器30中的数据能够包括在引起该高度机械振动水平的事件之前所捕获的数据。
例如,在该振动是由事故引起的情况中,在该撞击的时间点或前后的车辆数据或监视数据在确定该事故的起因时可能是关键性的。如上文所讨论的,这种关键数据被转移至具有更强的振动容限的NVSM 128。这种基于振动检测的转移方案确保磁盘150能够被充分用于保存大容量的持续生成的监视数据或车辆数据,而可能容量更小的NVSM 128被特别地用于提供保护潜在对事故调查起关键作用的数据的增强的位置,尤其在磁盘150被事故损坏的情况下。除了基于振动来转移数据之外,当来自传感器122的输入20指示高度机械振动水平时,能够确定用于将车辆数据或监视数据存储在磁盘150上的状态。在一个实施例中,该状态的确定确保检查磁盘以查看其已经被振动损坏还是以某种方式使其不可运行。这为DSD 106提供了确定其是否能够继续将数据保存到磁盘150中的一种方式。
在另一个实施例中,基于由装置107接收的输入,NVSM 128可以被用于保存其他重要数据。在一个示例中,ECU 101可以基于由传感器102检测的撞击将输入提供给主监视单元103。主监视单元103可以进而命令DSD 106在NVSM 128中存储缓冲器30中的车辆数据的复本作为备份,因为这种数据可能是重要的。这种备份在由传感器102检测到的撞击没有足够大到触发车辆数据从缓冲器30转移到NVSM 128的情况下能够证明是有用的。一个这样的示例可能包括车辆100碰撞了行人。
图3是根据实施例描绘了控制器120的电路的电路图。控制器120的其他实施方案可以使用不同的电路安排。如在图3的示例性实施方案中所示出的,输入20由控制器120在端子SHK1n和SHK1p处接收并且在减去处理过的反馈信号之前按照增益K0放大。相减后的信号在通过一系列低通滤波器LPF1、LPF2和LPF3之前按照增益K1放大以得到第一振动信号22。
第一振动信号22由高度振动模数转换器(ADC)多路复用器(MUX)40采样,使得控制器120能够确定输入20指示机械振动水平是否超过第一阈值。如果超过的话,控制器120确定已经存在装置107的高度振动事件或撞击。
在图3的示例中,第一振动信号22被进一步处理为第二振动信号24,该第二振动信号被控制器120用于确定输入20指示该机械振动水平是否对应于较低的机械振动水平,例如装置107的振动或较小的振动。在更多细节中,第一振动信号22在由振动信号放大器133利用增益K2放大之前减去另一个经处理的反馈信号。然后第二控制信号24被振动ADC MUX43采样,使得控制器120能够确定输入20指示机械振动水平是否超过了对应于比该第一阈值少的机械振动的第二阈值。还能够使用一个或多个电压窗口比较器通过将第二振动信号24与之前的第二振动信号24的情况来比较以在一段时间内比较振动水平。
通过在第一振动信号22由振动信号放大器133放大之前来使用该第一振动信号,通常可能更好地检测高度振动事件。具体地,常规DSD可以使用高增益(例如K2)以例如利用第二振动信号24更好地检测较小的振动水平。然而,第二振动信号24可以在相对低的水平(例如在相对低的加速度下)下饱和,该情况能够妨碍控制器120区分高度振动事件(例如车辆100的碰撞)与轻微振动事件(例如车辆100驶过凹坑)。
示例数据存储过程
图4是根据实施例的能够通过控制器120执行DSD固件28来执行数据存储过程的流程图。在框402中,车辆数据被接收在缓冲器30中用于存储在磁盘150上。这些车辆数据可以来自主监视单元103并且包括例如来自摄像机104的图像或视频数据或来自ECU 101的车辆数据(例如关于由传感器102检测到的撞击、车辆100的速度或加速度、座椅安全带或气囊指示器、或车辆100的制动或转向历史的信息)的数据。
在框404中,控制器120接收指示机械振动水平的输入20。控制器120的电路,例如图3的示例电路,然后能够将输入20处理为第一振动信号22。在一些实施方案中,输入20可以来自DSD 106的传感器122。在其他实施方案中,输入20能够来自DSD 106之外或装置107之外的传感器。
在框406中,控制器120确定输入20指示机械振动水平是否超过指示装置107的撞击的第一阈值。如果没有超过,该过程返回框402以继续将车辆数据接收到缓冲器30中用于存储在磁盘150上。另一方面,如果输入20指示机械振动水平超过该第一阈值,在框406中控制器120将来自缓冲器30的车辆数据存储在NVSM 128中。如上所述,NVSM 128与磁盘150相比总体上更加能够承受高度机械振动水平并且继续运行。因此在高度振动事件之后将车辆数据存储在NVSM中作为有助于确保数据被安全存储并且将可用于稍后检索的一种保护措施。
就其本身来说,缓冲器30在将车辆数据存储在磁盘150上之前允许一段延时使得车辆数据能够在高度振动事件的情况中被转移至NVSM 128。图6提供了在存储器140中的缓冲器30的示例图。如在图6中所示出的,缓冲器30包括从第一部分40一直到第M部分42的多个部分。在一个实施方案中,缓冲器30包括第一部分40和第二部分,使得车辆数据能够被接收到第一部分40中并且将与之前被接收在该第二部分中的车辆数据存储在磁盘150上。缓冲器30的附加部分能够被用于进一步地延迟车辆数据在磁盘150上的存储。缓冲器30和缓冲器30的这些部分能够被设计尺寸以在记录高度机械振动水平的之前、期间或之后的数据时提供特定量的延时。
返回到图4的过程,如果在框406中确定了输入20指示机械振动水平超过该第一阈值,则在框408中控制器120将来自缓冲器30的车辆数据存储在NVSM 128中。在框410中,控制器120确定将车辆数据存储在磁盘150上的状态。这能够包括例如在磁盘150上进行诊断测试,例如试图在磁盘150上进行测试写入和测试读取。
在其他实施例中,图4的过程可以被应用于捕获监视数据而不是车辆数据的装置。如上所述,这种监视系统能够位于例如企业、家庭、库房、机构或公共场所。
图5是根据实施例的能够通过控制器120执行DSD固件28执行另一个数据存储过程的流程图。尽管图5的过程是就车辆数据来描述的,但是其他实施例可以应用至与车辆无关的监视数据。
在图5的框502中,车辆数据被接收在缓冲器30中用于存储在磁盘150上。在框504中,控制器120确定是否检测到机械振动。这能够通过接收来自传感器122或来自主监视单元103或ECU 101的、指示机械振动的输入来实现。如果在框504中没有检测到振动事件,则该过程返回框502以继续将车辆数据接收在缓冲器30中用于存储在磁盘150上。
如果在框504中检测到振动,则在框506中第一振动信号22被控制器120采样。在框508中,控制器120确定第一振动信号22是否超过指示例如对车辆100、装置107和/或DSD106的撞击的第一阈值。如果在框508中第一振动信号22没有超过该第一阈值,则该过程返回框502以将车辆数据接收在缓冲器30中用于继续存储在磁盘150上。
另一方面,如果在框508中,第一振动信号22超过该第一阈值,则在框510中控制器120将来自缓冲器30的车辆数据存储在NVSM 128中被保留用于存储车辆数据的第一部分中。由于在确定该撞击的起因时,导致撞击和紧跟着该撞击的车辆数据经常能够是重要的,所以NVSM 128能够包括被保留用于存储这种车辆数据的多个部分。
图7是根据实施例的具有两个保留部分和循环缓冲器的NVSM 128的示例图。如在图7中所示出的,NVSM 128包括第一部分44、第二部分46和循环缓冲器48。第一部分44能够在确定输入20指示机械振动水平超过该第一阈值时存储预定量的来自缓冲器30的车辆数据。因此第一部分44可以被设计大小以对应于缓冲器30的一部分,例如缓冲器部分40。
NVSM 128的第二部分46能够存储在确定输入20指示机械振动水平超过该第一阈值之后接收的预定量的车辆数据。在撞击之后接收的车辆数据在记录该第一撞击之后的后续撞击中也可能是重要的。例如,许多事故包含一系列撞击,并且因此在每次撞击的时间前后的数据都可以具有其关键意义。第二部分46可以被设计大小从而在第一撞击之后的一定量时间内以特定数据数率存储从主监视单元103接收车辆数据的该车辆数据。
NVSM 128的循环缓冲器48能够被控制器120用于在第一部分44和第二部分46被写满之后来记录数据。由于NVSM 128的容量总体上有限,因此循环缓冲器48允许在一次或多次撞击之后继续来记录车辆数据。一旦循环缓冲器48变满并且因此NVSM 128变满,则新的车辆数据能够盖写之前存储在循环缓冲器48中所记录的车辆数据。以此方式,通常有可能及时将接近高度机械振动水平的车辆数据保存在第一部分44和第二部分46中,并且仍然存储在该高度机械振动水平之后接收的新的车辆数据。
NVSM 128的其他实施方案可以被不同地安排。就这一点而言,图8提供了一个其中NVSM 128包括多于两个保留部分和循环缓冲器的示例。如在图8中所示出的,NVSM 128包括第一部分44、第二部分46和一直到第N部分50的其他保留部分。如果输入20指示在第一撞击之后的后续撞击,则NVSM 128的附加部分能够被保留以存储来自缓冲器30的车辆数据。
在一个实施方案中,在确定输入20超过该第一阈值之后,来自缓冲器30的车辆数据被存储在第一部分44中。如在图7的示例中,在确定输入20超过该第一阈值之后,预定量的新的车辆数据能够被存储在第二部分46中。如在图7中,在第一部分44和第二部分46被写满之后所接收到的新的车辆数据能够被存储在循环缓冲器48中。然而,与图7的示例不同,如果后续输入20指示新的机械振动水平超过该第一阈值,则来自缓冲器30的车辆数据被存储在附加保留部分(例如第N部分50)中。这通常能够允许在稍后的撞击的时间前后所捕获的车辆数据被保存在NVSM 128中,如上文所讨论的,这可以有助于保存在包含多次撞击的事故中的数据。在NVSM 128中的多个附加保留部还能够允许保存在该第一撞击之后的、预定量的时间之后的附加撞击的车辆数据。
在另一个实施方案中,第二部分46可以不被用于存储在第一撞击之后的预定量的车辆数据。替代地,第二部分46可以被保留用于存储在第二撞击的时间前后的车辆数据,使得NVSM 128的保留部分仅存储在撞击的时间前后的车辆数据并且将所有不与撞击相关的车辆数据存储在循环缓冲器48中。
NVSM 128的其他实施方案也是可能的。例如,NVSM 128可以仅包括单一保留部分以用于保存在第一撞击的时间前后的数据,并且NVSM 128的其余部分用作循环缓冲器以用于记录在该第一撞击之后的车辆数据。
返回图5的数据存储过程,在框512中,控制器120接收新的车辆数据并且将其存储在NVSM 128的第二部分46中。在第二部分46被写满之后,新的车辆数据被存储在循环缓冲器48中。
在框514中,控制器120确定将车辆数据存储在磁盘150上的状态。这可以通过在磁盘150上执行诊断测试来实现,例如尝试将测试数据写入磁盘150上并且然后尝试读取这些测试数据。在这种实施方案中,如果测试数据被成功地写入和读取,则在框514中控制器120确定车辆数据能够被存储在磁盘150上。
如果在框514中的状态指示磁盘150能够存储车辆数据,在框516中控制器120将存储在NVSM 128的第一部分44和第二部分46中的车辆数据复制给磁盘150。从第一部分44和第二部分46复制的车辆数据可以保持在NVSM 128中作为关于高度振动水平事件的车辆数据的备份副本。在一些实施例中,该数据可以由主监视单元103检索并且经由网络105发送至远程存储装置109。
在框516中,循环缓冲器48被清除刷新(flush)到磁盘150。就这一点而言,存储在循环缓冲器48中的数据被迁移到磁盘150并且存储在循环缓冲器48中的数据然后被清除或标记为无效。然后图5的过程返回框502以继续将车辆数据接收到缓冲器30中用于存储在磁盘150上。
另一方面,如果在框514中确定该状态指示磁盘150不能存储车辆数据,则在框518中控制器120停止磁盘150的运行。这能够包括将磁头136从磁盘150移走并且使磁盘150旋转减慢从而停止其旋转。
在框520中,控制器120能够确定将车辆数据存储在磁盘150上的附加状态。能够执行这种检查以了解防止将数据存储在磁盘150上的暂时性条件是否已被改善使得数据能够再次被存储在磁盘150上。在框520中,控制器150可以在磁盘150上执行诊断测试,该诊断测试能够包括尝试将磁盘150旋转加速直至运行速度并且尝试将测试数据写入和读取在磁盘150上。如果附加状态指示磁盘150能够存储车辆数据,则该过程行进至框516以复制存储在NVSM 128的第一部分44和第二部分46中的车辆数据并且将存储在循环缓冲器48中的车辆数据清除刷新到磁盘150。
如果在框520中该附加状态指示磁盘150不能存储车辆数据,则该过程行进至框522以继续将新的车辆数据存储在循环缓冲器48中并且图5的过程结束。在其他实施例中,控制器120可以检查磁盘150的状态用于另外多于一次地存储数据。例如,在框514中控制器120可以在磁盘150不能存储数据的初始确定之后的预定量的时间期间定期地检查磁盘150的状态。
如以上所讨论的,通过在确定存在高度机械振动水平时,将来自缓冲器30的数据存储在NVSM 128中,这通常有可能保存在尝试将数据写入磁盘150上时以其他方式已经丢失的数据。
其他实施例
本领域普通技术人员将理解,结合本文中所公开的示例所描述的各种说明性逻辑块、模块及过程可实施为电子硬件、计算机软件或两者的组合。此外,前述过程能够体现为计算机可读介质,其使处理器或计算机进行或执行某些功能。
为了清楚地说明硬件和软件的这种可交换性,上文通常就它们的功能对各种说明性的部件、框和模块进行了描述。该功能是被实现为硬件还是软件取决于特定的应用和施加于整个系统上的设计约束。本领域普通技术人员可以对每个特定的应用以不同方法来实现所描述的功能,但是这种实现决策不应解释为超出本公开的范围。
结合这里所公开的示例所描述的各种说明性的逻辑块、单元、模块和控制器可以利用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其他可编程逻辑器件、分立门或晶体管逻辑、分立硬件部件、或者设计为实现这里所描述的功能的任何组合来实现或者执行。通用处理器可以是微处理器,但是在替代方案中,处理器可以是任何常规处理器、控制器、微控制器或状态机。处理器也可以实现为计算装置的组合,例如,DSP与微处理器的组合、多个微处理器、一个或多个微处理器结合DSP核或者任何其他此类配置。
结合本文中公开的示例所描述的方法或过程的行为可直接在硬件中、在由处理器执行的软件模块中、或在这两者的组合中体现。方法或算法的步骤还可以与在示例中所提供的那些不同的替代顺序来执行。软件模块可以存在于RAM存储器、闪速存储器、ROM存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移除介质、光学介质或者本领域已知的任何其他形式的存储介质中。示例性存储介质耦合到处理器,使得该处理器能够从/向该存储介质读写信息。在替代方案中,存储介质可以与处理器集成。处理器和存储介质可以驻留在专用集成电路(ASIC)中。
提供所公开的示例实施例的前述描述以使本领域的任何普通技术人员能够制作或使用本公开中的实施例。对这些实施例的各种修改对本领域的普通技术人员而言将是显而易见的,并且本文所公开的原理可应用于其它示例,而不偏离本公开的精神或范围。所描述的实施例在所有的方面仅被认为是说明性的而非限制性的,并且因此本公开的范围由下述权利要求书而不是由前述说明书来指示。落入权利要求书的意义和等效范围内的所有变化都被包涵在权利要求书的范围内。
Claims (30)
1.一种适于捕获与处于运动中的车辆相关的车辆数据的装置,该装置包括:
用于存储车辆数据的磁盘;
用于存储车辆数据的非易失性固态存储器即NVSM;
包含缓冲器的存储器,该存储器用于在将车辆数据写在该磁盘上之前存储该车辆数据;以及
控制器,该控制器被配置为:
将车辆数据接收到该缓冲器中用于存储在该磁盘上;
接收指示机械振动水平的输入;
确定该输入指示该机械振动水平是否超过指示撞击的第一阈值;并且
如果该输入指示该机械振动水平超过该第一阈值:
将来自该缓冲器的车辆数据存储在该NVSM中;并且
确定将车辆数据存储在该磁盘上的状态。
2.如权利要求1所述的装置,其中,该控制器被进一步配置为:如果将车辆数据存储在该磁盘上的该状态之前指示不能将车辆数据存储在该磁盘上,则确定将车辆数据存储在该磁盘上的附加状态。
3.如权利要求1所述的装置,其中,在确定将车辆数据存储在该磁盘上的该状态时,该控制器被进一步配置为在该磁盘上执行诊断测试。
4.如权利要求1所述的装置,其中,该控制器包括振动信号放大器,并且其中,该控制器被进一步配置为:
将该输入处理成第一振动信号,该第一振动信号由该控制器用于确定该输入指示该机械振动水平是否超过该第一阈值;
使用该振动信号放大器将该第一振动信号处理成第二振动信号;并且
基于该第二振动信号确定该输入指示该机械振动水平是否超过第二阈值,该第二阈值对应于比该第一阈值更少的机械振动。
5.如权利要求1所述的装置,其中,该NVSM包括第一部分,该第一部分被保留用于:当确定该输入指示该机械振动水平超过指示撞击的该第一阈值时,存储来自该缓冲器的车辆数据。
6.如权利要求5所述的装置,其中,该NVSM包括第二部分,该第二部分被保留用于:在确定该输入指示该机械振动水平超过该第一阈值之后,存储由该控制器接收的预定量的新的车辆数据,用于存储在该装置中。
7.如权利要求5所述的装置,其中,该NVSM包括第三部分,并且其中,该控制器被进一步配置为:
在确定该输入指示该机械振动水平超过该第一阈值之后,将新的车辆数据接收到该缓冲器中,用于存储在该装置中;
接收指示随后的机械振动水平的附加输入;
确定该附加输入指示该随后的机械振动水平是否对应于附加撞击;并且
如果该附加输入指示该随后的机械振动水平对应于附加撞击,则将来自该缓冲器的该新的车辆数据存储在该NVSM的该第三部分中,其中,该NVSM的该第三部分被保留用于存储预定量的来自该缓冲器的该新的车辆数据。
8.如权利要求1所述的装置,其中,该NVSM包括循环缓冲器,并且其中,该控制器被进一步配置为:
在确定该输入指示该机械振动水平超过该第一阈值之后接收新的车辆数据用于存储在该装置中;并且
将该新的车辆数据存储在该循环缓冲器中。
9.如权利要求1所述的装置,其中,该缓冲器包括第一部分和第二部分,并且其中,该控制器被进一步配置为:将车辆数据接收到该缓冲器的该第一部分中用于存储在该磁盘上,并且将之前被接收在该缓冲器的该第二部分中的车辆数据存储在该磁盘上。
10.如权利要求1所述的装置,进一步包括视频摄像机,其中,该车辆数据包括来自该视频摄像机的视频数据。
11.如权利要求1所述的装置,进一步包括经由网络与远程存储装置通信的主机,并且其中,该主机被配置为:
检索存储在该NVSM中的车辆数据;并且
将检索的车辆数据经由该网络发送至该远程存储装置。
12.一种操作适于捕获与处于运动中的车辆相关的车辆数据的装置的方法,该装置包括用于存储车辆数据的磁盘和非易失性固态存储器即NVSM,该方法包括:
将车辆数据接收到该装置的缓冲器中用于存储在该磁盘上;
接收指示机械振动水平的输入;
确定该输入指示该机械振动水平是否超过指示撞击的第一阈值;并且
如果该输入指示该机械振动水平超过该第一阈值:
将来自该缓冲器的车辆数据存储在该NVSM中;并且
确定将车辆数据存储在该磁盘上的状态。
13.如权利要求12所述的方法,进一步包括:如果将车辆数据存储在该磁盘上的该状态之前指示不能将该车辆数据存储在该磁盘上,则确定将车辆数据存储在该磁盘上的附加状态。
14.如权利要求12所述的方法,其中,在确定将车辆数据存储在该磁盘上的该状态时,该方法进一步包括在该磁盘上执行诊断测试。
15.如权利要求12所述的方法,进一步包括:
将该输入处理成第一振动信号,该第一振动信号被用于确定该输入指示该机械振动水平是否超过该第一阈值;
使用振动信号放大器将该第一振动信号处理成第二振动信号;并且
基于该第二振动信号确定该输入指示该机械振动水平是否超过第二阈值,该第二阈值对应于比该第一阈值更少的机械振动。
16.如权利要求12所述的方法,进一步包括:在确定该输入指示该机械振动水平超过指示撞击的该第一阈值时,将来自该缓冲器的车辆数据存储在该NVSM中所保留的第一部分中。
17.如权利要求16所述的方法,进一步包括:
在确定该输入指示该机械振动水平超过该第一阈值之后,接收预定量的新的车辆数据用于存储在该装置中;并且
将该预定量的新的车辆数据存储在该NVSM中所保留的第二部分中。
18.如权利要求16所述的方法,进一步包括:
在确定该输入指示该机械振动水平超过该第一阈值之后,将新的车辆数据接收到该缓冲器中用于存储在该装置中;
接收指示随后的机械振动水平的附加输入;
确定该附加输入指示该随后的机械振动水平是否对应于附加撞击;并且
如果该附加输入指示该随后的机械振动水平对应于附加撞击,则将来自该缓冲器的该新的车辆数据存储在该NVSM的第三部分中,其中,该NVSM的该第三部分被保留用于存储预定量的来自该缓冲器的该新的车辆数据。
19.如权利要求12所述的方法,进一步包括:
在确定该输入指示该机械振动水平超过该第一阈值之后,接收新的车辆数据用于存储在该装置中;并且
将该新的车辆数据存储在该NVSM的循环缓冲器中。
20.如权利要求12所述的方法,进一步包括:将车辆数据接收到该缓冲器的第一部分中用于存储在该磁盘中,并且将之前被接收在该缓冲器的第二部分中的车辆数据存储在该磁盘上。
21.如权利要求12所述的方法,其中,该车辆数据包括来自视频摄像机的视频数据。
22.如权利要求12所述的方法,进一步包括:
检索存储在该NVSM中的车辆数据;并且
将检索的车辆数据经由网络发送至远程存储装置。
23.一种适于捕获监视数据的装置,该装置包括:
用于存储监视数据的磁盘;
用于存储监视数据的非易失性固态存储器即NVSM;
包含缓冲器的存储器,该存储器用于在将监视数据写在该磁盘上之前存储该监视数据;以及
控制器,该控制器被配置为:
将监视数据接收到该缓冲器中用于存储在该磁盘上;
接收指示机械振动水平的输入;
确定该输入指示该机械振动水平是否超过指示撞击的第一阈值;并且
如果该输入指示该机械振动水平超过该第一阈值:
将来自该缓冲器的监视数据存储在该NVSM中;并且
确定将监视数据存储在该磁盘上的状态。
24.如权利要求23所述的装置,其中,该NVSM包括第一部分和第二部分,该第一部分被保留用于:在确定该输入指示该机械振动水平超过指示对该装置的撞击的该第一阈值时,存储来自该缓冲器的监视数据,并且该第二部分被保留用于:在确定该输入指示该机械振动水平超过该第一阈值之后,存储由该控制器接收的预定量的新的监视数据用于存储在该装置中。
25.如权利要求23所述的装置,其中,该NVSM包括循环缓冲器,并且其中,该控制器被进一步配置为:
在确定该输入指示该机械振动水平超过该第一阈值之后,接收新的监视数据用于存储在该装置中;并且
将该新的监视数据存储在该循环缓冲器中。
26.如权利要求23所述的装置,进一步包括经由网络与远程存储装置通信的主机,并且其中,该主机被配置为:
检索存储在该NVSM中的监视数据;并且
将检索的监视数据经由该网络发送至该远程存储装置。
27.一种操作适于捕获监视数据的装置的方法,该装置包括用于存储监视数据的磁盘和非易失性固态存储器即NVSM,该方法包括:
将监视数据接收到该装置的缓冲器中用于存储在该磁盘上;
接收指示机械振动水平的输入;
确定该输入指示该机械振动水平是否超过指示撞击的第一阈值;并且
如果该输入指示该机械振动水平超过该第一阈值:
将来自该缓冲器的监视数据存储在该NVSM中;并且
确定将监视数据存储在该磁盘上的状态。
28.如权利要求27所述的方法,进一步包括:
在确定该输入指示该机械振动水平超过指示撞击的该第一阈值时,将来自该缓冲器的监视数据存储在该NVSM中所保留的第一部分中;
在确定该输入指示该机械振动水平超过该第一阈值之后,接收预定量的新的监视数据用于存储在该装置中;并且
将该预定量的新的监视数据存储在该NVSM中所保留的第二部分中。
29.如权利要求27所述的方法,进一步包括:
在确定该输入指示该机械振动水平超过该第一阈值之后,接收新的监视数据用于存储在该装置中;并且
将该新的监视数据存储在该NVSM的循环缓冲器中。
30.如权利要求27所述的方法,进一步包括:
检索来自该NVSM的监视数据;并且
将检索的监视数据经由网络发送至远程存储装置。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462076081P | 2014-11-06 | 2014-11-06 | |
US62/076,081 | 2014-11-06 | ||
US14/671,434 US9823859B2 (en) | 2014-11-06 | 2015-03-27 | Mechanical shock mitigation for data storage |
US14/671,434 | 2015-03-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105590642A CN105590642A (zh) | 2016-05-18 |
CN105590642B true CN105590642B (zh) | 2019-04-12 |
Family
ID=55912253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510740267.9A Active CN105590642B (zh) | 2014-11-06 | 2015-11-04 | 用于数据存储的机械减振的装置和方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9823859B2 (zh) |
CN (1) | CN105590642B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160286156A1 (en) * | 2015-02-12 | 2016-09-29 | Creative Law Enforcement Resources, Inc. | System for managing information related to recordings from video/audio recording devices |
US10805577B2 (en) * | 2016-10-25 | 2020-10-13 | Owl Cameras, Inc. | Video-based data collection, image capture and analysis configuration |
JP6437166B1 (ja) * | 2018-03-28 | 2018-12-12 | クレオ株式会社 | 衝突可視化装置、およびプログラム |
CN109215172A (zh) * | 2018-11-14 | 2019-01-15 | 北京伏羲车联信息科技有限公司 | 车辆状态的检测方法、装置及可读存储介质 |
CN110727546A (zh) * | 2019-09-06 | 2020-01-24 | 深圳开源互联网安全技术有限公司 | 汽车数据备份方法及装置 |
KR20220120736A (ko) | 2021-02-22 | 2022-08-31 | 삼성전자주식회사 | 스토리지 장치 및 이를 포함하는 스토리지 시스템 |
US20220317918A1 (en) * | 2021-03-31 | 2022-10-06 | Micron Technology, Inc. | Reduction of Write Amplification in Sensor Data Recorders |
US11656797B2 (en) * | 2021-07-28 | 2023-05-23 | Western Digital Technologies, Inc. | Data storage device executing runt write commands as free commands |
CN115827790A (zh) * | 2021-09-18 | 2023-03-21 | 华为技术有限公司 | 一种数据处理方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW221316B (zh) * | 1992-03-11 | 1994-02-21 | Ministor Peripherals Internat Ltd | |
CN1679107A (zh) * | 2002-08-29 | 2005-10-05 | 飞思卡尔半导体公司 | 带有用于存储数据的非易失性存储器的存储系统 |
CN101114492A (zh) * | 2006-07-27 | 2008-01-30 | 日立环球储存科技荷兰有限公司 | 带有非易失性存储器的、具有多种操作模式的盘驱动器 |
CN101739312A (zh) * | 2008-11-07 | 2010-06-16 | 株式会社京滨 | 备份方法、备份装置和车辆控制器 |
US8037348B2 (en) * | 2007-12-21 | 2011-10-11 | Seagate Technologies Llc | Vibration-aware data reassignment |
Family Cites Families (98)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3405757A1 (de) * | 1983-02-26 | 1984-10-04 | Edmund 7016 Gerlingen Zottnik | Unfalldatenschreiber |
US4819153A (en) * | 1985-06-05 | 1989-04-04 | Plus Development Corporation | Microprocessor controlled rigid disk file subsystem |
GB9615279D0 (en) * | 1996-07-20 | 1996-09-04 | Philips Electronics Nv | Method and apparatus for reading data from a disc carrier |
JP3909185B2 (ja) * | 2000-03-14 | 2007-04-25 | アルパイン株式会社 | 車載用電子機器 |
US6781780B1 (en) * | 2001-06-21 | 2004-08-24 | Western Digital Technologies, Inc. | Method and system for preventing data loss from an off-track write condition in a disk drive by rewriting data buffered from an adjacent track |
JP2003007013A (ja) * | 2001-06-26 | 2003-01-10 | Equos Research Co Ltd | 車両用データ記憶装置および車両用データ記憶装置の制御方法 |
US6714371B1 (en) * | 2001-08-31 | 2004-03-30 | Western Digital Technologies, Inc. | Method and disk drive for shock estimation and write termination control |
US6967804B1 (en) | 2001-11-30 | 2005-11-22 | Western Digital Technologies, Inc. | Shock event error logging in a disk drive |
JP3922348B2 (ja) * | 2001-12-03 | 2007-05-30 | 株式会社ケンウッド | 車載用データ記憶装置 |
US6975476B1 (en) | 2003-02-28 | 2005-12-13 | Western Digital Technologies, Inc. | Disk drives and host devices including a resetable shock sensor |
US6856556B1 (en) | 2003-04-03 | 2005-02-15 | Siliconsystems, Inc. | Storage subsystem with embedded circuit for protecting against anomalies in power signal from host |
US7502256B2 (en) | 2004-11-30 | 2009-03-10 | Siliconsystems, Inc. | Systems and methods for reducing unauthorized data recovery from solid-state storage devices |
JP4735100B2 (ja) * | 2005-03-08 | 2011-07-27 | ソニー株式会社 | 複合型記憶装置、データ処理方法及びプログラム |
EP2000394A2 (en) * | 2006-03-29 | 2008-12-10 | Fujitsu Microelectronics Limited | Recording device and recording method |
US7492541B2 (en) | 2006-03-31 | 2009-02-17 | Panasonic Corporation | Apparatus and method of monitoring hard disk drive |
US7653778B2 (en) | 2006-05-08 | 2010-01-26 | Siliconsystems, Inc. | Systems and methods for measuring the useful life of solid-state storage devices |
US8108692B1 (en) | 2006-06-27 | 2012-01-31 | Siliconsystems, Inc. | Solid-state storage subsystem security solution |
US7765373B1 (en) | 2006-06-27 | 2010-07-27 | Siliconsystems, Inc. | System for controlling use of a solid-state storage subsystem |
US7447807B1 (en) | 2006-06-30 | 2008-11-04 | Siliconsystems, Inc. | Systems and methods for storing data in segments of a storage subsystem |
US7509441B1 (en) | 2006-06-30 | 2009-03-24 | Siliconsystems, Inc. | Systems and methods for segmenting and protecting a storage subsystem |
US8161227B1 (en) | 2006-10-30 | 2012-04-17 | Siliconsystems, Inc. | Storage subsystem capable of programming field-programmable devices of a target computer system |
US8549236B2 (en) | 2006-12-15 | 2013-10-01 | Siliconsystems, Inc. | Storage subsystem with multiple non-volatile memory arrays to protect against data losses |
JP4675881B2 (ja) * | 2006-12-27 | 2011-04-27 | 株式会社東芝 | 磁気ディスク装置およびその制御方法 |
US7596643B2 (en) | 2007-02-07 | 2009-09-29 | Siliconsystems, Inc. | Storage subsystem with configurable buffer |
US7685337B2 (en) | 2007-05-24 | 2010-03-23 | Siliconsystems, Inc. | Solid state storage subsystem for embedded applications |
US7685338B2 (en) | 2007-05-24 | 2010-03-23 | Siliconsystems, Inc. | Solid state storage subsystem for embedded applications |
US7685374B2 (en) | 2007-07-26 | 2010-03-23 | Siliconsystems, Inc. | Multi-interface and multi-bus structured solid-state storage subsystem |
US8095851B2 (en) | 2007-09-06 | 2012-01-10 | Siliconsystems, Inc. | Storage subsystem capable of adjusting ECC settings based on monitored conditions |
JP5114222B2 (ja) * | 2008-01-18 | 2013-01-09 | 富士通テン株式会社 | 車両情報記録システム |
US8078918B2 (en) | 2008-02-07 | 2011-12-13 | Siliconsystems, Inc. | Solid state storage subsystem that maintains and provides access to data reflective of a failure risk |
US7962792B2 (en) | 2008-02-11 | 2011-06-14 | Siliconsystems, Inc. | Interface for enabling a host computer to retrieve device monitor data from a solid state storage subsystem |
US7733712B1 (en) | 2008-05-20 | 2010-06-08 | Siliconsystems, Inc. | Storage subsystem with embedded circuit for protecting against anomalies in power signal from host |
US8583835B1 (en) | 2008-08-06 | 2013-11-12 | Siliconsystems, Inc. | Command portal for executing non-standard storage subsystem commands |
US8375151B1 (en) | 2009-02-12 | 2013-02-12 | Siliconsystems, Inc. | Command portal for securely communicating and executing non-standard storage subsystem commands |
US9176859B2 (en) | 2009-01-07 | 2015-11-03 | Siliconsystems, Inc. | Systems and methods for improving the performance of non-volatile memory operations |
US8090899B1 (en) | 2009-03-04 | 2012-01-03 | Western Digital Technologies, Inc. | Solid state drive power safe wear-leveling |
US10079048B2 (en) | 2009-03-24 | 2018-09-18 | Western Digital Technologies, Inc. | Adjusting access of non-volatile semiconductor memory based on access time |
US8254172B1 (en) | 2009-09-30 | 2012-08-28 | Western Digital Technologies, Inc. | Wear leveling non-volatile semiconductor memory based on erase times and program times |
US8243525B1 (en) | 2009-09-30 | 2012-08-14 | Western Digital Technologies, Inc. | Refreshing non-volatile semiconductor memory by reading without rewriting |
US9753847B2 (en) | 2009-10-27 | 2017-09-05 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory segregating sequential, random, and system data to reduce garbage collection for page based mapping |
US8261012B2 (en) | 2009-10-30 | 2012-09-04 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory comprising power fail circuitry for flushing write data in response to a power fail signal |
US8135903B1 (en) | 2009-10-30 | 2012-03-13 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory compressing data to improve performance |
US8179626B1 (en) | 2009-12-04 | 2012-05-15 | Western Digital Technologies, Inc. | Adaptive shock detection |
US8397107B1 (en) | 2009-12-11 | 2013-03-12 | Western Digital Technologies, Inc. | Data storage device employing data path protection using both LBA and PBA |
US8443167B1 (en) | 2009-12-16 | 2013-05-14 | Western Digital Technologies, Inc. | Data storage device employing a run-length mapping table and a single address mapping table |
US8316176B1 (en) | 2010-02-17 | 2012-11-20 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory segregating sequential data during garbage collection to reduce write amplification |
US8407449B1 (en) | 2010-02-26 | 2013-03-26 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory storing an inverse map for rebuilding a translation table |
US8850151B2 (en) | 2010-03-24 | 2014-09-30 | Apple Inc. | Hybrid-device storage based on environmental state |
US8725931B1 (en) | 2010-03-26 | 2014-05-13 | Western Digital Technologies, Inc. | System and method for managing the execution of memory commands in a solid-state memory |
US8713066B1 (en) | 2010-03-29 | 2014-04-29 | Western Digital Technologies, Inc. | Managing wear leveling and garbage collection operations in a solid-state memory using linked lists |
US8782327B1 (en) | 2010-05-11 | 2014-07-15 | Western Digital Technologies, Inc. | System and method for managing execution of internal commands and host commands in a solid-state memory |
US9026716B2 (en) | 2010-05-12 | 2015-05-05 | Western Digital Technologies, Inc. | System and method for managing garbage collection in solid-state memory |
US8341339B1 (en) | 2010-06-14 | 2012-12-25 | Western Digital Technologies, Inc. | Hybrid drive garbage collecting a non-volatile semiconductor memory by migrating valid data to a disk |
US8612669B1 (en) | 2010-06-28 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for performing data retention in solid-state memory using copy commands and validity and usage data |
US8447920B1 (en) | 2010-06-29 | 2013-05-21 | Western Digital Technologies, Inc. | System and method for managing data access in non-volatile memory |
US8521972B1 (en) | 2010-06-30 | 2013-08-27 | Western Digital Technologies, Inc. | System and method for optimizing garbage collection in data storage |
US8639872B1 (en) | 2010-08-13 | 2014-01-28 | Western Digital Technologies, Inc. | Hybrid drive comprising write cache spanning non-volatile semiconductor memory and disk |
US8775720B1 (en) | 2010-08-31 | 2014-07-08 | Western Digital Technologies, Inc. | Hybrid drive balancing execution times for non-volatile semiconductor memory and disk |
US8638602B1 (en) | 2010-09-10 | 2014-01-28 | Western Digital Technologies, Inc. | Background selection of voltage reference values for performing memory read operations |
US8769190B1 (en) | 2010-09-15 | 2014-07-01 | Western Digital Technologies, Inc. | System and method for reducing contentions in solid-state memory access |
US8788779B1 (en) | 2010-09-17 | 2014-07-22 | Western Digital Technologies, Inc. | Non-volatile storage subsystem with energy-based performance throttling |
US8612804B1 (en) | 2010-09-30 | 2013-12-17 | Western Digital Technologies, Inc. | System and method for improving wear-leveling performance in solid-state memory |
US8601313B1 (en) | 2010-12-13 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for a data reliability scheme in a solid state memory |
WO2012082792A2 (en) * | 2010-12-13 | 2012-06-21 | Fusion-Io, Inc. | Apparatus, system, and method for auto-commit memory |
US8601311B2 (en) | 2010-12-14 | 2013-12-03 | Western Digital Technologies, Inc. | System and method for using over-provisioned data capacity to maintain a data redundancy scheme in a solid state memory |
US8615681B2 (en) | 2010-12-14 | 2013-12-24 | Western Digital Technologies, Inc. | System and method for maintaining a data redundancy scheme in a solid state memory in the event of a power loss |
US8458435B1 (en) | 2010-12-20 | 2013-06-04 | Western Digital Technologies, Inc. | Sequential write thread detection |
US8392635B2 (en) | 2010-12-22 | 2013-03-05 | Western Digital Technologies, Inc. | Selectively enabling a host transfer interrupt |
US8683113B2 (en) | 2011-02-04 | 2014-03-25 | Western Digital Technologies, Inc. | Concurrently searching multiple devices of a non-volatile semiconductor memory |
US8700950B1 (en) | 2011-02-11 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for data error recovery in a solid state subsystem |
US8700951B1 (en) | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
US8769232B2 (en) | 2011-04-06 | 2014-07-01 | Western Digital Technologies, Inc. | Non-volatile semiconductor memory module enabling out of order host command chunk media access |
US8751728B1 (en) | 2011-04-29 | 2014-06-10 | Western Digital Technologies, Inc. | Storage system bus transfer optimization |
US8862804B2 (en) | 2011-04-29 | 2014-10-14 | Western Digital Technologies, Inc. | System and method for improved parity determination within a data redundancy scheme in a solid state memory |
US9021178B2 (en) | 2011-05-02 | 2015-04-28 | Western Digital Technologies, Inc. | High performance path for command processing |
US8503237B1 (en) | 2011-05-18 | 2013-08-06 | Western Digital Technologies, Inc. | System and method for data recovery in a solid state storage device |
US8793429B1 (en) | 2011-06-03 | 2014-07-29 | Western Digital Technologies, Inc. | Solid-state drive with reduced power up time |
US8719531B2 (en) | 2011-06-14 | 2014-05-06 | Western Digital Technologies, Inc. | System and method for performing data retention that incorporates environmental conditions |
US8423722B1 (en) | 2011-08-26 | 2013-04-16 | Western Digital Technologies, Inc. | System and method for high performance command processing in solid state drives |
US8700834B2 (en) | 2011-09-06 | 2014-04-15 | Western Digital Technologies, Inc. | Systems and methods for an enhanced controller architecture in data storage systems |
US8713357B1 (en) | 2011-09-06 | 2014-04-29 | Western Digital Technologies, Inc. | Systems and methods for detailed error reporting in data storage systems |
US8707104B1 (en) | 2011-09-06 | 2014-04-22 | Western Digital Technologies, Inc. | Systems and methods for error injection in data storage systems |
US8977803B2 (en) | 2011-11-21 | 2015-03-10 | Western Digital Technologies, Inc. | Disk drive data caching using a multi-tiered memory |
US8724422B1 (en) | 2012-02-29 | 2014-05-13 | Western Digital Technologies, Inc. | System and method for charging back-up charge storage element for data storage device using spindle phase switching elements |
US9003224B2 (en) | 2012-04-25 | 2015-04-07 | Western Digital Technologies, Inc. | Managing unreliable memory in data storage systems |
US8788778B1 (en) | 2012-06-04 | 2014-07-22 | Western Digital Technologies, Inc. | Garbage collection based on the inactivity level of stored data |
US8966343B2 (en) | 2012-08-21 | 2015-02-24 | Western Digital Technologies, Inc. | Solid-state drive retention monitor using reference blocks |
US8788880B1 (en) | 2012-08-22 | 2014-07-22 | Western Digital Technologies, Inc. | Efficient retry mechanism for solid-state memory failures |
US9268682B2 (en) | 2012-10-05 | 2016-02-23 | Skyera, Llc | Methods, devices and systems for physical-to-logical mapping in solid state drives |
US8972826B2 (en) | 2012-10-24 | 2015-03-03 | Western Digital Technologies, Inc. | Adaptive error correction codes for data storage systems |
US9177638B2 (en) | 2012-11-13 | 2015-11-03 | Western Digital Technologies, Inc. | Methods and devices for avoiding lower page corruption in data storage devices |
US8954694B2 (en) | 2012-11-15 | 2015-02-10 | Western Digital Technologies, Inc. | Methods, data storage devices and systems for fragmented firmware table rebuild in a solid state drive |
US9021339B2 (en) | 2012-11-29 | 2015-04-28 | Western Digital Technologies, Inc. | Data reliability schemes for data storage systems |
US9059736B2 (en) | 2012-12-03 | 2015-06-16 | Western Digital Technologies, Inc. | Methods, solid state drive controllers and data storage devices having a runtime variable raid protection scheme |
US20140223255A1 (en) | 2012-12-18 | 2014-08-07 | Western Digital Technologies, Inc. | Decoder having early decoding termination detection |
US9430376B2 (en) | 2012-12-26 | 2016-08-30 | Western Digital Technologies, Inc. | Priority-based garbage collection for data storage systems |
US8767332B1 (en) | 2013-04-03 | 2014-07-01 | Western Digital Technologies, Inc. | Disk drive predicting off-track error due to disturbances occurring over different frequency ranges |
US9304930B2 (en) * | 2014-03-21 | 2016-04-05 | Seagate Technology Llc | HDD write buffer zone for vibration condition |
-
2015
- 2015-03-27 US US14/671,434 patent/US9823859B2/en active Active
- 2015-11-04 CN CN201510740267.9A patent/CN105590642B/zh active Active
-
2017
- 2017-11-20 US US15/818,730 patent/US20180074728A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW221316B (zh) * | 1992-03-11 | 1994-02-21 | Ministor Peripherals Internat Ltd | |
CN1679107A (zh) * | 2002-08-29 | 2005-10-05 | 飞思卡尔半导体公司 | 带有用于存储数据的非易失性存储器的存储系统 |
CN101114492A (zh) * | 2006-07-27 | 2008-01-30 | 日立环球储存科技荷兰有限公司 | 带有非易失性存储器的、具有多种操作模式的盘驱动器 |
US8037348B2 (en) * | 2007-12-21 | 2011-10-11 | Seagate Technologies Llc | Vibration-aware data reassignment |
CN101739312A (zh) * | 2008-11-07 | 2010-06-16 | 株式会社京滨 | 备份方法、备份装置和车辆控制器 |
Also Published As
Publication number | Publication date |
---|---|
US9823859B2 (en) | 2017-11-21 |
US20160132257A1 (en) | 2016-05-12 |
US20180074728A1 (en) | 2018-03-15 |
CN105590642A (zh) | 2016-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105590642B (zh) | 用于数据存储的机械减振的装置和方法 | |
US7525745B2 (en) | Magnetic disk drive apparatus and method of controlling the same | |
KR101608679B1 (ko) | 톤 라이트 완화 | |
US20090182933A1 (en) | Durable data storage system and method | |
CN107710142B (zh) | 用于数据存储装置的数据保留管理 | |
US9923562B1 (en) | Data storage device state detection on power loss | |
JP4251169B2 (ja) | 情報処理装置、撮像装置、および情報処理方法、並びにコンピュータ・プログラム | |
TW200818200A (en) | Disk drive with nonvolatile memory for storage of failure-related data | |
CN107710143B (zh) | 用于数据存储装置的介质区域管理 | |
JP2015035247A5 (ja) | 書き込み時の欠落の緩和 | |
JP2013117965A5 (zh) | ||
CN105096964A (zh) | 数据存储设备的减振 | |
US9448742B2 (en) | Communication between a host and a secondary storage device | |
CN106484761A (zh) | 用于改进储存日志的方法和系统 | |
CN108983939A (zh) | 使用停止命令进行电源故障处理 | |
EP2685459A1 (en) | Hardware flash memory wear monitoring | |
US9933955B1 (en) | Power safe write buffer for data storage device | |
CN104347099A (zh) | 数据存储设备的掉落状态确定 | |
US8885285B1 (en) | Impact detection for data storage device | |
US9298380B1 (en) | Data storage device with selective write to a first storage media or a second storage media | |
CN105320468A (zh) | 半导体存储器件、存储控制器以及存储控制器的控制方法 | |
CN113127243A (zh) | 对转储错误日志的实时触发 | |
US10734079B1 (en) | Sub block mode read scrub design for non-volatile memory | |
EP2081115A1 (en) | Durable data storage system and method | |
US9257143B1 (en) | Precautionary measures for data storage device environmental conditions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |