기존의 EEPROM 대체하기 위한 방안의 하나로 FLASH 를 사용하자는 생각을 검증하는 테스트에 대한 결과를 기술했다.

테스트 조건

현재 마지막 버전 프로그램을 기준으로 채널이 change 될 시, EEPROM 에 write 되어지는 가장 밑단의 함수인 STI2C_Write() 의 앞뒤에 시간을 체크할 수 있는 함수를 넣어서 시간을 측정함

현재 마지막 버전 프로그램을 기준으로 채널이 change 될 시, EEPROM 에 write 되어지는 루틴에 Flash_wirte 의 가장 밑단의 함수인 STFLASH_Erase() , STFLASH_Write() 의 앞뒤에 시간을 체크할 수 있는 함수를 넣어서 시간을 측정함

HardWare Spec 비교

Name Size Erase/Write Cycles
M24C32 4 Kbyte 1,000,000
M29W320DT 4 Mbyte(한 블록 : 64Kbye) 100,000

수행 시간 비교

Name 한번의 Erase/Write Cycle 시간
M24C32 3.604 ms
M29W320DT 1041 ms

결론

FLASH 의 경우, Block 단위로 엑세스하고 같은 주소에 Write 하려면 Erase 를 해야 한다.
Erase 시간이 1초 넘게 걸리기 때문에 일반적으로 사용하기에는 무리가 따른다. 최대한 Erase 를 하지 않고 사용하는 방법을 강구해야 한다.
예를 들어, 채널 정보를 같은 주소가 아닌, 다른 주소에 Write 하는 방법등이다.

  • computer/digitalarena/flash_와_eeprom_의_스펙_및_실험_결과_비교.txt
  • Last modified: 3 years ago
  • by likewind