IP Library › Granted Patent US 11,093,388
Granted Patent B2
US 11,093,388 · App. 16/682,868 · Granted Aug 17, 2021

Method, apparatus, device and storage medium for accessing static random access memory

Inventors: Xiaozhang Gong (Beijing, CN); Jing Wang (Beijing, CN)
Assignee: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY CO., LTD.
G06F12/0607G06F2212/1016
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 11,093,388
App. No.
16/682,868
Granted
Aug 17, 2021
Kind
B2
Abstract

The present disclosure relates to a method, an apparatus, an electronic device and a computer readable storage medium for accessing static random access memories. The method includes: receiving an access request for data associated with the static random access memories; writing a plurality of sections of the data into a plurality of different static random access memories in an interleaved manner in response to the access request being a write request for the data, each of the plurality of sections having its respective predetermined size; and reading the plurality of sections of the data from the plurality of static random access memories in an interleaved manner in response to the access request being a read request for the data, each of the plurality of sections having its respective predetermined size.

Claims (80)

1. A method for accessing static random access memories, comprising:

receiving an access request for data associated with the static random access memories;

writing a plurality of sections of the data into a plurality of different static random access memories in an interleaved manner in response to the access request being a write request for the data, each of the plurality of sections having its respective predetermined size;

reading the plurality of sections of the data from the plurality of static random access memories in an interleaved manner in response to the access request being a read request for the data, each of the plurality of sections having its respective predetermined size;

wherein the received access request is a first request from a first access device for writing the data as first data, and the method further comprises:

receiving a second request from a second access device for writing second data into the plurality of static random access memories; and

writing the plurality of sections of the second data into the plurality of static random access memories in an interleaved manner, which is in parallel with the writing of the plurality of sections of the first data in an interleaved manner.

2. The method according to claim 1 , wherein the predetermined size of the plurality of sections is determined based on capacities of the plurality of static random access memories.

3. The method according to claim 1 , wherein writing the plurality of sections of the second data into the plurality of static random access memories in an interleaved manner comprises:

determining a first object into which a first section of the plurality of sections of the first data is to be written and a second object into which a second section of the plurality of sections of the second data is to be written during a write period, each of the first object and the second object being one of the plurality of static random access memories;

writing the first section into the first object and the second section into the second object in parallel in response to the first object being different from the second object; and

writing one of the first section and the second section into the first object in response to the first object being identical to the second object.

4. The method according to claim 3 , wherein writing one of the first section and the second section into the first object comprises:

determining priorities of the first access device and the second access device; and

in response to the priority of the second access device being higher than the priority of the first access device,

writing the second section into the first object, and

postponing writing the first section into the first object until the next write period.

5. The method according to claim 1 , wherein the received access request is a first request from a first access device for reading the data as first data, and the method further comprises:

receiving a second request from a second access device for reading second data from the plurality of static random access memories; and

reading the plurality of sections of the second data from the plurality of static random access memories in an interleaved manner, which is in parallel with the reading of the plurality of sections of the first data in an interleaved manner.

6. The method according to claim 5 , wherein reading the plurality of sections of the second data from the plurality of static random access memories in an interleaved manner comprises:

determining a first object from which a first section of the plurality of sections of the first data is to be read and the second object from which a second section of the plurality of sections of the second data is to be read during a read period, each of the first object and the second object being one of the plurality of static random access memories;

reading the first section from the first object and the second section from the second object in parallel in response to the first object being different from the second object; and

reading one of the first section and the second section from the first object in response to the first object being identical to the second object.

7. The method according to claim 6 , wherein reading one of the first section and the second section from the first object comprises:

determining priorities of the first access device and the second access device; and

in response to the priority of the second access device being higher than the priority of the first access device,

reading the second section from the first object, and

postponing reading the first section from the first object until the next read period.

8. The method according to claim 3 , wherein determining the first object comprises:

determining a destination address for accessing the first data from the first request;

determining a target address corresponding to the first section of the first data based on the destination address and a predetermined address mapping relationship; and

determining static random access memories corresponding to the first section based on at least a portion of the target address.

9. An apparatus for accessing static random access memories, comprising:

one or more processors; and

a storage device, configured to store one or more programs, wherein, when the one or more programs are executed by the one or more processors, the one or more processors are configured to implement a method for accessing static random access memories, comprising:

receiving an access request for data associated with the static random access memories;

writing a plurality of sections of the data into a plurality of different static random access memories in an interleaved manner in response to the access request being a write request for the data, each of the plurality of sections having its respective predetermined size;

reading the plurality of sections of the data from the plurality of static random access memories in an interleaved manner in response to the access request being a read request for the data, each of the plurality of sections having its respective predetermined size;

wherein the received access request is a first request from a first access device for writing the data as first data, and

the one or more processors are further configured to:

receive a second request from a second access device for writing second data into the plurality of static random access memories; and

write the plurality of sections of the second data into the plurality of static random access memories in an interleaved manner, which is in parallel with writing the plurality of sections of the first data in an interleaved manner.

10. The apparatus according to claim 9 , wherein the predetermined size of the plurality of sections is determined based on capacities of the plurality of static random access memories.

11. The apparatus according to claim 9 , when the one or more processors are configured to write the plurality of sections of the second data into the plurality of static random access memories in an interleaved manner, the one or more processors are further configured to:

determine a first object into which a first section of the plurality of sections of the first data is to be written and a second object into which a second section of the plurality of sections of the second data is to be written during a write period, each of the first object and the second object being one of the plurality of static random access memories;

write the first section into the first object and the second section into the second object in parallel in response to the first object being different from the second object; and

write one of the first section and the second section into the first object in response to the first object being identical to the second object.

12. The apparatus according to claim 11 , wherein when the one or more processors are configured to write one of the first section and the second section into the first object, the one or more processors are further configured to:

determine priorities of the first access device and the second access device; and

in response to the priority of the second access device being higher than the priority of the first access device,

write the second section into the first object, and

postpone writing the first section into the first object until the next write period.

13. The apparatus according to claim 9 , wherein the received access request is a first request from a first access device for reading the data as first data,

the one or more processors are further configured to:

receive a second request from a second access device for reading second data from the plurality of static random access memories; and

read the plurality of sections of the second data from the plurality of static random access memories in an interleaved manner, which is in parallel with the reading of the plurality of sections of the first data in an interleaved manner.

14. The apparatus according to claim 13 , when the one or more processors are configured to read the plurality of sections of the second data from the plurality of static random access memories in an interleaved manner, the one or more processors are further configured to:

determine a first object from which a first section of the plurality of sections of the first data is to be read and the second object from which a second section of the plurality of sections of the second data is to be read during a read period, each of the first object and the second object being one of the plurality of static random access memories;

read the first section from the first object and the second section from the second object in parallel in response to the first object being different from the second object; and

read one of the first section and the second section from the first object in response to the first object being identical to the second object.

15. The apparatus according to claim 14 , wherein when the one or more processors are configured to read one of the first section and the second section from the first object, the one or more processors are further configured to:

determine priorities of the first access device and the second access device; and

in response to the priority of the second access device being higher than the priority of the first access device,

read the second section from the first object, and

postpone reading the first section from the first object until the next read period.

16. The apparatus according to claim 11 , wherein when the one or more processors are configured to determine the first object, the one or more processors are further configured to:

determine a destination address for accessing the first data from the first request;

determine a target address corresponding to the first section of the first data based on the destination address and a predetermined address mapping relationship; and

determine static random access memories corresponding to the first section based on at least a portion of the target address.

17. A non-transitory computer readable storage medium having a computer program stored thereon, wherein, when a program is executed by a processor, the program implements a method for accessing static random access memories, comprising:

receiving an access request for data associated with the static random access memories;

writing a plurality of sections of the data into a plurality of different static random access memories in an interleaved manner in response to the access request being a write request for the data, each of the plurality of sections having its respective predetermined size;

reading the plurality of sections of the data from the plurality of static random access memories in an interleaved manner in response to the access request being a read request for the data, each of the plurality of sections having its respective predetermined size;

wherein the received access request is a first request from a first access device for writing the data as first data, and the method further comprises:

receiving a second request from a second access device for writing second data into the plurality of static random access memories; and

writing the plurality of sections of the second data into the plurality of static random access memories in an interleaved manner, which is in parallel with the writing of the plurality of sections of the first data in an interleaved manner.

18. The non-transitory computer readable storage medium according to claim 17 , further comprising:

receiving a second request from a second access device for reading second data from the plurality of static random access memories; and

reading the plurality of sections of the second data from the plurality of static random access memories in an interleaved manner, which is in parallel with the reading of the plurality of sections of the first data in an interleaved manner.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 15, 2021
From: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY CO., LTD.
To: KUNLUNXIN TECHNOLOGY (BEIJING) COMPANY LIMITED
Reel/Frame 058705/0909 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 13, 2019
From: GONG, XIAOZHANG; WANG, JING
To: BEIJING BAIDU NETCOM SCIENCE AND TECHNOLOGY CO., LTD.
Reel/Frame 051000/0414 →
Priority Claims (1)
CN 20181139074.0 · Nov 21, 2018 · national
Continuity (1)
Related Publication 20200159658A1 · May 21, 2020