블로그 이미지
하루, 글. 그림. 영상매체. 표현을 도와주는 기기들. 도전 중. 동화다아아

카테고리

분류 전체보기 (176)
잡담 (1)
IT 기기-리뷰&뉴스 (7)
리뷰 - 도서 (1)
리뷰 - 영상 (0)
리뷰 - 그림/음악 (1)
내장형 하드웨어 (163)
Total635,306
Today53
Yesterday129

- AVR(ATmega128)의 내부적 특징


AVR ATmega128은 AVR RISC 구조를 바탕으로 만들어진 8비트의 CMOS형 마이크로컨트롤러이다. AVR ATmega128 마이크로컨트롤러는 Havard Architecture로 설계되었기 때문에 내부 버스인 프로그램 버스와 데이터 버스가 2가지로 분리되어 있다. AVR ATmega128의 프로그램 메모리는 64K워드의 FLASH 롬으로 이루어져 있으며 이를 위한 버스도 내부에만 존재하게 된다. 내부 SRAM은 4K바이트이고, 내부 EEPROM 메모리도 4K바이트로 구성되어 있다.

AVR ATmega128은 AVR 계열(Family)중 MEGA 계열(Family)에 속하는 프로세서로 아래 그림에서 보듯 AVR Core와 함께 다양한 주변 회로들이 하나의 칩 즉, ATmega128 내부에 내장되어 있음을 알 수 있다. 또한, ATmega128의 외형적인 특징에서 볼 수 있는 각 포트들을 제어할 때 사용되는 DDRx, PORTx, PINx 레지스터들이 각 포트별로 구성되어 있음도 확인할 수 있다. 

64핀의 SMD 타입으로 되어 있는 AVR 칩의 내부 구조를 살펴보면 다음과 같다.

 

[ 그림 ] ATmega128의 내부 구조

    

AVR 칩의 CPU  코아(Core)만 다시 나타내면 아래 그림과 같다.

고성능의 ALU는 모든 32개의 범용 레지스터와 직접 연결되어 단일 사이클로 동작한다.                          

    

[ 그림 ] Atmega128의 Core부분의 블록도

 

CPU Core는 이 칩의 중요 부분으로서 PC(Program counter)가 지시하는 플래시 메모리 번지에서 명령을 인출(fetch)하고 해동(decode)하는 부분과 ALU(Arithmetic &Logic Unit, 산술 논리 장치), 32개의 범용 레지스터, 상태 레지스터(SREG), SP(Stack pointer) 등의 명령처리 관련 부분과 데이터 메모리 및 인터럽트 처리기 등으로 이루어져 있다.

 

■.ATmega128의 명령 실행 사이클

ATmega128은 하버드구조와 2단계 파이프라인 처리 방식으로 프로그램 명령을 인출하여 실행하며, 이 동작을 보면 아래 그림과 같다. AVR의 이러한 진보된 설계 기술은 결국 CPU가 시스템 클럭의 1주기에 평균적으로 1개의 명령을 실행(Fatch + Execute)하도록 함으로써 클럭 주파수 1MHz당 1MIPS의 처리 속도에 해당하는 매우 높은 성능을 구현하는 것이 가능하도록 하였다.  

 

아래 그림은 1클럭 사이클 동안에 1개의 명령에서 2개의 레지스터 오퍼랜드가 사용되는 연산을 수행하고 그 결과를 다시 Destination register에 저장하는 루틴을 보여준다.  


[참조]
AVR(ATmega128)의 내부적 특징 (http://cafe.naver.com/steeng.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=167&)
Posted by 동화다아아

댓글을 달아 주세요

최근에 달린 댓글

최근에 받은 트랙백

글 보관함