[Maker] ATmega128 알아보기 -01.메모리

in #kr8 years ago (edited)

연관 포스팅은 페이지 아래 링크가 있습니다.

이번엔 ATmega128의 메모리에 대하여 알아보겠습니다. 페이지는 몇장 안되지만 나중에 마이크로 컨트롤 나아가서 프로그램을 짤때 개념이 잘 잡혀있어야 효율적인 메모리 설계를 할수있다고 우리 교수님이 그랬었습니다. ㅜㅜ 처음에는 열심히 했는데 시간이 지나면서 가물 가물 가뭄에 콩나듯이 .... 다시 보니까 처음 부터 다시 해야겠다는 생각이 들었습니다.

데이터 시트 참고 하시구요.
Atmega128 Datasheet

이전 포스팅에서 아래 부분을 설명하겠습니다.

2. 프로그램과 데이터 메모리

  • 128K Byte In-System 프로그램 플래쉬 메모리 (내구성 : 최대 10,000번 쓰고 지울 수 있다.)
  • 칩에 내장된 부트 프로그램으로 In-System 프로그래밍 가능
  • 4K Byte EEPROM (내구성 : 최대 100,000번 쓰고 지울 수 있다.)
  • 4K Byte 내장형 SRAM
  • 최대 64K Byte 이상의 외부 메모리 영역을 갖는다.

1. 프로그램 메모리

ATmega128은 비휘발성 메모리인 재 프로그래밍이 가능한 플래시메모리를 사용하고 있습니다. 128K바이트로 구성되어 있고 그래서 chip 이름도 128의 의미를 내포한 ATmega128인 것입니다. 모든명령어는 효율성을 높이기 위해서 2바이트의 배수로 되어 있어 16비트 32비트로 구성되어 있으로 플래시 메모리는 64K*16 비트 단위로 구성이 됩니다.

01메모리-01메모리구성.jpg

프로그램의 메모리는 소프트웨어의 보호를 목적으로 Boot Flash Section과 응용프로그램 섹션으로 나누어 지게됩니다. 그리고 이 메모리에선 ISP 기술이 사용되여 PC에서 작성된 코딩을 바로 다운로드 할 수 있게 되어 있습니다. 위 소개 나온것 처럼 무려 10,000이나 가능합니다.

2. 데이터 메모리

01메모리-02메모리구성(일반호환).jpg

ATmega128의 테이터 메모리는 레지스터, 내부 데이터 메모리로서의 SRAM, 외부 데이터 메모리 SRAM, 그리고 내부 EEPROM로 4가지 종류로 나눌 수 있습니다.호환모드 ATmega128이란 ATmega103을 말합니다. 일반모드에서는 호환모드보다 레지스터를 좀더 이용할 수 있습니다. 레지스터는 중요한것이 여기서 어떻게 사용하느냐에 따라 chip에서 구현하려는 방식이 달라지게 됩니다. I/O실제 레지스터 맵을 참고 하면 좋을거 같습니다. 여기까지 메모리에 대해서 알아 보았습니다.
01메모리-03.PNG
01메모리-04.PNG
01메모리-05.PNG

Sort:  

좋은정보네요 잘 읽었습니다 고맙습니다

감사합니다... 내용이 일반인이 느끼기에 워낙 어려워서 쉽지는 않을거 같아요. 봐주셔서 정말 감사합니다.

좋은 정보 감사합니다 ㅎㅎ ㅠㅠ 공부하는데 정말 도움이 됩니다!

감사합니다. 더 열심히 포스팅해야겠네요. 힘이납니다 아자아자~!! ^^

Congratulations @kview! You have completed some achievement on Steemit and have been rewarded with new badge(s) :

Award for the number of upvotes

Click on any badge to view your own Board of Honnor on SteemitBoard.
For more information about SteemitBoard, click here

If you no longer want to receive notifications, reply to this comment with the word STOP

If you want to support the SteemitBoard project, your upvote for this notification is welcome!