월간 전자 연구소

오늘은 일상에서도 쉽게 접할 수 있으며, programmers에게 반드시 필요한 Program code를 이용한 EEPROM에 대해 알아보려 합니다.

EEPROM에 대해 알기 전 대부분은 알고 있겠지만 꼭 알고 있어야 이해가 쉬운 개념이 있습니다.

바로 ROM과 RAM입니다. 

1) ROM 이란?

ROMRead Only Memory의 줄임말로 읽기만 가능한 메모리를 뜻합니다.

 

2) RAM 이란?

RAMRandom Access Memory의 줄임말로 읽기도 가능하고, 다른 정보를 기억시킬 수도 있는 메모리를 뜻합니다.

 

ROM과 RAM을 알았으면 다음으로 알아야 할게 많이 들어봤을 PROM입니다. 보통 프로그래밍을 하시는 분들은 PROM이란 단어를 많이 접할 것이라 생각됩니다. PROM에 대해 간략히 알아보겠습니다.

 

3) PROM 이란?

PROMProgrammable Rom의 줄임말로 프로그래밍이 가능한 ROM을 뜻합니다.

PROM은 내부 회로를 변경하여 DATA를 수정하는 방식인데, 한 가지 단점이라면 내부의 퓨즈를 끊어서 정보를 저장하는 방식이라 한번 DATA를 설정하면 그 이후에는 다시 프로그래밍을 해주지 않는 한 DATA 정보를 변경할 수 없습니다.

이러한 단점을 보완하여 나온 것이 EPROM입니다.

 

4) EPROM 이란?

EPROMEragable PROM의 줄임말로 자외선을 이용하여 정보를 여러 번 썼다 지웠다 가능한 ROM입니다. 즉 READ와 WRITE를 자외선을 이용하여 가능하다는 뜻입니다.

EPROM을 다시 보완해서 나온 것이 오늘 알아볼 EEPROM입니다.

 

1. EEPROM

EEPROM이란? 

EEPROM Erectrically Erased Programmable Rom의 줄임말로 전기적으로 DATA를 썼다 지웠다를 할 수 있는 비휘발성 메모리이다.

WRITE 하는 속도가 매우 빠르고 손쉽게 다룰 수 있다는 점이 장점이다.

 

2. 사용방법

사용방법으로는 두 가지가 있다. 바로 병렬 통신과 직렬 통신의 방법이다.

이 두 가지 방법에 대해 알아보겠다. (직렬 통신은 다음 포스팅에 작성 예정)

1) 병렬 통신

EEPROM에 대해 예로 들 IC는 AT27C020이다. 용량은 2Mb (256K x 8)이다.

우선 PIN이 뜻하는 내용을 살펴보도록 하겠습니다.

A0~A17 : Address(주소)

O0~O7 : DATA(데이터)

CE : Chip Enable(칩 활성화)

OE : Output Enable(출력 활성화)

PGM : PROGRAM STROBE

 

[READ 과정]

LE와 OE 모두 Active Low(LE와 OE = LOGIC '0'일 때 활성화된다는 의미) 이므로 두 PIN 모두 HIGH입력을 해줍니다.

처 음시 작시에는 HIGH로 두어 동작을 시키지 않기 위함입니다.

맨 처음은 Address 핀에 원하는 Address 값을 입력해줍니다. 

LE = LOW(0) 입력  => EEPROM이 활성화됩니다.

OE = LOW(0) 입력 => OUTPUT이 활성화됩니다.

이렇게 설정해주면 DATA 핀에 원하는 DATA를 읽어올 수 있습니다. 

병렬 통신에서는 핀이 제대로 잘 연결만 되어있으면 크게 명령을 해줄 것이 없이 주소를 설정해주고 값을 읽어오면 됩니다.

[WRITE 과정]

LE, OE, PGM 핀 모두 HIGH로 유지(Active Low핀을 모두 HIGH유지) 해줍니다.

LE 핀을 LOW(0)을 입력해주어 칩을 활성화해줍니다.

DATA를 DATA PIN에 입력해주고, PGM을 LOW로 입력해줍니다. => 이과정이 DATA를 ROM에 저장하는 과정입니다.

이때 반드시 OE 핀은 HIGH로 유지되어야 합니다.

**읽기가 끝날 때까지 약 100us의 시간이 소요되므로, 그 후 PGM 핀을 다시 HIGH로 입력해줍니다.

이 과정이 끝나면 해당 Address에 DATA가 WRITE 된 것입니다.

데이터 시트의 타이밍도를 차근차근 설계해나가면 EEPROM 병렬 통신 제어는 쉽게 하실 수 있을 것 같습니다.

다음 포스팅에서는 EEPROM 직렬 통신에 대해 작성해보도록 하겠습니다.

 

이 글을 공유합시다

facebook twitter googleplus kakaoTalk kakaostory naver band