ATxmega 패밀리와 기존의 ATmega 패밀리와의 차이점
- 최초 등록일
- 2016.05.30
- 최종 저작일
- 2012.04
- 17페이지/ 한컴오피스
- 가격 1,000원
목차
없음
본문내용
ATxmega 패밀리는 기존의 AVR 모델들과는 어셈블리 명령 레벨에서 상향 호환성을 가지고 있기 때문에 동일한 AVR 계열로 분류되기는 하지만, 내부의 구조나 기능적으로는 거의 다른 모델이라고 느껴질만큼 많은 사항이 달라졌다.
특히 여기에 내장된 주변장치의 기능들은 기존의 8비트 AVR이 아니라 32비트 ARM 마이크로컨트롤러에서 사용하던 많은 기능들을 가져와 적용한 것으로 보인다.
◐CPU 코어 부분
①기존의 AVR모델과 어셈블리 언어 명령은 기능적으로 상향 호환성을 유지하고 있으나 각 명령의 실행시간은 많이 달라졌다.
②정보 보안을 위한 AES(Advanced Encryption Standard) 및 DES(Data Encryption Standard) 암호화 알고리즘을 구현하기 위함 크립토 엔진(Crypto Engine)을 가지고 있으며, 이를 위한 어셈블리 언어 명령 DES가 추가되었다.
③기존의 AVR모델에서는 범용 레지스터 R0~R31이 데이터 메모리의 첫 부분에 위치하였으나, ATxmega 패밀리에서는 이것들이 데이터 메모리 영역에 속하지 않고 돍립적으로 분리되었다.
④기존의 AVR 모델에서는 16비트 레지스터를 액세스할 때 스기 동작은 상위 바이트를 먼저 수행하고 읽기 동작은 하위 바이트를 먼저 수행하였으나, ATxmegag 패밀리에서는 16비트 레지스터를 액세스할 때 항상 하위 바이트를 먼저 액세스한다.
⑤기존의 AVR모델은 임시 레지스터를 1개만 가져서 16 비트 레지스터를 액세스하는 도중에 인터럽트가 발생하면 문제가 되지만, ATxmega 패밀리에서는 대부분의 모듈이나 주변장치마다 임시 레지스터를 따로 가져서 16비트 레지스터를 액세스하는데 따르는 이러한 문제가 상당히 완화되었다.
⑥기존의 AVR 모델에서는 시스템 클록의 선택과 같은 중요한 시스템 설정 기능을 대부분 퓨즈 바이트로 처리하였으나, ATxmega 패밀리에서는 이러한 기능의 상당수가 사용자 프로그램에서 레지스터 변경으로 설정할 수 있게 되었고 따라서 퓨즈 바이트에서 설정하는 기능 중에는 사용자가 신경을 써야 할 사항이 별로 없어졌다.
참고 자료
없음