P
US6934794B2ExpiredUtilityPatentIndex 70

Method for performing flash memory file management

Assignee: SILICON MOTION INCPriority: Feb 1, 2002Filed: Apr 21, 2004Granted: Aug 23, 2005
Est. expiryFeb 1, 2022(expired)· nominal 20-yr term from priority
Inventors:GARRITSEN FRIDOHUANG BRIAN Y
G06F 3/0607G06F 3/0643G06F 3/0679
70
PatentIndex Score
8
Cited by
12
References
37
Claims

Abstract

According to one aspect of the invention, there is provided a method for accessing data in a memory to be performed. The method includes receiving a request to read a file stored in the memory, the memory having a fragmented array of files across a single partition. The method also includes building a look up table (LUT) for the memory. The method also includes storing the LUT in the processor. The method also includes accessing the LUT in the processor to create an index table which specifies a plurality of addresses for the file. The method further includes storing the index table in the memory.

Claims

exact text as granted — not AI-modified
1. A device to perform a memory file management, comprising:
 a microcontroller to receive a request to read a file stored in a memory or to write a file into a memory, and to build a lookup table (“LUT”) for the memory, wherein the memory has a fragmented array of files across a single partition;  
 a processor coupled to the microcontroller to store the LUT at least temporarily, wherein the processor is to use the LUT to create an index table and to store the index table in the memory, wherein the index table specifies a plurality of addresses for the file in the memory.  
 
   
   
     2. The device of  claim 1 , wherein the memory is a flash memory. 
   
   
     3. The device of  claim 2 , wherein the flash memory is a SmartMedia card. 
   
   
     4. The device of  claim 3 , wherein the SmartMedia card includes a flash-memory chip, a plane electrode, and bonding wires, which are embedded in a resin using an over-molded thin package technique. 
   
   
     5. The device of  claim 1  further comprising a keypad coupled to the microcontroller. 
   
   
     6. The device of  claim 1 , wherein the microcontroller and the processor are incorporated into a portable package. 
   
   
     7. The device of  claim 1 , wherein the microcontroller is 8051 microcontroller. 
   
   
     8. The device of  claim 1 , wherein the microcontroller and the processor are included into a portable MP3 player. 
   
   
     9. The device of  claim 1 , wherein a file is an MP3 file, an WMA file, an AAC file, a CD audio format file, or any combination thereof. 
   
   
     10. The device of  claim 1 , wherein the processor and the microcontroller are included into a personal computer system. 
   
   
     11. The device of  claim 1 , wherein the index table in the memory includes a table of records readable by the processor. 
   
   
     12. The device of  claim 1 , wherein the microcontroller to build a LUT is to parse a file allocation table of the memory to locate all clusters associated with all files located in the memory. 
   
   
     13. The device of  claim 1 , wherein the microcontroller to build the LUT is to convert file clusters associated with the file into logical sectors. 
   
   
     14. The device of  claim 13 , wherein the microcontroller to build the LUT is to map the logical sectors of the file to respective physical sectors. 
   
   
     15. The device of  claim 1 , wherein the microcontroller is to provide a pointer into the index table data of the file. 
   
   
     16. The device of  claim 15 , wherein the processor is to access data for the file from the memory using the pointer into the index table data of the file. 
   
   
     17. The device of  claim 1 , wherein the microcontroller to write the file is further to search a file allocation table to find an empty space within the memory to store the file. 
   
   
     18. The device of  claim 1 , wherein the microcontroller to write the file is further to allocate empty clusters within the memory for the file. 
   
   
     19. The device of  claim 1 , wherein the microcontroller to write the file is further to store the file in empty clusters in the memory. 
   
   
     20. The device of  claim 1 , wherein the microcontroller to write the file further is to include the file written into the memory into a directory tree. 
   
   
     21. A device to read and write files in a flash memory, comprising:
 a microcontroller to receive a request to read a file stored in a flash memory or to write a file into a flash memory, and to build a lookup table (“LUT”) for the flash memory, wherein the flash memory has a fragmented array of files across a single partition;  
 a digital signal processor (“DSP”) coupled to the microcontroller to store the LUT at least temporarily, wherein the DSP is to use the LUT to create an index table and to store the index table in the flash memory, wherein the index table specifies physical addresses for each file in the flash memory.  
 
   
   
     22. The device of  claim 21 , wherein the microcontroller and the DSP are incorporated into a portable package. 
   
   
     23. The device of  claim 21 , wherein the flash memory is a SmartMedia card. 
   
   
     24. The device of  claim 23 , wherein the SmartMedia card includes a flash-memory chip, a plane electrode, and bonding wires, which are embedded in a resin using an over-molded thin package technique. 
   
   
     25. The device of  claim 21 , wherein the microcontroller is 8051 microcontroller. 
   
   
     26. The device of  claim 21 , wherein the portable package is an MP3 player. 
   
   
     27. The device of  claim 21 , wherein a file is an MP3 file, an WMA file, an AAC file, a CD audio format file, or any combination thereof. 
   
   
     28. The device of  claim 21 , wherein the DSP and the microcontroller are included into a personal computer device. 
   
   
     29. The device of  claim 21 , wherein the microcontroller to build a LUT is to parse a file allocation table of the flash memory to locate all clusters associated with all files located on the flash memory. 
   
   
     30. The device of  claim 21 , wherein the microcontroller to build the LUT is to convert file clusters associated with each file into logical sectors. 
   
   
     31. The device of  claim 21 , wherein the microcontroller to build the LUT is to map the logical sectors of the file to respective physical sectors. 
   
   
     32. The device of  claim 21 , wherein the microcontroller is further to provide a pointer into the index table data of a file. 
   
   
     33. The device of  claim 32 , wherein the DSP is further to access data for the file from the flash memory using the pointer into the index table data of the file. 
   
   
     34. The device of  claim 21 , wherein the microcontroller to write the file is further to search a file allocation table to find an empty space within the memory to store the file. 
   
   
     35. The device of  claim 21 , wherein the microcontroller to write the file is further to allocate empty clusters within the memory for the file. 
   
   
     36. The device of  claim 21 , wherein the microcontroller to write the file is further to store the file in empty clusters in the memory. 
   
   
     37. The device of  claim 21 , wherein the microcontroller to write the file to the memory is further to include the file written into the memory into a directory tree.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.