ARM7

**ARM7**은 ARM 홀딩스가 마이크로컨트롤러에 사용하기 위해 라이선스를 부여한 32비트 RISC ARM 프로세서 코어 그룹이다. ARM7 코어 제품군은 ARM700, ARM710, ARM7DI, ARM710a, ARM720T, ARM740T, ARM710T, ARM7TDMI, ARM7TDMI-S, ARM7EJ-S로 구성된다. 이 제품군에서 가장 인기 있는 코어는 ARM7TDMI와 ARM7TDMI-S였다. ARM7 코어는 **1993년**부터 **2001년**까지 출시되었으며, 새로운 IC 설계에는 더 이상 권장되지 않는다. 최신 대안으로는 ARM Cortex-M 코어가 있다.

## 개요

이 세대는 이전 설계에 비해 코드 밀도가 향상된 썸(Thumb) 16비트 명령어 집합을 도입했다. 가장 널리 사용되는 ARM7 설계는 ARMv4T 아키텍처를 구현하지만, 일부는 ARMv3 또는 ARMv5TEJ를 구현한다. ARM7TDMI는 37개의 레지스터(31개의 GPR과 6개의 SPR)를 가진다. 이 모든 설계는 폰 노이만 구조를 사용하므로 캐시를 포함하는 몇몇 버전은 데이터 캐시와 명령어 캐시를 분리하지 않는다.

일부 ARM7 코어는 구식이다. 역사적으로 중요한 모델 중 하나인 **ARM7DI**는 JTAG 기반의 온칩 디버깅을 도입했다는 점에서 주목할 만하다. 이전 ARM6 코어는 이를 지원하지 않았다. "D"는 디버깅을 위한 JTAG TAP를 나타냈고, "I"는 하드웨어 브레이크포인트 및 와치포인트를 지원하고 디버깅을 위해 시스템을 정지시킬 수 있는 ICEBreaker 디버그 모듈을 의미했다. 이후 코어들은 이 지원을 포함하고 강화했다.

이것은 모바일 장치 및 기타 저전력 전자 제품을 위해 설계된 다재다능한 프로세서이다. 이 프로세서 아키텍처는 일반적인 0.13 µm 공정에서 최대 130 MIPS를 처리할 수 있다. ARM7TDMI 프로세서 코어는 ARM 아키텍처 **v4T**를 구현한다. 이 프로세서는 ARM 및 썸 명령어 집합을 통해 32비트 및 16비트 명령어 모두를 지원한다.

ARM은 이 프로세서를 다양한 반도체 회사에 라이선스하며, 이 회사들은 ARM 프로세서 아키텍처를 기반으로 완전한 칩을 설계한다.

### ARM 라이선스
ARM 홀딩스는 자체 설계에 기반한 CPU 장치를 제조하거나 판매하지 않고, 관심 있는 당사자들에게 프로세서 아키텍처를 라이선스한다. ARM은 비용과 납품물에서 다양한 라이선스 조건을 제공한다. 모든 라이선시에게 ARM은 ARM 코어의 통합 가능한 하드웨어 설명과 완전한 소프트웨어 개발 도구 세트, 그리고 ARM CPU를 포함하는 제조된 규소를 판매할 권리를 제공한다.

### 실리콘 맞춤화
통합 장치 제조업체(IDM)는 ARM 프로세서 IP를 합성 가능한 RTL (베릴로그로 작성됨) 형태로 받는다. 이 형태로 그들은 아키텍처 수준의 최적화 및 확장을 수행할 수 있다. 이를 통해 제조업체는 더 높은 클럭 속도, 매우 낮은 전력 소비, 명령어 세트 확장, 크기 최적화, 디버그 지원 등과 같은 맞춤형 설계 목표를 달성할 수 있다. 특정 ARM CPU 칩에 어떤 구성 요소가 포함되었는지 확인하려면 제조업체의 데이터시트 및 관련 문서를 참조해야 한다.

## 코어

오리지널 ARM7은 이전 ARM6 설계를 기반으로 하며 동일한 ARMv3 명령어 집합을 사용했다. ARM710 변형은 아콘 Risc PC의 CPU 모듈에 사용되었으며, 최초의 ARM 기반 단일 칩 시스템 설계인 ARM7100과 ARM7500이 이 코어를 사용했다.

### ARM7TDMI
ARM7TDMI (**ARM7** + 16비트 '''T'''humb + JTAG **D**ebug + fast **M**ultiplier + enhanced **I**CE) 프로세서는 ARMv4 명령어 집합을 구현한다. 이는 여러 반도체 회사에 제조 라이선스가 부여되었다. 2009년에는 가장 널리 사용되는 ARM 코어 중 하나였으며, 수많은 깊이 내장된 임베디드 시스템 설계에서 찾아볼 수 있다. 인기 있는 비디오 게임 콘솔인 게임보이 어드밴스에 사용되었다.

텍사스 인스트루먼트는 ARM7TDMI의 라이선스를 획득하여 노키아 6110에 설계했다. 노키아 6110은 최초의 ARM 기반 GSM 휴대폰이었다. 이는 3210과 3310을 포함하여 이 프로세서를 사용하는 인기 있는 노키아 휴대폰 시리즈로 이어졌다.

**ARM7TDMI-S** 변형은 합성 가능한 코어이다.

### ARM7EJ-S
[섬네일|[미디어텍 MT3337V – ARM7EJ-S 프로세서]]
ARM7EJ-S (**ARM7** + **E**nhanced + '''J'''azelle - **S**ynthesizable)는 더 강력한 ARM9E 코어와 함께 처음 도입된 ARMv5TE 명령어 집합을 구현하는 ARM7의 한 버전이다.

## 칩
[섬네일|[드림캐스트 게임 콘솔의 야마하 AICA 사운드 프로세서]]

### ARM7TDMI 또는 ARM7TDMI-S 코어
* 아날로그 디바이스 AD6720 (LG KG130/150에 사용), AD6724 (LG KP130/135에 사용), AD6726 (LG KP170/175에 사용)
* 아트멜 AT91M, AT91R, AT91SAM7L, AT91SAM7S/SE, AT91SAM7X/XC (AT91SAM7 참조)
* ST마이크로일렉트로닉스 STR7
* 알카텔 마이크로일렉트로닉스 (ST마이크로일렉트로닉스) 알카텔 2840 (MTC-20276 INTQ, MTC-20277 INTT); 알카텔 원터치 30x (BE4)에 사용됨
* 포털플레이어 PP5002, PP5022 (아이팟에 사용됨)
* NXP LPC2100, LPC2200, LPC2300, LPC2400

### 참조되지 않은 ARM7 코어
[섬네일|아트멜 AT91SAM7X256 ([ARM 아키텍처|ARM) 마이크로컨트롤러가 탑재된 메이크 컨트롤러 키트]]

* ADMtek ADM8628
* 아트멜 AT91CAP7
* 시러스 로직 CL-PS7110
* 미디어텍 MT2502 (ARM7 EJ-STM)
* 넷실리콘 NS7520
* 누보톤 NUC500, NUC700
* LH7
* 포털플레이어 5002, 5003, 5020, 5021-TDF, 5022, 5024 SOC (듀얼 ARM7TDI 코어)
* 삼성 S3C46Q0X01-EE8X, S3C44B0X
* 야마하 AICA (ARM7DI) – DSP 탑재 사운드 프로세서

## 주목할 만한 사용 사례
* 애플 eMate 300 – 뉴턴 OS를 실행하는 노트북
* 애플 아이팟 – 아이팟 클래식의 처음 5세대와 미니, 첫 나노는 듀얼 코어 ARM7TDMI 프로세서를 사용했다
* 아이로봇 룸바 (청소기) – 로봇 진공청소기
* 레고 마인드스톰 NXT – 레고의 2세대 로봇 장난감 라인
* 마이크로소프트 Zune HD – 휴대용 미디어 플레이어
* 닌텐도 게임보이 어드밴스 – 휴대용 비디오 게임 콘솔
* 닌텐도 DS – 게임보이 어드밴스의 후속작
* 노키아 6110 – ARM 프로세서를 사용한 최초의 GSM 휴대폰
* 세가 드림캐스트 – 가정용 비디오 게임 콘솔 (오디오 보조 프로세서)
* 소니 플레이스테이션 2 – 가정용 비디오 게임 콘솔 (보안 처리기)

## 같이 보기

* ARM 아키텍처
* ARM 마이크로아키텍처 목록
* JTAG
* 실시간 운영체제, 실시간 운영체제 비교

## 각주

## 외부 링크

* 
* 아키텍처 참조 설명서: ARMv4/5/6
* 코어 참조 설명서: ARM7DIARM7EJ-S,ARM7TDMI,ARM7TDMI-S,ARM710a, ARM710T,ARM720T,ARM740T
* 명령어: 썸 (1), ARM 및 썸-2 (2), 벡터 부동소수점 (3)
* Opcode: 썸 (1, 2), ARM (3, 4), GNU 어셈블러 지시어 5
* ARM7TDMI와 ARM7TDMI-S의 차이점
* ARM 어셈블리 소개 ARM 어셈블리 초보자 튜토리얼
* ARM7TDMI 마이크로컨트롤러 개발 자료 - 회로도, CAD 파일, 헤더 파일

분류:32비트 마이크로프로세서
분류:ARM 마이크로프로세서