KR20160063954A - 실시간 멀티칩 플래시 저장장치 및 그 방법 - Google Patents
실시간 멀티칩 플래시 저장장치 및 그 방법 Download PDFInfo
- Publication number
- KR20160063954A KR20160063954A KR1020150004230A KR20150004230A KR20160063954A KR 20160063954 A KR20160063954 A KR 20160063954A KR 1020150004230 A KR1020150004230 A KR 1020150004230A KR 20150004230 A KR20150004230 A KR 20150004230A KR 20160063954 A KR20160063954 A KR 20160063954A
- Authority
- KR
- South Korea
- Prior art keywords
- input
- flash
- time
- output
- chip
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000013519 translation Methods 0.000 claims abstract description 7
- 238000006243 chemical reaction Methods 0.000 claims description 10
- 239000000284 extract Substances 0.000 claims description 7
- 238000012545 processing Methods 0.000 abstract description 11
- 230000000977 initiatory effect Effects 0.000 description 32
- 230000008569 process Effects 0.000 description 12
- 230000004044 response Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
실시간 멀티칩 플래시 저장장치는 플래시 변환 계층 및 플래시 제어 하드웨어로 구성되며, 플래시 변환 계층은 플래시 제어 스케줄러를 구비하며, 플래시 제어 스케줄러는 각각의 입출력 스트림에 대한 실제 서비스 시간을 알 수 없는 상황에서 스케줄링을 수행하기 위해, 임의의 명목 서비스 시간을 이용하여 각각의 입출력 스트림에 대한 요청 예상 처리 시간인 가상 시간을 산출하고, 산출한 가상 시간을 이용하여 스케줄링을 수행하되, 추후에 실제 서비스 시간이 인식되면 실제 서비스 시간을 이용하여 가상 시간을 보정하고, 보정한 가상 시간을 이용하여 스케줄링을 수행한다.
Description
도 2 는 플래시 칩에 입출력 스트림에 대한 플래시 연산이 도착하는 모습의 일예를 나타낸 도면이다.
도 3 은 도 2 에 도시된 각각의 입출력 스트림에서 요청한 플래시 연산들이 각각의 플래시 칩에서 실제로 수행된 모습을 나타낸 도면이다.
도 4a, 4b 는 특정 입출력 스트림 A, B에 대해 산출 및 보정된 가상 시간이 누적된 모습을 도시한 도면이다.
도 5a, 5b 는 본 발명의 일 실시예에 따른 실시간 멀티칩 플래시 저장방법을 도시한 순서도이다.
110: 플래시 연산 스케줄러
200: 플래시 제어 하드웨어
210: 플래시 제어기
Claims (10)
- 복수 개의 입출력 스트림에 도착하는 입출력 요청이 삽입되어 있는 스트림 큐에서 입출력 요청을 추출하여 플래시 연산으로 변환하고, 상기 플래시 연산을 상기 복수 개의 입출력 스트림마다 마련되어 있는 연산 큐에 삽입하고, 상기 복수 개의 입출력 스트림마다 입출력 스트림에 대한 가상 시간을 산출하고, 상기 산출한 가상 시간에 따라 스케줄링을 수행할 수 있도록 상기 복수 개의 입출력 스트림 중 최소 가상 시간을 갖는 입출력 스트림의 연산 큐에서 첫 번째 플래시 연산을 추출하여 해당 플래시 연산이 할당된 플래시 칩의 개시 큐에 삽입하는 플래시 변환 계층; 및
복수 개의 플래시 칩들과, 상기 플래시 칩의 개시 큐에 삽입된 플래시 연산을 미리 설정된 제어기 알고리즘에 따라 실행하고, 상기 개시 큐에 삽입된 플래시 연산의 실행이 종료되면 연산 종료 사건을 상기 플래시 칩의 만료 큐에 삽입하는 플래시 제어기를 구비한 플래시 제어 하드웨어를 포함하는 실시간 멀티칩 플래시 저장장치. - 제 1 항에 있어서,
상기 플래시 변환 계층은,
상기 복수 개의 입출력 스트림에 대한 임의의 명목 서비스 시간을 미리 정해진 연산 규칙에 적용하여 상기 복수 개의 입출력 스트림에 대한 가상 시간을 산출하고, 상기 산출한 가상 시간을 비교하여 최소 가상 시간을 갖는 입출력 스트림을 검출하고, 상기 최소 가상 시간을 갖는 입출력 스트림의 연산 큐에서 첫 번째 플래시 연산을 추출하여 상기 개시 큐에 삽입하는 플래시 연산 스케줄러를 구비하는 것을 특징으로 하는 실시간 멀티칩 플래시 저장장치. - 제 2 항에 있어서,
상기 플래시 연산 스케줄러는,
상기 플래시 제어 하드웨어에 의해 상기 플래시 칩의 만료 큐에 상기 연산 종료 사건이 삽입되면 상기 연산 종료 사건을 통해 해당 입출력 스트림의 입출력 요청에 대한 실제 서비스 시간이 인식되고, 미리 정해진 연산 규칙에 상기 실제 서비스 시간을 적용하여 해당 입출력 스트림에 대한 가상 시간을 보정하는 것을 더 포함하는 실시간 멀티칩 플래시 저장장치. - 제 3 항에 있어서,
상기 플래시 연산 스케줄러는,
상기 실제 서비스 시간을 이용하여 해당 입출력 스트림에 대한 가상 시간이 보정되면, 가상 시간이 보정된 입출력 스트림을 포함하는 복수 개의 입출력 스트림에 대해 스케줄링을 수행하는 실시간 멀티칩 플래시 저장장치. - 제 4 항에 있어서,
상기 플래시 연산 스케줄러는,
상기 가상 시간이 보정된 입출력 스트림을 포함하는 복수 개의 입출력 스트림에 대해 가상 시간을 비교하여 최소 가상 시간을 갖는 입출력 스트림을 검출하고, 상기 최소 가상 시간을 갖는 입출력 스트림의 연산 큐에서 첫 번째 플래시 연산을 추출하여 스케줄링을 수행하는 실시간 멀티칩 플래시 저장장치. - 제 1 항에 있어서,
상기 플래시 연산 스케줄러는,
상기 최소 가상 시간을 갖는 입출력 스트림에 대한 플래시 연산이 할당된 플래시 칩에서 연산이 실행되는 중 상기 입출력 스트림에 새로운 입출력 요청이 들어오면, 상기 최소 가상 시간을 갖는 입출력 스트림에 대한 플래시 연산이 할당된 플래시 칩과 다른 플래시 칩의 개시 큐에 상기 새로운 입출력 요청에 대한 플래시 연산을 삽입하여 상기 최소 가상 시간을 갖는 입출력 스트림에 대한 플래시 연산을 실행하는 동시에 상기 새로운 입출력 요청에 대한 플래시 연산을 실행하는 것을 특징으로 하는 실시간 멀티칩 플래시 저장장치. - 복수 개의 입출력 스트림에 도착하는 입출력 요청이 삽입되어 있는 스트림 큐에서 입출력 요청을 추출하여 플래시 연산으로 변환하고, 상기 플래시 연산을 상기 복수 개의 입출력 스트림마다 마련되어 있는 연산 큐에 삽입하고, 상기 복수 개의 입출력 스트림마다 입출력 스트림에 대한 가상 시간을 산출하고, 상기 산출한 가상 시간에 따라 스케줄링을 수행할 수 있도록 상기 산출한 가상 시간을 비교하여 상기 복수 개의 입출력 스트림 중 최소 가상 시간을 갖는 입출력 스트림을 검출하고, 상기 최소 가상 시간을 갖는 입출력 스트림의 연산 큐에서 첫 번째 플래시 연산을 추출하여 해당 플래시 연산이 할당된 플래시 칩의 개시 큐에 삽입하고,
상기 플래시 칩의 개시 큐에 삽입된 플래시 연산을 미리 설정된 제어기 알고리즘에 따라 실행하고, 상기 개시 큐에 삽입된 플래시 연산의 실행이 종료되면 연산 종료 사건을 상기 플래시 칩의 만료 큐에 삽입하는 실시간 멀티칩 플래시 저장방법. - 제 7 항에 있어서,
상기 플래시 칩의 만료 큐에 연산 종료 사건이 삽입되면 상기 연산 종료 사건을 통해 해당 입출력 스트림의 입출력 요청에 대한 실제 서비스 시간이 인식되고, 미리 정해진 연산 규칙에 상기 실제 서비스 시간을 적용하여 해당 입출력 스트림에 대한 가상 시간을 보정하는 것을 더 포함하는 실시간 멀티칩 플래시 저장방법. - 제 8 항에 있어서,
상기 실제 서비스 시간을 이용하여 해당 입출력 스트림에 대한 가상 시간이 보정되면, 가상 시간이 보정된 입출력 스트림을 포함하는 복수 개의 입출력 스트림에 대해 가상 시간을 비교하여 최소 가상 시간을 갖는 입출력 스트림을 검출하고, 상기 최소 가상 시간을 갖는 입출력 스트림의 연산 큐에서 첫 번째 플래시 연산을 추출하여 스케줄링을 수행하는 것을 더 포함하는 실시간 멀티칩 플래시 저장방법. - 제 7 항에 있어서,
상기 최소 가상 시간을 갖는 입출력 스트림에 대한 플래시 연산이 할당된 플래시 칩에서 연산이 실행되는 중 상기 입출력 스트림에 새로운 입출력 요청이 들어오면, 상기 최소 가상 시간을 갖는 입출력 스트림에 대한 플래시 연산이 할당된 플래시 칩과 다른 플래시 칩의 개시 큐에 상기 새로운 입출력 요청에 대한 플래시 연산을 삽입하여 상기 최소 가상 시간을 갖는 입출력 스트림에 대한 플래시 연산을 실행하는 동시에 상기 새로운 입출력 요청에 대한 플래시 연산을 실행하는 것을 더 포함하는 실시간 멀티칩 플래시 저장방법.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140167618 | 2014-11-27 | ||
KR20140167618 | 2014-11-27 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160063954A true KR20160063954A (ko) | 2016-06-07 |
KR101655008B1 KR101655008B1 (ko) | 2016-09-06 |
Family
ID=56193005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150004230A KR101655008B1 (ko) | 2014-11-27 | 2015-01-12 | 실시간 멀티칩 플래시 저장장치 및 그 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101655008B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018016659A1 (ko) * | 2016-07-18 | 2018-01-25 | 주식회사 파두 | 플래시 스토리지 대역폭의 비례 지분 스케줄링을 위한 방법 및 시스템 |
US10635351B2 (en) | 2017-11-17 | 2020-04-28 | SK Hynix Inc. | Semiconductor device for scheduling tasks for memory device and system including the same |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11915048B2 (en) | 2019-12-26 | 2024-02-27 | Samsung Electronics Co., Ltd. | Method of scheduling jobs in storage device using pre-defined time and method of operating storage system including the same |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090121114A (ko) * | 2008-05-21 | 2009-11-25 | 삼성전자주식회사 | 반도체 디스크 장치 및 그것의 커멘드 스케줄링 방법 |
KR20100040560A (ko) * | 2008-10-10 | 2010-04-20 | 한양대학교 산학협력단 | 완전 연관 섹터 변환 기법을 사용하는 플래시 변환 계층에서 합병연산을 줄이기 위한 멀티 플래시 메모리 관리방법 및 장치 |
KR20140111323A (ko) | 2012-01-05 | 2014-09-18 | 컨버전트 인텔렉츄얼 프로퍼티 매니지먼트 인코포레이티드 | 멀티 칩 패키지 nand 플래시 메모리 시스템에서의 디바이스 선택 방식 |
-
2015
- 2015-01-12 KR KR1020150004230A patent/KR101655008B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090121114A (ko) * | 2008-05-21 | 2009-11-25 | 삼성전자주식회사 | 반도체 디스크 장치 및 그것의 커멘드 스케줄링 방법 |
KR20100040560A (ko) * | 2008-10-10 | 2010-04-20 | 한양대학교 산학협력단 | 완전 연관 섹터 변환 기법을 사용하는 플래시 변환 계층에서 합병연산을 줄이기 위한 멀티 플래시 메모리 관리방법 및 장치 |
KR20140111323A (ko) | 2012-01-05 | 2014-09-18 | 컨버전트 인텔렉츄얼 프로퍼티 매니지먼트 인코포레이티드 | 멀티 칩 패키지 nand 플래시 메모리 시스템에서의 디바이스 선택 방식 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018016659A1 (ko) * | 2016-07-18 | 2018-01-25 | 주식회사 파두 | 플래시 스토리지 대역폭의 비례 지분 스케줄링을 위한 방법 및 시스템 |
US10635351B2 (en) | 2017-11-17 | 2020-04-28 | SK Hynix Inc. | Semiconductor device for scheduling tasks for memory device and system including the same |
Also Published As
Publication number | Publication date |
---|---|
KR101655008B1 (ko) | 2016-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8700838B2 (en) | Allocating heaps in NUMA systems | |
US9047196B2 (en) | Usage aware NUMA process scheduling | |
US8468524B2 (en) | Inter-virtual machine time profiling of I/O transactions | |
US8286177B2 (en) | Technique for conserving software application resources | |
CN105988872B (zh) | 一种cpu资源分配的方法、装置及电子设备 | |
US8413158B2 (en) | Processor thread load balancing manager | |
KR101655008B1 (ko) | 실시간 멀티칩 플래시 저장장치 및 그 방법 | |
US9244737B2 (en) | Data transfer control method of parallel distributed processing system, parallel distributed processing system, and recording medium | |
KR102011726B1 (ko) | 동적 로딩 파일 추출 방법 및 장치 | |
US20160202909A1 (en) | I/o scheduling method using read prioritization to reduce application delay | |
JP2014505959A5 (ko) | ||
US9208099B2 (en) | Adjustment of the number of task control blocks allocated for discard scans | |
US10013288B2 (en) | Data staging management system | |
US20130247037A1 (en) | Control computer and method for integrating available computing resources of physical machines | |
JP6778130B2 (ja) | 仮想計算機システムおよびそのリソース割当て方法 | |
US20120054762A1 (en) | Scheduling apparatus and method for a multicore device | |
JP2022025055A5 (ko) | ||
KR20170139763A (ko) | 네트워크 서비스 검출 방법 및 이를 위한 장치 | |
JP4840605B2 (ja) | Osの起動方法 | |
CN107168788B (zh) | 分布式系统中资源的调度方法以及装置 | |
JP5776813B2 (ja) | マルチコアプロセッサシステム、マルチコアプロセッサシステムの制御方法および制御プログラム | |
US8930776B2 (en) | Implementing DRAM command timing adjustments to alleviate DRAM failures | |
KR101754998B1 (ko) | 멀티 코어 시스템 및 멀티 코어 시스템에서의 데이터 병렬 처리 방법 | |
JP6428557B2 (ja) | 並列化方法、並列化ツール | |
KR102053765B1 (ko) | 테넌트 기반의 동적 프로세서 할당 장치 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
PA0109 | Patent application |
Patent event code: PA01091R01D Comment text: Patent Application Patent event date: 20150112 |
|
PA0201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
PE0902 | Notice of grounds for rejection |
Comment text: Notification of reason for refusal Patent event date: 20160218 Patent event code: PE09021S01D |
|
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20160829 |
|
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20160831 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20160831 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
FPAY | Annual fee payment |
Payment date: 20190624 Year of fee payment: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20190624 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20200721 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20210726 Start annual number: 6 End annual number: 6 |
|
PC1903 | Unpaid annual fee |
Termination category: Default of registration fee Termination date: 20230611 |