A storage controller and an electronic system
By designing a storage controller, using selector group expansion to connect multiple memories, and ensuring access reliability through access control modules, the problem of limited memory capacity limit in the prior art is solved, and the storage capacity expansion and access reliability are improved.
Patent Information
- Application Number
- CN202411896087.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-23
- Publication Date
- 2025-06-24
- Estimated Expiration
- 2044-12-23
AI Technical Summary
The memory capacity limit of existing electronic products is limited, making it difficult to meet capacity expansion requirements, resulting in hardware upgrade costs and waste of resources.
A storage controller is designed, including an access control module, a storage interface group and a selector group. It connects multiple memories through the selector group expansion to achieve the expansion of storage capacity, and generates selection signals based on access requests through the access control module to ensure access reliability.
It realizes the expansion of storage capacity, while ensuring access reliability, avoiding hardware upgrade costs and resource waste.
Smart Images

Figure CN119336672B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of electronic technologies, and particularly to a storage controller and an electronic system. Background Art
[0002] With the development of electronic technologies, the demand for memory capacity in various electronic products is increasing day by day.
[0003] The upper limit of the memory capacity of existing electronic products is often determined by the capacity supported by main control components such as the motherboard chipset or CPU. The capacity and bandwidth of a conventional externally connected Double Data Rate (DDR) interface are both limited, making it difficult to meet the demand for capacity expansion. Only by replacing it with a product with a higher configuration, which results in huge hardware upgrade costs and resource waste. Summary of the Invention
[0004] In view of the above problems, the present invention is proposed to provide a storage controller and an electronic system that overcome the above problems or at least partially solve the above problems.
[0005] In a first aspect, a storage controller is provided, including:
[0006] An access control module, a storage interface group, and a selector group;
[0007] The access control module is connected to the storage interface group. The access control module generates a selection signal according to the access address carried in the received access request, and transmits the selection signal to the selector group through the storage interface group;
[0008] The storage interfaces of the storage interface group are respectively connected to the selectors of the selector group one by one, and each selector is connected to multiple memories; wherein, according to the received selection signal, the selector switches to enable the target memory corresponding to the access address to access the target memory.
[0009] Optionally, the access control module includes: an address mapping module, an address selection switch, and a storage interface control module; the address mapping module is connected to the address selection switch to identify the access address according to the access request and send the access address to the address selection switch; the address selection switch is connected to the storage interface control module to generate the selection signal according to the access address and address mapping data, and the address mapping data represents the corresponding relationship between the memories connected to the selector group and the access address; the storage interface control module is connected to the storage interface group to select the storage interface corresponding to the access address according to the selection signal, and send the selection signal to the corresponding selector through the selected storage interface.
[0010] Optionally, the storage interface control module includes a detection unit configured to detect the number of memories connected to the selector group and generate the address mapping data according to the number.
[0011] Optionally, the storage interface control module includes a cache unit configured to provide a cache space for data during the process of writing data to the target memory before the selector switches to enable the target memory.
[0012] Optionally, before the selector switches from the currently enabled current memory to enable the target memory, the storage controller sets the current memory to the self-refresh state to maintain the stored data in the current memory; after the selector switches to enable the target memory, the storage controller controls the refresh of the target memory.
[0013] Optionally, when the access request is to write write data to the target memory, the access control module sends the selection signal to the corresponding selector; if the currently enabled current memory of the selector is the target memory, the write data is stored in the target memory; otherwise, the write data is cached in the access control module, the current memory is set to the self-refresh state, the selector is switched to enable the target memory, and then the write data is stored in the target memory; when the access request is to read read data from the target memory, the access control module sends the selection signal to the corresponding selector; if the currently enabled current memory of the selector is the target memory, the read data is obtained from the target memory; otherwise, the current memory is set to the self-refresh state, the selector is switched to enable the target memory, and then the read data is obtained from the target memory.
[0014] Optionally, the storage controller further includes: an open industry standard interconnect interface connected to the access control module for communication between the access control module and the main control component.
[0015] Optionally, the multiple memories connected to the selector are dynamic random access memories; and / or the storage interface group is a double data rate synchronous dynamic random access memory interface group.
[0016] In a second aspect, an electronic system is provided, including:
[0017] A main control component, a memory, and the storage controller according to any one of the first aspect;
[0018] The storage controller communicates with the main control component through an open industry standard interconnect interface, and is connected to a plurality of the memories through the selector group to expand the memory capacity of the electronic system.
[0019] Optionally, the electronic system includes: a plurality of the main control components, and the storage controller is communicatively connected to the plurality of main control components based on the open industry standard interconnect interface, so that the plurality of main control components share the storage controller.
[0020] The technical solution provided in the embodiment of the present invention has at least the following technical effects or advantages:
[0021] For the storage controller and the electronic system provided in the embodiment of the present invention, the storage interfaces of the storage interface group are connected to the selectors of the selector group in a one-to-one correspondence, and each selector is used to expand the connection to a plurality of memories to realize the expansion of the storage capacity. Moreover, an access control module is provided to generate a selection signal that can point to the target memory to be accessed according to the access request, and transmit the selection signal to the selector group, so that the selector can determine the target memory according to the selection signal and switch to enable the target memory for correct access. Thus, on the basis of expanding the storage capacity, the reliability of access is ensured.
[0022] The above description is only an overview of the technical solution of the present invention. In order to be able to understand the technical means of the present invention more clearly, it can be implemented according to the content of the description. And in order to make the above and other objects, features and advantages of the present invention more obvious and understandable, the specific embodiments of the present invention are hereinafter specifically exemplified. Description of the Drawings
[0023] By reading the following detailed description of the preferred embodiments, various other advantages and benefits will become clear to those of ordinary skill in the art. The drawings are only for the purpose of showing the preferred embodiments and are not considered to be a limitation of the present invention. Moreover, throughout the drawings, the same reference numerals are used to represent the same components. In the drawings:
[0024] Figure 1 is a schematic structural diagram of the storage controller in the embodiment of the present invention Figure 1 ;
[0025] Figure 2 is a schematic structural diagram of the storage controller in the embodiment of the present invention Figure 2 ;
[0026] Figure 3 is a schematic structural diagram of the electronic system in the embodiment of the present invention. Detailed Embodiments
[0027] Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided so that the present disclosure can be more thoroughly understood and the scope of the present disclosure can be completely conveyed to those skilled in the art. In addition, in the following description, descriptions of well-known structures and technologies are omitted to avoid unnecessarily confusing the concepts of the present disclosure.
[0028] Various structural schematic diagrams according to embodiments of the present disclosure are shown in the drawings. These figures are not drawn to scale, and for the purpose of clear expression, some details are enlarged and some details may be omitted. The shapes of various regions and layers shown in the figures, as well as their relative sizes and positional relationships, are merely exemplary and may deviate in practice due to manufacturing tolerances or technical limitations. Those skilled in the art can design regions / layers with different shapes, sizes, and relative positions according to actual needs.
[0029] Please refer to Figure 1 , an embodiment of the present application provides a storage controller, including: an access control module 1, a storage interface group 2, and a selector group 3. The access control module 1 is connected to the storage interface group 2. The access control module 1 generates a selection signal according to the access address carried in the received access request and transmits the selection signal to the selector group 3 through the storage interface group 2. The storage interfaces of the storage interface group 2 are respectively connected to the selectors of the selector group 3, and each selector is connected to multiple memories 101. Among them, according to the received selection signal, the selector switches to the target memory corresponding to the enabled access address to access the target memory.
[0030] It should be noted that although updating the conventional interface of the storage controller to a serial interface and connecting more memories through the serial interface can expand the capacity to a certain extent, the serial interface will increase the latency of the master device accessing the memory, and the cost of the memory chip corresponding to the serial interface is relatively high, bringing a greater burden to the product cost.
[0031] Next, the structure of the storage controller will be introduced in detail.
[0032] In an alternative embodiment, as Figure 2As shown, the storage controller may further include an open industry standard interconnect interface 4 (Compute Express Link, CXL) interface module, which can be used to connect processors, accelerators, memory buffers, intelligent network interfaces, and storage devices. The open industry standard interconnect interface 4 is connected to the access control module 1 and is used for the communication between the access control module 1 and the main control component 201, and can transmit the access requests sent by the main control component 201 to the access control module 1.
[0033] In an alternative embodiment, as Figure 2 shown, the access control module 1 may include: an address mapping module 11, an address selection switch 12, and a storage interface control module 13. The address mapping module 11 is connected to the address selection switch 12, the address selection switch 12 is connected to the storage interface control module 13, and the storage interface control module 13 is connected to the storage interface group 2.
[0034] Among them, the address mapping module 11 is configured to identify the access address according to the received access request and send the access address to the address selection switch 12. Specifically, the address mapping module 11 extracts the access address in logical form from the access request, and then converts the access address in logical code form into the access address in physical form according to a preset conversion rule (for example, converting the access address with the logical form of 10101101 into the access address in the physical form of the storage range of 21G to 22G), and sends the access address in physical form to the address selection switch 12.
[0035] The address selection switch 12 is configured to generate a selection signal based on the address mapping data according to the received access address, and the address mapping data represents the correspondence between the memory connected to the selector group 3 and the access address. Specifically, the address mapping data is pre-stored in the address selection switch 12, and the address mapping data can be pre-generated by the storage interface control module 13 or pre-stored by the staff. The address mapping data represents the correspondence between the memory and the access address. According to the access address and the address mapping data, the address selection switch 12 can determine which memory connected to which connector is the target memory to be accessed, so as to generate a selection signal to represent the position of the target memory. For example, assume that there are N memories connected to the selector group 3, which are respectively identified as memory No. 1, memory No. 2... memory No. N, and the storage capacity of each memory is 8G. Then, the address mapping data records that 0 to 8G corresponds to memory No. 1, 8 to 16G corresponds to memory No. 2... N*8 - 8 to N*8G corresponds to memory No. N. In this way, assuming that the access address in physical form received by the address selection switch 12 is 21G to 22G, it can be correspondingly determined that the memory to be accessed is memory No. 3, and a selection signal pointing to memory No. 3 is generated.
[0036] The storage interface control module 13 is used to select the storage interface corresponding to the access address according to the selection signal, and send the selection signal to the corresponding selector through the selected storage interface. Specifically, the storage interface group connected by the storage interface control module 13 has multiple storage interfaces. It can determine which selector corresponding to the storage interface the target memory is connected to according to the selection signal, and then send the selection signal to the corresponding selector, so that the selector can switch to enable the memory according to the selection signal.
[0037] In an alternative embodiment, the storage interface control module 13 may include a detection unit, which is used to detect the number of memories 101 connected to the selector group 3, and generate address mapping data according to the number and the capacity of a single memory. The capacity of the memory 101 can be default, for example, the default single memory is 8G, or it can be detected and obtained, which is not limited herein.
[0038] In an alternative embodiment, the storage interface control module 13 may further include a cache unit, which is used to provide a cache space for data during the process of writing data to the target memory before the selector switches to enable the target memory.
[0039] In an alternative embodiment, the storage interfaces in the storage interface group 2 may be double data rate synchronous dynamic random access memory interfaces. Since the double data rate synchronous dynamic random access memory interface is a conventional external interface of storage devices, it has a lower cost, and both the interface accessories and communication protocols are relatively mature. Using the double data rate synchronous dynamic random access memory interface to connect to the selector group 3 can effectively avoid the increase in delay and cost caused by the update and upgrade of the storage medium interface. Of course, the storage interface group 2 may also adopt other storage medium interfaces, and can also achieve capacity expansion through connection with the selector group 3, which is not limited herein and will not be listed one by one.
[0040] In an alternative embodiment, the selector in the selector group 3 may be a multiplexer (MUX), or a selection switch Swicth, which is not limited herein.
[0041] In an alternative embodiment, the multiple memories 101 connected to the selector may be dynamic random access memories to balance the access speed and memory cost. Of course, the memory 101 may also be a static random access memory, a phase change memory, a double data rate synchronous dynamic random access memory, a dynamic random access memory, a flash memory, etc., which is not limited herein.
[0042] Taking the memory 101 as a memory such as a dynamic random access memory that needs to be refreshed to maintain data as an example, to avoid data loss, it can be set that after the storage controller is powered on, each selector defaults to enabling any one of the multiple memories it is connected to, and the storage controller controls the refresh of the currently enabled memory to maintain data. Before the selector needs to switch from the currently enabled current memory to the target memory, the storage controller sets the current memory to the self-refresh state to maintain the stored data of the current memory. After the selector switches to enabling the target memory, the storage controller controls the refresh of the target memory.
[0043] The following combines Figure 1 and Figure 2 to introduce the data access method provided by the storage controller of the present application.
[0044] In the power-on stage, after the storage controller is powered on, the storage controller sequentially trains the memories 101 connected to the selector group 3. The purpose of the training is to obtain parameters such as the power-on working state and ambient temperature of each memory to ensure subsequent access based on the obtained parameters. For memories on different channels of the same selector, the trained parameters can be common. After the training is completed, each selector defaults to enabling any one of the multiple memories it is connected to, and the storage controller controls the refresh of the currently enabled memory to maintain data.
[0045] After the main control component issues an access request to the storage controller, the access request can be transmitted to the access control module 1 through the open industry standard interconnect interface 4.
[0046] When the access request is to write write data to the target memory, the access control module 1 sends a selection signal to the corresponding selector; if the currently enabled current memory of the selector is the target memory, the write data is stored in the target memory; otherwise, the write data is cached in the access control module 1, the current memory is set to the self-refresh state, the selector is switched to enable the target memory, and then the write data is stored in the target memory;
[0047] When the access request is to read read data from the target memory, the access control module 1 sends a selection signal to the corresponding selector; if the currently enabled current memory of the selector is the target memory, the read data is obtained from the target memory; otherwise, the current memory is set to the self-refresh state, the selector is switched to enable the target memory, and then the read data is obtained from the target memory.
[0048] Based on the same inventive concept, an embodiment of the present application also provides an electronic system, as Figure 3 shown, including:
[0049] A main control component 201, a memory 101, and the storage controller 301 provided in the foregoing embodiment. The storage controller 301 communicates with the main control component 201 through an open industry standard interconnect interface, and is connected to a plurality of memories 101 through a selector group to expand the memory capacity of the electronic system.
[0050] In an alternative embodiment, based on the scalability and multi-port selection mechanism of the open industry standard interconnect interface technology, the electronic system may be configured to include a plurality of main control components 201, and the storage controller 301 communicates with the plurality of main control components 201 based on the open industry standard interconnect interface, so that the plurality of main control components share the storage controller 301 and a plurality of memories 101.
[0051] Since the storage controller 301 included in the electronic system introduced in the embodiments of the present application is exactly the storage controller introduced in the embodiments of the present application, the principle and structure of the storage controller, and its connection manner with the main control component 201 and the memory 101 have been described in detail above, and thus will not be elaborated herein. Any electronic system including the storage controller of the embodiments of the present application falls within the scope of protection of the present invention.
[0052] The technical solutions provided in the embodiments of the present invention have at least the following technical effects or advantages:
[0053] The storage controller and the electronic system provided in the embodiments of the present invention are configured such that the storage interfaces of the storage interface group are connected to the selectors of the selector group in one-to-one correspondence, and each selector is used to expand the connection to a plurality of memories to achieve the expansion of the storage capacity. In addition, an access control module is provided to generate a selection signal that can point to the target memory to be accessed according to the access request, and transmit the selection signal to the selector group, so that the selector can determine the target memory according to the selection signal and switch to enable the target memory for correct access, thereby ensuring the reliability of access on the basis of expanding the storage capacity.
[0054] The algorithms and displays provided herein are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems can also be used in conjunction with the teachings provided herein. The structure required to construct such a system will be apparent from the above description. In addition, the present invention is not directed to any particular programming language. It should be understood that the content of the present invention described herein can be implemented using various programming languages, and the description of the specific language above is for the purpose of disclosing the best mode of the present invention.
[0055] In the specification provided herein, a large number of specific details are set forth. However, it can be understood that the embodiments of the present invention may be practiced without these specific details. In some instances, well-known methods, structures, and technologies have not been shown in detail so as not to obscure the understanding of this specification.
[0056] Similarly, it should be understood that, in order to streamline the present disclosure and assist in understanding one or more of the various inventive aspects, in the foregoing description of the exemplary embodiments of the present invention, the various features of the present invention are sometimes grouped together into a single embodiment, figure, or description thereof.
[0057] Those skilled in the art can understand that the modules in the devices in the embodiments can be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments can be combined into a single module or unit or component, and in addition, they can be divided into multiple sub-modules or sub-units or sub-components. Except that at least some of such features and / or processes or units are mutually exclusive, any combination can be used to combine all the features disclosed in this specification (including the abstract and drawings) and all the processes or units of any method or device so disclosed. Unless otherwise expressly stated, each feature disclosed in this specification (including the accompanying abstract and drawings) can be replaced by an alternative feature that provides the same, equivalent, or similar purpose.
[0058] In addition, those skilled in the art can understand that, although some of the embodiments herein include certain features included in other embodiments rather than other features, the combination of the features of different embodiments means that it is within the scope of the present invention and forms different embodiments.
[0059] It should be noted that the above embodiments illustrate the present invention rather than limit the present invention. Any reference signs placed between parentheses should not be construed as limiting the present invention. The word "comprising" does not exclude the presence of components or steps not listed in the present invention. The word "a" or "an" preceding a component does not exclude the presence of a plurality of such components. The present invention can be implemented by means of hardware including several different components and by means of a computer appropriately programmed. In the embodiments listing several devices, several of these devices can be embodied by the same hardware item. The use of the words first, second, and third, etc. does not denote any order. These words can be interpreted as names.
Claims
1. A storage controller, characterized in that: include: Access control module, storage interface group and selector group; The access control module is connected to the storage interface group, and the access control module generates a selection signal according to the access address carried in the received access request, and transmits the selection signal to the selector group through the storage interface group; The storage interfaces of the storage interface group are connected to the selectors of the selector group in a one-to-one correspondence, each of the selectors is connected to a plurality of memories, and the memories are dynamic random access memories; wherein the selectors switch to enable the target memory corresponding to the access address according to the received selection signal, so as to access the target memory; Wherein, before the selector switches from the currently enabled current memory to enabling the target memory, the storage controller sets the current memory to a self-refresh state to maintain the storage data of the current memory; after the selector switches to enabling the target memory, the storage controller controls the refresh of the target memory; Among them, the storage interface control module includes a cache unit, which is used to provide data cache space for write data before the selector switches to enable the target memory during the process of writing data to the target memory, so as to store the write data into the target memory after the selector switches to enable the target memory.
2. The storage controller according to claim 1, wherein: The access control module includes: Address mapping module, address selection switch and storage interface control module; The address mapping module is connected to the address selection switch to identify the access address according to the access request and send the access address to the address selection switch; The address selection switch is connected to the storage interface control module to generate the selection signal according to the access address and address mapping data, wherein the address mapping data represents the corresponding relationship between the memory connected to the selector group and the access address; The storage interface control module is connected to the storage interface group to select the storage interface corresponding to the access address according to the selection signal, and sends the selection signal to the corresponding selector through the selected storage interface.
3. The storage controller according to claim 2, wherein: The storage interface control module includes a detection unit, which is used to detect the number of memories connected to the selector group and generate the address mapping data according to the number.
4. The storage controller according to claim 1, wherein: When the access request is to write write data to the target memory, the access control module sends the selection signal to the corresponding selector; if the current memory currently enabled by the selector is the target memory, the write data is stored in the target memory; Otherwise, the write data is cached into the access control module, the current memory is set to a self-refresh state, the selector is switched to enable the target memory, and the write data is stored into the target memory; When the access request is to read data of the target memory, the access control module sends the selection signal to the corresponding selector; If the current memory currently enabled by the selector is the target memory, the read data is obtained from the target memory; otherwise, the current memory is set to a self-refresh state, the selector is switched to enable the target memory, and then the read data is obtained from the target memory.
5. The storage controller according to claim 1, wherein: Also includes: An open industry standard interconnection interface is connected to the access control module and is used for communication between the access control module and the main control component.
6. The storage controller according to claim 1, wherein: The storage interface group is a double rate synchronous dynamic random access memory interface group.
7. An electronic system, characterized in that: include: A main control component, a memory and a storage controller as claimed in any one of claims 1 to 6; The storage controller communicates with the main control component through an open industry standard interconnection interface and is connected to a plurality of the memories through the selector group to expand the memory capacity of the electronic system.
8. The electronic system according to claim 7, wherein: include: There are multiple master control components, and the storage controller is communicatively connected with the multiple master control components based on the open industry standard interconnection interface, so that the multiple master control components share the storage controller.
Citation Information
Patent Citations
Chip selection enabling control device, reading device, erasing device and flash memory
CN115831198A
Method and system for realizing high-speed memory extension in SOC, chip and storage medium
CN117009264A