IP Library Granted Patent US 7,447,807
Granted Patent B1
US 7,447,807 · App. 11/480,276 · Granted Nov 4, 2008

Systems and methods for storing data in segments of a storage subsystem

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 7,447,807
App. No.
11/480,276
Granted
Nov 4, 2008
Kind
B1
Abstract

A storage subsystem comprises a set of zone definitions that uses physical block addresses to divide a memory array in the storage subsystem into zones or segments. A set of zone parameters defines user access modes and security levels for each of the segments. Defining zones for the memory array provide flexibility and increased protection for data stored in the memory array. For example, data of one zone can be quickly erased without affecting data stored in other zones and critical data can be stored in read-only zones to prevent inadvertent overwrite.

Claims (25)

1. A method of storing data in a computer storage subsystem, the method comprising:

accessing a set of segment definitions comprising a sequence of physical block addresses, wherein the sequence of physical block addresses is specified using one or more custom Advanced Technology Attachment commands to define beginning and ending locations of one or more segments in a data storage space on the computer storage subsystem, and the segment definitions are stored on the computer storage subsystem in a separate location from the data storage space;

accessing a set of segment parameters, wherein the segment parameters define at least one of a user access level and a security control for each of the segments, and the segment parameters are stored on the computer storage subsystem in a separate location from the data storage space; and

storing data in one of the segments in accordance with the segment parameters associated with that segment.

2. The method of claim 1 , wherein the data storage space is implemented in non-volatile, solid-state memory.

3. The method of claim 1 , wherein the computer storage subsystem is a flash memory card.

4. The method of claim 1 , wherein the computer storage subsystem is a hard disk drive.

5. The method of claim 1 , wherein the computer storage subsystem is a hybrid hard disk.

6. The method of claim 1 , wherein a host system accesses the set of segment definitions and the set of segment parameters to determine which segment to store the data.

7. The method of claim 1 , wherein a host system accesses at least one of the set of segment definitions and the set of segment parameters using a vendor-specific command.

8. The method of claim 7 , wherein the vendor-specific command comprises a command code that is different from command codes used to access the data storage space.

9. The method of claim 1 , wherein the data storage space is accessible via standard storage access commands while the set of segment definitions and the set of segment parameters are accessible via non-standard storage access commands.

10. The method of claim 1 , wherein a controller in the computer storage subsystem determines which segment to store the data based on the set of segment definitions and the set of segment parameters.

11. The method of claim 1 , wherein the set of segment definitions and the set of segment parameters are stored in a common location.

12. The method of claim 1 , further comprising storing setup files in a first segment and storing mission data in a second segment for a military data recorder application.

13. The method of claim 1 , further comprising storing a game program in a first segment that allows read-only access during normal operations and storing player tracking information in a second segment that allows write access in a gaming machine application.

14. The method of claim 1 , wherein the method is performed via execution of a computer program on a host computer that is connected to the computer storage subsystem.

15. The method of claim 1 , further comprising implementing vendor-specific commands, error correction or wear leveling on a segment-by-segment basis.

16. A computer system comprising:

a storage subsystem having at least one storage location for storing segment definitions and segment properties, wherein the storage location is separate from a user data storage space on the storage subsystem, the segment definitions comprise a sequence of physical block addresses specified via one or more custom Advanced Technology Attachment commands to define physical locations and sizes of one or more segments in the user data storage space, and the segment properties describe at least one of user access control and security control for each of the segments; and

a host system programmed to use one or more non-standard access commands to retrieve the segment definitions and the segment properties from the storage subsystem, wherein the host system accesses the user data storage space in accordance with the segment definitions and the segment properties.

17. The computer system of claim 16 , wherein the user data storage space in the storage subsystem is implemented in non-volatile, solid-state memory.

18. The computer system of claim 16 , wherein the storage subsystem supports a predefined number of segments and the sequence of physical block addresses correspond to beginning and ending physical locations in the user data storage space for each of the segments.

19. The computer system of claim 16 , wherein the segment definitions and the segment properties are not accessible by operating system commands or file commands used to access the user data storage space.

20. The computer system of claim 16 , wherein a host application in the host system generates the sequence of physical block addresses and the custom Advanced Technology Attachment commands in response to user input.

Assignments (15)
SECURITY AGREEMENT (SUPPLEMENTAL) Recorded Nov 14, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 069411/0208 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2024
From: SANDISK TECHNOLOGIES, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 069168/0273 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
RELEASE OF SECURITY INTEREST AT REEL 038744 FRAME 0481 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058982/0556 →
RELEASE OF SECURITY INTEREST Recorded Mar 5, 2018
From: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 045501/0714 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038744/0481 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 038744/0281 →
SECURITY AGREEMENT Recorded May 17, 2016
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 038722/0229 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 9, 2016
From: SILICONSYSTEMS, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 037936/0204 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 23, 2015
From: SILICONSYSTEMS, INC.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 036872/0017 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 2, 2006
From: MERRY, DAVID E.; DIGGS, MARK S.; DROSSEL, GARY A.; HAJECK, MICHAEL J.
To: SILICONSYSTEMS, INC.
Reel/Frame 018357/0697 →