电子工程世界电子工程世界电子工程世界

产品描述

搜索

D6417729RHF200BV

器件型号:D6417729RHF200BV
器件类别:半导体    嵌入式处理器和控制器   
文件大小:46389.49KB,共38页
厂商名称:Renesas Electronics Corporation
厂商官网:https://www.renesas.com/
标准:  
下载文档

器件描述

IC mcu 32bit romless 208qfp

参数
Datasheets:
SH7729R Group Hardware Manual:
Product Photos:
208-BFQFP Series:
Product Training Modules:
Electromagnetic Noise Reduction Techniques Part 1:
Standard Package : 1
Category: Integrated Circuits (ICs)
Family: Embedded - Microcontrollers
Series: SuperH® SH7700
Packaging : Tray
Core Processor: SH-3 DSP
Core Size: 32-Bit
Speed: 200MHz
Connectivity: EBI/EMI, FIFO, IrDA, SCI, SmartCard
Peripherals: DMA, POR, WDT
Number of I/O: 96
Program Memory Size: -
Program Memory Type: ROMless
EEPROM Size: -
RAM Size: 32K x 8
Voltage - Supply (Vcc/Vdd): 1.85 V ~ 2.15 V
Data Converters: A/D 8x10b
D/A 2x8b:
Oscillator Type: Internal
Operating Temperature: -20°C ~ 75°C
Package / Case: 208-BFQFP Exposed Pad
Supplier Device Package: 208-QFP (28x28)

D6417729RHF200BV器件文档内容

To our customers,

                  Old Company Name in Catalogs and Other Documents

   On April 1st, 2010, NEC Electronics Corporation merged with Renesas Technology
Corporation, and Renesas Electronics Corporation took over all the business of both
companies. Therefore, although the old company name remains in this document, it is a valid
Renesas Electronics document. We appreciate your understanding.

                          Renesas Electronics website: http://www.renesas.com

                                                                            April 1st, 2010
                                                                            Renesas Electronics Corporation

Issued by: Renesas Electronics Corporation (http://www.renesas.com)
Send any inquiries to http://www.renesas.com/inquiry.
                                                        Notice

1. All information included in this document is current as of the date this document is issued. Such information, however, is
       subject to change without any prior notice. Before purchasing or using any Renesas Electronics products listed herein, please
       confirm the latest product information with a Renesas Electronics sales office. Also, please pay regular and careful attention to
       additional and different information to be disclosed by Renesas Electronics such as that disclosed through our website.

2. Renesas Electronics does not assume any liability for infringement of patents, copyrights, or other intellectual property rights
       of third parties by or arising from the use of Renesas Electronics products or technical information described in this document.
       No license, express, implied or otherwise, is granted hereby under any patents, copyrights or other intellectual property rights
       of Renesas Electronics or others.

3. You should not alter, modify, copy, or otherwise misappropriate any Renesas Electronics product, whether in whole or in part.

4. Descriptions of circuits, software and other related information in this document are provided only to illustrate the operation of
       semiconductor products and application examples. You are fully responsible for the incorporation of these circuits, software,
       and information in the design of your equipment. Renesas Electronics assumes no responsibility for any losses incurred by
       you or third parties arising from the use of these circuits, software, or information.

5. When exporting the products or technology described in this document, you should comply with the applicable export control
       laws and regulations and follow the procedures required by such laws and regulations. You should not use Renesas
       Electronics products or the technology described in this document for any purpose relating to military applications or use by
       the military, including but not limited to the development of weapons of mass destruction. Renesas Electronics products and
       technology may not be used for or incorporated into any products or systems whose manufacture, use, or sale is prohibited
       under any applicable domestic or foreign laws or regulations.

6. Renesas Electronics has used reasonable care in preparing the information included in this document, but Renesas Electronics
       does not warrant that such information is error free. Renesas Electronics assumes no liability whatsoever for any damages
       incurred by you resulting from errors in or omissions from the information included herein.

7. Renesas Electronics products are classified according to the following three quality grades: "Standard", "High Quality", and
       "Specific". The recommended applications for each Renesas Electronics product depends on the product's quality grade, as
       indicated below. You must check the quality grade of each Renesas Electronics product before using it in a particular
       application. You may not use any Renesas Electronics product for any application categorized as "Specific" without the prior
       written consent of Renesas Electronics. Further, you may not use any Renesas Electronics product for any application for
       which it is not intended without the prior written consent of Renesas Electronics. Renesas Electronics shall not be in any way
       liable for any damages or losses incurred by you or third parties arising from the use of any Renesas Electronics product for an
       application categorized as "Specific" or for which the product is not intended where you have failed to obtain the prior written
       consent of Renesas Electronics. The quality grade of each Renesas Electronics product is "Standard" unless otherwise
       expressly specified in a Renesas Electronics data sheets or data books, etc.

"Standard":  Computers; office equipment; communications equipment; test and measurement equipment; audio and visual
             equipment; home electronic appliances; machine tools; personal electronic equipment; and industrial robots.

"High Quality": Transportation equipment (automobiles, trains, ships, etc.); traffic control systems; anti-disaster systems; anti-
                    crime systems; safety equipment; and medical equipment not specifically designed for life support.

"Specific":  Aircraft; aerospace equipment; submersible repeaters; nuclear reactor control systems; medical equipment or
             systems for life support (e.g. artificial life support devices or systems), surgical implantations, or healthcare
             intervention (e.g. excision, etc.), and any other applications or purposes that pose a direct threat to human life.

8. You should use the Renesas Electronics products described in this document within the range specified by Renesas Electronics,
       especially with respect to the maximum rating, operating supply voltage range, movement power voltage range, heat radiation
       characteristics, installation and other product characteristics. Renesas Electronics shall have no liability for malfunctions or
       damages arising out of the use of Renesas Electronics products beyond such specified ranges.

9. Although Renesas Electronics endeavors to improve the quality and reliability of its products, semiconductor products have
       specific characteristics such as the occurrence of failure at a certain rate and malfunctions under certain use conditions. Further,
       Renesas Electronics products are not subject to radiation resistance design. Please be sure to implement safety measures to
       guard them against the possibility of physical injury, and injury or damage caused by fire in the event of the failure of a
       Renesas Electronics product, such as safety design for hardware and software including but not limited to redundancy, fire
       control and malfunction prevention, appropriate treatment for aging degradation or any other appropriate measures. Because
       the evaluation of microcomputer software alone is very difficult, please evaluate the safety of the final products or system
       manufactured by you.

10. Please contact a Renesas Electronics sales office for details as to environmental matters such as the environmental
       compatibility of each Renesas Electronics product. Please use Renesas Electronics products in compliance with all applicable
       laws and regulations that regulate the inclusion or use of controlled substances, including without limitation, the EU RoHS
       Directive. Renesas Electronics assumes no liability for damages or losses occurring as a result of your noncompliance with
       applicable laws and regulations.

11. This document may not be reproduced or duplicated, in any form, in whole or in part, without prior written consent of Renesas
       Electronics.

12. Please contact a Renesas Electronics sales office if you have any questions regarding the information contained in this
       document or Renesas Electronics products, or if you have any other inquiries.

(Note 1) "Renesas Electronics" as used in this document means Renesas Electronics Corporation and also includes its majority-
            owned subsidiaries.

(Note 2) "Renesas Electronics product(s)" means any product developed or manufactured by or for Renesas Electronics.
User's Manual                              The revision list can be viewed directly by
                                           clicking the title page.
                                           The revision list summarizes the locations of
                                           revisions and additions. Details should always
                                           be checked by referring to the relevant text.

32 SH7729R Group

          Hardware Manual
          Renesas 32-Bit RISC
          Microcomputer
          SuperHTM RISC engine Family/
          SH7700 Series

                                                Rev.5.00 2003.09
     Renesas 32-Bit RISC Microcomputer
SuperH RISC engine Family/SH7700 Series

        SH7729R Group
       Hardware Manual

                                                                                                              REJ09B0091-0500O
Cautions

Keep safety first in your circuit designs!
1. Renesas Technology Corp. puts the maximum effort into making semiconductor products

    better and more reliable, but there is always the possibility that trouble may occur with them.
    Trouble with semiconductors may lead to personal injury, fire or property damage.
    Remember to give due consideration to safety when making your circuit designs, with
    appropriate measures such as (i) placement of substitutive, auxiliary circuits, (ii) use of
    nonflammable material or (iii) prevention against any malfunction or mishap.

Notes regarding these materials
1. These materials are intended as a reference to assist our customers in the selection of the

    Renesas Technology Corp. product best suited to the customer's application; they do not
    convey any license under any intellectual property rights, or any other rights, belonging to
    Renesas Technology Corp. or a third party.
2. Renesas Technology Corp. assumes no responsibility for any damage, or infringement of any
    third-party's rights, originating in the use of any product data, diagrams, charts, programs,
    algorithms, or circuit application examples contained in these materials.
3. All information contained in these materials, including product data, diagrams, charts,
    programs and algorithms represents information on products at the time of publication of these
    materials, and are subject to change by Renesas Technology Corp. without notice due to
    product improvements or other reasons. It is therefore recommended that customers contact
    Renesas Technology Corp. or an authorized Renesas Technology Corp. product distributor for
    the latest product information before purchasing a product listed herein.
    The information described here may contain technical inaccuracies or typographical errors.
    Renesas Technology Corp. assumes no responsibility for any damage, liability, or other loss
    rising from these inaccuracies or errors.
    Please also pay attention to information published by Renesas Technology Corp. by various
    means, including the Renesas Technology Corp. Semiconductor home page
    (http://www.renesas.com).
4. When using any or all of the information contained in these materials, including product data,
    diagrams, charts, programs, and algorithms, please be sure to evaluate all information as a total
    system before making a final decision on the applicability of the information and products.
    Renesas Technology Corp. assumes no responsibility for any damage, liability or other loss
    resulting from the information contained herein.
5. Renesas Technology Corp. semiconductors are not designed or manufactured for use in a
    device or system that is used under circumstances in which human life is potentially at stake.
    Please contact Renesas Technology Corp. or an authorized Renesas Technology Corp. product
    distributor when considering the use of a product contained herein for any specific purposes,
    such as apparatus or systems for transportation, vehicular, medical, aerospace, nuclear, or
    undersea repeater use.
6. The prior written approval of Renesas Technology Corp. is necessary to reprint or reproduce in
    whole or in part these materials.
7. If these products or technologies are subject to the Japanese export control restrictions, they
    must be exported under a license from the Japanese government and cannot be imported into a
    country other than the approved destination.
    Any diversion or reexport contrary to the export control laws and regulations of Japan and/or
    the country of destination is prohibited.
8. Please contact Renesas Technology Corp. for further details on these materials or the products
    contained therein.

Rev. 5.0, 09/03, page iv of xlvi
General Precautions on Handling of Product

1. Treatment of NC Pins

Note: Do not connect anything to the NC pins.
         The NC (not connected) pins are either not connected to any of the internal circuitry or are
         used as test pins or to reduce noise. If something is connected to the NC pins, the
         operation of the LSI is not guaranteed.

2. Treatment of Unused Input Pins

Note: Fix all unused input pins to high or low level.
         Generally, the input pins of CMOS products are high-impedance input pins. If unused pins
         are in their open states, intermediate levels are induced by noise in the vicinity, a pass-
         through current flows internally, and a malfunction may occur.

3. Processing before Initialization

Note:  When power is first supplied, the product's state is undefined.
       The states of internal circuits are undefined until full power is supplied throughout the
       chip and a low level is input on the reset pin. During the period where the states are
       undefined, the register settings and the output state of each pin are also undefined. Design
       your system so that it does not malfunction because of processing while it is in this
       undefined state. For those products which have a reset function, reset the LSI immediately
       after the power supply has been turned on.

4. Prohibition of Access to Undefined or Reserved Addresses

Note: Access to undefined or reserved addresses is prohibited.
         The undefined or reserved addresses may be used to expand functions, or test registers
         may have been be allocated to these addresses. Do not access these registers; the system's
         operation is not guaranteed if they are accessed.

                                            Rev. 5.0, 09/03, page v of xlvi
                   Configuration of This Manual

This manual comprises the following items:

1. General Precautions on Handling of Product
2. Configuration of This Manual
3. Preface
4. Contents
5. Overview
6. Description of Functional Modules

    CPU and System-Control Modules
    On-Chip Peripheral Modules

        The configuration of the functional description of each module differs according to the
        module. However, the generic style includes the following items:
    i) Feature
    ii) Input/Output Pin
    iii) Register Description
    iv) Operation
    v) Usage Note

When designing an application system that includes this LSI, take notes into account. Each section
includes notes in relation to the descriptions given, and usage notes are given, as required, as the
final part of each section.

7. List of Registers
8. Electrical Characteristics
9. Appendix
10. Main Revisions and Additions in this Edition (only for revised versions)

The list of revisions is a summary of points that have been revised or added to earlier versions.
This does not include all of the revised contents. For details, see the actual locations in this
manual.

11. Index

Rev. 5.0, 09/03, page vi of xlvi
                    Preface

The SH7729R is a microprocessor that integrates peripheral functions necessary for system
configuration with a 32-bit internal architecture SH2-DSP CPU as its core.

The SH7729R's on-chip peripheral functions include a cache memory, internal X/Y memory, an
interrupt controller, timers, three serial communication interfaces, a real time clock (RTC),
memory management unit (MMU), a user break controller (UBC), a bus state controller (BSC),
and I/O ports, making it ideal for use as a microcomputer in electronic devices that require high
speed together with low power consumption.

Intended Readership: This manual is intended for users undertaking the design of an application
                          system using the SH7729R. Readers using this manual require a basic
                          knowledge of electrical circuits, logic circuits, and microcomputers.

Purpose:            The purpose of this manual is to give users an understanding of the hardware
                    functions and electrical characteristics of the SH7729R. Details of execution
                    instructions can be found in the SH-3, SH-3E, SH3-DSP Programming
                    Manual, which should be read in conjunction with the present manual.

Using this Manual:

For an overall understanding of the SH7729R's functions
    Follow the Table of Contents. This manual is broadly divided into sections on the CPU, system
    control functions, peripheral functions, and electrical characteristics.

For a detailed understanding of CPU functions
    Refer to the separate publication SH-3, SH-3E, SH3-DSP Programming Manual.

    Note on bit notation: Bits are shown in high-to-low order from left to right.

Related Material: The latest information is available at our Web Site. Please make sure that you
                        have the most up-to-date information available.
                        (http://www.renesas.com/eng/)

                             Rev. 5.0, 09/03, page vii of xlvi
User's Manuals on the SH7729R:                                     ADE No.
                                                                   This manual
Manual Title                                                       ADE-602-096
SH7729R Hardware Manual
SH-3, SH-3E, SH-3DSP Programming Manual

Users manuals for development tools:                               ADE No.
                                                                   ADE-702-246
Manual Title                                                       ADE-702-186
C/C++ Compiler, Assembler, Optimized Linkage Editor User's Manual  ADE-702-201
Simulator Debugger User's Manual
Embedded Workshop User's Manual

Rev. 5.0, 09/03, page viii of xlvi
       List of Items Revised or Added for This Version

Section              Page  Description
                     7     ASERAM deleted from figure
1.2 Block Diagram
Figure 1.1 Block                               BRIDGE
Diagram

                               UDI  I bus 2
                              INTC
                           CPG/WDT

5.4 Memory-Mapped 151,                      External bus
                                               interface

                           ASERAM deleted from legend
                           Replaced

Cache                152

5.4.1 Address Array

                                                          Rev. 5.0, 09/03, page ix of xlvi
Section           Page           Description
5.4.2 Data Array  152
                                 Description amended
                                 The address array is mapped to H'F1000000 to H'F1FFFFFF. To
                                 access an element of the data array, the 32-bit address field (for
                                 read/write access) and 32-bit data field (for write access) must be
                                 specified. The address field specifies the information that selects
                                 the entry to be accessed; the data field specifies the longword
                                 data to be written to the data array.

                                 In the address field, specify the entry's address in bits 11-4, L in
                                 bits 3-2 to indicate the longword's position within a line (which
                                 consists of 16 bytes), W in bits 13-12 to select the way, and H'F1
                                 in bits 31-24 to indicate access to the data array. The L bits (3-2)
                                 specification is in the following form: 00 is longword 0, 01 is
                                 longword 1, 10 is longword 2, and 11 is longword 3. Settings for
                                 the W bits (13-12) are as follows: 00 is way 0, 01 is way 1, 10 is
                                 way 2, and 11 is way 3. Since access is not allowed crossing
                                 longword boundaries, always set 00 in bits 1-0 of the address
                                 field.

                                 The following two operations on the data array are possible. Note
                                 that these operations will not change the information in the
                                 address array.

                                 (1) Data Array Read
                                 Reads the data at the position selected by the L bits (3-2) of the
                                 address field from the entry that corresponds to the entry address
                                 and way that were specified in the address field.

                                 (2) Data Array Write

                                 Writes the longword data set in the data field into the entry that
                                 corresponds to the entry address and way that were specified in
                                 the address field. The longword data will be written to the entry at
                                 the position selected by the L bits (3-2) of the address field.

Rev. 5.0, 09/03, page x of xlvi
Section                 Page  Description
                        154
5.5.1 Invalidating a          Description amended
Specific Entry                A specific cache entry can be invalidated by accessing the allocated
                              memory cache and writing a 0 to the entry's U and V bits. The A bit is
5.5.2 Invalidating a 155      cleared to 0, and an address is specified for the entry address and the
Specific Address              way. If the U bit of the way of the entry in question was set to 1, the
                              entry is written back and the V and U bits specified by the write data are
5.5.3 Reading the             written to.
Data of a Specific Entry      In the following example, the write data is specified in R0 and the
                              address is specified in R1.
7.2.6 Interrupt         171   ; R0 = H'0000 0000 LRU = H'000, U = 0, V = 0
                              ; R1 = H'F000 1080, Way = 1, Entry = H'08, A = 0
Exception Handling and        ;

Priority                            MOV.L R0, @R1

Table 7.4 Interrupt           To invalidate all entries and ways, write 0 to the following addresses.
Exception Handling                     Addresses
Sources and Priority                        F000 0000
(IRQ Mode)                                  F000 0010
                                            F000 0020
7.3.6 Interrupt         182                        :
                                            F000 3FF0
Request Register 0
                              This involves a total of 1,024 writes.
(IRR0)                        The above operation should be performed using a non-cacheable area.

                              Newly added

                              Description amended
                              ; R1=H'F100 004C; data array access, entry=H'04, Way = 0,
                              ; longword address = 3
                              ;
                              MOV.L @R0,R1 ; Longword 3 is read.
                              IPR (bit numbers) for SCI amended
                              (Before)IPRB(3-0)  (After)IPRB(7-4)

                              Description amended
                              When clearing an IRQ5RIRQ0R bit to 0, read the bit while bit set
                              to 1, and then write 0. In this case, 0 should be written only to the
                              bits to be cleared and 1 to the other bits. The contents of the bits
                              to which 1 is written do not change.

9.2.1 Standby Control 230     Description added
Register (STBCR)              Bit 1--Module Standby 1 (MSTP1)
                              Before switching the RTC to module standby, access at least one
                              among the registers RTC, SCI, and TMU.

                              Rev. 5.0, 09/03, page xi of xlvi
Section                 Page       Description
                        233
9.3.1 Transition to                Description added
Sleep Mode
                                   In sleep mode, the STATUS1 pin is set high and the STATUS0
9.5.1 Transition to 237            pin low.
Module Standby                     DMAC transfers should not be performed in the sleep mode
Function                           under conditions other than when the clock ratio of I0 (on-chip
                                   clock) to B0 (bus clock) is 1:1.
10.2.1 CPG Block        250
                                   Note *3 added to bit table
Diagram
                                   Note: 3. Before putting the RTC into module standby status, first
                                               access one or more of the RTC, SCI, and TMU
                                               registers. The RTC may then be put into module standby
                                               status.

                                   Figure amended

                                                                                  Clock pulse generator

Figure 10.1 Block                  CAP1                                      Divider 1
Diagram of Clock Pulse
Generator                                                    PLL circuit 1     1
                                                             ( 1, 2, 3, 4,    1/2
                                     CKIO         Crystal                      1/3    Internal
                                   Cycle = Bcyc  oscillator        6)          1/4    clock (I)
                                    CAP2                                        1/6    Cycle = Icyc
                                     XTAL                    PLL circuit 2
                                                                ( 1, 4)     Divider 2  Peripheral
                                   EXTAL                                       1       clock (P)
                                                                               1/2    Cycle = Pcyc
                                                                               1/3
                                                                               1/4
                                                                               1/6

Rev. 5.0, 09/03, page xii of xlvi
Section                Page  Description
                       256   Cautions 4 to 6 deleted
10.3 Clock Operating
Modes                  259   Newly added
                       265
Table 10.4 Available         Description added
Combinations of Clock
Mode and FRQCR               5.The counter stops at a value of H'00 or H'01. The stop value
Values                       depends on the clock ratio.

10.5.3 Notes on              If the following three conditions are all met, FRQCR should not be
Changing the                 changed when a transfer using the DMAC is in progress.
Frequency
                               Bits IFC2 to IFC0 are changed.
10.8.2 Changing the             Bits STC2 to STC0 are not changed.
Frequency                      The clock ratio is other than I:B = 1:1.

11.1.1 Features              Refresh function description deleted

11.2.5 Individual      292   Description added

Memory Control               Bit 7--Synchronous DRAM Bank Active (RASD): Specifies
                             whether synchronous DRAM is used in bank active mode or auto-
Register (MCR)               precharge mode. Set auto-precharge mode when areas 2 and 3
                             are both designated as synchronous DRAM space.
                             The bank active mode should not be used unless the bus width
                             for all areas is 32 bits.

                       293   Bit table amended

                             Bits 6 to 3--Address Multiplex (AMX3, AMX2, AMX1, AMX0)

                             Bit6: Bit5: Bit 4:       Bit 3:

                             AMX3 AMX2 AMX1           AMX0 Description

                             0  1         0           0       The row address begins with

                                                              A9 (The A9 value is output at

                                                              A1 when the row address is

                                                              output. 1M 16-bit 4-bank

                                                              products)

                                                      1       The row address begins with

                                                              A10 (The A10 value is output at

                                                              A1 when the row address is

                                                              output. 2M 8-bit 4-bank

                                                              products ,2M 16-bit 4-bank

                                                              products)

                                          1           1 The row address begins with
                                                               A9 (The A9 value is output at

                                                              A1 when the row address is
                                                              output. 512k 32-bit 4-bank
                                                              products)

                                                              Rev. 5.0, 09/03, page xiii of xlvi
Section             Page           Description

11.2.13 MCS0 Control 304           Description added
Register (MCSCR0)
                                   Bit 6--CS2/CS0 Select (CS2/0)
                                   Note that the CS2/0 bit in MCSCR should always be cleared to 0
                                   (area 0 selected).

11.3.4 Synchronous 334             Bank Active description added
DRAM Interface
                                   ... .In bank active mode, too, all banks become inactive after a
                                   refresh cycle or after the bus is released as the result of bus
                                   arbitration.
                                   The bank active mode should not be used unless the bus width
                                   for all areas is 32 bits.

11.3.7 Waits between 363           Figure amended
Access Cycles
                                                T1  T2 Twait T1   T2 Twait T1  T2
Figure 11.40 Waits
between Access Cycles              CKIO

                                   A25 to A0

11.3.10 MCS[0] to   366 Description amended
MCS[7] Pin Control
12.6 Usage Notes              This enables 32-, 64-, 128-, or 256-Mbit memory to be connected
                              to area 0 or area 2. However, only CS2/0 = 0 (area 0) should be
14.4.3 Precautions            used for MCSCR0. Table 11.15 shows MCSCR0MCSCR7
when Using RTC                settings and MCS[0]MCS[7] assertion conditions.
Module Standby
                    431, Description added
                    432 13. DMAC transfers should not be performed in the sleep mode

                                    under conditions other than when the clock ratio of I (on-
                                    chip clock) to B (bus clock) is 1:1.

                              14. When the following three conditions are all met, the
                                    frequency control register (FRQCR) should not be changed
                                    while a DMAC transfer is in progress.

                                     Bits IFC2 to IFC0 are changed.

                                     STC2 to STC0 in FRQCR are not changed.

                                     The clock ratio of I (on-chip clock) to B (bus clock) after
                                        the change is other than 1:1.

                              15. If the following three conditions are all met, big-endian
                                    access is used when the DMAC is used to transfer data from
                                    XY memory, even in the little-endian mode.

                                     The source address for the transfer is in XY memory.

                                     The indirect address mode is used.

                                     The byte size data is transferred.

                                     The data format is little-endian.

                    470 Newly added

Rev. 5.0, 09/03, page xiv of xlvi
Section               Page  Description
                      594
17.4 SCIF Interrupts        Description amended
Table 17.10 SCIF
Interrupt Sources           When the TDFE flag in the serial status register (SCSSR) is set to
                            1, a TXI interrupt request is generated. The DMAC can be
                            activated and data transfer performed when this interrupt is
                            generated. When data exceeding the transmit trigger number is
                            written to the transmit data register (SCFTDR) by the DMAC, 1 is
                            read from the TDFE flag, after which 0 is written to it to clear it.

17.5 Usage Notes      595   When the RDF flag in SCSSR is set to 1, an RXI interrupt request
                            is generated. The DMAC can be activated and data transfer
20.13.2 SC Port Data 654    performed when the RDF flag in SCSSR is set to 1. When
Register (SCPDR)            receive data less than the receive trigger number is read from the
                            receive data register (SCFRDR) by the DMAC, 1 is read from the
                            RDF flag, after which 0 is written to it to clear it.

                            Table amended

                            (Before)Priority on Reset Release (After)Priority

                            Description amended

                            1. SCFTDR Writing and TDFE Flag:
                            However, if the number of data bytes written to SCFTDR is equal
                            to or less than the transmit trigger number, the TDFE flag will be
                            set to 1 again even after having been cleared to 0. TDFE clearing
                            should therefore be carried out after data exceeding the specified
                            transmit trigger number has been written to SCFTDR.

                            Title amended

                            Rev. 5.0, 09/03, page xv of xlvi
Section               Page         Description
                      665          Figure amended
21.3 Bus Master
Interface                          Upper byte read     Bus               Module internal data bus
                                                    interface
Figure 21.2 A/D Data                      CPU                                 TEMP
Register Access                      receives                                 [H'40]
Operation (Reading                 data H'AA
H'AA40)

                                                               ADDRn H        ADDRn L   n = A to D
                                                                 [H'AA]         [H'40]

                                   Lower byte read     Bus               Module internal data bus
                                                    interface
                                          CPU                                 TEMP
                                     receives                                 [H'40]
                                    data H'40

                                                               ADDRn H        ADDRn L   n = A to D
                                                                 [H'AA]         [H'40]

24.1 Absolute         701          Caution amended

Maximum Ratings                    2.Until voltage is applied to all power supplies, a low level is input
                                   at the RESETP pin, and CKIO has operated for a maximum of 4
Table 24.1 Absolute                clock cycles, internal circuits remain unsettled, and so pin states
Maximum Ratings                    are also undefined. The system design must ensure that these
                                   undefined states do not cause erroneous system operation.
                                   Note that the RESETP pin cannot receive a low level signal while
                                   a low level signal is being input to the CA pin.

24.2 DC               703,         Test conditions for in sleep mode amended

Characteristics       705          Item Symbol Min      Typ Max Unit Test Conditions

Table 24.2 DC                      In sleep Icc     --  15 30                 *1: No external bus
Characteristics                                                                    cycles
                                   mode*1                                          except refresh
                                                                                   cycles

                                                                              Vcc = 1.9 V
                                                                              VccQ = 3.3 V
                                                                              B = 33 MHz

                                   Note * added
                                   * If the IRL and IRLS interrupts are used, the minimum is 1.9 V.

Rev. 5.0, 09/03, page xvi of xlvi
Section                Page  Description

24.3.6 Synchronous 733       Tnop cycle deleted from figure
DRAM Timing
                                         Tc1        Tc2 Tc3/Td1 Tc4/Td2 Td3                  Td4

Figure 24.31                 CKIO        tAD                   Row address                        tAD
Synchronous DRAM             A25 to A16  tAD                                           tAD
Burst Read Bus Cycle         A12 or A10  tAD                                                      tCSD3
(RAS Down, Same Row          A15 to A0   tCSD3         Read command                               tRWD
Address, CAS Latency         CSn         tRWD                                           tAD
= 2)                         RD/WR       tRASD2
                             RAS         tCASD2     Column address
                             CAS         tDQMD
                             DQMxx                               tCASD2

                                                    tRDS2 tRDH2                                      tDQMD
                                                                                             tRDS2 tRDH2

                             D31 to D0

                                                    tBSD                                          tBSD

                             BS

                             CKE         (High)                                                   tDAKD1
                             DACKn          tDAKD1

24.3.8 Peripheral      751   (Before) PORT 7 to 0 (read) (B:P clock ratio =1:2)
                             (After) PORT 7 to 0 (read) (B:P clock ratio =2:1)
Module Signal Timing         (Before) PORT 7 to 0 (read) (B:P clock ratio =1:4)
                             (After) PORT 7 to 0 (read) (B:P clock ratio =4:1)
Figure 24.52 I/O Port
Timing

A.2 Pin Specifications 767   Function information amended for VCCRTC, VCCPLL1, VCC
                             PLL2, and VCC
Table A.2 Pin
Specifications                   Pin Pin No. Pin No. I/O                                                                   Function
                                         (FP-208C, (BP-
                                         FP-208E) 240A)

                             VCC 3                              E2                                         Power RTC oscillator power
                             RTC
                                                                                                            supply supply

                                                                                                            (2.0/1.9/1.8/1.7 V)

                             VCC 145                            F16,                                       Power PLL power supply
                             PLL1 150                            E17                                        supply (2.0/1.9/1.8/1.7 V)
                             VCC
                             PLL2

                             VCC 29, 81,                         L3, L4,                                    Power Internal power supply

                                         134, 154, U11, T11, supply (2.0/1.9/1.8/1.7 V)

                                         175                     J17, J16,

                                                                 E18, C19,

                                                                 C12, D12

                                                                                                            Rev. 5.0, 09/03, page xvii of xlvi
Section                  Page Description

A.3 Treatment of         768 "When RTC is not used" and "When PLL2 is not used" amended
Unused Pins                        (Before) (1.9/1.8V) (After) (2.0/1.9/1.8/1.7V)

                                     "When PLL1 is not used" deleted

                                     "When hardware standby mode is not used" added

                                     When hardware standby mode is not used
                                       CA: Pull up (3.3 V)

A.4 Pin States in        770 to      Note 2 amended
Access to Each           782
Address Space                        Note: 2. Unused data pins should be switched to the port
                                                 function, or pulled up.
Table A.3 Pin States
(Ordinary Memory/Little
Endian)

Table A.4 Pin States
(Ordinary Memory/Big
Endian)

Table A.5 Pin States
(Burst ROM/Little
Endian)

Table A.6 Pin States
(Burst ROM/Big
Endian)

Table A.9 Pin States
(PCMCIA/Little Endian)

Table A.10 Pin States
(PCMCIA/Big Endian)

Rev. 5.0, 09/03, page xviii of xlvi
                                Contents

Section 1 Overview ............................................................................................................. 1

1.1 Features ............................................................................................................................. 1
1.2 Block Diagram .................................................................................................................. 7
1.3 Pin Description .................................................................................................................. 8

        1.3.1 Pin Assignment .................................................................................................... 8
        1.3.2 Pin Function ......................................................................................................... 10

Section 2 CPU....................................................................................................................... 19

2.1 Registers ............................................................................................................................ 19
        2.1.1 General Registers ................................................................................................. 23
        2.1.2 Control Registers.................................................................................................. 25
        2.1.3 System Registers .................................................................................................. 30
        2.1.4 DSP Registers....................................................................................................... 30

2.2 Data Formats ..................................................................................................................... 35
        2.2.1 Register Data Format (Non-DSP Type) ............................................................... 35
        2.2.2 DSP-Type Data Formats ...................................................................................... 35
        2.2.3 Memory Data Formats.......................................................................................... 37

2.3 Features of CPU Core Instructions .................................................................................... 37
2.4 Instruction Formats............................................................................................................ 41

        2.4.1 CPU Instruction Addressing Modes ..................................................................... 41
        2.4.2 DSP Data Addressing........................................................................................... 45
        2.4.3 CPU Instruction Formats...................................................................................... 49
        2.4.4 DSP Instruction Formats ...................................................................................... 53
2.5 Instruction Set.................................................................................................................... 59
        2.5.1 CPU Instruction Set.............................................................................................. 59
2.6 DSP Extended-Function Instructions ................................................................................ 73
        2.6.1 Introduction .......................................................................................................... 73
        2.6.2 Added CPU System Control Instructions............................................................. 73
        2.6.3 Single and Double Data Transfer for DSP Data Instructions ............................... 75
        2.6.4 DSP Operation Instruction Set ............................................................................. 79

Section 3 Memory Management Unit (MMU)............................................................ 91

3.1 Overview ........................................................................................................................... 91
        3.1.1 Features ................................................................................................................ 91
        3.1.2 Role of MMU ....................................................................................................... 91
        3.1.3 SH7729R MMU ................................................................................................... 94
        3.1.4 Register Configuration ......................................................................................... 97

3.2 Register Description .......................................................................................................... 97
3.3 TLB Functions................................................................................................................... 99

                                                                                           Rev. 5.0, 09/03, page xix of xlvi
        3.3.1 Configuration of the TLB ..................................................................................... 99
        3.3.2 TLB Indexing ....................................................................................................... 101
        3.3.3 TLB Address Comparison.................................................................................... 102
        3.3.4 Page Management Information ............................................................................ 104
3.4 MMU Functions ................................................................................................................ 105
        3.4.1 MMU Hardware Management ............................................................................. 105
        3.4.2 MMU Software Management............................................................................... 105
        3.4.3 MMU Instruction (LDTLB) ................................................................................. 106
        3.4.4 Avoiding Synonym Problems............................................................................... 107
3.5 MMU Exceptions .............................................................................................................. 110
        3.5.1 TLB Miss Exception ............................................................................................ 110
        3.5.2 TLB Protection Violation Exception.................................................................... 111
        3.5.3 TLB Invalid Exception......................................................................................... 112
        3.5.4 Initial Page Write Exception ................................................................................ 113
        3.5.5 Processing Flow in Event of MMU Exception

                  (Same Processing Flow for Address Error) .......................................................... 115
        3.5.6 MMU Exception in Repeat Loop ......................................................................... 117
3.6 Memory-Mapped TLB ...................................................................................................... 118
        3.6.1 Address Array ...................................................................................................... 118
        3.6.2 Data Array ............................................................................................................ 119
        3.6.3 Usage Examples ................................................................................................... 121
3.7 Usage Note ........................................................................................................................ 121

Section 4 Exception Handling.......................................................................................... 123

4.1 Overview ........................................................................................................................... 123
        4.1.1 Features ................................................................................................................ 123
        4.1.2 Register Configuration ......................................................................................... 123

4.2 Exception Handling Function............................................................................................ 123
        4.2.1 Exception Handling Flow..................................................................................... 123
        4.2.2 Exception Vector Addresses................................................................................. 124
        4.2.3 Acceptance of Exceptions .................................................................................... 126
        4.2.4 Exception Codes................................................................................................... 128
        4.2.5 Exception Request Masks .................................................................................... 129
        4.2.6 Returning from Exception Handling .................................................................... 129

4.3 Register Descriptions......................................................................................................... 130
4.4 Exception Handling Operation .......................................................................................... 131

        4.4.1 Reset..................................................................................................................... 131
        4.4.2 Interrupts .............................................................................................................. 131
        4.4.3 General Exceptions............................................................................................... 132
4.5 Individual Exception Operations ....................................................................................... 132
        4.5.1 Resets ................................................................................................................... 132
        4.5.2 General Exceptions............................................................................................... 133
        4.5.3 Interrupts .............................................................................................................. 138

Rev. 5.0, 09/03, page xx of xlvi
4.6 Cautions............................................................................................................................. 140

Section 5 Cache .................................................................................................................... 143

5.1 Overview ........................................................................................................................... 143
        5.1.1 Features ................................................................................................................ 143
        5.1.2 Cache Structure .................................................................................................... 143
        5.1.3 Register Configuration ......................................................................................... 145

5.2 Register Descriptions......................................................................................................... 145
        5.2.1 Cache Control Register (CCR) ............................................................................. 145
        5.2.2 Cache Control Register 2 (CCR2) ........................................................................ 146

5.3 Cache Operation ................................................................................................................ 148
        5.3.1 Searching the Cache ............................................................................................. 148
        5.3.2 Read Access ......................................................................................................... 150
        5.3.3 Write Access ........................................................................................................ 150
        5.3.4 Write-Back Buffer................................................................................................ 150
        5.3.5 Coherency of Cache and External Memory.......................................................... 151

5.4 Memory-Mapped Cache.................................................................................................... 151
        5.4.1 Address Array ...................................................................................................... 151
        5.4.2 Data Array ............................................................................................................ 152

5.5 Usage Examples ................................................................................................................ 154
        5.5.1 Invalidating a Specific Entry ................................................................................ 154
        5.5.2 Invalidating a Specific Address............................................................................ 155
        5.5.3 Reading the Data of a Specific Entry ................................................................... 155

Section 6 X/Y Memory ...................................................................................................... 157

6.1 Overview ........................................................................................................................... 157
        6.1.1 Features ................................................................................................................ 157

6.2 X/Y Memory Access from CPU........................................................................................ 158
6.3 X/Y Memory Access from DSP ........................................................................................ 160
6.4 X/Y Memory Access from DMAC ................................................................................... 160

Section 7 Interrupt Controller (INTC) ........................................................................... 161

7.1 Overview ........................................................................................................................... 161
        7.1.1 Features ................................................................................................................ 161
        7.1.2 Block Diagram ..................................................................................................... 162
        7.1.3 Pin Configuration ................................................................................................. 163
        7.1.4 Register Configuration ......................................................................................... 164

7.2 Interrupt Sources ............................................................................................................... 165
        7.2.1 NMI Interrupt ....................................................................................................... 165
        7.2.2 IRQ Interrupts ...................................................................................................... 165
        7.2.3 IRL Interrupts ....................................................................................................... 166
        7.2.4 PINT Interrupts .................................................................................................... 168
        7.2.5 On-Chip Peripheral Module Interrupts................................................................. 168

                                                                                           Rev. 5.0, 09/03, page xxi of xlvi
        7.2.6 Interrupt Exception Handling and Priority ........................................................... 169
7.3 INTC Registers.................................................................................................................. 175

        7.3.1 Interrupt Priority Registers A to E (IPRAIPRE) ................................................ 175
        7.3.2 Interrupt Control Register 0 (ICR0) ..................................................................... 176
        7.3.3 Interrupt Control Register 1 (ICR1) ..................................................................... 177
        7.3.4 Interrupt Control Register 2 (ICR2) ..................................................................... 180
        7.3.5 PINT Interrupt Enable Register (PINTER) .......................................................... 181
        7.3.6 Interrupt Request Register 0 (IRR0)..................................................................... 182
        7.3.7 Interrupt Request Register 1 (IRR1)..................................................................... 184
        7.3.8 Interrupt Request Register 2 (IRR2)..................................................................... 185
7.4 INTC Operation................................................................................................................. 187
        7.4.1 Interrupt Sequence................................................................................................ 187
        7.4.2 Multiple Interrupts................................................................................................ 189
7.5 Interrupt Response Time ................................................................................................... 189

Section 8 User Break Controller...................................................................................... 193

8.1 Overview ........................................................................................................................... 193
        8.1.1 Features ................................................................................................................ 193
        8.1.2 Block Diagram ..................................................................................................... 195
        8.1.3 Register Configuration ......................................................................................... 196

8.2 Register Descriptions......................................................................................................... 197
        8.2.1 Break Address Register A (BARA)...................................................................... 197
        8.2.2 Break Address Mask Register A (BAMRA) ........................................................ 198
        8.2.3 Break Bus Cycle Register A (BBRA) .................................................................. 199
        8.2.4 Break Address Register B (BARB) ...................................................................... 201
        8.2.5 Break Address Mask Register B (BAMRB)......................................................... 202
        8.2.6 Break Data Register B (BDRB) ........................................................................... 203
        8.2.7 Break Data Mask Register B (BDMRB) .............................................................. 204
        8.2.8 Break Bus Cycle Register B (BBRB)................................................................... 205
        8.2.9 Break Control Register (BRCR)........................................................................... 207
        8.2.10 Break Execution Times Register (BETR) ............................................................ 210
        8.2.11 Branch Source Register (BRSR) .......................................................................... 211
        8.2.12 Branch Destination Register (BRDR) .................................................................. 213
        8.2.13 Break ASID Register A (BASRA) ....................................................................... 214
        8.2.14 Break ASID Register B (BASRB) ....................................................................... 214

8.3 Operation Description ....................................................................................................... 215
        8.3.1 Flow of the User Break Operation........................................................................ 215
        8.3.2 Break on Instruction Fetch Cycle ......................................................................... 215
        8.3.3 Break by Data Access Cycle ................................................................................ 216
        8.3.4 Break on X/Y-Memory Bus Cycle ....................................................................... 217
        8.3.5 Sequential Break .................................................................................................. 217
        8.3.6 Value of Saved Program Counter......................................................................... 217
        8.3.7 PC Trace............................................................................................................... 218

Rev. 5.0, 09/03, page xxii of xlvi
        8.3.8 Examples of Use................................................................................................... 220
        8.3.9 Notes .................................................................................................................... 225

Section 9 Power-Down Modes......................................................................................... 227

9.1 Overview ........................................................................................................................... 227
        9.1.1 Power-Down Modes............................................................................................. 227
        9.1.2 Pin Configuration ................................................................................................. 229
        9.1.3 Register Configuration ......................................................................................... 229

9.2 Register Descriptions......................................................................................................... 229
        9.2.1 Standby Control Register (STBCR) ..................................................................... 229
        9.2.2 Standby Control Register 2 (STBCR2) ................................................................ 231

9.3 Sleep Mode........................................................................................................................ 233
        9.3.1 Transition to Sleep Mode ..................................................................................... 233
        9.3.2 Canceling Sleep Mode.......................................................................................... 233

9.4 Standby Mode.................................................................................................................... 234
        9.4.1 Transition to Standby Mode ................................................................................. 234
        9.4.2 Canceling Standby Mode ..................................................................................... 235
        9.4.3 Clock Pause Function........................................................................................... 236

9.5 Module Standby Function ................................................................................................. 237
        9.5.1 Transition to Module Standby Function............................................................... 237
        9.5.2 Clearing Module Standby Function...................................................................... 237

9.6 Timing of STATUS Pin Changes ...................................................................................... 238
        9.6.1 Timing for Resets ................................................................................................. 238
        9.6.2 Timing for Canceling Standby ............................................................................. 240
        9.6.3 Timing for Canceling Sleep Mode ....................................................................... 243

9.7 Hardware Standby Mode................................................................................................... 245
        9.7.1 Transition to Hardware Standby Mode ................................................................ 245
        9.7.2 Canceling Hardware Standby Mode..................................................................... 245
        9.7.3 Hardware Standby Mode Timing ......................................................................... 246

Section 10 On-Chip Oscillation Circuits....................................................................... 249

10.1 Overview ........................................................................................................................... 249
        10.1.1 Features ................................................................................................................ 249

10.2 Overview of CPG .............................................................................................................. 250
        10.2.1 CPG Block Diagram............................................................................................. 250
        10.2.2 CPG Pin Configuration ........................................................................................ 252
        10.2.3 CPG Register Configuration................................................................................. 252

10.3 Clock Operating Modes..................................................................................................... 253
10.4 Register Descriptions......................................................................................................... 257

        10.4.1 Frequency Control Register (FRQCR) ................................................................. 257
10.5 Changing the Frequency.................................................................................................... 259

        10.5.1 Changing the Multiplication Rate ........................................................................ 259
        10.5.2 Changing the Division Ratio ................................................................................ 259

                                                                                         Rev. 5.0, 09/03, page xxiii of xlvi
        10.5.3 Notes on Changing the Frequency........................................................................ 259
10.6 Overview of WDT............................................................................................................. 260

        10.6.1 Block Diagram of WDT ....................................................................................... 260
        10.6.2 Register Configuration ......................................................................................... 260
10.7 WDT Registers .................................................................................................................. 261
        10.7.1 Watchdog Timer Counter (WTCNT) ................................................................... 261
        10.7.2 Watchdog Timer Control/Status Register (WTCSR) ........................................... 261
        10.7.3 Notes on Register Access ..................................................................................... 263
10.8 Using the WDT ................................................................................................................. 264
        10.8.1 Canceling Standby................................................................................................ 264
        10.8.2 Changing the Frequency....................................................................................... 265
        10.8.3 Using Watchdog Timer Mode .............................................................................. 265
        10.8.4 Using Interval Timer Mode .................................................................................. 265
10.9 Notes on Board Design...................................................................................................... 266

Section 11 Bus State Controller (BSC) ......................................................................... 269

11.1 Overview ........................................................................................................................... 269
        11.1.1 Features ................................................................................................................ 269
        11.1.2 Block Diagram ..................................................................................................... 271
        11.1.3 Pin Configuration ................................................................................................. 272
        11.1.4 Register Configuration ......................................................................................... 274
        11.1.5 Area Overview ..................................................................................................... 275
        11.1.6 PCMCIA Support................................................................................................. 278

11.2 BSC Registers.................................................................................................................... 281
        11.2.1 Bus Control Register 1 (BCR1)............................................................................ 281
        11.2.2 Bus Control Register 2 (BCR2)............................................................................ 285
        11.2.3 Wait State Control Register 1 (WCR1) ................................................................ 286
        11.2.4 Wait State Control Register 2 (WCR2) ................................................................ 287
        11.2.5 Individual Memory Control Register (MCR) ....................................................... 291
        11.2.6 PCMCIA Control Register (PCR) ........................................................................ 294
        11.2.7 Synchronous DRAM Mode Register (SDMR)..................................................... 298
        11.2.8 Refresh Timer Control/Status Register (RTCSR) ................................................ 299
        11.2.9 Refresh Timer Counter (RTCNT) ........................................................................ 301
        11.2.10 Refresh Time Constant Register (RTCOR) .......................................................... 302
        11.2.11 Refresh Count Register (RFCR)........................................................................... 302
        11.2.12 Cautions on Accessing Refresh Control Related Registers .................................. 303
        11.2.13 MCS0 Control Register (MCSCR0)..................................................................... 304
        11.2.14 MCS1 Control Register (MCSCR1)..................................................................... 305
        11.2.15 MCS2 Control Register (MCSCR2)..................................................................... 305
        11.2.16 MCS3 Control Register (MCSCR3)..................................................................... 305
        11.2.17 MCS4 Control Register (MCSCR4)..................................................................... 305
        11.2.18 MCS5 Control Register (MCSCR5)..................................................................... 305
        11.2.19 MCS6 Control Register (MCSCR6)..................................................................... 305

Rev. 5.0, 09/03, page xxiv of xlvi
        11.2.20 MCS7 Control Register (MCSCR7)..................................................................... 305
11.3 BSC Operation .................................................................................................................. 306

        11.3.1 Endian/Access Size and Data Alignment ............................................................. 306
        11.3.2 Description of Areas............................................................................................. 311
        11.3.3 Basic Interface...................................................................................................... 314
        11.3.4 Synchronous DRAM Interface ............................................................................. 321
        11.3.5 Burst ROM Interface ............................................................................................ 347
        11.3.6 PCMCIA Interface ............................................................................................... 350
        11.3.7 Waits between Access Cycles .............................................................................. 362
        11.3.8 Bus Arbitration..................................................................................................... 363
        11.3.9 Bus Pull-Up .......................................................................................................... 364
        11.3.10 MCS[0] to MCS[7] Pin Control ........................................................................... 366

Section 12 Direct Memory Access Controller (DMAC) .......................................... 369

12.1 Overview ........................................................................................................................... 369
        12.1.1 Features ................................................................................................................ 369
        12.1.2 Block Diagram ..................................................................................................... 371
        12.1.3 Pin Configuration ................................................................................................. 372
        12.1.4 Register Configuration ......................................................................................... 373

12.2 Register Descriptions......................................................................................................... 375
        12.2.1 DMA Source Address Registers 03 (SAR0SAR3)........................................... 375
        12.2.2 DMA Destination Address Registers 03 (DAR0DAR3) .................................. 376
        12.2.3 DMA Transfer Count Registers 03 (DMATCR0DMATCR3) ......................... 377
        12.2.4 DMA Channel Control Registers 03 (CHCR0CHCR3) ................................... 378
        12.2.5 DMA Operation Register (DMAOR) ................................................................... 385

12.3 Operation........................................................................................................................... 387
        12.3.1 DMA Transfer Flow............................................................................................. 387
        12.3.2 DMA Transfer Requests....................................................................................... 389
        12.3.3 Channel Priority ................................................................................................... 391
        12.3.4 DMA Transfer Types ........................................................................................... 394
        12.3.5 Number of Bus Cycle States and DREQ Pin Sampling Timing ........................... 407
        12.3.6 Source Address Reload Function ......................................................................... 416
        12.3.7 DMA Transfer Ending Conditions ....................................................................... 418

12.4 Compare Match Timer (CMT) .......................................................................................... 420
        12.4.1 Overview .............................................................................................................. 420
        12.4.2 Register Descriptions ........................................................................................... 421
        12.4.3 Operation.............................................................................................................. 424
        12.4.4 Compare Match .................................................................................................... 425

12.5 Examples of Use................................................................................................................ 427
        12.5.1 Example of DMA Transfer between On-Chip IrDA and External Memory ........ 427
        12.5.2 Example of DMA Transfer between A/D Converter and External Memory
                  (Address Reload On) ............................................................................................ 428

                                                                                          Rev. 5.0, 09/03, page xxv of xlvi
        12.5.3 Example of DMA Transfer between External Memory and SCIF Transmitter
                  (Indirect Address On)........................................................................................... 429

12.6 Usage Notes....................................................................................................................... 431

Section 13 Timer (TMU) ................................................................................................... 433

13.1 Overview ........................................................................................................................... 433
        13.1.1 Features ................................................................................................................ 433
        13.1.2 Block Diagram ..................................................................................................... 434
        13.1.3 Pin Configuration ................................................................................................. 435
        13.1.4 Register Configuration ......................................................................................... 435

13.2 TMU Registers .................................................................................................................. 436
        13.2.1 Timer Output Control Register (TOCR) .............................................................. 436
        13.2.2 Timer Start Register (TSTR)................................................................................ 436
        13.2.3 Timer Control Registers (TCR)............................................................................ 437
        13.2.4 Timer Constant Registers (TCOR) ....................................................................... 441
        13.2.5 Timer Counters (TCNT)....................................................................................... 442
        13.2.6 Input Capture Register (TCPR2) .......................................................................... 443

13.3 TMU Operation ................................................................................................................. 444
        13.3.1 Overview .............................................................................................................. 444
        13.3.2 Basic Functions .................................................................................................... 444

13.4 Interrupts ........................................................................................................................... 448
        13.4.1 Status Flag Setting Timing ................................................................................... 448
        13.4.2 Status Flag Clearing Timing................................................................................. 449
        13.4.3 Interrupt Sources and Priorities ............................................................................ 449

13.5 Usage Notes....................................................................................................................... 450
        13.5.1 Writing to Registers.............................................................................................. 450
        13.5.2 Reading Registers................................................................................................. 450

Section 14 Realtime Clock (RTC) .................................................................................. 451

14.1 Overview ........................................................................................................................... 451
        14.1.1 Features ................................................................................................................ 451
        14.1.2 Block Diagram ..................................................................................................... 452
        14.1.3 Pin Configuration ................................................................................................. 453
        14.1.4 RTC Register Configuration................................................................................. 454

14.2 RTC Registers ................................................................................................................... 455
        14.2.1 64-Hz Counter (R64CNT).................................................................................... 455
        14.2.2 Second Counter (RSECCNT)............................................................................... 455
        14.2.3 Minute Counter (RMINCNT) .............................................................................. 456
        14.2.4 Hour Counter (RHRCNT) .................................................................................... 456
        14.2.5 Day of Week Counter (RWKCNT) ...................................................................... 457
        14.2.6 Date Counter (RDAYCNT).................................................................................. 458
        14.2.7 Month Counter (RMONCNT).............................................................................. 458
        14.2.8 Year Counter (RYRCNT) .................................................................................... 459

Rev. 5.0, 09/03, page xxvi of xlvi
        14.2.9 Second Alarm Register (RSECAR)...................................................................... 459
        14.2.10 Minute Alarm Register (RMINAR) ..................................................................... 460
        14.2.11 Hour Alarm Register (RHRAR) ........................................................................... 460
        14.2.12 Day of Week Alarm Register (RWKAR)............................................................. 461
        14.2.13 Date Alarm Register (RDAYAR) ........................................................................ 462
        14.2.14 Month Alarm Register (RMONAR)..................................................................... 462
        14.2.15 RTC Control Register 1 (RCR1) .......................................................................... 463
        14.2.16 RTC Control Register 2 (RCR2) .......................................................................... 464
14.3 RTC Operation .................................................................................................................. 466
        14.3.1 Initial Settings of Registers after Power-On......................................................... 466
        14.3.2 Setting the Time ................................................................................................... 466
        14.3.3 Reading the Time ................................................................................................. 467
        14.3.4 Alarm Function .................................................................................................... 468
        14.3.5 Crystal Oscillator Circuit...................................................................................... 469
14.4 Usage Notes....................................................................................................................... 470
        14.4.1 Register Writing during RTC Count .................................................................... 470
        14.4.2 Use of Realtime Clock (RTC) Periodic Interrupts ............................................... 470
        14.4.3 Precautions when Using RTC Module Standby ................................................... 470

Section 15 Serial Communication Interface (SCI)..................................................... 471

15.1 Overview ........................................................................................................................... 471
        15.1.1 Features ................................................................................................................ 471
        15.1.2 Block Diagram ..................................................................................................... 472
        15.1.3 Pin Configuration ................................................................................................. 475
        15.1.4 Register Configuration ......................................................................................... 476

15.2 Register Descriptions......................................................................................................... 476
        15.2.1 Receive Shift Register (SCRSR) .......................................................................... 476
        15.2.2 Receive Data Register (SCRDR).......................................................................... 477
        15.2.3 Transmit Shift Register (SCTSR)......................................................................... 477
        15.2.4 Transmit Data Register (SCTDR) ........................................................................ 478
        15.2.5 Serial Mode Register (SCSMR) ........................................................................... 478
        15.2.6 Serial Control Register (SCSCR) ......................................................................... 481
        15.2.7 Serial Status Register (SCSSR) ............................................................................ 484
        15.2.8 SC Port Control Register (SCPCR)/SC Port Data Register (SCPDR) ................. 487
        15.2.9 Bit Rate Register (SCBRR) .................................................................................. 489

15.3 Operation........................................................................................................................... 497
        15.3.1 Overview .............................................................................................................. 497
        15.3.2 Operation in Asynchronous Mode........................................................................ 499
        15.3.3 Multiprocessor Communication ........................................................................... 509
        15.3.4 Synchronous Operation ........................................................................................ 518

15.4 SCI Interrupts .................................................................................................................... 528
15.5 Usage Notes....................................................................................................................... 529

                                                                                         Rev. 5.0, 09/03, page xxvii of xlvi
Section 16 Smart Card Interface...................................................................................... 533

16.1 Overview ........................................................................................................................... 533
        16.1.1 Features ................................................................................................................ 533
        16.1.2 Block Diagram ..................................................................................................... 534
        16.1.3 Pin Configuration ................................................................................................. 535
        16.1.4 Smart Card Interface Registers............................................................................. 535

16.2 Register Descriptions......................................................................................................... 536
        16.2.1 Smart Card Mode Register (SCSCMR)................................................................ 536
        16.2.2 Serial Status Register (SCSSR) ............................................................................ 537

16.3 Operation........................................................................................................................... 538
        16.3.1 Overview .............................................................................................................. 538
        16.3.2 Pin Connections.................................................................................................... 539
        16.3.3 Data Format.......................................................................................................... 540
        16.3.4 Register Settings................................................................................................... 541
        16.3.5 Clock .................................................................................................................... 542
        16.3.6 Data Transmission and Reception ........................................................................ 545

16.4 Usage Notes....................................................................................................................... 551
        16.4.1 Receive Data Timing and Receive Margin in Asynchronous Mode .................... 551
        16.4.2 Retransmission (Receive and Transmit Modes) ................................................... 553

Section 17 Serial Communication Interface with FIFO (SCIF) ............................. 555

17.1 Overview ........................................................................................................................... 555
        17.1.1 Features ................................................................................................................ 555
        17.1.2 Block Diagram ..................................................................................................... 556
        17.1.3 Pin Configuration ................................................................................................. 559
        17.1.4 Register Configuration ......................................................................................... 560

17.2 Register Descriptions......................................................................................................... 561
        17.2.1 Receive Shift Register (SCRSR) .......................................................................... 561
        17.2.2 Receive FIFO Data Register (SCFRDR).............................................................. 561
        17.2.3 Transmit Shift Register (SCTSR)......................................................................... 561
        17.2.4 Transmit FIFO Data Register (SCFTDR) ............................................................ 562
        17.2.5 Serial Mode Register (SCSMR) ........................................................................... 562
        17.2.6 Serial Control Register (SCSCR) ......................................................................... 564
        17.2.7 Serial Status Register (SCSSR) ............................................................................ 566
        17.2.8 Bit Rate Register (SCBRR) .................................................................................. 571
        17.2.9 FIFO Control Register (SCFCR).......................................................................... 578
        17.2.10 FIFO Data Count Register (SCFDR) ................................................................... 580

17.3 Operation........................................................................................................................... 581
        17.3.1 Overview .............................................................................................................. 581
        17.3.2 Serial Operation.................................................................................................... 582

17.4 SCIF Interrupts .................................................................................................................. 594
17.5 Usage Notes....................................................................................................................... 595

Rev. 5.0, 09/03, page xxviii of xlvi
Section 18 IrDA.................................................................................................................... 599

18.1 Overview ........................................................................................................................... 599
        18.1.1 Features ................................................................................................................ 599
        18.1.2 Block Diagram ..................................................................................................... 600
        18.1.3 Pin Configuration ................................................................................................. 603
        18.1.4 Register Configuration ......................................................................................... 604

18.2 Register Description .......................................................................................................... 605
        18.2.1 Serial Mode Register (SCSMR) ........................................................................... 605

18.3 Operation Description ....................................................................................................... 607
        18.3.1 Overview .............................................................................................................. 607
        18.3.2 Transmitting ......................................................................................................... 607
        18.3.3 Receiving.............................................................................................................. 608

Section 19 Pin Function Controller ................................................................................ 609

19.1 Overview ........................................................................................................................... 609
19.2 Register Configuration ...................................................................................................... 613
19.3 Register Descriptions......................................................................................................... 614

        19.3.1 Port A Control Register (PACR).......................................................................... 614
        19.3.2 Port B Control Register (PBCR) .......................................................................... 615
        19.3.3 Port C Control Register (PCCR) .......................................................................... 616
        19.3.4 Port D Control Register (PDCR) .......................................................................... 617
        19.3.5 Port E Control Register (PECR)........................................................................... 618
        19.3.6 Port F Control Register (PFCR) ........................................................................... 619
        19.3.7 Port G Control Register (PGCR) .......................................................................... 620
        19.3.8 Port H Control Register (PHCR) .......................................................................... 621
        19.3.9 Port J Control Register (PJCR) ............................................................................ 623
        19.3.10 Port K Control Register (PKCR) .......................................................................... 624
        19.3.11 Port L Control Register (PLCR)........................................................................... 625
        19.3.12 SC Port Control Register (SCPCR) ...................................................................... 626

Section 20 I/O Ports ............................................................................................................ 631

20.1 Overview ........................................................................................................................... 631
20.2 Port A ................................................................................................................................ 631

        20.2.1 Register Description ............................................................................................. 631
        20.2.2 Port A Data Register (PADR) .............................................................................. 632
20.3 Port B ................................................................................................................................ 633
        20.3.1 Register Description ............................................................................................. 633
        20.3.2 Port B Data Register (PBDR)............................................................................... 634
20.4 Port C ................................................................................................................................ 635
        20.4.1 Register Description ............................................................................................. 635
        20.4.2 Port C Data Register (PCDR)............................................................................... 636
20.5 Port D ................................................................................................................................ 637
        20.5.1 Register Description ............................................................................................. 637

                                                                                         Rev. 5.0, 09/03, page xxix of xlvi
        20.5.2 Port D Data Register (PDDR) .............................................................................. 638
20.6 Port E................................................................................................................................. 639

        20.6.1 Register Description ............................................................................................. 639
        20.6.2 Port E Data Register (PEDR) ............................................................................... 640
20.7 Port F................................................................................................................................. 641
        20.7.1 Register Description ............................................................................................. 641
        20.7.2 Port F Data Register (PFDR)................................................................................ 642
20.8 Port G ................................................................................................................................ 643
        20.8.1 Register Description ............................................................................................. 643
        20.8.2 Port G Data Register (PGDR) .............................................................................. 644
20.9 Port H ................................................................................................................................ 645
        20.9.1 Register Description ............................................................................................. 645
        20.9.2 Port H Data Register (PHDR) .............................................................................. 646
20.10 Port J.................................................................................................................................. 647
        20.10.1 Register Description ............................................................................................. 647
        20.10.2 Port J Data Register (PJDR)................................................................................. 648
20.11 Port K ................................................................................................................................ 649
        20.11.1 Register Description ............................................................................................. 649
        20.11.2 Port K Data Register (PKDR) .............................................................................. 650
20.12 Port L................................................................................................................................. 651
        20.12.1 Register Description ............................................................................................. 651
        20.12.2 Port L Data Register (PLDR) ............................................................................... 652
20.13 SC Port .............................................................................................................................. 653
        20.13.1 Register Description ............................................................................................. 653
        20.13.2 SC Port Data Register (SCPDR) .......................................................................... 654

Section 21 A/D Converter ................................................................................................. 657

21.1 Overview ........................................................................................................................... 657
        21.1.1 Features ................................................................................................................ 657
        21.1.2 Block Diagram ..................................................................................................... 658
        21.1.3 Input Pins.............................................................................................................. 659
        21.1.4 Register Configuration ......................................................................................... 660

21.2 Register Descriptions......................................................................................................... 661
        21.2.1 A/D Data Registers A to D (ADDRA to ADDRD) .............................................. 661
        21.2.2 A/D Control/Status Register (ADCSR) ................................................................ 662
        21.2.3 A/D Control Register (ADCR)............................................................................. 664

21.3 Bus Master Interface.......................................................................................................... 665
21.4 Operation........................................................................................................................... 666

        21.4.1 Single Mode (MULTI = 0)................................................................................... 666
        21.4.2 Multi Mode (MULTI = 1, SCN = 0) .................................................................... 668
        21.4.3 Scan Mode (MULTI = 1, SCN = 1) ..................................................................... 670
        21.4.4 Input Sampling and A/D Conversion Time .......................................................... 672
        21.4.5 External Trigger Input Timing ............................................................................. 673

Rev. 5.0, 09/03, page xxx of xlvi
21.5 Interrupts ........................................................................................................................... 674
21.6 Definitions of A/D Conversion Accuracy ......................................................................... 674
21.7 Usage Notes....................................................................................................................... 675

        21.7.1 Setting Analog Input Voltage ............................................................................... 675
        21.7.2 Processing of Analog Input Pins .......................................................................... 675
        21.7.3 Access Size and Read Data .................................................................................. 676

Section 22 D/A Converter ................................................................................................. 679

22.1 Overview ........................................................................................................................... 679
        22.1.1 Features ................................................................................................................ 679
        22.1.2 Block Diagram ..................................................................................................... 679
        22.1.3 I/O Pins................................................................................................................. 680
        22.1.4 Register Configuration ......................................................................................... 680

22.2 Register Descriptions......................................................................................................... 681
        22.2.1 D/A Data Registers 0 and 1 (DADR0/1) .............................................................. 681
        22.2.2 D/A Control Register (DACR)............................................................................. 681

22.3 Operation........................................................................................................................... 683

Section 23 User Debugging Interface (UDI) ............................................................... 685

23.1 Overview ........................................................................................................................... 685
23.2 User Debugging Interface (UDI) ....................................................................................... 685

        23.2.1 Pin Descriptions ................................................................................................... 685
        23.2.2 Block Diagram ..................................................................................................... 686
23.3 Register Descriptions......................................................................................................... 686
        23.3.1 Bypass Register (SDBPR).................................................................................... 687
        23.3.2 Instruction Register (SDIR).................................................................................. 687
        23.3.3 Boundary Scan Register (SDBSR) ....................................................................... 688
23.4 UDI Operation................................................................................................................... 695
        23.4.1 TAP Controller..................................................................................................... 695
        23.4.2 Reset Configuration.............................................................................................. 696
        23.4.3 UDI Reset............................................................................................................. 697
        23.4.4 UDI Interrupt........................................................................................................ 697
        23.4.5 Bypass .................................................................................................................. 697
        23.4.6 Using UDI to Recover from Sleep Mode ............................................................. 697
23.5 Boundary Scan .................................................................................................................. 698
        23.5.1 Supported Instructions.......................................................................................... 698
        23.5.2 Points for Attention .............................................................................................. 699
23.6 Usage Notes....................................................................................................................... 699
23.7 Advanced User Debugger (AUD) ..................................................................................... 699

Section 24 Electrical Characteristics.............................................................................. 701

24.1 Absolute Maximum Ratings.............................................................................................. 701
24.2 DC Characteristics............................................................................................................. 703

                                                                                         Rev. 5.0, 09/03, page xxxi of xlvi
24.3 AC Characteristics............................................................................................................. 706
        24.3.1 Clock Timing........................................................................................................ 707
        24.3.2 Control Signal Timing.......................................................................................... 713
        24.3.3 AC Bus Timing .................................................................................................... 716
        24.3.4 Basic Timing ........................................................................................................ 718
        24.3.5 Burst ROM Timing .............................................................................................. 721
        24.3.6 Synchronous DRAM Timing ............................................................................... 724
        24.3.7 PCMCIA Timing.................................................................................................. 742
        24.3.8 Peripheral Module Signal Timing ........................................................................ 749
        24.3.9 UDI-Related Pin Timing ...................................................................................... 753
        24.3.10 AC Characteristic Test Conditions ....................................................................... 755
        24.3.11 Delay Time Variation Due to Load Capacitance.................................................. 756

24.4 A/D Converter Characteristics........................................................................................... 757
24.5 D/A Converter Characteristics........................................................................................... 757

Appendix A Pin Functions ................................................................................................ 759

A.1 Pin States ........................................................................................................................... 759
A.2 Pin Specifications .............................................................................................................. 763
A.3 Treatment of Unused Pins ................................................................................................. 768
A.4 Pin States in Access to Each Address Space ..................................................................... 769

Appendix B Memory-Mapped Control Registers....................................................... 783

B.1 Register Address Map ....................................................................................................... 783
B.2 Register Bits ...................................................................................................................... 789

Appendix C Product Lineup ............................................................................................. 802
Appendix D Package Dimensions................................................................................... 803

Rev. 5.0, 09/03, page xxxii of xlvi
Figures      Block Diagram ..................................................................................................... 7
             Pin Assignment (FP-208C, FP-208E) .................................................................. 8
Figure 1.1   Pin Assignment (BP-240A).................................................................................. 9
Figure 1.2   Register Configuration in Each Processing Mode (1) .......................................... 21
Figure 1.3   Register Configuration in Each Processing Mode (2) .......................................... 22
Figure 2.1   General Purpose Registers (Not in DSP Mode) ................................................... 23
Figure 2.2   General Purpose Registers (DSP Mode) .............................................................. 24
Figure 2.3   Control Registers.................................................................................................. 27
Figure 2.4   System Registers .................................................................................................. 30
Figure 2.5   DSP Registers....................................................................................................... 32
Figure 2.6   Connections of DSP Registers and Buses ............................................................ 34
Figure 2.7   Longword Operand .............................................................................................. 35
Figure 2.8   Data Formats ........................................................................................................ 36
Figure 2.9   Byte, Word, and Longword Alignment ................................................................ 37
Figure 2.10  X and Y Data Transfer Addressing ...................................................................... 46
Figure 2.11  Single Data Transfer Addressing.......................................................................... 47
Figure 2.12  Modulo Addressing .............................................................................................. 48
Figure 2.13  DSP Instruction Formats ...................................................................................... 53
Figure 2.14  Sample Parallel Instruction Program.................................................................... 80
Figure 2.15  Examples of Conditional Operations and Data Transfer Instructions .................. 88
Figure 2.16  MMU Functions ................................................................................................... 93
Figure 2.17  Virtual Address Space Mapping........................................................................... 95
Figure 3.1   MMU Register Contents ...................................................................................... 98
Figure 3.2   Overall Configuration of the TLB ........................................................................ 99
Figure 3.3   Virtual Address and TLB Structure...................................................................... 100
Figure 3.4   TLB Indexing (IX = 1) ......................................................................................... 101
Figure 3.5   TLB Indexing (IX = 0) ......................................................................................... 102
Figure 3.6   Objects of Address Comparison ........................................................................... 103
Figure 3.7   Operation of LDTLB Instruction.......................................................................... 107
Figure 3.8   Synonym Problem ................................................................................................ 109
Figure 3.9   MMU Exception Generation Flowchart ............................................................... 114
Figure 3.10  MMU Exception Signals in Instruction Fetch ...................................................... 115
Figure 3.11  MMU Exception Signals in Data Access ............................................................. 116
Figure 3.12  MMU Exception in Repeat Loop ......................................................................... 117
Figure 3.13  Specifying Address and Data for Memory-Mapped TLB Access ........................ 120
Figure 3.14  Vector Table......................................................................................................... 124
Figure 3.15  Example of Acceptance Order of General Exceptions ......................................... 127
Figure 4.1   Bit Configurations of EXPEVT, INTEVT, INTEVT2, and TRA Registers......... 130
Figure 4.2   Cache Structure .................................................................................................... 144
Figure 4.3   CCR Register Configuration ................................................................................ 146
Figure 5.1   CCR2 Register Configuration .............................................................................. 147
Figure 5.2   Cache Search Scheme (Normal Mode) ................................................................ 149
Figure 5.3
Figure 5.4                                                                       Rev. 5.0, 09/03, page xxxiii of xlvi
Figure 5.5    Write-Back Buffer Configuration......................................................................... 150
Figure 5.6    Specifying Address and Data for Memory-Mapped Cache Access...................... 153
Figure 6.1    X/Y Memory Logical Address Mapping.............................................................. 159
Figure 6.2    X/Y Memory Physical Address Mapping ............................................................ 160
Figure 7.1    Block Diagram of INTC....................................................................................... 162
Figure 7.2    Example of IRL Interrupt Connection.................................................................. 166
Figure 7.3    Interrupt Operation Flowchart .............................................................................. 188
Figure 7.4    Example of Pipeline Operations when IRL Interrupt is Accepted ....................... 192
Figure 8.1    Block Diagram of User Break Controller............................................................. 195
Figure 8.2    When Interrupt Occurs before Branch Instruction is Executed ............................ 218
Figure 9.1    Canceling Standby Mode with STBCR.STBY..................................................... 235
Figure 9.2    Power-On Reset (Clock Modes 0, 1, 2, and 7) STATUS Output ......................... 238
Figure 9.3    Manual Reset STATUS Output............................................................................ 239
Figure 9.4    Standby to Interrupt STATUS Output.................................................................. 240
Figure 9.5    Standby to Power-On Reset STATUS Output...................................................... 241
Figure 9.6    Standby to Manual Reset STATUS Output.......................................................... 242
Figure 9.7    Sleep to Interrupt STATUS Output ...................................................................... 243
Figure 9.8    Sleep to Power-On Reset STATUS Output.......................................................... 243
Figure 9.9    Sleep to Manual Reset STATUS Output.............................................................. 244
Figure 9.10   Hardware Standby Mode (When CA Goes Low in Normal Operation)............... 246
Figure 9.11   Hardware Standby Mode Timing (When CA Goes Low during WDT
              Operation on Standby Mode Cancellation) .......................................................... 247
Figure 10.1   Block Diagram of Clock Pulse Generator ............................................................ 250
Figure 10.2   Block Diagram of WDT ....................................................................................... 260
Figure 10.3   Writing to WTCNT and WTCSR......................................................................... 264
Figure 10.4   Points for Attention when Using Crystal Resonator............................................. 266
Figure 10.5   Points for Attention when Using PLL Oscillator Circuit ..................................... 267
Figure 11.1   Block Diagram of Bus State Controller................................................................ 271
Figure 11.2   Correspondence between Logical Address Space and Physical Address Space .. 275
Figure 11.3   Physical Space Allocation .................................................................................... 277
Figure 11.4   PCMCIA Space Allocation .................................................................................. 278
Figure 11.5   Writing to RFCR, RTCSR, RTCNT, and RTCOR............................................... 303
Figure 11.6   Basic Timing of Basic Interface ........................................................................... 315
Figure 11.7   Example of 32-Bit Data-Width Static RAM Connection ..................................... 316
Figure 11.8   Example of 16-Bit Data-Width Static RAM Connection ..................................... 317
Figure 11.9   Example of 8-Bit Data-Width Static RAM Connection ....................................... 318
Figure 11.10  Basic Interface Wait Timing (Software Wait Only)............................................. 319
Figure 11.11  Basic Interface Wait State Timing (Wait State Insertion by WAIT Signal
              WAITSEL = 1)..................................................................................................... 320
Figure 11.12  Example of 64-Mbit Synchronous DRAM Connection (32-Bit Bus Width)........ 322
Figure 11.13  Example of 64-Mbit Synchronous DRAM (16-Bit Bus Width) ........................... 323
Figure 11.14  Basic Timing for Synchronous DRAM Burst Read ............................................. 326
Figure 11.15  Synchronous DRAM Burst Read Wait Specification Timing .............................. 327

Rev. 5.0, 09/03, page xxxiv of xlvi
Figure 11.16  Basic Timing for Synchronous DRAM Single Read............................................ 328
Figure 11.17  Basic Timing for Synchronous DRAM Burst Write ............................................ 330
Figure 11.18  Basic Timing for Synchronous DRAM Single Write........................................... 332
Figure 11.19  Burst Read Timing (No Precharge) ...................................................................... 335
Figure 11.20  Burst Read Timing (Same Row Address) ............................................................ 336
Figure 11.21  Burst Read Timing (Different Row Addresses) ................................................... 337
Figure 11.22  Burst Write Timing (No Precharge) ..................................................................... 338
Figure 11.23  Burst Write Timing (Same Row Address) ........................................................... 339
Figure 11.24  Burst Write Timing (Different Row Addresses) .................................................. 340
Figure 11.25  Auto-Refresh Operation ....................................................................................... 341
Figure 11.26  Synchronous DRAM Auto-Refresh Timing......................................................... 342
Figure 11.27  Synchronous DRAM Self-Refresh Timing .......................................................... 344
Figure 11.28  Synchronous DRAM Mode Write Timing ........................................................... 346
Figure 11.29  Burst ROM Wait Access Timing ......................................................................... 348
Figure 11.30  Burst ROM Basic Access Timing ........................................................................ 349
Figure 11.31  Example of PCMCIA Interface ............................................................................ 351
Figure 11.32  Basic Timing for PCMCIA Memory Card Interface ............................................ 353
Figure 11.33  Wait Timing for PCMCIA Memory Card Interface ............................................. 354
Figure 11.34  Basic Timing for PCMCIA Memory Card Interface Burst Access ...................... 355
Figure 11.35  Wait Timing for PCMCIA Memory Card Interface Burst Access ....................... 356
Figure 11.36  PCMCIA Space Allocation .................................................................................. 357
Figure 11.37  Basic Timing for PCMCIA I/O Card Interface .................................................... 359
Figure 11.38  Wait Timing for PCMCIA I/O Card Interface ..................................................... 360
Figure 11.39  Dynamic Bus Sizing Timing for PCMCIA I/O Card Interface ............................ 361
Figure 11.40  Waits between Access Cycles .............................................................................. 363
Figure 11.41  Pull-Up Timing for Pins A25 to A0 ..................................................................... 364
Figure 11.42  Pull-Up Timing for Pins D31 to D0 (Read Cycle) ............................................... 365
Figure 11.43  Pull-Up Timing for Pins D31 to D0 (Write Cycle) .............................................. 365
Figure 12.1   Block Diagram of DMAC .................................................................................... 371
Figure 12.2   DMAC Transfer Flowchart .................................................................................. 388
Figure 12.3   Round-Robin Mode.............................................................................................. 392
Figure 12.4   Changes in Channel Priority in Round-Robin Mode............................................ 393
Figure 12.5   Operation of Direct Address Mode in Dual Address Mode ................................. 395
Figure 12.6   Example of DMA Transfer Timing in the Direct Address Mode in Dual Mode
              (Transfer Source: Ordinary Memory, Transfer Destination: Ordinary Memory). 396
Figure 12.7   Example of DMA Transfer Timing in the Direct Address Mode in Dual Mode
              (16-byte Transfer, Transfer Source: Ordinary Memory,
Figure 12.8   Transfer Destination: Ordinary Memory)............................................................. 397
              Example of DMA Transfer Timing in the Direct Address Mode in Dual Mode
Figure 12.9   (16-byte Transfer, Transfer Source: Synchronous DRAM,
              Transfer Destination: Ordinary Memory)............................................................. 397
              Indirect Address Operation in Dual Address Mode (When External Memory
              Space has a 16-Bit Width).................................................................................... 399

              Rev. 5.0, 09/03, page xxxv of xlvi
Figure 12.10  Example of Transfer Timing in the Indirect Address Mode in Dual Address
              Mode .................................................................................................................... 400
Figure 12.11  Data Flow in Single Address Mode...................................................................... 401
Figure 12.12  Example of DMA Transfer Timing in Single Address Mode .............................. 402
Figure 12.13  Example of DMA Transfer Timing in Single Address Mode (External Memory3
              Space (Ordinary Memory)  External Device with DACK) .............................. 403
Figure 12.14  Example of Transfer in Cycle-Steal Mode ........................................................... 403
Figure 12.15  Example of Transfer in Burst Mode ..................................................................... 404
Figure 12.16  Bus State when Multiple Channels Are Operating............................................... 406
Figure 12.17  Cycle-Steal Mode, Level Input (CPU Access: 2 Cycles) ..................................... 409
Figure 12.18  Cycle-Steal Mode, Level Input (CPU Access: 3 Cycles) ..................................... 410
Figure 12.19  Cycle-Steal Mode, Level input (CPU Access: 2 Cycles,
              DMA RD Access: 4 Cycles)................................................................................. 411
Figure 12.20  Cycle-Steal Mode, Level input (CPU Access: 2 Cycles, DREQ Input Delayed) . 412
Figure 12.21  Cycle-Steal Mode, Edge input (CPU Access: 2 Cycles) ...................................... 413
Figure 12.22  Burst Mode, Level Input ...................................................................................... 414
Figure 12.23  Burst Mode, Edge Input ....................................................................................... 415
Figure 12.24  Source Address Reload Function Diagram........................................................... 416
Figure 12.25  Timing Chart of Source Address Reload Function............................................... 417
Figure 12.26  Block Diagram of CMT ....................................................................................... 420
Figure 12.27  Counter Operation ................................................................................................ 424
Figure 12.28  Count Timing ....................................................................................................... 425
Figure 12.29  CMF Setting Timing ............................................................................................ 426
Figure 12.30  Timing of CMF Clearing by the CPU .................................................................. 426
Figure 13.1   Block Diagram of TMU ....................................................................................... 434
Figure 13.2   Setting the Count Operation ................................................................................. 445
Figure 13.3   Auto-Reload Count Operation.............................................................................. 446
Figure 13.4   Count Timing when Operating on Internal Clock ................................................ 446
Figure 13.5   Count Timing when Operating on External Clock (Both Edges Detected) .......... 447
Figure 13.6   Count Timing when Operating on On-Chip RTC Clock ...................................... 447
Figure 13.7   Operation Timing when Using Input Capture Function
              (Using TCLK Rising Edge).................................................................................. 448
Figure 13.8   UNF Setting Timing............................................................................................. 448
Figure 13.9   Status Flag Clearing Timing................................................................................. 449
Figure 14.1   Block Diagram of RTC ........................................................................................ 452
Figure 14.2   Setting the Time ................................................................................................... 466
Figure 14.3   Reading the Time ................................................................................................. 467
Figure 14.4   Using the Alarm Function .................................................................................... 468
Figure 14.5   Example of Crystal Oscillator Circuit Connection............................................... 469
Figure 14.6   Using Periodic Interrupt Function ........................................................................ 470
Figure 15.1   Block Diagram of SCI .......................................................................................... 472
Figure 15.2   SCPT[1]/SCK0 Pin .............................................................................................. 473
Figure 15.3   SCPT[0]/TxD0 Pin............................................................................................... 474

Rev. 5.0, 09/03, page xxxvi of xlvi
Figure 15.4   SCPT[0]/RxD0 Pin............................................................................................... 475
Figure 15.5   Example of Data Format in Asynchronous Communication
              (8-Bit Data with Parity and Two Stop Bits) ......................................................... 499
Figure 15.6   Output Clock and Serial Data Timing (Asynchronous Mode) ............................. 501
Figure 15.7   Sample Flowchart for SCI Initialization............................................................... 502
Figure 15.8   Sample Flowchart for Transmitting Serial Data ................................................... 503
Figure 15.9   Example of SCI Transmit Operation in Asynchronous Mode
              (8-Bit Data with Parity and One Stop Bit) ........................................................... 505
Figure 15.10  Sample Flowchart for Receiving Serial Data ....................................................... 506
Figure 15.11  Example of SCI Receive Operation (8-Bit Data with Parity and One Stop Bit) .. 509
Figure 15.12  Communication Among Processors Using Multiprocessor Format
              (Sending Data H'AA to Receiving Processor A) .................................................. 510
Figure 15.13  Sample Flowchart for Transmitting Multiprocessor Serial Data.......................... 511
Figure 15.14  Example of SCI Multiprocessor Transmit Operation (8-Bit Data with
              Multiprocessor Bit and One Stop Bit) .................................................................. 512
Figure 15.15  Sample Flowchart for Receiving Multiprocessor Serial Data .............................. 514
Figure 15.16  Example of SCI Receive Operation (8-Bit Data with Multiprocessor Bit and
              One Stop Bit)........................................................................................................ 516
Figure 15.17  Data Format in Synchronous Communication ..................................................... 518
Figure 15.18  Sample Flowchart for SCI Initialization............................................................... 520
Figure 15.19  Sample Flowchart for Transmitting Serial Data ................................................... 521
Figure 15.20  Example of SCI Transmit Operation .................................................................... 522
Figure 15.21  Sample Flowchart for Receiving Serial Data ....................................................... 524
Figure 15.22  Example of SCI Receive Operation...................................................................... 526
Figure 15.23  Sample Flowchart for Transmitting/Receiving Serial Data.................................. 527
Figure 15.24  Receive Data Sampling Timing in Asynchronous Mode ..................................... 530
Figure 16.1   Block Diagram of Smart Card Interface............................................................... 534
Figure 16.2   Pin Connection Diagram for Smart Card Interface .............................................. 539
Figure 16.3   Data Format for Smart Card Interface.................................................................. 540
Figure 16.4   Waveform of Start Character................................................................................ 542
Figure 16.5   Initialization Flowchart (Example)....................................................................... 546
Figure 16.6   Transmission Flowchart ....................................................................................... 548
Figure 16.7   Reception Flowchart (Example)........................................................................... 550
Figure 16.8   Receive Data Sampling Timing in Smart Card Mode .......................................... 552
Figure 16.9   Retransmission in SCI Receive Mode .................................................................. 553
Figure 16.10  Retransmission in SCI Transmit Mode ................................................................ 554
Figure 17.1   Block Diagram of SCIF........................................................................................ 556
Figure 17.2   SCPT[5]/SCK2 Pin .............................................................................................. 557
Figure 17.3   SCPT[4]/TxD2 Pin............................................................................................... 558
Figure 17.4   SCPT[4]/RxD2 Pin............................................................................................... 559
Figure 17.5   Sample Flowchart for SCIF Initialization ............................................................ 584
Figure 17.6   Sample Flowchart for Transmitting Serial Data ................................................... 586
Figure 17.7   Example of Transmit Operation (8-Bit Data, Parity, One Stop Bit)..................... 588

              Rev. 5.0, 09/03, page xxxvii of xlvi
Figure 17.8   Example of Operation Using Modem Control (CTS)........................................... 588
Figure 17.9   Sample Flowchart for Receiving Serial Data ....................................................... 590
Figure 17.10  Sample Flowchart for Receiving Serial Data (cont)............................................. 591
Figure 17.11  Example of SCIF Receive Operation (8-Bit Data, Parity, One Stop Bit)............. 593
Figure 17.12  Example of Operation Using Modem Control (RTS)........................................... 593
Figure 17.13  Receive Data Sampling Timing in Asynchronous Mode ..................................... 596
Figure 18.1   Block Diagram of IrDA........................................................................................ 600
Figure 18.2   SCPT[3]/SCK1 Pin .............................................................................................. 601
Figure 18.3   SCPT[2]/TxD1 Pin............................................................................................... 602
Figure 18.4   SCPT[2]/RxD1 Pin............................................................................................... 603
Figure 18.5   Transmit/Receive Operation................................................................................. 608
Figure 20.1   Port A ................................................................................................................... 631
Figure 20.2   Port B ................................................................................................................... 633
Figure 20.3   Port C ................................................................................................................... 635
Figure 20.4   Port D ................................................................................................................... 637
Figure 20.5   Port E.................................................................................................................... 639
Figure 20.6   Port F.................................................................................................................... 641
Figure 20.7   Port G ................................................................................................................... 643
Figure 20.8   Port H ................................................................................................................... 645
Figure 20.9   Port J .................................................................................................................... 647
Figure 20.10  Port K ................................................................................................................... 649
Figure 20.11  Port L.................................................................................................................... 651
Figure 20.12  SC Port ................................................................................................................. 653
Figure 21.1   Block Diagram of A/D Converter ........................................................................ 658
Figure 21.2   A/D Data Register Access Operation (Reading H'AA40).................................... 665
Figure 21.3   Example of A/D Converter Operation (Single Mode, Channel 1 Selected) ......... 667
Figure 21.4   Example of A/D Converter Operation (Multi Mode, Channels AN0 to AN2
              Selected)............................................................................................................... 669
Figure 21.5   Example of A/D Converter Operation (Scan Mode, Channels AN0 to AN2
              Selected)............................................................................................................... 671
Figure 21.6   A/D Conversion Timing ....................................................................................... 672
Figure 21.7   External Trigger Input Timing ............................................................................. 673
Figure 21.8   Definitions of A/D Conversion Accuracy ............................................................ 675
Figure 21.9   Example of Analog Input Protection Circuit ........................................................ 676
Figure 21.10  Analog Input Pin Equivalent Circuit .................................................................... 676
Figure 22.1   Block Diagram of D/A Converter ........................................................................ 679
Figure 22.2   Example of D/A Converter Operation.................................................................. 683
Figure 23.1   Block Diagram of UDI ......................................................................................... 686
Figure 23.2   TAP Controller State Transitions ......................................................................... 695
Figure 23.3   UDI Reset............................................................................................................. 697
Figure 24.1   EXTAL Clock Input Timing ................................................................................ 708
Figure 24.2   CKIO Clock Input Timing ................................................................................... 708
Figure 24.3   CKIO Clock Output Timing................................................................................. 708

Rev. 5.0, 09/03, page xxxviii of xlvi
Figure 24.4   Power-on Oscillation Settling Time ..................................................................... 709
Figure 24.5   Oscillation Settling Time on Return from Standby (Return by Reset) ................. 709
Figure 24.6   Oscillation Settling Time on Return from Standby (Return by NMI) .................. 710
Figure 24.7   Oscillation Settling Time on Return from Standby (Return by IRQ4 to IRQ0,
              PINT0/1 and IRL3 to IRL0)................................................................................. 710
Figure 24.8   PLL Synchronization Settling Time during Standby Recovery (Reset or NMI) .. 711
Figure 24.9   PLL Synchronization Settling Time during Standby Recovery (IRQ/IRL or
              PINT0/PINT1 Interrupt)....................................................................................... 711
Figure 24.10  PLL Synchronization Settling Time in Case of IRQ/IRL Interrupt ...................... 712
Figure 24.11  Reset Input Timing............................................................................................... 714
Figure 24.12  Interrupt Signal Input Timing............................................................................... 714
Figure 24.13  IRQOUT Timing .................................................................................................. 714
Figure 24.14  Bus Release Timing.............................................................................................. 715
Figure 24.15  Pin Drive Timing at Standby................................................................................ 715
Figure 24.16  Basic Bus Cycle (No Wait) .................................................................................. 718
Figure 24.17  Basic Bus Cycle (One Wait)................................................................................. 719
Figure 24.18  Basic Bus Cycle (External Wait, WAITSEL = 1) ................................................ 720
Figure 24.19  Burst ROM Bus Cycle (No Wait) ........................................................................ 721
Figure 24.20  Burst ROM Bus Cycle (Two Waits) .................................................................... 722
Figure 24.21  Burst ROM Bus Cycle (External Wait, WAITSEL = 1) ...................................... 723
Figure 24.22  Synchronous DRAM Read Bus Cycle (RCD = 0, CAS Latency = 1, TPC = 0) .. 724
Figure 24.23  Synchronous DRAM Read Bus Cycle (RCD = 2, CAS Latency = 2, TPC = 1) .. 725
Figure 24.24  Synchronous DRAM Read Bus Cycle (Burst Read (Single Read 4),
              RCD = 0, CAS Latency = 1, TPC = 1) ................................................................. 726
Figure 24.25  Synchronous DRAM Read Bus Cycle (Burst Read (Single Read 4), RCD = 1,
              CAS Latency = 3, TPC = 0) ................................................................................. 727
Figure 24.26  Synchronous DRAM Write Bus Cycle (RCD = 0, TPC = 0, TRWL = 0)............ 728
Figure 24.27  Synchronous DRAM Write Bus Cycle (RCD = 2, TPC = 1, TRWL = 1)............ 729
Figure 24.28  Synchronous DRAM Write Bus Cycle (Burst Write (Single Write 4),
              RCD = 0, TPC = 1, TRWL = 0) ........................................................................... 730
Figure 24.29  Synchronous DRAM Write Bus Cycle (Burst Mode (Single Write 4),
              RCD = 1, TPC = 0, TRWL = 0) ........................................................................... 731
Figure 24.30  Synchronous DRAM Burst Read Bus Cycle (RAS Down, Same Row Address,
              CAS Latency = 1)................................................................................................. 732
Figure 24.31  Synchronous DRAM Burst Read Bus Cycle (RAS Down, Same Row Address,
              CAS Latency = 2)................................................................................................. 733
Figure 24.32  Synchronous DRAM Burst Read Bus Cycle (RAS Down, Different Row
              Address, TPC = 0, RCD = 0, CAS Latency = 1) .................................................. 734
Figure 24.33  Synchronous DRAM Burst Read Bus Cycle
              (RAS Down, Different Row Address, TPC = 1, RCD = 0, CAS Latency = 1) .... 735
Figure 24.34  Synchronous DRAM Burst Write Bus Cycle (RAS Down, Same Row Address) 736
Figure 24.35  Synchronous DRAM Burst Write Bus Cycle (RAS Down, Different Row
              Address, TPC = 0, RCD = 0) ............................................................................... 737

              Rev. 5.0, 09/03, page xxxix of xlvi
Figure 24.36  Synchronous DRAM Burst Write Bus Cycle (RAS Down, Different Row
              Address, TPC = 1, RCD = 1) ............................................................................... 738
Figure 24.37  Synchronous DRAM Auto-Refresh Timing (TRAS = 1, TPC = 1) ..................... 739
Figure 24.38  Synchronous DRAM Self-Refresh Cycle (TRAS = 1, TPC = 1) ......................... 740
Figure 24.39  Synchronous DRAM Mode Register Write Cycle ............................................... 741
Figure 24.40  PCMCIA Memory Bus Cycle (TED = 0, TEH = 0, No Wait) ............................. 742
Figure 24.41  PCMCIA Memory Bus Cycle (TED = 2, TEH = 1, One Wait, External Wait,
              WAITSEL = 1)..................................................................................................... 743
Figure 24.42  PCMCIA Memory Bus Cycle (Burst Read, TED = 0, TEH = 0, No Wait).......... 744
Figure 24.43  PCMCIA Memory Bus Cycle (Burst Read, TED = 1, TEH = 1, Two Waits,
              Burst Pitch = 3, WAITSEL = 1)........................................................................... 745
Figure 24.44  PCMCIA I/O Bus Cycle (TED = 0, TEH = 0, No Wait)...................................... 746
Figure 24.45  PCMCIA I/O Bus Cycle (TED = 2, TEH = 1, One Wait, External Wait,
              WAITSEL = 1)..................................................................................................... 747
Figure 24.46  PCMCIA I/O Bus Cycle (TED = 1, TEH = 1, One Wait, Bus Sizing,
              WAITSEL = 1)..................................................................................................... 748
Figure 24.47  TCLK Input Timing ............................................................................................. 750
Figure 24.48  TCLK Clock Input Timing................................................................................... 750
Figure 24.49  RTC Crystal Oscillator Oscillation Settling Time at Power-On........................... 750
Figure 24.50  SCK Input Clock Timing ..................................................................................... 750
Figure 24.51  SCI I/O Timing in Synchronous Mode ................................................................ 751
Figure 24.52  I/O Port Timing .................................................................................................... 751
Figure 24.53  DREQ Input Timing............................................................................................. 752
Figure 24.54  DRAK Output Timing.......................................................................................... 752
Figure 24.55  TCK Input Timing................................................................................................ 753
Figure 24.56  TRST Input Timing (Reset Hold)......................................................................... 753
Figure 24.57  UDI Data Transfer Timing ................................................................................... 754
Figure 24.58  ASEMD0 Input Timing........................................................................................ 754
Figure 24.59  Output Load Circuit.............................................................................................. 755
Figure 24.60  Load Capacitance vs. Delay Time........................................................................ 756
Figure D.1    Package Dimensions (FP-208C)........................................................................... 803
Figure D.2    Package Dimensions (FP-208E)........................................................................... 804
Figure D.3    Package Dimensions (BP-240A).......................................................................... 805

Rev. 5.0, 09/03, page xl of xlvi
Tables      SH7729R Features .................................................................................................. 2
            Characteristics......................................................................................................... 6
Table 1.1   SH7729R Pin Functions.......................................................................................... 10
Table 1.2   Initial Register Values ............................................................................................ 22
Table 1.3   Operation of SR Bits in Each SH-3 DSP Mode...................................................... 29
Table 2.1   Destination Register in DSP Instructions ............................................................... 31
Table 2.2   Source Register in DSP Operations ........................................................................ 32
Table 2.3   DSR Register Bits................................................................................................... 33
Table 2.4   Word Data Sign Extension ..................................................................................... 38
Table 2.5   Delayed Branch Instructions................................................................................... 38
Table 2.6   T Bit........................................................................................................................ 39
Table 2.7   Immediate Data Referencing .................................................................................. 39
Table 2.8   Absolute Address Referencing ............................................................................... 40
Table 2.9   Displacement Referencing...................................................................................... 40
Table 2.10  Addressing Modes and Effective Addresses for CPU Instructions......................... 41
Table 2.11  Overview of Data Transfer Instructions.................................................................. 45
Table 2.12  CPU Instruction Formats ........................................................................................ 50
Table 2.13  Double Data Transfer Instruction Formats ............................................................. 54
Table 2.14  Single Data Transfer Instruction Formats............................................................... 55
Table 2.15  A-Field Parallel Data Transfer Instructions ............................................................ 56
Table 2.16  B-Field ALU Operation Instructions and Multiply Instructions............................. 57
Table 2.17  CPU Instruction Types ........................................................................................... 59
Table 2.18  Data Transfer Instructions ...................................................................................... 63
Table 2.19  Arithmetic Operation Instructions .......................................................................... 65
Table 2.20  Logic Operation Instructions .................................................................................. 67
Table 2.21  Shift Instructions..................................................................................................... 68
Table 2.22  Branch Instructions ................................................................................................. 69
Table 2.23  System Control Instructions.................................................................................... 70
Table 2.24  Added CPU System Control Instructions ............................................................... 74
Table 2.25  Double Data Transfer Instructions.......................................................................... 76
Table 2.26  Single Data Transfer Instructions ........................................................................... 77
Table 2.27  Correspondence between DSP Data Transfer Operands and Registers .................. 78
Table 2.28  DSP Operation Instruction Formats........................................................................ 79
Table 2.29  Correspondence between DSP Instruction Operands and Registers ....................... 80
Table 2.30  DSP Operation Instructions .................................................................................... 81
Table 2.31  DC Bit Update Definitions ..................................................................................... 87
Table 2.32  Examples of NOPX and NOPY Instruction Codes................................................. 89
Table 2.33  Register Configuration............................................................................................ 97
Table 2.34  Access States Designated by D, C, and PR Bits ..................................................... 104
Table 3.1   Register Configuration............................................................................................ 123
Table 3.2   Exception Event Vectors ........................................................................................ 125
Table 4.1   Exception Codes ..................................................................................................... 128
Table 4.2
Table 4.3

            Rev. 5.0, 09/03, page xli of xlvi
Table 4.4 Types of Reset ........................................................................................................ 133
Table 5.1 Cache Specifications............................................................................................... 143
Table 5.2 LRU and Way Replacement ................................................................................... 145
Table 5.3 Register Configuration............................................................................................ 145
Table 5.4 LRU and Way Replacement (when W2LOCK=1) ................................................. 147
Table 5.5 LRU and Way Replacement (when W3LOCK=1) ................................................. 147
Table 5.6 LRU and Way Replacement (when W2LOCK=1 and W3LOCK=1)..................... 148
Table 6.1 X/Y Memory Specifications ................................................................................... 157
Table 7.1 INTC Pins ............................................................................................................... 163
Table 7.2 INTC Registers ....................................................................................................... 164
Table 7.3 IRL3IRL0/IRLS3IRLS0 Pins and Interrupt Levels ............................................ 167
Table 7.4 Interrupt Exception Handling Sources and Priority (IRQ Mode) ........................... 170
Table 7.5 Interrupt Exception Handling Sources and Priority (IRL Mode)............................ 172
Table 7.6 Interrupt Levels and INTEVT Codes...................................................................... 174
Table 7.7 Interrupt Request Sources and IPRAIPRE............................................................ 175
Table 7.8 Interrupt Response Time......................................................................................... 190
Table 8.1 UBC Registers ........................................................................................................ 196
Table 8.2 Data Access Cycle Addresses and Operand Size Comparison Conditions............. 216
Table 8.3 BSA Values Stored in Exception Handling before Execution of Branch

                Destination Instruction............................................................................................ 219
Table 9.1 Power-Down Modes ............................................................................................... 228
Table 9.2 Pin Configuration.................................................................................................... 229
Table 9.3 Register Configuration............................................................................................ 229
Table 9.4 Register States in Standby Mode ............................................................................ 234
Table 10.1 CPG Pins and Functions ......................................................................................... 252
Table 10.2 CPG Register .......................................................................................................... 252
Table 10.3 Clock Operating Modes .......................................................................................... 253
Table 10.4 Available Combinations of Clock Mode and FRQCR Values................................ 254
Table 10.5 Register Configuration............................................................................................ 261
Table 11.1 BSC Pins................................................................................................................. 272
Table 11.2 BSC Registers......................................................................................................... 274
Table 11.3 Physical Address Space Map.................................................................................. 276
Table 11.4 Correspondence between External Pins (MD4 and MD3) and Memory Size......... 277
Table 11.5 PCMCIA Interface Characteristics ......................................................................... 278
Table 11.6 PCMCIA Support Interface .................................................................................... 279
Table 11.7 32-Bit External Device/Big-Endian Access and Data Alignment .......................... 306
Table 11.8 16-Bit External Device/Big-Endian Access and Data Alignment .......................... 307
Table 11.9 8-Bit External Device/Big-Endian Access and Data Alignment ............................ 308
Table 11.10 32-Bit External Device/Little-Endian Access and Data Alignment........................ 309
Table 11.11 16-Bit External Device/Little-Endian Access and Data Alignment........................ 309
Table 11.12 8-Bit External Device/Little-Endian Access and Data Alignment.......................... 310
Table 11.13 Relationship between Bus Width, AMX Bits, and Address Multiplex Output ....... 324

Rev. 5.0, 09/03, page xlii of xlvi
Table 11.14 Example of Correspondence between SH7729R and Synchronous DRAM
                Address Pins (AMX20 = 011 (32-Bit Bus Width)) .............................................. 325

Table 11.15 MCSCRx Settings and MCS[x] Assertion Conditions (x: 07).............................. 367
Table 12.1 DMAC Pins ............................................................................................................ 372
Table 12.2 DMAC Registers .................................................................................................... 373
Table 12.3 Selecting External Request Modes with RS Bits .................................................... 389
Table 12.4 Selecting On-Chip Peripheral Module Request Modes with RS Bits ..................... 390
Table 12.5 Supported DMA Transfers...................................................................................... 394
Table 12.6 Relationship between Request Modes and Bus Modes by DMA Transfer

                Category.................................................................................................................. 405
Table 12.7 Register Configuration............................................................................................ 421
Table 12.8 Transfer Conditions and Register Settings for Transfer between On-Chip SCI

                and External Memory ............................................................................................. 427
Table 12.9 Transfer Conditions and Register Settings for Transfer between On-Chip A/D

                Converter and External Memory ............................................................................ 428
Table 12.10 Values in DMAC after End of Fourth Transfer ...................................................... 429
Table 12.11 Transfer Conditions and Register Settings for Transfer between External

                Memory and SCIF Transmitter............................................................................... 430
Table 13.1 TMU Pin ............................................................................................................... 435
Table 13.2 TMU Registers........................................................................................................ 435
Table 13.3 TMU Interrupt Sources........................................................................................... 449
Table 14.1 RTC Pins................................................................................................................. 453
Table 14.2 RTC Registers......................................................................................................... 454
Table 14.3 Day-of-Week Codes (RWKCNT) .......................................................................... 457
Table 14.4 Day-of-Week Codes (RWKAR) ............................................................................. 461
Table 14.5 Recommended Oscillator Circuit Constants (Recommended Values).................... 469
Table 15.1 SCI Pins .................................................................................................................. 475
Table 15.2 SCI Registers .......................................................................................................... 476
Table 15.3 SCSMR Settings ..................................................................................................... 490
Table 15.4 Bit Rates and SCBRR Settings in Asynchronous Mode ......................................... 490
Table 15.5 Bit Rates and SCBRR Settings in Synchronous Mode ........................................... 494
Table 15.6 Maximum Bit Rates for Various Frequencies with Baud Rate Generator

                (Asynchronous Mode) ............................................................................................ 495
Table 15.7 Maximum Bit Rates with External Clock Input (Asynchronous Mode)................. 496
Table 15.8 Maximum Bit Rates with External Clock Input (Synchronous Mode) ................... 496
Table 15.9 Serial Mode Register Settings and SCI Communication Formats .......................... 498
Table 15.10 SCSMR and SCSCR Settings and SCI Clock Source Selection ............................. 498
Table 15.11 Serial Communication Formats (Asynchronous Mode) ......................................... 500
Table 15.12 Receive Error Conditions and SCI Operation......................................................... 508
Table 15.13 SCI Interrupt Sources ............................................................................................. 528
Table 15.14 SCSSR Status Flags and Transfer of Receive Data ................................................ 529
Table 16.1 Smart Card Interface Pins ....................................................................................... 535
Table 16.2 Registers ................................................................................................................. 535

                                                                                          Rev. 5.0, 09/03, page xliii of xlvi
Table 16.3 Register Settings for Smart Card Interface ............................................................. 541
Table 16.4 Relationship of n to CKS1 and CKS0..................................................................... 543
Table 16.5 Examples of Bit Rate B (Bits/s) for SCBRR Settings (n = 0)................................. 543
Table 16.6 Examples of SCBRR Settings for Bit Rate B (Bits/s) (n = 0)................................. 543
Table 16.7 Maximum Bit Rates for Frequencies (Smart Card Interface Mode) ....................... 544
Table 16.8 Register Set Values and SCK Pin ........................................................................... 544
Table 16.9 Smart Card Mode Operating State and Interrupt Sources....................................... 551
Table 17.1 SCIF Pins................................................................................................................ 559
Table 17.2 SCIF Registers ........................................................................................................ 560
Table 17.3 SCSMR Settings ..................................................................................................... 571
Table 17.4 Bit Rates and SCBRR Settings ............................................................................... 572
Table 17.5 Maximum Bit Rates for Various Frequencies with Baud Rate Generator

                (Asynchronous Mode) ............................................................................................ 576
Table 17.6 Maximum Bit Rates with External Clock Input (Asynchronous Mode)................. 577
Table 17.7 SCSMR Settings and SCIF Communication Formats ............................................ 581
Table 17.8 SCSCR Settings and SCIF Clock Source Selection................................................ 582
Table 17.9 Serial Communication Formats .............................................................................. 582
Table 17.10 SCIF Interrupt Sources ........................................................................................... 594
Table 18.1 IrDA Pins................................................................................................................ 603
Table 18.2 IrDA Registers ........................................................................................................ 604
Table 19.1 List of Multiplexed Pins ......................................................................................... 609
Table 19.2 Pin Function Controller Registers........................................................................... 613
Table 20.1 Port A Register ....................................................................................................... 631
Table 20.2 Port A Data Register (PADR) Read/Write Operations ........................................... 632
Table 20.3 Port B Register........................................................................................................ 633
Table 20.4 Port B Data Register (PBDR) Read/Write Operations ........................................... 634
Table 20.5 Port C Register........................................................................................................ 635
Table 20.6 Port C Data Register (PCDR) Read/Write Operations ........................................... 636
Table 20.7 Port D Register ....................................................................................................... 637
Table 20.8 Port D Data Register (PDDR) Read/Write Operations ........................................... 638
Table 20.9 Port E Register........................................................................................................ 639
Table 20.10 Port E Data Register (PEDR) Read/Write Operations ............................................ 640
Table 20.11 Port F Register ........................................................................................................ 641
Table 20.12 Port F Data Register (PFDR) Read/Write Operations ............................................ 642
Table 20.13 Port G Register ....................................................................................................... 643
Table 20.14 Port G Data Register (PGDR) Read/Write Operations ........................................... 644
Table 20.15 Port H Register ....................................................................................................... 645
Table 20.16 Port H Data Register (PHDR) Read/Write Operations ........................................... 646
Table 20.17 Port J Register......................................................................................................... 647
Table 20.18 Port J Data Register (PJDR) Read/Write Operations.............................................. 648
Table 20.19 Port K Register ....................................................................................................... 649
Table 20.20 Port K Data Register (PKDR) Read/Write Operations ........................................... 650
Table 20.21 Port L Register........................................................................................................ 651

Rev. 5.0, 09/03, page xliv of xlvi
Table 20.22 Port L Data Register (PLDR) Read/Write Operation ............................................. 652
Table 20.23 SC Port Register ..................................................................................................... 653
Table 20.24 Read/Write Operation of the SC Port Data Register (SCPDR) .............................. 655
Table 21.1 A/D Converter Pins................................................................................................. 659
Table 21.2 A/D Converter Registers......................................................................................... 660
Table 21.3 Analog Input Channels and A/D Data Registers .................................................... 661
Table 21.4 A/D Conversion Time (Single Mode)..................................................................... 673
Table 21.5 Analog Input Pin Ratings........................................................................................ 677
Table 21.6 Relationship between Access Size and Read Data ................................................. 677
Table 22.1 D/A Converter Pins................................................................................................. 680
Table 22.2 D/A Converter Registers......................................................................................... 680
Table 23.1 UDI Registers ......................................................................................................... 687
Table 23.2 UDI Commands ...................................................................................................... 688
Table 23.3 SH7729R Pins and Boundary Scan Register Bits ................................................... 689
Table 23.4 Reset Configuration ................................................................................................ 696
Table 24.1 Absolute Maximum Ratings ................................................................................... 701
Table 24.2 DC Characteristics .................................................................................................. 703
Table 24.3 Permissible Output Current Values ........................................................................ 706
Table 24.4 Operating Frequency Range ................................................................................... 706
Table 24.5 Clock Timing .......................................................................................................... 707
Table 24.6 Control Signal Timing ........................................................................................... 713
Table 24.7 Bus Timing ............................................................................................................. 716
Table 24.8 Peripheral Module Signal Timing........................................................................... 749
Table 24.9 UDI-Related Pin Timing......................................................................................... 753
Table 24.10 A/D Converter Characteristics................................................................................ 757
Table 24.11 D/A Converter Characteristics................................................................................ 757
Table A.1 Pin States during Resets, Power-Down States, and Bus-Released State................. 759
Table A.2 Pin Specifications ................................................................................................... 763
Table A.3 Pin States (Ordinary Memory/Little Endian).......................................................... 769
Table A.4 Pin States (Ordinary Memory/Big Endian)............................................................. 771
Table A.5 Pin States (Burst ROM/Little Endian) .................................................................... 773
Table A.6 Pin States (Burst ROM/Big Endian) ....................................................................... 775
Table A.7 Pin States (Synchronous DRAM/Little Endian) ..................................................... 777
Table A.8 Pin States (Synchronous DRAM/Big Endian) ........................................................ 778
Table A.9 Pin States (PCMCIA/Little Endian)........................................................................ 779
Table A.10 Pin States (PCMCIA/Big Endian) .......................................................................... 781
Table B.1 Memory-Mapped Control Registers ....................................................................... 783
Table B.2 Register Bits ........................................................................................................... 789
Table C.1 SH7729R Models ................................................................................................... 802

                                                                                           Rev. 5.0, 09/03, page xlv of xlvi
Rev. 5.0, 09/03, page xlvi of xlvi
                        Section 1 Overview

1.1 Features

The SH7729R is a single-chip RISC microprocessor that integrates a 32-bit RISC-type SuperH
RISC engine architecture CPU with a digital signal processing (DSP) extension as its core,
together with cache memory, an on-chip X/Y memory, and a memory management unit (MMU),
as well as peripheral functions required for system configuration such as a timer, a realtime clock,
an interrupt controller, and a serial communication interface. The SH7729R includes data
protection, virtual memory, and other functions provided by incorporating an MMU, into a
SuperH Series microprocessor (SH-1 or SH-2). The provision of on-chip DSP functions enables
applications that previously required the use of two chips--a microprocessor and a DSP--to be
implemented with a single chip.
The SH7729R chip has the same peripheral modules as the SH7729. High-speed data transfers can
be formed by an on-chip direct memory access controller (DMAC), and an external memory
access support function enables direct connection to different kinds of memory. The SH7729R
microprocessor also supports an infrared communication function, an A/D converter, and a D/A
converter.
A powerful built-in power management function keeps power consumption low, even during high-
speed operation. The SH7729R can run at six times the system bus operating speed, making it also
ideal for devices such as PDAs that require both high speed and low power consumption.
The features of the SH7729R are listed in table 1.1.

                                                                                            Rev. 5.0, 09/03, page 1 of 806
Table 1.1 SH7729R Features

Item  Features
CPU
       Original Renesas Technology SuperH architecture
DSP    Compatible with SH-1, SH-2, and SH-3 series at object code level
       32-bit internal data bus
       General-registers

           Sixteen 32-bit general registers (eight 32-bit shadow registers)
           Eight 32-bit control registers
           Four 32-bit system registers
       RISC-type instruction set
           Instruction length: 16-bit fixed length for improved code efficiency
           Load/store architecture
           Delayed branch instructions
           Instruction set based on C language
       Instruction execution time: one instruction/cycle for basic instructions
       Logical address space: 4 Gbytes
       Space identifier ASID: 8 bits, 256 logical address spaces
       Five-stage pipeline
       Mixture of 16-bit and 32-bit instructions
       Multiplier, ALU, barrel shifter, and DSP register
       16-bit 16-bit  32-bit one cycle multiplier
       Large DSP data registers
           Six 32-bit data registers
           Two 40-bit data registers
       Extended Harvard Architecture for DSP data bus
           Two data buses
           One instruction bus
       Max. four parallel operations: ALU, multiply, and two load or store
       Two addressing units to generate addresses for two memory access
       DSP data addressing modes: increment, indexing (with or without modulo
          addressing)
       Zero-overhead repeat loop control
       Conditional execution instructions
       User DSP mode and privileged DSP mode

Rev. 5.0, 09/03, page 2 of 806
Item             Features

Clock pulse       Clock mode: Input clock can be selected from external input (EXTAL or

generator (CPG)  CKIO) or crystal oscillator

                  Three types of clocks generated:

                  CPU clock: 124 times the input clock, maximum 200 MHz

                  Bus clock: 14 times the input clock, maximum 66.67 MHz

                  Peripheral clock: 1/44 times the input clock, maximum 33.34 MHz

                  Power-down modes:

                  Sleep mode

                  Standby mode

                  Module standby mode

                  One-channel watchdog timer

Memory            4 Gbytes of address space, 256 address spaces (8-bit ASID)
management       Page unit sharing
unit (MMU)       Supports multiple page sizes: 1 kbyte or 4 kbytes
                  128-entry, 4-way set associative TLB

                  Supports software selection of replacement method and random-replacement
                     algorithms

Cache memory 16-kbyte cache, mixed instruction/data

                  256 entries, 4-way set associative, 16-byte block length

                  Write-back, write-through, LRU replacement algorithm
                  1-stage write-back buffer

                  Maximum 2 ways of the cache can be locked

X/Y memory       User-selectable mapping mechanism

                  Fixed mapping for realtime applications (privileged DSP mode)

                  Automatic mapping through TLB (user DSP mode)

                  Three independent read/write ports

                  8-/16-/32-bit access from the CPU

                  Maximum two 16-bit accesses from the DSP

                  8-/16-/32-bit and 16-byte access from the DMAC

                  8-kbyte RAM each for X and Y memory

Interrupt         7 external interrupt pins (NMI, IRQ5IRQ0)

controller (INTC) Level interrupt pins: 15 levels

                  16 port interrupt pins (PINT15PINT0)

                  On-chip peripheral interrupts: Priority level set for each module

                                                               Rev. 5.0, 09/03, page 3 of 806
Item                Features

User break          Two break channels

controller (UBC) Addresses, data values, type of access, and data size can all be set as break

                       conditions

                     Supports a sequential break function

Bus state            Physical address space divided into six areas (area 0, areas 2 to 6), each a

controller (BSC)       maximum of 64 Mbytes, with the following features settable for each area:

                        Bus size (8, 16, or 32 bits)
                        Number of wait cycles (also supports a hardware wait function)

                        Specifying the memory to be connected to each area enables direct
                           connection to SRAM, DRAM, synchronous DRAM, and burst ROM

                        Supports PCMCIA interface (2 channels)

                        Outputs chip select signal (CS0, CS2CS6) for corresponding area

                     Synchronous DRAM refresh function

                        Programmable refresh interval

                        Supports self-refresh mode

                     Synchronous DRAM burst access function

                     Big or little endian can be set

User debugging       E10A emulator support
Interface (UDI)      JTAG-compliant
                     Realtime branch trace

                     1-kbyte on-chip RAM for fast emulation program execution

Timer (TMU)          3-channel auto-reload-type 32-bit timer

                     Input capture function

                     Selection of six counter input clocks

                     Maximum resolution: 2 MHz

Realtime clock       Built-in clock, calendar functions, and alarm functions
(RTC)                On-chip 32-kHz crystal oscillator circuit with a maximum resolution (cycle

                        interrupt) of 1/256 second

Serial communi-       Asynchronous mode or clock synchronous mode can be selected
                       Full-duplex communication
cation interface 0    Supports smart card interface
(SCI0)

                    

Serial communi-       16-byte FIFO for transmission/reception
                       DMA transfer capability
cation interface 1    IrDA: interface based on 1.0
(SCI1)

                    

Rev. 5.0, 09/03, page 4 of 806
Item                Features

Serial communi-       16-byte FIFO for transmission/reception
                       DMA transfer capability
cation interface 2    Hardware flow control
(SCI2)                 Four channels
                       Burst mode and cycle-steal mode
                      Data transfer size: 8-/16-/32-bit and 16-byte

Direct memory

access controller   
(DMAC)
                    

I/O port             Twelve 8-bit ports

A/D converter       10 bits 4 LSB, 8 channels
(ADC)                Conversion time: 10 s

D/A converter       Input range: 0AVcc (max. 3.6 V)
(DAC)                8 bits 4 LSB, 2 channels
                     Conversion time: 16 s

                     Output range: 0AVcc (max. 3.6 V)

Product lineup                Power Supply Voltage Operating

                    Abbr.     I/O  Internal        Frequency Model Name              Package

                    SH7729R 3.3 0.3 V 2.0 0.15 V* 200 MHz HD6417729RHF200B 208-pin plastic
                                                                                                                      HQFP (FP-208E)

                                   1.9 0.15 V 167 MHz HD6417729RF167B 208-pin plastic
                                                                                                     LQFP (FP-208C)

                                                              HD6417729RBP167B 240-pin CSP
                                                                                            (BP-240A)

                                   1.8 +0.25 V 133 MHz HD6417729RF133B 208-pin plastic

                                   1.8 0.15 V                                       LQFP (FP-208C)

                                                              HD6417729RBP133B 240-pin CSP
                                                                                            (BP-240A)

                                   1.7 +0.25 V 100 MHz HD6417729RF100B 208-pin plastic

                                   1.7 0.15 V                                       LQFP (FP-208C)

                                                              HD6417729RBP100B 240-pin CSP
                                                                                            (BP-240A)

                    Note: * 2.0 +0.15 V, 0.1 V when using IRL and IRLS interrupts.

                                                                      Rev. 5.0, 09/03, page 5 of 806
Table 1.2 Characteristics

Item                  Characteristics

Power supply voltage   I/O: 3.3 0.3 V, Internal: 2.0 0.15 V (200 MHz)*,
                          1.9 0.15 V (167 MHz models), 1.8 0.15 V, 0.15 V (133 MHz),
                          1.7 +0.25 V, 0.25 V (100MHz)

Operating frequency    Internal frequency: 200 MHz (200 MHz models),
                          167 MHz (167 MHz models), 133.34 MHz (133 MHz models),
                          100 MHz (100 MHz models)

                      External frequency: maximum 66.67 MHz

Process                0.25-m CMOS/5-layer metal

Note: * 2.0 +0.15 V, 0.1 V when using IRL and IRLS interrupts.

Rev. 5.0, 09/03, page 6 of 806
1.2 Block Diagram

         XYCNT                                                  SH3
                                                                CPU

                                            Y bus
                                                  X bus

         XYMEM                                                  DSP
                                                                UBC
         MMU                       I bus 1                      AUD
         TLB                                             L bus

         CCN                                                              Peripheral bus 1  SCI
                                                                                            TMU
         CACHE                                                                              RTC

                               BRIDGE

             UDI                   I bus 2                       BSC                        IrDA
            INTC                                                                            SCIF
         CPG/WDT                                                DMAC      Peripheral bus 2  ADC
                                                                 CMT                        DAC

                               External bus                     I/O port
                                 interface

Legend:

ADC:     A/D converter                                   IrDA: Serial communicatiion interface (with IRDA)
                                                         MMU: Memory management unit
AUD:     Advanced user debugger                          RTC: Realtime clock
                                                         SCI: Serial communication interface (with smart card interface)
BSC:     Bus state controller                            SCIF: Serial communication interface (with FIFO)
                                                         TLB: Translation look-aside buffer
CACHE: Cache memory                                      TMU: Timer unit
                                                         UBC: User break controller
CCN:     Cache memory controller                         XYCNT: X/Y memory controller
                                                         XYMEM: X/Y memory
CMT:     Compare match timer

CPG/WDT: Clock pulse generator/watchdog timer

CPU:     Central processing unit

DAC:     D/A converter

DMAC: Direct memory access controller

DSP:     Digital signal processor

UDI:     User debugging interface

INTC:    Interrupt controller

                                            Figure 1.1 Block Diagram

                                                                                            Rev. 5.0, 09/03, page 7 of 806
1.3 Pin Description

1.3.1 Pin Assignment
Figure 1.2 shows the pin arrangement of the SH7729R.

                            156 EXTAL  155 XTAL  VCC  VSS  VSS  151 AUDCK/PTH[6]  VCC-PLL2149 CAP2          VSS-PLL2          VSS-PLL1146 CAP1                      VCC-PLL1144 MD0  143 IRLS0/PTF[0]/PINT[8]  142 IRLS1/PTF[1]/PINT[9]  141 IRLS2/PTF[2]/PINT[10]  140 IRLS3/PTF[3]/PINT[11]  139 TCK/PTF[4]/PINT[12]  138 TDI/PTF[5]/PINT[13]  137 TMS/PTF[6]/PINT[14]  136 TRST/PTF[7]/PINT[15]  135 AUDATA[0]/PTG[0]  VCC  133 AUDATA[1]/PTG[1]  VSS  131 AUDATA[2]/PTG[2]  130 AUDATA[3]/PTG[3]  129 CKIO2/PTG[4]  128 ASEBRKAK/PTG[5]  127 ASEMD0/PTG[6]  126 IOIS16/PTG[7]  125 ADTRG/PTH[5]  124 RESETM  123 WAIT  122 BREQ  121 BACK  120 TDO/PTE[0]  119 PTE[1]  118 RAS3U/PTE[2]  117 PTE[3]  116 PTE[6]  115 DACK1/PTD[7]  114 DACK0/PTD[5]  113 PTJ[5]  112 PTJ[4]  VCCQ 110 CASU/PTJ[3]  VSSQ 108 CASL/PTJ[2]  107 PTJ[1]  106 RAS3L/PTJ[0]  105 CKE/PTK[5]

                                                 154  153  152                    150               148       147                                  145                                                                                                                                                                                                                                                                    134                        132                                                                                                                                                                                                                                                                                                                         111                   109

STATUS0/PTJ[6]         157                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 104                 CE2B/PTE[5]

STATUS1/PTJ[7]         158                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 103                 CE2A/PTE[4]

TCLK/PTH[7]            159                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 102                 CS6/CE1B

IRQOUT                 160                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 101                 CS5/CE1A/PTK[3]

VSSQ                   161                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 100                 CS4/PTK[2]
CKIO
                       162                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 99  CS3/PTK[1]
VCCQ
TxD0/SCPT[0]           163                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 98  CS2/PTK[0]

SCK0/SCPT[1]           164                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 97  VCCQ

TxD1/SCPT[2]           165                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 96  CS0/MCS[0]

SCK1/SCPT[3]           166                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 95  VSSQ

TxD2/SCPT[4]           167                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 94  AUDSYNC/PTE[7]

SCK2/SCPT[5]           168                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 93  RD/WR

RTS2/SCPT[6]           169                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 92  WE3/DQMUU/ICIOWR/PTK[7]

RxD0/SCPT[0]           170                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 91  WE2/DQMUL/ICIORD/PTK[6]

RxD1/SCPT[2]           171                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 90  WE1/DOMLU/WE

VSS                    172                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 89  WE0/DQMLL

RXD2/SCPT[4]           173                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 88  RD

VCC                    174                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 87  BS/PTK[4]

CTS2/IRQ5/SCPT[7]      175                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 86  A25

MCS[7]/PTC[7]/PINT[7]  176                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 85  VCCQ

MCS[6]/PTC[6]/PINT[6]  177                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 84  A24

MCS[5]/PTC[5]/PINT[5]  178                                                                                                                                                                                                                                                                                                                                                                          SH7729R                                                                                                                                                                                                                                                                                                                                                                                                                                                                83  VSSQ
                                                                                                                                                                                                                                                                                                                                                                                                    FP-208C
MCS[4]/PTC[4]/PINT[4]  179                                                                                                                                                                                                                                                                                                                                                                          FP-208E                                                                                                                                                                                                                                                                                                                                                                                                                                                                82  A23
                                                                                                                                                                                                                                                                                                                                                                                                    (Top view)
VSSQ                   180                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 81  VCC

WAKEUP/PTD[3]          181                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 80  A22

VCCQ                   182                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 79  VSS

RESETOUT/PTD[2]        183                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 78  A21

MCS[3]/PTC[3]/PINT[3]  184                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 77  A20

MCS[2]/PTC[2]/PINT[2]  185                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 76  A19

MCS[1]/PTC[1]/PINT[1]  186                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 75  A18

MCS[0]/PTC[0]/PINT[0]  187                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 74  A17

DRAK0/PTD[1]           188                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 73  A16

DRAK1/PTD[0]           189                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 72  A15

DREQ0/PTD[4]           190                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 71  VCCQ

DREQ1/PTD[6]           191                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 70  A14

RESETP                 192                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 69  VSSQ

CA                     193                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 68  A13

MD3                    194                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 67  A12

MD4                    195                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 66  A11

MD5                    196                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 65  A10

AVSS                   197                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 64  A9

AN[0]/PTL[0]           198                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 63  A8

AN[1]/PTL[1]           199                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 62  A7

AN[2]/PTL[2]           200                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 61  A6

AN[3]/PTL[3]           201                                 INDEX                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           60  A5

AN[4]/PTL[4]           202                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 59  VCCQ

AN[5]/PTL[5]           203                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 58  A4

AVCC                   204                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 57  VSSQ

AN[6]/DA[1]/PTL[6]     205                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 56  A3

AN[7]/DA[0]/PTL[7]     206                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 55  A2

AVSS                   207                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 54  A1

                       208                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 53  A0

                            MD1 1      MD2 2     3         EXTAL2 56                      IRQ0/IRL0/PTH[0] 8IRQ1/IRL1/PTH[1] 9IRQ2/IRL2/PTH[2] 10IRQ3/IRL3/PTH[3] 11IRQ4/PTH[4] 12D31/PTB[7] 13D30/PTB[6] 14   D29/PTB[5] 15             D28/PTB[4] 16              D27/PTB[3] 17              D26/PTB[2] 18            19                       D25/PTB[1] 20            21                                              D23/PTA[7] 23D22/PTA[6] 24 D21/PTA[5] 25D20/PTA[4] 26 27                    D19/PTA[3] 28     29                                      D17/PTA[1] 31      D16/PTA[0] 32     33                    35        D14 36    D13 37          D12 38      D11 39            D10 40      D9 41       D8 42             D7 43             D6 44       45          D5 4647                    D3 49            D2 50       D1 51             D0 52
                                                    4                 7                                                                                                                                                                                                                                                                                                      22                                                                                                                                            30                                                                           34                                                                                                                                                                               48

                                                 VCC-RTC             VSS-RTC                                                                                                                                                                                                                                            VSSQ                                              VCCQ                                                                                                   VSS                                    VCC                                                                          VSSQ                  VCCQ                                                                                                                                      VSSQ               VCCQ
                                                    XTAL2               NMI                                                                                                                                                                                                                                                                                                  D24/PTB[0]                                                                                                                                    D18/PTA[2]                                                                   D15                                                                                                                                                                                D4

                                                                Figure 1.2 Pin Assignment (FP-208C, FP-208E)

Rev. 5.0, 09/03, page 8 of 806
    A B C DE F GH J K L MN P R T UVW

19                                    19

18                                    18

17                                    17

16                                    16

15                                    15

14                                    14

13                                    13

12                                    12

11  SH7729R                           11

10  BP-240A                           10

9   (Top View)                        9

8                                     8

7                                     7

6                                     6

5                                     5

4                                     4

3                                     3

2                                     2

1                                     1

    A B C DE F GH J K L MN P R T UVW

Note: The area within dotted lines shows a cutaway view of the pins.
                  Figure 1.3 Pin Assignment (BP-240A)

                Rev. 5.0, 09/03, page 9 of 806
1.3.2 Pin Function

Table 1.3 shows the pin functions.

Table 1.3 SH7729R Pin Functions

    Pin No.

FP-208C,

FP-208E BP-240A Pin Name              I/O  Description
                                           Clock mode setting
1         D2        MD1               I    Clock mode setting
                                           RTC power supply V*3
2         C2        MD2               I    On-chip RTC crystal oscillator pin
                                           On-chip RTC crystal oscillator
3         E2        Vcc-RTC*1         --   pin*6
                                           RTC power supply (0 V)
4         D1        XTAL2             O    Nonmaskable interrupt request
                                           External interrupt request/input
5         D3        EXTAL2            I    port H
                                           External interrupt request/input
6         E1        Vss-RTC*1         --   port H
                                           External interrupt request/input
7         C3        NMI               I    port H
                                           External interrupt request/input
8         E3        IRQ0/IRL0/PTH[0]  I    port H
                                           External interrupt request/input
9         E4        IRQ1/IRL1/PTH[1]  I    port H
                                           Data bus / I/O port B
10        F1        IRQ2/IRL2/PTH[2]  I    Data bus / I/O port B
                                           Data bus / I/O port B
11        F2        IRQ3/IRL3/PTH[3]  I    Data bus / I/O port B
                                           Data bus / I/O port B
12        F3        IRQ4/PTH[4]       I    Data bus / I/O port B
                                           Input/output power supply (0 V)
13        F4        D31/PTB[7]        I/O  Data bus / I/O port B
                                           Input/output power supply (3.3 V)
14        G1        D30/PTB[6]        I/O  Data bus / I/O port B
                                           Data bus / I/O port A
15        G2        D29/PTB[5]        I/O

16        G3        D28/PTB[4]        I/O

17        G4        D27/PTB[3]        I/O

18        H1        D26/PTB[2]        I/O

19        H2        VssQ              --

20        H3        D25/PTB[1]        I/O

21        H4        VccQ              --

22        J1        D24/PTB[0]        I/O

23        J2        D23/PTA[7]        I/O

Rev. 5.0, 09/03, page 10 of 806
    Pin No.

FP-208C,         Pin Name    I/O  Description
FP-208E BP-240A  D22/PTA[6]
                 D21/PTA[5]
24  J4           D20/PTA[4]  I/O  Data bus / I/O port A
                 Vss
25  J3           Vss         I/O  Data bus / I/O port A
                 D19/PTA[3]
26  K2           Vcc         I/O  Data bus / I/O port A
                 Vcc
27  K3           D18/PTA[2]  --   Power supply (0 V)
                 D17/PTA[1]
--  K4           D16/PTA[0]  --   Power supply (0 V)
                 VssQ
28  K1           D15         I/O  Data bus / I/O port A
                 VccQ
29  L3           D14         --   Power supply *3
                 D13
--  L4           D12         --   Power supply *3
                 D11
30  L2           D10         I/O  Data bus / I/O port A
                 D9
31  L1           D8          I/O  Data bus / I/O port A
                 D7
32  M4           D6          I/O  Data bus / I/O port A
                 VssQ
33  M3           D5          --   Input/output power supply (0 V)
                 VccQ
34  M2           D4          I/O  Data bus
                 D3
35  M1           D2          --   Input/output power supply (3.3 V)
                 D1
36  N4           D0          I/O  Data bus
                 A0
37  N3                       I/O  Data bus

38  N2                       I/O  Data bus

39  N1                       I/O  Data bus

40  P4                       I/O  Data bus

41  P3                       I/O  Data bus

42  P2                       I/O  Data bus

43  P1                       I/O  Data bus

44  R4                       I/O  Data bus

45  R3                       --   Input/output power supply (0 V)

46  T4                       I/O  Data bus

47  R1                       --   Input/output power supply (3.3 V)

48  T3                       I/O  Data bus

49  T1                       I/O  Data bus

50  R2                       I/O  Data bus

51  U2                       I/O  Data bus

52  T2                       I/O  Data bus

53  V4                       O    Address bus

                                  Rev. 5.0, 09/03, page 11 of 806
    Pin No.

FP-208C,         Pin Name        I/O  Description
FP-208E BP-240A  A1
                 A2
54  V3           A3              O    Address bus
                 VssQ
55  V5           A4              O    Address bus
                 VccQ
56  W4           A5              O    Address bus
                 A6
57  U4           A7              --   Input/output power supply (0 V)
                 A8
58  W5           A9              O    Address bus
                 A10
59  U3           A11             --   Input/output power supply (3.3 V)
                 A12
60  U5           A13             O    Address bus
                 VssQ
61  T5           A14             O    Address bus
                 VccQ
62  W6           A15             O    Address bus
                 A16
63  V6           A17             O    Address bus
                 A18
64  U6           A19             O    Address bus
                 A20
65  T6           A21             O    Address bus
                 Vss
66  W7           Vss             O    Address bus
                 A22
67  V7           Vcc             O    Address bus
                 Vcc
68  U7           A23             O    Address bus

69  T7                           --   Input/output power supply (0 V)

70  W8                           O    Address bus

71  V8                           --   Input/output power supply (3.3 V)

72  U8                           O    Address bus

73  T8                           O    Address bus

74  W9                           O    Address bus

75  V9                           O    Address bus

76  T9                           O    Address bus

77  U9                           O    Address bus

78  V10                          O    Address bus

79  U10                          --   Power supply (0 V)

--  T10                          --   Power supply (0 V)

80  W10                          O    Address bus

81  U11                          --   Power supply *3

--  T11                          --   Power supply *3

82  V11                          O    Address bus

Rev. 5.0, 09/03, page 12 of 806
     Pin No.

FP-208C,         Pin Name         I/O       Description
FP-208E BP-240A  VssQ             --
                 A24              O         Input/output power supply (0 V)
83   W11         VccQ             --        Address bus
                 A25              O         Input/output power supply (3.3 V)
84   T12         BS/PTK[4]        O / I/O   Address bus
                 RD               O         Bus cycle start signal / I/O port K
85   U12         WE0/DQMLL        O         Read strobe
                                            D7D0 select signal / DQM
86   V12                                    (SDRAM)
                                            D15D8 select signal / DQM
87   W12                                    (SDRAM)
                                            D23D16 select signal / DQM
88   T13                                    (SDRAM) / PCMCIA I/O read /
                                            I/O port K
89   U13                                    D31D24 select signal / DQM
                                            (SDRAM) / PCMCIA I/O write /
90   V13         WE1/DQMLU/WE     O         I/O port K
                                            Read/write
91   W13         WE2/DQMUL/ICIORD/ O / I/O  AUD synchronous / I/O port E
                 PTK[6]                     Input/output power supply (0 V)
                                            Chip select 0/mask ROM chip
92   T14         WE3/DQMUU/ICIOWR/ O / I/O  select 0
                 PTK[7]                     Input/output power supply (3.3 V)
                                            Chip select 2 / I/O port K
93   U14         RD/WR            O         Chip select 3 / I/O port K
                 AUDSYNC/PTE[7]   O / I/O   Chip select 4 / I/O port K
94   V14         VssQ             --        Chip select 5/CE1 (area 5
                 CS0/MCS[0]       O         PCMCIA) / I/O port K
95   W14                                    Chip select 6/CE1 (area 6
                                            PCMCIA)
96   T15                                    CE2 (area5 PCMCIA) / I/O port E
                                            CE2 (area6 PCMCIA) / I/O port E
97   U15         VccQ             --        CK enable (SDRAM) / I/O port K
                 CS2/PTK[0]       O / I/O
98   T16         CS3/PTK[1]       O / I/O
                 CS4/PTK[2]       O / I/O
99   W15         CS5/CE1A/PTK[3]  O / I/O

100  U16

101  W16

102  V15         CS6/CE1B         O

103  V17         CE2A/PTE[4]      O / I/O
                 CE2B/PTE[5]      O / I/O
104  V16         CKE/PTK[5]       O / I/O

105  T18

                                            Rev. 5.0, 09/03, page 13 of 806
     Pin No.

FP-208C,         Pin Name          I/O      Description
FP-208E BP-240A  RAS3L/PTJ[0]      O / I/O  Lower 32/64 MB address
                                            (SDRAM) RAS / I/O port J
106  U18                           I/O      I/O port J*5
                                   O / I/O  Lower 32/64 MB address
107  U19         PTJ[1]                     (SDRAM) CAS / I/O port J
                                   --       Input/output power supply (0 V)
108  R18         CASL/PTJ[2]       O / I/O  Upper 32 MB address (SDRAM)
                                            CAS / I/O port J
109  T19         VssQ              --       Input/output power supply (3.3 V)
                                   I/O      I/O port J
110  T17         CASU/PTJ[3]       I/O      I/O port J
                                   O / I/O  DMA acknowledge 0 / I/O port D
111  R19         VccQ              O / I/O  DMA acknowledge 1 / I/O port D
                                   I/O      I/O port E
112  U17         PTJ[4]            I/O      I/O port E
                                   O / I/O  Upper 32 MB address (SDRAM)
113  R17         PTJ[5]                     RAS / I/O port E
                                   I/O      I/O port E
114  R16         DACK0/PTD[5]      O / I/O  Test data output / I/O port E
                                   O        Bus acknowledge
115  P19         DACK1/PTD[7]      I        Bus request
                                   I        Hardware wait request
116  P18         PTE[6]            I        Manual reset request
                                   I        Analog trigger / input port H
117  P17         PTE[3]            I        IOIS6 (PCMCIA) / input port G
                                   I        ASE mode*4 / input port G
118  P16         RAS3U/PTE[2]      O/I      ASE break acknowledge / input
                                            port G
119  N19         PTE[1]            O/I      Input port G / clock output
                                   I/O / O  AUD data / input port G
120  N18         TDO/PTE[0]        I/O / O  AUD data / input port G

121  N17         BACK

122  N16         BREQ

123  M19         WAIT

124  M18         RESETM

125  M17         ADTRG/PTH[5]

126  M16         IOIS16/PTG[7]

127  L19         ASEMD0/PTG[6]

128  L18         ASEBRKAK/PTG[5]

129  L16         PTG[4]/CKIO2

130  L17         AUDATA[3]/PTG[3]

131  K18         AUDATA[2]/PTG[2]

Rev. 5.0, 09/03, page 14 of 806
     Pin No.

FP-208C,         Pin Name          I/O   Description
FP-208E BP-240A
                                         Power supply (0 V)
132  K17         Vss               --
                                         Power supply (0 V)
--   K16         Vss               --    AUD data / input port G
                                         Power supply *3
133  K19         AUDATA[1]/PTG[1]  O/I   Power supply *3
                                         AUD data / input port G
134  J17         Vcc               --    Test reset / input port F / port
                                         interrupt
--   J16         Vcc               --    Test mode switch / input port F /
                                         port interrupt
135  J18         AUDATA[0]/PTG[0]  O/I   Test data input / input port F / port
                                         interrupt
136  J19         TRST/PTF[7]/PINT[15] I  Test clock / input port F / port
                                         interrupt
137  H16         TMS/PTF[6]/PINT[14] I   External interrupt request / input
                                         port F / port interrupt
138  H17         TDI/PTF[5]/PINT[13] I   External interrupt request / input
                                         port F / port interrupt
139  H18         TCK/PTF[4]/PINT[12] I   External interrupt request / input
                                         port F / port interrupt
140  H19         IRLS3/PTF[3]/     I     External interrupt request / input
                                         port F / port interrupt
                 PINT[11]                Clock mode setting
                                         PLL1 power supply*3
141  G16         IRLS2/PTF[2]/     I     PLL1 external capacitance pin
                                         PLL1 power supply (0 V)
                 PINT[10]                PLL2 power supply (0 V)

142  G17         IRLS1/PTF[1]/PINT[9] I  PLL2 external capacitance pin
                                         PLL2 power supply*3
143  G18         IRLS0/PTF[0]/PINT[8] I  AUD clock / input port H
                                         Power supply (0 V)
144  G19         MD0               I     Power supply (0 V)
                                         Power supply (0 V)
145  F16         Vcc-PLL1*2        --

146  F17         CAP1              --

147  F18         Vss-PLL1*2        --

148  F19         Vss-PLL2*2        --

149  E16         CAP2              --

150  E17         Vcc-PLL2*2        --

151  D16         AUDCK/PTH[6]      I

152  E19         Vss               --

153  D17         Vss               --

--   D19         Vss               --

                                         Rev. 5.0, 09/03, page 15 of 806
     Pin No.

FP-208C,         Pin Name        I/O  Description
FP-208E BP-240A  Vcc
                 Vcc
154  E18                         --   Power supply*3

--   C19                         --   Power supply*3

155  C18         XTAL            O    Clock oscillator pin

156  D18         EXTAL           I    External clock / crystal oscillator

                                      pin

157  B16         STATUS0/PTJ[6]  O / I/O Processor status / I/O port J

158  B17         STATUS1/PTJ[7]  O / I/O Processor status / I/O port J

159  B15         TCLK/PTH[7]     I/O  TMU or RTC clock input/output /

                                      I/O port H

160  A16         IRQOUT          O    Interrupt request notification

161  C16         VssQ            --   Input/output power supply (0 V)

162  A15         CKIO            I/O  System clock input/output

163  C17         VccQ            --   Input/output power supply (3.3 V)

164  C15         TxD0/SCPT[0]    O    Transmit data 0 / SCI output port

165  D15         SCK0/SCPT[1]    I/O  Serial clock 0 / SCI I/O port

166  A14         TxD1/SCPT[2]    O    Transmit data 1 / SCI output port

167  B14         SCK1/SCPT[3]    I/O  Serial clock 1 / SCI I/O port

168  C14         TxD2/SCPT[4]    O    Transmit data 2 / SCI output port

169  D14         SCK2/SCPT[5]    I/O  Serial clock 2 / SCI I/O port

170  A13         RTS2/SCPT[6]    O / I/O Transmit request 2 / SCI I/O port

171  B13         RxD0/SCPT[0]    I    Transmit data 0 / SCI input port

172  C13         RxD1/SCPT[2]    I    Transmit data 1 / SCI input port

173  D13         Vss             --   Power supply (0 V)

--   A12         Vss             --   Power supply (0 V)

174  B12         RxD2/SCPT[4]    I    Transmit data 2 / SCI input port
                 Vcc
175  C12         Vcc             --   Power supply *3

--   D12                         --   Power supply *3

176  A11         CTS2/IRQ5/SCPT[7] I  Transmit clear 2 / external interrupt
                                      request / SCI input port

177  B11         MCS[7]/PTC[7]/PINT[7] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

Rev. 5.0, 09/03, page 16 of 806
     Pin No.

FP-208C,         Pin Name         I/O      Description
FP-208E BP-240A

178  D11         MCS[6]/PTC[6]/PINT[6] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

179  C11         MCS[5]/PTC[5]/PINT[5] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

180  B10         MCS[4]/PTC[4]/PINT[4] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

181  C10         VssQ             --       Input/output power supply (0 V)

182  D10         WAKEUP/PTD[3]    O / I/O  Standby mode interrupt request
                                           notification / I/O port D

183  A10         VccQ             --       Input/output power supply (3.3 V)

184  C9          RESETOUT/PTD[2]  O / I/O Reset output / I/O port D

185  D9          MCS[3]/PTC[3]/PINT[3] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

186  B9          MCS[2]/PTC[2]/PINT[2] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

187  A9          MCS[1]/PTC[1]/PINT[1] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

188  D8          MCS[0]/PTC[0]/PINT[0] O / I/O / I Mask ROM chip select /
                                                                  I/O port C / port interrupt

189  C8          DRAK0/PTD[1]     O / I/O  DMA request acceptance /
                                           I/O port D

190  B8          DRAK1/PTD[0]     O / I/O  DMA request acceptance /
                                           I/O port D

191  A8          DREQ0/PTD[4]     I        DMA request / input port D

192  D7          DREQ1/PTD[6]     I        DMA request / input port D

193  C7          RESETP           I        Power-on reset request

194  B7          CA               I        Chip activate (hardware standby

                                           request signal)

195  A7          MD3              I        Area 0 bus width setting

196  D6          MD4              I        Area 0 bus width setting

197  C6          MD5              I        Endian setting

198  B6          AVss             --       Analog power supply (0 V)

199  A6          AN[0]/PTL[0]     I        A/D converter input / input port L

200  D5          AN[1]/PTL[1]     I        A/D converter input / input port L

                                           Rev. 5.0, 09/03, page 17 of 806
     Pin No.

FP-208C,                          I/O  Description
FP-208E BP-240A Pin Name

201  C5       AN[2]/PTL[2]        I    A/D converter input / input port L

202  D4       AN[3]/PTL[3]        I    A/D converter input / input port L

203  A5       AN[4]/PTL[4]        I    A/D converter input / input port L

204  C4       AN[5]/PTL[5]        I    A/D converter input / input port L

205  A4       AVcc                --   Analog power supply (3.3 V)

206  B5       AN[6]/DA[1]/PTL[6]  I    A/D converter input / input port L

207  B3       AN[7]/DA[0]/PTL[7]  I    A/D converter input / input port L

208  B4       AVss                --   Analog power supply (0 V)

Notes: 1. Must be connected to the power supply even when the RTC is not used.

          2. Except in hardware standby mode, all power supply pins must be connected to the
               system power supply. (Supply power constantly.) In hardware standby mode, power
               must be supplied at least to VCCRTC and VSSRTC. If power is not supplied to power
               supply pins other than VCCRTC and VSSRTC, hold the CA pin low.

          3. 2.0 V in 200 MHz models, 1.9 V in 167 MHz models, 1.8 V in 133 MHz models, 1.7 V in
               100 MHz models.

          4. Drive high when using the user system alone, and not using an emulator or the UDI.
               When this pin is low or open, RESETP may be masked (see section 23 User
               Debugging Interface (UDI)).

          5. B2, B1, C1, U1, V1, W1, V2, W2, W3, W17, W18, W19, V18, V19, B19, A19, B18, A18,
               A17, A3, A2, and A1 are NC pins. No connection should be made to these pins.

          6. If EXTAL2 is not used, pull this pin up to the Vcc-RTC level.

Rev. 5.0, 09/03, page 18 of 806
                           Section 2 CPU

2.1 Registers

The SH7729R has the same registers as the SH-3. In addition, the SH7729R also supports the
same DSP-related registers as in the SH2-DSP. The basic software-accessible registers are divided
into four distinct groups:

General registers
Control registers
System registers
DSP registers

With the exception of a number of DSP registers, all of these registers are 32-bit width. The
general registers are accessible from user mode, with R0R7 banked to provide each processor
mode access to a separate set of R0R7 registers (i.e. R0R7_BANK0, and R0R7_BANK1). In
privileged mode, the register bank bit (RB) in the status register (SR) defines which set of banked
registers (R0R7_BANK0 or R0R7_BANK1) are accessed as general registers, and which are
accessed only by LDC/STC instructions.

The control registers can be accessed by LDC/STC instructions. The GBR, RS, RE, and MOD
registers can also be accessed in user mode. Control registers are:

SR: Status register
SSR: Saved status register
SPC: Saved program counter
GBR: Global base register
VBR: Vector base register
RS: Repeat start register (DSP mode only)
RE: Repeat end register (DSP mode only)
MOD: Modulo register (DSP mode only)

The system registers are accessed by the LDS/STS instructions (the PC is software-accessible, but
is included here because its contents are saved in, and restored from, SPC in exception handling).
The system registers are:

MACH: Multiply and accumulate high register
MACL: Multiply and accumulate low register
PR: Procedure register
PC: Program counter

                                                                                          Rev. 5.0, 09/03, page 19 of 806
This section explains the usage of these registers in different modes.
Figures 2.1 and 2.2 show the register configuration in each processing mode.
Switching between user mode and privileged mode is carried out by means of the operation mode
bit (MD) in the status register.
The DSP mode is switched by means of the DSP bit in the status register (see figure 2.5).

Rev. 5.0, 09/03, page 20 of 806
31                       0 31                 0 31                    0
          R0_BANK0*1 *2
           R1_BANK0*2          R0_BANK1*1 *3           R0_BANK0*1 *4
           R2_BANK0*2            R1_BANK1*3
           R3_BANK0*2            R2_BANK1*3            R1_BANK0*4
           R4_BANK0*2            R3_BANK1*3
           R5_BANK0*2            R4_BANK1*3            R2_BANK0*4
           R6_BANK0*2            R5_BANK1*3
           R7_BANK0*2            R6_BANK1*3            R3_BANK0*4
                                 R7_BANK1*3
                  R8                                   R4_BANK0*4
                                        R8
                  R9                                   R5_BANK0*4
                                        R9
                 R10                                   R6_BANK0*4
                  R11                  R10
                                       R11             R7_BANK0*4
                 R12
                                       R12             R8
                 R13
                                       R13             R9
                 R14
                 R15                   R14             R10
                                       R15
                                                       R11

                                                       R12

                                                       R13

                                                       R14
                                                       R15

SR                             SR                      SR

                               SSR                     SSR

GBR                            GBR                     GBR
MACH                           MACH                    MACH
MACL                           MACL                    MACL

  PR                             PR                      PR
                                VBR
                                                        VBR

PC                             PC                      PC

                               SPC                     SPC

                               R0_BANK0*1 *4           R0_BANK1*1 *3
                                R1_BANK0*4               R1_BANK1*3
                                R2_BANK0*4               R2_BANK1*3
                                R3_BANK0*4               R3_BANK1*3
                                R4_BANK0*4               R4_BANK1*3
                                R5_BANK0*4               R5_BANK1*3

                                R6_BANK0*4               R6_BANK1*3
                                R7_BANK0*4               R7_BANK1*3

(a) User mode register   (b) Privileged mode register (c) Privileged mode register
     configuration
                               configuration (RB = 1)  configuration (RB = 0)

Notes: 1. The R0 register is used as an index register in indexed register indirect addressing mode
               and indexed GBR indirect addressing mode.

          2. Bank register
          3. Bank register

                 Accessed as a general register when the RB bit is set to 1 in the SR register.
                 Accessed only by LDC/STC instructions when the RB bit is cleared to 0.
          4. Bank register
                 Accessed as a general register when the RB bit is cleared to 0 in the SR register.
                 Accessed only by LDC/STC instructions when the RB bit is set to 1.

Figure 2.1 Register Configuration in Each Processing Mode (1)

                                                       Rev. 5.0, 09/03, page 21 of 806
                   39 32 31                            0

                                 A0G  A0

                                 A1G  A1

                                      M0

                                      M1

                                      X0

                                      X1

                                      Y0

                                      Y1

                                      DSR

                                       RS
                                       RE
                                      MOD

                   (d) DSP mode register configuration (DSP = 1)

               Figure 2.2 Register Configuration in Each Processing Mode (2)

Register values after a reset are shown in table 2.1.

Table 2.1 Initial Register Values

Type               Registers                              Initial Value*
General registers  R0 to R15                              Undefined
Control registers  SR                                     MD bit = 1, RB bit = 1, BL bit = 1, I3
                                                          to I0 = 1111 (H'F), reserved bits = 0,
                   GBR, SSR, SPC                          others undefined
                                                          Undefined
                   VBR                                    H'00000000
                                                          Undefined
                   RS, RE                                 Undefined
                                                          Undefined
                   MOD                                    H'A0000000
                                                          Undefined
System registers   MACH, MACL, PR
                                                          H'00000000
                   PC

DSP registers      A0, A0G, A1, A1G, M0, M1,
                   X0, X1, Y0, Y1

                   DSR

Note: * Initialized by a power-on or manual reset.

Rev. 5.0, 09/03, page 22 of 806
2.1.1 General Registers

There are sixteen 32-bit general registers (Rn), designated R0 to R15. The general registers are
used for data processing and address calculation.

With SuperH microcomputer type instructions, R0 is used as an index register. With a number of
instructions, R0 is the only register that can be used. R15 is used as the stack pointer (SP). In
exception handling, R15 is used to reference the stack when saving and restoring the status register
(SR) and program counter (PC).

With DSP type instructions, eight of the sixteen general registers are used for addressing of X and
Y data memory and data memory (single data) that uses the L-bus.

To access X memory, R4 and R5 are used as the X address register [Ax] and R8 is used as the X
index register [Ix]. To access Y memory, R6 and R7 are used as the Y address register [Ay] and
R9 is used as the Y index register [Iy]. To access single data that uses the L-bus, R2, R3, R4, and
R5 are used as the single data address register [As] and R8 is used as the single data index register
[Is].

Figure 2.3 shows the general registers, which are identical to those of the SH3, when DSP
extension is disabled.

31           0

    R0*1 *2     General Registers (when not in DSP mode)
    R1*2
    R2*2        Notes: 1. R0 functions as an index register in the
    R3*2                      indexed register-indirect addressing mode
    R4*2                      and indexed GBR-indirect addressing mode.
    R5*2                      In some instructions, only R0 can be used as
    R6*2                      the source register or destination register.

                          2. R0-R7 are banked registers. In user mode,

    R7*2        BANK0 is used. In privileged mode, SR.RB
    R8          specifies BANK.
    R9
    R10                SR.RB = 0; BANK0 is used
                       SR.RB = 1; BANK1 is used

    R11

    R12

    R13

    R14

    R15

    Figure 2.3 General Purpose Registers (Not in DSP Mode)

                Rev. 5.0, 09/03, page 23 of 806
On the other hand, registers R2R9 are also used for DSP data address calculation when DSP
extension is enabled (see figure 2.4). Other symbols that represent the purpose of the registers in
DSP type instructions is shown in [ ].

31                               0

    R0                              General Registers (DSP mode enabled)

    R1

    R2 [As]                         X or Y data transfer operation
    R3 [As]                              R4, 5 [Ax]: Address register set for X data memory.
    R4 [As, Ax]                          R8 [x]: Index register for address register set Ax.

    R5 [As, Ax]                          R6, 7 [Ay]: Address register set for Y data memory.
    R6 [Ay]                              R9 [Iy]: Index register for address register set Ay.
    R7 [Ay]
    R8 [Ix, Is]                     Single data transfer operation
    R9 [Iy]                              R2-5 [As]: Address register set for memory.
    R10                                  R8 [Is]: Index register for address register set As.
    R11

    R12

    R13

    R14

    R15

                          Figure 2.4 General Purpose Registers (DSP Mode)

DSP type instructions can access X and Y data memory simultaneously. To specify addresses for
X and Y data memory, two address pointer sets are provided. These are:

R8[Ix], R4,5[Ax] for X memory access, and R9[Iy], R6,7[Ay] for Y memory access.

The symbols R2R9 are used by the assembler, but users can use the register name (alias) to
indicate the purpose of the register in the DSP instruction. The coding in assembler is as follows.

   Ix: .REG (R8)

Rev. 5.0, 09/03, page 24 of 806
The name Ix is the alias for R8. Other aliases are as follows.

Ax0: .REG  (R4)
Ax1: .REG  (R5)
Ix: .REG   (R8)
Ay0: .REG  (R6)
Ay1: .REG  (R7)
Iy: .REG   (R9)
As0: .REG  (R4) ; This is optional, if another alias is required for single data transfer.
As1: .REG  (R5) ; This is optional, if another alias is required for single data transfer.
As2: .REG  (R2)
As3: .REG  (R3)
Is: .REG   (R8) ; This is optional, if another alias is required for single data transfer.

2.1.2 Control Registers

The SH7729R has 8 control registers: SR, SSR, SPC, GBR, VBR, RS, RE, and MOD (figure 2.5).
SSR, SPC, GBR and VBR are the same as the SH-3 registers.

In SR, there are six additional control bits: RC[11:0], RF0, RF1, DMX, DMY and DSP. Bits
DMX, DMY, RC[11:0], and RF[1:0] can be modified in privileged mode, privileged DSP mode,
and use DSP mode. DMX and DMY are used for modulo addressing control. If DMX is 1, the
modulo addressing mode is effective for the X memory address pointer, Ax (R4 or R5). If DMY is
1, the modulo addressing mode is effective for the Y memory address pointer, Ay (R6 or R7).
However, both X and Y address pointers cannot be operated in modulo addressing mode even
though both DMX and DMY bits are set. The case where DMX = DMY = 1 is reserved for future
expansion. Modulo addressing is available for X and Y data transfer operations (MOVX and
MOVY), but not for a single data transfer operation (MOVS).

RF1 and RF0 hold information on the number of repeat steps, and are set when a SETRC
instruction is executed. When RF[1:0] = 00, the current repeat module consists of one instruction
step. RF[1:0] = 01 means two instruction steps, RF[1:0] = 11 means three instruction steps, and
RF[1:0] = 10 means the current repeat module consists of four or more instructions.

Although RC[11:0] and RF[1:0] can be changed by a store/load to SR, use of the dedicated
manipulation instruction SETRC is recommended.

                                                                Rev. 5.0, 09/03, page 25 of 806
SR also has a 12-bit repeat counter, RC, which is used for efficient loop control. The repeat start
register (RS) and repeat end register (RE) are also provided for loop control. They hold the start
and end addresses of a loop (the contents of the RS and RE registers are slightly different from the
actual loop start and end addresses). The modulo register, MOD, is provided to implement modulo
addressing for circular data buffering. MOD holds the modulo start address (MS) and modulo end
address (ME).

In order to access RS, RE, and MOD, load/store (control register) instructions for these registers
are provided. An example for RS is as follows:

LDC Rm,RS;      Rm  RS
LDC.L @Rm+,RS;  (Rm)  RS, Rm+4  Rm
STC RS,Rn;      RS  Rn
STC.L RS,@-Rn;  Rn-4  Rn, RS  (Rn)

Address set instructions for RS and RE are also provided.

LDRS @(disp,PC); disp 2 + PC  RS
LDRE @(disp,PC); disp 2 + PC  RE

Rev. 5.0, 09/03, page 26 of 806
31        28 27 16 15 13 12 11 10 9 8 7 6 5 4 3 2 1 0

0 MD RB BL RC*  0-0 DSP*DMY*DMX*M Q I3 I2 I1 I0 RF1*RF0* S T       SR (Status register)

MD bit:   Processing mode bit
          MD = 1: Privileged mode
          MD = 0: User mode

RB bit:   Register bank bit; used to define the general registers in privileged mode.
          RB = 1: R0_BANK1 to R7_BANK1 are used as general registers.

                        R0_BANK0 to R7_BANK0 accessed by LDC/STC instructions.
          RB = 0: R0_BANK0 to R7_BANK0 are used as general registers.

                        R0_BANK1 to R7_BANK1 accessed by LDC/STC instructions.

BL bit:   Block bit; used to mask exception in privileged mode.
          BL = 1: Interrupts are masked (not accepted)
          BL = 0: Interrupts are accepted

RC [11:0]: 12-bit repeat counter

DSP bit:  DSP operation mode
          DSP = 1: DSP instructions (LDS Rm, DSR/A0/X0/X1/Y0/Y1,

                        LDS.L @Rm+, DSR/A0/X0/X1/Y0/Y1,
                        STS DSR/A0/X0/X1/Y0/Y1, Rn,
                        STS.L DSR/A0/X0/X1/Y0/Y1, @-Rn,
                        LDC Rm, RS/RE/MOD,
                        LDC.L @Rm+, RS/RE/MOD,
                        STC RS/RE/MOD,Rn,
                        STC.L RS/RE/MOD, @-Rn,
                        LDRS, LDRE, SETRC, MOVS, MOVX, MOVY,
                        Pxxx) are enabled.
          DSP = 0: All DSP instructions are treated as illegal instructions; only SH3 instructions are
                        supported.

DMY bit: Modulo addressing enable for Y side

DMX bit: Modulo addressing enable for X side

Q, M bit: Used by DIV0U/S and DIV1 instructions.

I [3:0]: 4-bit field indicating the interrupt request mask level.

RF [1:0]: Used for repeat control

S bit:    Used by the MAC instructions and DSP data.

T bit:    The MOVT, CMP/cond, TAS.TST, BT, BF, SETT, CLRT and DT instructions use the T bit to
          indicate true (logic one) or false (logic zero). The ADDV/C, SUBV/C, DIV0U/S, DIV1,
          NEGC, SHAR/L, SHLR/L, ROTR/L and ROTCR/L instructions also use the T bit to indicate
          a carry, borrow, overflow, or underflow.

Reserved bits [bit31, bits15 to 13]: Always read as 0, and should always be written with 0.

*:        Used in DSP mode.

                                  Figure 2.5 Control Registers

                                                                   Rev. 5.0, 09/03, page 27 of 806
        31                                     SSR                                        0
        31                                     SPC                                            Saved status register
        31                                     GBR
        31                                     VBR                                        0
        31                                      RS                                            Saved program counter
        31                                      RE
        31                                    16 15                                       0
MOD         ME(Modulo end address)                                                            Global base register

                                                                                          0
                                                                                              Vector base register

                                                                                          0
                                                                                              Repeat start register

                                                                                          0
                                                                                              Repeat end register

                                                                                          0
                                                     MS(Modulo start address) Modulo register

Saved status register (SSR)
Stores current SR value at time of exception and returns value to SR when returning to instruction
stream from exception or interrupt handler.

Saved program counter (SPC)
Stores current PC value at time of exception to indicate return address on completion of exception
handling.

Global base register (GBR)
Stores base address of GBR-indirect addressing mode. The GBR-indirect addressing mode is used for
data transfer and logical operations on the on-chip peripheral module register area.

Vector base register (VBR)
Stores base address of exception vector area.

Repeat start register (RS)
Used in DSP mode only. Indicates start address of repeat loop.

Repeat end register (RE)
Used in DSP mode only. Indicates end address of repeat loop.
Modulo register(MOD)
Used in DSP mode only.
MD[31:16] [ME]: Modulo end address, MD[15:0][MS]: Modulo start address.
In X/Y operand address generation, the CPU compares the address with ME, and if it is the same,
loads MS in either the X or Y operand address register (depending on bits DMX and DMY in the SR
register).

                            Figure 2.5 Control Registers (cont)

Rev. 5.0, 09/03, page 28 of 806
Details of the status register (SR) when STC/LDC instructions are used are shown below.

1. When the DSP is not operating, operation is the same as for the SH-3.
2. In privileged DSP mode, operation is the same as in privileged mode.
3. In user DSP mode, SR can be read with an STC instruction.
4. In user DSP mode, an LDC instruction can be issued for SR, but in this case DSP-related bits

    are not write-protected.

Table 2.2 Operation of SR Bits in Each SH-3 DSP Mode

Field   Privileged  User Mode      Privileged  User DSP       Access to         Initial Value after
        Mode                       DSP Mode    Mode           DSP-Related       Reset
                    MD = 0 &                                  Bit with
        MD = 1 &    DSP = 0        MD = 1 &    MD = 0 &
        DSP = 0                    DSP = 1     DSP = 1        Dedicated
                                                              Instruction

MD      S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    1

                    instruction

RB      S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    1

                    instruction

BL      S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    1

                    instruction

RC      S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: OK SETRC              000000000000
[11:0]
                    instruction                               instruction

DSP     S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    0

                    instruction

DMX     S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: OK                    0

                    instruction

DMY     S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: OK                    0

                    instruction

Q       S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    x

                    instruction

M       S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    x

                    instruction

I[3:0]  S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    1111
                             instruction

RF[1:0] S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: OK SETRC              x

                    instruction                               instruction

S       S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    x

                    instruction

T       S: OK, L: OK S, L: Invalid S: OK, L: OK S: OK, L: NG                    x

                    instruction

Legend

S (STC): Store SR to Rn,SR->Rn

L (LDC): Load Rn to Sr,Rn->SR

OK: STC/LDC operation is enabled.

Invalid instruction: Exception occurs when an invalid instruction is executed.

NG: Previous value is retained. No change.

                                                              Rev. 5.0, 09/03, page 29 of 806
2.1.3 System Registers
The SH7729R has four system registers, MACL, MACH, PR, and PC (figure 2.6).

31                          0
                      MACH       Multiply and accumulate high and low registers
                      MACL       (MACH/L)
                                 Store the results of multiplicationand accumulation
31                               operations.
                        PR
                            0
31                               Procedure register (PR)
                        PC       Stores the subroutine procedure return address.

                            0
                                 Program counter (PC)
                                 Indicates the start address of the current instruction.

                                         Figure 2.6 System Registers

The DSR, A0, X0, X1, Y0, and Y1 registers are also treated as system registers. Therefore,
instructions for data transfer between general registers and system registers are supported for these
registers.

2.1.4 DSP Registers

The SH7729R has eight data registers and one status register as DSP registers (figure 2.7). The
data registers are 32-bit width with the exception of registers A0 and A1. Registers A0 and A1
include 8 guard bits (fields A0G and A1G), giving them a total width of 40 bits.

Three kinds of operation access the DSP data registers. The first is DSP data processing. When a
DSP fixed-point data operation uses A0 or A1 as the source register, it uses the guard bits (bits
3932). When it uses A0 or A1 as the destination register, guard bits 3932 are valid. When a DSP
fixed-point data operation uses a DSP register other than A0 or A1 as the source register, it sign-
extends the source value to bits 3932. When it uses one of these registers as the destination
register, bits 3932 of the result are discarded.

The second kind of operation is an X or Y data transfer operation, "MOVX.W MOVY.W". This
operation accesses the X and Y memories through the 16-bit X and Y data buses (figure 2.8). The
register to be loaded or stored by this operation always comprises the upper 16 bits (bits 3116).
X0 or X1 can be the destination of an X memory load and Y0 or Y1 can be the destination of a Y
memory load, but no other register can be the destination register in this operation. When data is
read into the upper 16 bits of a register (bits 3116), the lower 16 bits of the register (bits 150)
are automatically cleared.

A0 and A1 can be stored in the X or Y memory using the X or Y data transfer instructions
MOVX.W and MOVY.W, but no other registers can be stored.

Rev. 5.0, 09/03, page 30 of 806
The third kind of operation is a single-data transfer instruction, "MOVS.W" or "MOVS.L". These
instructions access any memory location through the LDB (figure 2.8). All DSP registers connect
to the LDB and can be the source or destination register of the data transfer. These instructions
have word and longword access modes. In word mode, registers to be loaded or stored by this
instruction comprise the upper 16 bits (bits 3116) for DSP registers except A0G and A1G. When
data is loaded into a register other than A0G and A1G in word mode, the lower half of the register
is cleared. When A0 or A1 is used, the data is sign-extended to bits 3932 and the lower half is
cleared. When A0G or A1G is the destination register in word mode, data is loaded into an 8-bit
register, but A0 or A1 is not cleared. In longword mode, when the destination register is A0 or A1,
it is sign-extended to bits 3932.

Tables 2.3 and 2.4 show the data type of registers used in DSP instructions. Some instructions
cannot use some registers shown in the tables because of instruction code limitations. For
example, PMULS can use A1 as the source register, but cannot use A0. These tables ignore details
of register selectability.

Table 2.3 Destination Register in DSP Instructions

Registers                   Instructions        Guard Bits      Register Bits

                                                39       32 31               16 15    0

A0, A1     DSP              Fixed-point, PSHA,  Sign-extended 40-bit result
                            PMULS

                            Integer, PDMSB      Sign-extended 24-bit result Cleared

                            Logical, PSHL       Cleared     16-bit result Cleared

           Data             MOVS.W              Sign-extended 16-bit data    Cleared
           transfer         MOVS.L              Sign-extended 32-bit data

A0G, A1G Data               MOVS.W              Data        No update
                  transfer  MOVS.L              Data        No update

X0, X1     DSP              Fixed-point, PSHA,              32-bit result
Y0, Y1                      PMULS                           16-bit result Cleared
M0, M1
                            Integer, logical,
                            PDMSB, PSHL

           Data             MOVX/Y.W, MOVS.W                16-bit result    Cleared
           transfer         MOVS.L                          32-bit data

                                                            Rev. 5.0, 09/03, page 31 of 806
Table 2.4 Source Register in DSP Operations

Registers                   Instructions             Guard Bits         Register Bits

                                                     39          32 31           16 15  0

A0, A1     DSP              Fixed-point, PDMSB,                     40-bit data
                            PSHA

                            Integer                                 24-bit data

                            Logical, PSHL, PMULS                    16-bit data

           Data             MOVX/Y.W, MOVS.W                        16-bit data
           transfer         MOVS.L                                  32-bit data

A0G, A1G Data               MOVS.W                   Data
                  transfer  MOVS.L                   Data

X0, X1     DSP              Fixed-point, PDMSB,      Sign*          32-bit data
Y0, Y1                      PSHA                     Sign*          16-bit data
M0, M1
                            Integer

                            Logical, PSHL, PMULS                    16-bit data

           Data             MOVS.W                                  16-bit data
           transfer         MOVS.L                                  32-bit data

Note: * The data is sign-extended and input to the ALU.

                            39 32 31                          0

                            A0G                  A0

                            A1G                  A1

                                                 M0

                                                 M1

                                                 X0

                                                 X1

                                                 Y0

                                                 Y1

                                      (a) DSP Data Registers

                31                        87 6 5 4 3 2 1 0

                                                 GT Z N V CS [2:0] DC

                                     (b) DSP Status Register (DSR)

                Reset status
                DSR: All zeros
                Others: Undefined

                                     Figure 2.7 DSP Registers

Rev. 5.0, 09/03, page 32 of 806
Table 2.5 DSR Register Bits

Bits  Name (Abbreviation) Function
318
7     Reserved bits          0: Always read as 0; always use 0 as the write value
6
5     Signed Greater Than bit Indicates that the operation result is positive (except
4
31   (GT)                   0), or that operand 1 is greater than operand 2

0                            1: Operation result is positive, or operand 1 is greater
                                than operand 2

      Zero bit (Z)           Indicates that the operation result is zero (0), or that
                             operand 1 is equal to operand 2

                             1: Operation result is zero (0), or operand 1 is equal
                                to operand 2

      Negative bit (N)       Indicates that the operation result is negative, or that
                             operand 1 is smaller than operand 2

                             1: Operation result is negative, or operand 1 is
                                smaller than operand 2

      Overflow bit (V)       Indicates that the operation result has overflowed

                             1: Operation result has overflowed

      Condition Select bits (CS) Designate the mode for selecting the operation result
                                          status to be set in the DC bit

                             Do not set these bits to 110 or 111

                             000: Carry/borrow mode

                             001: Negative value mode

                             010: Zero mode

                             011: Overflow mode

                             100: Signed greater mode

                             101: Signed greater than or equal to mode

      DSP Condition bit (DC) Sets the status of the operation result in the mode
                                          designated by the CS bits

                             0: Designated mode status has not occurred (false)

                             1: Designated mode status has occurred

                                                 Rev. 5.0, 09/03, page 33 of 806
                                    16 bit                                      LDB
                                                                                XDB
                                    16 bit                                      YDB

           8 bit                    MOVX.W MOVY.W             32 bit  MOVS.W,
MOVS.W,                                                31             MOVS.L
MOVS.L                                                     16
                                                                             0
            39 32                                           A0
                A0G                                         A1
                                                            M0
   A1G                                                      M1
                                                            X0
   DSR                                                      X1
                                                            Y0
7                                0                          Y1

                          Figure 2.8 Connections of DSP Registers and Buses

The DSP unit has one DSP status register (DSR). DSR holds the status of DSP data operation
results (zero, negative, and so on) and has a DC bit which is similar to the T bit in the CPU. The
DC bit indicates one of the status flags. A DSP data processing instruction controls its execution
based on the DC bit. This control affects only the operations in the DSP unit; it controls the update
of DSP registers only. It cannot control operations in the CPU, such as address register updating
and load/store operations. Control bits CS[2:0] specify the condition to be reflected in the DC bit.

Unconditional DSP type data operations, except PMULS, MOVX, MOVY and MOVS, update the
condition flags and DC bit, but no CPU instructions, including MAC instructions, update the DC
bit. Conditional DSP type instructions do not update DSR either.

DSR is assigned as a system register and the following load/store instructions are provided:

   STS DSR,Rn;
   STS.L DSR,@-Rn;
   LDS Rn,DSR;
   LDS.L @Rn+,DSR;

When DSR is read by an STS instruction, the upper bits (bits 31 to 8) are all 0.

Rev. 5.0, 09/03, page 34 of 806
2.2 Data Formats

2.2.1 Register Data Format (Non-DSP Type)
Register operands are always longwords (32 bits) (figure 2.9). When the memory operand is only
a byte (8 bits) or a word (16 bits), it is sign-extended into a longword when loaded into a register.

31            0

    Longword

                                       Figure 2.9 Longword Operand

2.2.2 DSP-Type Data Formats

The SH7729R has several different data formats that depend on the instruction. This section
explains the data formats for DSP type instructions.

Figure 2.10 shows three DSP-type data formats with different binary point positions. A CPU-type
data format with the binary point to the right of bit 0 is also shown for reference.

The DSP-type fixed point data format has the binary point between bit 31 and bit 30. The DSP-
type integer format has the binary point between bit 16 and bit 15. The DSP-type logical format
does not have a binary point. The valid data lengths of the data formats depend on the instruction
and the DSP register.

              Rev. 5.0, 09/03, page 35 of 806
DSP type fixed point                   31 30         16 15  0
                                   39                          -28 to +28 - 2-31
                                       31 30         16 15
         With guard bits S               S                  0
                                                     16 15     -1 to +1 - 2-31
         Without guard bits            31 30
                                   39    S    22 16 15      0
                                              S                -1 to +1 - 2-15
         Multiplier input
                                                 21 16 15   0
DSP type integer                                 S             -223 to +223 - 1

                    39 32 31                                0
                                                               -215 to +215 - 1
With guard bits S
                                                            0
                                       31                      -32 to +32

Without guard bits                     S                    0
                                                               -16 to +16
Shift amount for                       31
                                                            0
arithmetic shift (PSHA)
                                                            0
Shift amount for                       31                      -231 to +231 - 1

logical shift (PSHL)

                    39                 31     16 15

DSP type logical                       31
                                       S
CPU type integer
         Longword

S: Sign bit        : Binary point             : Does not affect the operations

                                          Figure 2.10 Data Formats

The shift amount for the arithmetic shift (PSHA) instruction has a 7-bit field that can represent
values from 64 to +63, but 32 to +32 are valid numbers for the instruction. Also the shift
amount for a logical shift operation has a 6-bit field, but 16 to +16 are valid numbers for the
instruction.

Rev. 5.0, 09/03, page 36 of 806
2.2.3 Memory Data Formats

Memory data formats are classified into byte, word, and longword. Byte data can be accessed from
any address, but an address error will occur if word data starting from an address other than 2n or
longword data starting from an address other than 4n is accessed. In such cases, the data accessed
cannot be guaranteed (figure 2.11).

                    Address A + 1 Address A + 3 Address A + 11 Address A + 9

                Address A      Address A + 2            Address A + 10 Address A + 8

                31         23  15        7       0  31  23      15        7       0

     Address A  Byte 0 Byte 1 Byte 2 Byte 3         Byte 3 Byte 2 Byte 1 Byte 0       Address A + 8
Address A + 4                                                                         Address A + 4
Address A + 8       Word 0               Word 1         Word 1            Word 0      Address A

                               Longword                         Longword

                    Big-endian mode                     Little-endian mode

                          Figure 2.11 Byte, Word, and Longword Alignment

Either big-endian or little-endian byte order can be selected for the data format, according to the
MD5 pin at reset. When MD5 is low at reset, this LSI operates in big-endian mode. When MD5 is
high at reset, this LSI operates in little-endian mode.

2.3 Features of CPU Core Instructions

The CPU core instructions are RISC-type instructions with the following features:

Fixed 16-Bit Length: All instructions have a fixed length of 16 bits. This improves program code
efficiency.

One Instruction per State: Pipelining is used, and basic instructions can be executed in one state.

Data Size: The basic data size for operations is longword. Byte, word, or longword can be
selected as the memory access size. Memory byte or word data is sign-extended and operated on
as longword data. Immediate data is sign-extended to longword size for arithmetic operations or
zero-extended to longword size for logical operations.

                                                                Rev. 5.0, 09/03, page 37 of 806
Table 2.6 Word Data Sign Extension

SH7729R CPU                      Description                   Example of Other CPU
                                                               ADD.W #H'1234,R0
MOV.W @(disp,PC),R1              R1 sign-extended to 32 bits,
                                 becomes H'00001234, and is
ADD       R1,R0                  then operated on by the ADD
                                 instruction.
........

.DATA.W H'1234

Note: Immediate data is referenced by @(disp,PC).

Load/Store Architecture: Basic operations are executed between registers. In operations
involving memory, data is first loaded into a register (load/store architecture). However, bit
manipulation instructions such as AND are executed directly on memory.

Delayed Branching: Unconditional branch instructions, etc., are executed as delayed branches.
With a delayed branch instruction, the branch is made after execution of the instruction (called the
slot instruction) immediately following the delayed branch instruction. This minimizes disruption
of the pipeline when a branch is made.

With a delayed branch, the actual branch operation occurs after execution of the slot instruction.
However, instruction execution for register updating, etc., excluding the branch operation, is
performed in delayed branch instruction  delay slot instruction order. For example, even though
the contents of the register holding the branch destination address are changed in the delay slot,
the branch destination address remains as the register contents prior to the change.

Table 2.7 Delayed Branch Instructions

SH7729R CPU      Description                                   Example of Other CPU
BRA TRGET                                                      ADD.W R1,R0
ADD R1,R0        ADD is executed before branch to              BRA TRGET
                 TRGET.

Multiply/Multiply-and-Accumulate Operations: A 16 16  32 multiply operation is
executed in 1 to 3 states, and a 16 16 + 64  64 multiply-and-accumulate operation in 2 to 3
states. A 32 32  64 multiply operation and a 32 32 + 64  64 multiply-and-accumulate
operation are each executed in 2 to 5 states.

Rev. 5.0, 09/03, page 38 of 806
T Bit: The result of a comparison is indicated by the T bit in the status register (SR), and a
conditional branch is performed according to whether the result is True or False.

Table 2.8 T Bit

SH7729R CPU       Description                          Example of Other CPU
                  If R0  R1, the T bit is set.         CMP.W R1,R0
CMP/GE R1,R0      A branch is made to TRGET0           BGE TRGET0
                  if R0  R1, or to TRGET1 if R0 < R1.  BLT TRGET1
BT    TRGET0                                           SUB.W #1,R0
                  The T bit is not set by ADD.         BEQ TRGET
BF    TRGET1      If R0 = 0, the T bit is set.
                  A branch is made if R0 = 0.
ADD   #1,R0

CMP/EQ #0,R0

BT    TRGET

Immediate Data: Byte immediate data is placed inside the instruction code. Word and longword
immediate data is not placed inside the instruction code, but in a table in memory. The table in
memory is referenced with an immediate data transfer instruction (MOV) using PC-relative
addressing mode with displacement.

Table 2.9 Immediate Data Referencing

Type              SH7729R CPU                      Example of Other CPU
                                                   MOV.B #H'12,R0
8-bit immediate   MOV #H'12,R0                     MOV.W #H'1234,R0

16-bit immediate  MOV.W @(disp,PC),R0              MOV.L #H'12345678,R0

                  ........

                  .DATA.W H'1234

32-bit immediate  MOV.L @(disp,PC),R0

                  ........

                  .DATA.L H'12345678

Note: Immediate data is referenced by @(disp,PC).

                                                       Rev. 5.0, 09/03, page 39 of 806
Absolute Addresses: When data is referenced by absolute address, the absolute address value is
placed in a table in memory beforehand. Using the method whereby immediate data is loaded
when an instruction is executed, this value is transferred to a register and the data is referenced
using register indirect addressing mode.

Table 2.10 Absolute Address Referencing

Type                 SH7729R CPU          Example of Other CPU
Absolute address     MOV.L @(disp,PC),R1  MOV.B @H'12345678,R0
                     MOV.B @R1,R0

                              ........
                     .DATA.L H'12345678

16-Bit/32-Bit Displacement: When data is referenced with a 16- or 32-bit displacement, the
displacement value is placed in a table in memory beforehand. Using the method whereby
immediate data is loaded when an instruction is executed, this value is transferred to a register and
the data is referenced using indexed register indirect addressing mode.

Table 2.11 Displacement Referencing

Type                 SH7729R CPU          Example of Other CPU
16-bit displacement  MOV.W @(disp,PC),R0  MOV.W @(H'1234,R1),R2
                     MOV.W @(R0,R1),R2

                              ........
                     .DATA.W H'1234

Rev. 5.0, 09/03, page 40 of 806
2.4 Instruction Formats

2.4.1 CPU Instruction Addressing Modes

The following table shows addressing modes and effective address calculation methods for
instructions executed by the CPU core.

Table 2.12 Addressing Modes and Effective Addresses for CPU Instructions

Addressing      Instruction                                          Calculation
Mode            Format Effective Address Calculation Method          Formula
                                                                     --
Register        Rn    Effective address is register Rn.
direct                                                               Rn
                      (Operand is register Rn contents.)
Register                                                             Rn
indirect        @Rn   Effective address is register Rn contents.     After instruction
                                                                     execution
                         Rn                               Rn         Byte: Rn + 1  Rn
                                                                     Word: Rn + 2  Rn
Register        @Rn+  Effective address is register Rn contents. A   Longword: Rn + 4
                      constant is added to Rn after instruction       Rn
indirect with         execution: 1 for a byte operand, 2 for a word
                      operand, 4 for a longword operand.             Byte: Rn 1  Rn
post-increment                                                       Word: Rn 2  Rn
                                                                     Longword: Rn 4
                         Rn                               Rn          Rn
                                                                     (Instruction
                             Rn + 1/2/4 +                            executed with Rn
                                                                     after calculation)
                      1/2/4

Register        @Rn  Effective address is register Rn contents,
                      decremented by a constant beforehand: 1 for a
indirect with         byte operand, 2 for a word operand, 4 for a
                      longword operand.
pre-decrement

                         Rn                              Rn - 1/2/4
                             Rn - 1/2/4 -

                      1/2/4

                                                          Rev. 5.0, 09/03, page 41 of 806
Addressing         Instruction                                                 Calculation
Mode               Format Effective Address Calculation Method                 Formula

Register           @(disp:4,  Effective address is register Rn contents with   Byte: Rn + disp
indirect with      Rn)        4-bit displacement disp added. After disp is
displacement                  zero-extended, it is multiplied by 1 (byte), 2   Word: Rn + disp
                              (word), or 4 (longword), according to the        2
                              operand size.
                                                                               Longword: Rn +
                                                                               disp 4

                                 Rn

                                 disp                +         Rn
                                                        + disp 1/2/4
                              (zero-extended)

                                               

                                 1/2/4

Indexed            @(R0, Rn) Effective address is sum of register Rn and R0    Rn + R0

register indirect             contents.

                                 Rn

                                                  +     Rn + R0

                                 R0

GBR indirect       @(disp:8,  Effective address is register GBR contents with  Byte: GBR + disp
with               GBR)       8-bit displacement disp added. After disp is
displacement                  zero-extended, it is multiplied by 1 (byte), 2   Word: GBR + disp
                              (word), or 4 (longword), according to the        2
                              operand size.
                                                                               Longword: GBR +
                                      GBR                                      disp 4

                                 disp                +       GBR
                                                        + disp 1/2/4
                              (zero-extended)

                                               

                                 1/2/4

Rev. 5.0, 09/03, page 42 of 806
Addressing   Instruction                                                      Calculation
Mode         Format Effective Address Calculation Method                      Formula

Indexed GBR  @(R0,          Effective address is sum of register GBR and      GBR + R0
indirect     GBR)           R0 contents.

                            GBR

                                 +                           GBR + R0

                            R0

PC-relative with @(disp:8,  Effective address is PC with 8-bit displacement Word: PC + disp
displacement PC)
                            disp added. After disp is zero-extended, it is    2

                            multiplied by 2 (word) or 4 (longword), according Longword:
                            to the operand size. With a longword operand, PC&H'FFFFFFFC
                            the lower 2 bits of PC are masked.
                                                                              + disp 4

                            PC

                                 &*

                             H'FFFFFFFC                        PC + disp 2
                                                          +            or

                                   disp                      PC&H'FFFFFFFC
                            (zero-extended)                       + disp 4

                                                   

                            2/4  *: With longword operand

                                                                Rev. 5.0, 09/03, page 43 of 806
Addressing   Instruction                                               Calculation
Mode         Format Effective Address Calculation Method               Formula
PC-relative
             disp:8   Effective address is PC with 8-bit displacement  PC + disp 2
Immediate             disp added after being sign-extended and
                      multiplied by 2.

                                 PC

                                 disp        +  PC + disp 2

                      (sign-extended)

                                       

             disp:12            2

                      Effective address is PC with 12-bit displacement PC + disp 2
                      disp added after being sign-extended and
                      multiplied by 2

                               PC

                                 disp        +  PC + disp 2

                      (sign-extended)

                                       

                                 2

             Rn       Effective address is sum of PC and Rn.           PC + Rn

                                 PC

                                          +     PC + Rn

                                 Rn

             #imm:8   8-bit immediate data imm of TST, AND, OR,        --
             #imm:8
             #imm:8   or XOR instruction is zero-extended.

                      8-bit immediate data imm of MOV, ADD, or         --

                      CMP/EQ instruction is sign-extended.

                      8-bit immediate data imm of TRAPA instruction --
                      is zero-extended and multiplied by 4.

Rev. 5.0, 09/03, page 44 of 806
2.4.2 DSP Data Addressing

Two different memory accesses are made with DSP instructions. The two kinds of instructions are
X and Y data transfer instructions (MOVX.W, MOVY.W) and single data transfer instructions
(MOVS.W, MOVSL). The data addressing is different for these two kinds of instruction. An
overview of the data transfer instructions is given in table 2.13.

Table 2.13 Overview of Data Transfer Instructions

Address register      X/Y Data Transfer Processing  Single Data Transfer Processing
Index register        (MOVX.W, MOVY.W)              (MOVS.W, MOVS.L)
Addressing            Ax: R4, R5, Ay: R6, R7
                      Ix: R8, Iy: R9                As: R2, R3, R4, R5
Modulo addressing     Nop/Inc (+2)/index addition:  Is: R8
Data bus              post-increment                Nop/Inc (+2, +4)/index addition:
Data length           --                            post-increment
Bus contention        Possible                      Dec (2, 4): pre-decrement
Memory                XDB, YDB                      Not possible
Source register       16 bits (word)                LDB
                      No                            16/32 bits (word/longword)
                      X/Y data memory               Yes
                      Dx, Dy: A0, A1                Entire memory space
                                                    Ds: A0/A1, M0/M1, X0/X1, Y0/Y1,
Destination register  Dx: X0/X1, Dy: Y0/Y1          A0G, A1G
                                                    Ds: A0/A1, M0/M1, X0/X1, Y0/Y1,
                                                    A0G, A1G

X/Y Data Addressing: With DSP instructions, the X and Y data memory can be accessed
simultaneously using the MOVX.W and MOVY.W instructions. Two address pointers are
provided for DSP instructions to enable simultaneous access to X and Y data memory. Only
pointer addressing can be used with DSP instructions; immediate addressing is not available.
Address registers are divided into two, with register R4 or R5 functioning as the X memory
address register (Ax), and register R6 or R7 as the Y memory address register (Ay). The following
three kinds of addressing can be used with X and Y data transfer instructions.

1. Non-update address register addressing:
    The Ax and Ay registers are address pointers. They are not updated.

2. Addition index register addressing:
    The Ax and Ay registers are address pointers. After a data transfer, the value of the Ix or Iy
    register is added to each (post-increment).

                                                    Rev. 5.0, 09/03, page 45 of 806
3. Increment address register addressing:
    The Ax and Ay registers are address pointers. After a data transfer, they are each incremented
    by 2 (post-increment).

There is an index register for each address pointer. The R8 register is the index register (Ix) for the
X memory address register (Ax), and the R9 register is the index register (Iy) for the Y memory
address register (Ay).

The X and Y data transfer instructions perform word-length processing, and use 16-bit access to
the X/Y data memory. A value of 2 is therefore added to the address register in the increment
processing. To perform decrementing, 2 is set in the index register and addition index register
addressing is specified. In X/Y data addressing, only bits 1 to 15 of the address pointer are valid.
When using X/Y data addressing, 0 must always be written to bit 0 of the address pointer and
index register.

X/Y data transfer addressing is shown in figure 2.12. When accessing X and Y memory using the
X and Y buses, the upper word of Ax (R4 or R5) and Ay (R6 or R7) is ignored. The result of
@AY+ or @Ay+Iy is stored in the lower word of Ay, while the upper word retains its original
value.

                R8[Ix]           R4[Ax]                      R9[Iy]      R6[Ay]
                                 R5[Ax]                                  R7[Ay]
+2 (INC)                                     +2 (INC)
+0 (no update)                               +0 (no update)

                        ALU                                          AU

Note: Three address processing methods:                              AU: Adder provided
                                                                           for DSP addressing
         1. Increment
         2. Index register addition (Ix/Iy)
         3. No increment

Post-updating is used in all cases.
The address pointer can be decremented by setting -2/-4 in the index register.

           Figure 2.12 X and Y Data Transfer Addressing

Single Data Addressing: DSP instructions include two single data transfer instructions
(MOVS.W, MOVS.L) that load data into, or store data from, a DSP register. With these
instructions, one of registers R2 to R5 is used as the single data transfer address register (As).

The following four kinds of addressing can be used with single data transfer instructions.

Rev. 5.0, 09/03, page 46 of 806
1. Non-update address register addressing:
    The As register is an address pointer. It is not updated.

2. Addition index register addressing:
    The As register is an address pointer. After a data transfer, the value of the Is register is added
    to the As register (post-increment).

3. Increment address register addressing:
    The As register is an address pointer. After a data transfer, the As register is incremented by 2
    or 4 (post-increment).

4. Decrement address register addressing:
    The As register is an address pointer. Before a data transfer, 2 or 4 is added to the As
    register (i.e. 2 or 4 is subtracted) (pre-decrement).

The R8 register is the index register (Is) for the address pointer (As). Single data transfer
addressing is shown in figure 2.13.

                           31             0

                               R2[As]

31                      0      R3[As]
                               R4[As]
                R8[Is]

-2/-4 (DEC)                    R5[As]
+2/+4 (INC)
+0 (no update)

                        ALU
                                            32
                                                                     LAB

Note: Four address processing methods:    Post-increment
                                          Pre-decrement
         1. No update
         2. Index register addition (Is)
         3. Increment
         4. Decrement

                              Figure 2.13 Single Data Transfer Addressing

Modulo Addressing: Like other DSPs, the SH7729R has a modulo addressing mode. Address
registers are updated in the same way in this mode. When the address pointer value reaches the
preset modulo end address, the address pointer value becomes the modulo start address.

Modulo addressing is only available for the X and Y data transfer instructions (MOVX.W,
MOVY.W). Modulo addressing mode is specified for the X address register by setting the DMX
bit in the SR register, and for the Y address register by setting the DMY bit. Modulo addressing is

                                             Rev. 5.0, 09/03, page 47 of 806
valid for either the X or the Y address register, only; it cannot be set for both at the same time.
Therefore, DMX and DMY cannot both be set simultaneously.

The MOD register is provided to set the start and end addresses of the modulo address area. The
MOD register contains MS (Modulo Start) and ME (Modulo End). An example of the use of the
MOD register (MS and ME fields) is shown below.

                 MOV.L ModAddr,Rn;  Rn=ModEnd, ModStart
                 LDC Rn,MOD;        ME=ModEnd, MS=ModStart
ModAddr: .DATA.W ModEnd
                 .DATA.W ModStart

   ModStart: .DATA
                       :

   ModEnd: .DATA

The start and end addresses are specified in MS and ME, then the DMX or DMY bit is set to 1.
The address register contents are compared with ME, and if they match, start address MS is stored
in the address register. The lower 16 bits of the address register are compared with ME.

The maximum modulo size is 64 kbytes. This is sufficient to access the X and Y data memory. A
block diagram of modulo addressing is shown in figure 2.14.

                                    Instruction (MOVX/MOVY)

                      31 16 15      0 DMX DMY          31 16 15      0
                                                 CONT        R6[Ay]          31
31            0       R4[Ax]                                 R7[Ay]                          0
      R8[Ix]                                                            AU       R9[Iy]
                      R5[Ax]
+2                                                                                         +2
+0                                  15           1                                         +0

                                        MS

                 ALU

                                        CMP

                                        ME

                                    15           1

                      XAB                                    YAB

                                 Figure 2.14 Modulo Addressing

An example of modulo addressing is given below.

MS = H'7008; ME=H'700C; R4=H'A5007008;
DMX = 1; DMY = 0: (Modulo addressing setting for address register Ax (R4, R5))

Rev. 5.0, 09/03, page 48 of 806
As a result of the above settings, the R4 register changes as follows.

Inc.   R4: H'A5007008
Inc.   R4: H'A500700A
Inc.   R4: H'A500700C
       R4: H'A5007008 (Reaches modulo end address, so becomes modulo start address)

Place the data so that the upper 16 bits of the modulo start and end addresses are the same. This is
because the modulo start address overwrites only the lower 15 bits of the address register,
excluding bit 0.

Note:  When addition indexing is used for DSP data addressing, the address pointer may exceed
       the ME value without actually reaching it. In this case, the address pointer will not return
       to the modulo start address. Not only with modulo addressing, but when X and Y data
       addressing is used, bit 0 is ignored. 0 must always be written to bit 0 of the address
       pointer, index register, MS, and ME.

2.4.3 CPU Instruction Formats

Table 2.14 shows the instruction formats, and the meaning of the source and destination operands,
for instructions executed by the CPU core. The meaning of the operands depends on the
instruction code. The following symbols are used in the table.

xxxx: Instruction code

mmmm: Source register

nnnn: Destination register

iiii:  Immediate data

dddd: Displacement

                               Rev. 5.0, 09/03, page 49 of 806
Table 2.14 CPU Instruction Formats

Instruction Format               Source          Destination         Sample Instruction
                                 Operand         Operand

0 type                           --              --                  NOP

15                       0

    xxxx xxxx xxxx xxxx

n type                           --              nnnn: register      MOV T Rn
15
                           0                     direct
    xxxx nnnn xxxx  xxxx
                                 Control register or nnnn: register  STS MACH,Rn
m type                     0     system register direct
                    xxxx
15                               Control register or nnnn: pre-      STC.L SR,@-Rn
    xxxx mmmm xxxx
                                 system register decrement register

                                                 indirect

                                 mmmm: register  Control register or LDC Rm,SR
                                 direct          system register

                                 mmmm: post-     Control register or LDC.L @Rm+,SR

                                 increment register system register

                                 indirect

                                 mmmm: register  --                  JMP @Rm

                                 indirect

                                 PC-relative using --                BRAF Rm
                                 Rm

Rev. 5.0, 09/03, page 50 of 806
Instruction Format            Source               Destination              Sample Instruction
                              Operand              Operand

nm type                       mmmm: register       nnnn: register           ADD Rm,Rn
                              direct               direct
15                       0

    xxxx nnnn mmmm xxxx       mmmm: register       nnnn: register           MOV.L Rm,@Rn
                              indirect             indirect

                              mmmm: post-          MACH, MACL               MAC.W @Rm+,@Rn+
                              increment register
                              indirect (multiply-
                              and-accumulate
                              operation)

                              nnnn: * post-
                              increment register
                              indirect (multiply-
                              and-accumulate
                              operation)

                              mmmm: post-          nnnn: register           MOV.L @Rm+,Rn

                              increment register direct

                              indirect

                              mmmm: register       nnnn: pre-               MOV.L Rm,@-Rn
                              direct
                                                   decrement register

                                                   indirect

                              mmmm: register       nnnn: indexed            MOV.L Rm,@(R0,Rn)
                              direct               register indirect

md type                       mmmmdddd:            R0 (register direct) MOV.B @(disp,Rm),R0

15                       0    register indirect

    xxxx xxxx mmmm dddd       with displacement

nd4 type                      R0 (register direct) nnnndddd:                MOV.B R0,@(disp,Rn)
15                                                       register indirect
              nnnn         0                             with displacement
   xxxx xxxx        dddd

nmd type                      mmmm: register       nnnndddd:                MOV.L Rm,@(disp,Rn)
                              direct               register indirect        MOV.L @(disp,Rm),Rn
15                       0                         with displacement
                              mmmmdddd:
    xxxx nnnn mmmm dddd       register indirect    nnnn: register
                              with displacement    direct

Note: * In multiply-and-accumulate instructions, nnnn is the source register.

                                                                   Rev. 5.0, 09/03, page 51 of 806
Instruction Format               Source            Destination     Sample Instruction
                                 Operand           Operand

d type                           dddddddd: GBR R0 (register direct) MOV.L @(disp,GBR),R0

15                             0 indirect with
    xxxx xxxx dddd dddd displacement

                                 R0 (register direct) dddddddd: GBR MOV.L

                                                   indirect with   @R0,@(disp,GBR)

                                                   displacement

                                 dddddddd:         R0 (register direct) MOVA @(disp,PC),R0
                                 PC-relative with
                                 displacement

                                 dddddddd:         --              BF label

                                 PC-relative                       BRA label
                                                                             (label=disp+PC)
d12 type                         dddddddddddd: --

15                             0 PC-relative

    xxxx dddd dddd dddd

nd8 type                         dddddddd: PC-     nnnn: register  MOV.L @(disp,PC),Rn
                                 relative with     direct
15                         0     displacement
    xxxx nnnn dddd  dddd

i type                           iiiiiiii:         Indexed GBR     AND.B #imm,@(R0,GBR)
                                                   indirect
15                             0 immediate

    xxxx xxxx i i i i i i i i    iiiiiiii:         R0 (register direct) AND #imm,R0

                                 immediate

                                 iiiiiiii:         --              TRAPA #imm
                                 immediate

ni type                          iiiiiiii:         nnnn: register  ADD #imm,Rn
                                                   direct
15                             0 immediate

    xxxx nnnn i i i i i i i i

Rev. 5.0, 09/03, page 52 of 806
2.4.4 DSP Instruction Formats

The SH7729R includes new instructions for digital signal processing. The new instructions are of
the following two kinds.

1. Memory and DSP register double and single data transfer instructions (16-bit length)
2. Parallel processing instructions processed by the DSP unit (32-bit length)

The instruction formats are shown in figure 2.15.

                       15                      0

CPU core instructions  0000
                          ...

                       1110

                       15      10 9            0

Double data transfer   111100         A field
instructions

                       15      10 9            0

Single data transfer   111101         A field

instructions

                       31      26 25           16 15                     0

Parallel processing    111110         A field                   B field
instructions

                           Figure 2.15 DSP Instruction Formats

                                                      Rev. 5.0, 09/03, page 53 of 806
Double and Single Data Transfer Instructions: The format of double data transfer instructions
is shown in table 2.15, and that of single data transfer instructions in table 2.16.

Table 2.15 Double Data Transfer Instruction Formats

Type      Mnemonic               15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

X memory NOPX                    1111000                0       0     00
                                                                      01
data      MOVX.W @Ax,Dx                  Ax Dx                  0     10
transfer  MOVX.W @Ax+,Dx

          MOVX.W @Ax+Ix,Dx                                            11

          MOVX.W Da,@Ax                                 Da      1     01

          MOVX.W Da,@Ax+                                              10

          MOVX.W Da,@Ax+Ix                                            11

Y memory NOPY                    111100              0      0      0      00
                                                                          01
data      MOVY.W @Ay,Dy                              Ay Dy         0      10
transfer  MOVY.W @Ay+,Dy

          MOVY.W @Ay+Iy,Dy                                                11

          MOVY.W Da,@Ay                                     Da     1      01

          MOVY.W Da,@Ay+                                                  10

          MOVY.W Da,@Ay+Iy                                                11

Note:  Ax: 0 = R4, 1 = R5
       Ay: 0 = R6, 1 = R7
       Dx: 0 = X0, 1 = X1
       Dy: 0 = Y0, 1 = Y1
       Da: 0 = A0, 1 = A1

Rev. 5.0, 09/03, page 54 of 806
Table 2.16 Single Data Transfer Instruction Formats

Type      Mnemonic          15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Single    MOVS.W @-As,Ds    1 1 1 1 0 1 As                         Ds 0:(*)    0000
data      MOVS.W @As,Ds                                      0:R4       1:(*)  01
transfer  MOVS.W @As+,Ds                                     1:R5       2:(*)  10

          MOVS.W @As+Is,Ds                           2:R2          3:(*)       11

          MOVS.W Ds,@-As                             3:R3          4:(*)       0001

          MOVS.W Ds,@As                                            5:A1        01

          MOVS.W Ds,@As+                                           6:(*)       10

          MOVS.W Ds,@As+Is                                         7:A0        11

          MOVS.L @-As,Ds                                           8:X0        0010

          MOVS.L @As,Ds                                            9:X1        01

          MOVS.L @As+,Ds                                           A:Y0        10

          MOVS.L @As+Is,Ds                                         B:Y1        11

          MOVS.L Ds,@-As                                           C:M0        0011

          MOVS.L Ds,@As                                            D:A1G 0 1

          MOVS.L Ds,@As+                                           E:M1        10

          MOVS.L Ds,@As+Is                                         F:A0G 1 1

Note: * Codes reserved for system use.

Parallel Processing Instructions: Parallel processing instructions are provided for efficient
execution of digital signal processing using the DSP unit. They are 32 bits long and allow four
simultaneous processes, an ALU operation, multiplication, and two data transfers.

Parallel processing instructions are divided into an A field and a B field. The A field defines data
transfer instructions and the B field an ALU operation instruction and multiply instruction. These
instructions can be defined independently, and the processing is executed in parallel,
independently and simultaneously. A-field parallel data transfer instructions are shown in table
2.17, and B-field ALU operation instructions and multiply instructions in table 2.18.

                                                                   Rev. 5.0, 09/03, page 55 of 806
                                                                                                                                                                           Table 2.17 A-Field Parallel Data Transfer Instructions
Rev. 5.0, 09/03, page 56 of 806
Type      Mnemonic           31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

X memory  NOPX               1111100 0 0 00
data      MOVX.W @Ax, Dx
transfer  MOVX.W @Ax+, Dx    Ax Dx 0 0 1
          MOVX.W @Ax+Ix, Dx
Y memory  MOVX.W Da, @Ax                                             10      B field
data      MOVX.W Da, @Ax+                                            11
transfer  MOVX.W Da, @Ax+Ix
          NOPY               Da 1 0 1
          MOVY.W @Ay, Dy
          MOVY.W @Ay+, Dy                                            10
          MOVY.W @Ay+Iy, Dy
          MOVY.W Da, @Ay                                             11
          MOVY.W Da, @Ay+
          MOVY.W Da, @Ay+Iy  111110 0 0 0                                00
                                                            Ay Dy 0      01

                                                                         10  B field
                                                                         11

                             Da 1                                        01

                                                                         10

                                                                         11

Note: Ax: 0 = R4, 1 = R5
         Ay: 0 = R6, 1 = R7
         Dx: 0 = X0, 1 = X1
         Dy: 0 = Y0, 1 = Y1
         Da: 0 = A0, 1 = A1
                                                                                                                                                                           Table 2.18 B-Field ALU Operation Instructions and Multiply InstructionsTypeMnemonic31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Rev. 5.0, 09/03, page 57 of 806
imm. shift  PSHL #imm, Dz            111110           0 0 0 0 0 -16 < = imm < = +16                                                                                                                                                               Dz
            PSHA #imm, Dz
            Reserved                                  0 0 0 1 0 -32 < = imm < = +32

                                             A field  000 1

                                                      001

6-operand PMULS Se, Sf, Dg                            0 1 0 0 Se Sf Sx Sy Dg Du
parallel

instructions Reserved                                 0 1 0 1 0:X0 0:Y0 0:X0 0:Y0 0:M0 0:X0

                                                            1:X1 1:Y1 1:X1 1:Y1 1:M1 1:Y0

            PSUB Sx, Sy, Du                           0 1 1 0 2:Y0 2:X0 2:A0 2:M0 2:A0 2:A0
             PMULS Se, Sf, Dg                                           3:A1 3:A1 3:A1 3:M1 3:A1 3:A1

            PADD Sx, Sy, Du                           0111

                   PMULS Se, Sf, Dg                   1000 0000                                                                                                                                                                                   Dz
3-operand Reserved

instructions                                          01                                                                                                                                                                                          0:(*)
                 PSUBC Sx, Sy, Dz                     10                                                                                                                                                                                          1:(*)
                 PADDC Sx, Sy, Dz                     11                                                                                                                                                                                          2:(*)
                 PCMP Sx, Sy                          00 01                                                                                                                                                                                       3:(*)
                 Reserved                             01                                                                                                                                                                                          4:(*)
                 Reserved                             10                                                                                                                                                                                          5:A1
                 Reserved                             11                                                                                                                                                                                          6:(*)
                 PABS Sx, Dz                          00 10                                                                                                                                                                                       7:A0
                 PRND Sx, Dz                          01                                                                                                                                                                                          8:X0
                 PABS Sy, Dz                          10                                                                                                                                                                                          9:X1
                 PRND Sy, Dz                          11                                                                                                                                                                                          A:Y0
                 Reserved                             00 11                                                                                                                                                                                       B:Y1
                                                      01                                                                                                                                                                                          C:M0
                                                      10                                                                                                                                                                                          D:(*)
                                                      11                                                                                                                                                                                          E:M1
                                                                                                                                                                                                                                                  F:(*)

Note: * Codes reserved for system use.
Rev. 5.0, 09/03, page 58 of 806  Type  Mnemonic                        31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

                                 Conditional [if cc] PSHL Sx, Sy, Dz   111110                                                      0 0 0 0 if cc Sx Sy                 Dz

                                 3-operand [if cc] PSHA Sx, Sy, Dz                                                                 01                    0:X0 0:Y0   0:(*1)
                                                                                                                                                                     1:(*1)
                                 instructions [if cc] PSUB Sx, Sy, Dz          A field                                             10          01: 1:X1 1:Y1         2:(*1)
                                                                                                                                                                     3:(*1)
                                       [if cc] PADD Sx, Sy, Dz                                                                     11                    2:A0  2:M0  4:(*1)
                                                                                                                                                         3:A1  3:M1  5:A1
                                       Reserved                                                                                    0  0  0  1  Uncon-                6:(*1)
                                                                                                                                   0  1        ditional              7:A0
                                                                                                                                                                     8:X0
                                       [if cc] PAND Sx, Sy, Dz                                                                                                       9:X1
                                                                                                                                                                     A:Y0
                                       [if cc] PXOR Sx, Sy, Dz                                                                     10                                B:Y1
                                                                                                                                                                     C:M0
                                       [if cc] POR Sx, Sy, Dz                                                                      11          10:                   D:(*1)
                                                                                                                                                                     E:M1
                                       [if cc] PDEC Sx, Dz                                                                         0 0 1 0 DCT                       F:(*1)

                                       [if cc] PINC Sx, Dz                                                                         01

                                       [if cc] PDEC Sy, Dz                                                                         10

                                       [if cc] PINC Sy, Dz                                                                         11          11:

                                       [if cc] PCLR Dz                                                                             0 0 1 1 DCF

                                       [if cc] PDMSB Sx, Dz                                                                        01

                                       Reserved                                                                                    10

                                       [if cc] PDMSB Sy, Dz                                                                        11

                                       [if cc] PNEG Sx, Dz                                                                         1100 10

                                       [if cc] PCOPY Sx, Dz                                                                        01

                                       [if cc] PNEG Sy, Dz                                                                         10

                                       [if cc] PCOPY Sy, Dz                                                                        11

                                       Reserved                                                                                                00

                                       [if cc] PSTS MACH, Dz                                                                       0 0 1 1 if cc

                                       [if cc] PSTS MACL, Dz                                                                       01

                                       [if cc] PLDS Dz, MACH                                                                       10

                                       [if cc] PLDS Dz, MACL                                                                       11

                                       (*2) Reserved                                                                                           00

                                                                                                                                         0*

                                       Reserved                        111111

                                 Notes: 1. Codes reserved for system use.
                                            2. [if cc]: DCT (DC bit True), DCF (DC bit False) or none (unconditional instruction)
2.5 Instruction Set

2.5.1 CPU Instruction Set

The SH-1/SH-2/SH-3 compatible instruction set consists of 68 basic instruction types divided into
six functional groups, as shown in table 2.19. Tables 2.20 to 2.25 show the instruction notation,
machine code, execution time, and function.

Table 2.19 CPU Instruction Types

Type           Kinds of     Op Code   Function                                  Number of
Data transfer  Instruction  MOV                                                 Instructions
instructions   5
                            MOVA      Data transfer                             39
Arithmetic     21           MOVT
operation                   SWAP      Immediate data transfer
instructions                XTRCT
                            ADD       Peripheral module data transfer
                            ADDC
                            ADDV      Structure data transfer
                            CMP/cond
                            DIV1      Effective address transfer
                            DIV0S
                            DIV0U     T bit transfer
                            DMULS
                            DMULU     Upper/lower swap
                            DT
                            EXTS      Extraction of middle of linked registers
                            EXTU
                            MAC       Binary addition                           33

                            MUL       Binary addition with carry

                                      Binary addition with overflow check

                                      Comparison

                                      Division

                                      Signed division initialization

                                      Unsigned division initialization

                                      Signed double-precision multiplication

                                      Unsigned double-precision multiplication

                                      Decrement and test

                                      Sign extension

                                      Zero extension

                                      Multiply-and-accumulate, double-
                                      precision multiply-and-accumulate

                                      Double-precision multiplication
                                      (32 32 bits)

                                                               Rev. 5.0, 09/03, page 59 of 806
Type          Kinds of     Op Code  Function                                Number of
Arithmetic    Instruction  MULS     Signed multiplication (16 16 bits)    Instructions
operation     21           MULU     Unsigned multiplication (16 16 bits)  33
instructions               NEG      Sign inversion
              6            NEGC     Sign inversion with borrow              14
Logic                      SUB      Binary subtraction
operation     12           SUBC     Binary subtraction with carry           16
instructions               SUBV     Binary subtraction with underflow
                           AND      Logical AND
Shift                      NOT      Bit inversion
instructions               OR       Logical OR
                           TAS      Memory test and bit setting
                           TST      Logical AND and T bit setting
                           XOR      Exclusive logical OR
                           ROTL     1-bit left shift
                           ROTR     1-bit right shift
                           ROTCL    1-bit left shift with T bit
                           ROTCR    1-bit right shift with T bit
                           SHAL     Arithmetic 1-bit left shift
                           SHAR     Arithmetic 1-bit right shift
                           SHLL     Logical 1-bit left shift
                           SHLLn    Logical n-bit left shift
                           SHLR     Logical 1-bit right shift
                           SHLRn    Logical n-bit right shift
                           SHAD     Arithmetic dynamic shift
                           SHLD     Logical dynamic shift

Rev. 5.0, 09/03, page 60 of 806
Type          Kinds of     Op Code  Function                                 Number of
Branch        Instruction  BF                                                Instructions
instructions
              9                     Conditional branch, delayed conditional 11
System                              branch (T = 0)
control
instructions               BT       Conditional branch, delayed conditional
                                    branch (T = 1)
Total:
                           BRA      Unconditional branch

                           BRAF     Unconditional branch

                           BSR      Branch to subroutine procedure

                           BSRF     Branch to subroutine procedure

                           JMP      Unconditional branch

                           JSR      Branch to subroutine procedure

                           RTS      Return from subroutine procedure

              15           CLRT     T bit clear                              75

                           CLRMAC   MAC register clear

                           CLRS     S bit clear

                           LDC      Load into control register

                           LDS      Load into system register

                           LDTLB    PTEH/PTEL load into TLB

                           NOP      No operation

                           PREF     Data prefetch to cache

                           RTE      Return from exception handling

                           SETS     S bit setting

                           SETT     T bit setting

                           SLEEP    Transition to power-down mode

                           STC      Store from control register

                           STS      Store from system register

                           TRAPA    Trap exception handling

              68                                                             188

                                                            Rev. 5.0, 09/03, page 61 of 806
The instruction code, operation, and number of execution states of the CPU instructions are shown
in the following tables, classified by instruction type, using the format shown below.

Instruction               Instruction Code            Operation                   Privilege     Execution
                                                                                                States T Bit

Indicated by mnemonic.    Indicated in MSB            Indicates summary of        Indicates a   Value when Value of T bit
                          LSB order.                  operation.                  privileged
                                                                                  instruction.  no wait after

                                                                                                states are instruction is
                                                                                                inserted*1 executed

Explanation of Symbols Explanation of Symbols Explanation of Symbols                            Explanation
                                                                                                of Symbols
OP.Sz SRC, DEST           mmmm: Source register       , : Transfer direction
  OP: Operation code                                  (xx): Memory operand                      --: No
  Sz: Size                nnnn: Destination register  M/Q/T: Flag bits in SR                    change
  SRC: Source               0000: R0                  &: Logical AND of each bit
  DEST: Destination         0001: R1                  |: Logical OR of each bit
                            .........                 ^: Exclusive logical OR of
Rm: Source register         1111: R15
                                                            each bit
Rn: Destination register  iiii: Immediate data
                          dddd: Displacement*2
imm: Immediate data

disp: Displacement                                    ~: Logical NOT of each bit

                                                      <
                                                                              >>n: n-bit right shift

Notes: 1. The table shows the minimum number of execution states. In practice, the number of
               instruction execution states will be increased in cases such as the following:
               (1) When there is contention between an instruction fetch and a data access
               (2) When the destination register of a load instruction (memory  register) is also
                     used by the following instruction

          2. Scaled (x1, x2, or x4) according to the instruction operand size, etc.

Rev. 5.0, 09/03, page 62 of 806
Data Transfer Instructions

Table 2.20 Data Transfer Instructions

                                                              Privileged

Instruction          Operation              Code              Mode        Cycles T Bit
MOV #imm,Rn
                     imm  Sign extension    1110nnnniiiiiiii  --          1  --
MOV.W @(disp,PC),Rn   Rn

MOV.L @(disp,PC),Rn  (disp 2 + PC)  Sign  1001nnnndddddddd  --          1  --
MOV Rm,Rn            extension  Rn
MOV.B Rm,@Rn
MOV.W Rm,@Rn         (disp 4 + PC)  Rn    1101nnnndddddddd  --          1  --
MOV.L Rm,@Rn
MOV.B @Rm,Rn         Rm  Rn                 0110nnnnmmmm0011  --          1  --

MOV.W @Rm,Rn         Rm  (Rn)               0010nnnnmmmm0000  --          1  --

MOV.L @Rm,Rn         Rm  (Rn)               0010nnnnmmmm0001  --          1  --
MOV.B Rm,@Rn
MOV.W Rm,@Rn        Rm  (Rn)               0010nnnnmmmm0010  --          1  --
MOV.L Rm,@Rn
MOV.B @Rm+,Rn        (Rm)  Sign extension   0110nnnnmmmm0000  --          1  --
                      Rn
MOV.W @Rm+,Rn
                     (Rm)  Sign extension   0110nnnnmmmm0001  --          1  --
MOV.L @Rm+,Rn         Rn
MOV.B R0,@(disp,Rn)
MOV.W R0,@(disp,Rn)  (Rm)  Rn               0110nnnnmmmm0010  --          1  --
MOV.L Rm,@(disp,Rn)
MOV.B @(disp,Rm),R0  Rn1  Rn, Rm  (Rn) 0010nnnnmmmm0100      --          1  --

MOV.W @(disp,Rm),R0  Rn2  Rn, Rm  (Rn) 0010nnnnmmmm0101      --          1  --

MOV.L @(disp,Rm),Rn  Rn4  Rn, Rm  (Rn) 0010nnnnmmmm0110      --          1  --
MOV.B Rm,@(R0,Rn)
                     (Rm)  Sign extension   0110nnnnmmmm0100  --          1  --
                      Rn, Rm + 1  Rm

                     (Rm)  Sign extension   0110nnnnmmmm0101  --          1  --
                      Rn, Rm + 2  Rm

                     (Rm)  Rn,Rm + 4  Rm 0110nnnnmmmm0110     --          1  --

                     R0  (disp + Rn)        10000000nnnndddd  --          1  --

                     R0  (disp 2 + Rn)    10000001nnnndddd  --          1  --

                     Rm  (disp 4 + Rn)    0001nnnnmmmmdddd  --          1  --

                     (disp + Rm)  Sign      10000100mmmmdddd  --          1  --
                     extension  R0

                     (disp 2 + Rm)  Sign  10000101mmmmdddd  --          1  --
                     extension  R0

                     (disp 4 + Rm)  Rn    0101nnnnmmmmdddd  --          1  --

                     Rm  (R0 + Rn)          0000nnnnmmmm0100  --          1  --

                                                  Rev. 5.0, 09/03, page 63 of 806
                                                                               Privileged

Instruction        Operation                                 Code              Mode        Cycles T Bit
                                                             0000nnnnmmmm0101
MOV.W Rm,@(R0,Rn)  Rm  (R0 + Rn)                             0000nnnnmmmm0110  --          1  --
                                                             0000nnnnmmmm1100
MOV.L Rm,@(R0,Rn)  Rm  (R0 + Rn)                                               --          1  --
                                                             0000nnnnmmmm1101
MOV.B @(R0,Rm),Rn  (R0 + Rm)  Sign                                             --          1  --
                   extension  Rn                             0000nnnnmmmm1110
                                                             11000000dddddddd
MOV.W @(R0,Rm),Rn  (R0 + Rm)  Sign                           11000001dddddddd  --          1  --
                   extension  Rn                             11000010dddddddd
                                                             11000100dddddddd
MOV.L @(R0,Rm),Rn  (R0 + Rm)  Rn                                               --          1  --
                                                             11000101dddddddd
MOV.B R0,@(disp,GBR) R0  (disp + GBR)                                          --          1  --
                                                             11000110dddddddd
MOV.W R0,@(disp,GBR) R0  (disp 2 + GBR)                    11000111dddddddd  --          1  --
                                                             0000nnnn00101001
MOV.L R0,@(disp,GBR) R0  (disp 4 + GBR)                    0110nnnnmmmm1000  --          1  --

MOV.B @(disp,GBR),R0 (disp + GBR)  Sign                      0110nnnnmmmm1001  --          1  --
                                         extension  R0
                                                             0010nnnnmmmm1101
MOV.W @(disp,GBR),R0 (disp 2 + GBR)                                          --          1  --
                                         Sign extension  R0

MOV.L @(disp,GBR),R0 (disp 4 + GBR)  R0                                      --          1  --

MOVA @(disp,PC),R0 disp 4 + PC  R0                                           --          1  --

MOVT Rn            T  Rn                                                       --          1  --

SWAP.B Rm,Rn       Rm  Swap lowest two                                         --          1  --
                   bytes  REG

SWAP.W Rm,Rn       Rm  Swap two                                                --          1  --
                   consecutive words  Rn

XTRCT Rm,Rn        Rm: Middle 32 bits of                                       --          1  --
                   Rn  Rn

Rev. 5.0, 09/03, page 64 of 806
Arithmetic Operation Instructions

Table 2.21 Arithmetic Operation Instructions

                                                          Privileged

Instruction     Operation               Code              Mode        Cycles T Bit
                                        0011nnnnmmmm1100
ADD  Rm,Rn      Rn + Rm  Rn             0111nnnniiiiiiii  --          1  --
                Rn + imm  Rn            0011nnnnmmmm1110
ADD  #imm,Rn    Rn + Rm + T  Rn,                          --          1  --
                Carry  T                0011nnnnmmmm1111
ADDC Rm,Rn      Rn + Rm  Rn,                              --          1  Carry
                Overflow  T             10001000iiiiiiii
ADDV Rm,Rn      If R0 = imm, 1  T                         --          1  Overflow

CMP/EQ #imm,R0                                            --          1  Comparison

                                                                         result

CMP/EQ Rm,Rn    If Rn = Rm, 1  T        0011nnnnmmmm0000  --          1  Comparison

                                                                         result

CMP/HS Rm,Rn    If Rn  Rm with          0011nnnnmmmm0010  --          1  Comparison
                unsigned data, 1  T     0011nnnnmmmm0011
                                        0011nnnnmmmm0110                 result
                If Rn  Rm with signed   0011nnnnmmmm0111
CMP/GE Rm,Rn    data, 1  T              0100nnnn00010001  --          1  Comparison

                If Rn > Rm with                                          result
                unsigned data, 1  T
CMP/HI Rm,Rn                                              --          1  Comparison
                If Rn > Rm with signed
                data, 1  T                                               result

CMP/GT Rm,Rn    If Rn  0, 1  T                            --          1  Comparison

                                                                         result

CMP/PZ Rn                                                 --          1  Comparison

                                                                         result

CMP/PL Rn       If Rn > 0, 1  T         0100nnnn00010101  --          1  Comparison

                                                                         result

CMP/STR Rm,Rn   If Rn and Rm have an    0010nnnnmmmm1100  --          1  Comparison
                equivalent byte, 1  T
                                                                         result

DIV1 Rm,Rn      Single-step division    0011nnnnmmmm0100  --          1  Calculation
                (Rn/Rm)
                                                                         result

DIV0S Rm,Rn     MSB of Rn  Q, MSB 0010nnnnmmmm0111        --          1  Calculation
                of Rm  M, M ^ Q  T
                                                                         result

DIV0U           0  M/Q/T                0000000000011001  --          1  0
DMULS.L Rm,Rn
                Signed operation of     0011nnnnmmmm1101  --          2(5)*1 --

                Rn Rm  MACH,

                MACL 32 32  64 bits

DMULU.L Rm,Rn   Unsigned operation of 0011nnnnmmmm0101    --          2(5)*1 --
                Rn Rm  MACH,
                MACL 32 32  64 bits

                                                          Rev. 5.0, 09/03, page 65 of 806
                                           Privileged

Instruction   Operation              Code  Mode               Cycles T Bit

DT  Rn        Rn 1  Rn, if Rn =    0100nnnn00010000 --      1  Comparison
              0, 1  T, else 0  T
                                                                 result

EXTS.B Rm,Rn  A byte in Rm is sign-  0110nnnnmmmm1110 --      1  --
              extended  Rn

EXTS.W Rm,Rn  A word in Rm is sign-  0110nnnnmmmm1111 --      1  --
              extended  Rn

EXTU.B Rm,Rn  A byte in Rm is zero-  0110nnnnmmmm1100 --      1  --
              extended  Rn

EXTU.W Rm,Rn  A word in Rm is zero-  0110nnnnmmmm1101 --      1  --
              extended  Rn

MAC.L @Rm+,@Rn+ Signed operation of (Rn) 0000nnnnmmmm1111 --  2(5)*1 --
                                  (Rm) + MAC  MAC,
                                 Rn + 4  Rn,
                                 Rm + 4  Rm,
                                 32 32 + 64  64 bits

MAC.W @Rm+,@Rn+ Signed operation of (Rn) 0100nnnnmmmm1111 --  2(5)*1 --
                                  (Rm) + MAC  MAC,
                                 Rn + 2  Rn,
                                 Rm + 2  Rm,
                                 16 16 + 64  64 bits

MUL.L Rm,Rn   Rn Rm  MACL,         0000nnnnmmmm0111 --      2(5)*1 --
              32 32  32 bits                                1(3)*2 --
                                                              1(3)*2 --
MULS.W Rm,Rn  Signed operation of Rn 0010nnnnmmmm1111 --
               Rm  MACL,
              16 16  32 bits

MULU.W Rm,Rn  Unsigned operation of  0010nnnnmmmm1110 --
              Rn Rm  MACL,
              16 16  32 bits

NEG Rm,Rn     0Rm  Rn               0110nnnnmmmm1011 --      1  --

NEGC Rm,Rn    0RmT  Rn,            0110nnnnmmmm1010 --      1  Borrow
              Borrow  T

SUB Rm,Rn     RnRm  Rn              0011nnnnmmmm1000 --      1  --

SUBC Rm,Rn    RnRmT  Rn,           0011nnnnmmmm1010 --      1  Borrow
              Borrow  T

SUBV Rm,Rn    RnRm  Rn,             0011nnnnmmmm1011 --      1  Underflow
              Underflow  T

Notes: 1. The normal minimum number of execution cycles is two, but five cycles are required
               when the operation result is read from the MAC register immediately after the
               instruction.

          2. The normal minimum number of execution cycles is one, but three cycles are required
               when the operation result is read from the MAC register immediately after the MUL
               instruction.

Rev. 5.0, 09/03, page 66 of 806
Logic Operation Instructions

Table 2.22 Logic Operation Instructions

                                                                  Privileged

Instruction           Operation                 Code              Mode        Cycles T Bit
AND Rm,Rn                                       0010nnnnmmmm1001
AND #imm,R0           Rn & Rm  Rn               11001001iiiiiiii  --          1  --
AND.B #imm,@(R0,GBR)  R0 & imm  R0              11001101iiiiiiii
                      (R0 + GBR) & imm                            --          1  --
NOT Rm,Rn             (R0 + GBR)                0110nnnnmmmm0111
OR Rm,Rn                                        0010nnnnmmmm1011  --          3  --
OR #imm,R0            ~Rm  Rn                   11001011iiiiiiii
OR.B #imm,@(R0,GBR)   Rn | Rm  Rn               11001111iiiiiiii  --          1  --
                      R0 | imm  R0
TAS.B @Rn             (R0 + GBR) | imm          0100nnnn00011011  --          1  --
                      (R0 + GBR)
TST Rm,Rn                                       0010nnnnmmmm1000  --          1  --
                      If (Rn) is 0, 1  T;
TST #imm,R0           1  MSB of (Rn)            11001000iiiiiiii  --          3  --
                      Rn & Rm; if the result
TST.B #imm,@(R0,GBR)  is 0, 1  T                11001100iiiiiiii  --          3  Test
                      R0 & imm; if the result
XOR Rm,Rn             is 0, 1  T                0010nnnnmmmm1010                 result
XOR #imm,R0           (R0 + GBR) & imm;         11001010iiiiiiii
XOR.B #imm,@(R0,GBR)  if the result is 0, 1  T  11001110iiiiiiii  --          1  Test
                      Rn ^ Rm  Rn
                      R0 ^ imm  R0                                               result
                      (R0 + GBR) ^ imm
                      (R0 + GBR)                                  --          1  Test

                                                                                 result

                                                                  --          3  Test

                                                                                 result

                                                                  --          1  --

                                                                  --          1  --

                                                                  --          3  --

                                                Rev. 5.0, 09/03, page 67 of 806
Shift Instructions
Table 2.23 Shift Instructions

                                                    Privileged

Instruction  Operation            Code              Mode        Cycles T Bit
ROTL Rn                           0100nnnn00000100
ROTR Rn      T  Rn  MSB           0100nnnn00000101  --          1  MSB
ROTCL Rn     LSB  Rn  T           0100nnnn00100100
ROTCR Rn     T  Rn  T             0100nnnn00100101  --          1  LSB
SHAD Rm,Rn   T  Rn  T             0100nnnnmmmm1100
             Rn  0: Rn << Rm  Rn                    --          1  MSB
             Rn < 0: Rn >> Rm
             [MSB  Rn]                              --          1  LSB
             T  Rn  0
             MSB  Rn  T                             --          1  --
             Rn  0: Rn << Rm  Rn
SHAL  Rn     Rn < 0: Rn >> Rm     0100nnnn00100000 --           1  MSB
SHAR  Rn     [0  Rn]              0100nnnn00100001 --
SHLD  Rm,Rn  T  Rn  0             0100nnnnmmmm1101 --           1  LSB
             0  Rn  T
             Rn << 2  Rn                                        1  --
             Rn >> 2  Rn
SHLL Rn      Rn << 8  Rn          0100nnnn00000000 --           1  MSB
SHLR Rn      Rn >> 8  Rn          0100nnnn00000001 --
SHLL2 Rn     Rn << 16  Rn         0100nnnn00001000 --           1  LSB
SHLR2 Rn     Rn >> 16  Rn         0100nnnn00001001 --
SHLL8 Rn                          0100nnnn00011000 --           1  --
SHLR8 Rn                          0100nnnn00011001 --
SHLL16 Rn                         0100nnnn00101000 --           1  --
SHLR16 Rn                         0100nnnn00101001 --
                                                                1  --

                                                                1  --

                                                                1  --

                                                                1  --

Rev. 5.0, 09/03, page 68 of 806
Branch Instructions
Table 2.24 Branch Instructions

                                                              Privileged

Instruction  Operation                      Code              Mode        Cycles T Bit

BF   label   If T = 0, disp 2 + PC  PC; 10001011dddddddd    --          3/1*  --

             if T = 1, nop (where label is

             disp + PC)

BF/S label   Delayed branch, if T = 0,      10001111dddddddd  --          2/1*  --
             disp 2 + PC  PC;
             if T = 1, nop

BT   label   Delayed branch, if T = 1,      10001001dddddddd  --          3/1*  --

             disp 2 + PC  PC;

             if T = 0, nop

BT/S label   If T = 1, disp 2 + PC  PC;   10001101dddddddd  --          2/1*  --
             if T = 0, nop

BRA label    Delayed branch,                1010dddddddddddd  --          2     --
             disp 2 + PC  PC

BRAF Rm      Delayed branch,                0000mmmm00100011  --          2     --
             Rm + PC  PC

BSR label    Delayed branch, PC  PR,        1011dddddddddddd  --          2     --
             disp 2 + PC  PC

BSRF Rm      Delayed branch, PC  PR,        0000mmmm00000011  --          2     --
             Rm + PC  PC

JMP @Rm      Delayed branch, Rm  PC         0100mmmm00101011  --          2     --

JSR @Rm      Delayed branch, PC  PR,        0100mmmm00001011  --          2     --
             Rm  PC

RTS          Delayed branch, PR  PC         0000000000001011  --          2     --

Note: * One state when the branch is not executed.

                                                    Rev. 5.0, 09/03, page 69 of 806
System Control Instructions

Table 2.25 System Control Instructions

                                                             Privileged

Instruction         Operation              Code              Mode        Cycles T Bit
CLRMAC                                     0000000000101000
CLRS                0  MACH, MACL          0000000001001000  --          1  --
CLRT                0S                     0000000000001000
LDC Rm,SR           0T                     0100mmmm00001110  --          1  --
LDC Rm,GBR          Rm  SR                 0100mmmm00011110
LDC Rm,VBR          Rm  GBR                0100mmmm00101110  --          1  0
LDC Rm,SSR          Rm  VBR                0100mmmm00111110
LDC Rm,SPC          Rm  SSR                0100mmmm01001110              5  LSB
LDC Rm,R0_BANK      Rm  SPC                0100mmmm10001110
LDC Rm,R1_BANK      Rm  R0_BANK            0100mmmm10011110  --          1  --
LDC Rm,R2_BANK      Rm  R1_BANK            0100mmmm10101110
LDC Rm,R3_BANK      Rm  R2_BANK            0100mmmm10111110              1  --
LDC Rm,R4_BANK      Rm  R3_BANK            0100mmmm11001110
LDC Rm,R5_BANK      Rm  R4_BANK            0100mmmm11011110              1  --
LDC Rm,R6_BANK      Rm  R5_BANK            0100mmmm11101110
LDC Rm,R7_BANK      Rm  R6_BANK            0100mmmm11111110              1  --
LDC.L @Rm+,SR       Rm  R7_BANK            0100mmmm00000111
LDC.L @Rm+,GBR      (Rm)  SR, Rm + 4  Rm   0100mmmm00010111              1  --
LDC.L @Rm+,VBR      (Rm)  GBR, Rm + 4  Rm  0100mmmm00100111
LDC.L @Rm+,SSR      (Rm)  VBR, Rm + 4  Rm  0100mmmm00110111              1  --
LDC.L @Rm+,SPC      (Rm)  SSR, Rm + 4  Rm  0100mmmm01000111
LDC.L @Rm+,         (Rm)  SPC, Rm + 4  Rm  0100mmmm10000111              1  --
                    (Rm)  R0_BANK,
           R0_BANK  Rm + 4  Rm                                           1  --
LDC.L @Rm+,         (Rm)  R1_BANK,
                    Rm + 4  Rm                                           1  --
           R1_BANK  (Rm)  R2_BANK,
LDC.L @Rm+,         Rm + 4  Rm                                           1  --
                    (Rm)  R3_BANK,
           R2_BANK  Rm + 4  Rm                                           1  --
LDC.L @Rm+,         (Rm)  R4_BANK,
                    Rm + 4  Rm                                           1  --
           R3_BANK
LDC.L @Rm+,                                                              7  LSB

           R4_BANK                                           --          1  --

                                                                         1  --

                                                                         1  --

                                                                         1  --

                                                                         1  --

                                           0100mmmm10010111              1  --

                                           0100mmmm10100111              1  --

                                           0100mmmm10110111              1  --

                                           0100mmmm11000111              1  --

Rev. 5.0, 09/03, page 70 of 806
                                                              Privileged

Instruction         Operation               Code              Mode        Cycles T Bit
LDC.L @Rm+,                                 0100mmmm11010111
                    (Rm)  R5_BANK,                                        1   --
           R5_BANK  Rm + 4  Rm              0100mmmm11100111
LDC.L @Rm+,         (Rm)  R6_BANK,                                        1   --
                    Rm + 4  Rm              0100mmmm11110111
           R6_BANK  (Rm)  R7_BANK,                                        1   --
LDC.L @Rm+,         Rm + 4  Rm              0100mmmm00001010
                    Rm  MACH                0100mmmm00011010  --          1   --
           R7_BANK  Rm  MACL                0100mmmm00101010
LDS Rm,MACH         Rm  PR                  0100mmmm00000110  --          1   --
LDS Rm,MACL         (Rm)  MACH, Rm + 4  Rm  0100mmmm00010110
LDS Rm,PR           (Rm)  MACL, Rm + 4  Rm  0100mmmm00100110  --          1   --
LDS.L @Rm+,MACH     (Rm)  PR, Rm + 4  Rm    0000000000111000
LDS.L @Rm+,MACL     PTEH/PTEL  TLB          0000000000001001  --          1   --
LDS.L @Rm+,PR       No operation            0000mmmm10000011
LDTLB               (Rm)  cache             0000000000101011  --          1   --
NOP                 Delayed branch,
PREF @Rm            SSR/SPC  SR/PC          0000000001011000  --          1   --
RTE                 1S                      0000000000011000
                    1T                      0000000000011011              1   --
SETS                Sleep                   0000nnnn00000010
SETT                SR  Rn                  0000nnnn00010010  --          1   --
SLEEP               GBR  Rn                 0000nnnn00100010
STC SR,Rn           VBR  Rn                 0000nnnn00110010  --          1   --
STC GBR,Rn          SSR  Rn                 0000nnnn01000010
STC VBR,Rn          SPC  Rn                 0000nnnn10000010              4   --
STC SSR,Rn          R0_BANK Rn              0000nnnn10010010
STC SPC,Rn          R1_BANK Rn              0000nnnn10100010  --          1   --
STC R0_BANK,Rn      R2_BANK Rn              0000nnnn10110010
STC R1_BANK,Rn      R3_BANK Rn              0000nnnn11000010  --          1   1
STC R2_BANK,Rn      R4_BANK Rn              0000nnnn11010010
STC R3_BANK,Rn      R5_BANK Rn              0000nnnn11100010              4*  --
STC R4_BANK,Rn      R6_BANK Rn              0000nnnn11110010
STC R5_BANK,Rn      R7_BANK Rn                                            1   --
STC R6_BANK,Rn
STC R7_BANK,Rn                                                --          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                                                          1   --

                                            Rev. 5.0, 09/03, page 71 of 806
                                            Privileged

Instruction      Operation            Code  Mode            Cycles T Bit

STC.L SR,@Rn    Rn4  Rn, SR  (Rn)   0100nnnn00000011      2  --

STC.L GBR,@Rn   Rn4  Rn, GBR  (Rn)  0100nnnn00010011 --   2  --

STC.L VBR,@Rn   Rn4  Rn, VBR  (Rn)  0100nnnn00100011      2  --

STC.L SSR,@Rn   Rn4  Rn, SSR  (Rn)  0100nnnn00110011      2  --

STC.L SPC,@Rn   Rn4  Rn, SPC  (Rn)  0100nnnn01000011      2  --

STC.L R0_BANK,   Rn4  Rn, R0_BANK  (Rn) 0100nnnn10000011   2  --
           @Rn

STC.L R1_BANK,   Rn4  Rn, R1_BANK  (Rn) 0100nnnn10010011   2  --
           @Rn

STC.L R2_BANK,   Rn4  Rn, R2_BANK  (Rn) 0100nnnn10100011   2  --
           @Rn

STC.L R3_BANK,   Rn4  Rn, R3_BANK  (Rn) 0100nnnn10110011   2  --
           @Rn

STC.L R4_BANK,   Rn4  Rn, R4_BANK  (Rn) 0100nnnn11000011   2  --
           @Rn

STC.L R5_BANK,   Rn4  Rn, R5_BANK  (Rn) 0100nnnn11010011   2  --
           @Rn

STC.L R6_BANK,   Rn4  Rn, R6_BANK  (Rn) 0100nnnn11100011   2  --
           @Rn

STC.L R7_BANK,   Rn4  Rn, R7_BANK  (Rn) 0100nnnn11110011   2  --
           @Rn

STS MACH,Rn      MACH  Rn             0000nnnn00001010 --   1  --

STS MACL,Rn      MACL  Rn             0000nnnn00011010 --   1  --

STS PR,Rn        PR  Rn               0000nnnn00101010 --   1  --

STS.L MACH,@Rn Rn4  Rn, MACH  (Rn)  0100nnnn00000010 --   1  --

STS.L MACL,@Rn Rn4  Rn, MACL  (Rn)  0100nnnn00010010 --   1  --

STS.L PR,@Rn    Rn4  Rn, PR  (Rn)   0100nnnn00100010 --   1  --

TRAPA #imm       PC  SPC, SR  SSR,    11000011iiiiiiii --   8  --
                 imm << 2  TRA,
                 VBR + H'0100  PC

Note: * Number of states before the chip enters the sleep state.

           The table shows the minimum number of clocks required for execution. In practice, the
           number of execution cycles will be increased if there is contention between an instruction
           fetch and a data access, or if the destination register of a load instruction (memory
           register) is also used by the following instruction.

Rev. 5.0, 09/03, page 72 of 806
2.6 DSP Extended-Function Instructions

2.6.1 Introduction
The DSP extended-function instructions are classified into the following three groups:
1. Additional system control instructions for the CPU unit (section 2.6.2, Added CPU System

    Control Instructions)
2. DSP unit memory-register single and double data transfer (section 2.6.3, Single and Double

    Data Transfer for DSP Data Instructions)
3. DSP unit parallel processing (section 2.6.4, DSP Operation Instruction Set)

2.6.2 Added CPU System Control Instructions
The instructions in this class are treated as part of the CPU core functions, and therefore all the
added instructions have a 16-bit code length. All the additional instructions belong to the system
control instruction group. Table 2.26 summarizes the added system instructions.
Control registers--RS, RE, and MOD--have been added to the CPU core to support loop control
and modulo addressing functions, and LDC and STS instructions have been provided for these
registers.
The DSP engine's DSR, A0, X0, X1, Y0, and Y1 registers are treated as system registers such as
STS and LDS instructions are supported for these registers. As digital signal processing operations
usually employ a multi-level nested-loop structure, DSP performance can be improved by means
of a zero-overhead loop control function. SETRC instructions are provided to set the repeat count
in the RC field in SR[27:16]. When an immediate operand type SETRC instruction is executed,
the 8-bit immediate operand data is set in SR[23:16], and 0 is set in the remaining bits, SR[27:24].
When a register operand type SETRC instruction is executed, Rn[11:0] is set in SR[27:16]. The
start address and end address of the repeat loop are set in the RS register and RE register. There
are two ways of setting the addresses: by using an LDC instruction, or by using the LDRS and
LDRE instructions.

                                                                                          Rev. 5.0, 09/03, page 73 of 806
Table 2.26 Added CPU System Control Instructions

Instruction      Instruction Code  Operation             Execu-  T Bit
SETRC #imm                                               tion    --
SETRC Rn         10000010iiiiiiii imm  RC (of SR)        States  --
LDRS @(disp,PC)                                          3       --
LDRE @(disp,PC)  0100nnnn00010100 Rn[11:0]  R C (of SR)  3       --
STC MOD,Rn                                               3       --
STC RS,Rn        10001100dddddddd (disp 2 + PC)  RS    3       --
STC RE,Rn                                                1       --
STS DSR,Rn       10001110dddddddd (disp 2 + PC)  RE    1       --
STS A0,Rn                                                1       --
STS X0,Rn        0000nnnn01010010 MOD  Rn                1       --
STS X1,Rn                                                1       --
STS Y0,Rn        0000nnnn01100010 RS  Rn                 1       --
STS Y1,Rn                                                1       --
STS.L DSR,@-Rn   0000nnnn01110010 RE  Rn                 1       --
STS.L A0,@-Rn                                            1       --
STS.L X0,@-Rn    0000nnnn01101010 DSR  Rn                1       --
STS.L X1,@-Rn                                            1       --
STS.L Y0,@-Rn    0000nnnn01111010 A0  Rn                 1       --
STS.L Y1,@-Rn                                            1       --
STC.L MOD,@-Rn   0000nnnn10001010 X0  Rn                 1       --
STC.L RS,@-Rn                                            1       --
STC.L RE,@-Rn    0000nnnn10011010 X1  Rn                 2       --
LDS.L @Rn+,DSR                                           2       --
LDS.L @Rn+,A0    0000nnnn10101010 Y0  Rn                 2       --
LDS.L @Rn+,X0                                            1       --
LDS.L @Rn+,X1    0000nnnn10111010 Y1  Rn                 1       --
LDS.L @Rn+,Y0                                            1       --
LDS.L @Rn+,Y1    0100nnnn01100010 Rn 4  Rn, DSR  (Rn)  1       --
LDC.L @Rn+,MOD                                           1       --
LDC.L @Rn+,RS    0100nnnn01110010 Rn 4  Rn, A0  (Rn)   1       --
                                                         5
                 0100nnnn10000010 Rn 4  Rn, X0  (Rn)   5

                 0100nnnn10010010 Rn 4  Rn, X1  (Rn)

                 0100nnnn10100010 Rn 4  Rn, Y0  (Rn)

                 0100nnnn10110010 Rn 4  Rn, Y1  (Rn)

                 0100nnnn01010011 Rn 4  Rn, MOD  (Rn)

                 0100nnnn01100011 Rn 4  Rn, RS  (Rn)

                 0100nnnn01110011 Rn 4  Rn, RE  (Rn)

                 0100nnnn01100110 (Rn)  DSR, Rn + 4  Rn

                 0100nnnn01110110 (Rn)  A0, Rn + 4  Rn

                 0100nnnn10000110 (Rn)  X0, Rn + 4  Rn

                 0100nnnn10010110 (Rn)  X1, Rn + 4  Rn

                 0100nnnn10100110 (Rn)  Y0, Rn + 4  Rn

                 0100nnnn10110110 (Rn)  Y1, Rn + 4  Rn

                 0100nnnn01010111 (Rn)  MOD, Rn + 4  Rn

                 0100nnnn01100111 (Rn)  RS, Rn + 4  Rn

Rev. 5.0, 09/03, page 74 of 806
Instruction    Instruction Code  Operation            Execu-  T Bit
LDC.L @Rn+,RE                                         tion    --
LDS Rn,DSR     0100nnnn01110111 (Rn)  RE, Rn + 4  Rn  States  --
LDS Rn,A0                                             5       --
LDS Rn,X0      0100nnnn01101010 Rn  DSR               1       --
LDS Rn,X1                                             1       --
LDS Rn,Y0      0100nnnn01111010 Rn  A0                1       --
LDS Rn,Y1                                             1       --
LDC Rn,MOD     0100nnnn10001010 Rn  X0                1       --
LDC Rn,RS                                             1       --
LDC Rn,RE      0100nnnn10011010 Rn  X1                3       --
                                                      3
               0100nnnn10101010 Rn  Y0                3

               0100nnnn10111010 Rn  Y1

               0100nnnn01011110 Rn  MOD

               0100nnnn01101110 Rn  RS

               0100nnnn01111110 Rn  RE

2.6.3 Single and Double Data Transfer for DSP Data Instructions

The instructions in this class are provided to reduce the program code size for DSP operations. All
the new instructions in this class have a 16-bit code length. Instructions in this class are divided
into two groups: single data transfer instructions and double data transfer instructions. The
operand flexibility of the double data transfer instructions is the same as with the A field in
parallel instruction class data transfer instructions described in section 2.6.4, DSP Operation
Instruction Set. However, conditional load instructions cannot be used with these 16-bit
instructions. In single transfer, the Ax pointer and two address pointers (R2 and R3) are used as
the As pointer, but the Ay pointer is not used. Tables 2.27 and 2.28 list the single and double data
transfer instructions.

With double data transfer group instructions, X memory and Y memory can be accessed in
parallel. The Ax pointer can only be used by X memory access instructions, and the Ay pointer
only by Y memory access instructions. Double data transfer instructions can only access the on-
chip X and Y memory areas. Single data transfer instructions use a 16-bit instruction code, and can
access any memory address space.

Rn (n = 2 to 7) registers are normally used as the Ax, Ay, and As pointers. The pointer names
themselves can be changed with the assembler rename function. The following renaming scheme
is recommended.

R2:As2, R3:As3, R4:Ax0 (As0), R5:Ax1 (As1), R6:Ay0, R7:Ay1, R8:Ix(Is), R9:Iy

                                            Rev. 5.0, 09/03, page 75 of 806
Table 2.27 Double Data Transfer Instructions

Instruction                      Instruction Code  Operation                                Execu-
                                                                                            tion
                                                                                            States DC

X memory     NOPX                1111000*0*0*00** X memory no                               1  --
data         MOVX.W @Ax,Dx                                      operation
transfer                                                                                    1  --
                                 111100A*D*0*01** (Ax)  MSW of Dx,
                                                                0  LSW of Dx

             MOVX.W @Ax+,Dx      111100A*D*0*10** (Ax)  MSW of Dx,                          1  --
                                                                0  LSW of Dx,
                                                                Ax + 2  Ax

             MOVX.W @Ax+Ix,Dx 111100A*D*0*11** (Ax)  MSW of Dx,                             1  --
                                                                             0  LSW of Dx,
                                                                             Ax + Ix  Ax

             MOVX.W Da,@Ax       111100A*D*1*01** MSW of Da  (Ax)                           1  --

             MOVX.W Da,@Ax+      111100A*D*1*10** MSW of Da  (Ax),                          1  --
                                                                Ax + 2  Ax

             MOVX.W Da,@Ax+Ix 111100A*D*1*11** MSW of Da  (Ax),                             1  --
                                                                            Ax + Ix  Ax

Y memory     NOPY                111100*0*0*0**00 Y memory no                               1  --
data         MOVY.W @Ay,Dy                                      operation
transfer                                                                                    1  --
                                 111100*A*D*0**01 (Ay)  MSW of Dy,
                                                                 0  LSW of Dy

             MOVY.W @Ay+,Dy      111100*A*D*0**10 (Ay)  MSW of Dy,                          1  --
                                                                0  LSW of Dy,
                                                                Ay + 2  Ay

             MOVY.W @Ay+Iy,Dy 111100*A*D*0**11 (Ay)  MSW of Dy,                             1  --
                                                                             0  LSW of Dy,
                                                                             Ay + Iy  Ay

             MOVY.W Da,@Ay       111100*A*D*1**01 MSW of Da  (Ay)                           1  --

             MOVY.W Da,@Ay+      111100*A*D*1**10 MSW of Da  (Ay),                          1  --
                                                                Ay + 2  Ay

             MOVY.W Da,@Ay+Iy 111100*A*D*1**11 MSW of Da  (Ay),                             1  --
                                                                            Ay + Iy  Ay

Rev. 5.0, 09/03, page 76 of 806
Table 2.28 Single Data Transfer Instructions

                                                                              Execu-

                                                                              tion    DC

Instruction      Instruction Code  Operation                                  States

MOVS.W @-As,Ds   111101AADDDD0000 As 2  As, (As)                            1       --

                                   MSW of Ds, 0  LSW of Ds

MOVS.W @As,Ds    111101AADDDD0100 (As)  MSW of Ds,                            1       --
                                                0  LSW of Ds

MOVS.W @As+,Ds   111101AADDDD1000 (As)  MSW of Ds,                            1       --

                                   0  LSW of Ds, As + 2  As

MOVS.W @As+Ix,Ds 111101AADDDD1100 (Asc)  MSW of Ds,                           1       --

                                   0  LSW of Ds, As + Ix  As

MOVS.W Ds,@-As*  111101AADDDD0001 As 2  As,                                 1       --
                                                 MSW of Ds  (As)

MOVS.W Ds,@As*   111101AADDDD0101 MSW of Ds  (As)                             1       --

MOVS.W Ds,@As+*  111101AADDDD1001 MSW of Ds  (As),                            1       --
                                                As + 2  As

MOVS.W Ds,@As+Ix* 111101AADDDD1101 MSW of Ds  (As),                           1       --
                                                                 As + Ix  As

MOVS.L @-As,Ds   111101AADDDD0010 As 4  As, (As)  Ds                        1       --

MOVS.L @As,Ds    111101AADDDD0110 (As)  Ds                                    1       --

MOVS.L @As+,Ds   111101AADDDD1010 (As)  Ds, As + 4  As                        1       --

MOVS.L @As+Ix,Ds 111101AADDDD1110 (As)  Ds, As + Ix  As                       1       --

MOVS.L Ds,@-As   111101AADDDD0011 As 4  As, Ds  (As)                        1       --

MOVS.L Ds,@As    111101AADDDD0111 Ds  (As)                                    1       --

MOVS.L Ds,@As+   111101AADDDD1011 Ds  (As), As + 4  As                        1       --

MOVS.L Ds,@As+Ix 111101AADDDD1111 Ds  (As), As + Ix  As                       1       --

Note: * If guard bit registers A0G and A1G are specified in source operand Ds, the data is output
           to the LDB[7:0] bus and the sign bit is copied into the upper bits, [31:8].

                                              Rev. 5.0, 09/03, page 77 of 806
The correspondence between DSP data transfer operands and registers is shown in table 2.29.
CPU core registers are used as a pointer address that indicates a memory address.

Table 2.29 Correspondence between DSP Data Transfer Operands and Registers

     Register       Ax Ix Dx Ay Iy Dy Da As Is Ds

CPU  R0

register R1

     R2 (As2)                                                  Yes

     R3 (As3)                                                  Yes

     R4 (Ax0, As0)  Yes                                        Yes

     R5 (Ax1, As1)  Yes                                        Yes

     R6 (Ay0)                              Yes

     R7 (Ay1)                              Yes

     R8 (Ix, Is)                 Yes                                Yes

     R9 (Iy)                                    Yes

DSP  A0                                                   Yes               Yes

register A1                                               Yes               Yes

     M0                                                                     Yes

     M1                                                                     Yes

     X0                               Yes                                   Yes

     X1                               Yes                                   Yes

     Y0                                              Yes                    Yes

     Y1                                              Yes                    Yes

     A0G                                                                    Yes

     A1G                                                                    Yes

Rev. 5.0, 09/03, page 78 of 806
2.6.4 DSP Operation Instruction Set

DSP operation instructions are instructions for digital signal processing performed by the DSP
unit. These instructions have a 32-bit instruction code, and multiple instructions can be executed
in parallel. The instruction code is divided into an A field and B field; a double data transfer
instruction is specified in the A field, and a single or double data operation instruction in the B
field. Instructions can be specified independently, and are also executed independently. The
function of the A field--that is, the data transfer instruction field--is basically the same as in the
double data transfer instructions described in section 2.6.3, Single and Double Data Transfer for
DSP Data Instructions, but has a special function in load instructions.

B-field data operation instructions are of three kinds: double data operation instructions,
conditional single data operation instructions, and unconditional single data operation instructions.
The formats of the DSP operation instructions are shown in table 2.30. The respective operands
are selected independently from the DSP registers. The correspondence between DSP operation
instruction operands and registers is shown in table 2.31.

Table 2.30 DSP Operation Instruction Formats

Type                                Instruction Formats  Instructions

Double data operation instructions   ALUop. Sx, Sy, Du PADD PMULS,

(6 operands)                         MLTop. Se, Sf, Dg PSUB PMULS

Conditional single 3 operands        ALUop. Sx, Sy, Dz PADD, PAND, POR, PSHA,

data operation                      DCT ALUop. Sx, Sy, Dz PSHL, PSUB, PXOR
instructions                        DCF ALUop. Sx, Sy, Dz

                2 operands           ALUop. Sx, Dz       PCOPY, PDEC, PDMSB,
                                                         PINC,PLDS, PSTS, PNEG
                                    DCT ALUop. Sx, Dz

                                    DCF ALUop. Sx, Dz

                                     ALUop. Sy, Dz

                                    DCT ALUop. Sy, Dz

                                    DCF ALUop. Sy, Dz

                1 operand            ALUop. Dz           PCLR

                                    DCT ALUop. Dz

                                    DCF ALUop. Dz

Unconditional single 3 operands      ALUop. Sx, Sy, Du PADDC, PSUBC, PMULS

data operation                       MLTop. Se, Sf, Dg

instructions    2 operands

                                     ALUop. Sx, Dz       PCMP, PABS, PRND

                                     ALUop. Sy, Dz

                                     ALUop. Sx, Sy

                1 operand            ALUop. Dz           PSHA #imm, PSHL #imm

                                                         Rev. 5.0, 09/03, page 79 of 806
Table 2.31 Correspondence between DSP Instruction Operands and Registers

                 ALU and BPU Operations         Multiply Operations

Register Sx      Sy              Dz   Du   Se   Sf                        Dg

A0  Yes                          Yes  Yes                                 Yes

A1  Yes                          Yes  Yes  Yes  Yes                       Yes

M0               Yes             Yes                                      Yes

M1               Yes             Yes                                      Yes

X0  Yes                          Yes  Yes  Yes  Yes

X1  Yes                          Yes       Yes

Y0               Yes             Yes  Yes  Yes  Yes

Y1               Yes             Yes            Yes

When writing parallel instructions, the B-field instruction is written first, followed by the A-field
instruction. A sample parallel processing program is shown in figure 2.16.

    PADD A0, M0, A0 PMULS X0, Y0, M0 MOVX.W @R4+, X0 MOVY.W @R6+, Y0 [;]

DCF PINC X1, A1                       MOVX.W A0, @R5+R8 MOVY.W @R7+, Y0 [;]

    PCMP X1, M0                       MOVX.W @R4+, X0 [NOPY] [;]

                           Figure 2.16 Sample Parallel Instruction Program

Square brackets mean that the contents can be omitted.

The no operation instructions NOPX and NOPY can be omitted. Table 2.32 gives an overview of
the B field in parallel operation instructions.

A semicolon is the instruction line delimiter, but this can also be omitted. If the semicolon
delimiter is used, the area to the right of the semicolon can be used as a comment field. This has
the same function as with conventional SH tools.

The DSR register condition code bit (DC) is updated on the basis of the result of an unconditional
ALU or shift operation instruction. Conditional instructions do not update the DC bit. Multiply
instructions, also, do not update the DC bit. The DC bit updating conditions are determined by bits
CS0 to CS2 in the DSR register. The DC bit update rules are shown in table 2.33.

Rev. 5.0, 09/03, page 80 of 806
Table 2.32 DSP Operation Instructions

Instruction              Instruction Code  Operation                          Execu-
                                                                              tion
                                                                              States DC

PMULS Se,Sf,Dg 111110********** Se * Sf  Dg (signed)                          1  --

                         0100eeff0000gg00

PADD Sx,Sy,Du 111110********** Sx + Sy  Du                                    1  *
PMULS Se,Sf,Dg 0111eeffxxyygguu Se * Sf  Dg (signed)

PSUB Sx,Sy,Du 111110********** Sx Sy  Du                                    1  *
PMULS Se,Sf,Dg 0110eeffxxyygguu Se * Sf  Dg (signed)

PADD Sx,Sy,Dz 111110********** Sx + Sy  Dz                                    1  *

                         10110001xxyyzzzz

DCT PADD Sx,Sy,Dz 111110********** If DC = 1, Sx + Sy  Dz                     1  *

                         10110010xxyyzzzz If DC = 0, nop

DCF PADD Sx,Sy,Dz 111110********** If DC = 0, Sx + Sy  Dz                     1  *

                         10110011xxyyzzzz If DC = 1, nop

PSUB Sx,Sy,Dz 111110********** Sx Sy  Dz                                    1  *

                         10100001xxyyzzzz

DCT PSUB Sx,Sy,Dz 111110********** If DC = 1, Sx Sy  Dz                     1  --

                         10100010xxyyzzzz If DC = 0, nop

DCF PSUB Sx,Sy,Dz 111110********** If DC = 0, Sx Sy  Dz                     1  --

                         10100011xxyyzzzz If DC = 1, nop

PSHA Sx,Sy,Dz            111110********** If Sy > = 0, Sx << Sy  Dz           1  *
                         1010001xxyyzzzz (arithmetic shift)

                                                         If Sy<0, Sx>>Sy  Dz

DCT PSHA Sx,Sy,Dz 111110********** If DC = 1 & Sy > = 0,                      1  --
                                   10010010xxyyzzzz Sx << Sy  Dz (arithmetic
                                                                   shift)

                                           If DC = 1 & Sy < 0,
                                           Sx >> Sy  Dz

                                           If DC = 0, nop

Note: * See table 2.33.

                                                           Rev. 5.0, 09/03, page 81 of 806
Instruction              Instruction Code  Operation                                    Execu-
                                                                                        tion
                                                                                        States DC

DCF PSHA Sx,Sy,Dz 111110********** If DC = 0 & Sy > = 0,                                1  --
                                   10010011xxyyzzzz Sx << Sy  Dz (arithmetic
                                                                   shift)

                                           If DC = 0 & Sy < 0,
                                           Sx >> Sy  Dz

                                           If DC = 1, nop

PSHL Sx,Sy,Dz            111110**********  If Sy > = 0, Sx << Sy  Dz                    1  *
                         10000001xxyyzzzz  (logical shift)

                                           If Sy < 0, Sx >> Sy  Dz

DCT PSHL Sx,Sy,Dz 111110********** If DC = 1 & Sy > = 0,                                1  --
                                   10000010xxyyzzzz Sx << Sy  Dz (logical shift)
                                                                   If DC = 1 & Sy < 0,
                                                                   Sx >> Sy  Dz

                                           If DC = 0, nop

DCF PSHL Sx,Sy,Dz 111110********** If DC = 0 & Sy > = 0,                                1  --
                                   10000011xxyyzzzz Sx << Sy  Dz (logical shift)
                                                                   If DC = 0 & Sy < 0,
                                                                   Sx >> Sy  Dz

                                           If DC = 1, nop

PCOPY Sx,Dz 111110********** Sx  Dz                                                     1  *

                         11011001xx00zzzz

PCOPY Sy,Dz 111110********** Sy  Dz                                                     1  *

                         1111100100yyzzzz

DCT PCOPY Sx,Dz 111110********** If DC = 1, Sx  Dz                                      1  --

                         11011010xx00zzzz If DC = 0, nop

DCT PCOPY Sy,Dz 111110********** If DC = 1, Sy  Dz                                      1  --

                         1111101000yyzzzz If DC = 0, nop

DCF PCOPY Sx,Dz 111110********** If DC = 0, Sx  Dz                                      1  --

                         11011011xx00zzzz If DC = 1, nop

DCF PCOPY Sy,Dz 111110********** If DC = 0, Sy  Dz                                      1  --

                         1111101100yyzzzz If DC = 1, nop

Note: * See table 2.33.

Rev. 5.0, 09/03, page 82 of 806
Instruction              Instruction Code  Operation          Execu-
                                                              tion
                                                              States DC

PDMSB Sx,Dz 111110********** Sx  Dz normalization count 1                 *

                         10011101xx00zzzz shift value

PDMSB Sy,Dz 111110********** Sx  Dz normalization count 1                 *

                         1011110100yyzzzz shift value

DCT PDMSB Sx,Dz 111110********** If DC = 1, normalization count 1         --

                         10011110xx00zzzz shift value Sx  Dz

                                           If DC = 0, nop

DCT PDMSB Sy,Dz 111110********** If DC = 1, normalization count 1         --

                         1011111000yyzzzz shift value Sy  Dz

                                           If DC = 0, nop

DCF PDMSB Sx,Dz 111110********** If DC = 0, normalization count 1         --

                         10011111xx00zzzz shift value Sx  Dz

                                           If DC = 1, nop

DCF PDMSB Sy,Dz 111110********** If DC = 0, normalization count 1         --

                         1011111100yyzzzz shift value Sy  Dz

                                           If DC = 1, nop

PINC Sx,Dz               111110********** MSW of Sx  Dz       1           *

                         10011001xx00zzzz

PINC Sy,Dz               111110********** MSW of Sy  Dz       1           *

                         1011100100yyzzzz

DCT PINC Sx,Dz           111110********** If DC = 1, MSW of Sx + 1  Dz 1  --

                         10011010xx00zzzz If DC = 0, nop

DCT PINC Sy,Dz           111110********** If DC = 1, MSW of Sy + 1  Dz 1  --

                         1011101000yyzzzz If DC = 0, nop

DCF PINC Sx,Dz           111110********** If DC = 0, MSW of Sx + 1  Dz 1  --

                         10011011xx00zzzz If DC = 1, nop

DCF PINC Sy,Dz           111110********** If DC = 0, MSW of Sy + 1  Dz 1  --

                         1011101100yyzzzz If DC = 1, nop

PNEG Sx,Dz               111110********** 0 Sx  Dz          1           *

                         11001001xx00zzzz

Note: * See table 2.33.

                                                           Rev. 5.0, 09/03, page 83 of 806
Instruction              Instruction Code  Operation             Execu-
                                                                 tion
                                                                 States DC

PNEG Sy,Dz               111110********** 0 Sy  Dz             1  *

                         1110100100yyzzzz

DCT PNEG Sx,Dz           111110********** If DC = 1, 0 Sx  Dz  1  --

                         11001010xx00zzzz If DC = 0, nop

DCT PNEG Sy,Dz           111110********** If DC = 1, 0 Sy  Dz  1  --

                         1110101000yyzzzz If DC = 0, nop

DCF PNEG Sx,Dz           111110********** If DC = 0, 0 Sx  Dz  1  --

                         11001011xx00zzzz If DC = 1, nop

DCF PNEG Sy,Dz           111110********** If DC = 0, 0 Sy  Dz  1  --

                         1110101100yyzzzz If DC = 1, nop

POR Sx,Sy,Dz 111110********** Sx | Sy  Dz                        1  *

                         10110101xxyyzzzz

DCT POR Sx,Sy,Dz 111110********** If DC = 1, Sx | Sy  Dz         1  --

                         10110110xxyyzzzz If DC = 0, nop

DCF POR Sx,Sy,Dz 111110********** If DC = 0, Sx | Sy  Dz         1  --

                         10110111xxyyzzzz If DC = 1, nop

PAND Sx,Sy,Dz 111110********** Sx & Sy  Dz                       1  *

                         10010101xxyyzzzz

DCT PAND Sx,Sy,Dz 111110********** If DC = 1, Sx & Sy  Dz        1  --

                         10010110xxyyzzzz If DC = 0, nop

DCF PAND Sx,Sy,Dz 111110********** If DC = 0, Sx & Sy  Dz        1  --

                         10010111xxyyzzzz If DC = 1, nop

PXOR Sx,Sy,Dz 111110********** Sx ^ Sy  Dz                       1  *

                         10100101xxyyzzzz

DCT PXOR Sx,Sy,Dz 111110********** If DC = 1, Sx ^ Sy  Dz        1  --

                         10100110xxyyzzzz If DC = 0, nop

DCF PXOR Sx,Sy,Dz 111110********** If DC = 1, Sx ^ Sy  Dz        1  --

                         10100111xxyyzzzz If DC = 0, nop

PDEC Sx,Dz               111110********** Sx [39:16] 1  Dz     1  *

                         10001001xx00zzzz

Note: * See table 2.33.

Rev. 5.0, 09/03, page 84 of 806
Instruction              Instruction Code  Operation                  Execu-
                                                                      tion
                                                                      States DC

PDEC Sy,Dz               111110********** Sy [31:16] 1  Dz          1    *

                         1010100100yyzzzz

DCT PDEC Sx,Dz           111110********** If DC = 1, Sx [39:16] 1  Dz 1  --

                         10001010xx00zzzz If DC = 0, nop

DCT PDEC Sy,Dz           111110********** If DC = 1, Sy [31:16] 1  Dz 1  --

                         1010101000yyzzzz If DC = 0, nop

DCF PDEC Sx,Dz           111110********** If DC = 0, Sx [39:16] 1  Dz 1  --

                         10001011xx00zzzz If DC = 1, nop

DCF PDEC Sy,Dz           111110********** If DC = 0, Sy [31:16] 1  Dz 1  --

                         1010101100yyzzzz If DC = 1, nop

PCLR Dz                  111110********** H'00000000  Dz              1    *

                         100011010000zzzz

DCT PCLR Dz              111110********** If DC = 1, H'00000000  Dz 1      --

                         100011100000zzzz If DC = 0, nop

DCF PCLR Dz              111110********** If DC = 0, H'00000000  Dz 1      --

                         100011110000zzzz If DC = 1, nop

PSHA #imm,Dz 111110********** If imm > = 0, Dz << imm  Dz 1                *

                         00010iiiiiiizzzz (arithmetic shift)

                                           If imm<0, Dz>>imm  Dz

PSHL #imm,Dz 111110********** If imm > = 0, Dz << imm  Dz 1                *

                         00000iiiiiiizzzz (logical shift)

                                           If imm < 0, Dz >> imm  Dz

PSTS MACH,Dz 111110********** MACH  Dz                                1    --

                         110011010000zzzz

DCT PSTS MACH,Dz 111110********** If DC = 1, MACH  Dz                 1    --

                         110011100000zzzz

DCF PSTS MACH,Dz 111110********** If DC = 0, MACH  Dz                 1    --

                         110011110000zzzz

PSTS MACL,Dz 111110********** MACL  Dz                                1    --

                         110111010000zzzz

Note: * See table 2.33.

                                                              Rev. 5.0, 09/03, page 85 of 806
Instruction              Instruction Code  Operation             Execu-
                                                                 tion
                                                                 States DC

DCT PSTS MACL,Dz 111110********** If DC = 1, MACL  Dz            1  --

                         110111100000zzzz

DCF PSTS MACL,Dz 111110********** If DC = 0, MACL  Dz            1  --

                         110111110000zzzz

PLDS Dz,MACH 111110********** Dz  MACH                           1  --

                         111011010000zzzz

DCT PLDS Dz,MACH 111110********** If DC = 1, Dz  MACH            1  --

                         111011100000zzzz

DCF PLDS Dz,MACH 111110********** If DC = 0, Dz  MACH            1  --

                         111011110000zzzz

PLDS Dz,MACL 111110********** Dz  MACL                           1  --

                         111111010000zzzz

DCT PLDS Dz,MACL 111110********** If DC = 1, Dz  MACL            1  --

                         111111100000zzzz

DCF PLDS Dz,MACL 111110********** If DC = 0, Dz  MACL            1  --

                         111111110000zzzz

PADDC Sx,Sy,Dz 111110********** Sx + Sy + DC  Dz                 1  Carry

                         10110000xxyyzzzz Carry  DC

PSUBC Sx,Sy,Dz 111110********** Sx Sy DC  Dz                 1  Borrow

PCMP Sx,Sy               10100000xxyyzzzz Borrow  DC             1  *
                         111110********** Sx Sy  DC update*

                         10000100xxyy0000

PABS Sx,Dz               111110********** If Sx < 0, 0 Sx  Dz  1  *

                         10001000xx00zzzz If Sx > = 0, nop

PABS Sy,Dz               111110********** If Sy < 0, 0 Sy  Dz  1  *

                         1010100000yyzzzz If Sx > = 0, nop

PRND Sx,Dz               111110********** Sx + H'00008000  Dz    1  *
                         10011000xx00zzzz LSW of Dz  H'0000

PRND Sy,Dz               111110********** Sy + H'00008000  Dz    1  *

                         1011100000yyzzzz LSW of Dz  H'0000

Note: * See table 2.33.

Rev. 5.0, 09/03, page 86 of 806
Table 2.33 DC Bit Update Definitions

CS [2:0] Condition Mode Description

0 0 0 Carry or borrow      The DC bit is set if an ALU arithmetic operation generates a carry
               mode        or borrow, and is cleared otherwise.

                           When a shift instruction (PSHA or PSHL) is executed, the last bit
                           data shifted out is copied into the DC bit.

                           When an ALU logical operation is executed, the DC bit is always
                           cleared.

0 0 1 Negative value       When an ALU arithmetic operation or arithmetic shift (PSHA)
               mode        operation is executed, the MSB of the result, including the guard
                           bits, is copied into the DC bit.

                           When an ALU logical operation or logical shift (PSHL) operation is
                           executed, the MSB of the result, excluding the guard bits, is copied
                           into the DC bit.

0 1 0 Zero value mode The DC bit is set if the result of an ALU arithmetic or shift operation
                                           is all-zeros, and is cleared otherwise.

0 1 1 Overflow mode        The DC bit is set if the result of an ALU arithmetic operation or
                           arithmetic shift (PSHA) operation exceeds the destination register
                           range, excluding the guard bits, and is cleared otherwise.

                           When an ALU logical operation or logical shift (PSHL) operation is
                           executed, the DC bit is always cleared.

1 0 0 Signed greater-than This mode is similar to signed greater-or-equal mode, but DC is

mode                       cleared if the result is all-zeros.

                           DC = ~{(negative value ^ over-range) | zero value};
                                      In case of arithmetic operation

                           DC = 0; In case of logical operation

1 0 1 Signed greater-or-   If the result of an ALU arithmetic operation or arithmetic shift
               equal mode  (PSHA) operation exceeds the destination register range, including
                           the guard bits (overrange), the definition is the same as in
                           negative value mode. If the result is not over-range, the definition is
                           the negative value mode with the DC bit inverted.

                           When an ALU logical operation or logical shift (PSHL) operation is
                           executed, the DC bit is always cleared.

                           DC = ~(negative value ^ over-range);
                                      In case of arithmetic operation

                           DC = 0 ; In case of logical operation

1 1 0 Reserved

1 1 1 Reserved

                                                                Rev. 5.0, 09/03, page 87 of 806
Conditional Operations and Data Transfer: Some DSP instruction can be executed
conditionally, as described earlier. The specified condition is valid only for the B field of the
instruction, and is not valid for data transfer instructions for which a parallel specification is made.
Examples are shown in figure 2.17.

            DCT PADD X0,Y0,A0 MOVX.W @R4+,X0 MOVY.W A0,@R6+R9 ;
            When condition is True
            Before execution: X0=H'33333333, Y0=H'55555555, A0=H'123456789A,

                                     R4=H'00008000, R6=H'00008233, R9=H'00000004
                                     (R4)=H'1111, (R6)=H'2222
            After execution: X0=H'11110000, Y0=H'55555555, A0=H'FF88888888,
                                     R4=H'00008002, R6=H'00008237, R9=H'00000004
                                     (R4)=H'1111, (R6)=H'3456

            When condition is False
            Before execution: X0=H'33333333, Y0=H'55555555, A0=H'123456789A,

                                     R4=H'00008000, R6=H'00008233, R9=H'00000004
                                     (R4)=H'1111, (R6)=H'2222
            After execution: X0=H'11110000, Y0=H'55555555, A0=H'123456789A,
                                     R4=H'00008002, R6=H'00008237, R9=H'00000004
                                     (R4)=H'1111, (R6)=H'3456
       Figure 2.17 Examples of Conditional Operations and Data Transfer Instructions
Assignment of NOPX and NOPY Instruction Codes: When there is no data transfer instruction
to be parallel-processed simultaneously with a DSP operation instruction, an NOPX or NOPY
instruction can be written as the data transfer instruction, or the instruction can be omitted. The
instruction code is the same whether an NOPX or NOPY instruction is written or the instruction is
omitted. Examples of NOPX and NOPY instruction codes are shown in table 2.34.

Rev. 5.0, 09/03, page 88 of 806
Table 2.34 Examples of NOPX and NOPY Instruction Codes

Instruction                                             Code
PADD X0,Y0,A0 MOVX.W @R4+,X0 MOVY.W @R6+R9,Y0           1111100000001011
                                                        1011000100000111
PADD X0,Y0,A0 NOPX             MOVY.W @R6+R9,Y0         1111100000000011
                                                        1011000100000111
PADD X0,Y0,A0 NOPX             NOPY                     1111100000000000
                                                        1011000100000111
PADD X0,Y0,A0 NOPX                                      1111100000000000
                                                        1011000100000111
PADD X0,Y0,A0                                           1111100000000000
                                                        1011000100000111
               MOVX.W @R4+,X0 MOVY.W @R6+R9,Y0          1111000000001011
                                                        1111000000001000
               MOVX.W @R4+,X0 NOPY                      1111010010001000
                                                        1111000000000011
               MOVS.W @R4+,X0                           1111000000000011
                                                        1111000000000000
               NOPX            MOVY.W @R6+R9,Y0         0000000000001001

                               MOVY.W @R6+R9,Y0

               NOPX            NOPY

NOP

                                                        Rev. 5.0, 09/03, page 89 of 806
Rev. 5.0, 09/03, page 90 of 806
        Section 3 Memory Management Unit (MMU)

3.1 Overview

3.1.1 Features

The SH7729R has an on-chip memory management unit (MMU) that implements address
translation. The SH7729R features a resident translation look-aside buffer (TLB) that caches
information for user-created address translation tables located in external memory. It enables high-
speed translation of virtual addresses into physical addresses. Address translation uses the paging
system and supports two page sizes (1 kbyte and 4 kbytes). The access right to virtual address
space can be set for privileged and user modes to provide memory protection.

3.1.2 Role of MMU

The MMU is a feature designed to make efficient use of physical memory. As shown in figure 3.1,
if a process is smaller in size than the physical memory, the entire process can be mapped onto
physical memory. However, if the process increases in size to the extent that it no longer fits into
physical memory, it becomes necessary to partition the process and to map those parts requiring
execution onto memory as occasion demands (1). Having the process itself consider this mapping
onto physical memory would impose a large burden on the process. To lighten this burden, the
idea of virtual memory was born as a means of performing en bloc mapping onto physical
memory (2). In a virtual memory system, substantially more virtual memory than physical
memory is provided, and the process is mapped onto this virtual memory. Thus a process only has
to consider operation in virtual memory. Mapping from virtual memory to physical memory is
handled by the MMU. The MMU is normally controlled by the operating system, switching
physical memory to allow the virtual memory required by a process to be mapped onto physical
memory in a smooth fashion. Switching of physical memory is carried out via secondary storage,
etc.

The virtual memory system that came into being in this way is particularly effective in a time-
sharing system (TSS) in which a number of processes are running simultaneously (3). If processes
running in a TSS had to take mapping onto virtual memory into consideration while running, it
would not be possible to increase efficiency. Virtual memory is thus used to reduce this load on
the individual processes and so improve efficiency (4). In the virtual memory system, virtual
memory is allocated to each process. The task of the MMU is to perform efficient mapping of
these virtual memory areas onto physical memory. It also has a memory protection feature that
prevents one process from inadvertently accessing another process's physical memory.

When address translation from virtual memory to physical memory is performed using the MMU,
it may occur that the relevant translation information is not recorded in the MMU, with the result
that one process may inadvertently access the virtual memory allocated to another process. In this

                                                                                          Rev. 5.0, 09/03, page 91 of 806
case, the MMU will generate an exception, change the physical memory mapping, and record the
new address translation information.
Although the functions of the MMU could also be implemented by software alone, the need for
translation to be performed by software each time a process accesses physical memory would
result in poor efficiency. For this reason, a buffer for address translation (translation look-aside
buffer: TLB) is provided in hardware to hold frequently used address translation information. The
TLB can be described as a cache for storing address translation information. Unlike cache
memory, however, if address translation fails, that is, if an exception is generated, switching of
address translation information is normally performed by software. This makes it possible for
memory management to be performed flexibly by software.
The MMU has two methods of mapping from virtual memory to physical memory: a paging
method using fixed-length address translation, and a segment method using variable-length
address translation. With the paging method, the unit of translation is a fixed-size address space
(usually of 1 to 64 kbytes) called a page. This LSI uses the paging method.
In the following text, the SH7729R address space in virtual memory is referred to as virtual
address space, and address space in physical memory as physical memory space.

Rev. 5.0, 09/03, page 92 of 806
                                                     Virtual
                                                     memory

                     Process 1            Process 1           MMU  Physical
                                                                   memory
           Physical             Physical
           memory               memory

Process 1

                                (1)                                (2)

                     Process 1            Process 1  Virtual
                                          Process 2  memory

                                                              MMU

                                Physical                           Physical
                                memory                             memory

                     Process 2

                     Process 3            Process 3

                                (3)                                (4)

                     Figure 3.1 MMU Functions

                                                     Rev. 5.0, 09/03, page 93 of 806
3.1.3 SH7729R MMU

Virtual Address Space: The SH7729R uses 32-bit virtual addresses to access a 4-Gbyte virtual
address space that is divided into several areas. Address space mapping is shown in figure 3.2.

(a) Privileged Mode

In privileged mode, there are five areas, P0P4. The P0 and P3 areas are mapped onto physical
address space in page units, in accordance with address translation table information. Write-back
or write-through can be selected for write access by means of a cache control register (CCR)
setting.

Mapping of the P1 area is fixed in physical address space (H'00000000 to H'1FFFFFFF). In the
P1 area, setting a virtual address MSB (bit 31) to 0 generates the corresponding physical address.
P1 area accesses can be cached, and the cache control register (CCR) is set to indicate whether to
cache or not. Write-back or write-through mode can be selected.

Mapping of the P2 area is fixed in physical address space (H'00000000 to H'1FFFFFFF). In the P2
area, setting the top three virtual address bits (bits 31, 30, and 29) to 0 generates the corresponding
physical address. P2 area access cannot be cached.

The P1 and P2 areas are not mapped by the address translation table, so the TLB is not used and
no exceptions such as TLB misses occur. Initialization of MMU control registers, exception
handling routines, and the like should be located in the P1 and P2 areas. Routines that require
high-speed processing should be placed in the P1 area, since it can be cached.

Some peripheral module control registers are located in area 1 of the physical address space. When
the physical address space is not used for address translation, these registers should be located in
the P2 area. When address translation is to be used, set no caching.

The P4 area is used for mapping peripheral module register addresses, etc.

(b) User Mode

In user mode, 2 Gbytes of the virtual address space from H'00000000 to H'7FFFFFFF (area U0)
can be accessed. U0 is mapped onto physical address space in page units, in accordance with
address translation table information. When the DSP bit in CPU status register (SR) is off, 2
Gbytes of the virtual address space from H'80000000 to H'FFFFFFFF cannot be accessed in the
user mode. Attempting to do so creates an address error. Write-back or write-through mode can
be selected for write accesses by means of a cache control register (CCR) setting. When the DSP
bit in CPU status register (SR) is on, a new 16-Mbyte address space, Uxy, is defined from address
H'A5000000 to H'A5FFFFFF for X/Y RAM. This Uxy space is non-cached, fixed physical
address space. Any access to address space beyond U0 and Uxy creates an address error. For
details of the X/Y RAM space, refer to section 6, X/Y Memory.

Rev. 5.0, 09/03, page 94 of 806
H'00000000                                       H'00000000

            2-Gbyte virtual space,                             2-Gbyte virtual space,

            cacheable                   Area P0                cacheable                   Area U0

            (write-back/write-through)                         (write-back/write-through)

H'80000000  0.5-Gbyte fixed physical               H'80000000
                 space, cacheable       Area P1
                                                               Address error
            (write-back/write-through)                         Address error

H'A0000000  0.5-Gbyte fixed                                                                Area Uxy
            physical space,
            non-cacheable               Area P2                                            (Exists only
                                                                                           when
                                                                                           SR.DSP = 1)

H'C0000000 0.5-Gbyte virtual space,

            cacheable                   Area P3

            (write-back/write-through)

H'E0000000  0.5-Gbyte control space,    Area P4
H'FFFFFFFF        non-cacheable                    H'FFFFFFFF

            Privileged mode                                    User mode

            Figure 3.2 Virtual Address Space Mapping

Physical Address Space: The SH7729R supports a 32-bit physical address space, but the upper 3
bits are actually ignored and treated as a shadow. See section 11, Bus State Controller (BSC), for
details.

Address Translation: When the MMU is enabled, the virtual address space is divided into units
called pages. Physical addresses are translated in page units. Address translation tables in external
memory hold information such as the physical address that corresponds to the virtual address and
memory protection codes. When an access to an area other than P4 occurs, if the accessed virtual
address belongs to area P1 or P2 there is no TLB access and the physical address is uniquely
defined. If it belongs to area P0, P3, or U0, the TLB is searched by virtual address and, if that
virtual address is registered in the TLB, the access hits the TLB. The corresponding physical
address and the page control information are read from the TLB and the physical address is
determined.

                                                               Rev. 5.0, 09/03, page 95 of 806
If the virtual address is not registered in the TLB, a TLB miss exception occurs and processing
will shift to the TLB miss handler. In the TLB miss handler, the TLB address translation table in
external memory is searched and the corresponding physical address and the page control
information are registered in the TLB. After returning from the handler, the instruction that caused
the TLB miss is re-executed. When the MMU is enabled, address translation information that
results in a physical address space of H'80000000H'FFFFFFFF should not be registered in the
TLB.

When the MMU is disabled, the virtual address is used directly as the physical address. As the
SH7729R supports a 29-bit address space as the physical address space, the top 3 bits of the
physical address are ignored, and constitute a shadow space (see section 11, Bus State Controller
(BSC)). For example, addresses H'00001000 in the P0 area, H'80001000 in the P1 area,
H'A0001000 in the P2 area, and H'C0001000 in the P3 area are all mapped onto the same physical
address. When access to these addresses is performed with the cache enabled, an address with the
top 3 bits of the physical address masked to 0 is stored in the cache address array to ensure data
congruity.

Single Virtual Memory Mode and Multiple Virtual Memory Mode: There are two virtual
memory modes: single virtual memory mode and multiple virtual memory mode. In single virtual
memory mode, multiple processes run in parallel using the virtual address space exclusively and
the physical address corresponding to a given virtual address is specified uniquely. In multiple
virtual memory mode, multiple processes run in parallel sharing the virtual address space, so a
given virtual address may be translated into different physical addresses depending on the process.
Single or multiple virtual mode is selected by a value set in the MMU control register (MMUCR).
In terms of operation, the only difference between single virtual memory mode and multiple
virtual memory mode is in the TLB address comparison method (see section 3.3.3, TLB Address
Comparison).

Address Space Identifier (ASID): In multiple virtual memory mode, the address space identifier
(ASID) is used to differentiate between processes running in parallel and sharing virtual address
space. The ASID is 8 bits in length and can be set by software setting of the ASID of the currently
running process in the page table entry register high (PTEH) within the MMU. When the process
is switched using the ASID, the TLB does not have to be purged.

In single virtual memory mode, the ASID is used to provide memory protection for processes
running simultaneously and using the virtual address space exclusively (see section 3.4.2, MMU
Software Management).

Rev. 5.0, 09/03, page 96 of 806
3.1.4 Register Configuration

Table 3.1 shows the configuration of the MMU control registers.

Table 3.1 Register Configuration

Name                    Abbreviation R/W Size                    Initial Value*1 Address

Page table entry register high PTEH  R/W Longword                Undefined  H'FFFFFFF0

Page table entry register low PTEL   R/W Longword                Undefined  H'FFFFFFF4

Translation table base  TTB          R/W Longword                Undefined  H'FFFFFFF8

register

TLB exception address   TEA          R/W Longword                Undefined  H'FFFFFFFC

register

MMU control register    MMUCR        R/W Longword                *2         H'FFFFFFE0

Notes: 1. Initialized by a power-on reset or manual reset.
          2. SV bit: Undefined
               Other bits: 0

3.2 Register Description

There are five registers for MMU processing. These registers are located in address space area P4
and can only be accessed from privileged mode by specifying the address.

1. The page table entry register high (PTEH) register residing at address H'FFFFFFF0, which
    consists of a virtual page number (VPN) and ASID. The VPN set is the VPN of the virtual
    address at which the exception is generated in case of an MMU exception or address error
    exception. When the page size is 4 kbytes, the VPN is the upper 20 bits of the virtual address,
    but in this case the upper 22 bits of the virtual address are set. The VPN can also be modified
    by software. As the ASID, software sets the number of the currently executing process. The
    VPN and ASID are recorded in the TLB by the LDTLB instruction.

2. The page table entry register low (PTEL) register residing at address H'FFFFFFF4, and used to
    store the physical page number and page management information to be recorded in the TLB
    by the LDTLB instruction. The contents of this register are only modified in response to a
    software command. (Refer to section 3.4.3, MMU Instruction (LDTLB), and section 3.5,
    MMU Exceptions.)

3. The translation table base register (TTB) residing at address H'FFFFFFF8, which points to the
    base address of the current page table. The software does not set any value in TTB
    automatically. TTB is available to software for general purposes.

4. The TLB exception address register (TEA) residing at address H'FFFFFFFC, which stores the
    virtual address corresponding to a TLB or address error exception. This value remains valid
    until the next exception or interrupt.

                                                                                          Rev. 5.0, 09/03, page 97 of 806
5. The MMU control register (MMUCR) residing at address H'FFFFFFE0, which makes the
    MMU settings described in figure 3.3. Any program that modifies MMUCR should reside in
    the P1 or P2 area.

The MMU registers are shown in figure 3.3.

31                                              10 7        0

31 29 28                            VPN         0     ASID
    000                          PPN
                                         PTEH
31
                                                  10 9 8 7 6 4 3 2 1 0
                                                      0 V* 0 PR*SZ* C* D*SH* 0

                                         PTEL
                                                                                      0

                                         TTB

                                         TTB

31                                                          0

          Virtual address causing MMU exception
                  or address error exception

                                         TEA

31                                              8 7 6543 2 1 0

                                 0              SV 00 RC 0 TF IX AT

                                         MMUCR

  0: Reserved bits. Always read as 0. Writing is ignored. However, 0 should also be
       specified in a write to MMUCR only.

SV: 0: Multiple virtual memory mode
       1: Single virtual memory mode

RC: A 2-bit random counter, automatically updated by hardware according to the
       following rules in the event of an MMU exception. When a TLB miss exception
       occurs, all TLB entry ways corresponding to the virtual address at which the
       exception occurred are checked, and if all ways are valid, 1 is added to RC; if
       there is one or more invalid way, they are set by priority from way 0, in the order:
       way 0, way 1, way 2, way 3. In the event of an MMU exception other than a TLB
       miss exception, the way which caused the exception is set in RC.

TF: TLB flush bit. Write 1 to flush the TLB (clear all valid bits of the TLB to 0). Always
       reads 0.

IX: Index mode bit. When 0, VPN bits 16-12 are used as the TLB index number.
       When 1, the value obtained by EX-ORing ASID bits 4-0 in PTEH and VPN bits
       16-12 is used as the TLB index number.

AT: Address translation bit. Enables/disables the MMU.
       0: MMU disabled
       1: MMU enabled

Note: * Refer to section 3.3, TLB Functions.

    Figure 3.3 MMU Register Contents

Rev. 5.0, 09/03, page 98 of 806
3.3 TLB Functions

3.3.1 Configuration of the TLB

The TLB caches address translation table information located in external memory. The address
translation table stores the physical page number translated from the virtual page number and the
control information for the page, which is the unit of address translation. Figure 3.4 shows the
overall TLB configuration. The TLB is 4-way set associative with 128 entries. There are 32 entries
for each way. Figure 3.5 shows the configuration of virtual addresses and TLB entries.

          Ways 0-3                                     Ways 0-3

Entry 0 VPN(31-17) VPN(11-10) ASID(7-0) V  Entry 0 PPN(28-10) PR(1-0) SZ C D SH
Entry 1                                    Entry 1

Entry 31                                   Entry 31

          Address array                                Data array

          Figure 3.4 Overall Configuration of the TLB

                                                     Rev. 5.0, 09/03, page 99 of 806
        31                                        10 9                    0

                                  VPN                             Offset

                                  Virtual address (1-kbyte page)

        31                                 12 11                          0

                                  VPN                             Offset

                                  Virtual address (4-kbyte page)

(15)        (2)                   (8) (1)         (29)                    (2) (1) (1) (1) (1)
                                                  PPN                     PR SZ C SH D
VPN (31-17) VPN (11-10) ASID V

                                       TLB entry

Legend

VPN: Virtual page number. Upper 22 bits of virtual address for a 1-kbyte page, or upper 20 bits of
         virtual address for a 4-kbyte page. Since VPN bits 16-12 are used as the index number, they
         are not stored in the TLB entry.

ASID: Address space identifier. Indicates the process that can access a virtual page. In single
         virtual memory mode and user mode, or in multiple virtual memory mode, if the SH bit is 0,
         the address is compared with the ASID in PTEH when address comparison is performed.

  SH: Share status bit
         0 = Page not shared between processes
         1 = Page shared between processes

   SZ: Page-size bit
         0 = 1-kbyte page
         1 = 4-kbyte page

     V: Valid bit. Indicates whether entry is valid.
         0 = Invalid
         1 = Valid
         Cleared to 0 by a power-on reset. Not affected by a manual reset.

PPN: Physical page number. Upper 29 bits of physical address. PPN bits 11-10 are not used in
         case of a 4-kbyte page. Attention must be paid to the synonym problem in case of a 1-kbyte
         page (see section 3.4.4, Avoiding Synonym Problems).

  PR: Protection key field. 2-bit field encoded to define the access rights to the page.
         00: Reading only is possible in privileged mode.
         01: Reading/writing is possible in privileged mode.
         10: Reading only is possible in privileged/user mode.
         11: Reading/writing is possible in privileged/user mode.

    C: Cacheable bit. Indicates whether the page is cacheable.
         0: Non-cacheable
         1: Cacheable

    D: Dirty bit. Indicates whether the page has been written to.
         0 = Not written to
         1 = Written to

            Figure 3.5 Virtual Address and TLB Structure

Rev. 5.0, 09/03, page 100 of 806
3.3.2 TLB Indexing

The TLB uses a 4-way set associative scheme, so entries must be selected by index. VPN bits 16
to 12 and ASID bits 4 to 0 in PTEH are used as the index number. The index number can be
generated in two different ways depending on the setting of the IX bit in MMUCR.

1. When IX = 0, VPN bits 1612 alone are used as the index number
2. When IX = 1, VPN bits 1612 are EX-ORed with ASID bits 40 to generate the index number

The second method is used to prevent lowered TLB efficiency that results when multiple
processes run simultaneously in the same virtual address space (multiple virtual memory) and a
specific entry is selected by generating an index number for each process. Figures 3.6 and 3.7
show the indexing schemes.

Virtual address                                                 PTEH register
31
                 17 16 12 11                   0                31              10 7              0

                                                                    VPN                   0 ASID

                                                  Exclusive-OR                 ASID(4-0)

Index

                                                  Ways 0 to 3

0 VPN(31-17) VPN(11-10) ASID(7-0) V PPN(31-10) PR(1-0) SZ C D SH

31                                                                  Data array
                                Address array

                 Figure 3.6 TLB Indexing (IX = 1)

                                                                    Rev. 5.0, 09/03, page 101 of 806
Virtual address

31               17 16 12 11                   0

    Index

                                                  Ways 0 to 3

0 VPN(31-17) VPN(11-10) ASID(7-0) V PPN(28-10) PR(1-0) SZ C D SH

31                                                             Data array
                                Address array

                 Figure 3.7 TLB Indexing (IX = 0)

3.3.3 TLB Address Comparison

A TLB address comparison is performed when an instruction is fetched from a program in
external memory or data in external memory is referenced. The items used in the comparison are
VPN and ASID. The VPN of the virtual address that accesses external memory is compared to the
VPN of the TLB entry selected with the index number. The ASID within the PTEH is compared to
the ASID of the indexed TLB entry. All four ways are searched simultaneously. If the compared
values match, and the indexed TLB entry is valid (V bit = 1), the hit is registered.

It is necessary to have software ensure that TLB hits do not occur simultaneously in more than one
way, as hardware operation is not guaranteed if this occurs. For example, if there are two identical
TLB entries with the same VPN and a setting is made such that a TLB hit is made only by a
process with ASID = H'FF when one is in the shared state (SH = 1) and the other in the non-shared
state (SH = 0), then if the ASID in PTEH is set to H'FF, there is a possibility of simultaneous TLB
hits in both these ways. It is therefore necessary to ensure that this kind of setting is not made by
software.

The object compared varies depending on the page management information (SZ, SH) in the TLB
entry. It also varies depending on whether the system supports multiple virtual memory or single
virtual memory.

The page-size information determines whether VPN (1110) is compared. VPN (1110) is
compared for 1-kbyte pages (SZ = 0) but not for 4-kbyte pages (SZ = 1).

Rev. 5.0, 09/03, page 102 of 806
The sharing information (SH) determines whether PTEH.ASID and the ASID in the TLB entry are
compared. ASIDs are compared when there is no sharing between processes (SH = 0) but not
when there is sharing (SH = 1).

When single virtual memory is supported (MMUCR.SV = 1)