WO2009037712A2 - A smart data storage device compatible with various portable devices - Google Patents

A smart data storage device compatible with various portable devices Download PDF

Info

Publication number
WO2009037712A2
WO2009037712A2 PCT/IL2008/001262 IL2008001262W WO2009037712A2 WO 2009037712 A2 WO2009037712 A2 WO 2009037712A2 IL 2008001262 W IL2008001262 W IL 2008001262W WO 2009037712 A2 WO2009037712 A2 WO 2009037712A2
Authority
WO
WIPO (PCT)
Prior art keywords
file
data
multimedia
portable device
sector
Prior art date
Application number
PCT/IL2008/001262
Other languages
French (fr)
Other versions
WO2009037712A3 (en
Inventor
Arie Frenklakh
Ilya Margulis
Original Assignee
Arie Frenklakh
Ilya Margulis
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Arie Frenklakh, Ilya Margulis filed Critical Arie Frenklakh
Publication of WO2009037712A2 publication Critical patent/WO2009037712A2/en
Publication of WO2009037712A3 publication Critical patent/WO2009037712A3/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/329Table of contents on a disc [VTOC]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/89Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving methods or arrangements for detection of transmission errors at the decoder
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/60Solid state media
    • G11B2220/61Solid state media wherein solid state memory is used for storing A/V content

Definitions

  • the disclosed technique relates to data storage devices, in general, and to systems for processing files in data storage devices in particular.
  • Portable electronic devices are often employed to process high quality multimedia files (e.g., video clips, movies, music, pictures and the like) of various formats.
  • portable devices may include, for example, mobile phones, handheld computers, personal digital assistants (PDA), dedicated multimedia players and the like.
  • the multimedia content is stored in data storage devices, such as removable memory cards or embedded memory, which usually employ non-volatile memory.
  • Certain multimedia processors are capable of processing files of a predetermined format, while these processors cannot process other formats.
  • the format of a multimedia file may be changed to another format, for example, in order to make the file readable by another processor, which was unable to read the original format.
  • FIG. 1 is a schematic illustration of an exemplary portable device and a multimedia data storage device, as known in the art.
  • the portable device generally referenced 10, includes a glue logic 18, a multimedia processor 20, a micro processor 22, a wireless communication 24 and a battery 25.
  • Portable device 10 further includes a plurality of input/output components, for example a camera 12, an audio component 14 and a screen 16. Camera 12, audio component 14 and screen 16 are coupled with multimedia processor 20 (if present) and micro processor 22, through glue logic 18.
  • Micro processor 22 is further coupled with wireless communication 24. It is noted, that multimedia processor 20 is optional, and may be omitted from portable device 10.
  • the multimedia data storage device includes a memory 28 and a plurality of multimedia files 29 1 ? 29 2, 29 3 .
  • Multimedia files 29i, 29 2, 29 3 are stored in memory 28.
  • Data storage device 26 may be, for example, a memory stick, a flash memory, a Secure Digital (SD) memory card, and the like.
  • Data storage device 26 communicates with portable device 10, for example, by inserting an SD memory card into portable device 10.
  • portable device 10 may access multimedia files 29i, 29 2, 29 3 (e.g., via multimedia processor 20, if present) from data storage device 26, and display these files to a user (not shown), by the output components of portable device 10.
  • Portable device 10 accesses multimedia files 29i, 29 2, 29 3 in the format in which files 29i, 29 2, 29 3 are stored in data storage device 26. If portable device 10 recognizes this format, it may decode and process multimedia files 29i, 29 2, 29 3 by the output components (e.g., audio component 14 or screen 16). However, if portable device 10 does not recognize the format of multimedia files 29 1 t 29 2 , 29 3 , it may mot decode and present these files to the user.
  • the output components e.g., audio component 14 or screen 16
  • One known solution for this problem is saving each multimedia file in various formats each compatible with a different of portable device. However, the amount of storage space required to store files in different formats is increased proportionally to the number of formats. Incompatibility of multimedia file formats also makes it difficult to transfer files from one portable device to another, each device having different multimedia abilities.
  • Another known solution for the above problem is to convert the multimedia file from the original format to another format, by more complex software application on the portable device. Alternatively, a more sophisticated multimedia processor may be employed in the portable device, for example, such that the processor is compatible with more file formats. Further alternatively, an external multimedia processor may be employed to convert the format of a multimedia file.
  • a high-quality DVD file exhibits quality suitable for a TV screen but not suitable for the screen of the portable devices (i.e., due to the lower resolution of the screen of the portable device relative to the resolution of the TV screen). Consequently, unnecessary storage space is used to store the file in the content source format the and processing of this file is more complex
  • portable device operate within a communication network (e.g., cellular phones, PDA's) and a communication network standard.
  • Examples of communication network standards are Code Division Multiple Access (CDMA), Global System for Mobile communications (GSM) 1 Universal Mobile Telecommunications System (UMTS), and the like.
  • CDMA Code Division Multiple Access
  • GSM Global System for Mobile communications
  • UMTS Universal Mobile Telecommunications System
  • the network standards define, among other things, the settings of the portable device (e.g., operating frequency, protocols, supported file formats). Therefore, portable device, operating within a certain network, may not operate within another network, having different settings.
  • a different portable device e.g., handset
  • that user wishes to play multimedia files on the other portable devices, she must carry a separate multimedia data storage device for each of the portable devices.
  • Most portable devices may be considered to include three basic sections: communication section, computing section, and multimedia functionality section.
  • the communication section may contain most of the electronics that support a particular wireless communication system, such as wireless communication 24 of Figure 1.
  • the computing section may contain the microprocessor, such as microprocessor 22 of Figure 1 , which is responsible for basic computation and control of the portable device.
  • the multimedia functionality section may contain electronics that support multimedia processing and functionality, such as multimedia processor 20 of Figure 1.
  • the portable device may further include other components, such as a display, speaker, microphone, keypad, battery, and the like.
  • Multimedia files stored in a data storage device, are managed by the file managing system of the portable device.
  • Typical file managing systems e.g., FAT, NTFS Unix file system
  • FAT NTFS Unix file system
  • data structures such as tables, link lists or trees. These data structures define the relation between the file name and the physical location of the data in the memory in which the file is stored.
  • Figure 2 is a schematic illustration of a file managing system, generally reference 30, which is known in the art.
  • file system 30 each file is stored in a memory
  • each file may be stored in one single sector.
  • File table 34i is associated with a first file and file table 34 N is associated with the N th file.
  • Each entry in file table 34 ! includes a pointer to a sector where a portion of the first file is stored.
  • the first entry in file table 34.] includes a pointer to sector 36- ⁇
  • the second entry in file table 34i includes a pointer to sector 36 2
  • the M th entry in file table 34i includes a pointer to sector 36 M .
  • the sectors in memory 38 in which the first file is stored, and the memory location to which the entries of file table 34 1 point are not shown.
  • File system 30 further includes a file root table 32.
  • Each entry in file root table 32 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in memory 38.
  • Each entry in file root table 32 further includes a pointer to one file table associated of one of the files stored in the memory 38.
  • the entry of the first file in file root table 32 includes a pointer to a file table 34i associated with the first file.
  • the entry of the second file in file root table 32 includes a pointer to a file table (not shown) associated with the second file.
  • the entry of the N th file in file root table 32 includes a pointer to a file table 34 N associated with the N th file.
  • the device accesses the file table associated with that file according to the file root table, and accesses the sectors in memory 38, in which where the file is stored, according to the file table.
  • ECC Error Correction Codes
  • error correcting codes include an encoder for encoding the data with redundant information according to the data.
  • error correcting codes further include a decoder detecting and correcting the errors in the data according to the data and the redundant information.
  • a known example of implementation of ECC encoders and decoders is a software implementation of the encoder and the decoder, executed by the processor of the portable device.
  • Another solution known in the art is a hardware software hybrid implementation where one part of the error correction is implemented in software and another is implemented in hardware. Thus, the performance (e.g., speed) of the encoder and decoder may be improved and the load on the processor of the portable device is reduced.
  • System 50 includes a portable device 52, a data receiver 54, an error correction code encoder 56, a data writer 58 and a memory 60.
  • System 50 further includes a data reader 62, an error detector 64, an error correction code decoder 66 and a data transmitter 68.
  • Data receiver 54 is coupled with portable device 52 and with error correction code encoder 56.
  • Data writer 58 is coupled with error correction code encoder 56 and with memory 60.
  • Data reader 62 is coupled with memory 60 and with error detector 64.
  • Data transmitter 68 is coupled with error detector 64 and with portable device 52.
  • Error correction decoder is coupled with error detector 64 and with data transmitter 68.
  • Data receiver 54 receives the data to be stored from portable device 52 and provides the received data to error correction code encoder 56.
  • Error correction code encoder 56 encodes the data according to the error correction code use (e.g., CRC, BCH, Reed - Solomon) and provides the encoded data to data writer 58.
  • Data writer 58 writes the encoded data to memory 60.
  • data reader 62 reads the required data from memory 60 and provides the data to error detector 64.
  • Error detector 64 detects if error occurred in the data (e.g., according to the party check matrix of the code). When error detector 64 detects no errors, then error detector 64 provides the data to data transmitter 68. When error detector 64 detects errors, then, error detector 64 provides the data to error correction code decoder 66. Error correction code decoder 66 attempts to correct the errors in the data and provides the corrected data to data transmitter 68. Data transmitter 68 transmits the data to portable device 52.
  • a smart multimedia storage device for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format.
  • the smart multimedia storage device includes a memory, for storing a multimedia file in one format; and a multimedia processor.
  • the multimedia processor converts the format of the multimedia file from the one format to the predetermined format, when the portable device communicates with the smart multimedia storage device.
  • a smart multimedia storage device for coupling with a plurality of wireless communication portable devices, each portable device being operable with a different wireless communication network standard.
  • the smart multimedia storage device includes a memory, for storing at least one multimedia file in one format, the memory further storing multimedia settings and multimedia functionality information, and a multimedia processor.
  • the multimedia processor converts the format of the multimedia file from the one format to another format, accessible by the one portable device, and providing the multimedia settings and multimedia functionality information to the one portable device.
  • a smart multimedia storage device for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format.
  • the smart multimedia storage device includes a communication interface, communicating with the portable device, and a storage area for storing at least one data file in at least one sector in the storage area. Each data file includes at least one data object, each of the sectors storing one of the data objects.
  • the smart multimedia storage device also includes a processor, coupled with the communication interface, and with the storage area.
  • the processor includes a media converter and a file manager.
  • the file manager accesses the data objects of the data file according either one of at least two file entries in a file root table.
  • the file manager presents the data objects to the portable device.
  • a smart multimedia storage device for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format.
  • the smart multimedia storage device includes a communication interface, communicating with the portable device, and a storage area for storing at least one data file in at least one sector in the storage area. Each data file includes at least one data object, each of the at least one sector storing one of the at least one data objects.
  • the smart multimedia storage device also includes a processor, coupled with the communication interface, and with the storage area.
  • the processor includes a media converter and a file manager, the file manager accessing the all of the at least one data object of the data file stored in the storage area according to one file entry in a file root table.
  • the file manager access a portion of the at least one data object according to another file entry in the file root table.
  • the file manager presents the at least one data object to one of the portable devices.
  • a smart multimedia storage device for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format.
  • the smart multimedia storage device includes a communication interface, communicating with the portable device, and a storage area for storing for storing at least one data file in at least one sector in the storage area, each data file includes at least one data object, each of the at least one sector storing one of the at least one data objects.
  • the smart multimedia storage device also includes a processor, coupled with the communication interface, and with the memory.
  • the processor includes a media converter and a file manager, the file manager accessing the at least one data file according to one file entry in a file root table.
  • the media converter converts at least a portion of the at least one data object from one format to at least one other format.
  • the file manager receives the converted portion of the data objects and presents the converted portion of the at least one data object to one of the portable devices.
  • a differential error correcting system for coupling with a portable device, a differential error correcting system.
  • the differential error correcting system includes a memory, including an error free sector and a regular sector, and at least two error correcting code encoders, coupled with the memory.
  • Each of the at least two error correcting code encoders are associated with a respective error correcting code.
  • Each one of the at least two error correcting code encoders encoding data of a data type different from the data types encoded by the others of the at least two error correcting code encoders according to the error correction code respective of the one of the at least two error correcting code encoders.
  • the differential error correcting system also includes at least two error correcting code decoders, coupled with the memory. Each of the at least two error correcting code decoders are associated with a respective error correcting code encoder, each of the at least two error correcting code decoders decoding the data of the data type respective of the respective error correcting code encoder.
  • Figure 1 is a schematic illustration of an exemplary portable device and a multimedia data storage device, as known in the art
  • Figure 2 is a schematic illustration of a file managing system, which is known in the art
  • FIG. 3 is a schematic illustration of an error correction system, which is known in the art
  • FIG. 4 is a schematic illustration of a smart multimedia storage and processing system, constructed and operative in accordance with an embodiment of the disclosed technique
  • FIG. 5 is a schematic illustration of a Modular Cellular Phone System (MCPS), constructed and operative according to another aspect of the disclosed technique;
  • MCPS Modular Cellular Phone System
  • Figure 6 is a schematic illustration of a smart multimedia storage device, constructed and operative in accordance with a further embodiment of the disclosed technique
  • Figure 7 is a schematic illustration of a file managing system, constructed and operative in accordance with a further embodiment of the disclosed technique
  • Figure 8 is a schematic illustration of file managing system, constructed and operative in accordance with another embodiment of the disclosed technique.
  • Figure 9 is a schematic illustration of file managing system, constructed and operative in accordance with another embodiment of the disclosed technique.
  • Figure 10 is a schematic illustration of file managing system, constructed and operative in accordance with another embodiment of the disclosed technique; and Figure 11 is a schematic illustration of an error correction system, constructed and operative in accordance with a further embodiment of the disclosed technique.
  • a multimedia file may be preloaded into a smart multimedia storage device in a predetermined format.
  • a multimedia processor on the card processes the file and transfers it to the portable device in raw format or in another format, with which the portable device is compatible.
  • the multimedia file may be transferred to the smart multimedia storage device in any format (e.g., raw or compressed).
  • the smart multimedia storage device then performs "on-the-fly" processing of the data, and stores it in a desired predetermined format.
  • a multimedia processor on the smart multimedia storage card processes the file and transfers it to the portable device in raw format or another format, with which the portable device is compatible.
  • the disclosed technique overcomes the disadvantages of the prior art by providing a novel file managing system for processing the files stored in the data storage device according to one format and presenting the file to the portable device in another format compatible with the portable device.
  • a plurality of entries, in the file root table may point to the same file table.
  • portable devices, supporting, different file attributes can access the same file without storing multiple copies of the same file.
  • the same file may be associated with two different file tables and with two different entries in the file root table. Accordingly, each entry in the file root table access a different portion of the file stored in the data storage device.
  • the disclosed technique overcomes the disadvantages of the prior art by providing a system for differential Error Correction encoding and decoding of data. Accordingly, data files that require a one type of error correction (e.g., executable files, documents, control information,) are encoded according to the error correcting code and stored in the data storage device. Data files that require another type of error correction (e.g. multimedia file that may be affected by errors without substantial affect on the user or data that is already encoded) are encoded according to the other type of error correcting code and stored in the data storage device.
  • a one type of error correction e.g., executable files, documents, control information,
  • data files that require another type of error correction e.g. multimedia file that may be affected by errors without substantial affect on the user or data that is already encoded
  • Smart multimedia storage and processing system 100 includes a portable device 130 and a smart multimedia storage device 120.
  • Portable device 130 includes a glue logic 108, a multimedia processor 110, a micro processor 112, a wireless communication 114 and a battery 116.
  • Portable device 130 further includes a plurality of input/output components, for example a camera 102, an audio component 104 and a screen 106. Camera 102, audio component 104 and screen 106 are coupled with multimedia processor 110 and micro processor 112, through glue logic 108.
  • Micro processor 112 is further coupled with wireless communication 114.
  • Portable device 130 processes multimedia files (e.g., via multimedia processor 110), for example, in order to present them to a user (not shown), through at least one of the output components (e.g., playing a movie through audio component 104 and screen 106).
  • Microprocessor 112 executes a plurality of processes on portable device 130, for example, for managing communication of the portable device, performing various calculations, and the like. It is noted, that multimedia processor 110 and microprocessor 112 may be incorporated into a single processor (not shown).
  • Wireless communication 114 enables portable device 130 to communicate with a wireless network. For example, when portable device 130 is a cellular telephone, wireless communication 114 enables the cellular telephone to communicate with a cellular communication network.
  • Battery 116 provides electrical power to the various components of portable device 130. It is noted, that portable device may include further input/output components other than camera 102, audio component 104 and screen 106.
  • Glue logic 108 coordinates the functions of the input/output components, according to demands received from multimedia processor
  • Smart multimedia storage device 120 includes a memory 122, a plurality of multimedia files 124, 125 and 127, and a multimedia processor 126.
  • Multimedia files 124, 125 and 127 are stored in memory 122.
  • Smart multimedia storage device 120 may be, for example, a memory stick, a flash memory, a Secure Digital (SD) memory card, and the like.
  • Smart multimedia storage device 120 communicates with portable device 130, for example, by coupling an SD memory card into the portable device.
  • multimedia processor 110 of portable device 130 may access and process multimedia files 124, 125 or 127 from storage device 120, and present these files to a user (not shown), through the output components of portable device 130.
  • Memory 122 may be a non-volatile (flash) memory.
  • multimedia files 124, 125 and 127 are stored in the most appropriate format, determined at the time of file storage. Determining the most appropriate multimedia file format may be, for example, by employing an external PC application considering the format of the source file and the characteristics of portable device 130, or by multimedia processor 126 during the file copy. It is noted, that although the following description relates to multimedia file 124, it is similarly applicable for any of the other multimedia files 125 or 127.
  • multimedia file 124 When multimedia file 124 is stored on smart multimedia storage device 120, it may already be converted to a specific format supported by smart multimedia storage device 120 and multimedia processor 126, by an external application. Alternatively, multimedia file 124 may be converted in real time by multimedia processor 126 from its original format to a desired predetermined format (i.e., during the transfer of file 124 to portable device 130). Further alternatively, smart multimedia storage device 120 may be configured, such that whenever a multimedia file is stored in memory 122, the file is converted to a uniform desirable in order to simplify the processing of files in smart multimedia storage device 120.
  • multimedia processor 126 processes file 124, to adjust the format of file 124 to a format accessible by multimedia processor 110.
  • multimedia processor 126 converts the format of multimedia file 124, such that multimedia processor 110 of portable device 130 would be able to access and process file 124.
  • a user not shown
  • Multimedia processor 126 then converts multimedia file 124 to the desired format, thereby enabling access to the file by the portable device.
  • multimedia processor 126 may adjust other settings of multimedia file 124, to match the settings of portable device 130.
  • Settings of multimedia file 124 may include, for example, screen resolution, processing efforts, and the like. This may be performed, by using multiple file representations, wherein each representation has different settings, or by choosing a known common multimedia format, which is likely to be recognized by portable device 130.
  • multimedia processor 126 may adjust the settings of multimedia file 124, after requesting and receiving information regarding preferable settings from portable device 130. For example, multimedia processor 126 may reduce the screen resolution of a video file or a picture, in case the file was originally saved in a format suitable for a larger screen.
  • multimedia file 124 may be encrypted or decrypted by smart multimedia storage device 120, or by another external cryptographic engine, in order to secure the data of file 124.
  • different levels of security may be used to encrypt or decrypt certain multimedia files.
  • portable device 120 may employ a certain level of security in handling all or selected files.
  • DRM Digital Rights Management
  • the smart multimedia storage device encrypts any file stored in the memory, according to a predetermined key, which can be stored inside the storage device or transferred by the portable device before accessing the file.
  • the smart multimedia storage device may encrypt the data stream from the smart multimedia storage device to the portable device, while accessing the file in the storage device.
  • the encryption key can be stored inside the smart multimedia storage device card or transferred by the portable device before accessing the file.
  • files may be, for example, text files, documents, graphic files, executable files, game files and the like.
  • the smart multimedia storage device is employed in a Modular Cellular Phone System (MCPS).
  • the storage device may be coupled with either one of a plurality of handsets, each operable with a different wireless network standard, thereby allowing transferring multimedia content between the handsets when changing wireless networks.
  • MCPS Modular Cellular Phone System
  • FIG. 5 is a schematic illustration of a MCPS, generally referenced 140, constructed and operative according to another aspect of the disclosed technique.
  • MCPS 140 includes a plurality of handsets - a GSM handset 142A, a UMTS handset 142B, and a CDMA handset 142C, and a smart multimedia storage device 144.
  • Smart multimedia storage device 144 is similar to smart multimedia storage device 120 of Figure 4.
  • Handset 142A is operable with a wireless communication network, operating according to the GSM standard.
  • Handset 142B is operable with a wireless communication network, operating according to the UMTS standard.
  • Handset 142C is operable with a wireless communication network, operating according to the CDMA standard.
  • Smart multimedia storage device 144 When a user (not shown) changes between wireless networks, each operating according to a different standard, she must use a different handset for each network. For example, while communicating in a GSM wireless network, the user employs smart multimedia storage device 144, by coupling storage device 144 with GSM handset 142A. When transferring to a UMTS wireless network, the user may remove smart multimedia storage device 144 and couple it with UMTS handset 142B. Alternatively, when transferring to a CDMA wireless network, the user may remove smart multimedia storage device 144 and couple it with CDMA handset 142C. Smart multimedia storage device 144 is configured to be coupled with a variety of handset to provide a versatile communication system.
  • the user may thus continue to use the same multimedia functionality, stored in smart multimedia storage device 144, while migrating to a new wireless or cellular network, and while using a different handset.
  • smart multimedia storage device 144 may replace or upgrade the multimedia functionality of the handset, with which it is coupled. For example, if the handset does not allow multimedia processing, smart multimedia storage device 144 enables multimedia processing for the handset, thereby upgrading the handset's abilities.
  • the different handsets such as GSM handset 142A, UMTS handset 142B and CDMA handset 142C
  • the disclosed technique may be applicable to other portable devices, which do not include handsets at all, such as portable computers, PDA's, GPS units and the like. In such a case, the portable devices themselves replace the handsets in the above description, with the required changes.
  • the different wireless standards mentioned in the present description are given for better understanding of the disclosed technique, and do not limit the present disclosure to such standards. In other words, the disclosed technique may enable migration between any wireless/cellular networks with any portable devices, while maintaining the same multimedia functionality module (or alternatively upgrading the multimedia module in any portable device).
  • the above mentioned smart multimedia storage device includes a file managing system which enables different portable devices, supporting different file attributes, to access the same file, by including a plurality of different entries in the file root table pointing to the same file table.
  • Smart multimedia storage device 150 includes a storage area 152, a processor 154 and a communication interface 156.
  • Processor 154 further includes a media converter 158 and a file manager 160.
  • Processor 154 is coupled with storage area 152 and with communication interface 156.
  • Smart multimedia storage device 150 is similar to smart multimedia storage device 120 of Figure 4.
  • Smart multimedia storage device 150 may be coupled with a portable device (not shown, e.g., such as portable device 130 of Figure 4), via communication interface 156.
  • Storage area 152 stores data files, for example multimedia files.
  • Storage area 152 may be a non-volatile (flash) memory.
  • Media converter 158 processes multimedia files stored in memory 152, similarly to multimedia processor 126 of Figure 4.
  • File manager 160 manages the storage and access of the files stored in memory 152. The operation of file manager processor 160 will be elaborated herein after with reference to Figures 7, 8, 9 and 10.
  • Figure 7, is a schematic illustration of a file managing system, generally referenced 200, constructed and operative in accordance with another embodiment of the disclosed technique.
  • each file includes at least one of data objects (not shown).
  • Each file is stored in memory 208 in a plurality of sectors 2Oe 1 , 206 2 , ... , 206 M .
  • Each sector stores a data object.
  • File table 204 is associated with a file.
  • File table 204 includes at least one sector entry.
  • Each sector entry in file table 204 includes a pointer to a sector where a portion of the file is stored.
  • the first sector entry in file table 204 includes a pointer to sector 206.
  • the second sector entry in file table 204-i includes a pointer to sector 206 2
  • the M th sector entry in file table 204- t includes a pointer to sector 206 M .
  • file managing system 200 may manage a plurality of files and thus include a plurality of file tables.
  • File system 200 further includes a file root table 200 including at least two file entries.
  • Each entry in file root table 202 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in memory 208.
  • Each file entry in file root table 202 further includes a pointer to a file table associated with one of the files stored in the memory 208.
  • the file entry of the first file in file root table 202 includes a pointer to a file table 204 associated with the first file.
  • the file entry of the second file in file root table 202 includes a pointer also to file table 204.
  • file stored in memory 208 may be accessed by both portable devices without storing the same data in two different files.
  • an action performed on the file according to one entry in file root table 202 is also performed on the other entries in file root table 202 associated with the same file. For example, when a portable device deletes the file according to the first entry in file root table 202, then the second entry in file root table 202 is deleted as well.
  • file manager 160 ( Figure 6) accesses the file stored in memory 208 according either one of the first or second file entries in file root table 202.
  • File manager 160 ( Figure 6) presents the file the portable device.
  • the different parts of the same file are accessed by two different file tables.
  • a portable device accesses the entire file according one file entry in the file root table associated with the entire file (i.e., a file table which includes pointers to all the sectors in the memory wherein the file is stored).
  • the portable device accesses part of the file (e.g., preview of a multimedia file, the table of contents of a document) according to another file entry in the file root table associated with that same part of the file (i.e., another file table which includes pointers only to the sectors in the memory in which the respective part of the file is stored).
  • each file includes at least one data object (not shown).
  • Each file is stored in memory 230 in a plurality of sectors 230- I , 23O 2 , 230 M .
  • Each sector stores a data object.
  • Associated with each file are respective file tables.
  • File tables 224 and 226 are associated with a file.
  • Each of file tables 224 and 226 includes at least one sector entry.
  • Each sector entry in file tables 224 and 226 includes a pointer to a sector where a portion of the file is stored.
  • the first sector entry in file table 224 includes a pointer to sector 23O 1
  • the second sector entry in file table 224 includes a pointer to sector 23O 2
  • the M th sector entry in file table 224 includes a pointer to sector 230 M
  • File table 226 includes only two sector entries, each including a pointer to a sector in which a part of the file is stored.
  • the first sector entry in file table 226 includes a pointer to sector 23O 1
  • the second sector entry in file table 224 includes a pointer to sector 23O 2 . It is noted that for convenience of explanation and presentation, the sectors in memory 230 in which only one file is stored, and to where the sector entries of file tables 224 and 226 point, are shown.
  • file managing system 220 may manage a plurality of files and thus include a plurality of file tables.
  • File managing system 220 further includes a file root table 222.
  • File root table includes at least two file entries.
  • Each file entry in file root table 222 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in memory 230.
  • Each file entry in file root table 222 further includes a pointer to a file table associated with one of the files stored in the memory 230.
  • the file entry of the first file in file root table 202 includes a pointer to one of file tables 224 and 226 associated with the file.
  • the portable device accesses part of the file according to one file entry in the file root table associated with part of the file, and accesses part of the file according to another file entry in the file root table associated with the file.
  • file manager 160 ( Figure 6) accesses the entire file stored in memory 260 according to the first file entry in file root table 222.
  • File manager 160 ( Figure 6) accesses parts of the file stored in memory 260 according to the second file entry in file root table 222.
  • File manager 160 ( Figure 6) presents the file the portable device.
  • a portable device accesses part of the file (e.g., preview of a multimedia file, the table of contents of a document) while the entire file may be protected (e.g., with a password).
  • a data is stored in the data storage device in one file format and presented to the portable as a file in another format compatible with the portable device.
  • the file format in which the data is stored in the portable device may be a predetermined file format.
  • the processor located on the data storage device converts the file from the stored format to the format compatible with the portable device.
  • the processor determines the file format to which the data is converted according to input from the user of the portable device (e.g., by selecting a specific file to be processed by the portable device) or according to information related to the portable device received from the portable device.
  • each file includes at least one data object (not shown).
  • Each file is stored in memory 262 in a plurality of sectors 264- ⁇ , 264 2 , .... 264 L .
  • File table 254 is associated with a file.
  • File table 254 includes at least one sector entry. For convenience of explanation and presentation only one file table is shown in Figure 9.
  • Each sector entry in file table 254 includes a pointer to a respective sector in a virtual memory 258.
  • the first sector entry in file table 254 includes a pointer to sector 256i in virtual memory 258, the second sector entry in file table 254 includes a pointer to sector 256 2 in virtual memory 258 and the M th sector entry in file table 254 includes a pointer to sector 256 M in virtual memory 258.
  • File system 250 further includes a file root table 252.
  • File root table 252 includes at least one file entry.
  • Each file entry in file root table 252 includes attributes (e.g., file name, file size, file type, date modified and the like) of each virtual file.
  • Each file entry in file root table 252 further includes a pointer to a file table associated with one of the virtual.
  • the file entry of the first file in file root table 252 includes a pointer to file table 254.
  • processor 260 processes the file stored in memory 262 and generates the virtual file as if this file is stored in virtual memory 258.
  • a file may be stored in one format (e.g., the format occupying the least space in memory 262) and presented to the portable device (not shown) in another format compatible with the portable device.
  • virtual memory 258 is not a physical memory but a link between the virtual files presented to portable device and actual file stored in the storage device.
  • the sectors 256- ⁇ , 256 2 , ... , 256 M are not necessarily the similar 264 ⁇ 264 2 , ...
  • file manager 160 accesses the file stored in memory 262 according to the first file entry in file root table 252.
  • Media converter 158 ( Figure 6) converts the at least a portion of the data objects stored in sectors 264- 1 , 264 2 , ... , 264 L from one format to another format.
  • File manager 160 receives the converted data objects (i.e., in the other format) from media converter 158 ( Figure 6) and presents the data objects to the portable device.
  • each file includes at least one data object (not shown).
  • Each file is stored in memory 298 in a plurality of sectors 30O 1 , 30O 2 , ... , 300 M .
  • Each sector stores a data object.
  • Associated with each file are respective a plurality of file tables.
  • File tables 284 and 286 are associated with a file.
  • Each of file tables 284 and 286 includes at least one sector entry. For convenience of explanation and presentation only two file tables is shown in Figure 10.
  • Each file table is associated with a respective virtual memory.
  • File table 284 is associated with virtual memory 292 and file table 286 is associated with virtual memory 294.
  • Each sector entry in file tables 284 and 286 includes a pointer to a respective sector in a virtual memory 292 and 294 respectively.
  • the first sector entry in file table 284 includes a pointer to sector 28S 1 in virtual memory 292
  • the second sector entry in file table 284 includes a pointer to sector 288 2 in virtual memory 292
  • the M th sector entry in file table 284 includes a pointer to sector 288 M in virtual memory 292.
  • the first sector entry in file table 286 includes a pointer to sector 29O 1 in virtual memory 294, the second sector entry in file table 286 includes a pointer to sector 29O 2 in virtual memory 294 and the M th sector entry in file table 286 includes a pointer to sector 290 M in virtual memory 292.
  • File managing system 280 further includes a file root table 282.
  • File root table 252 includes at least two file entries. Each file entry in file root table 282 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in virtual memories 292 and 294. Each file entry in file root table 282 further includes pointers to a file table associated with one of the virtual files. The file entry of the first file in file root table 282 includes a pointer to file table 284. The file entry of the second and the N th file in file root table 282 includes a pointer to file table 286.
  • processor 296 processes the file stored in memory 298 and generates the virtual files as if these files are stored in virtual memories 292 and 294.
  • processor 296 processes the file stored in memory 298 such that the portable device access this file as if it was stored in the format compatible with the portable device.
  • a plurality of virtual files may be generated from a single file and presented to the portable device (e.g., the same data stored in one file format may be presented to the portable device as different files of different formats).
  • file manager 160 ( Figure 6) accesses the file stored in memory 298 according to the first file entry in file root table 282.
  • Multimedia converter 158 ( Figure 6) converts the at least a portion of the data objects stored in sectors 30O 1 , 30O 2 , ..., 300 M from one format to another format.
  • File manager 160 receives the converted data objects (i.e., in the other format) and presents the data objects to the portable device. Similarly, file manager 160 ( Figure 6) accesses the file stored in memory 298 according to the first file entry in file root table 282. media converter 158 ( Figure 6) converts the at least a portion of the data objects stored in sectors 30O 1 , 30O 2 , ... , 300 M from the one format to another different format. File manager 160 ( Figure 6) receives the converted data objects (i.e., in the other format) from media converter 158 ( Figure 6) and presents the data objects to the portable device.
  • the encoder differentiates the data to be encoded according to the type of data.
  • Data that requires one type of error correcting code e.g., executable files, documents, control information, file headers
  • Data that requires another type of error correcting code e.g. a file that may be affected by errors without substantial affect on the user or data that is already encoded
  • System 320 includes a portable device 322, a data receiver 324, a first error correcting code encoder 326, a second error correcting code encoder 328, a data writer 330 and a memory 332.
  • Memory 332 includes two sections error free section 334 and a regular 336.
  • System 320 further includes a data reader 338, a first error correcting code decoder 340 and a second error correcting code decoder 342, a data combiner 352 and a data transmitter 354.
  • First error correcting code decoder 340 includes a first error detector 344 and a first error corrector 346.
  • Second error correcting code decoder 342 includes a second error detector 348 and a second error corrector 350.
  • First error correcting code encoder 326 and first error correcting code decoder 340 are associated with a first error correcting code (e.g., CRC 1 BCH, Reed - Solomon).
  • Second error correcting code encoder 328 and second error correcting code decoder 342 are associated with a second error correcting code.
  • Data receiver 324 is coupled with portable device 322, with error correction code encoder 326 and with data writer 330.
  • Data writer 330 is coupled with first error correcting code encoder 326, with second error correcting code encoder 328 and with memory 332.
  • Data reader 338 is coupled with memory 332, with first error detector 344 and with second error detector 348.
  • Data combiner 352 is coupled with first error detector 344, with second error detector 348, with first error corrector 346, with second error corrector 350 and with data transmitter 344.
  • Data transmitter 344 is further coupled with portable device 322.
  • Data receiver 324 receives the data to be stored from portable device 322 and analyzes the received data. When the received data requires a first type of encoding, then, data receiver 324 provides the data to first error correcting code encoder 326. When the received data requires a second type of encoding, then, data receiver 324 provides the data to second error correcting code encoder 328. Either first error correcting code encoder 326, or second error correcting code encoder 328 receive the data from data receiver 324, and encode the data according to the respective error correction code thereof. Data writer 330 receives the data from either first error correcting code encoder 326, or second error correcting code encoder 328 and writes the encoded data to the appropriated section in memory 332 according to the type of data.
  • data reader 338 When portable device 322 requires data from memory 332, data reader 338 reads the required data from memory 332. Data reader 338 analyzes the data. When the data is encoded with the first error correcting code, then, data reader 338 provides the data to first error detector 344. First error detector 344 receives the data from data reader 338 and detects if error occurred in the data. When first error detector 344 detects no errors in the data, then, error detector 344 provides the data to data combiner 352. When first error detector 344 detects errors in the data, then, first error detector 344 provides the data to first error corrector 346. First error corrector 346 receives the data from error detector 344, attempts to correct the errors in the data according to the respective error correcting code thereof and provides the corrected data to data combiner 350.
  • data reader 338 When the data is encoded with the second error correcting code, then, data reader 338 provides the data to first error detector 348.
  • Error detector 348 receives the data from data reader 338 and detects if error occurred in the data. When error detector 348 detects no errors in the data, then, error detector 348 provides the data to data combiner 350. When error detector 348 detects errors in the data, then error detector 348 provides the data to second error corrector 350.
  • Second error corrector 350 receives the data from error detector 348, attempts to correct the errors in the data according to the respective error correcting code thereof and provides the corrected data to data combiner 350.
  • Data combiner 350 receives the data from either first error detector 344, first error corrector 346, second error detector 348 or second error corrector 350, combines the different parts of the data (e.g., a file header with the file) and provides the combined data to data transmitter 344.
  • Data transmitter 354 transmits the data to portable device 322.

Abstract

A smart multimedia storage device, for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format. The smart multimedia storage device includes a memory, for storing a multimedia file in one format; and a multimedia processor. The multimedia processor converts the format of the multimedia file from the one format to the predetermined format, when the portable device communicates with the smart multimedia storage device.

Description

A SMART DATA STORAGE DEVICE COMPATIBLE WITH VARIOUS PORTABLE DEVICES
Arie FRENKLAKH and IIya MARGULIS
FIELD OF THE DISCLOSED TECHNIQUE
The disclosed technique relates to data storage devices, in general, and to systems for processing files in data storage devices in particular.
BACKGROUND OF THE DISCLOSED TECHNIQUE
Portable electronic devices are often employed to process high quality multimedia files (e.g., video clips, movies, music, pictures and the like) of various formats. Such portable devices may include, for example, mobile phones, handheld computers, personal digital assistants (PDA), dedicated multimedia players and the like. The multimedia content is stored in data storage devices, such as removable memory cards or embedded memory, which usually employ non-volatile memory. Certain multimedia processors are capable of processing files of a predetermined format, while these processors cannot process other formats. The format of a multimedia file may be changed to another format, for example, in order to make the file readable by another processor, which was unable to read the original format.
Reference is now made to Figure 1 , which is a schematic illustration of an exemplary portable device and a multimedia data storage device, as known in the art. The portable device, generally referenced 10, includes a glue logic 18, a multimedia processor 20, a micro processor 22, a wireless communication 24 and a battery 25. Portable device 10 further includes a plurality of input/output components, for example a camera 12, an audio component 14 and a screen 16. Camera 12, audio component 14 and screen 16 are coupled with multimedia processor 20 (if present) and micro processor 22, through glue logic 18. Micro processor 22 is further coupled with wireless communication 24. It is noted, that multimedia processor 20 is optional, and may be omitted from portable device 10.
The multimedia data storage device, generally referenced 26, includes a memory 28 and a plurality of multimedia files 291 ? 292, 293. Multimedia files 29i, 292, 293 are stored in memory 28. Data storage device 26 may be, for example, a memory stick, a flash memory, a Secure Digital (SD) memory card, and the like. Data storage device 26 communicates with portable device 10, for example, by inserting an SD memory card into portable device 10. In this manner, portable device 10 may access multimedia files 29i, 292, 293 (e.g., via multimedia processor 20, if present) from data storage device 26, and display these files to a user (not shown), by the output components of portable device 10. Portable device 10 accesses multimedia files 29i, 292, 293 in the format in which files 29i, 292, 293 are stored in data storage device 26. If portable device 10 recognizes this format, it may decode and process multimedia files 29i, 292, 293 by the output components (e.g., audio component 14 or screen 16). However, if portable device 10 does not recognize the format of multimedia files 291 t 292, 293, it may mot decode and present these files to the user.
A situation may arise where the portable device may not support the format of file stored in the data storage device format. Thus, the portable device would not be able to process a multimedia file of that certain format. One known solution for this problem is saving each multimedia file in various formats each compatible with a different of portable device. However, the amount of storage space required to store files in different formats is increased proportionally to the number of formats. Incompatibility of multimedia file formats also makes it difficult to transfer files from one portable device to another, each device having different multimedia abilities. Another known solution for the above problem, is to convert the multimedia file from the original format to another format, by more complex software application on the portable device. Alternatively, a more sophisticated multimedia processor may be employed in the portable device, for example, such that the processor is compatible with more file formats. Further alternatively, an external multimedia processor may be employed to convert the format of a multimedia file.
The above solutions exhibit several drawbacks. Existing portable devices do not support a plurality of formats. When the multimedia processor of a portable device is required to process a multimedia file of different formats, or to convert a multimedia file from one format to another, then the complexity of such device is increased. One result in this increase in complexity is an increase of the power consumption of the processor from the battery of the portable device and a reduction in battery life time. The power consumption of the multimedia processor from the battery of the portable device also depends on the complexity of the device architecture, the frequency of memory access and the like. Furthermore, multimedia content sources do not always provide file formats which are compatible with the portable device. For example, a high-quality DVD file exhibits quality suitable for a TV screen but not suitable for the screen of the portable devices (i.e., due to the lower resolution of the screen of the portable device relative to the resolution of the TV screen). Consequently, unnecessary storage space is used to store the file in the content source format the and processing of this file is more complex
Typically, portable device operate within a communication network (e.g., cellular phones, PDA's) and a communication network standard. Examples of communication network standards are Code Division Multiple Access (CDMA), Global System for Mobile communications (GSM)1 Universal Mobile Telecommunications System (UMTS), and the like. The lack of uniformity among network standards remains while new more advanced portable devices (e.g., cellular telephones) are introduced. The network standards define, among other things, the settings of the portable device (e.g., operating frequency, protocols, supported file formats). Therefore, portable device, operating within a certain network, may not operate within another network, having different settings. Thus, when a user wishes to transfer from one wireless network to another, she must use a different portable device (e.g., handset), operable with that other network. If that user wishes to play multimedia files on the other portable devices, she must carry a separate multimedia data storage device for each of the portable devices.
Most portable devices may be considered to include three basic sections: communication section, computing section, and multimedia functionality section. The communication section may contain most of the electronics that support a particular wireless communication system, such as wireless communication 24 of Figure 1. The computing section may contain the microprocessor, such as microprocessor 22 of Figure 1 , which is responsible for basic computation and control of the portable device. The multimedia functionality section may contain electronics that support multimedia processing and functionality, such as multimedia processor 20 of Figure 1. The portable device may further include other components, such as a display, speaker, microphone, keypad, battery, and the like.
Multimedia files, stored in a data storage device, are managed by the file managing system of the portable device. Typical file managing systems (e.g., FAT, NTFS Unix file system) are built as data structures such as tables, link lists or trees. These data structures define the relation between the file name and the physical location of the data in the memory in which the file is stored. Reference is now made to Figure 2, which is a schematic illustration of a file managing system, generally reference 30, which is known in the art. In file system 30, each file is stored in a memory
38 in a plurality of locations, referred to as 'sectors' in memory 38. In general each file may be stored in one single sector. Associated with each file is a respective one file table. File table 34i is associated with a first file and file table 34N is associated with the Nth file. Each entry in file table 34! includes a pointer to a sector where a portion of the first file is stored. The first entry in file table 34.] includes a pointer to sector 36-ι, the second entry in file table 34i includes a pointer to sector 362 and the Mth entry in file table 34i includes a pointer to sector 36M. For convenience of explanation and presentation, the sectors in memory 38 in which the first file is stored, and the memory location to which the entries of file table 341 point, are not shown.
File system 30 further includes a file root table 32. Each entry in file root table 32 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in memory 38. Each entry in file root table 32 further includes a pointer to one file table associated of one of the files stored in the memory 38. The entry of the first file in file root table 32 includes a pointer to a file table 34i associated with the first file. The entry of the second file in file root table 32 includes a pointer to a file table (not shown) associated with the second file. The entry of the Nth file in file root table 32 includes a pointer to a file table 34N associated with the Nth file. Thus, when a device using a file system such as file system 30 requires access to a file, the device accesses the file table associated with that file according to the file root table, and accesses the sectors in memory 38, in which where the file is stored, according to the file table.
As memory card can be used in a variety of host devices some of these devices can face incompatibility problem with different content, mainly multimedia content stored in a memory card. As mentioned above, most common solution of such problems are either saving multiple files in different formats on the same memory card or doing file processing in the portable device. The data stored in data storage devices may incur errors originating either from the instability of the memory cells (i.e., the stored information will become corrupt during storage), or during the transmission of data from the storage device to the portable device. Portable devices employ Error Correction Codes (ECC) for correcting errors occurring during storage and retrieval of data in data storage devices (e.g., errors occurring during the storage of the data on the storage device or errors occurring during the transmission of the data between the storage device and the portable device). These error correcting codes include an encoder for encoding the data with redundant information according to the data. These error correcting codes further include a decoder detecting and correcting the errors in the data according to the data and the redundant information. A known example of implementation of ECC encoders and decoders is a software implementation of the encoder and the decoder, executed by the processor of the portable device. Another solution known in the art is a hardware software hybrid implementation where one part of the error correction is implemented in software and another is implemented in hardware. Thus, the performance (e.g., speed) of the encoder and decoder may be improved and the load on the processor of the portable device is reduced.
Reference is now made to Figure 3, which is a schematic illustration of an error correction system, generally referenced 50, which is known in the art. System 50 includes a portable device 52, a data receiver 54, an error correction code encoder 56, a data writer 58 and a memory 60. System 50 further includes a data reader 62, an error detector 64, an error correction code decoder 66 and a data transmitter 68. Data receiver 54 is coupled with portable device 52 and with error correction code encoder 56. Data writer 58 is coupled with error correction code encoder 56 and with memory 60. Data reader 62 is coupled with memory 60 and with error detector 64. Data transmitter 68 is coupled with error detector 64 and with portable device 52. Error correction decoder is coupled with error detector 64 and with data transmitter 68. Data receiver 54 receives the data to be stored from portable device 52 and provides the received data to error correction code encoder 56. Error correction code encoder 56 encodes the data according to the error correction code use (e.g., CRC, BCH, Reed - Solomon) and provides the encoded data to data writer 58. Data writer 58 writes the encoded data to memory 60.
When portable device 52 requires data from memory 60, data reader 62 reads the required data from memory 60 and provides the data to error detector 64. Error detector 64 detects if error occurred in the data (e.g., according to the party check matrix of the code). When error detector 64 detects no errors, then error detector 64 provides the data to data transmitter 68. When error detector 64 detects errors, then, error detector 64 provides the data to error correction code decoder 66. Error correction code decoder 66 attempts to correct the errors in the data and provides the corrected data to data transmitter 68. Data transmitter 68 transmits the data to portable device 52.
SUMMARY OF THE PRESENT DISCLOSED TECHNIQUE
It is an object of the disclosed technique to provide a novel method and system for processing files when coupling a smart multimedia storage device with a portable device. In accordance with the disclosed technique, there is thus provided a smart multimedia storage device, for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format. The smart multimedia storage device includes a memory, for storing a multimedia file in one format; and a multimedia processor. The multimedia processor converts the format of the multimedia file from the one format to the predetermined format, when the portable device communicates with the smart multimedia storage device.
In accordance with another aspect of the disclosed technique, there is thus provided a smart multimedia storage device, for coupling with a plurality of wireless communication portable devices, each portable device being operable with a different wireless communication network standard. The smart multimedia storage device includes a memory, for storing at least one multimedia file in one format, the memory further storing multimedia settings and multimedia functionality information, and a multimedia processor. When one of the portable devices is coupled with the smart multimedia storage device, the multimedia processor converts the format of the multimedia file from the one format to another format, accessible by the one portable device, and providing the multimedia settings and multimedia functionality information to the one portable device.
In accordance with a further aspect of the disclosed technique, there is thus provided a smart multimedia storage device, for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format. The smart multimedia storage device includes a communication interface, communicating with the portable device, and a storage area for storing at least one data file in at least one sector in the storage area. Each data file includes at least one data object, each of the sectors storing one of the data objects. The smart multimedia storage device also includes a processor, coupled with the communication interface, and with the storage area. The processor includes a media converter and a file manager. The file manager accesses the data objects of the data file according either one of at least two file entries in a file root table. The file manager presents the data objects to the portable device. In accordance with another aspect of the disclosed technique, there is thus provided a smart multimedia storage device, for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format. The smart multimedia storage device includes a communication interface, communicating with the portable device, and a storage area for storing at least one data file in at least one sector in the storage area. Each data file includes at least one data object, each of the at least one sector storing one of the at least one data objects. The smart multimedia storage device also includes a processor, coupled with the communication interface, and with the storage area. The processor includes a media converter and a file manager, the file manager accessing the all of the at least one data object of the data file stored in the storage area according to one file entry in a file root table. The file manager access a portion of the at least one data object according to another file entry in the file root table. The file manager presents the at least one data object to one of the portable devices.
In accordance with a further aspect of the disclosed technique, there is thus provided a smart multimedia storage device, for coupling with a portable device, the portable device being operable to access multimedia files of a predetermined format. The smart multimedia storage device includes a communication interface, communicating with the portable device, and a storage area for storing for storing at least one data file in at least one sector in the storage area, each data file includes at least one data object, each of the at least one sector storing one of the at least one data objects. The smart multimedia storage device also includes a processor, coupled with the communication interface, and with the memory. The processor includes a media converter and a file manager, the file manager accessing the at least one data file according to one file entry in a file root table. The media converter converts at least a portion of the at least one data object from one format to at least one other format. The file manager receives the converted portion of the data objects and presents the converted portion of the at least one data object to one of the portable devices.
In accordance with a further aspect of the disclosed technique, there is thus provided, in a smart multimedia storage device, for coupling with a portable device, a differential error correcting system. The differential error correcting system includes a memory, including an error free sector and a regular sector, and at least two error correcting code encoders, coupled with the memory. Each of the at least two error correcting code encoders are associated with a respective error correcting code. Each one of the at least two error correcting code encoders encoding data of a data type different from the data types encoded by the others of the at least two error correcting code encoders according to the error correction code respective of the one of the at least two error correcting code encoders. The differential error correcting system also includes at least two error correcting code decoders, coupled with the memory. Each of the at least two error correcting code decoders are associated with a respective error correcting code encoder, each of the at least two error correcting code decoders decoding the data of the data type respective of the respective error correcting code encoder. BRIEF DESCRIPTION OF THE DRAWINGS
The disclosed technique will be understood and appreciated more fully from the following detailed description taken in conjunction with the drawings in which: Figure 1 is a schematic illustration of an exemplary portable device and a multimedia data storage device, as known in the art;
Figure 2 is a schematic illustration of a file managing system, which is known in the art;
Figure 3 is a schematic illustration of an error correction system, which is known in the art;
Figure 4 is a schematic illustration of a smart multimedia storage and processing system, constructed and operative in accordance with an embodiment of the disclosed technique;
Figure 5 is a schematic illustration of a Modular Cellular Phone System (MCPS), constructed and operative according to another aspect of the disclosed technique;
Figure 6 is a schematic illustration of a smart multimedia storage device, constructed and operative in accordance with a further embodiment of the disclosed technique; Figure 7 is a schematic illustration of a file managing system, constructed and operative in accordance with a further embodiment of the disclosed technique;
Figure 8 is a schematic illustration of file managing system, constructed and operative in accordance with another embodiment of the disclosed technique;
Figure 9 is a schematic illustration of file managing system, constructed and operative in accordance with another embodiment of the disclosed technique;
Figure 10 is a schematic illustration of file managing system, constructed and operative in accordance with another embodiment of the disclosed technique; and Figure 11 is a schematic illustration of an error correction system, constructed and operative in accordance with a further embodiment of the disclosed technique.
DETAILED DESCRIPTION OF THE EMBODIMENTS
The disclosed technique overcomes the disadvantages of the prior art by providing a method and system for preprocessing multimedia file formats on the storage device before processing the file on a portable device. According to the disclosed technique, a multimedia file may be preloaded into a smart multimedia storage device in a predetermined format. When a portable device accesses the file, a multimedia processor on the card processes the file and transfers it to the portable device in raw format or in another format, with which the portable device is compatible. Further alternatively, the multimedia file may be transferred to the smart multimedia storage device in any format (e.g., raw or compressed). The smart multimedia storage device then performs "on-the-fly" processing of the data, and stores it in a desired predetermined format. When a portable device accesses the file, a multimedia processor on the smart multimedia storage card processes the file and transfers it to the portable device in raw format or another format, with which the portable device is compatible.
Furthermore, the disclosed technique overcomes the disadvantages of the prior art by providing a novel file managing system for processing the files stored in the data storage device according to one format and presenting the file to the portable device in another format compatible with the portable device. Further yet, a plurality of entries, in the file root table may point to the same file table. Thus, portable devices, supporting, different file attributes can access the same file without storing multiple copies of the same file. In addition, the same file may be associated with two different file tables and with two different entries in the file root table. Accordingly, each entry in the file root table access a different portion of the file stored in the data storage device.
Additionally, the disclosed technique overcomes the disadvantages of the prior art by providing a system for differential Error Correction encoding and decoding of data. Accordingly, data files that require a one type of error correction (e.g., executable files, documents, control information,) are encoded according to the error correcting code and stored in the data storage device. Data files that require another type of error correction (e.g. multimedia file that may be affected by errors without substantial affect on the user or data that is already encoded) are encoded according to the other type of error correcting code and stored in the data storage device.
Reference is now made to Figure 4, which is a schematic illustration of a smart multimedia storage and processing system, generally referenced 100, constructed and operative in accordance with an embodiment of the disclosed technique. Smart multimedia storage and processing system 100 includes a portable device 130 and a smart multimedia storage device 120. Portable device 130 includes a glue logic 108, a multimedia processor 110, a micro processor 112, a wireless communication 114 and a battery 116. Portable device 130 further includes a plurality of input/output components, for example a camera 102, an audio component 104 and a screen 106. Camera 102, audio component 104 and screen 106 are coupled with multimedia processor 110 and micro processor 112, through glue logic 108. Micro processor 112 is further coupled with wireless communication 114.
Portable device 130 processes multimedia files (e.g., via multimedia processor 110), for example, in order to present them to a user (not shown), through at least one of the output components (e.g., playing a movie through audio component 104 and screen 106). Microprocessor 112 executes a plurality of processes on portable device 130, for example, for managing communication of the portable device, performing various calculations, and the like. It is noted, that multimedia processor 110 and microprocessor 112 may be incorporated into a single processor (not shown). Wireless communication 114 enables portable device 130 to communicate with a wireless network. For example, when portable device 130 is a cellular telephone, wireless communication 114 enables the cellular telephone to communicate with a cellular communication network. Battery 116 provides electrical power to the various components of portable device 130. It is noted, that portable device may include further input/output components other than camera 102, audio component 104 and screen 106. Glue logic 108 coordinates the functions of the input/output components, according to demands received from multimedia processor 110 and micro processor 112.
Smart multimedia storage device 120 includes a memory 122, a plurality of multimedia files 124, 125 and 127, and a multimedia processor 126. Multimedia files 124, 125 and 127 are stored in memory 122. Smart multimedia storage device 120 may be, for example, a memory stick, a flash memory, a Secure Digital (SD) memory card, and the like. Smart multimedia storage device 120 communicates with portable device 130, for example, by coupling an SD memory card into the portable device. In this manner, multimedia processor 110 of portable device 130 may access and process multimedia files 124, 125 or 127 from storage device 120, and present these files to a user (not shown), through the output components of portable device 130. Memory 122 may be a non-volatile (flash) memory. It is noted, that multimedia files 124, 125 and 127 are stored in the most appropriate format, determined at the time of file storage. Determining the most appropriate multimedia file format may be, for example, by employing an external PC application considering the format of the source file and the characteristics of portable device 130, or by multimedia processor 126 during the file copy. It is noted, that although the following description relates to multimedia file 124, it is similarly applicable for any of the other multimedia files 125 or 127.
When multimedia file 124 is stored on smart multimedia storage device 120, it may already be converted to a specific format supported by smart multimedia storage device 120 and multimedia processor 126, by an external application. Alternatively, multimedia file 124 may be converted in real time by multimedia processor 126 from its original format to a desired predetermined format (i.e., during the transfer of file 124 to portable device 130). Further alternatively, smart multimedia storage device 120 may be configured, such that whenever a multimedia file is stored in memory 122, the file is converted to a uniform desirable in order to simplify the processing of files in smart multimedia storage device 120.
When smart multimedia storage device 120 communicates with portable device 130, multimedia processor 126 processes file 124, to adjust the format of file 124 to a format accessible by multimedia processor 110. When necessary, multimedia processor 126 converts the format of multimedia file 124, such that multimedia processor 110 of portable device 130 would be able to access and process file 124. For example, when multimedia file 124 is saved in a uniform desirable format, a user (not shown) of smart multimedia storage device 120 may select a desirable format, accessible by multimedia processor 110. Multimedia processor 126 then converts multimedia file 124 to the desired format, thereby enabling access to the file by the portable device. Furthermore, multimedia processor 126 may adjust other settings of multimedia file 124, to match the settings of portable device 130. Settings of multimedia file 124 may include, for example, screen resolution, processing efforts, and the like. This may be performed, by using multiple file representations, wherein each representation has different settings, or by choosing a known common multimedia format, which is likely to be recognized by portable device 130. Alternatively, multimedia processor 126 may adjust the settings of multimedia file 124, after requesting and receiving information regarding preferable settings from portable device 130. For example, multimedia processor 126 may reduce the screen resolution of a video file or a picture, in case the file was originally saved in a format suitable for a larger screen.
According to another embodiment of the disclosed technique, multimedia file 124 may be encrypted or decrypted by smart multimedia storage device 120, or by another external cryptographic engine, in order to secure the data of file 124. It is noted, that different levels of security may be used to encrypt or decrypt certain multimedia files. Alternatively, portable device 120 may employ a certain level of security in handling all or selected files. For example, Digital Rights Management (DRM) schemes may be applied to the stored files, in order to allow limited access to the files by approved users. For further example, it is possible to encrypt multimedia files stored in the file storage device to prevent direct access to files. The smart multimedia storage device encrypts any file stored in the memory, according to a predetermined key, which can be stored inside the storage device or transferred by the portable device before accessing the file. Alternatively, the smart multimedia storage device may encrypt the data stream from the smart multimedia storage device to the portable device, while accessing the file in the storage device. The encryption key can be stored inside the smart multimedia storage device card or transferred by the portable device before accessing the file. It is noted, that while the present description relates specifically to multimedia files, the disclosed technique is applicable to other types of files, with the necessary changes. Such files may be, for example, text files, documents, graphic files, executable files, game files and the like. According to another aspect of the disclosed technique, the smart multimedia storage device is employed in a Modular Cellular Phone System (MCPS). In the MCPS, the storage device may be coupled with either one of a plurality of handsets, each operable with a different wireless network standard, thereby allowing transferring multimedia content between the handsets when changing wireless networks.
Reference is further made to Figure 5, which is a schematic illustration of a MCPS, generally referenced 140, constructed and operative according to another aspect of the disclosed technique. MCPS 140 includes a plurality of handsets - a GSM handset 142A, a UMTS handset 142B, and a CDMA handset 142C, and a smart multimedia storage device 144. Smart multimedia storage device 144 is similar to smart multimedia storage device 120 of Figure 4. Handset 142A is operable with a wireless communication network, operating according to the GSM standard. Handset 142B is operable with a wireless communication network, operating according to the UMTS standard. Handset 142C is operable with a wireless communication network, operating according to the CDMA standard.
When a user (not shown) changes between wireless networks, each operating according to a different standard, she must use a different handset for each network. For example, while communicating in a GSM wireless network, the user employs smart multimedia storage device 144, by coupling storage device 144 with GSM handset 142A. When transferring to a UMTS wireless network, the user may remove smart multimedia storage device 144 and couple it with UMTS handset 142B. Alternatively, when transferring to a CDMA wireless network, the user may remove smart multimedia storage device 144 and couple it with CDMA handset 142C. Smart multimedia storage device 144 is configured to be coupled with a variety of handset to provide a versatile communication system. The user may thus continue to use the same multimedia functionality, stored in smart multimedia storage device 144, while migrating to a new wireless or cellular network, and while using a different handset. Additionally, smart multimedia storage device 144 may replace or upgrade the multimedia functionality of the handset, with which it is coupled. For example, if the handset does not allow multimedia processing, smart multimedia storage device 144 enables multimedia processing for the handset, thereby upgrading the handset's abilities. It is noted, that the different handsets (such as GSM handset 142A, UMTS handset 142B and CDMA handset 142C) may inhibit different basic or advanced characteristics, such as different mechanical design, or different peripheral input/output components (e.g., camera, speaker, and screen). It is noted, that while the present description and drawings relate to handsets of a certain shape, this shape should not be considered limiting for the disclosed technique, which may be applicable for other handsets of portable devices. It is further noted, the disclosed technique may be applicable to other portable devices, which do not include handsets at all, such as portable computers, PDA's, GPS units and the like. In such a case, the portable devices themselves replace the handsets in the above description, with the required changes. Furthermore, the different wireless standards mentioned in the present description are given for better understanding of the disclosed technique, and do not limit the present disclosure to such standards. In other words, the disclosed technique may enable migration between any wireless/cellular networks with any portable devices, while maintaining the same multimedia functionality module (or alternatively upgrading the multimedia module in any portable device).
The following describes a file managing system in a smart multimedia storage device. According to a further embodiment of the disclosed technique, the above mentioned smart multimedia storage device includes a file managing system which enables different portable devices, supporting different file attributes, to access the same file, by including a plurality of different entries in the file root table pointing to the same file table.
Reference is now made to Figure 6, which is a schematic illustration of a smart multimedia storage device, generally referenced 150, constructed and operative in accordance with a further embodiment of the disclosed technique. Smart multimedia storage device 150 includes a storage area 152, a processor 154 and a communication interface 156. Processor 154 further includes a media converter 158 and a file manager 160. Processor 154 is coupled with storage area 152 and with communication interface 156. Smart multimedia storage device 150 is similar to smart multimedia storage device 120 of Figure 4. Smart multimedia storage device 150 may be coupled with a portable device (not shown, e.g., such as portable device 130 of Figure 4), via communication interface 156.
Storage area 152 stores data files, for example multimedia files. Storage area 152 may be a non-volatile (flash) memory. Media converter 158 processes multimedia files stored in memory 152, similarly to multimedia processor 126 of Figure 4. File manager 160 manages the storage and access of the files stored in memory 152. The operation of file manager processor 160 will be elaborated herein after with reference to Figures 7, 8, 9 and 10. Reference is now made to Figure 7, which is a schematic illustration of a file managing system, generally referenced 200, constructed and operative in accordance with another embodiment of the disclosed technique. In file managing system 200, each file includes at least one of data objects (not shown). Each file is stored in memory 208 in a plurality of sectors 2Oe1, 2062, ... , 206M. Each sector stores a data object. Associated with each file is a respective one file table. File table 204 is associated with a file. File table 204 includes at least one sector entry. Each sector entry in file table 204 includes a pointer to a sector where a portion of the file is stored. The first sector entry in file table 204 includes a pointer to sector 206.,, the second sector entry in file table 204-i includes a pointer to sector 2062 and the Mth sector entry in file table 204-t includes a pointer to sector 206M. It is noted that for convenience of explanation and presentation, the sectors in memory 208 in which only one file is stored, and to where the entries of file table 224 point, are shown. However, file managing system 200 may manage a plurality of files and thus include a plurality of file tables.
File system 200 further includes a file root table 200 including at least two file entries. Each entry in file root table 202 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in memory 208. Each file entry in file root table 202 further includes a pointer to a file table associated with one of the files stored in the memory 208. The file entry of the first file in file root table 202 includes a pointer to a file table 204 associated with the first file. The file entry of the second file in file root table 202 includes a pointer also to file table 204. Thus, for example, when one portable device supports files with one set of attributes and another portable device supports files with another set of attributes, the file stored in memory 208 may be accessed by both portable devices without storing the same data in two different files. It is noted that, in file system 200, an action performed on the file according to one entry in file root table 202, is also performed on the other entries in file root table 202 associated with the same file. For example, when a portable device deletes the file according to the first entry in file root table 202, then the second entry in file root table 202 is deleted as well. Accordingly, file manager 160 (Figure 6) accesses the file stored in memory 208 according either one of the first or second file entries in file root table 202. File manager 160 (Figure 6) presents the file the portable device.
According to another embodiment of the disclosed technique, the different parts of the same file are accessed by two different file tables. Accordingly, a portable device accesses the entire file according one file entry in the file root table associated with the entire file (i.e., a file table which includes pointers to all the sectors in the memory wherein the file is stored). The portable device accesses part of the file (e.g., preview of a multimedia file, the table of contents of a document) according to another file entry in the file root table associated with that same part of the file (i.e., another file table which includes pointers only to the sectors in the memory in which the respective part of the file is stored).
Reference is now made to Figure 8, which is a schematic illustration of file managing system, generally referenced 220, constructed and operative in accordance with another embodiment of the disclosed technique. In file managing system 220, each file includes at least one data object (not shown). Each file is stored in memory 230 in a plurality of sectors 230-I, 23O2, 230M. Each sector stores a data object. Associated with each file are respective file tables. File tables 224 and 226 are associated with a file. Each of file tables 224 and 226 includes at least one sector entry. Each sector entry in file tables 224 and 226 includes a pointer to a sector where a portion of the file is stored. The first sector entry in file table 224 includes a pointer to sector 23O1, the second sector entry in file table 224 includes a pointer to sector 23O2 and the Mth sector entry in file table 224 includes a pointer to sector 230M. File table 226 includes only two sector entries, each including a pointer to a sector in which a part of the file is stored. The first sector entry in file table 226 includes a pointer to sector 23O1 and the second sector entry in file table 224 includes a pointer to sector 23O2. It is noted that for convenience of explanation and presentation, the sectors in memory 230 in which only one file is stored, and to where the sector entries of file tables 224 and 226 point, are shown. However, file managing system 220 may manage a plurality of files and thus include a plurality of file tables.
File managing system 220 further includes a file root table 222. File root table includes at least two file entries. Each file entry in file root table 222 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in memory 230. Each file entry in file root table 222 further includes a pointer to a file table associated with one of the files stored in the memory 230. The file entry of the first file in file root table 202 includes a pointer to one of file tables 224 and 226 associated with the file. Thus, the portable device accesses part of the file according to one file entry in the file root table associated with part of the file, and accesses part of the file according to another file entry in the file root table associated with the file. Accordingly, file manager 160 (Figure 6) accesses the entire file stored in memory 260 according to the first file entry in file root table 222. File manager 160 (Figure 6) accesses parts of the file stored in memory 260 according to the second file entry in file root table 222. File manager 160 (Figure 6) presents the file the portable device. Thus, for example, a portable device (not shown) accesses part of the file (e.g., preview of a multimedia file, the table of contents of a document) while the entire file may be protected (e.g., with a password).
According to a further embodiment of the disclosed technique, a data is stored in the data storage device in one file format and presented to the portable as a file in another format compatible with the portable device. As mentioned above, the file format in which the data is stored in the portable device may be a predetermined file format. When the portable device is requires processing a file from the data storage device (e.g., play an audio file such as a song), then, the processor, located on the data storage device converts the file from the stored format to the format compatible with the portable device. The processor determines the file format to which the data is converted according to input from the user of the portable device (e.g., by selecting a specific file to be processed by the portable device) or according to information related to the portable device received from the portable device.
Reference is now made to Figure 9, which is a schematic illustration of file managing system, generally reference 250, constructed and operative in accordance with a further embodiment of the disclosed technique. In file managing system 250, each file includes at least one data object (not shown). Each file is stored in memory 262 in a plurality of sectors 264-ι, 2642, .... 264L. Associated with each file are respective file tables. File table 254 is associated with a file. File table 254 includes at least one sector entry. For convenience of explanation and presentation only one file table is shown in Figure 9. Each sector entry in file table 254 includes a pointer to a respective sector in a virtual memory 258. The first sector entry in file table 254 includes a pointer to sector 256i in virtual memory 258, the second sector entry in file table 254 includes a pointer to sector 2562 in virtual memory 258 and the Mth sector entry in file table 254 includes a pointer to sector 256M in virtual memory 258. File system 250 further includes a file root table 252. File root table 252 includes at least one file entry. Each file entry in file root table 252 includes attributes (e.g., file name, file size, file type, date modified and the like) of each virtual file. Each file entry in file root table 252 further includes a pointer to a file table associated with one of the virtual. The file entry of the first file in file root table 252 includes a pointer to file table 254. When the portable device accesses the virtual file, processor 260 processes the file stored in memory 262 and generates the virtual file as if this file is stored in virtual memory 258. Thus, a file may be stored in one format (e.g., the format occupying the least space in memory 262) and presented to the portable device (not shown) in another format compatible with the portable device. It is noted that virtual memory 258 is not a physical memory but a link between the virtual files presented to portable device and actual file stored in the storage device. Thus, the sectors 256-ι, 2562, ... , 256M are not necessarily the similar 264^ 2642, ... , 264L (i.e., the number of sectors and the size of each sector in virtual memory 258 may not be the same as the number and size of the sector in memory 262. Accordingly, file manager 160 (Figure 6) accesses the file stored in memory 262 according to the first file entry in file root table 252. Media converter 158 (Figure 6) converts the at least a portion of the data objects stored in sectors 264-1, 2642, ... , 264L from one format to another format. File manager 160 (Figure 6) receives the converted data objects (i.e., in the other format) from media converter 158 (Figure 6) and presents the data objects to the portable device.
Reference is now made to Figure 10, which is a schematic illustration of file managing system, generally reference 280, constructed and operative in accordance with another embodiment of the disclosed technique. In file managing system 280, each file includes at least one data object (not shown). Each file is stored in memory 298 in a plurality of sectors 30O1, 30O2, ... , 300M. Each sector stores a data object. Associated with each file are respective a plurality of file tables. File tables 284 and 286 are associated with a file. Each of file tables 284 and 286 includes at least one sector entry. For convenience of explanation and presentation only two file tables is shown in Figure 10. Each file table is associated with a respective virtual memory. File table 284 is associated with virtual memory 292 and file table 286 is associated with virtual memory 294. Each sector entry in file tables 284 and 286 includes a pointer to a respective sector in a virtual memory 292 and 294 respectively. The first sector entry in file table 284 includes a pointer to sector 28S1 in virtual memory 292, the second sector entry in file table 284 includes a pointer to sector 2882 in virtual memory 292 and the Mth sector entry in file table 284 includes a pointer to sector 288M in virtual memory 292. The first sector entry in file table 286 includes a pointer to sector 29O1 in virtual memory 294, the second sector entry in file table 286 includes a pointer to sector 29O2 in virtual memory 294 and the Mth sector entry in file table 286 includes a pointer to sector 290M in virtual memory 292. File managing system 280 further includes a file root table 282.
File root table 252 includes at least two file entries. Each file entry in file root table 282 includes attributes (e.g., file name, file size, file type, date modified and the like) of each file stored in virtual memories 292 and 294. Each file entry in file root table 282 further includes pointers to a file table associated with one of the virtual files. The file entry of the first file in file root table 282 includes a pointer to file table 284. The file entry of the second and the Nth file in file root table 282 includes a pointer to file table 286. When the portable device accesses the virtual files, processor 296 processes the file stored in memory 298 and generates the virtual files as if these files are stored in virtual memories 292 and 294. In other words, processor 296 processes the file stored in memory 298 such that the portable device access this file as if it was stored in the format compatible with the portable device. Thus, a plurality of virtual files may be generated from a single file and presented to the portable device (e.g., the same data stored in one file format may be presented to the portable device as different files of different formats). Accordingly, file manager 160 (Figure 6) accesses the file stored in memory 298 according to the first file entry in file root table 282. Multimedia converter 158 (Figure 6) converts the at least a portion of the data objects stored in sectors 30O1, 30O2, ..., 300M from one format to another format. File manager 160 (Figure 6) receives the converted data objects (i.e., in the other format) and presents the data objects to the portable device. Similarly, file manager 160 (Figure 6) accesses the file stored in memory 298 according to the first file entry in file root table 282. media converter 158 (Figure 6) converts the at least a portion of the data objects stored in sectors 30O1, 30O2, ... , 300M from the one format to another different format. File manager 160 (Figure 6) receives the converted data objects (i.e., in the other format) from media converter 158 (Figure 6) and presents the data objects to the portable device
The following describes the differential error correction of files stored in a smart multimedia storage device. According to a further embodiment of the disclosed technique, the encoder differentiates the data to be encoded according to the type of data. Data that requires one type of error correcting code (e.g., executable files, documents, control information, file headers) is encoded according to this error correcting code and stored in the data storage device. Data that requires another type of error correcting code (e.g. a file that may be affected by errors without substantial affect on the user or data that is already encoded) is encoded according to this other type of error correcting code and stored the data storage device. Reference is now made to Figure 11 , which is a schematic illustration of an error correction system, generally referenced 320, constructed and operative in accordance with a further embodiment of the disclosed technique. System 320 includes a portable device 322, a data receiver 324, a first error correcting code encoder 326, a second error correcting code encoder 328, a data writer 330 and a memory 332.
Memory 332 includes two sections error free section 334 and a regular 336. System 320 further includes a data reader 338, a first error correcting code decoder 340 and a second error correcting code decoder 342, a data combiner 352 and a data transmitter 354. First error correcting code decoder 340 includes a first error detector 344 and a first error corrector 346. Second error correcting code decoder 342 includes a second error detector 348 and a second error corrector 350. First error correcting code encoder 326 and first error correcting code decoder 340 are associated with a first error correcting code (e.g., CRC1 BCH, Reed - Solomon). Second error correcting code encoder 328 and second error correcting code decoder 342 are associated with a second error correcting code.
Data receiver 324 is coupled with portable device 322, with error correction code encoder 326 and with data writer 330. Data writer 330 is coupled with first error correcting code encoder 326, with second error correcting code encoder 328 and with memory 332. Data reader 338 is coupled with memory 332, with first error detector 344 and with second error detector 348. Data combiner 352 is coupled with first error detector 344, with second error detector 348, with first error corrector 346, with second error corrector 350 and with data transmitter 344. Data transmitter 344 is further coupled with portable device 322.
Data receiver 324 receives the data to be stored from portable device 322 and analyzes the received data. When the received data requires a first type of encoding, then, data receiver 324 provides the data to first error correcting code encoder 326. When the received data requires a second type of encoding, then, data receiver 324 provides the data to second error correcting code encoder 328. Either first error correcting code encoder 326, or second error correcting code encoder 328 receive the data from data receiver 324, and encode the data according to the respective error correction code thereof. Data writer 330 receives the data from either first error correcting code encoder 326, or second error correcting code encoder 328 and writes the encoded data to the appropriated section in memory 332 according to the type of data.
When portable device 322 requires data from memory 332, data reader 338 reads the required data from memory 332. Data reader 338 analyzes the data. When the data is encoded with the first error correcting code, then, data reader 338 provides the data to first error detector 344. First error detector 344 receives the data from data reader 338 and detects if error occurred in the data. When first error detector 344 detects no errors in the data, then, error detector 344 provides the data to data combiner 352. When first error detector 344 detects errors in the data, then, first error detector 344 provides the data to first error corrector 346. First error corrector 346 receives the data from error detector 344, attempts to correct the errors in the data according to the respective error correcting code thereof and provides the corrected data to data combiner 350.
When the data is encoded with the second error correcting code, then, data reader 338 provides the data to first error detector 348. When Error detector 348 receives the data from data reader 338 and detects if error occurred in the data. When error detector 348 detects no errors in the data, then, error detector 348 provides the data to data combiner 350. When error detector 348 detects errors in the data, then error detector 348 provides the data to second error corrector 350. Second error corrector 350 receives the data from error detector 348, attempts to correct the errors in the data according to the respective error correcting code thereof and provides the corrected data to data combiner 350.
Data combiner 350 receives the data from either first error detector 344, first error corrector 346, second error detector 348 or second error corrector 350, combines the different parts of the data (e.g., a file header with the file) and provides the combined data to data transmitter 344. Data transmitter 354 transmits the data to portable device 322. It will be appreciated by persons skilled in the art that the disclosed technique is not limited to what has been particularly shown and described hereinabove. Rather the scope of the disclosed technique is defined only by the claims, which follow.

Claims

1. A smart multimedia storage device, for coupling with a portable device, said portable device being operable to access multimedia files of a predetermined format, said smart multimedia storage device comprising: a memory, for storing a multimedia file in One format; and a multimedia processor, for converting the format of said multimedia file from said one format to said predetermined format, when said portable device communicates with said smart multimedia storage device.
2. The smart multimedia storage device of claim 1 , wherein said multimedia processor adjusts settings of said multimedia file, to match the settings of said portable device.
3. The smart multimedia storage device of claim 2, wherein said settings are selected from the list consisting of: screen resolution; file size; and processing demands.
4. The smart multimedia storage device of claim 1 , wherein said portable device is selected from the list consisting of: a mobile phone; a handheld computer; a personal digital assistant (PDA); and a multimedia player.
5. A smart multimedia storage device, for coupling with a plurality of wireless communication portable devices, each portable device being operable with a different wireless communication network standard, said smart multimedia storage device comprising: a memory, for storing at least one multimedia file in one format, said memory further storing multimedia settings and multimedia functionality information; and a multimedia processor, when one of said portable devices is coupled with said smart multimedia storage device, said multimedia processor converting the format of said at least one multimedia file from said one format to another format accessible by said one portable device, and providing said multimedia settings and multimedia functionality information to said one portable device.
6. The Modular Cellular Phone System (MCPS) of claim 5, wherein said wireless communication standard is selected from the list consisting of:
Code Division Multiple Access (CDMA);
Global System for Mobile communications (GSM), and
Universal Mobile Telecommunications System (UMTS).
7. A smart multimedia storage device, for coupling with a portable device, said portable device being operable to access multimedia files of a predetermined format, said smart multimedia storage device comprising: a communication interface, communicating with said portable device; a storage area for storing at least one data file in at least one sector in said storage area, each data file includes at least one data object, each of said at least one sector storing one of said at least one data objects; a processor, coupled with said communication interface, and with said storage area, said processor including a media converter and a file manager, said file manager accessing said at least one data object of said data file according either one of at least two file entries in a file root table, said file manager presenting said at least one data object to said portable device.
8. The system according to claim 7, wherein each of said entries including pointers to the same file table, said file table including at least one sector entry, each of said at least one sector entries including a pointer to a sector said storage area.
9. A smart multimedia storage device, for coupling with a portable device, said portable device being operable to access multimedia files of a predetermined format, said smart multimedia storage device comprising: a communication interface, communicating with said portable device; a storage area for storing at least one data file in at least one sector in said storage area, each data file includes at least one data object, each of said at least one sector storing one of said at least one data objects; a processor, coupled with said communication interface, and with said storage area, said processor including a media converter and a file manager, said file manager accessing the all of said at least one data object of said data file stored in said storage area according to one file entry in a file root table, said file manager access a portion of said at least one data object according to another file entry in said file root table, said file manager presenting said at least one data object to one of said portable devices.
10. The system according to claim 9, wherein each of the file entries including a pointer to a respective file table, each file table including a plurality of sector entries, each sector entry including a pointer to a sector in said storage area.
11. A smart multimedia storage device, for coupling with a portable device, said portable device being operable to access multimedia files of a predetermined format, said smart multimedia storage device comprising: a communication interface, communicating with said portable device; a storage area for storing for storing at least one data file in at least one sector in said storage area, each data file includes at least one data object, each of said at least one sector storing one of said at least one data objects; a processor, coupled with said communication interface, and with said memory, said processor including a media converter and a file manager, said file manager accessing said at least one data file according to one file entry in a file root table, said media converter converts at least a portion of said at least one data object from one format to at least one other format, said file manager receives the converted portion of said data objects and presents said converted portion of said at least one data object to one of said portable devices.
12. The system according to claim 11 , wherein, each of said file root table includes a plurality of file entries, each file entry includes a pointer to a respective file table, each file table includes a plurality of sector entries, each sector entry including a pointer to a sector in at least one a virtual memory.
13. In a smart multimedia storage device, for coupling with a portable device, a differential error correcting system comprising: a memory, including an error free sector and a regular sector; at least two error correcting code encoders, coupled with said memory, each of said at least two error correcting code encoders being associated with a respective error correcting code, each one of said at least two error correcting code encoders encoding data of a data type different from the data types encoded by the others of said at least two error correcting code encoders according to the error correction code respective of said one of said at least two error correcting code encoders; at least two error correcting code decoders, coupled with said memory, each of said at least two error correcting code decoders being associated with a respective error correcting code encoder, each of said at least two error correcting code decoders decoding the data of the data type respective of said respective error correcting code encoder.
14. The system according to claim 13, wherein each of said at least two error correcting code decoders further includes: an error detector, said error detector detects when error occurred in said data; and an error corrector, said error corrector correcting errors in said data.
15. The system according to claim 13, further including a data receiver coupled with each of said at least two error correcting code encoders, receiving data from a portable device, each of said at least two error correcting code encoders receiving data of the respective data type, from said data receiver.
16. The system according to claim 13, further including a data writer, coupled with each of said at least two error correcting code encoders and with said memory, said data writer receiving data from each of said at least two error correcting code encoders and writing said data into said memory.
17. The system according to claim 16, wherein said data writer writes said data into a sector in said memory respective of said type of said data.
18. The system according to claim 13, further including a data reader, coupled with said memory and with each of said at least two error correcting code decoders, said data reader reading data from said memory.
19. The system according to claim 18, wherein said at least two error correcting code decoders receive data of the data type respective of said respective error correcting code encoder from said data reader.
20. The system according to claim 13, further including a data combiner coupled with each of said at least said at least two error correcting code decoders, combining data received from each of said at least two error correcting code decoders.
21. The system according to claim 13, further including a data transmitter, coupled with said data combiner, receiving data from said data combiner and transmitting said data to a portable device.
PCT/IL2008/001262 2007-09-19 2008-09-21 A smart data storage device compatible with various portable devices WO2009037712A2 (en)

Applications Claiming Priority (8)

Application Number Priority Date Filing Date Title
US97348407P 2007-09-19 2007-09-19
US97841807P 2007-09-19 2007-09-19
US60/973,484 2007-09-19
US60/978,418 2007-09-19
US97939807P 2007-10-12 2007-10-12
US60/979,398 2007-10-12
US4125508P 2008-04-01 2008-04-01
US61/041,255 2008-04-01

Publications (2)

Publication Number Publication Date
WO2009037712A2 true WO2009037712A2 (en) 2009-03-26
WO2009037712A3 WO2009037712A3 (en) 2009-05-07

Family

ID=40230008

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IL2008/001262 WO2009037712A2 (en) 2007-09-19 2008-09-21 A smart data storage device compatible with various portable devices

Country Status (1)

Country Link
WO (1) WO2009037712A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2302633A1 (en) * 2009-09-24 2011-03-30 Samsung Electronics Co., Ltd. Storage device and driving method thereof
WO2011081732A1 (en) * 2009-12-31 2011-07-07 Sandisk Corporation Storage device and method for providing a scalable content protection system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030185542A1 (en) * 2002-03-28 2003-10-02 Mcveigh Jeffrey S. Transcoding apparatus, system, and method
GB2403868A (en) * 2003-06-30 2005-01-12 Nokia Corp Content transfer
US20050182855A1 (en) * 2004-02-13 2005-08-18 Apostolopoulos John G. Media data transcoding devices
WO2006105182A2 (en) * 2005-03-30 2006-10-05 Igt Player tracking communication mechanisms in a gaming machine
FR2909824A1 (en) * 2006-12-06 2008-06-13 Awox Sa Local wireless communication device for use with e.g. personal computer, has processor to simulate tree structure of local files for representing remote data via communication implemented by interface, and connector connected to host system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030185542A1 (en) * 2002-03-28 2003-10-02 Mcveigh Jeffrey S. Transcoding apparatus, system, and method
GB2403868A (en) * 2003-06-30 2005-01-12 Nokia Corp Content transfer
US20050182855A1 (en) * 2004-02-13 2005-08-18 Apostolopoulos John G. Media data transcoding devices
WO2006105182A2 (en) * 2005-03-30 2006-10-05 Igt Player tracking communication mechanisms in a gaming machine
FR2909824A1 (en) * 2006-12-06 2008-06-13 Awox Sa Local wireless communication device for use with e.g. personal computer, has processor to simulate tree structure of local files for representing remote data via communication implemented by interface, and connector connected to host system

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2302633A1 (en) * 2009-09-24 2011-03-30 Samsung Electronics Co., Ltd. Storage device and driving method thereof
WO2011081732A1 (en) * 2009-12-31 2011-07-07 Sandisk Corporation Storage device and method for providing a scalable content protection system
CN102696038A (en) * 2009-12-31 2012-09-26 桑迪士克科技股份有限公司 Storage device and method for providing a scalable content protection system
US9032535B2 (en) 2009-12-31 2015-05-12 Sandisk Technologies Inc. Storage device and method for providing a scalable content protection system
CN102696038B (en) * 2009-12-31 2015-09-30 桑迪士克科技股份有限公司 For providing memory device and the method for scalable content protective system

Also Published As

Publication number Publication date
WO2009037712A3 (en) 2009-05-07

Similar Documents

Publication Publication Date Title
KR101352515B1 (en) Apparatus and method for setting rights object mapping table
US10148625B2 (en) Secure transfer and tracking of data using removable nonvolatile memory devices
JP4651681B2 (en) Terminal device and computer program
US7873758B2 (en) Cellular phone and portable storage device using the same
JP6931050B2 (en) Methods and equipment for encoding and decoding binary data
US6989484B2 (en) Controlling sharing of files by portable devices
KR101320840B1 (en) Central dma with arbitrary processing functions
US9680686B2 (en) Media with pluggable codec methods
US20080097775A1 (en) Drm content player and play method for portable terminal
US20110113313A1 (en) Buffer transfer check on variable length data
CN111522784B (en) Metadata synchronization method, device and equipment for unstructured data files
US20110178987A1 (en) Apparatus and method for processing data according to remote control in data storage device
US20060184554A1 (en) System and method for extensible metadata architecture for digital images using in-place editing
WO2006088496A2 (en) System and method for extensible metadata architecture for digital images
US9323822B2 (en) Data backup method and device for mobile terminal
US7314180B2 (en) Memory card and reproducing apparatus
WO2009037712A2 (en) A smart data storage device compatible with various portable devices
US20080162780A1 (en) Information terminal apparatus
US20070130435A1 (en) Terminal apparatus and its data management method
US20070182832A1 (en) Memory card with function of video/audio data processing
US20090328146A1 (en) Method of generating authentication code in digital device
US20050207546A1 (en) Modem sharing device of PDA phone and method thereof
KR20050113204A (en) System and method of protecting data on a communication device
CN111783117B (en) Plaintext data processing method, device and system
CN113157277B (en) Host file processing method and device

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08808063

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase in:

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08808063

Country of ref document: EP

Kind code of ref document: A2