IP Library Granted Patent US 9,268,709
Granted Patent B2
US 9,268,709 · App. 14/056,330 · Granted Feb 23, 2016

Storage controllers and storage control methods

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 9,268,709
App. No.
14/056,330
Granted
Feb 23, 2016
Kind
B2
Abstract

According to various embodiments, a storage controller configured to control storage of data in a pre-determined area of a storage medium may be provided. The storage controller may include a memory configured to store a write pointer, a reclaim pointer, and a wrapped around pointer. The write pointer may indicate a location of the storage medium to write incoming data. The reclaim pointer may indicate a location of the storage medium to perform a space reclamation. The wrapped around pointer may indicate a location of the storage medium where writing is to continue if writing of data reaches an end of the pre-determined area.

Claims (51)

1. A storage controller configured to control storage of data in a predetermined area of a storage medium, the storage controller comprising:

a memory storing a write pointer that indicates a location of the storage medium to write incoming data, storing a reclaim pointer that indicates a location of the storage medium to perform a space reclamation, and storing, before writing of data reaches an end of the predetermined area, a wrapped around pointer that indicates a location of the storage medium where writing is to continue if writing of data reaches the end of the predetermined area.

2. The storage controller of claim 1 , further comprising:

a space reclamation circuit configured to read data at the location indicated by the reclaim pointer, configured to determine whether the data is outdated data, and to write the data to the location indicated by the write pointer if the data is not outdated data.

3. The storage controller of claim 2 ,

wherein the space reclamation circuit is further configured to change the reclaim pointer to indicate a location of the storage media after the location at which the data was read.

4. The storage controller of claim 2 ,

wherein the space reclamation circuit is further configured to change the write pointer to indicate a location of the storage media after the location at which the data was written if the data is not outdated data.

5. The storage controller of claim 1 , further comprising:

an inactive data determiner configured to determine whether a region of nonoutdated data is present at the beginning of the predetermined area and further configured to change the wrapped around pointer to a location after the region of nonoutdated data if the region of nonoutdated data is present at the beginning of the predetermined area.

6. The storage controller of claim 2 , further comprising:

a spare location writing circuit configured to write data to be written in the predetermined region in a spare location of the storage medium if the space reclamation circuit is not able to finish space reclamation before the data are to be written.

7. The storage controller of claim 6 , further comprising:

a spare location reading circuit configured to read data from the spare location of the storage medium and write the data to the location indicated by the write pointer after the space reclamation circuit finished space reclamation.

8. The storage controller of claim 2 ,

wherein the space reclamation circuit is further configured to continue space reclamation at the location indicated by the wrapped around pointer if space reclamation of the space reclamation circuit reaches the end of the predetermined area.

9. The storage controller of claim 1 ,

wherein the storage medium comprises a shingled rotating medium.

10. The storage controller of claim 1 ,

wherein the memory comprises a non-volatile memory.

11. A storage control method of controlling storage of data in a predetermined area of a storage medium, the storage control method comprising:

storing, in a memory, a write pointer that indicates a location of the storage medium to write incoming data;

storing, in the memory, a reclaim pointer that indicates a location of the storage medium to perform a space reclamation; and

storing, in the memory and before writing of data reaches an end of the predetermined area, a wrapped around pointer that indicates a location of the storage medium where writing is to continue if writing of data reaches the end of the predetermined area.

12. The storage control method of claim 11 , further comprising:

reading data at the location indicated by the reclaim pointer;

determining whether the data is outdated data; and

writing the data to the location indicated by the write pointer if the data is not outdated data.

13. The storage control method of claim 12 , further comprising:

changing the reclaim pointer to indicate a location of the storage media after the location at which the data was read.

14. The storage control method of claim 12 , further comprising:

changing the write pointer to indicate a location of the storage media after the location at which the data was written if the data is not outdated data.

15. The storage control method of claim 11 , further comprising:

determining whether a region of nonoutdated data is present at the beginning of the predetermined area; and

changing the wrapped around pointer to a location after the region of nonoutdated data if the region of nonoutdated data is present at the beginning of the predetermined area.

16. The storage control method of claim 11 , further comprising:

writing data to be written in the predetermined region in a spare location of the storage medium if the space reclamation is not able to be finished before the data are to be written.

17. The storage control method of claim 16 , further comprising:

reading data from the spare location of the storage medium; and

writing the data to the location indicated by the write pointer after the space reclamation is finished.

18. The storage control method of claim 12 , further comprising:

continuing space reclamation at the location indicated by the wrapped around pointer if processing of the space reclamation reaches the end of the predetermined area.

19. The storage control method of claim 11 ,

wherein the storage medium comprises a shingled rotating medium.

20. The storage control method of claim 11 ,

wherein the memory comprises a non-volatile memory.

21. A tangible, non-transitory computer readable medium comprising:

a predetermined area for storage of data;

a write pointer that indicates a location of the predetermined area to write incoming data;

a reclaim pointer that indicates a location of the predetermined area to perform a space reclamation; and

a wrapped around pointer that is stored before writing of data reaches an end of the predetermined area and that indicates a location of the predetermined area where writing is to continue if writing of data reaches the end of the predetermined area.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053475/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 20, 2020
From: MARVELL INTERNATIONAL LTD.
To: CAVIUM INTERNATIONAL
Reel/Frame 052918/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 30, 2015
From: THE AGENCY FOR SCIENCE, TECHNOLOGY AND RESEARCH
To: MARVELL INTERNATIONAL LTD.
Reel/Frame 034856/0776 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 20, 2013
From: XI, WEIYA; TAN, SUFUI SOPHIA; YONG, KHAI LEONG; LIM, CHUN TECK; JIN, CHAO; CHING, ZHI YONG
To: AGENCY FOR SCIENCE, TECHNOLOGY AND RESEARCH
Reel/Frame 031827/0355 →