Embedded RISC Microcontroller Core Arm7Tdmi™: Features
Embedded RISC Microcontroller Core Arm7Tdmi™: Features
•
      – Fetch, Decode and Execute Stage
    8-, 16-, and 32-bit Data Types
                                                                                                  Embedded RISC
•   Single Cycle 32x8 Hardware Multiplier:
      – Multiplication is Accelerated when Upper Bytes Are All Zero or One
                                                                                                  Microcontroller
•   On-chip JTAG Debug and In Circuit Emulation
•   Extensive Range of Third-party Application Development Tools                                  Core
Description
The ARM7TDMI™ embedded microcontroller core is a member of the Advanced
                                                                                                  ARM7TDMI™
RISC Machines (ARM®) family of general purpose 32-bit microprocessors, which offer
high performance and very lower power consumption. Its outstanding feature is the
16-bit Thumb ® subset of the most commonly used 32-bit instructions. These are
expanded at run time with no degradation of system performance. This gives 16-bit
code density (saving memory area and cost) coupled with 32-bit processor
performance.
The ARM architecture is based on Reduced Instruction Set Computer (RISC) princi-
ples, and the instruction set and related decode mechanism are much simpler than
those of microprogrammed Complex Instruction Set Computers. This simplicity results
in a high instruction throughput and impressive real-time interrupt response from a
small and cost-effective chip.
Pipelining is employed so that all parts of the processing and memory systems can
operate continuously. Typically, while one instruction is being executed, its successor
is being decoded, and a third instruction is being fetched from memory.
The ARM memory interface has been designed to allow the performance potential to
be realized without incurring high costs in the memory system. Speed-critical control
signals are pipelined to allow system control functions to be implemented in standard
low-power logic, and these control signals facilitate the exploitation of the fast local
access modes offered by industry standard dynamic RAMs.
The ARM memory interface is also ideally suited to interfacing, either on-chip or off-
chip, with Atmel’s Flash memory blocks. These give the benefits of in-system pro-
grammability and security, reducing time-to-market and system cost.
The ARM7TDMI core is supported by an extensive range of application development
tools. These are fully described in the AT91Business Partners section of Atmels’s
Web site (www.atmel.com).
Rev. 0673CS–11/99
                                 MCLK                     TCK
                                                          TMS
                   Clocks        nWAIT                    TDI
                                 ECLK                     nTRST
                                                          TDO
                                  nIRQ                                Boundary
                                                         TAPSM[3:0]
                                                         IR[3:0]      Scan
                                  nFIQ
                 Interrupts                              nTDOEN
                                  ISYNC                  TCK1
                                                         TCK2
                                 nRESET                  SCREG[3:0]
                                 BUSEN                  11            Boundary Scan
                                                                      Control Signals
                                 HIGHZ
                                                         nM[4:0]      Processor
                                 BIGEND                               Mode
                                 nENIN
                                 nENOUT
                                             ARM7TDMI    TBIT         Processor
                                                                      State
                      Bus
                                 nENOUTI
                  Controls                               A[31:0]
                                 ABE
                                 APE
                                 ALE
                                                         DOUT[31:0]
                                 APE
                                 DBE
                                 TBE                                  Memory
                                 BUSDIS                               Interface
                                                          D[31:0]
                                 ECAPCLK
                                  VDD
                    Power                                DIN[31:0]
                                  VSS
                                  DBGRQ                  nMREQ
                                                         SEQ
                                  BREAKPT
                                                         nRW
                                 DBGACK                  MAS[1:0]
                                 nEXEC
                                                         BL[3:0]
                                 EXTERN 1
                    Debug                                LOCK
                                 EXTERN 0
                                                         nTRANS       Memory
                                 DBGEN
                                                         ABORT        Management
                                 RANGEOUT0
                                                                      Interface
                                 RANGEOUT1               nOPC
                                 DBGRQI                  nCPI
                                                         CPA          Coprocessor
                                 COMMRX
                                                         CPB          Interface
                                 COMMTX
2                     ARM7TDMI
                                                                                                  ARM7TDMI
         RANGEOUT0
         RANGEOUT1
            EXTERN1
                                   ICEBreaker
            EXTERN0
               nOPC
                nRW
            MAS[1:0]                                                                                          All
            nTRANS                                                             Core                          Other
             nMREQ                                                                                          Signals
              A[31:0]
                                                                    •
                                                                          Scan Chain 1
                              Bus Splitter
D[31:0]
           DIN[31:0]
                                                                    •
         DOUT[31:0]
                                              TCK                                TDO
                                              TMS          TAP                   TAPSM[3:0]
                                             nTRST     Controller                IR[3:0]
                                               TDI                               SCREG[3:0]
As shown in Figure 1 and Figure 2, the ARM7TDMI con-                data bus D[31:0] is split into uni-directional input and output
sists of a processor, a TAP controller for boundary scan,           buses for compatibility with a wide range of external
and an in-circuit emulator (ICEBreaker). The bi-directional         memories.
                                                                                                                                 3
ARM7TDMI Processor                                                                               Operating Modes
                                                                                                 ARM7TDMI supports seven modes of operation:
Figure 3. ARM7TDMI Processor                                                                     • User (usr):
                                                                                                   The normal ARM program execution state
              32-Bit Address Bus                                                                 • FIQ (fiq):
                                                                                                   Designed to support a data transfer or channel process
                                                                                                 • IRQ (irq):
                    Address Register
                                                   Increment Bus                                   Used for general-purpose interrupt handling
                                                                                   ARM           • Supervisor (svc):
                PC Bus
                  37 32-bit Registers
              (including 6 status registers)                                                     • System (sys):
                                                                                                   A privileged user mode for the operating system
                                                                   B-Bus
4                                         ARM7TDMI
                                                                                               ARM7TDMI
R1 R1 R1 R1 R1 R1
R2 R2 R2 R2 R2 R2
R3 R3 R3 R3 R3 R3
R4 R4 R4 R4 R4 R4
R5 R5 R5 R5 R5 R5
R6 R6 R6 R6 R6 R6
R7 R7 R7 R7 R7 R7
R8 R8_fiq R8 R8 R8 R8
R9 R9_fiq R9 R9 R9 R9
R15 (PC) R15 (PC) R15 (PC) R15 (PC) R15 (PC) R15 (PC)
= banked register
                                                                                                                             5
The THUMB State Register Set
The THUMB state register set is a subset of the ARM state         CPSR. There are banked Stack Pointers, Link Registers
set. The programmer has direct access to eight general            and Saved Process Status Registers (SPSRs) for each
registers, R0-R7, as well as the Program Counter (PC), a          privileged mode.
stack pointer register (SP), a link register (LR), and the
R1 R1 R1 R1 R1 R1
R2 R2 R2 R2 R2 R2
R3 R3 R3 R3 R3 R3
R4 R4 R4 R4 R4 R4
R5 R5 R5 R5 R5 R5
R6 R6 R6 R6 R6 R6
R7 R7 R7 R7 R7 R7
PC PC PC PC PC PC
= banked register
6                       ARM7TDMI
                                                                                                                   ARM7TDMI
Phase 1 Phase 2
Mux
                                                      32-Bit Data
                                                    Mux
                                              16
                                                          16     Thumb
                                                               Instruction
                                              16                Decom-             Mux
                                                                 pressor
                                                                                              ARM
                                                                                           Instruction
                                                   A[1]
                                                                                            Decoder
Thumb State
                                                                                                                                             7
 Atmel Headquarters                        Atmel Operations
 Corporate Headquarters                    Atmel Colorado Springs
   2325 Orchard Parkway                      1150 E. Cheyenne Mtn. Blvd.
   San Jose, CA 95131                        Colorado Springs, CO 80906
   TEL (408) 441-0311                        TEL (719) 576-3300
   FAX (408) 487-2600                        FAX (719) 540-1759
 Europe                                    Atmel Rousset
   Atmel U.K., Ltd.                          Zone Industrielle
   Coliseum Business Centre                  13106 Rousset Cedex, France
   Riverside Way                             TEL (33) 4 42 53 60 00
   Camberley, Surrey GU15 3YL                FAX (33) 4 42 53 60 01
   England
   TEL (44) 1276-686677
   FAX (44) 1276-686697
 Asia
   Atmel Asia, Ltd.
   Room 1219
   Chinachem Golden Plaza
   77 Mody Road
   Tsimshatsui East
   Kowloon, Hong Kong
   TEL (852) 27219778
   FAX (852) 27221369
 Japan
   Atmel Japan K.K.
   Tonetsu Shinkawa Bldg., 9F
   1-24-8 Shinkawa
   Chuo-ku, Tokyo 104-0033
   Japan
   TEL (81) 3-3523-3551
   FAX (81) 3-3523-7581
                                                                                      Fax-on-Demand
                                                                                      North America:
                                                                                      1-(800) 292-8635
                                                                                      International:
                                                                                      1-(408) 441-0732
                                                                                      e-mail
                                                                                      literature@atmel.com
                                                                                      Web Site
                                                                                      http://www.atmel.com
                                                                                      BBS
                                                                                      1-(408) 436-4309
ARM, Thumb and ARM Powered are registered trademarks of ARM Limited.                                             Printed on recycled paper.
ARM7TDMI is a trademark of ARM Ltd.
Other marks bearing ® and/or ™ are registered trademarks and trademarks of Atmel Corporation.                             0673CS–11/99/0M
Terms and product names in this document may be trademarks of others.