Scratchpad memory(SPM)is an on-chip memory.It is located in the cache layer and can be controlled by software.However,due to the problems of poor scalability,low storage density,and high static energy consumption in SRAM which is one part of traditional SPM has seriously affected the performance of the system.Non-volatile memory(NVM),which has the reading speed comparable to traditional memory,ultra-low static energy consumption and high-density storage advantages,is regarded as a new type of memory that is expected to replace traditional memory,but the problems of low storage density of its single-level cells(SLC)and weak access performance of its multi-level cells(MLC)have become a major problem to replace traditional memory.In order to solve many of the above problems,the thesis uses the mutual conversion between the two SLC/MLC storage units in NVM and the complementary advantages of the two storage units in terms of performance and storage capacity to implement a new storage architecture with variable SPM.The task assignment algorithm and the data assignment algorithm are designed to achieve the goal that the task set meets the real-time requirements while the system energy consumption is small.The main work of the thesis includes:1.Based on the variable SPM structure of SLC/MLC,an offline real-time task assignment algorithm based on variable SPM is proposed.The algorithm uses profiling tools to make statistics on the read and write of tasks.According to the read and write characteristics of each task,it combines the conversion between SLC and MLC,and uses the complementary advantages of the two storage units in performance and storage capacity to construct a new variable SPM architecture that meets the needs of task sets.Consider the constraints such as access cost,storage size,and real-time performance of various storage media in the new architecture,construct an integer linear programming model,design an approximate optimal algorithm,and make the task set achieve the purpose of lowest energy consumption under real-time guarantee.2.Based on the variable SPM structure of SLC/MLC,a variable-level data allocation strategy is proposed,which has finer granularity and better system performance.According to the reading and writing characteristics of specific variables in the task,considering the difference in access performance of different storage media,the data allocation problem is constructed into an ILP(Integer Linear Programming)model,and an optimal variable-level data allocation algorithm is proposed.On the basis of further reducing the data access energy consumption,thereby optimizing system performance.3.The simulator is used to simulate the system based on SLC/MLC variable SPM architecture and the experiment is conducted.The experimental results show that the above two optimization algorithms can effectively reduce the energy consumption of the system and ensure the real-time nature of the task set in the system.In the thesis,we use the characteristics of non-volatile memory to study real-time task allocation and data allocation strategies to promote the development of embedded storage systems and make it possible for NVM to replace traditional memory. |