IP Library Granted Patent US 12,282,671
Granted Patent B2
US 12,282,671 · App. 18/312,982 · Granted Apr 22, 2025

Hardware file system

Inventor: Ashot Kulikyan (Seattle, WA)
Assignee: THE BOEING COMPANY
G06F3/064G06F3/061G06F3/0659G06F3/0679
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,282,671
App. No.
18/312,982
Granted
Apr 22, 2025
Kind
B2
Abstract

An electronic file system for storing and retrieving data from an electronic physical memory device is presented. The electronic physical memory device includes an enumerated plurality of fixed-size blocks. The electronic file system includes: a finite state machine controller and an electronic memory communicatively coupled to the finite state machine controller. The electronic memory stores an available block table and a plurality of allocated block tables. The controller stores, in the available block table, block numbers for blocks that are available to store data, and stores, in each allocated block table, block numbers of blocks that store data of a respective file.

Claims (46)

1. An electronic file system for storing and retrieving data from an electronic physical memory device, the electronic physical memory device comprising an enumerated plurality of fixed-size blocks, the electronic file system comprising:

a finite state machine controller; and

an electronic memory communicatively coupled to the finite state machine controller, the electronic memory storing an available block table, the electronic memory storing a plurality of allocated block tables,

wherein the controller stores, in the available block table, block numbers for blocks that are available to store data,

wherein the controller stores, in each allocated block table, block numbers of blocks that store data of a respective file, and

wherein, for a write operation of a file, the electronic file system is configured to perform operations comprising:

reading an available block number from the available block table at a read pointer location;

writing data, in the electronic physical memory device, to a block identified by the available block number; and

writing the available block number to an allocated block table corresponding to the file at a write pointer location;

incrementing the read pointer location; and

incrementing the write pointer location.

2. The electronic file system of claim 1 , wherein the controller stores a block number in the available block table in at most two clock cycles, and wherein the controller stores a block number in an allocated block table in at most two clock cycles.

3. The electronic file system of claim 1 , wherein a lack of desegmentation does not cause performance degradation.

4. The electronic file system of claim 1 , wherein, for a read operation of a file, the electronic file system is configured to perform operations comprising:

reading an allocated block number from an allocated block table corresponding to the file; and

reading data, in the electronic physical memory device, from a block identified by the allocated block number.

5. The electronic file system of claim 4 , wherein the reading the allocated block number comprises reading the allocated block number from the allocated block table corresponding to the file at a read pointer location.

6. The electronic file system of claim 1 , wherein the finite state machine controller and the electronic memory are implemented in a single integrated circuit.

7. The electronic file system of claim 1 , wherein each block comprises at least one kilobyte.

8. The electronic file system of claim 1 , wherein the electronic physical memory device comprises a flash memory.

9. The electronic file system of claim 1 , wherein the electronic file system effectuates file transfer ingress at a rate of at least 10 Gbps.

10. The electronic file system of claim 1 , wherein the electronic file system effectuates file storage and retrieval at a rate of at least 10 Gbps.

11. A method of providing an electronic file system for storing and retrieving data from an electronic physical memory device, the electronic physical memory comprising an enumerated plurality of fixed-size blocks, the method implemented using:

a finite state machine controller, and

an electronic memory communicatively coupled to the finite state machine controller, the method comprising:

storing, in the electronic memory, an available block table;

storing, in the electronic memory, a plurality of allocated block tables;

storing, by the finite state machine controller, in the available block table, a block number for a block that is available to store data; and

storing, in the electronic memory, by the finite state machine controller, in a respective allocated block table, a block number for a block that stores data of a respective file;

wherein, for a write operation of a file, the method further comprises:

reading an available block number from the available block table at a read pointer location;

writing data, in the electronic physical memory device, to a block identified by the available block number;

writing the available block number to an allocated block table corresponding to the file at a write pointer location;

incrementing the read pointer location; and

incrementing the write pointer location.

12. The method of claim 11 , wherein the storing the block number for the block that is available to store data takes most two clock cycles, and wherein the storing the block number for the block that stores data of the respective file takes at most two clock cycles.

13. The method of claim 11 , further comprising multiple read, write, and delete operations, wherein a lack of desegmentation does not cause performance degradation.

14. The method of claim 11 , wherein, for a read operation of a file, the method further comprises:

reading an allocated block number from an allocated block table corresponding to the file; and

reading data, in the electronic physical memory device, from a block identified by the allocated block number.

15. The method of claim 14 , wherein the reading the allocated block number comprises reading the allocated block number from the allocated block table corresponding to the file at a read pointer location.

16. The method of claim 11 , wherein the finite state machine controller and the electronic memory are implemented in a single integrated circuit.

17. The method of claim 11 , wherein each block comprises at least one kilobyte.

18. The method of claim 11 , wherein the electronic physical memory device comprises a flash memory.

19. The method of claim 11 , wherein the electronic file system effectuates file transfer ingress at a rate of at least 10 Gbps.

20. The method of claim 11 , wherein the electronic file system effectuates file storage and retrieval at a rate of at least 10 Gbps.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 12, 2023
From: KULIKYAN, ASHOT
To: THE BOEING COMPANY
Reel/Frame 063626/0519 →
Continuity (1)
Related Publication 20240370192A1 · Nov 7, 2024
References Cited (21)
US 5634050A · Krueger et al. · 1997 [cited by applicant]
US 7457822B1 · Barrall et al. · 2008 [cited by applicant]
US 8224877B2 · Barrall et al. · 2012 [cited by applicant]
US 8898460B2 · Abzarian et al. · 2014 [cited by applicant]
US 10176189B2 · Berrington et al. · 2019 [cited by applicant]
US 10187788B2 · Yang · 2019 [cited by applicant]
US 10572451B2 · Ramirez et al. · 2020 [cited by applicant]
US 20090307291A1 · Ye et al. · 2009 [cited by applicant]
US 20120311231A1 · Porterfield · 2012 [cited by examiner]
US 20150186401A1 · Baldwin · 2015 [cited by examiner]
US 20170161294A1 · Ganjihal et al. · 2017 [cited by applicant]
US 20180217926A1 · Ogawa · 2018 [cited by examiner]
US 20180341406A1 · Sankule · 2018 [cited by examiner]
US 20190347027A1 · Mehra · 2019 [cited by examiner]
US 20200075103A1 · Lee · 2020 [cited by examiner]
CN 102426586A · 2012 [cited by applicant]
CN 102708075A · 2012 [cited by applicant]
CN 106326384A · 2017 [cited by applicant]
CN 106844586A · 2017 [cited by applicant]
EP 1998270A1 · 2008 [cited by applicant]
Cardarilli et al., “A Fault Tolerant Hardware Based File System Manager for Solid State Mass Memory,” IEEE Conference Paper, Jun. 2003, pp. V-649 to V-652. [cited by applicant]