SANDISK IL LTD. Patent applications |
Patent application number | Title | Published |
20140379966 | Distributed Storage Service Systems and Architecture - Various methods, devices and systems are described for providing distributed storage services. A data storage device is capable of initiating a communication session with an external entity such as a local host computer (and vice versa) coupled directly to the data storage device, a remote server computer, or directly with remote data storage devices with or without intervention by a local host computer. | 12-25-2014 |
20140351900 | LOCAL PROXY SYSTEM AND METHOD - A local proxy system includes a storage device having a local proxy and a physical port connection. The local proxy is part of a split proxy configuration having a local proxy and a remote proxy. The physical port connection is operative to receive commands from a host via an internet application protocol; and to transmit commands to the host via a modem control protocol, to thereby function as a gateway for conveying these commands to a remote proxy, via the host. Also provided is a method of optimizing communication over a network; and a local proxy system that includes a storage device having a local proxy. The storage device is in connection with a host via a physical port connection complying with a standard storage device interface. | 11-27-2014 |
20140289378 | DEVICE IDENTIFIER SELECTION - A method includes receiving an enumeration message via a host interface of a device that is operatively coupled to a host device and to one or more other devices. The method includes identifying the enumeration message as a command originated by the host device or as a response message from one of the other devices. In response to identifying the enumeration message as a command, an enumeration response message is sent to the host device. The enumeration response message indicates a distinctive device identifier value. The method also includes, in response to identifying the enumeration message as a response message from one of the other devices, reading from the response message an identifier value used by such other device and at least temporarily storing this identifier value at the device to enable the device to select the distinctive device identifier value. | 09-25-2014 |
20140269066 | METHODS FOR EXTENDING THE EFFECTIVE VOLTAGE WINDOW OF A MEMORY CELL - Methods for operating a non-volatile storage system in which cross-coupling effects are utilized to extend the effective threshold voltage window of a memory cell and to embed additional information within the extended threshold voltage window are described. In some cases, additional information may be embedded within a memory cell storing the highest programming state if the memory cell is in a high boosting environment by splitting the highest programming state into two substates and programming the memory cell to one of the two substates based on the additional information. A memory cell may be in a high boosting environment if its neighboring memory cells are in a high programmed state. Additional information may also be embedded within a memory cell storing the lowest programming state if the memory cell is in a low boosting environment. The additional information may include error correction information. | 09-18-2014 |
20140143794 | METHODS FOR ENABLING SOFTWARE IN STORAGE-CAPABLE DEVICES - Methods for enabling software from a storage-capable device including the steps of: loading, by a host system operationally connected to the storage-capable device, software from an authenticatable storage area residing in the storage-capable device; validating the software; and installing the validated software, wherein the validated software provides an interface between the host system and the storage-capable device. In some embodiments, the software is enabling software, the method further including the step of loading, by the host system, device-functionality software from the authenticatable storage area. In some embodiments, the method further includes the steps of: validating the device-functionality software; and enabling the validated device-functionality software. In some embodiments, the method further includes the steps of prior to the step of loading the software, executing a probe command in the host system; and returning, by the probe command, a list of device functional units residing in the storage-capable device. | 05-22-2014 |
20140115286 | System and Method of Digital Content Manipulation - A data storage apparatus includes a primary storage device and a secondary storage device. The primary storage device includes a first non-volatile memory to store a content item. The secondary storage device includes a second non-volatile memory to store a command received from a first content appliance. The command indicates an operation to be performed with respect to the content item stored at the primary storage device. The secondary storage device is configured to send the command to a second content appliance for execution. | 04-24-2014 |
20140013033 | OPTIMIZED FLASH MEMORY WITHOUT DEDICATED PARITY AREA AND WITH REDUCED ARRAY SIZE - A method and system for optimizing flash memory without dedicated parity area and with reduced array size. The memory size of a multi level cell (MLC) flash is reduced and controller operation is simplified. Simplified operation includes the controller being able to program each host data page to an integer number of flash pages. A maximal available information bits per cell (IBPC) is maintained in a flash device while also maximizing the programming throughput of the flash. Features include the ability to dynamically select which number of cell states is used by flash memory cells. | 01-09-2014 |
20130308381 | NON-VOLATILE MEMORY AND METHODS WITH SOFT-BIT READS WHILE READING HARD BITS WITH COMPENSATION FOR COUPLING - A non-volatile memory has its cells' thresholds programmed within any one of a first set of voltage bands partitioned by a first set of reference thresholds across a threshold window. Hard bits are obtained when read relative to the first set of reference thresholds. The cells are read at a higher resolution relative to a second set of reference thresholds so as to provide additional soft bits for error correction. The soft bits are generated by a combination of a first modulation of voltage on a current word line WLn and a second modulation of voltage on an adjacent word line WLn+1, as in a reading scheme known as “Direct-Lookahead (DLA)”. | 11-21-2013 |
20130275771 | Removable, Active, Personal Storage Device, System and Method - A storage device is configured to communicate with a host device over a Bluetooth connection. The storage device includes a flash memory, a processor, and a Bluetooth controller. The memory stores at least one permission for determining access to the memory. The processor manages access to the memory, independently of the host device, based on a comparison of a request at the removable storage device to access the memory to at least one permission. The comparison is independent, requiring no management by an operating system of the host device, such that if the at least one permission includes a particular access type that matches the access requested in the request, the processor provides access to the memory. | 10-17-2013 |
20130151677 | DEVICE IDENTIFIER SELECTION - A method includes receiving an enumeration message via a host interface of a device that is operatively coupled to a host device and to one or more other devices. The method includes identifying the enumeration message as a command originated by the host device or as a response message from one of the other devices. In response to identifying the enumeration message as a command, an enumeration response message is sent to the host device. The enumeration response message indicates a distinctive device identifier value. The method also includes, in response to identifying the enumeration message as a response message from one of the other devices, reading from the response message an identifier value used by such other device and at least temporarily storing this identifier value at the device to enable the device to select the distinctive device identifier value. | 06-13-2013 |
20130067151 | METHOD FOR EFFICIENT STORAGE OF METADATA IN FLASH MEMORY - A method includes writing a first portion of received user data to a first page of a block of a memory according to a writing schedule and writing a subsequent portion of the received user data to another page of the block according to the writing schedule. The method includes storing first metadata corresponding to writing the first portion in the memory. The method further includes associating the first metadata with the subsequent portion. | 03-14-2013 |
20130013836 | HOST FOR USE WITH DUAL INTERFACE CARD WITH BACKWARD AND FORWARD COMPATIBILITY - A host device includes a slot configured to receive a first type of memory card having an indentation and a mechanical structure. The mechanical structure includes a pivot structure and a lever arm. The lever arm is configured to pivot on the pivot structure and a portion of the lever arm is configured to at least partially fit into the indentation to distinguish the first type of memory card from a second type of memory card. | 01-10-2013 |
20130012049 | DUAL INTERFACE CARD WITH BACKWARD AND FORWARD COMPATIBILITY - A memory card includes a first set of contacts and a second set of contacts. A first edge of the memory card includes an indentation. Insertion of the memory card into a first slot of a host device engages the first set of contacts. The indentation is configured to accept a pivoting lever arm located in the first slot when the memory card is inserted into the first slot. | 01-10-2013 |
20120331252 | PORTABLE STORAGE DEVICE SUPPORTING FILE SEGMENTATION AND MULTIPLE TRANSFER RATES - A host device includes a first file system, and a storage device includes a plurality of memory units and a plurality of controllers. While the host device is operative coupled to the storage device, the host device creates a second file system corresponding to the storage device and copies host content from the first file system to the second file system. The second file system is segmented into a plurality of segments, each of the plurality of segments being uniquely associated with a particular one of the plurality of controllers. The host device selects a data transfer rate to write the host content from the second file system to the storage device. | 12-27-2012 |
20120278687 | METHOD OF DATA STORAGE IN NON-VOLATILE MEMORY - A method of storing a set of metadata bits associated with each of multiple data words includes combining the set of metadata bits with each of the multiple data words to generate multiple extended data words. The method includes encoding each of the multiple extended data words to generate multiple codewords and puncturing each of the multiple codewords to generate multiple punctured codewords, where in each of the punctured codewords the set of metadata bits is removed. The method includes storing the multiple punctured codewords, transforming the set of metadata bits to generate a set of transformed metadata bits, and storing the set of transformed metadata bits. | 11-01-2012 |
20120271859 | STORAGE DEVICE PRESENTING TO HOSTS ONLY FILES COMPATIBLE WITH A DEFINED HOST CAPABILITY - A method includes defining a host capability; creating for a storage device a second directory tree from a first directory tree of the storage device that is included in a file system within the storage device; and, for a data file that is stored in the storage device and is selectable for consumption by a host through the first directory tree that is included in the storage device's file system, determining whether the data file requires for consumption a host having the defined host capability. If the data file requires a host having the defined host capability, an entry is created in the second directory tree in which the data file is not selectable for consumption by the host. Otherwise, an entry is created in the second directory tree in which the data file is selectable for consumption by the host. | 10-25-2012 |
20120260022 | HANDLING COMMANDS WITHIN A WRITE-ONCE READ-MANY STORAGE DEVICE CONFIGURATION - A storage device with a memory, a controller, and a host interface, and a method of handling commands in a storage device are provided to execute commands in a storage device having a write-once read-many device configuration, transparently to a host device. The memory containing a database having entries each entry for a logical memory address and containing information for converting that logical memory address to a redirected logical memory address that represents a memory location where data associated with that logical memory address actually resides. The controller performs, when the host interface is operatively coupled to a host device, to receive a command specifying a logical memory address and interpret the command based on information extracted from the database. The controller executes the command according to the information, transparently to the host device. | 10-11-2012 |
20120244750 | MEMORY CARD - A memory card structure includes a memory card body dimensioned to house a memory and a controller, and the memory card body has an edge connector portion having a thickness that complies with a memory card specification. The memory card body includes a recessed portion dimensioned to receive an external plug. The memory card structure also includes an electrical connector that is coupleable to a Universal Serial Bus (USB) plug and that is electrically coupled to at least one of the memory and the controller. The electrical connector extends from the recessed portion of the memory card body. | 09-27-2012 |
20120243654 | Methods for Interrupted Counting of Particles in Cells - A method executed by a circuit for counting electrons in storage cells in an array of at least two storage cells is provided. The method includes providing a storage array of at least two storage cells, and each of said at least two storage cells containing an unknown amount of electrons. A receiving array of at least two receiving cells is provided, where said at least two receiving cells initially contain no electrons. Then, extracting a layer of said electrons from said storage array of cells and inserting said layer into corresponding locations in said receiving array. The method then repeats said steps of extracting and inserting while at least one of said at least two storage cells is not empty. The method counts, for each said storage cell in said storage array, a productive-extraction amount. | 09-27-2012 |
20120210082 | DATA CODING USING DIVISIONS OF MEMORY CELL STATES - Data storage devices and methods to encode and decode data using divisions of memory cell states are disclosed. A method includes dividing data bits into disjoint multiple groups of data bits and storing the data bits into a plurality of memory cells. The storing is done by setting each of the plurality of memory cells to a corresponding state selected from at least three ordered states. For each of the multiple groups of data bits, when a request is received for reading a particular group of the data bits, the request is serviced by selecting a disjoint division of the at least three ordered states of the memory cells into a first set of states and a second set of states. Each of the states in the first set of states has a higher position than any of the states in the second set of states according to the order of the states. For each cell of the plurality of memory cells, a determination is made whether the cell is in the first set of states or the second set of states. Based on the determination, the particular group of the data bits is generated in response to the request for reading the particular group of the data bits without use of additional data that depends upon a state of one of the memory cells. | 08-16-2012 |
20120005404 | STATUS INDICATION WHEN A MAINTENANCE OPERATION IS TO BE PERFORMED AT A MEMORY DEVICE - Data storage devices and methods are disclosed that provide a status indication when a maintenance operation is to be performed prior to completion of a write command. A method includes receiving a write command from a host device to write data to the non-volatile memory while the data storage device is operatively coupled to the host device. In response to determining that a maintenance operation is to be performed prior to the completion of the write command, an indication is sent to the host device that the write command has a status of incomplete. | 01-05-2012 |
20110313730 | METHOD AND APPARATUS TO ADAPTIVELY RECORD DATA - A recording unit includes one or more signal sensors and a recording controller. The recording controller is configured to execute a first recording instruction to record first data received from the one or more signal sensors. The first data is recorded according to first recording rules that specify a first value of a parameter. The recording controller is also configured to, in response to an irregularity detected in the first data, execute a second recording instruction to record second data received from the one or more signal sensors. The second data is recorded according to second recording rules that specify a second value of the parameter, where the second value differs from the first value. | 12-22-2011 |
20110296088 | MEMORY MANAGEMENT STORAGE TO A HOST DEVICE - Systems and methods of memory management storage to a host device are disclosed. A method is performed in a data storage device with a non-volatile memory and a controller operative to manage the non-volatile memory and to generate management data for managing the non-volatile memory. The method includes performing, at a given time, originating at the controller data management transfer to a host device or originating at the controller data management retrieval from the host device. | 12-01-2011 |
20110283051 | MOVING EXECUTABLE CODE FROM A FIRST REGION OF A NON-VOLATILE MEMORY TO A SECOND REGION OF THE NON-VOLATILE MEMORY - A data storage device includes a controller and a non-volatile memory coupled to the controller. The non-volatile memory includes executable boot code that is executable by a processor associated with the data storage device. The controller is configured to read a first portion of the executable boot code from a first region of the non-volatile memory, and in response to detecting a condition, move a second portion of the executable boot code in a second region of the non-volatile memory to a third region of the non-volatile memory. | 11-17-2011 |
20110258514 | OVERLAPPING ERROR CORRECTION OPERATIONS - Systems and methods of overlapping error correction operations are disclosed. A method at an encoder device includes receiving data bits to be encoded including a first bit, a second bit, and a third bit. A first encode operation to encode a first group of the data bits is initiated to generate a first codeword. The first group of the data bits includes the first bit and the second bit, but not the third bit. A second encode operation to encode a second group of the data bits is initiated to generate a second codeword. The second group of the data bits includes the second bit and the third bit, but not the first bit. | 10-20-2011 |
20110252288 | AUXILIARY PARITY BITS FOR DATA WRITTEN IN MULTI-LEVEL CELLS - Methods of writing data to and reading data from memory devices and systems for writing and reading data are disclosed. In a particular embodiment, a method includes writing data bits a first time into a memory. Auxiliary parity bits are written in the memory, where the auxiliary parity bits are computed based on the data bits. Subsequent to writing the data bits a first time and writing the auxiliary parity bits, the data bits are written a second time into the memory. Writing the data bits the first time and writing the data bits the second time are directed to one or more storage elements at a common physical address in the memory. Subsequent to writing the data bits the second time, the auxiliary parity bits are discarded while maintaining the data bits in the memory. | 10-13-2011 |
20110238507 | COMBINING USER CONTENT WITH SUPPLEMENTAL CONTENT AT A DATA STORAGE DEVICE - Data storage devices and methods to combine user content with supplemental content at a data storage device are disclosed. The data storage device includes a host interface, a controller coupled to the host interface, a first storage area coupled to the controller, and a second storage area coupled to the controller. The host interface is configured to enable the data storage device to receive one or more user content items from a host device when the data storage device is operationally coupled to the host device. The controller is configured to store the one or more user content items in the first storage area. The controller is also configured to combine a particular supplemental content item stored in the second storage area with a particular user content item from among the one or more user content items. | 09-29-2011 |
20110235410 | DEVICE AND METHOD TO READ DATA SUBJECT TO A DISTURB CONDITION - A storage device includes a plurality of memory elements and a controller. The controller is configured to receive measured characteristics of the memory elements. The measured characteristics correspond to a plurality of values including a first value stored at a first memory element of the plurality of memory elements and a second value stored at a second memory element of the plurality of memory elements. The controller is configured to test whether at least some of the plurality of values match a particular pattern correlated to a disturb condition at the first memory element. The controller is configured to provide a data value corresponding to the first memory element, where the data value is determined at least in part based on a result of the test. | 09-29-2011 |
20110228604 | PRELOADING DATA INTO A FLASH STORAGE DEVICE - Programmer's data is initially stored in a memory device of the storage device by using an MBC storage scheme. After the storage device is embedded in a host device, the programmer's data is internally read from the memory device by using conventional read reference voltages, and the number of erroneous data bits in the programmer's data is calculated. If the programmer's data includes an uncorrectable number of erroneous data bits, the programmer's data is iteratively reread by using unconventional read reference voltages with decreased levels. The iteration process, which includes decreasing the level of the read reference voltages and recalculating the number of erroneous data bits, is terminated when the number of erroneous data bits in the programmer's is less than or equals a predetermined number of erroneous data bits, after which the storage device restores the programmer's data and conventionally rewrites it into the memory device. | 09-22-2011 |
20110225365 | EMULATING A COMPUTER SYSTEM ON A REMOVABLE STORAGE DEVICE - A removable storage device with a processor and a non-volatile memory, and a method for using a removable storage device, are provided to emulate the computer system. The storage device stores in the non-volatile memory data it obtained from a first computer system, the data containing computer applications. When the storage device is removably connected to a second computer system and the second computer system is associated with a computer peripheral device, the processor in the storage device is instructed to emulate the original process environment of the first computer system. | 09-15-2011 |
20110208699 | DEVICE AND METHOD OF INTEGRATING FILE SYSTEMS - A device for integrating file systems includes a plurality of storage device interfaces. Each storage device interface is operatively coupleable to a corresponding storage device, and each storage device has a corresponding storage device file system. The device also includes a host interface and a hub configured for operatively connecting between the storage device interfaces and the host interface. The hub is operative to create a virtual file system that aggregates the storage device file systems. The virtual file system is configured to represent to a host, via the host interface, each file of a first group and to refrain from representing to the host each file of a second group, where the files are stored in one or more of the plurality of storage devices. Each file of the first group satisfies a first condition and each file of the second group fails to satisfy the first condition. | 08-25-2011 |
20110199823 | PRELOADING DATA INTO A FLASH STORAGE DEVICE - Programmer's data that is transferred from a programming device ( | 08-18-2011 |
20110179143 | STORAGE SYSTEM SUPPORTING REPLACEMENT OF CONTENT IN A STORAGE DEVICE - A file replacement system includes a storage device, a host, and a server. In a file replacement transaction one or more files that are stored in the storage device are replaced in the storage device by one or more files that are provided by the server. The storage device monitors access to the files stored therein and updates an access tracking table with segment access information that pertains to access to segments of the files. While the file replacement transaction is in progress, the storage device delivers the segment access information to the server, and, based on the segment access information and file replacement criteria, the server determines a credit to which the end-user is entitled for the replaced files. The server calculates an outstanding balance for the file replacement transaction from the credit owing to the end-user for the replaced files and from the cost of the replacement files. | 07-21-2011 |
20110134692 | ADAPTIVE DYNAMIC READING OF FLASH MEMORIES - A data storage device includes a controller and storage elements. The controller is configured to read a threshold voltage of each of a plurality of the storage elements to generate read threshold data and to assign reference voltages defining each of a plurality of voltage threshold states based on the read threshold data. | 06-09-2011 |
20110114738 | AUTOMATED CARD CUSTOMIZATION MACHINE - A memory card includes a non-volatile memory, a connector configured to enable the memory card to be operatively coupled to a host computer, and a housing enclosing the non-volatile memory. The housing has a customized physical contour that is determined according to a user-selected value. | 05-19-2011 |
20110107188 | SYSTEM AND METHOD OF DECODING DATA - A decoder is disclosed that can reduce power consumption at different stages of a decoding process. At a first stage where the decoder calculates residual values, the decoder can reduce power consumption by calculating residual values using less than a full set of division circuits. A reduced number of division circuits may be sufficient to successfully calculate residuals associated with the codeword to complete the decoding process. Division circuits that are not used may be disabled to reduce power consumption. At another stage of the decoding process where the decoder generates coefficients that are used to identify locations of errors in the codeword, the decoding process can limit power consumption by reducing the number of iterations of a polynomial generator by incorporating termination decision circuitry. | 05-05-2011 |
20110096603 | REVERSE ORDER PAGE WRITING IN FLASH MEMORIES - To store, in a memory block whose word lines are written successively in a word line writing order, a plurality of data pages that are ordered by logical page address, the pages are written to the word lines so that every page that is written to any one of the word lines has a higher logical page address than any page that is written to a subsequently written word line, regardless of the sequence in which the pages are received for writing. Alternatively, the pages are written to the word lines so that for every pair of written word lines, the word line of the pair that is earlier in the writing order has written thereto a page having a higher logical page address than at least one page written to the other word line of the pair. | 04-28-2011 |
20110093652 | MULTI-BIT-PER-CELL FLASH MEMORY DEVICE WITH NON-BIJECTIVE MAPPING - To store input data in a plurality of memory cells, a mapping function of bit sequences to physical parameter states of the cells is provided. The cells are programmed, in accordance with the mapping function, to store the input data, in a way that would store uniformly distributed data with a programming state distribution other than any native state distribution of the mapping function. To store input data in a single memory cell, a mapping function of bit sequences to states of a physical parameter of the cell, such that if uniformly distributed data were stored in a plurality of such memory cells then the states of the physical parameter of the cells would be distributed non-uniformly, is provided. The memory cell is programmed to store the input data in accordance with the mapping function. | 04-21-2011 |
20110087790 | METHODS AND SYSTEMS FOR COMMUNICATING WITH STORAGE SYSTEMS USING SLIM IP STACKS - Methods, and associated devices, media, and systems, for establishing a communication link between a host system and a storage device are provided. One method includes an operation for providing on the host a communication stack including a Transmission Control Protocol/Internet Protocol (TCP/IP) module and a host physical layer module. The storage device includes a storage command extractor, and the method includes another operation for establishing a communication channel between an application in the host and the storage device, where the communication channel uses the communication stack and the storage command extractor. In the method, the TCP/IP module converts TCP/IP commands received from the application in the host to storage commands for the storage device. | 04-14-2011 |
20110078341 | METHOD OF MONITORING HOST ACTIVITY - A method of using a device, including monitoring host activity in an autonomous manner, without the host reporting to the device about its activity. The method also including initiating communications from the device and using resources of the host for such communications, thereby enabling the device to function as a proactive device. | 03-31-2011 |
20110072185 | MULTI-PROTOCOL STORAGE DEVICE BRIDGE - A bridge includes a host interface via which data/commands are received from and transferred to a host, and a storage device interface via which data/commands are received from and transferred to a storage device. The bridge also includes one SDPC, a controller and a switching system that is configurable by the controller to connect the protocol converter to the host interface and the storage device interface if the storage device protocol used by the host device differs from the storage device protocol used by the storage device, and to connect the host device interface to the storage device interface, not via the bi-directional protocol converter, if the two storage device protocols are the same. The bridge may include two SDPCs, each for converting a different protocol to the host protocol and vice versa, with the switching system being configurable to switch between the two SDPCs. The bridge may omit the SDPC altogether, with the switching system being configurable to switch between connecting (1) the host device interface to the storage device interface, and (2) bypassing the storage device interface. | 03-24-2011 |
20110066902 | SYSTEM AND METHOD OF READING DATA USING A RELIABILITY MEASURE - In a particular embodiment, a data storage device includes a memory array including a target memory cell and one or more other memory cells. The data storage device also includes a controller coupled to the memory array. The controller is configured to directly compute a reliability measure for at least one bit stored in the target memory cell of the memory array based on a voltage value associated with the target memory cell and based on one or more corresponding voltage values associated with each of the one or more other memory cells of the memory array. | 03-17-2011 |
20110022666 | DEVICE IDENTIFIER SELECTION - Systems and methods of device identifier selection are disclosed. In a particular embodiment, a method includes, at a hub device having a plurality of ports including a first port, a second port, and a third port, receiving a first message from a host device. The first message including a broadcast indicator. The method also includes, in response to determining that the first message requests enumeration, emulating a ring communication topology by serially propagating messages including an enumeration indicator to a first device via the first port and to a second device via the second port. The method further includes, in response to determining that the first message does not request enumeration, selectively sending the first message to the first device substantially concurrently with sending the first message to the second device. Emulating the ring communication topology enables the hub device to provide a first distinctive identifier value of the first device and a second distinctive identifier value of the second device to the host device. | 01-27-2011 |
20110010497 | A STORAGE DEVICE RECEIVING COMMANDS AND DATA REGARDLESS OF A HOST - A storage device includes an input device for receiving data and commands directly from a user, without the storage device reporting to or notifying of the storage device activities that result from the received data and received commands. The user may visually-code the commands for the storage device, or s/he may transfer the commands to the storage device as voice commands or as vibration-induced commands. A command transferred by the user to the storage device specifies to the storage device a set of one or more digital contents that are (to be) stored in the storage device, and an operation that is to be performed on the set of one or more digital contents. A command may instruct the storage device to irreversibly caption a set of one or more digital photos by using a caption picture or caption data, or to associate a voice tag to these digital photos. | 01-13-2011 |
20100332956 | POLYNOMIAL DIVISION - Systems and methods to perform polynomial division are disclosed. In a particular embodiment, the method includes receiving a codeword and storing a portion of the received codeword at a register. The portion of the received codeword has a first number of terms. A divisor having a second number of terms is also received. During at least one stage of a multi-stage polynomial division operation using the portion of the codeword and the divisor, the portion of the received codeword to be divided by the divisor is adjusted based on a result of a comparison of the first number to the second number. | 12-30-2010 |
20100332729 | MEMORY OPERATIONS USING LOCATION-BASED PARAMETERS - Systems and methods of performing memory operations using location-based parameters are disclosed. A method includes identifying a first set of parameter values associated with a first physical block of a memory array. The first set of parameter values is identified based on a first physical location of the first physical block. A memory access operation is initiated with respect to the first physical block in accordance with the first set of parameter values. | 12-30-2010 |
20100332569 | STORAGE DEVICE WITH MULTIMEDIA INTERFACE CONNECTOR - Storage devices with multimedia interface connectors and methods are disclosed. In a particular embodiment, a data storage device includes a controller coupled to a memory, a streaming media capture circuit coupled to the controller, and a video playback circuit coupled to the controller. A multimedia interface connector is coupled to the streaming media capture circuit and further coupled to the video playback circuit. In response to detecting streaming multimedia data incoming from an external device via the multimedia interface connector, the incoming streaming multimedia data is provided to the streaming media capture circuit to generate multimedia file format data that is stored to the memory as a multimedia file. | 12-30-2010 |
20100311394 | MOBILE SYSTEM FOR PROVIDING PERSONALIZED INFORMATION - An information system includes a server that creates an information reservoir with data units for a user of a mobile communication device based on a unique user profile of the user of the mobile communication device. The server creates the unique user profile based on interaction of the user with the mobile communication device or with another computing system. The server transfers the information reservoir to the mobile communication device and each time the user requests data from a web site, the server scans it to find key terms. If the server finds key term(s) in the data, it uses a tagging rule to mark the key term(s) and, then, it transfers the data with the marked term(s) to the mobile communication device. The user may, then, select a marked key term to call/display a data unit that is locally stored on the mobile communication device. The server may also mark terms in data units and a data unit stored on the mobile communication device may be called using a key term that is marked in another data unit. | 12-09-2010 |
20100299456 | MANAGEMENT OF INTERNAL OPERATIONS BY A STORAGE DEVICE - A method of handling internal operations of a storage device includes in response to information derived from one or more commands received from a host device when the storage device is coupled to the host device, determining whether a sequence of commands is in one of an active state, and a first transition state, where in the first transition state the sequence of commands is transitioning from an inactive state to the active state. The method includes, while the sequence of commands is in the active state or in the first transition state, refraining from executing any operation of a first set of internal memory management operations, each of the first set of internal memory management operations being an extra-sequence operation. | 11-25-2010 |
20100275073 | METHOD AND DEVICE FOR BAD-BLOCK TESTING - Apparatus and methods for effecting bad-block testing operations are disclosed herein. In some embodiments, instead of effecting bad-block testing for the majority of the flash memory blocks of a flash memory device during manufacture, most or all bad-block testing is postponed until the end user is in possession of the flash memory device. In some embodiments, after user data is received by the flash memory device from a host device, one or more blocks of the flash memory device are subjected to bad-block testing. | 10-28-2010 |
20100274962 | METHOD AND APPARATUS FOR IMPLEMENTING A CACHING POLICY FOR NON-VOLATILE MEMORY - The present disclosure relates to methods, devices and computer-readable medium for implementing a caching policy and/or a cache flushing policy in a peripheral non-volatile storage device operatively coupled to a host device. In some embodiments, data is stored to a cache area of a non-volatile memory within the peripheral non-volatile storage device in accordance with a historical rate at which other data was received by the peripheral storage device from the host device and/or a historical average time interval between successive host write requests received and/or an assessed rate at which data is required to be written to the non-volatile memory and/or a detecting by the peripheral non-volatile memory device that the host has read the storage ready/busy flag. In some embodiments, data is copied from a cache storage area of the non-volatile memory to a main storage area in accordance with the historical rate and/or the historical average time interval. | 10-28-2010 |
20100262799 | METHOD AND APPARATUS FOR FACILITATING FAST WAKE-UP OF A NON-VOLATILE MEMORY SYSTEM - A method includes storing at a non-volatile memory in a data storage device a first copy of a memory management table. The method further includes storing, at the non-volatile memory, a list of data entries that identify unused blocks of the non-volatile memory, where the list defines an order of allocating the unused blocks. The method further includes, in response to detecting a power event, accessing an entry of the ordered list to identify a block, and selectively updating the first copy of the memory management table based on a status of the identified block. | 10-14-2010 |
20100262677 | DISTRIBUTED LOCAL WEB-SERVER ARCHITECTURE FOR STORAGE DEVICES - A method includes exchanging information between a local web-server of a local storage device and a remote web-server through a network. The exchange of the information is initiated autonomously by the local storage device upon a determination by the local web server that the information is not stored at the local storage device. | 10-14-2010 |
20100235473 | SYSTEM AND METHOD OF EMBEDDING SECOND CONTENT IN FIRST CONTENT - Apparatus and methods of aggregating content are disclosed. A method includes, at an aggregation server coupled to a communication network, receiving a first request to provide content to a mobile device via the communication network. The first request identifies a first network resource address. The method includes retrieving first content associated with the first request. The first content identifies second content to be embedded in the first content when the first content is displayed at a browser of the mobile device, and the second content is associated with a second network resource address. The method includes retrieving the second content prior to sending the first content to the mobile device. The method also includes sending the second content embedded in the first content to the mobile device. | 09-16-2010 |
20100235329 | SYSTEM AND METHOD OF EMBEDDING SECOND CONTENT IN FIRST CONTENT - Apparatus and methods of aggregating content are disclosed. A data storage device includes a host interface, a controller coupled to the host interface, and a memory array coupled to the controller. The host interface is configured to enable the data storage device to be operatively coupled to the host device. First content includes a reference to a source of second content to be embedded in the first content. The first content is retrievable via access to a resource. Upon retrieval, the reference is replaced by the second content such that the second content is embedded in the first content. The controller is configured to receive data of the resource, such received data including the second content embedded in the first content. The controller is also configured to store the received data at the memory array and, when the data storage device is operatively coupled to the host device, provide the second content embedded in the first content to the host device in response to receiving a request for the first content. | 09-16-2010 |
20100228802 | SYSTEM AND METHOD TO RESPOND TO A DATA FILE DELETION INSTRUCTION - Systems and methods responsive to a data file deletion instruction are disclosed. A method includes receiving an instruction to delete a data file. The data file is stored at a plurality of persistent memory cells of a memory. The memory also stores a directory that includes a first entry corresponding to the data file. In response to receiving the instruction to delete the data file, multiple attribute bits of the first entry are programmed and also a first bit of the first entry is programmed. The first bit of the first entry is distinct from the multiple attribute bits. Programming the multiple attribute bits converts the first entry from a first entry type to a second entry type. Programming the first bit of the first entry indicates that the first entry has an unused status. | 09-09-2010 |
20100217917 | SYSTEM AND METHOD OF FINALIZING SEMICONDUCTOR MEMORY - Systems and methods of finalizing a semiconductor memory are disclosed. A method includes receiving an instruction to finalize data at a data storage device that includes a controller coupled to a semiconductor memory. The data storage device also includes a status indicator to indicate a finalize status of the semiconductor memory. In response to receiving the instruction to finalize the data at the data storage device, the status indicator is set to a finalize value. Write to the semiconductor memory operations are prevented by the controller in response to the status indicator having the finalize value. | 08-26-2010 |
20100217910 | MEMORY CARD AND HOST DEVICE - An apparatus includes a first Universal Serial Bus (USB) connector and a card holder associated with the first USB connector. A controller including a USB host interface is coupled to the first USB connector. A housing enclosing the controller and at least partially enclosing the card holder has an opening that is dimensioned to enable insertion of a memory card into the card holder. The first USB connector is configured to connect to a second USB connector of the memory card when the memory card is inserted into the card holder. | 08-26-2010 |
20100216341 | MEMORY CARD AND HOST DEVICE - A data storage device includes a memory card structure having an edge connector portion. The edge connector portion has a thickness that complies with a memory card specification. The data storage device also includes an electrical connector portion of a Universal Serial Bus (USB) compatible receptacle or of an Institute of Electrical and Electronic Engineers (IEEE) 1394 compatible receptacle. The electrical connector portion is attached within the edge connector portion of the memory card structure to remain stationary with respect to the memory card structure. | 08-26-2010 |
20100211872 | USER-APPLICATION INTERFACE - A user interface apparatus includes a display device, display application, and processor. The display device includes a display area, and the display area includes an active area. The processor and display application are configured to display application stacks, each of which may be moved into and out of the active area in response to user input, and each of which contains one or more stack cards. Each application stack is associated with a computer application, and each stack card represents a content entity capable of being operated on by the computer application corresponding to its application stack. When an application stack is in the active area the application stack is activated such that its stack cards are displayed in sequence and at least one of them may be selected. Selecting a stack card causes the corresponding computer application to be executed and to operate on the corresponding content entity. | 08-19-2010 |
20100205350 | SYSTEM AND METHOD OF HOST REQUEST MAPPING - Systems and methods for reading data are disclosed. In a particular embodiment, a data storage device includes a host interface that is adapted to couple the data storage device to a host. The host includes memory that is addressable by a host memory address space. The data storage device also includes a device address space that is independent from the host memory address space. The device address space includes a first address region and a second address region, where the second address region is distinct from the first address region. The data storage device also includes a non-volatile memory array and a controller coupled to the non-volatile memory array and further coupled to a mapped device. The controller is adapted to, in response to a first request from the host for access to the first address region of the device address space, perform a memory access operation at the non-volatile memory array. The controller is also adapted to, in response to a second request from the host for access to the second address region of the device address space, map the second request to the mapped device. | 08-12-2010 |
20100195384 | SYSTEM AND METHOD TO READ DATA SUBJECT TO A DISTURB CONDITION - Systems and methods for reading data are disclosed. In a particular embodiment, a method includes measuring characteristics of a plurality of cells at a memory. The characteristics correspond to a plurality of values including a first value stored at a particular cell and a second value stored at a second cell of the memory. The method includes testing whether at least some of the plurality of values match a particular pattern correlated to a disturb condition at the particular cell, and providing a data value corresponding to the particular cell. The data value is determined at least in part based on a result of the testing. | 08-05-2010 |
20100191879 | HOST-PERIPHERAL ADAPTOR - A host-peripheral adaptor includes a host adaptor and a portable peripheral adaptor. The host adaptor includes a substantially flat peripheral-adaptor-side interface. The peripheral-adaptor-side interface is designed in a way that it is not easy to tamper with. The portable peripheral adaptor includes a host-adaptor-side interface that is designed to operatively connect to the peripheral-adaptor-side interface of the host adaptor. The portable peripheral adaptor also includes one or more peripheral-side interfaces for accommodating one or more peripheral devices such as a storage media. The portable peripheral adaptor and the host adaptor include a set of data lines and the host adaptor also includes circuitry for recognizing the specific type of a peripheral device and, based on its specific type, for setting a suitable communication path to transfer data between a host and the peripheral device. | 07-29-2010 |
20100169780 | STORAGE DEVICE MANAGING PLAYABLE CONTENT - Displaying storage device-generated menus for playback includes connecting a storage device to a host capable of playing back video content, and presenting to the host a root directory through which a content selection file allows selecting video files for playback through user-storage device interaction, and, optionally, one or more service files that provide various useful information that are also playable back through user-storage device interaction. This typically further includes displaying a Main Menu that represents these files and playing Main Menu items as regular video files/contents. While the content selection file is played back, a content selection menu is generated by the storage device and displayed by the host, and each content selection menu item is playable by transmitting a playback command to the storage device rather than to the host. A storage device is also provided, which uses such method. | 07-01-2010 |
20100169595 | STORAGE BACKUP - A storage system includes a secondary data store for backing up the primary data store, a deleted data store for retention of deleted data, and a data management application for managing the backing up of stored and deleted data of the primary data store. The deleted data store may be either separate from the secondary data store or implemented within the secondary data store. The data management application may automatically free up space for backup of data newly added to or deleted from the primary data store, by selectively removing data from the deleted data store, based application of appropriate criteria. | 07-01-2010 |
20100169395 | DEVICE AND METHOD FOR FILTERING A FILE SYSTEM - A host is provided with a filtered file system based on the native file system of a local storage device and other relevant factors. A filter interfaces with the local storage device and the host, and a controller reads the native file system, establishes access criteria for the host, and creates a logical structure of sectors in a volatile memory based on the access criteria to provide the filtered file system. The filter can also use a given host to read the native file system and to create the logical structure of sectors based on access criteria established for a different host. | 07-01-2010 |
20100169394 | METHOD AND APPARATUS FOR PROVIDING ACCESS TO FILES BASED ON USER IDENTITY - A storage device provides a file system to a host based on the access rights of a user determined during authentication. If the authentication does not succeed, the storage device provides to the user a file system restricted to files authorized by public access rights. If the authentication does succeed, and the user is a device owner, the storage device provides to the user the native file system. If the authentication succeeds, and the user is not a device owner, the storage device provides a file system that is restricted to files that the given user is authorized to access. Due to the internal nature of the mechanism for safeguarding files, this security measure cannot be circumvented by simply connecting the storage device to another host that does not respect the permission rules of the file system. | 07-01-2010 |
20100169393 | STORAGE DEVICE PRESENTING TO HOSTS ONLY FILES COMPATIBLE WITH A DEFINED HOST CAPABILITY - A method includes defining a host capability; creating for a storage device a second directory tree from a first directory tree of the storage device that is included in a file system within the storage device; and, for a data file that is stored in the storage device and is selectable for consumption by a host through the first directory tree that is included in the storage device's file system, determining whether the data file requires for consumption a host having the defined host capability. If the data file requires a host having the defined host capability, an entry is created in the second directory tree in which the data file is not selectable for consumption by the host. Otherwise, an entry is created in the second directory tree in which the data file is selectable for consumption by the host. Subsequent to connecting the storage device to a host if the host has the defined capability the first directory tree of the storage device is used to present a view of the file system of the storage device to the host, and if the host does not have the defined capability the second directory tree is used to present a modified view of the file system to the host in which a data file not requiring the defined capability would be selectable for consumption by the host and in which a data file requiring the defined capability would not be selectable for consumption by the host. | 07-01-2010 |
20100153673 | DATA ACCESS AT A STORAGE DEVICE USING CLUSTER INFORMATION - Systems and methods for accessing data at a data storage device are disclosed. In a particular embodiment, a method includes receiving cluster information at a controller of a data storage device, the data storage device further including a memory, the cluster information being associated with a data file that is stored at the memory. The method also includes accessing the cluster information to locate at least one region of the memory corresponding to the data file. The method further includes accessing data from the data file at the at least one region of the memory that is identified by the cluster information. Accessing of data from the data file includes the controller executing an internal application. | 06-17-2010 |
20100153474 | DISCARDABLE FILES - Files stored, or to be stored, in a storage device are marked either as non-discardable or as discardable in a file system structure associated with a storage device. Each discardable file has associated with it a discarding priority level. A publisher file is permitted to be stored in the storage device only if storing the publisher file does not narrow a storage usage safety margin that is reserved for user files. User files are allowed to be stored in the storage device even if storing them narrows the storage usage safety margin but, in such cases, the storage usage safety margin is restored by removing one or more discardable files from the storage device. A discardable file is removed from the storage device if its discarding priority level equals or is higher than a predetermined discarding threshold value. | 06-17-2010 |
20100147041 | TETHERING ARRANGEMENT FOR PORTABLE ELECTRONIC DEVICES - In a portable electronic device having an anti-theft functionality and a separate user-operable useful functionality, a method of using the portable electronic device includes operating the user-operable useful functionality; using the anti-theft functionality, wherein using the anti-theft functionality includes inserting an anchor into a socket of the portable electronic device, the anchor being connected to an object separate from the portable electronic device; locking the anchor in the socket to thereby secure the anchor to the portable electronic device; and unlocking the anchor from the socket upon verifying an unlock code that is received at the portable electronic device. The portable electronic device includes a locking mechanism switchable between a locked position in which the anchor is secured to the socket, and an unlocked position in which the anchor is not locked in the socket. The portable electronic device has a processor that is adapted to execute the user-operable useful functionality, receive an unlock code, and to transition the locking mechanism into the unlock position upon verifying the received unlock code. | 06-17-2010 |
20100138580 | MEMORY CARD ADAPTER - A card adapter includes a plurality of memory card interfaces for interfacing with a plurality of memory cards, each of the memory cards having its own file system, and a host interface for interfacing a host of the memory cards. A controller of the card adapter interfaces with the plurality of memory card interfaces and with the host interface and controls operation of the memory cards. The card adapter may have several modes of operation, one of which involves emulating, on the host, by the controller, a virtual file system that represents a unified image of the file systems of two or more memory cards. In another mode of operation of the card adapter the controller establishes presents to the host only one file system of a memory card. | 06-03-2010 |
20100131697 | METHODS FOR TAG-GROUPING OF BLOCKS IN STORAGE DEVICES - Embodiments described herein disclose methods, devices, and media for storing data. Methods including the steps of: receiving data to be stored in a memory that includes at least three blocks, wherein each block, for storing the data, has at least one metadata value, associated with each block, that is dependent upon a writing time of each block; grouping at least three blocks into at least two block groups, wherein at least one block group contains at least two blocks; associating a respective metadata value with each block group; and associating the respective metadata value of a respective block group with each block storing the data contained in the respective block group, without storing a dedicated copy of at least one metadata value for each block. In some embodiments, at least one metadata value is stored in a block-group table. | 05-27-2010 |
20100127835 | METHOD AND APPARATUS FOR SELECTIVELY FACILITATING ACCESS TO RFID DATA - Methods and apparatus for selectively facilitating access to RFID data of one more RFID tags within a faraday cage are disclosed herein. In some embodiments, (i) an external RFID interrogation signal is received (for example, by one more external antennae deployed outside of the faraday cage; (ii) a determination is made if access to RFID data of one more RFID tags within the faraday cage is permitted; and (iii) contingent on the determining that access from outside of the faraday cage is permitted, access is provided to RFID data of one or more RFID tag(s) within the faraday cage. This access providing may include the steps of: i) in response to the received external RFID interrogation signal, interrogating inside the faraday the cage one or more RFID tags; ii) receiving an RFID response from one or more of the interrogated RFID tags; and iii) transmitting to outside the faraday cage the received RFID response. | 05-27-2010 |
20100122054 | COPY SAFE STORAGE - A data storage device provides information to an application while protecting the information from being copied. Particularly, the data storage device may include a detector to detect an access to an indicator. The indictor may be integrated with the information in such a way that a copy application will access the indicator when copying the information but another application using the information (e.g. a database application) will not access the indicator. The data storage device may further be configured to undertake a defensive response when access to the indicator is detected. Defensive responses may include terminating the access, issuing a report, or sending spurious data to the host. The configuration of the indicator and timing of the response may be chosen to impede separation of the indicator from the data. | 05-13-2010 |
20100115177 | DATA STORAGE DEVICES - A data storage device includes a non-volatile memory array, a user input device, and a host interface adapted to connect the data storage device to a host device and convey data to the host device. In response to a first operation of the user input device, application configuration data is communicated from the data storage device to the host device. The application configuration data is configured to trigger execution by the host device of a configuration application that includes a listing of a plurality of applications for display by the host device allowing a user to identify a selected application. In response to selection of an application, application designation data is generated and stored in the non-volatile memory array. In response to a second operation of the user input device, the application designation data is communicated to the host device to trigger automatic execution by the host device of the selected application. | 05-06-2010 |
20100106890 | METHOD AND APPARATUS FOR ENFORCING A FLASH MEMORY CACHING POLICY - Methods, apparatus and computer medium for enforcing one or more cache management policies are disclosed herein. In some embodiments, a flash memory of a storage device includes a plurality of flash memory dies each flash memory die including a respective cache storage area and a respective main storage area. A determination is made, for data that is received from an external host device to which main storage area the received data is addressed thereby specifying one of the plurality of flash memory dies as a target die for the received data. Whenever the received data is written into a cache storage area before being written into a main storage area, the received data is written into the cache storage area of the specified target die. | 04-29-2010 |
20100106886 | Transparent Self-Hibernation of Non-Volatile Memory System - A memory system self-initiates hibernation mode and responds to host commands issued during hibernation within a host protocol timeout period. Hibernation mode is entered after controller state data has been stored and while no host command to the memory system is pending. Power to volatile data storage is diminished during hibernation mode. Upon receiving a host command during hibernation mode, power is restored and a reduced portion of the controller state data is read from non-volatile memory. A removable data storage device or a portable electronic device with embedded data storage may be constructed with such a self-hibernating memory system. | 04-29-2010 |
20100090834 | WEARABLE DEVICE FOR ADAPTIVELY RECORDING SIGNALS - A condition of a subject is monitored by a wearable recording unit that adaptively records various signals associated with the condition of the subject. The various signals are recorded by the wearable recording unit using a recording plan that is contextually adaptively updated to the monitored subject from one recording session to another based on the result of the analysis of previous recording sessions. | 04-15-2010 |
20100057992 | PORTABLE STORAGE DEVICE WITH AN ACCELERATED ACCESS SPEED - A storage device has two connectors for transferring data files: a first connector through which data files can be transferred at an accelerated speed, and a second connector through which data files can be transferred at a conventional speed. According to the present disclosure a user can select the speed (i.e., “normal speed” or “accelerated speed”) at which s/he wants to transfer a data file from a host to the storage device, and vice versa, by connecting the host to the proper connector of the storage device. The first connector is internally connected to a plurality of controllers that facilitate data transfers at the accelerated speed, and the second connector is internally connected to a controller that facilitates data transfers at the normal speed. | 03-04-2010 |
20100049913 | MANAGING MULTIPLE CONCURRENT OPERATIONS WITH VARIOUS PRIORITY LEVELS IN A LOCAL STORAGE DEVICE - Techniques for rendering the management of processes supported by a storage device are described. In particular, the efficient allocation of storage array processing resources when managing concurrent processes on a storage array is described. | 02-25-2010 |
20100036998 | STORAGE SYSTEM AND METHOD FOR MANAGING A PLURALITY OF STORAGE DEVICES - A method of managing operation of a plurality of storage devices includes receiving current consumption information from at least one of the plurality of storage devices; and managing operation of at least one storage device, the operation management including permitting current consumption of a first one of the storage devices based on current consumption information that pertains to at least a second one of the storage devices. Also provided is a storage system that includes a plurality of storage devices, where each storage devices is configured to store data. A state machine, connected to each of the storage devices, is operative to permit current consumption of a first storage device based on current consumption information pertaining to at least a second storage device. | 02-11-2010 |
20100034042 | POWER CONSUMPTION-ORIENTED MANAGEMENT OF A STORAGE SYSTEM - A method of managing operation of a plurality of devices that includes receiving operational information that pertains to each of a plurality of device and managing operation of at least one of the plurality of devices. Each of the plurality of devices is configured to perform operations, the operations including sub-operations. The operation management includes associating parameters for a given sub-operation of a device based on 1) operational information pertaining to at least one of the plurality of devices and on 2) a maximum allowable current consumption level. Also provided is a system that includes a plurality of devices and a controller that is operationally connected to each of the plurality of devices for setting values for parameters of a device for a given sub-operation based on 1) operational information pertaining to at least one of the devices and on 2) a maximum allowable current consumption level of the system. | 02-11-2010 |
20100030982 | BACKING UP DIGITAL CONTENT THAT IS STORED IN A SECURED STORAGE DEVICE - A third party facilitates preparation of a backup SSD for backing up a source SSD. Digital data of the source SSD, which includes protected and sensitive data and information, is copied to the backup SSD either by and via the third party or directly from the source SSD but under supervision of the third party. The digital data of the source SSD is copied to the backup SSD under stringent rules and only if each party (i.e., the source SSD, destination SSD, and third party) proves to a counterpart device with which it operates that it is authorized to send to it digital data or to receive therefrom digital data, depending on the device with which that party operates. | 02-04-2010 |
20100030963 | MANAGING STORAGE OF CACHED CONTENT - A method of controlling storage of content on a storage device includes communicating with a storage device configured to cache content; and determining a storage cost for caching a first set of data objects on the storage device. The determining is based, at least in part, on characteristics of the first set of data objects and on characteristics of the storage device. Also provided is a storage system that includes a storage device capable of caching media content, a storage device agent and a cache manager. The storage device agent is operative to communicate with the storage device and with the cache manager, and to provide a storage cost to the cache manager. The storage device agent determines the storage cost for caching a data object on the storage device based, at least in part, on characteristics of the data object and on characteristics of the storage device. | 02-04-2010 |
20100030929 | DEVICE FOR CONNECTION WITH A STORAGE DEVICE AND A HOST - A dual-interface connector for providing an interface to a storage device and an interface to a host and for connecting between a storage device and a host includes a storage device interface, for connecting with a storage device, and a host interface, for connecting with a host. A controller is operable in at least two distinct modes of operation. In a first mode of operation, the controller enables a session to be opened, by the host, between the storage device and the host when the storage device is connected to the storage device interface and the host is connected to the host interface. In a second mode of operation, the controller is operative, if an open session exists between the storage device and the host, to maintain the open session between the storage device and the host even after the storage device is disconnected from the storage device interface. | 02-04-2010 |
20100023718 | Methods For Data-Smuggling - The present invention discloses methods for an application, running on a host system, to access a restricted area of a storage device, the method including the steps of: providing a file system for running on the host system; restricting access, by the file system, to the restricted area; sending an indication, from the application to the storage device, that data being sent by the application to the storage device via the file system is intended for the restricted area; detecting the indication in the storage device; and making the data, residing in the restricted area, available for reading by the application upon receiving an application request. Preferably, the method further includes the step of: releasing wasted areas, of the storage device, for use by the file system. Preferably, the method further includes the step of: copying non-restricted data from a non-restricted area into the restricted area. | 01-28-2010 |
20100017809 | METHODS FOR ENABLING SOFTWARE IN STORAGE-CAPABLE DEVICES - Methods for enabling software from a storage-capable device including the steps of: loading, by a host system operationally connected to the storage-capable device, software from an authenticatable storage area residing in the storage-capable device; validating the software; and installing the validated software, wherein the validated software provides an interface between the host system and the storage-capable device. In some embodiments, the software is enabling software, the method further including the step of: loading, by the host system, device-functionality software from the authenticatable storage area. In some embodiments, the method further includes the steps of: validating the device-functionality software; and enabling the validated device-functionality software. In some embodiments, the method further includes the steps of: prior to the step of loading the software, executing a probe command in the host system; and returning, by the probe command, a list of device functional units residing in the storage-capable device. | 01-21-2010 |
20100011351 | DYNAMIC FILE SYSTEM RESTRICTION FOR PORTABLE STORAGE DEVICES - A method of installing an application on a portable storage device is disclosed. The method includes receiving file system commands issued by an installer application and selectively intercepting and modifying at least one file system command before the at least one file system command is executed with respect to a destination file system. The method restricts access to a first file system located at a fixed storage memory device and directs access to a second file system located on the portable storage device. | 01-14-2010 |
20100011163 | PORTABLE DEVICE FOR MANAGING MEMORY CARDS - A portable device includes n (n≧2) electrical sockets, each of which is configured to accommodate and to electrically engage a removable external memory card; an input device for selecting accommodated and electrically engaged external memory cards for data reading; and an output device for outputting information that is derived from or related to data read from such selected electrically engaged external memory cards. The information may pertain to digital content of the selected external memory card, to the identity of the selected external memory card, or to the storage capacity of the selected external memory card. | 01-14-2010 |
20090327529 | DATA STORAGE DEVICE WITH MULTIPLE PROTOCOLS FOR PRELOADING DATA - A system uses multiple communication modes for fast uploading of a datum preloaded from a manufacturing device to a data storage device over existing external contacts of the data storage device. Preferentially the data storage device is a high capacity SIM card and a user mode allows communication by standard protocols such as ISO, SD/MMC and USB whereas a manufacturer mode applies a multi data line SD/MMC protocol or a custom protocol for high speed data uploading. | 12-31-2009 |
20090327528 | DATA STORAGE METHOD WITH MULTIPLE PROTOCOLS FOR PRELOADING DATA - A method uses multiple communication modes for fast uploading of a datum preloaded from a manufacturing device to a data storage device over existing external contacts of the data storage device. Preferentially the data storage device is a high capacity SIM card and a user mode allows communication by standard protocols such as ISO, SD/MMC and USB whereas a manufacturer mode applies a multi data line SD/MMC protocol or a custom protocol for high speed data uploading. | 12-31-2009 |
20090319872 | FAST, LOW-POWER READING OF DATA IN A FLASH MEMORY - A memory includes cells at intersections of word lines and bit lines, word and bit line selection mechanisms and a programming mechanism. The cells on each bit line are connected in series. Cells of a word line are programmed simultaneously. For low-power reading, only some of the bit lines that intersect the word line at the programmed cells are selected and only the cells at those intersections are sensed. Another type of memory includes a physical page of cells, a sensing mechanism and a selection mechanism. Hard bits are sensed from all the cells of the physical page. Only some of those cells are selected for sensing soft bits. Another memory includes a plurality of cells, a sensing mechanism, an export mechanism and a selection mechanism. Hard and soft bits are sensed from all the cells of the plurality. Only some of the soft bits are selected for export. | 12-24-2009 |
20090319859 | METHOD AND APPARATUS FOR ERROR CORRECTION ACCORDING TO ERASE COUNTS OF A SOLID-STATE MEMORY - Embodiments of the present invention relate to methods and devices where an erase count is maintained for at least one block of solid state memory. Errors are corrected in data read from the solid state memory in accordance with the associated erase count of the memory block. In some embodiments, one or more of the following error-correction operations may be effected according to the associated erase count of a memory block from which the data is read: (i) a decoder and/or decoder mode is selected; (ii) a decision to attempt correcting errors using a lighter-weight weight decoder (mode) and/or heavier weight decoder (mode) and/or faster decoder (mode) and/or slower decoder (mode) is made; (iii) a mode transition and/or error correction attempt resource budget is determined; (iv) a number of soft bits is determined; and (v) a decoding bus width size is selected. | 12-24-2009 |
20090319843 | METHOD AND APPARATUS FOR ERROR CORRECTION - Methods, apparatus and computer readable medium for handling error correction in a memory are disclosed. In some embodiments, after an attempt is made to write original data to a ‘target’ memory, data is read back from the target memory in a ‘first read operation’, thereby generating first read data. After the first read operation, the first read data is compared to the original data and/or an indication of a difference between the original data and the first data is determined. The information obtained by effecting the data-comparison and/or information related to the difference indication is used when correcting errors in data read back from the target memory in a ‘second read operation.’. The presently-disclosed teachings are applicable to any kind of memory including (i) non-volatile memories such as flash memory, magnetic memory and optical storage and (ii) volatile memory such as SRAM or DRAM. | 12-24-2009 |
20090319722 | AD HOC FLASH MEMORY REFERENCE CELLS - In a nonvolatile memory, that includes cells organized in a plurality of bit lines and a plurality of word lines, user data are stored in respective portions of each of two of the word lines. Control information is stored in a cell that is common to one of the bit lines and one of the two word lines. A cell that is common to the bit line and the other word line is used as a reference cell. A flash memory, that includes a plurality of primary cells and a plurality of spare cells, is interrogated to determine which spare cells have been used to replace respective primary cells. At least some of the other spare cells are used as reference cells. | 12-24-2009 |
20090310413 | REVERSE ORDER PAGE WRITING IN FLASH MEMORIES - To store, in a memory block whose word lines are written successively in a word line writing order, a plurality of data pages that are ordered by logical page address, the pages are written to the word lines so that every page that is written to any one of the word lines has a higher logical page address than any page that is written to a subsequently written word line, regardless of the sequence in which the pages are received for writing. Alternatively, the pages are written to the word lines so that for every pair of written word lines, the word line of the pair that is earlier in the writing order has written thereto a page having a higher logical page address than at least one page written to the other word line of the pair. | 12-17-2009 |
20090307452 | STORAGE DEVICE HAVING AN ANTI-MALWARE PROTECTION - A storage device is protected, when interfaced with a host device, by operating a security processor of the storage device in a “security” mode in which the security processor filters commands that are received from the host device and are targeted to the storage controller, and upon determining by the security processor that the “security” mode is no longer required, by operating the security processor in a “safe” mode in which the security processor (i) does not filter commands it receives from the host device and (ii) forwards to a storage controller of the storage device such unfiltered commands. | 12-10-2009 |
20090300227 | METHOD OF MONITORING HOST ACTIVITY - A method of using a device, including monitoring host activity in an autonomous manner, without the host reporting to the device about its activity. The method also including initiating communications from the device and using resources of the host for such communications, thereby enabling the device to function as a proactive device. | 12-03-2009 |
20090276562 | Flash cache flushing method and system - A flash memory system that uses repeated writing of the data to achieve stable storage, is adapted for efficient cache flushing operations by utilizing a part of the non-volatile flash memory array as a designated buffer for the data, in which data integrity is retained until all repeat writing thereof is complete. Repeated writing is carried out from the designated buffer directly to the final storage locations in the flash memory array, for example using simple internal copy back operations. | 11-05-2009 |
20090265598 | USING PROGRAMMING-TIME INFORMATION TO SUPPORT ERROR CORRECTION - Methods, apparatus and computer readable medium for handling error correction in a memory are disclosed. In some embodiments, first data is written to the memory, and a value(s) of an operational parameter(s) that is a consequence of the writing of the first data is determined. Second data is read from the memory, and the value(s) of the operational parameter(s) may be used when correcting errors in the second data. In some embodiments, the first data is the same as the second data. The presently-disclosed teachings are applicable to any kind of memory including (i) non-volatile memories such as flash memory, magnetic memory and optical storage and (ii) volatile memory such as SRAM or DRAM. | 10-22-2009 |
20090259808 | Methods of Sanitizing a Flash-Based Data Storage Device - A data storage device includes one or more non-volatile, blockwise erasable data storage media and a mechanism for sanitizing the media in response to a single external stimulus or in response to a predetermined physical or logical condition. Optionally, only part of the media is sanitized, at a granularity finer than the blocks of the medium. Setting a flag in an auxiliary nonvolatile memory enables an interrupted sanitize to be detected and restarted. Optionally, a “death certificate” verifying the sanitizing is issued. Preferably, the media are configured in a manner that allows atomic operations of the sanitizing to be effected in parallel. | 10-15-2009 |
20090259797 | METHOD, APPARATUS AND COMPUTER READABLE MEDIUM FOR STORING DATA ON A FLASH DEVICE USING MULTIPLE WRITING MODES - Methods, apparatus and computer readable medium for writing data into a flash memory device are disclosed. In some embodiments, the data is written in a writing mode selected in accordance with an extent to which the flash memory storage device or a flash die thereof is full of previously-stored data. The presently disclosed techniques may be implemented on the “device-side” (for example, by a device controller of the flash device) and/or on the “host-side.” In some embodiments, the selected writing mode is a bits-per-cell density mode. In some embodiments, the selected writing mode is a “slower” or “faster” writing mode. The presently disclosed techniques relate to SBC as well as MBC devices. | 10-15-2009 |
20090259785 | DIRECT DATA TRANSFER BETWEEN SLAVE DEVICES - In one aspect, a method of transferring data over a plurality of communication lines is described. A first command is sent from a master device coupled with the communication lines to a first destination slave device coupled with the communication lines instructing the first destination slave device to listen to and write data from the communication lines starting at a first time. A second command is sent from the master device to a second source slave device coupled with the communication lines instructing the second source slave device to read and output first data onto the communication lines starting at or after the first time. In this way, the first data output from the second source slave device beginning at the first time is stored by the first destination slave device beginning at the first time without requiring first transferring the data to the master device or any other device. | 10-15-2009 |
20090259784 | PERIPHERAL DEVICE LOCKING MECHANISM - A computing system having a host device and at least one client device having a lock used to prevent modification of data in the client device. A lock clear signal from the host device causes the client device to clear a lock used to prevent modification of data stored in at least a protected portion of the client device where the client device remains fully operational. | 10-15-2009 |
20090205384 | ELECTROMECHANICAL LOCKING SYSTEM - An electromechanical locking system includes a locking mechanism that is switchable between a locked position and an unlocked position, a keyway for receiving a rotatable key, a latch, and an angle detector for detecting an angular orientation of the key while the key is in the keyway. After detecting a sequence of angular orientations of a key, the angle detector may issue a corresponding angle sequence data. A lock controller controls the latch in accordance with an authentication data that has been received from the key and the issued angle sequence data that reflects a combination code. If the authentication data and the angle sequence data are both valid, the lock controller enable operation of the latch, whether automatically or manually. The key includes a light source that projects a light beam at an acute angle in order to provide a visual indication of a current angular orientation of the key. | 08-20-2009 |
20090198869 | ERASE COUNT RECOVERY - An erase count of a flash memory block which is lost, e.g., due to power failure is updated or replaced by using known erase counts of other blocks of the flash memory. A flash management algorithm assigns a new erase count value instead of the lost one based on either a maximum value, an average value or a value combining the maximum value of the known erase counts and some tolerance value. The known values may be obtained from wear leveling data or from a stored erase history. | 08-06-2009 |
20090191918 | GENERIC IDENTITY MODULE FOR TELECOMMUNICATION SERVICES - An identity module includes a memory and a processor. In the memory are stored installation code for installing in the memory a provider profile that associates the identity module with a communication services provider and communication code that, in combination with the provider profile, supports communication by a host of the identity module using services of the communication services provider. The processor executes the installation code to install the provider profile and then executes the communication code in support of the communication. Preferably, no portion of any such communication suite is stored initially in the identity module. The host requests the provider profile from a server that includes a communication interface for communicating with the host, a memory wherein is stored code for providing to the host a customization suite that includes substantially all of the provider profile, and a processor for executing the code. | 07-30-2009 |
20090191916 | GENERIC IDENTITY MODULE FOR TELECOMMUNICATION SERVICES - An identity module includes a memory and a processor. In the memory are stored installation code for installing in the memory a customization suite that associates the identity module with a communication services provider and communication code that, in combination with the customization suite, supports communication by a host of the identity module using services of the communication services provider. The processor executes the installation code to install the customization suite and then executes the communication code in support of the communication. Preferably, no portion of any such communication suite is stored initially in the identity module. The host requests the customization suite from a server that includes a communication interface for communicating with the host, a memory wherein is stored code for providing substantially the entire customization suite to the host, and a processor for executing the code. | 07-30-2009 |
20090191843 | METHOD OF RECRUITING A NEW SUBSCRIBER TO A COMMUNICATION SERVICES PROVIDER - To recruit a new subscriber to a communication services provider, when a request is received, from a host of an identity module that lacks any portion of a provider profile that associates the identity module with a communication services provider, to provide a customization suite for installing substantially all of the provider profile in the identity module, terms of usage are proposed to the host. If the host consents to the terms of usage, the customization suite is sent to the host. | 07-30-2009 |
20090177848 | METHODS AND SYSTEMS FOR CLASSIFYING STORAGE SYSTEMS USING FIXED STATIC-IP ADDRESSES - A storage system for exchanging data with a host system, the storage system including a plurality of storage devices, each of the storage devices including: a non-volatile memory, wherein a fixed static-IP address resides in the non-volatile memory, the fixed static-IP address being common to two or more of the plurality of storage devices, and the fixed static-IP address providing enablement of a storage-device functionality of the storage device; a physical interface for operationally connecting the storage device with the host system; and a memory controller for: controlling the respective non-volatile memory; and exchanging data, using a communication protocol, via the respective fixed static-IP address. For at least one of the storage devices, the respective fixed static-IP address may be pre-loaded into the respective non-volatile memory during manufacture, or installed in the respective non-volatile memory after manufacture. | 07-09-2009 |
20090177781 | METHODS AND SYSTEMS FOR COMMUNICATING WITH STORAGE SYSTEMS USING SLIM IP STACKS - Methods, and associated devices, media, and systems, for establishing a communication link between a host system and a storage device are provided. Such a method includes the steps of: providing a communication stack having only an application layer and a physical layer; and establishing a communication channel between a host system and the storage device using the communication stack. The step of establishing may be performed via a TCP/IP emulator in a host-system side and a storage-command interpreter in a storage-device side. The method may further include: establishing a communication channel between the host system and a device having a static-IP address; and establishing a communication channel between the host system and a device having a storage identifier that is embedded into one of command parameters sent by the application layer or the physical layer to the TCP/IP emulator. | 07-09-2009 |
20090175132 | INITIATING PLAYING OF DATA USING AN ALARM CLOCK - An alarm clock device includes a monitor for monitoring a transmission of a selected station, a detector for detecting, in the transmission of the selected station, at least one milestone. A controller operating in response to detection of the milestone is provided to store, in a memory, data of the transmission after the milestone was detected, and to initiate playing of the data at a selected wakeup time. According to the present invention, the data is recorded in response to detecting a transmission of a selected station selected from a plurality of stations. | 07-09-2009 |
20090172694 | CACHE MANAGEMENT - A number of applications can be run by the computing system. Such applications can execute independently from each other and can also each independently manage a corresponding set of content stored on the LSD. One of the advantages presented by the invention is the ability of the LSD to inform one application of the content made available on the LSD by another one of the applications even though the applications have no relationship to each other. In this way, a synergy between the independent applications can be achieved providing a co-operative environment that can result in, for example, improved operation of the computing system, improved resource (i.e., memory, bandwidth, processing) allocation and use, and other factors. | 07-02-2009 |
20090172400 | DIGITAL CONTENT DISTRIBUTION AND CONSUMPTION - Digital content distribution and consumption that provides the advantages of digital content being locally stored under user control while concurrently having the widest acceptance by legacy players/platforms (i.e., no need to perform complex software integration) while still remaining compatible with state of the art security in order to satisfy content provider requirements. | 07-02-2009 |
20090172333 | STORAGE DEVICE COORDINATOR AND A HOST DEVICE THAT INCLUDES THE SAME - A storage device coordinator intercepts a memory command issued by a host device and intended for a target storage device which is one of a plurality of storage devices, and, if the memory command is not optimal, transforms the memory command into one or more storage commands, each being associated with a respective storage device selected from the plurality of storage devices according to an optimization rule. A host device is also provided, which includes the storage device coordinator. A data storage system is also provided, which includes the storage device coordinator. | 07-02-2009 |
20090172307 | STORAGE DEVICE WITH TRANSACTION INDEXING CAPABILITY - In one aspect, a system for indexing transactions over a plurality of communication lines is described. In various embodiments, the system includes a host controller and a plurality of storage devices in communication with one another. Each of the storage devices is configured to store data. The communication lines facilitate communications between the host controller and the plurality of storage devices. A selected one of the storage devices is configured to function as a transaction indexer to monitor the communication lines and index and store selected transaction information associated with operations that occur over the communication lines. While the host controller may be arranged to configure the transaction indexer, the transaction monitoring, indexing and storing are performed substantially automatically by the transaction indexer without requiring further instructions from the host controller. | 07-02-2009 |
20090172276 | STORAGE DEVICE HAVING REMOTE STORAGE ACCESS - A method of servicing a command sent from a host device file system (HDFS) within a host device (HD) by a local storage device (LSD) in communication with the HD is described. The method includes receiving a first command at the LSD instructing the LSD to execute an operation on associated logical addresses. If the first command is associated with at least a first set of logical addresses, the method includes servicing the first command by the LSD at least by way of sending a second command to a device (RD) external to the LSD that instructs the RD to execute an operation on memory locations within the RD. If the first command is not associated with the first set of logical addresses, the method includes servicing the first command by the LSD only by way of operations executed by the LSD on memory locations within the LSD. | 07-02-2009 |
20090172275 | DATA USAGE PROFILING BY LOCAL STORAGE DEVICE - A local storage device (LSD) is provided configured to have a host device (HD) in communication with the LSD. The LSD includes a memory array. The LSD is configured to characterize data access usage of the LSD by at least one program executing on the HD. The LSD is configured to monitor access to the LSD as a result of data access operations by the HD relative to the memory array of the LSD. The LSD is additionally configured to determine characteristics of the monitored access. The LSD is additionally configured to, based on characteristics of the monitored access, determine and store data on the LSD indicative of the characterized monitored access. | 07-02-2009 |
20090172274 | STORAGE DEVICE HAVING DIRECT USER ACCESS - Various methods, devices and systems are described for providing distributed storage services. A data storage device is capable of initiating a communication session with an external entity such as a local host computer (and vice versa) coupled directly to the data storage device, a remote server computer, or directly with remote data storage devices with or without intervention by a local host computer. | 07-02-2009 |
20090172247 | CONTROLLER FOR ONE TYPE OF NAND FLASH MEMORY FOR EMULATING ANOTHER TYPE OF NAND FLASH MEMORY - A controller for one type of NAND flash memory device that emulates another type of NAND flash memory device. The controller may include a host NAND interface to receive host data from a NAND host device, and a data aggregator for aggregating the host data with complementary data, to thereby create device data that is storable in a device page of an array of NAND flash memory cells of the NAND flash memory device. After creating the device data the controller writes the device data into a device page of the NAND flash memory cells. The controller also includes a data parser to parse host data from device data when data read operations are executed by the controller. If required, the controller uses the data parser to parse complementary data from device data to create device data when data writing operations are executed by the controller. | 07-02-2009 |
20090172246 | DEVICE AND METHOD FOR MANAGING INITIALIZATION THEREOF - A host may initialize itself faster by enabling an associated storage device to respond to host access commands under specified conditions before the storage device has completed its own initialization. Embodiments of the invention include a storage device, a controller, a method of servicing commands, and a method of using a host that sends access commands to a storage device. Access commands to a flash memory use logical addresses to reference the memory contents. A controller translates the logical addresses to physical addresses using a mapping table that the controller constructs in volatile memory during initialization based on data retrieved from the flash memory. An access command satisfying a predefined condition is serviced before the controller completes the construction of the mapping table. | 07-02-2009 |
20090172219 | DEVICE AND METHOD FOR AUTOMATICALLY LAUNCHING APPLICATIONS RESIDING ON USB FLASH DRIVES - A USB peripheral device may automatically launch an application residing in its memory after it is connected to a host or after restarting the host if the USB flash drive has already been connected. Alternatively, the USB peripheral \device can automatically launch an application residing on the host or on a network, which is accessible by the host. The USB peripheral device has a USB interface and a controller, which is operative to execute instructions for sending and receiving messages through the USB interface. The controller is further operative, when executing the instructions, to send to a host a stream of emulated keystrokes, which emulated keystrokes cause the host to generate and execute a startup script. Embodiments of the invention include a USB peripheral device able to control a host and a method of using a USB peripheral device to control a host. | 07-02-2009 |
20090172217 | DISTRIBUTED STORAGE SERVICE SYSTEMS AND ARCHITECTURE - Various methods, devices and systems are described for providing distributed storage services. A data storage device is capable of initiating a communication session with an external entity such as a local host computer (and vice versa) coupled directly to the data storage device, a remote server computer, or directly with remote data storage devices with or without intervention by a local host computer. | 07-02-2009 |
20090172211 | STORAGE DEVICE WITH TRANSACTION LOGGING CAPABILITY - In one aspect, a system for indexing transactions over a shared bus is described. In various embodiments, the system includes a host controller and a plurality of storage devices in communication with the bus. Each of the storage devices is configured to store data. The bus facilitates communications between the host controller and the plurality of storage devices. A selected one of the storage devices is configured to function as a transaction indexer to monitor the bus and index and store selected transaction information associated with operations that occur over the bus. While the host controller may be arranged to configure the transaction indexer, the transaction monitoring, indexing and storing are performed substantially automatically by the transaction indexer without requiring further instructions from the host controller. | 07-02-2009 |
20090172050 | DUAL REPRESENTATION OF STORED DIGITAL CONTENT - Various methods, devices and systems are described for providing dual representation of stored digital content are described where the dual representation includes logical block data and corresponding data objects. Data object property information is synchronized with the data objects. | 07-02-2009 |
20090172049 | DEVICE AND METHOD FOR INTEGRATING FILE SYSTEMS - The present invention enables a user to increase storage capacity for a host by using multiple storage devices. File systems are virtualized regardless of any difference in file system format. The invention may be embodied as a device for integrating file systems or as a method of integrating file systems. The device has one or more storage device interfaces for storage devices, a host interface, and a hub connected to the interfaces. The hub creates a virtual file system that aggregates the storage device file systems of storage devices that are connected to the storage device interfaces. The method of integrating file systems includes reading file systems, interpreting them, creating a logical structure containing data of the file systems, and generating in a memory sectors that map the logical structure into a virtual file system. | 07-02-2009 |
20090172040 | FILE SYSTEM THAT MANAGES FILES ACCORDING TO CONTENT - A method of managing a plurality of files according to their respective instances of a property of the files, a data processing device that uses the method, and a computer readable storage medium bearing code for implementing the method. The files of at least one of the instances are managed according to a management protocol respective to that/those instance(s). Preferably, all the other files are managed according to a common default management protocol. Different protocols trade off performance vs. ruggedness, trade off average performance vs. latency, or include different defragmentation policies. | 07-02-2009 |
20090171528 | APPARATUS AND PROCESS FOR RECORDING DATA ASSOCIATED WITH A VEHICLE - The present system for recording vehicle-related data does not involve an elaborate installation procedure and thus may be routinely transferred from one vehicle to the next. The system has a recording module and at least on sensor module. The recording module has a wireless receiver, a processor, a vehicle interface assembly, and a data processor interface. The vehicle interface assembly enables the recording module to detachably connect to the vehicle. The sensor modules have a sensor, a processing subsystem, and a wireless transmitter. The wireless transmitter of a sensor module communicates with the wireless receiver of the recording module. Also disclosed is a method of recording vehicle related data. | 07-02-2009 |
20090164804 | SECURED STORAGE DEVICE - A method of preventing unauthorized access to digital content includes obtaining from a trusted entity a public key of a public-private key pair, encrypting content being received by a storage device using the public key, and storing the encrypted content on the storage device. The public-private key pair includes the public key and a corresponding private key. The content is encrypted on the storage device using the public key so as to be decipherable using a corresponding private key. Access to the corresponding private key is restricted to the trusted entity alone and encrypted content may be decipherable by the trusted entity, only after an indication of authorization for use of the corresponding private key is provided to the trusted entity. Also provided is a method of controlling access to encrypted content that is stored on a storage device operating as a secure storage device. | 06-25-2009 |
20090164746 | METHODS AND DEVICES FOR EXPANDABLE STORAGE - Embodiments described herein disclose methods and devices for expanding the storage capacity in a storage device, including the steps of creating at least one partition in a storage memory of the storage device; designating a reserved-storage area and an enabled-storage area in at least one partition; storing a partition size in a FAT of the storage memory; and upon authorization, increasing the partition size to include sectors in the reserved-storage area, thereby expanding the storage capacity in a storage device. Preferably, the reserved-storage area is not accessible by a host system. Preferably, the partition size is determined from a partition range stored in a master boot record in the storage memory. Most preferably, the partition range is determined from an enabled capacity stored in a memory-management area in the storage memory, and wherein the memory-management area is not accessible by a host system. | 06-25-2009 |
20090150747 | CORRECTION OF ERRORS IN A MEMORY ARRAY - A computer system for correction of errors in a memory array includes an error correction algorithm and a memory. The error correction algorithm is capable of correcting errors up to a first bit error rate in a correctable group of memory cells having a standard size. The memory is operative to store a first set of ECC bits having information corresponding to a first group of memory cells having a first size larger than the standard size, and to store a second set of ECC bits having information corresponding to a second group of memory cells having a second size smaller than said first size and being a portion of said first group. The error correction algorithm is operative to correct errors in the second group based on the second set of ECC bits if a failure occurs in correction of the first group based on the first set of ECC bits. | 06-11-2009 |
20090150703 | SYSTEM AND METHOD FOR NOTIFYING A HOST OF A SERVICE REQUIRED BY A SLAVE STORAGE DEVICE - A host device includes an electrical activity monitoring (EAM) module that is configured to monitor the electrical activity of a slave storage device interfaced with the host device. Responsive to the value of, or change in, the electric current fed to the slave storage device being at or near a certain level, or within a predetermined range, the EAM module notifies the host device that the slave storage device has pending service request(s) or information for the host device. | 06-11-2009 |
20090119782 | METHOD AND DEVICE FOR DIGITAL RIGHTS PROTECTION - Data stored in a memory are provided to a host by monitoring how the host accesses the data, and by responding to a deviation of the access from a dynamic access profile that corresponds to the data, e.g. by terminating the access, by issuing a report of the deviation, or by sending spurious data to the host. Preferably, the dynamic access profile is stored in the memory in association with the data. A data storage device includes a memory for storing the data and an access control mechanism. | 05-07-2009 |
20090113219 | OPTIMIZED HIERARCHICAL INTEGRITY PROTECTION FOR STORED DATA - A method for data integrity protection includes receiving items of data for storage in a storage medium. The items are grouped into multiple groups, such that at least some of the groups include respective pluralities of the items. A respective group signature is computed over each of the groups, thereby generating multiple group signatures. An upper-level signature is computed over the group signatures. Groups of the items, the group signatures, and the upper-level signature are stored in respective locations in the storage medium. | 04-30-2009 |
20090113218 | SECURE DATA PROCESSING FOR UNALIGNED DATA - A method for data cryptography includes accepting input data, which contains a section that is to undergo a cryptographic operation and starts at an offset with respect to a beginning of the input data, by a Direct Memory Access (DMA) module. The input data is aligned by the DMA module to cancel out the offset. The aligned input data is read out of the DMA module, and the cryptographic operation is performed on the section. | 04-30-2009 |
20090113217 | MEMORY RANDOMIZATION FOR PROTECTION AGAINST SIDE CHANNEL ATTACKS - Side channel attacks against a computing device are prevented by combinations of scrambling data to be stored in memory and scrambling the memory addresses of the data using software routines to execute scrambling and descrambling functions. Encrypted versions of variables, data and lookup tables, commonly employed in cryptographic algorithms, are thus dispersed into pseudorandom locations. Data and cryptographic primitives that require data-dependent memory accesses are thus shielded from attacks that could reveal memory access patterns and compromise cryptographic keys. | 04-30-2009 |
20090113215 | FAST UPDATE FOR HIERARCHICAL INTEGRITY SCHEMES - A method for data integrity protection includes arranging data in a plurality of data blocks. A respective block signature is computed over each of the data blocks, thereby generating multiple block signatures. The data blocks and the block signatures in an integrity hierarchy are stored in a storage medium, the hierarchy comprising multiple levels of signature blocks containing signatures computed over lower levels in the hierarchy, culminating in a top-level block containing a top-level signature computed over all of the hierarchy. A modification is made in the data stored in a given data block within the hierarchy. The respective block signature of the given data block is recomputed in response to the modification, and the recomputed block signature is stored in the top-level block for use in verifying a subsequent requests to read data from the given data block. | 04-30-2009 |
20090113214 | SOFTWARE PROTECTION AGAINST FAULT ATTACKS - A method for protecting information in a device includes providing a device with a non-secure hardware domain, a processor having a software-controlled mode of operation, and a secure hardware domain having a secure memory that is inaccessible by the processor when the processor is operating in the software-controlled mode of operation. Data from the non-secure hardware domain is established in the secure hardware domain. Computing operations are executed on the data in the secure hardware domain to produce a result. The secure hardware domain is purged, while retaining the result therein. The result is thereafter returned from the secure hardware domain into the non-secure hardware domain. | 04-30-2009 |
20090113207 | SECURE OVERLAY MANAGER PROTECTION - A method for protection of data includes maintaining a control parameter indicative of a current version of the data. The data is partitioned into multiple segments. Respective signatures of the segments are computed, responsively to the control parameter, the segments and respective signatures forming respective signed input segments, which are stored in a memory. After the signed input segments are stored, a signed output segment is fetched from the memory. The signature of the signed output segment is verified responsively to the control parameter, and the data in the signed output segment is processed responsively to verifying the signature. | 04-30-2009 |
20090113146 | SECURE PIPELINE MANAGER - A method for data storage includes supplying data to and from a host to a storage memory via a secure data path. A first CPU is employed to control operation of the storage memory, and a second CPU is employed to control operation of the secure data path. | 04-30-2009 |
20090113136 | CACHING FOR STRUCTURAL INTEGRITY SCHEMES - A method for data integrity protection includes storing items of data in a plurality of data blocks in a storage medium. Respective block signatures are stored in an integrity structure in the storage medium. A block signature of the given data block is computed in response to a first request to read a first data item from a given data block, and the computed signature is verified against a stored signature read from the integrity structure. The verified block signature is saved in a secure cache. The block signature is recomputed upon receiving a second request to read a second data item, subsequent to the first request, and is verified against the verified block signature in the secure cache. The data item is output from the storage medium in response to verifying the recomputed block signature. | 04-30-2009 |
20090113117 | RE-FLASH PROTECTION FOR FLASH MEMORY - A method for storing data includes providing a memory package including an integrated circuit containing a non-volatile memory and counter circuitry. The data is written to the non-volatile memory. The counter circuitry is operated to maintain a count of write operations performed on the non-volatile memory. The data and the count from the memory package are received at a controller, separate from the memory package, and the data is authenticated in response to the count. | 04-30-2009 |
20090112823 | WRITE FAILURE PROTECTION FOR HIERARCHICAL INTEGRITY SCHEMES - A method for data integrity protection includes arranging in an integrity hierarchy a plurality of data blocks, which contain data. The integrity hierarchy includes multiple levels of signature blocks containing signatures computed respectively over lower levels in the hierarchy, wherein the levels culminate in a top-level block containing a top-level signature computed over the hierarchy. A modification to be made in the data stored in a given data block is received. One or more of the signatures is recomputed in response to the modification, including the top-level signature. Copies of the given data block, and of the signature blocks, including a copy of the top-level block, are stored in respective locations in a storage medium. An indication that the copy is a valid version of the top-level block is recorded in the copy of the top-level block. | 04-30-2009 |
20090110190 | FAST SECURE BOOT IMPLEMENTATION - A method for data storage includes employing a first CPU to execute code from a ROM associated therewith. A second CPU is employed to upload code from a flash memory to a code RAM associated with the first CPU, while the first CPU is available to perform other tasks. | 04-30-2009 |
20090110188 | CONFIGURABLE RANDOM NUMBER GENERATOR - A method for random number generation includes generating random number sequences using a Random Number Generator (RNG) circuit having an externally-modifiable configuration. The RNG circuit generates a first random number sequence having a first measure of randomness, and modifies the configuration of the RNG circuit, causing the RNG circuit to generate a second random number sequence having a second measure of the randomness, indicating a degree of the randomness that is no less than the first measure. | 04-30-2009 |
20090100215 | IDENTITY-BASED FLASH MANAGEMENT - Methods, apparatus, and computer code for effecting flash policy configuration operations in accordance with an end-user identifier and/or a host-instance identifier are disclosed herein. Exemplary flash policy configuration operations include (i) configuring a flash error-correction policy, (ii) configuring a flash-management table storage policy; (iii) configuring a wear-leveling policy; (iv) configuring a bad-block management policy and (v) configuring a flash-programming voltage parameter. Exemplary end-user identifiers include but are not limited to email account identifiers, logon user names, and International Mobile Subscriber Identities (IMSI). Exemplary host-instance identifiers may include but are not limited to International Mobile EQUIPMENT Identifiers (IMEI). Optionally, the flash policy configuration is contingent on authentication context data—for example, strength of the authentication (e.g. login/password vs. smartcard authentication or biometric authentication), date of the authentication, and identity provider information. | 04-16-2009 |
20090086880 | COUNTER USING SHIFT FOR ENHANCED ENDURANCE - A counting device includes a set of memory cells, which are configured to store respective bits of a count code. A controller is coupled to the memory cells so as to increment, in response to occurrences of a count input, the count code in the set of the memory cells from an initial value up to a preset bound in each of a plurality of successive iterations, and to shift the bits of the count code that are respectively stored in the memory cells in each of the iterations relative to a preceding iteration. | 04-02-2009 |
20090080259 | Post-Facto Correction For Cross Coupling In A Flash Memory - A method of storing and reading data, using a memory that includes a plurality of cells (e.g. flash cells), such that data are stored in the cells by setting respective values of a physical parameter of the cells (e.g. threshold voltage) to be indicative of the data, and such that data are read from the cells by measuring those values. One of the cells and its neighbors are read. The data stored in the cell are estimated, based on the measurements and on respective extents to which the neighbors disturb the reading. Preferably, the method also includes determining those respective extents to which the neighbors disturb the reading, for example based on the measurements themselves. | 03-26-2009 |
20090080247 | USING MLC FLASH AS SLC BY WRITING DUMMY DATA - A method for storing data includes designating, in a memory array including cells configured for writing a first number of bits per cell, a group of the cells to which input data are to be written at a second number of bits per cell, smaller than the first number. Dummy data that are independent of the input data are stored in a first set of one or more bits of the cells in the group. The input data are written to a second set of at least one other bit of the cells in the group. | 03-26-2009 |
20090073769 | METHOD AND SYSTEM FOR OPTIMIZING RELIABILITY AND PERFORMANCE OF PROGRAMMING DATA IN NON-VOLATILE MEMORY DEVICES - Methods of managing memory devices, and devices so managed. A value of a parameter, that is used to program one or more memory cells, is adapted to a monitored condition of the cell(s). Either the number of bits per cell is held fixed or the monitored condition is an intrinsic condition of the cell(s). The initial value of the parameter is optimized for those specific cells, relative to a pre-selected criterion, by programming the cell(s) in accordance with candidate values of the parameter. | 03-19-2009 |
20090006748 | METHOD FOR OPERATING A MEMORY INTERFACE WITH SIM FUNCTIONS - A method for operating a host device includes inserting a plug-in adapter, having a subscriber identity module (SIM) component disposed thereon, into a host receptacle of the host device. A memory card is inserted into a memory receptacle on the plug-in adapter. After inserting the plug-in adapter and the memory card, communications are conveyed between the host device and the SIM component via the adapter and the memory card. | 01-01-2009 |
20090002957 | MEMORY INTERFACE CARD WITH SIM FUNCTIONS - A plug-in adapter includes a first contact for connection to a host device, at least two second contacts for connection to a memory card, and a third contact for connection to a subscriber identity module (SIM) component. Circuitry in the adapter connects at least one of the second contacts to the third contact and connects at least another of the second contacts to the first contact so as to create a communication path between the host device and the SIM component via the memory card. | 01-01-2009 |
20080316717 | SIM Card Handle - An improved smart card is provided, which is adapted for easy extraction from a smart card socket, or example, in a mobile telephone. Facilitating the easy extraction is a structural deviation in the plane of at least one of the sides of the smart card to enable an increase of an external force on the smart card to thereby cause the extraction of the smart card from a socket. The structural deviation may be a change in the thickness of the smart card or a roughened surface in the smart card's enclosure. The smart card may be a SIM card. Also provided is a method of extracting a smart card from a socket, which method may include the steps of engaging a structural deviation in the plane of at least one side of the smart card's enclosure and applying a force to the engaged structural deviation. | 12-25-2008 |
20080313511 | SYSTEM-IN-PACKAGE AND METHOD OF TESTING THEREOF - A method of testing a SIP that has a CPU, a nonvolatile memory and a volatile memory. First, the CPU is used to test the memories. Then the CPU is tested separately. Preferably, the programs for testing the memories are pre-stored in and loaded from the nonvolatile memory into the volatile memory and are executed by the CPU in the volatile memory. Preferably, the test results are stored in the nonvolatile memory. | 12-18-2008 |
20080301483 | Surge-Protected Peripheral Devices - A computing system including: a host system; at least one device, mechanically connected to the host system, each device having an active state and an inactive state, wherein each device is conductively disconnected from the host system when the inactive state is enabled; and a mechanism for the host system to switch each device between the active state and the inactive state Preferably, at least one device is connected to the host system via a connector. Preferably, the device is hard-wired to the host system. Preferably, some wires of at least one device are isolated from the host system via a mechanical contactor. Preferably, some wires of at least one device are isolated from the host system via an optical isolator. Preferably, the system further includes: a switching battery; and a mechanism for charging the battery when at least one device is disconnected from the host system. | 12-04-2008 |
20080301341 | Management Of Internal Operations By A Storage Device - A method enables a storage device to autonomously (i.e., without intervention of a host device) determines whether an integral sequence of commands, which is related to one or more storage commands issued by the host device, is in a certain state (i.e., it is “active” or “inactive”) or is transitioning from “active” state to “inactive” state, or from “inactive” state to “active” state. Depending on the determined state or transition, the storage device determines whether to refrain from executing Extra-Sequence (“ESQ”) operations and permit executing Intra-Sequence (“ISQ”) operations, or vice versa. | 12-04-2008 |
20080301288 | METHOD AND DEVICE FOR MONITORING A TRANSACTION - A device for detecting a timeout event during a transaction between a user and a host includes a memory storing a set of predetermined threshold values in association with corresponding operations. A timing control unit that is operative to provide timing information. A controller is operative to detect a timeout event based on the timing information provided thereto and on the predetermined threshold vale of a corresponding operation. Activation of the device is conditional upon a signal received from a host. In another example embodiment, a device for detecting a timeout event during a transaction between a user and a host based on timing information and the predetermined threshold values includes means to access external power from the host. | 12-04-2008 |
20080300014 | METHODS OF OPERATING A SYNERGETIC TANDEM POCKET DEVICE - A method of operating a communications system including a mobile phone and a media playback device is disclosed. When the mobile phone is uncoupled from the media playback device, voice telephony services are provided by the mobile phone using an onboard RF transceiver of the mobile phone. When the media playback device is uncoupled from mobile phone, media playback services are provided by the media playback device using an onboard CODEC and an onboard display screen of the media playback device. When the media playback device and the mobile phone are operatively coupled together to form a tandem device, video telephony services are provided by the tandem device using the RF transceiver of the mobile phone, the CODEC of the media playback device and the display screen of the media playback device. Methods of operating a GPS system including a screenless GPS device and a mobile phone are also disclosed herein. | 12-04-2008 |
20080300013 | SYNERGETIC TANDEM POCKET DEVICE - A videophone device including two units | 12-04-2008 |
20080299834 | BACK-TO-BACK PCB USB CONNECTOR - A double-sided USB connector may include a first PCB that may provide a first set of electrical contacts on its first side and solder pads on its second side. The first PCB may further include a components side, solder pads, and signal traces. The double-sided USB connector may also include a second PCB that may provide a second set of electrical contacts on its first side and terminals on its second side. Contacts selected from the second set of contacts may be connected to selected terminals, for example through via paths in the second PCB. Contacts from the first and second sets of contacts may selectively be connected to components on the first PCB using signal traces rather than wires. The first PCB may be joined to the second PCB by using the terminals, and the two PCBs may be packaged using a common molded body. | 12-04-2008 |
20080299704 | INTEGRATED CIRCUIT DIE WITH LOGICALLY EQUIVALENT BONDING PADS - An integrated circuit (IC) die includes two bonding pads, that share a common logical function, such as signal input or signal output, separated by the width of the die, and preferably on opposite sides of the die. System-in-package devices are produced by steps including directly electrically connecting one or the other bonding pad to bonding pads of other, functionally different IC dies, with the bonding pads of the other IC dies, to which are connected bonding pads of common logical function of the IC dies of the present invention, being functionally identical but geometrically different. Multchip package devices are produced by stacking the IC dies of the present invention with other IC dies and directly electrically connecting one or the other bonding pad to different bonding pads of the other IC dies. | 12-04-2008 |
20080296980 | Method For Protecting Peripheral Devices From Surges - The present invention discloses methods for protecting a peripheral device in a computing system from electrical surge currents, the method including the steps of: providing a controller operationally connected to a host system; and reversibly conductively connecting, via the controller, wires of the device to the host system. Preferably, the device is connected to the host system via a connector. Preferably, the device is hard-wired to the host system. Preferably, at least some wires of the device are isolated from the host system via a mechanical contactor. Preferably, at least some wires of the device are isolated from the host system via an optical isolator. Preferably, the method further includes the step of: charging a switching battery when the device is disconnected from the host system. Most preferably, the method further includes the step of: powering the device using the battery when the device is connected to the host system. | 12-04-2008 |
20080294869 | Systems For Optimizing Page Selection In Flash-Memory Devices - The present invention discloses a computer-readable storage medium having computer-readable code embodied on the computer-readable storage medium, the computer-readable code including: program code for interleaving fast-reading data and filler data in fast pages and slow pages, respectively. A computer-readable storage medium having computer-readable code embodied on the computer-readable storage medium, the computer-readable code including: program code for reconstructing a data object from data stored only in designated pages. Preferably, the designated pages are fast pages or slow pages. A computer-readable storage medium having computer-readable code embodied on the computer-readable storage medium, the computer-readable code including: program code for at least one data object configured to be stored in fast pages and slow pages, wherein initial pages of at least one data object are stored only in primary pages, and the subsequent pages of at least one data object are stored only in secondary pages. | 11-27-2008 |
20080291731 | Methods For Optimizing Page Selection In Flash-Memory Devices - The present invention discloses methods for storing data in a flash-memory storage device, the method including the steps of: receiving, by the device, primary data to be stored in the device and to be read from the device at a primary reading speed; storing at least part of the primary data only in fast pages in the device, wherein the fast pages are located in multi-level cells of the device; designating, by the device, secondary data to be read from the device at a secondary reading speed, wherein the secondary reading speed is slower than the primary reading speed; and storing at least part of the secondary data only in slow pages in the device, wherein the slow pages are located in the multi-level cells. Preferably, the method further includes the step of: moving the secondary data from a previously-stored area in the device to the slow pages. | 11-27-2008 |
20080288714 | FILE STORAGE IN A COMPUTER SYSTEM WITH DIVERSE STORAGE MEDIA - A method for storing data in a computer having a magnetic hard disk drive (HDD) and an electronic solid-state drive (SSD). The method includes configuring the computer so that the HDD and the SSD are each independently accessible by an operating system of the computer. A plurality of files is received for storage by the computer. A predicted use profile of the computer is defined. A respective one of the HDD and the SDD is selected for the storage of each of the files responsively to the predicted use profile. | 11-20-2008 |
20080286082 | METHODS AND SYSTEMS FOR INTERRUPTED COUNTING OF ITEMS IN COUNTAINERS - Methods and systems for counting items in storage containers in an array of at least two storage containers, the method including the steps of: providing a storage array of at least two storage containers, each of the storage containers containing an unknown amount of items; providing a receiving array of at least two receiving containers, wherein the receiving containers initially contain no items; extracting a layer of the items from the storage array; inserting the layer into corresponding locations in the receiving array; repeating the steps of extracting and inserting while at least one of the storage containers is not empty; counting, for each storage container in the storage array, a productive-extraction amount; and reporting, for at least some of the storage containers, the productive-extraction amount from each storage container. Preferably, the method further includes recovering a storage identity upon recovery from a system failure that erases the productive-extraction amount. | 11-20-2008 |
20080285660 | DUAL DECODER PORTABLE MEDIA DEVICE - A portable media device | 11-20-2008 |
20080285659 | METHODS OF OPERATING A DUAL DECODER PORTABLE MEDIA DEVICE - Methods of operating a portable media device | 11-20-2008 |
20080276058 | Storage Device For Data-Smuggling - A computer-readable storage medium having computer-readable code embodied thereon including: program code for restricting access, by a file system running on a host system, to a restricted area of a storage area of a storage device; and program code for enabling at least one application to access the restricted area via the file system. Preferably, the computer-readable code further includes: program code for enabling the storage device to copy data from a non-restricted area to the restricted area. Preferably, the computer-readable code further includes: program code for directing the storage device to route host-system read-requests, directed to addresses in the restricted area, to addresses in a non-restricted area. Preferably, the computer-readable code further includes: program code for applying access commands of the host system to restricted data residing in the restricted area when the host system requests access to non-restricted data addressed to a non-restricted area. | 11-06-2008 |
20080274633 | REVERSIBLE UNIVERSAL SERIAL BUS (USB) CONNECTOR - A reversible receptacle for coupling with a USB A-type standard connector, including a first set of four electrical contact regions and a second set of four electrical contact regions, the contact regions configured such that in a first coupling orientation of the reversible receptacle with the standard plug, only the first set of electrical contact regions is mechanically connected with the contacts of the standard plug and in a second coupling orientation of the reversible receptacle with the standard plug, only the second set of electrical contact regions is mechanically connected with the contacts of the standard plug. Also provided are corresponding reversible USB appliances based upon the aforementioned reversible receptacles. | 11-06-2008 |
20080270730 | METHOD FOR EFFICIENT STORAGE OF METADATA IN FLASH MEMORY - User data are stored in a memory that includes one or more blocks of pages by, for one of the blocks, and optionally for all of the blocks, whenever writing any of the user data to that block, writing the block according to a predefined plan for specifying, with respect to each page of that block, a portion of the user data that is to be written to that page. Alternatively or additionally, each page that stores user data has associated therewith a metadatum related to the age of the user data stored therein; and, for one of the blocks, at any time that two or more of the pages of that block store user data, a common value of the metadatum is associated with all such pages. | 10-30-2008 |
20080270682 | METHOD FOR USING A MULTI-BIT CELL FLASH DEVICE IN A SYSTEM NOT DESIGNED FOR THE DEVICE - A computerized system is booted from a flash memory device configured to always operate one or more of its blocks only in a M-bit-per-cell mode and the rest of its blocks in a N>M-bit-per-cell mode. When the system is powered up, an initialization program is retrieved from the M-bit-per-cell block(s), corrected for errors using a first error correction method, and executed. Data accessed subsequently from the N-bit-per-cell blocks are corrected using an error correction method that corrects more errors per block than the first error correction method. | 10-30-2008 |
20080263266 | ADAPTIVE DYNAMIC READING OF FLASH MEMORIES - Each of a plurality of flash memory cells is programmed to a respective one of L≧2 threshold voltage states within a threshold voltage window. A histogram is constructed by determining how many of some or all of the cells have threshold voltages in each of two or more of m≧2 threshold voltage intervals within the threshold voltage window. Reference voltages for reading the cells are selected based on estimated values of shape parameters of the histogram. Alternatively, the cells are read relative to reference voltages that define m≧2 threshold voltage intervals that span the threshold voltage window, to determine numbers of at least a portion of the cells whose threshold voltages are in each of two or more of the threshold voltage intervals. Respective threshold voltage states are assigned to the cells based on the numbers without re-reading the cells. | 10-23-2008 |
20080250489 | Systems For Firewall Protection Of Mass Storage Devices - The present invention discloses a URD including: a non-volatile storage memory having program code, wherein said program code is configured to enable a network protocol for communicating with a host system; and a controller for controlling operations performed on said storage memory. Preferably, the storage memory includes flash memory. A URD including: a host system having a firewall; and a URD having a nonvolatile storage memory, wherein said storage memory includes program code, and wherein said program code is configured to enable a network protocol, said URD operationally connected to said host system; wherein said firewall is configured to provide security measures related to said URD. Preferably, the firewall is a software firewall or a hardware firewall. | 10-09-2008 |
20080250488 | Methods For Firewall Protection Of Mass-Storage Devices - The present invention discloses methods for protecting a host system from information-security risks posed by a URD, the method including the steps of: operationally connecting the URD to the host system; communicating, between the URD and the host system, via a network protocol, through a firewall residing in the host system; and configuring said firewall to provide security measures related to the URD. Preferably, the firewall is a software firewall or a hardware firewall. A method for protecting a host system from information-security risks posed by a URD, the method including the steps of: operationally connecting the URD to the host system; communicating, between the URD and the host system, via a network protocol, through a firewall residing in the host system; and configuring said firewall to restrict access of at least one application to the URD. Preferably, the firewall is a software firewall or a hardware firewall. | 10-09-2008 |
20080250487 | Systems For Firewall Protection Of Mass Storage Devices - The present invention discloses a URD including: a non-volatile storage memory having program code, wherein said program code is configured to enable a network protocol for communicating with a host system; and a controller for controlling operations performed on said storage memory. Preferably, the storage memory includes flash memory. A URD including: a host system having a firewall; and a URD having a non-volatile storage memory, wherein said storage memory includes program code, and wherein said program code is configured to enable a network protocol, said URD operationally connected to said host system; wherein said firewall is configured to provide security measures related to said URD. Preferably, the firewall is a software firewall or a hardware firewall. | 10-09-2008 |
20080222445 | BIAS AND RANDOM DELAY CANCELLATION - A system and method for digital communication wherein a host provides a host clock and a clockless device transmits to the host a bit stream synchronized according to the clock at a data rate that is an integer multiple of the clock rate. A training mechanism using training data detects time skew between host clock and bit stream, and a digital skew compensation mechanism compensates, substantially in real time, for the skew and for variations in the skew that may occur with the passage of time, in accordance with a vote among at least three samples of a bit of the bit stream, subsequent sampling being retarded or advanced if, respectively, an early or late sample is in disagreement with the vote. Preferably, the compensation value is selected from at least four possible compensation values, and can be stored in a memory to hasten subsequent restarts of the system. | 09-11-2008 |
20080219359 | Method and system for reducing common mode noise interference in a differential communication channel - A data transmission method includes providing, by a current source, a current to the first conductor while isolating the second conductor from the current source, to thereby transmit a first binary digit; and, responsive to a command to transmit a second binary digit, (i) decreasing from a maximum value to zero an amount of the current provided to the first conductor and (ii) increasing from zero to a maximum value an amount of the current provided by the current source to the second conductor. The decreasing and the increasing are performed simultaneously, in such a manner that the amount of the current provided to the first conductor decreases at the same rate as the amount of the current provided to the second conductor increases, and such that each of a first signal corresponding to the current provided to the first conductor and a second signal corresponding to the current provided to the second conductor has a transition edge having a leading section, a midsection and a trailing section, with the midsection of the transition edge having an average slope that is greater than an average slope of the leading section of the transition edge and that is greater than an average slope of the trailing section of the transition edge. A system is provided which includes a switching system, which is operatively interposed between the current source and the differential communication channel, and a controller which is operative to issue one or more signals control signals to the switching system to implement the data transmission method. | 09-11-2008 |
20080215788 | CONNECTOR WITH OPPOSITE-FACING PORTS - A connector for connecting a host device to one or more peripheral devices includes two ports, for example two USB ports, facing in two different, preferably opposite, directions. The scope of the invention also includes a system board that includes the connector, and a host device, such as a computer, that includes the motherboard. | 09-04-2008 |
20080209109 | INTERRUPTIBLE CACHE FLUSHING IN FLASH MEMORY SYSTEMS - Cache flushing is effected for a flash memory by copying, to a block of the memory, first and second portions of cached data, and servicing a host access in-between copying the first portion and the second portion. Either both portions are selected before the copying, or erasing the block is forbidden until after the copying, or a portion of the block left unwritten by the first copying remains unwritten until after the host access is serviced. | 08-28-2008 |