| | |
| 이전 로고(1984 ~ 2014)[1] | 마지막 로고(2015 ~ 2016) |
1. 개요
1984년에 설립한 미국의 반도체 회사이다. 주로 저용량 메모리 반도체와 마이크로컨트롤러 제품군으로 우리에게 잘 알려져 있으며 전자공학도들에게는 AVR이라는 마이크로컨트롤러로 꽤 많이 알려져 있다.2016년 1월 19일 강력한 경쟁사였던 마이크로칩 테크놀로지[2]가 36억 달러에 인수하면서 역사 속으로 사라졌다. 마이크로칩 인수 이후에도 기존 8비트 제품군과 Arm 제품군을 내놓고 있지만 마이크로칩에서 천천히 Atmel을 지우면서 자사 제품군으로 편입시키고 있기 때문에[3] 향후 알테라와 인텔의 관계처럼 브랜드가 지워질 것으로 보인다.
2. 주요 제품군
Atmel은 여러 가지 제품군을 보유하고 있으며, 가장 잘 알려진 것은 마이크로컨트롤러 제품군이다.DIP(dual in-line package)타입 마이크로 프로세서(microprocessor) 칩(chip) ATMEGA328P
| |
| Microchip Technology 회사의 아트멜 ATMEGA328P 칩(chip) 그래픽 예시[4] |
2.1. 마이크로컨트롤러 제품군
2.1.1. 8비트 AVR
우리가 과제용으로 많이들 사용하는 AVR 마이크로컨트롤러가 이 회사 제품이다. 크게 AVR Classic, megaAVR, TinyAVR, Xmega 로 구분할 수 있으며, 그 중에서특징이라면 다른 MCU들에 비해 강인한 전기적 특성이다. Renesas 사의 주력 MCU인 RL78은 핀 당 출력 전류가 0.5mA 급의 핀이 있는 등 전기적 특성이 불확실하지만, AVR 은 모든 핀이 기본적으로 40mA까지 출력을 지원한다. 또한 스파크 등에 강력하여 다른 MCU가 죽어나갈 스파크에서도 AVR 은 어느 정도 버티는 모습을 보여준다.
다만 이런 특성에도 단점은 있는데, 대부분의 MCU가 16MHz[5] 의 저속으로 동작하며, 무엇보다 저전력 저발열이 대세인 요즘 시대에 맞지 않게 전기를 많이 먹는다는 점이다(...). 이를 극복하고자 Picopower AVR 같은 제품군을 많이 출시하고 있다.[6]
8비트 AVR 제품군에 대한 간략한 분류는 다음과 같다.
| AVR Classic | C를 이용한 제어가 불가능하고 오로지 어셈블리로만 제어 가능. 요즘에는 잘 쓰이지 않는다 |
| megaAVR | 8비트 AVR 의 실질적인 주력. 싼 가격에 적절한 성능에 적절한 안정성을 가졌다. Arduino 제품군에 사용된 대부분의 MCU가 이 제품군이며, Arduino Leonardo 에 탑재된 ATmega32U4도 이 제품군이다. 또는 아두이노 메가에 사용되는 산업용 제품 ATmega2560도 있다.[7] |
| TinyAVR | 매우 적은 핀 수를 가진 제품군. 주로 단순 제어 시스템에 탑재된다. C 컴파일러가 지원하는 종류도 있지만, 어셈블리로만 프로그램 가능한 것도 있다. JTAG 을 통한 디버깅은 불가능하고 오로지 ISP 장비로만 프로그램 가능하다 |
| Xmega | 8비트 AVR 라인업의 끝판왕. 다른 제품군들이 16MHz 이하로 동작할 때, 이 제품군은 32MHz 로 동작한다. 또한 ATXmega128A1(U) 제품군만 보더라도 UART 통신이 8개나 들어가는 등 확장성의 끝판왕을 보여준다. 다만 애초에 보기 드문 제품인데다가 이정도 급 기능이 요구된다면 보통 32비트 프로세서를 쓰기 때문에 별로 사용되지 않았고 megaAVR이 마이크로칩에 인수된 이후에도 계속 생산이되는데 불구하고 Xmega라인업은 단종되었다. |
2.2. 32비트 AVR
한참 Arm이 Arm7TDMI 를 가지고 MCU 시장에 진출했을 때, Atmel에서 야심차게 Arm에 대항하려고 출시한 제품. 기본 66MHz 정도의 클럭에 몇몇 제품군들은 SD 카드 인터페이스도 달고 있는 등 꽤 쓸만한 MCU였다. 단점으로는 전기적 특성이 형편없고 (기본 출력전류가 골고루 0.8mA 이다.) 결정적으로 최근에 시장을 지배하는 Arm 코어가 아니기 때문에 점점 사장되어가는 MCU 제품군.32비트 AVR 제품군에 대한 간략한 분류는 다음과 같다.
| A 시리즈 (AT32UC3A - ) | 크게 A0/A1 시리즈와 A3/A4 시리즈로 분류할 수 있다. 이 시리즈의 특징은 괴악한 확장성에 있다. USB 등은 기본으로 들어가고, 이더넷 장치에 A3/A4 시리즈는 SD 카드 인터페이스까지 안에 내장되어 있다. 그만큼 압도적인 핀 수와 가격을 자랑한다. 시중에 A 시리즈 개발 보드가 싸게 풀린 것이 있으니 그것을 사서 진행하면 된다. Atmel 사의 최신형 JTAG 장비에 들어가는 EDBG 칩이 바로 이 A 시리즈 32비트 AVR 을 개조한 칩이다. |
| B 시리즈 (AT32UC3B - ) | 적절한 크기에 적절한 성능을 가진 제품군. 64핀 제품이 가장 많은 핀 수를 가진 제품이며 주로 USB 포터블 장치가 타겟이다. |
| C 시리즈 (AT32UC3C - ) | 이더넷 컨트롤러와 부동 소수점 유닛, ADC, DAC 가 탑재된 제품군이다. CAN 통신 장치도 2개나 탑재되어 있다. 아날로그 장비가 많이 필요하다면 고려해보자. |
| D 시리즈 (AT32UC3D - ) | 보급형 제품. 홈페이지에서도 Entry Level 이라고 표기되어 있다. |
| L 시리즈 (AT32UC3L - ) | 저전력에 특화된 제품. |
| 오디오 시리즈 (AT32UC3A - ) | MCU 주제에 오디오 디코더가 들어있는 괴악한 물건이다. 간단한 오디오 장비를 만들고 싶다면 고려해보자. |
그 외에 AP 칩으로 통합된 AVR 32도 있는데, 몇몇 잉여인간들은 이 32비트 AVR 을 가지고 퀘이크 1을 돌리기까지 했다 (...)
2.3. Arm 제품군
Atmel에서는 여러 Arm 제품군이 존재하는데, 우리에게 친숙한 것들은 Arm7TDMI 를 활용한 AT91SAM7S64, 256 같은 것들이 있다. 이 칩들은 SAM-BA 를 이용해서 프로그램하거나, 다른 JTAG 장비를 통해 프로그램을 넣을 수 있다. 하지만, 이 칩들은 장점보다는 단점이 더 많은 칩들인데, 우선 프로그램을 하려면 부트로더를 올려줘야 하는데, 이 작업이 꽤나 괴악하다.[8] 그런데 부트로더를 써서 프로그램을 업로드하면 부트로더가 지워진다(...) 따라서, 프로그램을 수정하려고 하면 매 번마다 저런 노가다를 해야 한다! 그렇다면 남은 방법은 JTAG 장비를 쓰는 방법밖에 없는데, 이 장비가 여간 비싼 게 아니다. (15~20만 원 정도 한다. 물론 다른 DSP 프로세서의 JTAG 장비보다는 싸지만..)[9] 따라서, 저 칩은 사실상 사장된 상태이다.또 다른 제품군으로는 Arm Cortex-M 시리즈 를 도입한 제품군이다. 부품 번호가 AT91SAM3, 4 등으로 시작하며, Cortex-M 기반이니만큼 뛰어난 성능을 보여준다. Arduino 의 Arm 제품군 라인업에 탑재된 것이 바로 이 제품군인데, Due 는 AT91SAM3 계열의 프로세서가, Zero는 Cortex-M0 기반의 MCU가 탑재되었다.
2.4. 무선 마이크로컨트롤러
주로 8비트 megaAVR 코어나 Arm Cortex-M0 코어에 지그비 모듈을 박아넣어 무선 통합 SoC 형태로 출시된다. 아쉽게도 블루투스 관련 제품은 포함되어 있지 않다. 최근에는 IoT 시장에 맞추어 Wi-Fi 모듈이 통합된 제품을 출시하고 있다.2.5. 우주선 프로세서
SPARC에 기반해서 우주선에 들어가는 LEON 프로세서를 개발해서 출시했고 32비트 프로세서로서 빠른 처리능력 덕분에 최신 장비들에 탑재되고 있으며 한국에서도 다누리의 메인 프로세서로 쓰이고 있다.[1] 현재도 이 로고는 마이크로컨트롤러 패키징에 새기는 로고로 쓰고 있다.[2] PIC 제조사로 유명하다. 산업 현장에서 많이 쓰인다.[3] MPLAB IDE에서 AVR 마이크로컨트롤러 개발을 지원하기 시작했으며 아예 자사 JTAG로 AVR JTAG처럼 쓸 수 있는 최신 JTAG를 내놓기도 했으며 2020년 이후에는 아예 기존에 Atmel Studio를 Microchip Studio로 리브랜딩 했다. 이마저도 2022년 업데이트 지원이 중단되고 본격적으로 MPLAB에 편입되는 중이다.[4] 마이크로테크놀로지 회사 아트멜 ATMEGA 시리즈 데이타시트https://ww1.microchip.com/downloads/en/DeviceDoc/ATmega48A-PA-88A-PA-168A-PA-328-P-DS-DS40002061B.pdf[5] 몇몇 제품은 최대 20MHz 까지가 공식 지원 클럭이며, ATmega1281 등은 크리스탈 발진기를 바꿔(...) 20MHz 로 동작하도록 오버클럭이 가능하다.[6] Arduino Uno 에 들어간 ATmega328P 가 바로 Picopower AVR 제품군이다.[7] ATmega2560 #[8] 보드의 Erase 스위치를 켜고 10초 동안 기다린 다음, 전원을 내리고 스위치를 끈 다음 다시 켜야 부트로더가 활성화된다.[9] 요즘에는 openocd 호환품을 사면 4 ~ 5만 원대로 많이 싼 것을 구할 수 있다. 다만 소프트웨어가 CUI 기반이니 통합은 알아서 해야 할 것이다(...)