WO2017198070A1 - Multi-channel data memory and access method and apparatus therefor, and storage medium - Google Patents

Multi-channel data memory and access method and apparatus therefor, and storage medium Download PDF

Info

Publication number
WO2017198070A1
WO2017198070A1 PCT/CN2017/082778 CN2017082778W WO2017198070A1 WO 2017198070 A1 WO2017198070 A1 WO 2017198070A1 CN 2017082778 W CN2017082778 W CN 2017082778W WO 2017198070 A1 WO2017198070 A1 WO 2017198070A1
Authority
WO
WIPO (PCT)
Prior art keywords
channel
data
ram
read
memory
Prior art date
Application number
PCT/CN2017/082778
Other languages
French (fr)
Chinese (zh)
Inventor
肖飞育
高崇兴
Original Assignee
深圳市中兴微电子技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 深圳市中兴微电子技术有限公司 filed Critical 深圳市中兴微电子技术有限公司
Publication of WO2017198070A1 publication Critical patent/WO2017198070A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks

Definitions

  • the present invention relates to a memory technology, and in particular, to a multi-channel data memory, an access method and apparatus thereof, and a storage medium.
  • An IC is a miniature electronic device or component.
  • An integrated circuit is formed by interconnecting components, such as transistors, resistors, capacitors, and inductors, which are required in a circuit, on a small or small piece of semiconductor wafer or dielectric substrate, and then packaged in a certain process. Inside a package, it becomes a micro-structure with the required circuit function, realizing the single-chip of the circuit.
  • the integrated circuit is the core of microelectronics technology, and has the advantages of small size, light weight, less lead wire and solder joints, long life, high reliability, good performance, etc., and low cost, which is convenient for mass production.
  • a complex electronic system can be realized on a single integrated circuit chip such as a digital television chip or a mobile phone chip.
  • IC design is a discipline in electrical engineering and computer engineering. IC design includes digital IC design and analog IC design. In digital IC design, there are often multiple storage requirements for similar or repetitive channels. For example, in a DVB (Digital Video Broadcasting) system, there are multiple PID (Packet Identifier) channels that need to store information such as audio, video, subtitles, and control information.
  • DVB Digital Video Broadcasting
  • PID Packet Identifier
  • each channel Since the storage space of these channels is often not occupied at the same time, each channel has independent storage space, which requires a large amount of RAM, resulting in a large area occupied by the chip and high power consumption.
  • the present application proposes a method and apparatus for accessing a multi-channel data memory for this defect.
  • Embodiments of the present invention provide a multi-channel data memory and an access method and apparatus thereof, which can reduce the occupied area and power consumption of the chip.
  • an embodiment of the present invention provides a method for accessing a multi-channel data storage, the method comprising:
  • the multi-channel data memory comprising at least a first channel, a second channel, and a RAM shared by the first channel and the second channel;
  • an embodiment of the present invention provides a method for accessing a multi-channel data storage, where the method includes:
  • the read data request includes: a channel number where the target data is to be read, and location information of the target data;
  • an embodiment of the present invention provides a write controller, where the write controller includes:
  • a first determining unit configured to determine a first data block to be stored, where the first data block is a data block received by the first channel;
  • a second determining unit configured to determine first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory including at least a first channel, a second channel, and a first channel and a second channel sharing RAM
  • a first allocation unit configured to allocate a first storage space for the first data block on the RAM according to the first storage information
  • the first writing unit is configured to write the first data block into the first storage space.
  • an embodiment of the present invention provides a read controller, where the read controller includes:
  • a second receiving unit configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and location information of the target data;
  • a fifth determining unit configured to determine identifier information of the address memory according to the channel number where the target data is located
  • a first acquiring unit configured to acquire a mapping relationship table from a corresponding address memory according to the identifier information of the address memory
  • a first searching unit configured to search the mapping relationship table according to location information of the target data, to obtain an address of the target data
  • a first reading unit configured to read target data from a RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores a data other than data from a channel in which the target data is located The data of other channels, which are different from the channel where the target data to be read is located.
  • an embodiment of the present invention provides a multi-channel data memory, where the multi-channel data memory includes at least: two or more channels, and the two or more channels share a random access memory RAM, a read controller, and a write controller, an address memory corresponding to each of the two or more channels;
  • Each address memory is configured only as a mapping relationship table between location information of data in the data block received by the storage channel and an address of the data block storage space, and is not configured to store the data block.
  • the write controller is configured to determine a first data block to be stored, the first data block is a data block received by the first channel, and the first of the random access memory RAM of the multi-channel data memory is determined Storing information, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; and allocating the first data block on the RAM according to the first storage information a first storage space; writing the first data block into the first storage space;
  • the read controller is configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and the target data
  • the location information is configured to determine the identifier information of the address memory according to the channel number where the target data is located; obtain the mapping relationship table from the corresponding address memory according to the identifier information of the address memory; and search for the mapping information according to the location information of the target data. Mapping the relationship table to obtain an address of the target data; reading target data from the RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores a channel other than the target data The data of other channels other than the data, which is different from the channel in which the target data is to be read.
  • an embodiment of the present invention provides a computer storage medium, where the computer storage medium stores computer executable instructions for executing the access method of the multi-channel data memory.
  • An embodiment of the present invention provides a multi-channel data memory, an access method and apparatus thereof, and a storage medium, wherein a first data block to be stored is determined, and the first data block is a data block received by the first channel; Determining first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory including at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; A storage information is allocated to the first data block by the first storage space on the RAM; the first data block is written into the first storage space; thus, the occupied area and power consumption of the chip can be reduced.
  • 1 is a schematic structural diagram of a multi-channel data memory
  • FIG. 2 is a schematic flowchart of an implementation method of an access method of a multi-channel data memory according to an embodiment of the present invention
  • FIG. 3 is a schematic flowchart of an implementation method of an access method of a multi-channel data memory according to an embodiment of the present invention
  • FIG. 4 is a schematic flowchart of an implementation method of an access method of a multi-channel data memory according to an embodiment of the present invention
  • FIG. 5 is a schematic structural diagram of a multi-channel data memory according to an embodiment of the present invention.
  • FIG. 6 is a schematic structural diagram of a write controller of a multi-channel data memory according to an embodiment of the present invention.
  • FIG. 7 is a schematic structural diagram of a read controller of a multi-channel data memory according to an embodiment of the present invention.
  • the multi-channel data memory includes a multi-channel input interface 101, a data storage module 102, and a read RAM control module 103.
  • the data input module 101 includes n RAM (Random Access Memory).
  • each channel has its own independent RAM storage space, and the independent RAM starting address of each channel is fixed, and the size of the storage space is also fixed, and each channel has its own
  • the independent RAM includes a memory controller configured to record the first address and the last address of each channel independent RAM, record the current read address pointer and the current write address pointer for each channel, and save the number of data that can be written in each channel.
  • a data counter After the system is initialized, the initial value of the current read address pointer and the write address pointer are the first addresses of the independent RAM corresponding to the channel, and the number of data that can be written by the channel is equal to the first address minus the tail address plus one.
  • the data counter has an initial value of zero.
  • the channel receives the write command and the data to be written
  • the memory controller of the channel independent RAM acquires the current write address of the channel, and writes the data to the RAM corresponding to the channel according to the write address. , increment the write address pointer by 1 as the new current write address for the channel. If the current write address is equal to the tail address of the RAM corresponding to the channel, the first address corresponding to the RAM of the channel is taken as the new current write address; when the read operation is performed, the read RAM control module receives the read command, and the read command carries the data to be read. The channel number, the read RAM control module acquires the current read address of the channel according to the read command, reads the data according to the address, and adds 1 to the read address as the new current read address of the channel.
  • each channel Since the storage space of these channels is often not occupied at the same time, each channel has independent storage space, which requires a large amount of RAM, resulting in a large area occupied by the chip and high power consumption.
  • the present application proposes a multi-channel data memory access method and apparatus for the defect.
  • An embodiment of the present invention provides a method for accessing a multi-channel data memory, which is applied to a multi-channel data memory, where the multi-channel data memory includes at least two channels, and the two or more channels share random access.
  • 2 is a schematic flowchart of an implementation method of an access method of a multi-channel data storage according to an embodiment of the present invention. As shown in FIG. 2, the method includes:
  • Step S201 the write controller determines a first data block to be stored
  • the first data block is a data block received by the first channel.
  • Step S202 the write controller determines first storage information of the random access memory RAM of the multi-channel data storage
  • the first storage information is current storage information of the RAM.
  • Step S203 the write controller allocates a first storage space for the first data block on the RAM according to the first storage information
  • the RAM in the multi-channel data memory is shared by each channel, and the storable space of each channel is improved.
  • the write controller is based on the current storage information of the RAM.
  • the data block that needs to be written allocates storage space, so that not only the utilization of the RAM storage space can be improved, but also the storage space is allocated as needed, and can adapt to various storage requirements.
  • Step 204 The write controller writes the first data block into the first storage space.
  • the write controller determines the second storage information of the RAM according to the first storage information and the first storage space.
  • the first data block to be stored is determined, the first data block is a data block received by the first channel; and the random access memory of the multi-channel data memory is determined.
  • First storage information of the RAM, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; and the first storage information is on the RAM according to the first A data block allocates a first storage space; writing the first data block to the first storage space; thus reducing chip area and power consumption of the multi-channel data storage.
  • An embodiment of the present invention provides a method for accessing a multi-channel data memory, which is applied to a multi-channel data memory, where the multi-channel data memory includes at least two channels, and the two or more channels share random access.
  • FIG. 3 is a schematic flowchart of an implementation method of a multi-channel data storage access method according to an embodiment of the present invention. As shown in FIG. 3, the method includes:
  • Step S301 the first channel receives the first data block from the local application or the remote server;
  • the local application can be an application on the terminal.
  • Step S302 the first channel sends the received first data block to the first address memory
  • the first address memory is an address memory corresponding to the first channel.
  • Step S303 the first address memory sends a first read request to the write controller
  • the first data block is included in the first read request.
  • Step S304 the write controller receives the first read request sent by the first address memory
  • Step S305 the write controller determines first storage information of the random access memory RAM of the multi-channel data memory
  • the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; the RAM stores data from the second channel, and the second channel is coupled with The first channel is different.
  • Step S306 the write controller is on the RAM according to the first storage information.
  • the first data block allocates a first storage space
  • Step S307 the write controller writes the first data block into the first storage space
  • the write controller determines the second storage information of the RAM according to the first storage information and the first storage space.
  • Step S308 the write controller carries the address of the first storage space in the first read response, and sends the first read response to the first address memory;
  • the first address memory receives the first data block sent by the first channel; receives an address of the first storage space sent by the write controller; according to the location information of the data in the first data block, and the An address of a storage space establishes a mapping relationship table; and stores the mapping relationship table.
  • Step S309 the second channel receives the second data block from the local application or the remote server;
  • the local application can be an application on the terminal.
  • Step S310 the second channel sends the received second data block to the second address memory
  • Step S311 the second address memory sends a second read request to the write controller
  • the received second data block is included in the second read request.
  • Step S312 the write controller receives a second read request sent by the second address memory
  • Step S313 the write controller determines second storage information of the RAM of the multi-channel data storage
  • Step S314 the write controller allocates a second storage space for the second data block on the RAM according to the second storage information.
  • Step S315 the write controller writes the second data block into the second storage space
  • the write controller determines the third storage information of the RAM according to the second storage information and the second storage space.
  • Step S316 the write controller carries the address of the second storage space to the second read And transmitting the second read response to the second address memory;
  • the second address memory receives the second data block sent by the second channel; receives an address of the second storage space sent by the write controller; and according to the location information of the data in the second data block and the The address of the second storage space establishes a mapping relationship table; and the mapping relationship table is stored.
  • An embodiment of the present invention provides a method for accessing a multi-channel data memory, which is applied to a multi-channel data memory, where the multi-channel data memory includes at least two channels, and the two or more channels share random access.
  • 4 is a schematic flowchart of an implementation method of an access method of a multi-channel data storage according to an embodiment of the present invention. As shown in FIG. 4, the method includes:
  • Step S401 the read controller receives the read data request issued by the program
  • the program may be an application, a process, or an assembly instruction, where the read data request includes a channel number where the target data is to be read and location information of the target data, such as reading the data request to read the first channel.
  • the third data in .
  • Step S402 the read controller determines the identification information of the address memory according to the channel number where the target data is located;
  • Step S403 the read controller acquires a mapping relationship table from the corresponding address memory according to the identifier information of the address memory;
  • Step S404 the read controller searches the mapping relationship table according to the location information of the target data, and obtains an address of the target data.
  • Step S405 the read controller reads the target data from the RAM of the multi-channel data memory according to the address of the target data;
  • the RAM stores data of channels other than data from the channel in which the target data is located, the other channels being different from the channel in which the target data to be read is located.
  • FIG. 5 is a schematic structural diagram of a multi-channel data memory according to an embodiment of the present invention.
  • the multi-channel data memory includes multiple channels of input.
  • the multi-channel input interface 501 is configured to receive a data block of a local application or a remote server, and send the received data block to the address storage module 502;
  • the address storage module 502 is configured to receive the data block sent by the multi-channel input interface 501; send a read request to the write RAM control module 503; and allocate the address and the received data block according to the write RAM control module 503 to the received data block.
  • Position information establishes a mapping relationship table, and stores the mapping relationship table;
  • the write RAM control module 503 is configured to receive the read request sent by the address storage module 502, and allocate an address to the received data block according to the read request;
  • the RAM 504 of the multi-channel data memory is configured to store the data blocks received by the respective channels;
  • the read RAM control module 505 is configured to receive a read data request of the program; determine address memory identification information corresponding to the channel number according to the channel number carried in the read data request; and obtain the corresponding address according to the identification information of the address memory Storing the mapping table in the middle; searching the mapping table according to the location information of the data carried in the read data request, obtaining the address of the data; and reading data from the RAM of the multi-channel data memory according to the address .
  • the input interface of the multi-channel in this embodiment is consistent with the function of the multi-channel implementation in the foregoing embodiment.
  • the address storage module in this embodiment is consistent with the functions implemented by the foregoing address memory.
  • the write RAM control module is consistent with the functions implemented by the write controller described above, and the read RAM control module in this embodiment is consistent with the functions implemented by the read controller.
  • the address storage module corresponding to the channel sends a read request to the write RAM control module, where the read request includes a data block to be written;
  • the write RAM control After receiving the read request sent by the address storage module, the module determines storage information of the RAM of the multi-channel data storage, and allocates a storage space for the received data block according to the storage information and the read request, the write RAM The control module sends the address of the storage space to the address storage module, and at the same time, the write RAM control module writes the data block into the storage space.
  • the read RAM control module After the read RAM control module receives the request to read a certain channel data, the read RAM control module determines the address memory identification information corresponding to the channel number according to the channel number carried in the read data request; And storing the obtained identification information to obtain a mapping relationship table in which the corresponding address is stored; searching for the mapping relationship table according to the location information of the data carried in the read data request, obtaining an address of the data; and obtaining the multi-channel according to the address Data is read from the RAM of the data memory.
  • FIG. 6 is a schematic structural diagram of a write controller of a multi-channel data memory according to an embodiment of the present invention.
  • the write controller 600 includes a first receiving unit 601, a first determining unit 602, a second determining unit 603, a first allocating unit 604, a first writing unit 605, and a first transmitting unit 606, wherein:
  • the first receiving unit 601 is configured to receive a first read request sent by the first address memory
  • the first address memory is an address memory corresponding to the first channel, and the first read request includes the first data block.
  • the first determining unit 602 is configured to determine a first data block to be stored
  • the first data block is a data block received by the first channel.
  • a second determining unit 603, configured to determine first storage information of the random access memory RAM of the multi-channel data storage
  • the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel.
  • the first allocating unit 604 is configured to be located on the RAM according to the first storage information.
  • the first data block allocates a first storage space
  • the first writing unit 605 is configured to write the first data block into the first storage space
  • the first sending unit 606 is configured to carry the address of the first storage space in the first read response, and send the first read response to the first address memory.
  • the first receiving unit, the first determining unit, the second determining unit, the first allocating unit, the first writing unit, and the first sending unit may each be a CPU (Central Processing Unit, located on the computing device, Realized by a central processing unit, an MPU (Micro Processor Unit), a DSP (Digital Signal Processor), or an FPGA (Field Programmable Gate Array).
  • a CPU Central Processing Unit, located on the computing device, Realized by a central processing unit, an MPU (Micro Processor Unit), a DSP (Digital Signal Processor), or an FPGA (Field Programmable Gate Array).
  • MPU Micro Processor Unit
  • DSP Digital Signal Processor
  • FPGA Field Programmable Gate Array
  • FIG. 7 is a schematic structural diagram of a read controller of a multi-channel data memory according to an embodiment of the present invention.
  • the read controller 700 includes a second receiving unit 701, a fifth determining unit 702, a first obtaining unit 703, a first searching unit 704, and a first reading unit 705, wherein:
  • the second receiving unit 701 is configured to receive a read data request sent by the program
  • the read data request includes: a channel number where the target data is to be read and location information of the target data.
  • the fifth determining unit 702 is configured to determine identifier information of the address memory according to the channel number where the target data is located;
  • the first obtaining unit 703 is configured to obtain a mapping relationship table from the corresponding address memory according to the identifier information of the address memory;
  • the first searching unit 704 is configured to search the mapping relationship table according to the location information of the target data, and obtain an address of the target data;
  • the first reading unit 705 is configured to read the target data from the RAM of the multi-channel data memory according to the address of the target data;
  • the RAM stores therein other than the data from the channel in which the target data is located.
  • the data of his channel which is different from the channel where the target data to be read is located.
  • the second receiving unit, the fifth determining unit, the first obtaining unit, the first searching unit, and the first reading unit may be implemented by a CPU, an MPU, a DSP, an FPGA, or the like located on the computing device.
  • An embodiment of the present invention provides a multi-channel data memory, where the multi-channel data memory includes at least two channels, a random access memory RAM, a read controller, and a write controller shared by the two or more channels.
  • An address memory corresponding to each of the two or more channels wherein:
  • Each address memory is configured only as a mapping relationship table between location information of data in the data block received by the storage channel and an address of the data block storage space, and is not configured to store the data block.
  • the write controller is configured to determine a first data block to be stored, the first data block is a data block received by the first channel, and the first of the random access memory RAM of the multi-channel data memory is determined Storing information, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; and allocating the first data block on the RAM according to the first storage information a first storage space; writing the first data block into the first storage space;
  • the read controller is configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read and location information of the target data; The channel number where the target data is located determines the identification information of the address memory; the mapping relationship table is obtained from the corresponding address memory according to the identification information of the address memory; and the mapping relationship table is searched according to the location information of the target data, and the mapping table is obtained. Addressing the target data; reading the target data from the RAM of the multi-channel data memory according to the address of the target data, wherein the RAM stores other channels than the data from the channel where the target data is located Data, the other channels are different from the channel in which the target data is to be read.
  • the access method of the multi-channel data memory described above is implemented in the form of a software function module and sold or used as a stand-alone product, it may also be stored in a computer readable storage medium.
  • the technical solution of the embodiments of the present invention may be embodied in the form of a software product in essence or in the form of a software product stored in a storage medium, including a plurality of instructions.
  • a computer device (which may be a personal computer, server, or network device, etc.) is caused to perform all or part of the methods described in various embodiments of the present invention.
  • the foregoing storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read only memory (ROM), a magnetic disk, or an optical disk.
  • program codes such as a USB flash drive, a mobile hard disk, a read only memory (ROM), a magnetic disk, or an optical disk.
  • a computer storage medium having stored therein computer executable instructions for performing the above-described access method of a multi-channel data storage.
  • embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention can take the form of a hardware embodiment, a software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
  • the computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device.
  • the apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
  • These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device.
  • the instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
  • the first data block to be stored is determined, the first data block is a data block received by the first channel, and the first storage information of the random access memory RAM of the multi-channel data memory is determined.
  • the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; assigning the first data block to the first data block according to the first storage information a storage space; writing the first data block to the first storage space; thus, the footprint and power consumption of the chip can be reduced.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Static Random-Access Memory (AREA)

Abstract

Disclosed are a multi-channel data memory and an access method and apparatus therefor, and a storage medium. The method comprises: determining a first data block to be stored, the first data block being a data block received by a first channel; determining first storage information about a random access memory (RAM) of a multi-channel data memory, the multi-channel data memory at least comprising the first channel, a second channel and the RAM shared by the first channel and the second channel; according to the first storage information, allocating a first storage space to the first data block on the RAM; and writing the first data block into the first storage space.

Description

一种多通道数据存储器及其存取方法及装置、存储介质Multi-channel data memory, access method and device thereof, and storage medium
相关申请的交叉引用Cross-reference to related applications
本申请基于申请号为201610321779.6、申请日为2016年05月16日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。The present application is filed on the basis of the Chinese Patent Application No. PCT Application No.
技术领域Technical field
本发明涉及一种存储器技术,尤其涉及一种多通道数据存储器及其存取方法及装置、存储介质。The present invention relates to a memory technology, and in particular, to a multi-channel data memory, an access method and apparatus thereof, and a storage medium.
背景技术Background technique
IC(Integrated Circuit,集成电路)是一种微型电子器件或部件。集成电路是通过采用一定的工艺,把一个电路中所需的晶体管、电阻、电容和电感等元件及布线互连一起,制作在一小块或几小块半导体晶片或介质基片上,然后封装在一个管壳内,成为具有所需电路功能的微型结构,实现了电路的单芯片化。集成电路是微电子技术的核心,具有体积小、重量轻、引出线和焊接点少、寿命长、可靠性高、性能好等优点,同时成本低,便于大规模生产。它不仅在工、民用电子设备如收录机、电视机、计算机等方面得到广泛的应用,而且在军事、通讯、遥控等方面也得到广泛的应用。用集成电路来装配电子设备,其装配密度比晶体管可提高几十倍至几千倍,设备的稳定工作时间也可大大提高。An IC (Integrated Circuit) is a miniature electronic device or component. An integrated circuit is formed by interconnecting components, such as transistors, resistors, capacitors, and inductors, which are required in a circuit, on a small or small piece of semiconductor wafer or dielectric substrate, and then packaged in a certain process. Inside a package, it becomes a micro-structure with the required circuit function, realizing the single-chip of the circuit. The integrated circuit is the core of microelectronics technology, and has the advantages of small size, light weight, less lead wire and solder joints, long life, high reliability, good performance, etc., and low cost, which is convenient for mass production. It has been widely used not only in industrial and civil electronic equipment such as tape recorders, televisions, computers, etc., but also in military, communication, remote control and other aspects. The use of integrated circuits to assemble electronic devices has an assembly density that can be increased by several tens to several thousand times compared to transistors, and the stable operating time of the device can be greatly improved.
集成电路经过40年的发展,现在已进入深亚微米阶段。由于微电子自身的发展和信息市场的需求,以微细加工(集成电路特征尺寸不断缩小)为主要特征的多种工艺集成技术和面向应用的SOC(System On Chip,系统 级芯片)应运而生。在单一集成电路芯片上如数字电视芯片、手机芯片就可以实现一个复杂的电子系统。After 40 years of development, integrated circuits have now entered the deep submicron stage. Due to the development of microelectronics itself and the demand of the information market, various process integration technologies and application-oriented SOC (System On Chip) are mainly characterized by microfabrication (the feature size of integrated circuits is continuously reduced). Level chip) came into being. A complex electronic system can be realized on a single integrated circuit chip such as a digital television chip or a mobile phone chip.
IC设计,是电子工程学和计算机工程学的一个学科,IC设计包括数字IC设计和模拟IC设计。数字IC设计中,经常有多个类似或者重复性通道的存储需求。比如DVB(Digital Video Broadcasting,数字视频广播)系统中,就有多个PID(Packet Identifier,包标识符)通道需要存储如音频、视频、字幕和控制信息等相关的信息。IC design is a discipline in electrical engineering and computer engineering. IC design includes digital IC design and analog IC design. In digital IC design, there are often multiple storage requirements for similar or repetitive channels. For example, in a DVB (Digital Video Broadcasting) system, there are multiple PID (Packet Identifier) channels that need to store information such as audio, video, subtitles, and control information.
由于这些通道的存储空间往往并不是被同时占用的,每个通道都有独立的存储空间,这样就需要大量的RAM,从而导致芯片占用的面积大并且功耗高。本申请针对该缺陷提出了一种多通道数据存储器的存取方法和装置。Since the storage space of these channels is often not occupied at the same time, each channel has independent storage space, which requires a large amount of RAM, resulting in a large area occupied by the chip and high power consumption. The present application proposes a method and apparatus for accessing a multi-channel data memory for this defect.
发明内容Summary of the invention
本发明实施例提供一种多通道数据存储器及其存取方法及装置,能够降低芯片的占用面积和功耗。Embodiments of the present invention provide a multi-channel data memory and an access method and apparatus thereof, which can reduce the occupied area and power consumption of the chip.
为达到上述目的,本发明实施例的技术方案是这样实现的:To achieve the above objective, the technical solution of the embodiment of the present invention is implemented as follows:
一方面,本发明实施例提供一种多通道数据存储器的存取方法,所述方法包括:In one aspect, an embodiment of the present invention provides a method for accessing a multi-channel data storage, the method comprising:
确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;Determining a first data block to be stored, the first data block being a data block received by the first channel;
确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;Determining first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory comprising at least a first channel, a second channel, and a RAM shared by the first channel and the second channel;
根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;Allocating a first storage space for the first data block on the RAM according to the first storage information;
将所述第一数据块写入所述第一存储空间。 Writing the first data block into the first storage space.
另一方面,本发明实施例提供一种多通道数据存储器的存取方法,所述方法包括:In another aspect, an embodiment of the present invention provides a method for accessing a multi-channel data storage, where the method includes:
接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息;Receiving a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and location information of the target data;
根据所述目标数据所在的通道号确定地址存储器的标识信息;Determining identification information of the address memory according to the channel number where the target data is located;
根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;Obtaining a mapping relationship table from the corresponding address memory according to the identifier information of the address memory;
根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;Finding the mapping relationship table according to the location information of the target data, and obtaining an address of the target data;
根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。Reading target data from the RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores data of channels other than data from a channel in which the target data is located, the other The channel is different from the channel where the target data to be read is located.
再一方面,本发明实施例提供一种写控制器,所述写控制器包括:In still another aspect, an embodiment of the present invention provides a write controller, where the write controller includes:
第一确定单元,配置为确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;a first determining unit, configured to determine a first data block to be stored, where the first data block is a data block received by the first channel;
第二确定单元,配置为确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;a second determining unit configured to determine first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory including at least a first channel, a second channel, and a first channel and a second channel sharing RAM
第一分配单元,配置为根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;a first allocation unit, configured to allocate a first storage space for the first data block on the RAM according to the first storage information;
第一写入单元,配置为将所述第一数据块写入所述第一存储空间。The first writing unit is configured to write the first data block into the first storage space.
还一方面,本发明实施例提供一种读控制器,所述读控制器包括:In another aspect, an embodiment of the present invention provides a read controller, where the read controller includes:
第二接收单元,配置为接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息; a second receiving unit, configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and location information of the target data;
第五确定单元,配置为根据所述目标数据所在的通道号确定地址存储器的标识信息;a fifth determining unit, configured to determine identifier information of the address memory according to the channel number where the target data is located;
第一获取单元,配置为根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;a first acquiring unit, configured to acquire a mapping relationship table from a corresponding address memory according to the identifier information of the address memory;
第一查找单元,配置为根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;a first searching unit, configured to search the mapping relationship table according to location information of the target data, to obtain an address of the target data;
第一读取单元,配置为根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。a first reading unit configured to read target data from a RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores a data other than data from a channel in which the target data is located The data of other channels, which are different from the channel where the target data to be read is located.
还一方面,本发明实施例提供一种多通道数据存储器,所述多通道数据存储器至少包括:两个以上的通道,所述两个以上的通道共享的随机存取存储器RAM、读控制器和写控制器,与所述两个以上的通道中每一所述通道对应的地址存储器;In still another aspect, an embodiment of the present invention provides a multi-channel data memory, where the multi-channel data memory includes at least: two or more channels, and the two or more channels share a random access memory RAM, a read controller, and a write controller, an address memory corresponding to each of the two or more channels;
所述每一地址存储器,仅配置为存储通道接收到的数据块中数据的位置信息和所述数据块存储空间的地址之间的映射关系表,不配置为存储数据块。Each address memory is configured only as a mapping relationship table between location information of data in the data block received by the storage channel and an address of the data block storage space, and is not configured to store the data block.
所述写控制器,配置为确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;将所述第一数据块写入所述第一存储空间;The write controller is configured to determine a first data block to be stored, the first data block is a data block received by the first channel, and the first of the random access memory RAM of the multi-channel data memory is determined Storing information, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; and allocating the first data block on the RAM according to the first storage information a first storage space; writing the first data block into the first storage space;
所述读控制器,配置为接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的 位置信息;配置为根据所述目标数据所在的通道号确定地址存储器的标识信息;根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。The read controller is configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and the target data The location information is configured to determine the identifier information of the address memory according to the channel number where the target data is located; obtain the mapping relationship table from the corresponding address memory according to the identifier information of the address memory; and search for the mapping information according to the location information of the target data. Mapping the relationship table to obtain an address of the target data; reading target data from the RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores a channel other than the target data The data of other channels other than the data, which is different from the channel in which the target data is to be read.
还一方面,本发明实施例提供一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述的多通道数据存储器的存取方法。In another aspect, an embodiment of the present invention provides a computer storage medium, where the computer storage medium stores computer executable instructions for executing the access method of the multi-channel data memory.
本发明实施例提供一种多通道数据存储器及其存取方法及装置、存储介质,其中,确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;将所述第一数据块写入所述第一存储空间;如此,能够降低芯片的占用面积和功耗。An embodiment of the present invention provides a multi-channel data memory, an access method and apparatus thereof, and a storage medium, wherein a first data block to be stored is determined, and the first data block is a data block received by the first channel; Determining first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory including at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; A storage information is allocated to the first data block by the first storage space on the RAM; the first data block is written into the first storage space; thus, the occupied area and power consumption of the chip can be reduced.
附图说明DRAWINGS
图1为一种多通道数据存储器的组成结构示意图;1 is a schematic structural diagram of a multi-channel data memory;
图2为本发明实施例多通道数据存储器的存取方法的实现流程示意图;2 is a schematic flowchart of an implementation method of an access method of a multi-channel data memory according to an embodiment of the present invention;
图3为本发明实施例多通道数据存储器的存取方法的实现流程示意图;3 is a schematic flowchart of an implementation method of an access method of a multi-channel data memory according to an embodiment of the present invention;
图4为本发明实施例多通道数据存储器的存取方法的实现流程示意图;4 is a schematic flowchart of an implementation method of an access method of a multi-channel data memory according to an embodiment of the present invention;
图5为本发明实施例多通道数据存储器的组成结构示意图;FIG. 5 is a schematic structural diagram of a multi-channel data memory according to an embodiment of the present invention; FIG.
图6为本发明实施例多通道数据存储器的写控制器的组成结构示意图;6 is a schematic structural diagram of a write controller of a multi-channel data memory according to an embodiment of the present invention;
图7为本发明实施例多通道数据存储器的读控制器的组成结构示意图。 FIG. 7 is a schematic structural diagram of a read controller of a multi-channel data memory according to an embodiment of the present invention.
具体实施方式detailed description
图1为一种多通道数据存储器的组成结构示意图,如图1所示,所述多通道数据存储器包括多通道输入接口101、数据存储模块102和读RAM控制模块103。其中,所述多通道输入接口101包括n个通道输入接口,相应的,数据存储模块102包括n个RAM(Random Access Memory,随机存取存储器)。1 is a schematic structural diagram of a multi-channel data memory. As shown in FIG. 1, the multi-channel data memory includes a multi-channel input interface 101, a data storage module 102, and a read RAM control module 103. The data input module 101 includes n RAM (Random Access Memory).
在图1所示的技术方案中,每个通道有自己独立的RAM存储空间,并且每个通道各自独立的RAM起始地址是固定的,存储空间的大小也是固定不变的,每个通道各自独立的RAM中包括一个存储控制器配置为记录每个通道独立RAM的首地址、尾地址,为每个通道记录当前读地址指针、当前写地址指针,保存每个通道可以写入的数据个数和一个数据计数器。在系统初始化后,当前读地址指针、写地址指针的初始值都是该通道对应的独立RAM的首地址,该通道可以写入的数据个数等于首地址减去尾地址加1。数据计数器初始值为0。In the technical solution shown in FIG. 1, each channel has its own independent RAM storage space, and the independent RAM starting address of each channel is fixed, and the size of the storage space is also fixed, and each channel has its own The independent RAM includes a memory controller configured to record the first address and the last address of each channel independent RAM, record the current read address pointer and the current write address pointer for each channel, and save the number of data that can be written in each channel. And a data counter. After the system is initialized, the initial value of the current read address pointer and the write address pointer are the first addresses of the independent RAM corresponding to the channel, and the number of data that can be written by the channel is equal to the first address minus the tail address plus one. The data counter has an initial value of zero.
写操作时,通道收到写指令及要写入的数据,所述通道独立RAM的存储控制器获取所述通道的当前写地址,按所述写地址将数据写入所述通道对应的RAM中,将写地址指针加1,作为该通道新的当前写地址。如果当前写地址等于该通道对应RAM的尾地址,则取该通道对应RAM的首地址作为新的当前写地址;读操作时,读RAM控制模块收到读指令,读指令中携带需要读取数据的通道号,所述读RAM控制模块根据读指令获取所述通道的当前读地址,按所述地址将数据读出,读地址加1,作为该通道新的当前读地址。During the write operation, the channel receives the write command and the data to be written, the memory controller of the channel independent RAM acquires the current write address of the channel, and writes the data to the RAM corresponding to the channel according to the write address. , increment the write address pointer by 1 as the new current write address for the channel. If the current write address is equal to the tail address of the RAM corresponding to the channel, the first address corresponding to the RAM of the channel is taken as the new current write address; when the read operation is performed, the read RAM control module receives the read command, and the read command carries the data to be read. The channel number, the read RAM control module acquires the current read address of the channel according to the read command, reads the data according to the address, and adds 1 to the read address as the new current read address of the channel.
由于这些通道的存储空间往往并不是被同时占用的,每个通道都有独立的存储空间,这样就需要大量的RAM,从而导致芯片占用的面积大并且功耗高。本申请针对该缺陷提出了一种多通道数据存储器的存取方法和装 置Since the storage space of these channels is often not occupied at the same time, each channel has independent storage space, which requires a large amount of RAM, resulting in a large area occupied by the chip and high power consumption. The present application proposes a multi-channel data memory access method and apparatus for the defect. Set
下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。The technical solutions of the present invention are further elaborated below in conjunction with the accompanying drawings and specific embodiments.
本发明实施例提供一种多通道数据存储器的存取方法,应用于多通道数据存储器,所述多通道数据存储器至少包括:两个以上的通道,所述两个以上的通道共享的随机存取存储器RAM、读控制器、写控制器,与所述两个以上的通道中每一所述通道对应的地址存储器。图2为本发明实施例多通道数据存储器的存取方法的实现流程示意图,如图2所示,所述方法包括:An embodiment of the present invention provides a method for accessing a multi-channel data memory, which is applied to a multi-channel data memory, where the multi-channel data memory includes at least two channels, and the two or more channels share random access. A memory RAM, a read controller, a write controller, and an address memory corresponding to each of the two or more channels. 2 is a schematic flowchart of an implementation method of an access method of a multi-channel data storage according to an embodiment of the present invention. As shown in FIG. 2, the method includes:
步骤S201,所述写控制器确定待存储的第一数据块;Step S201, the write controller determines a first data block to be stored;
这里,所述第一数据块是由第一通道接收到的数据块。Here, the first data block is a data block received by the first channel.
步骤S202,所述写控制器确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息;Step S202, the write controller determines first storage information of the random access memory RAM of the multi-channel data storage;
这里,所述第一存储信息是所述RAM当前的存储信息。Here, the first storage information is current storage information of the RAM.
步骤S203,所述写控制器根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;Step S203, the write controller allocates a first storage space for the first data block on the RAM according to the first storage information;
这里,多通道数据存储器中的RAM是各个通道共享的,每个通道的可存储空间得到提高,当有通道接收到数据块需要写入时,写控制器根据所述RAM当前的存储信息,为需要写入的数据块分配存储空间,这样不仅可以提高所述RAM存储空间的利用率,而且存储空间是按照需要分配的,能够适应各种存储需求。Here, the RAM in the multi-channel data memory is shared by each channel, and the storable space of each channel is improved. When a channel receives a data block and needs to be written, the write controller is based on the current storage information of the RAM. The data block that needs to be written allocates storage space, so that not only the utilization of the RAM storage space can be improved, but also the storage space is allocated as needed, and can adapt to various storage requirements.
步骤204,所述写控制器将所述第一数据块写入所述第一存储空间。Step 204: The write controller writes the first data block into the first storage space.
这里,所述写控制器根据所述第一存储信息和所述第一存储空间,确定所述RAM的第二存储信息。Here, the write controller determines the second storage information of the RAM according to the first storage information and the first storage space.
本发明实施例中,确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;确定所述多通道数据存储器的随机存取存储器 RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;将所述第一数据块写入所述第一存储空间;如此降低了多通道数据存储器的芯片面积以及功耗。In the embodiment of the present invention, the first data block to be stored is determined, the first data block is a data block received by the first channel; and the random access memory of the multi-channel data memory is determined. First storage information of the RAM, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; and the first storage information is on the RAM according to the first A data block allocates a first storage space; writing the first data block to the first storage space; thus reducing chip area and power consumption of the multi-channel data storage.
本发明实施例提供一种多通道数据存储器的存取方法,应用于多通道数据存储器,所述多通道数据存储器至少包括:两个以上的通道,所述两个以上的通道共享的随机存取存储器RAM、读控制器、写控制器,与所述两个以上的通道中每一所述通道对应的地址存储器。图3为本发明实施例多通道数据存储器的存取方法的实现流程示意图,如图3所示,所述方法包括:An embodiment of the present invention provides a method for accessing a multi-channel data memory, which is applied to a multi-channel data memory, where the multi-channel data memory includes at least two channels, and the two or more channels share random access. A memory RAM, a read controller, a write controller, and an address memory corresponding to each of the two or more channels. FIG. 3 is a schematic flowchart of an implementation method of a multi-channel data storage access method according to an embodiment of the present invention. As shown in FIG. 3, the method includes:
步骤S301,第一通道接收来自本地应用程序或远程服务器的第一数据块;Step S301, the first channel receives the first data block from the local application or the remote server;
这里,本地应用程序可以是终端上的应用程序。Here, the local application can be an application on the terminal.
步骤S302,所述第一通道将接收到的第一数据块发送给第一地址存储器;Step S302, the first channel sends the received first data block to the first address memory;
这里,所述第一地址存储器为所述第一通道对应的地址存储器。Here, the first address memory is an address memory corresponding to the first channel.
步骤S303,所述第一地址存储器向写控制器发送第一读请求;Step S303, the first address memory sends a first read request to the write controller;
这里,第一读请求中包括所述第一数据块。Here, the first data block is included in the first read request.
步骤S304,所述写控制器接收第一地址存储器发送的第一读请求;Step S304, the write controller receives the first read request sent by the first address memory;
步骤S305,所述写控制器确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息;Step S305, the write controller determines first storage information of the random access memory RAM of the multi-channel data memory;
这里,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;所述RAM中存储有来自于第二通道的数据,所述第二通道并与所述第一通道不同。Here, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; the RAM stores data from the second channel, and the second channel is coupled with The first channel is different.
步骤S306,所述写控制器根据所述第一存储信息在所述RAM上为所 述第一数据块分配第一存储空间;Step S306, the write controller is on the RAM according to the first storage information. The first data block allocates a first storage space;
步骤S307,所述写控制器将所述第一数据块写入所述第一存储空间;Step S307, the write controller writes the first data block into the first storage space;
这里,所述写控制器根据所述第一存储信息和所述第一存储空间,确定所述RAM的第二存储信息。Here, the write controller determines the second storage information of the RAM according to the first storage information and the first storage space.
步骤S308,所述写控制器将所述第一存储空间的地址携带于第一读响应中,并将所述第一读响应发送给所述第一地址存储器;Step S308, the write controller carries the address of the first storage space in the first read response, and sends the first read response to the first address memory;
这里,所述第一地址存储器接收所述第一通道发送的第一数据块;接收写控制器发送的第一存储空间的地址;根据所述第一数据块中数据的位置信息和所述第一存储空间的地址建立映射关系表;存储所述映射关系表。Here, the first address memory receives the first data block sent by the first channel; receives an address of the first storage space sent by the write controller; according to the location information of the data in the first data block, and the An address of a storage space establishes a mapping relationship table; and stores the mapping relationship table.
步骤S309,第二通道接收来自本地应用程序或远端服务器的第二数据块;Step S309, the second channel receives the second data block from the local application or the remote server;
这里,本地应用程序可以是终端上的应用程序。Here, the local application can be an application on the terminal.
步骤S310,所述第二通道将接收到的第二数据块发送给第二地址存储器;Step S310, the second channel sends the received second data block to the second address memory;
步骤S311,所述第二地址存储器向写控制器发送第二读请求;Step S311, the second address memory sends a second read request to the write controller;
这里,第二读请求中包括所述接收到的第二数据块。Here, the received second data block is included in the second read request.
步骤S312,所述写控制器接收第二地址存储器发送的第二读请求;Step S312, the write controller receives a second read request sent by the second address memory;
步骤S313,所述写控制器确定所述多通道数据存储器的RAM的第二存储信息;Step S313, the write controller determines second storage information of the RAM of the multi-channel data storage;
步骤S314,所述写控制器根据所述第二存储信息在所述RAM上为所述第二数据块分配第二存储空间;Step S314, the write controller allocates a second storage space for the second data block on the RAM according to the second storage information.
步骤S315,所述写控制器将所述第二数据块写入所述第二存储空间;Step S315, the write controller writes the second data block into the second storage space;
这里,所述写控制器根据所述第二存储信息和所述第二存储空间,确定所述RAM的第三存储信息。Here, the write controller determines the third storage information of the RAM according to the second storage information and the second storage space.
步骤S316,所述写控制器将所述第二存储空间的地址携带于第二读响 应中,并将所述第二读响应发送给所述第二地址存储器;Step S316, the write controller carries the address of the second storage space to the second read And transmitting the second read response to the second address memory;
这里,所述第二地址存储器接收所述第二通道发送的第二数据块;接收写控制器发送的第二存储空间的地址;根据所述第二数据块中数据的位置信息和所述第二存储空间的地址建立映射关系表;存储所述映射关系表。Here, the second address memory receives the second data block sent by the second channel; receives an address of the second storage space sent by the write controller; and according to the location information of the data in the second data block and the The address of the second storage space establishes a mapping relationship table; and the mapping relationship table is stored.
本发明实施例提供一种多通道数据存储器的存取方法,应用于多通道数据存储器,所述多通道数据存储器至少包括:两个以上的通道,所述两个以上的通道共享的随机存取存储器RAM、读控制器、写控制器,与所述两个以上的通道中每一所述通道对应的地址存储器。图4为本发明实施例多通道数据存储器的存取方法的实现流程示意图,如图4所示,所述方法包括:An embodiment of the present invention provides a method for accessing a multi-channel data memory, which is applied to a multi-channel data memory, where the multi-channel data memory includes at least two channels, and the two or more channels share random access. A memory RAM, a read controller, a write controller, and an address memory corresponding to each of the two or more channels. 4 is a schematic flowchart of an implementation method of an access method of a multi-channel data storage according to an embodiment of the present invention. As shown in FIG. 4, the method includes:
步骤S401,读控制器接收由程序发出的读取数据请求;Step S401, the read controller receives the read data request issued by the program;
这里,程序可以是应用程序、进程或者汇编指令,所述读取数据请求包括所要读取目标数据所在的通道号以及所述目标数据的位置信息,比如读取数据请求为读取第一个通道中的第三个数据。Here, the program may be an application, a process, or an assembly instruction, where the read data request includes a channel number where the target data is to be read and location information of the target data, such as reading the data request to read the first channel. The third data in .
步骤S402,所述读控制器根据所述目标数据所在的通道号确定地址存储器的标识信息;Step S402, the read controller determines the identification information of the address memory according to the channel number where the target data is located;
步骤S403,所述读控制器根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;Step S403, the read controller acquires a mapping relationship table from the corresponding address memory according to the identifier information of the address memory;
步骤S404,所述读控制器根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;Step S404, the read controller searches the mapping relationship table according to the location information of the target data, and obtains an address of the target data.
步骤S405,所述读控制器根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据;Step S405, the read controller reads the target data from the RAM of the multi-channel data memory according to the address of the target data;
这里,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。 Here, the RAM stores data of channels other than data from the channel in which the target data is located, the other channels being different from the channel in which the target data to be read is located.
本发明实施例先提供一种多通道数据存储器的存取方法,图5为本发明实施例多通道数据存储器的组成结构示意图,如图5所示,所述多通道数据存储器包括多通道的输入接口501、地址存储模块502、写RAM控制模块503、多通道数据存储器的RAM504和读RAM控制模块505。其中:The embodiment of the present invention first provides a method for accessing a multi-channel data memory. FIG. 5 is a schematic structural diagram of a multi-channel data memory according to an embodiment of the present invention. As shown in FIG. 5, the multi-channel data memory includes multiple channels of input. The interface 501, the address storage module 502, the write RAM control module 503, the RAM 504 of the multi-channel data memory, and the read RAM control module 505. among them:
多通道的输入接口501,配置为接收本地应用程序或远程服务器的数据块,将接收到的数据块发送给地址存储模块502;The multi-channel input interface 501 is configured to receive a data block of a local application or a remote server, and send the received data block to the address storage module 502;
地址存储模块502,配置为接收多通道的输入接口501发送的数据块;向写RAM控制模块503发送读请求;根据写RAM控制模块503给接收到的数据块分配的地址与接收到的数据块的位置信息建立映射关系表,并存储所述映射关系表;The address storage module 502 is configured to receive the data block sent by the multi-channel input interface 501; send a read request to the write RAM control module 503; and allocate the address and the received data block according to the write RAM control module 503 to the received data block. Position information establishes a mapping relationship table, and stores the mapping relationship table;
写RAM控制模块503,配置为接收地址存储模块502发送的读请求,并根据所述读请求给接收到的数据块分配地址;The write RAM control module 503 is configured to receive the read request sent by the address storage module 502, and allocate an address to the received data block according to the read request;
多通道数据存储器的RAM504,配置为存储各个通道接收到的数据块;The RAM 504 of the multi-channel data memory is configured to store the data blocks received by the respective channels;
读RAM控制模块505,配置为接收程序的读取数据请求;根据读取数据请求中携带的通道号确定与所述通道号对应的地址存储器标识信息;根据所述地址存储器的标识信息获取相应地址存储去中的映射关系表;根据所述读取数据请求中携带的数据的位置信息,查找映射关系表,得到所述数据的地址;根据所述地址从多通道数据存储器的RAM中读出数据。The read RAM control module 505 is configured to receive a read data request of the program; determine address memory identification information corresponding to the channel number according to the channel number carried in the read data request; and obtain the corresponding address according to the identification information of the address memory Storing the mapping table in the middle; searching the mapping table according to the location information of the data carried in the read data request, obtaining the address of the data; and reading data from the RAM of the multi-channel data memory according to the address .
需要说明的是,本实施例中的多通道的输入接口与前述实施例中的多通道实现的功能一致,本实施例中的地址存储模块与前述地址存储器实现的功能一致,本实施例中的写RAM控制模块与前述写控制器实现的功能一致,本实施例中的读RAM控制模块与前述读控制器实现的功能一致。It should be noted that the input interface of the multi-channel in this embodiment is consistent with the function of the multi-channel implementation in the foregoing embodiment. The address storage module in this embodiment is consistent with the functions implemented by the foregoing address memory. The write RAM control module is consistent with the functions implemented by the write controller described above, and the read RAM control module in this embodiment is consistent with the functions implemented by the read controller.
为下面结合图5,对本实施例做进一步地详细描述:The present embodiment is further described in detail below with reference to FIG. 5:
每个通道接收到数据块后,与所述通道对应的地址存储模块向写RAM控制模块发送读请求,所述读请求中包括要写入的数据块;所述写RAM控 制模块接收到所述地址存储模块发送的读请求后,确定多通道数据存储器的RAM的存储信息,根据所述存储信息和所述读请求为接收到的数据块分配存储空间,所述写RAM控制模块将所述存储空间的地址发送给所述地址存储模块,同时,所述写RAM控制模块把数据块写入所述存储空间。After each channel receives the data block, the address storage module corresponding to the channel sends a read request to the write RAM control module, where the read request includes a data block to be written; the write RAM control After receiving the read request sent by the address storage module, the module determines storage information of the RAM of the multi-channel data storage, and allocates a storage space for the received data block according to the storage information and the read request, the write RAM The control module sends the address of the storage space to the address storage module, and at the same time, the write RAM control module writes the data block into the storage space.
当读RAM控制模块接收到读取某一通道数据的请求后,所述读RAM控制模块根据读取数据请求中携带的通道号确定与所述通道号对应的地址存储器标识信息;根据所述地址存储去的标识信息获取相应地址存储去中的映射关系表;根据所述读取数据请求中携带的数据的位置信息,查找映射关系表,得到所述数据的地址;根据所述地址从多通道数据存储器的RAM中读出数据。After the read RAM control module receives the request to read a certain channel data, the read RAM control module determines the address memory identification information corresponding to the channel number according to the channel number carried in the read data request; And storing the obtained identification information to obtain a mapping relationship table in which the corresponding address is stored; searching for the mapping relationship table according to the location information of the data carried in the read data request, obtaining an address of the data; and obtaining the multi-channel according to the address Data is read from the RAM of the data memory.
基于前述的实施例,本发明实施例提供一种多通道数据存储器的写控制器,图6为本发明实施例多通道数据存储器的写控制器的组成结构示意图,如图6所示,所述写控制器600包括:第一接收单元601、第一确定单元602、第二确定单元603、第一分配单元604、第一写入单元605和第一发送单元606,其中:Based on the foregoing embodiments, an embodiment of the present invention provides a write controller for a multi-channel data memory. FIG. 6 is a schematic structural diagram of a write controller of a multi-channel data memory according to an embodiment of the present invention. The write controller 600 includes a first receiving unit 601, a first determining unit 602, a second determining unit 603, a first allocating unit 604, a first writing unit 605, and a first transmitting unit 606, wherein:
第一接收单元601,配置为接收第一地址存储器发送的第一读请求;The first receiving unit 601 is configured to receive a first read request sent by the first address memory;
这里,第一地址存储器为第一通道对应的地址存储器,所述第一读请求包括所述第一数据块。Here, the first address memory is an address memory corresponding to the first channel, and the first read request includes the first data block.
第一确定单元602,配置为确定待存储的第一数据块;The first determining unit 602 is configured to determine a first data block to be stored;
这里,所述第一数据块是由第一通道接收到的数据块。Here, the first data block is a data block received by the first channel.
第二确定单元603,配置为确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息;a second determining unit 603, configured to determine first storage information of the random access memory RAM of the multi-channel data storage;
这里,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM。Here, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel.
第一分配单元604,配置为根据所述第一存储信息在所述RAM上为所 述第一数据块分配第一存储空间;The first allocating unit 604 is configured to be located on the RAM according to the first storage information. The first data block allocates a first storage space;
第一写入单元605,配置为将所述第一数据块写入所述第一存储空间;The first writing unit 605 is configured to write the first data block into the first storage space;
第一发送单元606,配置为将所述第一存储空间的地址携带于第一读响应中,并将所述第一读响应发送给所述第一地址存储器。The first sending unit 606 is configured to carry the address of the first storage space in the first read response, and send the first read response to the first address memory.
在实际应用中,所述第一接收单元、第一确定单元、第二确定单元、第一分配单元、第一写入单元和第一发送单元均可由位于计算设备上的CPU(Central Processing Unit,中央处理器)、MPU(Micro Processor Unit,微处理器)、DSP(Digital Signal Processor,数字信号处理器)、或FPGA(Field Programmable Gate Array,现场可编程门阵列)等实现。In a practical application, the first receiving unit, the first determining unit, the second determining unit, the first allocating unit, the first writing unit, and the first sending unit may each be a CPU (Central Processing Unit, located on the computing device, Realized by a central processing unit, an MPU (Micro Processor Unit), a DSP (Digital Signal Processor), or an FPGA (Field Programmable Gate Array).
基于前述的实施例,本发明实施例提供一种多通道数据存储器的读控制器,图7为本发明实施例多通道数据存储器的读控制器的组成结构示意图,如图7所示,所述读控制器700包括:第二接收单元701、第五确定单元702、第一获取单元703、第一查找单元704和第一读取单元705,其中:Based on the foregoing embodiments, an embodiment of the present invention provides a read controller of a multi-channel data memory, and FIG. 7 is a schematic structural diagram of a read controller of a multi-channel data memory according to an embodiment of the present invention. The read controller 700 includes a second receiving unit 701, a fifth determining unit 702, a first obtaining unit 703, a first searching unit 704, and a first reading unit 705, wherein:
第二接收单元701,配置为接收由程序发出的读取数据请求;The second receiving unit 701 is configured to receive a read data request sent by the program;
这里,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息。Here, the read data request includes: a channel number where the target data is to be read and location information of the target data.
第五确定单元702,配置为根据所述目标数据所在的通道号确定地址存储器的标识信息;The fifth determining unit 702 is configured to determine identifier information of the address memory according to the channel number where the target data is located;
第一获取单元703,配置为根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;The first obtaining unit 703 is configured to obtain a mapping relationship table from the corresponding address memory according to the identifier information of the address memory;
第一查找单元704,配置为根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;The first searching unit 704 is configured to search the mapping relationship table according to the location information of the target data, and obtain an address of the target data;
第一读取单元705,配置为根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据;The first reading unit 705 is configured to read the target data from the RAM of the multi-channel data memory according to the address of the target data;
这里,所述RAM中存储有除来自于目标数据所在通道的数据之外的其 他通道的数据,所述其他通道与要读取的目标数据所在通道不同。Here, the RAM stores therein other than the data from the channel in which the target data is located. The data of his channel, which is different from the channel where the target data to be read is located.
在实际应用中,所述第二接收单元、第五确定单元、第一获取单元、第一查找单元和第一读取单元均可由位于计算设备上的CPU、MPU、DSP、或FPGA等实现。In an actual application, the second receiving unit, the fifth determining unit, the first obtaining unit, the first searching unit, and the first reading unit may be implemented by a CPU, an MPU, a DSP, an FPGA, or the like located on the computing device.
本发明实施例提供一种多通道数据存储器,所述多通道数据存储器至少包括:两个以上的通道,所述两个以上的通道共享的随机存取存储器RAM、读控制器、写控制器,与所述两个以上的通道中每一所述通道对应的地址存储器,其中:An embodiment of the present invention provides a multi-channel data memory, where the multi-channel data memory includes at least two channels, a random access memory RAM, a read controller, and a write controller shared by the two or more channels. An address memory corresponding to each of the two or more channels, wherein:
所述每一地址存储器,仅配置为存储通道接收到的数据块中数据的位置信息和所述数据块存储空间的地址之间的映射关系表,不配置为存储数据块。Each address memory is configured only as a mapping relationship table between location information of data in the data block received by the storage channel and an address of the data block storage space, and is not configured to store the data block.
所述写控制器,配置为确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;将所述第一数据块写入所述第一存储空间;The write controller is configured to determine a first data block to be stored, the first data block is a data block received by the first channel, and the first of the random access memory RAM of the multi-channel data memory is determined Storing information, the multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; and allocating the first data block on the RAM according to the first storage information a first storage space; writing the first data block into the first storage space;
所述读控制器,配置为接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息;配置为根据所述目标数据所在的通道号确定地址存储器的标识信息;根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。 The read controller is configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read and location information of the target data; The channel number where the target data is located determines the identification information of the address memory; the mapping relationship table is obtained from the corresponding address memory according to the identification information of the address memory; and the mapping relationship table is searched according to the location information of the target data, and the mapping table is obtained. Addressing the target data; reading the target data from the RAM of the multi-channel data memory according to the address of the target data, wherein the RAM stores other channels than the data from the channel where the target data is located Data, the other channels are different from the channel in which the target data is to be read.
本发明实施例中,如果以软件功能模块的形式实现上述的多通道数据存储器的存取方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机、服务器、或者网络设备等)执行本发明各个实施例所述方法的全部或部分。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本发明实施例不限制于任何特定的硬件和软件结合。In the embodiment of the present invention, if the access method of the multi-channel data memory described above is implemented in the form of a software function module and sold or used as a stand-alone product, it may also be stored in a computer readable storage medium. Based on such understanding, the technical solution of the embodiments of the present invention may be embodied in the form of a software product in essence or in the form of a software product stored in a storage medium, including a plurality of instructions. A computer device (which may be a personal computer, server, or network device, etc.) is caused to perform all or part of the methods described in various embodiments of the present invention. The foregoing storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read only memory (ROM), a magnetic disk, or an optical disk. Thus, embodiments of the invention are not limited to any specific combination of hardware and software.
相应地,一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述的多通道数据存储器的存取方法。Accordingly, a computer storage medium having stored therein computer executable instructions for performing the above-described access method of a multi-channel data storage.
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。Those skilled in the art will appreciate that embodiments of the present invention can be provided as a method, system, or computer program product. Accordingly, the present invention can take the form of a hardware embodiment, a software embodiment, or a combination of software and hardware. Moreover, the invention can take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage and optical storage, etc.) including computer usable program code.
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功 能的装置。The present invention has been described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (system), and computer program products according to embodiments of the invention. It will be understood that each flow and/or block of the flowchart illustrations and/or FIG. These computer program instructions can be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing device to produce a machine for the execution of instructions for execution by a processor of a computer or other programmable data processing device. The work specified in one or more blocks of a flow or a flow and/or a block diagram of a flowchart Able device.
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。The computer program instructions can also be stored in a computer readable memory that can direct a computer or other programmable data processing device to operate in a particular manner, such that the instructions stored in the computer readable memory produce an article of manufacture comprising the instruction device. The apparatus implements the functions specified in one or more blocks of a flow or a flow and/or block diagram of the flowchart.
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。These computer program instructions can also be loaded onto a computer or other programmable data processing device such that a series of operational steps are performed on a computer or other programmable device to produce computer-implemented processing for execution on a computer or other programmable device. The instructions provide steps for implementing the functions specified in one or more of the flow or in a block or blocks of a flow diagram.
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。The above is only the preferred embodiment of the present invention and is not intended to limit the scope of the present invention.
工业实用性Industrial applicability
本发明实施例中,确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;将所述第一数据块写入所述第一存储空间;如此,能够降低芯片的占用面积和功耗。 In the embodiment of the present invention, the first data block to be stored is determined, the first data block is a data block received by the first channel, and the first storage information of the random access memory RAM of the multi-channel data memory is determined. The multi-channel data memory includes at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; assigning the first data block to the first data block according to the first storage information a storage space; writing the first data block to the first storage space; thus, the footprint and power consumption of the chip can be reduced.

Claims (11)

  1. 一种多通道数据存储器的存取方法,所述方法包括:A method for accessing a multi-channel data storage, the method comprising:
    确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;Determining a first data block to be stored, the first data block being a data block received by the first channel;
    确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;Determining first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory comprising at least a first channel, a second channel, and a RAM shared by the first channel and the second channel;
    根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;Allocating a first storage space for the first data block on the RAM according to the first storage information;
    将所述第一数据块写入所述第一存储空间。Writing the first data block into the first storage space.
  2. 根据权利要求1中所述方法,其中,所述方法还包括:根据所述第一存储信息和所述第一存储空间,确定所述RAM的第二存储信息。The method of claim 1, wherein the method further comprises determining second storage information of the RAM based on the first storage information and the first storage space.
  3. 根据权利要求2中所述方法,其中,所述方法还包括:The method of claim 2 wherein the method further comprises:
    确定待存储的第二数据块,所述第二数据块是由第二通道接收到的数据块;Determining a second data block to be stored, the second data block being a data block received by the second channel;
    根据所述第二存储信息在所述RAM上为所述第二数据块分配第二存储空间;Allocating a second storage space for the second data block on the RAM according to the second storage information;
    将所述第二数据块写入所述第二存储空间。Writing the second data block to the second storage space.
  4. 根据权利要求1中所述的方法,其中,所述确定待存储的第一数据块,包括:接收第一地址存储器发送的第一读请求,其中,所述第一地址存储器为所述第一通道对应的地址存储器,所述第一读请求包括所述第一数据块;The method of claim 1, wherein the determining the first data block to be stored comprises: receiving a first read request sent by the first address memory, wherein the first address memory is the first An address memory corresponding to the channel, the first read request including the first data block;
    对应地,所述方法还包括:将所述第一存储空间的地址携带于第一读响应中,并将所述第一读响应发送给所述第一地址存储器。Correspondingly, the method further comprises: carrying an address of the first storage space in a first read response, and transmitting the first read response to the first address memory.
  5. 根据权利要求1至4任一项所述的方法,其中,所述多通道数据 存储器至少包括一个RAM。The method according to any one of claims 1 to 4, wherein the multi-channel data The memory includes at least one RAM.
  6. 一种多通道数据存储器的存取方法,所述方法包括:A method for accessing a multi-channel data storage, the method comprising:
    接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息;Receiving a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and location information of the target data;
    根据所述目标数据所在的通道号确定地址存储器的标识信息;Determining identification information of the address memory according to the channel number where the target data is located;
    根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;Obtaining a mapping relationship table from the corresponding address memory according to the identifier information of the address memory;
    根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;Finding the mapping relationship table according to the location information of the target data, and obtaining an address of the target data;
    根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。Reading target data from the RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores data of channels other than data from a channel in which the target data is located, the other The channel is different from the channel where the target data to be read is located.
  7. 一种写控制器,所述写控制器包括:A write controller, the write controller comprising:
    第一确定单元,配置为确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;a first determining unit, configured to determine a first data block to be stored, where the first data block is a data block received by the first channel;
    第二确定单元,配置为确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;a second determining unit configured to determine first storage information of the random access memory RAM of the multi-channel data memory, the multi-channel data memory including at least a first channel, a second channel, and a first channel and a second channel sharing RAM
    第一分配单元,配置为根据所述第一存储信息在所述RAM上为所述第一数据块分配第一存储空间;a first allocation unit, configured to allocate a first storage space for the first data block on the RAM according to the first storage information;
    第一写入单元,配置为将所述第一数据块写入所述第一存储空间。The first writing unit is configured to write the first data block into the first storage space.
  8. 根据权利要求7中所述的写控制器,其中,所述写控制器还包括:The write controller of claim 7 wherein said write controller further comprises:
    第三确定单元,配置为根据所述第一存储信息和所述第一存储空间,确定所述RAM的第二存储信息。 And a third determining unit, configured to determine second storage information of the RAM according to the first storage information and the first storage space.
  9. 一种读控制器,所述读控制器包括:A read controller, the read controller comprising:
    第二接收单元,配置为接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息;a second receiving unit, configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read, and location information of the target data;
    第五确定单元,配置为根据所述目标数据所在的通道号确定地址存储器的标识信息;a fifth determining unit, configured to determine identifier information of the address memory according to the channel number where the target data is located;
    第一获取单元,配置为根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;a first acquiring unit, configured to acquire a mapping relationship table from a corresponding address memory according to the identifier information of the address memory;
    第一查找单元,配置为根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;a first searching unit, configured to search the mapping relationship table according to location information of the target data, to obtain an address of the target data;
    第一读取单元,配置为根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。a first reading unit configured to read target data from a RAM of the multi-channel data memory according to an address of the target data, wherein the RAM stores a data other than data from a channel in which the target data is located The data of other channels, which are different from the channel where the target data to be read is located.
  10. 一种多通道数据存储器,所述多通道数据存储器至少包括:两个以上的通道,所述两个以上的通道共享的随机存取存储器RAM、读控制器和写控制器,与所述两个以上的通道中每一所述通道对应的地址存储器;A multi-channel data memory, the multi-channel data memory comprising: at least two channels, the two or more channels share a random access memory RAM, a read controller and a write controller, and the two An address memory corresponding to each of the above channels;
    所述每一地址存储器,仅配置为存储通道接收到的数据块中数据的位置信息和所述数据块存储空间的地址之间的映射关系表,不配置为存储数据块;Each address memory is configured only as a mapping relationship table between location information of data in the data block received by the storage channel and an address of the data block storage space, and is not configured to store the data block;
    所述写控制器,配置为确定待存储的第一数据块,所述第一数据块是由第一通道接收到的数据块;确定所述多通道数据存储器的随机存取存储器RAM的第一存储信息,所述多通道数据存储器至少包括第一通道、第二通道以及第一通道和第二通道共享的RAM;根据所述第一存储 信息在所述RAM上为所述第一数据块分配第一存储空间;将所述第一数据块写入所述第一存储空间;The write controller is configured to determine a first data block to be stored, the first data block is a data block received by the first channel, and the first of the random access memory RAM of the multi-channel data memory is determined Storing information, the multi-channel data storage comprising at least a first channel, a second channel, and a RAM shared by the first channel and the second channel; according to the first storage Transmitting, on the RAM, a first storage space for the first data block; writing the first data block to the first storage space;
    所述读控制器,配置为接收由程序发出的读取数据请求,其中,所述读取数据请求包括:所要读取目标数据所在的通道号以及所述目标数据的位置信息;配置为根据所述目标数据所在的通道号确定地址存储器的标识信息;根据所述地址存储器的标识信息从相应的地址存储器获取映射关系表;根据所述目标数据的位置信息查找所述映射关系表,得出所述目标数据的地址;根据所述目标数据的地址从所述多通道数据存储器的RAM中读取目标数据,其中,所述RAM中存储有除来自于目标数据所在通道的数据之外的其他通道的数据,所述其他通道与要读取的目标数据所在通道不同。The read controller is configured to receive a read data request issued by the program, where the read data request includes: a channel number where the target data is to be read and location information of the target data; The channel number where the target data is located determines the identification information of the address memory; the mapping relationship table is obtained from the corresponding address memory according to the identification information of the address memory; and the mapping relationship table is searched according to the location information of the target data, and the mapping table is obtained. Addressing the target data; reading the target data from the RAM of the multi-channel data memory according to the address of the target data, wherein the RAM stores other channels than the data from the channel where the target data is located Data, the other channels are different from the channel in which the target data is to be read.
  11. 一种计算机存储介质,所述计算机存储介质中存储有计算机可执行指令,该计算机可执行指令用于执行上述权利要求1至5任一项或6的多通道数据存储器的存取方法。 A computer storage medium having stored therein computer executable instructions for performing the access method of the multi-channel data storage of any one of claims 1 to 5 or 6.
PCT/CN2017/082778 2016-05-16 2017-05-02 Multi-channel data memory and access method and apparatus therefor, and storage medium WO2017198070A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610321779.6A CN107391023B (en) 2016-05-16 2016-05-16 Multi-channel data memory and access method and device thereof
CN201610321779.6 2016-05-16

Publications (1)

Publication Number Publication Date
WO2017198070A1 true WO2017198070A1 (en) 2017-11-23

Family

ID=60324855

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2017/082778 WO2017198070A1 (en) 2016-05-16 2017-05-02 Multi-channel data memory and access method and apparatus therefor, and storage medium

Country Status (2)

Country Link
CN (1) CN107391023B (en)
WO (1) WO2017198070A1 (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110149803A (en) * 2018-08-27 2019-08-20 深圳市锐明技术股份有限公司 Date storage method, system and terminal device
CN111161135A (en) * 2019-12-30 2020-05-15 深圳云天励飞技术有限公司 Picture conversion method and related product
CN111796931A (en) * 2020-06-09 2020-10-20 阿里巴巴集团控股有限公司 Information processing method, device, computing equipment and medium
CN112099943A (en) * 2020-08-13 2020-12-18 深圳云天励飞技术股份有限公司 Memory allocation method and related equipment
CN112395244A (en) * 2019-08-16 2021-02-23 上海寒武纪信息科技有限公司 Processor access device and method
CN112506823A (en) * 2020-12-11 2021-03-16 盛立金融软件开发(杭州)有限公司 FPGA data reading and writing method, device, equipment and readable storage medium
CN112613053A (en) * 2020-12-25 2021-04-06 北京天融信网络安全技术有限公司 Data encryption and decryption method and device
CN114553931A (en) * 2022-02-23 2022-05-27 广州小鹏汽车科技有限公司 Processing method and device for vehicle shared storage space, vehicle and system

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115208845A (en) * 2021-04-09 2022-10-18 盛立安元科技(杭州)股份有限公司 Method, apparatus, device, storage medium, and program product for transmitting data packet
CN113660180B (en) * 2021-07-30 2023-11-28 鹏城实验室 Data storage method, device, terminal and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1680929A (en) * 2004-04-08 2005-10-12 华为技术有限公司 Dada buffer designing method with multiple channels and device thereof
CN102073603A (en) * 2009-11-24 2011-05-25 联发科技股份有限公司 Multi-channel memory apparatus and method for accessing multi-channel memory apparatus
CN102486931A (en) * 2010-11-30 2012-06-06 三星电子株式会社 Multi channel semiconductor memory device and semiconductor device including same

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06162676A (en) * 1992-10-13 1994-06-10 Sony Corp Magnetic recording device
DE602004012106T2 (en) * 2004-10-11 2009-02-19 Texas Instruments Inc., Dallas Multi-channel DMA with shared FIFO buffer
CN101504633B (en) * 2009-03-27 2012-09-05 无锡中星微电子有限公司 Multi-channel DMA controller
CN102097122B (en) * 2009-12-10 2013-03-27 上海华虹集成电路有限责任公司 NAND flash controller circuit of multi-channel shared data cache region
CN103905855A (en) * 2012-12-26 2014-07-02 苏州赛源微电子有限公司 Multichannel multi-format DVR system frame buffer allocation and interactive mechanism
KR101401806B1 (en) * 2013-01-30 2014-05-29 한양대학교 산학협력단 Apparatus and method for control multi-channel non-volatile memory using shared buffer
CN103455442B (en) * 2013-08-30 2016-06-08 华为技术有限公司 Hyperchannel first outer buffer queue controller and access method
CN105162869B (en) * 2015-09-18 2019-01-18 久盈世纪(北京)科技有限公司 A kind of method and apparatus for backup data management

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1680929A (en) * 2004-04-08 2005-10-12 华为技术有限公司 Dada buffer designing method with multiple channels and device thereof
CN102073603A (en) * 2009-11-24 2011-05-25 联发科技股份有限公司 Multi-channel memory apparatus and method for accessing multi-channel memory apparatus
CN102486931A (en) * 2010-11-30 2012-06-06 三星电子株式会社 Multi channel semiconductor memory device and semiconductor device including same

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110149803B (en) * 2018-08-27 2023-06-09 深圳市锐明技术股份有限公司 Data storage method, system and terminal equipment
CN110149803A (en) * 2018-08-27 2019-08-20 深圳市锐明技术股份有限公司 Date storage method, system and terminal device
CN112395244A (en) * 2019-08-16 2021-02-23 上海寒武纪信息科技有限公司 Processor access device and method
CN111161135A (en) * 2019-12-30 2020-05-15 深圳云天励飞技术有限公司 Picture conversion method and related product
CN111796931A (en) * 2020-06-09 2020-10-20 阿里巴巴集团控股有限公司 Information processing method, device, computing equipment and medium
CN111796931B (en) * 2020-06-09 2024-03-29 阿里巴巴集团控股有限公司 Information processing method, device, computing equipment and medium
CN112099943A (en) * 2020-08-13 2020-12-18 深圳云天励飞技术股份有限公司 Memory allocation method and related equipment
CN112099943B (en) * 2020-08-13 2024-05-03 深圳云天励飞技术股份有限公司 Memory allocation method and related equipment
CN112506823B (en) * 2020-12-11 2023-09-29 盛立安元科技(杭州)股份有限公司 FPGA data reading and writing method, device, equipment and readable storage medium
CN112506823A (en) * 2020-12-11 2021-03-16 盛立金融软件开发(杭州)有限公司 FPGA data reading and writing method, device, equipment and readable storage medium
CN112613053A (en) * 2020-12-25 2021-04-06 北京天融信网络安全技术有限公司 Data encryption and decryption method and device
CN112613053B (en) * 2020-12-25 2024-04-23 北京天融信网络安全技术有限公司 Data encryption and decryption method and device
CN114553931A (en) * 2022-02-23 2022-05-27 广州小鹏汽车科技有限公司 Processing method and device for vehicle shared storage space, vehicle and system
CN114553931B (en) * 2022-02-23 2024-03-08 广州小鹏汽车科技有限公司 Processing method, device, vehicle and system for shared storage space of vehicle

Also Published As

Publication number Publication date
CN107391023A (en) 2017-11-24
CN107391023B (en) 2021-01-22

Similar Documents

Publication Publication Date Title
WO2017198070A1 (en) Multi-channel data memory and access method and apparatus therefor, and storage medium
US11240050B2 (en) Online document sharing method and apparatus, electronic device, and storage medium
KR102344768B1 (en) Memory protocol
US9465729B2 (en) Memory allocation accelerator
US20170371812A1 (en) System and method for odd modulus memory channel interleaving
CN111241040B (en) Information acquisition method and device, electronic equipment and computer storage medium
US10061709B2 (en) Systems and methods for accessing memory
US20200183604A1 (en) Partitioning graph data for large scale graph processing
CN107943727B (en) High-efficient DMA controller
CN109947671A (en) A kind of address conversion method, device, electronic equipment and storage medium
US8341330B2 (en) Method and system for enhanced read performance in serial peripheral interface
US9471381B2 (en) Resource allocation in multi-core architectures
US20040139241A1 (en) Input/output device and method of setting up identification information in input/output device
US8688947B1 (en) Aligned data access
CN109511166B (en) Positioning method and positioning device of equipment
US20170262367A1 (en) Multi-rank collision reduction in a hybrid parallel-serial memory system
CN110019538A (en) A kind of tables of data switching method and device
US20160041761A1 (en) Independently controlling separate memory devices within a rank
CN105072534A (en) Control method of wireless loudspeaker box system, and terminal
CN115168249A (en) Address translation method, memory system, electronic device, and storage medium
CN112395245B (en) Access device and method of processor and computer equipment
CN110147944B (en) Ranking method and device
TW201715400A (en) Flash memory apparatus and interleave accessing method thereof
US9311257B2 (en) Semiconductor memory device, memory system and method of operating the same
CN109542531B (en) File layout adjustment method and device

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17798633

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 17798633

Country of ref document: EP

Kind code of ref document: A1