Memory capacity expansion system and method, electronic device, and storage medium
By acquiring the memory module's location information and power control signal, copying the data, and powering down the controller before assembling the new memory module, the problem of existing technologies not supporting dynamic replacement during memory expansion is solved, achieving an efficient and safe memory expansion process.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- INSPUR SUZHOU INTELLIGENT TECH CO LTD
- Filing Date
- 2025-06-13
- Publication Date
- 2026-04-23
AI Technical Summary
In existing technologies, when the CPU uses the CXL bus to interconnect MXC chips to expand memory capacity, the expansion is fixed and does not support dynamic memory replacement, which makes the expansion operation cumbersome and affects the normal operation of server services.
Upon receiving a memory expansion request signal, the system obtains the presence information of the memory module and the power control signal of the memory controller, copies the memory data, powers off the controller, assembles the new memory module, and identifies the new memory module based on the high-speed communication protocol of the high-speed computing link.
It enables non-fixed memory expansion, improves expansion efficiency, simplifies operation procedures, avoids data loss and hardware damage, and ensures stable server operation.
Smart Images

Figure CN2025101026_23042026_PF_FP_ABST
Abstract
Description
A memory expansion system and method, electronic device and storage medium
[0001] Cross-reference to related applications
[0002] This application claims priority to Chinese Patent Application No. 202411433585.6, filed on October 14, 2024, entitled "A memory expansion system and method, electronic device and storage medium", the entire contents of which are incorporated herein by reference. Technical Field
[0003] This application relates to the field of memory expansion system technology, and in particular to a memory expansion method, a memory expansion system, a computer program product, an electronic device, and a computer non-volatile storage medium. Background Technology
[0004] PCIe (Peripheral Component Interconnect Express) is a high-speed serial computer expansion bus standard designed to replace the older PCI, PCI-X, and AGP bus standards.
[0005] CXL (Compute Express Link) is an emerging high-speed interconnect technology designed to provide high-speed, high-capacity connections between the central processing unit (CPU) and devices, between the CPU and memory, and between devices for high-performance data center computers. Simply put, CXL is a protocol that enables high-speed communication between various components within a computer.
[0006] The data processing industry is currently in a phase of rapid development of CXL technology, which utilizes the PCIe physical bus to release it to memory resources through a cache coherency protocol. This can increase the CPU's memory capacity and memory bandwidth, meeting the memory computing power requirements of artificial intelligence.
[0007] The MXC chip, short for CXL memory expansion controller chip, is a dedicated chip designed based on the CXL (Compute Express Link) protocol. It is primarily used to expand the memory capacity and bandwidth of a computer system, thereby improving overall system performance.
[0008] DIMM (Dual In-line Memory Module) is a common type of computer memory module. It consists of multiple Dynamic Random Access Memory (DRAM) chips soldered onto a printed circuit board and inserted into the motherboard through a slot to provide short-term data storage for the computer.
[0009] The technology uses a PCIe standard card and connects eight DIMM memory modules using an MXC chip to expand memory capacity. Finally, the card is inserted into a PCIe slot on the motherboard, and the central processing unit (CPU) obtains the memory through the CXL bus.
[0010] Although the CPU can expand the memory capacity by interconnecting MXC chips using the CXL bus, this memory capacity expansion is fixed and does not support dynamic memory replacement. Summary of the Invention
[0011] This application provides a memory expansion method, a memory expansion system, a computer program product, an electronic device, and a computer non-volatile storage medium to overcome or at least partially solve the above problems.
[0012] This application discloses a memory expansion system, which includes a data processing module, a memory module, and a memory controller for the memory module; wherein, the data processing module and the memory connector interact with each other via a high-speed computing link;
[0013] The data processing module is configured to, upon receiving a memory expansion request signal, acquire the presence information of the memory module and the power control signal for the memory controller.
[0014] When the memory module is determined to be in place by the presence information and the memory controller is determined to be powered on by the power control signal, the memory data of the memory module is copied.
[0015] When the memory data copy is complete, the memory controller is powered down.
[0016] The memory connector is used to assemble the new 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 new memory module by calculating the high-speed communication protocol of the high-speed link.
[0017] In some embodiments of this application, the memory connector, memory module, and memory controller are configured on a memory backplane corresponding to the server motherboard.
[0018] In some embodiments of this application, the memory backplane is configured with a memory expansion controller for controlling the memory controller;
[0019] The memory expansion controller is equipped with an expansion button;
[0020] The expansion button is used to generate a low level signal for the first expansion button, which serves as a memory expansion request signal.
[0021] In some embodiments of this application, the data processing module is configured as follows:
[0022] When copying memory data, an indication signal is generated to indicate that memory data is being copied.
[0023] In some embodiments of this application, the memory expansion controller is connected to an expansion indicator light;
[0024] The data processing module is configured as follows:
[0025] The memory expansion controller is invoked to generate the first expansion indicator light control signal at a preset frequency;
[0026] The memory expansion controller sends a first expansion indicator control signal to the expansion indicator light. The first expansion indicator control signal is used to control the expansion indicator light to flash, indicating that memory data is being copied.
[0027] In some embodiments of this application, the data processing module is configured as follows:
[0028] When the memory data copy is complete, the memory expansion controller sends a second expansion indicator control signal to the expansion indicator light. The second expansion indicator control signal is used to control the expansion indicator light to stop flashing, indicating that the memory data copy is complete.
[0029] In some embodiments of this application, the data processing module is configured as follows:
[0030] When the power control signal is at a high level, the memory controller is determined to be in a powered-on state.
[0031] In some embodiments of this application, the data processing module is configured as follows:
[0032] When the memory data copy is complete, a low-level power control signal is sent to the memory controller to power down the memory controller.
[0033] In some embodiments of this application, the expansion button is used to generate a second expansion button low level indicating the completion of the assembly of the new memory module.
[0034] In some embodiments of this application, the data processing module is configured as follows:
[0035] When the second expansion button is low, the system obtains the presence information of the memory module and the power control signal of the memory controller.
[0036] When the memory module is determined to be in place by the presence information and the memory controller is determined to be in a power-down state by the power control signal, the memory controller is powered on to identify the newly added memory module.
[0037] In some embodiments of this application, the memory expansion controller is connected to an expansion indicator light;
[0038] The data processing module is configured as follows:
[0039] The memory expansion controller is invoked to generate a third expansion indicator light control signal at a preset frequency.
[0040] The memory expansion controller sends a third expansion indicator control signal to the expansion indicator light. The third expansion indicator control signal is used to keep the expansion indicator light constantly on to indicate that the new memory module has been assembled.
[0041] This application also discloses a memory expansion method, including:
[0042] When a memory expansion request signal is received, the system obtains the presence information of the memory module and the power control signal for the memory controller; the memory module is inserted into the memory connector.
[0043] When the memory module is determined to be in place by the presence information and the memory controller is determined to be powered on by the power control signal, the memory data of the memory module is copied.
[0044] When the memory data copy is complete, the memory controller is powered down.
[0045] The memory connector is used to assemble the new memory module after the memory data copy is completed and the memory controller is powered off;
[0046] High-speed communication protocols based on computational high-speed links identify newly added memory modules.
[0047] This application also discloses a computer program product, including a computer program / instruction that, when executed by a processor, implements the steps of the above method.
[0048] This application also discloses an electronic device, including 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;
[0049] Memory, used to store computer programs;
[0050] A processor, when executing a program stored in memory, implements the method as described in the embodiments of this application.
[0051] This application also discloses a computer non-volatile storage medium storing instructions that, when executed by one or more processors, cause the processors to perform the methods described in this application.
[0052] The embodiments of this application have the following advantages:
[0053] In this embodiment, upon receiving a memory expansion request signal, the system acquires the presence information of the memory module and the power control signal for the memory controller. When the presence information indicates the memory module is present and the power control signal indicates the memory controller is powered on, the system copies the memory data of the memory module. When the memory data copying is complete, the system controls the memory controller to power off. The memory connector is used to assemble the new memory module after the memory data copying is complete and the memory controller is powered off. The system identifies the new memory module based on a high-speed communication protocol using a high-speed computing link, achieving non-fixed memory expansion and avoiding fixed-capacity memory expansion, thereby improving memory expansion efficiency. Attached Figure Description
[0054] Figure 1 is a schematic diagram of a memory expansion system structure provided in an embodiment of this application;
[0055] Figure 2 is a schematic diagram of another memory expansion system structure provided in an embodiment of this application;
[0056] Figure 3 is a schematic diagram of the front structure of a memory backplane provided in an embodiment of this application;
[0057] Figure 4 is a schematic diagram of the back structure of a memory backplate provided in an embodiment of this application;
[0058] Figure 5 is a flowchart illustrating a memory expansion method provided in an embodiment of this application;
[0059] Figure 6 is a flowchart of a memory expansion method provided in an embodiment of this application;
[0060] Figure 7 is a structural block diagram of a computer program product provided in an embodiment of this application;
[0061] Figure 8 is a hardware structure block diagram of an electronic device provided in an embodiment of this application;
[0062] Figure 9 is a schematic diagram of a computer-readable medium provided in an embodiment of this application. Detailed Implementation
[0063] To make the above-mentioned objectives, features and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0064] Referring to Figure 1, a schematic diagram of a memory expansion system structure provided in an embodiment of this application is shown, which may specifically include:
[0065] 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.
[0066] CPU, short for Central Processing Unit, is the brain of a computer. It is responsible for executing various computational tasks and controlling all computer operations. You can think of it as a commander directing the various components of the computer to work together.
[0067] Main functions of a CPU:
[0068] Instruction execution: The CPU reads and executes instructions stored in memory, which tell the CPU what to do.
[0069] Data processing: The CPU performs various operations on the data, such as addition, subtraction, multiplication, division, and logical operations.
[0070] Control system: The CPU controls other hardware devices in the computer, such as memory, hard drive, and graphics card.
[0071] CPU components:
[0072] Arithmetic unit: Performs arithmetic and logical operations.
[0073] Controller: Controls the operation of the entire computer system.
[0074] Registers: Temporarily store data and instructions.
[0075] Caching: Stores frequently used data to speed up access.
[0076] CPU performance metrics:
[0077] Number of cores: A CPU can have multiple cores, and each core can execute instructions.
[0078] Number of threads: A single core can handle multiple threads simultaneously, improving parallel processing capabilities.
[0079] Clock speed: The operating frequency of the CPU; the higher the frequency, the faster the processing speed.
[0080] Cache size: The larger the cache, the faster the data access.
[0081] CPU performance directly impacts the overall performance of a computer. A powerful CPU allows a computer to run more smoothly and handle more complex tasks.
[0082] The CPU is the core component of a computer, and its performance directly affects the overall performance of the computer. Choosing the right CPU is crucial for building a high-performance computer.
[0083] In a practical implementation, the data processing module can be the server's CPU.
[0084] Memory controller (MC): The computer's "traffic police"
[0085] The memory controller (MC) is responsible for managing and coordinating communication between computer memory and other hardware. It determines how data is moved in and out of memory, as well as the speed of memory access.
[0086] Coordinating data transmission: The memory management system (MC) acts as a relay station, responsible for passing memory read / write requests issued by the CPU to the memory and returning the data returned by the memory to the CPU.
[0087] Memory address management: The MC assigns a unique address to each storage unit in memory so that the CPU can accurately find the data it needs to access.
[0088] Memory timing control: The memory control mechanism (MC) controls the read and write timing of memory to ensure that data can be transferred correctly.
[0089] Error detection and correction: Some advanced MCs also have error detection and correction functions to ensure data integrity.
[0090] The importance of MC lies in:
[0091] Impact on system performance: The performance of memory management (MC) directly affects the overall performance of the computer, especially memory access speed.
[0092] Determines memory scalability: The memory module (MC) determines how much memory a computer can support, as well as the type of memory.
[0093] Impact on system stability: The stability of MC is crucial to the stable operation of the system.
[0094] The relationship between MC and other hardware:
[0095] CPU: The MC works closely with the CPU; all memory requests issued by the CPU are passed to the memory through the MC.
[0096] Memory: MC directly controls memory and is responsible for data read and write operations.
[0097] 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.
[0098] The memory controller (MC) is a crucial component in a computer system, responsible for managing and coordinating communication between the computer's memory and other hardware. The performance of the MC directly impacts the overall performance of the computer.
[0099] EDSFF (Enterprise and Datacenter SSD Form Factor) is a new form factor designed for enterprise and data center-class solid-state drives (SSDs). It is intended to replace traditional 2.5-inch and 3.5-inch hard drives, offering higher performance, larger capacity, and better scalability.
[0100] EDSFF connector features
[0101] High-speed transmission: The EDSFF connector supports high-speed interfaces such as PCIe Gen5 (Generation 5), which can provide higher data transmission speeds and meet the storage performance requirements of the big data era.
[0102] High density: The EDSFF connector has a compact design that can accommodate more storage media, increasing the density of storage devices.
[0103] Hot-swappable: The EDSFF connector supports hot-swappability, making it convenient for users to replace or add storage devices.
[0104] Modular design: The EDSFF connector adopts a modular design, which can be customized and expanded according to different needs.
[0105] Advantages of EDSFF connectors
[0106] Enhanced performance: EDSFF connectors support higher data transfer speeds and lower latency, which can significantly improve system performance.
[0107] Larger capacity: EDSFF connectors can support larger storage capacities to meet the needs of big data storage.
[0108] Better scalability: The EDSFF connector features a modular design that allows for easy expansion.
[0109] Lower power consumption: Compared to traditional hard drives, EDSFF SSDs consume less power, which can reduce the operating costs of data centers.
[0110] For example, memory connector 104 may be an EDSFF connector; memory module may be a memory hardware device conforming to the EDSFF specification.
[0111] DDR is an abbreviation for Double Data Rate Synchronous Dynamic Random Access Memory. Simply put, it refers to RAM.
[0112] The purpose of DDR memory is:
[0113] Temporary data storage: Programs and data that the computer is running are temporarily stored in DDR memory so that the CPU can access them at any time.
[0114] Improving computer speed: DDR memory has a very fast read and write speed, which directly affects the computer's operating speed.
[0115] Data caching: DDR memory also acts as a cache for the hard drive, temporarily storing frequently accessed data, reducing the number of read and write operations to the hard drive, and improving system response speed.
[0116] DDR memory is a crucial component of a computer system, directly impacting its operating speed and performance. Understanding DDR memory is essential for selecting the right memory and improving computer performance.
[0117] The memory expansion system 100 interacts with the memory controller 102 via the computer high-speed link CXL. The memory connector 104, the memory controller 102 and the memory module 103 can interact via the double data rate synchronous dynamic random access link DDR.
[0118] In specific implementations, the data processing module of this application embodiment is mainly used for:
[0119] Upon receiving a memory expansion request signal, obtain the presence information of the memory module and the power control signal for the memory controller.
[0120] In-situ information for memory modules simply refers to detailed information about the memory modules installed in a computer. This information helps us understand the memory's in-situ status, model, capacity, speed, timings, and other parameters, enabling us to diagnose problems, optimize performance, or upgrade the system.
[0121] When the memory module is determined to be in place by the presence information and the memory controller is determined to be powered on by the power control signal, the memory data of the memory module is copied.
[0122] For example, PWR_CTL is a power control signal. When the output is low, MC will be powered down. When the power control signal is high, MC will be powered on.
[0123] The purpose of copying the memory data of the memory module before expanding the memory capacity is to ensure data security and avoid data loss during the expansion process.
[0124] Memory expansion is essentially an operation that involves replacing or adding memory modules to the memory connector. During this process, the old memory modules are removed or replaced.
[0125] If you remove or replace the memory module directly without backing up or migrating important data beforehand, that data will be lost.
[0126] Data security can be ensured by copying data to new storage media (such as hard drives) or other memory modules before expansion.
[0127] Before expanding memory capacity, copying the memory data from the memory modules is essential to prevent data loss and ensure data security. This process may seem simple, but improper operation can easily lead to data loss. Therefore, thorough preparation is crucial before performing any memory expansion operation.
[0128] When the memory data copy is complete, the memory controller is powered down.
[0129] Before expanding memory, the main purpose of powering down the memory controller is to ensure operational safety and prevent data loss and hardware damage.
[0130] Specifically, this prevents data corruption: the memory controller is responsible for managing memory read and write operations. If the memory controller remains active while memory is being expanded, data may be accidentally written to or read from it, resulting in data corruption.
[0131] Avoid electrostatic discharge (ESD): Memory modules are highly sensitive to static electricity. During memory module replacement, if the memory controller remains charged, static electricity may be generated, potentially damaging the new memory module or other hardware.
[0132] Simplified operation: Powering off the memory controller allows for safer insertion and removal of memory modules, reducing the possibility of operational errors.
[0133] Users can install the new memory module on the memory connector after the memory data copy is complete and the memory controller is powered off.
[0134] As shown above, CXL technology is an emerging high-speed interconnect technology that brings a completely new way to expand memory in computer systems. Through CXL, we can connect more memory modules to the system, achieving dynamic memory expansion. By providing a high-speed and flexible memory expansion method, it brings enormous 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.
[0135] The data processing module 101 and the memory controller 102 can be connected via a computational high-speed link, i.e., a CXL link, so that the data processing module 101 and the memory controller 102 can interact with each other based on the high-speed communication protocol of the computational high-speed link, i.e., the CXL protocol. Therefore, after a new memory module is assembled into the memory connector 104, the data processing module 101 can identify the new memory module through the high-speed communication protocol of the computational high-speed link.
[0136] In this embodiment, upon receiving a memory expansion request signal, the system acquires the presence information of the memory module and the power control signal for the memory controller. When the presence information indicates the memory module is present and the power control signal indicates the memory controller is powered on, the system copies the memory data of the memory module. When the memory data copying is complete, the system controls the memory controller to power off. The memory connector is used to assemble the new memory module after the memory data copying is complete and the memory controller is powered off. The system identifies the new memory module based on a high-speed communication protocol using a high-speed computing link, achieving non-fixed memory expansion and avoiding fixed-capacity memory expansion, thereby improving memory expansion efficiency.
[0137] Based on the above embodiments, modified embodiments of the above embodiments are proposed. It should be noted that, in order to keep the description brief, only the differences from the above embodiments are described in the modified embodiments.
[0138] In some embodiments of this application, the memory connector, memory module, and memory controller are configured on a memory backplane corresponding to the server motherboard.
[0139] In practical applications, the relevant technology adopts the form of PCIe standard cards. When replacing the memory, it is necessary to manually power off the entire system, open the chassis cover and replace it. The whole process is quite cumbersome and affects the normal operation of server services.
[0140] 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.
[0141] PCIe interface: This is a high-speed expansion interface on the computer motherboard, used to connect various high-performance devices, such as graphics cards and network cards.
[0142] SATA interface: This is a common interface used by storage devices such as hard drives and solid-state drives for data transfer.
[0143] Reasons for needing a PCIe to SATA controller include:
[0144] Add SATA interfaces: Many motherboards offer a limited number of SATA interfaces. By using a PCIe to SATA controller, you can add additional SATA interfaces to connect more hard drives or solid-state drives.
[0145] Upgrading older devices: Some older motherboards may only provide PCIe interfaces and not SATA interfaces. Using a PCIe to SATA controller, you can connect older SATA hard drives to a new computer.
[0146] Flexible expansion: The number of SATA interfaces can be increased or decreased as needed.
[0147] A SATA hard drive is a common storage device that connects to a computer via a SATA interface. It is used to store computer data, including the operating system, applications, files, etc.
[0148] Features: Compared to the previous parallel ATA hard drives, SATA hard drives have advantages such as higher transfer speeds, smaller size, and lower power consumption.
[0149] Types: SATA hard drives are mainly divided into two types: mechanical hard drives (HDD) and solid-state drives (SSD).
[0150] Applications: SATA hard drives are widely used in various computer devices such as desktop computers, laptops, and servers.
[0151] Combining a PCIe to SATA controller with a SATA hard drive:
[0152] By using a PCIe to SATA controller, we can connect more SATA hard drives to our computer, thereby achieving the following:
[0153] Expand storage space: Increase hard drive capacity to store more files, videos, pictures, etc.
[0154] Setting up a RAID array: Combining multiple SATA hard drives into a RAID array can improve data security or read / write speed.
[0155] Creating a storage server: Connect multiple hard drives to a computer to build a storage server such as NAS (Network Attached Storage) or SAN (Storage Area Network).
[0156] The combination of a PCIe-to-SATA controller and a SATA hard drive provides us with a more flexible storage expansion solution. In this way, we can easily increase storage space, improve data security, and meet various application scenarios according to our needs.
[0157] Referring to Figure 2, which is a schematic diagram of another memory expansion system structure provided in an embodiment of this application;
[0158] It mainly consists of a motherboard 201 and an E3.S memory backplate 202. The motherboard 201 has an onboard CPU 2011, an MCIO connector 2012, a PCIe to SATA controller 2013, and a SATA hard drive 2014.
[0159] The CPU2011 and the PCIe to SATA controller2013 exchange data via the PCIe interface2015 based on the PCIe link. The PCIe to SATA controller2013 and the SATA hard drive2014 exchange data via the SATA link.
[0160] MCIO (Mini Cool Edge IO) cable is a new type of high-speed interconnect cable, primarily used to connect high-performance devices such as servers and network equipment. It has the following characteristics:
[0161] Features:
[0162] High density and high speed: MCIO cables feature a compact design that enables high-density, high-speed data transmission within a limited space, meeting the high bandwidth requirements of modern data centers.
[0163] Multi-channel: MCIO cables can transmit multiple data channels simultaneously, improving data transmission efficiency.
[0164] Flexible adaptation: MCIO cables support multiple data transmission protocols, such as PCIe and CXL, and can adapt to different devices and application scenarios.
[0165] High reliability: MCIO cables use reliable connectors and cable materials, ensuring the stability and reliability of data transmission.
[0166] Flash memory is a type of non-volatile memory, meaning that the data stored in it will not be lost even when power is off. It is widely used in electronic products, from USB flash drives and SD cards to solid-state drives (SSDs), all of which rely on flash memory chips.
[0167] SPI (Serial Peripheral Interface)
[0168] SPI is a synchronous serial data interface primarily used for short-range digital data communication. It is a flexible, full-duplex communication protocol commonly used for communication between microcontrollers and peripheral devices.
[0169] 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.
[0170] The E3.S memory backplane 202 has an onboard MCIO connector 2021, where MCIO connector 2012 and MCIO connector 2021 communicate via an MCIO cable. The E3.S memory backplane 202 also has an onboard memory expansion controller 2022, an MC memory controller 2023, an EDSFF connector 2024, and a Flash chip 2025, where Flash chip 2025 communicates with the MC memory controller 2023 via SPI. The E3.S memory backplane 202 also has an expansion indicator light 2026, an expansion button 2027, and an E3.S memory module 2028.
[0171] In practical applications, current server CPUs have high integration levels and generally no longer support SATA interfaces, retaining only PCIe interfaces. A PCIe-to-SATA controller (2013) is needed to convert PCIe signals to SATA signals. SATA hard drives (2014) primarily store data from memory. When replacing the E3.S memory module (2028), the CPU needs to save the data from the memory module (2028) to the SATA hard drive beforehand to prevent data loss.
[0172] The MC memory controller 2023, EDSFF connector 2024 and E3.S memory module 2028 exchange data via a Double Data Rate Synchronous Dynamic Random Access Memory Link (DDR).
[0173] The MCIO connector 2021 and the MC memory controller 2023 exchange data via a high-speed computer link CXL.
[0174] The CPU itself has an I2C interface 2016, which connects to another I2C interface 2029 on the memory expansion controller 2022 on the memory backplane to control signal transmission during the expansion process. The PCIe interface 2017 supports the CXL protocol and connects to the MC memory controller 2023 on the memory backplane to expand memory capacity.
[0175] The motherboard 201 and the E3.S memory backplane 202 are interconnected using an MCIO cable, which can transmit I2C control signals and CXL signals.
[0176] The LED_Status signal is typically used in electronic devices to indicate the operating status of the device or a component. It visually displays the device's working status by controlling one or more LEDs.
[0177] PRSNT_N is the presence detection signal for the E3.S memory module. It is high by default and low when the E3.S memory is inserted into the EDSFF slot.
[0178] PWR_CTL is the power control signal. When the output is low, MC will be powered down; when the output is high, MC will be powered on.
[0179] The memory expansion controller 2022 is the core unit for realizing dynamic memory expansion. It can include multiple virtual function modules, including LED control module 20221, expansion button management module 20222, presence detection module 20223, and power control module 20224.
[0180] The LED control module 20221 can be used to send the LED_Status signal to the expansion indicator 2026; 20222 converts the Button signal from the expansion button 2027 into I2C and passes it to the CPU; the presence detection module 20223 can convert the presence 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 the PWR_CTL signal to the MC memory controller 2023.
[0181] It can receive I2C control signals from the CPU and convert them into GPIO to control the power supply of the MC (Memory Controller) and control the expansion status indicator. It can also convert the Button signal from the expansion button 2027 and the PRSNT_N presence information of the E3.S memory module into I2C and pass them to the CPU.
[0182] The expansion button 2027 is the expansion request signal for memory expansion. It is a high-level signal by default and a low-level signal when pressed.
[0183] Memory training and recognition plays a crucial role in computer systems. It involves the computer performing a series of tests and optimizations on its memory during startup to ensure stable and efficient memory operation.
[0184] The purpose of memory training and recognition is:
[0185] Differences in memory chip performance: Different brands and models of memory chips have different performance and stability.
[0186] Timing parameters: There are many timing parameters for memory, which need to be finely adjusted to achieve the best performance.
[0187] Motherboard compatibility: The compatibility between memory and motherboard can also affect memory performance.
[0188] System stability: Ensuring stable memory operation is the foundation for the stable operation of the entire system.
[0189] Memory training and recognition process:
[0190] Self-test: When the computer starts up, the BIOS performs a self-test on the memory to ensure there is no physical damage.
[0191] Timing adjustment: The BIOS will initially set the memory timing parameters based on the memory's SPD (Serial Presence Detect) information and the motherboard settings.
[0192] Testing: The BIOS will perform a series of memory tests, including read / write tests and error checking.
[0193] Optimization: Based on the test results, the BIOS will fine-tune the memory timing parameters to find the optimal operating state.
[0194] The beneficial effects of memory-based training for recognition are:
[0195] Improve memory performance: By finely adjusting timing parameters, memory read and write speeds and stability can be improved.
[0196] Enhance system stability: Reduce memory errors and improve system stability.
[0197] Extend memory lifespan: By setting appropriate timings, the lifespan of memory can be extended.
[0198] The ways to view memory training and recognition information include:
[0199] BIOS settings: In the BIOS settings, you can usually view the memory SPD information, timing parameters, and test results.
[0200] Third-party software: Some third-party software can provide more detailed memory information and test results.
[0201] Factors affecting memory training and recognition performance
[0202] Motherboard BIOS: The quality and functionality of the BIOS directly affect the memory training and recognition results.
[0203] Memory chip quality: The better the quality of the memory chips, the easier they are to optimize.
[0204] System temperature: High temperature environments can affect memory stability and reduce the effectiveness of training and recognition.
[0205] Voltage settings: The memory voltage settings also affect memory performance and stability.
[0206] Memory training and identification is a crucial task during computer system startup, significantly impacting system stability and performance. Understanding the principles and processes of memory training and identification allows for a better understanding of computer operation mechanisms and enables the proper configuration and maintenance of memory.
[0207] The expansion indicator light supports three states: solid on, flashing at 1Hz, and off. Solid on indicates that the system is running normally and the memory cannot be replaced in this state; flashing at 1Hz indicates that the system is copying E3.S memory data to the SATA hard drive or that the CPU is training and recognizing the E3.S memory; off indicates that the system has completed data copying and the MC has been powered off, and the memory can be replaced in this state.
[0208] The memory controller 2023 converts the CXL signal from the CPU into a DDR signal, which is then connected to the EDSFF connector. The E3.S memory module can be inserted into the EDSFF slot. The onboard Flash chip 2025 contains the firmware (FW) of the MC2023. When powered on, the MC2023 reads the FW information from the Flash chip 2025 and completes initialization.
[0209] Referring to Figure 3, Figure 3 is a schematic diagram of the front structure of a memory backplane provided in an embodiment of this application;
[0210] In some embodiments of this application, 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.
[0211] Referring to Figure 4, Figure 4 is a schematic diagram of the back structure of a memory backplate provided in an embodiment of this application;
[0212] The E3.S memory module slots, expansion indicator 2026, and expansion button 2027 can be configured on the back of the memory backplate. For better heat dissipation, a cutout design is used between multiple E3.S slots.
[0213] EDSFF is a standard specification designed specifically for data center and enterprise storage systems, supporting standard E3.S form factor memory disks. E3.S memory modules are designed to meet the demands of high-performance computing while maintaining a small size and weight, measuring 7.5mm x 76mm x 112.75mm.
[0214] Referring to Figure 5, which is a flowchart illustrating a memory expansion method provided in an embodiment of this application;
[0215] In some embodiments of this application, the memory backplane is configured with a memory expansion controller for controlling the memory controller;
[0216] The memory expansion controller is equipped with an expansion button;
[0217] When the user presses the expansion button, a low-level signal is generated for the first expansion button, serving as a memory expansion request signal; the memory expansion controller transmits this signal to the CPU via I2C.
[0218] As can be seen from the above, the memory controller is in the power-on state when the power control signal PWR_CTL is at a high level.
[0219] Therefore, after receiving the signal, the CPU performs signal judgment. If the memory module is in place according to the presence information PRSNT_N, the power control signal PWR_CTL is at a high level, and the button signal sent by the expansion button becomes low, then the memory data can be copied.
[0220] In some embodiments of this application, the data processing module is configured as follows:
[0221] When copying memory data, an indicator signal can be generated to indicate that memory data is being copied.
[0222] Specifically, the memory expansion controller can be invoked to generate the first expansion indicator light control signal at a preset frequency;
[0223] The memory expansion controller sends a first expansion indicator control signal to the expansion indicator light. The first expansion indicator control signal is used to control the expansion indicator light to flash, indicating that memory data is being copied.
[0224] When the memory data copy is complete, the memory expansion controller sends a second expansion indicator control signal to the expansion indicator. The second expansion indicator control signal is used to control the expansion indicator to stop flashing, indicating that the memory data copy is complete.
[0225] When the memory data copy is complete, a low-level power control signal is sent to the memory controller to power down the memory controller.
[0226] For example, when copying memory data, the CPU controls the LED of the memory expansion controller via I2C to output a 1Hz square wave, and the LED starts to blink; after the CPU completes the data copy, it controls the memory expansion controller via I2C to output a power control signal PWR_CTL low level, and the LED high level. At this time, the MC is powered off, and the LED is always off.
[0227] In some embodiments of this application, the expansion button is used to generate a second expansion button low level indicating the completion of the assembly of the new memory module;
[0228] The data processing module is configured as follows:
[0229] When the second expansion button is low, the system obtains the presence information of the memory module and the power control signal of the memory controller.
[0230] When the memory module is determined to be in place by the presence information and the memory controller is determined to be in a power-down state by the power control signal, the memory controller is powered on to identify the new memory module.
[0231] The memory expansion controller is equipped with an expansion indicator light.
[0232] The data processing module is configured as follows:
[0233] The memory expansion controller is invoked to generate a third expansion indicator light control signal at a preset frequency.
[0234] The memory expansion controller sends a third expansion indicator control signal to the expansion indicator light. The third expansion indicator control signal is used to keep the expansion indicator light constantly on to indicate that the installation of the new memory module is complete.
[0235] For example, after replacing the new memory module, pressing the expansion button again generates a second low level for the expansion button, that is, the button signal becomes low level, and the memory expansion controller transmits the second low level of the expansion button to the CPU via I2C.
[0236] When the CPU determines that the memory module is present via the PRSNT_N information, the power control signal PWR_CTL is at a low level, and the button signal sent by the expansion button goes low, it controls PWR_CRL to output a high level, the MC (Memory Capacitor) is powered on and initialized. The CPU then identifies the newly added memory module (CXL memory) and controls the LED to output a 1Hz square wave, causing the LED to blink. After the memory is identified, the CPU controls the memory expansion controller via I2C to output a low level to the LED, i.e., the third expansion indicator control signal, keeping the LED constantly lit, indicating that the memory expansion process is complete.
[0237] It should be noted that, for the sake of simplicity, the method embodiments are all described as a series of actions. However, those skilled in the art should understand that the embodiments of this application are not limited to the described order of actions, because according to the embodiments of this application, some steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should also understand that the embodiments described in the specification are all preferred embodiments, and the actions involved are not necessarily required by the embodiments of this application.
[0238] Referring to Figure 6, a flowchart of a memory expansion method provided in an embodiment of this application is shown, which may specifically include the following steps:
[0239] Step 601: When a memory expansion request signal is received, obtain the presence information of the memory module and the power control signal of the memory controller; the memory module is inserted into the memory connector.
[0240] Step 602: When the memory module is determined to be in place by the presence information and the memory controller is determined to be in the power-on state by the power control signal, copy the memory data of the memory module.
[0241] Step 603: When the memory data copy is complete, the memory controller is powered down; the memory connector is used to assemble the new memory module after the memory data copy is complete and the memory controller is powered down.
[0242] Step 604: Identify the new memory module based on the high-speed communication protocol of the high-speed computing link.
[0243] As the method embodiments are basically similar to the system embodiments, the description is relatively simple, and relevant parts can be found in the description of the system embodiments.
[0244] Referring to Figure 7, which is a structural block diagram of a computer program product provided in an embodiment of this application:
[0245] A computer program product, including a computer program / instruction 701, wherein when the computer program / instruction 701 is executed by a processor, it implements the steps of the memory expansion method described above.
[0246] In addition, this application also 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, it implements the various processes of the above-described memory expansion method embodiments and can achieve the same technical effect. To avoid repetition, it will not be described again here.
[0247] This application also provides a non-volatile computer storage medium storing a computer program. When the computer program is executed by a processor, it implements the various processes of the memory expansion method embodiments described above and achieves the same technical effect. To avoid repetition, it will not be described again here. The non-volatile computer storage medium includes, for example, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.
[0248] Figure 8 is a schematic diagram of the hardware structure of an electronic device that implements various embodiments of this application.
[0249] The electronic device 800 includes, but is not limited to, components such as: 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 understand that the electronic device structure shown in FIG8 does not constitute a limitation on the electronic device; the electronic device may include more or fewer components than shown, or combine certain components, or have different component arrangements. In the embodiments of this application, the electronic device includes, but is not limited to, mobile phones, tablet computers, laptops, PDAs, in-vehicle terminals, wearable devices, and pedometers.
[0250] It should be understood that, in this embodiment, the radio frequency unit 801 can be used for receiving and transmitting signals during information transmission or calls. Specifically, it receives downlink data from the base station and processes it with the processor 810; additionally, it transmits uplink data to the base station. Typically, 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, and a duplexer. Furthermore, the radio frequency unit 801 can also communicate with networks and other devices via a wireless communication system.
[0251] Electronic devices provide users with wireless broadband internet access through network module 802, such as helping users send and receive emails, browse web pages, and access streaming media.
[0252] The audio output unit 803 can convert audio data received by the radio frequency unit 801 or the network module 802 or stored in the memory 809 into audio signals and output them as sound. Furthermore, the audio output unit 803 can also provide audio output related to specific functions performed by the electronic device 800 (e.g., call signal reception sound, message reception sound, etc.). The audio output unit 803 includes a speaker, a buzzer, and a receiver, etc.
[0253] Input unit 804 is used to receive audio or video signals. Input unit 804 may include a graphics processing unit (GPU) 8041 and a microphone 8042. The GPU 8041 processes image data of still images or videos acquired by an image capture device (such as a camera) in video capture mode or image capture mode. The processed image frames can be displayed on display unit 806. The image frames processed by GPU 8041 can be stored in memory 809 (or other storage medium) or transmitted via radio frequency unit 801 or network module 802. Microphone 8042 can receive sound and process such sound into audio data. The processed audio data can be converted into a format that can be transmitted to a mobile communication base station via radio frequency unit 801 in telephone call mode.
[0254] 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. The ambient light sensor can adjust the brightness of the display panel 8061 according to the ambient light level, and the proximity sensor can turn off the display panel 8061 and / or backlight when the electronic device 800 is moved to the ear. As a type of motion sensor, an accelerometer sensor can detect the magnitude of acceleration in various directions (generally three axes). When stationary, it can detect the magnitude and direction of gravity and can be used to identify the posture of the electronic device (such as landscape / portrait switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc. The sensor 805 may also include a fingerprint sensor, pressure sensor, iris sensor, molecular sensor, gyroscope, barometer, hygrometer, thermometer, infrared sensor, etc., which will not be described in detail here.
[0255] 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.
[0256] User input unit 807 can be used to receive input numerical or character information, and to generate key signal inputs related to user settings and function control of electronic devices. Specifically, user input unit 807 includes a touch panel 8071 and other input devices 8072. Touch panel 8071, also known as a touch screen, can collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near touch panel 8071). Touch panel 8071 may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch position and the signal generated by the touch operation, and transmits the signal to the touch controller; the touch controller receives touch information from the touch detection device, converts it into touch point coordinates, and sends it to the processor 810, which receives and executes commands from the processor 810. In addition, touch panel 8071 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. Besides touch panel 8071, user input unit 807 may also include other input devices 8072. Specifically, other input devices 8072 may include, but are not limited to, physical keyboards, function keys (such as volume control buttons, power buttons, etc.), trackballs, mice, joysticks, etc., which will not be described in detail here.
[0257] Furthermore, the touch panel 8071 can cover 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 touch event. Subsequently, the processor 810 provides corresponding visual output on the display panel 8061 according to the type of touch event. Although in Figure 8, the touch panel 8071 and the display panel 8061 are shown as two separate components to implement the input and output functions of the electronic device, in some embodiments, the touch panel 8071 and the display panel 8061 can be integrated to implement the input and output functions of the electronic device. Specific details are not limited here.
[0258] Interface unit 808 serves as an interface for connecting external devices to electronic device 800. For example, external devices may include a wired or wireless headphone 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, and so on. Interface unit 808 can be used to receive input from external devices (e.g., data, power, etc.) and transmit the received input to one or more components within electronic device 800, or it can be used to transmit data between electronic device 800 and external devices.
[0259] The memory 809 can be used to store software programs and various data. The memory 809 may primarily include a program storage area and a data storage area. The program storage area may store the operating system, applications required for at least one function (such as sound playback, image playback, etc.), etc.; the data storage area may store data created based on the use of the mobile phone (such as audio data, phonebook, etc.). Furthermore, the memory 809 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0260] The processor 810 is the control center of the electronic device. It connects various parts of the electronic device via various interfaces and lines. By running or executing software programs and / or modules stored in the memory 809, and by calling data stored in the memory 809, it performs various functions and processes data, thereby providing overall monitoring of the electronic device. The processor 810 may include one or more processing units; preferably, the processor 810 may integrate an application processor and a modem processor. The application processor mainly handles the operating system, user interface, and applications, while the modem processor mainly handles wireless communication. It is understood that the modem processor may not be integrated into the processor 810.
[0261] The electronic device 800 may also include a power supply 811 (such as a battery) for supplying power to various components. Preferably, the power supply 811 is logically connected to the processor 810 through a power management system, thereby enabling functions such as managing charging, discharging, and power consumption through the power management system.
[0262] In addition, the electronic device 800 includes some functional modules not shown, which will not be described in detail here.
[0263] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Unless otherwise specified, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.
[0264] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods of the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal (which may be a mobile phone, computer, server, air conditioner, or network device, etc.) to execute the methods of the various embodiments of this application.
[0265] As shown in Figure 9, in another embodiment provided in this application, a computer non-volatile storage medium 901 is also provided. The computer non-volatile storage medium stores instructions that, when run on a computer, cause the computer to execute the memory expansion method in the above embodiment.
[0266] The embodiments of this application have been described above with reference to the accompanying drawings. However, this application is not limited to the specific embodiments described above. The specific embodiments described above are merely illustrative and not restrictive. Those skilled in the art can make many other forms under the guidance of this application without departing from the spirit and scope of the claims, and all of these forms are within the protection scope of this application.
[0267] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed in this application can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0268] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, devices, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here.
[0269] In the embodiments provided in this application, it should be understood that the disclosed apparatus and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or units may be electrical, mechanical, or other forms.
[0270] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment, depending on actual needs.
[0271] In addition, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit.
[0272] If a function is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a portion of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods of the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, ROM, RAM, magnetic disks, or optical disks.
[0273] The above are merely specific embodiments of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A memory expansion system, comprising: 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, the data processing module and the memory connector interact with each other via a high-speed computing link. The data processing module is configured to, upon receiving a memory expansion request signal, acquire the presence information of the memory module and the power control signal of the memory controller. When the memory module is determined to be in place by the presence information and the memory controller is determined to be powered on by the power control signal, the memory data of the memory module is copied. When the memory data copying is complete, the memory controller is powered down. The memory connector is configured to assemble a new memory module after the memory data copy is completed and the memory controller is powered down; the data processing module is configured to identify the new memory module through the high-speed communication protocol of the computing high-speed link.
2. The memory expansion system of claim 1, wherein, The in-situ information of the memory module includes the memory's in-situ status, model, capacity, speed, and timing.
3. The memory expansion system of claim 1, wherein, The memory controller is configured to manage memory read and write operations.
4. The memory expansion system of claim 1, wherein, The memory connector, the memory module, and the memory controller exchange data via a double data rate synchronous dynamic random access memory link.
5. The memory expansion system of claim 1, wherein, The memory connector, the memory module, and the memory controller are configured on a memory backplane corresponding to the server motherboard.
6. The memory expansion system of claim 5, wherein, The memory backplane is equipped with a flash memory chip, and the flash memory chip and the memory controller interact with each other via a synchronous serial data interface.
7. The memory expansion system of claim 5, wherein, The memory backplane is equipped with a memory expansion controller configured to control the memory controller; The memory expansion controller is connected to an expansion button; The expansion button is configured to generate a first expansion button low level as a memory expansion request signal.
8. The memory expansion system of claim 7, wherein, The data processing module is configured as follows: When copying the memory data, an indication signal configured to indicate that the memory data is being copied is generated.
9. The memory expansion system of claim 8, wherein, The memory expansion controller is connected to an expansion indicator light; The data processing module is configured as follows: The memory expansion controller is invoked to generate a first expansion indicator light control signal at a preset frequency; The memory expansion controller sends a first expansion indicator control signal to the expansion indicator, which is configured to control the expansion indicator to flash, indicating that the memory data is being copied.
10. The memory expansion system of claim 9, wherein, The memory backplate is equipped with the expansion button and the expansion indicator light.
11. The memory expansion system of claim 9, wherein, The data processing module is configured as follows: When the memory data copy is completed, the memory expansion controller sends a second expansion indicator control signal to the expansion indicator. The second expansion indicator control signal is configured to control the expansion indicator to stop flashing, indicating that the memory data copy is complete.
12. The memory expansion system of claim 1 or 5, wherein, The data processing module is configured as follows: When the power control signal is at a high level, the memory controller is determined to be in a powered-on state.
13. The memory expansion system of claim 1 or 5, wherein, The data processing module is configured as follows: When the memory data copy is complete, a low-level power control signal is sent to the memory controller to power down the memory controller.
14. The memory expansion system of claim 7, wherein, The expansion button is configured to generate a low level signal indicating that the new memory module has been assembled.
15. The memory expansion system of claim 14, wherein, The data processing module is configured as follows: When the second expansion button is low, the presence information of the memory module and the power control signal of the memory controller are obtained. When the memory module is determined to be in place based on the presence information, and the memory controller is determined to be in a power-down state based on the power control signal, the memory controller is powered on to identify the newly added memory module.
16. The memory expansion system of claim 15, wherein, The memory expansion controller is connected to an expansion indicator light; The data processing module is configured as follows: The memory expansion controller is invoked to generate a third expansion indicator light control signal at a preset frequency; The memory expansion controller sends a third expansion indicator control signal to the expansion indicator, which is configured to keep the expansion indicator constantly lit to indicate that the new memory module has been assembled.
17. A method for memory expansion, comprising: include: When a memory expansion request signal is received, the system obtains the presence information of the memory module and the power control signal for the memory controller. The memory module is inserted into the memory connector; When the memory module is determined to be in place by the presence information and the memory controller is determined to be powered on by the power control signal, the memory data of the memory module is copied. When the memory data copying is complete, the memory controller is powered down. The memory connector is configured to be fitted with a new memory module after the memory data copy is completed and the memory controller is powered down; The newly added memory module is identified based on a high-speed communication protocol that uses a high-speed computing link.
18. A computer program product comprising computer programs / instructions, characterized in that, When the computer program / instructions are executed by the processor, they implement the steps of the method of claim 17.
19. An electronic device, comprising: 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 configured to store computer programs; When the processor is configured to execute a program stored in memory, it implements the method as described in claim 17.
20. A computer non-volatile storage medium having instructions stored thereon that, when executed by one or more processors, cause the processors to perform the method of claim 17.
Citation Information
Patent Citations
Method and device for expanding synchronous memory bus function
CN105095138A
Switching chip, memory expansion module and memory expansion system
CN116886644A
Memory expansion system and method, electronic equipment and storage medium
CN118964044A
CXL persistent memory module link topology
US20240078196A1
Hot plugging method and apparatus for memory module, and memory module
WO2023221227A1