Memory expansion system and method, electronic device and storage medium

By obtaining the on-site information of the memory module and the power control signal of the memory controller, copying the memory data and powering off, installing the new memory module and identifying it, the problem of memory expansion in the existing technology does not support dynamic replacement, and realizes the Efficient memory expansion.

CN118964044BActive Publication Date: 2025-02-25INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202411433585.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-10-14
Publication Date
2025-02-25
Estimated Expiration
2044-10-14

AI Technical Summary

Technical Problem

When the existing technology expands the memory capacity of computers, it is impossible to dynamically replace memory, resulting in low memory expansion efficiency.

Method used

When receiving the memory expansion request signal, it obtains the on-site information of the memory module and the power control signal of the memory controller, copies the memory data, and controls the memory controller to assemble the new memory module after powering off, and is based on the calculation high-speed link Identify new memory modules.

Benefits of technology

Non-fixed memory expansion is realized, fixed capacity expansion is avoided, and memory expansion efficiency is improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118964044B_ABST
    Figure CN118964044B_ABST
Patent Text Reader

Abstract

The embodiment of the present invention provides a memory expansion system and method, an electronic device and a storage medium, and relates to the technical field of memory expansion systems. When a memory expansion request signal is received, the in-situ information for the memory module and the power control signal for the memory controller are obtained; when the memory module is determined to be in place through the in-situ information, and when the memory controller is determined to be in a state of being powered on through the power control signal, the memory data of the memory module is copied; when the memory data copying is completed, the memory controller is controlled to be powered off; the memory connector is used to be equipped with a new memory module after the memory data copying is completed and the memory controller is powered off; the new memory module is identified based on the high-speed communication protocol of the computing high-speed link, so as to realize non-fixed memory expansion, avoid expanding the memory with a fixed capacity, and thus improve the memory expansion efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of memory expansion systems, and in particular to a memory expansion method, a memory expansion system, a computer program product, an electronic device, and a computer-readable storage medium. Background Art

[0002] PCIe (Peripheral Component Interconnect Express), translated into Chinese as "Peripheral Component Interconnect Express", is a high-speed serial computer expansion bus standard designed to replace the old PCI, PCI-X and AGP bus standards.

[0003] CXL (Compute Express Link) is an emerging high-speed interconnect technology designed to provide high-speed, large-capacity CPU-to-device, CPU-to-memory, and device-to-device connections for high-performance data center computers. Simply put, CXL is a protocol that allows high-speed communication between components inside a computer.

[0004] The current data processing industry is in a stage of rapid development of CXL technology, which utilizes the PCIe physical bus and releases it to the cache consistency protocol of memory resources. It can increase the memory capacity and memory bandwidth of the CPU and meet the memory computing power requirements of artificial intelligence.

[0005] MXC chip, full name is CXL memory expansion controller chip, is a special chip designed based on CXL (Compute ExpressLink) protocol. It is mainly used to expand the memory capacity and bandwidth of computer systems and improve the overall performance of the system.

[0006] DIMM (Dual In-line Memory Module), translated into Chinese as dual in-line memory module, is a common computer memory module. It consists of multiple dynamic random access memory (DRAM) chips soldered on a printed circuit board and inserted into the motherboard through a slot to provide short-term data storage for the computer.

[0007] The relevant technology adopts the form of a PCIe standard card and uses the MXC chip to connect 8 DIMM memory sticks to expand the memory capacity. Finally, the standard card is inserted into the PCIe slot on the motherboard, and the central processing unit CPU obtains the memory through the CXL bus.

[0008] Although the CPU can expand large-capacity memory by interconnecting MXC chips using the CXL bus, the expansion of this memory capacity is fixed and does not support dynamic memory replacement. Summary of the invention

[0009] The embodiments of the present invention provide a memory expansion method, a memory expansion system, a computer program product, an electronic device and a computer-readable storage medium to overcome the above problems or at least partially solve the above problems.

[0010] The embodiment of the present invention discloses a memory expansion system, which includes a data processing module, a memory module, and a memory controller for the memory module; wherein data is exchanged between the data processing module and the memory connector based on a high-speed computing link;

[0011] The data processing module is configured to obtain in-place information for the memory module and a power control signal for the memory controller when receiving a memory expansion request signal;

[0012] When it is determined through the in-place information that the memory module is in place, and it is determined through the power control signal that the memory controller is in a state of being powered on, copying the memory data of the memory module;

[0013] When the memory data copying is completed, controlling the memory controller to power off;

[0014] The memory connector is used to be equipped with a new memory module after the memory data is copied and the memory controller is powered off; the data processing module is used to identify the new memory module through the high-speed communication protocol of the computing high-speed link.

[0015] Optionally, the memory connector, the memory module and the memory controller are configured on a memory backplane arranged corresponding to a server mainboard.

[0016] Optionally, the memory backplane is configured with a memory expansion controller for controlling the memory controller;

[0017] The memory expansion controller is connected to an expansion button;

[0018] The expansion button is used to generate a first expansion button low level as a memory expansion request signal.

[0019] Optionally, the data processing module is configured to:

[0020] When the memory data is copied, an indication signal is generated to indicate that the memory data is being copied.

[0021] Optionally, the memory expansion controller is connected to an expansion indicator light;

[0022] The data processing module is configured as follows:

[0023] Calling the memory expansion controller to generate a first expansion indicator light control signal at a preset frequency;

[0024] The memory expansion controller is controlled to send the first expansion indicator light control signal to the expansion indicator light, wherein the first expansion indicator light control signal is used to control the expansion indicator light to flash, so as to indicate that the memory data is being copied.

[0025] Optionally, the data processing module is configured to:

[0026] When the memory data copying is completed, the memory expansion controller is controlled to send a second expansion indicator light control signal to the expansion indicator light, and the second expansion indicator light control signal is used to control the expansion indicator light to stop flashing to indicate that the memory data copying is completed.

[0027] Optionally, the data processing module is configured to:

[0028] When the power control signal is at a power control high level, it is determined that the memory controller is in a state of being powered on.

[0029] Optionally, the data processing module is configured to:

[0030] When the memory data copy is completed, a power control low level is sent to the memory controller to control the memory controller to power off.

[0031] Optionally, the capacity expansion button is used to generate a second capacity expansion button low level indicating that the newly added memory module is assembled successfully.

[0032] Optionally, the data processing module is configured to:

[0033] After obtaining the low level of the second capacity expansion button, obtaining the in-place information of the memory module and the power control signal of the memory controller;

[0034] When it is determined through the in-place information that the memory module is in place, and when it is determined through the power control signal that the memory controller is in a state of being powered off, the memory controller is controlled to be powered on to identify the newly added memory module.

[0035] Optionally, the memory expansion controller is connected to an expansion indicator light;

[0036] The data processing module is configured as follows:

[0037] Calling the memory expansion controller to generate a third expansion indicator light control signal at a preset frequency;

[0038] The memory expansion controller is controlled to send the third expansion indicator light control signal to the expansion indicator light, wherein the third expansion indicator light control signal is used to control the expansion indicator light to be always on, so as to indicate that the assembly of the new memory module is completed.

[0039] The embodiment of the present invention also discloses a memory expansion method, comprising:

[0040] When a memory expansion request signal is received, the in-place information of the memory module and the power control signal of the memory controller are obtained; the memory module is inserted into the memory connector;

[0041] When it is determined through the in-place information that the memory module is in place, and it is determined through the power control signal that the memory controller is in a state of being powered on, copying the memory data of the memory module;

[0042] When the memory data copying is completed, controlling the memory controller to power off;

[0043] The memory connector is used to be equipped with a new memory module after the memory data is copied and the memory controller is powered off;

[0044] The newly added memory module is identified based on a high-speed communication protocol of a computing high-speed link.

[0045] The embodiment of the present invention further discloses a computer program product, including a computer program / instruction, which implements the steps of the above method when executed by a processor.

[0046] The embodiment of the present invention further discloses an electronic device, comprising a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other via the communication bus;

[0047] The memory is used to store computer programs;

[0048] The processor is used to implement the method described in the embodiment of the present invention when executing the program stored in the memory.

[0049] The embodiment of the present invention further discloses a computer-readable storage medium having instructions stored thereon, which, when executed by one or more processors, enables the processors to execute the method described in the embodiment of the present invention.

[0050] The embodiments of the present invention include the following advantages:

[0051] According to an embodiment of the present invention, upon receiving a memory expansion request signal, the presence information of the memory module and the power control signal of the memory controller are obtained; when it is determined through the presence information that the memory module is in place and through the power control signal that the memory controller is about to be powered on, the memory data of the memory module is copied; when the copying of the memory data is completed, the memory controller is controlled to be powered off; the memory connector is used to be equipped with a new memory module after the copying of the memory data is completed and the memory controller is powered off; the new memory module is identified based on the high-speed communication protocol of the computing high-speed link, so as to realize non-fixed memory expansion, avoid expanding the memory with a fixed capacity, and thus improve the memory expansion efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0052] Figure 1 is a schematic diagram of the structure of a memory expansion system provided in an embodiment of the present invention;

[0053] Figure 2 is a schematic diagram of another memory expansion system structure provided in an embodiment of the present invention;

[0054] Figure 3 is a schematic diagram of the front structure of a memory backplane provided in an embodiment of the present invention;

[0055] Figure 4 is a schematic diagram of the back structure of a memory backplane provided in an embodiment of the present invention;

[0056] Figure 5 is a flow chart of a memory expansion method provided in an embodiment of the present invention;

[0057] Figure 6 is a flowchart of the steps of a memory expansion method provided in an embodiment of the present invention;

[0058] Figure 7 is a structural block diagram of a computer program product provided in an embodiment of the present invention;

[0059] Figure 8 is a hardware structure block diagram of an electronic device provided in an embodiment of the present invention;

[0060] Fig. 9 is a schematic diagram of a computer-readable medium provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0061] In order to make the above-mentioned objects, features and advantages of the present invention more obvious and easy to understand, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments.

[0062] Reference Figure 1, shows a schematic diagram of the structure of a memory expansion system provided in an embodiment of the present invention, which may specifically include:

[0063] The memory expansion system 100 includes a data processing module 101, a memory module 103, a memory controller 102 for the memory module 103, and a memory connector 104 for inserting the memory module;

[0064] CPU, the full name of Central Processing Unit, is the brain of the computer. It is responsible for performing various computing tasks and controlling all operations of the computer. You can think of it as a conductor, directing the various components of the computer to work together.

[0065] The main functions of CPU:

[0066] Executing instructions: The CPU reads and executes instructions stored in memory, which tell the CPU what to do.

[0067] Processing data: The CPU will perform various operations on the data, such as addition, subtraction, multiplication, division, logical operations, etc.

[0068] Control system: The CPU controls other hardware devices of the computer, such as memory, hard disk, graphics card, etc.

[0069] CPU composition:

[0070] Arithmetic unit: performs arithmetic and logical operations.

[0071] Controller: Controls the operation of the entire computer system.

[0072] Registers: Temporarily store data and instructions.

[0073] Cache: Stores frequently used data to speed up access.

[0074] CPU performance indicators:

[0075] Number of cores: A CPU can have multiple cores, each of which can execute instructions.

[0076] Number of threads: One core can process multiple threads simultaneously, improving parallel processing capabilities.

[0077] Main frequency: The operating frequency of the CPU. The higher the frequency, the faster the processing speed.

[0078] Cache size: The larger the cache, the faster the data can be accessed.

[0079] The performance of the CPU directly affects the overall performance of the computer. A powerful CPU can make the computer run more smoothly and handle more complex tasks.

[0080] The CPU is the core component of the computer, and its performance directly affects the overall performance of the computer. Choosing a suitable CPU is crucial to building an efficient computer.

[0081] In a specific implementation, the data processing module may be a CPU of a server.

[0082] Memory Controller MC: The Traffic Policeman of Computers

[0083] The memory controller (MC) is responsible for managing and coordinating the communication between the computer's memory and other hardware. It determines how data moves in and out of the memory, and how fast the memory can be accessed.

[0084] Coordinate data transmission: MC is like a transfer station, responsible for passing the memory read and write requests issued by the CPU to the memory, and transmitting the data returned by the memory back to the CPU.

[0085] Managing memory addresses: MC assigns a unique address to each storage unit in the memory so that the CPU can accurately find the data it needs to access.

[0086] Control memory timing: MC controls the read and write timing of the memory to ensure that data can be transmitted correctly.

[0087] Error detection and correction: Some advanced MCs also have error detection and correction capabilities to ensure data integrity.

[0088] The importance of MC lies in:

[0089] Impact on system performance: The performance of MC directly affects the overall performance of the computer, especially the memory access speed.

[0090] Determines memory expandability: MC determines how much memory the computer can support and the type of memory.

[0091] Impact on system stability: The stability of MC is crucial to the stable operation of the system.

[0092] The relationship between MC and other hardware:

[0093] CPU: MC works closely with the CPU. All memory requests issued by the CPU are passed to the memory through the MC.

[0094] Memory: MC directly controls the memory and is responsible for data reading and writing operations.

[0095] Northbridge chip (or memory controller hub): In early computer systems, the northbridge chip integrated the MC and was responsible for connecting the CPU, memory, and some high-speed devices.

[0096] The memory controller MC is a very important component in the computer system. It is responsible for managing and coordinating the communication between the computer memory and other hardware. The performance of the MC directly affects the overall performance of the computer.

[0097] EDSFF (Enterprise and Datacenter SSD Form Factor) is a new form factor designed for enterprise and data center solid state drives (SSDs). It aims to replace traditional 2.5-inch and 3.5-inch hard drives, providing higher performance, larger capacity and better scalability.

[0098] EDSFF Connector Features

[0099] High-speed transmission: EDSFF connector supports high-speed interfaces such as PCIe Gen5, which can provide higher data transmission speed and meet the storage performance requirements in the big data era.

[0100] High density: The EDSFF connector is compact in design and can accommodate more storage media, increasing the density of storage devices.

[0101] Hot-swappable: EDSFF connector supports hot-swappable, making it convenient for users to replace or add storage devices.

[0102] Modular design: EDSFF connector adopts modular design and can be customized and expanded according to different needs.

[0103] Advantages of EDSFF Connectors

[0104] Higher performance: EDSFF connectors support higher data transfer speeds and lower latency, which can significantly improve system performance.

[0105] Larger capacity: EDSFF connectors can support larger storage capacity to meet the needs of big data storage.

[0106] Better scalability: The EDSFF connector adopts a modular design and can be easily expanded.

[0107] Lower power consumption: Compared with traditional hard disks, EDSFF SSDs consume less power, which can reduce the operating costs of data centers.

[0108] Exemplarily, the memory connector 104 may be an EDSFF connector; and the memory module may be a memory hardware device that complies with the EDSFF specification.

[0109] DDR is the abbreviation of Double Data Rate Synchronous Dynamic Random Access Memory, which means double data rate synchronous dynamic random access memory in Chinese. In simple terms, it means memory.

[0110] The purpose of DDR memory is:

[0111] Temporary storage of data: The programs and data running on the computer are temporarily stored in the DDR memory so that the CPU can call them at any time.

[0112] Improve computer speed: The read and write speed of DDR memory is very fast, which directly affects the running speed of the computer.

[0113] Cache data: DDR memory also acts as a cache for the hard disk, temporarily storing frequently accessed data, reducing the number of read and write times to the hard disk and improving system response speed.

[0114] DDR memory is a very important component in the computer system, which directly affects the computer's operating speed and performance. Knowing the relevant knowledge of DDR memory is of great significance for choosing the right memory and improving computer performance.

[0115] The memory expansion system 100 exchanges data with the memory controller 102 via a computer high-speed link CXL, and the memory connector 104, the memory controller 102 and the memory module 103 can exchange data via a double data rate synchronous dynamic random access link DDR.

[0116] In a specific implementation, the data processing module of the embodiment of the present invention is mainly used for:

[0117] Upon receiving a memory expansion request signal, obtaining in-place information for the memory module and a power control signal for the memory controller;

[0118] The memory module presence information, in simple terms, refers to the detailed information about the memory modules installed in the computer. This information can help us understand the memory presence status, model, capacity, speed, timing and other parameters for fault diagnosis, performance optimization or system upgrade.

[0119] When it is determined through the in-place information that the memory module is in place, and it is determined through the power control signal that the memory controller is in a state of being powered on, copying the memory data of the memory module;

[0120] Exemplarily, PWR_CTL is a power control signal. When the power control signal is output at a low level, the MC will be powered off. When the power control signal is output at a high level for the MC, the MC is in a state of being powered on.

[0121] The purpose of copying the memory data of the memory module before expanding the memory is to ensure data security and avoid data loss during the expansion process.

[0122] Memory expansion is essentially an operation to replace or add memory modules on the memory connector. In this process, the old memory modules will be removed or replaced.

[0123] If you remove or replace a memory module without first backing up or migrating important data, that data will be lost.

[0124] By copying data to new storage media (such as a hard disk) or other memory modules before capacity expansion, data security can be ensured.

[0125] Before expanding the memory, copying the memory data of the memory module is to avoid data loss and ensure data security. This process seems simple, but if it is not done properly, it can easily lead to data loss. Therefore, before performing the memory expansion operation, you must make adequate preparations.

[0126] When the memory data copying is completed, controlling the memory controller to power off;

[0127] Before expanding the memory, the purpose of controlling the power-off of the memory controller is mainly to ensure operational safety and avoid data loss and hardware damage.

[0128] Specifically, data corruption can be prevented: the memory controller is responsible for managing the read and write operations of the memory. If the memory controller is still in operation when the memory is expanded, data may be accidentally written or read, resulting in data corruption.

[0129] Avoid electrostatic discharge: Memory modules are very sensitive to static electricity. During the replacement of a memory module, if the memory controller is still charged, static electricity may be generated and damage the new memory module or other hardware.

[0130] Simplified operation: After the memory controller is powered off, the memory module can be removed and inserted more safely, reducing the possibility of operational errors.

[0131] After the memory data is copied and the memory controller is powered off, the user can install a new memory module on the memory connector.

[0132] As can be seen above, CXL technology is an emerging high-speed interconnect technology that brings a new way of memory expansion to computer systems. Through CXL, we can connect more memory modules to the system to achieve dynamic memory expansion. By providing a high-speed and flexible memory expansion method, it brings huge potential to computer systems. It can improve system performance, simplify system management, and support a variety of new application scenarios. With the continuous development of CXL technology, we will see more and more innovative applications based on CXL.

[0133] The data processing module 101 and the memory controller 102 can be connected through a computing high-speed link, i.e., a CXL link, so that the data processing module 101 and the memory controller 102 can exchange data based on a high-speed communication protocol of the computing high-speed link, i.e., the CXL protocol. Therefore, after a newly added memory module is assembled to the memory connector 104, the data processing module 101 can identify the newly added memory module through the high-speed communication protocol of the computing high-speed link.

[0134] According to an embodiment of the present invention, upon receiving a memory expansion request signal, the presence information of the memory module and the power control signal of the memory controller are obtained; when it is determined through the presence information that the memory module is in place and through the power control signal that the memory controller is about to be powered on, the memory data of the memory module is copied; when the copying of the memory data is completed, the memory controller is controlled to be powered off; the memory connector is used to be equipped with a new memory module after the copying of the memory data is completed and the memory controller is powered off; the new memory module is identified based on the high-speed communication protocol of the computing high-speed link, so as to realize non-fixed memory expansion, avoid expanding the memory with a fixed capacity, and thus improve the memory expansion efficiency.

[0135] Based on the above embodiment, a variant embodiment of the above embodiment is proposed. It should be noted that in order to make the description concise, only the differences from the above embodiment are described in the variant embodiment.

[0136] In an optional embodiment of the present invention, the memory connector, the memory module and the memory controller are configured on a memory backplane corresponding to a server mainboard.

[0137] In actual applications, the relevant technology adopts the form of PCIe standard card. When replacing the memory, it is necessary to manually cut off the power of the entire system and open the chassis cover for replacement. The whole process is relatively cumbersome and affects the normal operation of the server business.

[0138] A PCIe to SATA controller is a hardware device that can convert a PCIe (Peripheral Component Interconnect Express) interface to a SATA (Serial ATA) interface.

[0139] PCIe interface: This is a high-speed expansion interface on the computer motherboard, used to connect various high-performance devices, such as graphics cards, network cards, etc.

[0140] SATA interface: This is a commonly used interface for storage devices such as hard disks and solid-state drives, used for data transmission.

[0141] Reasons for needing a PCIe to SATA controller include:

[0142] Add SATA interface: Many motherboards provide a limited number of SATA interfaces. By converting the PCIe to SATA controller, you can add additional SATA interfaces to connect more hard drives or solid-state drives.

[0143] Upgrading old devices: For some old motherboards, there may only be PCIe interfaces, but no SATA interfaces. Using a PCIe to SATA controller, you can connect old SATA hard drives to new computers.

[0144] Flexible expansion: The number of SATA interfaces can be flexibly increased or decreased as needed.

[0145] SATA hard disk is a commonly used storage device, connected to the computer through the SATA interface. It is used to store computer data, including operating systems, applications, files, etc.

[0146] Features: Compared with the previous parallel ATA hard disk, SATA hard disk has the advantages of higher transmission speed, smaller size, lower power consumption, etc.

[0147] Type: SATA hard drives are mainly divided into two types: mechanical hard drives (HDD) and solid-state drives (SSD).

[0148] Application: SATA hard drives are widely used in various computer devices such as desktop computers, laptops, servers, etc.

[0149] Combination of PCIe to SATA controller and SATA hard disk:

[0150] Through the PCIe to SATA controller, we can connect more SATA hard drives to the computer to achieve the following purposes:

[0151] Expand storage space: Increase hard disk capacity to store more files, videos, pictures, etc.

[0152] Build a RAID array: combine multiple SATA hard drives into a RAID array to improve data security or read and write speed.

[0153] Create a storage server: Connect multiple hard disks to a computer to build a storage server such as NAS (Network Attached Storage) or SAN (Storage Area Network).

[0154] The combination of PCIe to SATA controller and SATA hard disk provides us with a more flexible storage expansion solution. In this way, we can easily increase storage space and improve data security according to our needs to meet various application scenarios.

[0155] refer to Figure 2 , Figure 2 is a schematic diagram of another memory expansion system structure provided in an embodiment of the present invention;

[0156] It is mainly composed of a motherboard 201 and an E3.S memory backplane 202. The motherboard 201 carries a CPU 2011, an MCIO connector 2012, a PCIe to SATA controller 2013 and a SATA hard disk 2014;

[0157] Data is exchanged between the CPU 2011 and the PCIe-to-SATA controller 2013 via the PCIE interface 2015 based on the PCIE link, and data is exchanged between the PCIe-to-SATA controller 2013 and the SATA hard disk 2014 via the SATA link.

[0158] MCIO (Mini Cool Edge IO) cable is a new type of high-speed interconnect cable, mainly used to connect high-performance devices such as servers and network devices. It has the following features:

[0159] Features:

[0160] High density, high speed: MCIO cables adopt a compact design, which realizes high-density and high-speed data transmission in a limited space, meeting the high bandwidth requirements of modern data centers.

[0161] Multi-channel: MCIO cables can transmit multiple data channels simultaneously, improving the efficiency of data transmission.

[0162] Flexible adaptation: MCIO cables support multiple data transmission protocols, such as PCIe, CXL, etc., and can adapt to different devices and application scenarios.

[0163] High reliability: MCIO cables use reliable connectors and cable materials to ensure the stability and reliability of data transmission.

[0164] Flash memory is a non-volatile memory, which means that even if the power is off, the data stored in it will not be lost. It is widely used in electronic products, from USB flash drives, SD cards to solid-state drives (SSDs).

[0165] SPI (Serial Peripheral Interface)

[0166] SPI is a synchronous serial data interface, mainly used for short-distance digital data communication. It is a flexible, full-duplex communication protocol commonly used for communication between microcontrollers and peripheral devices.

[0167] I2C (Inter-Integrated Circuit) is a serial communication bus that uses two wires (SDA and SCL) to connect multiple devices. It is a simple, flexible, and low-cost communication method that is widely used in various electronic devices.

[0168] The E3.S memory backplane 202 is equipped with an MCIO connector 2021, wherein the MCIO connector 2012 and the MCIO connector 2021 exchange data via an MCIO cable. The E3.S memory backplane 202 is equipped with a memory expansion controller 2022, an MC memory controller 2023, an EDSFF connector 2024, and a Flash chip 2025, wherein the Flash chip 2025 and the MC memory controller 2023 exchange data via SPI. The E3.S memory backplane 202 is equipped with an expansion indicator light 2026, an expansion button 2027, and an E3.S memory module 2028.

[0169] In actual applications, the CPU of current servers is highly integrated and generally no longer supports the SATA interface, but only retains the PCIe interface 2015. It is necessary to use a PCIe to SATA controller 2013 to convert the PCIe signal into a SATA signal. The SATA hard disk 2014 mainly stores data in the memory. When replacing the E3.S memory module 2028, the CPU needs to save the data of the memory module 2028 to the SATA hard disk in advance to prevent data loss.

[0170] Data is exchanged between the MC memory controller 2023, the EDSFF connector 2024 and the E3.S memory module 2028 via a double data rate synchronous dynamic random access memory link DDR.

[0171] The MCIO connector 2021 and the MC memory controller 2023 exchange data via a computer high-speed link CXL.

[0172] The CPU itself has an I2C interface 2016, which is connected to another I2C interface 2029 of the memory expansion controller 2022 of the memory backplane to control the signal transmission during the expansion process. The PCIe interface 2017 can support the CXL protocol and connect to the MC memory controller 2023 of the memory backplane to achieve memory capacity expansion.

[0173] The main board 201 and the E3.S memory backplane 202 are interconnected using an MCIO cable, and can transmit I2C control signals and CXL signals.

[0174] LED_Status signal is usually used in electronic devices to indicate the operating status of a device or a component. It controls one or more LED lights to visually display the working status of the device.

[0175] PRSNT_N is the in-place detection signal of the E3.S memory module. It is high level by default. When the E3.S memory is inserted into the EDSFF slot, a low level signal is output.

[0176] PWR_CTL is the power control signal. When it outputs a low level, the MC will be powered off. When it outputs a high level, the MC will be powered on.

[0177] The memory expansion controller 2022 is a core unit for implementing dynamic memory expansion, and it may include multiple virtual function modules, including an LED control module 20221 , an expansion button management module 20222 , an in-place detection module 20223 , and a power control module 20224 .

[0178] The LED control module 20221 can be used to send an LED_Status signal to the expansion indicator light 2026; 20222 converts the signal Button from the expansion button 2027 into I2C and passes it to the CPU; the in-place detection module 20223 can convert the in-place information PRSNT_N from the EDSFF connector 2024 into I2C and pass it to the CPU; the power control module 20224 can be used to send a PWR_CTL signal to the MC memory controller 2023.

[0179] It can receive I2C control signals from the CPU, convert them into GPIO to control the power supply of MC (Memory Controller) and the expansion status indicator light. It can also convert the signal Button from the expansion button 2027 and the in-place information PRSNT_N of the E3.S memory module into I2C and pass them to the CPU.

[0180] The expansion button 2027 is an expansion request signal for memory expansion, which is a high level signal by default and a low level when pressed.

[0181] Training recognition, that is, memory training recognition, plays a very important role in computer systems. When the computer starts up, it performs a series of tests and optimizations on the memory it carries to ensure that the memory can run stably and efficiently.

[0182] The purpose of memory training recognition is to:

[0183] Digest the differences in memory particles: Memory particles of different brands and models have differences in performance and stability.

[0184] Timing parameters: There are many timing parameters for memory, which need to be fine-tuned to achieve optimal performance.

[0185] Motherboard compatibility: The compatibility of the memory with the motherboard will also affect the performance of the memory.

[0186] System stability: Ensuring the stable operation of memory is the basis for the stable operation of the entire system.

[0187] Memory training recognition process:

[0188] Self-test: When the computer starts, the BIOS will perform a self-test on the memory to ensure that there is no physical damage.

[0189] Timing adjustment: BIOS will initially set the timing parameters of the memory based on the SPD (Serial Presence Detect) information of the memory and the settings of the motherboard.

[0190] Test: BIOS will perform a series of memory tests, including read and write tests, error checking, etc.

[0191] Optimization: Based on the test results, the BIOS will fine-tune the timing parameters of the memory to find the best operating state.

[0192] The beneficial effects of memory training recognition are:

[0193] Improve memory performance: By fine-tuning timing parameters, you can improve the read and write speed and stability of memory.

[0194] Enhance system stability: Reduce memory errors and improve system stability.

[0195] Prolong memory life: Through reasonable timing settings, the service life of memory can be extended.

[0196] Ways to view memory training recognition information include:

[0197] BIOS settings: In BIOS settings, you can usually view the memory's SPD information, timing parameters, and test results.

[0198] Third-party software: Some third-party software can provide more detailed memory information and test results.

[0199] Factors Affecting the Recognition Effect of Memory Training

[0200] Motherboard BIOS: The quality and function of BIOS will directly affect the effect of memory training and recognition.

[0201] Memory particle quality: The better the quality of the memory particles, the easier it is to optimize.

[0202] System temperature: A high temperature environment will affect the stability of the memory and reduce the effectiveness of training and recognition.

[0203] Voltage setting: The memory voltage setting will also affect the performance and stability of the memory.

[0204] Memory training and recognition is an important task when a computer system starts up, and it has a significant impact on the stability and performance of the system. By understanding the principles and processes of memory training and recognition, we can better understand the operating mechanism of the computer and reasonably set and maintain the memory.

[0205] The expansion indicator supports three states: always on, flashing at 1Hz, and always off. When always on, the system is in normal operation and the memory cannot be replaced in this state; when flashing at 1Hz, the system is copying the E3.S memory data to the SATA hard disk or the CPU is training the E3.S memory; when always off, the system has completed data copying and MC power off, and the memory can be replaced in this state.

[0206] The memory controller 2023 can convert the CXL from the CPU into a DDR signal and connect it to the EDSFF connector. The E3.S memory module can be inserted into the EDSFF slot. The onboard Flash chip 2025 contains the MC2023 firmware FW (Firmware). When powered on, MC2023 reads the FW information in Flash 2025 to complete initialization.

[0207] refer to Figure 3 , Figure 3 is a schematic diagram of the front structure of a memory backplane provided in an embodiment of the present invention;

[0208] Optionally, the MCIO connector 2021 , the memory expansion controller 2022 and the MC memory controller 2023 may be mounted on the front side of the E3.S memory backplane 202 .

[0209] refer to Figure 4 , Figure 4 is a schematic diagram of the back structure of a memory backplane provided in an embodiment of the present invention;

[0210] The E3.S memory module slot, expansion indicator light 2026 and expansion button 2027 may be disposed on the back of the memory backplane. In order to better dissipate heat, a hollow design is performed between multiple E3.S slots.

[0211] EDSFF is a standard specification designed for data centers and enterprise storage systems, supporting standard E3.S form factor memory disks. The E3.S memory module is designed to meet the needs of high-performance computing while maintaining a small size and weight, with dimensions of 7.5mm x 76mm x 112.75mm.

[0212] refer to Figure 5 , Figure 5 is a flow chart of a memory expansion method provided in an embodiment of the present invention;

[0213] Optionally, the memory backplane is configured with a memory expansion controller for controlling the memory controller;

[0214] The memory expansion controller is connected with an expansion button;

[0215] The user presses the expansion button, generating a first expansion button low level as a memory expansion request signal; the memory expansion controller transmits it to the CPU via I2C;

[0216] It can be seen from the above that, because the power control signal PWR_CTL is at the power control high level, the memory controller is in a state of being powered on.

[0217] Therefore, after receiving the signal, the CPU makes a signal judgment. When the memory module is in place through the in-place information PRSNT_N, the power control signal PWR_CTL is at the power control high level, and the button signal sent by the expansion button becomes low level, the memory data can be copied;

[0218] Optionally, the data processing module is configured to:

[0219] When copying memory data, an indication signal for indicating that the memory data is being copied may be generated.

[0220] Specifically, the memory expansion controller may be called to generate a first expansion indicator light control signal at a preset frequency;

[0221] Controlling the memory expansion controller to send a first expansion indicator light control signal to the expansion indicator light, wherein the first expansion indicator light control signal is used to control the expansion indicator light to flash, so as to indicate that the memory data is being copied;

[0222] When the memory data copy is completed, the memory expansion controller is controlled to send a second expansion indicator light control signal to the expansion indicator light, and the second expansion indicator light control signal is used to control the expansion indicator light to stop flashing, so as to indicate that the memory data copy is completed;

[0223] When the memory data copy is completed, a power control low level is sent to the memory controller to control the memory controller to power off.

[0224] For example, when copying memory data, the CPU controls the LED of the memory expansion controller through I2C, outputs a 1Hz square wave, and the LED starts to flash; after the CPU completes the data copy, it controls the memory expansion controller through I2C, outputs the power control signal PWR_CTL low level, and the LED high level. At this time, the MC is about to power off and the LED status is always off.

[0225] In an optional embodiment of the present invention, the capacity expansion button is used to generate a second capacity expansion button low level indicating that the assembly of the newly added memory module is completed;

[0226] The data processing module is configured as follows:

[0227] After obtaining the low level of the second expansion button, obtaining the in-place information of the memory module and the power control signal of the memory controller;

[0228] When it is determined through the in-place information that the memory module is in place, and it is determined through the power control signal that the memory controller is in a state of being powered off, the memory controller is controlled to be powered on to identify the newly added memory module;

[0229] The memory expansion controller is connected to an expansion indicator light;

[0230] The data processing module is configured as follows:

[0231] Calling the memory expansion controller to generate a third expansion indicator light control signal at a preset frequency;

[0232] The memory expansion controller is controlled to send a third expansion indicator light control signal to the expansion indicator light. The third expansion indicator light control signal is used to control the expansion indicator light to be always on, so as to indicate that the assembly of the newly added memory module is completed.

[0233] Exemplarily, after replacing the new memory module, pressing the expansion button again generates a second expansion button low level, that is, the button signal becomes a low level, and the memory expansion controller transmits the second expansion button low level to the CPU through I2C.

[0234] When the CPU determines that the memory module is in place through the in-place information PRSNT_N, the power control signal PWR_CTL is at the power control low level, and the button signal sent by the expansion button becomes low, it controls PWR_CRL to output a high level, the MC is powered on and initialized, the CPU identifies the newly added memory module as CXL memory, and controls the LED to output a 1Hz square wave, and the LED light flashes. After identifying the memory, the CPU controls the memory expansion controller through I2C to output a low level to the LED, that is, the third expansion indicator light control signal, and controls the LED to be always on, indicating that the memory expansion process has been completed.

[0235] It should be noted that, for the sake of simplicity, the method embodiments are described as a series of action combinations, but those skilled in the art should be aware that the embodiments of the present invention are not limited by the order of the actions described, because according to the embodiments of the present invention, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also be aware that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of the present invention.

[0236] Reference Figure 6 , shows a flowchart of a method for memory expansion provided in an embodiment of the present invention, which may specifically include the following steps:

[0237] Step 601, when a memory expansion request signal is received, obtaining in-place information for a memory module and a power control signal for a memory controller; the memory module is plugged into a memory connector;

[0238] Step 602, when it is determined through the in-place information that the memory module is in place, and it is determined through the power control signal that the memory controller is in a state of being powered on, copying the memory data of the memory module;

[0239] Step 603, when the memory data copy is completed, the memory controller is controlled to be powered off; the memory connector is used to be equipped with a new memory module after the memory data copy is completed and the memory controller is powered off;

[0240] Step 604: Identify the newly added memory module based on the high-speed communication protocol of the computing high-speed link.

[0241] As for the method embodiment, since it is basically similar to the system embodiment, the description is relatively simple, and the relevant parts can be referred to the partial description of the system embodiment.

[0242] Reference Figure 7 , Figure 7 : is a structural block diagram of a computer program product provided in an embodiment of the present invention:

[0243] The computer program product includes a computer program / instruction 701, and when the computer program / instruction 701 is executed by a processor, the steps of the memory expansion method described above are implemented.

[0244] In addition, an embodiment of the present invention further provides an electronic device, including: a processor, a memory, and a computer program stored in the memory and executable on the processor. When the computer program is executed by the processor, each process of the above-mentioned memory expansion method embodiment is implemented, and the same technical effect can be achieved. To avoid repetition, it will not be described here.

[0245] The embodiment of the present invention further provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, each process of the above-mentioned memory expansion method embodiment is implemented, and the same technical effect can be achieved. To avoid repetition, it is not repeated here. The computer-readable storage medium is, for example, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.

[0246] Figure 8 A schematic diagram of the hardware structure of an electronic device for implementing various embodiments of the present invention.

[0247] The electronic device 800 includes but is not limited to: a radio frequency unit 801, a network module 802, an audio output unit 803, an input unit 804, a sensor 805, a display unit 806, a user input unit 807, an interface unit 808, a memory 809, a processor 810, and a power supply 811. Those skilled in the art will appreciate that Figure 8 The electronic device structure shown in the figure does not constitute a limitation on the electronic device, and the electronic device may include more or fewer components than shown in the figure, or combine certain components, or arrange the components differently. In the embodiments of the present invention, the electronic device includes but is not limited to a mobile phone, a tablet computer, a laptop computer, a PDA, a vehicle-mounted terminal, a wearable device, and a pedometer.

[0248] It should be understood that in the embodiment of the present invention, the radio frequency unit 801 can be used for receiving and sending signals during information transmission or communication. Specifically, after receiving downlink data from the base station, it is sent to the processor 810 for processing; in addition, uplink data is sent to the base station. Generally, the radio frequency unit 801 includes but is not limited to an antenna, at least one amplifier, a transceiver, a coupler, a low noise amplifier, a duplexer, etc. In addition, the radio frequency unit 801 can also communicate with the network and other devices through a wireless communication system.

[0249] The electronic device provides users with wireless broadband Internet access through the network module 802, such as helping users to send and receive emails, browse web pages, and access streaming media.

[0250] The audio output unit 803 can convert the audio data received by the RF unit 801 or the network module 802 or stored in the memory 809 into an audio signal and output it as sound. Moreover, the audio output unit 803 can also provide audio output related to a specific function performed by the electronic device 800 (for example, a call signal reception sound, a message reception sound, etc.). The audio output unit 803 includes a speaker, a buzzer, a receiver, etc.

[0251] The input unit 804 is used to receive audio or video signals. The input unit 804 may include a graphics processor (GPU) 8041 and a microphone 8042. The graphics processor 8041 processes the image data of a static picture or video obtained by an image capture device (such as a camera) in a video capture mode or an image capture mode. The processed image frame can be displayed on the display unit 806. The image frame processed by the graphics processor 8041 can be stored in the memory 809 (or other storage medium) or sent via the radio frequency unit 801 or the network module 802. The microphone 8042 can receive sound and can process such sound into audio data. The processed audio data can be converted into a format output that can be sent to a mobile communication base station via the radio frequency unit 801 in the case of a telephone call mode.

[0252] The electronic device 800 also includes at least one sensor 805, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor includes an ambient light sensor and a proximity sensor, wherein the ambient light sensor can adjust the brightness of the display panel 8061 according to the brightness of the ambient light, and the proximity sensor can turn off the display panel 8061 and / or the backlight when the electronic device 800 is moved to the ear. As a type of motion sensor, the accelerometer sensor can detect the magnitude of acceleration in each direction (generally three axes), and can detect the magnitude and direction of gravity when stationary, which can be used to identify the posture of the electronic device (such as horizontal and vertical screen switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc.; the sensor 805 can also include a fingerprint sensor, a pressure sensor, an iris sensor, a molecular sensor, a gyroscope, a barometer, a hygrometer, a thermometer, an infrared sensor, etc., which will not be repeated here.

[0253] The display unit 806 is used to display information input by the user or information provided to the user. The display unit 806 may include a display panel 8061, which may be configured in the form of a liquid crystal display (LCD), an organic light-emitting diode (OLED), or the like.

[0254] The user input unit 807 can be used to receive input digital or character information, and generate key signal input related to user settings and function control of the electronic device. Specifically, the user input unit 807 includes a touch panel 8071 and other input devices 8072. The touch panel 8071, also known as a touch screen, can collect user touch operations on or near it (such as operations performed by users using fingers, styluses, or any other suitable objects or accessories on or near the touch panel 8071). The touch panel 8071 may include two parts: a touch detection device and a touch controller. Among them, the touch detection device detects the user's touch orientation, detects the signal brought by the touch operation, and transmits the signal to the touch controller; the touch controller receives the touch information from the touch detection device, converts it into contact point coordinates, and then sends it to the processor 810, receives the command sent by the processor 810 and executes it. In addition, the touch panel 8071 can be implemented in various types such as resistive, capacitive, infrared, and surface acoustic waves. In addition to the touch panel 8071, the user input unit 807 may also include other input devices 8072. Specifically, other input devices 8072 may include but are not limited to a physical keyboard, function keys (such as volume control keys, switch keys, etc.), a trackball, a mouse, and a joystick, which will not be described in detail here.

[0255] Furthermore, the touch panel 8071 may be overlaid on the display panel 8061. When the touch panel 8071 detects a touch operation on or near it, it transmits the information to the processor 810 to determine the type of the touch event. Then, the processor 810 provides a corresponding visual output on the display panel 8061 according to the type of the touch event. Figure 8 In the figure, the touch panel 8071 and the display panel 8061 are used as two independent components to realize the input and output functions of the electronic device. However, in some embodiments, the touch panel 8071 and the display panel 8061 can be integrated to realize the input and output functions of the electronic device, which is not limited here.

[0256] The interface unit 808 is an interface for connecting an external device to the electronic device 800. For example, the external device may include a wired or wireless headset port, an external power supply (or battery charger) port, a wired or wireless data port, a memory card port, a port for connecting a device with an identification module, an audio input / output (I / O) port, a video I / O port, a headphone port, etc. The interface unit 808 may be used to receive input (e.g., data information, power, etc.) from an external device and transmit the received input to one or more elements within the electronic device 800 or may be used to transmit data between the electronic device 800 and an external device.

[0257] The memory 809 can be used to store software programs and various data. The memory 809 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc.; the data storage area can store data created according to the use of the mobile phone (such as audio data, a phone book, etc.), etc. In addition, the memory 809 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one disk storage device, a flash memory device, or other volatile solid-state storage devices.

[0258] The processor 810 is the control center of the electronic device. It uses various interfaces and lines to connect various parts of the entire electronic device. By running or executing software programs and / or modules stored in the memory 809 and calling data stored in the memory 809, it performs various functions of the electronic device and processes data, thereby monitoring the electronic device as a whole. The processor 810 may include one or more processing units; preferably, the processor 810 may integrate an application processor and a modem processor, wherein the application processor mainly processes the operating system, user interface, and application programs, and the modem processor mainly processes wireless communications. It is understandable that the above-mentioned modem processor may not be integrated into the processor 810.

[0259] The electronic device 800 may also include a power source 811 (such as a battery) for supplying power to various components. Preferably, the power source 811 may be logically connected to the processor 810 through a power management system, thereby implementing functions such as charging, discharging, and power consumption management through the power management system.

[0260] In addition, the electronic device 800 includes some functional modules not shown, which will not be described in detail here.

[0261] It should be noted that, in this article, the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the sentence "comprises a ..." does not exclude the existence of other identical elements in the process, method, article or device including the element.

[0262] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus a necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of the present invention, or the part that contributes to the prior art, can be embodied in the form of a software product, which is stored in a storage medium (such as ROM / RAM, a magnetic disk, or an optical disk), and includes a number of instructions for enabling a terminal (which can be a mobile phone, a computer, a server, an air conditioner, or a network device, etc.) to execute the methods described in each embodiment of the present invention.

[0263] like Fig. 9 As shown, in another embodiment provided by the present invention, a computer-readable storage medium 901 is also provided, in which instructions are stored. When the computer-readable storage medium is run on a computer, the computer executes the memory expansion method described in the above embodiment.

[0264] The embodiments of the present invention are described above in conjunction with the accompanying drawings, but the present invention is not limited to the above-mentioned specific implementation modes, which are merely illustrative rather than restrictive. Under the guidance of the present invention, ordinary technicians in this field can also make many forms without departing from the scope of protection of the present invention and the claims, all of which are within the protection of the present invention.

[0265] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed in the embodiments of the present invention can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of the present invention.

[0266] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0267] In the embodiments provided in the present application, it should be understood that the disclosed devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0268] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0269] In addition, each functional unit in each embodiment of the present invention may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.

[0270] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium, including several instructions for a computer device (which can be a personal computer, server, or network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present invention. The aforementioned storage medium includes: various media that can store program codes, such as USB flash drives, mobile hard disks, ROM, RAM, magnetic disks, or optical disks.

[0271] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.

Claims

1. A memory expansion system, characterized in that: The memory expansion system includes a data processing module, a memory module, and a memory controller and a memory connector for the memory module; wherein data is exchanged between the data processing module and the memory connector based on a computing high-speed link; The data processing module is configured to obtain in-place information for the memory module and a power control signal for the memory controller when receiving a memory expansion request signal; When it is determined that the memory module is in place through the in-place information, and it is determined that the memory controller is in a power-on state through the power control signal, copying the memory data of the memory module; When the memory data copying is completed, controlling the memory controller to power off; The memory connector is used to be equipped with a newly added memory module after the memory data copy is completed and the memory controller is powered off; the data processing module is used to identify the newly added memory module through the high-speed communication protocol of the computing high-speed link; The memory expansion system is provided with an expansion button; The expansion button is used to generate a second expansion button low level indicating that the assembly of the new memory module is complete; The data processing module is configured as follows: After obtaining the low level of the second capacity expansion button, obtaining the in-place information of the memory module and the power control signal of the memory controller; When it is determined through the in-place information that the memory module is in place, and when it is determined through the power control signal that the memory controller is in a power-off state, the memory controller is controlled to be powered on to identify the newly added memory module.

2. The memory expansion system according to claim 1, characterized in that: The memory connector, the memory module and the memory controller are configured on a memory backplane corresponding to a server mainboard.

3. The memory expansion system according to claim 2, characterized in that: The memory backplane is configured with a memory expansion controller for controlling the memory controller; The memory expansion controller is connected to an expansion button; The expansion button is used to generate a first expansion button low level as a memory expansion request signal.

4. The memory expansion system according to claim 3, characterized in that: The data processing module is configured as follows: When the memory data is copied, an indication signal is generated to indicate that the memory data is being copied.

5. The memory expansion system according to claim 4, characterized in that: The memory expansion controller is connected to an expansion indicator light; The data processing module is configured as follows: Calling the memory expansion controller to generate a first expansion indicator light control signal at a preset frequency; The memory expansion controller is controlled to send the first expansion indicator light control signal to the expansion indicator light, wherein the first expansion indicator light control signal is used to control the expansion indicator light to flash, so as to indicate that the memory data is being copied.

6. The memory expansion system according to claim 5, characterized in that: The data processing module is configured as follows: When the memory data copying is completed, the memory expansion controller is controlled to send a second expansion indicator light control signal to the expansion indicator light, and the second expansion indicator light control signal is used to control the expansion indicator light to stop flashing to indicate that the memory data copying is completed.

7. The memory expansion system according to claim 1 or 2, characterized in that: The data processing module is configured as follows: When the power control signal is at a power control high level, it is determined that the memory controller is in a power-on state.

8. The memory expansion system according to claim 1 or 2, characterized in that: The data processing module is configured as follows: When the memory data copy is completed, a power control low level is sent to the memory controller to control the memory controller to power off.

9. The memory expansion system according to claim 3, characterized in that: The memory expansion controller is connected to an expansion indicator light; The data processing module is configured as follows: Calling the memory expansion controller to generate a third expansion indicator light control signal at a preset frequency; The memory expansion controller is controlled to send the third expansion indicator light control signal to the expansion indicator light, wherein the third expansion indicator light control signal is used to control the expansion indicator light to be always on, so as to indicate that the assembly of the new memory module is completed.

10. A memory expansion method, characterized in that: include: When receiving a memory expansion request signal, obtaining in-place information for the memory module and a power control signal for the memory controller; The memory module is plugged into the memory connector; When it is determined that the memory module is in place through the in-place information, and it is determined that the memory controller is in a power-on state through the power control signal, copying the memory data of the memory module; When the memory data copying is completed, controlling the memory controller to power off; The memory connector is used to be equipped with a new memory module after the memory data is copied and the memory controller is powered off; Identifying the newly added memory module based on a high-speed communication protocol of a computing high-speed link; Generate a second capacity expansion button low level through the capacity expansion button to indicate that the newly added memory module is assembled; The step of identifying the newly added memory module based on the high-speed communication protocol of the high-speed link includes: After obtaining the low level of the second capacity expansion button, obtaining the in-place information of the memory module and the power control signal of the memory controller; When it is determined through the in-place information that the memory module is in place, and when it is determined through the power control signal that the memory controller is in a power-off state, the memory controller is controlled to be powered on to identify the newly added memory module.

11. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the steps of the method according to claim 10 are implemented.

12. An electronic device, characterized in that: It includes a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory communicate with each other through the communication bus; The memory is used to store computer programs; The processor is used to implement the method according to claim 10 when executing the program stored in the memory.

13. A computer-readable storage medium having instructions stored thereon, which when executed by one or more processors cause the processors to perform the method of claim 10.

Citation Information

Patent Citations

  • CXL persistent memory module link topology

    US20240078196A1