플래시 메모리는 비휘발성(non-volatility), 빠른 접근 속도, 저전력 소비, 그리고 간편한 휴대성 등의 장점을 가지므로 최근에 다양한 임베디드 시스템에서 많이 사용되고 있다. 그런데 플래시 메모리는 그 하드웨어 특성상 플래시 변환 계층(FTL: Flash Translation ayer)이라는 시스템 소프트웨어를 필요로 한다. 본 논문에서는 LSTAFF(Large Sate Transition Applied FastHash Translation Layer)라 명명된 대블록 플래시 메모리를 위한 새로운 FTL 알고리즘을 제안한다. LSTAFF는 운영체제가 다루는 데이터 섹터 크기 보다 큰 플래시 메모리의 페이지를 고려한 FTL 알고리즘이며, 기존 FTL 알고리즘과 제안될 LSTAFF를 구현하여 플래시 시뮬레이터를 이용하여 성능을 비교하였다.
플래시 메모리는 비휘발성(non-volatility), 빠른 접근 속도, 저전력 소비, 그리고 간편한 휴대성 등의 장점을 가지므로 최근에 다양한 임베디드 시스템에서 많이 사용되고 있다. 그런데 플래시 메모리는 그 하드웨어 특성상 플래시 변환 계층(FTL: Flash Translation ayer)이라는 시스템 소프트웨어를 필요로 한다. 본 논문에서는 LSTAFF(Large Sate Transition Applied Fast Hash Translation Layer)라 명명된 대블록 플래시 메모리를 위한 새로운 FTL 알고리즘을 제안한다. LSTAFF는 운영체제가 다루는 데이터 섹터 크기 보다 큰 플래시 메모리의 페이지를 고려한 FTL 알고리즘이며, 기존 FTL 알고리즘과 제안될 LSTAFF를 구현하여 플래시 시뮬레이터를 이용하여 성능을 비교하였다.
Recently, flash memory is widely used in various embedded applications since it has many advantages in terms of non-volatility, fast access speed, shock resistance, and low power consumption. However, it requires a software layer called FTL(Flash Translation Layer) due to its hardware characteristic...
Recently, flash memory is widely used in various embedded applications since it has many advantages in terms of non-volatility, fast access speed, shock resistance, and low power consumption. However, it requires a software layer called FTL(Flash Translation Layer) due to its hardware characteristics. We present a new FTL algorithm named LSTAFF(Large State Transition Applied Fast flash Translation Layer) which is designed for large block flash memory The presented LSTAFF is adjusted to flash memory with pages which are larger than operating system data sector sizes and we provide performance results based on our implementation of LSTAFF and previous FTL algorithms using a flash simulator.
Recently, flash memory is widely used in various embedded applications since it has many advantages in terms of non-volatility, fast access speed, shock resistance, and low power consumption. However, it requires a software layer called FTL(Flash Translation Layer) due to its hardware characteristics. We present a new FTL algorithm named LSTAFF(Large State Transition Applied Fast flash Translation Layer) which is designed for large block flash memory The presented LSTAFF is adjusted to flash memory with pages which are larger than operating system data sector sizes and we provide performance results based on our implementation of LSTAFF and previous FTL algorithms using a flash simulator.
* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.
문제 정의
즉, 대블록 플래시 메모리는 데이터를 읽거나 쓸 때 그 기본 단위가 2KB훅은 1K①임에 비하여 대부분의 운영체제에서 데이터 섹터 크기는 512B이다. 따라서 대블록 플래시 메모리를 위한 새로운 FTL 알고리즘이 필요하며, 이에 본 논문에서는 LSTAFF(Large State Transition Applied Fast Flash Translation Layer)라 불리는 FTL 알고리즘을 제안한다. LSTAFF는 소블록 플래시 메모리를 위해 제안된 STAFFI3]의 대블록 플래시 메모리로의 확장이다.
본 논문에서 LSTAFF라 불리는 대블록 플래시 메모리를 위한 FTL 알고리즘을 제안하였다. LSTAFF는 파일 시스템의 데이터 섹터 크기에 비하여 큰 페이지를 가지는 대블록 플래시 메모리에 대하여 가장 좋은 성능을 내도록 디자인되었다.
(그림 1)의 플래시 시스템 아키텍 쳐에서 LSTAFF 알고리즘과 2장에서 소개된 블록 사상 알고리즘을 구현하였다. 블록 사상 알고리즘에서 하나의 논리 블록은 두 개의 물리 블 록에 사상될 수 있도록 하였는데 이 방법이 좀 더 효율적인 방법으로 LSTAFF 방법과 보다 공정한 비교를 하기 위해서이다. (그림 1)의 플래시 메모리 단계는 실제 플래시 메모리와 같은 성질을 가지는 플래시 에뮬레이터를 구현하여 실험 하였다.
가설 설정
(그림 1)에서 파일 시스템 단계는 임베디드 시스템에서 많이 사용되는 FAT 파일 시스템[12]을 가정한다. (그림 5)는 FAT 파일 시스템의 디스크 포멧을 보인다.
사상정보를 플래시 메모리에 저장하기.위하여 페이지 포멧을 (그림 3)과 같이 디자인하였으며, (그림 3)에서 한 블록의 한 페이지는 네 개의 섹터로 구성된다고 가정한다. 앞서 언급한 대로 대 블록 플래시 메모리의 논리 물리 사상에는 섹터, 페이지, 블록의 세단계의 사상이 존재하기 때문에, 논 리 섹터 번호(Isnl, lsn2, lsn3, lsn4), 논리 페이지번호 (Ipn), 논리 블록 번호가 플래시 메모리의 각 페이지에 존재하여 주로 메타
제안 방법
LSTAFF는 STAFF와 같이 플래시 메모리의 삭제 단위인 블록에 대하여 상태 전이 개념을 도입하여 입력 패턴에 따라서 블록의 상태가 전이됨으로써 삭제 연산을 최소화한다. 또한, 대블록 플래시 메모리에 데이터를 저장할 때 필요한 몇 가지 휴리스틱을 제안하였다. 시뮬레이션 결과에 의하면 LSTAFF는 블록 사상에 비하여 총 수행 시간에 있어서 블록 사상의 3.
따라서 대블록 플래시 메모리에서의 FTL 문제를 정형화하면 다음과 같다. 먼저 플래시 메모리는 1개의 물리 페이지 로 구성되고 각 페이지는 m개의 물리섹터로 구성된다고 하고, 파일 시스템은 플래시 메모리를 n 개의 논리섹터로 간주한다고 하자. 이때 n은 l*m보다 작거나 같다.
여기서 부트섹터와, 파일 할당 테이블, 루트 디렉토리가 볼륨 파일에 비하여 자주 접근되 는 것을 예즉할 수 있다. 본 논문에서는 Symbian [13] 운영체제가 1MB의 파일 쓰기 요청에 대하여 블록 디바이스 드라이버단으로 보내는 접근 패턴을 실험에 이용하였다. 이 접근 패턴은 실제 임베디드 응용의 패턴과 유사하다.
이론/모형
LSTAFF는 대블록 플래시 메모리를 위한 FTL 알고리즘이다. LSTAFF는 STAFF 알고리즘[3]을 확장하여 대블록 플래시 메모리에 적용하였다.
성능/효과
시뮬레이션 결과를 표로 요약하면<표 1>과 같다. LSTAFF 알고리즘은 블록 사상 기법에 비하여 읽기, 쓰기, 삭제 연산을 각각 3.15%, 3.61%, 1.31%만을 수행하여 수행시간이 3.33%만 소요됨을 알 수 있다.
본 논문에서 LSTAFF라 불리는 대블록 플래시 메모리를 위한 FTL 알고리즘을 제안하였다. LSTAFF는 파일 시스템의 데이터 섹터 크기에 비하여 큰 페이지를 가지는 대블록 플래시 메모리에 대하여 가장 좋은 성능을 내도록 디자인되었다. LSTAFF는 STAFF와 같이 플래시 메모리의 삭제 단위인 블록에 대하여 상태 전이 개념을 도입하여 입력 패턴에 따라서 블록의 상태가 전이됨으로써 삭제 연산을 최소화한다.
LSTAFF의 비용함 수는 플래시 메모리의 입출력의 경우 대블록 플래시 메모리나 소블록 플래시 메모리 모두 페이지 단위의 입출력을 수행하므로 STAFF에서의 비용함수와 동일하다. 단, 대블록 플래시 메모리에서는 페이지의 하나 이상의 섹터가 동시에 읽거나 쓰여질 수 있으므로 전체 시스템 성능은 LSTAFF가 STAFF보다 우수하다.
또한, 대블록 플래시 메모리에 데이터를 저장할 때 필요한 몇 가지 휴리스틱을 제안하였다. 시뮬레이션 결과에 의하면 LSTAFF는 블록 사상에 비하여 총 수행 시간에 있어서 블록 사상의 3.33%만이 소요되었다.
처음에 플래시 메모리는 비어 있으며 실험 횟수가 증가할수록 플래시 메모리에 데이터가 쌓이게 된다. 실험 결과는 LSTAFF가 블록 사상에 비하여 훨씬 좋은 성능을 보임을 알 수 있다. 그 이유는 LSTAFF는 상태블록 개념을 이용하여 갱신연산이 일어나더라도 성능 저하가 최소화되기 때문이다.
참고문헌 (14)
Amir Ban, 'Flash file system,' United States Patent, No.5,404,485, 1995
Amir Ban, 'Flash file system optimized for page-mode flash technologies,' United States Patent, No.5,937,425, 1999
Tae-Sun Chung, Stein Park, Myung- Jun Jung, and Bumsoo Kim, 'STAFF: State Transition Applied Fast Flash Translation Layer,' In 17th International Conference on Architecture of Computing Systems, 2004
Petro Estakhri and Berhanu Iman, 'Moving sequential sectors within a block of information in a flash memory mass storage architecture,' United States Patent, No.5,930,815, 1999
Jesung Kim, Jong Min Kim, Sam H. Noh, Sang Lyul Min, and Yookun Cho, 'A space-efficient flash translation layer for compactflash systems,' IEEE Transactions on Consumer Electronics, Vol.48, No.2, pp.366-375, 2002
Takayuki Shinohara, 'Flash memory card with block memory address arrangement,' United States Patent, No.5,905,993, 1999
Bum soo Kim and Gui young Lee, 'Method of driving remapping in flash memory and flash memory architecture suitable therefore,' United States Patent, No.6,381,176, 2002
M. Resenblum and J. Ousterhout, 'The Design and Implementation of a Log-structured File System,' ACM Transactions on Computer Systems, Vo1.10, No.1, pp.26-52, 1992
M. Wu and W. Zwaenepoel, 'eNVy: A Non-Volatile, Main Memory Storage System,' In International Conference on Architectural Support for Programming Languages and Operating Systems, 1994
A. Kawaguchi, S. Nishioka, and H. Motoda, 'Flash Memory based File System,' In USENIX 1995 Winter Technical Conference, 1995
John E. Hopcroft and Jeffrey D. Ullman, 'Introduction to automata theory, languages, and computation,' AddisonWesley Publishing Company, 1979
Microsoft Corporation, 'Fat32 file system specification,' Technical report, Microsoft Corporation, 2000
Symbian, http://www.symbian.com, 2003
Samsung Electronics, 'Nand flash memory & smartmedia data book,' 2004
※ AI-Helper는 부적절한 답변을 할 수 있습니다.