메뉴 건너뛰기

TSKit

nand 파일 시스템과 메모리

2007.07.27 00:13

TsKit 조회 수:5508

지난 몇년간 nand자만 들어도 지겹다.
nand 파일 시스템은 남이 구현해 놓은 것을 볼 기회도 있었지만,
아무리 보고 또 봐도 이해할 수가 없어서,
가져다 쓰고 고치는 것은 좋아해도 스스로짜는 것은 무지 싫어하는 성격이라지만
이번만은 할 수 없이 이론만을 가지고 구현을 해 왔다.

cpu를 바꿔서도 구현을 해보았는데 늘 새로 짜는 기분이 든다.

nand 파일시스템의 기본은 logical address를 phycical address로 바꾸어주는
테이블이 필요하다.
테이블이 있으면 속도는 빠르지만,
최대 short (type) X 4(plane) X 1024(block) = 8kbytes나 잡아 먹는다.

애초 atmega에서 구현을 생각할때 이 부분을 어찌할까 고민을 많이 했는데
atmega128이 4k ram, 도저히 안되는 것이 아닐까?
페이지를 r/w할때 매번 spare area에서 LSN(logical sector address)을 읽어오는 방식으로 변경하였다.
테이블이 필요없어지지만 속도는 많이 느릴것이다.

또 문제가있다.
nand large page type은 page size가 2k bytes나 된다.@.@
512 interface방식으로 바꾸어야한다.

그리고 ecc관련해서 보통 돌아다니는 소스가 256byte 테이블을 가지고 있다.
ecc 알고리즘을 이해하면 테이블을 없앨것도 같은데 이해하기 어렵다.

지금은 ecc 구현중...

tskit
번호 제목 글쓴이 날짜 조회 수
30 sp232 capacitor 오류 TsKit 2007.07.15 6277
29 atmega spi 2x mode TsKit 2007.07.12 6390
28 extern array problem TsKit 2007.07.10 4140
27 bulk-in error TsKit 2007.07.08 3859
26 10ms timer 설정(클럭 설정) TsKit 2007.06.25 4377
25 long 연산 주의할점 TsKit 2007.06.24 4768
24 long(32bit) 연산 주의할점 II TsKit 2007.09.01 5469
23 ecc와 속도 TsKit 2007.08.20 3999
22 const data를 flash area로... TsKit 2007.07.31 4229
21 device driver단의 read timing TsKit 2007.07.29 4190
20 nand 파일 시스템과 속도 TsKit 2007.07.27 4688
» nand 파일 시스템과 메모리 TsKit 2007.07.27 5508
18 jumper input 포트가 필요해서 file TsKit 2007.07.26 3952
17 sd card 초기화 에러시... TsKit 2007.07.25 5802
16 Timer에게 일을 주자! TsKit 2007.07.25 3947
15 fat32 포맷할 때는 TsKit 2007.07.24 4253
14 Nand 플래시의특성과 파일시스템[펌글] TsKit 2007.07.24 10625
13 아답터 전원 이야기 TsKit 2007.09.13 4300
12 Font 이야기 TsKit 2007.09.04 4440
11 avrstudio runtime error 발생 [1] TsKit 2008.03.02 6126