KR20070089460A - 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법 - Google Patents

우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법 Download PDF

Info

Publication number
KR20070089460A
KR20070089460A KR1020060019539A KR20060019539A KR20070089460A KR 20070089460 A KR20070089460 A KR 20070089460A KR 1020060019539 A KR1020060019539 A KR 1020060019539A KR 20060019539 A KR20060019539 A KR 20060019539A KR 20070089460 A KR20070089460 A KR 20070089460A
Authority
KR
South Korea
Prior art keywords
time
execution
remaining
task
priority
Prior art date
Application number
KR1020060019539A
Other languages
English (en)
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 KR1020060019539A priority Critical patent/KR20070089460A/ko
Priority to US11/656,534 priority patent/US20070204270A1/en
Priority to JP2007042026A priority patent/JP2007234017A/ja
Priority to CNB200710078777XA priority patent/CN100530153C/zh
Publication of KR20070089460A publication Critical patent/KR20070089460A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L13/00Implements for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L13/10Scrubbing; Scouring; Cleaning; Polishing
    • A47L13/20Mops
    • A47L13/22Mops with liquid-feeding devices
    • A47L13/225Steam mops
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/4011Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L11/00Machines for cleaning floors, carpets, furniture, walls, or wall coverings
    • A47L11/40Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
    • A47L11/408Means for supplying cleaning or surface treating agents
    • A47L11/4086Arrangements for steam generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47LDOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
    • A47L2601/00Washing methods characterised by the use of a particular treatment
    • A47L2601/04Steam

Abstract

본 발명은 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법에 관한 것으로서, 더욱 상세하게는 응답 시간을 감소시키고 과도한 연산의 중지 및 재개가 발생하는 것을 방지하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법에 관한 것이다.
본 발명의 실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치는, 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업이 요청된 경우, 상기 제 2작업의 잔여 마감 시간을 산출하는 제 1시간 산출부, 상기 제 1연산의 잔여 연산 시간, 및 상기 제 2작업의 잔여 실행 시간을 산출하는 제 2시간 산출부, 및 상기 제 1시간 산출부, 및 상기 제 2시간 산출부에서 산출된 시간의 비교를 통해 상기 제 1연산의 중지 여부를 결정하는 제어부를 포함한다.
비휘발성 메모리, 우선 순위, 응답, 연산

Description

우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법{Apparatus and method for operating non-volatile memory according to priority}
도 1은 종래의 기술에 따른 우선 순위에 따른 비휘발성 메모리의 연산 과정이 도시된 도면.
도 2는 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치가 도시된 도면.
도 3은 본 발명의 제 2실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치가 도시된 도면.
도 4는 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법이 도시된 도면.
도 5는 본 발명의 실시예에 따라 제 1연산이 완료된 다음 제 2연산을 수행하는 연산 과정이 도시된 도면.
도 6은 본 발명의 제 2실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법이 도시된 도면.
도 7은 본 발명의 실시예에 따라 제 2연산이 완료될때까지 제 1연산을 지연시키는 연산 과정이 도시된 도면.
<도면의 주요 부분에 관한 부호의 설명>
110: 비휘발성 메모리 120: 제 1시간 산출부
130: 제 2시간 산출부 140: 비교부
150: 제어부
본 발명은 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법에 관한 것으로서, 더욱 상세하게는 응답 시간을 감소시키고 과도한 연산의 중지 및 재개가 발생하는 것을 방지하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법에 관한 것이다.
일반적으로, 가전 기기, 통신 기기, 셋탑 박스 등의 내장형 시스템(Embedded System)에서는 데이터를 저장하고 처리하기 위한 저장 매체로 비휘발성 메모리가 많이 사용되고 있다.
비휘발성 메모리 중에서 주로 사용되는 플래시 메모리는 전기적으로 데이터를 삭제하거나 다시 기록할 수 있는 비휘발성 기억 소자로서, 마그네틱 디스크 메모리를 기반으로 하는 저장 매체에 비해 전력 소모가 적으면서도 하드 디스크와 같은 빠른 액세스 타임(Access Time)을 가지며 크기가 작기 때문에 휴대 기기 등에 적합하다.
또한, 플래시 메모리는 기본적으로 쓰기, 읽기, 및 지우기 연산을 가지고 있으며, 데이터를 쓰기 전에 블록(Block)을 지우는 지우기 연산이 선행되어야 하는 하드웨어적 특성을 가진다. 플래시 메모리에서의 지우기 연산은, 쓰기 연산 및 읽기 연산에 비하여 연산 수행 시간이 매우 긴 특징을 가진다. 또한, 여러 블록을 동시에 지우거나, 여러 페이지를 한번에 읽거나 쓰는 연산의 경우에는 그 수행 시간은 더욱 길어지게 된다.
한편, 플래시 메모리를 사용하는 실시간 시스템에서는 다양한 우선 순위를 가지는 연산이 존재하고, 시스템에 연산 요청되는 경우, 요청된 연산들은 연산 큐에 우선 순위에 따라 정렬된다. 또한, 연산 큐의 연산이 수행되기 전 플래시 변환 계층(Flash Translation Layer)을 통해 플래시 메모리에 플래시 명령과 실행에 필요한 정보를 보내어 플래시 메모리에서 연산이 수행되도록 한다.
일반적으로, 플래시 메모리는 소정 연산이 수행되는 도중 현재 수행되고 있는 연산보다 더 높은 우선 순위를 가지는 연산이 요청되었을 때, 현재 수행되고 있는 연산이 완료될때까지 더 높은 우선 순위를 가지는 연산을 대기시키게 된다. 따라서, 실시간 시스템에서 현재 수행되고 있는 연산이 완료될때까지 더 높은 우선 순위를 가지는 연산이 대기하게 되므로 응답 시간이 길어지게 된다. 또한, 실시간 시스템에서 현재 수행되고 있는 연산이 쓰기 및 읽기 연산에 비하여 긴 시간이 소요되는 지우기 연산인 경우, 실시간 시스템에서의 응답 시간은 더욱 길어지게 되고, 이로 인해 시스템의 성능 저하를 가져오게 된다.
따라서, 실시간 시스템에서 응답 시간 증가하는 것을 방지하기 위하여, 소정 연산이 수행되는 도중 더 높은 우선 순위를 가지는 연산이 요청될 때, 현재 수행되는 연산을 중지하고, 더 높은 우선 순위를 가지는 연산을 수행하게 된다. 또한, 더 높은 우선 순위를 가지는 연산이 완료되면, 중지되었던 연산을 다시 재개하여 응답 시간의 감소를 꾀하고 있다. 이때, 연산을 중지하기 위해서는 소정의 연산 중지 시간이 필요하게 되고, 중지된 연산을 재개하기 위해서는 소정의 연산 재개 시간이 필요하게 된다.
도 1은 종래의 기술에 따른 우선 순위에 따른 연산 과정이 도시된 도면이다.
도시된 바와 같이, 종래의 기술에 따른 우선 순위에 따른 연산 처리 방법은, 낮은 우선 순위를 가지는 작업의 실행에 따라 비휘발성 메모리에서 연산이 수행되는 도중 높은 우선 순위를 가지는 작업의 실행에 따라 비휘발성 메모리에서 연산 수행이 요청되었을 때, 낮은 우선 순위를 가지는 작업의 연산을 중지시키고, 높은 우선 순위를 가지는 작업의 연산을 수행하게 된다.
이때, 높은 우선 순위의 연산 수행으로 인해 중지된 낮은 우선 순위의 연산은 연산 중지에 의해 무효화되고, 높은 우선 순위 연산이 완료된 다음 처음부터 다시 수행된다. 이때, 높은 우선 순위를 가지는 작업에게 할당된 작업 시간인 마감 시간까지 시간적 여유가 있기 때문에 굳이 낮은 우선 순위의 연산을 중지시키지 않는 경우에도 높은 우선 순위 연산을 수행하는데 있어 문제가 발생하게 않게 된다.
그러나, 낮은 우선 순위의 연산이 비휘발성 메모리에서 수행되고 있는 도중 높은 우선 순위의 작업의 실행에 따른 연산이 요청되면, 낮은 우선 순위의 연산을 무조건 중지시키기 때문에 낮은 우선 순위의 연산이 지우기 연산인 경우에 비휘발성 메모리에서 잦은 지우기 연산의 발생으로 인해 비휘발성 메모리의 수명이 단축되는 문제점이 있다.
일본 공개 특허 1998-177563은 플래시 제어회로가 출력하는 신호에 근거하여 플래시 메모리에의 기록 기간이나 소거 기간중 클럭 생성 수단으로부터 CPU로 클럭 공급을 중단하는 내장 마이크로 컴퓨터를 개시하고 있으나, 이는 플래쉬 메모리의 쓰기 및 지우기 연산이 수행되는 도중 CPU가 쓰기 및 지우기 연산의 완료를 수시로 폴링하여 발생되는 과부하를 방지하기 위한 것으로, 플래시 메모리를 사용하는 실시간 시스템에서 소정 연산이 수행되는 도중 우선 순위가 더 높은 연산이 요청되었을 때, 응답 시간이 증가되는 것을 방지하고 수명이 단축되는 것을 방지할 수 있는 방안은 제안되고 있지 않다.
본 발명은 비휘발성 메모리에서 낮은 우선 순위의 작업의 실행에 따른 연산이 수행되는 도중 높은 우선 순위의 작업이 요청되었을 때, 높은 우선 순위의 작업에 대한 마감 시간을 고려하여 낮은 우선 순위 작업의 실행에 따른 연산의 중지 여부를 결정하여 응답 시간을 감소시키고 비휘발성 메모리의 수명 단축을 방지할 수 있는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법을 제공하는데 그 목적이 있다.
본 발명의 목적은 이상에서 언급한 목적들로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해되어 질 수 있을 것이다.
상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치는, 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업이 요청된 경우, 상기 제 2작업의 잔여 마감 시간을 산출하는 제 1시간 산출부, 상기 제 1연산의 잔여 연산 시간, 및 상기 제 2작업의 잔여 실행 시간을 산출하는 제 2시간 산출부, 및 상기 제 1시간 산출부, 및 상기 제 2시간 산출부에서 산출된 시간의 비교를 통해 상기 제 1연산의 중지 여부를 결정하는 제어부를 포함한다.
또한, 상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치는, 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는지를 판단하는 작업 요청 예상부, 상기 판단 결과 상기 제 2작업의 요청이 예상되는 경우, 상기 제 1연산의 수행을 지연시키고, 상기 제 2작업의 실행에 따른 제 2연산을 수행하는 연산 지연부, 및 상기 제 2연산이 완료된 다음, 상기 지연된 제 1연산을 수행하는 제어부를 포함한다.
또한, 상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은, 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업이 요청된 경우, 상기 제 2작업의 잔여 마감 시간을 산출하는 단계, 상기 제 1연산의 잔여 연산 시간, 및 상기 제 2작업의 잔여 실행 시간을 산출하는 단계, 및 상기 제 1시간 산출부, 및 상기 제 2시간 산출부에서 산출된 시간의 비교를 통해 상기 제 1연산의 중지 여부를 결정하는 단계를 포함한다.
또한, 상기 목적을 달성하기 위하여, 본 발명의 실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은, 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는지를 판단하는 단계, 상기 판단 결과 상기 제 2작업의 요청이 예상되는 경우, 상기 제 1연산의 수행을 지연시키고, 상기 제 2작업의 실행에 따른 제 2연산을 수행하는 단계, 및 상기 제 2연산이 완료된 다음, 상기 지연된 제 1연산을 수행하는 단계를 포함한다.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범수를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이하, 본 발명의 실시예들에 의하여 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법을 설명하기 위한 블록도 또는 처리 흐름도에 대한 도면들을 참고하여 본 발명에 대해 설명하도록 한다. 이 때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있 음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때 로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
도 2는 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치가 도시된 도면이다.
도시된 바와 같이, 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치(100)는, 비휘발성 메모리(110), 제 1시간 산출부(120), 제 2시간 산출부(130), 비교부(140), 및 제어부(150)을 포함할 수 있다.
제 1시간 산출부(120)는, 낮은 우선 순위를 가지는 작업의 실행에 따른 연산이 비휘발성 메모리(110)에서 수행되는 도중 높은 우선 순위를 가지는 작업 요청된 경우, 높은 우선 순위를 가지는 작업에게 할당된 작업 시간이 끝나는 시점까지 남은 마감 시간을 산출할 수 있다.
본 발명의 제 1실시예에서 사용되는 용어 중 작업은 사용자의 명령에 따라 실행되는 소정의 응용 프로그램을 의미하며, 이러한 응용 프로그램은 해당 프로세스에 따라 필요시, 비휘발성 메모리(110)에 접근하여 연산을 수행할 수 있게 된다. 따라서, 작업은 비휘발성 메모리(110)에서 수행되는 연산을 포함하거나 포함하지 않을 수 있으며, 소정 연산 그 자체일수도 있다.
또한, 본 발명의 제 1실시예에서 낮은 우선 순위를 가지는 작업을 제 1작업이라 칭하고 높은 연산 순위를 가지는 작업을 제 2작업이라 칭하기로 하며, 제 1작업 및 제 2작업의 실행에 따라 수행되는 연산을 각각 제 1연산 및 제 2연산이라 칭하기로 한다.
이때, 제 1시간 산출부(110)에서 산출되는 마감 시간은, 제 2작업에게 할당 된 작업 시간이 끝나는 시점까지 남은 잔여 마감 시간으로 이해될 수 있으며, 제 2작업은 마감 시간까지 응답을 호스트로 전달해야 한다. 이때, 소정 작업에게 할당된 작업 시간은 작업의 종류, 및 작업의 실행에 따라 수행되는 연산의 종류 등에 따라 변경될 수 있다. 예를 들어, 작업의 실행에 따라 수행되는 연산이 쓰기 연산인 경우, 작업의 실행에 따라 수행되는 연산이 지우기 연산인 경우에 비하여 짧은 작업 시간을 할당받게 된다. 이는 쓰기 연산에 비하여 지우기 연산이 긴 시간을 필요로 하기 때문이다.
또한, 본 발명의 실시예에서 잔여 마감 시간은, 제 2작업의 실행에 따른 제 2연산이 요청되는 시점부터 제 2작업에게 할당된 작업 시간이 끝나는 시점까지의 시간으로 이해될 수 있다.
제 2시간 산출부(130)는 비휘발성 메모리(110)에서 수행되고 있는 제 1연산의 잔여 연산 시간, 및 제 2연산이 시작되는 시점에서 제 2작업의 잔여 실행 시간을 산출할 수 있다.
이때, 소정 연산의 연산 시간은 해당하는 연산의 종류, 및 연산 량에 따라 정해질 수 있으며, 소정 연산의 잔여 연산 시간은, 해당 연산의 연산 시간과 해당 연산이 수행된 시점으로부터의 경과 시간과의 시간차를 통해 산출될 수 있다. 또한, 소정 작업의 작업 실행 시간은 해당하는 작업의 종류, 및 해당하는 작업의 실행에 따라 수행되는 연산의 종류 등에 따라 정해질 수 있으며, 소정 작업의 잔여 실행 시간은, 해당 작업의 작업 실행 시간과 해당 작업이 실행되기 시작한 시점으로부터 제 2연산이 시작되는 시점까지 경과된 시간과의 시간차를 통해 산출될 수 있다. 이때, 본 발명의 실시예에 따른 잔여 실행 시간은, 제 2작업의 실행에 따라 수행되는 제 2연산의 연산 시간을 포함한 경우를 예를 들어 설명하기로 한다.
비교부(140)는 제 1시간 산출부(120), 및 제 2시간 산출부(130)에서 산출된 잔여 마감 시간, 및 제 1연산의 잔여 연산 시간과 제 2작업의 잔여 실행 시간의 합을 비교할 수 있다. 이때, 본 발명의 제 1실시예에서 잔여 마감 시간을 T1이라 하고, 제 1연산의 잔여 연산 시간과 제 2작업의 잔여 실행 시간의 합을 T2라 한다. 이와 같이, 비교부(140)가 T1과 T2를 비교하는 것은, T1>T2인 경우에는 제 2작업의 마감 시간까지 시간적 여유가 있으므로 제 1연산을 수행한 다음, 제 2연산을 수행하고, 반면 T1<T2인 경우에는 제 2작업의 마감 시간까지 시간적 여유가 없으므로 제 1연산을 중지하고 제 2연산이 수행될 수 있도록 하기 위함이다.
이는, 기존에 낮은 우선 순위의 연산 수행 도중 높은 우선 순위의 연산이 요청되었을 때, 무조건 낮은 우선 순위의 연산을 중지시키고 높은 우선 순위의 연산이 수행되는 경우에 비하여 빠른 응답을 보장하면서도 비휘발성 메모리(110)에서 연산의 중지와 재개가 과도하게 발생되는 것을 방지하여 비휘발성 메모리(110)의 수명 단축을 방지하기 위함이다.
제어부(150)는 비교부(140)의 비교 결과에 따라 제 1연산의 중지 여부를 결정할 수 있다. 구체적으로, 제어부(150)는 비교부(140)의 비교 결과, T1>T2인 경우, 제 2작업의 마감 시간까지 시간적 여유가 있으므로, 제 1연산을 완료한 다음, 제 2연산을 수행할 수 있다. 한편, 제어부(150)는 비교부(140)의 비교 결과, T1<T2인 경우, 제 2작업의 마감 시간까지 시간적 여유가 없으므로 제 1연산을 중지시키 고 제 2연산을 수행하게 된다. 이때, 제 1연산 중지시키기 위해서는 소정의 연산 중지 시간이 필요하므로, 제어부(150)는 연산 중지 시간이 경과한 다음 제 2연산을 수행하게 된다. 또한, 제 2연산이 완료된 다음에는 중지된 제 1연산을 소정의 연산 재개 시간이 경과한 다음 재개하게 된다.
이와 같은 도 2의 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치(100)는, 제 1작업의 실행에 따른 제 1연산 수행 도중, 제 1작업보다 높은 우선 순위를 가지는 제 2작업이 요청되는 것을 예측하지 못하는 상태로 이해될 수 있으며, 제 1작업의 실행에 따른 제 1연산 수행 도중 제 1작업보다 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는 경우에는 제 1연산의 수행을 소정 시간동안 지연시켜 제 2작업에 따른 제 2연산을 먼저 수행할 수 있다.
도 3은 본 발명의 제 2실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치가 도시된 도면이다. 이때, 도 3의 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치는 전술한 제 1작업의 실행에 따른 제 1연산 수행 도중 제 1작업보다 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는 경우를 예를 들어 설명하기로 한다.
도시된 바와 같이, 본 발명의 제 2실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치(200)는, 비휘발성 메모리(210), 작업 정렬부(220), 작업 관리부(230), 작업 요청 예상부(240), 연산 지연부(250), 제어부(260)를 포함할 수 있다.
작업 정렬부(220)는 다수의 작업을 우선 순위에 따라 정렬할 수 있다. 이때, 작업 정렬부(220)는 이미 요청된 작업들을 우선 순위에 따라 정렬하는 것뿐만 아니라, 새로 요청된 작업이 있는 경우, 새로 요청된 작업의 우선 순위를 고려하여 이미 정렬된 작업들을 재정렬할 수 있다.
작업 관리부(230)는 작업 정렬부(220)에 의해 정렬된 작업들의 실행에 따라 수행되는 연산들의 연산 시간이 중첩되는지를 판단할 수 있다. 구체적으로, 작업 정렬부(220)에 의해 정렬된 순서에 따라 작업들이 실행되고 있는 도중 새로운 작업이 요청되었을 때, 작업 정렬부(220)는 새로 요청된 작업의 우선 순위에 따라 작업들을 재정렬할 수 있다. 이때, 새로 요청된 작업에 따라 수행되는 연산이 이미 수행되고 있는 연산과 중첩되는지를 판단하는 것이다.
작업 요청 예상부(240)는 작업 관리부(230)의 판단 결과에 따라 낮은 우선 순위의 작업의 실행에 따른 연산 수행 도중, 높은 작업의 요청이 예상되는지를 판단할 수 있다. 구체적으로, 작업 관리부(230)는 낮은 우선 순위를 가지는 제 1작업의 실행에 따른 제 1연산을 수행할 때, 높은 우선 순위를 가지는 제 2작업의 요청이 예상되고, 제 2작업의 실행에 따른 제 2연산이 제 1연산과 중첩이 발생하는지를 판단하는 것이다. 이때, 작업 요청 예상부(240)는 작업 관리부(230)의 판단 결과에 근거하여 제 2작업의 실행에 따른 제 2연산이 제 1연산과 연산 시간의 중첩이 발생하는지를 판단할 수 있다.
연산 지연부(250)는 작업 요청 예상부(240)의 판단 결과, 제 2작업의 실행에 따른 제 2연산이 제 1연산과 중첩이 발생하는 경우, 제 1작업의 실행에 따른 제 1연산의 수행을 지연시키게 된다. 따라서, 제 1연산이 지우기 연산이고, 제 2연산 이 쓰기 연산일 때, 제 1연산이 중지되는 것을 사전에 방지하여 비휘발성 메모리(210)에서 제 1연산의 중지로 인한 반복적인 지우기 연산으로 인해 비휘발성 메모리(210)의 수명이 단축되는 것을 사전에 방지할 수 있게 된다.
제어부(260)는 연산 지연부(250)에 의해 제 1작업의 실행에 따라 수행되는 제 1연산이 지연된 경우, 제 2연산이 완료된 다음 지연된 제 1연산이 수행되도록 할 수 있다.
이때, 도 3의 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치(200)는 낮은 우선 순위를 가지는 제 1작업에 따른 제 1연산 수행 도중 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는 경우를 예를 들어 설명하고 있으나, 이에 한정되지 않고 제 2작업의 마감 시간이 임박한 경우, 제 1연산을 지연시키고, 제 2연산을 우선적으로 수행함으로서 제 2연산이 마감 시간을 초과하는 것을 사전에 방지할 수 있게 된다.
도 4는 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법이 도시된 도면이다. 이때, 도 4의 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은, 전술한 도 2의 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치의 동작으로 이해될 수 있다.
도시된 바와 같이, 본 발명의 제 1실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은, 먼저 제어부(150)가 제 1작업의 실행에 따른 제 1연산 수행 도중 제 1작업보다 높은 우선 순위를 가지는 제 2연산이 요청되었는지를 판단한다(S110).
판단 결과, 제 1작업의 실행에 따른 제 1연산 수행 도중, 제 2작업이 요청된 경우, 제 1시간 산출부(120)는 제 2작업의 잔여 마감 시간(T1)을 산출하게 된다(S120). 이때, 산출되는 제 2작업의 잔여 마감 시간은, 제 2작업의 실행에 따라 수행되는 제 2연산이 시작되는 시점에서 제 2작업에게 할당된 작업 시간이 끝나는 시점까지의 시간으로 이해될 수 있다.
또한, 제 2시간 산출부(130)는 제 1연산의 잔여 연산 시간, 및 제 2작업의 잔여 실행 시간을 산출하게 하고, 산출된 제 1연산의 잔여 연산 시간, 및 제 2작업의 잔여 실행 시간의 합(T2)을 산출하게 된다(S130). 이때, 소정 연산의 연산 시간은 해당하는 연산의 종류, 및 연산 량에 따라 정해질 수 있으며, 소정 연산의 잔여 연산 시간은, 해당 연산의 연산 시간과 해당 연산이 수행된 시점으로부터의 경과 시간과의 시간차를 통해 산출될 수 있다. 또한, 소정 작업의 작업 실행 시간은 해당하는 작업의 종류, 및 해당하는 작업의 실행에 따라 수행되는 연산의 종류 등에 따라 정해질 수 있으며, 소정 작업의 잔여 실행 시간은, 해당 작업의 작업 실행 시간과 해당 작업이 실행되기 시작한 시점으로부터 제 2연산이 시작되는 시점까지 경과된 시간과의 시간차를 통해 산출될 수 있다. 본 발명의 실시예에서, 제 2연산의 잔여 실행 시간은 제 2작업의 실행에 따라 수행되는 제 2연산의 연산 시간을 포함한 경우를 예를 들어 설명하기로 한다.
비교부(140)는 제 1시간 산출부(120), 및 제 2시간 산출부(130)에서 산출된 T1 및 T2를 비교한다(S140).
비교 결과, T2>T1인 경우, 제어부(150)는 제 1연산을 중지시키게 된다 (S150). 이때, 제어부(150)가 제 1연산을 중지시킬 때에는 소정의 연산 중지 시간이 필요하게 된다.
또한, 제어부(150)는 제 1연산의 연산 중지 시간이 경과하게 되면, 제 2작업의 실행에 따른 제 2연산을 수행하고(S160), 제 2연산이 완료된 다음 다시 제 1연산을 재개하게 된다(S170). 이때, 제 1연산을 재개하는 경우에도 제 1연산을 재개하기 위한 연산 재개 시간이 필요하게 된다.
만일, 전술한 S140 단계에서 T1>T2이면, 제어부(150)는 제 1연산을 완료시킨 다음, 제 2연산을 수행하게 된다(S180).
도 5는 본 발명의 실시예에 따른 제 1연산이 완료된 다음 제 2연산이 수행되는 연산 과정이 도시된 도면이다.
도시된 바와 같이, 제 1연산의 잔여 연산 시간, 및 제 2작업의 잔여 실행 시간의 합이 제 2연산의 잔여 마감 시간보다 작기 때문에 제 2작업이 시간적 여유가 있으므로, 제 2연산을 제 1연산이 완료될때까지 지연시킨 다음, 제 1연산 완료 후 제 2연산이 수행되도록 할 수 있다.
이때, 도 5는 제 1연산을 완료시킨 다음에 제 2연산을 수행하여도 제 2작업에게 할당된 작업 시간 내에 응답이 가능하기 때문에 굳이 제 1연산을 중지하여 비휘발성 메모리(110)에서 제 1연산이 반복적으로 수행되는 것을 방지하면서도 응답 시간이 증가하는 것을 방지할 수 있게 된다.
만일, 전술한 도 5에서 제 1연산의 잔여 연산 시간, 및 제 2작업의 잔여 실행 시간의 합이 제 2연산의 잔여 마감 시간보다 크게 되면, 제 2작업의 마감 시간 까지 시간적 여유가 없으므로, 제 1연산을 중지시킨 다음, 제 2연산을 수행하게 된다. 또한, 제 2연산이 완료되면, 중지된 제 1연산을 재개하게 된다. 따라서, 제 2작업의 마감 시간내에 응답이 가능토록 할 수 있다.
도 6은 본 발명의 제 2실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법이 도시된 도면이다. 이때, 도 6의 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은 전술한 도 4의 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치의 동작으로 이해될 수 있다.
도시된 바와 같이, 본 발명의 제 2실시예에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은, 먼저 작업 요청 예상부(240)가 낮은 우선 순위를 가지는 제 1작업의 실행에 따른 제 1연산 수행 도중 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는지를 판단한다(S210). 이때, 작업 요청 예상부(240)는 작업 관리부(230)에서 작업 정렬부(220)의 정렬 결과를 통해 제 1연산과 제 2연산이 중첩되는지를 판단한 판단 결과를 전달 받아 제 2작업의 요청을 예상할 수 있다.
판단 결과, 제 2작업의 요청이 예상되는 경우, 연산 지연부(250)는 제 1작업의 실행에 따른 제 1연산의 수행을 제 2연산이 완료될때까지 지연시키게 된다(S220).
제어부(260)는 제 2연산이 완료되면, 연산 지연부(250)에 의해 수행이 지연된 제 1연산을 수행하게 된다(S230).
이때, 도 6의 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법은, 제 1작업의 실행에 따른 제 1연산 수행 도중 제 1연산에 비하여 높은 우선 순위를 가지 는 제 2작업이 요청되는 경우를 예를 들어 설명하고 있으나, 이에 한정되지 않고 제 2작업의 마감 시간이 임박한 경우에도 사용될 수 있다.
예를 들어, 도 7과 같이 제 2작업의 마감 시간이 임박할 때, 제 2작업의 실행에 따른 제 2연산이 수행될 경우, 제 1작업의 실행에 따른 제 1연산과 연산 수행 시간이 중첩될 경우, 전술한 도 5에서와 같이 마감 시간과 잔여 연산 시간 및 잔여 실행 시간을 비교하지 않고 제 1연산을 지연시킨 상태에서 제 2연산을 우선 수행하고, 제 2연산이 완료된 다음 지연된 제 1연산을 수행할 수 있다.
상기 '부'는 소프트웨어 또는 Field Programmable Gate Array(FPGA) 또는 주문형 반도체(Application Specific Integrated Circuit, ASIC)과 같은 하드웨어 구성요소를 의미하며, 부는 어떤 역할들을 수행한다. 그렇지만 부는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. 부는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 따라서, 일 예로서 부는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 부들에서 제공되는 기능은 더 작은 수의 구성요소들 및 부들로 결합되거나 추가적인 구성요소들과 부들로 더 분리될 수 있다.
이상과 같이 본 발명에 따른 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법을 예시된 도면을 참조로 하여 설명하였으나, 본 명세서에 개시된 실시예와 도면에 의해 본 발명은 한정되지 않으며 그 발명의 기술사상 범위내에서 당업자에 의해 다양한 변형이 이루어질 수 있음은 물론이다.
상기한 바와 같은 본 발명의 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및 방법에 따르면, 낮은 우선 순위의 연산을 수행하는 도중, 높은 우선 순위의 연산이 요청되었을 때, 응답 시간을 감소시키는 동시에 낮은 우선 순위 연산의 중지 및 재개가 빈번하게 발생하는 것을 방지할 수 있는 효과가 있다.

Claims (20)

  1. 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업이 요청된 경우, 상기 제 2작업의 잔여 마감 시간을 산출하는 제 1시간 산출부;
    상기 제 1연산의 잔여 연산 시간, 및 상기 제 2작업의 잔여 실행 시간을 산출하는 제 2시간 산출부; 및
    상기 제 1시간 산출부, 및 상기 제 2시간 산출부에서 산출된 시간의 비교를 통해 상기 제 1연산의 중지 여부를 결정하는 제어부를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  2. 제 1 항에 있어서,
    상기 잔여 연산 시간, 및 상기 잔여 실행 시간의 합을 상기 잔여 마감 시간과 비교하는 비교부를 더 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  3. 제 2 항에 있어서,
    상기 제어부는, 상기 비교 결과 상기 잔여 마감 시간이 상기 잔여 연산 시간과 상기 잔여 실행 시간의 합보다 큰 경우, 상기 제 1연산이 완료된 다음, 상기 제 2작업의 실행에 따른 제 2연산을 수행하는 우선 순위에 따른 비휘발성 메모리의 연 산 처리 장치.
  4. 제 3 항에 있어서,
    상기 제어부는, 상기 제 1연산이 완료될때까지 상기 제 2연산의 수행을 지연시키는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  5. 제 2 항에 있어서,
    상기 제어부는, 상기 비교 결과 상기 잔여 마감 시간이 상기 잔여 연산 시간과 상기 잔여 실행 시간의 합보다 작은 경우, 상기 제 1연산을 중지시킨 다음, 상기 제 2작업이 실행에 따른 제 2연산을 수행하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  6. 제 5 항에 있어서,
    상기 제어부는, 상기 제 2연산이 완료된 다음 상기 중지된 제 1연산을 재개하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  7. 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는지를 판단하는 작업 요청 예상부;
    상기 판단 결과 상기 제 2작업의 요청이 예상되는 경우, 상기 제 1연산의 수행을 지연시키고, 상기 제 2작업의 실행에 따른 제 2연산을 수행하는 연산 지연부; 및
    상기 제 2연산이 완료된 다음, 상기 지연된 제 1연산을 수행하는 제어부를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  8. 제 7 항에 있어서,
    다수의 작업을 우선 순위에 따라 정렬하는 작업 정렬부; 및
    상기 정렬된 각 작업의 실행에 따른 연산의 중첩 여부를 판단하고, 상기 판단 결과를 상기 작업 요청 예상부로 전달하는 작업 관리부를 더 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  9. 제 8 항에 있어서,
    상기 작업 요청 예상부는, 상기 제 1연산 및 상기 제 2연산이 중첩되어 수행되는 경우, 상기 제 2작업의 요청이 예상되는 것으로 판단하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  10. 제 7 항에 있어서,
    상기 연산 지연부는, 상기 제 2연산의 마감 시간이 임박한 경우, 상기 제 연산의 수행을 지연시키는 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치.
  11. 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업이 요청된 경우, 상기 제 2작업의 잔여 마감 시간을 산출하는 단계;
    상기 제 1연산의 잔여 연산 시간, 및 상기 제 2작업의 잔여 실행 시간을 산출하는 단계; 및
    상기 제 1시간 산출부, 및 상기 제 2시간 산출부에서 산출된 시간의 비교를 통해 상기 제 1연산의 중지 여부를 결정하는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  12. 제 11 항에 있어서,
    상기 잔여 연산 시간, 및 상기 잔여 실행 시간의 합을 상기 잔여 마감 시간과 비교하는 단계를 더 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  13. 제 12 항에 있어서,
    상기 제 1연산의 중지 여부를 결정하는 단계는, 상기 비교 결과 상기 잔여 마감 시간이 상기 잔여 연산 시간과 상기 잔여 실행 시간의 합보다 큰 경우, 상기 제 1연산이 완료된 다음, 상기 제 2작업의 실행에 따른 제 2연산을 수행하는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  14. 제 13 항에 있어서,
    상기 제 1연산의 중지 여부를 결정하는 단계는, 상기 제 1연산이 완료될때까지 상기 제 2연산의 수행을 지연시키는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  15. 제 12 항에 있어서,
    상기 제 1연산의 중지 여부를 결정하는 단계는, 상기 비교 결과 상기 잔여 마감 시간이 상기 잔여 연산 시간과 상기 잔여 실행 시간의 합보다 작은 경우, 상기 제 1연산을 중지시킨 다음, 상기 제 2작업이 실행에 따른 제 2연산을 수행하는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  16. 제 15 항에 있어서,
    상기 제 1연산의 중지 여부를 결정하는 단계는, 상기 제 2연산이 완료된 다음 상기 중지된 제 1연산을 재개하는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  17. 제 1작업의 실행에 따른 제 1연산의 수행 도중 상기 제 1작업에 비하여 높은 우선 순위를 가지는 제 2작업의 요청이 예상되는지를 판단하는 단계;
    상기 판단 결과 상기 제 2작업의 요청이 예상되는 경우, 상기 제 1연산의 수행을 지연시키고, 상기 제 2작업의 실행에 따른 제 2연산을 수행하는 단계; 및
    상기 제 2연산이 완료된 다음, 상기 지연된 제 1연산을 수행하는 단계를 포 함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  18. 제 17 항에 있어서,
    다수의 작업을 우선 순위에 따라 정렬하는 단계; 및
    상기 정렬된 각 작업의 실행에 따른 연산의 중첩 여부를 판단하는 단계를 더 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  19. 제 18 항에 있어서,
    상기 제 2작업의 요청이 예상되는지를 판단하는 단계는, 상기 제 1연산 및 상기 제 2연산이 중첩되어 수행되는 경우, 상기 제 2작업의 요청이 예상되는 것으로 판단하는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
  20. 제 1 항에 있어서,
    상기 제 1연산을 지연시키는 단계는, 상기 제 2연산의 마감 시간이 임박한 경우, 상기 제 연산의 수행을 지연시키는 단계를 포함하는 우선 순위에 따른 비휘발성 메모리의 연산 처리 방법.
KR1020060019539A 2006-02-28 2006-02-28 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법 KR20070089460A (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060019539A KR20070089460A (ko) 2006-02-28 2006-02-28 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법
US11/656,534 US20070204270A1 (en) 2006-02-28 2007-01-23 Apparatus and method for processing operations of nonvolatile memory in order of priority
JP2007042026A JP2007234017A (ja) 2006-02-28 2007-02-22 優先順位による不揮発性メモリの演算処理装置及び方法
CNB200710078777XA CN100530153C (zh) 2006-02-28 2007-02-27 按优先级的次序处理非易失性存储器的操作的设备和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060019539A KR20070089460A (ko) 2006-02-28 2006-02-28 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법

Publications (1)

Publication Number Publication Date
KR20070089460A true KR20070089460A (ko) 2007-08-31

Family

ID=38445500

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060019539A KR20070089460A (ko) 2006-02-28 2006-02-28 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법

Country Status (4)

Country Link
US (1) US20070204270A1 (ko)
JP (1) JP2007234017A (ko)
KR (1) KR20070089460A (ko)
CN (1) CN100530153C (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150080819A (ko) * 2014-01-02 2015-07-10 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 불휘발성 메모리 시스템
US20230236963A1 (en) * 2022-01-26 2023-07-27 Kioxia Corporation Memory system

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8296337B2 (en) 2006-12-06 2012-10-23 Fusion-Io, Inc. Apparatus, system, and method for managing data from a requesting device with an empty data token directive
US8024731B1 (en) * 2007-04-25 2011-09-20 Apple Inc. Assigning priorities to threads of execution
US9183133B2 (en) * 2007-11-28 2015-11-10 Seagate Technology Llc System, method, and computer program product for increasing spare space in memory to extend a lifetime of the memory
US7836226B2 (en) 2007-12-06 2010-11-16 Fusion-Io, Inc. Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment
JP5233360B2 (ja) * 2008-03-27 2013-07-10 富士通株式会社 メモリ制御装置,メモリ制御装置の制御方法および情報処理装置
KR20140059102A (ko) * 2009-06-10 2014-05-15 마이크론 테크놀로지, 인크. 메모리 어레이들에서 감소된 읽기 지연시간에 대한 메모리 작업들의 서스펜션
EP2476039B1 (en) 2009-09-09 2016-10-26 SanDisk Technologies LLC Apparatus, system, and method for power reduction management in a storage device
US8972627B2 (en) 2009-09-09 2015-03-03 Fusion-Io, Inc. Apparatus, system, and method for managing operations for data storage media
US9021158B2 (en) 2009-09-09 2015-04-28 SanDisk Technologies, Inc. Program suspend/resume for memory
US9223514B2 (en) * 2009-09-09 2015-12-29 SanDisk Technologies, Inc. Erase suspend/resume for memory
US8984216B2 (en) 2010-09-09 2015-03-17 Fusion-Io, Llc Apparatus, system, and method for managing lifetime of a storage device
CN103189842B (zh) * 2010-11-15 2016-06-29 富士通株式会社 信息处理装置以及信息处理方法
US9208071B2 (en) 2010-12-13 2015-12-08 SanDisk Technologies, Inc. Apparatus, system, and method for accessing memory
US10817502B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent memory management
US9218278B2 (en) 2010-12-13 2015-12-22 SanDisk Technologies, Inc. Auto-commit memory
US10817421B2 (en) 2010-12-13 2020-10-27 Sandisk Technologies Llc Persistent data structures
CN102789403B (zh) * 2012-07-11 2015-08-12 忆正科技(武汉)有限公司 一种闪存控制器及其控制方法
US9779038B2 (en) * 2013-01-31 2017-10-03 Apple Inc. Efficient suspend-resume operation in memory devices
US8977532B2 (en) 2013-02-22 2015-03-10 Microsoft Technology Licensing, Llc Estimating time remaining for an operation
US9811453B1 (en) * 2013-07-31 2017-11-07 Juniper Networks, Inc. Methods and apparatus for a scheduler for memory access
US9666244B2 (en) * 2014-03-01 2017-05-30 Fusion-Io, Inc. Dividing a storage procedure
US9933950B2 (en) 2015-01-16 2018-04-03 Sandisk Technologies Llc Storage operation interrupt
KR102527925B1 (ko) * 2017-11-29 2023-05-03 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
CN108108187A (zh) * 2017-12-19 2018-06-01 北京云知声信息技术有限公司 运算方法及装置
US11622004B1 (en) * 2022-05-02 2023-04-04 Mellanox Technologies, Ltd. Transaction-based reliable transport

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5394548A (en) * 1992-10-09 1995-02-28 Fujitsu Limited Multi-media scheduling system
US6110220A (en) * 1997-02-24 2000-08-29 Lucent Technologies Inc. Concurrent hardware-software co-synthesis of hard real-time aperiodic and periodic specifications of embedded system architectures
JPH10301793A (ja) * 1997-04-30 1998-11-13 Toshiba Corp 情報処理装置及びスケジューリング方法
US7165252B1 (en) * 1999-06-21 2007-01-16 Jia Xu Method of scheduling executions of processes with various types of timing properties and constraints
US7302685B2 (en) * 2000-06-02 2007-11-27 Honeywell International Inc. Methods and apparatus for sharing slack in a time-partitioned system
US20030061260A1 (en) * 2001-09-25 2003-03-27 Timesys Corporation Resource reservation and priority management
KR100524763B1 (ko) * 2003-07-23 2005-10-31 엘지전자 주식회사 개선된 edf 스케쥴링 방법
US7526765B2 (en) * 2003-11-26 2009-04-28 International Business Machines Corporation Method and apparatus for on-demand resource allocation and job management
ITMI20050063A1 (it) * 2005-01-20 2006-07-21 Atmel Corp Metodo e sistema per la gestione di una richiesta di sospensione in una memoria flash
US7877752B2 (en) * 2005-12-14 2011-01-25 Broadcom Corp. Method and system for efficient audio scheduling for dual-decode digital signal processor (DSP)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150080819A (ko) * 2014-01-02 2015-07-10 삼성전자주식회사 불휘발성 메모리 장치 및 그것을 포함하는 불휘발성 메모리 시스템
US20230236963A1 (en) * 2022-01-26 2023-07-27 Kioxia Corporation Memory system
US11966327B2 (en) * 2022-01-26 2024-04-23 Kioxia Corporation Memory system

Also Published As

Publication number Publication date
CN101030181A (zh) 2007-09-05
CN100530153C (zh) 2009-08-19
US20070204270A1 (en) 2007-08-30
JP2007234017A (ja) 2007-09-13

Similar Documents

Publication Publication Date Title
KR20070089460A (ko) 우선 순위에 따른 비휘발성 메모리의 연산 처리 장치 및방법
KR100725417B1 (ko) 우선 순위에 따른 플래시 메모리의 연산 처리 장치 및 방법
US11520496B2 (en) Electronic device, computer system, and control method
US9711232B2 (en) Dynamic non-volatile memory operation scheduling for controlling power consumption of solid-state drives
US9977487B2 (en) Dynamic non-volatile memory operation scheduling for controlling power consumption of solid-state drives
US8341374B2 (en) Solid state drive and related method of scheduling operations
US8271737B2 (en) Cache auto-flush in a solid state memory device
US8959515B2 (en) Task scheduling policy for limited memory systems
US9075712B2 (en) Scheduling requests in a solid state memory device
US8117415B2 (en) Storage device estimating a completion time for a storage operation
US20130007488A1 (en) Power management of a storage device including multiple processing cores
US9396353B2 (en) Data allocation among devices with different data rates
US10579300B2 (en) Information handling system firmware persistent memory runtime reclaim
US10635337B2 (en) Dynamic configuration of compressed virtual memory
EP1510908B1 (en) Processor resource power management
KR20100042885A (ko) 비휘발성 메모리 장치의 동작 방법
JP6193189B2 (ja) Nandバックグラウンド処理制御装置
KR20100106199A (ko) 저장 오퍼레이션에 대한 완료 시간을 추정하는 방법 및 저장 디바이스
US11620134B2 (en) Constrained carries on speculative counters
US11314686B2 (en) Hardware for supporting time triggered load anticipation in the context of a real time OS
CN113886123A (zh) 一种看门狗喂狗方法、装置、电子设备及存储介质
CN117130787A (zh) 资源调度方法、装置、电子设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E902 Notification of reason for refusal
E601 Decision to refuse application