US20030003908A1
Expired / Lapsed
US
⏱️ 0.0 years remaining
Method and apparatus for storing data in flash memory
Assignee: Intel Corp
•
Filing: 2001-06-27
•
Granted: —
•
Expires: 2021-06-27
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 McGrew
- 👤 Richard Garner
Bibliographic Details
Application Number
—
Jurisdiction
US
Data Source
google_patents
Last Synchronized
2026-10-23 11:42
CPC Classifications
H; H04; H04W; H04W8/00; H04W8/22; H04W8/24; H04W8/245
Claims Analysis
Total Claims: 30
Claim 1
Independent Claim
69 words
1 . 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 storing pointers in a memory to 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 memory.
Claim 2
Dependent Claim
69 words
1 . 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 storing pointers in a memory to 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 memory.
Claim 3
Dependent Claim
45 words
2 . 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 4
Dependent Claim
31 words
3 . 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 5
Dependent Claim
33 words
4 . 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 6
Dependent Claim
206 words
5 . 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; 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 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; and storing pointers, in a separate memory, to the number of different locations within the flash memory where the free space is located; 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
17 words
6 . The method of claim 5 , wherein the separate memory is a random access memory.
Claim 8
Dependent Claim
41 words
7 . The method of claim 5 , 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 9
Dependent Claim
33 words
8 . The method of claim 5 , 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 10
Dependent Claim
71 words
9 . 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 11
Dependent Claim
119 words
10 . 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 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, wherein the initialize unit is to store pointers, prior to downloading the data into the flash memory, in the random access memory to a number of the blocks within the flash memory that are free to store the data.
Claim 12
Dependent Claim
119 words
10 . 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 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, wherein the initialize unit is to store pointers, prior to downloading the data into the flash memory, in the random access memory to a number of the blocks within the flash memory that are free to store the data.
Claim 13
Dependent Claim
35 words
11 . 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 14
Dependent Claim
67 words
12 . 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 15
Dependent Claim
35 words
13 . 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 16
Dependent Claim
145 words
14 . 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 that is 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 storing pointers in the random access memory to a 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 memory.
Claim 17
Dependent Claim
145 words
14 . 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 that is 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 storing pointers in the random access memory to a 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 memory.
Claim 18
Dependent Claim
45 words
15 . 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 19
Dependent Claim
31 words
16 . The system 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 20
Dependent Claim
33 words
17 . The system 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 21
Dependent Claim
85 words
18 . 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 storing pointers in a memory to 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 memory.
Claim 22
Dependent Claim
85 words
18 . 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 storing pointers in a memory to 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 memory.
Claim 23
Dependent Claim
46 words
19 . 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 24
Dependent Claim
32 words
20 . 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 25
Dependent Claim
34 words
21 . 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 26
Dependent Claim
222 words
22 . 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; 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 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; and storing pointers, in a separate memory, to the number of different locations within the flash memory where the free space is located; 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 27
Dependent Claim
18 words
23 . The machine-readable medium of claim 22 , wherein the separate memory is a random access memory.
Claim 28
Dependent Claim
42 words
24 . 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 29
Dependent Claim
34 words
25 . 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 30
Dependent Claim
72 words
26 . 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.
References Cited (Backward Citations)
US5579502A
Cited
US5412798A
Cited
US5590306A
Cited
US5535369A
Cited
US5566314A
Cited
US5671388A
Cited
US5987478A
Cited
US6412040B2
Cited
US6189070B1
Cited
US6076137A
Cited
US6584495B1
Cited
US6038636A
Cited
US6272607B1
Cited
US6535949B1
Cited
US6640334B1
Cited
US6571326B2
Cited
US6754765B1
Cited
US6791877B2
Cited
USPTO Annuity & Maintenance Windows
Maintenance schedule is calculated for granted US utility patents.