← Back to Patent Explorer
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
📄 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 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.

USPTO Annuity & Maintenance Windows

Maintenance schedule is calculated for granted US utility patents.

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag