KR20110067795A - Tightly-coupled memory management method to improve responsibility of real-time processes - Google Patents

Tightly-coupled memory management method to improve responsibility of real-time processes Download PDF

Info

Publication number
KR20110067795A
KR20110067795A KR1020090124543A KR20090124543A KR20110067795A KR 20110067795 A KR20110067795 A KR 20110067795A KR 1020090124543 A KR1020090124543 A KR 1020090124543A KR 20090124543 A KR20090124543 A KR 20090124543A KR 20110067795 A KR20110067795 A KR 20110067795A
Authority
KR
South Korea
Prior art keywords
memory
tcm
information
tightly
computer
Prior art date
Application number
KR1020090124543A
Other languages
Korean (ko)
Inventor
강동욱
천한성
박호준
임채덕
임동선
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020090124543A priority Critical patent/KR20110067795A/en
Publication of KR20110067795A publication Critical patent/KR20110067795A/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE: A tightly-coupled memory management method is provided to improve the response of real-time processes by determining the page to be loaded on the TCM in consideration of a process priority or memory address accessed to TCM, access frequency and recent access time. CONSTITUTION: A process to be saved in a tightly-coupled memory (TCM) requests the access to TCM(210). The TCM transfers the process or the memory information to a TCM manager(220). The process information includes the priority information. The memory information includes the address of the accessed memory, access frequency and recent access time. The TCM manager determines a memory page to be loaded on TCM in consideration of the information on the process or the memory, and then executes the load(230).

Description

실시간 프로세스의 응답성 개선을 위한 TCM운용방법{Tightly-coupled memory management method to improve responsibility of real-time processes}Tightly-coupled memory management method to improve responsibility of real-time processes

본 발명은 프로세스의 우선순위 정보 또는 TCM에 접근되는 메모리 주소, 접근 빈도, 최근 접근 시간등을 고려하여 TCM에 적재할 페이지를 결정함으로써 실시간 프로세스의 응답성을 개선할 수 있는 TCM(tightly-coupled memory) 운용 방법에 관한 것이다.According to the present invention, the TCM (tightly-coupled memory) can improve the responsiveness of the real-time process by determining the pages to be loaded in the TCM in consideration of process priority information or a memory address, access frequency, and recent access time. It is about an operation method.

본 발명은 지식경제부의 IT성장동력기술개발사업의 일환으로 수행한 연구로부터 도출된 것이다[과제관리번호: 2009-S-029-01, 과제명: 정보 산업기기용 임베디드SW 공통 플랫폼 개발]. The present invention is derived from a study conducted as part of the IT growth engine technology development project of the Ministry of Knowledge Economy [Task management number: 2009-S-029-01, Task name: Development of embedded SW common platform for information industrial equipment].

메모리는 컴퓨터가 필요로 하는 정보, 컴퓨터가 자료를 처리하여 얻은 결과 등을 저장하는 기능을 갖는 장치를 말한다. 메모리는 데이터를 저장해야 하는 기간이 얼마인지, 얼마나 자주 사용하는 정보인지 등의 차이에 따라 그 종류가 달라진다. A memory is a device having a function of storing information required by a computer and results obtained by processing data. The type of memory varies depending on the difference between how long the data should be stored and how often it is used.

컴퓨터가 자료를 처리하려면 그 자료와 이를 처리할 수 있는 프로그램을 저장할 수 있는 곳이 있어야 한다. CPU(처리장치)로 프로그램을 불러내어 처리하는 과정에서 일시적인 저장이 필요하기도 하고, 또한 지금 바로 처리장치가 필요로 하지 않는 자료와 프로그램을 얼마동안 보존했다가 필요할 때 꺼내서 사용할 수 있는 저장장치도 필요하다. 이러한 저장 기능을 담당하는 장치를 메모리라고 한다.In order for a computer to process data, it must have a place to store it and a program that can process it. In the process of calling and processing a program to the CPU (processing unit), it is necessary to temporarily store it, and also a storage unit that can store data and programs that are not needed by the processing unit for a while and then take it out when needed. Do. The device responsible for this storage function is called a memory.

메모리는 읽고 쓰는 속도에 비례하여 가격이 비싸기 때문에, 처리장치와 직접 연결된 메모리는 작은 용량의 속도가 빠른 것으로 구성하여 처리 속도를 높이고, 대량의 자료 저장을 위해서는 속도는 느리지만 가격이 싼 것으로 구성하여 비용과 성능을 감안하여 컴퓨터 시스템을 구성하는 것이 대부분이다. 이처럼 한 시스템에서 여러 종류의 기억장치를 연결하여 속도와 저장량을 보완한 구조체를 메모리 계층이라 한다. 메모리 계층은 크게 3단계로 구분할 수가 있다. Since memory is expensive in proportion to the speed of reading and writing, the memory directly connected to the processing unit is composed of a small amount of high speed to increase the processing speed, and a slow but inexpensive price for storing a large amount of data. Most of the computer systems are constructed in consideration of cost and performance. As such, a structure that complements speed and storage by connecting several types of storage devices in one system is called a memory hierarchy. The memory hierarchy can be divided into three stages.

첫째, 중앙처리장치에 내장되는 메모리로서 처리장치와 속도가 비슷한 플립플롭으로 이루어진 레지스터들을 말하며, 이들은 명령이나 자료들을 일시적으로 저장하는 역할을 하며 버퍼(buffer) 또는 캐시 메모리라고 한다. First, it is a memory that is embedded in the central processing unit and consists of flip-flops having a speed similar to that of the processing unit. These registers temporarily store instructions or data and are called buffers or cache memories.

둘째, 주기억장치로서 컴퓨터가 작동하는 동안 처리장치가 필요로 하는 일이 많은 프로그램 명령어와 자료를 저장하고 있는 메모리이다. 비교적 용량이 크고 속도도 빠르다. 이 장치의 특징은 CPU(중앙처리장치) 명령에 의하여 기억된 장소에 직접 접근하여 쓰고 읽을 수 있다. 여기에 사용되는 소자에는 램(RAM)을 비롯하여 여러가지 소자들이 있다. Second, the main memory is a memory that stores a lot of program instructions and data while the computer is running. Relatively large and fast. The feature of this device is that it can directly access, write and read the place stored by CPU (Central Processing Unit) instructions. Devices used here include a variety of devices, including RAM.

셋째, 보조기억장치로서 용량은 크지만 기계적인 부품들이 연결되기 때문에 속도는 주기억장치에 비하여 상당히 느리다. 이는 입력되는 자료와 처리결과를 보관하거나, CPU(중앙처리장치)에서 계속적으로 필요로 하지 않는 각종 프로그램들을 저장하는 데 사용한다. 가장 대표적인 것이 자기 디스크이다. Third, the speed is considerably slower than the main memory because of the large capacity as the auxiliary memory but the mechanical parts are connected. It is used to store input data and processing results, or to store various programs that are not continuously needed by the CPU (central processing unit). The most representative one is a magnetic disk.

여기서, 캐시 메모리에 대해서 좀더 자세히 살펴보면, 캐시 메모리는 워크스테이션이나 중대형 컴퓨터의 기본처리장치 속에 내장되어 있는 고속 메모리를 말한다. Here, a closer look at the cache memory, the cache memory is a high-speed memory embedded in the basic processing unit of the workstation or medium-large computer.

즉, 캐시 메모리는 컴퓨터 속에 장착하여 속도를 빠르게 하는 임시 메모리이다. 컴퓨터의 속도를 측정할 때, 그 속도는 주로 CPU(중앙처리장치)의 속도에 의하여 좌우된다. 이는 CPU의 속도에 의해 컴퓨터의 속도가 결정될 정도로 CPU에 비해 상대적으로 주변기기의 속도가 매우 느리다는 것을 뜻한다. 이러한 문제점을 해결하기 위하여 주변기기의 속도를 빠르게 하는 대표적인 방법이 캐시 메모리이다. 캐시 메모리에는 램캐시(외부캐시), 내부캐시, 디스크 캐시 등 여러 종류의 캐시가 있다. In other words, cache memory is a temporary memory that is installed in a computer to speed up. When measuring the speed of a computer, the speed depends mainly on the speed of the CPU (central processing unit). This means that the peripherals are very slow compared to the CPU so that the speed of the computer is determined by the speed of the CPU. In order to solve this problem, a representative method of speeding up a peripheral device is a cache memory. There are several types of caches in cache memory, including RAM cache (external cache), internal cache, and disk cache.

하드디스크의 속도는 램보다 매우 느리다. 매번 프로그램을 실행시킬 때마다 디스크를 읽어야 하므로 속도가 느릴 수 밖에 없다. 따라서 램과 디스크 사이에 일정량의 임시 메모리를 만들고 처음 프로그램을 실행할 때 램으로 들어오는 내용을 그 임시 메모리에도 보관한다. 그런 다음, 프로그램을 실행시키면 하드디스크가 아닌 임시메모리에서 읽어오게 되기 때문에 읽어오는 시간이 매우 빨라지게 된다. 이 임시 메모리를 캐시 메모리라고 한다. Hard disks are much slower than RAM. It is slow because you have to read the disk every time you run the program. Thus, a certain amount of temporary memory is created between RAM and disk, and the first time the program is run, the contents of RAM are also stored in that temporary memory. Then, when you run the program, it reads from the temporary memory instead of the hard disk, which makes the read time much faster. This temporary memory is called cache memory.

캐시메모리는 퍼스널컴퓨터(PC)에서도 사용되며, 수 10메가바이트의 주기억 장치에 대해 수 10킬로바이트의 캐시메모리를 갖추고 있다. 캐시 메모리를 내부에 장착한 마이크로 프로세서도 있다. CPU 내부의 캐시를 두개로 늘리면 속도는 더욱 빨라지게 되는데, 이때 각각의 명령처리를 위한 캐시와 데이터 처리를 위한 캐시로 사용될 수 있다.Cache memory is also used in personal computers (PCs) and has several ten kilobytes of cache memory for several ten megabytes of main memory. There is also a microprocessor with cache memory inside. Increasing the cache inside the CPU to two speeds is faster, and can be used as a cache for each instruction processing and a cache for data processing.

반면에, 멀티프로세싱(multiprocessing)은 컴퓨터 시스템의 처리 능력을 높이기 위하여 2대 이상의 CPU를 이용하여 2개 이상의 작업을 동시에 병렬로 처리하는 형태를 말한다. Multiprocessing, on the other hand, refers to a form in which two or more tasks are simultaneously processed in parallel using two or more CPUs in order to increase processing power of a computer system.

멀티프로세싱은 여러 대의 처리기(processor)가 제각기 다른 명령을 병렬로 수행하기 때문에 전체적인 작접 속도와 신뢰성을 높일 수 있다는 것이 가장 큰 특징이다. 하나의 처리기로는 아무리 성능을 향상시킨다고 해도 많은 작업을 신속하게 처리하는데 한계가 있기 때문에 많게는 수천개의 처리기를 사용하여 고속 컴퓨터 시스템을 구축하려는 것이다. Multiprocessing is characterized by the fact that several processors execute different instructions in parallel, increasing overall speed and reliability. One processor is limited in speeding up a lot of work, no matter how much it can improve performance, so you want to build a high-speed computer system using as many as thousands of processors.

다수의 처리기가 하나의 주기억장치를 공유하면서 단일한 운영체제에서 운용되는 형태를 밀결합(tightly-coupled) 또는 강결합이라 하고, 각 CPU가 독립된 주기억장치를 가지고 통신으로 연결되어 작업을 진행하는 형태를 소결합(loosely-coupled)이라 한다. Multiple processors share a single main memory and operate on a single operating system, called tightly-coupled or tightly coupled, and each CPU has an independent main memory to communicate with each other and work. It is called loosely-coupled.

일반적으로는 밀결합(tightly-coupled)을 가리키며, 밀결합(tightly-coupled)에서도 주로 대칭형 다중처리(symmetric multiprocessing) 방식을 말한다. 대칭형 다중처리는 여러 개의 CPU를 탑재한 병렬 컴퓨터에서 CPU 들이 모두 동등한 위치에 있는 시스템이다. 모든 처리기와 입출력장치, 기억장치를 한 운영체제 아래 두어서 관리하므로 입출력장치 연결을 자유롭게 할 수 있고, 작업 분담도 효과적으로 할 수 있다. Generally refers to tightly-coupled, and even tightly-coupled refers mainly to symmetric multiprocessing. Symmetric multiprocessing is a system where the CPUs are all in the same position in a parallel computer with multiple CPUs. All processors, I / O devices, and memory devices are managed under one operating system, so I / O devices can be connected freely and work can be effectively shared.

이 방식을 이용하면 한 처리기가 고장나도 운영체제(OS)에서 문제의 처리기를 제거해 주므로 작업을 계속할 수 있으며, 한 처리기에서 실행하던 작업을 다른 처리기로 옮겨 실행할 수도 있다. 또한 여러 처리기가 협력하여 하나의 작업을 수행할 수도 있다. This way, if one processor fails, the operating system (OS) removes the problem handler, so you can continue working, and you can even transfer jobs from one processor to another. It is also possible for several processors to work together to perform a single task.

다만, 여러 처리기들이 한 운영체제를 사용하므로 같은 자원을 요구하는 CPU들간의 경쟁을 제어할 수 있어야 하고 CPU 이용의 스케쥴을 효과적으로 할 필요가 있다. 다중도가 커지면 시스템의 종합적인 처리능력은 증대하지만 한 프로그램만 두고 보면 여전히 1대의 CPU로 하나의 작업을 처리하고 있는 셈이며, 오히려 다중작업 때문에 기다리는 시간이 늘어날 수도 있기 때문이다. However, since several processors use the same operating system, it is necessary to be able to control the competition between CPUs requiring the same resources and to schedule the CPU utilization effectively. As the multiplicity increases, the overall processing power of the system increases, but one program still handles one task with one CPU.

TCM(tight-coupled memory)은 자주 사용되는 코드를 담아두어 고속으로 데이터 연산을 수행할 때 쓰이는 메모리이다.TCM (tight-coupled memory) is a memory used to perform data operations at high speed by containing frequently used code.

위에서 언급한 캐시메모리와 TCM(tighted-coupled memory)의 차이점에 대하여 살펴보면, 캐시 메모리가 전반적인 속도 향상을 가능하게 하지만, 완벽하게 실시간(real-time)으로 저장이나 로딩이 되지 않는 단점이 있다. 따라서 정확한 시간 타이밍을 맞추기 위하여 TCM을 사용하기도 한다. Looking at the difference between the above mentioned cache memory and tight-coupled memory (TCM), the cache memory can improve the overall speed, but the disadvantage is that it is not completely stored or loaded in real time. Therefore, the TCM can be used to achieve accurate timing.

또한 캐시 메모리가 마이크로프로세서에서 지원하는 방법에 의해서만 적재 데이터를 선택하는 것과는 달리, TCM은 소프트웨어에서 적재될 데이터를 선택할 수 있어서 보다 유연한 운용이 가능하다.Also, unlike the cache memory, which selects load data only by the way the microprocessor supports it, the TCM can select data to be loaded in software for more flexible operation.

그러나, TCM을 적절히 사용하기 위한 메모리 적재 방법이 존재하지 않으며, 특히 빠른 응답성을 요구하는 시스템을 위한 TCM 운용방법이 존재하지 않는다. However, there is no memory loading method for properly using the TCM, and there is no TCM operation method for a system particularly requiring fast response.

상기한 바와 같이 종래 기술에 의한 TCM 운용방법의 경우, TCM을 적절히 사용하기 위한 메모리 적재 방법이 존재하지 않고, 또한 빠른 응답성을 요구하는 TCM 운용방법이 존재하지 않는다는 문제점이 있었다. As described above, in the conventional TCM operating method, there is a problem that there is no memory loading method for properly using the TCM, and that there is no TCM operating method requiring fast response.

이에 본 발명은, 프로세스가 메모리에 접근하면 프로세스의 정보 또는 메모리의 정보가 TCM 관리자에 전달되는 단계, TCM 관리자는 프로세스 정보 또는 메모리 정보를 이용하여 TCM에 적재할 페이지를 결정하는 단계를 포함하는 TCM 운용방법을 제공한다.Therefore, when the process approaches the memory, the information of the process or information of the memory is delivered to the TCM manager, the TCM manager comprises a step of determining the page to be loaded in the TCM using the process information or memory information Provide operational methods.

본 발명의 일 실시예에 따른 TCM 운용방법은 프로세스가 메모리에 접근하면 프로세스의 정보 또는 메모리의 정보가 TCM 관리자에 전달되는 단계, TCM 관리자는 프로세스 정보 또는 메모리 정보를 이용하여 TCM에 적재할 페이지를 결정하는 단계를 포함한다.In a method of operating a TCM according to an embodiment of the present invention, when a process approaches a memory, information of a process or information of a memory is transferred to a TCM manager, and the TCM manager uses a process information or memory information to prepare a page to be loaded in the TCM. Determining.

여기서, 프로세스 정보는 우선순위 정보인 것을 특징으로 한다.Here, the process information is characterized in that the priority information.

또한, 이때 메모리 정보는 접근되는 메모리 주소, 접근 빈도, 최근 접근 시간인 것을 특징으로 한다.In this case, the memory information may be a memory address to be accessed, an access frequency, and a recent access time.

상기와 같은 본 발명의 실시예에 따른 TCM 운용 방법에 따르면 다음과 같은 효과가 있다.According to the TCM operating method according to an embodiment of the present invention as described above has the following effects.

본 발명의 실시예에 따른 TCM 운용 방법에 의하면, TCM 관리자가 프로세스의 우선순위 정보 또는 TCM에 접근되는 메모리 주소, 접근 빈도, 최근 접근 시간등을 고려하여 TCM에 적재할 페이지를 결정함으로써, TCM에 적재할 메모리를 적절히 선택하게 되어 시스템의 응답성을 개선할 수 있는 효과가 있다.According to the TCM operating method according to an embodiment of the present invention, the TCM manager determines a page to be loaded in the TCM in consideration of the priority information of the process or the memory address, access frequency, recent access time, etc. to access the TCM, By properly selecting the memory to be loaded, there is an effect of improving the responsiveness of the system.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.Advantages and features of the present invention and methods for achieving them will be apparent with reference to the embodiments described below in detail with the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various different forms, and only the embodiments make the disclosure of the present invention complete, and the general knowledge in the art to which the present invention belongs. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims. Like reference numerals refer to like elements throughout.

본 발명의 실시예들을 설명함에 있어서 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명의 실시예에서의 기 능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다. In describing the embodiments of the present invention, if it is determined that a detailed description of a known function or configuration may unnecessarily obscure the gist of the present invention, the detailed description thereof will be omitted. Terms to be described later are terms defined in consideration of functions in the embodiments of the present invention, which may vary according to intentions or customs of users and operators. Therefore, the definition should be based on the contents throughout this specification.

첨부된 블록도의 각 블록과 흐름도의 각 단계의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수도 있다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 블록도의 각 블록 또는 흐름도의 각 단계에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 블록도의 각 블록 또는 흐름도 각 단계에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 블록도의 각 블록 및 흐름도의 각 단계에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다. Combinations of each block of the accompanying block diagram and each step of the flowchart may be performed by computer program instructions. These computer program instructions may be mounted on a processor of a general purpose computer, special purpose computer, or other programmable data processing equipment such that instructions executed through the processor of the computer or other programmable data processing equipment may not be included in each block or flowchart of the block diagram. It will create means for performing the functions described in each step. These computer program instructions may be stored in a computer usable or computer readable memory that can be directed to a computer or other programmable data processing equipment to implement functionality in a particular manner, and thus the computer usable or computer readable memory. It is also possible for the instructions stored in to produce an article of manufacture containing instruction means for performing the functions described in each block or flow chart step of the block diagram. Computer program instructions may also be mounted on a computer or other programmable data processing equipment, such that a series of operating steps may be performed on the computer or other programmable data processing equipment to create a computer-implemented process to create a computer or other programmable data. Instructions that perform processing equipment may also provide steps for performing the functions described in each block of the block diagram and in each step of the flowchart.

또한, 각 블록 또는 각 단계는 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실시예들에서는 블록들 또는 단계들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들 또는 단계들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들 또는 단계들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.In addition, each block or step may represent a portion of a module, segment or code that includes one or more executable instructions for executing a specified logical function (s). It should also be noted that in some alternative embodiments, the functions noted in the blocks or steps may occur out of order. For example, the two blocks or steps shown in succession may in fact be executed substantially concurrently or the blocks or steps may sometimes be performed in the reverse order, depending on the functionality involved.

이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하기로 한다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 의한 TCM 운용장치를 도시한 블록도이다. 도 1을 참조하면, 본 발명에 의한 TCM 운용장치는 메모리부(112) 및 TCM 관리자(114)를 포함하여 구성된다. 1 is a block diagram showing a TCM operating apparatus according to the present invention. Referring to FIG. 1, the TCM operating apparatus according to the present invention includes a memory unit 112 and a TCM manager 114.

메모리부(112)는 TCM 관리자(114)에 의하여 메모리 적재가 결정된 정보 또는 데이터들이 저장된다.The memory unit 112 stores information or data for which memory loading is determined by the TCM manager 114.

TCM 관리자(114)는 프로세스(100)가 TCM 메모리(100)에 접근을 요청하면, 접근을 요청한 프로세스(100)의 정보와 프로세스(100)가 요청하는 메모리 페이지(112)의 정보를 수집하여, 해당 프로세스(100)를 해당 메모리 페이지(112)에 적재하는 것이 적절한 지 여부를 판단한다.When the process 100 requests access to the TCM memory 100, the TCM manager 114 collects information of the process 100 requesting access and information of the memory page 112 requested by the process 100. It is determined whether it is appropriate to load the process 100 into the memory page 112.

여기서, TCM 메모리에 접근을 요청한 프로세스(100)의 정보는 우선순위 정보 등을 포함한다.Here, the information of the process 100 requesting access to the TCM memory includes priority information and the like.

또한, 이때 프로세스(100)에 의하여 접근이 요청된 메모리와 관련된 정보는 접근되는 메모리의 주소, 접근 빈도, 최근 접근 시간 등을 포함한다.In addition, at this time, the information related to the memory requested to be accessed by the process 100 includes the address of the memory being accessed, the access frequency, the recent access time, and the like.

도 2는 본 발명에 의한 TCM 운용방법을 도시한 흐름도이다.2 is a flowchart illustrating a TCM operating method according to the present invention.

도 1 및 도 2를 참조하여, 본 발명에 의한 TCM 운용 방법을 상세히 설명한다. 1 and 2, the TCM operating method according to the present invention will be described in detail.

먼저 TCM메모리(110)에 저장하기를 원하는 프로세스(100)가 TCM 메모리(110)에 접근을 요청한다(210 단계).First, the process 100 that wants to store in the TCM memory 110 requests access to the TCM memory 110 (step 210).

210 단계에서 접근을 요청받은 TCM 메모리(110)는 메모리 접근을 요청하는 프로세스(100)의 정보 또는 메모리(112)의 정보를 TCM 관리자(114)에 전달한다(220단계).In operation 210, the TCM memory 110 that is requested to access transmits information of the process 100 or memory 112 that requests memory access to the TCM manager 114 (operation 220).

여기서, TCM 메모리에 접근을 요청한 프로세스(100)의 정보는 우선순위 정보 등을 포함한다.Here, the information of the process 100 requesting access to the TCM memory includes priority information and the like.

또한, 이때 프로세스(100)에 의하여 접근이 요청된 메모리와 관련된 정보는 접근되는 메모리의 주소, 접근 빈도, 최근 접근 시간 등을 포함한다.In addition, at this time, the information related to the memory requested to be accessed by the process 100 includes the address of the memory being accessed, the access frequency, the recent access time, and the like.

220 단계에서 프로세스 또는 메모리에 관한 정보를 전달받는 TCM 관리자(114)는 전달받은 프로세스 또는 메모리에 관한 정보를 고려하여 TCM에 적재될 메모리 페이지(112)를 결정하고 적재를 실행한다(230단계). In operation 220, the TCM manager 114 receiving the information about the process or the memory determines the memory page 112 to be loaded in the TCM in consideration of the information about the process or the memory, and executes the loading (operation 230).

본 발명의 실시예에 따른 TCM 운용 방법에 의하면, TCM 관리자가 프로세스의 우선순위 정보 또는 TCM에 접근되는 메모리 주소, 접근 빈도, 최근 접근 시간등을 고려하여 TCM에 적재할 페이지를 결정함으로써, TCM에 적재할 메모리를 적절히 선택하게 되어 시스템의 응답성을 개선할 수 있게 된다.According to the TCM operating method according to an embodiment of the present invention, the TCM manager determines a page to be loaded in the TCM in consideration of the priority information of the process or the memory address, access frequency, recent access time, etc. to access the TCM, By choosing the appropriate memory to load, you can improve the responsiveness of the system.

한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되지 않으며, 후술되는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다. While the present invention has been described in connection with what is presently considered to be the most practical and preferred embodiment, it is to be understood that the invention is not limited to the disclosed embodiments, but is capable of various modifications within the scope of the invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the scope of the following claims, but also by those equivalent to the scope of the claims.

도 1은 본 발명에 의한 TCM 운용장치를 도시한 블록도이다.1 is a block diagram showing a TCM operating apparatus according to the present invention.

도 2는 본 발명에 의한 TCM 운용방법을 도시한 흐름도이다.2 is a flowchart illustrating a TCM operating method according to the present invention.

Claims (1)

프로세스가 메모리에 접근하면 프로세스의 정보 또는 메모리의 정보가 TCM 관리자에 전달되는 단계; 및 When the process accesses the memory, information of the process or information of the memory is transferred to the TCM manager; And TCM 관리자는 프로세스 정보 또는 메모리 정보를 이용하여 TCM에 적재할 페이지를 결정하는 단계The TCM manager uses the process information or memory information to determine which pages to load into the TCM. 를 포함하는 TCM 운용방법.TCM operating method comprising a.
KR1020090124543A 2009-12-15 2009-12-15 Tightly-coupled memory management method to improve responsibility of real-time processes KR20110067795A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020090124543A KR20110067795A (en) 2009-12-15 2009-12-15 Tightly-coupled memory management method to improve responsibility of real-time processes

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020090124543A KR20110067795A (en) 2009-12-15 2009-12-15 Tightly-coupled memory management method to improve responsibility of real-time processes

Publications (1)

Publication Number Publication Date
KR20110067795A true KR20110067795A (en) 2011-06-22

Family

ID=44400178

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020090124543A KR20110067795A (en) 2009-12-15 2009-12-15 Tightly-coupled memory management method to improve responsibility of real-time processes

Country Status (1)

Country Link
KR (1) KR20110067795A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10048899B2 (en) 2014-04-30 2018-08-14 Samsung Electronics Co., Ltd. Storage device, computing system including the storage device, and method of operating the storage device
US10558597B2 (en) 2017-01-13 2020-02-11 Samsung Electronics Co., Ltd. Application processor and integrated circuit including interrupt controller

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10048899B2 (en) 2014-04-30 2018-08-14 Samsung Electronics Co., Ltd. Storage device, computing system including the storage device, and method of operating the storage device
US10558597B2 (en) 2017-01-13 2020-02-11 Samsung Electronics Co., Ltd. Application processor and integrated circuit including interrupt controller

Similar Documents

Publication Publication Date Title
US10613871B2 (en) Computing system and method employing processing of operation corresponding to offloading instructions from host processor by memory's internal processor
US8669990B2 (en) Sharing resources between a CPU and GPU
US7590774B2 (en) Method and system for efficient context swapping
US7865696B2 (en) Interface including task page mechanism with index register between host and an intelligent memory interfacing multitask controller
US8745631B2 (en) Intelligent memory device with ASCII registers
US7908603B2 (en) Intelligent memory with multitask controller and memory partitions storing task state information for processing tasks interfaced from host processor
Lee et al. Performance characterization of data-intensive kernels on AMD fusion architectures
US20160147516A1 (en) Execution of complex recursive algorithms
WO2023103392A1 (en) Method and apparatus for storage management, medium, program product, and system
US7882504B2 (en) Intelligent memory device with wakeup feature
US7594232B2 (en) Intelligent memory device for processing tasks stored in memory or for storing data in said memory
US7823161B2 (en) Intelligent memory device with variable size task architecture
US11868306B2 (en) Processing-in-memory concurrent processing system and method
WO2023103397A1 (en) Method for storage management, medium, program product, system, and apparatus
KR20110067795A (en) Tightly-coupled memory management method to improve responsibility of real-time processes
Vogel et al. Data Pipes: Declarative Control over Data Movement
Silberstein et al. GPUFs: The case for operating system services on GPUs
TWI760756B (en) A system operative to share code and a method for code sharing
US7823159B2 (en) Intelligent memory device clock distribution architecture
CN112214443B (en) Secondary unloading device and method arranged in graphic processor
Liu et al. OpenCL-based programming library for heterogeneous computing on ReWorks operating system
Tomoutzoglou Hardware-assisted workload dispatching in heterogeneous dataflow architectures.
CN113448880A (en) Storage and compute in memory enabling coherent multiprocessing
Arul et al. An efficient non-blocking multithreaded embedded system

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination