Patent US7155560B2 successfully refreshed from Google Patents.
← Back to Patent Explorer
US7155560B2 Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for storing data in flash memory

Assignee: Intel Corp
•
Filing: 2001-06-27
•
Granted: 2006-12-26
•
Expires: 2021-06-27
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In an embodiment, a method includes receiving a request to download data into flash memory. The method also includes halting the downloading of the data into the flash memory until the flash memory is initialized. The initialization includes storing pointers in a memory to different locations within the flash memory where the data is to be stored. Additionally, the method includes storing the data into the flash memory based on the pointers stored in the memory.

Inventors

  • 👤 Richard A. McGrew
  • 👤 Richard P. Garner

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-23 19:00
CPC Classifications
H; H04; H04W; H04W8/00; H04W8/22; H04W8/24; H04W8/245

Claims Analysis

Total Claims: 26
Claim 1
Independent Claim 107 words
A method comprising: receiving a request to download data into flash memory; halting the downloading of the data into the flash memory until the flash memory is initialized, wherein the initialization includes reclaiming space in the flash memory to accommodate the request, reserving the space in the flash memory to ensure the space is not used in a manner not associated with the request, and storing pointers in a second memory to indicate different locations within the flash memory where the data is to be stored within the flash memory; and storing the data into the flash memory based on the pointers stored in the second memory.
Claim 2
Dependent Claim 43 words
The method of claim 1 , wherein the initialization of the flash memory comprises: generating headers for the different locations within the flash memory where the data is to be stored; and storing the headers at the different locations within the flash memory.
Claim 3
Dependent Claim 29 words
The method of claim 1 , further comprising storing the data received from the download into a number of buffers prior to storing the data into the flash memory.
Claim 4
Dependent Claim 31 words
The method of claim 1 , wherein the initialization of the flash memory comprises reclaiming space within the flash memory that is reclaimable for storage of data into the flash memory.
Claim 5
Independent Claim 148 words
A method comprising: receiving a request from an external device to store data into a flash memory of a device, wherein the request includes the size of the data; in response to receiving the request, initializing the flash memory of the device prior to receiving the data, wherein the initializing comprises: determining whether the size of free space within the flash memory is greater than the size of the data; upon determining that the size of the free space within the flash memory is not greater than the size of the data, reclaiming space in the flash memory to accommodate the request; reserving the space in the flash memory to ensure the space is not used in a manner not associated with the request; and storing pointers, in a separate memory, to indicate a number of different locations within the flash memory where the free space is located.
Claim 6
Dependent Claim 97 words
The method of claim 5 , further comprising: generating headers for each of the number of different locations within the flash memory where the free space is located; storing the headers into the number of different locations within the flash memory; transmitting a signal to the external device to transmit the data after the initialization of the flash memory is completed; receiving the data into a number of buffers within the device; and storing the data within the number of buffers into the number of different locations within the flash memory where the free space is located.
Claim 7
Dependent Claim 39 words
The method of claim 6 , wherein the device is a cellular telephone and the external device is a server coupled to a network and wherein the data is transmitted to the cellular telephone through a wireless transmission link.
Claim 8
Dependent Claim 31 words
The method of claim 6 , further comprising disabling interrupts within the device when portions of the data are being written into the number of different locations in the flash memory.
Claim 9
Dependent Claim 69 words
The method of claim 8 , further comprising: determining whether interrupts are pending in the device periodically during the time the data is being written into the number of different locations in the flash memory; and periodically halting the writing of the data into the number of different locations in the flash memory and servicing the interrupts that are pending in the device upon determining that interrupts are pending.
Claim 10
Independent Claim 170 words
An apparatus comprising: a flash memory partitioned into blocks; a random access memory coupled to the flash memory; a write unit coupled to the flash memory and the random access memory, wherein the write unit is to receive a first request to download data into the flash memory and wherein the write unit is to download the data into the flash memory; and an initialize unit coupled to the flash memory, the random access memory and the write unit to initialize the flash memory in response to receiving the request to download data by reclaiming space in the flash memory to accommodate the request, reserving the space in the flash memory to ensure the space is not used to comply with a second request received by the write unit until the first request is completed, and storing pointers, prior to downloading the data into the flash memory, in the random access memory to indicate the number of the blocks within the flash memory that are free to store the data.
Claim 11
Dependent Claim 33 words
The apparatus of claim 10 , wherein the initialize unit is to store headers at the number of different blocks within the flash memory, prior to downloading the data into the flash memory.
Claim 12
Dependent Claim 65 words
The apparatus of claim 10 , wherein the initialize unit is to reclaim space, prior to downloading the data into the flash memory, within flash memory that is reclaimable for storage of the data into the flash memory upon determining that the size of free space within the flash memory is less than the size of the data to be downloaded into the flash memory.
Claim 13
Dependent Claim 33 words
The apparatus of claim 10 , wherein the write unit is to store the data received from the download into a number of buffers prior to storing the data into the flash memory.
Claim 14
Independent Claim 177 words
A system comprising: a server coupled to a network; and a cellular telephone wirelessly coupled to the network, wherein the cellular telephone comprises: a flash memory partitioned into blocks; a random access memory coupled to the flash memory; a processor coupled to the flash memory and the random access memory, the processor to execute a number of instructions, which when executed by the processor causes the processor to: receive a request, from the server, to download data into the flash memory; halt the downloading of the data into the flash memory until the flash memory is initialized, wherein the initialization includes reclaiming space in the flash memory to accommodate the request, reserving the space in the flash memory to ensure the space is not used in a manner not associated with the request, and storing pointers in the random access memory to indicate the number of the blocks within the flash memory where the data is to be stored; and store the data into the flash memory based on the pointers stored in the random access memory.
Claim 15
Dependent Claim 43 words
The system of claim 14 , wherein the initialization of the flash memory comprises: generating headers for the different locations within the flash memory where the data is to be stored; and storing the headers at the different locations within the flash memory.
Claim 16
Dependent Claim 29 words
The system of claim 14 , further comprising storing the data received from the download into a number of buffers prior to storing the data into the flash memory.
Claim 17
Dependent Claim 31 words
The system of claim 14 , wherein the initialization of the flash memory comprises reclaiming space within the flash memory that is reclaimable for storage of data into the flash memory.
Claim 18
Dependent Claim 119 words
A machine-readable medium that provides instructions, which when executed by a machine, causes the machine to perform operations comprising: receiving a request to download data into flash memory; halting the downloading of the data into the flash memory until the flash memory is initialized, wherein the initialization includes reclaiming space in the flash memory to accommodate the request, reserving the space in the flash memory to ensure the space is not used by a device not associated with the request, and storing pointers in a second memory to indicate different locations within the flash memory where the data is to be stored; and storing the data into the flash memory based on the pointers stored in the second memory.
Claim 19
Dependent Claim 44 words
The machine-readable medium of claim 18 , wherein the initialization of the flash memory comprises: generating headers for the different locations within the flash memory where the data is to be stored; and storing the headers at the different locations within the flash memory.
Claim 20
Dependent Claim 30 words
The machine-readable medium of claim 18 , further comprising storing the data received from the download into a number of buffers prior to storing the data into the flash memory.
Claim 21
Dependent Claim 32 words
The machine-readable medium of claim 18 , wherein the initialization of the flash memory comprises reclaiming space within the flash memory that is reclaimable for storage of data into the flash memory.
Claim 22
Dependent Claim 262 words
A machine-readable medium that provides instructions, which when executed by a machine, causes the machine to perform operations comprising: receiving a request from an external device to store data into a flash memory of a device, wherein the request includes the size of the data; in response to receiving the request, initializing the flash memory of the device prior to receiving the data, wherein the initializing comprises: determining whether the size of free space within the flash memory is greater than the size of the data; reclaiming space in the flash memory to accommodate the request; reserving the space in the flash memory to ensure the space is not in a manner not associated with the request, upon determining that the size of the free space within the flash memory is not greater than the size of the data, reclaiming space within the flash memory; generating headers for each of a number of different locations within the flash memory where the free space is located; storing the headers into the number of different locations within the flash memory; storing pointers, in a second memory, to the number of different locations within the flash memory to indicate where the free space is located within the flash memory; transmitting a signal to the external device to transmit the data after the initialization of the flash memory is completed; receiving the data into a number of buffers within the device; and storing the data within the number of buffers into the number of different locations within the flash memory where the free space is located.
Claim 23
Dependent Claim 16 words
The machine-readable medium of claim 22 , wherein the second memory is a random access memory.
Claim 24
Dependent Claim 40 words
The machine-readable medium of claim 22 , wherein the device is a cellular telephone and the external device is a server coupled to a network and wherein the data is transmitted to the cellular telephone through a wireless transmission link.
Claim 25
Dependent Claim 32 words
The machine-readable medium of claim 22 , further comprising disabling interrupts within the device when portions of the data are being written into the number of different locations in the flash memory.
Claim 26
Dependent Claim 70 words
The machine-readable medium of claim 25 , further comprising: determining whether interrupts are pending in the device periodically during the time the data is being written into the number of different locations in the flash memory; and periodically halting the writing of the data into the number of different locations in the flash memory and servicing the interrupts that are pending in the device upon determining that interrupts are pending.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2009-12-25 2010-06-26 2010-12-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2013-12-25 2014-06-26 2014-12-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2017-12-25 2018-06-26 2018-12-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag