티스토리 뷰

8051에 대한 이해를 위해 메모리 구조를 들여다 보기

8051 디바이스들은 코드 효율성 및 빠른 메모리 접근을 최대화하기 위해 다양한 메모리 영역을 사용하는 단순하지만 효율적인 프로그래밍 모델과 비용 효율적인 하드웨어를 겸비하고 있습니다. 다음 그림은 고전적인 8051 장치의 메모리 레이아웃을 보여줍니다.


고전적인 8051 디바이스의 레이아웃

8051 아키텍쳐 즉 8051 구조는 3가지 다른 물리적 메모리 영역을 제공합니다.

1. DATA / IDATA

2. CODE

3. XDATA


ARM 참조 그림



각 메모리 영역별 의미

1. DATA / IDATA 메모리는 '레지스터 뱅크 256 바이트 온칩 램'과 '빠른 변수 접근을 위해 사용되는 비트 접근 가능한 공간(Bit Addressable Space)'으로 구성되어 있습니다. 일부 확장 디바이스들은 64KB까지 확장된 데이터 공간 EDATA를 제공합니다. 


2. CODE 메모리는 프로그램 코드 및 상수로 사용되는 64킬로바이트 ROM 공간으로 구성되어 있습니다. 케일 링커(Keil Linker)는 물리적 메모리 공간을 확장 할 수 있는 코드 뱅킹을 지원합니다. 확장 된 변종에는 16메가 바이트 ROM까지 공간을 사용할 수 있습니다.


3. XDATA 메모리는 오프칩 주변 장치 및 메모리 어드레싱을 위한 64킬로바이트 RAM 공간으로 구성되어 있습니다. 오늘날, 대부분의 디바이스들은 XDATA에 매핑되는 일부 온칩 RAM을 제공 합니다.