Skyrmion Vault: Maximizing Skyrmion Lifespan for Enabling Low-Power Skyrmion Racetrack Memory Syue-Wei Lu Shuo-Han Chen∗ Yu-Pei Liang National Tsing Hua University Taiwan National Taipei Univ. of Tech. Taiwan National Chung Cheng University Taiwan Yuan-Hao Chang Kang Wang Tseng-Yi Chen Academia Sinica Taiwan Beihang University China National Central University Taiwan Wei-Kuan Shih National Tsing Hua University Taiwan ABSTRACT Skyrmion racetrack memory (SK-RM) has demonstrated great potential as a high-density and low-cost nonvolatile memory. Nevertheless, even though random data accesses are supported on SK-RM, data accesses can not be carried out on individual data bit directly. Instead, special skyrmion manipulations, such as injecting and shifting, are required to support random information update and deletion. With such special manipulations, the latency and energy consumption of skyrmion manipulations could quickly accumulate and induce additional overhead on the data read/write path of SK-RM. Meanwhile, injection operation consumes more energy and has higher latency than any other manipulations. Although prior arts have tried to alleviate the overhead of skyrmion manipulations, the possibility of minimizing injections through buffering skyrmions for future reuse and energy conservation receives much less attention. Such observation motivates us to propose the concept of skyrmion vault to effectively utilize the skyrmion buffer track structure for energy conservation through maximizing the lifespan of injected skyrmions and minimizing the number of skyrmion injections. Experimental results have shown promising improvements in both energy consumption and skyrmions’ lifespan. CCS CONCEPTS • Computer systems organization → Embedded systems; • Hardware → Emerging technologies. KEYWORDS skyrmion racetrack memory, SK-RM, lifespan ACM Reference Format: Syue-Wei Lu, Shuo-Han Chen, Yu-Pei Liang, Yuan-Hao Chang, Kang Wang, Tseng-Yi Chen, and Wei-Kuan Shih. 2023. Skyrmion Vault: Maximizing Skyrmion ∗ Corresponding authors Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from permissions@acm.org. ASPDAC ’23, January 16–19, 2023, Tokyo, Japan © 2023 Association for Computing Machinery. ACM ISBN 978-1-4503-9783-4/23/01. . . $15.00 https://doi.org/10.1145/3566097.3567852 Lifespan for Enabling Low-Power Skyrmion Racetrack Memory. In 28th Asia and South Pacific Design Automation Conference (ASPDAC ’23), January 16–19, 2023, Tokyo, Japan. ACM, New York, NY, USA, 6 pages. https://doi.org/10.1145/ 3566097.3567852 1 INTRODUCTION With the evolving technology trend, skyrmion racetrack memory (SKRM) [10, 12] has shown great potential with its high storage density and efficient read/write operations. SK-RM utilizes skyrmions, topologically protected particle-like magnetization entities, as information carriers to store data. Random data updates and removals are feasible on SK-RM through shifting or injecting skyrmions. Notably, since the energy consumption and latency of injecting skyrmions are higher than other skyrmion manipulations (i.e., detect, shift, remove), the ability of preserving already-injected skyrmions to compose different data patterns over multiple data updates are key to the performance enhancement and energy conservation of SK-RM. Even though the structure of skyrmion buffer track has been proposed to temporarily store unused skyrmions, the lack of a proper and buffer-track-aware management strategy can not fully exploit the benefits of skyrmion buffer tracks to buffer injected skyrmions. Therefore, in this study, the concept of skyrmion vault is first proposed to jointly manage injected skyrmions on both racetracks and buffer tracks. To realize this concept, the skyrmion vault racetrack memory (SKv-RM) is designed to reconsider skyrmion manipulations with the buffer track awareness. The technical difficulty of the proposed SKv-RM lies in how to properly cache skyrmions and maximize the lifespan of injected skyrmions for minimizing the energy consumed by injecting and shifting skyrmions. Racetrack memory (RM) has comparable storage density to hard disk drives (HDDs) and similar access performance to dynamic random access memory (DRAM). Therefore, RM is regarded as a promising nonvolatile memory (NVM) for replacing existing volatile DRAM and HDDs while preserving similar performance and density. Domainwall racetrack memory (DW-RM), which is demonstrated by IBM [11], is regarded as the first generation of RM. DW-RM stores information through a train of magnetic domains and separates each magnetic domain with domain walls for isolation. Challenges of DW-RM include the technical difficulties in shrinking DW size and the energy efficiency issue due to its high shifting current [2]. These issues can be resolved with a newer generation of RM, namely skyrmion racetrack memory (SK-RM). SK-RM utilizes the magnetic skyrmions to store data bits and can achieve better energy efficiency with its lower shift current. However, data bits of RM can only be detected and inserted 333 Authorized licensed use limited to: National Yang Ming Chiao Tung University. Downloaded on September 12,2023 at 05:59:34 UTC from IEEE Xplore. Restrictions apply. ASPDAC ’23, January 16–19, 2023, Tokyo, Japan Chen et al. at access ports of the racetrack for read and write operations. Consequently, the read/write latency becomes unpredictable since data bits need to be shifted to access ports for reading or writing and the distance between the access port and data bits also varies. Another aspect that needs to be considered is that injecting skyrmions on SK-RM induces higher energy consumption and latency than other skyrmion manipulations. To avoid above undesirable aspects of SKRM, studies have been proposed to reduce the number of shift or inject manipulations from different perspectives. For instance, data layout configuration strategies [4, 9] have been proposed to analyze the data access pattern and configure the data layout on RM for minimal shift overhead. Meanwhile, Hsieh et al. [5] try to optimize sorting algorithm to resolve the random-hopping phenomenon for better sorting performance on SK-RM. More recently, the Permutation-Write strategy [15] avoids new skyrmion injections via re-permuting injected skyrmions in last data write to compose the data pattern of new write requests. However, under Permutation-Write strategy, skyrmions still need to be injected or removed when the number of skyrmions is not identical between two consecutive data writes. Apart from data layout configurations or data update strategies, the structure of skyrmion buffer track has been introduced to attach an additional nanotrack onto the access ports of SK-RM for preserving unused skyrmions. During information insert/delete/update, skyrmions can be moved into or out of the buffer tracks. In other words, skyrmions can be reused over multiple data writes without removal. Nevertheless, to the best of our knowledge, few previous designs have considered using buffer tracks for alleviating the insertion or shift overhead. To fully exploit the benefits of skyrmion buffer tracks, the study proposes skyrmion vault to preserve injected skyrmions for future reuse. The proposed concept is realized by skyrmion vault racetrack memory (SKv-RM) with a set of new word-based manipulations that are redesigned with buffer track awareness. The design goal of SKvRM is to maximize the lifespan of skyrmions with minimal injections (See Section 3.2) for energy conservation and performance enhancement. Meanwhile, an over-shifting prevention scheme is included to avoid overshifting skyrmions at the ends of racetracks under dynamic lazy shift scheme [14] (See Section 3.3). When compared with conventional SK-RM, the experimental results show the proposed SKv-RM can reduce energy consumption by up to 56.8%. The rest of this paper is organized as follows. Section 2 describes the background of SK-RM and research motivation. Section 3 describes the proposed SKv-RM. Section 4 then evaluates the performance of SKv-RM. Finally, Section 5 concludes this paper with research remarks. 2 BACKGROUND AND MOTIVATION 2.1 Skyrmion Racetrack Memory Skyrmions, which are vortex-like swirling topologically stable spin configurations, are regarded as great information carriers owing to its stability, small size, and ultra-low shift current density. Based on skyrmions, skyrmion racetrack memory (SK-RM) relies on the presence or absence of skyrmions on the racetrack to represent data bits 1 and 0. Racetracks, also known as nanotracks, have the thickness of 0.4nm with Pt/Co thin films [13] and allow skyrmions to reside on it for representing different data patterns. Skyrmions on racetracks can be detected/injected/removed through access ports that are attached to racetracks. The combination of a racetrack and access ports can be considered the basic unit of SK-RM. A racetrack typically consists of 512 bits to 2048 bits [8]. The number of access ports and distance between each access port, namely inter-port distance, are configured according to the physical layout of SK-RM. The structure and manipulations of SK-RM can be summarized in Figure 1 and please note that control circuits are excluded for better presentation of the skyrmion structure. ! # " ! Figure 1: Structure and manipulations of SK-RM [6], in which current can be applied at the both ends of access ports and the racetrack for manuplicating skyrmions. Figure 1(a) first shows the structure of a skyrmion cell, which is composed of 9 bit zones and 4 access ports. At both ends of the racetrack, overhead regions are included for temporarily holding skyrmions when skyrmions are shifted beyond the leftmost and rightmost access ports. Notably, the interport distance is usually larger than 3 bits, as shown in this example, in practice to lower physical layout size (i.e., 64 to 128 bits) . Figure 1(b) details the component at the intersecting region of access ports and the racetrack. A detector is installed at the intersection region to determine whether a skyrmion exists at the intersecting bit zone for reading the stored bits on the racetrack. On the other hand, writing the data bit 1 or 0 can be achieved by skyrmion injection with the injector. As shown in Figure 1(c), if the value of the data bit is 1, the injector generates a skyrmion, and the injection current, J𝑖𝑛 𝑗𝑒𝑐𝑡 , is applied to the bottom of access ports for shifting the skyrmion into the intersecting bit zone. If the value of the data bit is 0, there is no need for injection since the absence of skyrmions represents data bit 0, which is known as nonskyrmion. Meanwhile, the removal of skyrmions can be achieved by applying current J𝑟𝑒𝑚𝑜𝑣𝑒 from bottom to Top for deleting a data bit from the racetrack, as shown in Figure 1(d). Finally, the shift operation is demonstrated in Figure 1(e), in which the shift current J𝑠ℎ𝑖 𝑓 𝑡 can be applied from Head or Top to either end of the access ports or racetrack and vice versa to right-shift or left-shift all skyrmions on the racetrack at the same time. Notably, as skyrmions can only be detected or injected at the access ports, the energy efficiency and performance of SK-RM greatly depend on the number of access ports. Although increasing the number of access ports can alleviate the shift overhead, the cost and storage density of SK-RM could be affected due to growing number of access ports. As a result, the number of access ports is a trade-off between shift overhead and cost. Based on limited number of access ports, numerous studies [4, 9] have been proposed to alleviate the overhead of shift manipulations through configuring data layout. Meanwhile, 334 Authorized licensed use limited to: National Yang Ming Chiao Tung University. Downloaded on September 12,2023 at 05:59:34 UTC from IEEE Xplore. Restrictions apply. Skyrmion Vault: Maximizing Skyrmion Lifespan for Enabling Low-Power Skyrmion Racetrack Memory as the injection operation consumes more energy than the shift operation, different data write strategies have been proposed. For instance, the Permutation-Write strategy [15] has demonstrated forming the data pattern of the next data write requests through re-permuting existing skyrmions. However, skyrmions still need to be removed or injected when the number of data bit 1 is not identical between two conjunctive write requests. In other words, as unused skyrmions are removed and new skyrmions are injected between data writes, the lifespan of injected skyrmions is still restricted and additional overhead is induced during both inserting and removing skyrmions. 2.2 Motivation To better illustrate the issue of previous Permutation-Write strategy [15] on alleviating the injection overhead of SK-RM, a motivational example is included in Figure 2. As illustrated in the example, the prior strategy relies on the overhead region for temporarily holding skyrmions, which are used to represent previous data patterns, via right-shit manipulations. Then, based on the updated data pattern, those skyrmions are reassembled through left-shift manipulations to represent the updated data pattern. During left-shifting, if the data bit is 0, nonskyrmion is generated at the access port, and no skyrmions will be left-shifted. At the end of left-shifting, those unused skyrmions are removed because overhead regions are mainly used to prevent skyrmions from shifting out of the end of racetracks during data read requests, and no skyrmions can be stored on overhead regions. On the other hand, if the number of data bits 1 in the updated data is larger than that of the previous data pattern, skyrmions still need to be injected for representing data bits 1. In other words, if the number of data bits 1 is inconsistent between continuous data writes, injected skyrmions can not be preserved and still consumes energy due to injection or removal manipulations. When number of different data bits 1 increases, the injections and removals overhead becomes larger. '( & ! ϭϭϭ ) ! ϬϬϭ % & & & ϬϬϭ * Figure 2: Motivational example, which shows that reassembling skyrmions through overhead regions removes skyrmions if the number of data bit 1 is different between two continuous write requests. Recently, with the goal of lowering the number of skyrmion injections, skyrmion buffer tracks have been designed to temporarily cache unused skyrmions on the access ports for future reuse. As shown in Figure 3, skyrmion buffer tracks are additional nanotracks that are attached to the access ports for temporarily caching skyrmions. During removing skyrmions, those skyrmions can be shifted onto skyrmion buffer tracks for future reuse. On the other head, when additional skyrmions are required on racetracks for representing data bits 1, skyrmions can be released from buffer tracks and shifted back to racetracks. However, the lack of a well-designed and buffer-track-aware management strategy prevents existing SK-RMs from fully exploiting the benefits of skyrmion buffer tracks. To extend the lifespan of injected skyrmions for energy conservation, the major technical problem is how to find an efficient method for preserving skyrmions ASPDAC ’23, January 16–19, 2023, Tokyo, Japan over multiple write requests while alleviating the overhead of both shift and injection operations. !" " " " " Figure 3: Structure of skyrmion buffer tracks, which can be viewed as additional nanotracks attached on access ports for caching skyrmions. 3 SKYRMION VAULT RACETRACK MEMORY 3.1 Overview To extend the lifespan of injected skyrmions, this study first presents the concept of skyrmion vault to preserve injected skyrmions on buffer tracks that are attached to access ports of SK-RM. Based on the structure of buffer tracks, the skyrmions vault racetrack memory (SKv-RM) is proposed to reconsider the skyrmion manipulations with the capability of buffering skyrmions at each access port. The feasibility of fabricating skyrmion buffer tracks can be elaborated from the following perspectives. To begin with, the ability of shifting skyrmions over access ports between two adjacent nanotracks is the underlying fundament of buffer tracks structure. According to previous studies [7, 16], moving skyrmions between two adjacent nanotracks has been proposed and conducted. In addition, Gnoli et al. [3] has demonstrated complex Logic-In-Memory (LIM) operations of manipulating skyrmions for logic computation on nanotracks. Therefore, moving skyrmions onto buffer tracks through access ports for buffering skyrmions is feasible. Meanwhile, including additional tracks with SK-RM will not induce excessive area overhead because nanotracks are fabricated through a few layers of films with 0.4nm thickness. In addition, as shown in Figure 4, nanotracks are much smaller than the CMOS used for shifting and detecting skyrmions [8]. Moreover, this design will not increase the process complexity since nanotracks are composed of a few layers of films and can be made through single photolithography. Finally, as the main purpose of skyrmion buffer tracks is to reduce skyrmion injections from the device level, the power consumption can actually be reduced by the lowered amount of skyrmion injections and data transfers. In summary, introducing buffer tracks on SK-RM is feasible from the point of view of the area, manufacturing process, and energy consumption. The missing element for fully exploiting the benefits of skyrmion buffer tracks is a set of skyrmion manipulations that consider buffer tracks for reducing energy consumption and enhancing access performance. +, +, - +,. Figure 4: Size comparison between shift/access MOS and nanotracks [8]. The size difference demonstrates that adding new nanotracks for buffering skyrmions will not induce excessive overhead as nanotracks are small. 335 Authorized licensed use limited to: National Yang Ming Chiao Tung University. Downloaded on September 12,2023 at 05:59:34 UTC from IEEE Xplore. Restrictions apply. ASPDAC ’23, January 16–19, 2023, Tokyo, Japan 3.2 Chen et al. Operations of SKv-RM Algorithm 2: SKv-RM operations (cond’t). To design SKv-RM manipulations with buffer track awareness, this paper considers the multi-word-based structure to store data with the unit of a word (i.e., 32 or 64 bits) and makes multiple words to share an access port for detecting and injecting skyrmions. In other words, multiple words are placed between two access ports. The unit of a word is regarded as the smallest unit when addressing data, and the data stored on SKv-RM is addressed by word address. Notably, the word unit is chosen as the basic unit in the proposed SKv-RM because most modern processors also access the memory content in the unit of a word. Under the multi-word-based structure, manipulations of SKv-RM are designed to manipulate a word at a time through the basic detect/insert/remove/shift operations. 1 2 3 4 5 6 7 8 9 10 11 12 13 Algorithm 1: SKv-RM operations. Input: 𝑂𝑝𝑟 ., 𝑁𝑢𝑚𝑃 , 𝑆𝑖𝑧𝑒𝐵 , 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 , 𝐴𝑑𝑑𝑟 𝐷 , 𝑆𝑖𝑧𝑒𝐷 , 𝑃𝑂𝑆 [0...𝑃 − 1], 𝐵𝑈 𝐹 [0...𝑃 − 1] 1 leftmost_end ← 𝑃𝑂𝑆 [0] - 𝑆𝑖𝑧𝑒𝑂 ; 2 rightmost_end ← 𝑃𝑂𝑆 [𝑃 − 1] + 𝑆𝑖𝑧𝑒𝑂 ; 3 closest_port ← the closest port in 𝑃𝑂𝑆 [0...𝑃 − 1] to 𝐴𝑑𝑑𝑟 𝐷 ; 4 shift_distance ← the address difference between 𝐴𝑑𝑑𝑟 𝐷 and closest_port; 5 shift_distance ← prevent_overshift(𝑃𝑛𝑢𝑚 , 𝑃𝑂𝑆 [0...𝑃 − 1], 𝐴𝑑𝑑𝑟 𝐷 , shift_distance, leftmost_end, rightmost_end); 6 Shift skyrmions left/right for shift_distance steps; 7 Update 𝑃𝑂𝑆 [0...𝑃 − 1] accordingly; 8 if 𝑂𝑝𝑟 . == Read then 9 Initialize 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 for i = 1:N do 10 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 [𝑖] ← bit that been detected ; 11 Shift left/right 1 step ; 12 end 13 Update 𝑃𝑂𝑆 [0...𝑃 − 1] accordingly; 14 else if 𝑂𝑝𝑟 . == Write then 15 for i = 1:N do 16 if 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 [𝑖] == 0 then 17 Shift left/right to create nonskyrmion; 18 else 19 if BUF[closest_port] > 0 then 20 Shift from buffer track for insertion; 21 BUF[closest_port] -= 1; 22 else 23 Inject from closest_port then Shift; 24 end 25 end 26 end 27 else if 𝑂𝑝𝑟 . == Delete then 28 for i = 1:N do 29 delete_bit ← bit that been detected; 30 if BUF[closest_port] < 𝑆𝑖𝑧𝑒𝐵 and delete_bit is data bit 1 then 31 Shift skyrmions into buffer track; 32 BUF[closest_port] += 1 ; 33 else 34 Remove through access port closest_port; 35 end 36 end 14 15 16 17 18 19 20 21 22 23 else // Update for i = 1:N do delete_bit ← bit that been detected; if BUF[closest_port] < 𝑆𝑖𝑧𝑒𝐵 and delete_bit is data bit 1 then Shift skyrmions into buffer track; BUF[closest_port] += 1 ; else Remove through access port closest_port; end end for i = 1:N do if 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 [𝑖] == 0 then Shift left/right to create nonskyrmion for data bit 0; else if BUF[closest_port] > 0 then Shift from buffer track for insertion; BUF[closest_port] -= 1 ; else Inject from closest_port then Shift; end end end end utilize buffer tracks. The structure of the proposed SKv-RM can be illustrated as Figure 5 and manipulations of SKv-RM can be summarized as Algorithms 1 and 2. Notably, in these algorithms, 𝑂𝑝𝑟 . denotes the incoming operations issued to SKv-RM, while 𝑁𝑢𝑚𝑃 and 𝑆𝑖𝑧𝑒𝐵 represent the number of access ports and the size of buffer tracks, respectively. The word address of incoming data is 𝐴𝑑𝑑𝑟 𝐷 with its data buffer, 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 . The size of the overhead region is 𝑆𝑖𝑧𝑒𝑂 . Then, 𝑃𝑂𝑆 [1...𝑃] is used to track the current address that each access port, while 𝐵𝑈 𝐹 [1...𝑃] tracks the number of skyrmions on the buffer tracks at each access port. At the beginning of Algorithm 1, the leftmost and rightmost ends of the racetrack is initialized based on 𝑃𝑂𝑆 [0], 𝑃𝑂𝑆 [𝑃 − 1], and 𝑆𝑖𝑧𝑒𝑂 . Then, based on the address of data 𝐴𝑑𝑑𝑟 𝐷 , the closest access port is found based on the current address of access ports, 𝑃𝑂𝑆 [1...𝑃], and data address, 𝐴𝑑𝑑𝑟 𝐷 . Next, to prevent data from over-shifting the end of racetracks, the function, prevent_overshift, (See Algorithm 2) is utilized to determine whether the previous derived shift distance returns will exceed the leftmost or rightmost ends of the racetrack. Then, based on the incoming operations, 𝑂𝑝𝑟 ., Algorithm 1 can be +, " #$%&Ͳ'( " &*+, )Ͳ! To effectively prolong the lifespan of skyrmions through buffer tracks, SKv-RM proposed the four word-based and skyrmion-aware operations, which are read, write, delete, and update, to effectively Figure 5: Example of word-based address with 64-bits word, in which the POS records the word address that access ports point to. For example, POS[0] has the value of 0 for pointing at word 0. Then, if skyrmions are shifted by 64 steps, POS[0] becomes 1. 336 Authorized licensed use limited to: National Yang Ming Chiao Tung University. Downloaded on September 12,2023 at 05:59:34 UTC from IEEE Xplore. Restrictions apply. Skyrmion Vault: Maximizing Skyrmion Lifespan for Enabling Low-Power Skyrmion Racetrack Memory divided into four parts to conduct word-based read, write, delete, and update, respectively. For word-based read operations, the data bits of access address, 𝐴𝑑𝑑𝑟 𝐷 , is shifted through the access port to detect the presence of skyrmions for determining the data bit value. Then, those detected bits will be filled into 𝐷𝑎𝑡𝑎𝑏𝑢 𝑓 [𝑖] and the position of access ports, 𝑃𝑂𝑆 [0...𝑃 − 1], will be updated accordingly. Next, for word-based write operations, skyrmions could either be shifted from buffer tracks of the access port, closest_port, or be injected through the skyrmion injection operation. This approach allows SKv-RM to reuse skyrmion from previous data writes and be able to prolong the lifespan of injected skyrmions over multiple data writes. On the other hand, the word-based delete operation is an inverse version of word-based write operations, as skyrmions are shifted into buffer tracks before buffer tracks are full. Notably, even though skyrmions could still be removed if the buffer track at closest_port is full, most skyrmions will still be reused for composing new data patterns. In addition, the size of buffer tracks could be enlarged to further reduce the number of removed skyrmions. Finally, the word-based update operation is a combination of word-based remove and write operations. This is because the data pattern of a word could only be updated if the previous data pattern is deleted. 3.3 Over-Shifting Prevention scheme Under the multi-word architecture, SKv-RM utilizes one access port to access multiple words on racetracks. When shifting skyrmions to the closest access ports, skyrmions may be overshifted at the leftmost or rightmost ends of the racetracks. Overshifting skyrmions at either end of racetracks leads to data loss as skyrmions no longer exist. This condition is also very common if the dynamic lazy shift scheme [14] is utilized, because the dynamic lazy shift scheme will not shift skyrmions back to their original states after shift operations. In other words, the word address that the access port points at after every shift operations could be different. Please note that the dynamic lazy shift scheme is originally designed for domain-wall racetrack memory and cannot be directly applied on SK-RM due to the overshifting issue. Therefore, to prevent the issue of overshifting, SKv-RM includes the over-shifting prevention scheme to double-check the shift distance based on the current position of access ports and address of the accessed word. In this scheme, the shift distance will be added to the rightmost end or subtracted from the leftmost end of the racetracks to determine whether the shift operations will exceed the ends. If the shift distance of shifting to the closest access port leads to the overshifting issue, the access port next to the closest access port will be assigned as the access port. A new shift distance will be derived and returned. The above procedure is summarized as Algorithm 2. 4 PERFORMANCE EVALUATION 4.1 Experiment Setup To evaluate the effectiveness of SKv-RM in terms of reducing energy consumption and prolonging the lifespan of skyrmions, a set of tracedriven experiments are conducted through an in-house simulator. Please note that as one of the design goals in this study is prolonging skyrmions’ lifespan and measuring lifespan could be challenging in real-world SKv-RM, this section chose simulation for better focusing on evaluating the proposed SKv-RM. Trace logs are collected from Yahoo! Cloud Serving Benchmark (YCSB) [1] with 1 KB record size and ten million operations. Then, as data update requests are the main source of injection and remove operations on SK-RM, three ASPDAC ’23, January 16–19, 2023, Tokyo, Japan Algorithm 3: Over-shifting prevention scheme 1 2 3 4 5 6 7 8 9 10 11 12 13 Function prevent_overshift(𝑃𝑛𝑢𝑚 , 𝑃𝑂𝑆 [0...𝑃 − 1], 𝐴𝑑𝑑𝑟 𝐷 , shift_distance, leftmost_end, rightmost_end): if shift_distance > 0 then if POS[0] - shift_distance < leftmost_end then 𝑃𝑛𝑢𝑚 ← P𝑛 - 1 ; end else if POS[P-1] + shift_distance > rightmost_end then 𝑃𝑛𝑢𝑚 ← P𝑛 + 1 ; end end shift_distance ← the address difference between 𝐴𝑑𝑑𝑟 𝐷 and 𝑃𝑂𝑆 [𝑃𝑛𝑢𝑚 ]; return shift_distance End Function workloads from YCSB are chosen for representing average-case and worst-case scenarios. Workload a have 50% data update requests and can be regarded as the average-case scenario. Workload b and Workload c have 5% and 0% of data update requests, which are used to represent the worst-case scenario. Then, to study the best-case scenario, a self-generated workload, 100% Update, is also included. Based on these four workloads, the results of SKv-RM are compared with conventional SK-RM and the Permutation-Write (PW) strategy [15]. Energy consumption parameters of each skyrmion operation are provided by a domain expert, which are summarized in Table 1. Table 1: Energy consumption of skyrmion operations. Operations Energy 4.2 Detect 2 fJ Shift 20 fJ Remove 20 fJ Insert 200 fJ Experimental Results In our experiment, the size of a word and inter-port distance are set as 64 bits and 8 words, respectively. Under this setting, the number of skyrmion injection/shift/remove operations are reported as Figures 6 to 8. Figure 6 first shows that SKv-RM can reduce the number of injection operations under Workload a, Workload b, and 100% Update workload. This is because, during data update requests, injected skyrmions are stored on the buffer tracks and reused for composing new data patterns. The average reduced percentages are 96.9% and 63.8%, compared with conventional SK-RM and the PermutationWrite (PW) strategy, respectively. For Workload c, the number of injection operations is not reduced because there are no data update requests and no skyrmions are reused. For remove operations, Figure 7 also shows positive reductions in workloads with data update requests. Similarly, no remove operations are induced under Workload c because there are no data update requests. As SKv-RM introduces the over-shifting prevention scheme in combination with the dynamic lazy shift scheme, the number of shift operations is lowered. As shown in Figure 8, the shift operation can be reduced by 36.1% and 36.2% on average, compared with conventional SK-RM and PW strategy. In other words, after introducing buffer tracks for preserving injected skyrmions via shift operations, the number of shift operations is not amplified. The experimental results of energy consumption and skyrmions’ lifespan are summarized in Figures 9 to 11. As these figures show, when compared with conventional SK-RM, SKv-RM can effectively 337 Authorized licensed use limited to: National Yang Ming Chiao Tung University. Downloaded on September 12,2023 at 05:59:34 UTC from IEEE Xplore. Restrictions apply. *&&& *&& *& * *&& *& * Figure 7: Remove operations comparison. 56 56 *8& *+& *,& *&& **& 9& :& 8& ,& $) 3& 7& +& *& ) - ) -! ) - *&&. / &8 * " -= -0>4 , +8 + *8 * 5 CONCLUSION To resolve the high energy consumption and latency issue of the skyrmion injection operations, this study introduces SKv-RM to utilize buffer tracks for extending the lifespan of injected skyrmions. The feasibility of manufacturing SKv-RM is also discussed from various perspectives, including area, skyrmion manipulation, and energy consumption. In the proposed SKv-RM, word-based operations are introduced to read/write/update/delete words on SKv-RM while using skyrmion buffer tracks to reuse injected skyrmions. In addition, an over-shifting prevention scheme is included to prevent skyrmions from shifting out of the ends of the racetracks to prevent data loss. The evaluation results show that, when compared with conventional SK-RM, SKv-RM can effectively reduce the energy consumption by upto 56.8% and prolong the lifespan of skyrmions by up to 57.3x. ACKNOWLEDGMENTS This work was supported in part by National Science and Technology Council under grant no. 109-2222-E-027-007-MY3, 111-2221-E-027-076-MY3, 111-2223E-001-001, 111-2923-E-002-014-MY3, 111-2221-E-001-013-MY3, 111-2221-E008-058-MY3, and 111-2628-E-008-002-MY3 and Academia Sinica under grant nos. AS-IA-111-M01 and AS-GCS-110-08. REFERENCES [1] B. F. Cooper, R. Ramakrishnan, U. Srivastava, A. Silberstein, P. Bohannon, H.-A. Jacobsen, N. Puz, D. Weaver, and R. Yerneni, “Pnuts: Yahoo!’s hosted data serving platform,” IN PROC. 34TH VLDB, Tech. Rep., 2008. [2] A. Fert, V. Cros, and J. Sampaio, “Skyrmions on the track,” Nature Nanotechnology, vol. 8, no. 3, pp. 152–156, Mar 2013. [Online]. Available: https://doi.org/10.1038/ nnano.2013.29 [3] L. Gnoli, F. Riente, M. Vacca, M. Ruo Roch, and M. Graziano, “Skyrmion logic-in-memory architecture for maximum/minimum search,” Electronics, vol. 10, *&&. / Figure 8: Shift operations comparison. 56 $) 56 *&& *& * ) - ) -! ) - Figure 10: Energy consumption comparison Figure 11: Comparison Figure 9: Energy consumption comparison. with different buffer track size. skyrmions’ lifespan. reduce the energy consumption by upto 56.8% and prolong the lifespan of skyrmions by up to 57.3x. Furthermore, according to Figure 10, the energy consumption can still be reduced when the size of buffer tracks is only half the word size. 56 ) - ) -! ) - 56 <& $) ,8 *&&. / 4 $) *#&&& ) -) -!) - 2 ;-01-*&2&9-4 2 ;-01-*&2&9-4 56 56 *&#&&& *&&. / Figure 6: Injection operations comparison. 56 -01-*&2&8- ) - ) -! ) - $) '"! ---01-*&2&94 56 56 ? $) '"! -- -01-*&2&74 '"! -- -01-*&2&34 56 of *&&. / average no. 2, 2021. [Online]. Available: https://www.mdpi.com/2079-9292/10/2/155 [4] S. Gu, E. H.-M. Sha, Q. Zhuge, Y. Chen, and J. Hu, “Area and performance co-optimization for domain wall memory in application-specific embedded systems,” in Proceedings of the 52nd Annual Design Automation Conference, ser. DAC ’15. New York, NY, USA: Association for Computing Machinery, 2015. [Online]. Available: https://doi.org/10.1145/2744769.2744800 [5] Y. S. Hsieh, P. C. Huang, P. X. Chen, Y. H. Chang, W. Kang, M. C. Yang, and W. K. Shih, “Shift-limited sort: Optimizing sorting performance on skyrmion memorybased systems,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems, vol. 39, no. 11, pp. 4115–4128, 2020. [6] W. Kang, Y. Huang, C. Zheng, W. Lv, N. Lei, Y. Zhang, X. Zhang, Y. Zhou, and W. Zhao, “Voltage controlled magnetic skyrmion motion for racetrack memory,” Scientific Reports, vol. 6, no. 1, p. 23164, Mar 2016. [Online]. Available: https://doi.org/10.1038/srep23164 [7] W. Kang, B. Wu, X. Chen, D. Zhu, Z. Wang, X. Zhang, Y. Zhou, Y. Zhang, and W. Zhao, “A comparative cross-layer study on racetrack memories,” ACM Journal on Emerging Technologies in Computing Systems (JETC), vol. 16, pp. 1 – 17, 2020. [8] Z. Liang, G. Sun, W. Kang, X. Chen, and W. Zhao, “Zuma: Enabling direct insertion/deletion operations with emerging skyrmion racetrack memory,” in 2019 56th ACM/IEEE Design Automation Conference (DAC), 2019, pp. 1–6. [9] H. Mao, C. Zhang, G. Sun, and J. Shu, “Exploring data placement in racetrack memory based scratchpad memory,” in 2015 IEEE Non-Volatile Memory System and Applications Symposium (NVMSA), 2015, pp. 1–5. [10] S. Mühlbauer, B. Binz, F. Jonietz, C. Pfleiderer, A. Rosch, A. Neubauer, R. Georgii, and P. Böni, “Skyrmion lattice in a chiral magnet,” Science, vol. 323, no. 5916, pp. 915–919, 2009. [Online]. Available: https://science.sciencemag.org/content/323/5916/915 [11] S. S. P. Parkin, M. Hayashi, and L. Thomas, “Magnetic domain-wall racetrack memory,” Science, vol. 320, no. 5873, pp. 190–194, 2008. [Online]. Available: https://science.sciencemag.org/content/320/5873/190 [12] R. Tomasello, E. Martinez, R. Zivieri, L. Torres, M. Carpentieri, and G. Finocchio, “A strategy for the design of skyrmion racetrack memories,” Scientific Reports, vol. 4, no. 1, p. 6784, Oct 2014. [Online]. Available: https://doi.org/10.1038/srep06784 [13] H. Vakili, W. Zhou, C. T. Ma, M. G. Morshed, M. N. Sakib, T. Hartnett, J.-W. Xu, K. Litzius, Y. Quessab, P. Balachandran, M. Stan, S. J. Poon, A. D. Kent, G. Beach, and A. W. Ghosh, “Computing and memory technologies based on magnetic skyrmions,” 2021. [14] R. Venkatesan, V. Kozhikkottu, C. Augustine, A. Raychowdhury, K. Roy, and A. Raghunathan, “Tapecache: a high density, energy efficient cache based on domain wall memory,” in Proceedings of the 2012 ACM/IEEE international symposium on Low power electronics and design, 2012, pp. 185–190. [15] T. Y. Yang, M. C. Yang, J. Li, and W. Kang, “Permutation-write: Optimizing write performance and energy for skyrmion racetrack memory,” in 2020 57th ACM/IEEE Design Automation Conference (DAC), 2020, pp. 1–6. [16] D. Zhu, W. Kang, S. Li, Y. Huang, X. Zhang, Y. Zhou, and W. Zhao, “Skyrmion racetrack memory with random information update/deletion/insertion,” IEEE Transactions on Electron Devices, vol. 65, no. 1, pp. 87–95, 2018. 338 Authorized licensed use limited to: National Yang Ming Chiao Tung University. Downloaded on September 12,2023 at 05:59:34 UTC from IEEE Xplore. Restrictions apply.