TY - JOUR
T1 - NPC
T2 - A Non-Conflicting Processing-in-Memory Controller in DDR Memory Systems
AU - Lee, Seungyong
AU - Lee, Sanghyun
AU - Seo, Minseok
AU - Park, Chunmyung
AU - Shin, Woojae
AU - Lee, Hyuk Jae
AU - Kim, Hyun
N1 - Publisher Copyright:
© 1968-2012 IEEE.
PY - 2025
Y1 - 2025
N2 - Processing-in-Memory (PIM) has emerged as a promising solution to address the memory wall problem. Existing memory interfaces must support new PIM commands to utilize PIM, making the definition of PIM commands according to memory modes a major issue in the development of practical PIM products. For performance and OS-transparency, the memory controller is responsible for changing the memory mode, which requires modifying the controller and resolving conflicts with existing functionalities. Additionally, it must operate to minimize mode transition overhead, which can cause significant performance degradation. In this study, we present NPC, a memory controller designed for mode transition PIM that delivers PIM commands via the DDR interface. NPC issues PIM commands while transparently changing the memory mode with a dedicated scheduling policy that reduces the number of mode transitions with aggregative issuing. Moreover, existing functions, such as refresh, are optimized for PIM operation. We implement NPC in hardware and develop a PIM emulation system to validate it on FPGA platforms. Experimental results reveal that NPC is compatible with existing interfaces and functionality, and the proposed scheduling policy improves performance by 2.2 × with balanced fairness, achieving up to 97% of the ideal performance. These findings have the potential to aid the application of PIM in real systems and contribute to the commercialization of mode transition PIM.
AB - Processing-in-Memory (PIM) has emerged as a promising solution to address the memory wall problem. Existing memory interfaces must support new PIM commands to utilize PIM, making the definition of PIM commands according to memory modes a major issue in the development of practical PIM products. For performance and OS-transparency, the memory controller is responsible for changing the memory mode, which requires modifying the controller and resolving conflicts with existing functionalities. Additionally, it must operate to minimize mode transition overhead, which can cause significant performance degradation. In this study, we present NPC, a memory controller designed for mode transition PIM that delivers PIM commands via the DDR interface. NPC issues PIM commands while transparently changing the memory mode with a dedicated scheduling policy that reduces the number of mode transitions with aggregative issuing. Moreover, existing functions, such as refresh, are optimized for PIM operation. We implement NPC in hardware and develop a PIM emulation system to validate it on FPGA platforms. Experimental results reveal that NPC is compatible with existing interfaces and functionality, and the proposed scheduling policy improves performance by 2.2 × with balanced fairness, achieving up to 97% of the ideal performance. These findings have the potential to aid the application of PIM in real systems and contribute to the commercialization of mode transition PIM.
KW - DRAM
KW - Processing-in-memory
KW - memory controller
KW - scheduling policy
UR - http://www.scopus.com/inward/record.url?scp=85207624602&partnerID=8YFLogxK
U2 - 10.1109/TC.2024.3477981
DO - 10.1109/TC.2024.3477981
M3 - Article
AN - SCOPUS:85207624602
SN - 0018-9340
VL - 74
SP - 1025
EP - 1039
JO - IEEE Transactions on Computers
JF - IEEE Transactions on Computers
IS - 3
ER -