TOSHIBA TX4925

64-Bit TX System RISC
TX49 Family
TMPR4925
Rev. 1.0
R4000/R4400/R5000 are a trademark of MIPS Technologies, Inc.
The information contained herein is subject to change without notice.
The information contained herein is presented only as a guide for the applications of our
products. No responsibility is assumed by TOSHIBA for any infringements of patents or
other rights of the third parties which may result from its use. No license is granted by
implication or otherwise under any patent or patent rights of TOSHIBA or others.
The products described in this document contain components made in the United States
and subject to export control of the U.S. authorities. Diversion contrary to the U.S. law
is prohibited.
TOSHIBA is continually working to improve the quality and reliability of its products.
Nevertheless, semiconductor devices in general can malfunction or fail due to their
inherent electrical sensitivity and vulnerability to physical stress.
It is the responsibility of the buyer, when utilizing TOSHIBA products, to comply with
the standards of safety in making a safe design for the entire system, and to avoid
situations in which a malfunction or failure of such TOSHIBA products could cause loss
of human life, bodily injury or damage to property.
In developing your designs, please ensure that TOSHIBA products are used within
specified operating ranges as set forth in the most recent TOSHIBA products
specifications.
Also, please keep in mind the precautions and conditions set forth in the “Handling
Guide for Semiconductor Devices,” or “TOSHIBA Semiconductor Reliability
Handbook” etc..
The Toshiba products listed in this document are intended for usage in general
electronics applications ( computer, personal equipment, office equipment, measuring
equipment, industrial robotics, domestic appliances, etc.).
These Toshiba products are neither intended nor warranted for usage in equipment that
requires extraordinarily high quality and/or reliability or a malfunction or failure of
which may cause loss of human life or bodily injury (“Unintended Usage”).
Unintended Usage include atomic energy control instruments, airplane or spaceship
instruments, transportation instruments, traffic signal instruments, combustion control
instruments, medical instruments, all types of safety devices, etc.. Unintended Usage of
Toshiba products listed in this document shall be made at the customer’s own risk.
The products described in this document may include products subject to the foreign
exchange and foreign trade laws.
© 2003 TOSHIBA CORPORATION
All Rights Reserved
Preface
Thank you for new or continued patronage of TOSHIBA semiconductor products. This is the 2003
edition of the user’s manual for the TMPR4925 64-bit RISC microprocessor.
This databook is written so as to be accessible to engineers who may be designing a TOSHIBA
microprocessor into their products for the first time. No prior knowledge of this device is assumed.
What we offer here is basic information about the microprocessor, a discussion of the application fields
in which the microprocessor is utilized, and an overview of design methods. On the other hand, the
more experienced designer will find complete technical specifications for this product.
Toshiba continually updates its technical information. Your comments and suggestions concerning this
and other Toshiba documents are sincerely appreciated and may be utilized in subsequent editions. For
updating of the data in this manual, or for additional information about the product appearing in it,
please contact your nearest Toshiba office or authorized Toshiba dealer.
February 2003
Table of Contents
Table of Contents
Handling precautions
TX4925
1. Features ...................................................................................................................................................................1-1
1.1
Outline ............................................................................................................................................................1-1
1.2
Features...........................................................................................................................................................1-2
1.2.1
TX49/H2 Processor Core Features ........................................................................................................1-2
1.2.2
TX4925 Peripheral Circuit Features ......................................................................................................1-3
2. Block Diagram ........................................................................................................................................................2-1
2.1
TX4925 Block Diagram .................................................................................................................................2-1
3. Signals .....................................................................................................................................................................3-1
3.1
Pin Signal Description ....................................................................................................................................3-1
3.1.1
Signals Common to SDRAM and External Bus Interfaces....................................................................3-1
3.1.2
SDRAM Interface Signals .....................................................................................................................3-2
3.1.3
External Interface Signals ......................................................................................................................3-3
3.1.4
DMA Interface Signals ..........................................................................................................................3-5
3.1.5
PCI Interface Signals .............................................................................................................................3-5
3.1.6
Serial I/O Interface Signals ....................................................................................................................3-7
3.1.7
Timer Interface Signals ..........................................................................................................................3-7
3.1.8
Parallel I/O Interface Signals .................................................................................................................3-7
3.1.9
AC-link Interface Signals.......................................................................................................................3-8
3.1.10 Interrupt Signals.....................................................................................................................................3-8
3.1.11 CHI Interface Signals.............................................................................................................................3-8
3.1.12 SPI Interface Signals..............................................................................................................................3-9
3.1.13 NAND Flash Memory Interface Signals................................................................................................3-9
3.1.14 Extended EJTAG Interface Signals........................................................................................................3-9
3.1.15 Clock Signals .......................................................................................................................................3-10
3.1.16 Initialization Signals ............................................................................................................................3-10
3.1.17 Test Signals ..........................................................................................................................................3-11
3.1.18 Power Supply Pins ...............................................................................................................................3-11
3.2
Boot Configuration .......................................................................................................................................3-12
3.3
Pin Multiplexing ...........................................................................................................................................3-16
4. Address Mapping ....................................................................................................................................................4-1
4.1
TX4925 Physical Address Map ......................................................................................................................4-1
4.2
Register Map ..................................................................................................................................................4-2
4.2.1
Addressing .............................................................................................................................................4-2
4.2.2
Ways to Access to Internal Registers .....................................................................................................4-2
4.2.3
Register Map..........................................................................................................................................4-3
5. Configuration Register ............................................................................................................................................5-1
5.1
Outline ............................................................................................................................................................5-1
5.1.1
Detecting G-Bus Timeout ......................................................................................................................5-1
5.2
Register...........................................................................................................................................................5-2
5.2.1
Chip Configuration Register (CCFG) 0xE000......................................................................................5-3
5.2.2
Chip Revision ID Register (REVID) 0xE004 ........................................................................................5-5
5.2.3
Pin Configuration Register (PCFG) 0xE008.........................................................................................5-6
5.2.4
Timeout Error Access Address Register (TOEA) 0xE00C ...................................................................5-8
5.2.5
Power Down Control Register (PDNCTR) 0xE010 .............................................................................5-9
5.2.6
GBUS Arbiter Priority Register (GARBP) 0xE018.............................................................................5-10
5.2.7
Timeout Count Register (TOCNT) 0xE020........................................................................................5-10
5.2.8
DMA Request Control Register (DRQCTR) 0xE024.........................................................................5-11
5.2.9
Clock Control Register (CLKCTR) 0xE028.......................................................................................5-12
5.2.10 GBUS Arbiter Control Register (GARBC) 0xE02C............................................................................5-14
i
Table of Contents
5.2.11
Register Address Mapping Register (RAMP) 0xE030 .......................................................................5-14
6. Clocks......................................................................................................................................................................6-1
6.1
TX4925 Clock Signals....................................................................................................................................6-1
6.2
Power-Down Mode.........................................................................................................................................6-5
6.2.1
Halt Mode and Doze Mode....................................................................................................................6-5
6.2.2
Power Reduction for Peripheral Modules ..............................................................................................6-5
6.2.3
Power-Down Mode................................................................................................................................6-5
6.3
Power-On Sequence .......................................................................................................................................6-6
7. External Bus Controller...........................................................................................................................................7-1
7.1
Features...........................................................................................................................................................7-1
7.2
Block Diagram................................................................................................................................................7-2
7.3
Detailed Explanation ......................................................................................................................................7-3
7.3.1
External Bus Control Register ...............................................................................................................7-3
7.3.2
Global/Boot-up Options.........................................................................................................................7-4
7.3.3
Address Mapping ...................................................................................................................................7-5
7.3.4
External Address Output........................................................................................................................7-6
7.3.5
Data Bus Size.........................................................................................................................................7-7
7.3.6
Access Modes ........................................................................................................................................7-9
7.3.7
Access Timing......................................................................................................................................7-12
7.3.8
Clock Options ......................................................................................................................................7-18
7.3.9
PCMCIA mode ....................................................................................................................................7-19
7.4
Register.........................................................................................................................................................7-23
7.4.1
External Bus Channel Control Register (EBCCRn) 0x9000 (ch. 0), 0x9008 (ch. 1),
0x9010 (ch. 2), 0x9018 (ch. 3), 0x9020 (ch. 4), 0x9028 (ch. 5), 0x9030 (ch. 6), 0x9038 (ch. 7)........7-24
7.4.2
External Bus Base Address Register (EBBARn) 0x9000 (ch. 0), 0x9008 (ch. 1),
0x9010 (ch. 2), 0x9018 (ch. 3), 0x9020 (ch. 4), 0x9028 (ch. 5), 0x9030 (ch. 6), 0x9038 (ch. 7)........7-27
7.5
Timing Diagrams ..........................................................................................................................................7-28
7.5.1
UAE Signal ..........................................................................................................................................7-29
7.5.2
Normal Mode Access (Single, 32-bit Bus) ..........................................................................................7-31
7.5.3
Normal Mode Access (Burst, 32-bit Bus)............................................................................................7-35
7.5.4
Normal Mode Access (Single, 16-bit Bus) ..........................................................................................7-37
7.5.5
Normal Mode Access (Burst, 16-bit Bus)............................................................................................7-41
7.5.6
Normal Mode Access (Single, 8-bit Bus) ............................................................................................7-43
7.5.7
Normal Mode Access (Burst, 8-bit Bus)..............................................................................................7-46
7.5.8
Page Mode Access (Burst, 32-bit Bus) ................................................................................................7-48
7.5.9
External ACK Mode Access (32-bit Bus)............................................................................................7-50
7.5.10 READY Mode Access (32-bit Bus).....................................................................................................7-56
7.6
Flash ROM, SRAM Usage Example ............................................................................................................7-58
8. DMA Controller ......................................................................................................................................................8-1
8.1
Features...........................................................................................................................................................8-1
8.2
Block Diagram................................................................................................................................................8-2
8.3
Detailed Explanation ......................................................................................................................................8-3
8.3.1
Transfer Mode........................................................................................................................................8-3
8.3.2
On-chip Registers...................................................................................................................................8-3
8.3.3
External I/O DMA Transfer Mode.........................................................................................................8-4
8.3.4
Internal I/O DMA Transfer Mode..........................................................................................................8-7
8.3.5
Memory-Memory Copy Mode...............................................................................................................8-7
8.3.6
Memory Fill Transfer Mode...................................................................................................................8-8
8.3.7
Single Address Transfer.........................................................................................................................8-8
8.3.8
Dual Address Transfer .........................................................................................................................8-10
8.3.9
DMA Transfer......................................................................................................................................8-15
8.3.10 Chain DMA Transfer ...........................................................................................................................8-16
8.3.11 Dynamic Chain Operation ...................................................................................................................8-18
8.3.12 Interrupts..............................................................................................................................................8-18
8.3.13 Transfer Stall Detection Function ........................................................................................................8-19
8.3.14 Arbitration Among DMA Channels.....................................................................................................8-19
ii
Table of Contents
8.3.15
Restrictions in Access to PCI Bus........................................................................................................8-20
8.4
DMA Controller Registers............................................................................................................................8-21
8.4.1
DMA Master Control Register (DMMCR) 0xB0A8 ...........................................................................8-22
8.4.2
DMA Channel Control Register (DMCCRn) 0xB018 (ch. 0), 0xB038 (ch. 1), 0xB058 (ch. 2),
0xB078 (ch. 3) .....................................................................................................................................8-24
8.4.3
DMA Channel Status Register (DMCSRn) 0xB01C (ch. 0), 0xB03C (ch. 1), 0xB05C (ch. 2),
0xB07C (ch. 3).....................................................................................................................................8-28
8.4.4
DMA Source Address Register (DMSARn) 0xB004 (ch. 0), 0xB024 (ch. 1), 0xB044 (ch. 2),
0xB064 (ch. 3) .....................................................................................................................................8-30
8.4.5
DMA Destination Address Register (DMDARn) 0xB008 (ch. 0), 0xB028 (ch. 1), 0xB048 (ch. 2),
0xB068 (ch. 3) .....................................................................................................................................8-31
8.4.6
DMA Chain Address Register (DMCHARn) 0xB000 (ch. 0), 0xB020 (ch. 1), 0xB040 (ch. 2),
0xB060 (ch. 3) .....................................................................................................................................8-32
8.4.7
DMA Source Address Increment Register (DMSAIRn) 0xB010 (ch. 0), 0xB030 (ch. 1),
0xB050 (ch. 2), 0xB070 (ch. 3) ...........................................................................................................8-33
8.4.8
DMA Destination Address Increment Register (DMDAIRn), 0xB014 (ch. 0), 0xB034 (ch. 1),
0xB054 (ch. 2), 0xB074 (ch. 3) ...........................................................................................................8-34
8.4.9
DMA Count Register (DMCNTRn) 0xB00C (ch. 0), 0xB02C (ch. 1), 0xB04C (ch. 2),
0xB06C (ch. 3).....................................................................................................................................8-35
8.4.10 DMA Memory Fill Data Register (DMMFDR) 0xB0A4 ....................................................................8-36
8.5
Timing Diagrams ..........................................................................................................................................8-37
8.5.1
Single Address Single Transfer from Memory to I/O (32-bit ROM)...................................................8-37
8.5.2
Single Address Single Transfer from Memory to I/O (16-bit ROM)...................................................8-38
8.5.3
Single Address Single Transfer from I/O to Memory (32-bit SRAM).................................................8-39
8.5.4
Single Address Burst Transfer from Memory to I/O (32-bit ROM) ....................................................8-40
8.5.5
Single Address Burst Transfer from I/O to Memory (32-bit SRAM) ..................................................8-41
8.5.6
Single Address Single Transfer from Memory to I/O (16-bit ROM)...................................................8-43
8.5.7
Single Address Single Transfer from I/O to Memory (16-bit SRAM).................................................8-44
8.5.8
Single Address Single Transfer from Memory to I/O (32-bit Half Speed ROM) ................................8-45
8.5.9
Single Address Single Transfer from I/O to Memory (32-bit Half Speed SRAM) ..............................8-46
8.5.10 Single Address Single Transfer from Memory to I/O (32-bit SRAM).................................................8-47
8.5.11 Single Address Single Transfer from I/O to Memory (32-bit SDRAM)..............................................8-48
8.5.12 Single Address Single Transfer from Memory to I/O of Last Cycle when DMADONE*
Signal is Set to Output .........................................................................................................................8-49
8.5.13 Single Address Single Transfer from Memory to I/O (32-bit SDRAM)..............................................8-50
8.5.14 Single Address Single Transfer from I/O to Memory (32-bit SDRAM)..............................................8-51
8.5.15 External I/O Device – SRAM Dual Address Transfer .........................................................................8-52
8.5.16 External I/O Device – SDRAM Dual Address Transfer ......................................................................8-54
8.5.17 External I/O Device (Non-burst) – SDRAM Dual Address Transfer...................................................8-56
9. SDRAM Controller .................................................................................................................................................9-1
9.1
Characteristics ................................................................................................................................................9-1
9.2
Block Diagram................................................................................................................................................9-2
9.3
Detailed Explanation ......................................................................................................................................9-3
9.3.1
Supported SDRAM Configurations .......................................................................................................9-3
9.3.2
Address Mapping ...................................................................................................................................9-4
9.3.3
Initialization of SDRAM........................................................................................................................9-9
9.3.4
Low Power Consumption Function .....................................................................................................9-10
9.3.5
Bus Errors ............................................................................................................................................9-11
9.3.6
Memory Read and Memory Write .......................................................................................................9-11
9.3.7
Slow Write Burst..................................................................................................................................9-11
9.3.8
Clock Feedback....................................................................................................................................9-11
9.3.9
SyncFlash ®.........................................................................................................................................9-11
9.4
Registers .......................................................................................................................................................9-12
9.4.1
SDRAM Channel Control Register (SDCCR0) 0x8000 (ch. 0), (SDCCR1) 0x8004 (ch. 1),
(SDCCR2) 0x8008 (ch. 2), (SDCCR3) 0x800C (ch. 3).......................................................................9-13
9.4.2
SDRAM Timing Register (SDCTR) 0x8020 .......................................................................................9-15
9.4.3
SDRAM Command Register (SDCCMD) 0x802C .............................................................................9-17
9.4.4
SyncFlash Command Register (SFCMD) 0x8030 ...............................................................................9-18
iii
Table of Contents
9.5
Timing Diagrams ..........................................................................................................................................9-19
9.5.1
Single Read (32-bit Bus)......................................................................................................................9-19
9.5.2
Single Write (32-bit Bus) .....................................................................................................................9-21
9.5.3
Burst Read (32-bit Bus) .......................................................................................................................9-23
9.5.4
Burst Write (32-bit Bus) ......................................................................................................................9-24
9.5.5
Burst Write (32-bit Bus, Slow Write Burst) .........................................................................................9-25
9.5.6
Single Read (16-bit Bus)......................................................................................................................9-26
9.5.7
Single Write (16-bit Bus) .....................................................................................................................9-28
9.5.8
Low Power Consumption and Power Down Mode..............................................................................9-30
9.6
SDRAM Usage Example..............................................................................................................................9-34
10. PCI Controller .......................................................................................................................................................10-1
10.1 Features.........................................................................................................................................................10-1
10.1.1 Overall .................................................................................................................................................10-1
10.1.2 Initiator Function .................................................................................................................................10-1
10.1.3 Target Function ....................................................................................................................................10-1
10.1.4 PCI Arbiter...........................................................................................................................................10-2
10.1.5 PDMAC (PCI DMA Controller)..........................................................................................................10-2
10.2
Block Diagram..............................................................................................................................................10-3
10.3 Detailed Explanation ....................................................................................................................................10-4
10.3.1 Terminology Explanation.....................................................................................................................10-4
10.3.2 On-Chip Register .................................................................................................................................10-4
10.3.3 Supported PCI Bus Commands............................................................................................................10-6
10.3.4 Initiator Access (G-Bus → PCI Bus address conversion)....................................................................10-8
10.3.5 Target Access (PCI Bus → G-Bus Address Conversion)...................................................................10-10
10.3.6 Post Write Function ...........................................................................................................................10-13
10.3.7 Endian Switching Function................................................................................................................10-13
10.3.8 Power Management ...........................................................................................................................10-14
10.3.9 PDMAC (PCI DMA Controller)........................................................................................................10-15
10.3.10 Error Detection, Interrupt Reporting..................................................................................................10-18
10.3.11 PCI Bus Arbiter .................................................................................................................................10-20
10.3.12 PCI Boot ............................................................................................................................................10-22
10.3.13 Set Configuration Space ....................................................................................................................10-22
10.3.14 PCI Clock Signal................................................................................................................................10-22
10.4 PCI Controller Control Register .................................................................................................................10-23
10.4.1 ID Register (PCIID) 0xD000 .............................................................................................................10-25
10.4.2 PCI Status, Command Register (PCISTATUS) 0xD004....................................................................10-26
10.4.3 Class Code, Revision ID Register (PCICCREV) 0xD008 .................................................................10-28
10.4.4 PCI Configuration 1 Register (PCICFG1) 0xD00C...........................................................................10-29
10.4.5 P2G Memory Space 0 PCI Base Address Register (P2GM0PBASE) 0xD010..................................10-30
10.4.6 P2G Memory Space 1 PCI Base Address Register (P2GM1PBASE) 0xD014..................................10-31
10.4.7 P2G Memory Space 2 PCI Base Address Register (P2GM2PBASE) 0xD018..................................10-32
10.4.8 P2G I/O Space PCI Base Address Register (P2GIOPBASE) 0xD01C..............................................10-33
10.4.9 Subsystem ID Register (PCISID) 0xD02C ........................................................................................10-34
10.4.10 Capabilities Pointer Register (PCICAPPTR) 0xD034 .......................................................................10-35
10.4.11 PCI Configuration 2 Register (PCICFG2) 0xD03C...........................................................................10-36
10.4.12 G2P Timeout Count Register (G2PTOCNT) 0xD040 .......................................................................10-37
10.4.13 G2P Configuration Register (G2PCFG) 0xD060..............................................................................10-38
10.4.14 G2P Status Register (G2PSTATUS) 0xD064.....................................................................................10-40
10.4.15 G2P Interrupt Mask Register (G2PMASK) 0xD068 .........................................................................10-41
10.4.16 Satellite Mode PCI Status Register (PCISSTATUS) 0xD088............................................................10-42
10.4.17 PCI Status Interrupt Mask Register (PCIMASK) 0xD08C................................................................10-43
10.4.18 P2G Configuration Register (P2GCFG) 0xD090...............................................................................10-44
10.4.19 P2G Status Register (P2GSTATUS) 0xD094.....................................................................................10-45
10.4.20 P2G Interrupt Mask Register (P2GMASK) 0xD098 .........................................................................10-46
10.4.21 P2G Current Command Register (P2GCCMD) 0xD09C...................................................................10-47
10.4.22 PCI Bus Arbiter Request Port Register (PBAREQPORT) 0xD100...................................................10-48
10.4.23 PCI Bus Arbiter Configuration Register (PBACFG) 0xD104 ...........................................................10-50
10.4.24 PCI Bus Arbiter Status Register (PBASTATUS) 0xD108 .................................................................10-51
iv
Table of Contents
10.4.25
10.4.26
10.4.27
10.4.28
10.4.29
10.4.30
10.4.31
10.4.32
10.4.33
10.4.34
10.4.35
10.4.36
10.4.37
10.4.38
10.4.39
10.4.40
10.4.41
10.4.42
10.4.43
10.4.44
10.4.45
10.4.46
10.4.47
10.4.48
10.4.49
10.4.50
10.4.51
10.4.52
10.4.53
10.4.54
10.4.55
10.4.56
10.4.57
10.4.58
10.4.59
10.4.60
10.4.61
10.4.62
10.4.63
10.4.64
10.4.65
10.4.66
PCI Bus Arbiter Interrupt Mask Register (PBAMASK) 0xD10C .....................................................10-52
PCI Bus Arbiter Broken Master Register (PBABM) 0xD110 ...........................................................10-53
PCI Bus Arbiter Current Request Register (PBACREQ) 0xD114.....................................................10-55
PCI Bus Arbiter Current Grant Register (PBACGNT) 0xD118 ........................................................10-56
PCI Bus Arbiter Current State Register (PBACSTATE) 0xD11C .....................................................10-57
G2P Memory Space 0 G-Bus Base Address Register (G2PM0GBASE) 0xD120.............................10-58
G2P Memory Space 1 G-Bus Base Address Register (G2PM1GBASE) 0xD128.............................10-59
G2P Memory Space 2 G-Bus Base Address Register (G2PM2GBASE) 0xD130.............................10-60
G2P I/O Space G-Bus Base Address Register (G2PIOGBASE) 0xD138 .........................................10-61
G2P Memory Space 0 Address Mask Register (G2PM0MASK) 0xD140.........................................10-62
G2P Memory Space 1 Address Mask Register (G2PM1MASK) 0xD144.........................................10-63
G2P Memory Space 2 Address Mask Register (G2PM2MASK) 0xD148.........................................10-64
G2P I/O Space Address Mask Register (G2PIOMASK) 0xD14C.....................................................10-65
G2P Memory Space 0 PCI Base Address Register (G2PM0PBASE) 0xD150..................................10-66
G2P Memory Space 1 PCI Base Address Register (G2PM1PBASE) 0xD158..................................10-67
G2P Memory Space 2 PCI Base Address Register (G2PM2PBASE) 0xD160..................................10-68
G2P I/O Space PCI Base Address Register (G2PIOPBASE) 0xD168 ..............................................10-69
PCI Controller Configuration Register (PCICCFG) 0xD170 ............................................................10-70
PCI Controller Status Register (PCICSTATUS) 0xD174 ..................................................................10-71
PCI Controller Interrupt Mask Register (PCICMASK) 0xD178 .......................................................10-72
P2G Memory Space 0 G-Bus Base Address Register (P2GM0GBASE) 0xD180.............................10-73
P2G Memory Space 0 Control Register (P2GM0CTR) 0xD184 .......................................................10-74
P2G Memory Space 1 G-Bus Base Address Register (P2GM1GBASE) 0xD188.............................10-75
P2G Memory Space 1 Control Register (P2GM1CTR) 0xD18C ......................................................10-76
P2G Memory Space 2 G-Bus Base Address Register (P2GM2GBASE) 0xD190.............................10-77
P2G Memory Space 2 Control Register (P2GM2CTR) 0xD194 .......................................................10-78
P2G I/O Space G-Bus Base Address Register (P2GIOGBASE) 0xD198 .........................................10-79
P2G I/O Space Control Register (P2GIOCTR) 0xD19C ...................................................................10-80
G2P Configuration Address Register(G2PCFGADRS) 0xD1A0 .....................................................10-81
G2P Configuration Data Register (G2PCFGDATA) 0xD1A4 ...........................................................10-82
G2P Interrupt Acknowledge Data Register (G2PINTACK) 0xD1C8................................................10-83
G2P Special Cycle Data Register (G2PSPC) 0xD1CC......................................................................10-84
Configuration Data 0 Register (PCICDATA0) 0xD1E0 ....................................................................10-85
Configuration Data 1 Register (PCICDATA1) 0xD1E4 ....................................................................10-86
Configuration Data 2 Register (PCICDATA2) 0xD1E8 ....................................................................10-87
Configuration Data 3 Register (PCICDATA3) 0xD1EC....................................................................10-88
PDMAC Chain Address Register (PDMCA) 0xD200 .......................................................................10-89
PDMAC G-Bus Address Register (PDMGA) 0xD204......................................................................10-90
PDMAC PCI Bus Address Register (PDMPA) 0xD208....................................................................10-91
PDMAC Count Register (PDMCTR) 0xD20C..................................................................................10-92
PDMAC Configuration Register (PDMCFG) 0xD210 ......................................................................10-93
PDMAC Status Register (PDMSTATUS) 0xD214 ...........................................................................10-95
10.5 PCI Configuration Space Register..............................................................................................................10-97
10.5.1 Capability ID Register (Cap_ID) 0xDC.............................................................................................10-98
10.5.2 Next Item Pointer Register (Next_Item_Ptr) 0xDD...........................................................................10-99
10.5.3 Power Management Capability Register (PMC) 0xDE ...................................................................10-100
10.5.4 Power Management Control/Status Register (PMCSR) 0xE0 .........................................................10-101
11. Serial I/O Port........................................................................................................................................................11-1
11.1
Features.........................................................................................................................................................11-1
11.2
Block Diagram..............................................................................................................................................11-2
11.3 Detailed Explanation ....................................................................................................................................11-3
11.3.1 Overview..............................................................................................................................................11-3
11.3.2 Data Format .........................................................................................................................................11-3
11.3.3 Serial Clock Generator.........................................................................................................................11-5
11.3.4 Data Reception.....................................................................................................................................11-7
11.3.5 Data Transmission................................................................................................................................11-7
11.3.6 DMA Transfer......................................................................................................................................11-7
11.3.7 Flow Control ........................................................................................................................................11-8
11.3.8 Reception Data Status ..........................................................................................................................11-8
v
Table of Contents
11.3.9
11.3.10
11.3.11
11.3.12
Reception Time Out .............................................................................................................................11-9
Software Reset .....................................................................................................................................11-9
Error Detection/Interrupt Signaling ...................................................................................................11-10
Multi-Controller System ....................................................................................................................11-11
11.4 Registers .....................................................................................................................................................11-12
11.4.1 Line Control Register 0 (SILCR0) 0xF300 (Ch. 0),
Line Control Register 1 (SILCR1) 0xF400 (Ch. 1) ...........................................................................11-13
11.4.2 DMA/Interrupt Control Register 0 (SIDICR0) 0xF304 (Ch. 0),
DMA/Interrupt Control Register 1 (SIDICR1) 0xF404 (Ch. 1).........................................................11-14
11.4.3 DMA/Interrupt Status Register 0 (SIDISR0) 0xF308 (Ch. 0),
DMA/Interrupt Status Register 1 (SIDISR1) 0xF408 (Ch. 1)............................................................11-16
11.4.4 Status Change Interrupt Status Register 0 (SISCISR0) 0xF30C (Ch. 0),
Status Change Interrupt Status Register 1 (SISCISR1) 0xF40C (Ch. 1) ...........................................11-18
11.4.5 FIFO Control Register 0 (SIFCR0) 0xF310 (Ch. 0),
FIFO Control Register 1 (SIFCR1) 0xF410 (Ch. 1) ..........................................................................11-19
11.4.6 Flow Control Register 0 (SIFLCR0) 0xF314 (Ch. 0,
Flow Control Register 1 (SIFLCR1) 0xF414 (Ch. 1) ........................................................................11-20
11.4.7 Baud Rate Control Register 0 (SIBGR0) 0xF318 (Ch. 0),
Baud Rate Control Register 1 (SIBGR1) 0xF418 (Ch. 1)..................................................................11-21
11.4.8 Transmit FIFO Register 0 (SITFIFO0) 0xF31C (Ch. 0),
Transmit FIFO Register 1 (SITFIFO1) 0xF41C (Ch. 1) ....................................................................11-22
11.4.9 Receive FIFO Register 0 (SIRFIFO0) 0xF320 (Ch. 0),
Receive FIFO Register 1 (SIRFIFO1) 0xF420 (Ch. 1) ......................................................................11-23
12. Timer/Counter .......................................................................................................................................................12-1
12.1
Features.........................................................................................................................................................12-1
12.2
Block Diagram..............................................................................................................................................12-2
12.3 Detailed Explanation ....................................................................................................................................12-3
12.3.1 Overview..............................................................................................................................................12-3
12.3.2 Counter Clock ......................................................................................................................................12-3
12.3.3 Counter ................................................................................................................................................12-4
12.3.4 Interval Timer Mode ............................................................................................................................12-4
12.3.5 Pulse Generator Mode..........................................................................................................................12-6
12.3.6 Watchdog Timer Mode ........................................................................................................................12-7
12.4 Registers .......................................................................................................................................................12-9
12.4.1 Timer Control Register n (TMTCRn) TMTCR0 0xF000, TMTCR1 0xF100, TMTCR2 0xF200.....12-10
12.4.2 Timer Interrupt Status Register n (TMTISRn) TMTISR0 0xF004, TMTISR1 0xF104,
TMTISR2 0xF204..............................................................................................................................12-11
12.4.3 Compare Register An (TMCPRAn) TMCPRA0 0xF008, TMCPRA1 0xF108,
TMCPRA2 0xF208............................................................................................................................12-12
12.4.4 Compare Register Bn (TMCPRBn) TMCPRB0 0xF00C, TMCPRB1 0xF10C ................................12-13
12.4.5 Interval Timer Mode Register n (TMITMRn) TMITMR0 0xF010,
TMITMR1 0xF110, TMITMR2 0xF210 ...........................................................................................12-14
12.4.6 Divide Register n (TMCCDRn) TMCCDR0 0xF020, TMCCDR1 0xF120, TMCCDR2 0xF220 ....12-15
12.4.7 Pulse Generator Mode Register n (TMPGMRn) TMPGMR0 0xF030, TMPGMR1 0xF130 ............12-16
12.4.8 Watchdog Timer Mode Register n (TMWTMRn) TMWTMR2 0xF240 ...........................................12-17
12.4.9 Timer Read Register n (TMTRRn) 0xF0F0, TMTRR0 0xF0F0,
TMTRR1 0xF1F0, TMTRR2 0xF2F0 ...............................................................................................12-18
13. Parallel I/O Port.....................................................................................................................................................13-1
13.1
Characteristics ..............................................................................................................................................13-1
13.2
Block Diagram..............................................................................................................................................13-1
13.3 Detailed Description .....................................................................................................................................13-2
13.3.1 Selecting PIO Pins ...............................................................................................................................13-2
13.3.2 General-purpose Parallel Port ..............................................................................................................13-2
13.4 Registers .......................................................................................................................................................13-2
13.4.1 PIO Output Data Register (PIODO) 0xF500 .......................................................................................13-3
13.4.2 PIO Input Data Register (PIODI) 0xF504 ...........................................................................................13-4
13.4.3 PIO Direction Control Register (PIODIR) 0xF508..............................................................................13-5
vi
Table of Contents
13.4.4
PIO Open Drain Control Register (XPI00D) 0xE50C .........................................................................13-6
14. AC-link Controller ................................................................................................................................................14-1
14.1
Features.........................................................................................................................................................14-1
14.2
Configuration................................................................................................................................................14-2
14.3 Functional Description..................................................................................................................................14-3
14.3.1 CODEC Connection.............................................................................................................................14-3
14.3.2 Boot Configuration ..............................................................................................................................14-4
14.3.3 Usage Flow ..........................................................................................................................................14-5
14.3.4 AC-link Start Up ..................................................................................................................................14-7
14.3.5 CODEC Register Access .....................................................................................................................14-8
14.3.6 Sample-data Transmission and Reception ...........................................................................................14-9
14.3.7 GPIO Operation .................................................................................................................................14-14
14.3.8 Interrupt .............................................................................................................................................14-15
14.3.9 AC-link Low-power Mode ................................................................................................................14-15
14.4 Registers .....................................................................................................................................................14-16
14.4.1 ACCTLEN Register 0xF700..............................................................................................................14-17
14.4.2 ACCTLDIS Register 0xF704 ............................................................................................................14-20
14.4.3 ACREGACC Register 0xF708 ..........................................................................................................14-22
14.4.4 ACINTSTS Register 0xF710 .............................................................................................................14-23
14.4.5 ACINTMSTS Register 0xF714 .........................................................................................................14-25
14.4.6 ACINTEN Register 0xF718 ..............................................................................................................14-25
14.4.7 ACINTDIS Register 0xF71C.............................................................................................................14-25
14.4.8 ACSEMAPH Register 0xF720 ..........................................................................................................14-26
14.4.9 ACGPIDAT Register 0xF740 ............................................................................................................14-27
14.4.10 ACGPODAT Register 0xF744...........................................................................................................14-28
14.4.11 ACSLTEN Register 0xF748 ..............................................................................................................14-29
14.4.12 ACSLTDIS Register 0xF74C.............................................................................................................14-31
14.4.13 ACFIFOSTS Register 0xF750 ...........................................................................................................14-32
14.4.14 ACDMASTS Register 0xF780 ..........................................................................................................14-34
14.4.15 ACDMASEL Register 0xF784 ..........................................................................................................14-35
14.4.16 ACAUDODAT Register 0xF7A0, ACSURRDAT Register 0xF7A4.................................................14-36
14.4.17 ACCENTDAT Register 0xF7A8, ACLFEDAT Register 0xF7AC,
ACMODODAT Register 0xF7B8......................................................................................................14-37
14.4.18 ACAUDIDAT Register 0xF7B0 ........................................................................................................14-38
14.4.19 ACMODIDAT Register 0xF7BC.......................................................................................................14-39
14.4.20 ACREVID Register 0xF7FC .............................................................................................................14-40
15. Interrupt Controller................................................................................................................................................15-1
15.1
Characteristics ..............................................................................................................................................15-1
15.2
Block Diagram..............................................................................................................................................15-2
15.3 Detailed Explanation ....................................................................................................................................15-4
15.3.1 Interrupt Sources..................................................................................................................................15-4
15.3.2 Interrupt Request Detection .................................................................................................................15-5
15.3.3 Interrupt Level Assigning ....................................................................................................................15-5
15.3.4 Interrupt Priority Assigning .................................................................................................................15-5
15.3.5 Interrupt Notification ...........................................................................................................................15-6
15.3.6 Clearing Interrupt Requests .................................................................................................................15-7
15.3.7 Interrupt Requests ................................................................................................................................15-7
15.4 Registers .......................................................................................................................................................15-8
15.4.1 Interrupt Detection Enable Register (IRDEN) 0xF600........................................................................15-9
15.4.2 Interrupt Detection Mode Register 0 (IRDM0) 0xF604 ....................................................................15-10
15.4.3 Interrupt Detection Mode Register 1 (IRDM1) 0xF608 ....................................................................15-12
15.4.4 Interrupt Level Register 0 (IRLVL0) 0xF610 ....................................................................................15-14
15.4.5 Interrupt Level Register 1 (IRLVL1) 0xF614 ....................................................................................15-15
15.4.6 Interrupt Level Register 2 (IRLVL2) 0xF618 ....................................................................................15-16
15.4.7 Interrupt Level Register 3 (IRLVL3) 0xF61C ...................................................................................15-17
15.4.8 Interrupt Level Register 4 (IRLVL4) 0xF620 ....................................................................................15-18
15.4.9 Interrupt Level Register 5 (IRLVL5) 0xF624 ....................................................................................15-19
vii
Table of Contents
15.4.10
15.4.11
15.4.12
15.4.13
15.4.14
15.4.15
15.4.16
15.4.17
15.4.18
15.4.19
15.4.20
15.4.21
Interrupt Level Register 6 (IRLVL6) 0xF628 ....................................................................................15-20
Interrupt Level Register 7 (IRLVL7) 0xF62C ...................................................................................15-21
Interrupt Mask Level Register (IRMSK) 0xF640 ..............................................................................15-22
Interrupt Edge Detection Clear Register (IREDC) 0xF660 ...............................................................15-23
Interrupt Pending Register (IRPND) 0xF680 ....................................................................................15-24
Interrupt Current Status Register (IRCS) 0xF6A0 .............................................................................15-27
Interrupt Request Flag Register 0 (IRFLAG0) 0xF510 .....................................................................15-29
Interrupt Request Flag Register 1 (IRFLAG1) 0xF514 .....................................................................15-29
Interrupt Request Polarity Control Register (IRPOL) 0xF518 ..........................................................15-30
Interrupt Request Control Register (IRRCNT) 0xF51C ....................................................................15-30
Interrupt Request Internal Interrupt Mask Register (IRMASKINT) 0xF520 ....................................15-31
Interrupt Request External Interrupt Mask Register (IRMASKEXT) 0xF524 ..................................15-31
16. CHI Module...........................................................................................................................................................16-1
16.1
Characteristics ..............................................................................................................................................16-1
16.2
Block Diagram..............................................................................................................................................16-2
16.3 Detailed Explanation ....................................................................................................................................16-3
16.3.1 Transmitter ...........................................................................................................................................16-3
16.3.2 Receiver ...............................................................................................................................................16-4
16.3.3 Clock and Control Generation .............................................................................................................16-4
16.3.4 DMA Address Generation ...................................................................................................................16-6
16.3.5 Timing Diagram...................................................................................................................................16-8
16.3.6 Interrupts..............................................................................................................................................16-9
16.3.7 Frame Structure and Serial Timing ....................................................................................................16-10
16.3.8 Configurations ...................................................................................................................................16-16
16.4 CHI Registers .............................................................................................................................................16-17
16.4.1 CHI Control Register (CTRL) 0xA800..............................................................................................16-18
16.4.2 CHI Pointer Enable Register (PNTREN) 0xA804............................................................................16-21
16.4.3 CHI Receive Pointer A Register (RXPTRA) 0xA808 .......................................................................16-23
16.4.4 CHI Receive Pointer B Register (RXPTRB) 0xA80C.......................................................................16-24
16.4.5 CHI Transmit Pointer A Register (TXPTRA) 0xA810......................................................................16-25
16.4.6 CHI Transmit Pointer B Register (TXPTRB) 0xA814 ......................................................................16-26
16.4.7 CHI SIZE Register (CHISIZE) 0xA818 ............................................................................................16-27
16.4.8 CHI RX Start Register (RXSTRT) 0xA81C ......................................................................................16-28
16.4.9 CHI TX Start Register (TXSTRT) 0xA820 .......................................................................................16-29
16.4.10 CHI TX Holding Register (CHIHOLD) 0xA824...............................................................................16-30
16.4.11 CHI RX Holding Register (CHIHOLD) 0xA824 ..............................................................................16-31
16.4.12 CHI Clock Register (CHICLOCK) 0xA828 ......................................................................................16-32
16.4.13 HI Interrupt Enable Register (CHIINTE) 0xA82C ............................................................................16-33
16.4.14 CHI Interrupt Status Register (CHIINT) 0xA830..............................................................................16-34
17. Serial Peripheral Interface (SPI)............................................................................................................................17-1
17.1
Characteristics ..............................................................................................................................................17-1
17.2
Block Diagram..............................................................................................................................................17-2
17.3 Detailed Explanation ....................................................................................................................................17-3
17.3.1 Operation mode....................................................................................................................................17-3
17.3.2 Transmitter/Receiver............................................................................................................................17-3
17.3.3 Baud Rate Generator............................................................................................................................17-4
17.3.4 Transfer Format....................................................................................................................................17-5
17.3.5 Inter Frame Space Counter ..................................................................................................................17-6
17.3.6 SPI Buffer Structure.............................................................................................................................17-7
17.3.7 SPI System Errors................................................................................................................................17-7
17.3.8 Interrupts..............................................................................................................................................17-7
17.4 Registers .......................................................................................................................................................17-8
17.4.1 SPI Master Control Register (SPMCR) 0xF800 ..................................................................................17-9
17.4.2 SPI Control Register 0 (SPCR0) 0xF804...........................................................................................17-10
17.4.3 SPI Control Register 1 (SPCR1) 0xF808...........................................................................................17-12
17.4.4 SPI Inter Frame Space Register (SPFS) 0xF80C ...............................................................................17-13
17.4.5 SPI Status Register (SPSR) 0xF814...................................................................................................17-14
viii
Table of Contents
17.4.6
SPI Data Register (SPDR) 0xF818 ....................................................................................................17-16
18. NAND Flash Memory Controller..........................................................................................................................18-1
18.1
Characteristics ..............................................................................................................................................18-1
18.2
Block Diagram..............................................................................................................................................18-1
18.3 Detailed Explanation ....................................................................................................................................18-2
18.3.1 Access to NAND Flash Memory .........................................................................................................18-2
18.3.2 ECC Control ........................................................................................................................................18-4
18.4 Registers .......................................................................................................................................................18-5
18.4.1 NAND Flash Memory Data Transfer Register (NDFDTR) 0xC000 ...................................................18-5
18.4.2 NAND Flash Memory Mode Control Register (NDFMCR) 0xC004 ..................................................18-6
18.4.3 NAND Flash Memory Status Register (NDFSR) 0xC008...................................................................18-7
18.4.4 NAND Flash Memory Interrupt Status Register (NDFISR) 0xC00C..................................................18-8
18.4.5 NAND Flash Memory Interrupt Mask Register (NDFIMR) 0xC010 ..................................................18-9
18.4.6 NAND Flash Memory Strobe Pulse Width Register (NDFSPR) 0xC014 .........................................18-10
18.4.7 NAND Flash Memory Reset Register (NDFRSTR) 0xC018 ............................................................18-11
18.5 Timing Diagrams ........................................................................................................................................18-12
18.5.1 Command and Address Cycle............................................................................................................18-12
18.5.2 Data Read Cycle ................................................................................................................................18-13
18.5.3 Data Write Cycle................................................................................................................................18-15
18.6
Example of Using NAND Flash Memory ..................................................................................................18-16
19. Real Time Clock (RTC).........................................................................................................................................19-1
19.1
Features.........................................................................................................................................................19-1
19.2
Block Diagrams ............................................................................................................................................19-2
19.3 Operations.....................................................................................................................................................19-3
19.3.1 Operation .............................................................................................................................................19-3
19.3.2 Interrupt ...............................................................................................................................................19-3
19.4 Registers .......................................................................................................................................................19-3
19.4.1 RTC Register (High) (RTCHI) 0xF900................................................................................................19-4
19.4.2 RTC Register (Low) (RTCLO) 0xF904 ...............................................................................................19-4
19.4.3 Alarm Register (High) (ALARMHI) 0xF908 ......................................................................................19-5
19.4.4 Alarm Register (Low) (ALARMLO) 0xF90C .....................................................................................19-5
19.4.5 RTC Control Register (RTCCTRL) 0xF910 ........................................................................................19-6
19.4.6 RTC Interrupt Status Register (RTCINT) 0xF914 ...............................................................................19-7
20. Removed................................................................................................................................................................20-1
21. Extended EJTAG Interface....................................................................................................................................21-1
21.1
Extended EJTAG Interface ...........................................................................................................................21-1
21.2 JTAG Boundary Scan Test ...........................................................................................................................21-2
21.2.1 JTAG Controller and Register..............................................................................................................21-2
21.2.2 Instruction Register..............................................................................................................................21-3
21.2.3 Boundary Scan Register.......................................................................................................................21-3
21.2.4 Device ID Register...............................................................................................................................21-6
21.3
Initializing the Extended EJTAG Interface...................................................................................................21-7
22. Electrical Characteristics .......................................................................................................................................22-1
22.1
Absolute Maximum Rating (*1) .....................................................................................................................22-1
22.2
Recommended Operating Conditions (*3)......................................................................................................22-1
22.3 DC Characteristics........................................................................................................................................22-2
22.3.1 DC Characteristics Except for PCI Interface .......................................................................................22-2
22.3.2 DC Characteristics Except for PCI Interface .......................................................................................22-3
22.4 Power Circuit for PLL ..................................................................................................................................22-3
22.4.1 Recommended Circuit for PLL............................................................................................................22-3
22.5 AC Characteristics........................................................................................................................................22-4
22.5.1 MASTERCLK AC Characteristics ......................................................................................................22-4
22.5.2 Power On AC Characteristics ..............................................................................................................22-4
ix
Table of Contents
22.5.3
22.5.4
22.5.5
22.5.6
22.5.7
22.5.8
22.5.9
22.5.10
22.5.11
22.5.12
22.5.13
22.5.14
SDRAM Interface AC Characteristics .................................................................................................22-5
External Bus Interface AC Characteristics...........................................................................................22-6
PCI Interface AC Characteristics (33 MHz) ........................................................................................22-7
DMA Interface AC Characteristics......................................................................................................22-8
Interrupt Interface AC Characteristics .................................................................................................22-9
SIO Interface AC Characteristics.........................................................................................................22-9
Timer Interface AC Characteristics....................................................................................................22-10
PIO Interface AC Characteristics.......................................................................................................22-10
AC-link Interface AC Characteristics ................................................................................................22-11
NAND Flash Memory Interface AC Characteristics .........................................................................22-12
CHI Interface AC Characteristics ......................................................................................................22-13
SPI Interface AC Characteristics .......................................................................................................22-14
23. Pin Layout, Package ..............................................................................................................................................23-1
23.1
Pin Layout ....................................................................................................................................................23-1
23.2
Package.........................................................................................................................................................23-6
Appendix A.
TX49/H2 Core Supplement ..............................................................................................................A-1
A.1
Processor ID ..................................................................................................................................................A-1
A.2
Interrupts........................................................................................................................................................A-1
A.3
Bus Snoop......................................................................................................................................................A-1
A.4
Halt/Doze Mode ............................................................................................................................................A-1
A.5
Memory Access Order...................................................................................................................................A-1
x
Handling Precautions
1 Using Toshiba Semiconductors Safely
1.
Using Toshiba Semiconductors Safely
TOSHIBA are continually working to improve the quality and the reliability of their products.
Nevertheless, semiconductor devices in general can malfunction or fail due to their inherent
electrical sensitivity and vulnerability to physical stress. It is the responsibility of the buyer,
when utilizing TOSHIBA products, to observe standards of safety, and to avoid situations in
which a malfunction or failure of a TOSHIBA product could cause loss of human life, bodily
injury or damage to property.
In developing your designs, please ensure that TOSHIBA products are used within specified
operating ranges as set forth in the most recent products specifications. Also, please keep in mind
the precautions and conditions set forth in the TOSHIBA Semiconductor Reliability Handbook.
The TOSHIBA products listed in this document are intended for usage in general electronics
applications (computer, personal equipment, office equipment, measuring equipment, industrial
robotics, domestic appliances, etc.). These TOSHIBA products are neither intended nor
warranted for usage in equipment that requires extraordinarily high quality and/or reliability or
a malfunction or failure of which may cause loss of human life or bodily injury (“Unintended
Usage”). Unintended Usage include atomic energy control instruments, airplane or spaceship
instruments, transportation instruments, traffic signal instruments, combustion control
instruments, medical instruments, all types of safety devices, etc.. Unintended Usage of
TOSHIBA products listed in this document shall be made at the customer’s own risk.
1-1
1 Using Toshiba Semiconductors Safely
1-2
2 Safety Precautions
2.
Safety Precautions
This section lists important precautions which users of semiconductor devices (and anyone else)
should observe in order to avoid injury and damage to property, and to ensure safe and correct
use of devices.
Please be sure that you understand the meanings of the labels and the graphic symbol described
below before you move on to the detailed descriptions of the precautions.
[Explanation of labels]
Indicates an imminently hazardous situation which will result in death or
serious injury if you do not follow instructions.
Indicates a potentially hazardous situation which could result in death or
serious injury if you do not follow instructions.
Indicates a potentially hazardous situation which if not avoided, may
result in minor injury or moderate injury.
[Explanation of graphic symbol]
Graphic symbol
Meaning
Indicates that caution is required (laser beam is dangerous to eyes).
2-1
2 Safety Precautions
2.1
General Precautions regarding Semiconductor Devices
Do not use devices under conditions exceeding their absolute maximum ratings (e.g. current, voltage, power dissipation or
temperature).
This may cause the device to break down, degrade its performance, or cause it to catch fire or explode resulting in injury.
Do not insert devices in the wrong orientation.
Make sure that the positive and negative terminals of power supplies are connected correctly. Otherwise the rated maximum
current or power dissipation may be exceeded and the device may break down or undergo performance degradation, causing it
to catch fire or explode and resulting in injury.
When power to a device is on, do not touch the device’s heat sink.
Heat sinks become hot, so you may burn your hand.
Do not touch the tips of device leads.
Because some types of device have leads with pointed tips, you may prick your finger.
When conducting any kind of evaluation, inspection or testing, be sure to connect the testing equipment’s electrodes or probes to
the pins of the device under test before powering it on.
Otherwise, you may receive an electric shock causing injury.
Before grounding an item of measuring equipment or a soldering iron, check that there is no electrical leakage from it.
Electrical leakage may cause the device which you are testing or soldering to break down, or could give you an electric shock.
Always wear protective glasses when cutting the leads of a device with clippers or a similar tool.
If you do not, small bits of metal flying off the cut ends may damage your eyes.
2-2
2 Safety Precautions
2.2
2.2.1
Precautions Specific to Each Product Group
Optical semiconductor devices
When a visible semiconductor laser is operating, do not look directly into the laser beam or look through the optical system.
This is highly likely to impair vision, and in the worst case may cause blindness.
If it is necessary to examine the laser apparatus, for example to inspect its optical characteristics, always wear the appropriate
type of laser protective glasses as stipulated by IEC standard IEC825-1.
Ensure that the current flowing in an LED device does not exceed the device’s maximum rated current.
This is particularly important for resin-packaged LED devices, as excessive current may cause the package resin to blow up,
scattering resin fragments and causing injury.
When testing the dielectric strength of a photocoupler, use testing equipment which can shut off the supply voltage to the
photocoupler. If you detect a leakage current of more than 100 µA, use the testing equipment to shut off the photocoupler’s
supply voltage; otherwise a large short-circuit current will flow continuously, and the device may break down or burst into
flames, resulting in fire or injury.
When incorporating a visible semiconductor laser into a design, use the device’s internal photodetector or a separate
photodetector to stabilize the laser’s radiant power so as to ensure that laser beams exceeding the laser’s rated radiant power
cannot be emitted.
If this stabilizing mechanism does not work and the rated radiant power is exceeded, the device may break down or the
excessively powerful laser beams may cause injury.
2.2.2
Power devices
Never touch a power device while it is powered on. Also, after turning off a power device, do not touch it until it has thoroughly
discharged all remaining electrical charge.
Touching a power device while it is powered on or still charged could cause a severe electric shock, resulting in death or serious
injury.
When conducting any kind of evaluation, inspection or testing, be sure to connect the testing equipment’s electrodes or probes to
the device under test before powering it on.
When you have finished, discharge any electrical charge remaining in the device.
Connecting the electrodes or probes of testing equipment to a device while it is powered on may result in electric shock, causing
injury.
2-3
2 Safety Precautions
Do not use devices under conditions which exceed their absolute maximum ratings (current, voltage, power dissipation,
temperature etc.).
This may cause the device to break down, causing a large short-circuit current to flow, which may in turn cause it to catch fire or
explode, resulting in fire or injury.
Use a unit which can detect short-circuit currents and which will shut off the power supply if a short-circuit occurs.
If the power supply is not shut off, a large short-circuit current will flow continuously, which may in turn cause the device to catch
fire or explode, resulting in fire or injury.
When designing a case for enclosing your system, consider how best to protect the user from shrapnel in the event of the device
catching fire or exploding.
Flying shrapnel can cause injury.
When conducting any kind of evaluation, inspection or testing, always use protective safety tools such as a cover for the device.
Otherwise you may sustain injury caused by the device catching fire or exploding.
Make sure that all metal casings in your design are grounded to earth.
Even in modules where a device’s electrodes and metal casing are insulated, capacitance in the module may cause the
electrostatic potential in the casing to rise.
Dielectric breakdown may cause a high voltage to be applied to the casing, causing electric shock and injury to anyone touching
it.
When designing the heat radiation and safety features of a system incorporating high-speed rectifiers, remember to take the
device’s forward and reverse losses into account.
The leakage current in these devices is greater than that in ordinary rectifiers; as a result, if a high-speed rectifier is used in an
extreme environment (e.g. at high temperature or high voltage), its reverse loss may increase, causing thermal runaway to occur.
This may in turn cause the device to explode and scatter shrapnel, resulting in injury to the user.
A design should ensure that, except when the main circuit of the device is active, reverse bias is applied to the device gate while
electricity is conducted to control circuits, so that the main circuit will become inactive.
Malfunction of the device may cause serious accidents or injuries.
When conducting any kind of evaluation, inspection or testing, either wear protective gloves or wait until the device has cooled
properly before handling it.
Devices become hot when they are operated. Even after the power has been turned off, the device will retain residual heat which
may cause a burn to anyone touching it.
2.2.3
Bipolar ICs (for use in automobiles)
If your design includes an inductive load such as a motor coil, incorporate diodes or similar devices into the design to prevent
negative current from flowing in.
The load current generated by powering the device on and off may cause it to function erratically or to break down, which could in
turn cause injury.
Ensure that the power supply to any device which incorporates protective functions is stable.
If the power supply is unstable, the device may operate erratically, preventing the protective functions from working correctly. If
protective functions fail, the device may break down causing injury to the user.
2-4
3 General Safety Precautions and Usage Considerations
3.
General Safety Precautions and Usage Considerations
This section is designed to help you gain a better understanding of semiconductor devices, so as
to ensure the safety, quality and reliability of the devices which you incorporate into your
designs.
3.1
3.1.1
From Incoming to Shipping
Electrostatic discharge (ESD)
When handling individual devices (which are not yet mounted on a printed
circuit board), be sure that the environment is protected against
electrostatic electricity. Operators should wear anti-static clothing, and
containers and other objects which come into direct contact with devices
should be made of anti-static materials and should be grounded to earth via
an 0.5- to 1.0-MΩ protective resistor.
Please follow the precautions described below; this is particularly important for devices which are
marked “Be careful of static.”.
(1) Work environment
• When humidity in the working environment decreases, the human body and other insulators
can easily become charged with static electricity due to friction. Maintain the recommended
humidity of 40% to 60% in the work environment, while also taking into account the fact that
moisture-proof-packed products may absorb moisture after unpacking.
• Be sure that all equipment, jigs and tools in the working area are grounded to earth.
• Place a conductive mat over the floor of the work area, or take other appropriate measures, so
that the floor surface is protected against static electricity and is grounded to earth. The
surface resistivity should be 104 to 108 Ω/sq and the resistance between surface and ground, 7.5
× 105 to 108 Ω
• Cover the workbench surface also with a conductive mat (with a surface resistivity of 104 to
108 Ω/sq, for a resistance between surface and ground of 7.5 × 105 to 108 Ω) . The purpose of this
is to disperse static electricity on the surface (through resistive components) and ground it to
earth. Workbench surfaces must not be constructed of low-resistance metallic materials that
allow rapid static discharge when a charged device touches them directly.
• Pay attention to the following points when using automatic equipment in your workplace:
(a) When picking up ICs with a vacuum unit, use a conductive rubber fitting on the end of the
pick-up wand to protect against electrostatic charge.
(b) Minimize friction on IC package surfaces. If some rubbing is unavoidable due to the
device’s mechanical structure, minimize the friction plane or use material with a small
friction coefficient and low electrical resistance. Also, consider the use of an ionizer.
(c) In sections which come into contact with device lead terminals, use a material which
dissipates static electricity.
(d) Ensure that no statically charged bodies (such as work clothes or the human body) touch
the devices.
3-1
3 General Safety Precautions and Usage Considerations
(e) Make sure that sections of the tape carrier which come into contact with installation
devices or other electrical machinery are made of a low-resistance material.
(f)
Make sure that jigs and tools used in the assembly process do not touch devices.
(g) In processes in which packages may retain an electrostatic charge, use an ionizer to
neutralize the ions.
• Make sure that CRT displays in the working area are protected against static charge, for
example by a VDT filter. As much as possible, avoid turning displays on and off. Doing so can
cause electrostatic induction in devices.
• Keep track of charged potential in the working area by taking periodic measurements.
• Ensure that work chairs are protected by an anti-static textile cover and are grounded to the
floor surface by a grounding chain. (Suggested resistance between the seat surface and
grounding chain is 7.5 × 105 to 1012Ω.)
• Install anti-static mats on storage shelf surfaces. (Suggested surface resistivity is 104 to 108
Ω/sq; suggested resistance between surface and ground is 7.5 × 105 to 108 Ω.)
• For transport and temporary storage of devices, use containers (boxes, jigs or bags) that are
made of anti-static materials or materials which dissipate electrostatic charge.
• Make sure that cart surfaces which come into contact with device packaging are made of
materials which will conduct static electricity, and verify that they are grounded to the floor
surface via a grounding chain.
• In any location where the level of static electricity is to be closely controlled, the ground
resistance level should be Class 3 or above. Use different ground wires for all items of
equipment which may come into physical contact with devices.
(2) Operating environment
• Operators must wear anti-static clothing and conductive shoes
(or a leg or heel strap).
• Operators must wear a wrist strap grounded to earth via a
resistor of about 1 MΩ.
• Soldering irons must be grounded from iron tip to earth, and must be used only at low voltages
(6 V to 24 V).
• If the tweezers you use are likely to touch the device terminals, use anti-static tweezers and in
particular avoid metallic tweezers. If a charged device touches a low-resistance tool, rapid
discharge can occur. When using vacuum tweezers, attach a conductive chucking pat to the tip,
and connect it to a dedicated ground used especially for anti-static purposes (suggested
resistance value: 104 to 108 Ω).
• Do not place devices or their containers near sources of strong electrical fields (such as above a
CRT).
3-2
3 General Safety Precautions and Usage Considerations
• When storing printed circuit boards which have devices mounted on them, use a board
container or bag that is protected against static charge. To avoid the occurrence of static charge
or discharge due to friction, keep the boards separate from one other and do not stack them
directly on top of one another.
• Ensure, if possible, that any articles (such as clipboards) which are brought to any location
where the level of static electricity must be closely controlled are constructed of anti-static
materials.
• In cases where the human body comes into direct contact with a device, be sure to wear antistatic finger covers or gloves (suggested resistance value: 108 Ω or less).
• Equipment safety covers installed near devices should have resistance ratings of 109 Ω or less.
• If a wrist strap cannot be used for some reason, and there is a possibility of imparting friction
to devices, use an ionizer.
• The transport film used in TCP products is manufactured from materials in which static
charges tend to build up. When using these products, install an ionizer to prevent the film from
being charged with static electricity. Also, ensure that no static electricity will be applied to the
product’s copper foils by taking measures to prevent static occuring in the peripheral
equipment.
3.1.2
Vibration, impact and stress
Handle devices and packaging materials with care. To avoid damage
to devices, do not toss or drop packages. Ensure that devices are not
subjected to mechanical vibration or shock during transportation.
Ceramic package devices and devices in canister-type packages which
have empty space inside them are subject to damage from vibration
and shock because the bonding wires are secured only at their ends.
Vibration
Plastic molded devices, on the other hand, have a relatively high level of resistance to vibration
and mechanical shock because their bonding wires are enveloped and fixed in resin. However,
when any device or package type is installed in target equipment, it is to some extent susceptible
to wiring disconnections and other damage from vibration, shock and stressed solder junctions.
Therefore when devices are incorporated into the design of equipment which will be subject to
vibration, the structural design of the equipment must be thought out carefully.
If a device is subjected to especially strong vibration, mechanical shock or stress, the package or
the chip itself may crack. In products such as CCDs which incorporate window glass, this could
cause surface flaws in the glass or cause the connection between the glass and the ceramic to
separate.
Furthermore, it is known that stress applied to a semiconductor device through the package
changes the resistance characteristics of the chip because of piezoelectric effects. In analog circuit
design attention must be paid to the problem of package stress as well as to the dangers of
vibration and shock as described above.
3-3
3 General Safety Precautions and Usage Considerations
3.2
3.2.1
Storage
General storage
• Avoid storage locations where devices will be exposed to moisture or direct sunlight.
• Follow the instructions printed on the device cartons regarding
transportation and storage.
• The storage area temperature should be kept within a
Humidity:
Temperature:
temperature range of 5°C to 35°C, and relative humidity
should be maintained at between 45% and 75%.
• Do not store devices in the presence of harmful (especially
corrosive) gases, or in dusty conditions.
• Use storage areas where there is minimal temperature fluctuation. Rapid temperature changes
can cause moisture to form on stored devices, resulting in lead oxidation or corrosion. As a
result, the solderability of the leads will be degraded.
• When repacking devices, use anti-static containers.
• Do not allow external forces or loads to be applied to devices while they are in storage.
• If devices have been stored for more than two years, their electrical characteristics should be
tested and their leads should be tested for ease of soldering before they are used.
3.2.2
Moisture-proof packing
Moisture-proof packing should be handled with care. The handling
procedure specified for each packing type should be followed scrupulously.
If the proper procedures are not followed, the quality and reliability of
devices may be degraded. This section describes general precautions for
handling moisture-proof packing. Since the details may differ from device
to device, refer also to the relevant individual datasheets or databook.
(1) General precautions
Follow the instructions printed on the device cartons regarding transportation and storage.
• Do not drop or toss device packing. The laminated aluminum material in it can be rendered
ineffective by rough handling.
• The storage area temperature should be kept within a temperature range of 5°C to 30°C, and
relative humidity should be maintained at 90% (max). Use devices within 12 months of the
date marked on the package seal.
3-4
3 General Safety Precautions and Usage Considerations
• If the 12-month storage period has expired, or if the 30% humidity indicator shown in Figure 1
is pink when the packing is opened, it may be advisable, depending on the device and packing
type, to back the devices at high temperature to remove any moisture. Please refer to the table
below. After the pack has been opened, use the devices in a 5°C to 30°C. 60% RH environment
and within the effective usage period listed on the moisture-proof package. If the effective
usage period has expired, or if the packing has been stored in a high-humidity environment,
bake the devices at high temperature.
Packing
Moisture removal
Tray
If the packing bears the “Heatproof” marking or indicates the maximum temperature which it can
withstand, bake at 125°C for 20 hours. (Some devices require a different procedure.)
Tube
Transfer devices to trays bearing the “Heatproof” marking or indicating the temperature which
they can withstand, or to aluminum tubes before baking at 125°C for 20 hours.
Tape
Deviced packed on tape cannot be baked and must be used within the effective usage period
after unpacking, as specified on the packing.
• When baking devices, protect the devices from static electricity.
• Moisture indicators can detect the approximate humidity level at a standard temperature of
25°C. 6-point indicators and 3-point indicators are currently in use, but eventually all
indicators will be 3-point indicators.
HUMIDITY INDICATOR
60%
50%
30%
20%
10%
HUMIDITY INDICATOR
40
30
DANGER IF PINK
DANGER IF PINK
CHANGE DESICCANT
40%
20
READ AT LAVENDER
BETWEEN PINK & BLUE
READ AT LAVENDER
BETWEEN PINK & BLUE
(a) 6-point indicator
(b) 3-point indicator
Figure 1 Humidity indicator
3-5
3 General Safety Precautions and Usage Considerations
3.3
Design
Care must be exercised in the design of electronic equipment to achieve the desired reliability. It
is important not only to adhere to specifications concerning absolute maximum ratings and
recommended operating conditions, it is also important to consider the overall environment in
which equipment will be used, including factors such as the ambient temperature, transient
noise and voltage and current surges, as well as mounting conditions which affect device
reliability. This section describes some general precautions which you should observe when
designing circuits and when mounting devices on printed circuit boards.
For more detailed information about each product family, refer to the relevant individual
technical datasheets available from Toshiba.
3.3.1
Absolute maximum ratings
Do not use devices under conditions in which their absolute maximum
ratings (e.g. current, voltage, power dissipation or temperature) will be
exceeded. A device may break down or its performance may be degraded,
causing it to catch fire or explode resulting in injury to the user.
The absolute maximum ratings are rated values which must not be
exceeded during operation, even for an instant. Although absolute
maximum ratings differ from product to product, they essentially
concern the voltage and current at each pin, the allowable power
dissipation, and the junction and storage temperatures.
If the voltage or current on any pin exceeds the absolute maximum
rating, the device’s internal circuitry can become degraded. In the worst case, heat generated in
internal circuitry can fuse wiring or cause the semiconductor chip to break down.
If storage or operating temperatures exceed rated values, the package seal can deteriorate or the
wires can become disconnected due to the differences between the thermal expansion coefficients
of the materials from which the device is constructed.
3.3.2
Recommended operating conditions
The recommended operating conditions for each device are those necessary to guarantee that the
device will operate as specified in the datasheet.
If greater reliability is required, derate the device’s absolute maximum ratings for voltage,
current, power and temperature before using it.
3.3.3
Derating
When incorporating a device into your design, reduce its rated absolute maximum voltage,
current, power dissipation and operating temperature in order to ensure high reliability.
Since derating differs from application to application, refer to the technical datasheets available
for the various devices used in your design.
3.3.4
Unused pins
If unused pins are left open, some devices can exhibit input instability problems, resulting in
malfunctions such as abrupt increase in current flow. Similarly, if the unused output pins on a
device are connected to the power supply pin, the ground pin or to other output pins, the IC may
malfunction or break down.
Since the details regarding the handling of unused pins differ from device to device and from pin
3-6
3 General Safety Precautions and Usage Considerations
to pin, please follow the instructions given in the relevant individual datasheets or databook.
CMOS logic IC inputs, for example, have extremely high impedance. If an input pin is left open,
it can easily pick up extraneous noise and become unstable. In this case, if the input voltage level
reaches an intermediate level, it is possible that both the P-channel and N-channel transistors
will be turned on, allowing unwanted supply current to flow. Therefore, ensure that the unused
input pins of a device are connected to the power supply (Vcc) pin or ground (GND) pin of the
same device. For details of what to do with the pins of heat sinks, refer to the relevant technical
datasheet and databook.
3.3.5
Latch-up
Latch-up is an abnormal condition inherent in CMOS devices, in which Vcc gets shorted to
ground. This happens when a parasitic PN-PN junction (thyristor structure) internal to the
CMOS chip is turned on, causing a large current of the order of several hundred mA or more to
flow between Vcc and GND, eventually causing the device to break down.
Latch-up occurs when the input or output voltage exceeds the rated value, causing a large
current to flow in the internal chip, or when the voltage on the Vcc (Vdd) pin exceeds its rated
value, forcing the internal chip into a breakdown condition. Once the chip falls into the latch-up
state, even though the excess voltage may have been applied only for an instant, the large
current continues to flow between Vcc (Vdd) and GND (Vss). This causes the device to heat up
and, in extreme cases, to emit gas fumes as well. To avoid this problem, observe the following
precautions:
(1) Do not allow voltage levels on the input and output pins either to rise above Vcc (Vdd) or to
fall below GND (Vss). Also, follow any prescribed power-on sequence, so that power is applied
gradually or in steps rather than abruptly.
(2) Do not allow any abnormal noise signals to be applied to the device.
(3) Set the voltage levels of unused input pins to Vcc (Vdd) or GND (Vss).
(4) Do not connect output pins to one another.
3.3.6
Input/Output protection
Wired-AND configurations, in which outputs are connected together, cannot be used, since this
short-circuits the outputs. Outputs should, of course, never be connected to Vcc (Vdd) or GND
(Vss).
Furthermore, ICs with tri-state outputs can undergo performance degradation if a shorted output
current is allowed to flow for an extended period of time. Therefore, when designing circuits,
make sure that tri-state outputs will not be enabled simultaneously.
3.3.7
Load capacitance
Some devices display increased delay times if the load capacitance is large. Also, large charging
and discharging currents will flow in the device, causing noise. Furthermore, since outputs are
shorted for a relatively long time, wiring can become fused.
Consult the technical information for the device being used to determine the recommended load
capacitance.
3-7
3 General Safety Precautions and Usage Considerations
3.3.8
Thermal design
The failure rate of semiconductor devices is greatly increased as operating temperatures
increase. As shown in Figure 2, the internal thermal stress on a device is the sum of the ambient
temperature and the temperature rise due to power dissipation in the device. Therefore, to
achieve optimum reliability, observe the following precautions concerning thermal design:
(1) Keep the ambient temperature (Ta) as low as possible.
(2) If the device’s dynamic power dissipation is relatively large, select the most appropriate
circuit board material, and consider the use of heat sinks or of forced air cooling. Such
measures will help lower the thermal resistance of the package.
(3) Derate the device’s absolute maximum ratings to minimize thermal stress from power
dissipation.
θja = θjc + θca
θja = (Tj–Ta) / P
θjc = (Tj–Tc) / P
θca = (Tc–Ta) / P
in which θja = thermal resistance between junction and surrounding air (°C/W)
θjc = thermal resistance between junction and package surface, or internal thermal
resistance (°C/W)
θca = thermal resistance between package surface and surrounding air, or external
thermal resistance (°C/W)
Tj = junction temperature or chip temperature (°C)
Tc = package surface temperature or case temperature (°C)
Ta = ambient temperature (°C)
P = power dissipation (W)
Ta
θca
Tc
θjc
Tj
Figure 2 Thermal resistance of package
3.3.9
Interfacing
When connecting inputs and outputs between devices, make sure input voltage (VIL/VIH) and
output voltage (VOL/VOH) levels are matched. Otherwise, the devices may malfunction. When
connecting devices operating at different supply voltages, such as in a dual-power-supply system,
be aware that erroneous power-on and power-off sequences can result in device breakdown. For
details of how to interface particular devices, consult the relevant technical datasheets and
databooks. If you have any questions or doubts about interfacing, contact your nearest Toshiba
office or distributor.
3-8
3 General Safety Precautions and Usage Considerations
3.3.10
Decoupling
Spike currents generated during switching can cause Vcc (Vdd) and GND (Vss) voltage levels to
fluctuate, causing ringing in the output waveform or a delay in response speed. (The power
supply and GND wiring impedance is normally 50 Ω to 100 Ω.) For this reason, the impedance of
power supply lines with respect to high frequencies must be kept low. This can be accomplished
by using thick and short wiring for the Vcc (Vdd) and GND (Vss) lines and by installing
decoupling capacitors (of approximately 0.01 µF to 1 µF capacitance) as high-frequency filters
between Vcc (Vdd) and GND (Vss) at strategic locations on the printed circuit board.
For low-frequency filtering, it is a good idea to install a 10- to 100-µF capacitor on the printed
circuit board (one capacitor will suffice). If the capacitance is excessively large, however, (e.g.
several thousand µF) latch-up can be a problem. Be sure to choose an appropriate capacitance
value.
An important point about wiring is that, in the case of high-speed logic ICs, noise is caused
mainly by reflection and crosstalk, or by the power supply impedance. Reflections cause
increased signal delay, ringing, overshoot and undershoot, thereby reducing the device’s safety
margins with respect to noise. To prevent reflections, reduce the wiring length by increasing the
device mounting density so as to lower the inductance (L) and capacitance (C) in the wiring.
Extreme care must be taken, however, when taking this corrective measure, since it tends to
cause crosstalk between the wires. In practice, there must be a trade-off between these two
factors.
3.3.11
External noise
Printed circuit boards with long I/O or signal pattern lines
are vulnerable to induced noise or surges from outside
sources. Consequently, malfunctions or breakdowns can
result from overcurrent or overvoltage, depending on the
types of device used. To protect against noise, lower the
impedance of the pattern line or insert a noise-canceling
circuit. Protective measures must also be taken against
surges.
Input/Output
Signals
For details of the appropriate protective measures for a particular device, consult the relevant
databook.
3.3.12
Electromagnetic interference
Widespread use of electrical and electronic equipment in recent years has brought with it radio
and TV reception problems due to electromagnetic interference. To use the radio spectrum
effectively and to maintain radio communications quality, each country has formulated
regulations limiting the amount of electromagnetic interference which can be generated by
individual products.
Electromagnetic interference includes conduction noise propagated through power supply and
telephone lines, and noise from direct electromagnetic waves radiated by equipment. Different
measurement methods and corrective measures are used to assess and counteract each specific
type of noise.
Difficulties in controlling electromagnetic interference derive from the fact that there is no
method available which allows designers to calculate, at the design stage, the strength of the
electromagnetic waves which will emanate from each component in a piece of equipment. For this
reason, it is only after the prototype equipment has been completed that the designer can take
measurements using a dedicated instrument to determine the strength of electromagnetic
interference waves. Yet it is possible during system design to incorporate some measures for the
3-9
3 General Safety Precautions and Usage Considerations
prevention of electromagnetic interference, which can facilitate taking corrective measures once
the design has been completed. These include installing shields and noise filters, and increasing
the thickness of the power supply wiring patterns on the printed circuit board. One effective
method, for example, is to devise several shielding options during design, and then select the
most suitable shielding method based on the results of measurements taken after the prototype
has been completed.
3.3.13
Peripheral circuits
In most cases semiconductor devices are used with peripheral circuits and components. The input
and output signal voltages and currents in these circuits must be chosen to match the
semiconductor device’s specifications. The following factors must be taken into account.
(1) Inappropriate voltages or currents applied to a device’s input pins may cause it to operate
erratically. Some devices contain pull-up or pull-down resistors. When designing your
system, remember to take the effect of this on the voltage and current levels into account.
(2) The output pins on a device have a predetermined external circuit drive capability. If this
drive capability is greater than that required, either incorporate a compensating circuit into
your design or carefully select suitable components for use in external circuits.
3.3.14
Safety standards
Each country has safety standards which must be observed. These safety standards include
requirements for quality assurance systems and design of device insulation. Such requirements
must be fully taken into account to ensure that your design conforms to the applicable safety
standards.
3.3.15
Other precautions
(1) When designing a system, be sure to incorporate fail-safe and other appropriate measures
according to the intended purpose of your system. Also, be sure to debug your system under
actual board-mounted conditions.
(2) If a plastic-package device is placed in a strong electric field, surface leakage may occur due
to the charge-up phenomenon, resulting in device malfunction. In such cases take
appropriate measures to prevent this problem, for example by protecting the package surface
with a conductive shield.
(3) With some microcomputers and MOS memory devices, caution is required when powering on
or resetting the device. To ensure that your design does not violate device specifications,
consult the relevant databook for each constituent device.
(4) Ensure that no conductive material or object (such as a metal pin) can drop onto and short
the leads of a device mounted on a printed circuit board.
3.4
3.4.1
Inspection, Testing and Evaluation
Grounding
Ground all measuring instruments, jigs, tools and soldering irons to earth.
Electrical leakage may cause a device to break down or may result in electric
shock.
3-10
3 General Safety Precautions and Usage Considerations
3.4.2
Inspection Sequence
! Do not insert devices in the wrong orientation. Make sure that the positive
and negative electrodes of the power supply are correctly connected.
Otherwise, the rated maximum current or maximum power dissipation
may be exceeded and the device may break down or undergo performance
degradation, causing it to catch fire or explode, resulting in injury to the
user.
" When conducting any kind of evaluation, inspection or testing using AC
power with a peak voltage of 42.4 V or DC power exceeding 60 V, be sure
to connect the electrodes or probes of the testing equipment to the device
under test before powering it on. Connecting the electrodes or probes of
testing equipment to a device while it is powered on may result in electric
shock, causing injury.
(1) Apply voltage to the test jig only after inserting the device securely into it. When applying or
removing power, observe the relevant precautions, if any.
(2) Make sure that the voltage applied to the device is off before removing the device from the
test jig. Otherwise, the device may undergo performance degradation or be destroyed.
(3) Make sure that no surge voltages from the measuring equipment are applied to the device.
(4) The chips housed in tape carrier packages (TCPs) are bare chips and are therefore exposed.
During inspection take care not to crack the chip or cause any flaws in it.
Electrical contact may also cause a chip to become faulty. Therefore make sure that nothing
comes into electrical contact with the chip.
3.5
Mounting
There are essentially two main types of semiconductor device package: lead insertion and surface
mount. During mounting on printed circuit boards, devices can become contaminated by flux or
damaged by thermal stress from the soldering process. With surface-mount devices in particular,
the most significant problem is thermal stress from solder reflow, when the entire package is
subjected to heat. This section describes a recommended temperature profile for each mounting
method, as well as general precautions which you should take when mounting devices on printed
circuit boards. Note, however, that even for devices with the same package type, the appropriate
mounting method varies according to the size of the chip and the size and shape of the lead
frame. Therefore, please consult the relevant technical datasheet and databook.
3.5.1
Lead forming
! Always wear protective glasses when cutting the leads of a device with
clippers or a similar tool. If you do not, small bits of metal flying off the cut
ends may damage your eyes.
" Do not touch the tips of device leads. Because some types of device have
leads with pointed tips, you may prick your finger.
Semiconductor devices must undergo a process in which the leads are cut and formed before the
devices can be mounted on a printed circuit board. If undue stress is applied to the interior of a
device during this process, mechanical breakdown or performance degradation can result. This is
attributable primarily to differences between the stress on the device’s external leads and the
stress on the internal leads. If the relative difference is great enough, the device’s internal leads,
adhesive properties or sealant can be damaged. Observe these precautions during the leadforming process (this does not apply to surface-mount devices):
3-11
3 General Safety Precautions and Usage Considerations
(1) Lead insertion hole intervals on the printed circuit board should match the lead pitch of the
device precisely.
(2) If lead insertion hole intervals on the printed circuit board do not precisely match the lead
pitch of the device, do not attempt to forcibly insert devices by pressing on them or by pulling
on their leads.
(3) For the minimum clearance specification between a device and a
printed circuit board, refer to the relevant device’s datasheet and
databook. If necessary, achieve the required clearance by forming
the device’s leads appropriately. Do not use the spacers which are
used to raise devices above the surface of the printed circuit board
during soldering to achieve clearance. These spacers normally
continue to expand due to heat, even after the solder has begun to solidify; this applies
severe stress to the device.
(4) Observe the following precautions when forming the leads of a device prior to mounting.
• Use a tool or jig to secure the lead at its base (where the lead meets the device package) while
bending so as to avoid mechanical stress to the device. Also avoid bending or stretching device
leads repeatedly.
• Be careful not to damage the lead during lead forming.
• Follow any other precautions described in the individual datasheets and databooks for each
device and package type.
3.5.2
Socket mounting
(1) When socket mounting devices on a printed circuit board, use sockets which match the
inserted device’s package.
(2) Use sockets whose contacts have the appropriate contact pressure. If the contact pressure is
insufficient, the socket may not make a perfect contact when the device is repeatedly
inserted and removed; if the pressure is excessively high, the device leads may be bent or
damaged when they are inserted into or removed from the socket.
(3) When soldering sockets to the printed circuit board, use sockets whose construction prevents
flux from penetrating into the contacts or which allows flux to be completely cleaned off.
(4) Make sure the coating agent applied to the printed circuit board for moisture-proofing
purposes does not stick to the socket contacts.
(5) If the device leads are severely bent by a socket as it is inserted or removed and you wish to
repair the leads so as to continue using the device, make sure that this lead correction is only
performed once. Do not use devices whose leads have been corrected more than once.
(6) If the printed circuit board with the devices mounted on it will be subjected to vibration from
external sources, use sockets which have a strong contact pressure so as to prevent the
sockets and devices from vibrating relative to one another.
3.5.3
Soldering temperature profile
The soldering temperature and heating time vary from device to device. Therefore, when
specifying the mounting conditions, refer to the individual datasheets and databooks for the
devices used.
3-12
3 General Safety Precautions and Usage Considerations
(1) Using a soldering iron
Complete soldering within ten seconds for lead temperatures of up to 260°C, or within three
seconds for lead temperatures of up to 350°C.
(2) Using medium infrared ray reflow
• Heating top and bottom with long or medium infrared rays is recommended (see Figure 3).
Medium infrared ray heater
(reflow)
Product flow
Long infrared ray heater (preheating)
Figure 3 Heating top and bottom with long or medium infrared rays
• Complete the infrared ray reflow process within 30 seconds at a package surface temperature
of between 210°C and 240°C.
• Refer to Figure 4 for an example of a good temperature profile for infrared or hot air reflow.
Package surface temperature
(°C)
240
210
160
140
60-120 s
30-50 s
Time (s)
Figure 4 Sample temperature profile for infrared or hot air reflow
(3) Using hot air reflow
• Complete hot air reflow within 30 to 50 seconds at a package surface temperature of between
210°C and 240°C.
• For an example of a recommended temperature profile, refer to Figure 4 above.
(4) Using solder flow
• Apply preheating for 60 to 120 seconds at a temperature of 150°C.
• For lead insertion-type packages, complete solder flow within 10 seconds with the
temperature at the stopper (or, if there is no stopper, at a location more than 1.5 mm from
the body) which does not exceed 260°C.
• For surface-mount packages, complete soldering within 5 seconds at a temperature of 250°C or
3-13
3 General Safety Precautions and Usage Considerations
less in order to prevent thermal stress in the device.
• Figure 5 shows an example of a recommended temperature profile for surface-mount packages
using solder flow.
Package surface temperature
(°C)
250
160
140
60-120 s
5s
or less
Time (s)
Figure 5 Sample temperature profile for solder flow
3.5.4
Flux cleaning and ultrasonic cleaning
(1) When cleaning circuit boards to remove flux, make sure that no residual reactive ions such
as Na or Cl remain. Note that organic solvents react with water to generate hydrogen
chloride and other corrosive gases which can degrade device performance.
(2) Washing devices with water will not cause any problems. However, make sure that no
reactive ions such as sodium and chlorine are left as a residue. Also, be sure to dry devices
sufficiently after washing.
(3) Do not rub device markings with a brush or with your hand during cleaning or while the
devices are still wet from the cleaning agent. Doing so can rub off the markings.
(4) The dip cleaning, shower cleaning and steam cleaning processes all involve the chemical
action of a solvent. Use only recommended solvents for these cleaning methods. When
immersing devices in a solvent or steam bath, make sure that the temperature of the liquid
is 50°C or below, and that the circuit board is removed from the bath within one minute.
(5) Ultrasonic cleaning should not be used with hermetically-sealed ceramic packages such as a
leadless chip carrier (LCC), pin grid array (PGA) or charge-coupled device (CCD), because
the bonding wires can become disconnected due to resonance during the cleaning process.
Even if a device package allows ultrasonic cleaning, limit the duration of ultrasonic cleaning
to as short a time as possible, since long hours of ultrasonic cleaning degrade the adhesion
between the mold resin and the frame material. The following ultrasonic cleaning conditions
are recommended:
Frequency: 27 kHz ∼ 29 kHz
Ultrasonic output power: 300 W or less (0.25 W/cm2 or less)
Cleaning time: 30 seconds or less
Suspend the circuit board in the solvent bath during ultrasonic cleaning in such a way that
the ultrasonic vibrator does not come into direct contact with the circuit board or the device.
3-14
3 General Safety Precautions and Usage Considerations
3.5.5
No cleaning
If analog devices or high-speed devices are used without being cleaned, flux residues may cause
minute amounts of leakage between pins. Similarly, dew condensation, which occurs in
environments containing residual chlorine when power to the device is on, may cause betweenlead leakage or migration. Therefore, Toshiba recommends that these devices be cleaned.
However, if the flux used contains only a small amount of halogen (0.05W% or less), the devices
may be used without cleaning without any problems.
3.5.6
Mounting tape carrier packages (TCPs)
(1) When tape carrier packages (TCPs) are mounted, measures must be taken to prevent
electrostatic breakdown of the devices.
(2) If devices are being picked up from tape, or outer lead bonding (OLB) mounting is being
carried out, consult the manufacturer of the insertion machine which is being used, in order
to establish the optimum mounting conditions in advance and to avoid any possible hazards.
(3) The base film, which is made of polyimide, is hard and thin. Be careful not to cut or scratch
your hands or any objects while handling the tape.
(4) When punching tape, try not to scatter broken pieces of tape too much.
(5) Treat the extra film, reels and spacers left after punching as industrial waste, taking care
not to destroy or pollute the environment.
(6) Chips housed in tape carrier packages (TCPs) are bare chips and therefore have their reverse
side exposed. To ensure that the chip will not be cracked during mounting, ensure that no
mechanical shock is applied to the reverse side of the chip. Electrical contact may also cause
a chip to fail. Therefore, when mounting devices, make sure that nothing comes into
electrical contact with the reverse side of the chip.
If your design requires connecting the reverse side of the chip to the circuit board, please
consult Toshiba or a Toshiba distributor beforehand.
3.5.7
Mounting chips
Devices delivered in chip form tend to degrade or break under external forces much more easily
than plastic-packaged devices. Therefore, caution is required when handling this type of device.
(1) Mount devices in a properly prepared environment so that chip surfaces will not be exposed
to polluted ambient air or other polluted substances.
(2) When handling chips, be careful not to expose them to static electricity.
In particular, measures must be taken to prevent static damage during the mounting of
chips. With this in mind, Toshiba recommend mounting all peripheral parts first and then
mounting chips last (after all other components have been mounted).
(3) Make sure that PCBs (or any other kind of circuit board) on which chips are being mounted
do not have any chemical residues on them (such as the chemicals which were used for
etching the PCBs).
(4) When mounting chips on a board, use the method of assembly that is most suitable for
maintaining the appropriate electrical, thermal and mechanical properties of the
semiconductor devices used.
* For details of devices in chip form, refer to the relevant device’s individual datasheets.
3-15
3 General Safety Precautions and Usage Considerations
3.5.8
Circuit board coating
When devices are to be used in equipment requiring a high degree of reliability or in extreme
environments (where moisture, corrosive gas or dust is present), circuit boards may be coated for
protection. However, before doing so, you must carefully consider the possible stress and
contamination effects that may result and then choose the coating resin which results in the
minimum level of stress to the device.
3.5.9
Heat sinks
(1) When attaching a heat sink to a device, be careful not to apply excessive force to the device in
the process.
(2) When attaching a device to a heat sink by fixing it at two or more locations, evenly tighten
all the screws in stages (i.e. do not fully tighten one screw while the rest are still only loosely
tightened). Finally, fully tighten all the screws up to the specified torque.
(3) Drill holes for screws in the heat sink exactly as specified. Smooth the
surface by removing burrs and protrusions or indentations which might
interfere with the installation of any part of the device.
(4) A coating of silicone compound can be applied between the heat sink and
the device to improve heat conductivity. Be sure to apply the coating
thinly and evenly; do not use too much. Also, be sure to use a non-volatile
compound, as volatile compounds can crack after a time, causing the
heat radiation properties of the heat sink to deteriorate.
(5) If the device is housed in a plastic package, use caution when selecting the type of silicone
compound to be applied between the heat sink and the device. With some types, the base oil
separates and penetrates the plastic package, significantly reducing the useful life of the
device.
Two recommended silicone compounds in which base oil separation is not a problem are
YG6260 from Toshiba Silicone.
(6) Heat-sink-equipped devices can become very hot during operation. Do not touch them, or you
may sustain a burn.
3.5.10
Tightening torque
(1) Make sure the screws are tightened with fastening torques not exceeding the torque values
stipulated in individual datasheets and databooks for the devices used.
(2) Do not allow a power screwdriver (electrical or air-driven) to touch devices.
3.5.11
Repeated device mounting and usage
Do not remount or re-use devices which fall into the categories listed below; these devices may
cause significant problems relating to performance and reliability.
(1) Devices which have been removed from the board after soldering
(2) Devices which have been inserted in the wrong orientation or which have had reverse
current applied
(3) Devices which have undergone lead forming more than once
3-16
3 General Safety Precautions and Usage Considerations
3.6
3.6.1
Protecting Devices in the Field
Temperature
Semiconductor devices are generally more sensitive to temperature than are other electronic
components. The various electrical characteristics of a semiconductor device are dependent on the
ambient temperature at which the device is used. It is therefore necessary to understand the
temperature characteristics of a device and to incorporate device derating into circuit design.
Note also that if a device is used above its maximum temperature rating, device deterioration is
more rapid and it will reach the end of its usable life sooner than expected.
3.6.2
Humidity
Resin-molded devices are sometimes improperly sealed. When these devices are used for an
extended period of time in a high-humidity environment, moisture can penetrate into the device
and cause chip degradation or malfunction. Furthermore, when devices are mounted on a regular
printed circuit board, the impedance between wiring components can decrease under highhumidity conditions. In systems which require a high signal-source impedance, circuit board
leakage or leakage between device lead pins can cause malfunctions. The application of a
moisture-proof treatment to the device surface should be considered in this case. On the other
hand, operation under low-humidity conditions can damage a device due to the occurrence of
electrostatic discharge. Unless damp-proofing measures have been specifically taken, use devices
only in environments with appropriate ambient moisture levels (i.e. within a relative humidity
range of 40% to 60%).
3.6.3
Corrosive gases
Corrosive gases can cause chemical reactions in devices, degrading device characteristics.
For example, sulphur-bearing corrosive gases emanating from rubber placed near a device
(accompanied by condensation under high-humidity conditions) can corrode a device’s leads. The
resulting chemical reaction between leads forms foreign particles which can cause electrical
leakage.
3.6.4
Radioactive and cosmic rays
Most industrial and consumer semiconductor devices are not designed with protection against
radioactive and cosmic rays. Devices used in aerospace equipment or in radioactive environments
must therefore be shielded.
3.6.5
Strong electrical and magnetic fields
Devices exposed to strong magnetic fields can undergo a polarization phenomenon in their plastic
material, or within the chip, which gives rise to abnormal symptoms such as impedance changes
or increased leakage current. Failures have been reported in LSIs mounted near malfunctioning
deflection yokes in TV sets. In such cases the device’s installation location must be changed or
the device must be shielded against the electrical or magnetic field. Shielding against magnetism
is especially necessary for devices used in an alternating magnetic field because of the
electromotive forces generated in this type of environment.
3-17
3 General Safety Precautions and Usage Considerations
3.6.6
Interference from light (ultraviolet rays, sunlight, fluorescent lamps and
incandescent lamps)
Light striking a semiconductor device generates electromotive force due to photoelectric effects.
In some cases the device can malfunction. This is especially true for devices in which the internal
chip is exposed. When designing circuits, make sure that devices are protected against incident
light from external sources. This problem is not limited to optical semiconductors and EPROMs.
All types of device can be affected by light.
3.6.7
Dust and oil
Just like corrosive gases, dust and oil can cause chemical reactions in devices, which will
adversely affect a device’s electrical characteristics. To avoid this problem, do not use devices in
dusty or oily environments. This is especially important for optical devices because dust and oil
can affect a device’s optical characteristics as well as its physical integrity and the electrical
performance factors mentioned above.
3.6.8
Fire
Semiconductor devices are combustible; they can emit smoke and catch fire if heated sufficiently.
When this happens, some devices may generate poisonous gases. Devices should therefore never
be used in close proximity to an open flame or a heat-generating body, or near flammable or
combustible materials.
3.7
Disposal of Devices and Packing Materials
When discarding unused devices and packing materials, follow all procedures specified by local
regulations in order to protect the environment against contamination.
3-18
4 Precautions and Usage Considerations
4.
Precautions and Usage Considerations
This section describes matters specific to each product group which need to be taken into
consideration when using devices. If the same item is described in Sections 3 and 4, the
description in Section 4 takes precedence.
4.1
4.1.1
Microcontrollers
Design
(1) Using resonators which are not specifically recommended for use
Resonators recommended for use with Toshiba products in microcontroller oscillator applications
are listed in Toshiba databooks along with information about oscillation conditions. If you use a
resonator not included in this list, please consult Toshiba or the resonator manufacturer
concerning the suitability of the device for your application.
(2) Undefined functions
In some microcontrollers certain instruction code values do not constitute valid processor
instructions. Also, it is possible that the values of bits in registers will become undefined. Take
care in your applications not to use invalid instructions or to let register bit values become
undefined.
4-1
4 Precautions and Usage Considerations
4-2
TMPR4925
Conventions in this Manual
Conventions in this Manual
Value Conventions
•
Hexadecimal values are expressed as in the following example. (This value is expressed as 42 in
the decimal system.)
•
KB (kilobyte) = 1,024 Bytes,
MB (megabyte) = 1,024 × 1,024 = 1,048,576 Bytes,
GB (gigabyte) = 1,024 × 1,024 × 1,024 = 1,073,741,824 Bytes
Data Conventions
•
Byte: 8 bits
•
Half-word: 2 consecutive Bytes (16 bits)
•
Word: 4 consecutive Bytes (32 bits)
•
Double-word: 8 consecutive Bytes (64 bits)
Signal Conventions
•
An asterisk (“*”) is added to the end of signal names to indicate Low Active signals. (Example:
RESET*)
•
“Assert” means to move a signal to its Active level. “Deassert” means to move a signal to its
Inactive level.
Register Conventions
•
Bit operation is expressed as follows.
Set: Put a bit in the “1” position.
Clear: Put a bit in the “0” position.
•
Properties of each bit in a register are expressed as follows.
R:
Read only. The software cannot change the bit value.
W:
Write only. The value that is read is undefined.
R/W:
Read/Write is possible.
W1C
Write 1 Clear. This corresponding bit is cleared when “1” is written to this bit. “0” is
invalid if written.
R/W1C: Read/Write 1 Clear. These bits can be read from and written to. The corresponding bit is
cleared when “1” is written to this bit. “0” is invalid if written.
R/W0C: Read/Write 0 Clear. These bits can be read from and written to. The corresponding bit is
cleared when “0” is written to this bit. “1” is invalid if written.
R/W1S Read/Write 1 Set. These bits can be read from and written to. The corresponding bit is set
when “1” is written to this bit. “0” is invalid if written.
RS/WC Read Set/Write Clear. These bits can be read from and written to. The bits is set
when read, and a write of an arbitrary value to the bit clears it.
R/L:
Property unique to the PCI Controller. This bit can be read. The value of this bit can only
be changed by the method described in “10.3.14: Set Configuration Space”.
•
Registers and the register bit/field name are expressed as “<register name>.<bit/field name>”.
Example: CCFG.TOE
The above example indicates Time Out Bus Error Enable (TOE), a bit field of bit 14 in the Chip
Configuration Register (CCFG).
i
Conventions in this Manual
Handling reserved regions
Operation is undefined when a register defined in this document as a reserved region (Reserved) is
accessed. If there is a bit or field that was defined as Reserved in a register, write the expressed default value
or the specified value (“0” if no particular value is expressed) to these bits. Also, do not use any value read
from this bit/field.
Diagnostic function
Any function described as a “diagnostic function” is used to facilitate operation evaluations. The operation
of such functions is not guaranteed.
References
64-bit TX System RISC TX49/H2 Core Architecture User’s Manual
(http://www.semicon.toshiba.co.jp/eng/index.html)
MIPS RISC Architecture, Gerry Kane and Joe Heinrich (ISBN 0-13-590472-2)
See MIPS Run, Dominic Sweetman (ISBN 1-55860-410-3)
MIPS Publications (http://www.mips.com/publications/)
PCI Local Bus Specification Revision 2.2 (http://www.pcisig.com/)
PCI Bus Power Management Interface Specification Revision 1.1
Audio CODEC ‘97 (AC ‘97) Revision 2.1 (http://developer.intel.com/ial/scalableplatforms/audio/)
ii
Chapter 1 Features
1.
1.1
Features
Outline
The TMPR4925XB, to be referred as TX4925 MIPS RISC micro-controller is a highly integrated ASSP
solution based on Toshiba’s TX49/H2 processor core, a 64-bit MIPS I, II, III ISA Instruction Set
Architecture (ISA) compatible with additional instructions. For information on the architecture of the
TX49/H2 core, including the instruction set, refer to the manual 64-bit TX System RISC, TX49/H2 Core
Architecture.
The TX4925 is a highly integrated device with integrated peripherals such as SDRAM memory controller,
NAND Flash memory controller, PCI controller, AC-Link controller, PIO, SIO, SPI, CHI, PCMCIA I/F and
Timer.
This class of product is targeted for applications that require a high performance and cost-effective
solution such as networking internet appliance and information terminal.
1-1
Chapter 1 Features
1.2
Features
•
TX49/H2 core with an integrated IEEE 754-compliant FPU for single- and double-precision operations
•
4-channel SDRAM Controller (32 bit/80 MHz) and support SyncFlash® memory
•
6-channel External Bus Controller (including 2-slot PCMCIA Interface)
•
NAND Flash Controller
•
32-bit PCI Controller (33 MHz)
•
4-channel Direct Memory Access (DMA) Controller
•
2-channel Serial I/O Port
•
Parallel I/O Port (up to 32-bit)
•
SPI (Serial Peripheral Interface)
•
CHI (high-speed serial Concentration Highway Interface)
•
Interrupt Controller
•
3-channel Timer/Counter and 44-bit up-counter RTC
•
AC-Link Controller
•
PCMCIA Interface (2-slot)
•
Supports selection between little endian and big endian modes
•
Low power dissipation
The TX4925 operates with the 1.5 V core and the 3.3 V I/O, while supporting a low-power (Halt) mode.
•
CPU maximum operating frequency: 200 MHz
•
IEEE1149.1 (JTAG) support: Debug Support Unit (Enhanced JTAG)
•
256-pin PBGA package
1.2.1
TX49/H2 Processor Core Features
The TX49/H2 is a high-performance 64-bit microprocessor core developed by Toshiba.
•
64-bit operation
•
32-, 64-bit integer general purpose registers
•
32-bit physical address space and 64-bit virtual address space
•
Optimized 5-stage pipeline
•
Instruction Set
− MIPS I, II , III compatible ISA
− PREF (Prefetch) and MAC (Multiply/Accumulate) instructions.
•
16k Byte Instruction Cache, and 16k Byte Data Cache
− 4-way set associative with lock function
•
MMU (Memory Management Unit): 48-entry fully associative JTLB
•
The on-chip FPU supports both single- and double-precision arithmetic, as specified in IEEE Std
754.
•
On-chip 4-deep write buffer
•
Enhanced JTAG debug feature
− Built-in Debug Support Unit (DSU)
1-2
Chapter 1 Features
1.2.2
TX4925 Peripheral Circuit Features
1.2.2.1
External Bus Controller (EBUSC)
The External Bus Controller generates necessary signals to control external memory and
I/O devices.
1.2.2.2
•
6 channels of chip select signals, enabling control of up to six devices
•
Supports access to ROM ( including mask ROM, page mode ROM, EPROM and EEPROM),
SRAM, flash ROM, and I/O devices
•
Supports 32-bit, 16-bit and 8-bit data bus sizing on a per channel basis
•
Supports selection among full speed (up to 80 MHz), 1/2 speed (up to 40 MHz), 1/3 speed
(up to 27 MHz) and 1/4 speed (up to 20 MHz) on a per channel basis
•
Support specification of timing on a per channel basis
•
The user can specify setup and hold times for address, chip enable, write enable, and output
enable signals
•
Supports memory sizes of 1M byte to 1G byte for devices with 32-bit data bus, 1M byte to
512M bytes for devices with 16-bit data bus, and 1M byte to 256M bytes for devices with 8bit data bus
DMA Controller (DMAC)
The TX4925 contains a 4-channel DMA controller that executes DMA transfer to memory and
I/O devices.
•
4-channel independently handling internal/external DMA requests
(Usable 2 channels by external DMA requests)
•
Supports DMA transfer with built-in serial I/O controller and AC-link controller based on
internal DMA requests
•
Supports signal address (fly-by DMA) and dual address transfers in external I/O DMA
transfer mode using external DMA requests
•
Supports transfer between memory and external I/O devices having 32-/16-/8-bit data bus
•
Supports memory-to-memory copy mode, with no address boundary restrictions
•
Supports burst transfer of up to 8 words for a single read/write
•
Supports memory fill mode, writing word data to specified memory area
•
Supports chained DMA transfer
1-3
Chapter 1 Features
1.2.2.3
SDRAM Controller (SDRAMC)
The SDRAM Controller generates necessary control signals for the SDRAM interface. It has
four channels and can handle up to 2G bytes (512 MB/channel) of memory by supporting a variety
of memory configurations.
1.2.2.4
•
Memory clock frequency: 80 MHz (divided by 2.5)
•
4 sets of independent memory channels
•
Supports 16M-/64M-/128M-/256M-/512M-bit SDRAM with 2/4 bank size availability
•
Supports Single Data Rate (SDR) SDRAM and SyncFlash memory
•
Supports use of Registered DIMM
•
Supports 32-/16-bit data bus sizing on a per channel basis
•
Supports specification of SDRAM timing on a per channel basis
•
Supports critical word first access of TX49/H2 core
•
Low power mode: selectable between self-refreshing and pre-charge power-down
®
PCI Controller (PCIC)
The TX4925 contains a PCI Controller that complies with PCI Local Bus Specification
Revision 2.2.
•
Compliance with PCI Local Bus Specification Revision 2.2
(Partly supports power management as optional function)
1.2.2.5
•
32-bit PCI interface featuring maximum PCI bus clock frequency of 33 MHz
•
Supports both target and initiator functions
•
Supports change of address mapping between internal bus and PCI bus
•
PCI bus arbiter enables connection of up 4 external bus masters
•
Supports booting of TX4925 from memory on PCI bus
•
1 channel of DMA controller dedicated to PCI controller (PDMAC)
Serial I/O Controller (SIO)
The TX4925 contains a 2-channels asynchronous serial I/O interface (full duplex UART).
•
2-channel full duplex UART
•
Built-in baud rate generator
•
FIFOs
8-bit x 8 transmitter FIFO
13-bit (8 data bits and 5 status bits) x 16 receiver FIFO
•
Supports DMA tranfer
1-4
Chapter 1 Features
1.2.2.6
Timers/Counters Controller (TMR)
The TX4925 contains 3-channel timer/counters.
1.2.2.7
•
3-channel 32-bit up-counter
•
Supports three modes : interval timer mode, pulse generator mode, and watchdog timer mode
•
2 timer output pins
•
1 count clock input pin
Parallel I/O Ports (PIO)
The TX4925 contains 32-bit parallel I/O ports
•
1.2.2.8
Independent selection of direction of pins and output port type (totem-pole or open-drain
outputs) on a per bit basis.
AC-Link Controller (ACLC)
AC-Link Controller in TX4925 can be connected to audio and/or modem CODECs described in
the “Audio CODEC ’97 Revision 2.1” (AC’97) and can operate them.
•
AC97 2.1 compliant CODEC register access protocol
•
Up to two CODECs are supported
•
Support Audio CODEC (Recording/Playback of 16-bit PCM Left/Right channels)
− Support Playback of 16-bit Surround, Center, and LFE channels
− Support Variable Rate Audio recording/Playback
1.2.2.9
•
Support Modem CODEC (Line 1 and GPIO slots)
•
Support AC-link low-power mode, wake-up, and warm-reset
•
Support sample-data I/O via DMA transfer
Interrupt Controller (IRC)
Interrupt controller in TX4925 supports both internal and external interrupts to the processor
core. The priority or the value of each interrupt source is programmed in interrupt level registers.
It has a 16-bit flag register to generate interrupt requests to external devices or the TX49/H2
core.
•
Priority process of 21 internal and up to 8 external interrupt sources.
− PCIC, DMAC, SIO, Timer Interrupts, RTC, NAND Flash Controller, ACLC, SPI, CHI,
PIO and External Interrupts
− All of external interrupt signals shares other function signals
•
Edge/Level selectable trigger interrupt
•
Support of Non Mask-able interrupt (NMI)
•
16-bit read/write flag register for interrupt requests, making it possible to issue interrupt
requests to external devices and to the TX49/H2 core (IRC interrupts)
1-5
Chapter 1 Features
1.2.2.10 high-speed serial Concentration Highway Interface (CHI)
The TX4925 has a CHI module.
•
Contents logic for interfacing to external full-duplex serial time-division-multiplexed (TDM)
communication peripherals
•
Supports ISDN line interface chips and other PCM/TDM serial devices
•
Programmable CHI Interface (numbers of channels, frame rate, bit rate, etc.)
•
supports data rates up to 4.096 Mbps
1.2.2.11 Serial Peripheral Interface (SPI)
The TX4925 has an SPI module.
•
full-duplex, synchronous serial data transfers (data in/out, and clock signals)
•
8-bit or 16-bit data word lengths
•
Programmable SPI baud rate
1.2.2.12 NAND Flash Controller
The TX4925 has a NAND Flash memory Controller.
•
Controlled NAND Flash I/F by Setting Register
•
Supports On-chip ECC (Error Correct Circuit) calculating circuits
1.2.2.13 PCMCIA Interface (PCMCIAI/F)
The TX4925 has a 2 identical full PCMCIA ports.
•
Provide the control signals and accepts the status signals which conform to the PCMCIA
version 2.1 standard
•
Appropriate connector keying and level-shifting buffers required for 3.3 V versus 5 V
PCMCIA interface implementations
1.2.2.14 Real Time Clock (RTC)
The TX4925 has an RTC module.
•
44-bit up-counter
•
Interrupts on alarm, timer, and prior to RTC roll-over
•
Date managed by software
1.2.2.15 Power-down Mode
The TX4925 contains support for implementation of power-down mode.
•
HALT mode (stopping CPU core clock) for TX49/H2 core block
•
Power-down mode (stopping input clock) for individual internal peripheral modules
•
RF (Reduced Frequency) Function (1/1, 1/2, 1/4, 1/8)
1-6
Chapter 1 Features
1.2.2.16 EJTAG Interface
The TX4925 contains an Extended Enhanced Joint Test Action Group (Extended EJTAG)
interface, which provides two functions: JTAG boundary scan test that complies with IEEE1149.1
and real-time debugging using a debug support unit (DSU) built into the TX49/H2 core.
•
IEEE 1149.1 JTAG Boundary Scan
•
Real-time debugging functions using special emulation probe: execution control (execution,
break, step, and register/memory access) and PC trace
“MIPS” is the registered trademark of MIPS Technologies, Inc.
“SyncFlash®” is a registered trademark of Micron Technology, Inc.
1-7
Chapter 1 Features
1-8
Chapter 2 Block Diagram
TX4925 Block Diagram
TX49/H2 Core
RESET
PON
TCK
TDI / DINT*
TDO / TPC[0]
TPC[3:1]
TMS
TRST*
DCLK
PCST[8:0]
I-Cache
CPU core
D-Cache
FPU
WBU
DSU
G-Bus I/F
TEST*
SCAN_ENB*
TEST
MASTERCLK
PLL
CG
PCICLK[2:1]
PCICLK_IO
PCIAD [31:0]
C_BE [3:0]
PAR
FRAME*
IRDY*
TRDY*
STOP*
ID_SEL
DEVSEL*
REQ [3:2] *
REQ [1] */INTOUT
REQ [0] *
GNT[3:0] *
PERR*
SERR*
CHIFS
CHICLK
CHIDOUT
CHIDIN
ND_ALE
ND_CLE
ND_CE*
ND_RE*
ND_WE*
ND_R/B*
DMAREQ[1:0]
DMAACK[1:0]
DMADONE*
SDCLK[1:0]
SDCLKIN
CKE
SDCS[3:0]*
SADDR10
SDRAMC
(4ch.)
RAS*
CAS*
WE*
DQM[3:0]
PCIC
PDMAC
EBIF
G-Bus
2.1
Block Diagram
CHI
EBUSC
(6ch.)
RP*
ADDR[19:0]
DATA[31:0]
SYSCLK
UAE
ACK*/READY
BUSSPRT*
CE[5:0] *
OE*
SWE*
BE[3:0]*/BWE[3:0] *
CARD1CSH*
CARD1CSL*
CARD2CSH*
CARD2CSL*
CARDREG*
CARDIORD*
CARDIOWR*
CARDDIR*
CARD1WAIT*
CARD2WAIT*
NDFMC
DMAC
(4ch.)
IMB
AC_RESET*
AC_SYNC
AC_SDOUT
AC_SDIN[1:0]
AC_BITCLK
RTC
ACLC
IM Bus
2.
SPI
CTS[1:0]*
RTS[1:0]*
RXD[1:0]
TXD[1:0]
SCLK
SIO
(2ch.)
IRC
PIO[31:0]
PIO
TMR
(3ch.)
Figure 2.1.1 TX4925 Block Diagram
2-1
C32KIN
C32KOUT
BC32K
SPICLK
SPIOUT
SPIIN
NMI*
INT[7:0]
TIMER[1:0]
TCLK
Chapter 2 Block Diagram
Figure 2.1.1 shows a diagram of the TX4925. The each block is itemized below.
(1) TX49/H2 core
•
It is composed of CPU, System Control Coprocessor (CP0), Instruction Cache, Data Cache,
Floating-Point Unit (FPU), Write Buffer (WBU), Debug Support Unit (DSU) and G-Bus I/F.
− FPU: IEEE754 compatible single and double precision FPU
It is assigned as one of the coprocessor unit, CP1.
− I-Cache: Instruction Cache Memory, 16Kbyte, 4-Way set associative
− D-Cache: Data Cache Memory, 16Kbyte, 4-Way set associative Select write-back mode or
write-through(no write allocate/write allocate) mode for cache write policy.
− DSU: Debug Support Unit, It is used for on chip debugging module.
(2) EBUSC
•
External Bus Controller, Provides 6-channels programmable Chip Selects, Supports ROMs (pagemode ROM, mask ROM, EPROM and EEPROM), SRAMs, flash ROMs and I/O devices
(3) DMAC
•
Direct Memory Access Controller, Supports transfers to and from both memory and
internal/external I/O devices
(4) SDRAMC
•
SDRAM Controller, Supports 4-channels/80 MHz bus frequencies/16 or 32 bus width
(5) PCIC
•
PCI-bus Controller, Compliance with PCI Local Bus Specification Revision 2.2, Supports 32-bit
PCI bus interface and 33 MHz operation
(6) SIO
•
Serial I/O, Supports 2-channels for universal asynchronous receiver/transmitters
(7) TMR
•
Timer/Counter, Supports 3-channels
(8) PIO
•
Parallel I/O, Supports 32-bit of shared PIO pins
(9) ACLC
•
AC-Link Controller, Compliance with Audio CODEC ’97 Revision 2.1 (AC ’97)
(10) IRC
•
Interrupt Controller
(11) CHI
•
High–speed serial Concentration Highway Interface
(12) SPI
•
Serial Peripheral Interface, Supports full-duplex synchronous serial data transfers
2-2
Chapter 2 Block Diagram
(13) NDFMC
•
NAND Flash memory Controller, Supports ECC (Error Correction Code) function
(14) RTC
•
Real Time Clock, 44-bit up-counter
(15) EBIF
•
External Bus Interface, Connects between 20-bit external address bus/32-bit external data bus and
SDRAMC/EBUSC
(16) CG
•
Clock Generator, Incorporates an phase-locked loop (PLL) circuit to drive the multiplied clocks,
Generates the clocks for each module
(17) G-Bus
•
High-speed bus which is 32-bit bus width within TX4925, Direct connect to TX49/H2 core block
(18) IM-Bus
•
Low-speed bus which is 32-bit bus width within TX4925, Connect to G-Bus via IMB
(19) IMB
•
G-Bus and IM-Bus bridge
(20) TEST
•
Internal diagnostic module
2-3
Chapter 2 Block Diagram
2-4
Chapter 3 Signals
3.
Signals
3.1
Pin Signal Description
In the following tables, asterisks at the end of signal names indicate active-low signals.
In the Type column, PU indicates that the pin is equipped with an internal pull-up resister and PD indicates
that the pin is equipped with an internal pull-down resister. OD indicates an open-drain pin.
The Initial State column shows the state of the signal when the RESET* signal is asserted and
immediately after it is deasserted. Those signals which are selected by a configuration signal upon a reset
have the state selected by the configuration signal even when the reset signal is asserted.
3.1.1
Signals Common to SDRAM and External Bus Interfaces
Table 3.1.1 Signals Common to SDRAM and External Bus Interfaces
Signal Name
Type
Description
Initial State
Input
ADDR[19:0]
Input/output Address
PU
Address signals.
For SDRAM, ADDR[19:16 , 14:5] and SADDR10 are used (refer to Sections “9.3.2.2”
and “9.3.2.3 Address Signal Mapping”).
When the external bus controller uses these pins, the meaning of each bit varies with
the data bus width (refer to Section “7.3.5 Data Bus Size”).
The ADDR signals are also used as boot configuration signals (input) during a reset.
For details of configuration signals, refer to Section “3.2 Boot Configuration”.
The ADDR signals are input signals only when the RESET* signal is asserted and
become output signals after the RESET* signal is deasserted.
SADDR10
Input/output
PU
Input
Address10 for SDRAM
Address signal for SDRAM (refer to Sections “9.3.2.2” and “9.3.2.3 Address Signal
Mapping”).
This signal is also used as a boot configuration input signal for testing. Because this
signal is used for testing, ensure that it will not pulled Low during a reset sequence.
For details of configuration signals, refer to Section “3.2 Boot Configuration”.
This signal is used as an input signal while the RESET* signal is asserted. It becomes
an output signal once the RESET* signal has been deasserted.
DATA[31:0]
Input/output
PU
Data
32-bit data bus.
BUSSPRT
Output
Input
High
Bus Separate
Controls the connection and separation of devices controlled by the external bus
controller to or from a high-speed device, such as SDRAM (refer to Section “7.6 Flash
ROM, SRAM Usage Example”).
H: Separate devices other than SDRAM from the data bus.
L: Connect devices other than SDRAM to the data bus.
Separation and connection are performed using external bidirectional bus buffers (such
as the 74xx245).
3-1
Chapter 3 Signals
3.1.2
SDRAM Interface Signals
Table 3.1.2 SDRAM Interface Signals
Signal Name
Type
Description
SDCLK[1:0]
Output
SDRAM Controller Clock
Clock signals used by SDRAM/SyncFlash. The clock frequency is the same as the GBus clock (GBUSCLK) frequency.
When these clock signals are not used, the pins can be set to L using the SDCLK
Enable field of the pin configuration register (PCFG.SDCLKEN[1:0]).
SDCLKIN
Input/output SDRAM Feedback Clock input
Feedback clock signal for SDRAM controller input signals.
Initial State
All High
Input
CKE
Output
Clock Enable
CKE signal for SDRAM/SyncFlash.
High
SDCS[3:0]*
Output
Synchronous Memory Device Chip Select
Chip select signals for SDRAM/SyncFlash.
All High
RAS*
Output
Row Address Strobe
RAS signal for SDRAM/SyncFlash.
High
CAS*
Output
Column Address Strobe
CAS signal for SDRAM/SyncFlash.
High
WE*
Output
Write Enable
WR signal for SDRAM/SyncFlash.
High
DQM[3:0]
Output
Data Mask
During a write cycle, the DQM signals function as a data mask. During a read cycle,
they control the SDRAM output buffers. The bits correspond to the following data bus
signals:
DQM[3]:DATA[31:24], DQM[2]:DATA[23:16]
DQM[1]:DATA[15:8], DQM[0]:DATA[7:0]
All High
RP*
Output
Initialize/Power Down
RP* signal for SyncFlash.
Low
3-2
Chapter 3 Signals
3.1.3
External Interface Signals
Table 3.1.3 External Interface Signals (1/2)
Signal Name
Type
Description
SYSCLK
Output
System Clock
Clock for external I/O devices.
Outputs a clock in full speed mode (at the same frequency as the G-Bus clock
(GBUSCLK) frequency), half speed mode (at one half the GBUSCLK frequency), third
speed mode (at one third the GBUSCLK frequency), or quarter speed mode (at one
quarter the GBUSCLK frequency). The boot configuration signals on the ADDR[4:3]
pins select which speed mode will be used.
When this clock signal is not used, the pin can be set to L using the SYSCLK Enable
bit of the configuration register (PCFG.SYSCLKEN).
UAE
Output
PU
Input
Upper Address Enable
Latch enable signal for the high-order address bits of ADDR. This is a Low active
signal.
This signal is also used as a boot configuration input signal for testing. Because this
signal is used for testing, ensure that it will not pulled Low during a reset sequence.
For details of configuration signals, refer to Section “3.2 Boot Configuration”.
This signal is used as an input signal while the RESET* signal is asserted. It becomes
an output signal once the RESET* signal has been deasserted.
CE[5:4]*
Output
PU
Chip Enable
Chip select signals for ROM, SRAM, and I/O devices.
The pins are shared with other functions (refer to Section “3.3 Pin Multiplexing”).
All High
CE[3:0]*
Output
Chip Enable
Chip select signals for ROM, SRAM, and I/O devices.
All High
OE*
Output
Output Enable
Output enable signal for ROM, SRAM, and I/O devices.
High
SWE*
Output
Write Enable
Write enable signal for SRAM and I/O devices.
High
BWE[3:0]*
/BE[3:0]*
Output
Byte Enable/Byte Write Enable
BE[3:0]* indicate a valid data position on the data bus DATA[31:0] during read and
write bus operation. In 16-bit bus mode, only BE[1:0]* are used. In 8-bit bus mode,
only BE[0]* is used.
BWE[3:0]* indicate a valid data position on the data bus DATA[31:0] during write bus
operation. In 16-bit bus mode, only BWE[1:0]* are used. In 8-bit bus mode, only
BWE[0]* is used.
The following shows the correspondence between BE[3:0]*/BWE[3:0]* and the data
bus signals.
BE[3]*/BWE[3]*:
DATA[31:24]
BE[2]*/BWE[2]*:
DATA[23:16]
BE[1]*/BWE[1]*:
DATA[15:8]
BE[0]*/BWE[0]*:
DATA[7:0]
The boot configuration signal on the ADDR[11] pin and the EBCCRn.BC bit of the
external bus controller determine whether the signals are used as BE[3:0]* or
BWE[3:0]*.
All High
Data Acknowledge/Ready
Flow control signal (refer to Section “7.3.6 Access Modes”).
Input
ACK*/ READY Input/output
PU
3-3
Initial State
High
Chapter 3 Signals
Table 3.1.3 External Interface Signals (2/2)
Signal Name
Type
Description
Initial State
CARD1CSH*
CARD1CSL*
Output
PU
PCMCIA card slot 1 chip select
Chip select signals for PCMCIA card slot 1.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARD2CSH*
CARD2CSL*
Output
PU
PCMCIA card slot 2 chip select
Chip select signals for PCMCIA card slot 2.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARDREG*
Output
PU
PCMCIA card register
REG* signal for a PCMCIA card.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARDIORD*
Output
PU
PCMCIA card I/O read
IORD* signal for a PCMCIA card.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARDIOWR*
Output
PU
PCMCIA card I/O write
IOWR* signal for a PCMCIA card.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARDDIR*
Output
PU
PCMCIA card directory
Controls the direction of the bidirectional buffer used for a PCMCIA slot. This signal is
asserted during a read transaction when any of CARD2CSH*, CARD2CSL*,
CARD1CSH* and CARD1CSL* are asserted.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARD1WAIT*
Input
PU
PCMCIA card slot 1 wait
Card wait signal from PCMCIA card slot 1.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
CARD2WAIT*
Input
PU
PCMCIA card slot 2 wait
Card wait signal from PCMCIA card slot 2.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
3-4
Chapter 3 Signals
3.1.4
DMA Interface Signals
Table 3.1.4 DMA Interface Signals
Signal Name
Type
DMAREQ[1:0]
Input
PU
DMA Request
DMA transfer request signals from an external I/O device.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
DMAACK[1:0]
Output
DMA Acknowledge
DMA transfer acknowledge signals to an external I/O device.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
DMADONE*
3.1.5
Description
Input/output DMA Done
PU
DMADONE* is either used as an output signal that reports the termination of DMA
transfer or as an input signal that causes DMA transfer to terminate.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
Initial State
PIO input
PCI Interface Signals
Table 3.1.5 PCI Interface Signals (1/2)
Signal Name
Type
Description
Initial State
Output
PCI Clock
PCI bus clock signals.
A boot configuration signal (ADDR[18]) can determine whether the clock internally
generated in the TX4925 is used as PCICLK. If the TX4925 internal clock is selected,
the clock signals are output from these pins.
When these clock signals are not used, the pins can be set to High-Z using the
PCICLK Enable field of the pin configuration register (PCFG.PCICLKEN[2:1]).
Selected by
ADDR[18]
H: High
L: L
PCICLKIO
Input/output PCI Feedback Clock
PCI feedback clock input.
A boot configuration signal (ADDR[18]) can determine whether the clock internally
generated in the TX4925 is used as PCICLK. If the TX4925 internal clock is selected,
the clock signals are output and simultaneously fed back to the internal PCI block.
When using the PCI block, therefore, do not set the PCICLK Enable field of the pin
configuration register (PCFG.PCICLKIOEN) to 0.
Selected by
ADDR[18]
H: High
L: Input
PCIAD[31:0]
Input/output PCI Address and Data
Multiplexed address and data bus.
Input
C_BE[3:0]
Input/output Command and Byte Enable
Command and byte enable signals.
Input
PAR
Input/output Parity
Even parity signal for PCIAD[31:0] and C_BE[3:0]*.
Input
FRAME*
Input/output Cycle Frame
Indicates that bus operation is in progress.
Input
IRDY*
Input/output Initiator Ready
Indicates that the initiator is ready to complete data transfer.
Input
TRDY*
Input/output Target Ready
Indicates that the target is ready to complete data transfer.
Input
STOP*
Input/output Stop
The target sends this signal to the initiator to request termination of data transfer.
Input
PCICLK[2:1]
ID_SEL
DEVSEL*
Input
Initialization Device Select
Chip select signal used for configuration access.
Input/output Device Select
The target asserts this signal in response to access from the initiator.
3-5
Input
Input
Chapter 3 Signals
Table 3.1.5 PCI Interface Signals (2/2)
Signal Name
Type
REQ[3:2]*
Input
Description
Initial State
Input
Request
Signals used by the master to request bus mastership.
The boot configuration signal on the ADDR[1] pin determines whether the built-in PCI bus
arbiter is used.
In internal arbiter mode, REQ[3:2]* are PCI bus request input signals.
In external arbiter mode, REQ[3:2]* are not used. Because the pins are still placed in the
input state, they must be pulled up externally.
REQ[1]*
/INTOUT
Input/output/ Request
OD
Signal used by the master to request bus mastership.
The boot configuration signal on the ADDR[1] pin determines whether the built-in PCI bus
arbiter is used.
In internal arbiter mode, this signal is a PCI bus request input signal.
In external arbiter mode, this signal is an external interrupt output signal (INTOUT). Refer
to Section “15.3.7 Interrupt Requests”.
Selected by
ADDR[1]
H: Input
L: High-Z
REQ[0]*
Input/output Request
Signal used by the master to request bus mastership.
The boot configuration signal on the ADDR[1] pin determines whether the built-in PCI bus
arbiter is used.
In internal arbiter mode, this signal is a PCI bus request input signal.
In external arbiter mode, this signal is a PCI bus request output signal.
Selected by
ADDR[1]
H: Input
L: High
GNT[3:0]*
Input/output Grant
Indicates that bus mastership has been granted to the PCI bus master.
The boot configuration signal on the ADDR[1] pin determines whether the built-in PCI bus
arbiter is used.
In internal arbiter mode, all of GNT[3:0]* are PCI bus grant output signals.
In external arbiter mode, GNT[0]* is a PCI bus grant input signal. Because GNT[3:1]*
also become input signals, they must be pulled up externally.
Selected by
ADDR[1]
H: All High
L: Input
PERR*
Input/output Data Parity Error
Indicates a data parity error in a bus cycle other than special cycles.
Input
SERR*
Input/OD
Input
System Error
Indicates an address parity error, a data parity error in a special cycle, or a fatal error.
In host mode, SERR* is an input signal. In satellite mode, SERR* is an open-drain output
signal. The mode is determined by the boot configuration signal on the ADDR[19] pin.
3-6
Chapter 3 Signals
3.1.6
Serial I/O Interface Signals
Table 3.1.6 Serial I/O Interface Signals
Signal Name
Type
CTS [1:0]*
Input
PU *1
SIO Clear to Send
CTS* signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
RTS [1:0]*
Output
PU *1
SIO Request to Send
RTS* signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
RXD[1:0]
Input
PU *1
SIO Receive Data
Serial data input signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
TXD[1:0]
3-state
Output
PU *1
SIO Transmit Data
Serial data output signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
External Serial Clock
SIO clock input signal. SIO0 and SIO1 share this signal.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SCLK
*1:
Input
PU
Description
Initial State
These signals are pulled up for channel 0 only. No pull-up resistor is provided for channel 1.
3.1.7
Timer Interface Signals
Table 3.1.7 Timer Interface Signals
Signal Name
Type
TIMER[1:0]
Output
PU
TCLK
Input
PU
3.1.8
Description
Initial State
Timer Output
Timer output signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
External Timer Clock
Timer input clock signal. TMR0, TMR1, and TMR2 share this signal.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
Parallel I/O Interface Signals
Table 3.1.8 Parallel I/O Interface Signals
Signal Name
Type
Description
Initial State
PIO[31:20]
Input/output PIO Ports[31:20]
PU
Parallel I/O signals.
The pins are shared with other functions, including PC trace (refer to Section "3.3 Pin
Multiplexing"). The boot configuration signal on the TDO pin determines whether the
signals are used for PC trace.
Selected by
TDO
H: PIO input
L: Output
(PC trace
function)
PIO[19:0]
Input/output PIO Ports[19:0]
PU *1
Parallel I/O signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
Input
*1:
PIO[17:12] do not have pull-up resistors.
3-7
Chapter 3 Signals
3.1.9
AC-link Interface Signals
Table 3.1.9 AC-link Interface Signals
Signal Name
Type
ACRESET*
Output
AC '97 Master H/W Reset
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SYNC
Output
48 kHz Fixed Rate Sample Sync
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SDOUT
Output
Serial, Time Division Multiplexed, AC '97 Output Stream
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SDIN]1]
Input
Serial, Time Division Multiplexed, AC ‘97 Input Stream
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SDIN[0]
Input
Serial, Time Division Multiplexed, AC '97 Input Stream
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
BITCLK
Input
12.288 MHz Serial Data Clock
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
3.1.10
Description
Initial State
Interrupt Signals
Table 3.1.10 Interrupt Signals
Signal Name
Type
NMI*
Input
PU
Non-Maskable Interrupt
Non-maskable interrupt signal.
Input
INT[7:0]*
Input
PU
External Interrupt Requests
External interrupt request signals.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
3.1.11
Description
Initial State
CHI Interface Signals
Table 3.1.11 CHI Interface Signals
Signal Name
Type
Description
Initial State
CHIFS
PIO input
Input/output CHI Frame synchronization
CHI frame synchronization signal. This pin can be used in either output or input mode.
PU
In output mode, the pin allows the TX4925 to become the master CHI synchronization
source. In input mode, the pin allows the external peripheral device to become the
master CHI synchronization source. In that case, the TX4925 CHI module becomes a
slave for external synchronization.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
CHICLK
Input/output CHI Clock
CHI clock signal. This pin can be used in either output or input mode. In output mode,
PU
the pin allows the TX4925 to become the master CHI clock source. In input mode, the
pin allows the external peripheral device to become the master CHI clock source. In
that case, the TX4925 CHI module becomes a slave for the external clock.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
CHIDOUT
CHIDIN
PIO input
Output
PU
CHI Data Output
CHI serial data output signal.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
Input
PU
CHI Data Input
CHI serial data input signal.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
3-8
Chapter 3 Signals
3.1.12
SPI Interface Signals
Table 3.1.12 SPI Interface Signals
Signal Name
Type
SPICLK
Output
PU
SPI Clock
This pin is used for a data clock to or from an SPI slave device.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SPIOUT
Output
PU
SPI Data Output
This signal contains data to be shifted to an SPI slave device.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
Input
PU
SPI Data Input
This signal contains data to be shifted from an SPI slave device.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
SPIIN
3.1.13
Description
Initial State
NAND Flash Memory Interface Signals
Table 3.1.13 NAND Flash Memory Interface Signals
Signal Name
Type
ND_ALE
Output
NAND Flash Address Latch Enable
ALE signal for NAND flash memory.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
ND_CLE
Output
NAND Flash Command Latch Enable
CLE signal for NAND flash memory.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
ND_CE*
Output
NAND Flash Chip Enable
CE signal for NAND flash memory.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
ND_RE*
Output
NAND Flash Read Enable
RE signal for NAND flash memory.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
ND_WE*
Output
NAND Flash Write Enable
WE signal for NAND flash memory.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
ND_R/B*
Input
NAND Flash Ready/Busy
Ready/Busy signal for NAND flash memory.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
PIO input
3.1.14
Description
Initial State
Extended EJTAG Interface Signals
Table 3.1.14 Extended EJTAG Interface Signals (1/2)
Signal Name
Type
TCK
Input
PU
JTAG Test Clock Input
Clock input signal for JTAG.
TCK is used to execute JTAG instructions and input/output data.
TDI/DINT*
Input
PU
Input
JTAG Test Data Input/Debug Interrupt
When PC trace mode is not selected, this signal is a JTAG data input signal. It is used
to input serial data to JTAG data/instruction registers.
When PC trace mode is selected, this signal is an interrupt input signal used to cancel
PC trace mode for the debug unit.
TDO/TPC[0]
Output
Description
JTAG Test Data Output/PC Trace Output
When PC trace mode is not selected, this signal is a JTAG data output signal. Data is
output by means of serial scan.
When PC trace mode is selected, this signal outputs the value of the noncontiguous
program counter in sync with the debug clock (DCLK).
3-9
Initial State
Input
Input
Chapter 3 Signals
Table 3.1.14 Extended EJTAG Interface Signals (2/2)
Signal Name
TPC[3:1]
Type
Output
Description
Initial State
PC Trace Output
TPC[3:1] output the value of the noncontiguous program counter in sync with DCLK.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
Selected by
TDO
H: PIO input
L: All High
TMS
Input
PU
JTAG Test Mode Select Input
TMS mainly controls state transition in the TAP controller state machine.
Input
TRST*
Input
Test Reset Input
Asynchronous reset input for the TAP controller and debug support unit (DSU).
When an EJTAG probe is not connected, this pin must be fixed to low. When
connecting an EJTAG probe, prevent floating, for example, by connecting a pull-up
resistor. When this signal is deasserted, G-Bus timeout detection is disabled (refer to
Section “5.1.1 Detecting G-Bus Timeout”).
Input
DCLK
Output
Debug Clock
Clock output signal for the real-time debugging system.
When PC trace mode is selected, the TPC[3:1] and PCST signals are output
synchronously. This clock is the TX49/H2 core operating clock (CPUCLK) divided by
3.
The pin is shared with other functions (refer to Section "3.3 Pin Multiplexing").
Selected by
TDO
H: PIO input
L: Low
PCST[8:0]
Output
PC Trace Status Information
Outputs PC trace status and other information.
The pins are shared with other functions (refer to Section "3.3 Pin Multiplexing").
Selected by
TDO
H: PIO input
(PCST[8:1])
BC32K(PC
ST[0])
L: All Low
3.1.15
Clock Signals
Table 3.1.15 Clock Signals
Signal Name
Type
Description
Initial State
MASTERCLK
Input
Master Clock
Input pin for the TX4925 operating clock. A crystal resonator cannot be connected to
this pin because the pin does not contain an oscillator.
Input
C32KIN
Input
32 KHz Crystal Input
Connect this pin and C32KOUT to a 32.768 kHz crystal.
Input
C32KOUT
Output
32 KHz Crystal output
Connect this pin and C32KIN to a 32.768 kHz crystal.
Output
BC32K
Output
PU
Buffer output of 32 KHz Crystal
Buffer output for a 32.768 kHz clock.
Selected by
TDO
H: Output
(BC32K)
L: Low
3.1.16
Initialization Signals
Table 3.1.16 Initialization Signals
Signal Name
Type
Description
RESET*
Input
SMT
Reset
Reset signal.
Input
PON*
Input
SMT
Power On Reset
Initializes the CG. For timing, refer to Section "6.3 Power-On Sequence".
Input
3-10
Initial State
Chapter 3 Signals
3.1.17
Test Signals
Table 3.1.17 Test Signals
Signal Name
Type
TEST*
Input
Test Mode Setting
Test pin. This pin must be fixed to High.
Input
SCANENB*
Input
Scan Mode Test Control
Test pin. This pin must be fixed to High.
Input
3.1.18
Description
Initial State
Power Supply Pins
Table 3.1.18 Power Supply Pins
Signal Name
Type
Description
Initial State
PLL1VDD_A

PLL Power Pins
PLL analog power supply pins.
PLL1VDD_A = 1.5 V

PLL1VSS_A

PLL Ground Pins
PLL analog ground pins.
PLL1VSS_A = 0 V

VccInt
(VDDC)

Internal Power Pins
Digital power supply pins for internal logic. VccInt = 1.5 V.

VccIO
(VDDS)

I/O Power Pins
Digital power supply pins for input/output pins. VccIO = 3.3 V.

Vss

Ground Pins
Digital ground pins. Vss = 0 V.

3-11
Chapter 3 Signals
3.2
Boot Configuration
The ADDR[19:0], UAE, SADDR10 and TDO signals can also function as configuration signals for
initially setting various functions upon booting the system. The states of the configuration signals
immediately after the RESET* or PON* signal is deasserted are read as initial values for the TX4925
internal registers. A High signal level sets a value of 1 and a Low signal level sets a value of 0. UAE,
SADDR10 and ADDR[17,16,10] are used for testing. Ensure that these pins will not set to 0.
All configuration signals are provided with internal pull-up resistors. To drive a signal Low, pull down the
corresponding pin on the board using an approx. 4.7 kΩ resistor. Driving a signal High does not require a
pull-down resistor. Any signals defined as Reserved should not be pulled down.
Table 3.2.1 lists the functions that can be set using configuration signals. Table 3.2.2 and 3.2.3 describe
each configuration signal. Note that the functions of some pins vary with the boot memory device used.
Table 3.2.1 Functions that Can be Set Using Configuration Signals
Peripheral
Function
Functions that Can be Set
PCICLK enable
PCI controller
External bus
controller
SDRAM
controller
Others
Configuration
Signal
ADDR[18]
PCI controller operating mode (satellite or host)
ADDR[15]
PCI bus arbiter selection (internal or external)
ADDR[1]
PCI bus master*1
ADDR[11]
Division ratio of SYSCLK to GBUSCLK
ADDR[4:3]
Boot device selection
ADDR[8:6]
BE[3:0]*/BWE[3:0]* function selection upon booting
ADDR[11]
Handling of the ACK signal upon booting (internal or external)
ADDR[5]
Data bus width for the boot device
ADDR[13:12]
Data bus width for the boot device*2
ADDR[13]
Row address size for boot memory SyncFlash*2
BADDR[5,2]
*2
Column address size for boot memory SyncFlash
ADDR[11,12]
Endian setting
ADDR[14]
Controlling built-in timer interrupts of the TX49/H2 core
ADDR[0]
PC trace
TDO
*1: Valid when the boot memory device is PCI and the PCIC operates in satellite mode.
*2: Valid when the boot memory device is SyncFlash.
3-12
Chapter 3 Signals
Table 3.2.2 Boot Configuration Specified with the ADDR[19:0], TDO, UAE and SADDR10 Signals (1/2)
Signal
Corresponding
Register Bit
Description
Configuration
Determined at
ADDR[19]
Reserved
This signal will be set to 0 upon booting.
CCFG bit [12]
RESET* deassert
edge
ADDR[18]
PCI Clock Enable
Specifies whether the clock generated by the TX4925 internal clock
generator is used as a PCI clock.
L = Use a PCI clock input from an external device.
The PCI clock is input via PCICLKIO.
PCICLK[2:1] are placed in High-Z state.
H = Use a clock generated by the TX4925 clock generator.
The clock is output from PCICLK[2:1] and PCICLKIO. The clock output
from PCICLKIO is fed back for use with the internal PCIC.
PCFG. PCICLKEN
PON* deassert edge
ADDR[17:16]
CCFG.bit[18](ADDR[
Reserved
Used for testing. Because this signal is used for setting a clock 17])
CCFG.bit[27](ADDR[
frequency, ensure that the signal will not be set to 0 upon booting.
16])
ADDR[15]
PCI Controller Mode Select
Specifies the operating mode of the TX4925 PCI controller.
L = Satellite
H = Host
CCFG. PCIMODE
RESET* deassert
edge
ADDR[14]
TX4925 Endian Mode
Specifies the TX4925 endian mode.
L = Little endian
H = Big endian
CCFG. ENDIAN
RESET* deassert
edge
ADDR[13:12]
Boot ROM Bus Width
Specifies the data bus width when booting from a memory device
connected to the external memory controller. If SyncFlash is selected
as a boot memory device, refer to Table 3.2.3.
LL = Reserved
LH = 32 bits
HL = 16 bits
HH = 8 bits
EBCCR0.BSZ
RESET* deassert
edge
ADDR[11]
Boot Byte Enable Type
When booting from a memory device connected to the external
memory controller, specifies the function of the BE[3:0]*/BWE[3:0]*
pins upon booting. Be sure that this bit does not become “0” when
booting from PCL.
L = BE[3:0]* (Byte Enable)
H = BWE[3:0]* (Byte Write Enable)
When booting from SyncFlash
Refer to Table 3.2.3.
EBCCR0.BC
RESET* deassert
edge
ADDR[10]
Reserved
Used for testing. Setting this signal to 0 disables TCK, TDI, TMS,
TRST* and TDO. Ensure that the signal will not be set to 0 upon
booting.
CCFG.bit[31]
RESET* deassert
edge
ADDR[9]
Reserved
This signal will not be set to 0 upon booting.

3-13
PON* deassert edge
RESET* deassert
edge
Chapter 3 Signals
Table 3.2.2 Boot Configuration Specified with the ADDR[19:0], TDO, UAE and SADDR10 Signals (2/2)
Signal
ADDR[8:6]
ADDR[5]
Corresponding
Register Bit
Description
Select Boot Memory
Selects boot memory.
HHH = Device connected to channel 0 of the external bus controller
(clock frequency division ratio: 1/1)
HHL = Device connected to channel 0 of the external bus controller
(clock frequency division ratio: 1/2)
HLH = Device connected to channel 0 of the external bus controller
(clock frequency division ratio: 1/3)
HLL = Reserved
LHH = PCI boot
LHL = Reserved
LLH = Reserved
LLL = SyncFlash memory connected to SDRAMC channel 0
Boot ACK* Input
Specifies the access mode for external bus controller channel 0. If
SyncFlash is selected as a boot memory device, refer to Table 3.2.3.
L = ACK* Input Mode Enable
H = ACK* Input Mode Disable
Configuration
Determined at
EBCCR0.ME
RESET* deassert
edge
EBCCR0.EACK
RESET* deassert
edge
ADDR[4:3]
CCFG. SYSSP
Select SYSCLK Frequency
Specifies the division ratio of the SYSCLK frequency to the G-Bus clock
(GBUSCLK) frequency.
LL = 4 (SYSCLK frequency = GBUSCLK frequency/4)
LH = 3 (SYSCLK frequency = GBUSCLK frequency/3)
HL = 2 (SYSCLK frequency = GBUSCLK frequency/2)
HH = 1 (SYSCLK frequency = GBUSCLK frequency)
ADDR[2]
Reserved
This signal will not be set to 0 upon booting.
If Syncflash is selected as a boot memory device, refer to Table 3.2.3.
ADDR[1]
PCI Arbiter Select
Selects a PCI bus arbiter.
H = Built-in PCI bus arbiter.
L = External PCI bus arbiter.
CCFG.PCIARB
RESET* deassert
edge
ADDR[0]
CCFG.TINTDIS
TX49/H2 Internal Timer Interrupt Disable
Specifies whether timer interrupts within the TX49/H2 core are enabled.
H = Disable timer interrupts within the TX49/H2 core.
L = Enable timer interrupts within the TX49/H2 core.
RESET* deassert
edge
TDO
CCFG.PCTRCE
PC Trace
Specifies whether PIO[31:20] and BC32K are used as PC trace signals.
H = Use as PIO[31:20] and BC32K
L = Use as TPC[3:1], PCST[7:0] and DCLK
PON* deassert edge
UAE
Reserved
Used for testing. Because this signal is used for setting a clock
frequency, ensure that the signal will not be set to 0 upon booting.
PON* deassert edge
SADDR10
Reserved
Used for testing. Because this signal is used for setting a clock
frequency, ensure that the signal will not be set to 0 upon booting.
3-14

CCFG.bit[28]

PON* deassert edge
RESET*deassert
edge
PON* deassert edge
Chapter 3 Signals
Table 3.2.3 Boot Configuration When SyncFlash is Used as Boot Memory
Signal
Corresponding
Register Bit
Description
Configuration
Determined at
ADDR[13]
Boot ROM Bus Width
Specifies the data bus width when booting from SyncFlash memory.
L = 32 bits
H = 16 bits
SDCCR0.MW
RESET* deassert edge
ADDR[5,2]
Boot SyncFlash Memory Row Size
Specifies the SyncFlash memory row size when booting from
SyncFlash memory.
LH = Reserved
LL = 13 bits
HH = 12 bits
HL = 11 bits
SDCCR0.RS
RESET* deassert edge
ADDR[12:11]
Boot SyncFlash Memory Column Size
Specifies the SyncFlash memory column size when booting from
SyncFlash memory.
HH = 11 bits
HL = 9 bits
LH = 10 bits
LL = 8 bits
SDCCR0.CS
RESET* deassert edge
3-15
Chapter 3 Signals
3.3
Pin Multiplexing
The TX4925 has 35 multiplexed pins as shown in Table 3.3.1. Each pin is used for different functions
depending on the settings of the PCFG control register or the TDO boot configuration signal. Table 3.3.2 to
Table 3.3.8 show how to set the function for each pin.
Table 3.3.1 Multiplexed Pins
Pin No.
B5
Signal Name
PIO[31]
Shared Functions
PIO[31]/CARDDIR*/BCLK/TPC[2]
D6
PIO[30]
PIO[30]/CARDREG*/PCST[8]
B6
PIO[29]
PIO[29]/CARD2CSH*/CE5*/INT[7] *1/PCST[6]
C6
PIO[28]
PIO[28]/CARD2CSL*/CE4*/INT[6] *1/PCST[7]
A6
PIO[27]
PIO[27]/CARD2WAIT**2/CHIOUT/PCST[5]
A4
PIO[26]
PIO[26]/CARD1CSH*/DCLK
C5
PIO[25]
PIO[25]/CARD1CSL*/TPC[3]
A5
PIO[24]
PIO[24]/CARD1WAIT**2/TPC[1]
C8
PIO[23]
PIO[23]/SPICLK/PCST[2]
A7
PIO[22]
PIO[22]/SPIIN/PCST[3]
B7
PIO[21]
PIO[21]/SPIOUT/PCST[4]
B9
PIO[20]
PIO[20]/TIMER[0]/CHIFS/PCST[1]
A8
PIO[19]
PIO[19]/TIMER[1]/CHICLK
B8
PIO[18]
PIO[18]/TCLK *2/CHIDIN
W15
PIO[17]
PIO[17]/AC_SDIN[0]/ND_WE*/TXD[1]
V16
PIO[16]
PIO[16]/AC_SDOUT/ND_RB*/RXD[1]
W16
PIO[15]
PIO[15]/AC_BITCLK/ND_CLE/RTS[1]/INT[5] *1
Y16
PIO[14]
PIO[14]/AC_SYNC/ND_RE*/CTS[1]/INT[4] *1
V15
PIO[13]
PIO[13]/AC_SDIN[1]/ND_ALE
Y15
PIO[12]
PIO[12]/AC_RST*/ND_CE*
Y13
PIO[11]
PIO[11]/TXD[0]
W13
PIO[10]
PIO[10]/RXD[0]
W14
PIO[9]
PIO[9]/RTS[0]*/INT[3] *1
Y14
PIO[8]
PIO[8]/CTS[0]*/INT[2] *1
U15
PIO[7]
PIO[7]/INT[1] *1
U13
PIO[6]
PIO[6]/INT[0] *1
V13
PIO[5]
PIO[5]/SCLK *3
W11
PIO[4]
PIO[4]/DMAACK[1]
W12
PIO[3]
PIO[3]/DMAREQ[1]
V10
PIO[2]
PIO[2]/DMAACK[0]
V12
PIO[1]
PIO[1]/DMAREQ[0]
U10
PIO[0]
PIO[0]/DMADONE
Y17
BC32K
V6
U6
PCST[0]
BE[3]*/BWE[3]*
*4
CARDIORD* *4
BE[2]*/BWE[2]*
*4
CARDIOWR* *4
*1: INT[7:0] are directly input to the IRC. When these signals are not used as interrupt signals, do not
enable interrupts in the IRC.[m2]
*2: TCLK is directly connected to the TCLK pin of the timer module. When this signal is not used as
TCLK, do not enable the external clock (TCLK) in the timer module.
*3: SCLK is directly connected to the SCLK pin of the SIO module. When this signal is not used as
SCLK, do not enable the external clock (SCLK) in the SIO module.
*4: BE[3]*/BWE[3] functions as CARDIORD* when accessing a PCMCIA device and as BE[3]*/BWE[3]
when accessing other devices. Similarly, BE[2]*/BWE[2] functions as CARDIOWR* when accessing
a PCMCIA device and as BE[2]*/BWE[2] when accessing other devices.
3-16
Chapter 3 Signals
Table 3.3.2 Function Selection for PIO[31:24] (1)
Pin Name
Function
TPC[2]
PIO[31]
PIO[30]
PIO[29]
PIO[28]
PIO[27]
PIO[26]
PIO[25]
PIO[24]
CARDDIR*
PCFG Control Bits
Boot Signal
TDO
SELCARD[1] SELCARD[0] SELCE[1]
SELCE[0]
0
-
-
-
-
-
1
1
-
-
-
-
1
-
1
-
-
-
PIO[31]
1
0
0
-
-
-
PCST[8]
0
-
-
-
-
-
1
1
-
-
-
-
1
-
1
-
-
-
CARDREG*
PIO[30]
1
0
0
-
-
PCST[6]
0
-
-
-
-
-
CARD2CSH*
1
1
-
-
-
-
CE[5]*
1
0
-
1
-
-
PIO[29]
1
0
-
0
-
-
PCST[7]
0
-
-
-
-
-
CARD2CSL*
1
1
-
-
-
-
CE[4]*
1
0
-
-
1
-
PIO[28]
1
0
-
-
0
PCST[5]
0
-
-
-
-
-
CHIDOUT
1
-
-
-
-
1
CARD2WAIT*
1
1
-
-
-
0
PIO[27]
1
0
-
-
-
0
DCLK
0
-
-
-
-
-
CARD1CSH*
1
-
1
-
-
-
PIO[26]
1
-
0
-
-
-
TPC[3]
0
-
-
-
-
-
CARD1CSL*
1
-
1
-
-
-
PIO[25]
1
-
0
-
-
-
TPC[1]
0
-
-
-
-
-
CARD1WAIT*
1
-
1
-
-
-
PIO[24]
1
-
0
-
-
-
Table 3.3.3 Function Selection for PIO[23:21] (2)
Pin Name
Function
Boot Signal
TDO
PCFG Control
Bits
SELSPI
PIO[23]
PIO[22]
PIO[21]
SELCHI
PCST[2]
0
-
SPICLK
1
1
PIO[23]
1
0
PCST[3]
0
-
SPIIN
1
1
PIO[22]
1
0
PCST[4]
0
-
SPIOUT
1
1
PIO[21]
1
0
3-17
Chapter 3 Signals
Table 3.3.4 Function Selection for PIO[20:18] (3)
Pin Name
PIO[20]
PIO[19]
PIO[18]
Function
Boot Signal
TDO
PCFG Control Bits
SELCHI
SELTMR[1]
SELTMR[0]
PCST[1]
0
-
-
-
PIO[20]
1
0
-
0
TIMER[0]
1
0
-
1
CHIFS
1
1
-
-
PIO[19]
-
0
0
-
TIMER[1]
-
0
1
-
CHICLK
-
1
-
-
PIO[18]
-
0
-
-
CHIDIN
-
1
-
-
Table 3.3.5 Function Selection for PIO[17:12] (4)
Pin Name
PIO[17]
PIO[16]
PIO[15]
PIO[14]
PIO[13]
PIO[12]
Function
Boot Signal
TDO
PIO[17]
-
PCFG Control Bits
SELACLC SELNAND SELSIO[1] SELSIOC[1]
0
0
0
-
TXD[1]
-
0
0
1
-
ND_WE*
-
0
1
-
-
AC_SDIN0
-
1
-
-
-
PIO[16]
-
0
0
0
-
RXD[1]
-
0
0
1
-
ND_RB*
-
0
1
-
-
AC_SDOUT
-
1
-
-
-
PIO[15]
-
0
0
-
0
RTS[1]
-
0
0
1
1
ND_CLE
-
0
1
-
-
AC_BITCLK
-
1
-
-
-
PIO[14]
-
0
0
-
0
1
CTS[1]
-
0
0
1
ND_RE*
-
0
1
-
-
AC_SYNC
-
1
-
-
-
PIO[13]
-
0
0
-
-
ND_ALE
-
0
1
-
-
AC_SDIN1
-
1
-
-
-
PIO[12]
-
0
0
-
-
ND_CE*
-
0
1
-
-
AC_RST*
-
1
-
-
-
3-18
Chapter 3 Signals
Table 3.3.6 Function Selection for PIO[11:8] (5)
Pin Name
PIO[11]
PIO[10]
PIO[9]
PIO[8]
Function
Boot Signal
TDO
PCFG Control Bits
SELSIO[0]
SELSIOC[0]
PIO[11]
-
0
-
TXD[0]
-
1
-
PIO[10]
-
0
-
RXD[0]
-
1
-
PIO[9]
-
-
0
RTS[0]
-
1
1
PIO[8]
-
-
0
CTS[0]
-
1
1
Table 3.3.7 Function Selection for PIO[7:5] (6)
Pin Name
PIO[7]
(*1)
PIO[6]
PIO[5]
Function
Boot Signal
TDO
PIO[7]
-
INT[1]
-
(*1)
PIO[6]
-
INT[0]
-
(*1)
PIO[5]
-
SCLK
-
*1: PIO[7:5] : Refer to “*2” of “Table 3.3.1 Multiplexed Pins”.
Table 3.3.8 Function Selection for PIO[4:0] and BC32K (7)
Pin Name
PIO[4]
PIO[3]
PIO[2]
PIO[1]
PIO[0]
BC32K
PCFG Control Bits
Function
Boot Signal
TDO
PIO[4]
-
0
-
-
DMAACK[1]
-
1
-
-
PIO[3]
-
0
-
-
DMAREQ[1]
-
1
-
-
PIO[2]
-
-
0
-
DMAACK[0]
-
-
1
-
SELDMA[1] SELDMA[0] SELDONE
PIO[1]
-
-
0
-
DMAREQ[0]
-
-
1
-
PIO[0]
-
-
-
0
DMADONE
-
-
-
1
PCST[0]
0
-
-
-
BC32K
1
-
-
-
3-19
Chapter 3 Signals
3-20
Chapter 4 Address Mapping
4.
Address Mapping
This chapter explains the physical address map of TX4925.
Please refer to “64-Bit TX System RISC TX49/H2 Core Architecture” about the details of mapping to a
physical address from the virtual address of TX49/H2 core.
4.1
TX4925 Physical Address Map
TX4925 supports up to 4G (232) bytes of physical address.
Following resources are to be allocated in the physical address of the TX4925.
•
TX4925 Internal registers (refer to “4.2 Register Map”)
•
SDRAM (refer to “9.3.2 Address Mapping”)
•
External Devices such as ROM, I/O Devices (refer to “7.3.3 Address Mapping”)
•
PCI Bus (refer to “10.3.4 Initiator Access”)
Each resource is to be allocated in arbitrary physical addresses by the register setup. Refer to the
explanation of each controller for the details of the mapping.
At initialization, only the internal registers and the memory space which stores the TX49/H2 core reset
vectors are allocated shown as Figure 4.1.1. Usually ROM connected to the external bus controller channel 0
is used for the memory device that stores the reset vectors. TX4925 also supports using the memories on PCI
bus as the memory device stores the reset vectors. Refer to “10.3.12 PCI Boot Configuration” for detail
about this.
0xFFFF_FFFF
0xFF1F_FFFF
TX4925 Internal Register
64 K Bytes
External Bus Controller Channel 0
4 M Bytes
0xFF1F_0000
0x1FFF_FFFF
0x1FC0_0000
0x0000_0000
Figure 4.1.1 Physical Address Map at Initializing System
It is possible to access a resource of TX4925 as a PCI target device through PCI bus. About how to
allocate resources of TX4925 to the PCI bus address space, refer to “10.3.5 Target Access”.
4-1
Chapter 4 Address Mapping
4.2
Register Map
4.2.1
Addressing
TX4925 internal registers are to be accessed through 64 K bytes address space that is based on
physical address 0xFF1F_0000 or pointed address by RAMP register (refer to 5.2.11). Figure 4.2.1
shows how to generate internal register address. Physical address 1 and physical address 2 shown
Figure 4.2.1 access the same register.
In TX49/H2 Core, the physical address form 0xFF00_0000 to 0xFF3F_FFFF are unchached mapped
to the virtual address form 0xFF00_0000 to 0xFF3F_FFFF.
This space includes the region form 0xFF1F_0000 allocated TX4925 internal registers at
initialization.
Base Address
(0xFF1F_0000)
+
Offset Address
=
Physical Address 1
Base Address Register
(RAMP)
+
Offset Address
=
Physical Address 2
(Initial Value = 0xFF1F_0000)
Figure 4.2.1 Generating Physical Address for a Internal Register
4.2.2
Ways to Access to Internal Registers
2 ways to access to the internal registers of TX4925 are supported. First is 32-bit register access.
Second is PCI configuration register access in PCI satellite mode.
32-bit register supports 32-bit size access only. Another size access without 32-bit size is undefined.
When the build-in PCI controller works in the satellite mode (refer to “10.3.1 Terminology
Explanation”), PCI configuration registers are to be accessed through PCI bus in configuration cycles. It
is possible to access to the arbitrary size of PCI configuration register as always Little Endian space
regardless the system setup.
4-2
Chapter 4 Address Mapping
4.2.3
Register Map
The outline of the register map allocated built-in controllers is shown in Table 4.2.1, and the table of
the internal registers is shown in Table 4.2.2, respectively.
Please refer to “10.5 PCI Configuration Space Register” about PCI configuration register.
Table 4.2.1 Register Map
Offset Address
Peripheral Controller
Detail
0x0000 to 0x7FFF
Reserved
-
0x8000 to 0x8FFF
SDRAMC
Refer to 9.4
0x9000 to 0x9FFF
EBUSC
Refer to 7.4
0xA000 to 0xA7FF
Reserved
-
0xA800 to 0xAFFF
CHI
Refer to 16.4
0xB000 to 0xBFFF
DMAC
Refer to 8.4
0xC000 to 0xCFFF
NDFMC
Refer to 18.4
0xD000 to 0xDFFF
PCIC
Refer to 10.4
0xE000 to 0xEFFF
CONFIG
Refer to 5.2
0xF000 to 0xF0FF
TMR0
Refer to 12.4
0xF100 to 0xF1FF
TMR1
Refer to 12.4
0xF200 to 0xF2FF
TMR2
Refer to 12.4
0xF300 to 0xF3FF
SIO0
Refer to 11.4
0xF400 to 0xF4FF
SIO1
Refer to 11.4
0xF500 to 0xF50F
PIO
Refer to 13.4
0xF510 to 0xF6FF
IRC
Refer to 15.4
0xF700 to 0xF7FF
ACLC
Refer to 14.4
0xF800 to 0xF8FF
SPI
Refer to 17.4
0xF900 to 0xF9FF
RTC
Refer to 19.4
0xFA00 to 0xFFFF
Reserved
-
4-3
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (1/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
SDRAM Controller (SDRAMC)
0x8000
32
SDCCR0
SDRAM Channel Control Register 0
0x8004
32
SDCCR1
SDRAM Channel Control Register 1
0x8008
32
SDCCR2
SDRAM Channel Control Register 2
0x800C
32
SDCCR3
SDRAM Channel Control Register 3
0x8020
32
SDCTR
SDRAM Timing Register
0x802C
32
SDCCMD
SDRAM Command Register
0x8030
32
SFCMD
Sync Flash Command Register
0x9000
32
EBCCR0
EBUS Channel Control Register 0
0x9004
32
EBBAR0
EBUS Base Address Register 0
External Bus Controller (EBUSC)
0x9008
32
EBCCR1
EBUS Channel Control Register 1
0x900C
32
EBBAR1
EBUS Base Address Register 1
0x9010
32
EBCCR2
EBUS Channel Control Register 2
0x9014
32
EBBAR2
EBUS Base Address Register 2
0x9018
32
EBCCR3
EBUS Channel Control Register 3
0x901C
32
EBBAR3
EBUS Base Address Register 3
0x9020
32
EBCCR4
EBUS Channel Control Register 4
0x9024
32
EBBAR4
EBUS Base Address Register 4
0x9028
32
EBCCR5
EBUS Channel Control Register 5
0x902c
32
EBBAR5
EBUS Base Address Register 5
0x9030
32
EBCCR6
EBUS Channel Control Register 6
0x9034
32
EBBAR6
EBUS Base Address Register 6
0x9038
32
EBCCR7
EBUS Channel Control Register 7
0x903c
32
EBBAR7
EBUS Base Address Register 7
32
CTRL
CHI Control Register
CHI Module (CHI)
0xA800
0xA804
32
PNTREN
CHI Pointer Enable Register
0xA808
32
RXPTRA
CHI Receive Pointer A Register
0xA80C
32
RXPTRB
CHI Receive Pointer B Register
0xA810
32
TXPTRA
CHI Transmit Pointer A Register
0xA814
32
TXPTRB
CHI Transmit Pointer B Register
0xA818
32
CHISIZE
CHI Size Register
0xA81C
32
RXSTRT
CHI RX Start Register
0xA820
32
TXSTRT
CHI TX Start Register
0xA824
32
HOLD
CHI TX/RX Hold Register
0xA828
32
CLOCK
CHI Clock Register
0xA82C
32
CHIINTE
CHI Interrupt Enable Register
0xA830
32
CHIINT
CHI Interrupt Status Register
4-4
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (2/8)
DMA Controller (DMAC)
0xB000
32
DMCHAR0
DMA Chain Address Register 0
0xB004
32
DMSAR0
DMA Source Address Register 0
0xB008
32
DMDAR0
DMA Destination Address Register 0
0xB00C
32
DMCNTR0
DMA Count Register 0
0xB010
32
DMSAIR0
DMA Source Address Increment Register 0
DMA Destination Address Increment Register 0
0xB014
32
DMDAIR0
0xB018
32
DMCCR0
DMA Channel Control Register 0
0xB01C
32
DMCSR0
DMA Channel Status Register 0
0xB020
32
DMCHAR1
DMA Chain Address Register 1
0xB024
32
DMSAR1
DMA Source Address Register 1
0xB028
32
DMDAR1
DMA Destination Address Register 1
0xB02C
32
DMCNTR1
DMA Count Register 1
0xB030
32
DMSAIR1
DMA Source Address Increment Register 1
0xB034
32
DMDAIR1
DMA Destination Address Increment Register 1
0xB038
32
DMCCR1
DMA Channel Control Register 1
DMA Channel Status Register 1
0xB03C
32
DMCSR1
0xB040
32
DMCHAR2
DMA Chain Address Register 2
0xB044
32
DMSAR2
DMA Source Address Register 2
0xB048
32
DMDAR2
DMA Destination Address Register 2
0xB04C
32
DMCNTR2
DMA Count Register 2
0xB050
32
DMSAIR2
DMA Source Address Increment Register 2
DMA Destination Address Increment Register 2
0xB054
32
DMDAIR2
0xB058
32
DMCCR2
DMA Channel Control Register 2
0xB05C
32
DMCSR2
DMA Channel Status Register 2
0xB060
32
DMCHAR3
DMA Chain Address Register 3
0xB064
32
DMSAR3
DMA Source Address Register 3
0xB068
32
DMDAR3
DMA Destination Address Register 3
0xB06C
32
DMCNTR3
DMA Count Register 3
0xB070
32
DMSAIR3
DMA Source Address Increment Register 3
0xB074
32
DMDAIR3
DMA Destination Address Increment Register 3
0xB078
32
DMCCR3
DMA Channel Control Register 3
0xB07C
32
DMCSR3
DMA Channel Status Register 3
0xB0A4
32
DMMFDR
DMA Memory Fill Data Register
0xB0A8
32
DMMCR
DMA Master Control Register
NAND Flush Memory Data Transmit Register
NAND Flush Memory Controller (NDFMC)
0xC000
32
NDFDTR
0xC004
32
NDFMCR
NAND Flush Memory Mode Control Register
0xC008
32
NDFSR
NAND Flush Memory Status Register
0xC010
32
NDFISR
NAND Flush Memory Interrupt Status Register
0xC014
32
NDFIMR
NAND Flush Memory Interrupt Mask Register
0xC018
32
NDFSPR
NAND Flush Memory Strobe Plus width Register
0xC024
32
NDFSTR
NAND Flush Memory Reset Register
4-5
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (3/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
PCI Controller (PCIC)
0xD000
32
PCIID
ID Register (Device ID, Vendor ID)
0xD004
32
PCISTATUS
PCI Status, Command Register (Status, Command)
0xD008
32
PCICCREV
Class Code, Revision ID Register (Class Code, Revision ID)
0xD00C
32
PCICFG1
PCI Configuration 1 Register
(BIST, Header Type, Latency Timer, Cache Line Size)
0xD010
32
P2GM0PLBASE
P2G Memory Space 0 PCI Lower Base Address Register
(Base Address 0 Lower)
0xD014
32
P2GM1PLBASE
P2G Memory Space 1 PCI Lower Base Address Register
(Base Address 1 Lower)
0xD018
32
P2GM2PBASE
P2G Memory Space 2 PCI Base Address Register
(Base Address 2)
0xD01C
32
P2GIOPBASE
P2G I/O Space PCI Base Address Register (Base Address 3)
0xD02C
32
PCISID
Subsystem ID Register (Subsystem ID, Subsystem Vendor ID)
0xD034
32
PCICAPPTR
Capabilities Pointer Register (Capabilities Pointer)
0xD03C
32
PCICFG2
PCI Configuration 2 Register
(Max_Lat, Min_Gnt, Interrupt Pin, Interrupt Line)
0xD040
32
G2PTOCNT
G2P Timeout Count register
(Retry Timeout Value, TRDY Timeout Value)
0xD060
32
G2PCFG
G2P Configuration Register
0xD064
32
G2PSTATUS
G2P Status Register
0xD068
32
G2PMASK
G2P Interrupt Mask Register
0xD088
32
PCISSTATUS
Satellite Mode PCI Status Register (Status, PMCSR)
0xD08C
32
PCIMASK
PCI Status Interrupt Mask Register
0xD090
32
P2GCFG
P2G Configuration Register
0xD094
32
P2GSTATUS
P2G Status Register
0xD098
32
P2GMASK
P2G Interrupt Mask Register
0xD09C
32
P2GCCMD
P2G Current Command Register
0xD0DC
8
Cap_ID
Capabilities ID Register
0xD0DD
8
Next_Item_Ptr
Next Item Pointer Register
0xD0DE
16
PMC
Power Management Capabilities Register
0xD0E0
16
PMCSR
Power Management Control / Status Register
0xD100
32
PBAREQPORT
PCI Bus Arbiter Request Port Register
0xD104
32
PBACFG
PCI Bus Arbiter Configuration Register
0xD108
32
PBASTATUS
PCI Bus Arbiter Status Register
0xD10C
32
PBAMASK
PCI Bus Arbiter Interrupt Mask Register
0xD110
32
PBABM
PCI Bus Arbiter Broken Master Register
0xD114
32
PBACREQ
PCI Bus Arbiter Current Request Register (for a diagnosis)
0xD118
32
PBACGNT
PCI Bus Arbiter Current Grant Register (for a diagnosis)
0xD11C
32
PBACSTATE
PCI Bus Arbiter Current Status Register (for a diagnosis)
4-6
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (4/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
PCI Controller (PCIC)
0xD120
32
G2PM0GBASE
G2P Memory Space 0 G-Bus Base Address Register
0xD128
32
G2PM1GBASE
G2P Memory Space 1 G-Bus Base Address Register
0xD130
32
G2PM2GBASE
G2P Memory Space 2 G-Bus Base Address Register
0xD138
32
G2PIOGBASE
G2P I/O Space G-Bus Base Address Register
0xD140
32
G2PM0MASK
G2P Memory Space 0 Address Mask Register
0xD144
32
G2PM1MASK
G2P Memory Space 1 Address Mask Register
0xD148
32
G2PM2MASK
G2P Memory Space 2 Address Mask Register
0xD14C
32
G2PIOMASK
G2P I/O Space Address Mask Register
0xD150
32
G2PM0PBASE
G2P Memory Space 0 PCI Base Address Register
0xD158
32
G2PM1PBASE
G2P Memory Space 1 PCI Base Address Register
0xD160
32
G2PM2PBASE
G2P Memory Space 2 PCI Base Address Register
0xD168
32
G2PIOPBASE
G2P I/O Space PCI Base Address Register
0xD170
32
PCICCFG
PCI Controller Configuration Register
0xD174
32
PCICSTATUS
PCI Controller Status Register
0xD178
32
PCICMASK
PCI Controller Interrupt Mask register
0xD180
32
P2GM0GBASE
P2G Memory Space 0 G-Bus Base Address Register
0xD184
32
P2GM0CTR
P2G Memory Space 0 G-Bus Control Register
0xD188
32
P2GM1GBASE
P2G Memory Space 1 G-Bus Base Address Register
0xD18C
32
P2GM1CTR
P2G Memory Space 1 G-Bus Control Register
0xD190
32
P2GM2GBASE
P2G Memory Space 2 G-Bus Base Address Register
0xD194
32
P2GM2CTR
P2G Memory Space 2 G-Bus Control Register
0xD198
32
P2GIOGBASE
P2G I/O Space 0 G-Bus Base Address Register
0xD19C
32
P2GIOCTR
P2G I/O Space 0 G-Bus Control Register
0xD1A0
32
G2PCFGADRS
G2P Configuration Address Register
0xD1A4
32
G2PCFGDATA
G2P Configuration Data Register
0xD1B0
32
G2PIDADRS
G2P Indirect Access Address Register
0xD1B4
32
G2PIDDATA
G2P Indirect Access Data Register
0xD1B8
32
G2PIDCMD
G2P Indirect Access Command / Byte Enable Register
0xD1C8
32
G2PINTACK
G2P Interrupt Acknowledge Register
0xD1CC
32
G2PSPC
G2P Special Cycle Data Register
0xD1E0
32
PCICDATA0
PCI Configuration Data 0 Register
0xD1E4
32
PCICDATA1
PCI Configuration Data 1 Register
0xD1E8
32
PCICDATA2
PCI Configuration Data 2 Register
0xD1EC
32
PCICDATA3
PCI Configuration Data 3 Register
0xD200
32
PDMCA
PDMAC Chain Address Register
0xD204
32
PDMGA
PDMAC G-Bus Address Register
0xD208
32
PDMPA
PDMAC PCI Bus Address Register
0xD210
32
PDMCTR
PDMAC Count Register
0xD214
32
PDMCFG
PDMAC Configuration Register
0xD21C
32
PDMSTATUS
PDMAC Status Register
4-7
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (5/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
Configuration
0xE000
32
CCFG
Chip Configuration Register
0xE004
32
REVID
Chip Revision ID Register
0xE008
32
PCFG
Pin Configuration Register
0xE00C
32
TOEA
Timeout Error Access Address Register
0xE010
32
PDNCTR
0xE014
32
0xE018
32
Power Down Control Register
-
-
GARBC
G-Bus Arbiter Control Register
0xE01C
32
0xE020
32
TOCNT
-
-
0xE024
32
DRQCTR
DMA Request Control Register
0xE028
32
CLKCTR
Clock Control Register
0xE02C
32
GARBC
G-Bus Arbiter Control Register
0xE030
32
RAMP
0xE034
32
Time Out Count Register
Register Address Mapping Register
-
-
Timer (Channel 0)
0xF000
32
TMTCR0
Timer Control Register 0
Timer Interrupt Status Register 0
0xF004
32
TMTISR0
0xF008
32
TMCPRA0
Compare Address Register A 0
0xF00C
32
TMCPRB0
Compare Address Register B 0
0xF010
32
TMITMR0
Interval Timer Mode Register 0
0xF020
32
TMCCDR0
Divider Register 0
0xF030
32
TMPGMR0
Plus Generator Mode Register 0
0xF0F0
32
TMTRR0
Timer Read Register 0
0xF100
32
TMTCR1
Timer Control Register 1
0xF104
32
TMTISR1
Timer Interrupt Status Register 1
Timer (Channel 1)
0xF108
32
TMCPRA1
Compare Address Register A 1
0xF10C
32
TMCPRB1
Compare Address Register B 1
0xF110
32
TMITMR1
Interval Timer Mode Register 1
0xF120
32
TMCCDR1
Divider Register 1
0xF130
32
TMPGMR1
Plus Generator Mode Register 1
0xF1F0
32
TMTRR1
Timer Read Register 1
0xF200
32
TMTCR2
Timer Control Register 2
0xF204
32
TMTISR2
Timer Interrupt Status Register 2
0xF208
32
TMCPRA2
Compare Register A 2
0xF210
32
TMITMR2
Interval Timer Mode Register 2
0xF220
32
TMCCDR2
Divider Register 2
Timer (Channel 2)
0xF240
32
TMWTMR2
Watch Dog Timer Register 2
0xF2F0
32
TMTRR2
Timer Read Register 2
4-8
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (6/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
Serial I/O (Channel 0)
0xF300
32
SILCR0
0xF304
32
SIDICR0
Line Control Register 0
DMA/Interrupt Control Register 0
0xF308
32
SIDISR0
DMA/ Interrupt Status Register 0
0xF30C
32
SISCISR0
Status Change Interrupt Status Register 0
0xF310
32
SIFCR0
FIFO Control Register 0
0xF314
32
SIFLCR0
Flow Control Register 0
0xF318
32
SIBGR0
Baud Rate Control Register 0
0xF31C
32
SITFIFO0
Transmitter FIFO Register 0
0xF320
32
SIRFIFO0
Receiver FIFO Register 0
0xF400
32
SILCR1
Line Control Register 1
0xF404
32
SIDICR1
DMA/Interrupt Control Register 1
0xF408
32
SIDISR1
DMA/ Interrupt Status Register 1
0xF40C
32
SISCISR1
Status Change Interrupt Status Register 1
0xF410
32
SIFCR1
FIFO Control Register 1
0xF414
32
SIFLCR1
Flow Control Register 1
Serial I/O (Channel 1)
0xF418
32
SIBGR1
Baud Rate Control Register 1
0xF41C
32
SITFIFO1
Transmitter FIFO Register 1
0xF420
32
SIRFIFO1
Receiver FIFO Register 1
Parallel I/O (PIO)
0xF500
32
PIODO
Output Data Register
0xF504
32
PIODI
Input Data Register
0xF508
32
PIODIR
Direction Control Register
0xF50C
32
PIOOD
Open Drain Control Register
4-9
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (7/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
Interrupt Controller (IRC)
0xF510
32
IRFLAG0
Interrupt Request Flag 0 Register
0xF514
32
IRFLAG1
Interrupt Request Flag 1 Register
0xF518
32
IRPOL
Interrupt Request Polarity Control Register
0xF51C
32
IRRCNT
Interrupt Request Control Register
0xF520
32
IRMASKINT
Internal Interrupt Mask Register
0xF524
32
IRMASKEXT
External Interrupt Mask Register
0xF600
32
IRDEN
Interrupt Detection Enable Register
0xF604
32
IRDM0
Interrupt Detection Mode Register 0
0xF608
32
IRDM1
Interrupt Detection Mode Register 1
0xF610
32
IRLVL0
Interrupt Level Register 0
0xF614
32
IRLVL1
Interrupt Level Register 1
0xF618
32
IRLVL2
Interrupt Level Register 2
0xF61C
32
IRLVL3
Interrupt Level Register 3
0xF620
32
IRLVL4
Interrupt Level Register 4
0xF624
32
IRLVL5
Interrupt Level Register 5
0xF628
32
IRLVL6
Interrupt Level Register 6
0xF62C
32
IRLVL7
Interrupt Level Register 7
0xF640
32
IRMSK
Interrupt Mask Level Register
0xF660
32
IREDC
Interrupt Edge Detection Clear Register
0xF680
32
IRPND
Interrupt Pending Register
0xF6A0
32
IRCS
Interrupt Current Status Register
4-10
Chapter 4 Address Mapping
Table 4.2.2 Internal Registers (8/8)
Offset Address
Register Size (bit) Register Symbol
Register Name
AC-link Controller (ACLC)
0xF700
32
ACCTLEN
0xF704
32
ACCTLDIS
ACLC Control Enable Register
ACLC Control Disable Register
0xF708
32
ACREGACC
ACLC CODEC Register Access Register
0xF710
32
ACINTSTS
ACLC Interrupt Status Register
0xF714
32
ACINTMSTS
ACLC Interrupt Masked Status Register
0xF718
32
ACINTEN
ACLC Interrupt Enable Register
0xF71C
32
ACINTDIS
ACLC Interrupt Disable Register
0xF720
32
ACSEMAPH
ACLC Semaphore Register
0xF740
32
ACGPIDAT
ACLC GPI Data Register
0xF744
32
ACGPODAT
ACLC GPO Data Register
0xF748
32
ACSLTEN
ACLC Slot Enable Register
0xF74C
32
ACSLTDIS
ACLC Slot Disable Register
0xF750
32
ACFIFOSTS
ACLC FIFO Status Register
0xF780
32
ACDMASTS
ACLC DMA Request Status Register
0xF784
32
ACDMASEL
ACLC DMA Channel Selection Register
0xF7A0
32
ACAUDODAT
ACLC Audio PCM Output Data Register
0xF7A4
32
ACSURRDAT
ACLC Surround Data Register
0xF7A8
32
ACCENTDAT
ACLC Center Data register
ACLC LFE Data Register
0xF7AC
32
ACLFEDAT
0xF7B0
32
ACAUDIDAT
ACLC Audio PCM Input Data Register
0xF7B8
32
ACMODODAT
ACLC Modem Output Data Register
0xF7BC
32
ACMODIDAT
ACLC Modem Input Data Register
0xF7FC
32
ACREVID
ACLC Revision ID Register
0xF800
32
SPMCR
SPI Master Control Register
0xF804
32
SPCR0
SPI Control Register 0
0xF808
32
SPCR1
SPI Control Register 1
0xF80C
32
SPFS
SPI Inter Frame Space Register
0xF810
32
SPI Module (SPI)
-
-
0xF814
32
SPSR
SPI Status Register
0xF818
32
SPDR
SPI Data Register
0xF81C
32
-
-
RTC Module (RTC)
0xF900
32
RTCHI
0xF904
32
RTCLO
RTC Register (High)
RTC Register (Low)
0xF908
32
ALARMHI
Alarm Register (High)
0xF90C
32
ALARMLO
Alarm Register (Low)
0xF910
32
RTCCTRL
RTC Control Register
0xF914
32
RTCINT
RTC Interrupt Status Register
4-11
Chapter 4 Address Mapping
4-12
Chapter 5 Configuration Register
5.
Configuration Register
5.1
Outline
The configuration registers set up and control the basic functionality of the entire TX4927. Refer to
Section 5.2 for details of each configuration register. Also refer to sections mentioned in the description
about each bit field.
5.1.1
Detecting G-Bus Timeout
The G-Bus is an internal bus of the TX4925. Access to each address on the G-Bus is completed upon
a bus response from the accessed address. If an attempt is made to access an undefined physical address
or if a hardware failure occurs, no bus response is made. If a bus response does not occur, the bus access
will not be completed, leading to a system halt. To solve this problem, the TX4925 is provided with a
G-Bus timeout detection function. This function forcibly stops bus access if no bus response occurs
within the specified time.
Setting the G-Bus Timeout Error Detection bit (CCFG.TOE) of the chip configuration register
enables the G-Bus timeout detection function. If a bus response does not occur within the G-Bus clock
(GBUSCLK) cycle specified in the G-Bus Timeout count register (TOCNT), the G-Bus timeout
detection function makes an error response to force the bus access to end. The accessed address is
stored to the timeout error access address register (TOEA).
If a timeout error is detected while the TX49/H2 core, as the bus master, is gaining write access to the
G-Bus, the Write-Access Bus Error bit (CCFG.BEOW) is set. Enabling interrupt No. 1 in the interrupt
controller makes it possible to post an interrupt to the TX49/H2 core. If a timeout error is detected while
the TX49/H2 core is gaining read access to the bus, a bus error exception occurs in the TX49/H2 core.
If a timeout error is detected while another G-Bus master (the PCI controller or DMA controller) is
accessing the G-Bus, an error bit in that controller is set, which can be used to post an interrupt. Refer to
the descriptions of each controller for details.
If the TRST* signal is deasserted, it is assumed that an EJTAG probe is connected, so the G-Bus
timeout detection feature is disabled.
5-1
Chapter 5 Configuration Register
5.2
Register
Table 5.2.1 lists the configuration registers.
Table 5.2.1 Configuration Register Map
Reference
Offset Address
Size in Bits
Mnemonic
5.2.1
0xE000
32
CCFG
5.2.2
0xE004
32
REVID
Chip Revision ID Register
5.2.3
0xE008
32
PCFG
Pin Configuration Register
5.2.4
0xE00C
32
TOEA
Timeout Error Access Address Register
5.2.5
0xE010
32
PDNCTR

0xE014
32

5.2.6
0xE018
32
GARBP

0xE01C
32

5.2.7
0xE020
32
TOCNT
5.2.8
0xE024
32
DRQCTR
DMA Request Control Register
5.2.9
0xE028
32
CLKCTR
Clock Control Register
5.2.10
0xE02C
32
GARBC
GBUS Arbiter Control Register
5.2.11
0xE030
32
RAMP

0xE034
32

Any address not defined in this table is reserved for future use.
5-2
Register Name
Chip Configuration Register
Power Down Control Register
(Reserved)
GBUS Arbiter Priority Register
(Reserved)
Timeout Count Register
Register Address Mapping Register
(Reserved)
Chapter 5 Configuration Register
5.2.1
Chip Configuration Register (CCFG)
0xE000
For the bit fields whose initial values are set by boot configuration (refer to Section 3.2), the initial
input signal level and the corresponding register value are indicated.
The following bits are Reserved (Read only). An explanation of the type and default was added so the
default is reflected in the Boot signal.
bit 31: R ~ADDR[10], bit 28: R UAE, bit 27: R ADDR[16]
bit 18: R ADDR[17], bit 12: R ADDR[19]
31
27
26
Reserved
15
WR
14
TOE
PCIARB
R/W
0
R/W
0
~ADDR[1]
Bits
13
24
RF
R/W
0
R/W
0
12
23
21
BOOTME
20
Reserved
R
ADDR[4:3]
Field Name
19
18
Reserved
PCIMODE
R
R
ADDR[8:6]
ADDR[15]
7
6
5
4
SYSSP
Reserved
8
R
Mnemonic
25
Reserved
R/W
11
17
16
TINTDIS
BEOW
R
ADDR[0]
3
2
1
R/W1C : Type
0
0
PCTRCE
ENDIAN WDRST UAEHOLD
R
~TDO
R
R/W1C
ADDR[14]
0
: Initial value
R/W : Type
1
: Initial value
Description
31:27

Reserved
26

Reserved
Note: This bit is always set to “0”. (Initial value: 0, R/W)

25:24
RF
Reduced
Frequency
Reduced Frequency (Initial value: 00, R/W)
These bits select the internal bus speed.
00: full speed
01: 1/2 speed
10: 1/4 speed
11: 1/8 speed
23:21
BOOTME
Boot Memory
Boot Memory (Initial value: ADDR[8:6], R)
Shows Boot Memory
000: SyncFlash
001: Reserved
010: Reserved
011: PCIC
100: Reserved
101: EBUSC ch0 at third speed
110: EBUSC ch0 at half speed
111: EBUSC ch0 at full speed
20
PCIMODE
PCI Mode
PCI Mode (Initial value: ADDR[15], R)
Shows the PCI operation mode.
L: Satellite mode
H: Host mode
19:18

Reserved
17
TINTDIS
16
BEOW
15
WR

TX49/H2 core
Timer Interrupt
Disable
TX49/H2 core Timer Interrupt Disable (Initial value: ADDR[0], R)
Shows whether TX49/H2 core Timer Interrupt is enable or disable.
L: Enable
H: Disable
Bus Error on
Write
Bus Error on Write (Initial value: 0, R/W1C)
Indicates that a bus error was generated by a write operation of the TX49/H2 Core.
Writing a “1” clears the bit.
0: No error occur
1: Error occurs
Watchdog Timer
for Reset/NMI
Watchdog Timer for Reset/NMI (Initial value: 0, R/W)
Designates the connection of the Watchdog Timer.
0: Watchdog Timer Interrupt is connected to TX4925 internal NMI*.
1: Watchdog Timer Interrupt is connected to TX4925 internal Reset.
Figure 5.2.1 Chip Configuration Register (CCFG) (1/2)
5-3
Chapter 5 Configuration Register
Bits
Mnemonic
14
TOE
13
PCIARB
12:8

7:6
SYSSP
5:4

3
Field Name
Description
Timeout Enable
for Bus Error
Timeout Enable for Bus Error (Initial value: 0, R/W)
Designates the state of the Bus Error time-out function.
0: Disable time out function.
1: Enable time out function.
PCI arbiter
PCI arbiter. (Initial value: ADDR[1], R)
Select PCI arbiter.
Latched from ADDR[1] at RESET.
L: 0: External arbiter
H: 1: Internal arbiter

Reserved
SYSCLK Speed
SYSCLK Speed (Initial value: ADDR[4:3], R)
Shows SYSCLK frequency.
LL: 00: SYSCLK speed = GBUSCLK speed/4
LH: 01: SYSCLK speed = GBUSCLK speed/3
HL: 10: SYSCLK speed = GBUSCLK speed/2
HH: 11: SYSCLK speed = GBUSCLK speed
Reserved
Note: These bits are always set to “11” (Initial value: 11, R/W).
PCTRCE
PC Trace Enable
PC Trace Enable (Initial value: TD0, R)
Shows whether PC Trace signals are enable or disable.
0: Disable
1: Enable
2
ENDIAN
Endian
Current Endian Setting (Initial value: ADDR[14], R)
Shows the endian mode.
L: 0: LITTLE ENDIAN
H: 1: BIG ENDIAN
1
WDRST
Watchdog Reset
Status
Watchdog Reset Status (Initial value: 0, R/W1C)
Indicates that a watchdog reset was generated.
0: No watchdog reset occur
1: Watchdog reset occurs
0
UAEHOLD
UAE Address
Hold
UAE* Address Hold (Initial value: 1, R/W)
0: Address goes away during the same clock as UAE*.
1: Address is held one clock after the rising edge of UAE*.
Figure 5.2.1 Chip Configuration Register (CCFG) (2/2)
5-4
Chapter 5 Configuration Register
5.2.2
Chip Revision ID Register (REVID)
0xE004
31
16
PCODE
15
12
R
0x4925
8
7
11
: Type
: Initial value
4
3
0
MJERREV
MINEREV
MJREV
MINREV
R
0x0
R
0x0
R
0x1
R
0x1
Bits
Mnemonic
31:16
PCODE
15:12
Field Name
Description
Product Code
Product Code (Initial value: 0x4925, R)
This field defines the product number.
MJERREV
Major Extra Code
Major Extra Code Implementation Revision (Initial value: 0x0, R)
This field defines the major extra code.
11:8
MINEREV
Minor Extra Code
Minor Extra Code Implementation Revision (Initial value: 0x0, R)
This field defines the minor extra code.
7:4
MJREV
Major Revision
Major Implementation Revision (Initial value: 0x1, R)
This field defines a major revision. Contact Toshiba technical staff for an
explanation of the revision value.
3:0
MINREV
Minor Revision
Minor Implementation Revision (Initial value: 0x1, R)
This field defines a minor revision. Contact Toshiba technical staff for an
explanation of the revision value.
Figure 5.2.2 Chip Revision ID Register (REVID)
5-5
: Type
: Initial value
Chapter 5 Configuration Register
5.2.3
Pin Configuration Register (PCFG)
0xE008
For the bit fields whose initial values are set by boot configuration (refer to Section 3.2), the initial
input signal level and the corresponding register value are indicated.
31
SYSCLKEN
30
29
SDRCLKEN
28
27
PCICLKEN
26
25
R/W
R/W
R/W
R/W
1
1
1
ADDR[18] ADDR[18]
15
14
13
12
11
9
SELSIOC
SELSIO
ACKIN
SELTMR
R/W
0
R/W
0
0
R/W
0
1
R/W
0
23
Reserved
PCICLKIOEN
0
22
R/W
0
8
21
20
Reserved SELSPI
R/W
0
R/W
0
4
7
SELDONE
19
18
SELCARD
SELCHI
Reserved
R/W
0
3
R/W
0
SELACLC SELNAND
R/W
R/W
R/W
0
0
0
Field Name
17 16
SELCE
Bits
Mnemonic
31
SYSCLKEN
SYSCLK
Enable
SYSCLK Enable (Initial value: 1, R/W)
Specifies whether to output the SYSCLK.
1: Clock output.
0: L.
30:29
SDRCLKEN
[1:0]
SDRAM Clock
Enable
SDRAM Clock Enable (Initial value: 11, R/W)
Individually specifies whether to output each of SDCLK [1:0].
1: Clock output.
0: L.
Bit 30 = SDCLK [1]
Bit 29 = SDCLK [0]
28:27
PCICLKEN
[2:0]
PCI Clock Enable
PCI Clock Enable (Initial value: ADDR[18], R/W)
Individually specifies whether to output each of PCICLK [2:1].
1: Clock output.
0: L.
Bit 28 = PCICLK [2]
Bit 27 = PCICLK [1]
26
PCICLKIOEN
PCI Clock I/O
Enable
PCI Clock I/O Enable (Initial value: ADDR[18], R/W)
Individually specifies whether to output each of PCICLK [2:1].
1: Clock output.
0: Clock input.
: Type
0
0
0
SELDMA
: Initial value
R/W
: Type
: Initial value
0
0
Description
25:23

Reserved
22

Reserved
Note: This bit is always set to “0” (Initial value: 0, R/W).

21
SELSPL
Select SPI
Select SPI (Initial value: 0, R/W)
Select SPI function as PIO[23:21] pin. Please refer to “3.3 Pin Multiplexing” about
setting.
20
SELCHI
Select CHI
Select CHI (Initial value: 0, R/W)
Select SPI function as PIO[27,20:18] pin. Please refer to “3.3 Pin Multiplexing”
about setting.
19:18
SELCARD
Select PCMCIA
CARD
Select PCMCIA CARD (Initial value: 00, R/W)
Select PCMCIA CARD function as PIO[31:24] pin. Please refer to “3.3 Pin
Multiplexing” about setting.
17:16
SELCE
Select CE[5:4]*
Select CE[5:4]* (Initial value: 00, R/W)
Select CE[5:4]* function as PIO[29:28] pin. Please refer to “3.3 Pin Multiplexing”
about setting.
15:14
SELSIOC
Select SIO
Control Pins
Select SIO Control Pins (Initial value: 00, R/W)
Select SIO ch1, 0 control signals (RTS, CTS) as PIO[15,14,9,8] pin. Please refer to
“3.3 Pin Multiplexing” about setting.
13:12
SELSIO
Select SIO
Select SIO (Initial value: 00, R/W)
Select SIO ch1, 0 signals (TXD, RXD) as PIO[17,16,11,10] pin. Please refer to “3.3
Pin Multiplexing” about setting.
11
ACKIN
ACK* input
ACK* input (Initial value: 1, R/W)
When this bit is one, ACK* signal is input.
0 : ACK* pin changes from input to output dynamically based on EBUSC channel
settings.
1 : ACK* pin is input only.
Figure 5.2.3 Pin Configuration Register (PCFG) (1/2)
5-6
Chapter 5 Configuration Register
Bits
Mnemonic
Field Name
Description
10:9
SELTMR[1:0]
Select TIMER
Select TIMER (Initial value: 00, R/W)
Select TIMER Pins as PIO[20:19] pin. Please refer to “3.3 Pin Multiplexing” about
setting.
8
SELDONE
Select
DMADONE*
Select DMADONE* (Initial value: 0, R/W)
Select DMADONE* as PIO[0] pin. Please refer to “3.3 Pin Multiplexing” about
setting.
7:4

3
SELACLC
Select ACLC
Select ACLC (Initial value: 0, R/W)
Select ACLC function as PIO[17:12] pin. Please refer to “3.3 Pin Multiplexing” about
setting.

2
SELNAND
Select NAND
Interface
Select NAND Interface (Initial value: 0, R/W)
Select NAND Flash Memory function as PIO[17:12] pin. Please refer to “3.3 Pin
Multiplexing” about setting.
1:0
SELDMA
Select DMA
Select DMA (Initial value: 00, R/W)
Select DMA ch1,0 signals (DMAACK, DMAREQ) function as PIO[4:1] pin. Please
refer to “3.3 Pin Multiplexing” about setting.
Reserved
Figure 5.2.3 Pin Configuration Register (PCFG) (2/2)
5-7
Chapter 5 Configuration Register
5.2.4
Timeout Error Access Address Register (TOEA)
0xE00C
31
16
TOEA [31:16]
R
Undefined
: Type
: Initial value
15
0
TOEA [15:0]
R
Undefined
Bits
Mnemonic
31:0
TOEA
Field Name
Timeout Error
Access Address
: Type
: Initial value
Description
Timeout Error Access Address (Initial value: Undefined, R)
This register latches the address on the bus when bus error occurs.
Figure 5.2.4 Timeout Error Access Address Register (TOEA)
5-8
Chapter 5 Configuration Register
5.2.5
31
Reserved
Power Down Control Register (PDNCTR)
30
PDN
29
28
Reserved STPCPU
R/W
0
27
26
Reserved
0xE010
25
16
PDNMSK
R/W
0
R/W
0x3FF
15
: Type
: Initial value
0
PUTCV
R/W
0x0000
Bits
Mnemonic
31

30
PDN
Field Name
Description

Reserved
Power Down
Trigger
: Type
: Initial value
Power Down Trigger (Initial value: 0, R/W)
This bit is a trigger for the Power Down Sequence. It is set to 0 upon reset and a 0
to 1 transition will initiate the power down sequence.
This bit is not cleared to 0 automatically by wakeup from power down. Please clear
to 0 before next power down.
29

28
STPCPU

27:26

25:16
PDNMSK
Power Down
Mask
Power Down Mask (Initial value: 0x3FF, R/W)
Indicates which external interrupt signals wake from power down mode.
A bit is allocated to each interrupt source. Set 1 and enables wakeup.
1: Interrupt Enabled
0: Interrupt Disabled
PDNMSK[9] = RTC
PDNMSK[8] = NMI
PDNMSK[7] = INT[7]
PDNMSK[6] = INT[6]
PDNMSK[5] = INT[5]
PDNMSK[4] = INT[4]
PDNMSK[3] = INT[3]
PDNMSK[2] = INT[2]
PDNMSK[1] = INT[1]
PDNMSK[0] = INT[0]
15:0
PUTCV
Power Up
Time Counter
Value
Power Up Time Counter Value (Initial value: 0x0000, R/W)
This field determines the number of input clocks that expire after a wakeup has been
initiated from STANDBY mode. The clock signal of this counter is MSTRCLK.
Reserved
Stop CPU Clock
Stop CPU Clock (Initial value: 0, R/W)
When this bit is set to 1, the CPU clock stops after TX49/H2 core operates WAIT
instruction and becomes the HALT mode. It is set to 0 upon reset. It is not cleared to
0 automatically by wakeup from power down mode. Please clear to 0 and set to 1
before next CPU clock stop.

Reserved
Figure 5.2.5 Power Down Control Register (PDNCTR)
5-9
Chapter 5 Configuration Register
5.2.6
GBUS Arbiter Priority Register (GARBP)
0xE018
31
16
Reserved
: Type
: Initial value
15
0
PRIORITY
Reserved
R/W
0x4688
Bits
Mnemonic
31:15

14:0
PRIORITY
Field Name
: Type
: Initial value
Description

Reserved
Arbitration Priority Arbitration Priority (Initial value: 0x4688, R/W)
This field determines the priority when GARBC.ARBMD is cleared “0” to choose the
fixed priority.
Bit[14:12] = Lowest Priority Bus Master
Bit[11:9] = Fourth Priority Bus Master
Bit[8:6] = Third Priority Bus Master
Bit[5:3] = Second Priority Bus Master
Bit[2:0] = Highest Priority Bus Master
000: CHI
001: Reserved
010: PDMAC
011: PCIC
100: DMAC
The initial priority is the following.
CHI > PDMAC > PCIC > DMAC
Figure 5.2.6 GBUS Arbiter Priority Register (GARBP)
5.2.7
Timeout Count Register (TOCNT)
0xE020
31
16
Reserved
: Type
: Initial value
15
0
GTOCNT
R/W
0x0FFF
Bits
Mnemonic
31:16

15:0
GTOCNT
Field Name
Description

Reserved
GBUS Timeout
Count
: Type
: Initial value
GBUS Timeout Count (Initial value: 0x0FFF, R/W)
This register defined the number of GBUSCLK before a time out occurs.
Figure 5.2.7 Timeout Count Register (TOCNT)
5-10
Chapter 5 Configuration Register
5.2.8
DMA Request Control Register (DRQCTR)
0xE024
31
16
Reserved
: Type
: Initial value
15
Bits
12
11
8
7
4
3
0
DMAREQ[3]
DMAREQ[2]
DMAREQ[1]
DMAREQ[0]
R/W
0x0
R/W
0x0
R/W
0x0
R/W
0x0
Mnemonic
Field Name
Description
31:16

15:12
DMAREQ[3]
DMA Request 3
DMA Request 3 (Initial value: 0x0, R/W)
This field selects the DMA request source of DMAREQ[3].
0xxx: reserved
1000: SIO ch0. Receive
1001: SIO ch1 Receive
1010: SIO ch0. Transmit
1011: SIO ch1 Transmit
1100: ACLC ch0
1101: ACLC ch1
1110: ACLC ch2
1111: ACLC ch3

11:8
DMAREQ[2]
DMA Request 2
DMA Request 2 (Initial value: 0x0, R/W)
This field selects the DMA request source of DMAREQ[2].
0xxx: reserved
1000: SIO ch0. Receive
1001: SIO ch1 Receive
1010: SIO ch0. Transmit
1011: SIO ch1 Transmit
1100: ACLC ch0
1101: ACLC ch1
1110: ACLC ch2
1111: ACLC ch3
7:4
DMAREQ[1]
DMA Request 1
DMA Request 1 (Initial value: 0x0, R/W)
This field selects the DMA request source of DMAREQ[1].
0xxx: DMAREQ[1] (external signal)
1000: SIO ch0. Receive
1001: SIO ch1 Receive
1010: SIO ch0. Transmit
1011: SIO ch1 Transmit
1100: ACLC ch0
1101: ACLC ch1
1110: ACLC ch2
1111: ACLC ch3
3:0
DMAREQ[0]
DMA Request 0
DMA Request 0 (Initial value: 0x0, R/W)
This field selects the DMA request source of DMAREQ[0].
0xxx: DMAREQ[0] (external signal)
1000: SIO ch0. Receive
1001: SIO ch1 Receive
1010: SIO ch0. Transmit
1011: SIO ch1 Transmit
1100: ACLC ch0
1101: ACLC ch1
1110: ACLC ch2
1111: ACLC ch3
Reserved
Figure 5.2.8 DMA Request Control Register (DRQCTR)
5-11
: Type
: Initial value
Chapter 5 Configuration Register
5.2.9
Clock Control Register (CLKCTR)
0xE028
For the low-order 16 bits of the clock control register, canceling a reset requires that the
corresponding reset bit be cleared by software. Before clearing them, wait at least 128 CPU clock cycles
after they are set.
31
28
Reserved
15
12
Reserved
Bits
Mnemonic
27
26
25
24
23
22
21
20
19
PCICKE DMACKE Reserved SIO0CKE SIO1CKE TMR0CKE TMR1CKE TMR2CKE CHICKE
R/W
1
11
R/W
1
10
PCIRSTI
DMARSTI
R/W
1
R/W
1
18
17
16
SPICKE
ACLCKE
PIOCKE
9
R/W
1
8
R/W
1
7
R/W
1
6
R/W
1
5
R/W
1
4
R/W
1
3
R/W
1
2
R/W
1
1
R/W : Type
1
: Initial value
0
Reserved
SIO0RSTI
SIO1RSTI
TMR0RSTI
TMR1RSTI
TMR2RSTI
CHIRSTI
SPIRSTI
ACLRSTI
PIORSTI
R/W
1
R/W
1
R/W
1
R/W
1
R/W
1
R/W
1
R/W
1
R/W
1
R/W : Type
1
: Initial value
Field Name
Description
31:28

27
PCICKE
PCIC Clock
Enable
PCIC Clock Enable (Initial value: 1, R/W)
This bit controls the PCIC clock.
0: Stop clock
1: Supply clock

26
DMACKE
DMAC Clock
Enable
DMAC Clock Enable (Initial value: 1, R/W)
This bit controls the DMAC clock.
0: Stop clock
1: Supply clock
Reserved
25

24
SIO0CKE
SIO0 Clock
Enable
SIO0 Clock Enable (Initial value: 1, R/W)
This bit controls the SIO0 clock.
0: Stop clock
1: Supply clock

23
SIO1CKE
SIO1 Clock
Enable
SIO1 Clock Enable (Initial value: 1, R/W)
This bit controls the SIO1 clock.
0: Stop clock
1: Supply clock
22
TMR0CKE
TMR0 Clock
Enable
TMR0 Clock Enable (Initial value: 1, R/W)
This bit controls the TMR0 clock.
0: Stop clock
1: Supply clock
21
TMR1CKE
TMR1 Clock
Enable
TMR1 Clock Enable (Initial value: 1, R/W)
This bit controls the TMR1 clock.
0: Stop clock
1: Supply clock
20
TMR2CKE
TMR2 Clock
Enable
TMR2 Clock Enable (Initial value: 1, R/W)
This bit controls the TMR2 clock.
0: Stop clock
1: Supply clock
19
CHICKE
CHI Clock
Enable
CHI Clock Enable (Initial value: 1, R/W)
This bit controls the CHI clock.
0: Stop clock
1: Supply clock
18
SPICKE
SPI Clock
Enable
SPI Clock Enable (Initial value: 1, R/W)
This bit controls the SPI clock.
0: Stop clock
1: Supply clock
17
ACLCKE
ACLC Clock
Enable
ACLC Clock Enable (Initial value: 1, R/W)
This bit controls the ACLC clock.
0: Stop clock
1: Supply clock
Reserved
Figure 5.2.9 Clock Control Register (CLKCTR) (1/2)
5-12
Chapter 5 Configuration Register
Bits
Mnemonic
Field Name
Description
16
PIOCKE
PIO Clock
Enable
15:12

Reserved
11
PCIRSTI
PCIC Reset
Inactive
PCIC Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, PCIC is reset.
0: Reset
1: normal t
10
DMARSTI
DMAC Reset
Inactive
DMAC Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, DMAC is reset.
0: Reset
1: normal
PIO Clock Enable (Initial value: 1, R/W)
This bit controls the PIO clock.
0: Stop clock
1: Supply clock

9

8
SIO0RSTI
SIO0 Reset
Inactive
SIO0 Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, SIO0 is reset.
0: Reset
1: normal

7
SIO1RSTI
SIO1 Reset
Inactive
SIO1 Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, SIO1 is reset.
0: Reset
1: normal
6
TMR0RSTI
TMR0 Reset
Inactive
TMR0 Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, TMR0 is reset.
0: Reset
1: normal
5
TMR1RSTI
TMR1 Reset
Inactive
TMR1 Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, TMR1 is reset.
0: Reset
1: normal
4
TMR2RSTI
TMR2 Reset
Inactive
TMR2 Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, TMR2 is reset.
0: Reset
1: normal
3
CHIRSTI
CHI Reset
Inactive
CHI Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, CHI is reset.
0: Reset
1: normal
2
SPIRSTI
SPI Reset
Inactive
SPI Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, SPI is reset.
0: Reset
1: normal
1
ACLRSTI
ACLC Reset
Inactive
ACLC Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, ACLC is reset.
0: Reset
1: normal
0
PIORSTI
PIO Reset
Inactive
PIO Reset Inactive (Initial value: 1, R/W)
When this bit is set to “0”, PIO is reset.
0: Reset
1: normal
Reserved
Figure 5.2.9 Clock Control Register (CLKCTR) (2/2)
5-13
Chapter 5 Configuration Register
5.2.10
GBUS Arbiter Control Register (GARBC)
0xE02C
31
16
Reserved
: Type
: Initial value
15
13
12
Reserved
Bits
Mnemonic
5
4
3
0
Reserved
Reserved
ARBMD
R/W
0x00
R/W
1
R/W
1111
Field Name
: Type
: Initial value
Description
31:13

Reserved
12:5

Reserved
Note: This bit is always set to “0” (Initial value: 0x00, R/W).

4

Reserved
Note: This bit is always set to “1” (Initial value: 1, R/W).
3:0
ARBMD
Arbitration Mode
Arbitration Priority (Initial value: 1111, R/W)
Specifies how to prioritize G-Bus arbitration.
0000: Fixed priority. The G-Bus arbitration priority conforms to the content of the
PRIORITY field (bits [14:0]).
1111: Round-robin (in a round-robin fashion, CHI > PDMAC > RTC > DMAC)
Others: Reserved (Don’t set these values.)
Note: Before accessing the PCI by DMAC, specify round-robin as the priority mode.
If fixed-priority mode is selected, a dead lock is likely to occur in PCI bus
access.
Figure 5.2.10 GBUS Arbiter Control Register (GARBC)
5.2.11
Register Address Mapping Register (RAMP)
0xE030
31
16
Reserved
: Type
: Initial value
15
0
RAMP [31:16]
R/W
0xFF1F
Bits
Mnemonic
31:16

15:0
RAMP[31:16]
Field Name
Description

Reserved
Register Address
Mapping
: Type
: Initial value
Register Address Mapping (Initial value: 0xFF1F, R/W)
This is a base address register for the TX4925 built-in registers. It holds the highorder 16 bits of a register address.
The default built-in register base address is 0xFFIF_0000. Even after the content of
the base address register is changed, the default value can be used to reference the
built-in registers.
(Refer to "4.2 Register Map".)
Figure 5.2.11 Register Address Mapping Register (RAMP)
5-14
Chapter 6 Clocks
6.
Clocks
6.1
TX4925 Clock Signals
Figure 6.1.1 shows the configuration of TX4925 blocks and clock signals. Table 6.1.1 describes each
clock signal. Table 6.1.2 shows the relationship among different clock signals when the CPU clock frequency
is 200 MHz.
PCICLK[2:1]
1/6
PCI
PCICLK_IO
CG
1/1
SYSCLK
1/2
External Device
1/3
TX49/H2 Core
1/4
EJTAG/DSU
ADDR[4:3]
PLL
1/1
1/2
x2.5
SDCLK[1:0]
CPUCLK
1/4
DATA latch
1/8
SDRAM
SDCLKIN
1/1
1/2
x4
SDRAMC
GBUSCLK
1/4
Refresh Counter
1/8
1/2
CCFG.RF
GBUSCLKF
IMBUSCLKF
1/2
IMBUSCLK
MASTERCLK
OSC
TCK
DCLK
EBUSC
NDFMC
CLKGATE
DMAC
PDNCTR.STPCPU
PCIC
DMACKE
PCICKE
CHICKE
CHI
CHICLK
PIOCKE
TMR2CKE
IRC
TMR1CKE
CLKGATE
TMR0CKE
PIO
SIO1CKE
TMR2
SIO0CKE
ACLCKE
TMR1
SPICKE
TMR0
CLKCTR
SIO1
TCLK
SCLK
SIO0
C32IN
C32OUT
ACLC
BITCLK
OSC
SPI
RTC
TX4925
BC32K
Figure 6.1.1 TX4925 Block and Clock Configuration
6-1
Chapter 6 Clocks
Table 6.1.1 TX4925 Clock Signals (1/2)
Clock
Input/
Output
Related
Related Registers
Configuration Signals (Refer to Chapters 5
(Refer to Section 3.2)
and 10.)
Description
MASTERCLK Input
Master input clock for the TX4925.
The TX4925 internal clock generator multiplies or
divides MASTERCLK to generate internal clock
pulses.

CPUCLK
Internal
signal
Clock supplied to the TX49/H2 core.
The PLL in the TX4925 generates CPUCLK by
multiplying MASTERCLK. The value of CCFG.RF
can be used to dynamically change the frequency
ratio of CPUCLK to MASTERCLK.
CCFG.RF[1:0]
LL = 10 times MASTERCLK
LH = 5 times MASTERCLK
HL = 2.5 times MASTERCLK
HH = 1.25 times MASTERCLK

CCFG.RF [1:0]
GBUSCLK
Internal
signal
Clock supplied to peripheral blocks on the G-Bus.
The PLL in the TX4925 generates GBUSCLK by
multiplying MASTERCLK. The value of CCFG.RF
can be used to dynamically change the frequency
ratio of GBUSCLK to MASTERCLK.
CCFG.RF[1:0]
LL = 4 times MASTERCLK
LH = 2 times MASTERCLK
HL = 1 times MASTERCLK
HH = 1/2 times MASTERCLK

CCFG.RF [1:0]
GBUSCLKF
Internal
signal
Clock supplied to peripheral blocks on the G-Bus.
The PLL in the TX4925 generates GBUSCLKF by
multiplying MASTERCLK by 4.
The frequency of this clock does not vary with the
value of CCFG.RG. It is used for SDRAMC refresh
counting.

IMBUSCLK
Internal
signal
Clock supplied to peripheral modules on the IM-Bus.
The frequency of IMBUSCLK is half that of
GBUSCLK. In the same way as with GBUSCLK, the
frequency of IMBUSCLK varies with the value of
CCFG.RF.

IMBUSCLKF
Internal
signal
Clock supplied to peripheral modules on the IM Bus.
The frequency of IMBUSCLKF is half that of
GBUSCLKF. In the same way as with GBUSCLKF,
the frequency of IMBUSCLKF does not vary with the
value of CCFG.RF.
It is used as a SIO baud rate clock or TMR count
clock.

SYSCLK
Output
System clock output from the TX4925. Used by the
devices connected to the external bus controller
(EBUSC).
Boot configuration signals ADDR[4: 3] can set the
frequency ratio of SYSCLK to GBUSCLK.
ADDR[4:3]
LL: GBUSCLK divided by 4
LH: GBUSCLK divided by 3
HL: GBUSCLK divided by 2
HH: GBUSCLK divided by 1
In the same way as with GBUSCLK, the frequency
of SYSCLK varies with the value of CCFG.RF.
The SYSCLKEN bit of the PCFG register can
disable the output of SYSCLK.
Note:To use SYSCLK to access external devices,
the SYSCLK rate must match the EBUSC
channel operating rate. For details, refer to
Section 7.3.8.
6-2
ADDR[4: 3]


CCFG.RF [1:0]

CCFG.SYSSP
PCFG.SYSCLKEN
CCFG.RF [1:0]
Chapter 6 Clocks
Table 6.1.1 TX4925 Clock Signals (2/2)
Clock
Input/
Output
Related
Related Registers
Configuration Signals (Refer to Chapters 5
(Refer to Section 3.2)
and 10.)
Description

Clock supplied to SDRAM. The frequency of
SDCLK[1:0] is the same as that of GBUSCLK.
In the same way as with GBUSCLK, the frequency
of SDCLK varies with the value of CCFG.RF.
The SDCLKEN[1:0] field of the PCFG register can
disable the output of SDCLK[1:0] on a per bit basis.
PCFG.SDCLKEN [1:0]
CCFG.RF[1:0]
SDCLK[1:0]
Output
SDCLKIN
Input/output Reference clock used to latch input data signals
from SDRAM.
The clock output from SDCLK should be connected
to SDCLKIN via a feedback line outside the TX4925.
PCICLK[2:1]
Output
Clock supplied to devices on the PCI bus.
The PLL in the TX4925 generates PCICLK by
multiplying MASTERCLK by 5/3.
These clock signals are output when the ADDR[18]
boot configuration signal is set to use the clock
internally generated in the TX4925 as PCICLK.
Otherwise, the pins are placed in High-Z state.
The PCICLKEN bit of the PCFG register can also
disable the output of PCICLK after the reset
sequence is completed.
Note:PCICLK[2:1] can supply clock pulses at 33
MHz when the MASTERCLK frequency is set
to 20 MHz.
ADDR[18]
PCFG.PCICLKEN[2:1]
PCICLKIO
Input/output PCI bus clock. The built-in PCI controller of the
TX4925 operates with this clock.
A boot configuration signal (ADDR[18]) can
determine whether the clock internally generated in
the TX4925 is used as PCICLK. If the TX4925
internal clock is selected, the clock signals are
output and simultaneously fed back to the internal
PCI block. When using the PCI block, therefore, do
not set the PCICLK Enable field of the pin
configuration register (PCFG.PCICLKEN[0]) to 0.
ADDR[18]
PCFG.PCICLKEN[0]
SCLK
Input
Input clock for SIO. SCLK is shared by SIO0 and
SIO1.
The pin is shared with the PIO[5] signal.


TCLK
Input
Input clock for timers. TCLK is shared by TMR0,
TMR1, and TMR2.
The pin is shared with the PIO[18] signal.


BITCLK
Input
Input clock for the AC-link controller.
The pin is shared with the PIO[15] signal.


CHICLK
Input/output Clock for the CHI module.
The pin is shared with the PIO[19] signal.
The direction of the clock signal is set using
CHICLOCK.

SPICLK
Output
Output clock for the SPI module.
The pin is shared with the PIO[23] signal.


TCK
Input
Input clock for JTAG.


DCLK
Output
Clock output for the real-time debugging system.
6-3

TDO

CHICLOCK

Chapter 6 Clocks
Table 6.1.2 Relationship Among Different Clock Frequencies
Input Clock
Internal Clock
External Clock (Output)
SYSCLK (MHz)
MASTERCLK
(MHz)
20
RF Setting
CPUCLK GBUSCLK GBUSCLKF IMBUSCLK IMBUSCLKF
(MHz)
(MHz)
(MHz)
(MHz)
(MHz)
SDCLK
[1:0]
(MHz)
Boot Configuration
Setting
ADDR[4:3]
11
10
01
00
00
200
80
80
40
40
80
80
40
26.7
20
01
100
40
80
20
40
40
40
20
13.3
10
10
50
20
80
10
40
20
20
10
6.7
5
11
25
10
80
5
40
10
10
5
3.3
2.5
6-4
PCICLK[2:1],
PCICLK_IO
(MHz)
33
Chapter 6 Clocks
6.2
Power-Down Mode
6.2.1
Halt Mode and Doze Mode
The WAIT instruction causes the TX49/H2 core to enter either of the two low-power modes: Halt and
Doze. The TX49/H2 can exit from Halt or Doze mode upon an interrupt exception. Ensure, therefore,
that the TX49/H2 does not enter Halt or Doze mode when all interrupts are masked in the interrupt
controller.
The HALT bit of the TX49/H2 core Config register is used to select Halt or Doze mode. As the
TX4925 does not use the snoop function of the TX49/H2 core, the bit should be set to select Halt mode,
which achieves greater power reduction than Doze mode.
Setting PDNCTR.STPCPU to 1 and then executing the WAIT instruction can stop the clock input to
the TX49/H2 core, thus further reducing power dissipation.
The PDNCTR.STPCPU bit is not automatically cleared to 0 when the device exits from Halt or Doze
mode. To subsequently reenter Halt or Doze mode, first clear the bit to 0 in the program.
6.2.2
Power Reduction for Peripheral Modules
When the system does not use the DMA controller, PCI controller, CHI module, serial I/O controller,
timers/counters, SPI module, parallel I/O controller, or AC-link controller, it can stop the input clock for
that module to reduce power dissipation.
The clock control register (CLKCTR) is used to control whether to turn each clock on or off. The
module should be reset before its clock can be turned on or off. This reset is performed using the reset
bit for the specific module, provided in the clock control register. The reset also initializes the registers
of the module, thus requiring subsequent setup of necessary register values and other configurations.
Refer to Section 5.2.9, “Clock Control Register” for detail of the clock control register (CLKCTR).
6.2.3
Power-Down Mode
Setting the PDNCTR.PDN bit to 1 can stop all clocks output from the CG. This also stops the PLL.
In this state, only the RTC operates with the 32 kHz clock.
There is some delay between the time when the PDNCTR.PDN bit is set to 1 and the time when the
PLL and clock outputs actually stop. To prevent a bus cycle from occurring during power-down or
power-up transition, execute the program from cache.
Use an external interrupt or RTC interrupt to exit from power-down mode. PDNCTR.PDNMSK
specifies which interrupt will be used. Note that if the device enters power-down mode with all
interrupts disabled, you can only restore device operation by resetting it.
The PDNCTR.PDN bit is not automatically cleared to 0 when the device exits from power-down
mode. To subsequently reenter power-down mode, first clear the bit to 0 in the program.
6-5
Chapter 6 Clocks
6.3
Power-On Sequence
MASTERCLK
stable time
Vdd
MASTERCLK
//
//
//
//
//
//
//
//
//
RESET*
//
//
//
//
RESET* width time
PON*
PON*
width time
PLL stable time
PLL output
CPUCLK
GBUSCLK
PCICLK
Figure 6.3.1 Power-On Sequence
6-6
//
//
//
//
//
Chapter 7 External Bus Controller
7.
7.1
External Bus Controller
Features
The External Bus Controller is used for accessing ROM, SRAM memory, and I/O peripherals. The
features of this bus are described below.
•
8 independent channels (Channel 6 and 7 are used only PCMCIA mode.)
•
Supports access to ROM (mask ROM, page mode ROM, EPROM, EEPROM), SRAM, flash memory,
and I/O peripherals.
•
Selectable data bus width of 8-bit, 16-bit, 32-bit for each channel
•
Selectable full-speed, 1/2 speed, 1/3 speed, 1/4 speed for each channel
•
Programmable timing for each channel. Programmable setup and hold time of address, chip enable,
write enable, and output enable signals.
•
Supports memory sizes from 1 MB to 1 GB for devices with a 32-bit data bus. Supports memory sizes
from 1 MB to 512 MB for devices with a 16-bit data bus. Supports memory sizes from 1 MB to 256 MB
for devices with an 8-bit data bus.
•
Supports special DMAC Burst access (address decrement/fixed).
•
Supports critical word first access of the TX49/H2 core.
•
Supports page mode memory. Supports 4-, 8-, and 16-page size.
•
Supports the External Acknowledge Signal (ACK*) and External Ready Signal modes.
•
Channel 0 and 7 can be used as Boot memory. Boot settings can be made from the following selections:
- Data bus width: 8-bit, 16-bit, 32-bit
- ACK* output or ACK* input
- BWE pin (byte enable or byte Write enable)
- Boot channel clock frequency
7-1
Chapter 7 External Bus Controller
7.2
Block Diagram
External Bus Controller (EBUSC)
G-Bus
G-Bus I/F
Channel Control
Register
CE*[5:0]
OE*
SWE*
CH0
ACEHOLD
Register Address
Decoder
Address
Decoder
Boot
Options
Timing
Control
Host I/F Timing
Control
BWE*[3:0]/BE*[3:0]
ACK*/READY
UAE
CARDREG*
CARDDIR*
CARD1CSH/L*,CARD2CSH/L*
Channel Control
Register
CARDIORD*
CARDIOWR*
CARD1WAIT*,CARD2WAIT*
CH7
Address
Decoder
EBIF Control
ADDR[19:0]
EBIF
DATA[31:0]
BUSSPRT*
SYSSP
CG
Figure 7.2.1 Block Diagram of External Bus Controller
7-2
SYSCLK
Chapter 7 External Bus Controller
7.3
Detailed Explanation
7.3.1
External Bus Control Register
The External Bus Controller (EBUSC) has eight channels. This register contains one Channel Control
Register (EBCCRn) for each channel, and all settings can be made independently for each channel.
However channel 6 and 7 are used only PCMCIA mode because TX4925 hasn’t CE[7:6] signals.
Word access is possible for a Control Register. Be sure to make any Enable settings to EBCCRn.ME
last. If EBCCRn.ME is enabled before setting the base address, then unintended memory access may
result.
7-3
Chapter 7 External Bus Controller
7.3.2
Global/Boot-up Options
In addition to the settings made separately for each channel, the Channel Control Registers can also
use global options that make settings common to all channels.
External Bus Controller Channel 0 and 7 can be used as a Boot memory channel. Channel 0 and 7 is
set by the external pins (Boot pins) during reset.
These settings are summarized below in Table 7.3.1. (Please refer to “3.2 Boot Configuration” and
“5.2.1 Chip Configuration Register” for more information.)
Table 7.3.1 Global/Boot-up Options (1/2)
Pin Name
Set Register
Explanation
PCFG.ACKIN
Selects the operation mode of the ACK*/READY signal.
0 = ACK*/READY Dynamic mode (Default)
1 = ACK*/READY Static mode
CCFG.UAEHOLD
Sets the address hold time relative to the UAE signal.
0: Address changes simultaneous to deassertion of the UAE signal.
1: Address changes 1 clock cycle after deassertion of the UAE signal.
(Default)
CCFG.SYSSP
Specifies the division ratio of the SYSCLK output relative to the internal
bus clock (GBUSCLK).
00: 1/4 speed (1/4 the GBUSCLK frequency)
01: 1/3 speed (1/3 the GBUSCLK frequency)
10: 1/2 speed (1/2 the GBUSCLK frequency)
11: Full speed (same frequency as the GBUSCLK frequency)
EBCCR0.ME
Specifies whether to enable or disable Channel 0.
0: Disable this channel as a Boot channel. (ADDR[8] = 0)
1: Enable this channel as a Boot channel. (ADDR[8] = 1)
EBCCR0.SP
Specifies the operation speed of Channel 0.
00: 1/4 Speed mode (ADDR[8:6] = 100b)
01: 1/3 Speed mode (ADDR[8:6] = 101b)
10: 1/2 Speed mode (ADDR[8:6] = 110b)
11: Full Speed mode (ADDR[8:6] = 111b)
ADDR[11]
EBCCR0.BC
When accessing Channel 0, specifies whether to use the BWE[3:0] signal
as a Byte Enable signal (BE[3:0]) or to use it as a Byte Write Enable
signal (BWE[3:0]).
0: Byte Enable mode
1: Byte Write Enable mode
ADDR[5]
EBCCR0.EACK
Specifies the Channel 0 access mode.
0: Disable ACK* Input Mode (ADDR[5] = H)
1: Enable ACK* Input Mode (ADDR[5] = L)
EBCCR0.BSZ
Specifies the memory bus width of Channel 0.
00: Reserved
01: 32-bit width
10: 16-bit width
11: 8-bit width


ADDR[4:3]
ADDR[8:6]
ADDR[13:12]
7-4
Chapter 7 External Bus Controller
7.3.3
Address Mapping
Each of the eight channels can use the Base Address field (EBBAR.BA[31:20]) and the Channel Size
field (EBCCRn.CS[3:0]) of the External Bus Channel Control Register to map to any physical address.
A channel is selected when the following equation becomes True.
paddr[31:20] & !Mask[31:20] == BA[31:20] & !Mask[31:20]
In the above equation, paddr represents the accessed physical address, Mask[31:20] represents the
address mask value selected from Table 7.3.1 from the Channel Size, the ampersand (&) represents the
AND operation, and the exclamation mark (!) represents the Logical NOT for each bit.
Operation is indeterminate when either multiple channels are selected simultaneously, or a channel is
selected simultaneously with the SDRAM Controller or PCI Controller.
Table 7.3.2 Address Mask
CS[3:0]
Channel Size
Address Mask[31:20]
0000
1 MB
0000_0000_0000
0001
2 MB
0000_0000_0001
0010
4 MB
0000_0000_0011
0011
8 MB
0000_0000_0111
0100
16 MB
0000_0000_1111
0101
32 MB
0000_0001_1111
0110
64 MB
0000_0011_1111
0111
128 MB
0000_0111_1111
1000
256 MB
0000_1111_1111
1001
512 MB
0001_1111_1111
1010
1 GB
0011_1111_1111
1011
Reserved
Reserved
1100
Reserved
Reserved
1101
Reserved
Reserved
1110
Reserved
Reserved
1111
Reserved
Reserved
7-5
Chapter 7 External Bus Controller
7.3.4
External Address Output
The maximum memory space size for each channel is 1 GB (230B). Addresses are output by dividing
the 20-bit ADDR[19:0] signal into two parts: the upper address and the lower address. The address bit
output to each bit of the ADDR[19:0] signal changes according to the setting of the channel data bus
width. (See “7.3.5 Data Bus Size” for more information.)
It is possible for an external device to latch the upper eight address bits using the UAE signal. Either
the UAE signal itself can be used as a Latch Enable signal or the upper address can be latched at the rise
of SYSCLK when the UAE signal is being asserted.
The ADDR signal output is held for one clock cycle after the UAE signal assertion when the
CCFG.UAEHOLD bit is set (default). (See Figure 7.5.1.) The ADDR signal output is not held when the
CCFG.UAEHOLD bit is cleared. This hold time setting is applied globally to all channels.
The UAE signal of the upper address is always asserted at the first external bus access cycle after
Reset. In all subsequent external bus access cycles, the bit mapping of the upper address output to
ADDR[19:12] is compared to the bit mapping of the upper address output to ADDR[19:12] previously.
The upper address is output and the UAE signal is asserted only if the compared results do not match.
As indicated below in Table 7.3.3, in the case of channel sizes that do not use the upper address
latched by the UAE signal, with the exception of the first cycle after reset, the upper address is not
output and the UAE signal is not asserted.
Table 7.3.3 Relationship Between the Upper Address Output and the Channel Size (CS)
CS
1 MB
2 MB
4 MB
32 bits



√
16 bits


√
√
8 bits

√
√
√
Bus Width
8 MB or more
√: The upper address output changes when the upper address changes.
: The upper address output does not change (with the exception of the first cycle after
reset.)
7-6
Chapter 7 External Bus Controller
7.3.5
Data Bus Size
The External Bus Controller supports devices with a data bus width of 8 bits, 16 bits, and 32 bits. The
data bus width is selected using the BSZ field of the Channel Control Register (EBCCRn). The address
bits output to each bit of the ADDR[19:0] signal change according to the mode. When access of a size
larger than the data bus width is performed, the dynamic bus sizing function is used to execute multiple
bus access cycles in order from the lower address.
7.3.5.1
32-bit Bus Width Mode
DATA[31:0] becomes valid.
Bits [21:2] of the physical address are output to ADDR[19:0]. The internal address bits [29:22],
which are the upper address, are multiplexed to external ADDR[19:12]. The maximum memory
size is 1 GB.
Table 7.3.4 Address Output Bit Correspondence in the 32-bit Mode
ADDR Bit
19 18 17 16 15 14 13 12 11 10 9
Upper Address
29 28
27
26 25
24
23 22
Lower Address
21 20
19
18 17
16
15 14
13
12 11
8
7
6
5
4
3
2
1
0
10
9
8
7
6
5
4
3
2
When a Single cycle that accesses 1-Byte/1 half-word/1-word data is executed, 32-bit access is
executed only once on the external bus. 32-bit access is executed twice when performing 1double-word access. When a Burst cycle is executed, one 32-bit cycles are executed for each Burst
access when the Bus cycle tries to request a byte combination other than word data.
7.3.5.2
16-bit Bus Width Mode
DATA[15:0] becomes valid.
Bits [20:1] of the physical address are output to ADDR[19:0]. The internal address bits [28:21],
which are the upper address, are multiplexed to external ADDR[19:12]. In other words, the
address is shifted up one bit relative to the 32-bit bus mode when output. As a result, the
maximum memory size of the 16-bit bus mode is 512 MB.
Table 7.3.5 Address Output Bit Correspondence in the 16-bit Mode
ADDR Bit
19 18 17 16 15 14 13 12 11 10 9
Upper Address
28 27
26
25 24
23
22 21
Lower Address
20 19
18
17 16
15
14 13
12
11 10
8
7
6
5
4
3
2
1
0
9
8
7
6
5
4
3
2
1
When a Single cycle that accesses 1-Byte or 1 half-word data is executed, 16-bit access is
executed only once on the external bus. 16-bit access is executed twice when performing 1-word
access. 16-bit access is executed four times when performing 1-double-word access. When a Burst
cycle is executed, two 16-bit cycles are executed for each Burst access when the Bus cycle tries to
request a byte combination other than word data.
7-7
Chapter 7 External Bus Controller
7.3.5.3
8-bit Bus Width Mode
DATA[7:0] becomes valid.
Bits [19:0] of the physical address are output to ADDR[19:0]. The internal address bits [27:20],
which are the upper address, are multiplexed to external ADDR[19:12]. In other words, the
address is shifted up two bits or more relative to the 32-bit bus mode when output. As a result, the
maximum memory size of the 8-bit bus mode is 256 MB.
Table 7.3.6 Address Output Bit Correspondence in the 8-bit Mode
ADDR Bit
19 18 17 16 15 14 13 12 11 10 9
Upper Address
27 26
25
24 23
22
21 20
Lower Address
19 18
17
16 15
14
13 12
11
10
9
8
7
6
5
4
3
2
1
0
8
7
6
5
4
3
2
1
0
When a Single cycle that accesses 1-Byte data is executed, 8-bit access is executed only once on
the external bus. 8-bit access is executed twice when performing 1-half-word access. 8-bit access
is executed four times when performing 1-word access. 8-bit access is executed eight times when
performing 1-double-word access. When a Burst cycle is executed, four 8-bit cycles are executed
for each Burst access when the Bus cycle tries to request a byte combination other than word data.
7-8
Chapter 7 External Bus Controller
7.3.6
Access Modes
The following four modes are available as controller access modes. These modes can be set
separately for each channel.
•
Normal mode
•
Page mode
•
External ACK mode
•
Ready mode
Depending on the combination of modes in each channel, either of two modes in which the
ACK*/Ready signal operates differently (ACK*/Ready Dynamic mode, ACK*/Ready Static mode) is
selected by the ACK*/Ready Mode bit (PCFG.ACKIN) of the Chip Configuration Register. The mode
selected is applied globally to all channels.
(1) ACK*/READY Dynamic mode (PCFG.ACKIN = 0)
This mode is selected in the initial state.
The ACK*/Ready signal automatically switches to either input or output according to the setting of
each channel. When in the Normal mode or the Page mode, the ACK*/Ready signal is an output
signal, and the internally generated ACK* signal is output. When in the External ACK* or Ready
mode, the ACK*/Ready signal becomes an input signal. The ACK*/Ready signal outputs High if
there is no access to the External Bus Controller. However, this signal may output Low during
access to SDRAM.
Please refer to the timing diagrams (Figure 7.5.23 and Figure 7.5.24) and be careful to avoid
conflicts when switching from output to input.
(2) ACK*/Ready Static mode (PCFG.ACKIN = 1)
The internally generated ACK* signal is not output when in either the Normal mode or Page mode.
Therefore, the ACK*/Ready signal will not become an output in any channel.
Access using Burst transfer by the internal bus (G-Bus) is supported when in a mode other than the
Ready mode. However, the Ready mode is not supported.
Table 7.3.7 Operation Mode
PM
0
ACK*/Ready
Dynamic Mode
!0
0
ACK*/Ready
Static Mode
!0
RDY
0
EACK
Mode
ACK*/READY
Pin State
Access End
Timing State
G-Bus Burst
Access
0
Normal
Output
Internally
Generated ACK*
√
1
External ACK*
Input
ACK* Input
√
1

READY
Input
Ready Input

0

Page
Output
Internally
Generated ACK*
√
1

Reserved



Internally
Generated ACK*
√
0
0
Normal
Hi-Z
1
External ACK*
Input
ACK* Input
√
1

READY
Input
Ready Input

0

Page
Hi-Z
Internally
Generated ACK*
√
1

Reserved



7-9
Chapter 7 External Bus Controller
7.3.6.1
Normal Mode
When in this mode, the ACK*/Ready signal becomes an ACK* output when it is in the
ACK*/Ready Dynamic mode. The ACK*/Ready signal becomes High-Z when it is in the
ACK*/Ready Static mode.
Wait cycles are inserted according to the EBCCRn.PWT and EBCCRn.WT value at the access
cycle. The Wait cycle count is 0 – 0x3f.
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY (Output)
EBCCRn.PWT:WT=3
expresses indeterminate values
EBCCRn.SHWT=0
Figure 7.3.1 Normal Mode
7.3.6.2
External ACK Mode
When in this mode, the ACK*/READY pin becomes ACK* input, and the cycle is ended by the
ACK* signal from an external device. ACK* input is internally synchronized. Refer to Section
“7.3.7.4 ACK* Input Timing” for more information regarding timing.
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY(Input)
represents indeterminate values.
EBCCRn.SHWT=0
Figure 7.3.2 External ACK Mode
7-10
Chapter 7 External Bus Controller
7.3.6.3
Ready Mode
When in this mode, the ACK*/Ready pin becomes Ready input, and the cycle is ended by
Ready input from an external device. Ready input is internally initialized. See Section “7.3.7.5
Ready Input Timing” for more information regarding the operation timing.
When the Wait cycle count specified by EBCCREBCCRn.PWT:WT elapses, a check is
performed to see whether the Ready signal was asserted.
The Ready mode does not support Burst access by the internal bus.
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY
(Input)
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
Start Ready Check
Figure 7.3.3 Ready Mode
7.3.6.4
Page Mode
When in this mode, the ACK*/Ready pin becomes ACK* output when it is in the Dynamic
mode. When it is in the ACK*/Ready Static mode, the ACK*/Ready signal becomes High-Z.
Wait cycles are inserted into the access cycle according to the values of EBCCRn.PWT and
EBCCRn.WT. The Wait cycle count in the first access cycle of Single access or Burst access is
determined by the EBCCRn.WT value. The Wait cycle count can be set from 0 to 15. The Wait
cycle count of subsequent Burst cycles is determined by the EBCCRn.PWT value. The Wait cycle
count can be set from 0 to 3.
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY (Output)
EBCCRn.WT=2
EBCCRn.PWT=1
EBCCRn.PWT=1
Figure 7.3.4 Page Mode
7-11
EBCCRn.PWT=1
Chapter 7 External Bus Controller
7.3.7
Access Timing
7.3.7.1
SHWT Option
The SHWT option is selected when the SHWT (Setup/Hold Wait Time) field of the Channel
Control Register is a value other than “0”. This option inserts a Setup cycle and a Hold cycle
between the current signal and the next signal.
Setup cycle: CE* from ADDR, OE* from CE*, BWE* from CE*, SWE* from CE*
Hold cycle: ADDR from CE*, CE* from OE*, CE* from BWE*, CE* from SWE*
This option is used for I/O devices that are generally slow. All Setup cycles and Hold cycles
will be identical, so each cycle cannot be set individually.
The SHWT mode cannot be used by the Page mode. The SHWT mode can be used by all other
modes, but there is one restriction: the internal bus cannot use Burst access.
SYSCLK
CE*/BE*
ADDR [19:0]
OE*
SWE*/BWE*
DATA [31:0]
ACK*/READY
(Output)
EBCCRn.PWT:WT=0
EBCCRn.SHWT=0
Figure 7.3.5 SWHT Disable (Normal Mode, Single Read/Write Cycle)
SYSCLK
CE*/BE*
ADDR [19:0]
OE*
SWE*/BWE*
DATA [31:0]
ACK*/READY
(Output)
EBCCRn.PWT:WT=0
EBCCRn.SHWT=1
Figure 7.3.6 SHWT 1 Wait (Normal Mode, Single Read/Write Cycle)
7-12
Chapter 7 External Bus Controller
7.3.7.2
ACK*/READY Input/Output Switching Timing
When in the ACK*/Ready Static mode, the ACK*/Ready signal is always an input signal.
When in the ACK*/Ready Dynamic mode, the ACK*/Ready signal is an input signal when in the
External ACK mode or the Ready mode, but is an output signal in all other modes.
During External ACK mode or Ready mode access, the ACK* signal becomes High-Z at the
cycle where the CE* signal is asserted. At the end of the access cycle, the ACK* signal is output
(driven) again one clock cycle after the CE* signal is deasserted (see Figure 7.3.3).
7.3.7.3
ACK* Output Timing (Normal Mode, Page Mode)
When in the Normal mode and Page mode of the ACK*/Ready Dynamic mode, the ACK*
signal becomes an output signal and is asserted for one clock cycle to send notification to the
external device of the data Read and data Write timing.
During the Read cycle, the data is latched at the rise of the next clock cycle after when the
ACK* signal is asserted. (See Figure 7.3.7 ACK* Output Timing (Single Read Cycle) ).
During the Write cycle, SWE*/BWE* is deasserted at the next clock cycle after when the
ACK* signal is deasserted, and the data is held for one more clock cycle after that. (See Figure
7.3.8 ACK* Output Timing (Single Write Cycle) ).
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY
(Output)
1 clock
Data is latched
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
Figure 7.3.7 ACK* Output Timing (Single Read Cycle)
SYSCLK
CE*
ADDR [19:0]
SWE*/BWE*
1 clock
DATA [31:0]
2 clocks
ACK*/READY
(Output)
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
Figure 7.3.8 ACK* Output Timing (Single Write Cycle)
7-13
Chapter 7 External Bus Controller
7.3.7.4
ACK* Input Timing (External ACK Mode)
The ACK* signal becomes an input signal when in the external ACK mode.
During a Read cycle, data latched timing is selectable from two cases by EBCCRn.LDEA bit.
When EBCCRn.LDEA is zero, data is latched two clock cycles after assertion of the ACK* signal
is acknowledged (Figure 7.3.9 ACK* Input Timing (Single Read Cycle)). When EBCCRn.LDEA
is one, data is latched at the assertion of the ACK* signal is acknowledged (Figure 7.3.10 ACK*
Input Timing (Single Read Cycle)). During a Write cycle, assertion of the ACK* signal is
acknowledged, SWE*/BWE* is deasserted three clock cycles later, then data is held for one clock
cycle after that (Figure 7.3.11 ACK* Input Timing (Single Write Cycle).
The ACK* input signal is internally initialized. Due to internal State Machine restrictions,
ACK* cannot be acknowledged consecutively on consecutive clock cycles. External devices can
assert ACK* across multiple clock cycles under the following conditions.
•
During Single access, the ACK* signal can be asserted before the end of the cycle during
which CE* is dasserted.
•
During Burst access, it is possible to assert the ACK* signal for up to three clock cycles
during Reads and for up to five clock cycles during Writes. If the ACK* signal is asserted for
a period longer than this, it will be acknowledged as the next valid ACK* signal.
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY (Input)
2 clocks
Acknowledge ACK*
Latch Data
Figure 7.3.9 ACK* Input Timing (Single Read Cycle)
7-14
EBCCRn.SHWT=0
EBCCRn.LDEA=0
Chapter 7 External Bus Controller
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY (Input)
2 clocks
Acknowledge ACK*
Latch Data
EBCCRn.SHWT=0
EBCCRn.LDEA=1
Figure 7.3.10 ACK* Input Timing (Single Read Cycle)
SYSCLK
CE*
ADDR [19:0]
3 clocks
SWE*/BWE*
DATA [31:0]
4 clocks
ACK*/READY (Input)
Acknowledge ACK*
Figure 7.3.11 ACK* Input Timing (Single Write Cycle)
7-15
EBCCRn.SHWT=0
Chapter 7 External Bus Controller
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY (Input)
2 clocks
Acknowledge
ACK*
2 clocks
Latch
Data
Acknowledge
ACK*
Latch
Data
EBCCRn.SHWT=0
Figure 7.3.12 ACK* Input Timing (Burst Read Cycle)
SYSCLK
CE*
ADDR [19:0]
3 clocks
3 clocks
SWE*/BWE*
4 clocks
4 clocks
DATA [31:0]
ACK*/READY (Input)
Acknowledge ACK*
Acknowledge ACK*
EBCCRn.SHWT=0
Figure 7.3.13 ACK* Input Timing (Burst Write Cycle)
7-16
Chapter 7 External Bus Controller
7.3.7.5
Ready Input Timing
The ACK*/Ready pin is used as a Ready input when in the Ready mode. The Ready input
timing is the same as the ACK* input timing explained in “7.3.7.4 ACK* Input Timing (External
ACK Mode)” with the two following exceptions.
•
Ready must be a High Active signal.
•
When in the Ready mode, the Wait cycle count specified by EBCCRn.PWT:WT must be
inserted in order to delay the Ready signal check (see “7.3.6.3 Ready Mode”).
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY (Input)
2 clocks
Latch Data
Acknowledge Ready
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
SYSCLK
CE*
ADDR [19:0]
OE*
DATA [31:0]
ACK*/READY
(Input)
2 clocks
Start Ready
Check
Acknowledge Ready
Latch Data
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
Figure 7.3.14 Ready Input Timing (Read Cycle)
7-17
Chapter 7 External Bus Controller
SYSCLK
CE*
ADDR [19:0]
3 clocks
SWE*/BWE*
DATA [31:0]
4 clocks
ACK*/READY
(Input)
Acknowledge Ready
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
SYSCLK
CE*
ADDR [19:0]
3 clocks
SWE*/BWE*
DATA [31:0]
4 clocks
ACK*/READY
(Input)
Start Ready
Check
Acknowledge Read
EBCCRn.PWT:WT=2
EBCCRn.SHWT=0
Figure 7.3.15 Ready Input Timing (Write Cycle)
7.3.8
Clock Options
External devices connected to the external bus can use the SYSCLK signal as the clock. The
SYSCLK signal clock frequency can be set to one of the following divisions of the internal bus clock
(GBUSCLK): 1/1, 1/2, 1/3, 1/4. The ADDR[4:3] signal is used to set this frequency during reset, and
the setting is reflected in the SYSCLK Division Ratio field (CCFG.SYSSP) of the Chip Configuration
Register.
The operation reference clock frequency can be set to one of the following divisions of the internal
bus clock (GBUSCLK) for each channel independent of the SYSCLK signal clock frequency: 1/1, 1/2,
1/3, 1/4. The external signal of the External Bus Controller operates synchronous to this operation
clock. The Bus Speed field (EBCCRn.SP) of the External Bus Channel Control Register sets this
frequency.
Please set the same value as CCFG.SYSSP to EBCCRn.SP when the external device uses the
SYSCLK signal. If these two values do not match, then the channel, the operation reference clock, and
the SYSCLK signal will no longer be synchronous and will not operate properly.
7-18
Chapter 7 External Bus Controller
7.3.9
PCMCIA mode
The EBUSC Controller supports the following functions of the 16-Bit PC Card interface.
The EBUSC Controller supports 2 PCMCIA slots. Any of the eight EBUSC Controller channels can
target the 2 PCMCIA slots. The use of channels 6 and 7 first for PCMCIA is recommended, since their
normal CE_ signals are not pinned out and they cannot be used for any other function. For a channel to
target a PCMCIA slot, it must first be in a PCMCIA mode. This is done by programming the PCM field
to a non zero value. See the PCM field description for more details. Once a channel has been
programmed to a PCMCIA mode, the PCS bit determines which slot is accessed via the two pairs of
Card Enable signals.
Since pin multiplexing exists on the TX4925 device, the PCMCIA pin selection should be configured
appropriately. Please refer to “3.3 Pin Multiplexing” for more information.
It should be noted that a normal dedicated CE_ for a channel used for PCMCIA access will continue
to go active when that channel is accessed. It is up to the system designer to make sure that this does not
cause any conflict on the external buses. The signals BWE*/BE*, OE*, and WE* also continue to cycle
regardless of the PCMCIA mode. This was done for AC timing considerations.
OE* and WE* are forced inactive during IO access.
CARDIORD* and CARDIOWR* are multiplexed on BWE*/BE*[3:2] pins respectively in a time
multiplexed manner on the TX4925.
7.3.9.1
PCMCIA Mode Selects
A channel that is allocated to be used as a PCMCIA control channel can be put into one of four
access modes. The first is the Attribute Memory Access mode. This mode is typically used at
power on only to determine the type of PCMCIA card installed. The second is the Common
Memory Access Mode, used for cards that are of the memory type. The third is IO Access mode,
used for cards that support IO. A single channel can be used initially for Attribute access to
determine the card types and then that channel can be reallocated for one of the cards.
In the case of properties access, memory access, and I/O access is determined by differences in
the signals CARDREG*, CARDIORD*, CARDIOWR*, the maximum address space, and width
of the access. Consult the PCMCIA 16-Bit PC Card specification for details.
7.3.9.2
PCMCIA Slot Selection
Slot 1 is accessed by programming the PCS bit to 0 and the CARD1CSH*/CARD1CSL*
signals are active. If the PCS bit is set to 1 then Slot 2 is accessed and the
CARD2CSH*/CARD2CSL* signals are active.
7-19
Chapter 7 External Bus Controller
7.3.9.3
PCMCIA Channel Programming Requirements
Because of the multiple modes possible on a given EBUSC Channel the following restrictions
apply when a channel is used for PCMCIA access.
Page Mode is not allowed on a PCMCIA enabled Channel. Undetermined results will occur if
Page Mode is active.
External Ack Mode is not allowed on a PCMCIA enabled Channel. Undetermined results will
occur if External Ack Mode is active.
A channel that is used for PCMCIA access must be programmed to have a bus size of 16 or 8
bits. Addressing will not be correct if using a 32 bit bus size.
To meet the setup and hold timing of the PCMCIA bus the SHWT mode must be used.
Depending on the access speed of the card, the number of SHWT states and the speed of the
channel will need to be programmed to meet the timing requirements.
PWT and WT can be used to extend the OE*, WE*, CARDIORD*, and CARDIOWR* active
timing. See the description of the PWT and WT fields for details.
The EBUSC Controller can be used to implement the WAIT* function of the PCMCIA
specification. To do so PCMCIA channel must be programmed with the RDY bit set. See RDY
mode description for more details. Wait states will then be inserted externally until the WAIT*
signal from the PC card goes inactive and informing the EBUSC controller that it is READY. The
EBUSC controller supports a unique WAIT* signal for both slots. See device pin multiplexing for
details on support. The PWT/WT counter must be used programmed to account for the delay in
WAIT* valid from OE*, WE*, CARDIORD*, CARDIOWR*. Otherwise the high time of WAIT*
during this delay may cause the EBUSC controller to terminate the cycle early. The delay value
should take into account that the WAIT* signals are synchronized to the full speed clock
regardless of the speed of the channel.
7.3.9.4
PCMCIA Addressing and UAE
The PCMCIA specification has a 26 bit address bus. Since the external address bus of the
device is only 20 bits, the top 6 bits must be latched using the UAE signal. See the description on
UAE for more details.
The PCMCIA specification always uses a byte addressing scheme, where A0 is a “don’t care”
for “Word” and “Odd-Byte-Only” accesses. Normally the EBUSC controller outputs an address
that allows for addressing bytes, half words, or words depending on the programmed bus size. For
accessing data sizes smaller than the programmed bus size the BE*/BWE* signals are used in
normal operations. In the case of a channel being used for PCMCIA access the addressing will
always be for bytes, regardless of the bus size being 16 or 8 bit.
7-20
Chapter 7 External Bus Controller
7.3.9.5
PCMCIA IOIS16* Signal
The IOIS16* signal is not supported. This means that the size of IO accesses needs to be known
ahead of time and are not dynamically sized.
7.3.9.6
PCMCIA Cycle Types
Burst Cycles are not allowed on a PCMCIA enabled Channel. This is due to the fact that the
EBUSC Controller does not toggle all signals between the individual accesses for burst accesses.
The PCMCIA specification requires that all signals toggle per each access. In addition
programming requirements for a channel supporting PCMCIA require SHWT mode. Burst
accesses are not allowed with SHWT enabled.
Table 7.3.8 Access Mapping (PCMCIA in 16-bit Channel and Little Endian Mode)
Access
Word(1/2)
Access
Address
CARDnCSL*
DATA[15:8]
DATA[7:0]
R[7:0]
16-bit
LL
R[15:8]
16-bit
LL
R[31:24]
R[23:16]
01
00
16-bit
LH
R[15:8]
-
10
16-bit
LL
R[31:24]
R[23:16]
00
00
16-bit
LL
R[15:8]
R[7:0]
10
16-bit
HL
-
R[23:16]
10
16-bit
LL
R[15:8]
R[7:0]
R[7:0]
Triple byte(2/2)
Half-Word
CARDnCSH*,
10
Triple byte(2/2)
Triple byte(1/2)
Port Size
00
00
Word{2/2}
Triple byte(1/2)
ADDR[1:0]
10
Half-Word
00
00
16-bit
LL
R[15:8]
Byte
11
10
16-bit
LH
R[7:0]
-
Byte
10
10
16-bit
HL
-
R[7:0]
Byte
01
00
16-bit
LH
R[7:0]
-
Byte
00
00
16-bit
HL
-
R[7:0]
Note: Word access and triple byte access yield 2 separate external cycles.
Table 7.3.9 Access Mapping (PCMCIA in 8-bit Channel and Little Endian Mode)
Access
Word(1/4)
Access
Address
ADDR[1:0]
Port Size
CARDnCSH*,
CARDnCSL*
DATA[15:8]
DATA[7:0]
R[7:0]
00
8-bit
HL
-
Word{2/4}
01
8-bit
HL
-
R[15:8]
Word(3/4)
10
8-bit
HL
-
R[23:16]
00
Word{4/4}
11
8-bit
HL
-
R[31:24]
01
8-bit
HL
-
R[15:8]
Triple byte(2/3)
10
8-bit
HL
-
R[23:16]
Triple byte(3/3)
11
8-bit
HL
-
R[31:24]
00
8-bit
HL
-
R[7:0]
01
8-bit
HL
-
R[15:8]
Triple byte(1/3)
Triple byte(1/3)
01
00
Triple byte(2/3)
Triple byte(3/3)
10
8-bit
HL
-
R[23:16]
10
10
8-bit
HL
-
R[7:0]
11
8-bit
HL
-
R[15:8]
00
00
8-bit
HL
-
R[7:0]
01
8-bit
HL
-
R[15:8]
Byte
11
11
8-bit
HL
-
R[7:0]
Byte
10
10
8-bit
HL
-
R[7:0]
Byte
01
01
8-bit
HL
-
R[7:0]
Byte
00
00
8-bit
HL
-
R[7:0]
Half-Word(1/2)
Half-Word(2/2)
Half-Word(1/2)
Half-Word(2/2)
Note: Word access yields 4 separate external cycles.
Triple byte access yields 4 separate external cycles.
Half-word access yields 4 separate external cycles.
7-21
Chapter 7 External Bus Controller
Table 7.3.10 Access Mapping (PCMCIA in 16-bit Channel and Big Endian Mode)
Access
Address
Access
Word(1/2)
00
Word{2/2}
Triple byte(1/2)
01
Triple byte(2/2)
Triple byte(1/2)
00
Triple byte(2/2)
Half-Word
10
ADDR[1:0]
Port Size
00
16-bit
10
16-bit
00
CARDnCSH*,
DATA[15:8]
DATA[7:0]
LL
R[31:24]
R[23:16]
LL
R[15:8]
R[7:0]
16-bit
LL
R[31:24]
R[23:16]
10
16-bit
LH
R[15:8]
-
00
16-bit
HL
-
R[23:16]
10
16-bit
LL
R[15:8]
R[7:0]
10
16-bit
LL
R[15:8]
R[7:0]
CARDnCSL*
Half-Word
00
00
16-bit
LL
R[15:8]
R[7:0]
Byte
11
10
16-bit
LH
-
R[7:0]
Byte
10
10
16-bit
HL
R[7:0]
-
Byte
01
00
16-bit
LH
-
R[7:0]
Byte
00
00
16-bit
HL
R[7:0]
-
Note: Word access and triple byte access yield 2 separate external cycles.
Table 7.3.11 Access Mapping (PCMCIA in 8-bit Channel and Big Endian Mode)
Access
Word(1/4)
Access
Address
00
ADDR[1:0]
Port Size
00
8-bit
CARDnCSH*,
CARDnCSL*
HL
DATA[15:8]
DATA[7:0]
-
R[31:24]
Word{2/4}
01
8-bit
HL
-
R[23:16]
Word(3/4)
10
8-bit
HL
-
R[15:8]
Word{4/4}
11
8-bit
HL
-
R[7:0]
01
8-bit
HL
-
R[23:16]
Triple byte(2/3)
10
8-bit
HL
-
R[15:8]
Triple byte(3/3)
11
8-bit
HL
-
R[7:0]
00
8-bit
HL
-
R[31:24]
01
8-bit
HL
-
R[23:16]
10
8-bit
HL
-
R[15:8]
10
8-bit
HL
-
R[15:8]
11
8-bit
HL
-
R[7:0]
Triple byte(1/3)
Triple byte(1/3)
01
00
Triple byte(2/3)
Triple byte(3/3)
Half-Word(1/2)
10
Half-Word(2/2)
Half-Word(1/2)
00
Half-Word(2/2)
00
8-bit
HL
-
R[15:8]
01
8-bit
HL
-
R[7:0]
Byte
11
11
8-bit
HL
-
R[7:0]
Byte
10
10
8-bit
HL
-
R[7:0]
Byte
01
01
8-bit
HL
-
R[7:0]
Byte
00
00
8-bit
HL
-
R[7:0]
Note: Word access yields 4 separate external cycles.
Triple byte access yields 4 separate external cycles.
Half-word access yields 4 separate external cycles.
7.3.9.7
PCMCIA INT# Support
The TX4925 does not have the PCMCIA INT* signal; it is up to the system designer to
implement it external to the device, if necessary.
7-22
Chapter 7 External Bus Controller
7.4
Register
Table 7.4.1 External Bus Controller (EBUSC) Registers
Reference
Offset Address
Bit Width
Register Symbol
Register Name
7.4.1
0x9000
32
EBCCR0
External Bus Channel Control Register 0
7.4.2
0x9004
32
EBBAR0
External Bus Base Address Register 0
7.4.1
0x9008
32
EBCCR1
External Bus Channel Control Register 1
7.4.2
0x900c
32
EBBAR1
External Bus Base Address Register 1
7.4.1
0x9010
32
EBCCR2
External Bus Channel Control Register 2
7.4.2
0x9014
32
EBBAR2
External Bus Base Address Register 2
7.4.1
0x9018
32
EBCCR3
External Bus Channel Control Register 3
7.4.2
0x901c
32
EBBAR3
External Bus Base Address Register 3
7.4.1
0x9020
32
EBCCR4
External Bus Channel Control Register 4
7.4.2
0x9024
32
EBBAR4
External Bus Base Address Register 4
7.4.1
0x9028
32
EBCCR5
External Bus Channel Control Register 5
7.4.2
0x902c
32
EBBAR5
External Bus Base Address Register 5
7.4.1
0x9030
32
EBCCR6
External Bus Channel Control Register 6
7.4.2
0x9034
32
EBBAR6
External Bus Base Address Register 6
7.4.1
0x9038
32
EBCCR7
External Bus Channel Control Register 7
7.4.2
0x903c
32
EBBAR7
External Bus Base Address Register 7
7-23
Chapter 7 External Bus Controller
7.4.1
External Bus Channel Control Register (EBCCRn) 0x9000 (ch. 0), 0x9008 (ch. 1)
0x9010 (ch. 2), 0x9018 (ch. 3)
0x9020 (ch. 4), 0x9028 (ch. 5)
0x9030 (ch. 6), 0x9038 (ch. 7)
Channel 0 and 7 can be used as Boot memory. Therefore, the default is set by the Boot signal (see
“7.3.2 Global/Boot-up Options”). Channels 1 - 7 have the same register configuration as Channel 0, but
they have different defaults than Channel 0.
31
30
LDEA
EACK
29
Reserved
27
26
25
PCM
24
R/W
R/W
~A[5](ch0,7)/
~A[5]/0
R/W
000
R/W
000(ch0-6)/001(ch7)
23
PCS
Reserved
22
R/W
0
R/W
R/W
1(ch0,7)/
A[13:12](ch0,7)/
00(ch1~6)
0(ch1~6)
0(ch1~6)
15
12
11
8
WT
CS
R/W
1111(ch0,7)/0000(ch1~6)
R/W
0010(ch0,7)/0000(ch1-6)
21
20
19
BSZ
18
PM
R/W
2
5
SP
3
ME
R/W
R/W
R/W
A[4:3]/00
R/W
A[8]/0
A[11] 0(ch0-6)/
(ch0,7)/ 1(ch7)
0(ch1-6)
4
R/W
0
6
RDY
16
PWT
0
7
BC
17
: Type
11(ch0,7)/00(ch1-6) : Initial value
0
SHWT
R/W
000(ch0-6)/111(ch7)
: Type
: Initial value
Only in the case of Channel 0 is fields with different defaults in the “Channel 0/Other channel” state.
D[ ] represents the corresponding Data[ ] signal value when the RESET* signal is deasserted. A[ ] represents
the corresponding ADDR[ ] signal value when the RESET* signal is deasserted.
Bits
Mnemonic
Field Name
Description
31
LDEA
Latch Data at
External ACK*
Latch Data at External ACK* (Initial value: ~A[5](ch0,7)/0(ch1~6), R/W)
Specifies the data latched timing in the external ACK* input mode.
0 : Data is latched for External ACK* Input mode Reads at OE* active.
1 : Data is latched for External ACK* Input mode Reads at ACK* active.
30
EACK
ACK* Input
Active
ACK* Input Active (Initial value: ~A[5]/0, R/W)
Enable ACK* Input mode.
0 : ACK* Input mode is disabled.
1 : ACK* Input mode is enabled.
29 : 27

Reserved
Note: These bits are always set to “0” (Initial value: 000, R/W).
Figure 7.4.1 External Bus Channel Control Register (1/3)
7-24
Chapter 7 External Bus Controller
Bits
Mnemonic
Field Name
Description
26:24
PCM
PCMCIA 16-bit
PC Card Mode
PCMCIA 16-bit PC Card Mode (Initial value: 000(ch0-6)/001(ch7), R/W)
Specifies the PCMCIA mode.
000 : PCMCIA Disabled for Channel.
001 : PCMCIA Common Memory Access Enabled for Channel.
010 : PCMCIA IO Access Enabled for Channel.
011 : PCMCIA Attribute Memory Access Enabled for Channel.
100, 101, 110, 111: Reserved
23
PCS
PCMCIA Slot
Selection
PCMCIA Slot Selection (Initial value: 0, R/W)
This bit select PCMCIA slot.
0 : Channel PCMCIA access is for Slot1.
1 : Channel PCMCIA access is for Slot2.
22

Reserved
Note: This bit is always set “1” (Initial value: 1(ch0,7)/0(ch1-6), R/W).
The value of Boot signal ADDR[2] is set in the default value for bit 22 of Channel 0
and Channel 7. However, Boot signal ADDR[2] must be “1”. If the default value for bit
22 of Cannel 0 and Channel 7 is “0”, please confirm that Boot signal ADDR[2] is not
“0”.
21:20
BSZ
Bus Width
External Bus Control Bus Size (Initial value: A[13:12](ch0,7)/00(ch1~6), R/W)
Specifies the memory bus width.
00: Reserved
10: 16-bit width
01: 32-bit width
11: 8-bit width
Note: ADDR[13:12] is set to Channel 0 and 7 as the default.
19:18
PM
Page Mode
Page Size
External Bus Control Page Mode Page Size (Initial value: 00, R/W)
Specifies the Page mode (Page mode memory support) use and page size.
00: Normal mode
01: 4-page mode
10: 8-page mode
11: 16-page mode
17:16
PWT
Page Mode Wait
time
External Bus Control Page Mode Wait Time (Initial value: 11(ch0,7)/00(ch1-6), R/W)
Specifies the wait cycle count during Burst access when in the Page mode.
00: 0 wait cycles
10: 2 wait cycles
01: 1 wait cycle
11: 3 wait cycles
Specifies a wait cycle count from 0 to 63 that matches WT when in the Normal mode
or Ready mode. (See the WT item.)
15:12
WT
Normal Mode
Wait Time
External Bus Control Normal Mode Wait Time
(Initial value: 1111(ch0,7)/0000(ch1~6), R/W)
Specifies the wait cycle count in the first cycle of a Single Cycle or Burst access.
Specifies the following wait cycle count when in the Page mode.
0000: 0 wait cycles 0100: 4 wait cycles 1000: 8 wait cycles
1100: 12 wait cycles
0001: 1 wait cycle 0101: 5 wait cycles 1001: 9 wait cycles
1101: 13 wait cycles
0010: 2 wait cycles 0110: 6 wait cycles 1010: 10 wait cycles 1110: 14 wait cycles
0011: 3 wait cycles 0111: 7 wait cycles 1011: 11 wait cycles 1111: 15 wait cycles
Specifies a wait cycle count from 0 to 63 that matches PWT when in a mode other
than the Page mode.
PWT[1:0]: WT[3:0]
000000: 0 wait cycles
010000: 16 wait cycles
110000: 48 wait cycles
000001: 1 wait cycle
010001: 17 wait cycles
110001: 49 wait cycles
:
:
:
001110: 14 wait cycles 011110: 30 wait cycles
111110: 62 wait cycles
001111: 15 wait cycles 011111: 31 wait cycles
111111: 63 wait cycles
Note 1: Set the WT wait cycle count to a value greater than the PWT Wait cycle count
when in the Page mode.
Figure 7.4.1 External Bus Channel Control Register (2/3)
7-25
Chapter 7 External Bus Controller
Bits
Mnemonic
Field Name
Description
11:8
CS
Channel Size
External Bus Control Channel Size (Initial value: 0010(ch0,7)/0000(ch1-6), R/W)
Specifies the channel memory size.
0000: 1 MB
0101: 32 MB
*1010: 1 GB
0001: 2 MB
0110: 64 MB
1011-1111: Reserved
0010: 4 MB
0111: 128 MB
0011: 8 MB
1000: 256 MB
0100: 16 MB
*1001: 512 MB
* The channel memory size can be set up to 512 MB when the memory bus width is
16 bits, or up to 256 MB when the memory bus width is 8 bits. No size larger than this
can be set.
7
BC
Byte Control
External Bus Byte Control (Initial value: A[11](ch0,7)/0(ch1-6), R/W)
Specifies whether to use the BWE*[3:0] signal as an asserted Byte Write Enable
signal (BWE*[3:0]) only during a Write cycle, or to use it as an asserted Byte Enable
signal (BE*[3:0]) that is asserted during both Read and Write cycles.
0: Byte Enable (BE *[3:0])
1: Byte Write Enable (BWE*[3:0])
Note: ADDR[11] is set to Channel 0 and 7 as the default.
6
RDY
Ready Input
Mode
External Bus Control Ready Input Mode (Initial value: 0(ch0-6)/1(ch7), R/W)
Specifies whether to use the Ready mode.
0: Disable the Ready mode.
1: Enable the Ready mode.
Note: The Ready mode cannot be used when the Page mode is selected.
5:4
SP
Bus Speed
External Bus Control Bus Speed (Initial value: A[4:3]/00, R/W)
Specifies the External Bus speed.
00: 1/4 speed (1/4 of the GBUSCLK frequency)
01: 1/3 speed (1/3 of the GBUSCLK frequency)
10: 1/2 speed (1/2 of the GBUSCLK frequency)
11: Full speed (same frequency as GBUSCLK)
Note: ADDR[4:3] is set to Channel 0 as the default.
3
ME
Master Enable
External Bus Control Master Enable (Initial value: A[8]/0, R/W)
Enables a channel.
0: Disable channel
1: Enable channel
Note: EBCCR0.ME bit is set when ADDR[8:6] equal to “1xx” as the default.
EBCCR7.ME bit is set when ADDR[8:6] equal to “010” as the default.
The default value for the ME bit of Channel 7 is “1” when Boot signal ADDR[8:6] is
010b. The value 010b cannot be used as Boot signal ADDR[8:6]. If the default value
of the ME bit for Channel 7 is “1”, please confirm that Boot signal ADDR[8:6] is not
010b.
2:0
SHWT
Set Up/Hold Wait
Time
External Bus Control Setup/Hold Wait Time (Initial value: 000(ch0-6)/111(ch7), R/W)
Specifies the wait count when switching between the Address and Chip Enable
signal, or the Chip Enable Signal and Write Enable/Output Enable signal.
* 000: Disable
100: 4 wait cycles
001: 1wait cycle
101: 5 wait cycles
010: 2 wait cycles 110: 6 wait cycles
011: 3 wait cycles 111: 7 wait cycles
* Set this bit field to “0” when using it in the Page mode or when performing Burst
access.
Figure 7.4.1 External Bus Channel Control Register (3/3)
7-26
Chapter 7 External Bus Controller
7.4.2
External Bus Base Address Register (EBBARn)
0x9000 (ch. 0), 0x9008 (ch. 1)
0x9010 (ch. 2), 0x9018 (ch. 3)
0x9020 (ch. 4), 0x9028 (ch. 5)
0x9030 (ch. 6), 0x9038 (ch. 7)
Channel 0 can be used as Boot memory. Therefore, the default is set by the Boot signal (see “7.3.2
Global/Boot-up Options”). Channels 1 - 7 have the same register configuration as Channel 0, but they
have different defaults than Channel 0.
31
20
19
BA[31:20]
16
Reserved
R/W
0x1FC(ch0,7)/0x000(ch1~6)
:Type
: Initial value
15
32
Reserved
: Type
: Initial value
Only in the case of Channel 0 are fields with different defaults in the “Channel 0/Other channel” state.
Bits
Mnemonic
31:20
BA[31:20]
19:0

Field Name
Base Address
Description
External Bus Control Base Address (Initial value: 0x1FC/0x000, R/W)
A physical address is used to specify the base address. The upper 12 bits [31:20] of
the physical address are compared to the value of this field.

Reserved
Figure 7.4.2 External Bus Base Address Register
7-27
Chapter 7 External Bus Controller
7.5
Timing Diagrams
Please take the following points into account when referring to the timing diagrams.
(1) The clock frequency of the SYSCLK signal can be set to one of the following divisions of the internal
bus clock (GBUSCLK): 1/1, 1/2, 1/3, or 1/4. Also, the operating reference clock frequency can be set to
one of the following divisions of the internal bus clock (GBUSCLK) for each channel: 1/1, 1/2, 1/3, or
1/4. (See 7.3.8.) The timing diagrams indicate the SYSCLK signal clock frequency and channel
operating reference clock frequency as being equivalent.
(2) Both the BWE* signal and BE* signal are indicated in all timing diagrams. The setting of the Channel
Control Register (EBCCRn) determines whether the BWE* pin will function as BWE* or BE*.
(3) All Burst cycles in the timing diagrams illustrate examples in which the address increases by increments
of 1 starting from 0. However, cases where the CWF (Critical Word First) function of the TX49 core
was used or the decrement burst function performed by the DMA Controller was used are exceptions.
(4) The timing diagrams display each clock cycle currently being accessed using the symbols described in
the following table. (n=1, 2, 3, …)
SWn
Normal Wait Cycles
PWn
Page Wait Cycles
ASn
Set-up Time from SHWT Address Validation to CE Fall
CSn
Set-up Time from SHWT CE Fall to OE/SWE Fall
AHn
Hold Time from SHWT CE Rise to Address Change
CHn
Hold Time from SHWT OE/SWE Rise to CE Rise
ESn
Synch Cycles of the External Input Signal
UAEn
Upper Address Enable Cycles
Sn
Other Cycles
(5) Shaded areas (
) in the diagrams are undefined values.
7-28
Chapter 7 External Bus Controller
0
f
UAE2
S1
f
0
S2
S3
f
UAE1
f
UAE2
S1
S2
0
S3
f
f
UAE Signal
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
UAE1
7.5.1
Figure 7.5.1 UAE Signal (CCFG.ACEHOLD=1, PWT: WT=0, SHWT=0, Normal)
7-29
0
f
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
UAE1
S1
f
0
S2
S3
f
f
UAE1
S1
S2
0
S3
f
f
Chapter 7 External Bus Controller
Figure 7.5.2 UAE Signal (CCFG.ACEHOLD=0, PWT: WT=0, SHWT=0, Normal)
7-30
Chapter 7 External Bus Controller
0
f
0
0
S2
0
S3
f
S1
1
S2
0
S3
f
f
Normal Mode Access (Single, 32-bit Bus)
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
f
S1
7.5.2
Figure 7.5.3 Double-word Single Write (PWT: WT=1, SHWT=0, Normal, 32-bit Bus)
7-31
Chapter 7 External Bus Controller
S1
S2
S1
S2
S3
SYSCLK
CE*
ADDR[19:0]
0
1
UAE
OE*/BUSSPRT*
SWE*
BWE*
BE*
f
f
0
f
0
DATA[31:0]
ACK*
Figure 7.5.4 Double-word Single Read (PWT: WT=0, SHWT=0, Normal, 32-bit Bus)
7-32
f
0
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
f
S1
SW1
0
S2
S3
f
f
Chapter 7 External Bus Controller
Figure 7.5.5 1-word Single Write (PWT: WT=0, SHWT=0, Normal, 32-bit Bus)
7-33
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
S1
SW1
f
0
S2
S3
f
Chapter 7 External Bus Controller
Figure 7.5.6 1-word Single Read (PWT: WT=0, SHWT=0, Normal, 32-bit Bus)
7-34
Chapter 7 External Bus Controller
0
SW1
0
0
S2
S3
f
S1
SW1
0
1
S2
S3
f
S1
SW1
0
2
S2
S3
f
S1
SW1
0
3
S2
S3
f
f
Normal Mode Access (Burst, 32-bit Bus)
ACK*
DATA[31:0]
BE
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
f
S1
7.5.3
Figure 7.5.7 4-word Burst Write (PWT: WT=1, SHWT=0, Normal, 32-bit Bus)
7-35
Chapter 7 External Bus Controller
S1
SW1
S2
S1
SW1
S2
S1
SW1
S2
S1
SW1
S2
S3
SYSCLK
CE*
ADDR[19:0]
0
1
2
3
UAE
OE*/BUSSPRT*
SWE*
BWE*
BE
f
0
f
DATA[31:0]
ACK*
Figure 7.5.8 4-word Burst Write (PWT: WT=1, SHWT=0, Normal, 32-bit Bus)
7-36
f
Chapter 7 External Bus Controller
c
f
f
f
c
ACK*
f
BE*
DATA [15 : 0]
f
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19 : 0]
CE*
S1
c
0
S2
S3
f
S1
1
c
c
S2
S3
f
S1
c
2
c
S2
S3
f
S1
3
c
S2
S3
f
f
Normal Mode Access (Single, 16-bit Bus)
SYSCLK
7.5.4
Figure 7.5.9 Double-word Single Write (PWT: WT=0, SHWT=0, Normal, 16-bit Bus)
7-37
f
f
ACK*
DATA [15:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
S1
c
0
S2
f
1
S1
c
S2
f
2
S1
c
S2
f
S1
3
c
S2
S3
f
Chapter 7 External Bus Controller
Figure 7.5.10 Double-word Single Read (PWT: WT=0, SHWT=0, Normal, 16-bit Bus)
7-38
ACK*
DATA[15:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
f
S1
S2
c
c
S3
f
f
Chapter 7 External Bus Controller
Figure 7.5.11 Half-word Single Write (PWT: WT=0, SHWT=0, Normal, 16-bit Bus)
7-39
ACK*
DATA[15:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
S1
f
S2
c
S3
f
Chapter 7 External Bus Controller
Figure 7.5.12 Half-word Single Read (PWT: WT=0, SHWT=0, Normal, 16-bit Bus)
7-40
Chapter 7 External Bus Controller
f
c
BWE*
BE
0
S2
S1
1
S2
S1
2
S2
S1
3
S2
S1
4
S2
S1
5
S2
S1
6
S2
S1
7
S2
S3
f
Normal Mode Access (Burst, 16-bit Bus)
ACK*
DATA[15:0]
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
S1
7.5.5
Figure 7.5.13 4-word Burst Read (PWT: WT=0, SHWT=0, Normal, 16-bit Bus)
7-41
7-42
ACK*
DATA [15:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
f
S1
c
0
S2
S3
f
S1
c
1
S2
S3
f
S1
c
2
S2
S3
f
S1
c
3
S2
S3
c
f
S1
c
4
S2
S3
f
S1
c
5
S2
S3
f
S1
c
6
S2
S3
f
S1
c
7
S2
S3
f
f
Chapter 7 External Bus Controller
Figure 7.5.14 4-word Burst Write (PWT: WT=0, SHWT=0, Normal, 16-bit Bus)
Chapter 7 External Bus Controller
e
f
f
f
e
f
f
f
e
0
e
S2
S3
f
1
S1
e
e
S2
S3
f
2
S1
e
e
S2
S3
f
S1
3
e
S2
S3
f
f
S1
e
4
e
S2
S3
f
5
S1
e
e
S2
S3
f
6
S1
e
e
S2
S3
f
S1
7
e
S2
S3
f
f
Normal Mode Access (Single, 8-bit Bus)
ACK*
f
BE*
DATA [7:0]
f
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
S1
7.5.6
Figure 7.5.15 Double-word Single Write (PWT: WT=0, SHWT=0, Normal, 8-bit Bus)
7-43
7-44
ACK*
DATA [7:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
S1
e
0
S2
f
1
S1
e
S2
f
e
f
4
S1
e
S2
f
5
S1
e
S2
f
e
3
S2
f
S1
f
S2
f
2
S1
6
S1
e
S2
f
S1
7
e
S2
S3
f
Chapter 7 External Bus Controller
Figure 7.5.16 Double-word Single Read (PWT: WT=0, SHWT=0, Normal, 8-bit Bus)
Chapter 7 External Bus Controller
S1
SW1
S2
S3
SYSCLK
CE*
ADDR [19:0]
UAE
OE*/BUSSPRT*
SWE*
BWE*
BE*
e
f
f
e
f
f
DATA [7:0]
ACK*
Figure 7.5.17 1-byte Single Write (PWT: WT=1, SHWT=0, Normal, 8-bit Bus)
S1
SW1
S2
S3
SYSCLK
CE*
ADDR [19:0]
UAE
OE*/BUSSPRT*
SWE*
f
BWE*
BE*
f
e
DATA [7:0]
ACK*
Figure 7.5.18 1-byte Single Read (PWT: WT=1, SHWT=0, Normal, 8-bit Bus)
7-45
f
7-46
ACK*
DATA [7:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
f
e
0
f
e
1
f
e
2
f
e
3
e
f
e
4
f
e
5
f
e
6
f
e
7
f
e
8
f
e
9
f
e
a
f
e
b
e
f
e
c
f
e
d
f
e
e
f
e
f
f
f
7.5.7
S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3 S1 S2 S3
Chapter 7 External Bus Controller
Normal Mode Access (Burst, 8-bit Bus)
Figure 7.5.19 4-word Burst Write (PWT: WT=0, SHWT=0, Normal, 8-bit Bus)
7-47
3
ACK*
DATA[8:0]
e
2
BE
1
f
0
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
4
5
6
7
8
9
a
b
e
f
c
d
e
f
S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S1 S2 S3
f
Chapter 7 External Bus Controller
Figure 7.5.20 4-word Burst Read (PWT: WT=0, SHWT=0, Normal, 8-bit Bus)
Chapter 7 External Bus Controller
0
0
0
0
0
0
0
SW1
0
0
S2
S3
f
S1
S2
1
S3
f
S1
S2
2
S3
f
S1
S2
3
c
S3
f
S1
SW1
4
S2
S3
f
S1
S2
5
S3
f
S1
S2
6
S3
f
S1
S2
7
S3
f
f
Page Mode Access (Burst, 32-bit Bus)
ACK*
DATA [31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
f
S1
7.5.8
Figure 7.5.21 8-word Burst Write (WT=1, PWT=0, SHWT=0, 4-page, 32-bit Bus)
7-48
f
0
BWE*
BE*
ACK*
DATA[31:0]
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
S1
0
SW1 SW2
S2
1
S1 PW1
S2
2
S1 PW1
S2
S1
PW1
3
S2
f
S3
Chapter 7 External Bus Controller
Figure 7.5.22 4-word Burst Read (WT=2, PWT=1, SHWT=0, 4-page, 32-bit Bus)
7-49
Chapter 7 External Bus Controller
7.5.9
External ACK Mode Access (32-bit Bus)
S1
ES1
ES2
ES3
S3
S2
SYSCLK
CE*
ADDR[19:0]
UAE
OE*/BUSSPRT*
SWE*
BWE*
f
BE*
0
f
f
0
f
DATA[31:0]
ACK*
Note 1: The TX4925 sets the ACK* signal to High Impedance in the S1 State.
Note 2: External devices drive the ACK* signal to Low (assert the signal) until the ES1
State.
Note 3: External devices drive the ACK* signal to High (deassert the signal) in the ES2
State. If an external device is late in asserting ACK*, then the Wait State is inserted
for the amount of time the external device is late. If a certain condition is met, it is
okay for the ACK* signal to be driven to Low for 1 clock cycle or more. See “7.3.7.4
ACK* Input Timing (External ACK Mode)” for more information.
Figure 7.5.23 1-word Single Write (0 Wait, SHWT=0, External ACK*, 32-bit Bus)
S1
ES1
ES2
S2
S3
SYSCLK
CE*
ADDR[19:0]
UAE
OE*/BUSSPRT*
SWE*
BWE*
BE*
f
f
0
f
DATA[31:0]
ACK*
Figure 7.5.24 1-word Single Read (0 Wait, SHWT=0, External ACK*, 32-bit Bus)
7-50
7-51
ACK*
DATA [31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
f
S1
ES1
ES2
0
0
ES3
S2
S3
f
S1
ES1
ES2
1
0
ES3
S2
S3
0
f
S1
ES1
ES2
2
0
ES3
S2
S3
f
S1
ES1
ES2
3
0
ES3
S2
S3
f
f
Chapter 7 External Bus Controller
Figure 7.5.25 4-word Burst Write (0 Wait, SHWT=0, External ACK*, 32-bit Bus)
f
0
BWE*
BE
ACK*
DATA[31:0]
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
S1
ES1
0
ES2
S2
S1
ES1
1
ES2
S2
S1
ES1
2
ES2
S2
S1
ES1
3
ES2
S2
S3
f
Chapter 7 External Bus Controller
Figure 7.5.26 4-word Burst Read (0 Wait, SHWT=0, External ACK*, 32-bit Bus)
7-52
7-53
ACK*
DATA [31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
f
AS2
CS1
CS2 SW1 ES1
0
0
0
ES2
ES3
S2
CH1 CH2
AH1
AH2
f
f
AS1
AS2
Note: The TX4925 drives the ACK* signal when in the AH2, AS1, or AS2 State.
f
AS1
CS1
CS2 SW1 ES1
0
0
1
ES2 ES3
S2
CH1
f
CH2 AH1
f
AH2
Chapter 7 External Bus Controller
Figure 7.5.27 Double-word Single Write (1 Wait, SHWT=2, External ACK*, 32-bit Bus)
7-54
S1
ES1
0
0
ES2
S2
CH2 CH2
AH1
AH2
ACK*
DATA [31:0]
AS1
AS2
CS1 CS2
Note: The TX4925 drives the ACK* signal when in the AH2, AS1, or AS2 State.
f
f
CS2
BE*
CS1
f
AS2
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR [19:0]
CE*
SYSCLK
AS1
S1
0
ES1
ES2
1
S2
CH1 CH2
AH1
f
AH2
Chapter 7 External Bus Controller
Figure 7.5.28 Double-word Single Read (0 Wait, SHWT=2, External ACK*, 32-bit Bus)
Chapter 7 External Bus Controller
AS1
AS2
CS1
CS2
SW1 ES1
ES2
ES3
S2
CH1 CH2
AH1
AH2
SYSCLK
CE*
ADDR[19:0]
UAE
OE*/BUSSPRT*
SWE*
BWE*
BE
f
0
f
0
f
f
DATA[31:0]
ACK*
Figure 7.5.29 1-word Single Write (1 Wait, SHWT=2, External ACK*, 32-bit Bus)
AS1
AS2
CS1
CS2
S1
ES1
ES2
S2
CH1 CH2 AH1
AH2
SYSCLK
CE*
ADDR[19:0]
UAE
OE*/BUSSPRT*
SWE*
f
BWE*
BE
0
f
f
DATA[31:0]
ACK*
Figure 7.5.30 1-word Single Read (0 Wait, SHWT=2, External ACK*, 32-bit Bus)
7-55
Chapter 7 External Bus Controller
0
CS1
SW1
ES1
0
ES2
ES3
S2
CH1
f
AH1
f
READY Mode Access (32-bit Bus)
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
f
AS1
7.5.10
Figure 7.5.31 1-word Single Write (PWT: WT=2, SHWT=1, READY, 32-bit Bus)
7-56
ACK*
DATA[31:0]
BE*
BWE*
SWE*
OE*/BUSSPRT*
UAE
ADDR[19:0]
CE*
SYSCLK
f
AS1
CS1
S1
ES1
f
0
ES2
S2
CH1
AH1
f
Chapter 7 External Bus Controller
Figure 7.5.32 1-word Single Read (PWT: WT=2, SHWT=1, READY, 32-bit Bus)
7-57
Chapter 7 External Bus Controller
7.6
Flash ROM, SRAM Usage Example
Figure 7.6.1 illustrates example Flash ROM connections, and Figure 7.6.2 illustrates example SRAM
connections. Also, Figure 7.6.3 illustrates example connections with the SDRAM and the bus separated.
Since connecting multiple memory devices such as SDRAM and ROM onto a single bus increases the
load, 100 MHz class high-speed SDRAM access may not be performed normally. As a corrective measure,
there is a way of reducing the bus load by connecting a device other than SDRAM via a buffer. If such a
method is employed, directional control becomes necessary since the data becomes bidirectional.
The TX4925 prepares the BUSSPRT* signal for performing data directional control (see Figure 7.6.3).
BUSSPRT* is asserted when the External Bus Controller channel is active and a Read operation is being
performed.
TX4925
Flash ROM (x16 bits)
ADDR[19:0]
ADDR[19:0]
ADDR[12]
(ADDR[20])
A[19:0]
A[19:0]
A20
A20
CE*
WE*
OE*
CE*
WE*
OE*
UAE
CE*[0]
SWE*
OE*
D[15:0]
D[31:16]
D[15:0]
D[15:0]
DATA[31:0]
Figure 7.6.1 Flash ROM (x16 Bits) Connection Example (32-bit Data Bus)
TX4925
SRAM (x16 Bits)
BWE*[3:0]
BWE*[3]
UB
BWE*[2]
LB
BWE*[1]
UB
BWE*[0]
LB
ADDR[19:0]
ADDR[19:0]
CE*[1]
SWE*
OE*
A[19:0]
A[19:0]
CS*
WE*
OE*
CS*
WE*
OE*
D[15:0]
D[15:0]
D[31:16]
D[15:0]
DATA[31:0]
Figure 7.6.2 SRAM (x16 Bits) Connection Example (32-bit Data Bus)
7-58
Chapter 7 External Bus Controller
TX4925
SDRAM (x16 Bits)
DQM[3] DQM[2] DQM[1] DQM[0]
DQM[7:0]
ADDR[19:16]
SADDR10
ADDR[14:5]
UDQM LDQM
UDQM LDQM
A[12:0]
BS0
BS1
A[12:0]
BS0
BS1
SDCS[0]*
RAS*
CAS*
WE*
CS*
RAS*
CAS*
WE*
CS*
RAS*
CAS*
WE*
SDCLKIN
SDCLK[0]
CKE
CLK
CKE
CLK
CKE
ADDR[19:16],
SADDR10,
ADDR[14:5]
ADDR[19]
ADDR[18]
DQ[15:0]
D[31:16]
DATA[31:0]
Flash ROM (x16 Bits)
CE[0]*
SWE*
OE*
CE*
WE*
OE*
CE*
WE*
OE*
A[19:0]
A[19:0]
A20
A20
BUSSPRT*
ADDR[19:0]
ADDR[12]
(ADDR[20])
UAE
D[15:0]
D[31:16]
D[15:0]
D[15:0]
Figure 7.6.3 Connection Example with SDRAM and the Bus Separated
7-59
DQ[15:0]
D[15:0]
Chapter 7 External Bus Controller
7-60
Chapter 8 DMA Controller
8.
8.1
DMA Controller
Features
The TX4925 contains a four-channel DMA Controller (DMAC) that executes DMA (Direct Memory
Access) with memory and I/O devices.
The DMA Controller has the following characteristics.
•
Has four on-chip DMA channels
•
Supports external I/O devices with 8-, 16-, and 32-bit Data Bus widths and transfer between memory
devices.
•
Supports single address transfer (Fly-by DMA) and dual address transfer when in the external I/O DMA
Transfer Mode that is operated by external request signals
•
Supports on-chip Serial I/O Controllers and AC-Link Controllers
•
Supports Memory-Memory Copy modes that do not have address boundary limitations. Burst transfer of
up to eight words is possible for each Read or Write operation.
•
Supports Memory Fill mode that writes word data to the specified memory region
•
Supports Chained DMA Transfer
•
On-chip signed 24-bit address count up registers for both the source address and destination address
•
On-chip 26-bit Byte Count Register for each channel
•
One of two methods can be selected for determining access priority among multiple channels: Round
Robin or Fixed Priority
•
Big Endian or Little Endian mode can be set separately for each channel
8-1
Chapter 8 DMA Controller
Block Diagram
DMMFDR
G-Bus
I/F
FIFO
(8
Words)
DMA Channel Arbiter
DREQ1
DMCHAR2
DMA
Channel 2 DMSAR2
DMDAR2
DMCNTR2
DMSAIR2
DMDAIR2
DMCCR2
DMCSR2
DREQ2
DMCHAR3
DMA
Channel 3 DMSAR3
DMDAR3
DMCNTR3
DMSAIR3
DMDAIR3
DMCCR3
DMCSR3
DREQ3
Multiplexer
DMCHAR1
DMA
Channel 1 DMSAR1
DMDAR1
DMCNTR1
DMSAIR1
DMDAIR1
DMCCR1
DMCSR1
DACK0
DMAACK[0]
External
Pins
Internal
I/O
PCFG.DMASEL0
DMAREQ[1]
DACK1
Multiplexer
DMMCR
DREQ0
DMAACK[1]
External
Pins
Internal
I/O
PCFG.DMASEL1
DACK2
Multiplexer
DMA
Control
Block
DMAREQ[0]
DMCHAR0
DMA
Channel 0 DMSAR0
DMDAR0
DMCNTR0
DMSAIR0
DMDAIR0
DMCCR0
DMCSR0
Internal
I/O
PCFG.DMASEL2
DACK3
Multiplexer
DMAC
G-Bus
8.2
Internal
I/O
PCFG.DMASEL3
DMADONE* External
Pins
Figure 8.2.1 DMA Controller Block Diagram
8-2
Chapter 8 DMA Controller
8.3
Detailed Explanation
8.3.1
Transfer Mode
The DMA Controller supports five transfer mode types (refer to Table 8.3.1 below). The setting of
the External Request bit (DMCCRn.EXTRQ) of the DMA Channel Control Register selects whether
transfer with an I/O device is a DMA transfer.
•
I/O DMA Transfer Mode (DMCCRn.EXTRQ = “1”)
Perform DMA transfer with either an external device connected to the External Bus Controller or
an on-chip I/O device (ACLC or SIO).
•
Memory Transfer Mode (DMCCRn.EXTRQ = “0”)
Either copies data between memory devices or fills data in memory.
Table 8.3.1 DMA Controller Transfer Modes
Transfer Mode
DMCCRn
EXTREQ
DRQCTR
DMAREQn
DMCCRn
SNGAD
DMSAR
DMDAR
Ref.
External I/O
(Single Address)
1
0xxxx
1
√
-
8.3.3
8.3.7
External I/O
(Dual Address)
1
0xxxx
0
√
√
8.3.3
8.3.8
Internal I/O
1
10xx (SIO)
11xx (ACLC)
0
√
√
8.3.4
8.3.8
Memory-Memory Copy
0
-
0
√
√
8.3.4
8.3.8
Fill Memory
0
-
1
√
-
8.3.6
8.3.7
8.3.2
On-chip Registers
The DMA Controller has two shared registers that are shared by four channels. Section 8.4 explains
each register in detail.
•
Shared Registers
DMMCR:
DMA Master Control Register
DMMFDR:
DMA Memory Fill Data Register
•
DMA Channel Register
DMCHARn: DMA Chained Address Register
DMSARn:
DMA Source Address Register
DMDARn:
DMA Destination Address Register
DMCNTRn: DMA Count Register
DMSAIRn:
DMA Source Address Increment Register
DMDAIRn:
DMA Destination Address Increment Register
DMCCRn:
DMA Channel Control Register
DMCSRn:
DMA Channel Status Register
8-3
Chapter 8 DMA Controller
8.3.3
External I/O DMA Transfer Mode
The External I/O DMA Transfer Mode performs DMA transfer with external I/O devices that are
connected to the External Bus Controller.
8.3.3.1
External Interface
External I/O devices signal DMA requests to the DMA Controller by asserting the DMA
Transfer Request Signal (DMAREQ[n]). On the other hand, the DMA Controller accesses external
I/O devices by asserting the DMA Transfer Acknowledge Signal (DMAACK[n]).
The DMA Transfer Request signal (DMAREQ[n]) can use the Request Polarity bit (REQPOL)
of the DMA Channel Control Register (DMCCRn) to select the signal polarity for each channel,
and can use the Edge Request bit (EGREQ) to select either edge detection or level detection for
each channel. The DMA Transfer Acknowledge signal (DMAACK[n]) can also use the
Acknowledge Polarity bit (ACKPOL) to select the polarity.
Please assert/deassert the DMAREQ[n] signal as follows below.
•
When level detection is set (DMCCRn.EGREQ = 0)
The DMAREQ[n] signal must be continuously asserted until one SYSCLK cycle after the
DMAACK[n] signal is asserted. Also, the DMAREQ[n] signal must be asserted before the
CE*/CS* signal is deasserted. If this signal is asserted too soon, DMA transfer will not be
performed. If this signal is asserted too late, unexpected DMA transfer may result.
During Dual Address transfer, we recommend detecting assertion of the CE* signal for the
external I/O device that is currently asserting DMAACK[n], then deasserting DMAREQ[n].
•
When edge detection is set (DMCCRn.EGREQ = 1)
Please set up assertion of the DMAREQ[n] signal so the DMAREQ[n] signal is asserted
after the DMAACK[n] signal corresponding to a previously asserted DMAREQ[n] signal is
deasserted. The DMAREQ[n] signal will not be detected even if it is asserted before
DMAACK[n] is deasserted.
Figure 8.3.1 is a timing diagram that shows the timing of external DMA access. In this timing
diagram, both the DMAREQ[n] signal and the DMAACK[n] signal are set to Low active
(DMCCRn.REQPL = 0, DMCCRn.ACKPOL = 0).
The DMAACK[n] and DMADONE signals, which are DMA control signals, are synchronized
to SDCLK. When these signals are used by an external I/O device that is synchronous to
SYSCLK, it is necessary to take clock skew into account.
The DMAACK[n] signal is asserted either at the SYSCLK cycle, the same as with assertion of
the CE*/CS* signal, or before that. In addition, it is deasserted after the last ACK*/READY signal
is deasserted.
When the DMADONE* signal (refer to 8.3.3.4) is used as an output signal, it is asserted for at
least one SYSCLK cycle while the DMAACK[n] signal is asserted either during the same
SYSCLK cycle that the CE*/CS* signal is deasserted or during a subsequent SYSCLK cycle.
When the DMADONE* signal is used as an input signal, it must be asserted for one SYSCLK
cycle while the DMAACK[n] signal is being asserted.
8-4
Chapter 8 DMA Controller
SYSCLK
CE*
ADDR [19:0]
1c040
00040
ACE*
OE*/BUSSPRT*
SWE*
BWE*
f
DATA [31:0]
00000100
ACK*
1 cycle
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.3.1 External I/O DMA Transfer (Single Address, Level Request)
8.3.3.2
Dual Address Transfer
If the Single Address bit (DMCCRn.SNGAD) has been cleared, access to external I/O devices
and to external memory is each performed continuously. Each access is the same as normal access
except when the DMAACK[n] signal is asserted.
Please refer to “8.3.8 Dual Address Transfer” for information regarding setting the register.
8.3.3.3
Single Address Transfer (Fly-by DMA)
If the Single Address bit (DMCCRn.SNGAD) is set, either data reading from an external I/O
device and data writing to external memory or data reading from external memory and data
writing to an external I/O device is performed simultaneously. The following conditions must be
met in order to perform Single Address transfer.
•
The data bus widths of the external I/O device and external memory match
•
Data can be input/output to/from the external I/O device and external memory during the
same clock cycle
The Transfer Direction bit (MEMIO) of the DMA Channel Control Register (DMCCRn)
specifies the transfer direction.
•
From memory to an external I/O device (DMCCRn.MEMIO = “1”)
External memory Read operation to an address specified by the DMA Source Address
Register (DMSARn) is performed simultaneously to assertion of the DMAACK[n] signal.
8-5
Chapter 8 DMA Controller
•
Single Address transfer from memory to an external I/O device (DMCCRn.MEMIO = “0”)
External memory Write operation to an address specified by the DMA Source Address
Register (DMSARn) is performed simultaneously to assertion of the DMAACK[n] signal. At
this time, the external I/O device drives the DATA signal instead of the TX4925.
Special attention must be paid to the timing design when the bus clock frequency is high or
when performing Burst transfer. Single Address transfer using Burst transfer with SDRAM is not
recommended.
8.3.3.4
DMADONE* Signal
The DMADONE* signal operates as either the DMA stop request input signal or the DMA
done signalling output signal, or may operate as both of these signals depending on the setting of
the DONE Control Field (DNCTRL) of the DMA Channel Control Register (DMCCRn).
The DMADONE* signal is shared by four channels. The DMADONE* channel is valid for a
channel when the DMAACK[n] signal for that channel is asserted.
If the DMADONE* channel is set to be used as an output signal (DMCCRn.DNCTRL = 10/11),
it will operate as follows depending on the setting of the Chain End bit (CHDN) of the DMA
Channel Control Register (DMCCRn).
When the Chain End bit (CHDN) is set, the DMADONE* signal is only asserted when the
DMAACK[n] signal for the last DMA transfer in the Link List Command Chain is asserted.
When the Chain End bit (CHDN) is cleared, the DMADONE* signal is asserted when the
DMAACK[n] signal for the last data transfer in a DMA transfer specified by the current DMA
Channel Register is asserted. Namely, if the Link List Command chain is used, there is one
assertion at the end of each data transfer specified by each Descriptor.
If the DMADONE* signal is set to be used as an input signal (DMCCRn.DNCTRL = 01/11),
DMA transfer can be set to end normally when the external device asserts the DMADONE* signal
when the DMAACK[n] signal of channel n is asserted. DMADONE* is asserted during
DMAACK[n] is not asserted, then unexpected operation occurs. When DMA transfer is
terminated by the DMADONE* assertion of the external device, the External DONE Assert bit
(DMCSRn.EXTDN) of the DMA Channel Status Register is set regardless of the setting of the
Chain End bit (CHDN) of the DMA Channel Control Register (DMCCRn). Operation is as
follows depending on the setting of the Chain End bit (CHDN).
When the Chain End bit (CHDN) is set, all DMA transfer for that chain is terminated. At this
time, the Normal Chain End bit (NCHNC) and the Normal Transfer End bit (NTRNFC) of the
DMA Channel Status Register are both set and the Transfer Active bit (DMCCRn.XFACT) of the
DMA Channel Control Register is cleared.
When the Chain End bit (CHDN) is cleared, only DMA transfer specified by the current DMA
Channel Register ends normally, and only the Normal Transfer End bit (NTRNFC) is set. When
the Chain Enable bit (CHNEN) of the DMA Channel Control Register (DMCCRn) is set, chain
transfer is executed and DMA transfer continues. When the Chain Enable bit (CHNEN) is cleared,
the Transfer Active bit (DMCCRn.XFACT) is cleared and the Normal Chain End bit (NCHNC) is
set.
8-6
Chapter 8 DMA Controller
Three clock cycles are required from external assertion of the DMADONE* signal to disabling
of new DMA access. Operation will not stop even if the bus operation in progress is a Single
transfer or a Burst transfer. For example, if the DMADONE* signal is asserted during Read
operation of Dual Address transfer, the corresponding Write bus operation will also be executed.
If the DMADONE* pin is set to become both input and output for channel n
(DMCCRn.DNCTRL = “11”), the DMADONE* signal becomes an open drain signal when the
channel becomes active. When used by this mode, the DMADONE* signal must be pulled up by
an external source. When in this mode, the External DONE Assert bit (DMCSRn.EXTDN) is not
only set when asserted by an external device, but is also set when asserted by the TX4925.
8.3.4
Internal I/O DMA Transfer Mode
Performs DMA with the on-chip Serial I/O Controller and the AC-link Controller. Set the DMA
Channel Control Register (DMCCRn) as follows.
•
DMCCRn.EXTRQ = 1: I/O DMA Transfer mode
•
DMCCRn.SNGAD = 0: Dual Address Transfer
Refer to “8.3.8 Dual Address Transfer” and “11.3.6 DMA transfer (Serial I/O Controller)” or
“14.3.6.4 DMA Operation (AC-link Controller)” for more information.
8.3.5
Memory-Memory Copy Mode
It is possible to copy memory from any particular address to any other particular address when in the
Memory-Memory Copy mode.
Set the DMA Channel Control Register (DMCCRn) as follows.
•
DMCCRn.EXTRQ = 0: Memory Transfer mode
•
DMCCRn.SNGAD = 0: Dual Address mode
Furthermore, when in the Memory-Memory Copy mode it is possible to set the interval for requesting
ownership of each bus using the Internal Request Delay field (INTRQD) of the DMA Channel Control
Register (DMCCRn).
Refer to “8.3.8 Dual Address Transfer” for information regarding the setting of other registers.
8-7
Chapter 8 DMA Controller
8.3.6
Memory Fill Transfer Mode
When in the Memory Fill Transfer mode, word data set in the DMA Memory Fill Data Register
(DMMFDR) is written to the data region specified by the DMA Source Address Register (DMSARn).
This data can be used for initializing the memory, etc.
Set the DMA Channel Control Register (DMCCRn) as follows.
•
DMCCRn.EXTRQ = 0: Memory transfer mode
•
DMCCRn.SNGAD = 1: Single Address Transfer
•
DMCCRn.MEMIO = 0: Transfer from I/O to memory
In addition, when in the Memory Fill Transfer mode, it is possible to set the interval for requesting
ownership of each bus using the Internal Request Delay field (INTRQD) of the DMA Channel Control
Register (DMCCRn).
Refer to “8.3.7 Single Address Transfer” for information regarding the setting of other registers.
8.3.7
Single Address Transfer
This section explains register settings during Single Address transfer (DMCCRn.SNGAD = 1). This
applies to the following DMA Transfer modes.
•
External I/O (Single Address) Transfer
•
Memory Fill Transfer
8.3.7.1
Channel Register Settings During Single Address Transfer
Table 8.3.2 shows restrictions of the Channel Register settings during Single Address transfer. If
these restrictions are not met, then a Configuration Error is detected, the Configuration Error bit
(CFERR) of the DMA Channel Status Register (DMCSRn) is set and DMA transfer is not
performed.
For Burst transfer, +4, 0, or –4 can be set to the DMA Source Address Increment Register
(DMSAIRn). Setting 0 is only possible during transfer from memory to external I/O. A
Configuration Error will result if the value “0” is set during transfer from external I/O to memory
or during Memory Fill transfer.
If the setting of the DMA Source Address Increment Register (DMSAIRn) is negative and the
transfer setting size is 2 bytes or larger, then a value will be set in the DMA Source Address
Register (DMSARn) is as follows below.
•
Transfer setting size: 2bytes, (DMSARn) that reflects the lower 1 bits.
•
Transfer setting size: 4bytes, (DMSARn) that reflects the lower 2 bits.
8-8
Chapter 8 DMA Controller
During Single Address transfer, the DMA Destination Address Register (DMDARn) and DMA
Destination Address Increment Register (DMDAIRn) settings are ignored.
Table 8.3.2 Channel Register Setting Restrictions During Single Address Transfer
Transfer Setting
Size
(DMCCRn.XFSZ)
DMSARn[1:0]
DMSAIRn is “0” or
greater
DMSAIRn setting is a
negative value
DMSAIRn[1:0]
DMCNTRn[1:0]
1 Byte
**
**
**
**
2 Bytes
*0
*1
*0
*0
4 Bytes
00
11
00
00
00
11
4/0/-4
00
4 Words
8 Words
16 Words
32 Words
8.3.7.2
Burst Transfer During Single Address Transfer
According to the SDRAM Controller and External Bus Controller specifications, the DMA
Controller cannot perform Burst transfer that spans across 32 word boundaries. Consequently, if
the address that starts DMA transfer is not a multiple of the transfer setting size (DMCCRn.XFSZ)
(is not aligned), transfer cannot be performed by any of the transfer sizes that were specified by a
Burst transfer. Therefore, the DMA Controller executes multiple Burst transactions of a transfer
size smaller than the specified transfer size. This division method changes according to the seting
of the Transfer Size Mode bit (DMCCRn.USEXFSZ) of the DMA Channel Control Register.
Figure 8.3.2 shows the Single Address Burst transfer status when the lower 7 bits of the
Transfer Start address are 0x54 and the transfer setting size (DMCCRn.XFSZ) is set to 4 words.
Panel (a) of this figure shows the situation when the Transfer Size Mode bit
(DMCCRn.USEXFSZ) is “0”. In this case, first a three word transfer is performed up to the
address aligned to the transfer setting size. Then, four word transfer specified by the transfer
setting size is repeated. This setting is normally used.
On the other hand, panel (b) shows when the Transfer Size Mode bit (DMCCRn.USEXFSWZ)
is “1”. in this case, transfer is repeated according to the transfer setting size. Three word transfer
and one word transfer is only performed consecutively without releasing bus ownership when
transfer spans across a 32 word boundary.
8-9
Chapter 8 DMA Controller
32
0
50
54
58
5c
60
64
68
6c
70
74
78
7c
00
04
08
0c
10
14
18
32
3 Words
4 Words
4 Words
32 Word Boundary
4 Words
4 Words
1c
20
24
28
2c
30
4 Words
DMCCRn.XFSZ = 0x4
50
54
58
5c
60
64
68
6c
70
74
78
7c
00
04
08
0c
10
14
18
1c
20
24
28
2c
30
0
4 Words
4 Words
(3 + 1) Words
4 Words
4 Words
4 Words
DMCCRn. XFSZ = 0x4
(a) DMCCRn.USEXFSZ = “0”
(b) DMCCRn.USEXFSZ = “1”
Figure 8.3.2 Non-aligned Single Address Burst Transfer
8.3.8
Dual Address Transfer
This section explains the register settings for Dual Address transfer (DMCCRn.SNGAD = 0). This
applies to the following DMA transfer modes.
8.3.8.1
•
External I/O (Dual Address) transfer
•
Internal I/O DMA transfer
•
Memory-Memory Copy transfer
Channel Register Settings During Dual Address Transfer
Table 8.3.3 shows restrictions of the Channel Register settings during Dual Address transfer. If
these restrictions are not met, then a Configuration Error is detected, the Configuration Error bit
(CFERR) of the DMA Channel Status Register (DMCSRn) is set, and DMA transfer is not
performed.
If the setting of the DMA Source Address Increment Register (DMSAIRn) is negative and the
transfer setting size is 4 bytes or larger, then a value will be set in the DMA Source Address
Register (DMSARn) that reflects the lower 2 bits. Similarly, if the setting of the DMA Destination
Address Increment Register (DMDAIRn) is negative and the transfer setting size is 4 bytes or
larger, then a value will be set in the DMA Destination Address Register (DMDARn) that reflects
the lower 2 bits.
8-10
Chapter 8 DMA Controller
Example: When the transfer address is 0x0001_0000, the DMA Source Address Register
(DMSARn) is as follows below.
•
DMSAIRn setting is “0” or greater: 0x0001_0000
•
DMSAIRn setting is a negative value: 0x0001_0003
Table 8.3.3 Channel Register Setting Restrictions During Dual Address Transfer
DMSARn[1:0]
DMDARn[1:0]
Transfer Setting
DMSAIRn
DMDAIRn
DMCNTRn DMCCRn.
DMSAIRn
DMDAIRn
Size
setting is a
setting is a DMSAIRn DMDAIRn
[1:0]
REVBYTE
setting is 0
setting is 0
(DMCCRn.XFSZ)
negative
negative
or greater
or greater
value
value
1 Byte
**
**
**
**
**
**
**
0
2 Bytes
*0
*1
*0
*1
*0
*0
*0
0
4 Bytes
00
11
00
11
00
00
00
0/1
4 / 8 Wods
(DMMCR.FIFUM[n]=0)
00
11
00
11
00
00
00
0/1
00
11
00
11
4/0/-4
4/-4 ‡
00
0/1
**
-
**
-
4
4
-
**
-
**
-4
-4
4 / 8 Words
(DMMCR.FIFUM[n]=1)
16 Words
Cannot be set (Configuration Error)
32 Words
Cannot be set (Configuration Error)
**
0
0
†: 4, 0 or -4 can be specified when Source Burst Inhibit bit (DMCCRn, SBINH) is set.
‡: 4, 0 or -4 can be specified when DestinationBurst Inhibit bit (DMCCRn.DBINH) is set.
8.3.8.2
Burst Transfer During Dual Address Transfer
The DMA Controller has a 32-bit 8-stage FIFO on-chip that is connected to the internal bus (GBus) for Burst transfer during Dual Address transfer. Since this FIFO employs a shifter, it is
possible to perform transfer of any address or data size. Burst transfer is only performed when 4
Words or 8 Words is set by the Transfer Setting Size field (DMCCRn.XFSZ) and the FIFO Use
Enable bit (DMMCRn.FIFUM[n]) of the DMA Master Control Register is set.
According to the SDRAM Controller and External Bus Controller specifications, the DMA
Controller cannot perform Burst transfer that spans across 32 word boundaries. Consequently, if
the address that starts DMA transfer is not a multiple of the transfer setting size (DMCCRn.XFSZ)
(is not aligned), transfer cannot be performed by any of the transfer sizes that were specified by a
Burst transfer. Therefore, it is necessary to divide the transfer into multiple Burst transactions of a
transfer size smaller than the specified transfer size. This division method changes according to
the seting of the Transfer Size Mode bit (DMCCRn.USEXFSZ) of the DMA Channel Control
Register and whether or not the address offset relative to the Transfer Setting size
(DMCCRn.XFSZ) is equivalent to the source address and destination address combined.
Figure 8.3.3 shows Dual Address Burst transfer when the Transfer Size Mode bit
(DMCCRn.USEXFSZ) is set to “1”, the lower 7 bits of the Transfer Start address for the transfer
source are set to 0x54, the lower 7 bits of the Transfer Start address for the transfer destination are
set to 0x1C, and the Transfer Setting Size (DMCCRn.XFSZ) is set to 8 Words.
Transfer repeats according to the transfer setting size, regardless of the different address offsets.
However, transfers that span across 32 word boundaries are divided. Since data remains in the onchip FIFO when in this mode, it becomes possible to share the on-chip FIFO among multiple
DMA channels.
8-11
Chapter 8 DMA Controller
Source Address
32
FIFO (8 Words)
Destination Address
0
32
50
54
58
5c
60
64
68
6c
70
10
14
18
1c
20
74
78
7c
00
04
08
34
38
3c
40
44
48
0c
10
14
18
1c
4c
50
54
58
5c
0
24
28
2c
30
Figure 8.3.3 Dual Address Burst Transfer (DMCCRn.USEXFSZ = 1)
Figure 8.3.4 shows Dual Address Burst transfer when the Transfer Size Mode bit
(DMCCRn.USEXFSZ) is set to “0”, the lower 7 bits of the Transfer Start address for the transfer
source are set to 0x54, the lower 7 bits of the Transfer Start address for the transfer destination are
set to (a) 0x14/(b) 0x18, and the Transfer Setting Size (DMCCRn.XFSZ) is set to 8 words.
Panel (a) of this figure shows when the address offset is equivalent. In this case, first transfer of
three words is performed up to the address that is aligned with the transfer setting size. Then,
transfer of eight words that is specified by the transfer setting size is repeated.
On the other hand, panel (b) show when the address offset is not equivalent. In this case, first
only data up to the address that is aligned with the transfer setting size is read to the on-chip FIFO.
Then, data is written up to the address that is aligned with the transfer setting size as long as data
remains in the on-chip FIFO. Efficiency decreases since the transfer size is divided. Also, since
data may remain in the on-chip FIFO, Burst transfer of a Dual Address that uses the on-chip FIFO
simultaneously with another channel cannot be performed.
Using the Burst Inhibit bit makes it possible to mix Burst transfer with 8-Word Single transfer.
This in turn makes it possible to perform Burst access only for memory access during DMA
transfer with external I/O devices that cannot perform Burst transfer.
When the Source Burst Inhibit bit (DMCCRn.SBINH) is set, data read from the Source Address
to the on-chip FIFO is divided into multiple 4-byte Single Read transfers, then transfer is
executed.
When the Destination Burst Inhibit bit (DMCCRn.DBINH) is set, data written from the FIFO to
the Destination Address is divided into multiple 4-byte Single Write transfers, then transfer is
executed.
8-12
Chapter 8 DMA Controller
Only 4, 0 and 4 can be set on Burst Inhibit bit during Burst transfer. When the Burst Inhibit bit
is set, an any multiples of 4 can be set. (Refer to Table 8.3.3)
8.3.8.3
Double Word Byte Swapping
When the Reverse Byte bit (REVBYTE) of the DMA Channel Configuration Register
(DMCCRn) is set, read word data is written after byte swapping is performed. For example, if the
read data is “0x0123_4567”, then the data “0x6745_2301” is written.
The Reverse Byte bit can only be set when the REVBYTE column of Table 8.3.3 is set so “0/1”
is indicated.
8-13
Chapter 8 DMA Controller
Source Address
32
0
Destination Address
32
0
FIFO (8 Double Words)
50
54
58
5c
60
64
68
6c
70
10
14
18
1c
20
74
78
7c
00
04
08
34
38
3c
40
44
48
0c
10
14
18
1c
4c
50
54
58
5c
24
28
2c
30
(a) Address offset is equivalent
32
0
32
50
54
58
5c
60
64
68
6c
70
10
14
18
1c
20
74
78
7c
00
04
08
34
38
3c
40
44
48
1c
10
14
18
1c
20
24
28
2c
30
4c
50
54
58
5c
60
64
68
6c
70
24
28
2c
30
(b) Address offset differs
Figure 8.3.4 Dual Address Burst Transfer (DMCCRn.USEXFSZ = 0)
8-14
0
Chapter 8 DMA Controller
8.3.9
DMA Transfer
The sequence of DMA transfer that uses only the DMA Channel Register is as follows below.
(1) Select DMA request signal
To perform external I/O or internal I/O DMA, set the DMA Request Select field of the DMA
Request Control Register (DRQCTR. DMAREQ). For external I/O DMA, also program the
function of the shared pin through the DMA Select field of the Pin Configuration Register
(PCFG.SELDMA).
(2) Set the Master Enable bit
Set the Master Enable bit (DMMCR.MSTEN) of the DMA Master Control Register.
(3) Set the Address Register and Count Register
Set the five following register values.
•
DMA Source Address Register (DMSARn)
•
DMA Destination Address Register (DMDARn)
•
DMA Count Register (DMCNTRn)
•
DMA Source Address Increment Register (DMSAIRn)
•
DMA Destination Address Increment Register (DMDAIRn)
(4) Set Chain Address Register
Set “0” to the DMA Chain Address Register (DMCHARn).
(5) Clear the DMA Channel Status Register (DMCSRn)
Clear when status from the previous DMA transfer remains.
(6) Set the DMA Channel Control Register (DMCCRn)
(7) Initiate DMA transfer
DMA transfer is started by setting the Transfer Active bit (XFACT) of the DMA Channel Control
Register.
(8) Signal completion
When DMA data transfer ends normally, set the Normal Transfer Complete bit (NTRNFC) of the
DMA Channel Status Register (DMCSRn). An interrupt is signalled if the Transfer Complete
Interrupt Enable bit (INTENT) of the DMA Channel Control Register (DMCCRn) is set.
If an error is detected during DMA transfer, the error cause is recorded in the lower four bits of the
DMA Channel Status Register and the transfer is interrupted. If the Error Interrupt Enable bit
(INTENE) of the DMA Channel Control Register is set, then the interrupt is signaled.
8-15
Chapter 8 DMA Controller
8.3.10
Chain DMA Transfer
Table 8.3.4 shows the data structure in memory that the DMA Command Descriptor has. When the
Simple Chain bit (SMPCHN) of the DMA Channel Control Register (DMCCRn) is set, only the initial
four words are used. DMSAIRn, DMDAIR, DMCCRn, and DMCSRn use the settings from when
DMA started. In addition, all eight words are used when the Simple Chain bit (SMPCHN) is cleared.
Saving the start memory address of another DMA Command Descriptor in the Offset 0 Chain
Address field makes it possible to construct a chain list of DMA Command Descriptors (Figure 8.3.5).
Set “0” in the Chain Address field of the DMA Command Descriptor at the end of the chain list.
When DMA transfer that is specified by one DMA Command Descriptor ends, the DMA Controller
automatically reads the next DMA Command Descriptor indicated by the Chain Address Register
(Chain transfer), then continues DMA transfer. Continuous DMA transfer that uses multiple Descriptors
connected into such a chain-like structure is called Chain DMA transfer.
Since the DMA Channel Status Register is also overwritten during Chain transfer when the DMA
Simple Chain bit (SMPCHN) is cleared, be sure not to unnecessarily clear necessary bits.
Placing DMA Command Descriptors at addresses that do not span across 32 word boundaries in
memory is efficient since they are read by one G-Bus Burst Read operation.
Table 8.3.4 DMA Command Descriptors
Offset Address
Field Name
Transfer Destination Register
0x00
Chain Address
0x04
Source Address
DMA Chain Address Register (DMCHARn)
DMA Source Address Register (DMSARn)
0x08
Destination Address
DMA Destination Address Register (DMDARn)
0x0c
Count
DMA Count Register (DMCNTRn)
0x10
Source Address Increment
DMA Source Address Increment Register (DMSAIRn)
0x14
Destination Address Increment
DMA Destination Address Increment Register (DMDAIRn)
0x18
Channel Control
DMA Channel Control Register (DMCCRn)
0x1c
Channel Status
DMA Channel Status Register (DMCSRn)
“A”
+04
+08
+0c
+10
+14
+18
+1c
“D”
+04
+08
+0c
+10
+14
+18
+1c
“B”
+04
+08
+0c
+10
+14
+18
+1c
“E”
+04
+08
+0c
+10
+14
+18
+1c
“C”
+04
+08
+0c
+10
+14
+18
+1c
Figure 8.3.5 DMA Command Descriptor Chain
8-16
Chapter 8 DMA Controller
The sequence of Chain DMA transfer is as follows below.
(1) Select DMA request signal
To perform external I/O or internal I/O DMA, set the DMA Request Select field of the DMA
Request Control Register (DRQCTR. DMAREQ). For external I/O DMA, also program the
function of the shared pin through the DMA Select field of the Pin Configuration Register
(PCFG.SELDMA).
(2) Set the Master Enable bit
Set the Master Enable bit (DMMCR.MSTEN) of the DMA Master Control Register.
(3) Structure of the DMA command Descriptor chain
Construct the DMA Command Descriptor Chain in memory.
(4) Set the Count Register
Set “0” to the DMA Count Register (DMCNTRn) .
Sets the DMA Source Address Increment Register (DMSAIRn) and DMA destination Address
Increment Register (MMDAIRn).
Never set 0 or less than 0 for the increment value.
(5) Clear the DMA Channel Status Register (DMCSRn)
Clear the status of the previous DMA transfer.
(6) Set the DMA Channel Control Register (DMCCRn).
(7) Initiate DMA transfer
Setting the address of the DMA Command Descriptor at the beginning of the chain list in the DMA
Chain Address Register (DMCHARn) automatically initiates DMA transfer. First, the value stored
in each field of the DMA Command descriptor at the beginning of the Chain List is read to each
corresponding DMA Channel register (Chain transfer), then DMA transfer is performed according
to the read value.
When a value other than “0” is stored in the DMA Chain Address Register (DMCHARn), data of
the size stored in the DMA Count Register (DMCNTRn) is completely transferred, then the DMA
Command Descriptor value of the memory address specified by the DMA Chain Address Register
is read.
In addition, if the Chain Address field value read the Descriptor 0, the DMA Chain Address
Register value is not updated. All previous values (Data Command Descriptor Addresses with the
value “0” in the Chain Address field when the values were read) are held.
(8) Signal completion
Set the Normal Chain End bit (NCHNC) of the DMA Channel Status Register (DMCSRn) when
DMA data transfer of all Descriptor Chains is complete. An interrupt is signalled if the Chain End
Interrupt Enable bit (INTENC) of the DMA Channel Control Register (DMCCRn) is set at this
time.
In addition, the Normal Transfer End bit (NTRNFC) of the DMA Channel Status Register
(DMCSRn) is set each time DMA data transfer specified by each DMA Command Descriptor ends
normally. An interrupt is signalled if the Transfer End Interrupt Enable bit (INTENT) of the DMA
Channel Control Register (DMCCRn) is set at this time.
8-17
Chapter 8 DMA Controller
If an error is detected during DMA transfer, the error cause is recorded in the lower four bits of the
DMA Channel Status register and transfer is interrupted. An interrupt is signalled if the Error
Interrupt Enable bit (INTENE) of the DMA Channel Control Register is set.
8.3.11
Dynamic Chain Operation
It is possible to add DMA Command Descriptor chains to the DMA Command Descriptor chain
while Chain DMA transfer is in progress. This is performed according to the following procedure. This
procedure is available only when the value of the last descriptor DMSAIRn/DMDAIRn in the last
command descriptor chain is one or more than one byte.
(1) Construct the DMA Command Descriptor chain
Construct the DMA Command Descriptor chain to be added to memory.
(2) Add a DMA Command Descriptor chain
Substitute the address of the Command Descriptor at the beginning of the Descriptor Chain to be
added into the Chain Address field of the Descriptor at the end of the DMA Command Descriptor
chain that is currently performing DMA transfer.
(3) Check the Chain Enable bit
Read the value of the Chain Enable bit (CHNEN) of the DMA Channel Control Register
(DMCCRn). If that value is “0”, then write the Chain Address field value of the DMA Command
Descriptor that is indicated by the address stored in the DMA Chain Address Register
(DMCHARn).
8.3.12
Interrupts
An interrupt number (10 – 13) of the Interrupt Controller is mapped to each channel. In addition,
there are completion interrupts for when transfer ends normally and error interrupts for when transfer
ends abnormally for each channel. When an interrupt occurs, then the bit that corresponds to either the
Normal Interrupt Status field (DIS[3:0]) or the Error Interrupt Status field (EIS[3:0]) of the DMA
Master Control Register (DMMCR) is set.
Figure 8.3.6 shows the relationship between the Status bit and Interrupt Enable bit for each interrupt
cause. Refer to the explanation for each Status bit for more information regarding each information
cause.
DMCCRn.INTENC
DMCSRn.NCHNC
DMMCR.DIS[n]
Interrupt Controller
(Interrupt No. 10 – 13)
DMCCRn.INTENT
DMCSRn.NTRNFC
DMCCRn.INTENE
DMCSRn.STLXFER
DMMCR.EIS[n]
DMCSRn.CFERR
DMCSRn.CHERR
DMCSRn.DESERR
DMCSRn.SORERR
DMCSRn.ABCHC
Figure 8.3.6 DMA Controller Interrupt Signal
8-18
Chapter 8 DMA Controller
8.3.13
Transfer Stall Detection Function
If the period from when a certain channel last performs internal bus access to when the next internal
bus access is performed exceeds the Transfer Stall Detection Interval field (STLTIME) of the DMA
Channel Control Register (DMCCRn), the Transfer Stall Detection bit (STLXFER) of the DMA
Channel Status Register (DMCSRn) is set. An error interrupt is signalled if the Error Interrupt Enable
bit (DMCCRn.INTENE) is set.
In contrast to other error interrupts, DMA transfer is not stopped. Normal DMA transfer is executed
if bus ownership can be obtained. Furthermore, clearing the Transfer Stall Detection (STLXFER)
resumes transfer stall detection as well.
Setting the Transfer Stall Detection Interval field (STLTIME) to “000” disables the Transfer Stall
Detection function.
8.3.14
Arbitration Among DMA Channels
The DMA Controller has an on-chip DMA Channel Arbiter that arbitrates bus ownership among four
DMA channels that use the internal bus (G-Bus). There are two methods for determining priority: the
round robin method and the fixed priority method. (See Figure 8.3.7.) The Round Robin Priority bit
(RRPT) of the DMA Master Control Register (DMMCR) selects the priority method.
•
Fixed priority (DMMCR.RRPT = 0)
As shown below, Channel 0 has the highest priority and Channel 3 has the lowest priority.
CH0 > CH1 > CH2 > CH3
•
Round Robin method (DMMCR.RRPT = 1)
The last channel to perform DMA transfer has the lowest priority.
•
After CH0 DMA transfer execution: CH1 > CH2 > CH3 > CH0
•
After CH1 DMA transfer execution: CH2 > CH3 > CH0 > CH1
•
After CH2 DMA transfer execution: CH3 > CH0 > CH1 > CH2
•
After CH3 DMA transfer execution: CH0 > CH1 > CH2 > CH3
Channel 0
Channel 1
Channel 2
Channel 3
a) Fixed Priority is selected
Channel 0
Channel 3
Channel 1
Channel 2
b) Round Robin Priority is selected
Figure 8.3.7 DMA Channel Arbitration
8-19
Chapter 8 DMA Controller
8.3.15
Restrictions in Access to PCI Bus
The PCI Controller detects a bus error if the DMA Controller performs one of the following accesses
to the PCI Bus.
•
Burst transfer exceeding 8 words (PCICSTATUS.TLB)
•
Address Increment value –4 Burst transfer (PCICSTATUS.NIB)
•
Address Increment Value 0 Burst transfer (PCICSTATUS.ZIB)
•
Dual Address Burst transfer when the setting for DMSARn, DMDARn, or DMCNTRn is not a
word boundary (PCICSTATUS.IAA)
In addition, Single Address transfers between an external I/O device and the PCI Bus are not
supported. Data transfer is not performed, but no error is detected.
8-20
Chapter 8 DMA Controller
8.4
Registers
Table 8.4.1 DMA Controller Registers
Reference
Offset Address
Bit Width
Mnemonic
Register Name
8.4.6
0xB000
32
DMCHAR0
DMA Chain Address Register 0
8.4.4
0xB004
32
DMSAR0
DMA Source Address Register 0
8.4.5
0xB008
32
DMDAR0
DMA Destination Address Register 0
8.4.9
0xB00C
32
DMCNTR0
DMA Count Register 0
8.4.7
0xB010
32
DMSAIR0
DMA Source Address Increment Register 0
8.4.8
0xB014
32
DMDAIR0
DMA Destination Address Increment Register 0
8.4.2
0xB018
32
DMCCR0
DMA Channel Control Register 0
8.4.3
0xB01C
32
DMCSR0
DMA Channel Status Register 0
8.4.6
0xB020
32
DMCHAR1
DMA Chain Address Register 1
8.4.4
0xB024
32
DMSAR1
DMA Source Address Register 1
8.4.5
0xB028
32
DMDAR1
DMA Destination Address Register 1
8.4.9
0xB02C
32
DMCNTR1
DMA Count Register 1
8.4.7
0xB030
32
DMSAIR1
DMA Source Address Increment Register 1
8.4.8
0xB034
32
DMDAIR1
DMA Destination Address Increment Register 1
8.4.2
0xB038
32
DMCCR1
DMA Channel Control Register 1
8.4.3
0xB03C
32
DMCSR1
DMA Channel Status Register 1
8.4.6
0xB040
32
DMCHAR2
DMA Chain Address Register 2
8.4.4
0xB044
32
DMSAR2
DMA Source Address Register 2
8.4.5
0xB048
32
DMDAR2
DMA Destination Address Register 2
8.4.9
0xB04C
32
DMCNTR2
DMA Count Register 2
8.4.7
0xB050
32
DMSAIR2
DMA Source Address Increment Register 2
8.4.8
0xB054
32
DMDAIR2
DMA Destination Address Increment Register 2
8.4.2
0xB058
32
DMCCR2
DMA Channel Control Register 2
8.4.3
0xB05C
32
DMCSR2
DMA Channel Status Register 2
8.4.6
0xB060
32
DMCHAR3
DMA Chain Address Register 3
8.4.4
0xB064
32
DMSAR3
DMA Source Address Register 3
8.4.5
0xB068
32
DMDAR3
DMA Destination Address Register 3
8.4.9
0xB06C
32
DMCNTR3
DMA Count Register 3
8.4.7
0xB070
32
DMSAIR3
DMA Source Address Increment Register 3
8.4.8
0xB074
32
DMDAIR3
DMA Destination Address Increment Register 3
8.4.2
0xB078
32
DMCCR3
DMA Channel Control Register 3
DMA Channel Status Register 3
8.4.3
0xB07C
32
DMCSR3
8.4.10
0xB0A4
32
DMMFDR
DMA Memory Fill Data Register
8.4.1
0xB0A8
32
DMMCR
DMA Master Control Register
8-21
Chapter 8 DMA Controller
8.4.1
DMA Master Control Register (DMMCR)
0xB0A8
This register controls the entire DMA Controller.
31
28
27
24
EIS[3:0]
DIS[3:0]
R
0000
R
0000
15
14
FIFVC
13
11
10
23
20
19
Reserved
16
FIFOVC
R
000000
8
7
6
3
FIFWP
FIFRP
RSFIF
FIFUM[3:0]
R
000
R
000
R/W
0
R/W
0000
Field Name
2
1
Reserved RRPT
R/W
0
: Type
: Initial value
0
MSTEN
R/W : Type
0
: Initial value
Bits
Mnemonic
31:28
EIS[3:0]
Error Interrupt
Status
Error Interrupt Status [3:0] (Initial value: 0x0, R)
These four bits indicate the error interrupt status of each channel. EIS[n] corresponds
to channel n.
1: There is an error interrupt in the corresponding channel.
0: There is no error interrupt in the corresponding channel.
Description
27:24
DIS[3:0]
Normal
Completion
Interrupt Status
Done Interrupt Status [3:0] (Initial value: 0x0, R)
These four bits indicate the transfer completion (transfer complete or chain ended)
interrupt status of each channel. DIS[n] corresponds to channel n.
1: There is a transfer completion interrupt in the corresponding channel.
0: There is no transfer completion interrupt in the corresponding channel.
23:20

19:14
FIFVC
FIFO Valid Entry
Count
FIFO Valid Entry Count (Initial value: 000000, R)
These read only bits indicate the byte count of data that were written to FIFO but not
read out from the FIFO.

13:11
FIFWP
FIFO Write
Pointer
FIFO Write Pointer (Initial value: 000, R)
These read only bits indicate the next write position in FIFO. This is a diagnostic
function.
10:8
FIFRP
FIFO Read
Pointer
FIFO Read Pointer (Initial value: 000, R)
These read only bits indicate the next read position in FIFO. This is a diagnostic
function.
7
RSFIF
Reset FIFO
Reset FIFO (Initial value: 0, R/W)
This bit is used for resetting FIFO. When this bit is set to “1”, the FIFO read pointer,
FIFO write pointer and FIFO valid entry count are initialized to “0”.
If an error occurs during DMA transfer, use this bit when data remains in the FIFO
(when the FIFO Valid entry Count Field is not “0”) to initialize the FIFO.
Reserved
Figure 8.4.1 DMA Master Control Register (1/2)
8-22
Chapter 8 DMA Controller
Bit
Mnemonic
Field Name
6:3
FIFUM[3:0]
FIFO Use Enable
[3:0]
2

1
RRPT
0
MSTEN
Description
FIFO Use Enable [3:0] (Initial value: 0x0, R/W)
Each channel specifies whether to use 8 -word FIFO in Dual Address transfer.
FIFUM[n] corresponds to channel n.
Refer to “8.3.8.2 Burst Transfer During Dual Address Transfer” for more information.

Reserved
Round Robin
Priority
Round Robin Priority (Initial value: 0, R/W)
Specifies the method for determining priority among channels.
1: Round Robin method. Priority of the last channel used is the lowest, and the next
previous channel has the next lowest priority. Round robin is in the order Channel
0 > Channel 1 > Channel > Channel 3.
0: Fixed Priority. Priority is fixed in the order Channel 0 > Channel 1 > Channel 2 >
Channel 3.
Master Enable
Master Enable (Initial value: 0, R/W)
This bit enables the DMA Controller.
1: Enable
0: Disable
Note: If the entire DMA Controller is disabled, then all internal logic including the Bus
Interface Logic and State Machine are reset.
Figure 8.4.1 DMA Master Control Register (2/2)
8-23
Chapter 8 DMA Controller
8.4.2
DMA Channel Control Register (DMCCRn)
31
30
Reserved
29
R/W
0
15
13
STLTIME/INTRQD
R/W
000
Bit
28
27
LE
IMMCHN USEXFSZ
Mnemonic
26
25
24
23
22
21
20
19
DBINH SBINH CHRST RVBYTE ACKPOL REQPL EGREQ CHDN
R/W
0
R/W
-
R/W
0
R/W
0
R/W
1
12
11
10
9
8
INTENE INTENC INTENT CHNEN XFACT
R/W
0
0xB018 (ch. 0)
0xB058 (ch. 2)
R/W
0
R/W
0
R
0
R/W
0
R/W
0
R/W
0
R/W
0
5
4
SMPCHN
XFSZ
R/W
00
R/W
0
R/W
000
Field Name
18
17
DNCTL
R/W
0
7
6
Reserved
R/W
0
0xB038 (ch. 1)
0xB078 (ch. 3)
R/W
00
2
16
EXTRQ
R/W : Type
0 : Initial value
1
0
MEMIO SNGAD
R/W
0
R/W : Type
0 : Initial value
Description
31:30

29
IMMCHN
Immediate Chain
Immediate Chain (Initial value: 0, R/W)
Selects the control method of bus ownership during chain transfer.
1: When the DMA transfer completes due to the current DMA Channel Register and
DMCCRn.CHNEN=1, DMA Command Descriptor of the address set in DMCHARn
is loaded to DMA channel Register without bus ownership release. (Chain
Transfer)
0: When the DMA transfer completes due to the current DMA Channel Register and
DMCCRn.CHNEN=1, DMA controller once releases the bus ownership. After that
it gets bus ownership again and starts Chain Transfer.
Note: It is not concerned with the setup of this bit but DMA controller releases bus
ownership after the Chain Transfer ends.

28
USEXFSZ
Transfer Set Size
Mode
Use Transfer Set Size (Initial value: 0, R/W)
Selects the DMA channel operation mode during Burst DMA transfer. Refer to
“8.3.7.2 Burst Transfer During Single Address Transfer” and “8.3.8.2 Burst Transfer
During Dual Address Transfer” for more information.
1: The DMA Controller always transfers the amount of data set in DMCCRn.XFSZ for
each bus operation. Since alignment to the boundary of the DMCCRn.XFSZ in the
address is not forced when in this mode, transfers that exceed 32 -word
boundaries are divided into two operations.
0: The DMA Controller calculates the transfer size so the address set in DMSARn
and DMDARn (only during Dual Address transfer) can be aligned to the boundary
of the size set in DMCCRn.XFSZ, then transfers data according to that size.
27
LE
Little Endian
Little Endian (Default: value that is the opposite of the G-Bus Endian
(CCFG.ENDIAN))
This bit sets the Endian of the channel.
1: Channel operates in the Little Endian mode
0: Channel operates in the Big Endian mode
Reserved
Figure 8.4.2 DMA Channel Control Register (1/4)
8-24
Chapter 8 DMA Controller
Bits
Mnemonic
Field Name
Description
26
DBINH
Destination Burst
Inhibit
Destination Burst Inhibit (Initial value: 0, R/W)
During Dual Address transfer, this bit sets whether to perform Burst transfer or Single
transfer on a Write cycle to the address set from FIFO to DMDARn when Burst
transfer is set by DMCCRn.XFSZ. Refer to “8.3.8.2 Burst Transfer During Dual
Address Transfer” for more information.
1: Multiple Single transfers are executed.
0: Burst transfer is executed.
25
SBINH
Source Burst
Inhibit
Source Burst Inhibit (Initial value: 0, R/W)
During Dual Address transfer, this bit sets whether to perform Burst transfer or Single
transfer on a Read cycle to the FIFO from the address set to DMSARn when Burst
transfer is set by DMCCRn.XFSZ. Refer to “8.3.8.2 Burst Transfer During Dual
Address Transfer” for more information.
The settings of this bit have no effect during Single Address transfers.
1: Multiple Single transfers are executed.
0: Burst transfer is executed.
24
CHRST
Channel Reset
Channel Reset (Initial value: 1, R/W)
This bit is used for initializing channels. The DMCCRn.XFACT, DMCCRn.CHNEN,
and DMCSRn bits are all cleared. In addition, all channel logic and interrupts from
channels are cleared and bus ownership requests to the DMA Channel Arbiter are
also reset. The software must clear this bit before operating a channel.
1: Reset channel
0: Enable channel
23
REVBYTE
Reverse Byte
Reverse Bytes (Initial value: 0, R/W)
This bit specifies whether to reverse the byte order during a Dual Address transfer
when the Transfer Setting Size field (DMCCRn.XFSZ) setting is 4 bytes or more.
Refer to “0
Double Word Byte Swapping” for more information.
1: Reverses the byte order.
0: Does not reverse the byte order.
22
ACKPOL
Acknowledge
Polarity
Acknowledge Polarity (Initial value: 0, R/W)
Specifies the polarity of the DMAACK[n] signal.
1: Asserts when the DMAACK[n] signal is High
0: Asserts when the DMAACK[n] signal is Low
21
REQPL
Request Polarity
Request Polarity (Initial value: 0, R/W)
Specifies the polarity of the DMAREQ[n] signal.
1: Asserts when the DMAREQ[n] signal is High.
0: Asserts when the DMAREQ[n] signal is Low.
20
EGREQ
Edge Request
Edge Request (Initial value: 0, R/W)
Specifies the method for detecting DMA requests by the DMAREQ[n] signal.
1: DMAREQ[n] signal is Edge Detect.
0: DMAREQ[n] signal is Level Detect.
19
CHDN
Chain Complete
Chain Done (Initial value: 0, R/W)
Selects control by the DMADONE* signal. See “8.3.3.4 DMA Controller” for more
information.
1: Assertion of the DMADONE* signal controls the overall Chain DMA transfer.
0: Assertion of the DMADONE* signal controls DMA transfer according to the DMA
Channel Register setting at that time.
18:17
DNCTL
DONE Control
Done Control (Initial value: 00, R/W)
Specifies the input/output mode of the DMADONE* signal. Refer to “8.3.3.4
DMADONE* Signal” for more information.
00: DMADONE* signal becomes the input signal, but input is ignored.
01: DMADONE* signal becomes the input signal.
10: DMADONE* signal becomes the output signal.
11: DMADONE* signal becomes the open drain input/output signal.
Figure 8.4.2 DMA Channel Control Register (2/4)
8-25
Chapter 8 DMA Controller
Bits
Mnemonic
Field Name
Description
16
EXTRQ
External Request
External Request (Initial value: 0, R/W)
Sets the Request Transfer mode.
1: I/O DMA transfer mode
This bit is used by the External I/O DMA Transfer mode and the Internal I/O DMA
Transfer mode. A channel requests internal bus ownership when the I/O device
asserts the DMA request signal.
0: Memory Transfer mode
This bit is used by the Memory-Memory Copy Transfer mode and the Memory Fill
Transfer mode. A channel requests internal bus ownership when the value of
DMCSRn.WAITC becomes “0”.
15:13
STLTIME /
INTRQD
Transfer Stall
Detection
Interval/Internal
Request Delay
• When in the I/O DMA Transfer mode (DMCCRn.EXTRQ is “1”)
Stalled Transfer Detect Time (Initial value: 000, R/W)
Sets the detection interval for a lack of bus ownership. If this channel n releases bus
ownership then the interval it does not have ownership exceeds the clock count set
by this field, then DMCSRn.STLXFER is set to “1”. Refer to “8.3.13 Transfer Stall
Detection Function” for more information.
000: Does not detect stalled transfers.
001: Sets 960 (15 × 64) clocks as the detection interval
010: Sets 4032 (63 × 64) clocks as the detection interval
011: Sets 16320 (255 × 64) clocks as the detection interval
100: Sets 65472 (1023 × 64) clocks as the detection interval
101: Sets 262080 (4095 × 64) clocks as the detection interval
110: Sets 1048512 (16383 × 64) clocks as the detection interval
111: Sets 4194240 (65535 × 64) clocks as the detection interval
• When in the Memory Transfer mode (DMCCRn.EXTRQ is “0”)
Internal Request Delay (Initial value: 000, R/W)
Sets the delay time from when bus ownership is released to the next bus ownership
request. Bus ownership is released, the set delay time elapses, then a bus ownership
request is generated from the channel.
000: Always requests bus ownership when this channel is active. (Bus ownership is
released after bus operation ends)
001: Set 16 clocks as the delay time
010: Set 32 clocks as the delay time
011: Set 64 clocks as the delay time
100: Set 128 clocks as the delay time
101: Set 256 clocks as the delay time
110: Set 512 clocks as the delay time
111: Set 1024 clocks as the delay time
12
INTENE
Error Interrupt
Enable
Interrupt Enable on Error (Initial value: 0, R/W)
Enables interrupts when the Error End bit (DMCSRn.ABCHC) or the Transfer Stall
Detection bit (DMCSRn.STLXFER) is set.
1: Generates interrupts.
0: Does not generate interrupts.
11
INTENC
Chain End
Interrupt Enable
Interrupt Enable on Chain Done (Initial value: 0, R/W)
This bit enables interrupts when the Chain End bit (DMCSRn.NCHNC) is set.
1: Generate interrupts.
0: Do not generate interrupts.
10
INTENT
Transfer End
Interrupt Enable
Interrupt Enable on Transfer Done (Initial value: 0, R/W)
This bit enables interrupts when the Transfer End bit (DMCSRn.NTRNFC) is set.
1: Generate interrupts.
0: Do not generate interrupts.
Figure 8.4.2 DMA Channel Control Register (3/4)
8-26
Chapter 8 DMA Controller
Bits
Mnemonic
9
CHNEN
Chain Enable
Chain Enable (Initial value: 0, R)
This bit indicates whether Chain operation is being performed. Read Only.
This bit is cleared when either the Master Enable bit (DMMCR.MSTEN) is cleared or
the Channel Reset bit (DMCCRn.CHRST) is set. This bit is set if a value other than
“0” is set when the CPU writes to the DMA Chain Address Register (DMCHARn) or
when a Chain transfer writes DMA Command Descriptor. This bit is then cleared
when “0” is set to the DMA Chain Address Register (DMCHARn).
1: If transfer completes due to the current DMA Channel Register setting, a DMA
Command Descriptor is loaded in the DMA Channel Register from the specified
DMA Chain Address Register (DMCHARn) address, then DMA transfer continues.
0: Further transfer does not start even if transfer completes due to the current DMA
Channel Register setting.
8
XFACT
Transfer Active
Transfer Active (Initial value: 0, R/W)
DMA transfer is performed according to the DMA Channel Register setting when this
bit is set. This bit is automatically set when a value other than “0” is set in the DMA
Chain Address Register (DMCHARn). DMA transfer is then initiated. This bit is
automatically cleared either when DMA transfer ends normally it is stopped due to an
error.
1: Perform DMA transfer.
0: Do not perform DMA transfer.
7:6

5
SMPCHN
4:2
XFSZ
1
0
Field Name
Description
Reserved
Please write “00” (Initial value: 00, R/W).
Simple Chain
Simple Chain (Initial value: 0, R/W)
This bit selects the DMA Channel Register that loads data from DMA Command
Descriptors during Chain DMA transfer.
1: Data is only loaded to the four following DMA Channel Registers: the Chain
Address Register (DMCHARn), the Source Address Register (DMSARn), the
Destination Address Register (DMDARn), and the Count Register (DMCNTRn).
0: Data is loaded to all eight DMA Channel Registers.
Transfer Set Size
Transfer Set Size (Initial value: 000, R/W)
These bits set the transfer data size of each bus operation in the internal bus.
When the transfer set size is set to four words or greater, the data size actually
transferred during a single bus operation does not always match the transfer set size.
Refer to “8.3.7.2 Burst Transfer During Single Address Transfer” and “8.3.8.2 Burst
Transfer During Dual Address Transfer” for more information.
000: 1 byte
001: 2 bytes
010: 4 bytes
011: (Reserved)
100: 4 words
101: 8 words
110: 16 words (Single Address transfer only)
111: 32 words (Single Address transfer only)
MEMIO
Memory to I/O
Memory to I/O (Initial value: 0, R/W)
This bit specifies the transfer direction during Single Address transfer
(DMCCRn.SNGAD = 1). Clear this bit when in the Memory Fill Transfer mode.
The setting of this bit is ignored when Dual Address transfer is set (DMCCRn.SNGAD
= 0).
1: From memory to I/O
0: From I/O to memory
SNGAD
Single Address
Single Address (Initial value: 0, R/W)
This bit specifies whether the transfer method is Single Address transfer or Dual
Address transfer.
1: Single Address transfer
0: Dual Address transfer
Figure 8.4.2 DMA Channel Control Register (4/4)
8-27
Chapter 8 DMA Controller
8.4.3
DMA Channel Status Register (DMCSRn)
0xB01C (ch. 0)
0xB05C (ch. 2)
0xB03C (ch. 1)
0xB07C (ch. 3)
31
16
WAITC
: Type
: Initial value
R
0x0000
15
11
Reserved
Bits
Mnemonic
31:16
WAITC
10
9
CHNEN
STLXFER
R
0
R/W1C
0
8
7
R
0
R
0
Field Name
Wait Counter
6
5
4
3
2
1
0
XFACT ABCHC NCHNC NTRNFC EXTDN CFERR CHERR DESERR SORERR
R/W1C R/W1C R/W1C R/W1C R/W1C R/W1C R/W1C : Type
0
0
0
0
0
0
0 : Initial value
Description
Wait Counter (Initial value: 0x0000, R)
This is a diagnostic function.
I/O DMA transfer mode (DMCCRn.EXTRQ = “1”)
This counter is decremented by 1 at each 64 G-Bus cycles. After channel n releases
bus ownership, this counter sets the default (the value that is the detection interval
clock cycle count set by the Transfer Stall Detection Interval field
(DMCCRn.STLTIME) divided by 64). The Transfer Stall Detect bit
(DMCSRn.STLXFER) is set when the interval during which bus ownership is not held
reaches the set clock cycle. The counter is reset to the default and stops counting.
Clearing the Transfer Stall Detect bit (DMCSRn.STLXFER) resumes the count and
starts stall detection.
Memory transfer mode (DMCCRn.EXTRQ = “0”)
This counter is decremented by 1 at each G-Bus cycle. After bus ownership is
released, the counter is set to the delay clock cycle count set by the Internal Request
Delay field (DMCCRn.INTRQD). When the counter reaches “0” the count stops and
channel n requests bus ownership.
15:11

10
CHNEN
Chain Enable
Chain Enable (Initial value: 0, R)
This value is a copy of the Chain Enable bit (CHNEN) of the DMA Channel Control
Register (DMCCRn).

9
STLXFER
Transfer Stall
Detect
Stalled Transfer Detect (Initial value: 0, R/W1C)
This bit indicates whether the interval during which bus ownership is not held
exceeds the value set by the Transfer Stall Detect Interval field (DMCCRn.STLTIME)
after bus ownership is released when in the I/O DMA transfer mode.
1: Indicates that the interval during which bus ownership was not held exceeds the
DMCCRn.STLTIME setting.
0: The interval during which bus ownership was not held did not exceed the setting
since this bit was last cleared.
Reserved
Figure 8.4.3 DMA Channel Status Register (1/2)
8-28
Chapter 8 DMA Controller
Bits
Mnemonic
Field Name
Description
8
XFACT
Transfer Active
Transfer Active (Initial value: 0, R)
This value is a copy of the Transfer Active bit (XFACT) of the DMA Channel Control
Register (DMCCRn).
7
ABCHC
Error Complete
Error Completion (Initial value: 0, R)
This bit indicates whether an error occurred during DMA transfer. This bit indicates
the logical sum of the four error bits (CFERR, CHERR, DESERR, SORERR) in
DMCSRn[3:0].
1: DMA transfer ends due to an error.
0: No error occurred since this bit was last cleared.
6
NCHNC
Chain Complete
Normal Chain Completion (Initial value: 0, R/W1C)
When performing chain DMA transfer, This bit indicates whether all DMA data
transfers in the DMA Descriptor chain are complete.
1: All DMA data transfers in the DMA Descriptor chain ended normally. Or, DMA
transfer that did not use a DMA Descriptor chain ended normally.
0: DMA transfer has not ended normally since this bit was last cleared.
5
NTRNFC
Transfer
Complete
Normal Transfer Completion (Initial value: 0, R/W1C)
This bit indicates whether DMA transfer ended according to the current DMA Channel
Register setting.
1: DMA transfer ended normally.
0: DMA transfer has not ended since this bit was last cleared.
4
EXTDN
External DONE
Asserted
External Done Asserted (Initial value: 0, R/W1C)
This bit indicates whether an external I/O device asserted the DMADONE* signal.
When the DMADONE* signal is set to bidirectional, this bit is also set when the
TX4925 asserts the DMADONE* signal.
1: DMADONE* signal was asserted.
0: DMADONE* signal was not asserted.
3
CFERR
Configuration
Error
Configuration Error (Initial value: 0, R/W1C)
Indicates whether an illegal register setting was made.
1: There was a configuration error.
0: There was no configuration error.
2
CHERR
Chain Bus Error
Chain Bus Error (Initial value: 0, R/W1C)
This bit indicates whether a bus error occurred while reading a DMA Command
Descriptor.
1: Bus error occurred.
0: No bus error occurred.
1
DESERR
Destination Error
Destination Bus Error (Initial value: 0, R/W1C)
This bit indicates whether a bus error occurred during a destination bus Write
operation (a Write to a set DMDARn address).
1: Bus error occurred.
0: No bus error occurred.
0
SORERR
Source Bus Error
Source Bus Error (Initial value: 0, R/W1C)
This bit indicates whether a bus error occurred during either a source bus Read or
Write operation (A Read or Write to a set DMSARn address).
1: Bus error occurred.
0: No bus error occurred.
Figure 8.4.3 DMA Channel Status Register (2/2)
8-29
Chapter 8 DMA Controller
8.4.4
DMA Source Address Register (DMSARn)
0xB004 (ch. 0)
0xB044 (ch. 2)
0xB024 (ch. 1)
0xB064 (ch. 3)
31
16
SADDR[31:16]
R/W
-
: Type
: Initial value
15
0
SADDR[15:0]
: Type
: Initial value
R/W
-
Bits
Mnemonic
31:0
SADDR
Field Name
Source Address
Description
Source Address (Initial value: undefined, R/W)
This field sets the physical address of the transfer source during Dual Address
transfer. This field sets the physical address of memory access during Single
Address transfer. This field is used for either Memory-to-I/O or I/O-to-Memory
transfers.
Refer to “8.3.7.1 Channel Register Settings During Single Address Transfer” and
“8.3.8.1 Channel Register Settings During Dual Address Transfer” for more
information.
During Burst transfer, the value changes once for each bus operation only by the size
that was transferred. During Single transfer, the value only changes by the value
specified by the DMA Source Address Increment Register (DMSAIRn).
Figure 8.4.4 DMA Source Address Register
8-30
Chapter 8 DMA Controller
8.4.5
DMA Destination Address Register (DMDARn)
0xB008 (ch. 0)
0xB048 (ch. 2)
31
0xB028 (ch. 1)
0xB068 (ch. 3)
16
DADDR[31:16]
R/W
-
: Type
: Initial value
15
0
DADDR[15:0]
R/W
-
Bits
Mnemonic
31:0
DADDR
Field Name
Destination
Address
: Type
: Initial value
Description
Destination Address (Initial value: undefined, R/W)
This register sets the physical address of the transfer destination during Dual
Address transfer. This register is ignored during Single Address transfer.
Refer to “8.3.8.1 Channel Register Settings During Dual Address Transfer” for more
information.
During Burst transfer, the value changes only by the size of data transferred during
each single bus operation. During Single transfer, the value only changes by the
value specified by the DMA Destination Address Increment Register (DMDAIRn).
Figure 8.4.5 DMA Destination Address Register
8-31
Chapter 8 DMA Controller
8.4.6
DMA Chain Address Register (DMCHARn)
0xB000 (ch. 0)
0xB040 (ch. 2)
0xB020 (ch. 1)
0xB060 (ch. 3)
31
16
CHADDR[31:16]
R/W
-
: Type
: Initial value
15
2
CHADDR[15:3]
R/W
-
Bits
Mnemonic
31:2
CHADDR
2:0

: Type
: Initial value
Field Name
Chain Address
1
0
Reserved
Description
Chain Address (Initial value: undefined, R/W)
When Chain DMA transfer is executed, this register sets the physical address of the
next DMA Command Descriptor to be read. If DMA transfer according to the current
Channel Register setting ends and the Chain Enable bit (DMCCRn.CHNEN) is set,
then the DMA Command Descriptor is loaded in the Channel Register starting from
the address indicated by this register.
When a value other than “0” is set in this register, the Chain Enable bit
(DMCCRn.CHNEN) and the Transfer Active bit (DMCCRn.XFACT) are set. When “0”
is set in this register, only the Chain Enable bit (DMCCRn.CHNEN) is cleared.
When the Chain Address field value reads a DMA Command Descriptor of 0, the
value of this register is not updated and the value before that one (address of the
Data Command Descriptor when the value of the Chain Address field being read was
“0”) is held.

Reserved
Figure 8.4.6 DMA Chain Address Register
8-32
Chapter 8 DMA Controller
8.4.7
DMA Source Address Increment Register (DMSAIRn) 0xB010 (ch. 0) 0xB030 (ch. 1)
0xB050 (ch. 2) 0xB070 (ch. 3)
31
24
23
Reserved
16
SADINC[23:16]
R/W
-
15
: Type
: Initial value
0
SADINC[15:0]
R/W
-
Bits
Mnemonic
31:24

23:0
SADINC
Field Name
Description

Reserved
Source Address
Increment
: Type
: Initial value
Source Address Increment (Initial value: undefined, R/W)
This field sets the increase/decrease value of the DMA Source Address Register
(DMSARn). This value is a 24-bit two’s complement and indicates a byte count.
Refer to “8.3.7.1 Channel Register Settings During Single Address Transfer” and
“8.3.8.1 Channel Register Settings During Dual Address Transfer” for more
information.
Figure 8.4.7 DMA Source Address Increment Register
8-33
Chapter 8 DMA Controller
8.4.8
DMA Destination Address Increment Register (DMDAIRn)
0xB014 (ch. 0)
0xB054 (ch. 2)
31
24
23
Reserved
0xB034 (ch. 1)
0xB074 (ch. 3)
16
DADINC[23:16]
R/W
-
15
: Type
: Initial value
0
DADINC[15:0]
R/W
-
Bits
Mnemonic
31:24

23:0
DADINC
Field Name
Description

Reserved
Destination
Address
Increment
: Type
: Initial value
Destination Address Increment (Initial value: undefined, R/W)
This field sets the increase/decrease value of the DMA Destination Address Register
(DMDARn). This value is a 24-bit two’s complement and indicates a byte count.
Refer to “8.3.8.1 Channel Register Settings During Dual Address Transfer” for more
information.
Figure 8.4.8 DMA Destination Address Increment Register
8-34
Chapter 8 DMA Controller
8.4.9
DMA Count Register (DMCNTRn)
31
26
0xB00C (ch. 0)
0xB04C (ch. 2)
25
0xB02C (ch. 1)
0xB06C (ch. 3)
16
Reserved
DMCNTR[25:16]
R/W
-
15
: Type
: Initial value
0
DMCNTR[15:0]
R/W
-
Bits
Mnemonic
31:26

25:0
DMCNTR
Field Name
: Type
: Initial value
Description

Reserved
Count
Count Register (Initial value: undefined, R/W)
This register sets the byte count that is transferred by the DMA Channel Register
setting. The value is a 26-bit unsigned data that is decremented only by the size of
the data transferred during a single bus operation.
Refer to “8.3.7.1 Channel Register Settings During Single Address Transfer” and
“8.3.8.1 Channel Register Settings During Dual Address Transfer” for more
information.
Figure 8.4.9 DMA Count Register
8-35
Chapter 8 DMA Controller
8.4.10
DMA Memory Fill Data Register (DMMFDR)
0xB0A4
31
16
MFD
R/W
-
: Type
: Initial value
15
0
MFD
R/W
-
Bits
Mnemonic
Field Name
31:0
MFD
Memory Fill Data
: Type
: Initial value
Description
Memory Fill Data (Initial value: undefined, R/W)
This register, which stores word data written to memory when in the Memory Fill
Transfer mode, is shared between all channels.
Figure 8.4.10 DMA Memory Fill Data Register
8-36
Chapter 8 DMA Controller
8.5
Timing Diagrams
This section contains timing diagrams for the external I/O DMA transfer mode. The DMAREQ[n]
signals and DMAACK[n] signals in the timing diagrams are set to Low Active.
8.5.1
Single Address Single Transfer from Memory to I/O (32-bit ROM)
SYSCLK
CE*
ADDR [19:0]
1c040
00040
ACE*
OE*/BUSSPRT*
SWE*
BWE*
f
DATA [31:0]
00000100
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.1 Single Address Single Transfer from Memory to I/O
(Single Read of 32-bit Data from 32-bit ROM)
8-37
Chapter 8 DMA Controller
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [15:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
38080
00080
0000
f
00081
0100
Single Address Single Transfer from Memory to I/O (16-bit ROM)
SYSCLK
8.5.2
Figure 8.5.2 Single Address Single Transfer from Memory to I/O
(Single Read of 32-bit Data from 16-bit ROM)
8-38
Chapter 8 DMA Controller
8.5.3
Single Address Single Transfer from I/O to Memory (32-bit SRAM)
SYSCLK
CE*
ADDR [19:0]
1c040
00140
ACE*
OE*/BUSSPRT*
SWE*
BWE*
DATA [31:0]
f
0
00000100
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.3 Single Address Single Transfer from I/O to Memory
(Single Write of 32-bit Data to 32-bit SRAM)
8-39
f
Chapter 8 DMA Controller
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [31:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
1c040
00040
00000100
00041
fffffeff
f
00042
00000108
00043
fffffef7
Single Address Burst Transfer from Memory to I/O (32-bit ROM)
SYSCLK
8.5.4
Figure 8.5.4 Single Address Burst Transfer from Memory to I/O
(Burst Read of 4-word Data from 32-bit ROM)
8-40
Chapter 8 DMA Controller
fffffef7
0
0
00000108
f
00143
00142
f
Single Address Burst Transfer from I/O to Memory (32-bit SRAM)
fffffeff
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [31:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
f
00000100
0
00140
f
0
00141
f
f
SYSCLK
8.5.5
Figure 8.5.5 Single Address Burst Transfer from I/O to Memory
(Burst Write of 4-word Data from 32-bit SRAM)
8-41
8-42
(Burst Write of 8-word Data to 32-bit SRAM)
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [31:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
SYSCLK
f
00000900
38080
0
00680
f
fffff6ff
0
00681
f
00000908
0
00682
f
fffff6f7
0
00683
f
00000910
0
00684
f
fffff6ef
0
00685
f
00000918
0
00686
f
fffff6e7
0
00687
f
Chapter 8 DMA Controller
Figure 8.5.6 Single Address Burst Transfer from I/O to Memory
Chapter 8 DMA Controller
8.5.6
Single Address Single Transfer from Memory to I/O (16-bit ROM)
SYSCLK
CE*
ADDR [19:0]
38080
00080
ACE*
OE*/BUSSPRT*
SWE*
BWE*
f
DATA [15:0]
0000
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.7 Single Address Single Transfer from Memory to I/O
(Single Read from 16-bit ROM to 16-bit Data)
8-43
Chapter 8 DMA Controller
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [15:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
f
0000
c
00280
f
Single Address Single Transfer from I/O to Memory (16-bit SRAM)
SYSCLK
8.5.7
Figure 8.5.8 Single Address Single Transfer from I/O to Memory
(Single Write of 16-bit Data to 16-bit SRAM)
8-44
Chapter 8 DMA Controller
Figure 8.5.9 Single Address Single Transfer from Memory to I/O
(Single Read of 32-bit Data from 32-bit Half Speed ROM)
8-45
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [31:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
SYSCLK
1c041
f
fffffeff
00041
Single Address Single Transfer from Memory to I/O (32-bit Half Speed ROM)
SDCLK
8.5.8
Chapter 8 DMA Controller
Figure 8.5.10 Single Address Single Transfer from I/O to Memory
(Single Write of 32-bit Data to 32-bit Half Speed SRAM)
8-46
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [31:0]
BWE*
SWE*
OE*/BUSSPRT*
ACE*
ADDR [19:0]
CE*
SYSCLK
1c041
f
00000100
0
00140
f
Single Address Single Transfer from I/O to Memory (32-bit Half Speed SRAM)
SDCLK
8.5.9
Chapter 8 DMA Controller
8.5.10
Single Address Single Transfer from Memory to I/O (32-bit SRAM)
SDCLK
CS*
ADDR [19:5]
0000
0040
RAS*
CAS*
WE*
CKE*
OE*
DQM [3:0]
ff
0
DATA [31:0]
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.11 Single Address Single Transfer from Memory to I/O
(Single Read of 32-bit Data from 32-bit SDRAM)
8-47
ff
Chapter 8 DMA Controller
8.5.11
Single Address Single Transfer from I/O to Memory (32-bit SDRAM)
SDCLK
CS*
ADDR [19:5]
0001
0040
RAS*
CAS*
WE*
CKE*
OE*
DQM [3:0]
ff
0
DATA [31:0]
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.12 Single Address Single Transfer from I/O to Memory
(Single Write of 32-bit Data to 32-bit SDRAM)
8-48
ff
Chapter 8 DMA Controller
8.5.12
Single Address Single Transfer from Memory to I/O of Last Cycle when DMADONE*
Signal is Set to Output
SDCLK
CS*
ADDR [19:5]
0000
0041
RAS*
CAS*
WE*
CKE*
OE*/BUSSPRT*
DQM [7:0]
ff
00
DATA [63:0]
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.13 Single Address Single Transfer from Memory to I/O
(Single Read of 64-bit Data from 64-bit SDRAM)
8-49
ff
Chapter 8 DMA Controller
Figure 8.5.14 Single Address Single Transfer from Memory to I/O
(Single Read of 32-bit Data from 32-bit SDRAM)
8-50
DMADONE*
DMAACK[n]
DMAREQ[n]
ACK*
DATA [31:0]
DQM [7:0]
OE*/BUSSPRT*
CKE*
WE*
CAS*
RAS*
ADDR [19:5]
CS*
ff
0000
0080
f0
0081
00000100
fffffeef
ff
Single Address Single Transfer from Memory to I/O (32-bit SDRAM)
SDCLK
8.5.13
Chapter 8 DMA Controller
8.5.14
Single Address Single Transfer from I/O to Memory (32-bit SDRAM)
SDCLK
CS*
ADDR [19:5]
0002
0080
0081
RAS*
CAS*
WE*
CKE*
OE*
DQM [7:0]
DATA [31:0]
ff
f0
ff
00000100
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.15 Single Address Single Transfer from I/O to Memory
(Single Write of 32-bit Data to 32-bit SDRAM)
8-51
ff
Chapter 8 DMA Controller
8.5.15
External I/O Device – SRAM Dual Address Transfer
SYSCLK
CE* (SRAM)
CE* (I/O device)
ADDR [19:0]
ACE*
OE*/BUSSPRT*
SWE*
BWE*
DATA [31:0]
f
f
V XV XV X V XV XV X V XV
f
f
f
f
f
Valid Valid Valid Valid Valid Valid Valid Valid
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.16 Dual Address Transfer from External I/O Device to SRAM
(8-word Burst Transfer to 32-bit Bus SRAM)
8-52
f
f
Chapter 8 DMA Controller
SYSCLK
CE* (SRAM)
CE* (I/O device)
ADDR [19:0]
ACE*
OE*/BUSSPRT*
SWE*
BWE*
DATA [31:0]
0
f
V
V
V
V
Valid
f
0
Valid
f
0
Valid
ACK*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.17 Dual Address Transfer from SRAM to External I/O Device
(4-word Burst Transfer from 32-bit Bus SRAM)
8-53
f
0
Valid
f
Chapter 8 DMA Controller
8.5.16
External I/O Device – SDRAM Dual Address Transfer
SDCLK/SYSCLK
CS*
CE*
ADDR [19:0]
RAS*
CAS*
WE*
CKE
OE*/BUSSPRT*
DQM[7:0]
DATA [31:0]
ff
V
X
V
X
V
f0
X
V
Valid
V
ACK*
ACE*
SWE*
BWE*
f
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.18 Dual Address Transfer from External I/O Device to SDRAM
(4-word Burst Transfer to 32-bit SDRAM)
8-54
ff
V
V
Chapter 8 DMA Controller
SDCLK/SYSCLK
CS*
CE*
ADDR [19:0]
V
RAS*
CAS*
WE*
CKE
OE*/BUSSPRT*
DQM[7:0]
ff
f0
ff
DATA [31:0]
Valid Valid Valid Valid Valid Valid Valid Valid
ACK*
ACE*
SWE*
BWE*
f
f
f
f
f
f
f
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.19 Dual Address Transfer from SDRAM to External I/O Device
(8-word Burst Transfer from 32-bit SDRAM)
8-55
f
f
Chapter 8 DMA Controller
8.5.17
External I/O Device (Non-burst) – SDRAM Dual Address Transfer
SDCLK/SYSCLK
CS*
CE*
ADDR[19:0]
RAS*
CAS*
WE*
CKE
OE*/ BUSSPRT*
DQM[7:0]
DATA[31:0]
f0
ff
V
V
V
V
Valid V V V
ACK*
ACE*
SWE*
f
BWE*
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.20 Dual Address Transfer from External I/O Device (Non-Burst) to SDRAM
(4-word Burst Transfer to 32-bit SDRAM: Set DMCCRn.SBINH to “1”)
8-56
ff
Chapter 8 DMA Controller
SDCLK/SYSCLK
CS*
CE*
ADDR[19:0]
RAS*
CAS*
WE*
CKE
OE*/BUSSPRT*
DQM[7:0]
DATA[31:0]
ff
f0
ff
V V V V
Valid
Valid
Valid
Valid
ACK*
ACE*
SWE*
BWE*
f
0
f
0
f
0
DMAREQ[n]
DMAACK[n]
DMADONE*
Figure 8.5.21 Dual Address Transfer from SDRAM to External I/O Device
(4-word Burst Transfer from 32-bit SDRAM: Set DMCCRn.DBINH to “1”)
8-57
f
0
f
Chapter 8 DMA Controller
8-58
Chapter 9 SDRAM Controller
9.
9.1
SDRAM Controller
Characteristics
The SDRAM Controller (SDRAMC) generates the control signals required to interface with the SDRAM.
There are a total of four channels, which can each be operated independently. The SDRAM Controller
supports various bus configurations and a memory size of up to 2 GB.
The SDRAM has the following characteristics.
•
Clock frequency: 80 MHz
•
Four independent memory channels
•
Support SDRAM and SyncFlash® memory
•
Can use registered DIMM
•
Selectable data bus width for each channel: 32-bit/16-bit
•
Supports critical word first access of the TX49/H2 core
•
Supports DMAC special Burst access (address decrement/fix)
•
Programmable SDRAM timing latency
Can set timing to match the clock frequency used and the memory speed. Can realize a system with
optimized memory performance.
•
Can write to any byte during Single or Burst Write operation. This feature is controlled by the DQM
signal.
•
Can set the refresh cycle to be programmable.
•
SDRAM refresh mode: both auto refresh and self refresh are possible.
•
Low power consumption mode: can select between self refresh or pre-charge power down
•
SDRAM Burst length: fixed to "2"
•
SDRAM addressing mode: Fixed to the Sequential mode
•
Supports systems with high fan-out
Supports two selectable data read-back buses and supports the Slow Write Burst Mode in order to
handle data buses with large load. In order to maintain timing consistency during Read operation, it is
possible to select whether to use the feedback clock to latch data or to by-pass this latch path. Two clock
cycles are used for each Write operation when in the Slow Write Burst Mode.
“SyncFlash®” is a registered trademark of Micron Technology, Inc.
9-1
Chapter 9 SDRAM Controller
9.2
Block Diagram
SDRAMC
SDCS [3:0]*
G-Bus
I/F Signal
G-Bus
Interface
Control
Channel 0 – 3
Control Register
Control
Circuit
CKE
WE*
RAS*
Timing Register
CAS*
DQM [3:0]
Command/Load
Register
RP*
Refresh Counter
EBIF
Control Signal
ADDR [19:16], SADDR10, ADDR[14:5]
G-Bus
I/FSignal
EBIF
DATA [31:0]
G-Bus
CG
Note:
SDCLK[1:0]
Address signals for SDRAM are ADDR[19:16], SADDR10, and ADDR[14:5]. Don’t use ADDR[15]
for SDRAM.
Figure 9.2.1 Block Diagram of SDRAMC
9-2
Chapter 9 SDRAM Controller
9.3
Detailed Explanation
9.3.1
Supported SDRAM Configurations
This controller supports the SDRAM Configurations listed below in Table 9.3.1.
The MW field of the SDRAM Channel Control Register (SDCCRn) can be used to separately set the
data bus width for each channel to either 32 bits or 16 bits.
DATA[15:0] and DQM[1:0] are used when using a 16-bit data bus. DQM[3:2] output High.
DATA[31:16] output an undefined value when DATA[15:0] become the output, but enter the High-Z
state when DATA[15:0] are the input. When in the Big Endian Mode, first external access of the upper
half word (bits 31:16) of the internal data bus is performed, then external access of the lower half word
(bits 15:0) is performed. When in the Little Endian Mode, first external access of the lower half word
(bits 15:0) is performed, then external access of the upper half word (bits 31:16) is performed. When
using a 16-bit data bus, two external access will always be performed even when accessing less than 16
bits of data.
The maximum memory capacity per channel when a 32-bit data bus is configured is 512 MBytes
when using 8 512-Mbit SDRAMs with a 4-bit data bus. The total maximum memory capacity is 2
GBytes when totaling up the four channels.
Table 9.3.1 Supported SDRAM Configurations
SDRAM Configuration
16 Mbit
2-bank
2-bank
64 Mbit
4-bank
128 Mbit
256 Mbit
512 Mbit
4-bank
4-bank
4-bank
Row Address (bit)
Column Address (bit)
1 M × 16
11
8
2M×8
11
9
4M×4
11
10
2 M × 32
11
9
2 M × 32
12
8
4 M × 16
11
10
4 M × 16
13
8
8M×8
13
9
16 M × 4
13
10
2 M × 32
11
8
4 M × 16
12
8
8M×8
12
9
16 M × 4
12
10
4 M × 32
12
8
8 M × 16
12
9
16 M × 8
12
10
32 M × 4
12
11
8 M × 32
13
8
16 M × 16
13
9
32 M × 8
13
10
64 M × 4
13
11
32 M × 16
13
10
64 M × 8
13
11
128 M × 4
13
12
Remarks
See Note
See Note
See Note
See Note
See Note
See Note
Note1: The SDRAM Controller logic-wise does support these configurations, but please design
carefully since the memory bus load will be large.
Note2: With this composition, since the memory size of one channel is 512 Mbyte, if the memory area
is mapped from physical address 0, it will overlap with the address area which is used for ROM
area of boot vector.
9-3
Chapter 9 SDRAM Controller
9.3.2
Address Mapping
9.3.2.1
Physical Address Mapping
It is possible to map each of the four channels to an arbitrary physical address using the Base
Address field (SDCCRn.BA[31:21]) of the SDRAM Channel Control Register and the Address
Mask Field (SDCCRn.AM[31:21]).
The channel that becomes True in the following equation is selected.
paddr[31:21] & !AM[31:21] = BA[31:21] & !AM[31:21]
In the above equation, “paddr” represents the accessed physical address, “&” represents the
AND of each bit, and “!” represents the logical NOT of each bit.
Operation is undefined when multiple channels are simultaneously selected, or when external
bus controllers or PCI controllers are simultaneously selected.
9-4
Chapter 9 SDRAM Controller
9.3.2.2
Address Signal Mapping (32-bit Data Bus)
Table 9.3.2 shows the address signal mapping when using a 32-bit data bus. B0 is used in the
bank selection in memory with a two-bank configuration. [B1:B0] are used in the bank selection
in memory with a four-bank configuration. Bits with the description “L/H” output High when
performing auto-precharging, or output Low when not performing auto-precharging.
Table 9.3.2 Address Signal Mapping (32-bit Data Bus) (1/2)
Row address width = 11
Column address width = 8
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Column Address
21
22
22
21
L/H
22
21
9
8
7
6
5
4
3
2
Row Address
21
22
22
21
20
19
18
17
16
15
14
13
12
11
10
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Row Address Width = 11
Column Address Width = 9
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
22
22
22
21
L/H
22
21
9
8
7
6
5
4
3
2
Row Address
22
22
22
21
20
19
18
17
16
15
14
13
12
11
10
12
11
10
9
8
7
6
5
Row Address Width = 11
Column Address Width = 10
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
23
22
22
21
L/H
22
21
9
8
7
6
5
4
3
2
Row Address
23
22
22
21
20
19
18
17
16
15
14
13
12
11
10
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Row Address Width = 12
Column Address Width = 8
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
22
23
22
21
L/H
23
22
9
8
7
6
5
4
3
2
Row Address
22
23
22
21
20
19
18
17
16
15
14
13
12
11
10
Row Address Width = 12
Column Address Width = 9
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Column Address
23
24
22
21
L/H
23
22
9
8
7
6
5
4
3
2
Row Address
23
24
22
21
20
19
18
17
16
15
14
13
12
11
10
12
11
10
9
8
7
6
5
Address Bit
ADDR [19:5]
Row Address Width = 12
Column Address Width = 10
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
24
25
22
21
L/H
23
22
9
8
7
6
5
4
3
2
Row Address
24
25
22
21
20
19
18
17
16
15
14
13
12
11
10
9-5
Chapter 9 SDRAM Controller
Table 9.3.2 Address Signal Mapping (32-bit Data Bus) (2/2)
Row Address Width = 12
Column Address Width = 11
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
25
26
22
24
L/H
23
22
9
8
7
6
5
4
3
2
Row Address
25
26
22
21
20
19
18
17
16
15
14
13
12
11
10
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Address Bit
ADDR [19:5]
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 8
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
23
24
22
21
L/H
24
23
9
8
7
6
5
4
3
2
Row Address
23
24
22
21
20
19
18
17
16
15
14
13
12
11
10
18
(B1)
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Row Address = 13
Column Address Width = 9
Address Bit
ADDR [19:5]
19
(B0)
Column Address
24
25
22
21
L/H
24
23
9
8
7
6
5
4
3
2
Row Address
24
25
22
21
20
19
18
17
16
15
14
13
12
11
10
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 10
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
25
26
22
21
L/H
24
23
9
8
7
6
5
4
3
2
Row Address
25
26
22
21
20
19
18
17
16
15
14
13
12
11
10
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 11
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
26
27
22
25
L/H
24
23
9
8
7
6
5
4
3
2
Row Address
26
27
22
21
20
19
18
17
16
15
14
13
12
11
10
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 12
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
27
28
26
25
L/H
24
23
9
8
7
6
5
4
3
2
Row Address
27
28
22
21
20
19
18
17
16
15
14
13
12
11
10
9-6
Chapter 9 SDRAM Controller
9.3.2.3
Address Signal Mapping (16-bit Data Bus)
Table 9.3.3 shows the address signal mapping when using a 16-bit data bus. B0 is used in the
bank selection in memory with a two-bank configuration. [B1:B0] are used in the bank selection
in memory with a four-bank configuration. Bits with the description “L/H” output High when
performing auto-precharging, or output Low when not performing auto-precharging.
Table 9.3.3 Address Signal Mapping (16-bit Data Bus) (1/2)
Row Address Width = 11
Column Address Width = 8
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Column Address
20
21
21
20
L/H
21
20
8
7
6
5
4
3
2
1
Row Address
20
21
21
20
19
18
17
16
15
14
13
12
11
10
9
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Row Address Width = 11
Column Address Width = 9
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
21
21
21
20
L/H
21
20
8
7
6
5
4
3
2
1
Row Address
21
21
21
20
19
18
17
16
15
14
13
12
11
10
9
12
11
10
9
8
7
6
5
Row Address Width = 11
Column Address Width = 10
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
22
21
21
20
L/H
21
20
8
7
6
5
4
3
2
1
Row Address
22
21
21
20
19
18
17
16
15
14
13
12
11
10
9
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Address Bit
ADDR [19:5]
Row Address Width = 12
Column Address Width = 8
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
21
22
21
20
L/H
22
21
8
7
6
5
4
3
2
1
Row Address
21
22
21
20
19
18
17
16
15
14
13
12
11
10
9
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Row Address Width = 12
Column Address Width = 9
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
22
23
21
20
L/H
22
21
8
7
6
5
4
3
2
1
Row Address
22
23
21
20
19
18
17
16
15
14
13
12
11
10
9
12
11
10
9
8
7
6
5
Row Address Width = 12
Column Address Width = 10
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
23
24
21
20
L/H
22
21
8
7
6
5
4
3
2
1
Row Address
23
24
21
20
19
18
17
16
15
14
13
12
11
10
9
9-7
Chapter 9 SDRAM Controller
Table 9.3.3 Address Signal Mapping (16-bit Data Bus) (2/2)
Row Address Width = 12
Column Address Width = 11
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
24
25
21
23
L/H
22
21
8
7
6
5
4
Row Address
24
25
21
20
19
18
17
16
15
14
13
12
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
Address Bit
ADDR [19:5]
12
11
10
9
8
7
6
5
3
2
1
11
10
9
6
5
Row Address Width = 13
Column Address Width = 8
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
Column Address
22
23
21
20
L/H
23
22
8
7
6
5
4
3
2
1
Row Address
22
23
21
20
19
18
17
16
15
14
13
12
11
10
9
18
(B1)
17
16
SAD
DR10
(AP)
14
13
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 9
Address Bit
ADDR [19:5]
19
(B0)
Column Address
23
24
21
20
L/H
23
22
8
7
6
5
4
3
2
1
Row Address
23
24
21
20
19
18
17
16
15
14
13
12
11
10
9
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 10
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
24
25
21
20
L/H
23
22
8
7
6
5
4
3
2
1
Row Address
24
25
21
20
19
18
17
16
15
14
13
12
11
10
9
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 11
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
25
26
21
24
L/H
23
22
8
7
6
5
4
3
2
1
Row Address
25
26
21
20
19
18
17
16
15
14
13
12
11
10
9
12
11
10
9
8
7
6
5
Row Address Width = 13
Column Address Width = 12
Address Bit
ADDR [19:5]
19
(B0)
18
(B1)
17
16
SAD
DR10
(AP)
14
13
Column Address
26
27
25
24
L/H
23
22
8
7
6
5
4
3
2
1
Row Address
26
27
21
20
19
18
17
16
15
14
13
12
11
10
9
9-8
Chapter 9 SDRAM Controller
9.3.3
Initialization of SDRAM
The TX4925 Command Register has functions for generating the cycles required for initializing
SDRAM and SyncFlash. Using software to set each register makes it possible to execute initial settings
at a particular timing. However the Set Mode Register command should be applied separately to the
SDRAM and SyncFlash channels.
(1) Set the SDRAM Channel Control Register (SDCCRn).
(2) Set the SDRAM Timing Register (SDCTR). This timing setting is applied to all channels, so please
set it to the slowest memory device.
(3) Use the SDRAM Command Register (SDCCMD) to issue the Pre-charge All command.
(4) Issue the Set Mode Register command in the same manner.
(5) Set the refresh count required to initialize SDRAM to the refresh counter (SDCTR.RC)1 and set the
refresh cycle (SDCTR.RP).2 3
(6) Wait until the refresh counter returns to “0.”
(7) Set the refresh cycle (SDCTR.RP) to the proper value.
1
2
3
The number of refresh operations can be counted using the refresh counter. With this function, it is no longer
necessary to assemble special timing groups in the software when counting refresh operations.
Setting the refresh cycle to a small value makes it possible to expedite completion of the refresh cycle required for
SDRAM initialization. As described above, please set normal values after the required number of refresh cycles have
been generated.
Refresh requests have priority over all other SDRAM Controller access requests. Please do not set the memory
refresh cycle to an unnecessarily short value.
9-9
Chapter 9 SDRAM Controller
9.3.4
Low Power Consumption Function
9.3.4.1
Power Down Mode, Self-Refresh Mode, Deep Power Down Mode
SDRAM has two low power consumption modes called the Power Down mode and the SelfRefresh mode. Memory data is lost in the case of the Power Down mode since Memory Refresh is
not performed, but the amount of power consumed is reduced the most. Memory data is not lost in
the case of the Self-Refresh mode.
SDRAM is set to the Power Down mode by using the SDRAM Command Register (SDCCMD)
to issue the Power Down Mode command. Similarly, SDRAM is set to the Self-Refresh mode by
issuing the Self-Refresh Mode command. The SDRAMC terminates internal refresh circuit
operation after one of these commands has been issued. Issuing the Normal Mode command
returns operation to normal.
When the Power Down Auto Entry bit (SDCTR.PDAE) of the SDRAM Timing Register is set,
SDRAM is automatically set to the Power Down mode when memory access is not being
performed. The SDRAMC internal refresh circuit will continue operating, so there will be no loss
of memory data.
If either the Memory Access, Memory Refresh, or Memory command is executed while
SDRAM is set to the Power Down mode or the Self-Refresh mode, then the Power Down mode
and Self-Refresh mode will automatically terminate, and memory access will be performed.
After returning from a low power consumption mode that was set by either the Power Down
Mode command or the Self-Refresh Mode command, the next memory access starts after 10
SDCLK cycles pass. This latency sufficiently follows the stipulated time from Power Down to
first access of the SDRAM.
If setting the Power Down Auto Entry bit automatically causes memory access to be requested
when set in the Power Down mode, then add 1 SDCLK cycle more of access latency than when
not in the Power Down mode.
SyncFlash has two low power consumption modes called the Power Down mode and the Deep
Power Down mode. Memory data is not lost in both mode. SyncFlash need the device power-up
initialize sequence in the case of the Deep Power Down mode, but the amount of power consumed
is reduced the most.
9.3.4.2
Advanced CKE
Advanced CKE is a function that speeds up the CKE assertion and deassertion timing by 1
clock cycle. This function is set using the Address CKE bit (SDCTR.ACE) of the SDRAM Timing
Register.
Advanced CKE assumes that it will be used in a system where SDRAM data is saved even
when the power to the TX4925 itself is cut. Since CKE On/Off becomes 1 cycle faster, it is
possible to delay CKE by 1 clock cycle using external power consumption control logic. Please set
the SDRAM to the Self-Refresh mode before using this function.
When combining advanced CKE functionality with Power Down Auto Entry functionality and
memory access is requested while in the Power Down mode, two more SDCLK cycles of latency
are added than would be the case when not in the Power Down mode.
9-10
Chapter 9 SDRAM Controller
9.3.5
Bus Errors
The SDRAMC detects bus errors in the following situations:
•
Bus time-out occurs during Read or Write operation to the SDRAMC
If a bus error occurs when accessing the SDRAMC, then the SDRAMC will immediately abort
current operation. Then, the current SDRAM cycle will end, remaining SDRAMC operations will be
aborted, a Pre-charge All command will be issued to SDRAM, then the SDRAMC will return to the Idle
state.
9.3.6
Memory Read and Memory Write
The RAS* signal, CAS* signal, WE*, signal, ADDR[19:16], SADDR10, and ADDR[14:5] signal are
set up 1 cycle before the SDCS* signal is asserted in the case of the Read command, Write command,
Pre-charge command, or Mode Register Set command. The same set up time is observed even for active
commands if the Active Command Ready bit (SDCTR.DA) of the SDRAM Timing Register is set.
Figure 9.5.1 is a timing diagram of Single Read operation when the SDCTR.DA bit is cleared. Figure
9.5.2 is a timing diagram of Single Read operation when the SDCTR.DA bit is set.
Burst or Single Read operation is terminated by the Pre-charge Active Bank command. Burst or
Single Write operation is terminated by the Auto Pre-charge Command.
9.3.7
Slow Write Burst
When the Slow Write Burst bit (SDCTR.SWB) of the SDRAM Timing Register is cleared, the data
changes at each cycle during Burst Write operation (Figure 9.5.6). When the Slow Write Burst bit is set,
the data will change every other cycle (Figure 9.5.7).
When Slow Write Burst bit is set, it always operates as tRCD = 3tCK against all write access in no
relation with the value of RAS-CAS Delay bit (SDCTR.RCD) of SDRAM Timing Register. When slow
write burst is invalid, the value of RAS-CAS Delay bit is valid. During read access the value of RASCAS Delay bit is valid in no relation with Slow Write Burst bit setup.
9.3.8
Clock Feedback
When performing Read access at fast rates like 80 MHz, there may be insufficient set up time if an
attempt to directly latch Read data with the internal clock is made. With the TX4925, it is possible to
latch data using SDRAM clock SDCLKIN that is input from outside the chip. Please connect
SDCLKIN to one of the SDCLK[1:0] pins and the external source.
9.3.9
SyncFlash ®
SDRAMC supports SyncFlash Memory. This memory is drop-in compatible with SDRAM for reads
and require a special command sequence for writes and other control operations. The Low power
consumption function is some different from SDRAM. Please refer 9.3.4 in detail.
A write to SFCMD register performs a Load Command Register (LCR) Cycle that is the first cycle of
SyncFlash memory command sequences to the SyncFlash device. The SyncFlash are fully supported in
16-bit mode for reads and writes (programming) with one exception. In order to read the “Device ID”
or “Device protect bit” using the Read Device Configuration LCR operation, the Memory Width field
for SyncFlash channel should be briefly set to 32-bit mode (SDCCRn.MW = 0). The relevant data will
be on the lower data bus, Data[15:0]. This allows the SDRAMC to correctly generate the odd address
necessary to read these SyncFlash configuration registers. All other LCR commands and reads and
9-11
Chapter 9 SDRAM Controller
writes function normally in 16-bit mode.
This is caused by two external accesses always being performed for each data access of 16 bits or less
when the bus width is 16 bits. These two bus cycles do not output odd addresses in order to execute
Burst transfer. Therefore, device IDs with an odd address and Device Protect bits cannot be accessed.
9.4
Registers
Table 9.4.1 SDRAM Control Register
Reference
Offset Address
Bit Width
Register Symbol
9.4.1
0x8000
32
SDCCR0
SDRAM Channel Control Register 0
9.4.1
0x8004
32
SDCCR1
SDRAM Channel Control Register 1
9.4.1
0x8008
32
SDCCR2
SDRAM Channel Control Register 2
9.4.1
0x800C
32
SDCCR3
SDRAM Channel Control Register 3
9.4.2
0x8020
32
SDCTR
9.4.3
0x802C
32
SDCCMD
9.4.4
0x8030
32
SFCMD
9-12
Register Name
SDRAM Timing Register
SDRAM Command Register
SyncFlash Command Register
Chapter 9 SDRAM Controller
9.4.1
SDRAM Channel Control Register (SDCCR0)
(SDCCR1)
(SDCCR2)
(SDCCR3)
31
0x8000 (ch. 0)
0x8004 (ch. 1)
0x8008 (ch. 2)
0x800C (ch. 3)
21
20
16
BA
AM[31:27]
R/W
0x1FC/0x000
R/W
0x0
15
AM[26:21]
10
9
CE
8
MT
7
RD
Reserved
R/W
0x00
R/W
0
R/W
0
R/W
0
R/W
0
Field Name
6
5
4
3
0
0
RS
R/W
0
2
CS
R/W
0
: Type
: Initial
value
1
0
0
MW
R/W : Type
: Initial
0
value
Bits
Mnemonic
Description
31:21
BA[31:21]
Base Address
Base Address (Initial value: (0x1FC & (ADDR[8:6]==000)/0x000, R/W)
Specifies the base address. The upper 11 bits [31:21] of the physical address are
compared to the value of this field.
(Note) When ADDR[8:6] is 000b: 0x1FC (select SyncFlash as the Boot memory)
For all other ADDR[8:6] values: 0x000
20:10
AM[31:21]
Address Mask
Address Mask (Initial value: 0x000, R/W)
Sets the valid bits for address comparison according to the base address.
0: Bits of the corresponding BA field are compared.
1: Bits of the corresponding BA field are not compared.
9
CE
Channel Enable
Enable (Initial value: (ADDR[8:6]==000)/0, R/W)
Specifies whether to enable a channel.
If ADDR[8:6] are 000 during the boot sequence to select SyncFlash as the boot
memory, the value in channel 0 become 1.
0: Disable
1: Enable
8
MT
Memory Type
Memory Type (Initial value: (ADDR[8:6]==000)/0, R/W)
Specifies whether SDRAM or SynvFlash.
If ADDR[8:6] are 000 during the boot sequence to select SyncFlash as the boot
memory, the value in channel 0 become 1.
0: SDRAM
1: SyncFlash
7
RD
Registered DIMM
Registered DIMM (Initial value: 0, R/W)
Specifies whether the SDRAM connected to the channel is Registered memory.
0: Disable Registered memory
1: Enable Registered memory
6

Reserved
Note: this bit is always set to “0” (Initial value: 0, R/W)
5:4
RS
Row Size
Row Size (Initial value: ((-ADDR[5], ADDR[2]) & (ADDR[8:6]==000))/00, R/W)
Specifies the row size.
If ADDR[8:6] are 000 during the boot sequence to select SyncFlash as the boot
memory, the value of ADDR[5,2] during the boot sequence are set in these bits.
00: 2048 Rows (11 bits)
01: 4096 Rows (12 bits)
10: 8192 Rows (13 bits)
11: Reserved
(Note) When ADDR[8:6] is 000b: Up to ADDR[5], ADDR[2] (select SyncFlash as
the Boot memory) For all other ADDR[8:6] values: 00
Figure 9.4.1 SDRAM Channel Control Register (1/2)
9-13
Chapter 9 SDRAM Controller
Bits
Mnemonic
Field Name
Description
3:1
CS
Column Size
Column Size (Initial value: {0,(ADDR[11,12] & (ADDR[8:6]==000))}/000, R/W)
Specifies the column size.
If ADDR[8:6] are 000 during the boot sequence to select SyncFlash as the boot
memory, the value of ADDR[11,12] during the boot sequence are set in CS[1:0].
CS[2] is zero.
000: 256 words (8 bits)
001: 512 words (9 bits)
010: 1024 words (10 bits)
011: 2048 words (11 bits)
100: 4096 words (12 bits)
101 – 111: Reserved
0
MW
Memory Width
Memory Width (Initial value: (ADDR[13] & (ADDR[8:6]==000))/0, R/W)
Specifies the bus width.
If ADDR[8:6] are 000 during the boot sequence to select SyncFlash as the boot
memory, the value of ADDR[13] during the boot sequence is set in this bit.
0: 32 bits
1: 16 bits
Figure 9.4.1 SDRAM Channel Control Register (2/2)
9-14
Chapter 9 SDRAM Controller
9.4.2
SDRAM Timing Register (SDCTR)
31
29
BC
ACP
26
PT
25
RCD
24
ACE
23
PDAE
R/W
101
R/W
11
R/W
1
R/W
1
R/W
0
R/W
0
15
DA
14
SWB
R/W
1
R/W
1
28
13
12
27
0x8020
22
RC
18
17
CASL
R/W
00000
R/W
1
11
16
DRB
R/W : Type
: Initial
0
value
0
DIA
RP
R/W
11
R/W
0x270
: Type
: Initial
value
Bits
Mnemonic
Field Name
Description
31:29
BC
Bank Cycle Time
Bank Cycle Time (tRC) (Initial value: 101, R/W)
Specifies the bank cycle time.(*2)
000: 5 tCK(*1)
100: 9 tCK
001: 6 tCK
101: 10 tCK
010: 7 tCK
110: Reserved
011: 8 tCK
111: Reserved
28:27
ACP
Active Command
Time
Active Command Period (tRAS) (Initial value: 11, R/W)
Specifies the active command time.
00: 3 tCK
01: 4 tCK
10: 5 tCK
11: 6 tCK
26
PT
Precharge Time
Precharge Time (tRP) (Initial value: 1, R/W)
Specifies the precharge time.
0: 2 tCK
1: 3 tCK
25
RCD
RAS-CAS Delay
RAS to CAS Delay (tRCD) (Initial value: 1, R/W)
Specifies the RAS - CAS delay.
0: 2 tCK
1: 3 tCK
24
ACE
Advanced CKE
Advanced CKE enable (Initial value: 0, R/W)
Enabling this function makes the timing at which CKE changes one cycle earlier.
0: Disable
1: Enable
23
PDAE
Power Down
Auto Entry
Power Down Auto Entry Enable (Initial value: 0, R/W)
Enabling this function makes CKE become “L” while the SDRAMC is in the Idle
state. When refresh, memory access, or command execution is performed, CKE
automatically becomes “H”, the requested operation is performed, then CKE returns
to “L” when the operation is complete.
0: Disable
1: Enable
Figure 9.4.2 SDRAM Timing Register (1/2)
9-15
Chapter 9 SDRAM Controller
Bits
Mnemonic
Field Name
Description
22:18
RC
Refresh Counter
Refresh Counter (Initial value: 00000, R/W)
This counter is decremented at each refresh. If the refresh circuit is activated and a
value other than “0” is loaded, this field becomes a down counter that stops at “0”. A
value other than “0” must be reloaded to start the countdown again. This is used
during memory initialization.
17
CASL
CAS Latency
CAS Latency (tCASL) (Initial value: 1, R/W)
Specifies the CAS latency.
0: 2 tCK
1: 3 tCK
16
DRB
Data Read
Bypass
Data Read Bypass (Initial value: 0, R/W)
Selects the Data Read path used.
0: Data Read latches to the register using the feedback clock.
1: Data Read bypasses the feedback clock latch.
15
DA
Active Command
Delay
Delay Activate (tDA) (Initial value: 1, R/W)
Specifies the delay from the row address to the bank active command. Setting this
bit to “1” sets up the row address two cycles before the active command is
executed.
0: 0 tCK
1: 1 tCK
14
SWB
Slow Write Burst
Slow Write Burst (tSWB) (Initial value: 1, R/W)
Specifies whether to perform Slow Write Burst.
0: Burst Write occurs at each 1 tCK
1: Burst Write occurs at each 2 tCK
13:12
DIA
Write Active
Period
Data In to Active(tDAL) (Initial value: 11, R/W)
Specifies the period from the last Write data to the Active command.
00: Reserved
01: 4 tCK
10: 5 tCK
11: 6 tCK
11:0
RP
Refresh Period
Refresh Period (Initial value: 0x270, R/W)
Specifies the clock cycle count that generates the refresh cycle. Refresh is only
enabled when at least one SDRAM channel is enabled. Please program the Timing
Register before an arbitrary channel is enabled.
Default is 0x270. A refresh cycle occurs for each 7.8 µs@80 MHz in this situation.
The Refresh Cycle count clock is GBUSCLKF. The CCFG.RF value does not
change the frequency of GBUSCLKF. Therefore, it is not necessary to change this
register value even when CCFG.RF lowers the chip operation clock frequency.
Figure 9.4.2 SDRAM Timing Register (2/2)
*1:
tCK = Clock cycle
*2:
tRC is used during (i) refresh cycle time, (ii) single Read, (iii) two transfer burst Reads. The bank
cycle time is tRAS + tRP + 1tCK if tRAS + tRP < tRC in the case of (ii) (iii).
9-16
Chapter 9 SDRAM Controller
9.4.3
SDRAM Command Register (SDCCMD)
31
24
0x802C
23
16
MDLNO
VERNO
R
0x21
R
0x10
15
8
7
Reserved
Field Name
4
: Type
: Initial
value
3
0
CCE
CMD
R/W
0x0
R/W
0x0
: Type
: Initial
value
Bits
Mnemonic
Description
31:24
MDLNO
Model Number
Model Number (Initial value: 0x21, R)
Indicates the model number. The default value is 0x30 for the TX4925. This field is
Read Only.
23:16
VERNO
Version Number
Version Number (Initial value: 0x10, R)
Indicates the version number. The default value is 0x10 for the TX4925. This field is
Read Only.
15:8

7:4
CCE
Command
Channel Enable
Command Channel Enable (Initial value: 0x0, R/W)
Setting one of these bits to “1” enables the command of the corresponding channel.
This command is simultaneously executed on all channels that are enabled.
Bit 7: Channel 3
Bit 6: Channel 2
Bit 5: Channel 1
Bit 4: Channel 0

3:0
CMD
Command
Command (Initial value: 0x0, R/W)
Specifies a command that is performed on memory.
0x0: NOP command
0x1: Set Mode Register command
Set SDRAM Mode Register from SDCTR value
0x2: Reserved
0x3: Precharge All command
Precharge All SDRAM Banks
0x4: Self-Refresh Mode command
Sets SDRAM to the Self-Refresh Mode
0x5: Power Down Mode Command
Set SDRAM/SyncFlash to the Power Down Mode
0x6: Normal Mode Command
Cancel Self-Refresh/Power Down Mode
0x7: Reserved
0x8: Deep Power Down Mode command for SyncFlash
Sets SyncFlash to the Deep Power Down Mode
0x9: Exit Deep Power Down Mode command for SyncFlash
Cancel Deep Power Down Mode command for SyncFlash
0xa-0xf: Reserved
Reserved
Figure 9.4.3 SDRAM Command Register
9-17
Chapter 9 SDRAM Controller
9.4.4
SyncFlash Command Register (SFCMD)
0x8030
31
16
Reserved
: Type
: Initial
value
15
12
CCE
11
10
Reserved
R/W
0x0
Bits
Mnemonic
31:16

15:12
CCE
9
8
7
0
BA
CC
R/W
00
R/W
0x00
Field Name
:Type
: Initial
value
Description

Reserved
Command
Channel Enable
Command Channel Enable (Initial value: 0x0, R/W)
Setting one of these bits to “1” enables the command of the corresponding channel.
This command is simultaneously executed on all channels that are enabled.
Bit 15: Channel 3
Bit 14: Channel 2
Bit 13: Channel 1
Bit 12: Channel 0
11:10

Reserved
9:8
BA
Bank Address
Bank Address (Initial value: 00, R/W)
The value is used as Bank Address in the LCR cycle of the SyncFlash command
sequence.
The value in this field is outputs to ADDR[19:18]

7:0
CMD
Command
Command (Initial value: 0x00, R/W)
The value is used as command in the LCR cycle of the SyncFlash command
sequence.
The value in this field is outputs to ADDR[12:5]
Figure 9.4.4 SyncFlash Command Register
9-18
Chapter 9 SDRAM Controller
9.5
Timing Diagrams
Please note the following when referring to the timing diagrams in this section: the shaded area
each diagram expresses values that have yet to be determined.
9.5.1
Single Read (32-bit Bus)
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
7fff
0000
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
DATA [31:0]
ACK*/READY*
Figure 9.5.1 Single Read (tRCD = 2, tCASL = 2, tDA = 0, 32-bit Bus)
9-19
f
in
Chapter 9 SDRAM Controller
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
7fff
0000
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
DATA [31:0]
ACK*/READY*
Figure 9.5.2 Single Read (tRCD = 3, tCASL = 3, tDA = 1, 32-bit Bus)
9-20
f
Chapter 9 SDRAM Controller
9.5.2
Single Write (32-bit Bus)
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0000
0400
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
f
DATA [31:0]
ACK*/READY*
Figure 9.5.3 One-Word Single Write (tRCD = 2, tDA = 0, 32-bit Bus)
9-21
Chapter 9 SDRAM Controller
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0000
0400
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
c
DATA [31:0]
ACK*/READY*
Figure 9.5.4 Half-Word Single Write (tRCD = 3, tDA = 1, 32-bit Bus)
9-22
f
Chapter 9 SDRAM Controller
9.5.3
Burst Read (32-bit Bus)
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0001
0000
0005 0002
0007
0004
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
DATA [31:0]
ACK*/READY*
Figure 9.5.5 Four-Word Burst Read (tRCD = 2, tCASL = 2, tDA = 0, 32-bit Bus)
9-23
f
Chapter 9 SDRAM Controller
9.5.4
Burst Write (32-bit Bus)
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0000
0000
0402
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
DATA [31:0]
ACK*/READY*
Figure 9.5.6 Four-Word Burst Write (tRCD = 2, tDA = 0, 32-bit Bus)
9-24
f
Chapter 9 SDRAM Controller
ACK*/READY*
DATA [31:0]
DQM [3:0]
CKE
WE*
CAS*
RAS*
ADDR [19:16]
SADDR10
ADDR[14:5]
SDCS*
f
0000
0
00c0
f
00c1
0
f
00c2
0
f
0
04c3
0
f
Burst Write (32-bit Bus, Slow Write Burst)
SDCLK
9.5.5
Figure 9.5.7 Four-Word Burst Write (tRCD = 2, tDA = 0, 32-bit Bus, Slow Write Burst)
9-25
Chapter 9 SDRAM Controller
9.5.6
Single Read (16-bit Bus)
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
7fff
0000
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
DATA [15:0]
ACK*/READY*
Figure 9.5.8 One Word Single Read (tRCD = 2, tCASL = 2, tDA = 0, 16-bit Bus)
9-26
f
Chapter 9 SDRAM Controller
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
7fff
0000
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
c
DATA [15:0]
ACK*/READY*
Figure 9.5.9 Half-Word Single Read (tRCD = 2, tCASL = 3, tDA = 0, 16-bit Bus)
9-27
f
Chapter 9 SDRAM Controller
9.5.7
Single Write (16-bit Bus)
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0000
0400
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
c
DATA [15:0]
ACK*/READY*
Figure 9.5.10 One-Word Single Write (tRCD = 2, tDA = 0, 16-bit Bus)
9-28
f
Chapter 9 SDRAM Controller
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0000
0400
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
c
DATA [15:0]
ACK*/READY*
Figure 9.5.11 Half-Word Single Write (tRCD = 3, tDA = 0, 16-bit Bus)
9-29
f
Chapter 9 SDRAM Controller
9.5.8
Low Power Consumption and Power Down Mode
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
DATA [31:0]
ACK*/READY*
Figure 9.5.12 Transition to Low Power Consumption Mode (SDCTR.ACE = 0)
9-30
Chapter 9 SDRAM Controller
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
DATA [31:0]
ACK*/READY*
Figure 9.5.13 Transition to Power Down Mode
9-31
ACK*/READY*
DATA [31:0]
DQM [3:0]
CKE
WE*
CAS*
RAS*
ADDR [19:16]
SADDR10
ADDR[14:5]
SDCS*
SDCLK
f
0000
0006
0
f
Chapter 9 SDRAM Controller
Figure 9.5.14 Return From Low Power Consumption/Power Down Mode (SDCTR.PDAE=0, SDCTR.ACE=0)
9-32
Chapter 9 SDRAM Controller
SDCLK
SDCS*
ADDR [19:16]
SADDR10
ADDR[14:5]
0000
0400
RAS*
CAS*
WE*
CKE
DQM [3:0]
f
0
f
DATA [31:0]
ACK*/READY*
Figure 9.5.15 Power Down Auto Entry (SDCTR.PDAE=1, SDCTR.ACE=0)
9-33
Chapter 9 SDRAM Controller
9.6
SDRAM Usage Example
Figure 9.6.1 illustrates an example SDRAM connection.
TX4925
DQM [3:0]
ADDR [19:16]
SADDR10
ADDR[14:5]
SDCS*[0]
RAS*
CAS*
WE*
SDCLKIN
SDCLK [0]
CKE
SDRAM (×16 bits)
DQM [3] DQM [2] DQM [1] DQM [0]
ADDR [17:16]
SADDR10 UDQM LDQM
ADDR[14:5]
A [12:0]
ADDR [19] BS0
ADDR [18] BS1
UDQM LDQM
A [12:0]
BS0
BS1
CS*
RAS*
CAS*
WE*
CS*
RAS*
CAS*
WE*
CLK
CKE
DQ [15:0]
CLK
CKE
DQ [15:0]
D [31:16]
D [15:0]
DATA [31:0]
Figure 9.6.1 SDRAM (×16 bits) Connection Example
9-34
Chapter 10 PCI Controller
10. PCI Controller
10.1 Features
The TX4925 PCI Controller functions as a bus bridge between the TX4925 External PCI and the internal
bus (G-Bus).
10.1.1
10.1.2
10.1.3
Overall
•
Compliant to “PCI Local Bus Specification Revision 2.2”
•
PCI Bus: 32-bit data bus; Internal Bus: 32-bit data bus
•
Maximum PCI bus clock operating frequency: 33 MHz
•
Supports both the Initiator and Target functions
•
Supports power management functions that are compliant to PCI Bus Power Management Interface
Specifications Version 1.1 (Partially unsupported).
•
On-chip PCI Bus Arbiter, can connect to a maximum of four external bus masters
•
1-channel on-chip DMA Controller (PDMAC) dedicated to the PCI Controller
•
Supports PCI clock input mode/output mode
•
The Internal Bus clock and PCI Bus clock are asynchronous and can be set independently
•
Includes function for booting the TX4925 from memory on the PCI Bus
•
Can set configuration data by software at the initialize routine
•
Mounted a retry function on the Internal Bus side also in order to avoid deadlock on the PCI Bus.
Initiator Function
•
Single and Burst transfer from the Internal Bus to the PCI Bus
•
Initiator function Supports memory, I/O, configuration, special cycle, and interrupt acknowledge
transactions.
•
Address mapping between the Internal Bus and the PCI Bus can be modified
•
Mounted 8-stage 32-bit data one FIFO each for Read and Write
•
Indirect Read and Write function enables quick termination of single transactions by the G-Bus
without waiting for completion on the PCI Bus.
•
Endian switching function
Target Function
•
Single and Burst transfer from the PCI Bus to the Internal Bus
•
Supports memory, I/O, and configuration cycles
•
Supports high-speed back-to-back transactions on the PCI Bus
•
Address mapping between the PCI Bus and the Internal bus can be modified
•
Mounted 32-stage 32-bit data FIFO on each PCI Channel for Read
•
Mounted 16-stage 32-bit data FIFO for Write
•
Post Write function enables quick termination of a maximum of eight Write transactions by the
PCI Bus without waiting for completion on the G-Bus.
•
Read Burst length (pre-fetch data size) on the Internal Bus when reading a pre-fetchable space can
be made programmable
•
Endian switching function
10-1
Chapter 10 PCI Controller
10.1.4
10.1.5
PCI Arbiter
•
Supports four external PCI bus masters
•
Uses the Programmable Fairness algorithm (two levels with different priorities for four roundrobin request/grant pairs)
•
Supports bus parking
•
Bus master uses the Most Recently Used algorithm
•
Unused slots and broken masters can be automatically disabled after Power On reset
•
On-chip arbitration function can be disabled and external arbiter can be used
PDMAC (PCI DMA Controller)
•
Direct Memory Access (DMA) Controller dedicated to 1-channel PCI
•
Is possible to transfer data using minimal G-Bus bandwidth
•
Data can be transferred bidirectionally between the G-Bus and the PCI Bus
•
Specifying a physical address on the PCI Bus and an address on the G-Bus makes it possible to
automatically transfer data between the PCI Bus and the G-Bus
•
Supports the Chain DMA mode, in which a Descriptor containing chain-shaped addresses and a
transfer size is automatically read from memory while DMA transfer continuous
•
On-chip 16-stage 32-bit data buffer
10-2
Chapter 10 PCI Controller
10.2 Block Diagram
TX49/H2 Core
Memory Controller
DMA Controller
Arbiter
G-Bus
PCI Controller
Retry
G-Bus I/F
Targ. cont.
(PCI→G-Bus)
32-bits × 16
Target
Write
32-bits × 8
32-bits × 32 x 3 ch
Target
Read
32-bits × 8
Mast. cont.
(G-Bus→PCI)
PDMAC
(32-bit × 16)
32-bits × 8
Master
Write
32-bits × 8
Req.
×4
Master
Read
32-bits × 8
Config
EBUSC
Arb.
PCI
Arbiter
PCI Core
TX4925
PCI Bus
PCI Device
PCI Device
Figure 10.2.1 PCI Controller Block Diagram
10-3
Chapter 10 PCI Controller
10.3 Detailed Explanation
10.3.1
Terminology Explanation
The following terms are used in this chapter.
•
Initiator
Means the bus Master of the PCI Bus. The TX4925 operates as the initiator when it obtains the
PCI Bus and issues PCI access.
•
Target
Means the bus Slave of the PCI Bus. The TX4925 operates as the target when an external PCI
device on the PCI Bus executes PCI access to the TX4925.
•
Host mode
One PCI Host device exists for one PCI Bus. The PCI Host device uses a PCI configuration
space to perform PCI configuration on other PCI devices on the PCI Bus.
The TX4925 is set to the Host mode if the ADDR[15] signal is High when the RESET* signal is
being deasserted.
•
Satellite mode
A PCI device other than the PCI Host device accepts configuration from the PCI Host device.
This state is referred to as the Satellite mode.
The TX4925 is set to the Satellite mode if the ADDR[15] signal is Low when the RESET*
signal is being deasserted.
•
DWORD, QWORD
DWORD expresses 32-bit words, and QWORD expresses 64-bit words. According to
conventions observed regarding MIPS architecture, this manual uses the following expressions:
Byte: 8-bit
Half-word: 16-bit
Word: 32-bit
Double-word: 64-bit
10.3.2
On-Chip Register
The PCI Controller on-chip register contains the PCI Configuration Space Register and the PCI
Controller Control Register. The registers that can be accessed vary according to whether the current
mode is the Host mode or the Satellite mode.
An external PCI Host device only accesses the PCI Configuration Space Register when in the
Satellite mode. This register is defined in the PCI Bus Specifications. A PCI configuration cycle is used
to access this register. This register cannot be accessed when in the Host mode. Section 10.5 “PCI
Configuration Space Register” explains each register in detail.
The PCI Controller Control Register is only accessed by the TX49 core and cannot be accessed from
the PCI Bus.
10-4
Chapter 10 PCI Controller
Registers in the PCI Controller Control Register that include an offset address in the range from
0xD000 to 0xD07F can only be accessed when in the Host mode and cannot be accessed when in the
Satellite mode. These registers correspond to PCI Configuration Space Registers that an external PCI
Host device accesses when in the Satellite mode. Section 10.4 “PCI Controller Control Register”
explains each register in detail.
Figure 10.3.1illustrates the register map when in the Host mode. Figure 10.3.2 illustrates the register
map when in the Satellite mode.
0xDFFF
Reserved
0xD270
PCI Controller Control Register
0xFF
0x80
Reserved
0x00
0xD000
G-Bus Address Space
PCI Bus Configuration Space
Figure 10.3.1 Register Map in the Host Mode
0xDFFF
Reserved
0xD270
PCI Controller
Control Register
0xD100
0xD0d0
0xFF
0xd0
0xD060
0x60
Reserved
Reserved
PCI Configuration
Space Register
0x00
0xD000
G-Bus Address Space
PCI Bus Configuration Space
Figure 10.3.2 Register Map in the Satellite Mode
10-5
Chapter 10 PCI Controller
10.3.3
Supported PCI Bus Commands
Table 10.3.1 shows the PCI Bus commands that the PCI Controller supports.
Table 10.3.1 Supported PCI Bus Commands
√
†
‡
—
•
C/BE Value
PCI Command
As Initiator
As Target
0000
Interrupt Acknowledge
†

0001
Special Cycle
†

0010
I/O Read
√
√
0011
I/O Write
√
√
0100
(Reserved)


0101
(Reserved)


0110
Memory Read
√
√
0111
Memory Write
√
√
1000
(Reserved)


1001
(Reserved)


1010
Configuration Read
√
‡
1011
Configuration Write
√
‡
1100
Memory Read Multiple
√
√
1101
Dual Address Cycle


1110
Memory Read Line
√
√
1111
Memory Write and Invalidate
√
√
: Supported when in both the Host mode and the Satellite mode
: Supported only when in the Host mode
: Supported only when in the Satellite mode
: Not supported
I/O Read, I/O Write, Memory Read, Memory Write
This command executes Read/Write access to the address mapped on the G-Bus and PCI Bus.
•
Memory Read Multiple, Memory Read Line
The Memory Read Multiple command is issued if all of the following conditions are met when
the Initiator function is operating and Burst Read access is issued from the G-Bus to the PCI Bus.
(1) A value other than “0” is set to the Cache Line Size Field (PCICFG1.CLS) of the PCI
Configuration 1 Register.
(2) The Read data word count is larger than the value set in the Cache Line Size Field.
Also, the Read Memory Line command is issued when all of the following conditions are met.
(1) A value other than “0” is set to the Cache Line Size Field (PCICFG1.CLS) of the PCI
Configuration 1 Register.
(2) The Read data word count is larger than the value set in the Cache Line Size Field.
The Memory Read command is issued if these conditions are not met, namely, if “0” is set to the
Cache Line Size field (PCICFG1.CLS) of the PCI Configuration 1 Register. In the case of the
target, a normal G-Bus cycle is issued to the address mapped from the PCI Bus to the G-Bus.
10-6
Chapter 10 PCI Controller
•
Memory Write and Invalidate
When the TX4925 operates as the initiator, the PCI Controller issue the Memory Write and
Invalidate command if all of the following conditions are met when write access from the G-Bus to
the PCI Bus occurs.
(1) The Memory Write and Invalidate Enable bit (PCISTATUS.MWIEN) of the PCI Status
Command Register is set.
(2) A value other than “0” was set to the Cache Line Size field (PCICFG1.CLS) of the PCI
Configuration 1 Register.
(3) The word count of the Write data is larger than the value set in the Cache Line Size field.
The Memory Write command is issued in these conditions are not met.
When the TX4925 operates as the target, the Memory Write and Invalidate command is
converted into G-Bus Write access. Note that the TX4925 does not support the cache memory
Snoop function.
•
Configuration Read, Configuration Write
The corresponding configuration cycles are issued on the PCI Bus. This is done by either
reading or writing from/to the G2P Configuration Data Register (G2PCFGDATA) after writing the
configuration space address to the G2P Configuration Address Register. The TX4925 supports
both “Type 0” and “Type 1” configuration transactions.
On systems that have PCI card slots, the PCI Host device checks each PCI card slot during
system initialization to see if PCI device exist, then sets the Configuration Space Register of the
devices that do exist. If a PCI Configuration Read operation is performed for devices that do not
exist, then by default a Bus Error exception will be generated since there is no PCI Bus response.
Clearing the Bus Error Response During Initiator Read bit (G2PCFG.IRBER) of the PCI
Controller Configuration Register makes it possible to execute a Read transaction without causing
a Bus Error. All bits of the data read at this time will be set to “1”.
Configuration cycles will be accepted as the target only when in the Satellite mode. After reset,
Retry response to PCI Configuration access will continue until the software sets the Target
Configuration Access Ready Bit (PCICFG.TCAR) of the PCI Controller Configuration Register.
Please use the software to set this bit after the software initialization process ends and the software
is ready to accept PCI configuration.
•
Interrupt Acknowledge
This command issues interrupt acknowledge cycles as an initiator only when in the Host mode.
Interrupt acknowledge cycles are executed on the PCI Bus when the G2P Interrupt Acknowledge
Data Register (G2PINTACK) is read. The value returned by this Read becomes the interrupt
acknowledge cycle data.
The TX4925 does not support interrupt acknowledge cycles as the target.
10-7
Chapter 10 PCI Controller
•
Special Cycle
This command issues specially cycles as the initiator only when in the Host mode. This
command issues special cycles on the PCI Bus when writing to the G2P Special Cycle Data
Register (G2PSPC). The written value is output as the special cycle data.
The TX4925 does not support special cycles as the target.
10.3.4
Initiator Access (G-Bus → PCI Bus address conversion)
During PCI initiator access, the G-Bus address of the Burst transaction issued by the G-Bus that was
converted into the PCI Bus address is used to issue a Burst transaction on the PCI Bus. 32-bit physical
address (G-Bus addresses) are used on the G-Bus. Also, 32-bit PCI Bus addresses are used on the PCI
Bus.
Three memory access windows and one I/O access window can be set in the G-Bus space (Figure
10.3.3). The size of each window is variable from 256 bytes to 512 Mbytes. When Burst transactions
are issued to these access windows on the G-Bus, then that G-Bus address is converted into a PCI Bus
address that is used to issue a Burst transaction to the PCI Bus as the initiator. PCI memory access is
issued when the access window is the memory access window. PCI I/O access is issued when the access
window is the I/O access window.
0xFFFF_FFFF
0xFFFF_FFFF
0xFFFF_FFFF
0x0000_0000
0x0000_0000
PCI I/O Space
0x00_0000_0000
G-Bus Space
Memory Access Window
I/O Access Window
Figure 10.3.3 Initiator Access Memory Window
10-8
PCI Memory Space
Chapter 10 PCI Controller
When expressed as a formula, conversion of a G-Bus address (GBusAddr[31:0]) into a PCI Bus
Address (PCIAddr[31:0]) is as follows below. GBASE[31:8], PBASE[31:8], and AM[28:8] each
represent the setting register of the corresponding access window indicated below in Table 10.3.2. The
“&” symbol indicates a logical AND for each bit, “||” indicates a logical OR for each bit, “!” indicates
logical NOT, and “|” indicates bit linking.
If ((GBusAddr[31:29] | (GBusAddr[28:8] & ! AM[28:8] == GBASE[31:29] | (GBASE[28:8] & ! AM[28:8]) then
PCIAddr[31:0] = PBASE[31:29] | ((PBASE[28:8] & ! AM[28:8]) || (GBusAddr[28:8] & AM[28:8]))
| GBusAddr[7:0];
Table 10.3.2 Initiator Access Space Address Mapping Register
G-Bus Base Address
GBASE[31:8]
PCI Bus Base Address
PBASE[31:8]
Address Mask
AM[28:8]
Memory Space 0
G2PM0GBASE.BA[31:8]
G2PM0PBASE.BA[31:8]
G2PM0MASK.AM[28:8]
Memory Space 1
G2PM1GBASE.BA[31:8]
G2PM1PBASE.BA[31:8]
G2PM1MASK.AM[28:8]
Memory Space 2
G2PM2GBASE.BA[31:8]
G2PM2PBASE.BA[31:8]
G2PM2MASK.AM[28:8]
I/O Space
G2PIOGBASE.BA[31:8]
G2PIOPBASE.BA[31:8]
G2PIOMASK.AM[28:8]
Figure 10.3.4 illustrates this address conversion.
31
0
GBusAddr
Compare
8
31
7
GBASE
0x00
31 29 28
AM
0
000
8
7
000 - - - - - - - - - - - 0 0 1 1 1 - - - - - - - - - - - - - - -
31
8
PBASE
0
0x00
7
0
0x00
31
0
PCIAddr
Figure 10.3.4 Address Conversion For Initiator (G-Bus → PCI Bus Address Conversion)
It is possible to set each space to valid/invalid or to perform Word Swap (see “10.3.7 Endian
Switching Function”). Table 10.3.3 shows the settings registers for these properties.
Also, operation is not guaranteed if resources in the PCI space were made cacheable and were then
accessed when the Critical Word First function of the TX49/H2 core was enabled.
10-9
Chapter 10 PCI Controller
Table 10.3.3 Initiator Access Space Properties Register
Enable
Word Swap
Memory Space 0
BusMasterEnable & G2PCFG.G2PM0EN
G2PCFG.BSWAPM0
Memory Space 1
BusMasterEnable & G2PCFG.G2PM1EN
G2PCFG.BSWAPM1
Memory Space 2
BusMasterEnable & G2PCFG.G2PM2EN
G2PCFG.BSWAPM2
I/O Space
BusMasterEnable & G2PCFG.G2PIOEN
G2PCFG.BSWAPIO
BusMasterEnable:
Host mode:
PCI State Command Register Bus Master Bit (PCISTATUS.BM)
Satellite mode: Command Register Bus Master bit
10.3.5
Target Access (PCI Bus → G-Bus Address Conversion)
During PCI target access, the PCI Bus address of the Bus transaction issued by the PCI Bus is
converted into a G-Bus address and is used to issue a Bus transaction on the G-Bus. 32-bit PCI Bus
addresses are used on the PCI Bus. Also, 32-bit physical addresses are used on the G-Bus.
Three memory access windows and one I/O access window can be set in the PCI bus space (Figure
10.3.5). The size of each memory window is variable from 1 MByte to 512 MBytes. The size of the I/O
windo is variable from 256 Bytes to 64 Kbytes. When Bus transactions to these access windows is
issued on the PCI Bus, these Bus transactions are accepted as PCI target devices. The PCI Bus Address
is converted into G-Bus addresses, then Bus transactions are issued to the G-Bus.
The memory space window responds to the PCI memory space access command. The I/O space
window responds to the PCI I/O space access command.
0xFFFF_FFFF
0xFFFF_FFFF
0xFFFF_FFFF
0x00_0000_0000
0x0000_0000
PCI I/O Space
0x00_0000_0000
G-Bus Space
Memory Access Window
I/O Access Window
Figure 10.3.5 Target Access Memory Window
10-10
PCI Memory Space
Chapter 10 PCI Controller
When expressed as a formula, conversion of a PCI Bus Address (PCIAddr[31:0]) into a G-Bus
address (GBusAddr[31:0]) is as follows below. GBASE[31:8], PBASE[31:8], and
AM[28:20]/AM[15:8] each represent the setting register of the corresponding access window indicated
below in Table 10.3.4. The “&” symbol indicates a logical AND for each bit, and “|” indicates bit
linking.
Memory space 0
If (PCIAddr[31:29] | ( PCIAddr[28:20] & !AM[28:20] ) == PBASE[31:29] |
( PBASE[28:20] & !AM[28:20])) then
GBusAddr[31:0] = GBASE[31:29] | ((GBASE[28:20] & !AM[28:20]) ||
(PCIAddr[28:20] & AM[28:20])) | PCIAddr[19:0];
Memory space 1
If (PCIAddr[31:29] | ( PCIAddr[28:20] & !AM[28:20] ) == PBASE[31:29] |
( PBASE[28:20] & !AM[28:20])) then
GBusAddr[31:0] = GBASE[31:29] | ((GBASE[28:20] & !AM[28:20]) ||
(PCIAddr[28:20] & AM[28:20])) | PCIAddr[19:0];
Memory space 2
If (PCIAddr[31:29] | ( PCIAddr[28:20] & !AM[28:20] ) == PBASE[31:29] |
( PBASE[28:20] & !AM[28:20])) then
GBusAddr[31:0] = GBASE[31:29] | ((GBASE[28:20] & !AM[28:20]) ||
(PCIAddr[28:20] & AM[28:20])) | PCIAddr[19:0];
I/O space
If (PCIAddr[31:8] == P2GIOPBASE.BA[31:8]) then
GBusAddr[31:0] = P2GIOGBASE[31:8] | PCIAddr[7:0];
Table 10.3.4 Target Access Space Address Mapping Register
PCI Bus Base Address
PBASE
G-Bus Base Address
GBASE
Address Mask
AM
Memory Space 0
P2GM0PLBASE.BA[31:20]
P2GM0GBASE.BA[31:20]
P2GM0CTR.AM[28:20]
Memory Space 1
P2GM1PLBASE.BA[31:20]
P2GM1GBASE.BA[31:20]
P2GM1CTR.AM[28:20]
Memory Space 2
P2GM2PBASE.BA[31:20]
P2GM2GBASE.BA[31:20]
P2GM2CTR.AM[28:20]
I/O Space
P2GIOPBASE.BA[31:8]
P2GIOGBASE.BA[31:8]
P2GIOCTR.AM[15:8]
10-11
Chapter 10 PCI Controller
Figure 10.3.6 and Figure 10.3.7 illustrate this address conversion.
31
0
PCIAddr
Compare
31
20 19
0
0x00000
PBASE
31
AM
20 19
29 28
000
0
00---011---1
31
0x00000
20 19
0
0x00000
GBASE
31
0
GBusAddr
Figure 10.3.6 Memory Address Conversion for Target (PCI Bus → G-Bus Address Conversion)
31
0
PCIAddr
Compare
31
8
7
PBASE
0
0x00
16 15
31
AM
8
7
00 ---011---1
0x0000
31
8
GBASE
0
0x00
7
0
0x00
31
0
GBusAddr
Figure 10.3.7 I/O Address Conversion for Target (PCI Bus → G-Bus Address Conversion)
10-12
Chapter 10 PCI Controller
It is possible to set each space to valid/invalid, pre-fetch Read to valid/invalid, or to perform Word
Swap (see 10.3.7). Table 10.3.5 shows the settings registers for these properties.
When pre-fetch Reads are set to valid, data transfer is performed on the G-Bus according to the size
set by the Target Pre-fetch Read Burst Length Field (P2GMnCTR.TPRBL) of the P2G Memory Space n
Control Register during a PCI target Read transaction. This is performed using accesses to resources
that will not be affected even if a pre-read such as memory is performed. Also, PCI Burst Reads to
memory spaces that were set to I/O space and pre-fetch disable are not supported.
Table 10.3.5 Target Access Space Properties Register
Enable
Pre-fetch (Initial State)
Word Swap
Memory Space 0
PCICCFG.TCAR & MemEnable &
P2GM0CTR.P2GM0EN
P2GM0CTR.MEM0PD (valid)
P2GM0CTR.BSWAP
Memory Space 1
PCICCFG.TCAR & MemEnable &
P2GM1CTR.P2GM1EN
P2GM1CTR.MEM1PD (valid)
P2GM1CTR.BSWAP
Memory Space 2
PCICCFG.TCAR & MemEnable &
P2GM2CTR.P2GM2EN
P2GM2CTR.MEM2PD (invalid)
P2GM2CTR.BSWAP
I/O Space
PCICCFG.TCAR & IOEnable &
P2GIOCTR.P2GIOEN
Always invalid
P2GIOCTR.BSWAP
MemEnable:
Host mode:
PCI State Command Register Memory Space bit (PCISTATUS.MEMSP)
Satellite mode: Command Register Memory Space bit
IOEnable:
Host mode:
PCI State Command Register I/O Space bit (PCISTATUS.IOSP)
Satellite mode: Command Register I/O Space bit
10.3.6
Post Write Function
The Post Write function improves system performance by completing the original bus Write
transaction without waiting for the other bus to complete its transaction when the first bus issues a Write
transaction. Initiator Write can Post Write a maximum of four Write transactions, and Target Write can
Post Write a maximum of nine Write transactions.
Due to compatibility issues with old PC software in the PCI specifications, performing Post Writes
with Initiator Configuration Write and Target I/O Write is not recognized. However, the TX4925 PCI
Controller can even perform Post Writes to these functions. In order to guarantee that these Writes are
completed by the target device, please execute Reads to the device that performed the Write, then either
refer to the read value (so the TX49/H2 core can support non-blocking load) or execute the SYNC
instruction.
10.3.7
Endian Switching Function
The TX4925 supports both the Little Endian mode and the Bit Endian mode. On the other hand, the
PCI Bus is only defined in Little Endian logic. Therefore, when the TX4925 is in the Big Endian mode,
either the software or the hardware must perform some kind of conversion when exchanging data larger
than 2 B in size with the PCI Bus.
The PCI Controller can specify the endian switching function that reverses the byte arrangement of
the DWORD (32-bit) data for each access window.
10-13
Chapter 10 PCI Controller
Initial state operation matches the correspondence between the address and byte data regardless of the
endian mode (operation is address consistent). For example, if WORD (16-bit) data is written to address
0 of the PCI Bus when the TX4925 is in the Big Endian mode, the upper byte (address 0 in Big Endian)
is written to PCI Bus address 0 and the lower byte (address 1 in Big Endian) is written to address 1 of
the PCI Bus. For Little Endian PCI devices, this means that the byte order is reversed.
When in the Big Endian mode and a particular access window Endian switching mechanism is
validated, data is transferred so the byte order does not change in DWORD (32-bit) access to that access
window.
Endian switching during initiator access is specified by the Byte Swap bit (BSWAPMn, BSWAPIO)
of the G2P Configuration Register (G2PCFG) of the access window for each initiator access (see Table
10.3.3).
Ending switching during target access is specified by the Byte Swap bit (BSWAP) of the G2P
Memory Space n Control Register (P2GMnCTR) or G2P I/O Space Control Register (P2GIOCTR) of
the access window for each target access.
10.3.8
Power Management
The TX4925 PCI Controller supports power management functions that are compliant to PCI Bus
Power Management Interface Specifications Version 1.1 (Partially unsupported).
The PCI Host device controls the system status by reporting the power management state to the PCI
Satellite device.
10.3.8.1 Power Management State
In the case of the PCI Bus Power Management Interface Specifications, four power management
states are defined from State D0 to State D3. The TX4925 supports states D0 through D3. Figure 10.3.8
illustrates the power management state transition.
After Power On Reset, or when transitioning from the D3HOT state to the D0 state, the power
management state becomes uninitialized D0. If initialized by the system software at this point, the state
transitions to D0 Active.
If an external PCI Host device writes 11b (D3HOT) to the PowerState field of the Power Management
Control Status Register (PMCSR) of the Configuration space when in the Satellite mode, then the
Power Management State Change bit (P2GSTATUS.PMSC) of the P2G Status Register is set and
transitions to the D3HOT state. It then becomes possible to report Power State Change interrupts. The
PowerState field value can be read from the PowerState field (PCISSTATUS.PS) of the Satellite Mode
PCI Status Register.
The TX4925 uses software to change the system status after a status change is detected.
10-14
Chapter 10 PCI Controller
Power On Reset
(RESET*
*)
D0
Uninitialized
PCI RST*
*
(RESET*
*)
Initialization by the
System Software
D3cold
D0 Active
Software Reset
VCC Cut-off
Change PMCSR
PowerState
D3hot
Figure 10.3.8 Transition of the Power Management States
10.3.9
PDMAC (PCI DMA Controller)
The PCI DMA Controller (PDMAC) is a one-channel PCI Director Memory Access (DMA)
controller. Data can be transferred bidirectionally between the G-Bus and the PCI Bus.
10.3.9.1 DMA Transfer
The following DMA transfer procedure does not use the Chain DMA mode.
(1) Address Register and Count Register Setting
Sets values for the three following registers.
•
PDMAC G-Bus Address Register (PDMGA)
•
PDMAC PCI Bus Address Register (PDMPA)
•
PDMAC Count Register (PDMCTR)
(2) Chain Address Register Setting
Sets “0” to the PDMAC Chain Address Register (PDMCA).
(3) PDMAC Status Register (PDMSTATUS) Clearing
Clears any remaining status from a previous DMA transfer.
(4) PDMAC Control register (PDMCFG) Setting
Clears the Channel Reset bit (CHRST), and makes settings such as the data transfer direction
(XFRDIRC), and the burst mode (BRSTMD).
(5) DMA Transfer Initiation
Setting the Transfer Active bit (XFRACT) of the PDMAC Control Register initiates DMA
transfer.
10-15
Chapter 10 PCI Controller
(6) Termination Report
When the DMA data transfer terminates normally, the Normal Data Transfer Complete bit
(NTCMP) of the PDMAC Status Register (PDMSTATUS) is set. An interrupt is then reported
if the Normal Data Transfer Complete Interrupt Enable bit (NDCMPIE) of the PDMAC
Control Register is set.
If an error is detected during DMA transfer, the error cause is recorded in the lower 5 bits of
the PDMAC Status Register and the transfer is aborted. An interrupt is then reported if the
Error Detection Interrupt Enable bit (ERRIE) of the PDMAC Control register is set.
10.3.9.2 Chain DMA
DMA Command Descriptors are 4 DWORD (16-Byte) data structures indicated in Table 10.3.6
that are placed in memory.
Storing the starting memory address of another DMA Command Descriptor in the Offset 0
Chain Address Field makes it possible to configure a chain list for the DMA command Descriptor.
Set “0” in the Chain Address field of the DMA Command Descriptor at the end of the chain list.
When the DMA transfer specified by one DMA Command Descriptor ends, the PDMAC reads
the next DMA Command Descriptor that the Chain Address field automatically points to, then
continues the DMA transfer. Such continuous DMA transfer that uses multiple descriptors in a
chain format is referred to as the Chain DMA mode.
When a DMA Command Descriptor is placed to an address that does not extend across a 32
DWORD boundary in memory, this transfer method is more efficient since data can be read by a
single G-Bus Burst Read transaction.
Table 10.3.6 DMA Command Descriptors
Offset Address
Field Name
0x00
Chain Address
PDMAC Chain Address Register (PDMCA)
Transfer Destination Register
0x04
G-Bus Address
PDMAC G-Bus Address Register (PDMGA)
0x08
PCI Bus Address
0x0c
Count
PDMAC PCI Bus Address Register (PDMPA)
PDMAC Count Register (PDMCTR)
The DMA transfer procedure is as follows when in the Chain DMA mode.
(1) Count Register Setting
Sets “0” to the PDMAC Count Register (PMDCTR).
(2) DMA Command Descriptor Chain Construction
Constructs the DMA Command Descriptor Chain in memory.
(3) PDMAC Status Register (PDMSTATUS) Clearing
Clears any remaining status from a previous DMA transfer.
(4) PDMAC Control Register (PDMCFG) Setting
Clears the Channel Reset bit (CHRST) and makes settings such as the data transfer direction
(XFRDIRC) and the burst mode (BRSTMD).
10-16
Chapter 10 PCI Controller
(5) DMA Transfer Initiation
Setting the address of the DMA Command descriptor that is at the beginning of the Chain
List in the PDMAC Chain Address Register (PDMCA) automatically initiates DMA
transfer.
First, the values stored in each field of the DMA Command Descriptor that is at the
beginning of the Chain List are read to each corresponding PDMAC Register, then DMA
transfer is performed according to the read values.
If a value other than “0” is stored in the PDMAC Chain Address Register (PDMCA), data
transfer of the size stored in the PDMAC Count Register is complete, then the DMA
Command Descriptor value for the memory address specified by the PDMAC Chain Address
Register is read.
When the Chain Address field value reads a descriptor of “0”, the PDMAC Chain Address
Register value is not updated and the previous value (address of the Data Command
Descriptor at which the Chain Address field value is “0” when read) is held.
(6) Termination Report
When DMA data transfer of all descriptor chains terminates normally, the Normal Chain
Complete bit (NCCMP) of the PDMAC Status Register is set. An interrupt is reported if the
Chain Termination Interrupt Enable bit (MCCMPIE) of the PDMAC Control register
(PDMCFG) is set.
Also, the Normal Data Transfer Complete bit (NTCMP) of the DPMAC Status Register is set
each time the DMA data transfer specified by a DMA Command Descriptor terminates
normally. An interrupt is reported if the Normal Data Transfer Complete Interrupt Enable bit
(NTCMPIE) of the PDMAC Control Register (PDMCFG) is set.
If an error is detected during DMA transfer, the error cause is recorded in the lower 5 bits of
the PDMAC Status Register and the transfer is aborted. An interrupt is then reported if the
Error Detection Interrupt Enable bit (ERRIE) of the PDMAC Control register is set.
10.3.9.3 Dynamic Chain Operation
It is possible to dynamically add other DMA Command Descriptor Chains to a DMA Command
Descriptor Chain that is currently being processed when executing DMA data transfer. This is
done according to the following procedure.
(1) DMA Command Descriptor Chain Construction
Constructs a DMA Command Descriptor Chain in memory.
(2) Addition of DMA Command Descriptor Chains
Substitutes the address of the command descriptor that is at the beginning of the descriptor
chain to be added into the Descriptor Chain Address field at the end of the DMA Command
Descriptor Chain that is currently performing DMA transfer.
(3) Chain Enable bit checking
Reads the value of the Chain Enable bit (CHNEN) in the PDMAC Control Register
(PDMCFG). If the read value is “0”, then the Chain Address field value of the DMA
Command Descriptor indicated by the address stored in the PDMAC Chain Address Register
(PDMCA) is written to the PDMAC Chain Address Register (PDMCA).
10-17
Chapter 10 PCI Controller
10.3.9.4 Data Transfer Mode
The Transfer Mode field in the PDMAC Configuration register (PDMCFG.XFRMODE) selects
a data transfer mode for a DMA transaction over the G-Bus. Transfer data size and when a transfer
is started differ mode by mode.
Table 10.3.7 shows the available data transfer modes. Mode 00 performs a single-beat transfer;
Mode 01 performs a burst transfer. In either mode, the PDMAC reads data from the source
address, and after the read cycles are complete, writes the data to the destination address. Source
read and destination write cycles do not overlap.
Table 10.3.7 Data Transfer Modes
G-Bus to the PCI bus
PDMCFG.X
FRMODE
Free FIFO Space
Required for
G-Bus Read
Accesses
(DWORDs)
Number of
DWORDs Read
from the G-Bus
00
1
1
01
16
16 (Burst)
Number of
Number of
DWORDs required DWORDs Written
to the PCI Bus
in FIFO for PCI
Bus Write
Accesses
Overlaps of PCI
Bus and G-Bus
Cycles
1
1
None
16
16 (Burst)
None
Number of
DWORDs
Required in FIFO
for PCI Bus Read
Accesses
Number of
DWORDs Read
from the PCI Bus
Overlaps of PCI
Bus and G-Bus
Cycles
*1
PCI Bus to the G-Bus
PDMCFG.X
FRMODE
Free FIFO Space
Required for
G-Bus Write
Accesses
(DWORDs)
Number of
DWORDs Written
to the G-Bus
00
1
1
1
1
None
01
16
16 (Burst) *1
16
16 (Burst)
None
*1:
The last DMA transfer consists of less than 16 DWORDs if the data to be transferred is not a
multiple of 16 DWORDs.
Note:
The amount of data transferred varies, depending on the number of DWORDs present in the
FIFO.
10.3.10 Error Detection, Interrupt Reporting
The PCI Controller reports the four following types of interrupts to the Interrupt Controller (IRC).
•
Normal Operation Interrupt
(Interrupt Number: 20, PCIC)
•
PDMAC Interrupt
(Interrupt Number: 19, PDMAC)
•
Power Management Interrupt
(Interrupt Number: 30, PCIPME)
•
Error Detection Interrupt
(Interrupt Number: 29, PCIERR)
When each cause is detected, an interrupt is reported if the corresponding Status bit is set, and the
corresponding Interrupt Enable Bit is set. The following tables list the name of each interrupt cause, the
Status bit, and the Interrupt Enable bit. Please refer to the explanation of each Status bit for more
information regarding each interrupt cause.
10-18
Chapter 10 PCI Controller
10.3.10.1 Normal Operation Interrupt
Name
Status Bit
Interrupt Enable Bit
Master Abort Reception
PCISTATUS
RMA
Target Abort Reception
/
RTA
Target Abort Signal
PCISSTATUS
STA
RMAIE
PCIMASK
RTAIE
STAIE
10.3.10.2 PDMAC Interrupts
Name
Status Bit
Interrupt Enable Bit
Normal Chain Completion
NCCMP
NCCMPIE
Normal Data Transfer Completion
NTCMP
NTCMPIE
PCI Parity Error
PCIPERR
PCI System Error
PDMSTATUS
PCI Fatal Error
PCISERR
PDMCFG
ERRIE
PCIERR
G-Bus Chain Error
CHNERR
G-Bus Data Error
DATAERR
10.3.10.3 Power Management Interrupts
Name
PM Status Change Detection
Status Bit
P2GSTATUS
Interrupt Enable Bit
PMSC
P2GMASK
PMSCIE
10.3.10.4 Error Detection Interrupts
Name
Bus Error Detection
System Error Signal
Master Data Parity Error
Status Bit
PCISTATUS
/
PCISSTATUS
Interrupt Enable Bit
DPE
SSE
DPEIE
PCIMASK
MDPE
SSEIE
MDPEIE
Master Direct Fatal Error
MDFE
MDFEIE
Master Direct Parity Error
MPRE
MPREIE
TRDY Timeout Error
G2PSTATUS
Retry Timeout Error
Broken Master Detection
Target PERR* Detection
Target G-bus Error Detection
SERR* Detection
IDTTOE
G2PMASK
IDRTOE
PBASTATUS
P2GSTATUUS
PCICSTATUS
10-19
BMD
PERR
GBE
SERR
IDTTOEIE
IDRTOEIE
PBAMASK
P2GMASK
PCICMASK
BMDIE
PERRIE
GBEIE
SERRIE
Chapter 10 PCI Controller
10.3.11 PCI Bus Arbiter
Configuration settings (ADDR[1] signal = “1”) during boot up selects whether to use the on-chip PCI
Bus arbiter (Internal PCI Bus Arbiter mode) or to use the External PCI Bus arbiter (External PCI Bus
Arbiter mode).
When in the Internal PCI Bus Abiter mode, setting the PCI Bus Arbiter Enable bit
(PBACFG.PBAEN) of the PCI Bus Arbiter Configuration Register starts operation.
The on-chip PCI Bus arbiter can arbitrate eight sets of PCI Bus usage requests from the Bus Master.
Five ports are used: one for the PCI Controller bus master and four for External Bus masters. The three
remaining ports are reserved for future expanded features.
10.3.11.1 Request Signal, Grant Signal
The four external Bus Masters are connected to the REQ[3:0] signal and the GNT[3:0]* signal.
Also, when in the External PCI Bus Arbiter mode (Satellite Mode), the REQ[0]* signal
becomes the PCI Bus Request Output signal and the GNT[0]* signal becomes the Bus Usage
Permission Input Signal. Furthermore, the REQ[1]* signal can be used as an interrupt output
signal to the external devices (see 14.3.7 for more information).
10.3.11.2 Priority Control
As illustrated below in Figure 10.3.9, a combination of two round-robin sequences is used as
the arbitration algorithm that determines the priority of Internal PCI Bus arbiter bus requests. The
round-robin with the lower priority (Level 2) consists of Masters W - Z, and the round-robin with
the high priority (Level 1), consists of Master A - D and Level 2 Masters. The PCI Bus Arbiter
Request Port Register (PBAREQPORT) specifies whether to allocate the PCI Controller and the
four External Bus Masters to Masters A-D or W - Z.
Level 1
(Prirority: High)
Master B
Master C
Master A
Master D
Level 2
Level 2
(Priority: Low)
Master W
Master Z
Master X
Master Y
Figure 10.3.9 PCI Bus Arbitration Priority
The Bus Master priority is determined based on the Level 1 round-robin sequence. However,
when Level 2 is used inside Level 1, the Level 2 Bus Master priority is determined based on the
Level 2 round-robin sequence.
10-20
Chapter 10 PCI Controller
All 8 Bus Masters cannot be used on the TX4925. However, the Bus Master priority would be
as follows if we assume there is a hypothetical device that can use all 8 Bus Masters and all 8 Bus
Masters (Masters A – D, W – Z) simultaneously requested the bus.
A→B→C→D→W
→A→B→C→D→X
→A→B→C→D→Y
→A→B→C→D→Z
→ A (returns to the beginning)
Since the priority can only transition in the order indicated by the above arrows (or the arrows
in Figure 10.3.9, if we assume that the three Bus Masters A, B, and W exist, then Master B will
obtain the bus first. If A and W then simultaneously request the bus, then PCI Bus ownership will
transition in the order B → W → A.
10.3.11.3 Bus Parking
The On-chip PCI Bus Arbiter supports bus parking.
The last PCI Bus Master is made the Park Master when the Fix Park Master bit (FIXPM) of the
PCI Bus Arbiter Configuration Register (PBACFG) is cleared (in the default state). When this bit
is set, the Internal PCI Bus Arbiter Request A Port (Master A) becomes the Park Master.
10.3.11.4 Broken Master Detect
The TX4925 On-chip PCI Bus Arbiter has a function for automatically detecting broken
masters.
If the PCI Bus Master requests and is granted the bus when the PCI Bus is in the Idle state, this
master must assert the FRAME* signal within 16 PCI Clock cycles and start a transaction. The
PCI Bus Arbiter recognizes any device that breaks this rule as a broken bus master and removes
that device from the bus arbitration sequence.
This detection function is enabled when the Broken Master Check Enable bit (BMCEN) of the
PCI Bus Arbiter Configuration Register (PBACFG) is set. When a broken master is detected, the
Broken Master Detection bit (PBSTATUS.BMD) of the PCI Bus Arbiter Status Register is set and
the bit in the PCI Bus Arbiter Broken Master Register (PBABM) that corresponds to that master is
set. Then it also becomes possible to report an interrupt.
10-21
Chapter 10 PCI Controller
10.3.12 PCI Boot
Setting the configuration during boot up (ADDR[8:6] = 0x011) makes it possible to set the reset
exception vector address of the TX49/H2 core to PCI Bus address 0xBFC0_0000.
Two windows of the memory space from the G-Bus to the PCI Bus space are used when in the PCI
Boot mode. The defaults of several registers are changed as indicated below.
•
G-Bus base address (G2GBASE):
0x1FC0_0000
•
Space size (G2PM2MASK):
4 MB
•
PCI Bus base address (G2PM2PBASE):
0xBFC0_0000
•
Initiator Memory Space 2 Enable (PCICCFG.G2PM2EN):
1
•
Bus Master bit (PCISTATUS.BM) [Only when in the Host mode]
1
•
Target Configuration Access Ready
(PCICSTAUTS.TCAR) [Only when in the Satellite mode]
1
Also, the on-chip PCI Bus Arbiter cannot be used when the PCI Boot mode is being used while in the
Satellite mode.
10.3.13 Set Configuration Space
In Table 10.5.1, the values for the registers inside the PCI Configuration Space Register that have a
gray background can be rewritten using one of the following method.
10.3.13.1 Set the Configuration Space Using Software Reset
By using the following procedure, it is possible to use the software to set the configuration
space.
(1) Set the value to be loaded in the Configuration Data 0 Register (PCICDATA0), the
Configuration Data 1 Register (PCICDATA1), the Configuration Data 2 Register
(PCICDATA2), and the Configuration Data 3 Register (PCICDATA3).
(2) Clear the Load Configuration Data Register bit (LCFG) of the PCI Controller Configuration
Register (PCICCFG).
After these processes are complete, please set the Target Configuration Access Ready bit
(PCICCFG.TCAR) of the PCI Controller Configuration Register to be able to accept access to the
PCI Configuration space.
10.3.14 PCI Clock Signal
The configuration setting via ADDR[18] during boot-up determines whether or not the clock from
the on-chip PLL is driven out from the PCI Clock outputs, PCICLK[2:1] and PCICLKIO. When
ADDR[18] is High, PCICLK[2:1] and PCICLKIO are configured as outputs. When ADDR[18] is Low,
PCICLK[2:1] are forced to the High-Z state and PCICLKIO is configured as an input.
When PCICLK[2:1] and PCICLKIO are configured as outputs, the PCFG.PCICLKIOEN bit must not
be cleared. When configured as an output, the PCIC internally feeds back PCICLKIO as a PCI bus
clock to adjust the phase of the clock. However, if the PCFG.PCICLKEN[2:1] and
PCFG.PCICLKIOEN bits are cleared, PCICLK[2:1] and PCICLKIO are held Low respectively. (see
Figure 6.1.1).
10-22
Chapter 10 PCI Controller
10.4 PCI Controller Control Register
Table 10.4.1 lists the registers contained in the PCI Controller Control Register. Parentheses in the register
names indicate the corresponding PCI Configuration Space Register.
Table 10.4.1 PCI Controller Control Register (1/2)
Section
Address
Bit Width
Mnemonic
Register Name
10.4.1
0xD000
32
PCIID
ID Register (Device ID, Vendor ID)
10.4.2
0xD004
32
PCISTATUS
PCI Status, Command Register (Status, Command)
10.4.3
0xD008
32
PCICCREV
Class Code, Revision ID Register (Class Code, Revision ID)
10.4.4
0xD00C
32
PCICFG1
PCI Configuration 1 Register
(BIST, Header Type, Latency Timer, Cache Line Size)
10.4.5
0xD010
32
P2GM0PBASE
P2G Memory Space 0 PCI Base Address Register (Memory Space 0
Base Address)
10.4.6
0xD014
32
P2GM1PBASE
P2G Memory Space 1 PCI Base Address Register (Memory Space 1
Base Address)
10.4.7
0xD018
32
P2GM2PBASE
P2G Memory Space 2 PCI Base Address Register (Memory Space 2
Base Address)
10.4.8
0xD01C
32
P2GIOPBASE
P2G I/O Space PCI Base Address Register (I/O Space Base Address)
10.4.9
0xD02C
32
PCISID
Subsystem ID Register (Subsystem ID, Subsystem Vendor ID)
10.4.10
0xD034
32
PCICAPPTR
Capabilities Pointer Register (Capabilities Pointer)
10.4.11
0xD03C
32
PCICFG2
PCI Configuration 2 Register
(Max_Lat, Min_Gnt, Interrupt Pin, Interrupt Line)
10.4.12
0xD040
32
G2PTOCNT
G2P Timeout Count Register
(Retry Timeout Value, TRDY Timeout Value)
10.4.13
0xD060
32
G2PCFG
G2P Configuration Register
10.4.14
0xD064
32
G2PSTATUS
G2P Status Register
10.4.15
0xD068
32
G2PMASK
G2P Interrupt Mask Register

0xD06C


(Reserved)
10.4.16
0xD088
32
PCISSTATUS
Satellite Mode PCI Status Register (Status, PMCSR)
10.4.17
0xD08C
32
PCIMASK
PCI Status Interrupt Mask Register
10.4.18
0xD090
32
P2GCFG
P2G Configuration Register
10.4.19
0xD094
32
P2GSTATUS
P2G Status Register
10.4.20
0xD098
32
P2GMASK
P2G Interrupt Mask Register
10.4.21
0xD09C
32
P2GCCMD
P2G Current Command Register
10.5.1
0xD0DC
8
Cap_ID
Capability ID Register
10.5.2
0xD0DD
8
Next_Item_Ptr
Next Item Pointer Register
10.5.3
0xD0DE
16
PMC
Power Management Capability Register
10.5.4
0xD0E0
16
PMCSR
Power Management Control/Status Register
10.4.22
0xD100
32
PBAREQPORT
PCI Bus Arbiter Request Port Register
10.4.23
0xD104
32
PBACFG
PCI Bus Arbiter Configuration Register
10.4.24
0xD108
32
PBASTATUS
PCI Bus Arbiter Status Register
10.4.25
0xD10C
32
PBAMASK
PCI Bus Arbiter Interrupt Mask Register
10.4.26
0xD110
32
PBABM
PCI Bus Arbiter Broken Master Register
10.4.27
0xD114
32
PBACREQ
PCI Bus Arbiter Current Request Register (for diagnostics)
10.4.28
0xD118
32
PBACGNT
PCI Bus Arbiter Current Grant Register (for diagnostics)
10.4.29
0xD11C
32
PBACSTATE
PCI Bus Arbiter Current State Register (for diagnostics)
10.4.30
0xD120
32
G2PM0GBASE
G2P Memory Space 0 G-Bus Base Address Register
10.4.31
0xD128
32
G2PM1GBASE
G2P Memory Space 1 G-Bus Base Address Register
10.4.32
0xD130
32
G2PM2GBASE
G2P Memory Space 2 G-Bus Base Address Register
10.4.33
0xD138
32
G2PIOGBASE
G2P I/O Space G-Bus Base Address Register
10.4.34
0xD140
32
G2PM0MASK
G2P Memory Space 0 Address Mask Register
10.4.35
0xD144
32
G2PM1MASK
G2P Memory Space 1 Address Mask Register
10.4.36
0xD148
32
G2PM2MASK
G2P Memory Space 2 Address Mask Register
10.4.37
0xD14C
32
G2PIOMASK
G2P I/O Space Address Mask Register
10.4.38
0xD150
32
G2PM0PBASE
G2P Memory Space 0 PCI Base Address Register
10.4.39
0xD158
32
G2PM1PBASE
G2P Memory Space 1 PCI Base Address Register
10-23
Chapter 10 PCI Controller
Table 10.4.1 PCI Controller Control Register (2/2)
Section
Address
Bit Width
Mnemonic
10.4.40
10.4.41
10.4.42
Register Name
0xD160
32
G2PM2PBASE
0xD168
32
G2PIOPBASE
G2P I/O Space PCI Base Address Register
0xD170
32
PCICCFG
PCI Controller Configuration Register
G2P Memory Space 2 PCI Base Address Register
10.4.43
0xD174
32
PCICSTATUS
PCI Controller Status Register
10.4.44
0xD178
32
PCICMASK
PCI Controller Interrupt Mask Register
10.4.45
0xD180
32
P2GM0GBASE
P2G Memory Space 0 G-Bus Base Address Register
10.4.46
0xD184
32
P2GM0CTR
P2G Memory Space 0 Control Register
10.4.47
0xD188
32
P2GM1GBASE
P2G Memory Space 1 G-Bus Base Address Register
10.4.48
0xD18C
32
P2GM1CTR
P2G Memory Space 1 Control Register
10.4.49
0xD190
32
P2GM2GBASE
P2G Memory Space 2 G-Bus Base Address Register
10.4.50
0xD194
32
P2GM2CTR
P2G Memory Space 2 Control Register
10.4.51
0xD198
32
P2GIOGBASE
P2G I/O Space G-Bus Base Address Register
10.4.52
0xD19C
32
P2GIOCTR
P2G IO Space Control Register
10.4.53
0xD1A0
32
G2PCFGADRS
G2P Configuration Address Register
10.4.54
0xD1A4
32
G2PCFGDATA
G2P Configuration Data Register

0xD1B0


(Reserved)

0xD1B8


(Reserved)

0xD1C0


(Reserved)
10.4.55
0xD1C8
32
G2PINTACK
G2P Interrupt Acknowledge Data Register
10.4.56
0xD1CC
32
G2PSPC
G2P Special Cycle Data Register
10.4.57
0xD1E0
32
PCICDATA0
Configuration Data 0 Register
10.4.58
0xD1E4
32
PCICDATA1
Configuration Data 1 Register
10.4.59
0xD1E8
32
PCICDATA2
Configuration Data 2 Register
10.4.60
0xD1EC
32
PCICDATA3
Configuration Data 3 Register
10.4.61
0xD200
32
PDMCA
PDMAC Chain Address Register
10.4.62
0xD204
32
PDMGA
PDMAC G-Bus Address Register
10.4.63
0xD208
32
PDMPA
PDMAC PCI Bus Address Register
10.4.64
0xD20C
32
PDMCTR
PDMAC Count Register
10.4.65
0xD210
32
PDMCFG
PDMAC Control Register
10.4.66
0xD214
32
PDMSTATUS
PDMAC Status Register
10-24
Chapter 10 PCI Controller
10.4.1
ID Register (PCIID)
0xD000
The Device ID field corresponds to the Device ID Register in the PCI Configuration Space, and the
Vendor ID field corresponds to the Vendor ID register of the PCI Configuration Space. These two fields
can be modified by software only when PCICCFG.ConfigBusy=1 after Reset. A write to Register
PCICDATA0 when PCICCFG.ConfigBusy=1 will modify the contents of this register. Otherwise this
register is Read Only.
This register cannot be accessed when in the Satellite mode.
31
16
DID
R/L
0x0181
: Type
: Initial value
15
0
VID
R/L
0x102f
Field Name
: Type
: Initial value
Bits
Mnemonic
Description
31:16
DID
Device ID
Device ID (Initial value: 0x0181, R/L)
This register indicates the ID that is allocated to a device. The ID can be changed.
15:0
VID
Vendor ID
Vendor ID (Initial value: 0x102f, R/L)
This register indicates the device product that is allocated by PCI SIG. The product
allocation can be changed.
Figure 10.4.1 ID Registers
10-25
Chapter 10 PCI Controller
10.4.2
PCI Status, Command Register (PCISTATUS) 0xD004
The upper 16 bits correspond to the Status Register in the PCI Configuration Space, and the lower 16
bits correspond to the Command Register in the PCI Configuration Space.
This register cannot be accessed when in the Satellite mode. However, it is possible to read some
values of the upper 16 bits from the Satellite Mode PCI Status Register (PCISSTATUS).
31
DPE
30
SSE
29
RMA
28
RTA
27
STA
26
DT
25
24
23
22
21
MDPE FBBCP Reserved 66MCP
20
CL
R
01
R/W1C
0
R
1
R/W1C R/W1C R/W1C R/W1C R/W1C
0
0
0
0
0
15
10
Reserved
R
1
R
0
9
8
7
6
5
4
FBBEN SEREN STPC PEREN VPS MWIEN
R/W
0
R/W
0
R
0
Field Name
R/W
0
R
0
R/W
0
19
16
Reserved
: Type
: Initial value
3
SC
2
BM
R
0
R/W
0/1
1
0
MEMSP IOSP
R/W
0
R/W : Type
0
: Default
Bits
Mnemonic
Explanation
31
DPE
Detected Parity
Error
Detected Parity Error (Initial value: 0, R/W1C)
Indicates that a parity error was detected. A parity error is detected in the three
following situations:
• Detected a data parity error as the Read command PCI initiator.
• Detected a data parity error as the Write command PCI target.
• Detected an address parity error.
This bit is set regardless of the setting of the Parity Error Response bit
(PCISTATUS.PEREN) of the PCI Status, Command Register.
1: Detected a parity error.
0: Did not detect a parity error.
30
SSE
Signaled System
Error
Signaled System Error (Initial value: 0, R/W1C)
Detects either an address parity error or a special cycle data parity error. This bit is
set when the SERR* signal is asserted.
1: Asserted the SERR* signal
0: Did not assert the SERR* signal.
29
RMA
Received Master
Abort
Received Master Abort (Initial value: 0, R/W1C)
This bit is set when a Master Abort aborts a PCI Bus Transaction when the PCI
Controller operates as the PCI initiator (except for special cycles).
1: Transaction was aborted by a Master Abort.
0: Transaction was not aborted by a Master Abort.
28
RTA
Received Target
Abort
Received Target Abort (Initial value: 0, R/W1C)
This bit is set when a Target Abort aborts a PCI Bus Transaction when the PCI
Controller operates as the PCI initiator.
1: Transaction was aborted by a Target Abort.
0: Transaction was not aborted by a Target Abort.
27
STA
Signaled Target
Abort
Signaled Target Abort (Initial value: 0, R/W1C)
This bit is set when a Target Abort aborts a PCI Bus Transaction when the PCI
Controller operates as the PCI target.
1: Bus transaction was aborted by a Target Abort.
0: Bus transaction was not aborted by a Target Abort.
26:25
DT
DEVSEL Timing
DEVSEL Timing (Fixed value: 01, R)
Three DEVSEL assert timings are defined in the PCI 2.2 Specifications: 00b = Fast;
01b = Medium; 10b = Slow; 11b = Reserved).
With the exception of Read Configuration and Write Configuration, when the PCI
Controller is the PCI target, the DEVSEL signal is asserted to a certain bus
command and indicates the slowest speed for responding to the PCI Bus Master.
Figure 10.4.2 PCI Status, Command Register (1/2)
10-26
Chapter 10 PCI Controller
Bits
Mnemonic
Field Name
Explanation
24
MDPE
Master Data
Parity Error
Master Data Parity Error (Initial value: 0, R/W1C)
Indicates the a parity error occurred when the PCI Controller is the PCI initiator.
This bit is not set when the PCI Controller is the target.
This bit is set when all of the three following conditions are met.
• It has been detected that the PERR* signal was set either directly or indirectly.
• The PCI Controller is the Bus Master for a PCI Bus transaction during which
an error occurred.
• The Parity Error Response bit of the PCI Status Command Register
(PCISTATUS.PEREN) has been set.
23
FBBCP
Fast Back-toBack Capable
Fast Back-to-Back Capable (Fixed value: 1, R)
Indicates whether target access of a fast back-to-back transaction can be accepted.
Is fixed to “1”.
22

21
66MCP
66 MHz Capable
66 MHz Capable (Fixed value: 0, R)
Indicates the 66 MHz operation is impossible. Is fixed to “0”.

20
CL
Capabilities List
Capabilities List (Fixed value: 1, R)
Indicates that the capabilities list is being implemented. Is fixed to “1”.
Reserved
19:10

9
FBBEN
Fast Back-toBack Enable
Fast Back-to-Back Enable (Initial value: 0, R/W)
Indicates that issuing of fast back-to-back transactions has been enabled.
1: Enable
0: Disable

8
SEREN
SERR* Enable
SERR* Enable (Initial value: 0, R/W)
Enables/Disables the SERR* signal.
The SERR* signal reports that either a PCI Bus address parity error or a special
cycle data parity error was detected. The SERR* signal is only asserted when the
Parity Error Response bit is set and this bit is set.
1: Enable
0: Disable
7
STPC
Stepping Control
Stepping Control (Fixed value: 0, R)
Indicates that stepping control is not being supported.
6
PEREN
Parity Error
Response
Parity Error Response (Initial value: 0, R/W)
Sets operation when a PCI address/data parity error is detected.
A parity error response (either when the Parity Error Response bit
(PCISTATUS.PEREN) of the PERR* Signal Assert or PCI Status, Command
Register is set, or the SERR* signal is asserted) is performed only when this bit is
set.
When this bit is cleared, the PCI Controller ignores all parity errors and continues
the transaction process as if the parity of that transaction was correct.
1: Parity error response is performed.
0: Parity error response is not performed.
5
VPS
VGA Palette
Snoop
VGA Palette Snoop (Fixed value: 0, R)
Indicates that the VGA palette snoop function is not supported.
4
MWIEN
Memory Write
and Invalidate
Enable
Memory Write and Invalidate Enable (Initial value: 0, R/W)
Controls whether to use the Memory Write and Invalidate command instead of the
Memory Write command when the PCI Controller is the initiator.
3
SC
Special Cycles
Special Cycles (Fixed value: 0, R)
Indicates that special cycles will not be accepted as PCI targets.
2
BM
Bus Master
Bus Master (Initial value: 0/1, R/W)
The default is only “1” when in the PCI Boot mode and in the Host mode.
1: Operates as the Bus Master.
0: Does not operate as the Bus Master.
1
MEMSP
Memory Space
Memory Space (Initial value: 0, R/W)
1: Respond to PCI memory access.
0: Do not respond to PCI memory access.
0
IOSP
I/O Space
I/O Space (Initial value: 0, R/W)
1: Respond to PCI I/O access.
0: Do not respond to PCI I/O access.
Reserved
Figure 10.4.2 PCI Status, Command Register (2/2)
10-27
Chapter 10 PCI Controller
10.4.3
Class Code, Revision ID Register (PCICCREV)
0xD008
The Class Code field corresponds to the Class Code Register of the PCI Configuration Space, and the
Revision ID field corresponds to the Revision ID Register of the PCI Configuration Space. These two
fields can be modified by software only when PCICCFG.ConfigBusy=1 after Reset. A write to
Register PCICDATA1 when PCICCFG.ConfigBusy=1 will modify the contents of this register.
Otherwise this register is Read Only.
This register cannot be accessed when in the Satellite mode.
31
16
CC
R/L
0x0600
15
8
: Type
: Initial value
7
0
CC
RID
R/L
0x00
R/L
Field Name
: Type
: Initial value
Bits
Mnemonic
Explanation
31:8
CC
Class Code
Class Code (Initial value: 0x060000, R/L)
Classifies the device types. The default is 060000h, which defines the PCI
Controller as a Host bridge device.
It is possible to change the device type by software.
7:0
RID
Revision ID
Revision ID (Initial value: *****, R/L)
Indicates the device revision ID. Please contact our Engineering Department for the
exact value.
It is possible to change the revision IDsoftware.
Figure 10.4.3 Class Code, Revision ID Register
10-28
Chapter 10 PCI Controller
10.4.4
PCI Configuration 1 Register (PCICFG1)
0xD00C
The following fields correspond to the following registers.
BIST field → BIST Register of the PCI Configuration Space
Header Type field → Header Type Register in the PCI Configuration Space
Latency Timer field → Latency Timer Register of the PCI Configuration Space
Cache Line Size field → Cache Line Size Register of the PCI Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
BISTC
30
24
Reserved
R
0
23
MFUNS
22
16
HT
R
0
15
8
Bits
Mnemonic
31
BISTC
R/L
0x00
7
0
LT
CLS
R/W
0x00
R/W
0x00
Field Name
BIST Capable
: Type
: Initial value
: Type
: Initial value
Description
BIST Capable (Fixed value: 0, R)
Indicates that the BIST function is not being supported.
30:24

23
MFUNS
Multi-Function
Multi-Function (Fixed value: 0, R)
0: Indicates that the device is a single-function device.

22:16
HT
Header Type
Header Type (Initial value: 0x00, R/L)
Indicates the Header type.
0000000: Header Type 0
It is possible to change to the value that was written to the PCICDATA3 Register
when PCICCFG.LCFG is “1”.
15:8
LT
Latency Timer
Latency Timer (Initial value: 0x00, R/W)
Sets the latency timer value. Specifies the PCI Bus clock count during which to abort
access when the GNT* signal is deasserted during PCI access. Since the lower two
bits are fixed to “0”, cycle counts can only be specified in multiples of 4.
7:0
CLS
Cache Line Size
Cache Line Size (Initial value: 0x00, R/W)
Is used to select the PCI Bus command during a Burst Read transaction. See “10.3.3
Supported PCI Bus Commands)” for more information.
Reserved
Figure 10.4.4 PCI Configuration 1 Register
10-29
Chapter 10 PCI Controller
10.4.5
P2G Memory Space 0 PCI Base Address Register (P2GM0PBASE)
0xD010
This register corresponds to the Memory Space 0 Base Address Register at offset address 0x10 of the
PCI Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
20
19
BA[31:20]
16
Reserved
R/W
0x000
: Type
: Initial value
15
4
Reserved
3
PF
2
TYPE
1
0
MSI
R
00
R
0
R
1
Bits
Mnemonic
31:20
BA[31:20]
Field Name
Base Address
: Type
: Initial value
Description
Base Address (Initial value: 0x000, R/W)
Sets the PCI base address in Target Access Memory Space 0. The size of Memory
Space 0 is selected from 1MB to 512MB using TC0[28:20].
19:4

Reserved
3
PF
Prefetchable
Prefetchable (Fixed value: 1, R)
1: Indicates that memory is prefetchable.

2:1
TYPE
Type
Type (Initial value: 00, R)
10: Indicates that an address is within a 64-bit address region.
0
MSI
Memory Space
Memory Space Indicator (Fixed value: 0, R)
0: Indicates that this Base Address Register is for use by the PCI Memory Space.
Figure 10.4.5 P2G Memory Space 0 PCI Base Address Register
10-30
Chapter 10 PCI Controller
10.4.6
P2G Memory Space 1 PCI Base Address Register (P2GM1PBASE)
0xD014
This register corresponds to the Memory Space 1 Base Address Register at offset address 0x14 of the
PCI Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
20
19
BA[31:20]
16
Reserved
R/W
0x000
: Type
: Initial value
15
4
Reserved
3
PF
2
R
1
Bits
Mnemonic
31:20
BA[31:20]
Field Name
Base Address
TYPE
1
0
MSI
R
00
R
0
: Type
: Initial value
Description
Base Address (Initial value: 0x000, R/W)
Sets the PCI base address in Target Access Memory Space 0. The size of Memory
Space 0 is selected from 1MB to 512MB using TC0[28:20].
19:4

Reserved
3
PF
Prefetchable
Prefetchable (Fixed value: 1, R)
1: Indicates that memory is prefetchable.

2:1
TYPE
Type
Memory Type (Fixed value: 00, R)
00: Indicates that an address is within a 32-bit address region.
0
MSI
Memory Space
Memory Space Indicator (Fixed value: 0, R)
0: Indicates that this Base Address Register is for use by the PCI Memory Space.
Figure 10.4.6 P2G Memory Space 1 PCI Base Address Register
10-31
Chapter 10 PCI Controller
10.4.7
P2G Memory Space 2 PCI Base Address Register (P2GM2PBASE)
0xD018
This register corresponds to the Memory Space 2 Base Address Register at offset address 0x18 of the
PCI Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
20
19
BA[31:20]
16
Reserved
R/W
0x000
: Type
: Initial value
15
4
Reserved
3
PF
2
TYPE
1
0
MSI
R
00
R
0
R
0
Bits
Mnemonic
31:20
BA[31:20]
Field Name
Base Address
: Type
: Initial value
Description
Base Address (Initial value: 0x000, R/W)
Sets the PCI base address in Target Access Memory Space 0. The size of Memory
Space 0 is selected from 1MB to 512MB using TC0[28:20].
19:4

Reserved
3
PF
Prefetchable
Prefetchable (Fixed value: 0, R)
1: Indicates that memory is prefetchable.

2:1
TYPE
Type
Memory Type (Fixed value: 00, R)
00: Indicates that an address is within a 32-bit address region.
0
MSI
Memory Space
Memory Space Indicator (Fixed value: 0, R)
0: Indicates that this Base Address Register is for use by the PCI Memory Space.
Figure 10.4.7 P2G Memory Space 2 PCI Base Address Register
10-32
Chapter 10 PCI Controller
10.4.8
P2G I/O Space PCI Base Address Register (P2GIOPBASE)
0xD01C
This register corresponds to the I/O Space Base Address at offset address 0x1C of the PCI
Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
1
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
R
1
Field Name
Base Address
7:1

Reserved
0
IOSI
I/O Space
0
IOSI
: Type
: Initial value
Description
Base Address (Initial value: 0x00, R/W)
Sets the PCI base address of the Target Access I/O Space. The size of this I/O space
is fixed at 256 Bytes selected from 256B to 32KB using TC3[15:8].

I/O Space Indicator (Fixed value: 1, R)
1: Indicates that this Base Address Register is for use by the PCI I/O Space.
Figure 10.4.8 P2G I/O Space PCI Base Address Register
10-33
Chapter 10 PCI Controller
10.4.9
Subsystem ID Register (PCISID)
0xD02C
The Subsystem ID field corresponds to the Subsystem ID Register of the PCI Configuration Space,
and the Subsystem Vendor ID field corresponds to the Subsystem Vendor ID Register of the PCI
Configuration Space. These two fields can be modified by software only when PCICCFG.LCFG=1
after Reset. A write to Register PCICDATA2 when PCICCFG.LCFG=1 will modify the contents of this
register. Otherwise this register is Read Only.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
16
SSID
R/L
0x0000
15
8
: Type
: Initial value
7
0
R/L
0x0000
Bits
Mnemonic
31:16
SSID
15:0
SSVID
Field Name
: Type
: Initial value
Description
Subsystem ID
Subsystem ID (Initial value: 0x0000, R/L)
This register is used to acknowledge either a subsystem that has a PCI device or an
add-in board.
It is possible to change the Subsystem ID bysoftware.
Subsystem
Vendor ID
Subsystem Vendor ID (Initial value: 0x0000, R/L)
This register is used to acknowledge either a subsystem that has a PCI device or an
add-in board.
It is possible to change the Subsystem ID bysoftware.
Figure 10.4.9 Subsystem ID Register
10-34
Chapter 10 PCI Controller
10.4.10 Capabilities Pointer Register (PCICAPPTR)
0xD034
The Capabilities Pointer field corresponds to the Capabilities Pointer Register of the PCI
Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
16
Reserved
: Type
: Initial value
15
8
7
Reserved
0
CAPPTR
R
0xdc
Bits
Mnemonic
31:8

7:0
CAPPTR
Field Name
: Type
: Initial value
Description

Reserved
Capabilities
Pointer
Capabilities Pointer (Fixed value: 0xdc, R)
Indicates as an offset value the starting address of the capabilities list that indicates
extended functions.
Figure 10.4.10 Capabilities Pointer Register
10-35
Chapter 10 PCI Controller
10.4.11 PCI Configuration 2 Register (PCICFG2)
0xD03C
The following fields correspond to the following registers:
Max. Latency field → Max_Lat Register of the PCI Configuration Space
Min. Grant field → Min_Gnt Register of the PCI Configuration Space
Interrupt Pin field → Interrupt Pin Register of the PCI Configuration Space
Interrupt Line field → Interrupt Line Register of the PCI Configuration Space.
A write to Register PCICDATA3 when PCICCFG.LCFG=1 will modify the contents of this register.
Otherwise this register is Read Only.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
24
23
16
ML
MG
R/L
0x00
R/L
0x00
15
8
7
0
IP
IL
R/L
0x00
R/W
0x00
Field Name
: Type
: Initial value
: Type
: Initial value
Bits
Mnemonic
Description
31:24
ML
Maximum
Latency
Max_Lat (Maximum Latency) (Initial value: 0x00, R/L)
00h: Does not use this register to determine PCI Bus priority.
01h-FFh: Specifies the time interval for requesting bus ownership.
In units of 250 ns, assuming the PCICLK is 33 MHz.
It is possible to change the maximum latency by software.
23:16
MG
Minimum Grant
Min_Gnt (Minimum Grant) (Initial value: 0x00, R/L)
00h: Is not used to calculate the latency timer value.
01h-FFh: Sets the time required for Burst transfer.
In units of 250 ns, assuming the PCICLK is 33 MHz.
It is possible to change this valuesoftware.
15:8
IP
Interrupt Pin
Interrupt Pin (Initial value: 0x00, R/L)
Valid values: 00 - 04h
00h: Do not use interrupt signals.
01h: Use Interrupt signal INTA*
02h: Use Interrupt signal INTB*
03h: Use Interrupt signal INTC*
04h: Use Interrupt signal INTD*
05h - FFh: Reserved
It is possible to change this value by software.
When using either the REQ[2]* signal or the PIO signal to report an interrupt to an
external device as the PCI device, please use EEPROM to set the connection with
that device.
7:0
IL
Interrupt Line
Interrupt Line (Initial value: 0x00, R/L)
This is a readable/writable 8-bit register. The software uses this register to indicate
information such as the interrupt signal connection information. Operation of the
TX4925 is not affected.
Figure 10.4.11 PCI Configuration 2 Register
10-36
Chapter 10 PCI Controller
10.4.12 G2P Timeout Count Register (G2PTOCNT)
0xD040
The Retry Timeout field corresponds to the Retry Timeout Value Register of the PCI Configuration
Space, and the TRDY Timeout field corresponds to the TRDY Timeout Value Register of the PCI
Configuration Space.
This register cannot be accessed when the PCI Controller is in the Satellite mode.
31
16
Reserved
: Type
: Initial value
15
Bits
8
Mnemonic
7
0
RETRYTO
TRDYTO
R/W
0x80
R/W
0x80
Field Name
: Type
: Initial value
Description
31:16

15:8
RETRYTO
Retry Timeout
Retry Time Out (Initial value: 0x80, R/W)
Sets the maximum number of retries to accept when operating as the initiator on the
PCI Bus. Ends with an error when receiving more retry terminations than the set
maximum number.
Setting a “0” disables this timeout function.

7:0
TRDYTO
TRDY Timeout
TRDY Time Out (Initial value: 0x80, R/W)
Sets the maximum value of the time to wait for assertion of the TRDY* signal when
operating as the initiator on the PCI Bus.
Setting a “0” disables this timeout function.
Reserved
Figure 10.4.12 G2P Timeout Count Register
10-37
Chapter 10 PCI Controller
10.4.13 G2P Configuration Register (G2PCFG)
0xD060
31
16
Reserved
: Type
: Initial value
15
12
Reserved
11
10
R/W
0/1
Bits
Mnemonic
9
8
7
6
5
BSWAPM0 BSWAPM1 BSWAPM2 BSWAPIO IMEM0EN IMEM1EN IMEM2EN
R/W
0/1
R/W
0/1
R/W
0/1
R/W
0
Field Name
R/W
0
R/W
0
4
3
IIOEN IRBER
R/W
0
R/W
1
2
1
0
Reserved BSWAPI ASERR
R/W R/W1C : Type
0/1
0
: Initial value
Description
31:12

11
BSWAPM0
Byte Swap for
Memory Space 0
Byte Swap Disable for Memory Space 0
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W)
Sets the byte swapping of Memory Space 0.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 0 through DWORD (32bit) access will not change.

10
BSWAPM1
Byte Swap for
Memory Space 1
Byte Swap Disable for Memory Space 1
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W)
Sets the byte swapping of Memory Space 1.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to "0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 1 through DWORD (32bit) access will not change.
9
BSWAPM2
Byte Swap for
Memory Space 2
Byte Swap Disable for Memory Space 2
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W)
Sets the byte swapping of Memory Space 2.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 2 through DWORD (32bit) access will not change.
8
BSWAPIO
Byte Swap for I/O
Space
Byte Swap Disable for I/O Space
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W)
Sets the byte swapping of I/O Space.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to I/O Space through DWORD (32-bit)
access will not change.
7
G2PM0EN
Initiator Memory
Space 0 Enable
Initiator Memory Space 0 Enable (Initial value: 0, R/W)
Controls PCI initiator access to Memory Space 0.
1: Memory Space 0 is valid.
0: Memory Space 0 is invalid.
6
G2PM1EN
Initiator Memory
Space 1 Enable
Initiator Memory Space 1 Enable (Initial value: 0, R/W)
Controls PCI initiator access to Memory Space 1.
1: Memory Space 1 is valid.
0: Memory Space 1 is invalid.
Reserved
Figure 10.4.13 G2P Configuration Register (1/2)
10-38
Chapter 10 PCI Controller
Bits
Mnemonic
Field Name
5
G2PM2EN
Initiator Memory
Space 2 Enable
4
G2PIOEN
Initiator I/O Space Initiator I/O Space Enable (Initial value: 0, R/W)
Enable
Controls PCI initiator access to the I/O Space..
1: I/O Space is valid.
0: I/O Space is invalid.
3
IRBER
Bus Error
Response Setting
During Initiator
Access
Description
Initiator Memory Space 2 Enable (Initial value: Normal Mode: 0; PCI Boot Mode: 1,
R/W)
Controls PCI initiator access to Memory Space 2.
1: Memory Space 2 is valid.
0: Memory Space 2 is invalid.
Initiator Access Bus Error Response (Initial value: 1, R/W)
Bus error responses on the G-Bus are controlled when the following phenomena
indicated by the PCI Status, Command Register (PICSTATUS) and the G2P Status
Register (G2PSTATUS) occur during initiator Read access.
Detected Fatal Error (G2PSTATUS.MDFE)
Detected Parity Error (G2PSTATUS.MDPE)
Received Master Abort (PCISTATUS.RMA)
Received Target Abort (PCISTATUS.RTA)
Initiator Detected TRDY Time Out Error (G2PSTATUS.IDTTOE)
Initiator Detected Retry Time Out Error (G2PSTATUS.IDRTOE)
1: Responds with a Bus error on the G-Bus.
0: Does not respond with a Bus error on the G-Bus. (Normally terminates the
transaction on the G-Bus. Read data is invalid.)
2

1
BSWAPI
Byte Swap for
Indirect, Config,
IACK, and
Special cycle
Byte Swap for Indirect, Config, IACK, and Special cycle
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W)
Sets the byte swapping of Indirect, Config, IACK, and Special cycle.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 0 through DWORD (32bit) access will not change.

0
ASERR
Assert SERR
Assert SERR (Initial value: 0, R/W1C)
A write of 1 will assert SERR for 1 PCI clock. Always read 0.
Reserved
Figure 10.4.13 G2P Configuration Register (2/2)
10-39
Chapter 10 PCI Controller
10.4.14 G2P Status Register (G2PSTATUS)
0xD064
31
16
Reserved
: Type
: Initial value
15
9
Reserved
8
7
6
5
IOBFE IIBFE MDFE MDPE
R
1
Bits
Mnemonic
R
1
Field Name
4
2
Reserved
R/W1C R/W1C
0
0
1
0
IDTTOE IDRTOE
R/W1C R/W1C : Type
0
0
: Initial value
Description
31:9

8
IOBFE
Initiator OutBound FIFO
Empty
Initiator Out-Bound FIFO Empty (Initial value: 1, R)
1: Indicates that the Initiator Out-Bound FIFO is empty.
0: Indicates that the Initiator Out-Bound FIFO is not empty.
This is a diagnostic function.

7
IIBFE
Initiator In-Bound
FIFO Empty
Initiator In-Bound FIFO Empty (Initial value: 1, R)
1: Indicates that the Initiator In-Bound FIFO is empty.
0: Indicates that the Initiator In-Bound FIFO is not empty.
This is a diagnostic function.
6
MDFE
Master Direct
Fatal Error
Master Direct Fatal Error (Initial value: 0, R/W1C)
This bit is set when the initiator detects a fatal error in master direct cycle.
A fatal error is an event such as one of the following:
• Master abort
• Target abort
• Trdy timeout
• Retry timeout
The G2PSTATUS.MDFE bit is set if one of the above events occurs.
5
MDPE
Master Direct
Parity Error
Master Direct Parity Error (Initial value: 0, R/W1C)
This bit is set when the initiator detects a parity error in master direct cycle.
Reserved
4:2

1
IDTTOE
TRDY Timeout
Error
Initiator Detected TRDY Time Out Error (Initial value: 0, R/W1C)
This bit is set when the initiator detects a TRDY timeout.

0
IDRTOE
Retry Timeout
Error
Initiator Detected Retry Time Out Error (Initial value: 0, R/W1C)
This bit is set when the initiator detects a Retry timeout.
Reserved
Figure 10.4.14 G2P Status Register
10-40
Chapter 10 PCI Controller
10.4.15 G2P Interrupt Mask Register (G2PMASK)
0xD068
31
16
Reserved
: Type
: Initial value
15
6
Reserved
R/W
0
Bits
Mnemonic
5
4
Field Name
2
Reserved
MDFEIE MDPEIE
R/W
0
1
0
IDTTOEIE IDRTOEIE
R/W
0
R/W : Type
0
: Initial value
Description
31:7

6
MDFEIE
Master Direct
Fatal Error
Interrupt Enable
Master Direct Fatal Error Interrupt Enable (Initial value: 0, R/W)
The initiator generates an interrupt when it detects a fatal error in a direct cycle.
1: Generates an interrupt.
0: Does not generate an interrupt.

5
MDPEIE
Master Direct
Parity Error
Interrupt Enable
Master Direct Parity Error Interrupt Enable (Initial value: 0, R/W)
The initiator generates an interrupt when it detects a parity error in a direct cycle.
1: Generates an interrupt.
0: Does not generate an interrupt.
Reserved
4:2

Reserved
Please write “0”.
1
IDTTOEIE
TRDY Timeout
Error Interrupt
Enable
Initiator Detected TRDY Time Out Interrupt Enable (Initial value: 0, R/W)
The initiator generates an interrupt when it detects a TRDY timeout.
1: Generates an interrupt.
0: Does not generate an interrupt.
0
IDRTOEIE
Retry Timeout
Error Interrupt
Enable
Initiator Detected Retry Time Out Interrupt Enable (Initial value: 0x0, R/W)
The initiator generates an interrupt when it detects a Retry timeout.
1: Generates an interrupt.
0: Does not generate an interrupt.
Figure 10.4.15 G2P Interrupt Mask Register
10-41
Chapter 10 PCI Controller
10.4.16 Satellite Mode PCI Status Register (PCISSTATUS)
0xD088
The PCI Status, Command Register (PCISTATUS) or the PMCSR Register of the Configuration
Space cannot be accessed when the PCI Controller is in the Satellite mode. It is possible however to
read values from either of these registers.
31
26
25
Reserved
24
23
PS
16
Reserved
R
00
15
DPE
14
SSE
13
RMA
12
RTA
11
STA
R
0
R
0
R
0
R
0
R
0
Bits
Mnemonic
10
9
: Type
: Initial value
DT
8
MDPE
R
01
R
0
7
0
Reserved
: Type
: Initial value
Field Name
Description
31:26

Reserved
25:24
PS
Power State

23:16

Reserved
15
DPE
Detected Parity
Error
Detected Parity Error (Initial value: 0, R)
This is a shadow register of the PCISTATUS.DPE bit.
14
SSE
Signaled System
Error
Signaled System Error (Initial value: 0, R)
This is a shadow register of the PCISTATUS.SSE bit.
13
RMA
Received Master
Abort
Received Master Abort (Initial value: 0, R)
This is a shadow register of the PCISTATUS.RMA bit.
12
RTA
Received Target
Abort
Received Target Abort (Initial value: 0, R)
This is a shadow register of the PCISTATUS.RTA bit.
11
STA
Signaled Target
Abort
Signaled Target Abort (Initial value: 0, R)
This is a shadow register of the PCISTATUS.STA bit.
10:9
DT
Set DEVSEL
Timing
DEVSEL Timing (Fixed value: 01, R)
This is a shadow register of the PCISTATUS.DT field.
8
MDPE
Data Parity
Detected
Master Data Parity Error Detected (Initial value: 0, R)
This is a shadow register of the PCISTATUS.MDPE bit.
7:0

PowerState (Initial value: 00, R)
This is a shadow register of the PowerState field in the PMCSR Register.


Reserved
Figure 10.4.16 Satellite Mode PCI Status Register
10-42
Chapter 10 PCI Controller
10.4.17 PCI Status Interrupt Mask Register (PCIMASK)
0xD08C
31
16
Reserved
: Type
: Initial value
15
14
13
12
11
DPEIE SSEIE RMAIE RTAIE STAIE
R/W
0
Bits
R/W
0
R/W
0
R/W
0
Mnemonic
10
9
Reserved
R/W
0
8
7
0
Reserved
MDPEIE
R/W
0
: Type
: Initial value
Field Name
Description
31:16

15
DPEIE
Detected Parity
Error Interrupt
Enable
Detected Parity Error Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when a parity error is detected.
Usually, this interrupt is masked and a Master Data Parity error signals the error to the
system.
1: Generates an interrupt.
0: Does not generate an interrupt.
14
SSEIE
Signaled System
Error Interrupt
Enable
Signaled System Error Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when a system error is signaled.
1: Generates an interrupt.
0: Does not generate an interrupt.
13
RMAIE
Received Master
Abort Interrupt
Enable
Received Master Abort Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when a Master Abort is received.
1: Generates an interrupt.
0: Does not generate an interrupt.
12
RTAIE
Received Target
Abort Interrupt
Enable
Received Target Abort Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when a Target Abort is received.
1: Generates an interrupt.
0: Does not generate an interrupt.
11
STAIE
Signaled Target
Abort Interrupt
Enable
Signaled Target Abort Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when a Target Abort is signaled.
1: Generates an interrupt.
0: Does not generate an interrupt.
10:9

8
MDPEIE
7:0


Reserved

Reserved
Master Data
Parity Detected
Interrupt Enable
Master Data Parity Detected Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when data parity is detected.
1: Generates an interrupt.
0: Does not generate an interrupt.

Reserved
Figure 10.4.17 PCI Status Interrupt Mask Register
10-43
Chapter 10 PCI Controller
10.4.18 P2G Configuration Register (P2GCFG)
0xD090
31
16
Reserved
: Type
: Initial value
15
5
Reserved
Field Name
Reserved
4
3
FTRD
R/W
0
R/W
0
2
1
0
FTA TOBFR TIBFR
R/W
0
R/W
0
R/W : Type
0
: Initial value
Bits
Mnemonic
Description
31:5

Reserved
4

Reserved
Don’t write one in this bit (Initial value: 0, R/W).
3
FTRD
Force Target
Retry/Disconnect
Force Target Retry/Disconnect (Initial value: 0, R/W)
The PCI Controller executes Retry Termination on a PCI Read access transaction if
this bit is set to “1”. This is a diagnostic function.
2
FTA
Force Target
Abort
Force Target Abort (Initial value: 0, R/W)
The PCI Controller executes a Target Abort on a PCI Read access transaction if this
bit is set to “1”. This is a diagnostic function.
1
TOBFR
Target read FIFO
Reset
Target read FIFO Reset (Initial value: 0, R/W)
The PCI Controller flushes the CORE internal Target Out-Bound FIFO when “1” is
written to this bit. This bit always reads out “0” when it is read. This is a diagnostic
function.
0
TIBFR
Target write FIFO
Reset
Target write FIFO Reset (Initial value: 0, R/W)
The PCI Controller flushes the CORE internal Target In-Bound FIFO when “1” is
written to this bit. This bit always read out “0” when it is read. This is a diagnostic
function.

Figure 10.4.18 P2G Configuration Register
10-44
Chapter 10 PCI Controller
10.4.19 P2G Status Register (P2GSTATUS)
0xD094
31
16
Reserved
: Type
: Initial value
15
5
Reserved
4
3
2
1
TOBFE TIBFE PMSC PERR
R
1
Bits
Mnemonic
Field Name
R
1
0
GBE
R/W1C R/W1C R/W1C : Type
0
0
0
: Initial value
Description
31:5

4
TOBFE
Target Out-Bound Target Out-Bound FIFO Empty (Initial value: 1, R)
FIFO Empty
1: Indicates that the Target Out-Bound FIFO is empty.
0: Indicates that the Target Out-Bound FIFO is not empty.
This is a diagnostic function.

3
TIBFE
Target In-Bound
FIFO Empty
2
PMSC
PM State Change Power Management State Change (Initial value: 0, R/W1C)
Detected
“1” is set to this bit when the PowerState field of the Power Management Register
(PMCSR) is rewritten.
This bit is cleared to “0” when a “1” is written to it. This bit is only valid when the PCI
Controller is in the Satellite mode.
1
PERR
PERR* Detected
PERR* Occurred (Initial value: 0, R/W1C)
Indicates that a Parity error occurred during Target access.
1: Indicates that a Parity error occurred.
0: Indicates that no Parity error has occurred..
0
TGBE
Target G-Bus
Error Detect
Target G-Bus Error Detect (Initial value: 0, R/W1C)
Indicates that a G-Bus Error occurred when the G-Bus was Target of the PCI cycle.
This error is indicated when a timeout occurs on the G-Bus. This bit is only set during
PCI Target cycle Bus Errors.
1: Indicates that a G-Bus Error was detected.
0: Indicates that no G-Bus Error was detected.
Reserved
Target In-Bound FIFO Empty (Initial value: 1, R)
1: Indicates that the Target In-Bound FIFO is empty.
0: Indicates that the Target In-Bound FIFO is not empty.
This is a diagnostic function.
Figure 10.4.19 P2G Status Register
10-45
Chapter 10 PCI Controller
10.4.20 P2G Interrupt Mask Register (P2GMASK)
0xD098
31
16
Reserved
: Type
: Initial value
15
3
Reserved
2
R/W
0
Bits
Mnemonic
1
0
PMSCIE PERRIE GBEIE
Field Name
R/W
0
R/W : Type
0
: Initial value
Description
31:3

2
PMSCIE
Power
Management
State Change
Interrupt Enable
Power Management State Change Interrupt Enable (Initial value: 0, R/W)
Generates an interrupt when the PowerState field of the Power Management Register
(PMCSR) is rewritten.
1: Generates an interrupt.
0: Does not generate an interrupt.

1
PERRIE
PERR* Detect
Interrupt Enable
PERR* Interrupt Enable (Initial value: 0, R/W)
This bit generates an interrupt when the Parity Error signal (PERR*) is asserted.
1: Generates an interrupt.
0: Does not generate an interrupt.
0
GBEIE
G-Bus Bus Error
Detect Interrupt
Enable
G-Bus Bus Error Interrupt Enable (Initial value: 0, R/W)
This bit generates an interrupt when a Bus Error is asserted while the PCI Controller
is the G-Bus Master. (Target cycle to G-Bus)
1: Generates an interrupt.
0: Does not generate an interrupt.
Reserved
Figure 10.4.20 P2G Interrupt Mask Register
10-46
Chapter 10 PCI Controller
10.4.21 P2G Current Command Register (P2GCCMD)
0xD09C
31
16
Reserved
: Type
: Initial value
15
4
Reserved
3
0
TCCMD
R
0x0
Bits
Mnemonic
31:4

3:0
TCCMD
Field Name
Description

Reserved
Target Current
Command
Register
Target Current Command (Initial value: 0x0, R)
Indicates the PCI command within the target access process that is currently in
progress. This is a diagnostic function.
Figure 10.4.21 P2G Current Command Register
10-47
: Type
: Initial value
Chapter 10 PCI Controller
10.4.22 PCI Bus Arbiter Request Port Register (PBAREQPORT) 0xD100
This register sets the correlation between each PCI Bus request source (PCI Controller and
REQ[3:0]) and each Internal PCI Bus Arbiter Request port (Master A - D, W - Z) (see Figure 10.3.9).
When changing these settings, each of the eight field values must always be set to different values.
After changing this register, the Broken Master Register (BM) value becomes invalid since the bit
mapping changes.
This register is only valid when using the on-chip PCI Bus Arbiter.
31
30
28
ReqAP
Reserved
27
26
R/W
111
15
Reserved
14
11
10
Reserved
R/W
011
Bits
Mnemonic
31

30:28
ReqAP
27

26:24
ReqBP
23

22:20
ReqCP
19

23
22
7
Reserved
R/W
010
4
ReqYP
3
Reserved
2
: Type
: Initial value
0
ReqZP
R/W
000
: Type
: Initial value

Request A Port (Initial value: 111, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request A Port
(Master A).
111: Makes the PCI Controller Master A.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master A.
010: Makes REQ*[2] Master A.
001: Makes REQ*[1] Master A.
000: Makes REQ*[0] Master A.

Reserved
Request B Port (Initial value: 110, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request B Port
(Master B).
111: Makes the PCI Controller Master B.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master B.
010: Makes REQ*[2] Master B.
001: Makes REQ*[1] Master B.
000: Makes REQ*[0] Master B.

Reserved
Request C Port
6
16
ReqDP
Description
Reserved
Request B Port
18
R/W
100
R/W
001
Field Name
Request A Port
19
Reserved
R/W
101
8
ReqXP
20
ReqCP
Reserved
R/W
110
12
ReqWP
24
ReqBP
Reserved
Request C Port (Initial value: 101, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request C Port
(Master C).
111: Makes the PCI Controller Master C.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master C.
010: Makes REQ*[2] Master C.
001: Makes REQ*[1] Master C.
000: Makes REQ*[0] Master C.

Reserved
Figure 10.4.22 PCI Bus Arbiter Request Port Register (1/2)
10-48
Chapter 10 PCI Controller
Bits
Mnemonic
18:16
ReqDP
15

14:12
ReqWP
11

10:8
ReqXP
7

6:4
ReqYP
3

2:0
ReqZP
Field Name
Request D Port
Description
Request D Port (Initial value: 100, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request D Port
(Master D).
111: Makes the PCI Controller Master D.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master D.
010: Makes REQ*[2] Master D.
001: Makes REQ*[1] Master D.
000: Makes REQ*[0] Master D.

Reserved
Request W Port
Request W Port (Initial value: 011, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request W Port
(Master W).
111: Makes the PCI Controller Master W.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master W.
010: Makes REQ*[2] Master W.
001: Makes REQ*[1] Master W.
000: Makes REQ*[0] Master W.

Reserved
Request X Port
Request X Port (Initial value: 010, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request X Port
(Port X).
111: Makes the PCI Controller Master X.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master X.
010: Makes REQ*[2] Master X.
001: Makes REQ*[1] Master X.
000: Makes REQ*[0] Master X.

Reserved
Request Y Port
Request Y Port (Initial value: 001, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request Y Port
(Port Y).
111: Makes the PCI Controller Master Y.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master Y.
010: Makes REQ*[2] Master Y.
001: Makes REQ*[1] Master Y.
000: Makes REQ*[0] Master Y.

Reserved
Request Z Port
Request Z Port (Initial value: 000, R/W)
Sets the PCI Bus Master that connects to the Internal PCI Bus Arbiter Request Z Port
(Port Z).
111: Makes the PCI Controller Master Z.
110: Reserved
101: Reserved
100: Reserved
011: Makes REQ*[3] Master Z.
010: Makes REQ*[2] Master Z.
001: Makes REQ*[1] Master Z.
000: Makes REQ*[0] Master Z.
Figure 10.4.22 PCI Bus Arbiter Request Port Register (2/2)
10-49
Chapter 10 PCI Controller
10.4.23 PCI Bus Arbiter Configuration Register (PBACFG)
0xD104
This register is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
4
Reserved
3
2
1
0
FIXPA RPBA PBAEN BMCEN
R/W
0
Bits
Mnemonic
Field Name
R/W
0
R/W
0
R/W
: Type
0
: Initial value
Description
31:4

Reserved
3
FIXPA
Fixed Park
Master
Fixed Park Master (Initial value: 0, R/W)
Selects the method for determining the Park Master.
0: The last Bus Master becomes the Park Master.
1: Internal PCI Bus Arbiter Request Port A is the Park Master.

2
RPBA
Reset PCI Bus
Arbiter
Reset PCI Bus Arbiter (Initial value: 0, R/W)
Resets the PCI Bus Arbiter. However, the PCI Bus Arbiter Register settings are
saved. Please use the software to clear this bit.
1: The PCI Bus Arbiter is currently being reset.
0: The PCI Bus Arbiter is not currently being reset.
1
PBAEN
PCI Bus Arbiter
Enable
PCI Bus Arbiter Enable (Initial value: 0, R/W)
This is the Bus Arbiter Enable bit. After Reset, External PCI Bus requests to the PCI
Arbiter cannot be accepted until this bit is set to “1”. The PCI Controller is the default
Parking Master after Reset.
1: Enables the PCI Bus Arbiter.
0: Disables the PCI Bus Arbiter.
0
BMCEN
Broken Master
Check Enable
Broken Master Check Enable (Initial value: 0, R/W)
Controls Broken Master detection.
1: Enables the Broken PCI Bus Master check.
0: Disables the Broken PCI Bus Master check.
Figure 10.4.23 PCI Bus Arbiter Configuration Register
10-50
Chapter 10 PCI Controller
10.4.24 PCI Bus Arbiter Status Register (PBASTATUS)
0xD108
This register is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
BM
R/W1C : Type
0
: Initial value
Bits
Mnemonic
Field Name
31:1

Reserved
0
BM
Broken Master
Detected
Description

Broken Master Detected (Initial value: 0, R/W1C)
This bit indicates that a Broken Master was detected. This bit is set to “1” if even one
of the bits in the PCI Bus Arbiter Broken Master Register (PBABM) is “1”.
1: Indicates that a Broken Master was detected.
0: Indicates that no Broken Master has been detected.
Figure 10.4.24 PCI Bus Arbiter Status Register
10-51
Chapter 10 PCI Controller
10.4.25 PCI Bus Arbiter Interrupt Mask Register (PBAMASK)
0xD10C
This register is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
BMIE
R/W : Type
0
: Initial value
Bits
Mnemonic
31:1

0
BMIE
Field Name
Description

Reserved
Broken Master
Broken Master Detected Interrupt Enable (Initial value: 0, R/W)
Detected Interrupt Generates an interrupt when a Broken Master is detected.
Enable
1: Generates an interrupt.
0: Does not generate an interrupt.
Figure 10.4.25 PCI Bus Arbiter Interrupt Mask Register
10-52
Chapter 10 PCI Controller
10.4.26 PCI Bus Arbiter Broken Master Register (PBABM)
0xD110
This register indicates the acknowledged Broken Master. This register sets the bit that corresponds to
the PCI Master device that was acknowledged as the Broken Master when the Broken Master Check
Enable bit (BMCEN) in the PCI Bus Arbiter Configuration Register (PBACFG) is set.
Regardless of the value of the Broken Master Check Enable bit, a PCI Master device is removed from
the arbitration scheme when “1” is written to the corresponding BM bit.
This register must be cleared to “0” since bit mapping changes, making this register value invalid
when the PCI Bus Arbiter Request Port Register (PBAREQPORT) is changed.
This register is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
6
5
4
3
2
1
0
BM_A BM_B BM_C BM_D BM_W BM_X BM_Y BM_Z
R/W
0x00
Bits
Mnemonic
Field Name
Description
31:8

7
BM_A
Broken Master
Broken Master A (Initial value: 0, R/W)
Indicates whether PCI Bus Master A is a Broken Master.
1: PCI Bus Master A was acknowledged as a Broken Master.
0: PCI Bus Master A was not acknowledged as a Broken Master.

6
BM_B
Broken Master
Broken Master B (Initial value: 0, R/W)
Indicates whether PCI Bus Master B is a Broken Master.
1: PCI Bus Master B was acknowledged as a Broken Master.
0: PCI Bus Master B was not acknowledged as a Broken Master.
5
BM_C
Broken Master
Broken Master C (Initial value: 0, R/W)
Indicates whether PCI Bus Master C is a Broken Master.
1: PCI Bus Master C was acknowledged as a Broken Master.
0: PCI Bus Master C was not acknowledged as a Broken Master.
4
BM_D
Broken Master
Broken Master D (Initial value: 0, R/W)
Indicates whether PCI Bus Master D is a Broken Master.
1: PCI Bus Master D was acknowledged as a Broken Master.
0: PCI Bus Master D was not acknowledged as a Broken Master.
3
BM_W
Broken Master
Broken Master W (Initial value: 0, R/W)
Indicates whether PCI Bus Master W is a Broken Master.
1: PCI Bus Master W was acknowledged as a Broken Master.
0: PCI Bus Master W was not acknowledged as a Broken Master.
2
BM_X
Broken Master
Broken Master X (Initial value: 0, R/W)
Indicates whether PCI Bus Master X is a Broken Master.
1: PCI Bus Master X was acknowledged as a Broken Master.
0: PCI Bus Master X was not acknowledged as a Broken Master.
Reserved
Figure 10.4.26 PCI Bus Arbiter Broken Master Register (1/2)
10-53
: Type
: Initial value
Chapter 10 PCI Controller
Bits
Mnemonic
Field Name
Description
1
BM_Y
Broken Master
Broken Master Y (Initial value: 0, R/W)
Indicates whether PCI Bus Master Y is a Broken Master.
1: PCI Bus Master Y was acknowledged as a Broken Master.
0: PCI Bus Master Y was not acknowledged as a Broken Master.
0
BM_Z
Broken Master
Broken Master Z (Initial value: 0, R/W)
Indicates whether PCI Bus Master Z is a Broken Master.
1: PCI Bus Master Z was acknowledged as a Broken Master.
0: PCI Bus Master Z was not acknowledged as a Broken Master.
Figure 10.4.26 PCI Bus Arbiter Broken Master Register (2/2)
10-54
Chapter 10 PCI Controller
10.4.27 PCI Bus Arbiter Current Request Register (PBACREQ)
0xD114
This register is a diagnostic register that is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
8
7
Reserved
0
CPCIBRS
R
0x00
Bits
Mnemonic
31:8

7:0
CPCIBRS
Field Name
Description

Reserved
Current PCI Bus
Request Status
: Type
: Initial value
Current PCI Bus Request Status (Initial value: 0x00, R)
This register indicates the status of the current PCI Bus Request Input Signal (PCI
Controller and REQ*[3:0]). CPCIBRS[7] corresponds to the PCI Controller and
CPCIBRS[3:0] correspond to REQ*[3:0].
Figure 10.4.27 PCI Bus Arbiter Current Request Register
10-55
Chapter 10 PCI Controller
10.4.28 PCI Bus Arbiter Current Grant Register (PBACGNT)
0xD118
This is a diagnostic register that is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
8
7
Reserved
0
CPCIBRS
R/W
0x80
Bits
Mnemonic
31:8

7:0
CPCIBGS
Field Name
Description

Reserved
Current PCI
Grant Status
: Type
: Initial value
Current PCI Bus Grant Status (Initial value: 0x80, R/W)
This register indicates the current PCI Bus Grant output signal (PCI Controller and
GNT*[3:0]). CPCIBGS[7] corresponds to the PCI Controller, and CPCIBGS[3:0]
correspond to GNT*[3:0].
Figure 10.4.28 PCI Bus Arbiter Current Grant Register
10-56
Chapter 10 PCI Controller
10.4.29 PCI Bus Arbiter Current State Register (PBACSTATE)
0xD11C
This is a diagnostic register that is only valid when using the on-chip PCI Bus Arbiter.
31
16
Reserved
: Type
: Initial value
15
13
12
0
Reserved
CPAS
R
0x0000
Bits
Mnemonic
31:13

12:0
CPAS
Field Name
Description

Reserved
Current PCI bus
Arbiter State
: Type
: Initial value
Current State of the Arbiter State machine (Initial value: 0x0000, R)
Indicates the statemachine of PCI Bus Arbiter. This register is used for debug.
Figure 10.4.29 PCI Bus Arbiter Current State Register
10-57
Chapter 10 PCI Controller
10.4.30 G2P Memory Space 0 G-Bus Base Address Register (G2PM0GBASE)
0xD120
31
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: 0x0000_00, R/W)
Sets the G-Bus base bus address of Memory Space 0 for initiator access.
Can set the base address in 256-byte units.

Reserved
Figure 10.4.30 G2P Memory Space 0 G-Bus Base Address Register
10-58
Chapter 10 PCI Controller
10.4.31 G2P Memory Space 1 G-Bus Base Address Register (G2PM1GBASE)
0xD128
31
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Memory Space
Base Address 1
Description
Base Address (Initial value: 0x0000_00, R/W)
Sets the G-Bus base bus address of Memory Space 1 for initiator access.
Can set the base address in 256-byte units.

Reserved
Figure 10.4.31 G2P Memory Space 1 G-Bus Base Address Register
10-59
Chapter 10 PCI Controller
10.4.32 G2P Memory Space 2 G-Bus Base Address Register (G2PM2GBASE)
31
0xD130
16
BA[31:16]
R/W
0x0000/0x1FC0
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: Normal Mode: 0x0000_00; PCI Boot Mode: 0x1FC0_00,
R/W)
Sets the G-Bus base bus address of Memory Space 2 for initiator access.
Can set the base address in 256-byte units.

Reserved
Figure 10.4.32 G2P Memory Space 2 G-Bus Base Address Register
10-60
Chapter 10 PCI Controller
10.4.33 G2P I/O Space G-Bus Base Address Register (G2PIOGBASE)
31
0xD138
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: 0x0000_00, R/W)
Sets the G-Bus base bus address of the I/O Memory Space for initiator access.
Can set the base address in 256-byte units.

Reserved
Figure 10.4.33 G2P I/O Space G-Bus Address Register
10-61
Chapter 10 PCI Controller
10.4.34 G2P Memory Space 0 Address Mask Register (G2PM0MASK)
31
29
28
0xD140
16
Reserved
AM[28:16]
R/W
0x0000
15
8
: Type
: Initial value
7
AM[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:29

28:8
AM[28:8]
7:0

: Type
: Initial value
Field Name
Description

Reserved
Address Mask
G-Bus to PCI-Bus Address Mask (Initial value: 0x0000_00, R/W)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 MB (0x1000_0000) for example, the value
becomes 0x0FFF_FF00.

Reserved
Figure 10.4.34 G2P Memory Space 0 Address Mask Register
10-62
Chapter 10 PCI Controller
10.4.35 G2P Memory Space 1 Address Mask Register (G2PM1MASK)
31
29
28
0xD144
16
Reserved
AM[28:16]
R/W
0x0000
15
8
: Type
: Initial value
7
AM[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:29

28:8
AM[31:8]
7:0

: Type
: Initial value
Field Name
Description

Reserved
Address Mask
G-Bus to PCI-Bus Address Mask (Initial value: 0x0000_00, R/W)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 MB (0x1000_0000) for example, the value
becomes 0x0FFF_FF00.

Reserved
Figure 10.4.35 G2P Memory Space 1 Address Mask Register
10-63
Chapter 10 PCI Controller
10.4.36 G2P Memory Space 2 Address Mask Register (G2PM2MASK)
31
29
28
0xD148
16
Reserved
AM[28:16]
R/W
0x0000/0x003f
15
8
: Type
: Initial value
7
AM[15:8]
0
Reserved
R/W
0x00/0xFF
Bits
Mnemonic
31:29

28:8
AM[31:8]
7:0

: Type
: Initial value
Field Name
Description

Reserved
Address Mask
G-Bus to PCI-Bus Address Mask (Initial value: 0x0000_00, R/W)
(Initial value: Normal Mode: 0x0000_00; PCI Boot Mode: 0x003F_FF, R/W)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 MB (0x1000_0000) for example, the value
becomes 0x0FFF_FF00.

Reserved
Figure 10.4.36 G2P Memory Space 2 Address Mask Register
10-64
Chapter 10 PCI Controller
10.4.37 G2P I/O Space Address Mask Register (G2PIOMASK)
31
29
0xD14C
28
16
Reserved
AM[28:16]
R/W
0x0000
15
8
: Type
: Initial value
7
AM[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:29

28:8
AM[28:8]
7:0

: Type
: Initial value
Field Name
Description

Reserved
Address Mask
G-Bus to PCI-Bus Address Mask (Initial value: 0x0000_00, R/W)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 B (0x0000_0100) for example, the value
becomes 0x0000_0000.

Reserved
Figure 10.4.37 G2P I/O Space Address Mask Register
10-65
Chapter 10 PCI Controller
10.4.38 G2P Memory Space 0 PCI Base Address Register (G2PM0PBASE)
31
0xD150
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: 0x0000_00, R/W)
Sets the PCI Base address of Memory Space 0 for initiator access.
Can set the base address in 256-Byte units.

Reserved
Figure 10.4.38 G2P Memory Space 0 PCI Base Address Register
10-66
Chapter 10 PCI Controller
10.4.39 G2P Memory Space 1 PCI Base Address Register (G2PM1PBASE)
31
0xD158
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: 0x0000_00, R/W)
Sets the PCI Base address of Memory Space 1 for initiator access.
Can set the base address in 256-Byte units.

Reserved
Figure 10.4.39 G2P Memory Space 1 PCI Base Address Register
10-67
Chapter 10 PCI Controller
10.4.40 G2P Memory Space 2 PCI Base Address Register (G2PM2PBASE)
31
0xD160
16
BA[31:16]
R/W
0x0000/0xBFC0
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: 0x0000_00/0xBFC0_00(if PCI boot), R/W)
Sets the PCI Base address of Memory Space 2 for initiator access.
Can set the base address in 256-Byte units.

Reserved
Figure 10.4.40 G2P Memory Space 2 PCI Base Address Register
10-68
Chapter 10 PCI Controller
10.4.41 G2P I/O Space PCI Base Address Register (G2PIOPBASE)
0xD168
31
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Base Address
Description
Base Address (Initial value: 0x0000_00, R/W)
Sets the PCI Base address of the I/O Space for initiator access.
Can set the base address in 256-Byte units.

Reserved
Figure 10.4.41 G2P I/O Space PCI Base Address Register
10-69
Chapter 10 PCI Controller
10.4.42 PCI Controller Configuration Register (PCICCFG)
31
0xD170
20
19
Reserved
16
GBWC[19:16]
R/W
0xf
15
8
GBWC[7:0]
7
5
Reserved
R/W
0xff
Bits
Mnemonic
4
Reserved
R/W
1
Field Name
: Type
: Initial value
3
2
1
0
HRST SRST TCAR LCFG
R/W
0
R/W
0
R/W
0
R/W : Type
1
: Initial value
Description
31:20

19:8
GBWC

7:5

Reserved
4

Reserved
Note: This bit is always set to “1”. (Initial value: 1, R/W)
3
HRST
Hardware Reset
Hard Reset (Initial value: 0, R/W)
Performs PCI Controller hardware reset control. This bit is automatically cleared when
Reset ends. This is a diagnostic function.
The PCI Controller cannot be accessed for 32 G-Bus clock cycles after this bit is set.
1: Perform a hardware reset on the PCI Controller.
0: Do not perform a hardware reset on the PCI Controller.
2
SRST
Software Reset
Soft Reset (Initial value: 0, R/W)
Performs PCI Controller software reset control. Also, please use the software to clear
this bit at least four PCI Bus Clock cycles after Reset.
Other registers of the PCI Controller cannot be accessed while this bit is set.
This bit differs from the Hardware Reset bit (HRST) in that the G-Bus Ack State
Machine is not affected. Should be able to R/W any registers. G2P Status Register
1
TCAR
Target
Configuration
Access Ready
Target Configuration Access Ready (Initial value: 0/1, R/W)
Specifies whether to accept PCI access as a target.
During PCI boot, configuration access can be received from the PCI Bus after all
initialization has completed.
This bit becomes “1” only when in the PCI Boot Mode and the Satellite Mode.
Operation when this bit is set to “1” then reset to “0” is not defined.
1: Responds to PCI target access.
0: Performs a Retry response to PCI target access.
0
LCFG
Load
Configuration
Data Register
Load PCI Configuration Data Register (Initial value: 1, R/W)
This bit is set to 1 after reset including Hard or Soft reset in PCIC. It can be cleared
only by software.
When this bit is “1”, the value written to the Configuration Data 0/1/2/3 Register is also
written to the Configuration Space Register.
This bit must be cleared by software after load because no PCI config cycles will be
possible until it is cleared.
1: Load from the Configuration Data 0/1/2/3 Register.
0: No Load.
Reserved
G-Bus Wait
Counter Setting
G Bus Wait Counter (Initial value: 0xfff, R/W)
Sets the Retry response counter at the G-Bus during a PCI initiator Read transaction.
When the initiator Read access cycle exceeds the setting of this counter, a Retry
response is sent to the G-Bus and the G-Bus is released. PCI Read operation
continues. This counter uses the G-Bus clock (GBUSCLK) when operating.
When 0x000 is set, a Retry response is not sent to the G-Bus by a long response
cycle count.

Figure 10.4.42 PCI Controller Configuration Register
10-70
Chapter 10 PCI Controller
10.4.43 PCI Controller Status Register (PCICSTATUS)
0xD174
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
SERR
R/W1C : Type
0
: Initial value
Bits
Mnemonic
31:1

0
SERR
Field Name
Description

Reserved
SERR* Detected
SERR* Occurred (Initial value: 0, R/W1C)
Indicates that the System Error signal (SERR*) was asserted. This bit is a monitor
status bit that records assertion of the SERR* signal even if the TX4925 is not
accessing PCI.
1: Indicates that the SERR* signal was asserted.
0: Indicates that the SERR* signal was not asserted.
Figure 10.4.43 PCI Controller Status Register
10-71
Chapter 10 PCI Controller
10.4.44 PCI Controller Interrupt Mask Register (PCICMASK)
0xD178
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
SERRIE
R/W : Type
0
: Initial value
Bits
Mnemonic
31:1

0
SERRIE
Field Name
Description

Reserved
SERR* Detect
Interrupt Enable
SERR* Interrupt Enable (Initial value: 0, R/W)
This bit generates an interrupt when the System Error signal (SERR*) is asserted.
1: Generates an interrupt.
0: Does not generate an interrupt.
Figure 10.4.44 PCI Controller Interrupt Mask Register
10-72
Chapter 10 PCI Controller
10.4.45 P2G Memory Space 0 G-Bus Base Address Register (P2GM0GBASE)
31
20
19
BA[31:20]
0xD180
16
Reserved
R/W
0x000
: Type
: Initial value
15
0
Reserved
: Type
: Initial value
Bits
Mnemonic
31:20
BA[31:20]
19:0

Field Name
Base Address
Description
Base Address 0 (Initial value: 0x000, R/W)
Sets the G-Bus base bus address of Memory Space 0 for target access. Can set the
base address from 1MB to 512-MB.

Reserved
Figure 10.4.45 P2G Memory Space 0 G-Bus Base Address Register
10-73
Chapter 10 PCI Controller
10.4.46 P2G Memory Space 0 Control Register (P2GM0CTR)
31
29
28
20
Reserved
0xD184
19
AM[28:20]
16
Reserved
R/W
0x03F
15
11
10
Reserved
8
TPRBL
: Type
: Initial value
7
5
Reserved
R/W
010
Bits
Mnemonic
31:29

28:20
AM[28:20]
19:11

10:8
TPRBL
7:5

4
TMCC
R/W
0
Field Name
1
R/W
1
R/W
1
R/W
0
0
BSWAP
R/W : Type
0/1 : Initial value


Target Prefetch Read Burst Length (Initial value: 0x3, R/W)
These bits set the G-Bus Burst Size (in DWORDS, (32-bit words)) to be read into the
data FIFO during a target memory Read operation.
0x000: Access and transfer 1DWORD (NO BURST)
0x001: Access and transfer 4 DWORDs of data to the target read FIFO.
0x010: Access and transfer 8 DWORDs of data to the target read FIFO.
0x011: Access and transfer 16 DWORDs of data to the target read FIFO.
0x1xx: Access and transfer 32 DWORDs of data to the target read FIFO.

Reserved
Target Memory
space 0 Cache
Clear
2
PCI-Bus to G-Bus Address Mask (Initial value: 0x03F, R/W)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 MB (0x1000_0000) for example, the value
becomes 0x0FFF.
Reserved
Target Prefetch
Read Burst
Length
3
Reserved MEMOPD P2GM0EN
Description
Reserved
Address Mask
4
TMCC
Target Memory space 0 Cache Clear (Initial value: 0, R/W)
A write of 1 will flush the Target Memory Cache 0. This bit is cleared automatically.
1: Cache Clear
0: Don’t care
3

Reserved
Note: This bit is always set to “0”. (Initial value: 1, R/W)
2
MEM0PE
Memory 0
Window Prefetch
Enable
Memory 0 Window Prefetch Enable (Initial value: 1, R/W)
If this bit is set, Prefetching of G-Bus data will occur on Target Memory Reads. If this
bit is cleared, 1 Burst of length TPRBL will be done on the G-Bus.
Even if the setting of this bit is changed, prefetchable bits in the Base Address
Register of the PCI Configuration Space will not reflect this change. We recommend
using the default setting when the PCI Controller is in the Satellite mode.
1
P2GM0EN
Memory Space 0
Enable
Target Memory Space 0 Enable (Initial value: 0, R/W) Controls whether Memory
Space 0 for target access is valid or invalid.
When this bit is set to invalid, Writes to the Memory Space 0 Base Address Register
of the PCI Configuration Register become invalid. Also, “0” is returned to Reads as a
response.
1: Validates Memory Space 0 for target access.
0: Invalidates Memory Space 0 for target access.
0
BSWAP
Byte Swap
Byte Swap Enable
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W) Sets the byte swapping
of Memory Space 0 for target access..
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 0 through DWORD (32bit) access will not change.
Figure 10.4.46 P2G Memory Space 0 Control Register
10-74
Chapter 10 PCI Controller
10.4.47 P2G Memory Space 1 G-Bus Base Address Register (P2GM1GBASE)
31
29
28
20
0xD188
19
BM[31:20]
16
Reserved
R/W
0x000
15
11
10
: Type
: Initial value
8
7
Reserved
5
4
3
2
1
0
: Type
: Initial value
Bits
Mnemonic
31:20
BA[31:20]
19:0

Field Name
Memory Space
Base Address 1
Description
Base Address 0 (Initial value: 0x000, R/W)
Sets the G-Bus base bus address of Memory Space 1 for target access. Can set the
base address from 1 MB to 512 MB.

Reserved
Figure 10.4.47 P2G Memory Space 1 G-Bus Base Address Register
10-75
Chapter 10 PCI Controller
10.4.48 P2G Memory Space 1 Control Register (P2GM1CTR)
31
29
28
20
Reserved
0xD18C
19
AM[28:20]
16
Reserved
R/W
0x03F
15
11
10
Reserved
8
TPRBL
: Type
: Initial value
7
5
Reserved
R/W
010
Bits
Mnemonic
31:29

28:20
AM[28:20]
19:11

10:8
TPRBL
7:5

4
TMCC
R/W
0
Field Name
1
0
R/W
1
R/W
1
R/W
0
R/W : Type
0/1 : Initial value


Target Prefetch Read Burst Length (Initial value: 0x3, R/W)
These bits set the G-Bus Burst Size (in DWORDS, (32-bit words)) to be read into the
data FIFO during a target memory Read operation.
0x000: Access and transfer 1DWORD (NO BURST)
0x001: Access and transfer 4 DWORDs of data to the target read FIFO.
0x010: Access and transfer 8 DWORDs of data to the target read FIFO.
0x011: Access and transfer 16 DWORDs of data to the target read FIFO.
0x1xx: Access and transfer 32 DWORDs of data to the target read FIFO.

Reserved
Target Memory
space 1 Cache
Clear
2
PCI-Bus to G-Bus Address Mask (Initial value: 0x03F, R/W)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 MB (0x1000_0000) for example, the value
becomes 0x0FFF.
Reserved
Target Prefetch
Read Burst
Length
3
Reserved MEM1PE P2GM1EN BSWAP
Description
Reserved
Address Mask
4
TMCC
Target Memory space 1 Cache Clear (Initial value: 0, R/W)
A write of 1 will flush the Target Memory Cache 1. This bit is cleared automatically.
1: Cache Clear
0: Don’t care
3

Reserved
Note: This bit is always set to “0”. (Initial value: 1, R/W)
2
MEM1PE
Memory 1
Window Prefetch
Enable
Memory 1 Window Prefetch Enable (Initial value: 1, R/W)
If this bit is set, Prefetching of G-Bus data will occur on Target Memory Reads. If this
bit is cleared, 1 Burst of length TPRBL will be done on the G-Bus.
Even if the setting of this bit is changed, prefetchable bits in the Base Address
Register of the PCI Configuration Space will not reflect this change. We recommend
using the default setting when the PCI Controller is in the Satellite mode.
1
P2GM1EN
Memory Space 1
Enable
Target Memory Space 1 Enable (Initial value: 0, R/W) Controls whether Memory
Space 1 for target access is valid or invalid.
When this bit is set to invalid, Writes to the Memory Space 1 Lower Base Address
Register or the Memory Space 1 Upper Base Address Register of the PCI
Configuration Register become invalid. Also, “1” is returned to Reads as a response.
1: Validates Memory Space 1 for target access.
0: Invalidates Memory Space 1 for target access.
0
BSWAP
Byte Swap
Byte Swap Disable
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W) Sets the byte swapping
of Memory Space 1 for target access.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 0 through DWORD (32bit) access will not change.
Figure 10.4.48 P2G Memory Space 1 Control Register
10-76
Chapter 10 PCI Controller
10.4.49 P2G Memory Space 2 G-Bus Base Address Register (P2GM2GBASE)
31
20
19
BA[31:20]
0xD190
16
Reserved
R/W
0x000
: Type
: Initial value
15
0
Reserved
: Type
: Initial value
Bits
Mnemonic
31:20
BA[31:20]
19:0

Field Name
Memory Space
Base Address 2
Description
Base Address 2 (Initial value: 0x000, R/W)
Sets the G-Bus base bus address of Memory Space 2 for target access. Can set the
base address from 1 MB to 512 MB.

Reserved
Figure 10.4.49 P2G Memory Space 2 G-Bus Base Address Register
10-77
Chapter 10 PCI Controller
10.4.50 P2G Memory Space 2 Control Register (P2GM2CTR)
31
29
28
20
Reserved
0xD194
19
AM[28:20]
16
Reserved
R/W
0x000
15
11
10
Reserved
8
TPRBL
: Type
: Initial value
7
5
Reserved
R/W
010
Bits
Mnemonic
31:29

28:20
AM[28:20]
19:11

10:8
TPRBL
7:5

4
TMCC
R/W
0
Field Name
1
0
R/W
0
R/W
0
R/W
0
R/W : Type
0/1 : Initial value


Target Prefetch Read Burst Length (Initial value: 0x3, R/W)
These bits set the G-Bus Burst Size (in DWORDS, (32-bit words)) to be read into the
data FIFO during a target memory Read operation.
0x000: Access and transfer 1DWORD (NO BURST)
0x001: Access and transfer 4 DWORDs of data to the target read FIFO.
0x010: Access and transfer 8 DWORDs of data to the target read FIFO.
0x011: Access and transfer 16 DWORDs of data to the target read FIFO.
0x1xx: Access and transfer 32 DWORDs of data to the target read FIFO.

Reserved
Target Memory
space 2 Cache
Clear
2
PCI-Bus to G-Bus Address Mask (Initial value: 0x000, R)
Sets the bits to be subject to address comparison. See 10.3.4 for more information.
When setting a memory space size of 256 MB (0x1000_0000) for example, the value
becomes 0x0FFF.
Reserved
Target Prefetch
Read Burst
Length
3
Reserved MEM1PE P2GM1EN BSWAP
Description
Reserved
Address Mask
4
TMCC
Target Memory space 1 Cache Clear (Initial value: 0, R/W)
A write of 1 will flush the Target Memory Cache 2. This bit is cleared automatically.
1: Cache Clear
0: Don’t care
3

Reserved
Note: This bit is always set to “0”. (Initial value: 0, R/W)
2
MEM2PE
Memory 2
Window Space
Prefetch Enable
Memory 2 Window Prefetch Enable (Initial value: 0, R/W)
If this bit is set, Prefetching of G-Bus data will occur on Target Memory Reads. If this
bit is cleared, 1 Burst of length TPRBL will be done on the G-Bus.
Even if the setting of this bit is changed, prefetchable bits in the Base Address
Register of the PCI Configuration Space will not reflect this change. We recommend
using the default setting when the PCI Controller is in the Satellite mode.
1
P2GM1EN
Memory Space 2
Enable
Target Memory Space 2 Enable (Initial value: 0, R/W) Controls whether Memory
Space 2 for target access is valid or invalid.
When this bit is set to invalid, Writes to the Memory Space 2 Lower Base Address
Register or the Memory Space 2 Upper Base Address Register of the PCI
Configuration Register become invalid. Also, “0” is returned to Reads as a response.
1: Validates Memory Space 2 for target access.
0: Invalidates Memory Space 2 for target access.
0
BSWAP
Byte Swap
Byte Swap Disable
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W) Sets the byte swapping
of Memory Space 2 for target access.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to Memory Space 2 through DWORD (32bit) access will not change.
Figure 10.4.50 P2G Memory Space 2 Control Register
10-78
Chapter 10 PCI Controller
10.4.51 P2G I/O Space G-Bus Base Address Register (P2GIOGBASE)
31
0xD198
16
BA[31:16]
R/W
0x0000
15
8
: Type
: Initial value
7
BA[15:8]
0
Reserved
R/W
0x00
Bits
Mnemonic
31:8
BA[31:8]
7:0

: Type
: Initial value
Field Name
Memory Space
Base Address 2
Description
Base Address 2 (Initial value: 0x0000_00, R/W)
Sets the G-Bus base bus address of the I/O Space for target access. Can set the
base address from 256 B to 64 KB.

Reserved
Figure 10.4.51 P2G I/O Space G-Bus Base Address Register
10-79
Chapter 10 PCI Controller
10.4.52 P2G I/O Space Control Register (P2GIOCTR)
0xD19C
31
16
Reserved
: Type
: Initial value
15
8
7
AM[15:8]
2
Reserved
R/W
0x00
Bits
Mnemonic
31:16

15:8
AM[15:8]
7:2

1
P2GIOEN
0
BSWAP
1
R/W
0
Field Name
R/W : Type
0/1 : Initial value
Description

Reserved
Address Mask
0
P2GIOEN BSWAP
PCI-Bus to G-Bus Address Mask (Initial value: 0x00, R/W)
Sets the bits to be subject to address comparison. See 10.3.5 for more information.
When setting a I/O space size of 256 B (0x0000_0100) for example, the value
becomes 0x00.

Reserved
I/O Space Enable
Target I/O Space Enable (Initial value: 0, R/W) Controls whether the I/O Space for
target access is valid or invalid.
When this bit is set to invalid, Writes to the I/O Space Base Address Register of the
PCI Configuration Register become invalid. Also, “0” is returned to Reads as a
response.
1: Validates I/O Space for target access.
0: Invalidates I/O Space for target access.
Byte Swap
Byte Swap Disable
(Initial value: Little Endian Mode: 0; Big Endian Mode: 1, R/W) Sets the byte swapping
of the I/O Space for target access.
0: Do not perform byte swapping.
1: Perform byte swapping.
Please use the default state in most situations. If this bit is changed to “0” when in the
Big Endian Mode, the byte order of transfer to the I/O Space through DWORD (32-bit)
access will not change.
Figure 10.4.52 P2G I/O Space Control Register
10-80
Chapter 10 PCI Controller
10.4.53 G2P Configuration Address Register(G2PCFGADRS)
31
24
0xD1A0[m3]
23
16
Reserved
BUSNUM
R/W
0x00
15
Bits
11
10
8
7
: Type
: Initial value
2
1
0
DEVNUM
FNNUM
REGNUM
TYPE
R/W
0x00
R/W
000
R/W
0x00
R/W
00
Mnemonic
Field Name
: Type
: Initial value
Description
31:24

23:16
BUSNUM
Bus Number
Bus Number (Initial value: 0x00, R/W)
Indicates the target PCI Bus Number (one of 256).

15:11
DEVNUM
Device Number
Device Number (Initial value: 0x00, R/W)
This field is used to identify the target physical device number. (This is one number
out of 32 devices. 21 of these 32 devices are used.)
When in the address phase of Type 0 configuration access, AD[31:11] of the upper 21
address lines are used as the IDSEL signal.
0x00: Use AD [11] as IDSEL.
0x01: Use AD [12] as IDSEL.
0x02: Use AD [13] as IDSEL.
:
:
0x13: Use AD [30] as IDSEL.
0x14: Use AD [31] as IDSEL.
0x15 - 0x1F: Reserved
10:8
FNNUM
Function Number
Function Number (Initial value: 000, R/W)
This field is used to identify the target logic function number (one out of 8).
7:2
REGNUM
Register Number
Register Number (Initial value: 0x00, R/W)
This field is used to identify the DWORD (one out of 64) inside the Configuration
Space of the target function
1:0
TYPE
Type
Type (Initial value: 00, R/W)
This field is used to identify the address type in the address phase of the target
function configuration cycle.
0x0: Type 0 configuration (Use the AD[31:11] signal as the IDSEL signal.)
0x1: Type 1 configuration (Output all bits unchanged as the address to the AD[ ]
signal.)
Reserved
Figure 10.4.53 G2P Configuration Address Register
10-81
Chapter 10 PCI Controller
10.4.54 G2P Configuration Data Register (G2PCFGDATA)
0xD1A4
This is the only register that supports Byte access and 16-bit Word access. The upper address bit of
the PCI Configuration Space is specified by the G2P Configuration Address Register (G2PCFGADRS).
The lower two bits of the address are specified by the lower two bits of the offset address in this register
as shown in Table 10.4.2. The TX4925 also has the ability to swap Byte Enables for Configuration
Cycles by setting G2PCFG.BSWAPI.
Table 10.4.2 PCI Configuration Space Access Address
Offset Address
Access Size
Configuration Space
Address [1:0]
Little Endian Mode
Big Endian Mode
32-bit
00
0xD1A4
0xD1A4
00
0xD1A4
0xD1A6
16-bit
8-bit
10
0xD1A6
0xD1A4
00
0xD1A4
0xD1A7
01
0xD1A5
0xD1A6
10
0xD1A6
0xD1A5
11
0xD1A7
0xD1A4
31
16
ICD
R/W

: Type
: Initial value
15
0
ICD
R/W

Bits
Mnemonic
31:0
ICD
Field Name
Initiator
Configuration
Data
: Type
: Initial value
Description
Initiator Configuration Data Register (Initial value: R/W)
This is a data port that is used when performing initiator PCI configuration access.
PCI configuration Read or Write transactions are issued when this register is read to
or written from.
Figure 10.4.54 G2P Configuration Data Register
10-82
Chapter 10 PCI Controller
10.4.55 G2P Interrupt Acknowledge Data Register (G2PINTACK)
31
0xD1C8
16
IIACKD
R

: Type
: Initial value
15
0
IIACKD
R

Bits
Mnemonic
31:0
IIACKD
Field Name
Initiator Interrupt
Acknowledge
Address Port
: Type
: Initial value
Description
Initiator Interrupt Acknowledge Address Port (Initial value: –, R)
An Interrupt Acknowledge cycle is generated on the PCI Bus when this register is
read. The data that is returned by this Read transaction becomes the Interrupt
Acknowledge data.
Figure 10.4.55 G2P Interrupt Acknowledge Data Register
10-83
Chapter 10 PCI Controller
10.4.56 G2P Special Cycle Data Register (G2PSPC)
0xD1CC
31
16
ISCD
W

: Type
: Initial value
15
0
ISCD
W

Bits
Mnemonic
31:0
ISCD
Field Name
Initiator Special
Cycle Data Port
: Type
: Initial value
Description
Initiator Special Cycle Data Port (Initial value: –, W)
When this register is written to, Special Cycles are generated on the PCI Bus
depending on the data that is written.
Figure 10.4.56 G2P Special Cycle Data Register
10-84
Chapter 10 PCI Controller
10.4.57 Configuration Data 0 Register (PCICDATA0)
0xD1E0
If PCICCFG.LCFG is set, a write to PCICDATA0, 1, 2 & 3 will modify the contents of the associated
Configuration registers in the PCI Core.
31
16
DID
R/W
0x0181
: Type
: Initial value
15
0
VID
R/W
0x102F
Field Name
: Type
: Initial value
Bits
Mnemonic
31:16
DID
Device ID
Device ID (Initial value: 0x0181, R/W)
This is the data loaded in the Device ID Register of the PCI Configuration Space.
Description
15:0
VID
Vendor ID
Vendor ID (Initial value: 0x102F, R/W)
This is the data loaded in the Vendor ID Register of the PCI Configuration Space.
Figure 10.4.57 Configuration Data 0 Register
10-85
Chapter 10 PCI Controller
10.4.58 Configuration Data 1 Register (PCICDATA1)
0xD1E4
31
16
CC
R/W
0x0600
15
8
: Type
: Initial value
7
0
CC
RID
R/W
0x00
R/W
-
Field Name
: Type
: Initial value
Bits
Mnemonic
Description
31:8
CC
Class Code
Class Code (Initial value: 0x0600_00, R/W)
This is the data loaded in the Class Code Register of the PCI Configuration Space.
7:0
RID
Revision ID
Revision ID (Initial value: –, R/W)
This is the data loaded in the Revision ID Register of the PCI Configuration Space.
Figure 10.4.58 Configuration Data 1 Register
10-86
Chapter 10 PCI Controller
10.4.59 Configuration Data 2 Register (PCICDATA2)
0xD1E8
31
16
SSID
R/W
0x0000
: Type
: Initial value
15
0
SSVID
R/W
0x0000
Bits
Mnemonic
31:16
SSID
15:0
SSVID
Field Name
: Type
: Initial value
Description
Sub System ID
Subsystem ID (Initial value: 0x0000, R/W)
This is the data loaded in the Sub System ID Register of the PCI Configuration space.
Sub System
Vendor ID
Subsystem Vendor ID (Initial value: 0x0000, R/W)
This is the data loaded in the Sub System Vendor ID Register of the PCI
Configuration space.
Figure 10.4.59 Configuration Data 2 Register
10-87
Chapter 10 PCI Controller
10.4.60 Configuration Data 3 Register (PCICDATA3)
31
24
0xD1EC
23
16
ML
MG
R/W
0x00
R/W
0x00
15
8
7
0
IP
HT
R/W
0x00
R/W
0x00
Field Name
: Type
: Initial value
: Type
: Initial value
Bits
Mnemonic
Description
31:24
ML
Maximum
Latency
Max_Lat (Maximum Latency) (Initial value: 0x00, R/W)
This is the data loaded in the Max_Lat Register of the PCI Configuration Space.
23:16
MG
Minimum Grant
Min_Gnt (Minimum Grant) (Initial value: 0x00, R/W)
This is the data loaded in the Min_Gnt Register of the PCI Configuration Space.
15:8
IP
Interrupt Pin
Interrupt Pin (Initial value: 0x00, R/W)
This is the data loaded in the Interrupt Pin Register of the PCI Configuration Space.
7:0
HT
Header Type
Header Type (Initial value: 0x00, R/W)
This is the data loaded in the Header Type Register of the PCI Configuration Space.
Figure 10.4.60 Configuration Data 3 Register
10-88
Chapter 10 PCI Controller
10.4.61 PDMAC Chain Address Register (PDMCA)
0xD200
31
16
PDMCA[31:16]
R/W
Undefined
: Type
: Initial value
15
2
PDMCA[15:2]
R/W
Undefined
Bits
Mnemonic
31:2
PDMCA
1:0

: Type
: Initial value
Field Name
Chain Address
1
0
Reserved
Description
PDMAC Chain Address (Initial value: undefined, R/W)
The address of the next PDMAC Data Command Descriptor to be read is specified by
a G-Bus physical address on a 32-bit address boundary. This register value is held
without being affected by a Reset.
DMA transfer is automatically initiated if a non-zero value is written to this register.

Reserved
Figure 10.4.61 PDMAC Chain Address Register
10-89
Chapter 10 PCI Controller
10.4.62 PDMAC G-Bus Address Register (PDMGA)
0xD204
31
16
PDMGA[31:16]
R/W
Undefined
: Type
: Initial value
15
2
PDMCA[15:2]
R/W
Undefined
Bits
Mnemonic
31:2
PDMGA
1:0

: Type
: Initial value
Field Name
G-Bus Address
1
0
Reserved
Description
PDMAC G-Bus Address (Initial value: undefined, R/W)
The G-Bus DMA transfer address is specified by a G-Bus physical address on a 32-bit
address boundary. This register value is used for G-Bus Read access during DMA
transfer from the G-Bus to the PCI Bus, or it is used for G-Bus Write access during
DMA transfer from the PCI Bus to the G-Bus.
This register value is held without being affected by a Reset.

Reserved
Figure 10.4.62 PDMAC G-Bus Address Register
10-90
Chapter 10 PCI Controller
10.4.63 PDMAC PCI Bus Address Register (PDMPA)
0xD208
31
16
PDMPA[31:16]
R/W
Undefined
: Type
: Initial value
15
2
PDMCA[15:2]
R/W
Undefined
1
0
Reserved
: Type
: Initial value
Bits
Mnemonic
Field Name
Description
31:2
PDMPA
PCI Bus Address
PDMAC PCI-Bus Address (Initial value: undefined, R/W)
The PCI Bus DMA transfer address is specified by a PCI Bus physical address on a
32-bit address boundary. This register value is held without being affected by a Reset.
Note: This register value is used for PCI Bus Write access during DMA transfer from
the G-Bus to the PCI Bus, or it is used for PCI Bus Read access during DMA
transfer from the PCI Bus to the G-Bus.
1:0


Reserved
Figure 10.4.63 PDMAC PCI Bus Address Register
10-91
Chapter 10 PCI Controller
10.4.64 PDMAC Count Register (PDMCTR)
31
24
0xD20C
23
Reserved
16
PDMCTR[23:16]
R/W
Undefined
15
2
PDMCTR[15:2]
R/W
Undefined
Bits
: Type
: Initial value
Mnemonic
31:24

23:2
PDMCTR
1:0

: Type
: Initial value
Field Name
Description

Reserved
Transfer Byte
Count
1
0
Reserved
PDMAC Transfer Count (Initial value: undefined, R/W)
Sets an uncoded 24-bit transfer byte count in 32-bit word units. Also, the setting of
this register must always be a multiple of the transfer size specified inside the PDMAC
Control Register. No data transfer is performed if a count of “0” is set.
This byte count value is calculated from the transferred byte size as the PDMAC
performs a DMA transfer.
This register value is held without being affected by a Reset.

Reserved
Figure 10.4.64 PDMAC Count Register
10-92
Chapter 10 PCI Controller
10.4.65 PDMAC Configuration Register (PDMCFG)
31
22
Reserved
15
14
Reserved
Bits
13
REQDLY
11
10
ERRIE
R/W
000
R/W
0
Mnemonic
31:22

21
RSTFIFO
20
9
8
NCCMPIE NTCMPIE
R/W
0
R/W
0
7
6
CHNEN XFRACT
R
0
Field Name
0xD210
21
20
19
RSTFIFO
BSWAP
GBRSTI
R/W
0
R/W
0
R/W
0
5
4
Reserved
18
16
Reserved
: Type
: Initial value
3
2
XFRMODE
XFRDIRC
R/W
00
R/W
0
R/W
0
1
0
CHRST
R/W : Type
1
: Initial value
Description

Reserved
Reset FIFO
Reset FIFO (Initial value: 0, R/W)
Initializes the Read pointer and Write pointer to the FIFO in the PDMAC, and sets the
FIFO hold count to “0”. Please use the software to clear this bit when it is set.
1: Performs FIFO reset.
0: Does not perform FIFO reset.
BSWAP
Byte Swap Within
DWORD
Swap Bytes in DWORD (Initial value: 0, R/W)
Specifies whether to perform 32-bit data byte swapping.
Please leave this bit at “0” for normal usage.
Setting this bit when in the Big Endian mode executes data transfer so the byte order
of the 32-bit data on the PCI Bus (which is Little Endian) does not change.
1: Transfer without swapping the byte order of each 32-bit DWORD data.
0: Swap the byte order of each 32-bit DWORD data, then transfer.
19
GBRSTI
G-Bus Burst
Inhibit
G-Bus Burst Inhibit (Initial value: 0, R/W)
1: Do not use burst operations on G-Bus even if the burst mode field specifies burst.
This allows devices that can’t burst to transfer data using bursts on the PCI bus.
This bit applies only to G-Bus data transfers; it has no affect on chain operations.
0: The MDA will use burst operations for G-Bus data transfers when programmed to
do so and if alignment, count, etc. permit.
18:14

13:11
REQDLY
Request Delay
Time
Request Delay (Initial value: 0x0, R/W)
G-Bus transactions for DMA transfer must be performed separated at least by the
interval this field specifies.
000: Continuously try to perform G-Bus transfer.
001: 16 G-Bus clocks
010: 32 G-Bus clocks
011: 64 G-Bus clocks
100: 128 G-Bus clocks
101: 256 G-Bus clocks
110: 512 G-Bus clocks
111: 1024 G-Bus clocks
10
ERRIE
Error Detect
Interrupt Enable
Interrupt Enable on Error (Initial value: 0, R/W)
1: PDMAC generates an error during error detection.
0: PDMAC does not generate an error during error detection.
9
NCCMPIE
Normal Chain
Complete
Interrupt Enable
Interrupt Enable on Chain Done (Initial value: 0, R/W)
1: PDMAC generates an interrupt when the current chain is complete.
0: PDMAC does not generate an interrupt when the current chain is complete.
8
NTCMPIE
Normal Data
Transfer
Complete
Interrupt Enable
Interrupt Enable on Transfer Done (Initial value: 0, R/W)
1: PDMAC generates an interrupt when the current data transfer is complete.
0: PDMAC does not generate an interrupt when the current data transfer is complete.

Reserved
Figure 10.4.65 PDMAC Configuration Register (1/2)
10-93
Chapter 10 PCI Controller
Bits
Mnemonic
Field Name
Description
7
CHNEN
Chain Enable
Chain Enable (Initial value: 0) (Read Only)
When the current data transfer is complete, this field reads the next data command
Descriptor from the address indicated by the PDMAC Chain Address Register then
indicates whether to continue the transfer or not.
This bit is only set to “1” when either a CPU Write process or a Descriptor Read
process sets a value other than “0” in the PDMAC Chain Address Register.
This bit is cleared to “0” if either the Channel Reset bit is set, or “0” is set in the
PDMAC Chain Address Register by a CPU Write or a Descriptor Read process.
1: Reads the next data command Descriptor.
0: Does not read the next data command Descriptor.
6
XFRACT
Transfer Active
Transfer Active (Initial value: 0, R/W)
Specifies whether to perform DMA transfer or not.
Setting this bit after setting the appropriate value in the register group initiates DMA
data transfer.
This bit is not set if the PDMAC Count Register value is “0” and the Chain Enable bit
is cleared when “1” is written to this bit.
Even when a value other than “0” is written to the Chain Address Register, “1” is set to
this bit and DMA transfer automatically starts.
Data transfer will be stopped after a short delay if this bit is cleared while the data
transfer is in progress.
This bit is automatically cleared to “0” either when data transfer ends normally or is
stopped by an error.
1: Perform data transfer.
0: Do not perform data transfer.
5:4

3:2
XFRMODE
Transfer Mode

1
XFRDIRC
Transfer Direction Transfer Direction (Initial value: 0, R/W)
Specifies the DMA data transfer direction.
1: Transfers data from the G-Bus to the PCI Bus.
0: Transfers data from the PCI Bus to the G-Bus.
0
CHRST
Reserved
Channel Reset
Transfer Size (Initial value: 0, R/W)
Specifies the transfer type (see detailed description in 10.3.9.4).
00: 1 DWORD (32-bit) with no overlap of G-Bus and PCI operation.
01: up to 16 DWORDs with no overlap of G-Bus and PCI operation.
10: Reserved
11: Reserved
Channel Reset (Initial value: 1, R/W)
Resets the DMA channel.
This bit must be cleared by the software in advance so the channel can start the data
transfer.
1: All logic and State Machines are reset.
0: The channel becomes valid.
Figure 10.4.65 PDMAC Configuration Register (2/2)
10-94
Chapter 10 PCI Controller
10.4.66 PDMAC Status Register (PDMSTATUS)
31
29
28
24
Reserved
15
14
13
12
23
Bits
R
0
Mnemonic
R
0
20
19
16
FIFOCNT
FIFOWP
FIFORP
R
00000
R
0x0
R
0x0
11
10
9
8
7
Reserved PCIACT ERRINT DONEINT CHNEN XFRACT ACCMP NCCMP NTCMP
R
0
0xD214
R
0
R
0
R
0
R/W1C R/W1C
0
0
Field Name
6
5
Reserved
4
3
2
: Type
: Initial value
1
0
PCIPERR PCISERR PCIERR CHNERR DATAERR
R/W1C R/W1C R/W1C R/W1C R/W1C : Type
0
0
0
0
0
: Initial value
Description
31:29

28:24
FIFOCNT
FIFO Hold Count
FIFO Valid Entry Count (Initial value: 00000, R)
This field indicates the number of DWORDs written to the FIFO but not yet read. This
is a diagnostic function.

23:20
FIFOWP
FIFO Write
Pointer
FIFO Write Pointer (Initial value: 0x0, R)
This field indicates the next Write position in the FIFO. This is a diagnostic function.
19:16
FIFORP
FIFO Read
Pointer
FIFO Read Pointer (Initial value: 0x0, R)
This field indicates the next Read position in the FIFO. This is a dianostic function.
Reserved
15

Reserved
14
PCIACT
PCI Active
PCI Active (Initial value: 0, R)
1: The PDMAC is requesting to transfer data to or from the PCI bus of it is currently
transferring data.
0: There is no active request or transfer from the PDMAC for the PCI bus.

13
ERRINT
Error Interrupt
Status
Error Interrupt Status (Initial value: 0, R)
Indicates whether to signal an error interrupt.
1: An error interrupt request exists.
0: No error interrupt request exists.
12
DONEINT
Normal Transfer
Complete
Interrupt Status
Normal Transfer Complete Interrupt Status (Initial value: 0, R)
Indicates whether a Normal Transfer Complete Interrupt is signaled.
This bit becomes “1” when either the Normal Chain Complete bit (NCCMP) is set and
the Normal Chain Complete Interrupt Enable bit (NCCMPIE) is set, or when the
Normal Transfer Complete bit (NCCMP) is set and the Normal Transfer Complete
Interrupt Enable bit (NDCMPIE) is set.
1: A Normal Transfer Complete Interrupt request exists.
0: No Normal Transfer Complete Interrupt request exists.
11
CHNEN
Chain Enable
Chain Enable (Initial value: 0, R)
This bit is a copy of the Chain Enable bit in the PDMAC Control Register.
10
XFRACT
Transfer Active
Transfer Active (Initial value: 0, R)
This bit is a copy of the Transfer Active bit in the PDMAC Control Register.
9
ACCMP
Abnormal Chain
Completion
Abnormal Chain Complete (Initial value: 0, R)
1: Indicates that the Chain transfer ended in an error state. In other words, this
reflects an OR operation of the PDMAC Status Register bits [4:0].
0: Indicates that no error has occurred in the Chain transfer since the previous error
bit was cleared.
Note: Bits [4:0] of the PDMAC Status Register must be cleared in order to clear this
bit.
8
NCCMP
Normal Chain
Completion
Normal Chain Complete (Initial value: 0, R/W1C)
1: Indicates that the Chain transfer ended in the Normal state.
0: Indicates that Chain transfer has not ended since this bit was previously cleared.
7
NTCMP
Normal Data
Transfer
Complete
Normal Data Transfer Complete (Initial value: 0, R/W1C)
1: Indicates that the data transfer specified by the PDMAC Register ended in the
Normal state.
0: Indicates that data transfer has not ended since this bit was previously cleared.
Figure 10.4.66 PDMAC Status Register (1/2)
10-95
Chapter 10 PCI Controller
Bits
Mnemonic
Field Name
Description
6:5

4
PCIPERR
PCI Parity Error
PCI Parity Error (Initial value: 0, R/W1C)
1: Indicates that there was a parity error on a PCI transaction performed on behalf of
the PDMAC.
0: Indicates that no parity error has been detected on PDMAC PCI transfer since this
bit was cleared.

3
PCISERR
PCI System Error
PCI System Error (Initial value: 0, R/W1C)
1: Indicates that a PCI bus module asserted SERR* during a PCI operation initiated
by the PDMAC.
0: Indicates that SERR* has not been asserted during a PDMAC-initiated PCI cycle
since this bit was last cleared.
2
PCIERR
PCI Fatal Error
PCI Fatal Error (Initial value: 0, R/W1C)
1: Indicates that an error was signaled on the PCI Bus during a PCI operation initiated
by the PDMAC.
0: Indicates that no error has been signaled on the PCI Bus since this bit was
previously cleared.
1
CHNERR
G-Bus Chain
Error
G-Bus Chain Bus Error (Initial value: 0, R/W1C)
1: Indicates that a G-Bus error occurred during the Chain process. DMA transfer
stops.
0: Indicates that no G-Bus error has occurred during the Chain process since this bit
was cleared.
0
DATAERR
G-Bus Data Error
G-Bus Data Bus Error (Initial value: 0, R/W1C)
1: Indicates that a G-Bus error occurred during the data transfer process. DMA
transfer stops.
0: Indicates that no G-Bus error has occurred during the data transfer process since
this bit was cleared.
Reserved
Figure 10.4.66 PDMAC Status Register (2/2)
NCCMPIE
NCCMP
DONEINT
Interrupt Controller
(Interrupt No. 15)
NTCMPIE
NTCMP
PCIPE
ERRIE
ERRINT
ACCMP
PCISE
PCIERR
CHNERR
DATAERR
Figure 10.4.67 PDMAC Interrupt Signaling
10-96
Chapter 10 PCI Controller
10.5 PCI Configuration Space Register
The PCI Configuration Space Register is accessed using PCI Configuration cycles by way of an external
PCI host device only when in the Satellite mode. Table 10.5.1 lists registers contained within the PCI
Configuration Space Register. The registers in the table with a shaded background are those whose values
can be rewritten by software. (See 10.3.13.)
Registers at addresses 0x00 through 0x41 can use the corresponding PCI Controller Control Register to
access from the TX49/H2 core when in the Host mode. Please refer to the explanation of the corresponding
PCI Controller Control registers for more information about these registers. This section only describes the
registers that are accessed from the PCI Configuration Space.
Also, it is possible to read some of the fields in the Status Register and PMCSR register from the Satellite
Mode PCI Status Register.
Please refer to the PCI Bus Specifications for more information on the PCI Configuration Register.
Table 10.5.1 PCI Configuration Space Register
Address
31
16
15
0
Corresponding
Register
00h
Device ID
Vendor ID
PCIID
04h
Status
Command
PCISTATUS
08h
0Ch
Class Code
BIST
Revision ID
Header Type
Latency Timer
Cache Line Size
PCICCREV
PCICFG1
10h
Memory Space 0 Base Address
P2GM0PBASE
14h
Memory Space 1 Base Address
P2GM1PBASE
18h
Memory Space 2 Base Address
P2GM2PBASE
1Ch
I/O Space Base Address
P2GIOPBASE
20h
Reserved

24h
Reserved

28h
Reserved

2Ch
Subsystem ID
30h
34h
40h
Min_Gnt
Reserved
44h-DBh
DCh
E0h
E4h-FFh
Capabilities
Pointer (Cap_Ptr)
Interrupt Pin
Interrupt Line
PCICFG2
Retry Timeout
Value
TRDY Timeout
Value
G2PTOCNT

Reserved
Power Management Capabilities (PMC)
Reserved
Reserved
Next Item Ptr
(Next_Item_Ptr)
Capability ID
(Cap_ID)

Power Management Control/Status
Register (PMCSR)

Reserved
10-97
PCICAPPTR

Reserved
Max_Lat
PCISID

Reserved
38h
3Ch
Subsystem Vendor ID
Reserved

Chapter 10 PCI Controller
10.5.1
Capability ID Register (Cap_ID)
15
8
0xDC
7
0
Reserved
CID
R
0x01
Bits
Mnemonic
15:8

7:0
CID
Field Name
Description

Reserved
Capability ID
Capability ID (Initial value: 0x01, R)
Indicates that a list is the link list of the Power Management Register.
Figure 10.5.1 Capability ID Register
10-98
: Type
: Initial value
Chapter 10 PCI Controller
10.5.2
Next Item Pointer Register (Next_Item_Ptr)
15
8
0xDD
7
0
Reserved
NIP
R
0x00
Bits
Mnemonic
15:8

7:0
NIP
Field Name
Description

Reserved
Next Item Pointer
Next Item Pointer (Initial value: 0x00, R)
This is the Next Item pointer. Indicates the end of a list.
Figure 10.5.2 Next Item Pointer Register
10-99
: Type
: Initial value
Chapter 10 PCI Controller
10.5.3
Power Management Capability Register (PMC)
15
11
PMESPT
10
9
D2SPT D1SPT
R
0x00
R
0
8
6
Reserved
R
0
0xDE
5
DSI
4
R
0
Field Name
R
0
Bits
Mnemonic
15:11
PMESPT
PME Output
Support
PME_ Support (Fixed value: 0x00, R)
On TX4925 the function is not supported.
10
D2SPT
D2 Support
D2_Support (Fixed value: 0, R)
0: Indicates that the D2 state is not supported.
9
D1SPT
D1 Support
D1_Support (Fixed value: 0, R)
0: Indicates that the D1 state is not supported.
8:6

5
DSI
2
0
PMVER
R
0x2
Description

Reserved
DSI
3
Reserved PMECLK
DSI (Fixed value: 0, R)
1: Indicates that Device Specific Initialization is required.
4

3
PMECLK
PME Clock
PME Clock (Fixed value: 0, R)
0: Indicates that the PCI Clock is not required to assert the PME* signal.

2:0
PMVER
Power
Management I/F
Version
Version (Fixed value: 0x2, R)
2: Indicates compliance with “PCI Power Management Interface Specification”
Version 1.1.
Reserved
Figure 10.5.3 Power Management Capability Register
10-100
: Type
: Initial value
Chapter 10 PCI Controller
10.5.4
Power Management Control/Status Register (PMCSR)
15
9
Reserved
PMESTA
R
0
8
0xE0
7
PMEEN
2
Reserved
R
0
Bits
Mnemonic
15
PMESTA
R
00
Field Name
PME Status
14:9

8
PMEEN
7:2

Reserved
1:0
PS
Power State
: Type
: Initial value
Description
PME_Status (Initial value: 0, R)
On TX4925 the function is not supported.

Reserved
PME Enable
0
PS
PME_En (Initial value: 0, R)
On TX4925 the function is not supported.

PowerState (Initial value: 00, R)
Sets the Power Management state.
The Power Management State Change bit (P2GSTATUS.PMSC) of the P2G Status
Register is set when the value of this field is changed. It also becomes possible to
generate a Power State Change Interrupt at this time.
The TX4925 can read the value of this field from the PowerState field
(PCISSTATUS.PS) of the Satellite Mode PCI Status Register.
00b: D0 (no change)
01b: D1 :Reserved
10b: D2 :Reserved
11b: D3hot
Figure 10.5.4 Power Management Control/Status Register
10-101
Chapter 10 PCI Controller
10-102
Chapter 11 Serial I/O Port
11. Serial I/O Port
11.1 Features
The TX4925 asynchronous Serial I/O (SIO) interface has two full duplex UART channels (SIO0 and
SIO1). SIO has the following features.
•
Full duplex transmission (simultaneous transmission and reception)
•
On-chip baud rate generator
•
Modem flow control (CTS/RTS)
•
FIFO
- Transmit FIFO: 8 bits × 8 stages
- Reception FIFO: 13 bits × 16 stages (data: 8 bits, status: 5 bits)
•
Supports DMA transfer
•
Supports multi-controller systems
- Supports Master/Slave operation
11-1
Chapter 11 Serial I/O Port
11.2 Block Diagram
SCLK
SIOCLK
Baud Rate
IMBUSCLK
Baud Rate
Control Register
IM Bus
Receiver
Receive Data
Register
Receive Data
FIFO
Read
Buffer
RTS*
Receiver Shift
Register
RXD
DMA/INT
Control Register
Interrupt I/F
Read
/Write
DMA/INT
Status Register
FIFO Control
Register
Line Control
Register
Status Change
Interrupt Status
Register
Reset*
Request Control
Transmitter
Transmit Data
Register
Transmit Data
FIFO
TEMP
Buffer
CTS*
Transmitter Shift
Register
TX4925
Figure 11.2.1 SIO Internal Block Diagram
11-2
TXD
Chapter 11 Serial I/O Port
11.3 Detailed Explanation
11.3.1
Overview
During reception, serial data that are input as an RXD signal from an external source are converted
into parallel data, then are stored in the Receive FIFO buffer. Parallel data stored in the FIFO buffer are
fetched by either CPU or DMA transfer.
During transmission, parallel data written to the Transmit FIFO buffer by CPU or DMA transfer are
converted into serial data, then are output as a TXD signal.
11.3.2
Data Format
The TX4925 SIO can use the following data formats.
Data Length
: 8/7 bits
Stop Bit
: 1/2 bits
Parity Bit
: Yes/No
Parity Format
: Even/Odd
Start Bit
: Fixed to 1 bit
Figure 11.3.1 illustrates the data frame when making each setting.
11-3
Chapter 11 Serial I/O Port
8-bit Data
Transfer Direction
1
2
3
4
5
6
7
8
9
10
11
12
bit0
bit1
bit2
bit3
bit4
bit5
bit6
bit7
Parity
stop
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
bit7
Parity
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
bit7
stop
stop
Start
bit0
bit1
bit2
bit3
bit4
bit5
bit6
bit7
stop
1
2
3
4
5
6
7
8
9
10
11
bit0
bit1
bit2
bit3
bit4
bit5
bit6
Parity
stop
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
Parity
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
stop
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
stop
stop bit2, parity
Start
stop bit1, parity
Start
stop bit2
Start
stop bit1
7-bit Data
12
stop bit2, parity
Start
stop bit1, parity
Start
stop bit2
Start
stop bit1
Start
WUB = Wake Up bit
1: Address (ID) Frame
0: Data Frame
8-bit Data Multi-Control System
1
2
3
4
5
6
7
8
9
10
11
12
bit0
bit1
bit2
bit3
bit4
bit5
bit6
bit7
WUB
stop
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
bit7
WUB
stop
2
3
4
5
6
7
8
9
10
11
bit0
bit1
bit2
bit3
bit4
bit5
bit6
WUB
stop
stop
bit0
bit1
bit2
bit3
bit4
bit5
bit6
WUB
stop
stop bit2
Start
stop bit1
Start
7-bit Data Multi-Control System
1
stop bit2
Start
stop bit1
Start
Figure 11.3.1 Data Frame Configuration
11-4
12
Chapter 11 Serial I/O Port
11.3.3
Serial Clock Generator
Generates the Serial Clock (SIOCLK). SIOCLK determines the serial transfer rate and has a
frequency that is 16× the baud rate. One of the following can be selected as the source for the Serial
Clock (SIOCLK).
•
Internal System Clock (IMBUSCLKF)
•
External Clock Input (SCLK)
•
Baud rate generator circuit output
The IMBUSCLKF frequency can be selected from frequencies that are 1/5 the frequency of the CPU
clock. The maximum frequency tolerance of the external clock input (SCLK) is 45% the frequency of
IMBUSCLKF. For example, if IMBUSCLKF = 40 MHz, then set SCLK to 18 MHz or less.
The baud rate generator is a circuit that divides these clock signals according to the following
formula.
Baud Rate =
fc
Prescalar × Divisor ×16
•
fc: Clock frequency of IMBUSCLKF or an external clock input (SCLK)
•
Prescalar Value: 2, 8, 32, 128
•
Divide Value: 1, 2, 3,…255
Table 11.3.1 shows example settings of divide values relative to representative baud rates.
1/2
T0
T2
1/8
IMBUSCLKFF
fc
1/32
1/1 − 1/255
T4
SIOCLK
T6
SCLK
1/128
Prescalar
Selector
Divider
Select CLK
SIBGR. BCLK
Baud Rate
Divide value
SIBGR. BRD
Selector
Selector
Select SIOCLK
SILCR. SCS [1]
Baud Rate Generator
Select SIOCLK
SILCR. SCS [0]
Figure 11.3.2 Baud Rate Generator and SIOCLK Generator
It is possible to correctly receive data if the error of the baud rate set by this controller is within 3.12
% of the target baud rate (communication baud rate).
11-5
Chapter 11 Serial I/O Port
Table 11.3.1 Example Divide Value Settings (and error [%] from target baud rate value)
fc [MHz]
IMBUS
CLKF
kbps
40
Prescalar Value (SIBGR.BLCK) and Divide Value (SIBGR.BRD)
2
8
32
0.11
178 (−0.25 %)
0.15
130 (−0.16 %)
0.30
65 (0.16 %)
0.60
1.20
2.40
14.40
87 (−0.22 %)
22 (−1.36 %)
19.20
65 (0.16 %)
16 (1.73 %)
28.80
43 (0.94 %)
11 (−1.36 %)
38.40
33 (−1.36 %)
57.60
22 (−1.36 %)
16 (1.73 %)
0.11
164 (−0.22%)
0.15
120 (0.00%)
0.30
60 (0.00%)
0.60
1.20
2.40
4.80
SCLK
7.3728
16 (1.73 %)
16 (1.73 %)
33 (−1.36 %)
11 (−1.36 %)
65 (0.16 %)
65 (0.16 %)
130 (0.16 %)
115.20
33 (−1.36 %)
33 (−1.36 %)
9.60
76.80
130 (0.16 %)
130 (−0.16 %)
4.80
36.864
128
120 (0.00%)
30 (0.00%)
60 (0.00%)
15 (0.00%)
120 (0.00%)
30 (0.00%)
80 (0.00%)
15 (0.00%)
9.60
120 (0.00%)
60 (0.00%)
14.40
80 (0.00%)
40 (0.00%)
19.20
60 (0.00%)
30 (0.00%)
28.80
40 (0.00%)
20 (0.00%)
38.40
30 (0.00%)
57.60
20 (0.00%)
76.80
15 (0.00%)
115.20
10 (0.00%)
5 (0.00%)
5 (0.00%)
0.11
131 (−0.07 %)
33 (−0.83 %)
0.15
96 (0.00 %)
24 (0.00 %)
0.30
48 (0.00 %)
12 (0.00 %)
0.60
96 (0.00 %)
24 (0.00 %)
6 (0.00 %)
1.20
48 (0.00 %)
12 (0.00 %)
3 (0.00 %)
2.40
96 (0.00 %)
24 (0.00 %)
6 (0.00 %)
4.80
48 (0.00 %)
12 (0.00 %)
3 (0.00 %)
9.60
24 (0.00 %)
6 (0.00 %)
14.40
16 (0.00 %)
4 (0.00 %)
19.20
12 (0.00 %)
3 (0.00 %)
28.80
8 (0.00 %)
2 (0.00 %)
38.40
6 (0.00 %)
57.60
4 (0.00 %)
76.80
3 (0.00 %)
115.20
2 (0.00 %)
1 (0.00 %)
11-6
1 (0.00 %)
Chapter 11 Serial I/O Port
11.3.4
Data Reception
When the Serial Data Reception Disable bit (RSDE) of the Flow Control Register (SIFLCRn) is set
to “0”, reception operation starts after the RXD signal start bit is detected. Start bits are detected when
the RXD signal transitions from the High state to the Low state. Therefore, the RXD signal is not
interpreted as a start bit if it is Low when the Serial Data Reception Disable bit is set to “0”.
The received data are stored in the Receive FIFO. The Reception Data Full bit (RDIS) of the
DMA/Interrupt Status Register (SIDISRn) is set if the byte count of the stored reception data exceeds
the value set by the Receive FIFO Request Trigger Level field (RDIL) of the FIFO Control Register
(SIFCRn).
An interrupt is signaled when the Reception Data Interrupt Enable bit (RIE) of the DMA/Interrupt
Control Register (SIDICRn) is set. The received data can be read from the Receive FIFO Data Register
(SIRFIFOn).
In addition, DMA transfer is initiated when the Reception Data DMA Enable bit (RDE) of the
DMA/Interrupt Control Register (SIDICRn) is set.
11.3.5
Data Transmission
Data stored in the Transmission Data FIFO are transmitted when the Serial Data Transmission
Disable bit (TSDE) of the Flow Control Register (SIFLCRn) is set to “0”.
If the available space in the Transmit FIFO is greater than the byte count set by the Transmit FIFO
Request Trigger Level (TDIL) of the Control Register (SIFCRn), the transmission data empty bit
(TDIS) of the DMA/Interrupt Status Register (SIDISRn) is set.
An interrupt is signaled when the Transmission Data Interrupt Enable bit (TIE) of the DMA/Interrupt
Control Register (SIDICRn) is set.
In addition, DMA transfer is initiated when the Transmission Data DMA Enable bit (TDE) of the
DMA/Interrupt Control Register (SIDICRn) is set.
11.3.6
DMA Transfer
The DMA Request Control Register (DRQCTR)of the DMA Request Select field (DMAREQ[3:0])
can be used to allocate DMA channels for each reception and transmission channel in the following
manner.
SIO Channel 1 Reception
SIO Channel 1 Transmission
SIO Channel 0 Reception
SIO Channel 0 Transmission
DMA Channel 0
DMA Channel 1
DMA Channel 2
DMA Channel 3
Set the DMA Channel Control Register of the DMA Controller as described below.
DMA Request Polarity
DMA Acknowledge Polarity
Request Detection
Transfer Size
Transfer Address Mode
Low Active
Low Active
Level Detection
1 Byte
Dual
11-7
DMCCRn.ACKPOL = 0
DMCCRn.REQPOL = 0
DMCCRn.EGREQ = 0
DMCCRn.XFSZ = 000b
DMCCRn.SNGAD = 0
Chapter 11 Serial I/O Port
In the case of transmission channels, the address of the Transmit FIFO Register (SITFIFOn) is set in
the DMAC Destination Address Register (DMDARn). In the case of reception channels, the address of
the Receive FIFO Register (SIRFIFOn) is set in the DMAC Source Address Register (DMSARn).
Please set the addresses specified in “11.4.8 Transmit FIFO Register” and “11.4.9 Receive FIFO
Register” since the set address differs depending on the Endian mode.
11.3.7
Flow Control
SIO supports hardware flow control that uses the RTS*/CTS* signal.
The CTS* (Clear to Send) input signal indicates that data can be received from the reception side
when it is Low. Setting the Transmission Enable Select bit (TES) of the Flow Control Register
(SIFLCRn) makes transmission flow control that uses the CTS* signal more effective.
It is also possible to generate status change interrupts by changing the state of the CTS* signal. The
conditions in which interrupts are generated can be selected by the CTSS Active Condition field of the
DMA/Interrupt Control Register (SIDICRn).
Setting the RTS* (Request to Send) output signal to High requests the transmission side to pause
transmission. Transmission resumes when the reception side becomes ready and the RTS* signal is set
to Low.
Setting the Reception Enable Select bit (RCS) of the flow Control Register (SIFLCRn) makes
reception flow control that uses the RTS* signal more effective. The RTS* signal pin status becomes
High when data of the byte count set by the RTS Active Trigger Level field (RTSTL) of the Flow
Control Register (SIFLCRn) accumulates in the Receive FIFO. The RTS* signal can also be made High
by setting the RTS Software Control bit (RTSSC) of the Flow Control Register (SIFLCRn). Setting this
bit requests the transmission side to pause transmission.
11.3.8
Reception Data Status
Status data such as the following is also stored in the Receive FIFO.
•
Overrun error
An overrun error is generated if all 16-stage Receive FIFO buffers become full and more data is
transferred to the Reception Read buffer. When this occurs, the Overrun Status bit is set by the last
stage of the Receive FIFO.
•
Parity error
A parity error is generated when a parity error is detected in the reception data.
•
Framing error
A framing error is generated when “0” is detected at the first stop bit of the reception data.
•
Break reception
A break is detected when a framing error occurs in the reception data and all data in a single
frame are “0”. When this occurs, 2 frames (2 Bytes) of 0x00 data are stored in the Receive FIFO.
11-8
Chapter 11 Serial I/O Port
The Reception Error Interrupt bit (SIDISR.ERI) of the DMA/Interrupt Status Register (SIDISRn) is
set when one of the following errors is detected: an overrun error, a parity error, or a framing error. An
interrupt is signaled if the Reception Error Interrupt Enable bit of the DMA/Interrupt Control Register
(SIDICRn) is set.
The Receive Break bit (RBRKD) and the Receiving Break bit (RBRKD) of the Status Change
Interrupt Status Register (SISCISR) is set when a break is detected. The Receive Break bit (RBRKD)
remains set until it is cleared by the software. The Receiving Break bit (RBRKD) is automatically
cleared when a frame is received that is not a break.
The status of the next reception data to be read is set to the Overrun Error bit (UOER), Parity Error
bit (UPER), Framing Error bit (UFER), and the Receive Break bit (RBRKD). Each of these statuses is
updated when reception data is read from the Receive FIFO Register (SIRFIFOn).
During DMA transfer, an error is signaled and DMA transfer stops with error data remaining in the
Receive FIFO if either an error (Framing Error, Parity Error, or Overrun Error) or a Reception time out
(TOUT) is detected. If a Reception Error occurs during DMA transfer, use the Receive FIFO Reset bit
(RFRST) of the FIFO Control Register (SIFCRn) to clear the Receive FIFO. However, a software reset
will be required if a reception overrun error has occurred. Refer to “11.3.10 Software Reset” for more
information.
11.3.9
Reception Time Out
A Reception time out is detected and the Reception Time Out bit (TOUT) of the DMA/Interrupt
Status Register (SIDISR) is set under the following conditions.
•
Non-DMA transfer mode (SIDICRn.RDE = 0):
When at least 1 Byte of reception data exists in the Receive FIFO and the data reception time for
the 2 frames (2 Bytes) after the last reception has elapsed
•
DMA transfer mode (SIDICRn.RDE = 1):
When the data reception time for the 2 frames (2 Bytes) after the last reception has elapsed
regardless of whether reception data exists in the Receive FIFO
11.3.10 Software Reset
It is necessary to reset the FIFO and perform a software reset in the following situations.
(1) After transmission data is set in FIFO, etc., transmission started but stopped before its completion
(2) An overrun occurred during data reception
Software reset is performed by setting the Software Reset bit (SWRST) of the FIFO Control Register
(SIFCR). This bit automatically returns to “0” after initialization is complete. This bit must be set again
since all SIO registers are initialized by software resets.
11-9
Chapter 11 Serial I/O Port
11.3.11 Error Detection/Interrupt Signaling
An interrupt is signaled if an error or an interrupt cause is detected, the corresponding status bit is set
and the corresponding Interrupt Enable bit is set.
Figure 11.3.3 shows the relationship between the status bit for each interrupt cause and each interrupt
enable bit. Please refer to the explanation for each status bit for more information about each interrupt
cause.
Transmission DMA Acknowledge
DMAC
“0” Write
R
Transmission DMA Request
SIDICR.TDE
Transmission Data Empty
SIDSR.TDIS
SIDICR.TIE
SISCISR.OERS
SIDICR.STIE[5]
Overrun Error
R
“0” Write
SISCISR.CTSS
SIDICR.STIE[4]
CTS Pin
CTS Status
S
SIDICR.CTSAC
SISCISR.RBRKD
SIDISR.STIS
During Break Reception
SIDICR.STIE[3]
SISCISR.TRDY
SIDICR.STIE[2]
R
“0” Write
Transmission Data Empty
SISCISR.TXALS
SIDICR.STIE[1]
Transmission Complete
SISCISR.UBRKD
Break Detected
SIDICR.STIE[0]
R
“0” Write
Frame Error
SIDISR.ERI
Parity Error
To IRC
SIDICR.SPIE
R
“0” Write
SIDISR.TOUT
Reception Time Out
R
“0” Write
SIDICR.RIE
SIDISR.RDIS
Reception DMA Acknowledge
DMAC
Transmission DMA Acknowledge
Reception Data Full
SIDICR.RDE
“0” Write
R
Figure 11.3.3 Relationship Between Interrupt Status Bits and Interrupt Signals
11-10
Chapter 11 Serial I/O Port
11.3.12 Multi-Controller System
The Multi-Controller System consists of one Master Controller, and multiple Slave Controllers as
shown below in Figure 11.3.4.
In the case of the Multi-Controller System, the Master Controller transmits an address (ID) frame to
all Slave Controllers, then transmits and receives data with the selected Slave Controller. Slave
Controllers that were not selected will ignore this data.
Data frames whose data frame Wake Up bits (WUB) are “1” are handled as address (ID) frames. Data
frames whose Wake Up bit (WUB) is “0” are handled as data frames.
Master
TXD
RXD
RXD
TXD
Slave #1
RXD
TXD
Slave #2
RXD
TXD
Slave #3
Figure 11.3.4 Example Configuration of Multi-Controller System
The data transfer procedure for the Multi-Controller System is as follows.
(1) The Master and Slave Controllers set the Mode field (UMODE) of the Line Control Register
(SILCR) to “10” or “11” to set the Multi-Controller System mode. Also, the Slave Controller sets
the open drain enable bit (UODE) of the Line Control Register (SILCR), setting the TXD output
signal to open drain output.
(2) The Slave Controller sets the Reception Wake Up bit (RWUB) of the Line Control Register
(SILCR), making it possible to receive address (ID) frames from the Master Controller.
(3) The Master Controller sets the Transmission Wake Up bit (TWUB) of the Line Control Register
(SILCR), and transmits the address (ID) of the selected Slave Controller. This causes the address
(ID) frame to be transmitted. The Reception after Address Transmission Wake Up bit (RWUB) is
cleared, enabling reception of data frames.
(4) Since the Reception Wake Up bit (RWUB) is set, the Slave Controller generates an interrupt to the
CPU by receiving an address (ID) frame. The CPU compares its own address (ID) and the received
data together. If they match, the Reception Wake Up bit (RWUB) is cleared, making data frame
reception possible.
(5) The Master Controller and the selected Slave Controller clear the Transmission Wake Up bit
(TWUB) of the Line Control Register (SILCR), then set the mode that transmits data frames.
(6) Transmit/Receive data between the Master Controller and the selected Slave Controller. Then,
Slave Controllers that were not selected ignore data frames since the Reception Wake Up bit
(RWUB) is still set.
11-11
Chapter 11 Serial I/O Port
11.4 Registers
With the exception of DMA access to the Transmit FIFO Register or the Receive FIFO Register, please
use Word access when accessing register in the Serial I/O Port.
Table 11.4.1 SIO Registers
Reference
Offset Address
Mnemonic
Register Name
SIO0 (Channel 0)
11.4.1
0xF300
SILCR0
Line Control Register 0
11.4.2
0xF304
SIDICR0
DMA/Interrupt Control Register 0
11.4.3
0xF308
SIDISR0
DMA/Interrupt Status Register 0
11.4.4
0xF30C
SISCISR0
Status Change Interrupt Status Register 0
11.4.5
0xF310
SIFCR0
FIFO Control Register 0
11.4.6
0xF314
SIFLCR0
Flow Control Register 0
11.4.7
0xF318
SIBGR0
Baud Rate Control Register 0
11.4.8
0xF31C
SITFIFO0
Transmit FIFO Register 0
11.4.9
0xF320
SIRFIFO0
Receive FIFO Register 0
11.4.1
0xF400
SILCR1
Line Control Register 1
11.4.2
0xF404
SIDICR1
DMA/Interrupt Control Register 1
11.4.3
0xF408
SIDISR1
DMA/Interrupt Status Register 1
11.4.4
0xF40C
SISCISR1
Status Change Interrupt Status Register 1
11.4.5
0xF410
SIFCR1
FIFO Control Register 1
11.4.6
0xF414
SIFLCR1
Flow Control Register 1
11.4.7
0xF418
SIBGR1
Baud Rate Control Register 1
11.4.8
0xF41C
SITFIFO1
Transmit FIFO Register 1
11.4.9
0xF420
SIRFIFO1
Receive FIFO Register 1
SIO1 (Channel 1)
11-12
Chapter 11 Serial I/O Port
11.4.1
Line Control Register 0 (SILCR0)
Line Control Register 1 (SILCR1)
0xF300 (Ch. 0)
0xF400 (Ch. 1)
These registers specify the format of asynchronous transmission/reception data.
31
16
0
: Type
: Initial value
15
14
13
RWUB TWUB UODE
R/W
0
Bits
R/W
1
12
7
0
5
4
3
2
UEPS UPEN USBL
SCS
R/W
0
Mnemonic
6
R/W
10
Field Name
R/W
0
R/W
0
R/W
0
1
0
UMODE
R/W
00
: Type
: Initial value
Description
31:16

15
RWUB
Receive Wake
Up Bit
Wake Up Bit for Receive (Initial value: 0, R/W)
When in the Multi-Controller System mode, this field selects whether to receive
address (ID) frames whose Wake Up bits (WUB) are “1” or to receive data frames
whose Wake Up bits (WUB) are “0”. This value is undefined when not in the MultiController System mode.
0: Receive data frames.
1: Receive address (ID) frames.

14
TWUB
Transmit Wake
Up Bit
Wake Up Bit for Transmit (Initial value: 1, R/W)
When in the Multi-Controller System mode, this field specifies the Wake Up bit (WUB).
This value is undefined when not in the Multi-Controller System mode.
0: Data frame transfer (WUB = 0)
1: Address (ID) frame transfer (WUB = 1)
13
UODE
Open Drain
Enable
TXD Open Drain Enable (Initial value: 0, R/W)
This field selects the output mode of the TXD signal. When in the Multi-Controller
System mode, the Slave Controller must set the TXD signal to Open Drain.
0: Totem pole output
1: Open drain output
Reserved
12:7

6:5
SCS
Clock Select
SIO Clock Select (Initial value: 10, R/W)
This field selects the serial transfer clock. The clock frequency that is the serial
transfer clock divided by 16 becomes the baud rate (bps).
00: Internal clock (IMBUSCLKF)
01: Baud rate generator output that divided IMBUSCLKF
10: External clock (SCLK)
11: Baud rate generator output that divided SCLK

4
UEPS
Even Parity
Select
UART Even Parity Select (Initial value: 0, R/W)
This field selects the parity mode.
0: Odd parity
1: Even parity
3
UPEN
Parity Check
Enable
UART Parity Enable (Initial value: 0, R/W)
This field selects whether to perform the parity check.
0: Disable the parity check
1: Enable the parity check
2
USBL
Stop Bit Length
UART Stop Bit Length (Initial value: 0, R/W)
This field specifies the stop bit length.
0: 1 bit
1: 2 bits
1:0
UMODE
Mode
UART Mode (Initial value: 00, R/W)
This field sets the data frame mode.
00: 8-bit data length
01: 7-bit data length
10: Multi-Controller 8-bit data length
11: Multi-Controller 7-bit data length
Reserved
Figure 11.4.1 Line Control Register
11-13
Chapter 11 Serial I/O Port
11.4.2
DMA/Interrupt Control Register 0 (SIDICR0)
DMA/Interrupt Control Register 1 (SIDICR1)
0xF304 (Ch. 0)
0xF404 (Ch. 1)
These registers use either DMA or interrupts to execute the Host Interface.
31
16
0
: Type
: Initial value
15
TDE
14
RDE
13
TIE
12
RIE
11
SPIE
10
9
CTSAC
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
00
8
6
5
0
0
STIE
R/W
000000
Field Name
: Type
: Initial value
Bits
Mnemonic
31:16

Description
15
TDE
Transmit DMA
Transfer Enable
Transmit DMA Enable (Initial value: 0, R/W)
This field sets whether to use DMA in the method for writing transmission data to
the Transmit FIFO.
0: Do not use DMA.
1: Use DMA.
14
RDE
Receive DMA
Transfer Enable
Receive DMA Enable (Initial value: 0, R/W)
This field sets whether to use DMA in the method for reading reception data from
the Receive FIFO.
0: Do not use DMA.
1: Use DMA.
13
TIE
Transmit Data
Empty Interrupt
Enable
Transmit Data Empty Interrupt Enable (Initial value: 0, R/W)
When there is open space in the Transmit FIFO, this field sets whether to signal an
interrupt. Set “0” when in the DMA Transmit mode (TDE = 1).
0: Do not signal an interrupt when there is open space in the Transmit FIFO.
1: Signal an interrupt when there is open space in the Transmit FIFO.
12
RIE
Reception Data
Full Interrupt
Enable
Receive Data Full Interrupt Enable (Initial value: 0, R/W)
This field sets whether to signal interrupts when reception data is full
(SIDISRn.RDIS = 1) or a reception time out (SIDISRn.TOUT = 1) occurs. Set to “0”
when in the DMA Receive mode (RDE = 1).
0: Do not signal interrupts when reception data is full/reception time out occurred.
1: Signal interrupts when reception data is full/reception time out occurred.
11
SPIE
Reception Error
Interrupt Enable
Receive Data Error Interrupt Enable (Initial value: 0, R/W)
This field sets whether to signal interrupts when a reception error (Frame Error,
Parity Error, Overrun Error) occurs (SIDISR.ERI = 1).
0: Do not signal reception error interrupts.
1: Signal reception error interrupts.
10:9
CTSAC
CTSS Active
Condition
CTSS Active Condition (Initial value: 00, R/W)
This field specifies status change interrupt request conditions using the CTS Status
(CTSS) of the Status Change Interrupt Status Register.
00: Do not detect CTS signal changes.
01: Rising edge of the CTS pin
10: Falling edge of the CTS pin
11: Both edges of the CTS pin
8:6


Reserved

Reserved
Figure 11.4.2 DMA/Interrupt Control Register (1/2)
11-14
Chapter 11 Serial I/O Port
Bits
Mnemonic
5:0
STIE
Field Name
Status Change
Interrupt Enable
Description
Status Change Interrupt Enable (Initial value: 000000, R/W)
This field sets the set conditions of the Status Change bit (STIS) of the
DMA/Interrupt Status Register (SIDISR). The condition is selected depending on
which bit of the Status Change Interrupt Status Register (SISCISR) is set. (Multiple
selections are possible.)
An SIO interrupt is asserted when STIC is “1”.
000000: Do not detect status changes.
1*****: Set “1” to STIS when the Overrun bit (OERS) is “1”.
*1****: Set “1” to STIS when a change occurs in a condition set by the CTSS
Active Condition field (CTSAC) in the CTS Status bit (CTSS).
**1***: Set “1” to STIS when the Break bit (RBRKD) becomes “1”.
***1**: Set “1” to STIS when the Transmit Data Empty bit (TRDY) becomes “1”.
****1*: Set “1” to STIS when the Transmission Complete bit (TXALS) becomes “1”.
*****1: Set “1” to STIS when the Break Detection bit (UBRKD) becomes “1”.
Figure 11.4.2 DMA/Interrupt Control Register (2/2)
11-15
Chapter 11 Serial I/O Port
11.4.3
DMA/Interrupt Status Register 0 (SIDISR0)
DMA/Interrupt Status Register 1 (SIDISR1)
0xF308 (Ch. 0)
0xF408 (Ch. 1)
These registers indicate the DMA or interrupt status information.
31
16
0
: Type
: Initial value
15
14
13
12
11
UBRK UVALID UFER UPER UOER
R
0
R
1
R
0
Bits
Mnemonic
31:16

15
UBRK
14
UVALID
13
R
0
R
0
10
ERI
9
TOUT
8
TDIS
7
RDIS
6
STIS
5
0
4
R
00000
R/W0C R/W0C R/W0C R/W0C R/W0C
0
0
1
0
Field Name
0
RFDN
0
: Type
: Initial value
Description

Reserved
Receive Break
UART Break (Initial value: 0, R)
This field indicates the break reception status of the next data in the Receive FIFO to
be read. Reading the Receive FIFO Register (SIRFIFO) updates the status.
0: No breaks
1: Detect breaks
Receive FIFO
Available Status
UART Available Data (Initial value: 1, R)
This field indicates whether or not data exists in the Receive FIFO (SIRFIFO).
0: Data exists in the Receive FIFO.
1: No data exists in the Receive FIFO.
UFER
Frame Error
UART Frame Error (Initial value: 0, R)
This field indicates the frame error status of the next data in the Receive FIFO to be
read. Reading the Receive FIFO Register (SIRFIFO) updates the status.
0: There are no frame errors.
1: There are frame errors.
12
UPER
Parity Error
UART Parity Error (Initial value: 0, R)
This field indicates the parity error status of the next data in the Receive FIFO to be
read. Reading the Receive FIFO Register (SIRFIFO) updates the status.
0: There are no parity errors.
1: There are parity errors.
11
UOER
Overrun Error
UART Overrun Error (Initial value: 0, R)
This register indicates the overrun status of the next data in the Receive FIFO to be
read. Reading the Receive FIFO Register (SIRFIFO) updates the status.
0: There are no overrun errors.
1: There are overrun errors.
10
ERI
Reception Error
Interrupt
Receive Data Error Interrupt (Initial value: 0, R/W0C)
This bit is immediately set to “1” when a reception error (Frame Error, Parity Error, or
Overrun Error) is detected.
9
TOUT
Reception Time
Out
Time Out (Initial value: 0, R/W0C)
This bit is set to “1” when a reception time out occurs.
8
TDIS
Transmission
Data Empty
Transmit DMA/Interrupt Status (Initial value: 1, R/W0C)
This bit is set when available space of the amount set by the Transmit FIFO Request
Trigger Level (TDIL) of the FIFO Control Register (SIFCR) exists in the Transmit
FIFO.
7
RDIS
Reception Data
Full
Receive DMA/Interrupt Status (Initial value: 0, R/W0C)
This bit is set when valid data of the amount set by the Receive FIFO Request
Trigger Level (RDIL) of the FIFO Control register (SIFCR) is stored in the Receive
FIFO.
Figure 11.4.3 DMA/Interrupt Status Register (1/2)
11-16
Chapter 11 Serial I/O Port
Bits
Mnemonic
6
STIS
5

4:0
RFDN
Field Name
Status Change
Description
Status Change Interrupt Status (Initial value: 0, R/W0C)
This bit is set when at least one of the interrupt statuses selected by the Status
Change Interrupt Condition field (STIE) of the DMA/Interrupt Control Register
(SIDICR) becomes “1”.

Reserved
Reception Data
Stage Status
Receive FIFO Data Number (Initial value: 00000, R)
This field indicates how many stages of reception data remain in the Receive FIFO
(0 – 16 stages).
Figure 11.4.3 DMA/Interrupt Status Register (2/2)
11-17
Chapter 11 Serial I/O Port
11.4.4
Status Change Interrupt Status Register 0 (SISCISR0)
Status Change Interrupt Status Register 1 (SISCISR1)
0xF30C (Ch. 0)
0xF40C (Ch. 1)
31
16
0
: Type
: Initial value
15
6
0
5
4
3
2
1
0
OERS CTSS RBRKD TRDY TXALS UBRKD
R/W0C
0
Bits
Mnemonic
Field Name
R
0
R
0
R
1
R
1
RW0C : Type
0
: Initial value
Description
31:6

5
OERS
Overrun Error
Overrun Error Status (Initial value: 0, R/W0C)
This bit is immediately set to “1” when an overrun error is detected. This bit is cleared
when a “0” is written.

4
CTSS
CTS Status
CTS Terminal Status (Initial value: 0, R)
This field indicates the status of the CTS signal.
1: The CTS signal is High.
0: The CTS signal is Low.
3
RBRKD
Receiving Break
Receive Break (Initial value: 0, R)
This bit is set when a break is detected. This bit is automatically cleared when a
frame that is not a break is received.
1: Current status is Break.
0: Current status is not Break.
2
TRDY
Transmission
Data Empty
Transmit Ready (Initial value: 1, R)
This bit is set to “1” if at least one stage in the Transmit FIFO is free.
1
TXALS
Transmission
Complete
Transmit All Sent (Initial value: 1, R)
This bit is set to “1” if the Transmit FIFO and all transmission shift registers are
empty.
0
UBRKD
Break Detected
UART Break Detect (Initial value: 0, R/W0C)
This bit is set when a break is detected. Once set, this bit remains set until cleared by
writing a “0” to it.
Reserved
Figure 11.4.4 Status Change Interrupt Status Register
11-18
Chapter 11 Serial I/O Port
11.4.5
FIFO Control Register 0 (SIFCR0)
FIFO Control Register 1 (SIFCR1)
0xF310 (Ch. 0)
0xF410 (Ch. 1)
These registers set control of the Transmit/Receive FIFO buffer.
31
16
0
: Type
: Initial value
15
14
9
0
SWRST
7
RDIL
R/W
0
Bits
8
6
5
4
0
R/W
00
Mnemonic
31:16

15
SWRST
14:9

8:7
RDIL
6:5

4:3
TDIL
2
Field Name
3
TDIL
R/W
00
2
1
0
TFRST RFRST FRSTE
R/W
0
R/W
0
R/W : Type
0
: Initial value
Description

Reserved
Software Reset
Software Reset (Initial value: 0, R/W)
This field performs SIO resets except for the FIFOs. Setting this bit to “1” initiates the
reset. Set registers are also initialized. This bit returns to “0” when initialization is
complete.
0: Normal operation
1: SIO software reset

Reserved
Receive FIFO
Request Trigger
Level
Receive FIFO DMA/Interrupt Trigger Level (Initial value: 00, R/W)
This register sets the level for reception data transfer from the Receive FIFO.
00: 1 Byte
01: 4 Bytes
10: 8 Bytes
11: 12 Bytes

Reserved
Transmit FIFO
Request Trigger
Level
Transmit FIFO DMA/Interrupt Trigger Level (Initial value: 00, R/W)
This register sets the level for transmission data transfer to the Transmit FIFO.
00: 1 Byte
01: 4 Bytes
10: 8 Bytes
11: Setting disabled
TFRST
Transmit FIFO
Reset
Transmit FIFO Reset (Initial value: 0, R/W)
The Transmit FIFO buffer is reset when this bit is set. This bit is valid when the FIFO
Reset Enable bit (FRSTE) is set. Cancel reset by using the software to clear this bit.
0: During operation
1: Reset Transmit FIFO
1
RFRST
Receive FIFO
Reset
Receive FIFO Reset (Initial value: 0, R/W)
The Receive FIFO buffer is reset when this bit is set. This bit is valid when the FIFO
Reset Enable bit (FRSTE) is set. Cancel reset by using the software to clear this bit.
0: During operation
1: Reset Receive FIFO
0
FRSTE
FIFO Reset
Enable
FIFO Reset Enable (Initial value: 0, R/W)
This field is the Reset Enable for the Transmit/Receive FIFO buffer. The FIFO is reset
by combining the Transmit FIFO Reset bit (TFRST) and Receive FIFO Reset bit
(RRST).
0: During operation
1: Reset Enable
Figure 11.4.5 FIFO Control Register
11-19
Chapter 11 Serial I/O Port
11.4.6
Flow Control Register 0 (SIFLCR0)
Flow Control Register 1 (SIFLCR1)
0xF314 (Ch. 0)
0xF414 (Ch. 1)
31
16
0
: Type
: Initial value
15
13
0
Bits
12
RCS
11
TES
R/W
0
R/W
0
Mnemonic
10
0
9
8
7
RTSSC RSDE TSDE
R/W
0
R/W
1
6
5
4
0
R/W
1
Field Name
1
RTSTL
R/W
0001
0
TBRK
R/W : Type
0
: Initial value
Description
31:13

12
RCS
RTS Signal
Control Select
RTS Control Select (Initial value: 0, R/W)
This field sets the reception flow control using RTS output signals.
0: Disable flow control using RTS signals.
1: Enable flow control using RTS signals.

11
TES
CTS Signal
Control Select
CTS Control Select (Initial value: 0, R/W)
This field sets the transmission flow control using CTS input signals.
0: Disable flow control using CTS signals.
1: Enable flow control using CTS signals.
10

9
RTSSC
8
7
Reserved

Reserved
RTS Software
Control
RTS Software Control (Initial value: 0, R/W)
This register is used for software control of RTS output signals.
0: Set the RTS signal to Low (can receive data).
1: Sets the RTS signal to High (transmission pause request)
RSDE
Serial Data
Reception
Enable
Receive Serial Data Enable (Initial value: 1, R/W)
This is the Serial Data Enable bit. When this bit is cleared, data reception starts
after the start bit is detected. The RTS signal will not become High even if this bit is
cleared.
0: Enable (can receive data)
1: Disable (halt reception)
TSDE
Serial Data
Transmit Enable
Transmit Serial Data Enable (Initial value: 1, R/W)
This is the Serial Data Transmission Enable bit. When this bit is cleared, data
transmission starts. When set, transmission stops after completing transmission of
the current frame.
0: Enable (can transmit data)
1: Disable (halt transmission)
6:5

4:1
RTSTL
RTS Active
Trigger Level
RTS Trigger Level (Initial value: 0001, R/W)
The RTS hardware control assert level is set by the reception data stage count of
the Receive FIFO.
0000: Disable setting
0001: 1
:
1111: 15

0
TBRK
Break
Transmission
Break Transmit (Initial value: 0, R/W)
Transmits a break. The TXD signal is Low while TBRK is set to “1”.
0: Disable (clear break)
1: Enable (transmit break)
Reserved
Figure 11.4.6 Flow Control Register
11-20
Chapter 11 Serial I/O Port
11.4.7
Baud Rate Control Register 0 (SIBGR0)
Baud Rate Control Register 1 (SIBGR1)
0xF318 (Ch. 0)
0xF418 (Ch. 1)
These registers select the clock that is provided to the baud rate generator and set the divide value.
31
16
0
: Type
: Initial value
15
10
0
Bits
Mnemonic
9
8
7
0
BCLK
BRD
R/W
11
R/W
0xFF
Field Name
: Type
: Initial value
Description
31:10

9:8
BCLK
Baud Rate
Generator Clock
Baud Rate Generator Clock (Initial value: 11, R/W)
This field sets the input clock for the baud rate generator.
00: Select prescalar output T0 (IMBUSCLKF/2)
01: Select prescalar output T2 (IMBUSCLKF/8)
10: Select prescalar output T4 (IMBUSCLKF/32)
11: Select prescalar output T6 (IMBUSCLKF/128)

7:0
BRD
Baud Rate Divide
Value
Baud Rate Divide Value (Initial value: 0xFF, R/W)
This field set divide value BRG of the baud rate generator. This value is expressed
as a binary value.
Reserved
Figure 11.4.7 Baud Rate Control Register
11-21
Chapter 11 Serial I/O Port
11.4.8
Transmit FIFO Register 0 (SITFIFO0) 0xF31C (Ch. 0)
Transmit FIFO Register 1 (SITFIFO1) 0xF41C (Ch. 1)
When using the DMA Controller to perform DMA transmission, set the following addresses in the
Destination Address Register (DMDARn) of the DMA Controller according to the Endian Mode bit
(DMCCRn.LE) setting of the DMA Controller.
•
Little Endian:
0xF31C (Ch.0), 0xF41C (Ch.1)
•
Big Endian:
0xF31F (Ch.0), 0xF41F (Ch.1)
31
16
0
: Type
: Initial value
15
8
7
0
0
TxD
W

Bits
Mnemonic
31:8

7:0
TxD
Field Name
Description

Reserved
Transmission
Data
Transmit Data (Initial value: –, W)
Data written to this register are written to the Transmit FIFO.
Figure 11.4.8 Transmit FIFO Register
11-22
: Type
: Initial value
Chapter 11 Serial I/O Port
11.4.9
Receive FIFO Register 0 (SIRFIFO0) 0xF320 (Ch. 0)
Receive FIFO Register 1 (SIRFIFO1) 0xF420 (Ch. 1)
When using the DMA Controller to perform DMA transmission, set the following addresses in the
Destination Address Register (DMDARn) of the DMA Controller according to the Endian Mode bit
(DMCCRn.LE) setting of the DMA Controller.
•
Little Endian:
0xF320 (Ch.0), 0xF420 (Ch.1)
•
Big Endian:
0xF323 (Ch.0), 0xF423 (Ch.1)
31
16
0
: Type
: Initial value
15
8
7
0
0
RxD
R
Undefined
Bits
Mnemonic
31:8

7:0
RxD
Field Name
Description

Reserved
Reception Data
Receive Data (Initial value: undefined, R)
This field reads reception data from the Receive FIFO.
Reading this register updates the Reception Data Status.
Figure 11.4.9 Receive FIFO Register
11-23
: Type
: Initial value
Chapter 11 Serial I/O Port
11-24
Chapter 12 Timer/Counter
12. Timer/Counter
12.1 Features
The TX4925 has an on-chip 3-channel timer/counter.
•
32-bit Up Counter: 3 Channels
•
Interval Timer Mode (Channel 0, 1, 2)
•
Pulse Generator Mode (Channel 0, 1)
•
Watchdog Timer Mode (Channel 2)
•
Timer Output Signal (TIMER[1:0]) × 2
•
Counter Input Signal (TCLK): × 1
12-1
Chapter 12 Timer/Counter
12.2 Block Diagram
TX4925
IM-Bus I/F Signal
TIMER[0]
Timer-0
Interval Timer Mode
Counter Input Clock
Timer Interrupt 0
IM-Bus I/F Signal
Counter Input Clock
Timer Interrupt 1
Timer-1
Pulse Generator Mode
Interval Timer Mode
IM-Bus I/F Signal
Counter Input Clock
Timer Interrupt 2
Timer-2
Interval Timer Mode
Watchdog Timer Mode
TIMER[1]
TCLK
Selector
NMI*
Internal Reset
Chip Configuration
Register (CCFG.WR)
Figure 12.2.1 Connecting Timer Module Inside the TX4925
IM-Bus
Timer
Register R/W Control Logic
Reset Signal
Clock Signal
Clock
Divider
x1/21/256
Timer Read Register
32-bit Counter
Clock
Select
Compare
Register A
Interval Mode Reg.
Pulse Gen. Mode Reg.
Watchdog Mode Reg.
Clear
Compare
Register B
Comparator (=)
TIMER[1:0]
Timer Control Register
Interrupt
Control Logic
Interrupt Control Register
Timer Interrupt Request
Signal (Internal Signal)
Watchdog Request Signal
(Internal Signal)
Figure 12.2.2 Timer Internal Block Diagram
12-2
Chapter 12 Timer/Counter
12.3 Detailed Explanation
12.3.1
Overview
The TX4925 has an on-chip 3-channel 32-bit timer/counter. Each channel supports the following
modes.
(1) Interval Timer Mode (Timer 0, 1, 2)
This mode periodically generates interrupts.
(2) Pulse Generator Mode (Timer 0, 1)
This is the pulse signal output mode.
(3) Watchdog Timer Mode (Timer 2)
This mode is used to monitor system abnormalities.
12.3.2
Counter Clock
The clock used for counting can be set to a frequency that is 1/2, 1/4, 1/8, 1/16, 1/32, 1/64, 1/128, or
1/256 of the internal clock (IMBUSCLK) frequency, or can be selected from nine counter input signal
(TCLK) types. Divide Register n (TMCCDRn) and the Counter Clock Select bit (TMTCRn.CCS) are
used to select the counter clock. In this situation, IMBUSCLK is the internal clock signal which is the
G-Bus clock divided by 2. See “Chapter 6 Clocks” for more information.
The counter input signal (TCLK) is used by three channels. Using TCLK makes it possible to count
external events. The External Clock Edge bit (TMTCRn.ECES) can be used to select the clock
rising/falling count.
Set the TCLK clock frequency to 45% or less of IMBUSCLK (TCLK = 18 MHz or less when
IMBUSCLK = 40 MHz). The following table shows example count times when using 40 MHz
IMBUSCLK.
Table 12.3.1 Divide Value and Count (IMBUSCLK = 40 MHz)
Divide
Rate
TMCCDRn.
CCD
2
4
8
16
32
64
128
256
000
001
010
011
100
101
110
111
Counter Clock
Frequency (Hz)
Resolution (ns)
50.00
100.00
200.00
400.00
800.00
1600.00
3200.00
6400.00
20.0 M
10.0 M
5.0 M
2.5 M
1.25 M
625.0 K
312.5 K
156.25 K
12-3
Max. Set Time TMCPRAn Value
(sec.)
for 1 sec.
214.75
429.50
858.99
1717.99
3435.97
6871.95
13743.90
27487.79
20000000
10000000
5000000
2500000
1250000
625000
312500
156250
Chapter 12 Timer/Counter
12.3.3
Counter
Each channel has an independent 32-bit counter. Set the Timer Count Enable bit (TMTCRn.TCE) and
the 32-bit counter will start counting.
Clear the Timer Count Enable bit to stop the counter. If the Counter Reset Enable bit
(TMTCRn.CRE) is set, then the counter will be cleared also. The Watchdog Timer Disable bit
(TMWTRM2.WDIS) must be set in order to stop and clear this counter when in the Watch Dog Timer
mode.
Also, reading the Timer Read Register (TMTRR) makes it possible to fetch the counter value.
12.3.4
Interval Timer Mode
The Interval Timer mode is used to periodically generate interrupts. Setting the Timer Mode field
(TMTCRn.TMODE) of the Timer Control Register to “00” sets the timer to the Interval Timer mode.
This mode can be used by all timers.
When the count value matches the value of Compare Register A (TMCPRAn), the Interval Timer
TMCPRA Status bit (TMTISRn.TIIS) of the Timer Interrupt Status Register is set. When the Interval
Timer Interrupt Enable bit (TMITMRn.TIIE) of the Interval Timer Mode Register is set, timer interrupts
occur. When a “0” is written to the Interval Timer TMCPRA Status bit (TMTISRn.TIIS), TIIS is
cleared and timer interrupts stop.
If the Timer Zero Clear Enable bit (TMITMRn.TZCE) is set, the counter is cleared to 0 if the count
value matches the Compare Register A (TMCPRAn) value. Count operation stops when the Timer Zero
Clear Enable bit (TMITMRn.TZCE) is cleared.
The level of the TIMER[1:0] output signal stays in the High level in this mode. Figure 12.3.1 shows
an outline of the count operation and generation of interrupts when in the Interval Timer mode and
Figure 12.3.2 shows the operation when using an external input clock.
12-4
Chapter 12 Timer/Counter
Count Value
TMCPRA Reg.
Compare Value
0x000000
Time
TCE = 0 TCE = 1 TCE = 0 TCE = 1
TCE = 0 TCE = 1
CRE = 1
CRE = 0
CRE = 0
TZCE = 1
TZCE = 0 TZCE = 1
TIIE = 1
TIIE = 0 TIIE = 1
Timer Interrupt*
TIIS = 0
TIIS = 0
TIIS = 0
TIIS = 0
TMODE = 00 (Interval Timer Mode), CCS = 0 (Internal Clock)
Figure 12.3.1 Operation Example of Interval Timer (Using Internal Clock)
Count Value
TMCPRA Reg.
Compare Value
0x000000
TCE = 1
TIIE = 1
Time
TCE = 0 TCE = 1
TIIE = 0
TCLK
Interrupt*
TIIS = 1
TMODE = 00 (Interval Timer Mode), CCS = 0 (External Clock), ECES = 0 (Falling Edge)
CRE = 0 (Counter Reset Disable), TZCE = 1 (Zero Clear Enable)
Figure 12.3.2 Operation Example of the Interval Timer (External Input Clock: Rising Edge Operation)
12-5
Chapter 12 Timer/Counter
12.3.5
Pulse Generator Mode
When in the Pulse Generator mode, use Compare Register A (TMCPRAn) and Compare Register B
(TMCPRBn) to output a particular period and particular duty square wave to the TIMER[n] signal.
Setting the Timer Mode field (TMTCRn.TMODE) of the Timer Control Register to “01” sets the timer
to the Pulse Generator mode. Timer 0 and Timer 1 can be used, but Timer 2 cannot.
The initial state of the TIMER[n] signal can be set by the Flip Flop Default bit (TMPGMRn.FFI) of
the Pulse Generator Mode Register.
The TIMER[n] output signal reverses when the counter value matches the value set in Compare
Register A (TMCPRAn). The TIMER[n] output signal reverse again, clearing the counter when the
counter continues counting and the value set in Compare Register B (TMCPRBn) and the counter value
match. Consequently, a value greater than that in Compare Register A (TMCPRAn) must not be set in
Compare Register B (TMCPRBn).
Interrupts can be generated in the Pulse Generator mode as well. However, this is not standard
practice.
The Pulse Generator TMCPRA Status bit (TMTISRn.TPIAS) of the Timer Interrupt Status Register
is set when the count value matches the value of Compare Register A (TMCPRAn). Timer interrupts are
generated when the TMCPRA Interrupt Enable bit (TMPGMRn.TPIAE) of the Pulse Generator Mode
Register is set.
Similarly, the Pulse Generator TMCPRB Status bit (TMTISRn.TPIBS) of the Timer Interrupt Status
Register is set when the count value matches the value of Compare Register B (TMCPRBn). Timer
interrupts are generated when the TMCPRB Interrupt Enable bit (TMPGMRn.TPIBE) of the Pulse
Generator Mode Register is set.
Count Value
TMCPRBn
Compare Value
TMCPRAn
Compare Value
0x000000
Time
TCE = 1
TCE = 0 TCE = 1
TIMER[n]
TMODE1 = 01 (Pulse Generator Mode), CCS= 0 (Internal Clock)
FFI = 1 (Initial High), CRE = 0 (Counter Reset Disable)
Figure 12.3.3 Operation Example of the Pulse Generator Mode
12-6
Chapter 12 Timer/Counter
12.3.6
Watchdog Timer Mode
The Watchdog Timer mode is used to monitor system anomalies. The software periodically clears the
counter and judges an anomaly to exist if the counter is not cleared within a specified period of time.
Then, either the TX4925 is internally reset or an NMI is signaled to the TX49/H2 core. Set the Timer
mode field (TMTCR2.TMODE) of the Timer Control Register to “10” to set the timer to the Watchdog
Timer mode. This mode can only be used by Timer 2.
Use the Watchdog Reset bit (WR) of the Chip Configuration Register (CCFG) to select whether to
perform an internal reset or signal an NMI. Set this bit to “1” to select Watchdog Reset, or set it to “0”
to select NMI Signaling.
When the timer count reaches the value programmed in Compare Register A (TMCPRA2), the
Watchdog Timer TMCPRA Match Status bit in the Timer Interrupt Status Register (TMTISR2.TWIS) is
set. Either the watchdog timer reset or NMI is issued if the Timer Watchdog Enable bit in the Watchdog
Timer Mode Register (TMWTMR2.TWIE) is set.
When the watchdog timer reset is selected, the Watchdog Reset Status bit in the Chip Configuration
Register (CCFG.WDRST) is set. If the Watchdog Reset External Output bit in the Chip Configuration
Register (CCFG.WDREXEN) is cleared, the entire TX4927 is initialized but the configuration registers.
If the CCFG.WDREXEN bit is set, the WDRST* signal is asserted and remains asserted until the
RESET* signal is asserted.
There are three ways of stopping NMI signaling from being performed.
(1) Clear the Watchdog Timer Interrupt Status bit (TMTISR2.TWIS) of the timer Interrupt Status
Register.
(2) Clear the counter by writing “1” to the Watchdog Timer Clear bit (TMWTMR2.TWC) of the
Watchdog Timer Mode Register.
(3) Clear the Watchdog Timer Interrupt Enable bit (TMWTMR2.TWIE) while the Watchdog Timer
Disable bit (TMWTMR2.WDIS) is still set.
It is possible to stop the counter when in the Watchdog Timer mode by clearing the Timer Counter
Enable bit (TMTCR2.TCE) of the Timer Control Register while the Watchdog Timer Disable bit
(TMWTMR2.WDIS) of the Watchdog Timer Mode Register is set to “1”.
It is also possible to stop the counter by clearing the Counter Clock Divide Cycle Enable bit
(TMTCR2.CCDE) of the Timer Control Register when the internal clock is being used as the counter
clock.
It is not possible to directly write “0” to the Watchdog Timer Disable bit (TMWTMR2.WDIS). There
are two ways to clear this bit.
(1) Clear the Watchdog Timer Interrupt Enable bit (TMWTMR2.WDIS)
(2) Clear the Timer Counter Enable bit (TMTCR2.TCE) of the Timer Control Register
12-7
Chapter 12 Timer/Counter
The level of the TIMER[1:0] output signal when in this mode remains in the default state (Low).
Output is undefined when the mode is changed from the Pulse Generator mode to this mode.
Count Value
TMCPRA2
Compare Value
0x000000
Time
TCE = 1 TCE = 0 TCE = 1
TWC = 1
TWC = 1
TWC = 1
TWIE = 0
TWIE = 0 TWIE = 1
TWIE = 1
TWIS = 1
TWIS = 1 TWIS = 0 TWIS = 1
RESET* or NMI
WDIS = 1
WDIS = 1
WDIS
TMODE = 10 (Watch Dog Timer Mode), CRE = 0 (Counter Reset Disable)
Figure 12.3.4 Operation Example of the Watchdog Timer Mode
12-8
Chapter 12 Timer/Counter
12.4 Registers
Table 12.4.1 Timer Register List
Reference
Offset Address
Bit Width
Register Symbol
Register Name
Time 0 (TMR0)
12.4.1
0xF000
32
TMTCR0
Timer Control Register 0
12.4.2
0xF004
32
TMTISR0
Timer Interrupt Status Register 0
12.4.3
0xF008
32
TMCPRA0
Compare Register A 0
12.4.4
0xF00C
32
TMCPRB0
Compare Register B 0
12.4.5
0xF010
32
TMITMR0
Interval Timer Mode Register 0
12.4.6
0xF020
32
TMCCDR0
Divide Cycle Register 0
12.4.7
0xF030
32
TMPGMR0
Pulse Generator Mode Register 0
12.4.8
0xF040
32
TMWTMR0
(Reserved)
12.4.9
0xF0F0
32
TMTRR0
Timer Read Register 0
Timer 1 (TMR1)
12.4.1
0xF100
32
TMTCR1
Timer Control Register 1
12.4.2
0xF104
32
TMTISR1
Timer Interrupt Status Register 1
12.4.3
0xF108
32
TMCPRA1
Compare Register A 1
12.4.4
0xF10C
32
TMCPRB1
Compare Register B 1
Interval Timer Mode Register 1
12.4.5
0xF110
32
TMITMR1
12.4.6
0xF120
32
TMCCDR1
Divide Cycle Register 1
12.4.7
0xF130
32
TMPGMR1
Pulse Generator Mode Register 1
12.4.8
0xF140
32
TMWTMR1
(Reserved)
12.4.9
0xF1F0
32
TMTRR1
Timer Read Register 1
Timer 2 (TMR2)
12.4.1
0xF200
32
TMTCR2
Timer Control Register 2
12.4.2
0xF204
32
TMTISR2
Timer Interrupt Status Register 2
12.4.3
0xF208
32
TMCPRA2
Compare Register A 2
12.4.4
0xF20C
32
TMCPRB2
(Reserved)
12.4.5
0xF210
32
TMITMR2
Interval Timer Mode Register 2
12.4.6
0xF220
32
TMCCDR2
Divide Cycle Register 2
12.4.7
0xF230
32
TMPGMR2
(Reserved)
12.4.8
0xF240
32
TMWTMR2
Watchdog Timer Mode Register 2
12.4.9
0xF2F0
32
TMTRR2
Timer Read Register 2
12-9
Chapter 12 Timer/Counter
12.4.1
Timer Control Register n (TMTCRn)
TMTCR0
TMTCR1
TMTCR2
0xF000
0xF100
0xF200
31
16
0
: Type
: Initial value
15
8
0
Bits
Mnemonic
7
TCE
6
CCDE
5
CRE
R/W
0
R/W
0
R/W
0
Field Name
4
0
3
ECES
2
CCS
1
0
TMODE
R/W
0
R/W
0
R/W
00
: Type
: Initial value
Description
31:8

7
TCE
Timer Counter
Enable
Timer Count Enable (Initial value: 0, R/W)
This field controls whether the counter runs or stops.
When in the Watchdog mode, counter operation only stops when the Watchdog
Timer Disable bit (TMWTMR2.WDIS) of the Watchdog Timer Mode Register is set.
When the Watchdog Timer Disable bit is cleared, the value of this Timer Count
Enable bit becomes “0”, but the count continues.
0: Stop counter (the counter is also cleared to “0” when CRE = 1)
1: Counter operation

6
CCDE
Counter Clock
Divider Enable
Counter Clock Divide Enable (Initial value: 0, R/W)
This bit enables the divide operation of the internal clock (IMBUSCLK). The counter
stops if this bit is set to “0” when the internal bus clock is in use.
0: Disable
1: Enable
5
CRE
Counter Reset
Enable
Counter Reset Enable (Initial value: 0, R/W)
This bit controls the counter reset when the TCE bit was used to stop the counter.
1: Stop and reset the counter to “0” when the TCE bit is cleared to “0”.
0: Only stop the counter when the TCE bit is cleared to “0”.
Reserved
4

3
ECES
External Clock
Edge Select
External Clock Edge Select (Initial value: 0, R/W)
This bit specifies the counter operation edge when using the counter input signal
(TCLK).
0: Falling edge of the counter input signal (TCLK)
1: Rising edge of the counter input signal (TCLK)

2
CCS
Counter Clock
Select
Counter Clock Select (Initial value: 0, R/W)
This bit specifies the timer clock.
0: Internal clock (IMBUSCLK)
1: External input clock (TCLK)
1:0
TMODE
Timer Mode
Timer Mode (Initial value: 00, R/W)
This bit specifies the timer operation mode.
11: Reserved
10: Watchdog Timer mode (Timer 2), Reserved (Timer 0, 1)
01: Pulse Generator mode (Timer 0, 1), Reserved (Timer 2)
00: Interval Timer mode
Reserved
Figure 12.4.1 Timer Control Register
12-10
Chapter 12 Timer/Counter
12.4.2
Timer Interrupt Status Register n (TMTISRn)
TMTISR0
TMTISR1
TMTISR2
0xF004
0xF104
0xF204
31
16
0
: Type
: Initial value
15
4
0
3
2
1
TWIS TPIBS TPIAS
0
TIIS
R/W0C R/W0C R/W0C R/W0C : Type
0
0
0
0
: Initial value
Bits
Mnemonic
Field Name
Description
31:4

3
TWIS
Watchdog Timer
Status
Watchdog Timer TMCPRA Match Status (Initial value: 0, R/W0C)
(This bit is Reserved in the case of the TMTISR0 Register and the TMTISR1 Register.)
When in the Watchdog Timer mode, this bit is set when the counter value matches
Compare Register 2 (TMCPRA2).
This bit is cleared by writing a “0” to it.
During Read
0: Did not match the Compare Register
1: Matched the Compare Register
During Write
0: Negate interrupt
1: Invalid

2
TPIBS
Pulse Generator
TMCPRB Status
Pulse Generator TMCPRB Match Status (Initial value: 0, R/W0C)
(This bit is Reserved in the case of the TMTISR2 Register.)
When in the Pulse Generator mode, this bit is set when the counter value matches
Compare Register Bn (TMCPRBn).
This bit is cleared by writing a “0” to it.
During Read
0: Did not match the Compare Register
1: Matched the Compare Register
During Write
0: Clear
1: Invalid
1
TPIAS
Pulse Generator
TMCPRA Status
Pulse Generator TMCPRA Match Status (Initial value: 0, R/W0C)
(This bit is Reserved in the case of the TMTISR2 Register.)
When in the Pulse Generator mode, this bit is set when the counter value matches
Compare Register A n (TMCPRAn).
This bit is cleared by writing a “0” to it.
During Read
0: Did not match the Compare Register
1: Matched the Compare Register
During Write
0: Clear
1: Invalid
0
TIIS
Interval Timer
TMCPRA Status
Interval Timer TMCPRA Match Status (Initial value: 0, R/W0C)
When in the Interval Timer mode, this bit is set when the counter value matches
Compare Register A n (TMCPRAn).
This bit is cleared by writing a “0” to it.
During Read
0: Did not match the Compare Register
1: Matched the Compare Register
During Write
0: Clear
1: Invalid
Reserved
Figure 12.4.2 Timer Interrupt Status Register
12-11
Chapter 12 Timer/Counter
12.4.3
Compare Register An (TMCPRAn)
TMCPRA0
TMCPRA1
TMCPRA2
0xF008
0xF108
0xF208
31
16
TCVA
R/W
0xFFFF
: Type
: Initial value
15
0
TCVA
R/W
0xFFFF
Bits
Mnemonic
31:0
TCVA
Field Name
Timer Compare
Register A
: Type
: Initial value
Description
Timer Compare Value A (Initial value: 0xFFFF_FFFF, R/W)
Sets the timer compare value as a 32-bit value. This register can be used in all
modes.
Figure 12.4.3 Compare Register A
12-12
Chapter 12 Timer/Counter
12.4.4
Compare Register Bn (TMCPRBn)
TMCPRB0
TMCPRB1
0xF00C
0xF10C
31
16
TCVB
R/W
0xFFFF
: Type
: Initial value
15
0
TCVB
R/W
0xFFFF
Bits
Mnemonic
31:0
TCVB
Field Name
Timer Compare
Value B
: Type
: Initial value
Description
Timer Compare Value B (Initial value: 0xFFFF_FFFF, R/W)
Sets the timer compare value as a 32-bit value.
This register can only be used when in the Pulse Generator mode. Please set a value
greater than that in Compare Register A.
Figure 12.4.4 Compare Register B
12-13
Chapter 12 Timer/Counter
12.4.5
Interval Timer Mode Register n (TMITMRn)
TMITMR0
TMITMR1
TMITMR2
0xF010
0xF110
0xF210
31
16
0
: Type
: Initial value
15
TIIE
14
1
0
R/W
0
Bits
0
TZCE
R/W
0
Mnemonic
31:16

15
TIIE
14:1

0
TZCE
Field Name
Description

Reserved
Interval Timer
Interrupt Enable
Timer Interval Interrupt Enable (Initial value: 0, R/W)
Sets Interval Timer TMCPRA Interrupt Enable/Disable.
0: Disable (mask)
1: Enable

Reserved
Interval Timer
Clear Enable
Interval Timer Zero Clear Enable (Initial value: 0, R/W)
This bit specifies whether or not to clear the counter to “0” after the count value
matches Compare Register A. Count stops at this value if it is not cleared.
0: Do not clear
1: Clear
Figure 12.4.5 Interval Timer Mode Register
12-14
: Type
: Initial value
Chapter 12 Timer/Counter
12.4.6
Divide Register n (TMCCDRn)
TMCCDR0
TMCCDR1
TMCCDR2
0xF020
0xF120
0xF220
31
16
0
: Type
: Initial value
15
3
0
2
0
CCD
R/W
000
Bits
Mnemonic
31:3

2:0
CCD
Field Name
Description

Reserved
Counter Clock
Divide Value
: Type
: Initial value
Counter Clock Divide (Initial value: 000, R/W)
These bits specify the divide value when using the internal clock (IMBUSCLK) as the
counter input clock source. The binary value n is divided by 2n+1.
000: Divide by 21 (f/2)
001: Divide by 22 (f/4)
010: Divide by 23 (f/8)
011: Divide by 24 (f/16)
100: Divide by 25 (f/32)
101: Divide by 26 (f/64)
110: Divide by 27 (f/128)
111: Divide by 28 (f/256)
Figure 12.4.6 Divide Register
12-15
Chapter 12 Timer/Counter
12.4.7
Pulse Generator Mode Register n (TMPGMRn)
TMPGMR0
TMPGMR1
0xF030
0xF130
31
16
0
: Type
: Initial value
15
14
TPIBE TPIAE
R/W
0
Bits
13
1
0
R/W
0
0
FFI
R/W
0
Mnemonic
Field Name
: Type
: Initial value
Description
31:16

15
TPIBE
TMCPRB
Interrupt Enable
Timer Pulse Generator Interrupt by TMCPRB Enable (Initial value: 0, R/W)
When in the Pulse Generator mode, this bit sets Interrupt Enable/Disable for when
TMCPRB and the counter value match.
0: Mask
1: Do not mask

14
TPIAE
TMCPRA
Interrupt Enable
Timer Pulse Generator Interrupt by TMCPRA Enable (Initial value: 0, R/W)
When in the Pulse Generator mode, this bit sets Interrupt Enable/Disable for when
TMCPRA and the counter value match.
0: Mask
1: Do not mask
13:1

Reserved
0
FFI
Flip Flop Default
Reserved

Initial TIMER Output Level (Initial value: 0, R/W)
This bit specifies the TIMER[n] signal default when in the Pulse Generator mode.
0: Low
1: High
Figure 12.4.7 Pulse Generator Mode Register
12-16
Chapter 12 Timer/Counter
12.4.8
Watchdog Timer Mode Register n (TMWTMRn)
TMWTMR2
0xF240
31
16
0
: Type
: Initial value
15
TWIE
14
8
0
R/W
0
Bits
7
WDIS
6
1
0
R/W1S
0
Mnemonic
31:16

15
TWIE
14:8

7
WDIS
6:1

0
TWC
Field Name
0
TWC
R/W1C : Type
0
: Initial value
Description

Reserved
Watchdog Timer
Signaling Enable
Timer Watchdog Enable (Initial value: 0, R/W)
This bit sets NMI signaling enable/disable either when in the Watchdog Timer mode
or during a reset. This bit cannot be cleared when the Watchdog Timer Disable bit
(WDIS) is “0”.
0: Disable (mask)
1: Enable

Reserved
Watchdog Timer
Disable
Watchdog Timer Disable (Initial value: 0, R/W1S)
Only when this bit is set can the counter be stopped by clearing the Watchdog Timer
Signaling Enable bit (TWIE) or by clearing the Timer Counter Enable bit
(TMTCR2.TCE) of the Timer Control Register.
Writing “0” to this bit is not valid. This bit can be cleared in either of the following
ways.
Clear the Watchdog Timer Interrupt Enable bit (TMWTMR2.TWIE).
Clear the Timer Counter Enable bit (TMTCR2.TCE) of the Timer Control Register.

Reserved
Watchdog Timer
Clear
Watchdog Timer Clear (Initial value: 0, R/W1C)
Setting this bit to “1” clears the counter. Writing “0” to this bit is not valid. This bit is
always read as “0”.
Figure 12.4.8 Watchdog Timer Mode Register
12-17
Chapter 12 Timer/Counter
12.4.9
Timer Read Register n (TMTRRn)
0xF0F0
TMTRR0
TMTRR1
TMTRR2
31
0xF0F0
0xF1F0
0xF2F0
16
TCNT
R
0x0000
: Type
: Initial value
15
0
TCNT
R
0x0000
Bits
Mnemonic
31:0
TCNT
Field Name
Timer Counter
: Type
: Initial value
Description
Timer Counter (Initial value: 0x0000_0000, R)
This Read Only register is a 32-bit counter. Operation when this register is written to
is undefined.
Figure 12.4.9 Timer Read Register 0
12-18
Chapter 13 Parallel I/O Port
13. Parallel I/O Port
13.1 Characteristics
The TX4925 on-chip Parallel I/O port (PIO) is a 16-bit general-purpose parallel port. The input/output
direction and the port type during output (totem pole output/open drain output) can be set for each bit.
13.2 Block Diagram
32
PIO[31:0]
Other Function
From PCFG
IM-Bus
PIO
Input Data Register
32
32
Output Data Register
Direction Control Register
OD Control Register
Figure 13.2.1 Parallel I/O Block Diagram
13-1
Chapter 13 Parallel I/O Port
13.3 Detailed Description
13.3.1
Selecting PIO Pins
All of the 32-bit PIO signals are shared with other functions. The boot configuration signal (TDO)
and pin configuration register (PCFG) determine which functions will be used. See Sections “3.2 Boot
Configuration”, “3.3 Pin Multiplexing” and “5.2.3 Pin Configuration Register” for more information.
13.3.2
General-purpose Parallel Port
The four following registers are used to control the PIO port.
•
PIO Output Data Register (PIODO)
•
PIO Input Data Register (PIODI)
•
PIO Direction Control Register (PIODIR)
•
PIO Open Drain Control Register (PIOOD)
PIO signals can be selected by the PIO Direction Control Register (PIODIR) for each bit as either
input or output.
Signals selected as output signals output the values written into the PIO Data Output Register
(PIODO). The PIO Open Drain Control Register (PIOOD) can select whether each bit is either an open
drain output or a totem pole output.
PIO signal status is indicated by the PIO Data Input Register. This register can be read out at any time
regardless of the pin direction settings.
13.4 Registers
Table 13.4.1 PIO Register Map
Reference
Offset Address
Bit Width
Mnemonic
Register Name
13.4.1
0xF500
32
PIODO
PIO Output Data Register
13.4.2
0xF504
32
PIODI
PIO Input Data Register
13.4.3
0xF508
32
PIODIR
PIO Direction Control Register
13.4.4
0xF50C
32
PIOOD
PIO Open Drain Control Register
13-2
Chapter 13 Parallel I/O Port
13.4.1
PIO Output Data Register (PIODO)
0xF500
31
16
PDO
R/W
0x0000
: Type
: Initial value
15
0
PDO
R/W
0x0000
Bits
Mnemonic
Field Name
31:0
PDO [31:0]
Data Out
: Type
: Initial value
Description
Port Data Output [31:0] (Initial value: 0x0000_0000, R/W)
Data that is output to the PIO pin (PIO [31:0]).
Figure 13.4.1 PIO Output Data Register
13.4.2
PIO Input Data Register (PIODI)
0xF504
31
16
PDI
R
Undefined
: Type
: Initial value
15
0
PDI
R
Undefined
Bits
Mnemonic
Field Name
31:0
PDI [31:0]
Data In
: Type
: Initial value
Description
Port Data Input [31:0] (Initial value: undefined, R)
Data that is input to the PIO pin (PIO [31:0]).
Figure 13.4.2 PIO Input Data Register
13-3
Chapter 13 Parallel I/O Port
13.4.3
PIO Direction Control Register (PIODIR)
0xF508
31
16
PDIR
R/W
0x0000
: Type
: Initial value
15
0
PDIR
R/W
0x0000
Bits
Mnemonic
Field Name
31 :0
PDIR [31:0]
Direction Control
: Type
: Initial value
Description
Port Direction Control [31:0] (Initial value: 0x0000_0000, R/W)
Sets the I/O direction of the PIO pin (PIO [31:0]).
0: Input (Reset)
1: Output
Figure 13.4.3 PIO Direction Control Register
13.4.4
PIO Open Drain Control Register (PIOOD)
0xF50C
31
16
POD
R/W
0x0000
: Type
: Initial value
15
0
POD
R/W
0x0000
Bits
Mnemonic
Field Name
31 :0
POD [31:0]
Open Drain
Control
: Type
: Initial value
Description
Port Open Drain Control [31:0] (Initial value: 0x0000_0000, R/W)
Sets whether to use the PIO pin (PIO [31:0]) as an open drain.
0: Open drain (Reset)
1: Totem pole
Figure 13.4.4 PIO Open Drain Control Register
13-4
Chapter 14 AC-link Controller
14. AC-link Controller
14.1 Features
ACLC, AC-link controller module can be connected to audio and/or modem CODECs described in the
“Audio CODEC ’97 Revision 2.1” (AC’97) defined by Intel and can operate them. Refer to the following
Web site for more information regarding the AC’97 specification.
http://developer.intel.com/ial/scalableplatforms/audio/
Its features are summarized as follows.
•
Up to two CODECs are supported.
•
AC’97 compliant CODEC register access protocol is supported.
•
CODEC register access completion is recognized by polling or interrupt.
•
Recording and playback of 16-bit PCM Left&Right channels are supported.
•
Recording can be selected from PCM L&R or Mic.
•
Playback of 16-bit Surround, Center, and LFE channels is supported.
•
Variable Rate Audio recording is supported.
•
Variable Rate Audio playback is supported.
•
Line 1 and GPIO slots for Modem CODEC are supported.
•
AC-link low-power mode, wake-up, and warm-reset are supported
•
Sample-data I/O via DMA transfer is supported.
14-1
Chapter 14 AC-link Controller
14.2 Configuration
Figure 14.2.1 illustrates the ACLC configuration.
DMAC
IM-bus
aclcimbif
Bus I/F
System-side
(imclk/imreset* )
ACLC
Data I/O Master
Slave Register
Wakeup
Control
Asynchronous Handshake
Slot-data
Transfer
Slot Valid/Req &
Register Access
Bitstream Receive & Transmit
AC-link
Figure 14.2.1 ACLC Module Configuration
14-2
Link-side
(BITCLK/ACRESET* )
Chapter 14 AC-link Controller
14.3 Functional Description
ACLC provides four mechanisms to operate AC’97-compliant CODEC(s):
•
AC-link status control (start-up and low-power mode)
•
CODEC register access
•
Sample-data transmission and reception
•
GPIO operation
This section first describes the CODEC connection, chip configuration, and overall usage-flow. Then AClink start-up sequence and the other mechanisms will be described. Using low-power mode comes last.
14.3.1
CODEC Connection
The ACLC module has two SDIN (named as SDATA_IN in the AC’97 specification) signals and
supports up to two CODECs to be connected. This section shows some system configuration diagrams
for typical usages. Note that the diagrams shown here is intended to provide conceptual understanding
and some components may be necessary on the actual circuit board to ensure proper electrical signals.
The diagrams assume CODECs compliant with the CODEC ID strapping recommendation described in
the section D.5.2 of the AC’97 revision 2.1 specification.
14.3.1.1 Stereo Audio and Optional Modem Connection
ACLC
SYNC
Audio CODEC (CODEC ID=‘00’)
SYNC
CID1
BITCLK
BIT_CLK
CID0
SDOUT
SDATA_OUT
ACRESET*
SDIN0
RESET#
SDATA_IN
SDIN1
SYNC
CID1
BIT_CLK
CID0
SDATA_OUT
GND
RESET#
SDATA_IN
Optional Modem CODEC (CODEC ID=’01’)
Figure 14.3.1 Stereo Audio and Optional Modem Connection Diagram
14-3
Chapter 14 AC-link Controller
14.3.1.2 5.1 Channel Audio Connection
This sample assumes one CODEC with four DACs mapped to stereo front (3&4) and stereo rear
(7&8) slots, and another CODEC with two DACs mapped to center (6) and LFE (9) slots.
ACLC
4 Channel Audio CODEC (CODEC ID=’0’)
SYNC
CID1
BITCLK
BIT_CLK
CID0
SDOUT
SDATA_OUT
SYNC
RESET#
ACRESET*
SDIN0
SDATA_IN
SDIN1
SYNC
CID1
BIT_CLK
CID0
SDATA_OUT
GND
RESET#
SDATA_IN
2 Channel Audio CODEC (CODEC ID=‘3’)
Figure 14.3.2 5.1 Channel Audio Connection Diagram
14.3.2
Pin Configuration
To utilize ACLC, the Select ACLC (SELACLC) bit in Pin Configuration Register (PCFG) must be
set to 1. Refer to the Sections 3.3 and 5.2.3 for the detail of the pin configuration.
14-4
Chapter 14 AC-link Controller
14.3.3
Usage Flow
This section outlines a process flow when using the AC’97 connected to ACLC. Refer to the
subsequent sections for the details of each operation performed in this process flow. The diagrams
below describe the audio playback and recording processes. The modem transmission and reception
can be done in a similar way.
System Software
ACLC and DMAC
AC’97
Enable ENLINK
Deassert ACRESET*
Start BITCLK
Set CODEC Ready
CODECRDY Interrupt
Check AC’97 status
DAC Ready response
Start up AC-link
Register setting such as Volume (*)
Set volume, etc.
Setup DMA buffer
Configure DMAC
Start DMA Channel and
enable transmit-data DMA
Start transmit-data DMA
Start sending data to slot
Start audio playback
Write to DMA buffer and update
DMA descriptor (repeatedly)
DMAC generates Transfer
Completion interrupt (repeatedly)
Stop updating DMA descriptor
DMAC channel goes inactive
DMA underrun error occurs
Check completion status
Stop transmit-data DMA
Disable transmit-data DMA
Stop sending data to slot
Stop audio playback
Dummy write to data register to
clear pending DMA request if any
Stop AC-link
Disable ENLINK
Assert ACRESET*
Stop BITCLK
(*) Register settings such as volume can be made during data playback.
Figure 14.3.3 Audio Playback Process Flow
14-5
Chapter 14 AC-link Controller
System Software
ACLC and DMAC
Enable ENLINK
Deassert ACRESET*
AC’97
Start BITCLK
Set CODEC Ready
CODECRDY Interrupt
Check AC’97 status
Start recording audio
ADC Ready response
Start up AC-link
Register setting such as gain (*)
Set gain, etc.
Clear DMA buffer
Configure DMAC
Start DMA Channel and
enable receive-data DMA
Start receiving data from slot
Start receive-data DMA
Read from DMA buffer and update
DMA descriptor (repeatedly)
DMAC generates Transfer
Completion interrupt (repeatedly)
Send sample data
Stop updating DMA descriptor
DMAC channel goes inactive
DMA overrun error occurs
Check completion status
Receive-data DMA halts
Disable receive-data DMA
Dummy read from data register to
clear pending DMA request if any
Stop AC-link
Disable ENLINK
Assert ACRESET *
Stop BITCLK
(*) Register settings such as gain can be made during data recording
Figure 14.3.4 Audio Recording Process Flow
14-6
Chapter 14 AC-link Controller
14.3.4
AC-link Start Up
Figure 14.3.5 shows the conceptual sequence of AC-link start-up.
The ACLC Control Enable Register’s Enable AC-link bit is used to deassert/assert the ACRESET*
signal to the link side (including AC-link). This bit defaults to ‘0’, so the CPU asserts the ACRESET*
signal when it boots up.
The AC’97 specification requires that the reset assertion period is 1µs or longer. The software is
responsible for controlling the length of this period.
The AC’97 specification also requires that the primary CODEC stops the AC-link clock (BITCLK)
signal during the period from ACRESET* signal assertion to 162.8ns after ACRESET* signal
deassertion. ACLC assumes the primary CODEC meet this requirement.
Deasserting the link-side reset makes the primary CODEC start driving the BITCLK signal. When
the BITCLK signal is provided, ACLC starts the SYNC signal output, which indicates the start of the
AC-link frame, and starts the frame-length counting.
When a CODEC becomes ready to receive access to its own register, the CODEC sets the “CODEC
Ready” bit of the Tag slot. When ACLC detects that this bit has been set, the ACLC Interrupt Status
Register (ACINTSTS)’s CODEC[1:0] Ready (CODEC[1:0]RDY) bit is set. The system software is
able to recognize the readiness of the CODEC(s) by detecting this event by way of either polling or
interrupt.
In case of 5.1 channel audio connection example (Figure 14.3.2), because the secondary CODEC is
connected to the SDIN1 signal of ACLC, the software must watch ACINTSTS.CODEC1RDY bit to
determine the CODEC’s readiness for the register access.
ACRESET*
BITCLK
SYNC
SDIN
ENLINK
CODECRDY
Boot up
Software sets ENLINK bit
ACLC internal clock becomes active
CODEC becomes ready to accept register access
Note: The number of BITCLK cycles relative to other signals is not to scale.
Figure 14.3.5 Cold Reset and CODEC Ready Recognition
14-7
Chapter 14 AC-link Controller
14.3.5
CODEC Register Access
By accessing registers in the CODEC, the system software is able to detect or control the CODEC
state. This section describes how to read and write CODEC registers via ACLC. For details about
AC’97 register set and proper sequence to operate CODEC, refer to the AC’97 specification and target
CODEC datasheet.
It takes several frame periods for a read or write access to complete. Taking this into account, ACLC
is equipped with a function for reporting CODEC register access completion as status-change or
interrupt.
In order to read an AC’97 register, write the access destination CODEC ID and register address in
ACLC CODEC Register Access Register (ACREGACC) with its CODECRD bit set to “1”. After the
ACLC Interrupt Status Register (ACINTSTS)’s REGACC Ready (REGACCRDY) bit is set, the
software is able to get the data returned from the AC’97 by reading the ACREGACC register and issue
another access.
In order to write to an AC’97 register, write the access destination CODEC ID, register address, and
the data in ACLC’s ACREGACC register with ACREGACC.CODECRD bit set to “0”. After the
ACINTSTS.REGACCRDY bit has been set, the software is able to issue another access.
In case of 5.1 channel audio connection example (Figure 14.3.2), because the secondary CODEC has
CODEC ID of ‘3’, the software must write ‘3’ into ACREGACC.CODECID field when it issues
secondary CODEC register access.
14-8
Chapter 14 AC-link Controller
14.3.6
Sample-data Transmission and Reception
This section describes the mechanism for transmission and reception of PCM audio and modem
wave-data. An overview is described first. The DMA (Direct Memory Access) operation, error
detection and recovery procedure follow. A special case using slot activation control is described last.
14.3.6.1 Overview
Figure 14.3.6 and Figure 14.3.7 show conceptual views of the sample-data transmission and
reception mechanisms.
ACLC
Memory
REQ
Latch
DMAC
ACCTLEN
FIFO
ACSLTEN
Linkside
Slot Req
DMAREQ
DMA
Buffer
Read
Write
Data
Data
AC-link
Strobe
Valid Flag
Slot Valid,
Slot Data
Data
Underrun Error
Figure 14.3.6 Sample-data Transmission Mechanism
ACLC
Memory
REQ
Latch
DMAC
ACCTLEN
FIFO
ACSLTEN
DMAREQ
DMA
Buffer
Write
Read
Data
Data
Linkside
AC-link
Slot Valid,
Slot Data
Strobe
Data
Overrun Error
Figure 14.3.7 Sample-data Reception Mechanism
The CODEC requests ACLC to transmit and receive sample-data via ‘slot-request’ and ‘slotvalid’ bit-fields on the SDIN signal of AC-link.
For transmission, ACLC transmits the data with ‘slot-valid’ tag set. For reception, ACLC
captures the slot-data.
Transmission or reception through each stream can be independently activated or deactivated
under control of ACLC Slot Enable Register (ACSLTEN).
ACLC is equipped with a separate FIFO for each data-stream. The data to transmit is
prefetched from memory to FIFO through DMA. The received data is buffered on FIFO and then
stored to memory through DMA. In this stage, each DMA is independently activated or
deactivated under control of ACLC Control Enable Register (ACCTLEN).
14-9
Chapter 14 AC-link Controller
14.3.6.2 DMA Channel Mapping
ACLC uses four DMA request channels. These DMA channels are allocated to four out of
seven data-streams, or slots, on the AC-link frame, according to ACLC DMA Channel Selection
Register (ACDMASEL) setting as shown in Table 14.3.1. The pin configuration register allocates
these DMA channels of ACLC to the DMAC (DMA controller) channels according to DMA
Request Control Register (DRQCTR)’s DMA Request Selection (DMAREQ0-3) bits as described
in section 5.2.8.
Table 14.3.1 DMA Channel Mapping Modes
ACDMASEL
AC-link Slot Number
PCM L&R out (3&4)
0
ACLC ch0
Surround L&R out (7&8)
1
2
3
ACLC ch0
ACLC ch0
ACLC ch0
ACLC ch1
ACLC ch1
ACLC ch1
Center out (6)
ACLC ch2
LFE out (9)
ACLC ch3
PCM L&R in (3&4) or Mic in (6)
ACLC ch1
Modem Line1 out (5)
ACLC ch2
ACLC ch2
Modem Line 1 in (5)
ACLC ch3
ACLC ch3
ACLC ch3
ACLC ch2
14.3.6.3 Sample-data Format
ACLC transmits/receives 16 bits per sample for each data slot shown in Table 14.3.1. The data
resides on the first 16 bits of the 20 bits assigned to each slot on AC-link. Each sample-data
register allows access by word (32-bit) unit only. Therefore the DMA count must be a multiple of
word. Note that the transmit-data DMA count also must be the FIFO depth (refer to Table 14.3.8)
or more for a reason described later.
For audio PCM front and surround streams, every data-word is loaded with a couple of left and
right samples. For audio MIC stream, valid data is loaded in the same field as the left sample
while the other field is filled with ‘0’. For audio center, LFE, and modem line 1 streams, two
consecutive samples are packed into every word.
The data format at the sample-data register is arranged so that the data format on the DMA
buffer follows the rules below.
•
Each sample data is put in the byte order in which the CPU operates (big- or little-endian).
•
Samples are put in the time-sequential order at increasing addresses on memory.
•
For a DMA channel which couples left and right samples, each left sample precedes the
corresponding right sample.
Refer to the sections 14.4.16 and later for the register format.
14-10
Chapter 14 AC-link Controller
Figures below show the format of DMA buffer for each type of DMA channel. #0, #1, …
means the sample’s sequential number for the AC-link slot. Subscript ‘L’ means lower 8-bit of
each sample and subscript ‘H’ means upper 8-bit.
Table 14.3.2 Front and Surround DMA Buffer Format in Little-endian Mode
Address offset
+0
+1
+2
+3
+0
Left#0L
Left#0H
Right#0L
Right#0H
+4
Left#1L
Left#1H
Right#1L
Right#1H
+8
Left#2L
Left#2H
Right#2L
Right#2H
:
:
:
:
:
Table 14.3.3 Center, LFE, and Modem DMA Buffer Format in Little-endian Mode
Address offset
+0
+1
+2
+3
+0
#0L
#0H
#1L
#1H
+4
#2L
#2H
#3L
#3H
+8
#4L
#4H
#5L
#5H
:
:
:
:
:
Table 14.3.4 Mic DMA Buffer Format in Little-endian Mode
Address offset
+0
+1
+2
+3
+0
#0L
#0H
0
0
+4
#1L
#1H
0
0
+8
#2L
#2H
0
0
:
:
:
:
:
Table 14.3.5 Front and Surround DMA Buffer Format in Big-endian Mode
Address offset
+0
+1
+2
+3
+0
Left#0H
Left#0L
Right#0H
Right#0L
+4
Left#1H
Left#1L
Right#1H
Right#1L
+8
Left#2H
Left#2L
Right#2H
Right#2L
:
:
:
:
:
Table 14.3.6 Center, LFE, and Modem DMA Buffer Format in Big-endian Mode
Address offset
+0
+1
+2
+3
+0
#0H
#0L
#1H
#1L
+4
#2H
#2L
#3H
#3L
+8
#4H
#4L
#5H
#5L
:
:
:
:
:
Table 14.3.7 Mic DMA Buffer Format in Big-endian Mode
Address offset
+0
+1
+2
+3
z
#0H
#0L
0
0
+4
#1H
#1L
0
0
+8
#2H
#2L
0
0
:
:
:
:
:
14-11
Chapter 14 AC-link Controller
14.3.6.4 DMA Operation
When ACLC’s REQ latch (refer to Figure 14.3.6 and Figure 14.3.7) needs to read or write
sample-data, it issues a DMA request. When DMAC acknowledges the request by performing
write- or read-access to the ACLC sample-data register, ACLC deasserts the request. Therefore,
the software must properly set up DMAC so that the source or destination points to the
corresponding sample-data register for the DMA channel.
Setup the DMA Channel Control Registers (DMCCRn) in DMAC as follows.
Immediate chain
DMA request polarity
DMA acknowledge polarity
Request sense
Simple chain
Transfer size
Transfer address mode
Enable
Low-active
Low-active
Level-sensitive
Enable
1 word
Dual
DMCCRn.IMMCHN = 1 [Note]
DMCCRn.REQPOL = 0
DMCCRn.ACKPOL = 0
DMCCRn.EGREQ = 0
DMCCRn.SMPCHN = 1
DMCCRn.XFSZ = 010b
DMCCRn.SNGAD = 0
Note: Use this setting when DMA chain operation is utilized
For a transmission channel, assign the address of ACLC Audio PCM
Output/Surround/Center/LFE/Modem Output Register
(ACAUDO/SURR/CENT/LFE/MODODAT) to the DMAC destination address register
(DMDARn). For a reception channel, assign the address of ACLC Audio input/Modem Input
Register (ACAUDI/MODIDAT) to the DMAC source address register (DMSARn).
When any DMA request is pending, the REQ latch will not deasserted the request until the
corresponding sample-data register is accessed. Just unsetting ACLC Control Enable Register
(ACCTLEN)’s DMA Enable (xxxxDMA) bit corresponding to the DMA will not clear the REQ
latch.
The procedure to continuously push or pull the sample-data stream through the chain DMA
operation follows the DMAC specification. Refer to section 8.3.10 for this respect.
14-12
Chapter 14 AC-link Controller
14.3.6.5 Sample-data FIFO
For a transmission stream, as long as ACLC Control Enable Register (ACCTLEN) allows that
transmission and the FIFO has any room to fill data in, the FIFO issues a request via the REQ
latch. On the other side, when a transmission FIFO receives a data-request from the link-side, it
provides data with valid-flag set if it has any valid data. If it has no valid data, it responds with
valid-flag unset and an underrun error bit is set.
At the transmit-data DMA start-up, until the FIFO becomes full, it responds to the link-side
with valid-flag unset, in order to maximize the buffering effect. Therefore, the DMA size must be
the FIFO depth or more.
Table 14.3.8 Transmission FIFO Depth
Data-stream
FIFO Depth (Word)
PCM L&R out
3
Surround L&R out
3
Center out
2
LFE out
2
Modem Line 1 out
1
The link-side drives the slot-valid bit and slot-data on AC-link. When underrun occurs, these
bits are driven to all ‘0’.
For a reception stream, as long as the FIFO has any valid data, the FIFO issues a request via the
REQ latch. On the other side, when ACCTLEN allows that reception and the link-side issues a
data strobe, the FIFO stores the valid data. If the FIFO is full when it receives a data strobe, the
data is discarded and an overrun error bit is set.
14.3.6.6 Error Detection and Recovery
In most usages, since the CODEC continuously requests sample-data transmission and
reception, after DMA is finished, underrun and overrun will occur. The procedure described
below allows the software to determine whether an error has occurred during DMA operation.
The software sets ACLC Control Enable Register (ACCTLEN)’s Error Halt Enable
(xxxxEHLT) bit before it starts a DMA channel. After it starts the DMA channel, it waits until
ACLC Interrupt Status Register (ACINTSTS)’s Underrun or Overrun Error (xxxxERR) bit is set.
When the event is detected, the software checks DMA Channel Control Register (DMCCRn)’s
Transfer Active (XFACT) bit and ACLC DMA Request Status Register (ACDMASTS)’s Request
(xxxxDMA) bit and determines the DMA completion status as follows.
Table 14.3.9 DMA Completion Status Determination
DMCCRn.XFACT
ACDMASTS.xxxxDMA
Completion Status
Inactive
Pending
No Error during DMA
Inactive
Not Pending
Underrun or Overrun
Active
*
Underrun or Overrun
To recover from error, disable and enable the stream via ACCTLEN, and restart the DMA.
14-13
Chapter 14 AC-link Controller
14.3.6.7 Slot Activation Control
In case ACLC is required to begin transmission or reception of multiple streams at the same
time, slot activation control will be useful. To use this feature, the software must deactivate the
relevant streams first, enable ACLC Control Enable Register (ACCTLEN), make sure the
transmission FIFO becomes full by checking ACLC FIFO Status Register (ACFIFOSTS)’s Full
(xxxxFULL) bit, and finally enable ACLC Slot Enable Register (ACSLTEN). This procedure
assures that all the reception streams are activated at a frame and all the transmission streams
begin to respond to the slot-request bits of that frame.
Note that access to ACSLTEN and ACLC Slot Disable Register (ACSLTDIS) needs special
care to synchronize with the link-side. Refer to the register description for detail.
Since operating ACCTLEN register and DMAC without touching ACSLTEN is sufficient for
most usages, the initial ACSLTEN value enables all the transmission and reception through the
slots by default.
14.3.6.8 Variable Rate Limitation
To improve compatibility with existing AC’97 CODECs and controllers on the market, ACLC
combines sample-data for the slots 3 and 4 into one DMA channel, and similarly for the slots 7
and 8. This feature effectively considers that the slot request bit from the CODEC for slot 4 shall
be always same (in tandem) as for slot 3 for each frame, and similarly for the slots 7 and 8. ACLC
also considers that the slot valid bit from the CODEC for slot 4 shall be always same (in tandem)
as for slot 3 for each frame.
14.3.7
GPIO Operation
ACLC supports the slot 12 for the MC’97 (Modem Codec) GPIO.
The slot 12 is shadowed in the ACLC GPI Data Register (ACGPIDAT) and ACLC GPO Data
Register (ACGPODAT) in the following way:
•
ACLC copies the slot 12 input data into the ACGPIDAT register, if the slot 12 input is marked by
the CODEC as valid in the AC-link frame period.
•
ACLC generates the slot 12 output data from the ACGPODAT register and mark it as valid, if the
slot 12 is required from the CODEC in the previous AC-link frame.
This shadowing function is enabled as long as ACSLTEN allows.
The bit 0 of the slot 12 is defined as ‘GPIO_INT’ and can cause ACLC to request an interrupt.
14-14
Chapter 14 AC-link Controller
14.3.8
Interrupt
ACLC generate two kinds of interrupt to the interrupt controller as below.
•
ACLC Interrupt
Logical OR of all the valid bits of ACLC Interrupt Masked Status Register (ACINTMSTS) is
connected. Refer to section 14.4.5.
•
ACLCPME Interrupt
This interrupt shows the wake-up from CODEC in AC-link low-power mode.
Refer to the description for ACLC Control Enable Register (ACCTLEN)’s Wake-up Enable
(WAKEUP) bit in section 14.4.1.
14.3.9
AC-link Low-power Mode
The AC’97 specification makes provision for saving power during system suspension by poweringdown both the controller and CODEC except the minimum circuit to detect modem RING/Caller-ID
event and wake up the system. AC’97 CODEC is required to go into the low-power mode when they
receive a special register-write access. In this mode, the AC-link controller must drive all output signals
to low level to allow the CODEC digital I/O power cut.
ACLC provides ‘AC-link low-power mode’ setting. When this mode is enabled by ACLC Control
Enable Register (ACCTLEN)’s Enable AC-link Low-power Mode (LOWPWR) bit, all the output
signals except the ACRESET* signal to the AC-link are forced to low level.
The AC-link will be reactivated out of the low-power mode when the SYNC signal is driven high for
1 µs or longer by the AC-link controller while the BITCLK signal is inactive. The software is
responsible for controlling the length of this period.
ACLC also provides the ‘wake-up’ function. While this function is enabled by ACCTLEN
Register’s Enable Wake-up (WAKEUP) bit, high-level input at any SDIN[x] signal will force
ACLCPME interrupt assertion.
When ACLCPME interrupt is recognized, the software must disable the low-power mode and assert
warm reset to the AC-link via ACCTLEN Register’s Enable Warm Reset (WRESET) bit. After the
warm reset is deasserted, the CODEC will start providing the BITCLK signal, and then ACLC will
generate the SYNC signal for usual AC-link frames.
Refer to section B.5.1 of AC’97 specification revision 2.1 for the power-down and wake-up sequence
in AC-link power-down mode.
14-15
Chapter 14 AC-link Controller
14.4 Registers
The base address for the ACLC registers is described in section 5.1.7. Only word (32-bit) accesses are
allowed. These registers return to their initial values when the module gets reset by power-on or
configuration-register operation. The ‘Disable AC-link’ operation initializes the ACREGACC, ACGPIDAT,
ACGPODAT, and ACSLTEN registers while keeping the other registers.
Do not access any location which is not mentioned in this section.
All the register bits marked as ‘Reserved’ are reserved. The value of the reserved bit when read is
undefined. When any register is written, write to the reserved bit(s) the same value as the previous value
read.
Table 14.4.1 ACLC Registers
Reference Offset Address
14.4.1
0xF700
Bit Width
32
Mnemonic
ACCTLEN
Register Name
ACLC Control Enable Register
14.4.2
0xF704
32
ACCTLDIS
ACLC Control Disable Register
14.4.3
0xF708
32
ACREGACC
ACLC CODEC Register Access Register
14.4.4
0xF710
32
ACINTSTS
ACLC Interrupt Status Register
14.4.5
0xF714
32
ACINTMSTS
ACLC Interrupt Masked Status Register
14.4.6
0xF718
32
ACINTEN
ACLC Interrupt Enable Register
14.4.7
0xF71C
32
ACINTDIS
ACLC Interrupt Disable Register
14.4.8
0xF720
32
ACSEMAPH
ACLC Semaphore Register
14.4.9
0xF740
32
ACGPIDAT
ACLC GPI Data Register
ACLC GPO Data Register
14.4.10
0xF744
32
ACGPODAT
14.4.11
0xF748
32
ACSLTEN
ACLC Slot Enable Register
14.4.12
0xF74C
32
ACSLTDIS
ACLC Slot Disable Register
14.4.13
0xF750
32
ACFIFOSTS
ACLC FIFO Status Register
14.4.14
0xF780
32
ACDMASTS
ACLC DMA Request Status Register
14.4.15
0xF784
32
ACDMASEL
ACLC DMA Channel Selection Register
14.4.16
0xF7A0
32
ACAUDODAT
ACLC Audio PCM Output Data Register
14.4.16
0xF7A4
32
ACSURRDAT
ACLC Surround Data Register
14.4.17
0xF7A8
32
ACCENTDAT
ACLC Center Data Register
14.4.17
0xF7AC
32
ACLFEDAT
ACLC LFE Data Register
14.4.18
0xF7B0
32
ACAUDIDAT
ACLC Audio PCM Input Data Register
14.4.17
0xF7B8
32
ACMODODAT
ACLC Modem Output Data Register
14.4.19
0xF7BC
32
ACMODIDAT
ACLC Modem Input Data Register
14.4.20
0xF7FC
32
ACREVID
ACLC Revision ID Register
14-16
Chapter 14 AC-link Controller
14.4.1
ACLC Control Enable Register (ACCTLEN)
0xF700
This register is used to check the setting of various ACLC features and to enable them.
31
30
29
28
27
26
25
24
23
22
21
20
Reserved
14
13
12
11
10
9
MODID MODO
AUDID LFEDM CENTD SURR
MA
DMA Reserved MA
A
MA
DMA
R/W1S R/W1S
0
Bits
0
Mnemonic
0

23
MODIEHLT
22
MODOEHLT Enable Modem
Transmit-data
DMA Error Halt
0
20
AUDIEHLT
7
6
Reserved
0
0
5
0
0
0
0
0
4
3
2
1
0
LOW
RDYCLR MICSEL WRESET WAKEUP PWR
W1C
: Initial value
ENLINK
R/W1S R/W1S R/W1S R/W1S R/W1S : Type

0
0
0
0
0
: Initial value
Enable Modem Receive-data DMA Error Halt. (Initial value: 0, R/W1S)
R
0: Indicates that MODIDMA error halt is disabled.
1: Indicates that MODIDMA error halt is enabled.
W1S 0: No effect
1: Enables MODIDMA error halt. When MODIDMA overrun occurs, subsequent
DMA will not be issued.
Enable Modem Transmit-data DMA Error Halt. (Initial value: 0, R/W1S)
R
0: Indicates that MODODMA error halt is disabled.
1: Indicates that MODODMA error halt is enabled.
0: No effect
1: Enables MODODMA error halt. When MODODMA underrun occurs, subsequent
DMA will not be issued.

Reserved
Enable Audio
Receive-data
DMA Error Halt
16

Reserved
Enable Modem
Receive-data
DMA Error Halt
17
Description
W1S

0
Field Name
31:24
21
8
AUDO
DMA
0
R/W1S R/W1S R/W1S R/W1S R/W1S
0
18
R/W1S R/W1S R/W1S R/W1S R/W1S : Type
R/W1S R/W1S
15
19
AUDIE LFEEH CENTE SURRE AUDO
MODIE MODOE
Reserved
HLT
HLT
LT
HLT
HLT
EHLT
HLT
Enable Audio Receive-data DMA Error Halt. (Initial value: 0, R/W1S)
R
W1S
0: Indicates that AUDIDMA error halt is disabled.
1: Indicates that AUDIDMA error halt is enabled.
0: No effect
1: Enables AUDIDMA error halt. When AUDIDMA overrun occurs, subsequent
DMA request will not be issued.
19
LFEEHLT
Enable Audio
LFE
Transmit-data
DMA Error Halt
Enable Audio LFE Transmit-data DMA Error Halt. (Initial value: 0, R/W1S)
R
0: Indicates that LFEDMA error halt is disabled.
1: Indicates that LFEDMA error halt is enabled.
W1S 0: No effect
1: Enables LFEDMA error halt. When LFEDMA underrun occurs, subsequent DMA
request will not be issued.
18
CENTEHLT
Enable Audio
Center
Transmit-data
DMA Error Halt
Enable Audio Center Transmit-data DMA Error Halt. (Initial value: 0, R/W1S)
R
W1S
0: Indicates that CENTDMA error halt is disabled.
1: Indicates that CENTDMA error halt is enabled.
0: No effect
1: Enables CENTDMA error halt. When CENTDMA underrun occurs, subsequent
DMA request will not be issued.
Figure 14.4.1 ACCTLEN Register (1/3)
14-17
Chapter 14 AC-link Controller
Bits
Mnemonic
Field Name
Description
17
SURREHLT
Enable Audio
Surround L&R
Transmit-data
DMA Error Halt
Enable Audio Surround L&R Transmit-data DMA Error Halt. (Initial value: 0, R/W1S)
R
0: Indicates that SURRDMA error halt is disabled.
1: Indicates that SURRDMA error halt is enabled.
W1S 0: No effect
1: Enables SURRDMA error halt. When SURRDMA underrun occurs, subsequent
DMA request will not be issued.
16
AUDOEHLT Enable Audio
PCM L&R
Transmit-data
DMA Error Halt
Enable Audio PCM L&R Transmit-data DMA Error Halt. (Initial value: 0, R/W1S)
R
0: Indicates that AUDODMA error halt is disabled.
1: Indicates that AUDODMA error halt is enabled.
W1S 0: No effect
1: Enables AUDODMA error halt. When AUDODMA underrun occurs, subsequent
DMA request will not be issued.
15
MODIDMA
Enable Modem
Receive-data
DMA
Enable Modem Receive-data DMA. (Initial value: 0, R/W1S)
R
0: Indicates that modem receive-data DMA is disabled.
1: Indicates that modem receive-data DMA is enabled.
W1S 0: No effect
1: Enables modem receive-data DMA.
14
MODODMA
Enable Modem
Transmit-data
DMA
Enable Modem Transmit-data DMA. (Initial value: 0, R/W1S)
R
0: Indicates that modem transmit-data DMA is disabled.
1: Indicates that modem transmit-data DMA is enabled.
W1S 0: No effect
1: Enables modem transmit-data DMA.
[Note: DMA size must be internal FIFO depth or more.]
13

12
AUDIDMA

Reserved
Enable Audio
Receive-data
DMA
Enable Audio Receive-data DMA. (Initial value: 0, R/W1S)
R
W1S
0: Indicates that audio receive-data DMA is disabled.
1: Indicates that audio receive-data DMA is enabled.
0: No effect
1: Enables audio receive-data DMA.
11
LFEDMA
Enable Audio
LFE
Transmit-data
DMA
Enable Audio LFE Transmit-data DMA. (Initial value: 0, R/W1S)
R
0: Indicates that audio LFE transmit-data DMA is disabled.
1: Indicates that audio LFE transmit-data DMA is enabled.
W1S 0: No effect
1: Enables audio LFE transmit-data DMA.
[Note: DMA size must be internal FIFO depth or more.]
10
CENTDMA
Enable Audio
Center
Transmit- data
DMA
Enable Audio Center Transmit-data DMA. (Initial value: 0, R/W1S)
R
0: Indicates that audio Center transmit-data DMA is disabled.
1: Indicates that audio Center transmit-data DMA is enabled.
W1S 0: No effect
1: Enables audio Center transmit-data DMA.
[Note: DMA size must be internal FIFO depth or more.]
9
SURRDMA
Enable Audio
Surround L&R
Transmit-data
DMA
Enable Audio Surround L&R Transmit-data DMA. (Initial value: 0, R/W1S)
R
0: Indicates that audio Surround L&R transmit-data DMA is disabled.
1: Indicates that audio Surround L&R transmit-data DMA is enabled.
W1S 0: No effect
1: Enables audio Surround L&R transmit-data DMA.
[Note: DMA size must be internal FIFO depth or more.]
8
AUDODMA
Enable Audio
PCM L&R
Transmit-data
DMA
Enable Audio PCM L&R Transmit-data DMA. (Initial value: 0, R/W1S)
R
W1S
0: Indicates that audio PCM L&R transmit-data DMA is disabled.
1: Indicates that audio PCM L&R transmit-data DMA is enabled.
0: No effect
1: Enables audio PCM L&R transmit-data DMA.
[Note: DMA size must be internal FIFO depth or more.]
Figure 14.4.1 ACCTLEN Register (2/3)
14-18
Chapter 14 AC-link Controller
Bits
Mnemonic
Field Name
Description
7:6

5
RDYCLR
Clear CODEC
Ready Bit
Clear CODEC Ready Bit (Initial value: 0, W1S)
W1C 0: No effect
1: Clear CODEC[1:0] ready bits
Note: This bit should only be written to reevaluate the CODEC ready status after powerdown command is sent to CODEC.

4
MICSEL
MIC Selection
MIC Selection. (Initial value: 0, R/W1S)
Reserved
R
W1S
0: Indicates that PCM L&R (Slot 3&4) is selected for audio reception.
1: Indicates that MIC (Slot 6) is selected for audio reception.
0: No effect
1: Selects MIC (Slot 6) for audio reception.
3
WRESET
Assert Warm
Reset
2
WAKEUP
Enable Wake-up Enable Wake-up. (Initial value: 0, R/W1S)
R
0: Indicates that wake-up from low-power mode is disabled.
1: Indicates that wake-up from low-power mode is enabled. While any SDIN signal
is driven high, ACLC asserts ACLCPME interrupt request to the interrupt
controller.
W1S 0: No effect
1: Enables wake-up from low-power mode.
Note: Do not enable wake-up during normal operation.
1
LOWPWR
Enable AC-link Low-power Mode. (Initial value: 0, R/W1S)
Enable AC-link
low-power mode
R
0: SYNC and SDOUT signals are not forced to low.
1: SYNC and SDOUT signals are forced to low.
W1S 0: No effect
1: Forces SYNC and SDOUT signals low.
Note: Do not enable AC-link low-power mode during normal operation.
0
ENLINK
Enable AC-link
Assert Warm Reset. (Initial value: 0, R/W1S)
R
0: Indicates that warm reset is not asserted.
1: Indicates that warm reset is asserted.
W1S 0: No effect
1: Asserts warm reset.
Note 1: Do not assert warm reset during normal operation.
Note 2: The software must guarantee the warm reset assertion time meets the AC’97
specification (1.0 µs or more).
Enable AC-link. (Initial value: 0, R/W1S)
R
0: Indicates that the ACRESET* signal to AC-link is asserted.
1: Indicates that the ACRESET* signal to AC-link is not asserted.
W1S 0: No effect
1: Deasserts the ACRESET* signal to AC-link
Note: The software must guarantee the ACRESET* signal assertion time meets the AC’97
specification (1.0 µs or more).
Figure 14.4.1 ACCTLEN Register (3/3)
14-19
Chapter 14 AC-link Controller
14.4.2
ACLC Control Disable Register (ACCTLDIS)
0xF704
This register is used to disable various ACLC features.
31
24
23
Reserved
W1C

15
14
13
12
MODID MODO
AUDID
MA
DMA Reserved MA
W1C

Bits
W1C

W1C

Mnemonic
31:24
—
23
MODIEHLT
22
15
14
18
11
10
9
8
LFED CENTD SURR
MA
MA
DMA
AUDO
DMA
W1C

W1C

W1C

W1C

W1C

W1C

LFEEHLT
CENTEHLT
SURREHLT
17
7
Field Name
5
4
MIC
SEL
Reserved
W1C

W1C

W1C

W1C

3
2
1
W1C : Type
 : Initial value
0
ENLINK
W1C

W1C : Type
 : Initial value
W1C

W1C

Description

Reserved
W1C
W1C
0: No effect
1: Disables MODIDMA error halt. MODIDMA request(s) will continue to be issued
even after MODIDMA overrun occurs.
0: No effect
1: Disables MODODMA error halt. MODODMA request(s) will continue to be
issued even after MODODMA underrun occurs.

Reserved
Disable Audio
Receive-data
DMA Error Halt
Disable Audio Receive-data DMA Error Halt. (Initial value: –, W1C)
Disable Audio
LFE
Transmit-data
DMA Error Halt
Disable Audio LFE Transmit-data DMA Error Halt. (Initial value: –, W1C)
Disable Audio
Center
Transmit-data
DMA Error Halt
Disable Audio Center Transmit-data DMA Error Halt. (Initial value: –, W1C)
Disable Audio
Surround L&R
Transmit-data
DMA Error Halt
Disable Audio Surround L&R Transmit-data DMA Error Halt. (Initial value: –, W1C)
W1C
W1C
W1C
W1C
0: No effect
1: Disables AUDIDMA error halt. AUDIDMA request(s) will continue to be issued
even after AUDIDMA overrun occurs.
0: No effect
1: Disables LFEDMA error halt. LFEDMA request(s) will continue to be issued even
after LFEDMA underrun occurs.
0: No effect
1: Disables CENTDMA error halt. CENTDMA request(s) will continue to be issued
even after CENTDMA underrun occurs.
0: No effect
1: Disables SURRDMA error halt. SURRDMA request(s) will continue to be issued
even after SURRDMA underrun occurs.
AUDOEHLT Disable Audio
PCM L&R
Transmit-data
DMA Error Halt
Disable Audio PCM L&R Transmit-data DMA Error Halt. (Initial value: –, W1C)
MODIDMA
Disable Modem
Receive-data
DMA
Disable Modem Receive-data DMA. (Initial value: –, W1C)
Disable Modem
Transmit-data
DMA
Disable Modem Transmit-data DMA. (Initial value: –, W1C)
MODODMA
16
WRE
LOW
SET WAKEUP PWR
Disable Modem Transmit-data DMA Error Halt. (Initial value: –, W1C)

16
19
MODOEHLT Disable Modem
Transmit-data
DMA Error Halt
AUDIEHLT
17
20
Disable Modem Receive-data DMA Error Halt. (Initial value: –, W1C)
20
18
21
Disable Modem
Receive-data
DMA Error Halt
21
19
W1C

22
MODIE MODO
AUDIE LFEEH CENTE SURRE AUDO
HLT
EHLT Reserved HLT
LT
HLT
HLT
EHLT
W1C
W1C
W1C
0: No effect
1: Disables AUDODMA error halt. AUDODMA request(s) will continue to be issued
even after AUDODMA underrun occurs.
0: No effect
1: Disables modem receive-data DMA.
0: No effect
1: Disables modem transmit-data DMA.
Figure 14.4.2 ACCTLDIS Register (1/2)
14-20
Chapter 14 AC-link Controller
Bits
Mnemonic
13

12
AUDIDMA
11
10
9
8
LFEDMA
CENTDMA
SURRDMA
AUDODMA
7:5

4
MICSEL
Field Name
Description

Reserved
Disable Audio
Receive-data
DMA
Disable Audio Receive-data DMA. (Initial value: –, W1C)
Disable Audio
LFE Transmitdata DMA
Disable Audio LFE Transmit-data DMA. (Initial value: –, W1C)
Disable Audio
Center
Transmit-data
DMA
Disable Audio Center Transmit-data DMA. (Initial value: –, W1C)
Disable Audio
Surround L&R
Transmit-data
DMA
Disable Audio Surround L&R Transmit-data DMA. (Initial value: –, W1C)
Disable Audio
PCM L&R
Transmit-data
DMA
Disable Audio PCM L&R Transmit-data DMA. (Initial value: –, W1C)
W1C
W1C
W1C
W1C
W1C
WRESET
0: No effect
1: Disables audio LFE transmit-data DMA.
0: No effect
1: Disables audio Center transmit-data DMA.
0: No effect
1: Disables audio Surround L&R transmit-data DMA.
0: No effect
1: Disables audio PCM L&R transmit-data DMA.

Reserved
MIC Selection
MIC Selection (Initial value: –, W1C)
W1C
3
0: No effect
1: Disables audio receive-data DMA.
Deassert Warm
Reset
0: No effect
1: Selects PCM L&R (Slot 3&4) for audio reception
Deassert Warm Reset. (Initial value: –, W1C)
W1C
0: No effect
1: Deasserts warm reset.
Note: The software must guarantee the warm reset assertion time meets the AC’97
specification (1.0 µs or more).
2
1
0
WAKEUP
LOWPWR
ENLINK
Disable Wakeup.
Disable Wake-up. (Initial value: –, W1C)
Disable AC-link
Low-power
Mode.
Disable AC-link Low-power Mode. (Initial value: –, W1C)
Disable AC-link
Disable AC-link. (Initial value: –, W1C)
W1C 0: No effect
1: Asserts the ACRESET* signal to AC-link.
Note: The software must guarantee the ACRESET* signal assertion time meets the AC’97
specification (1.0 µs or more).
W1C
W1C
0: No effect
1: Disables wake-up from low-power mode.
0: No effect
1: Releases SYNC and SDOUT signals from low.
Figure 14.4.2 ACCTLDIS Register (2/2)
Clear xxxxDMA bits in ACCTLEN to “0” by using this register to disable transmit/receive-data
DMA and to stop transmission/reception by the AC-link. Note that if these bits are cleared while
output-slot data is flowing in the FIFO, ACLC may output a wrong data as the last sample. This
behavior will not occur if the software waits for data-flow completion by detecting underrun before it
disables the corresponding slot.
14-21
Chapter 14 AC-link Controller
14.4.3
ACLC CODEC Register Access Register (ACREGACC)
0xF708
CODEC registers can be accessed through this register.
31
CODE
CRD
30
26
Reserved
25
24
CODECID
W

23
22
16
REGADR
Reserved
W

R/W
0x00
15
: Type
: Initial value
0
REGDAT
R/W
0x0000
Bits
Mnemonic
31
CODECRD
30:26
—
25:24
CODECID
Field Name
AC’97 register
read access
: Type
: Initial value
Description
AC’97 register read access (Initial value: –, W)
W
0: Indicates a write access.
1: Indicates a read access.

Reserved
AC’97 CODEC
ID
AC’97 CODEC ID (Initial value: –, W)
W
Specifies the CODEC ID of the read/write access destination.
The values “0” through “3” can be specified as the CODEC ID, but the number of
CODECs actually supported depends on the configuration.

23
—
22:16
REGADR
AC’97 register
address
Reserved
AC’97 register address (Initial value: 0x00, R/W)
R
Read address. Valid address can be read after read access is complete.
W
Specifies the read/write access destination address.
15:0
REGDAT
AC’97 register
data
AC’97 register data (Initial value: 0x0000, R/W)
R
W
Read data. Valid data can be read after read access is complete.
Write data.
Figure 14.4.3 ACREGACC
This register must not be read from or written to until access completion is reported through the
ACINTSTS register.
14-22
Chapter 14 AC-link Controller
14.4.4
ACLC Interrupt Status Register (ACINTSTS)
0xF710
This register shows various kinds of AC-link and ACLC status.
31
16
Reserved
: Type
: Initial value
15
14
MODIE MODOE
RR
RR
13
Reserved
R/W1C R/W1C
0
0
Bits
Mnemonic
31:16
—
15
MODIERR
14
MODOERR
13

12
AUDIERR
11
10
9
8
12
LFEERR
CENTERR
SURRERR
AUDOERR
7:6

5
GPIOINT
AUDIE
RR
11
10
LFEERR
9
CENTE SURRE
RR
RR
8
AUDOE
RR
7
6
5
Reserved
GPIOINT
R/W1C R/W1C R/W1C R/W1C R/W1C
0
0
0
0
CRDY
3
2
Reserved
R/W1C R/W1C
0
Field Name
4
REGAC
0
1
1
0
CODEC CODEC
1RDY
0RDY
R
R
0
0
Description
Reserved
—
Modem
Receive-data
DMA Overrun
Modem Receive-data DMA Overrun (Initial value: 0, R/W1C)
Modem
Transmit-data
DMA Underrun
Modem Transmit-data DMA Underrun (Initial value: 0, R/W1C)
R
W1C
R
W1C
1: Indicates that the modem receive-data DMA overran.
This bit is cleared when “1” is written to it.
1: Indicates that the modem transmit-data DMA underran.
This bit is cleared when “1” is written to it.
Reserved
—
Audio
Receive-data
DMA Overrun
Audio Receive-data DMA Overrun (Initial value: 0, R/W1C)
Audio LFE
Transmit-data
DMA Underrun
Audio LFE Transmit-data DMA Underrun (Initial value: 0, R/W1C)
Audio Center
Transmit-data
DMA Underrun
Audio Center Transmit-data DMA Underrun (Initial value: 0, R/W1C)
Audio Surround
L&R
Transmit-data
DMA Underrun
Audio Surround L&R Transmit-data DMA Underrun (Initial value: 0, R/W1C)
R
W1C
R
W1C
R
W1C
R
W1C
1: Indicates that the audio receive-data DMA overran.
This bit is cleared when “1” is written to it.
1: Indicates that the audio LFE transmit-data DMA underran.
This bit is cleared when “1” is written to it.
1: Indicates that the audio center transmit-data DMA underran.
This bit is cleared when “1” is written to it.
1: Indicates that the audio surround L&R transmit-data DMA underran.
This bit is cleared when “1” is written to it.
Audio PCM L&R Audio PCM L&R Transmit-data DMA Underrun (Initial value: 0, R/W1C)
Transmit-data
R
1: Indicates that the audio PCM L&R transmit-data DMA underran.
DMA Underrun
W1C This bit is cleared when “1” is written to it.
Reserved
GPIO Interrupt
—
GPIO Interrupt (Initial value: 0, R/W1C)
R
W1C
1: Indicates that the incoming slot 12 bit[0] is ‘1’ (the modem CODEC GPIO
interrupt).
This bit is cleared if “1” is written to it while the incoming slot 12 bit[0] is ‘0’.
Figure 14.4.4 ACINTSTS Register (1/2)
14-23
: Type
: Initial value
Chapter 14 AC-link Controller
Bits
4
Mnemonic
Field Name
REGACCRDY ACREGACC
Ready
Description
ACREGACC Ready (Initial value: 1, R/W1C)
R
W1C
3:2

1: Indicates that the ACREGACC register is ready to get the value (in case the
previous operation was a read access) and to initiate another R/W access to an
AC’97 register.
The result of reading or writing to the ACREGACC register before the completion
notification is undefined.
This bit is cleared if “1” is written to it.
This bit automatically becomes ‘0’ when the ACREGACC register is written.
Reserved
—
1
CODEC1RDY CODEC1 Ready CODEC1 Ready (Initial value: 0, R)
0
CODEC0RDY CODEC0 Ready CODEC0 Ready (Initial value: 0, R)
R
R
1: Indicates that the CODEC Ready bit of SDIN1 Slot0 is set.
1: Indicates that the CODEC Ready bit of SDIN0 Slot0 is set.
Figure 14.4.4 ACINTSTS Register (2/2)
14-24
Chapter 14 AC-link Controller
14.4.5
ACLC Interrupt Masked Status Register (ACINTMSTS) 0xF714
Every bit in this register is configured as follows:
ACINTMSTS = ACINTSTS & ACINTEN
Bit placement is the same as for the ACINTSTS register. The logical OR of all bits in this register is
used as ACLC interrupt request to the interrupt controller.
14.4.6
ACLC Interrupt Enable Register (ACINTEN)
0xF718
Interrupt request enable (R/W1S). Bit placement is the same as for the ACINTSTS register. Its
initial value is all ‘0’. When a value is written to this register, the bit in the position where “1” was
written is set to “1.”
14.4.7
ACLC Interrupt Disable Register (ACINTDIS)
0xF71C
Interrupt request enable clear (W1C). Bit placement is the same as for the ACINTSTS register.
When a value is written to this register, the ACINTEN register bit in the position where a “1” was
written is cleared to “0.”
14-25
Chapter 14 AC-link Controller
14.4.8
ACLC Semaphore Register (ACSEMAPH)
0xF720
This register is used for mutual exclusion control for resource.
31
16
SEMAPH
RS/WC
0x0000
: Type
: Initial value
15
0
SEMAPH
RS/WC
0x0000
Bits
Mnemonic
Field Name
31:0
SEMAPH
Semaphore flag
: Type
: Initial value
Description
Semaphore flag. (Initial value: 0x0000_0000, RS/WC)
RS
WC
0: Indicates that the semaphore is unlocked. The read operation to this register will
atomically set the bit[0] to lock the semaphore.
1: Indicates that the semaphore is locked.
x: Writing any value to this register clears the bit[0] to release the semaphore.
Figure 14.4.5 ACSEMAPH Register
This register is provided primarily for the mutual exclusion between the audio and modem drivers to
share the common resources of ACLC, such as the ACREGACC register and the link-control bits in the
ACCTLEN/DIS register.
14-26
Chapter 14 AC-link Controller
14.4.9
ACLC GPI Data Register (ACGPIDAT)
0xF740
This register shows GPIO (slot 12) input data.
31
20
Reserved
19
16
GPIDAT
R
0x00000
15
1
GPIDAT
R
0x00000
R
0
Bits
Mnemonic

Field Name
Description
19:1
GPIDAT
GPIO-In data
GPIO-In data (Initial value: 0x0_0000, R)
0
GPIOINT
GPIO Interrupt
Indication
GPIO Interrupt Indication (Initial value: 0, R)

Reserved
R
0
GPIO
INT
31:20
R
: Type
: Initial value
Read data. The incoming slot 12 bits[19:1] are shadowed here.
GPIO Interrupt. The incoming slot 12 bit[0] is shadowed here.
Figure 14.4.6 ACGPIDAT Register
14-27
: Type
: Initial value
Chapter 14 AC-link Controller
14.4.10 ACLC GPO Data Register (ACGPODAT)
0xF744
This register specifies GPIO (slot 12) output data.
31
21
20
Reserved
19
16
WRPEND
GPODAT
R
0
R/W
0x00000
15
1
: Type
: Initial value
0
GPODAT
R/W
0x00000
Bits
Mnemonic
31:20

20
WRPEND
Field Name

Write Pending (Initial value: 0, R)
R
19:1
0
GPODAT

GPIO-Out data

: Type
: Initial value
Description
Reserved
Write Pending
R
0
0: Indicates that the previous write operation is complete and the ACGPODAT
register is ready to be written.
1: Indicates that the previous write operation is not complete and the ACGPODAT
register is not yet ready to be written.
GPIO-Out data (Initial value: 0x0_0000, R/W)
R
W
Reads back the value previously written to this field.
Writes data to the outgoing slot 12 bits[19:1].
R
Reads always ‘0’.
Figure 14.4.7 ACGPODAT Register
Writing a value into this register needs several BITCLK cycles to take effect. The software must
guarantee that no write access be executed until the previous write access takes effect (completes), by
reading the ACGPODAT.WRPEND bit prior to writing this register. If it is set for a long time, the
BITCLK signal on the AC-link is probably inactive for whatever reason.
14-28
Chapter 14 AC-link Controller
14.4.11 ACLC Slot Enable Register (ACSLTEN)
0xF748
This register enables independently the AC-link slot data streams.
31
17
Reserved
16
WRPEND
R
0
15
10
Reserved
9
8
7
GPISLT GPOSLT MODISLT
6
MODO
SLT
5
4
Reserved AUDISLT LFESLT
Bits
Mnemonic
31:17

16
WRPEND

9
GPISLT
Field Name
Write Pending
GPOSLT
Enable GPO
Slot
transmission
MODISLT
Enable Modem
slot reception
MODOSLT
Enable Modem
slot
transmission

1
1
SLT
SLT
1
1
1
: Initial value
0: Indicates that the previous write operation is complete and the ACSLTEN and
ACSLTDIS registers are ready to be accessed.
1: Indicates that the previous write operation is not complete and the ACSLTEN
and ACSLTEDIS registers are not yet ready to be accessed.
—
R
0: Indicates that GPI slot reception is disabled.
1: Indicates that GPI slot reception is enabled.
0: No effect
1: Enables GPI slot reception.
Enable GPO Slot transmission. (Initial value: 1 R/W1S)
R
0: Indicates that GPO slot transmission is disabled.
1: Indicates that GPO slot transmission is enabled.
0: No effect
1: Enables GPO slot transmission.
Enable Modem slot reception. (Initial value: 1 R/W1S)
R
0: Indicates that modem slot reception is disabled.
1: Indicates that modem slot reception is enabled.
0: No effect
1: Enables modem slot reception.
Enable Modem slot transmission. (Initial value: 1 R/W1S)
R
W1S
5
1
Enable GPI slot reception. (Initial value: 1 R/W1S)
W1S
6
SLT
Write Pending (Initial value: 0, R)
W1S
7
0
AUDO
—
Reserved
Enable GPI slot
reception
1
SURR
Description
W1S
8
1
Reserved
R
15:10
1
2
CENT
R/W1S R/W1S R/W1S R/W1S R/W1S : Type
R/W1S R/W1S R/W1S R/W1S
1
3
: Type
: Initial value
0: Indicates that modem slot transmission is disabled.
1: Indicates that modem slot transmission is enabled.
0: No effect
1: Enables modem slot transmission.
Reserved
—
Figure 14.4.8 ACSLTEN Register (1/2)
14-29
Chapter 14 AC-link Controller
Bits
Mnemonic
4
AUDISLT
Field Name
Enable Audio
slot reception
Description
Enable Audio slot reception. (Initial value: 1, R/W1S)
R
W1S
3
LFESLT
Enable Audio
LFE slot
transmission
Enable Audio LFE slot transmission. (Initial value: 1, R/W1S)
R
W1S
2
CENTSLT
Enable Audio
Center slot
transmission
SURRSLT
Enable Audio
Surround L&R
slot
transmission
R
AUDOSLT
Enable Audio
PCM L&R slot
transmission
0: Indicates that audio Center slot transmission is disabled.
1: Indicates that audio Center slot transmission is enabled.
0: No effect
1: Enables audio Center slot transmission.
Enable Audio Surround L&R slot transmission. (Initial value: 1, R/W1S)
R
W1S
0
0: Indicates that audio LFE slot transmission is disabled.
1: Indicates that audio LFE slot transmission is enabled.
0: No effect
1: Enables audio LFE slot transmission.
Enable Audio Center slot transmission. (Initial value: 1, R/W1S)
W1S
1
0: Indicates that audio slot reception is disabled.
1: Indicates that audio slot reception is enabled.
0: No effect
1: Enables audio slot reception.
0: Indicates that audio Surround L&R slot transmission is disabled.
1: Indicates that audio Surround L&R slot transmission is enabled.
0: No effect
1: Enables audio Surround L&R slot transmission.
Enable Audio PCM L&R slot transmission. (Initial value: 1, R/W1S)
R
W1S
0: Indicates that audio PCM L&R Slot transmission is disabled.
1: Indicates that audio PCM L&R Slot transmission is enabled.
0: No effect
1: Enables audio PCM L&R slot transmission.
Figure 14.4.8 ACSLTEN Register (2/2)
Writing a value into this register needs several BITCLK cycles to take effect. The software must
guarantee that no write access be executed until the previous write access takes effect (completes), by
reading the ACSLTEN.WRPEND bit prior to writing this register. If it is set for a long time, the
BITCLK signal on the AC-link is probably inactive for whatever reason.
14-30
Chapter 14 AC-link Controller
14.4.12 ACLC Slot Disable Register (ACSLTDIS)
0xF74C
This register disables independently the AC-link slot data streams.
31
16
Reserved
: Type
: Initial value
15
10
Reserved
9
GPISLT GPOSLT
W1C

Bits
Mnemonic
31:10

9
GPISLT
8
7
6
GPOSLT
MODISLT
MODOSLT
5

4
AUDISLT
3
2
1
0
LFESLT
CENTSLT
SURRSLT
AUDOSLT
8
W1C

7
6
MODI
MODO
SLT
SLT
W1C

W1C

Field Name
5
4
Reserved
AUDI
SLT
W1C

3
LFESLT
W1C

2
1
0
CENT
SURR
AUDO
SLT
SLT
SLT
W1C

W1C

W1C : Type
 : Initial value
Description
Reserved
—
Disable GPI slot
reception
Disable GPI slot reception. (Initial value: –, W1C)
Disable GPO
Slot
transmission
Disable GPO Slot transmission. (Initial value: –, W1C)
Disable Modem
slot reception
Disable Modem slot reception. (Initial value: –, W1C)
Disable Modem
slot
transmission
Disable Modem slot transmission. (Initial value: –, W1C)
W1C
W1C
W1C
W1C
0: No effect
1: Disables GPI slot reception.
0: No effect
1: Disables GPO slot transmission.
0: No effect
1: Disables modem slot reception.
0: No effect
1: Disables modem slot transmission.
Reserved
—
Disable Audio
slot reception
Disable Audio slot reception. (Initial value: –, W1C)
Disable Audio
LFE slot
transmission
Disable Audio LFE slot transmission. (Initial value: –, W1C)
Disable Audio
Center slot
transmission
Disable Audio Center slot transmission. (Initial value: –, W1C)
Disable Audio
Surround L&R
slot
transmission
Disable Audio Surround L&R slot transmission. (Initial value: –, W1C)
Disable Audio
PCM L&R slot
transmission
Disable Audio PCM L&R slot transmission. (Initial value: –, W1C)
W1C
W1C
W1C
W1C
W1C
0: No effect
1: Disables audio slot reception.
0: No effect
1: Disables audio LFE slot transmission.
0: No effect
1: Disables audio Center slot transmission.
0: No effect
1: Disables audio Surround L&R slot transmission.
0: No effect
1: Disables audio PCM L&R slot transmission.
Figure 14.4.9 ACSLTDIS Register
Writing a value into this register needs several BITCLK cycles to take effect. The software must
guarantee that no write access be executed until the previous write access takes effect (completes), by
reading the ACSLTEN.WRPEND bit prior to writing this register. If it is set for a long time, the
BITCLK signal on the AC-link is probably inactive for whatever reason.
14-31
Chapter 14 AC-link Controller
14.4.13 ACLC FIFO Status Register (ACFIFOSTS)
0xF750
This register indicates the AC-link slot data FIFO status.
31
16
Reserved
: Type
: Initial value
15
14
Reserved
MODO
FULL
13
12
Reserved
11
10
9
8
7
6
LFE
CENT
SURR
AUDO
MODI
MODO
FULL
FULL
FULL
FULL
FILL
FILL
R
0
R
0
R
0
R
0
R
0
R
0
R
0
Bits
Mnemonic
31:15

14
Field Name
5
4
Reserved
AUDI
FILL
3
LFEFILL
R
0
R
0
R
Reserved
LFEFULL
Audio LFE
Transmit-data
Full
Audio LFE Transmit-data Full. (Initial value: 0, R)
Audio Center
Transmit-data
Full
Audio Center Transmit-data Full. (Initial value: 0, R)
Audio Surround
L&R
Transmit-data
Full
Audio Surround L&R Transmit-data Full. (Initial value: 0, R)
8
AUDOFULL
7
MODIFILL
6
MODOFILL
5

4
AUDIFILL
3
LFEFILL
FILL
FILL
R
0
R
0
R
0
0: Indicates modem transmit-data FIFO is not full.
1: Indicates modem transmit-data FIFO is full.
Reserved
SURRFULL
FILL
Modem Transmit-data Full. (Initial value: 0, R)
11
9
0
AUDO
—
MODOFULL Modem
Transmit-data
Full
CENTFULL
1
SURR
Description
Reserved
13:12
10
2
CENT
—
R
R
R
0: Indicates audio LFE transmit-data FIFO is not full.
1: Indicates audio LFE transmit-data FIFO is full.
0: Indicates audio Center transmit-data FIFO is not full
1: Indicates audio Center transmit-data FIFO is full.
0: Indicates audio Surround L&R transmit-data FIFO is not full.
1: Indicates audio Surround L&R transmit-data FIFO is full.
Audio PCM L&R Audio PCM L&R Transmit-data Full. (Initial value: 0, R)
Transmit-data
R
0: Indicates audio PCM L&R transmit-data FIFO is not full.
Full
1: Indicates audio PCM L&R transmit-data FIFO is full.
Modem
Receive-data
Filled
Modem Receive-data Filled. (Initial value: 0, R)
Modem
Transmit-data
Filled
Modem Transmit-data Filled. (Initial value: 0, R)
R
R
0: Indicates modem receive-data FIFO is empty.
1: Indicates modem receive-data FIFO is not empty.
0: Indicates modem transmit-data FIFO is empty.
1: Indicates modem transmit-data FIFO is not empty.
Reserved
—
Audio
Receive-data
Filled
Audio Receive-data Filled. (Initial value: 0, R)
Audio LFE
Transmit-data
Filled
Audio LFE Transmit-data Filled. (Initial value: 0, R)
R
R
0: Indicates audio receive-data FIFO is empty.
1: Indicates audio receive-data FIFO is not empty.
0: Indicates audio LFE transmit-data FIFO is empty.
1: Indicates audio LFE transmit-data FIFO is not empty.
Figure 14.4.10 ACFIFOSTS Register (1/2)
14-32
: Type
: Initial value
Chapter 14 AC-link Controller
Bits
Mnemonic
2
CENTFILL
1
0
SURRFILL
AUDOFILL
Field Name
Description
Audio Center
Transmit-data
Filled
Audio Center Transmit-data Filled. (Initial value: 0, R)
Audio Surround
L&R
Transmit-data
Filled
Audio Surround L&R Transmit-data Filled. (Initial value: 0, R)
R
R
0: Indicates audio Center transmit-data FIFO is empty.
1: Indicates audio Center transmit-data FIFO is not empty.
0: Indicates audio Surround L&R transmit-data FIFO is empty.
1: Indicates audio Surround L&R transmit-data FIFO is not empty.
Audio PCM L&R Audio PCM L&R Transmit-data Filled. (Initial value: 0, R)
Transmit-data
R
0: Indicates audio PCM L&R transmit-data FIFO is empty.
Filled
1: Indicates audio PCM L&R transmit-data FIFO is not empty
Figure 14.4.10 ACFIFOSTS Register (2/2)
14-33
Chapter 14 AC-link Controller
14.4.14 ACLC DMA Request Status Register (ACDMASTS)
0xF780
This register indicates the AC-link slot data DMA request status.
31
16
Reserved
: Type
: Initial value
15
8
Reserved
Bits
Mnemonic
31:8

7
MODIREQ
6
MODOREQ
5

4
AUDIREQ
3
2
1
0
LFEREQ
CENTREQ
SURRREQ
AUDOREQ
7
6
MODI
MODO
REQ
REQ
R
0
R
0
Field Name
5
4
Reserved
AUDI
REQ
R
0
3
LFEREQ
R
0
2
1
0
CENT
SURR
AUDO
REQ
REQ
REQ
R
0
R
0
R
0
: Type
: Initial value
Description
Reserved
—
Modem Data
Reception
Request
Modem Data Reception Request (Initial value: 0, R)
Modem Data
Transmission
Request
Modem Data Transmission Request (Initial value: 0, R)
R
R
0: No request is pending.
1: Request is pending.
0: No request is pending.
1: Request is pending.
Reserved
—
Audio Data
Reception
Request
Audio Data Reception Request (Initial value: 0, R)
Audio LFE Data
Transmission
Request
Audio LFE Data Transmission Request (Initial value: 0, R)
Audio Center
Data
Transmission
Request
Audio Center Data Transmission Request (Initial value: 0, R)
Audio Surround
L&R Data
Transmission
Request
Audio Surround L&R Data Transmission Request (Initial value: 0, R)
R
R
R
R
0: No request is pending.
1: Request is pending.
0: No request is pending.
1: Request is pending.
0: No request is pending.
1: Request is pending.
0: No request is pending.
1: Request is pending.
Audio PCM L&R Audio PCM L&R Data Transmission Request (Initial value: 0, R)
Data
R
0: No request is pending.
Transmission
1: Request is pending.
Request
Figure 14.4.11 ACDMASTS Register
This read-only register shows if any DMA request is pending for each data I/O channel. A DMA
request can be pending after the software deactivates the DMAC channel or disables DMA by
ACCTLDIS register bit to complete DMA operation. In this case, write or read the sample data register
(ACAUDODAT and others) to clear the DMA request.
14-34
Chapter 14 AC-link Controller
14.4.15 ACLC DMA Channel Selection Register (ACDMASEL)
0xF784
This register is used to select and check the channel allocation for AC-link slot data DMA.
31
16
Reserved
: Type
: Initial value
15
2
Reserved
1
0
ACDMASEL
R/W
0
Bits
31:2
1:0
Mnemonic

Field Name
Description
Reserved
ACDMASEL DMA Channel
Selection
: Type
: Initial value
—
DMA Channel Selection (Initial value: 0, R/W)
W
ACDMASEL: DMA Channel Selection
0: PCM L&R out, Audio in, and Modem out&in.
1: PCM L&R out, Surround L&R out, and Modem out&in.
2: PCM L&R out, Surround L&R out, Center out, and LFE out.
3: PCM L&R out, Surround L&R out, Center out, and Audio in.
Figure 14.4.12 ACDMASEL Register
This register selects DMA channel mapping mode. The software is recommended to make sure no
DMA request is pending before changing this register value.
14-35
Chapter 14 AC-link Controller
14.4.16 ACLC Surround Data Register (ACAUDODAT)
ACLC Audio PCM Output Data Register (ACSURRDAT)
0xF7A0
0xF7A4
These registers are used to write audio PCM L&R and surround L&R output data.
31
16
DAT1: Sample Right (Little-endian mode) / DAT0: Sample Left (Big-endian mode)
W
: Type
: Initial value
15
0
DAT0: Sample Left (Little-endian mode) / DAT1: Sample Right (Big-endian mode)
W
: Type
: Initial value
Bits
Mnemonic
Field Name
Description
31:16
—
—
W
DAT1: Sample Right
DAT0: Sample Left
15:0
—
—
W
DAT0: Sample Left
Left DAT1: Sample Right
Figure 14.4.13 ACAUDODAT/ACSURRDAT Register
14-36
Chapter 14 AC-link Controller
14.4.17 ACLC Center Data Register (ACCENTDAT)
ACLC LFE Data Register (ACLFEDAT)
ACLC Audio PCM Input Data Register (ACMODODAT)
0xF7A8
0xF7AC
0xF7B8
This registers are used to write audio center, LFE, and modem output data.
31
16
DAT1: Sample data 1 (Little-endian mode) / DAT0: Sample data 0 (Big-endian mode)
W
: Type
: Initial value
15
0
DAT0: Sample data 0 (Little-endian mode) / DAT1: Sample data 1 (Big-endian mode)
W
: Type
: Initial value
Bits
Mnemonic
Field Name
31:16
—
—
W
DAT1: Sample data 1
Description
DAT0: Sample data 0
15:0
—
—
W
DAT0: Sample data 0
DAT1: Sample data 1
Figure 14.4.14 ACCENDAT/ACLFEDAT/ACMODODAT Register
14-37
Chapter 14 AC-link Controller
14.4.18 ACLC Modem Output Data Register (ACAUDIDAT)
0xF7B0
This register is used to read audio PCM L&R input data.
31
16
DAT1: Sample Right or ‘0’ (Little-endian mode) / DAT0: Sample Left or MIC (Big-endian mode)
R
Undefined
: Type
: Initial value
15
0
DAT0: Sample Left or MIC (Little-endian mode) / DAT1: Sample Right or ‘0’ (Big-endian mode)
R
Undefined
: Type
: Initial value
Bits
Mnemonic
Field Name
Description
31:16
—
—
R
DAT1: Sample Right or ‘0’
DAT0: Sample Left or MIC
15:0
—
—
R
DAT0: Sample Left or MIC
DAT1: Sample Right or ‘0’
Figure 14.4.15 ACAUDIDAT Register
14-38
Chapter 14 AC-link Controller
14.4.19 ACLC Modem Input Data Register (ACMODIDAT)
0xF7BC
This register is used to read modem input data.
31
16
DAT1: Sample data 1 (Little-endian mode) / DAT0: Sample data 0 (Big-endian mode)
R
Undefined
: Type
: Initial value
15
0
DAT0: Sample data 0 (Little-endian mode) / DAT1: Sample data 1 (Big-endian mode)
R
Undefined
Field Name
: Type
: Initial value
Bits
Mnemonic
Description
31:16
—
—
R
DAT1: Sample data 1
DAT0: Sample data 0
15:0
—
—
R
DAT0: Sample data 0
DAT1: Sample data 1
Figure 14.4.16 ACMODIDAT Register
14-39
Chapter 14 AC-link Controller
14.4.20 ACLC Revision ID Register (ACREVID)
0xF7FC
This register is used to read ACLC module’s revision ID.
31
16
Reserved
: Type
: Initial value
15
8
7
0
Major Revision
R
0
Bits
R
0
Mnemonic
R
0
R
0
R
0
Minor Revision
R
0
R
1
R
1
R
0
Field Name
R
0
R
0
R
0
R
0
R
0
R
1
R
0
: Type
: Initial value
Description
31:16

Reserved
15:8


R
Major Revision
Contact Toshiba technical staff for an explanation of the revision value.

7:0


R
Minor Revision
Contact Toshiba technical staff for an explanation of the revision value.
Figure 14.4.17 ACREVID Register
This read-only register shows the revision of ACLC module. Note that this number is not related to
the AC’97 specification revision.
14-40
Chapter 15 Interrupt Controller
15. Interrupt Controller
15.1 Characteristics
The TX4925 on-chip Interrupt Controller (IRC) receives interrupt requests from the TX4925 on-chip
peripheral circuitry as well as external interrupt requests then generates interrupt requests to the TX49/H2
processor core.
Also, the Interrupt Controller has a 32-bit flag register that generates interrupt requests to either external
devices or to the TX49/H2 core.
The Interrupt Controller has the following characteristics.
•
Supports interrupts from 21 types of on-chip peripheral circuits and a maximum of 8 external
interrupt signal inputs
•
Sets 8 priority interrupt levels for each interrupt input
•
Can select either edge detection or level detection for each external interrupt when in the interrupt
detection mode
•
As a flag register used for interrupt requests, the Interrupt Controller contains a 32-bit
readable/writeable register and can issue interrupt requests to external devices as well as to the
TX49/H2 core (IRC interrupt).
15-1
Chapter 15 Interrupt Controller
15.2 Block Diagram
TX49/H2 Core
Interrupt Controller
Internal Timer
Interrupt Request
Interrupt
Request
(IP[7:2])
External Interrupt Signal (INT[7:0])
1
0
Detection Circuit
[7]
1
8
[7:2]
[6:2]
Set Interrupt Level
TX49 Write Time Out Error
1
NAND Flash Controller
2
SIO[1:0]
4
DMA[3:0]
1
Non-maskable
Interrupt Request
1
Process Priority
Internal
Interrupt
Signal
PDMAC
Set Interrupt Mask
PCIC
3
TMR[2:0]
1
SPI
TINTDIS
1
RTC
1
ACLC
1
ACLCPME
1
CHI
1
PCIERR
1
PCIPME
1
Internal Interrupt Request
Non-maskable Interrupt Signal (NMI*)
TMR2
Watchdog Timer Interrupt
External Interrupt Request
Flag Register
Polarity Register
PCIC
Mask Register
Interrupt Control Register
Figure 15.2.1 Interrupt Controller Outline
15-2
REQ[1]*
Chapter 15 Interrupt Controller
Interrupt Detection Interrupt Level
IRLVL0-7
Mode IRDM0-1
Interrupt Detection
Enable IRDEN.IDE
Interrupt Mask
Level IRMSK
Detection Circuit
Low
Level
Interrupt
Source
High
Level
Edge
Detector
Edge
Detector
1
Negative
Edge
Encoder
3
Interrupt
Prioritization
Interrupt
Pending
IRPND
Positive
Edge
1
IP[7]
Interrupt
IRCS.FL
5
IP[6:2]
Interrupt Cause
IRCS.CAUSE
3
3
Figure 15.2.2 Internal Block Diagram of Interrupt Controller
15-3
3
Interrupt Level
IRCS.LVL
Chapter 15 Interrupt Controller
15.3 Detailed Explanation
15.3.1
Interrupt Sources
The TX4925 has as interrupt sources interrupts from 21 types of on-chip peripheral circuits and 8
external interrupt signals.
Table 15.3.1 lists the interrupt sources. Signals with the lower interrupt number have the higher
priority. Refer to section “15.3.4 Interrupt Priority Assigning” for the priorities.
Table 15.3.1 Interrupt Sources and Priorities
Priority
Interrupt
Number
High
0
(Reserved)
1
TX49 Write Timeout Error (Internal)
2
INT[0] (External)
3
INT[1] (External)
4
INT[2] (External)
5
INT[3] (External)
6
INT[4] (External)
7
INT[5] (External)
8
INT[6] (External)
Low
Interrupt Source
9
INT[7] (External)
10
(Reserved)
11
NAND Flash Controller (internal)
12
SIO0 (Internal)
13
SIO1 (Internal)
14
DMA0 (Internal)
15
DMA1 (Internal)
16
DMA2 (Internal)
17
DMA3 (Internal)
18
IRC (Internal)
19
PDMAC (Internal)
20
PCIC (Internal)
21
TMR0 (Internal)
22
TMR1 (Internal)
23
TMR2 (Internal)
24
SPI (Internal)
25
RTC (Internal)
26
ACLC (Internal)
27
ACLCPME (Internal)
28
CHI (Internal)
29
PCIERR (Internal)
30
PCIPME (Internal)
31
(Reserved)
In addition to the above, the TX49/H2 core has a TX49/H2 core internal timer interrupt and two
software interrupts, but these interrupts are directly reported to the TX49/H2 core independently of this
Interrupt Controller. Please refer to the “64-Bit TX System RISC TX49/H2 Core Architecture” for more
information.
15-4
Chapter 15 Interrupt Controller
15.3.2
Interrupt Request Detection
In order to perform interrupt detection, each register of the Interrupt Controller is initialized, then the
IDE bit of the Interrupt Detection Enable Register (IRDEN) is set to “1.” All interrupts detected by the
Interrupt Controller are masked when this bit is cleared.
It is possible to set each interrupt factor detection mode using Interrupt Detection Mode Register 0
(IRDM0) and Interrupt Detection Mode Register 1 (IRDM1). There are four detection modes: Low
level, High level, falling edge, and rising edge.
The detected interrupt factors can be read out from the Interrupt Pending Register (IRPND).
15.3.3
Interrupt Level Assigning
Interrupt levels from 0 to 7 are assigned to each detected interrupt using the Interrupt Level Register
(IRLVL0-7). Interrupt level 7 is the highest priority and interrupt level1 is the lowest priority. Level 0
interrupts will be masked. (Table 15.3.2).
The priorities set by these interrupt levels will be given higher priority than the priorities provided
for each interrupt source indicated in Table 15.3.1.
Table 15.3.2 Interrupt Levels
Priority
Interrupt Level
(IRLVLn.ILm)
High
111
110
101
100
011
010
15.3.4
Low
001
Mask
000
Interrupt Priority Assigning
When multiple interrupt requests exist, the Interrupt Controller selects the interrupt with the highest
priority according to the priority level and interrupt number. Interrupt factors with an interrupt level
lower than the interrupt level specified by the Interrupt Mask Level Register (IRMSK) will be excluded
(masked).
When the interrupt with the highest priority is selected, then the interrupt number of that interrupt is
set in the interrupt factor field (CAUSE) of the Interrupt Current Status Register (IRCS), the interrupt
level is set in the Interrupt Level field (LVL), and the Interrupt Flag bit (IF) is set.
15-5
Chapter 15 Interrupt Controller
Priorities are assigned as follows.
•
When interrupt levels differ, the interrupt with the higher interrupt level has priority (Table
15.3.2)
•
When multiple interrupts with the same interrupt level are simultaneously detected, the
interrupt with the smaller interrupt number has priority (Table 15.3.1).
In addition, the interrupt priority assignments are reevaluated under the following conditions. At this
time, the interrupt with the highest priority is selected and the Interrupt Factor field (CAUSE) and
Interrupt Level field (LVL) of the Interrupt Current Status Register (IRCS) are set again.
15.3.5
•
When an interrupt request with a higher interrupt level than that of the currently selected
interrupt is detected. However, when the interrupt levels are equal, the Interrupt Level field
(LVL) does not change even if the interrupt number is small.
•
When the interrupt level (IRLVLn.ILm) of the currently selected interrupt changes to a value
smaller than the current setting.
•
When the currently selected interrupt is cleared (refer to “15.3.6 Clearing Interrupt
Requests”).
Interrupt Notification
When the interrupt with the highest priority is selected, then the interrupt factor is reported to the
Interrupt Current Status Register (IRCS) and an interrupt is reported to the TX49/H2 core.
The TX49/H2 core distinguishes interrupt factors using the IP field (IP[7:2]) of the Cause Register.
The interrupt notification from the Interrupt Controller is reflected in the IP[2] bit. The Interrupt
Handler uses the IP[2] bit to judge whether or not there are interrupts from this Interrupt Controller and
uses the Interrupt Current Status Register (IRCS) to determine the interrupt cause.
The Interrupt Factor field (IRCS.CAUSE) value is reflected in the remaining bits of the IP field.
Since bit IP[7] is also being used for notification of TX49/H2 CPU core internal timer interrupts, the
contents specified by IP[7] differ according to whether internal timer interrupts are set to valid
(TINTDIS=0) or invalid (TINTDIS=1), as indicated Table 15.3.3.
The Interrupt Factor field (IRCS.CAUSE) value is reflected in the remaining bits of the IP field.
TINTDIS is the value that is set from ADDR[0] at the timing when the RESET* signal is deasserted.
See the explanation “3.3 Pin Multiplexing” for more information.
Table 15.3.3 Interrupt Notification to IP[7:2] of the CP0 Cause Register
TINTDIS
IP[7]
IP[6:3]
IP[2]
0
(Internal Timer Interrupts: Valid)
Internal Timer
Interrupt Notification
IRCS.CAUSE[3:0]
IRCS.IF
1
(Internal Timer Interrupts: Invalid)
IRCS.CAUSE[4:0]
15-6
IRCS.IF
Chapter 15 Interrupt Controller
15.3.6
Clearing Interrupt Requests
Interrupt requests are cleared according to the following process.
15.3.7
•
When the detection mode is set to the High level or Low level:
Operation is performed to deassert the request of a source that is asserting an interrupt request.
•
When the detection mode is set to Rising edge or Falling edge
Edge detection requests are cleared by first specifying the interrupt source of the interrupt
request to be cleared in the Edge Detection Clear Source field (EDCS0 or EDCS1) of the
Interrupt Edge Detection Clear Register (IREDC) then writing the resulting value when the
corresponding Edge Detection Clear Enable bit (EDCE0 or EDCE1) is set to “1.”
Interrupt Requests
It is possible to make interrupt requests to external devices and interrupt requests (IRC interrupts) to
the TX49/H2 core by using a 32-bit interrupt request flag register. REQ[1]* signals are used as interrupt
output signals. Consequently, external interrupt requests can only be used when in the PCI External
Arbiter mode. Also, internal interrupt requests are assigned to interrupt number 13 of the Interrupt
Controller (IRC).
The following six registers set the interrupts.
•
Interrupt Request Flag Register (IRFLAG0, IRFLAG1)
•
Interrupt Request Polarity Control Register (IRPOL)
•
Interrupt Request Mask Register (IRMASKINT, IRMASKEXT)
•
Interrupt Request Control Register (IRRCNT)
The following formulas derive the interrupt generation conditions:
Internal interrupt request =
(|((IRFLAG[31:0] ^ IRPOL[31:0]) & IRMASKINT[31:0]))^ IRRCNT.INTPOL
External interrupt request =
(|((IRFLAG[31:0] ^ IRPOL[31:0] ) & IRMASKEXT[31:0]))^ IRRCNT.EXTPOL
In the above formulas, “^” indicates Exclusive OR operations and “|” indicates reduction operators
that perform an OR operation on all bits.
Also, the External Interrupt OD Control bit (IRRCNT.OD) of the Interrupt Request Control Register
can select whether the external interrupt supply signal is open drain output or totem pole output.
15-7
Chapter 15 Interrupt Controller
IRRCNT.INTPOL
IRFLAG[31]
Internal Interrupt
Request
(0: Request present)
IRPOL[31]
IRMASK[31]
External Interrupt Request
IRRCNT.EXTPOL
Figure 15.3.1 External Interrupt Request Logic
There are two flag registers: Flag Register 0 (IRFLAG0), and Flag Register 1 (IRFLAG1). These
registers have two different Write methods. Accordingly, Writes to one register are reflects in the other.
Either “0” or “1” can be written to Flag Register 0
In the case of Flag Register 1 however, “1” can be written from the TX49/H2 core, but “0” cannot be
written. On the other hand, bits that wrote “1” are cleared to “0” in the case of access from a device
other than the TX49/H2 core (access from an external PCI device for example). The bit value at this
time will not change even if “0” is written. This register sends interrupt notification from the TX49/H2
core to external devices. External devices can be used in applications that clear these interrupt
notifications.
15.4 Registers
Table 15.4.1 Interrupt Control Registers
Reference
Address
Bit Width
Register
Register Name
15.4.1
0xF600
32
IRDEN
Interrupt Detection Enable Register
15.4.2
0xF604
32
IRDM0
Interrupt Detection Mode Register 0
15.4.3
0xF608
32
IRDM1
Interrupt Detection Mode Register 1
15.4.4
0xF610
32
IRLVL0
Interrupt Level Register 0
15.4.5
0xF614
32
IRLVL1
Interrupt Level Register 1
15.4.6
0xF618
32
IRLVL2
Interrupt Level Register 2
15.4.7
0xF61C
32
IRLVL3
Interrupt Level Register 3
15.4.8
0xF620
32
IRLVL4
Interrupt Level Register 4
15.4.9
0xF624
32
IRLVL5
Interrupt Level Register 5
15.4.10
0xF628
32
IRLVL6
Interrupt Level Register 6
15.4.11
0xF62C
32
IRLVL7
Interrupt Level Register 7
15.4.12
0xF640
32
IRMSK
Interrupt Mask Register
15.4.13
0xF660
32
IREDC
Interrupt Edge Detection Clear Register
15.4.14
0xF680
32
IRPND
Interrupt Pending Register
15.4.15
0xF6A0
32
IRCS
Interrupt Current Status Register
15.4.16
0xF510
32
IRFLAG0
Interrupt Request Flag Register 0
15.4.17
0xF514
32
IRFLAG1
Interrupt Request Flag Register 1
15.4.18
0xF518
32
IRPOL
Interrupt Request Polarity Control Register
15.4.19
0xF51C
32
IRRCNT
Interrupt Request Control Register
15.4.20
0xF520
32
IRMASKINT
Interrupt Request Internal Interrupt Mask Register
15.4.21
0xF524
32
IRMASKEXT
Interrupt Request External Interrupt Mask Register
15-8
Chapter 15 Interrupt Controller
15.4.1
Interrupt Detection Enable Register (IRDEN)
0xF600
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
IDE
R/W
0
Bits
Mnemonic
31:1

0
IDE
Field Name
Explanation

Reserved
Interrupt
Detection Enable
Interrupt Detection Enable (Initial value: 0, R/W)
Enables interrupt detection.
0: Stop interrupt detection.
1: Start interrupt detection
Figure 15.4.1 Interrupt Detection Enable Register
15-9
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.2
31
Interrupt Detection Mode Register 0 (IRDM0)
30
29
28
27
26
25
24
23
22
0xF604
21
20
19
18
17
16
IC23
IC22
IC21
IC20
IC19
IC18
IC17
IC16
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
15
14
13
12
11
10
9
8
7
6
5
4
3
2
IC7
IC6
IC5
IC4
IC3
IC2
IC1
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
Bits
Mnemonic
Field Name
Explanation
31:30
IC23
Interrupt Source
Control 23
Interrupt Source Control 23 (Initial value: 00, R/W)
These bits specify the active state of TMR[2] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
29:28
IC22
Interrupt Source
Control 22
Interrupt Source Control 22 (Initial value: 00, R/W)
These bits specify the active state of TMR[1] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
27:26
IC21
Interrupt Source
Control 21
Interrupt Source Control 21 (Initial value: 00, R/W)
These bits specify the active state of TMR[0] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
25:24
IC20
Interrupt Source
Control 20
Interrupt Source Control 20 (Initial value: 00, R/W)
These bits specify the active state of PCIC interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
23:22
IC19
Interrupt Source
Control 19
Interrupt Source Control 19 (Initial value: 00, R/W)
These bits specify the active state of PDMAC interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
21:20
IC18
Interrupt Source
Control 18
Interrupt Source Control 18 (Initial value: 00, R/W)
These bits specify the active state of IRC interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
19:18
IC17
Interrupt Source
Control 17
Interrupt Source Control 17 (Initial value: 00, R/W)
These bits specify the active state of DMA[3] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
Figure 15.4.2 Interrupt Detection Mode Register 0 (1/2)
15-10
: Type
: Initial value
1
0
Reserved
: Type
: Initial value
Chapter 15 Interrupt Controller
Bits
Mnemonic
Field Name
Explanation
17:16
IC16
Interrupt Source
Control 16
Interrupt Source Control 16 (Initial value: 00, R/W)
These bits specify the active state of DMA[2] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
15:14
IC7
Interrupt Source
Control 7
Interrupt Source Control 7 (Initial value: 00, R/W)
These bits specify the active state of external INT[5] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
13:12
IC6
Interrupt Source
Control 6
Interrupt Source Control 6 (Initial value: 00, R/W)
These bits specify the active state of external INT[4] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
11:10
IC5
Interrupt Source
Control 5
Interrupt Source Control 5 (Initial value: 00, R/W)
These bits specify the active state of external INT[3] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
9:8
IC4
Interrupt Source
Control 4
Interrupt Source Control 4 (Initial value: 00, R/W)
These bits specify the active state of external INT[2] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
7:6
IC3
Interrupt Source
Control 3
Interrupt Source Control 3 (Initial value: 00, R/W)
These bits specify the active state of external INT[1] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
5:4
IC2
Interrupt Source
Control 2
Interrupt Source Control 2 (Initial value: 00, R/W)
These bits specify the active state of external INT[0] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
3:2
IC1
Interrupt Source
Control 1
Interrupt Source Control 1 (Initial value: 00, R/W)
These bits specify the active state of TX49 Write Timeout Error interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
1:0

Reserved

Figure 15.4.2 Interrupt Detection Mode Register 0 (2/2)
15-11
Chapter 15 Interrupt Controller
15.4.3
Interrupt Detection Mode Register 1 (IRDM1)
31
30
Reserved
15
Bits
29
14
28
27
26
25
24
23
22
0xF608
21
20
19
18
17
16
IC30
IC29
IC28
IC27
IC26
IC25
IC24
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
13
12
11
10
9
8
7
6
IC15
IC14
IC13
IC12
IC11
R/W
00
R/W
00
R/W
00
R/W
00
R/W
00
Mnemonic
Field Name
5
4
Reserved
3
2
IC8
R/W
00
R/W
00
31:30

29:28
IC30
Interrupt Source
Control 30
Interrupt Source Control 30 (Initial value: 00, R/W)
These bits specify the active state of PCIPME interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable

27:26
IC29
Interrupt Source
Control 29
Interrupt Source Control 29 (Initial value: 00, R/W)
These bits specify the active state of PCIERR interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
25:24
IC28
Interrupt Source
Control 28
Interrupt Source Control 28 (Initial value: 00, R/W)
These bits specify the active state of CHI interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
23:22
IC27
Interrupt Source
Control 27
Interrupt Source Control 27 (Initial value: 00, R/W)
These bits specify the active state of ACLCPME interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
21:20
IC26
Interrupt Source
Control 26
Interrupt Source Control 26 (Initial value: 00, R/W)
These bits specify the active state of ACLC interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
19:18
IC25
Interrupt Source
Control 25
Interrupt Source Control 25 (Initial value: 00, R/W)
These bits specify the active state of RTC interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
17:16
IC24
Interrupt Source
Control 24
Interrupt Source Control 26 (Initial value: 00, R/W)
These bits specify the active state of SPI interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
Figure 15.4.3 Interrupt Detection Mode Register 1 (1/2)
15-12
0
IC9
Explanation
Reserved
1
: Type
: Initial value
: Type
: Initial value
Chapter 15 Interrupt Controller
Bits
Mnemonic
Field Name
Explanation
15:14
IC15
Interrupt Source
Control 15
Interrupt Source Control 15 (Initial value: 00, R/W)
These bits specify the active state of DMA[1] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
13:12
IC14
Interrupt Source
Control 14
Interrupt Source Control 14 (Initial value: 00, R/W)
These bits specify the active state of DMA[0] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
11:10
IC13
Interrupt Source
Control 13
Interrupt Source Control 13 (Initial value: 00, R/W)
These bits specify the active state of SIO[1] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
9:8
IC12
Interrupt Source
Control 12
Interrupt Source Control 12 (Initial value: 00, R/W)
These bits specify the active state of SIO[0] interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
7:6
IC11
Interrupt Source
Control 11
Interrupt Source Control 11 (Initial value: 00, R/W)
These bits specify the active state of NAND Flash Controller interrupts.
00: Low level active
01: Disable
10: Disable
11: Disable
5:4

Reserved
3:2
IC9
Interrupt Source
Control 9
Interrupt Source Control 9 (Initial value: 00, R/W)
These bits specify the active state of external INT[7] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active

1:0
IC8
Interrupt Source
Control 8
Interrupt Source Control 8 (Initial value: 00, R/W)
These bits specify the active state of external INT[6] interrupts.
00: Low level active
01: High level active
10: Falling edge active
11: Rising edge active
Figure 15.4.3 Interrupt Detection Mode Register 1 (2/2)
15-13
Chapter 15 Interrupt Controller
15.4.4
Interrupt Level Register 0 (IRLVL0)
31
27
26
Reserved
24
0xF610
23
IL17
19
18
Reserved
R/W
000
15
11
10
Reserved
16
IL16
R/W
000
8
7
IL1
: Type
: Initial value
0
Reserved
R/W
000
Bits
Mnemonic
31:27

26:24
IL17
23:19

18:16
IL16
: Type
: Initial value
Field Name
Explanation

Reserved
Interrupt Level 17
Interrupt Level of INT[17] (Initial value: 000, R/W)
These bits specify the interrupt level of DMA[3] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 16
15:11

Reserved
10:8
IL1
Interrupt Level 1
7:0

Reserved
Interrupt Level of INT[16] (Initial value: 000, R/W)
These bits specify the interrupt level of DMA[2] interrupts.
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Interrupt Level of INT[1] (Initial value: 000, R/W)
These bits specify the interrupt level for TX49 Write Timeout Error interrupts.
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Figure 15.4.4 Interrupt Level Register 0
15-14
Chapter 15 Interrupt Controller
15.4.5
Interrupt Level Register 1 (IRLVL1)
31
27
26
Reserved
24
0xF614
23
IL19
19
18
Reserved
R/W
000
15
11
10
Reserved
R/W
000
8
7
IL3
3
2
Reserved
Mnemonic
31:27

26:24
IL19
23:19

18:16
IL18
Explanation

Reserved
Interrupt Level 19
Interrupt Level of INT[19] (Initial value: 000, R/W)
These bits specify the interrupt level of PDMAC interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 18
15:11

Reserved
10:8
IL3
Interrupt Level 3
7:3

Reserved
2:0
IL2
Interrupt Level 2
0
R/W
000
Field Name
Interrupt Level of INT[18] (Initial value: 000, R/W)
These bits specify the interrupt level of IRC interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Interrupt Level of INT[3] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[1].
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Interrupt Level of INT[2] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[0].
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7
Figure 15.4.5 Interrupt Level Register 1
15-15
: Type
: Initial value
IL2
R/W
000
Bits
16
IL18
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.6
Interrupt Level Register 2 (IRLVL2)
0xF618
31
16
Reserved
IL21
Reserved
IL20
R/W
000
15
11
10
Reserved
R/W
000
8
7
IL5
3
Reserved
Mnemonic
31:11

26:24
IL21
23:19

18:16
IL20
R/W
000
Field Name
Explanation

Reserved
Interrupt Level 21
Interrupt Level of INT[21] (Initial value: 000, R/W)
These bits specify the interrupt level of TMR[0].
000: Interrupt Level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 20
15:11

Reserved
10:8
IL5
Interrupt Level 5
Interrupt Level of INT[20] (Initial value: 000, R/W)
These bits specify the interrupt level of PCIC interrupts.
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

7:3

Reserved
2:0
IL4
Interrupt Level 4
0
IL4
R/W
000
Bits
2
Interrupt Level of INT[5] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[3].
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Interrupt Level of INT[4] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[2].
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7
Figure 15.4.6 Interrupt Level Register 2
15-16
: Type
: Initial value
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.7
Interrupt Level Register 3 (IRLVL3)
31
27
26
Reserved
24
0xF61C
23
IL23
19
18
Reserved
R/W
000
15
11
10
Reserved
R/W
000
8
7
IL7
3
Reserved
Mnemonic
31:27

26:24
IL23
23:19

18:16
IL22
2
0
R/W
000
Field Name
Explanation

Reserved
Interrupt Level 23
Interrupt Level of INT[23] (Initial value: 000, R/W)
These bits specify the interrupt level of TMR[2].
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 22
15:11

Reserved
10:8
IL7
Interrupt level 7
Interrupt Level of INT[22] (Initial value: 000, R/W)
These bits specify the interrupt level of TMR[1].
000: Interrupt level 0 (Interrupt disable)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

7:3

Reserved
2:0
IL6
Interrupt level 6
Interrupt Level of INT[7] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[5] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Interrupt Level of INT[6] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[4] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7
Figure 15.4.7 Interrupt Level Register 3
15-17
: Type
: Initial value
IL6
R/W
000
Bits
16
IL22
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.8
Interrupt Level Register 4 (IRLVL4)
31
27
26
Reserved
24
0xF620
23
IL25
19
18
Reserved
R/W
000
15
11
10
Reserved
R/W
000
8
7
IL9
3
Reserved
Mnemonic
31:27

26:24
IL25
23:19

18:16
IL24
2
0
R/W
000
Field Name
Explanation

Reserved
Interrupt level 25
Interrupt Level of INT[25] (Initial value: 000, R/W)
These bits specify the interrupt level of RTC interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt level 24
15:11

Reserved
10:8
IL9
Interrupt level 9
Interrupt Level of INT[24] (Initial value: 000, R/W)
These bits specify the interrupt level of SPI interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

7:3

Reserved
2:0
IL8
Interrupt level 8
Interrupt Level of INT[9] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[7] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Interrupt Level of INT[8] (Initial value: 000, R/W)
These bits specify the interrupt level of external INT[6] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7
Figure 15.4.8 Interrupt Level Register 4
15-18
: Type
: Initial value
IL8
R/W
000
Bits
16
IL24
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.9
Interrupt Level Register 5 (IRLVL5)
31
27
26
Reserved
24
0xF624
23
IL27
19
18
Reserved
R/W
000
15
11
10
Reserved
16
IL26
R/W
000
8
7
IL11
: Type
: Initial value
0
Reserved
R/W
000
Bits
Mnemonic
31:27

26:24
IL27
23:19

18:16
IL26
15:11

10:8
IL11
7:0

: Type
: Initial value
Field Name
Explanation

Reserved
Interrupt Level 27
Interrupt Level of INT[27] (Initial value: 000, R/W)
These bits specify the interrupt level of ACLCPME interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 26
Interrupt Level of INT[26] (Initial value: 000, R/W)
These bits specify the interrupt level of ACLC interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt level 11
Interrupt Level of INT[11] (Initial value: 000, R/W)
These bits specify the interrupt level of NAND Flash Controller interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Figure 15.4.9 Interrupt Level Register 5
15-19
Chapter 15 Interrupt Controller
15.4.10 Interrupt Level Register 6 (IRLVL6)
31
27
26
Reserved
24
0xF628
23
IL29
19
18
Reserved
R/W
000
15
11
10
Reserved
R/W
000
8
7
IL13
3
2
Reserved
Mnemonic
31:27

26:24
IL29
23:19

18:16
IL28
15:11

10:8
IL13
7:3

2:0
IL12
Explanation

Reserved
Interrupt Level 29
Interrupt Level of INT[29] (Initial value: 000, R/W)
These bits specify the interrupt level of PCIERR interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 28
Interrupt Level of INT[28] (Initial value: 000, R/W)
These bits specify the interrupt level of CHI interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt level 13
Interrupt Level of INT[13] (Initial value: 000, R/W)
These bits specify the interrupt level of SIO[1] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt level 12
0
R/W
000
Field Name
Interrupt Level of INT[12] (Initial value: 000, R/W)
These bits specify the interrupt level of SIO[0] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7
Figure 15.4.10 Interrupt Level Register 6
15-20
: Type
: Initial value
IL12
R/W
000
Bits
16
IL28
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.11 Interrupt Level Register 7 (IRLVL7)
0xF62C
31
19
18
Reserved
16
IL30
R/W
000
15
11
10
Reserved
8
7
IL15
3
2
Reserved
R/W
000
Bits
Mnemonic
31:19

18:16
IL30
15:11

10:8
IL15
7:3

2:0
IL14
Field Name
Explanation

Interrupt Level 30
Interrupt Level of INT[30] (Initial value: 000, R/W)
These bits specify the interrupt level of PCIPME interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt level 15
Interrupt Level of INT[15] (Initial value: 000, R/W)
These bits specify the interrupt level of DMA[1] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7

Reserved
Interrupt Level 14
0
IL14
R/W
000
Reserved
Interrupt Level of INT[14] (Initial value: 000, R/W)
These bits specify the interrupt level of DMA[0] interrupts.
000: Interrupt level 0 (Interrupt disabled)
001: Interrupt level 1
010: Interrupt level 2
011: Interrupt level 3
100: Interrupt level 4
101: Interrupt level 5
110: Interrupt level 6
111: Interrupt level 7
Figure 15.4.11 Interrupt Level Register 7
15-21
: Type
: Initial value
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.12 Interrupt Mask Level Register (IRMSK)
0xF640
31
16
Reserved
: Type
: Initial value
15
3
Reserved
2
0
IML
R/W
000
Bits
Mnemonic
31:3

2:0
IML
Field Name
: Type
: Initial value
Explanation

Reserved
Interrupt Mask
Level
Interrupt Mask Level (Initial value: 000, R/W)
These bits specify the interrupt mask level. Masks interrupts with a mask level lower
than the set mask level.
000: Interrupt mask level 0 (No interrupts masked)
001: Interrupt mask level 1 (Levels 2-7 enabled)
010: Interrupt mask level 2 (Levels 3-7 enabled)
011: Interrupt mask level 3 (Levels 4-7 enabled)
100: Interrupt mask level 4 (Levels 5-7 enabled)
101: Interrupt mask level 5 (Levels 6-7 enabled)
110: Interrupt mask level 6 (Level 7 enabled)
111: Interrupt mask level 7 (Interrupts disabled)
Figure 15.4.12 Interrupt Mask Register
15-22
Chapter 15 Interrupt Controller
15.4.13 Interrupt Edge Detection Clear Register (IREDC)
31
25
0xF660
24
23
Reserved
20
19
16
: Type
: Initial value
15
9
Reserved
8
7
EDCE0
4
Reserved
3
0
EDCS0
R/W1C
0
Bits
Mnemonic
31:9

8
EDCE0
7:4

3:0
EDCS0
Field Name
Explanation

Reserved
Edge Detection
Clear Enable 0
Edge Detection Clear Enable 0 (Initial value: 0, R/W1C)
Clears edge detection of interrupts specified by the EDCS0 field.
0: Does not clear.
1: Clears.
Value always becomes “0” when this bit is read.

Reserved
Edge Detection
Clear Source 0
R/W
0000
Edge Detection Clear Source 0 (Initial value: 0x0, R/W1C)
These bits specify the interrupt source to be cleared.
1111: (Reserved)
1110: (Reserved)
1101: (Reserved)
1100: (Reserved)
1011: (Reserved)
1010: (Reserved)
1001: External INT[7] interrupt
1000: External INT[6] interrupt
0111: External INT[5] interrupt
0110: External INT[4] interrupt
0101: External INT[3] interrupt
0100: External INT[2] interrupt
0011: External INT[1] interrupt
0010: External INT[0] interrupt
0001: (Reserved)
0000: (Reserved)
Figure 15.4.13 Interrupt Status Control Register
15-23
: Type
: Initial value
Chapter 15 Interrupt Controller
15.4.14 Interrupt Pending Register (IRPND)
0xF680
Indicates the status of each interrupt request regardless of the IRLVL 7-0 and IRMSK value.
31
30
IS30
29
IS29
28
IS28
27
IS27
26
IS26
25
IS25
24
IS24
23
IS23
22
IS22
21
IS21
20
IS20
19
IS19
18
IS18
17
IS17
16
IS16
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
15
IS15
14
IS14
13
IS13
12
IS12
11
IS11
10
Reserved
9
IS9
8
IS8
7
IS7
6
IS6
5
IS5
4
IS4
3
IS3
2
IS2
1
IS1
Reserved
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
R
0
Reserved
Bits
Mnemonic
Field Name
Explanation
31

30
IS30
Interrupt Status 30
IRINTREQ[30] status (Initial value: 0, R)
This bit indicates the PCIPME interrupt status.
1: Interrupt requests
0: No interrupt requests

29
IS29
Interrupt Status 29
IRINTREQ[29] status (Initial value: 0, R)
This bit indicates the PCIERR error status.
1: Interrupt requests
0: No interrupt requests
28
IS28
Interrupt Status 28
IRINTREQ[28] status (Initial value: 0, R)
This bit indicates the CHI interrupt status.
1: Interrupt requests
0: No interrupt requests
27
IS27
Interrupt Status 27
IRINTREQ[27] status (Initial value: 0, R)
This bit indicates the ACLCPME error status.
1: Interrupt requests
0: No interrupt requests
26
IS26
Interrupt Status 26
IRINTREQ[26] status (Initial value: 0, R)
This bit indicates the ACLC error status.
1: Interrupt requests
0: No interrupt requests
25
IS25
Interrupt Status 25
IRINTREQ[27] status (Initial value: 0, R)
This bit indicates the RTC error status.
1: Interrupt requests
0: No interrupt requests
24
IS24
Interrupt Status 24
IRINTREQ[26] status (Initial value: 0, R)
This bit indicates the SPI error status.
1: Interrupt requests
0: No interrupt requests
23
IS23
Interrupt Status 23
IRINTREQ[23] status (Initial value: 0, R)
This bit indicates the TMR[2] interrupt status.
1: Interrupt requests
0: No interrupt requests
22
IS22
Interrupt Status 22
IRINTREQ[22] status (Initial value: 0, R)
This bit indicates the TMR[1] interrupt status.
1: Interrupt requests
0: No interrupt requests
21
IS21
Interrupt Status 21
IRINTREQ[21] status (Initial value: 0, R)
This bit indicates the TMR[0] interrupt status.
1: Interrupt requests
0: No interrupt requests
Reserved
Figure 15.4.14 Interrupt Pending Status Register (1/3)
15-24
: Type
: Initial value
0
: Type
: Initial value
Chapter 15 Interrupt Controller
Bits
Mnemonic
Field Name
Explanation
20
IS20
Interrupt Status 20
IRINTREQ[20] status (Initial value: 0, R)
This bit indicates the PCIC interrupt status.
1: Interrupt requests
0: No interrupt requests
19
IS19
Interrupt Status 19
IRINTREQ[19] status (Initial value: 0, R)
This bit indicates the PDMAC interrupt status.
1: Interrupt requests
0: No interrupt requests
18
IS18
Interrupt Status 18
IRINTREQ[18] status (Initial value: 0, R)
This bit indicates the IRC interrupt status.
1: Interrupt requests
0: No interrupt requests
17
IS17
Interrupt Status 17
IRINTREQ[17] status (Initial value: 0, R)
This bit indicates the DMA[3] interrupt status.
1: Interrupt requests
0: No interrupt requests
16
IS16
Interrupt Status 16
IRINTREQ[16] status (Initial value: 0, R)
This bit indicates the status of DMA[2] interrupts.
1: Interrupt requests
0: No interrupt requests
15
IS15
Interrupt Status 15
IRINTREQ[15] status (Initial value: 0, R)
This bit indicates the status of DMA[1] interrupts.
1: Interrupt requests
0: No interrupts requests
14
IS14
Interrupt Status 14
IRINTREQ[14] status (Initial value: 0, R)
This bit indicates the status of DMA[0] interrupts.
1: Interrupt requests
0: No interrupt requests
13
IS13
Interrupt Status 13
IRINTREQ[13] status (Initial value: 0, R)
This bit indicates the status of SIO[1] interrupts.
1: Interrupt requests
0: No interrupt requests
12
IS12
Interrupt Status 12
IRINTREQ[12] status (Initial value: 0, R)
This bit indicates the status of SIO[0] interrupts.
1: Interrupt requests
0: No interrupt requests
11
IS11
Interrupt Status 11
IRINTREQ[11] status (Initial value: 0, R)
This bit indicates the status of NAND Flash Controller interrupts.
1: Interrupt requests
0: No interrupts requests
10

Reserved
9
IS9
Interrupt Status 9
IRINTREQ[9] status (Initial value: 0, R)
This bit indicates the status of external INT[7] interrupts.
1: Interrupt requests
0: No interrupt requests

8
IS8
Interrupt Status 8
IRINTREQ[8] status (Initial value: 0, R)
This bit indicates the status of external INT[6] interrupts.
1: Interrupt requests
0: No interrupt requests
7
IS7
Interrupt Status 7
IRINTREQ[7] status (Initial value: 0, R)
This bit indicates the status of external INT[5] interrupts.
1: Interrupt requests
0: No interrupt requests
6
IS6
Interrupt Status 6
IRINTREQ[6] status (Initial value: 0, R)
This bit indicates the status of external INT[4] interrupts.
1: Interrupt requests
0: No interrupt requests
Figure 15.4.14 Interrupt Pending Status Register (2/3)
15-25
Chapter 15 Interrupt Controller
Bits
Mnemonic
Field Name
Explanation
5
IS5
Interrupt Status 5
IRINTREQ[5] status (Initial value: 0, R)
This bit indicates the status of external INT[3] interrupts.
1: Interrupt requests
0: No interrupt requests
4
IS4
Interrupt Status 4
IRINTREQ[4] status (Initial value: 0, R)
This bit indicates the status of external INT[2] interrupts.
1: Interrupt requests
0: No interrupt requests
3
IS3
Interrupt Status 3
IRINTREQ[3] status (Initial value: 0, R)
This bit indicates the status of external INT[1] interrupts.
1: Interrupt requests
0: No interrupt requests
2
IS2
Interrupt Status 2
IRINTREQ[2] status (Initial value: 0, R)
This bit indicates the status of external INT[0] interrupts.
1: Interrupt requests
0: No interrupt requests
1
IS1
Interrupt Status 1
IRINTREQ[1] status (Initial value: 0, R)
This bit indicates the status of TX49 Write Timeout Error interrupts.
1: Interrupt requests
0: No interrupt requests
0

Reserved

Figure 15.4.14 Interrupt Pending Status Register (3/3)
15-26
Chapter 15 Interrupt Controller
15.4.15 Interrupt Current Status Register (IRCS)
0xF6A0
31
17
Reserved
16
IF
R
1
15
11
10
Reserved
8
7
LVL
5
4
Reserved
Mnemonic
31:17

Reserved
16
IF
Interrupt Flag
15:11

Reserved
10:8
LVL
7:5

R
11111
Field Name
Interrupt Level
0
CAUSE
R
000
Bits
: Type
: Initial value
: Type
: Initial value
Explanation

Interrupt Flag (Initial value: 1, R)
This bit indicates the interrupt generation status.
0: Interrupt requests have been generated.
1: Interrupt requests have not been generated

Interrupt Level (Initial value: 000, R)
These bits specify the level of the interrupt request that was reported to the
TX49/H2 core. The values of these bits are undefined when there is no interrupt
request.
000: Interrupt level 0
001: Interrupt level 1
:
:
111: Interrupt level 7

Reserved
Figure 15.4.15 Interrupt Current Status Register (1/2)
15-27
Chapter 15 Interrupt Controller
Bits
Mnemonic
4:0
CAUSE
Field Name
Interrupt Cause
Explanation
Interrupt Cause (Initial value: 0x1F, R)
These bits specify the interrupt cause that was reported to the TX49/H2 core.
The values of these bits are undefined when there is no interrupt request.
00000: (Reserved)
00001: TX49 Write Timeout Error
00010: External INT[0] interrupt
00011: External INT[1] interrupt
00100: External INT[2] interrupt
00101: External INT[3] interrupt
00110: External INT[4] interrupt
00111: External INT[5] interrupt
01000: External INT[6] interrupt
01001: External INT[7] interrupt
01010: (Reserved)
01011: NAND Flash Controller interrupt
01100: SIO[0] interrupt
01101: SIO[1] interrupt
01110: DMA[0] interrupt
01111: DMA[1] interrupt
10000: DMA[2] interrupt
10001: DMA[3] interrupt
10010: IRC interrupt
10011: PDMAC interrupt
10100: PCIC interrupt
10101: TMR[0] interrupt
10110: TMR[1] interrupt
10111: TMR[2] interrupt
11000: SPI interrupt
11001: RTC interrupt
11010: ACLC interrupt
11011: ACLCPME interrupt
11100: CHI interrupt
11101: PCIERR interrupt
11110: PCIPME interrupt
11111: (Reserved)
Figure 15.4.15 Interrupt Current Status Register (2/2)
15-28
Chapter 15 Interrupt Controller
15.4.16 Interrupt Request Flag Register 0 (IRFLAG0)
31
PF0
[31]
15
PF0
[15]
PF0
[30]
14
PF0
[14]
PF0
[29]
13
PF0
[13]
Bits
Mnemonic
31:0
PF0[31:0]
PF0
[28]
12
PF0
[12]
PF0
[27]
11
PF0
[11]
PF0
[26]
10
PF0
[10]
PF0
[25]
9
PF0
[9]
PF0
PF0
[24]
[23]
R/W
0x0000
8
7
PF0
PF0
[8]
[7]
R/W
0x0000
PF0
[22]
PF0
[21]
PF0
[20]
PF0
[19]
PF0
[18]
PF0
[17]
16
PF0
[16]
: Type
: Initial value
6
PF0
[6]
5
PF0
[5]
4
PF0
[4]
3
PF0
[3]
2
PF0
[2]
1
PF0
[1]
0
PF0
[0]
: Type
: Initial value
Field Name
Flag 0
0xF510
Explanation
Interrupt Request Flag 0[31:0] (Initial value: 0x0000_0000, R/W)
Changes made to this register are reflected in Flag Register 1 also since they are
the same registers.
Both “0” and “1” can be written to Flag Register 0.
Figure 15.4.16 Interrupt Request Flag Register 0
15.4.17 Interrupt Request Flag Register 1 (IRFLAG1)
31
PF1
[31]
15
PF1
[15]
PF1
[30]
14
PF1
[14]
PF1
[29]
13
PF1
[13]
Bits
Mnemonic
31:0
PF1[31:0]
PF1
[28]
12
PF1
[12]
PF1
[27]
11
PF1
[11]
PF1
[26]
10
PF1
[10]
PF1
[25]
9
PF1
[9]
PF1
PF1
[24]
[23]
R/W
0x0000
8
7
PF1
PF1
[8]
[7]
R/W
0x0000
Field Name
Flag 1
PF1
[22]
0xF514
PF1
[21]
PF1
[20]
PF1
[19]
PF1
[18]
PF1
[17]
16
PF1
[16]
: Type
: Initial value
6
PF1
[6]
5
PF1
[5]
4
PF1
[4]
3
PF1
[3]
2
PF1
[2]
1
PF1
[1]
0
PF1
[0]
: Type
: Initial value
Explanation
Interrupt Request Flag 1[31:0] (Initial value: 0x0000_0000, R/W)
Changes made to this register are reflected in Flag Register 0 also since they are
the same registers.
Writes to Flag Register 1 operate as follows:
Write
Write from the TX49/H2 core
1: Set the flag bit
0: No change
Write from other devices (DMAC, PCIC)
1: Clear the flag bit
0: No change
Read: Read the flag bit
Figure 15.4.17 Interrupt Request Flag Register 1
15-29
Chapter 15 Interrupt Controller
15.4.18 Interrupt Request Polarity Control Register (IRPOL)
31
FPC
[31]
15
FPC
[15]
FPC
[30]
14
FPC
[14]
FPC
[29]
13
FPC
[13]
Bits
Mnemonic
31:0
FPC[31:0]
FPC
[28]
12
FPC
[12]
FPC
[27]
11
FPC
[11]
FPC
[26]
10
FPC
[10]
FPC
[25]
9
FPC
[9]
FPC FPC
[24]
[23]
R/W
0x0000
8
7
FPC FPC
[8]
[7]
R/W
0x0000
FPC
[22]
FPC
[20]
FPC
[19]
FPC
[18]
FPC
[17]
16
FPC
[16]
: Type
: Initial value
6
FPC
[6]
Field Name
Flag Polarity
Control
FPC
[21]
0xF518
5
FPC
[5]
4
FPC
[4]
3
FPC
[3]
2
FPC
[2]
1
FPC
[1]
0
FPC
[0]
: Type
: Initial value
Explanation
Flag Polarity Control[31:0] (Initial value: 0x0000_0000, R/W)
These bits specify the polarity of the flag bit that generated the interrupt. An
interrupt request is generated when the XOR of the FPC bit and the flag bit is “1.”
Flag bit (PF)
FPC bit
Interrupt request
0
0
No
0
1
Yes
1
0
Yes
1
1
No
Figure 15.4.18 Interrupt Request Polarity Control Register
15.4.19 Interrupt Request Control Register (IRRCNT)
0xF51C
31
16
Reserved
: Type
: Initial value
15
3
2
Reserved
OD
R/W
0
Bits
Mnemonic
Field Name
1
0
EXTPOL INTPOL
R/W
1
R/W : Type
1 : Initial value
Explanation
31:3

Reserved
2
OD
External Interrupt
OD Control
External Interrupt Open Drain Control (Initial value: 0, R/W)
This bit specifies whether to make the external interrupt signal (IRC[2]*) an open
drain pin or not.
0: Open drain (reset)
1: Totem pole

1
EXTPOL
External Interrupt
Request Polarity
Control
External Interrupt Polarity Control (Initial value: 1, R/W)
This bit specifies the polarity of external interrupt requests.
0: Do not reverse polarity of interrupt requests.
1: Reverse polarity of interrupt requests
0
INTPOL
Internal Interrupt
Request Polarity
Control
Internal Interrupt Polarity Control (Initial value: 1, R/W)
This bit specifies the polarity of internal interrupt requests.
0: Do not reverse polarity of interrupt requests.
1: Reverse polarity of interrupt requests
Figure 15.4.19 Interrupt Request Control Register
15-30
Chapter 15 Interrupt Controller
15.4.20 Interrupt Request Internal Interrupt Mask Register (IRMASKINT)
0xF520
31
16
MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT
[31]
[30]
[29]
[28]
[27]
[26]
[25]
[24]
[23]
[22]
[21]
[20]
[19]
[18]
[17]
[16]
R/W
: Type
0x0000
: Initial value
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT MINT
[15]
[14]
[13]
[12]
[11]
[10]
[9]
[8]
[7]
[6]
[5]
[4]
[3]
[2]
[1]
[0]
R/W
: Type
0x0000
: Initial value
Bits
Mnemonic
Field Name
Explanation
31:0
MINT[31:0]
Internal Request
Mask
Internal Interrupt Mask (Initial value: 0x0000_0000, R/W)
These bits specify whether to use the corresponding flag bit as an internal interrupt
cause. Interrupt causes are masked when this bit is “0.”
0: Mask (Reset)
1: Do not mask
Figure 15.4.20 Interrupt Request Internal Interrupt Mask Register
15.4.21 Interrupt Request External Interrupt Mask Register (IRMASKEXT)
0xF524
31
16
MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT
[31]
[30]
[29]
[28]
[27]
[26]
[25]
[24]
[23]
[22]
[21]
[20]
[19]
[18]
[17]
[16]
R/W
: Type
0x0000
: Initial value
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
0
MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT MEXT
[15]
[14]
[13]
[12]
[11]
[10]
[9]
[8]
[7]
[6]
[5]
[4]
[3]
[2]
[1]
[0]
R/W
: Type
0x0000
: Initial value
Bits
Mnemonic
Field Name
Explanation
31:0
MEXT[31:0]
External Request
Mask
External Interrupt Mask (Initial value: 0x0000_0000, R/W)
These bits specify whether to use the corresponding flag bit as an external interrupt
cause. Interrupt causes are masked when this bit is “0.”
0: Mask (reset)
1: Do not mask
Figure 15.4.21 Interrupt Request External Interrupt Mask Register
15-31
Chapter 15 Interrupt Controller
15-32
Chapter 16 CHI Module
16. CHI Module
16.1 Characteristics
The CHI Module within the TX4925 contains holding registers, shift registers, DMA support, and other
logic to support interfacing to external full-duplex serial TDM communication peripherals, including ISDN
communication devices and PCM/TDM serial highways. The TX4925 implementation of the CHI Module is
based on the Concentration Highway Interface standard specified by Intel and AT&T, which is intended to
allow glueless interface to various TDM highways used by numerous commercial products. The TX4925
CHI Module can also be used to support an intra-system high-speed serial DMA channel within a PDA
system.
The TX4925 CHI Module utilizes a 4-signal interface consisting of clock, sync, transmit serial data, and
receive serial data. The data is organized as a TDM format, with up to 64 timeslots (nominally 8 bits each)
per frame, with a nominal frame rate of 8 kHz (8 bits × 8 kHz = 64 kbps nominal data rate per channel). Up
to four input timeslots and up to four output timeslots can be independently selected in each half-frame. The
CHI Module does not handle the timeslots which are not selected for input or output. The number of
timeslots and the data rate (up to 4.096 Mbps) and frame rate (up to 64 kHz, depending on the system
configuration) are programmable, providing flexibility for supporting various TDM communication
peripherals. These timeslots are commonly used to carry voice, data, or control and status information.
The CHI Module provides full-duplex DMA support for receive and transmit (two DMA channels). The
DMA buffers can be configured in a continuous (circular) buffer mode or a one-time (empty or fill, then
stop) buffer mode. Half-buffer and end-of-buffer DMA address counter interrupts are available, allowing the
CPU to minimize overhead and efficiently empty or fill half of the DMA buffer in a ping-pong fashion. The
DMA buffer size is programmable (from a minimum of 16 bytes up to a maximum of 16 Kbytes) and the
receive and transmit buffers can be configured to either reside in different memory spaces or share the same
memory space (overlapping buffers for loopback purposes or for optimum memory allocation). Also
available is a direct CPU read/write mode for bypassing the DMA, allowing the CPU to read or write the
CHI data on a sample by sample basis, if so desired.
16-1
Chapter 16 CHI Module
16.2 Block Diagram
See Figure 16.2.1 for a block diagram of the CHI Module.
The CHI Module consists of holding registers (both transmit and receive), shift registers (both transmit
and receive), DMA support, and other logic to support interfacing to various types of TDM highways.
Data from DMA or CPU
32
Control From CPU
32B TX Hold REG-A
32B TX Hold REG-B
8
TX TDM
Switch
CTRL
REG
MSB VS LSB First
TXOE
TX Shift Load
CMP
8
OUT
REG
8B TX Shift REG
CHIDOUT
CLK
PRGM
Divider
TX CH CNT
CHICLK
CHI
CTRL
and
STAT
REG
Clock
and
Control
Logic
SYNCH
PRGM
Divider
CHIFS
SYNCH
RX CH CNT
RX TDM
SWITCH
CTRL
REG
CMP
RX Hold Load
8B RX Shift REG
SYNCH
8
MSB VS LSB First
8
32B RX Hold REG-A
32B RX Hold REG-B
32
Data to DMA or CPU
Figure 16.2.1 CHI Module Block Diagram
16-2
CHIDIN
Chapter 16 CHI Module
16.3 Detailed Explanation
16.3.1
Transmitter
For the CHI transmit direction, Buffer-A and Buffer-B transmit holding registers are written either
from the DMA circuit or directly from the CPU. Each of these 2 holding registers are 32-bits wide, and
CHI control logic determines which byte from which holding register gets loaded at a given time into
the 8-bit transmit shift register. In addition, the byte data loaded from the holding register to the shift
register can be MSB-first or LSB-first. The reason for having Buffer-A and Buffer-B holding registers
is that the CHI Module operates in a ping-pong fashion. Each frame of data is partitioned into 2 buffers
(A and B); for example, with 64 timeslots total, the data is partitioned into 32 timeslots per buffer. The
ping-pong operation allows one buffer to be updated (via the DMA or CPU) while the other buffer is
being loaded into the shift register a byte at a time, depending on which timeslots are active. The pingpong operation is transparent to the CPU or DMA interface, since the CHI Module automatically points
to the correct A or B buffer at a given time and the CPU or DMA always accesses the same 32-bit
holding register for all transactions.
The transmit TDM switch control register is used to select ANY 4 channels per buffer to be loaded
from the holding register to the shift register. For example, if the CHI Module is configured for 32
timeslots per buffer (64 total timeslots), any 4 channels per buffer (8 total) can be selected out of the 32
available channels. The CHIDOUT signal is tri-stated during any of the non-selected channels. Each of
the 8 selected channels also has an individual control bit for enabling/disabling the timeslot.
Figure 16.3.1 shows how the transmit TDM switch works, for example, with 16 total timeslots.
Please refer to “16.4 Registers”.
TX Holding Register A
byte3
byte2
byte1
TX Holding Register B
byte0
byte3
Bit31…………………….Bit0
Bit0……………….Bit31
CHIDOUT
ch0
ch1
ch2
ch3
Bit
Hi-Z
byte2
byte1
byte0
Bit31…………………….Bit0
Hi-Z
Hi-Z
Hi-Z
Hi-Z
16…13
ch9
Hi-Z
0x07
0
0xFFxx_0000
0x0302_0100
0x0501_0306
Figure 16.3.1 Transmit TDM Switch Example
16-3
24…31
0…7
ch11 Hi-Z ch13 ch14 Hi-Z
CHIFS
CHINCHAN[4:0]
TXMSBFIRST
CHI Pointer Enable
CHI Transmit Pointer A
CHI Transmit Pointer B
8…15
Chapter 16 CHI Module
16.3.2
Receiver
For the CHI receive direction, Buffer-A and Buffer-B receive holding registers are read either by the
DMA circuit or directly by the CPU. Each of these 2 holding registers are 32 bits wide, and CHI control
logic determines which byte to which holding register gets loaded at a given time from the 8-bit receive
shift register. In addition, the byte data loaded from the shift register to the holding register can be
MSB-first or LSB-first. Similar to the transmit direction, the receive section also operates in a pingpong fashion, allowing one buffer to be read (via the DMA or CPU) while the other buffer is being
loaded from the shift register a byte at a time, depending on which timeslots are active.
The receive TDM switch control register (independent from the transmit TDM switch control
register) is used to select ANY 4 channels per buffer to be loaded from the shift register to the holding
register. Each of the 8 selected channels also has an individual control bit for enabling/disabling the
timeslot.
An interrupt is available whenever a valid 32 bit word is available from the receive data holding
register A. This also means a valid CHI output sample can be written to the transmit data holding
register A. Similarly, an interrupt is also available whenever a valid 32 bit word is available from the
receive data holding register B. This also means a valid CHI output sample can be written to the
transmit data holding register B.
16.3.3
Clock and Control Generation
The CHI Module contains several programmable counters which are used to generate the various
CHI internal and external control signals and clocks. See Figure 16.3.3 for a block diagram of the CHI
clock and control generation circuit. As mentioned previously, CHICLK can be configured as either an
output (master mode) or input (slave mode). As an output, CHICLK is derived by dividing down from
IMBUSCLKF. In this mode, all CHI clocks are then synchronously locked to the main TX4925 system
clock. As an input, CHICLK is generated from an external clock source, which is asynchronous with
respect to IMBUSCLKF. The TX4925 CHI Module utilizes a digital-PLL circuit to stay “locked” to the
external source, while still operating internally using IMBUSCLKF CHIDIN and CHIDOUT are also
synchronized between IMBUSCLKF and the externally-supplied CHICLK.
CHIFS can also be configured as either an output (master mode) or input (slave mode). As an output,
CHIFS is derived by dividing down from CHICLK. For this mode, the CHIFS pulse width and polarity
is also programmable. As an input, CHIFS is generated from an external sync source. The TX4925 CHI
Module utilizes a digital-PLL circuit to stay “locked” to the external sync source, while still operating
internally using IMBUSCLKF.
The programmable receive and transmit sync delay counters shown in See Figure 16.3.2 are used to
implement the bit offset feature described earlier. The bit offset control bits determine the number of
clock cycles between the start of timeslot 0 and CHIFS. The receive and transmit sync delay counters
are independent from each other, such that the receive and transmit serial data streams can have
different bit offsets.
The programmable receive channel counter output is constantly compared with the receive TDM
switch control register values, and whenever a match occurs, the byte of data is loaded from the receive
shift register into the correct field within the receive holding register. Similarly, the programmable
transmit channel counter output is constantly compared with the transmit TDM switch control register
values, and whenever a match occurs, the byte of data is loaded from the correct field within the
transmit holding register into the receive shift register.
16-4
Chapter 16 CHI Module
All control registers, including the TDM switch control registers, must be unchanged while the CHI
Module is enabled. If any register is changed during the CHI operation, the result is undefined.
IMBUSCLK
PRGM
CHICLK
Divider
CHICLK
SYNCH Digital PLL
PRGM
CHIFS
Divider
CHIFS
SYNCH Digital PLL
PRGM RX
FS Delay
CNT
÷ 8/16
RX Bit
CNT
PRGM
RX CHAN
CNT
Decode
RX Start/Stop Control
RX Shift REG Control
RX Holding REG Control
RX DMA REQ Control
Sample Interrupt
CMP
RX TDM Switch CNTL
PRGM TX
FS Delay
CNT
÷ 8/16
TX Bit
CNT
PRGM
TX CHAN
CNT
Decode
TX Start/Stop Control
TX Shift REG Control
TX Holding REG Control
TX DMA REQ Control
Sample Interrupt
TX CHIDOUT Enable
CMP
TX TDM Switch CNTL
Control from CPU
Figure 16.3.2 CHI Clock and Control Generation
16-5
Chapter 16 CHI Module
16.3.4
DMA Address Generation
The CHI Module provides support for 2 full-duplex DMA channels: receive and transmit. The circuit
used to generate the DMA address, as well as half-buffer and end-of-buffer interrupts is shown in
Figure 16.3.3.
DMA RD/WR mode
RX
Start
ADDR
30
2:1
TX
Start
ADDR
DMA
CNTL
REG
CNT
Load
Logic
One-time VS.
Circular mode
12
DMA
ADDR CNT
CLK
12
Buffer
Size
12
÷2
30
DMA ADDR
CMP
End-of-buffer
Interrupt
CMP
Half-buffer
Interrupt
Control from CPU
Figure 16.3.3 CHI DMA Address Generation
The DMA buffer size is programmable (from a minimum of 16bytes up to a maximum of 16 Kbytes)
and the receive and transmit buffer start addresses are also programmable (anywhere over the full 32-bit
address space). Because there are separate start addresses, the receive and transmit buffers can be
configured to either reside in different memory spaces or share the same memory space. But in the
loopback mode, it can only share the same memory space and this ordering allows a receive-to-transmit
immediate via the DMA buffer. Thus, received samples are written to the DMA buffer location
immediately after transmit samples were read from that same location (which then became immediately
available). This ordering allows a single circular DMA buffer to be used for both transmit and receive
samples.
The DMA buffers can be configured in a circular buffer mode or a one-time buffer mode. For the
circular mode, the DMA address is continuously incremented (each time a DMA acknowledge is
received from the TX4925’s central DMA controller) and rolls over back to the start address after the
end-of-buffer is reached and will continue operating in a continuous and circular manner. For the onetime mode, the DMA logic will stop executing whenever the end-of-buffer is reached.
Because the CHI Module reads and writes a byte at a time between the shift registers and the 32 bit
holding registers, the software must pack and unpack these bytes to and from the 32 bit words in
memory in order to multiplex and demultiplex each channel for processing. Table 16.3.1 shows the
format and organization of the CHI channels within memory for DMA mode. Consecutive byte samples
for a given channel reside in memory every 8th byte.
16-6
Chapter 16 CHI Module
Note that the byte lanes are swapped between the little- and big-endian modes. In the little-endian
mode, bits 31:24 of a word on the DMA buffer correspond to the byte lane with the address offset ‘+3’
and therefore to the ‘byte0’ in the CHI TX/RX holding register. On the contrary, in the big-endian
mode, bits 31:24 of a word on the DMA buffer correspond to the byte lane with the address offset ‘+0’
and therefore to the ‘byte3’ in the CHI TX/RX holding register.
Table 16.3.1 CHI DMA Memory Organization
(Relative)
Memory
Address
+0
+1
+2
+3
+0x0
buffA, byte3
sample 0
buffA, byte2
sample 0
buffA, byte1
sample 0
buffA, byte0
sample 0
+0x4
buffB, byte3
sample 0
buffB, byte2
sample 0
buffB, byte1
sample 0
buffB, byte0
sample 0
+0x8
buffA, byte3
sample 1
buffA, byte2
sample 1
buffA, byte1
sample 1
buffA, byte0
sample 1
+0xC
buffB, byte3
buffB, byte2
buffB, byte1
buffB, byte0
sample 1
sample 1
sample 1
sample 1
buffA, byte3
sample 2
buffA, byte2
sample 2
buffA, byte1
sample 2
buffA, byte0
sample 2
+0x10
etc.
For a given channel, the minimum input-to-output latency for the CHI data path is (4 cycles) ×
(62.5 µs) = 250 µs, assuming an 8 kHz frame rate. These required 4 cycles are as follows:
•
1 cycle to load receive shift register into receive holding register
•
1 cycle for DMA of receive holding register data into receive memory space
(insert here any application-specific time required for processing of received data and moving
result to transmit memory space)
•
1 cycle for DMA of data in transmit memory space to transmit holding register
•
1 cycle to load transmit holding register data into transmit shift register
Half-buffer and end-of-buffer DMA address counter interrupts are available, allowing the CPU to
minimize overhead and utilize the DMA buffer in a ping-pong fashion. For transmit mode, the CPU can
use these interrupts to fill or write one half of the buffer while the other half is being emptied by the
DMA controller for transmitting out the CHI. Similarly, for receive mode, the CPU can use these
interrupts to empty or read one half of the buffer while the other half is being filled by the DMA
controller from received CHI input samples.
Also available is a direct CPU read/write mode for bypassing the DMA, allowing the CPU to read or
write the CHI data on a sample by sample basis, if so desired. Separate DMA enables for receive and
transmit allow DMA to be setup for receive only (transmit via CPU), transmit only (receive via CPU),
receive and transmit, or none (receive and transmit via CPU).
The DMA circuit also provides an interrupt each time the DMA buffer pointer is incremented, which
occurs whenever a new sample is read from and/or written to the DMA buffer. This interrupt may be
useful for triggering a read of the DMA pointer status value, which is the actual 12-bit DMA address
counter output. This value indicates exactly where the current address is pointing to in the overall DMA
buffer.
16-7
Chapter 16 CHI Module
16.3.5
Timing Diagram
Figure 16.3.4 shows timing diagram for DMA transfer.
ENCHI (*)
CHIFS
Hi-Z
Ch.A TX Data#1
Ch.B TX Data#1
Ch.A TX Data#2
Ch.B TX Data#2
Ch.A TX Data#3
Ch.B TX Data#3
Discarded Data
Ch.A RX Data#1
Ch.B RX Data#1
Ch.A RX Data#2
Ch.B RX Data#2
Ch.A RX Data#3
Ch.B RX Data#3
CHIDOUT
CHIDIN
TXCNTB (*)
RXCNTB (*)
CHIREQ (*)
CHIWR (*)
CHIACK (*)
DMADIN (*)
Ch.A TX Data#1
00000000 Ch.B TX Data#1 00000000 Ch.A TX Data#2 00000000 Ch.B TX Data#2 00000000 Ch.A TX Data#3 00000000 Ch.B TX Data#3 00000000 Ch.A TX Data#4 00000000
CHIDMADOUT (*)
TXADRCNT (*)
+0
+1
+2
+3
+4
+5
+6
+7
CHITXREQ (*)
CHITXADR (*)
+0
+1
+2
+3
+4
+5
+6
+7
CHITXACK (*)
CHITXDIN (*)
Latch (*)
RXADRCNT (*)
CHIRXDOUT (*)
Ch.A TX Data#1
+0
Ch.B TX Data#1
Ch.A TX Data#2
+1
00000000
Ch.B TX Data#2
+2
Ch.A RX Data#1
Ch.A TX Data#3
+3
Ch.B TX Data#3
+4
Ch.A TX Data#4
+5
Ch.B RX Data#1
Ch.A RX Data#2
Ch.B RX Data#2
+3
+4
+5
Ch.B TX
Data#4
+6
CHIRXREQA (*)
CHIRXADR (*)
+0
CHIRXACKA (*)
(*): Internal signal
Figure 16.3.4 Timing Diagram for DMA Transfer.
16-8
+6
Chapter 16 CHI Module
16.3.6
Interrupts
The CHI module has eight types interrupt sources. OR signal of them connects to the internal
Interrupt Controller (IRC). Please check CHI Interrupt Status Register (CHIINT) to know which type
of interrupt occurred.
Type
Status Bits
Mask-able Bit
CHIBUSERROR
BUSI
BUSIE
CHI0_5
05I
05IE
CHI1_0
10I
10IE
CHIDMACNT
DCI
DCIE
CHIININTA
INAI
INAIE
CHIININTB
INBI
INBIE
CHIACT
ACTI
ACTIE
CHIERR
ERRI
ERRIE
CHIBUSERRORINT:
Issues an interrupt whenever the CHI DMA has bus error.
CHI0_5INT:
Issues an interrupt whenever the CHI DMA buffer pointer has reached the halfway point.
CHI1_0INT:
Issues an interrupt whenever the CHI DMA buffer pointer has reached the end-of-buffer point.
CHIDMACNTINT:
Issues an interrupt each time the CHI DMA buffer pointer is incremented, which occurs whenever a
new CHI sample is read from and/or written to the CHI DMA buffer.
CHIININTA:
Issues an interrupt whenever a valid CHI input sample is available from CHI RX Holding Register A;
this also means a valid CHI output sample can be written to CHI TX Holding Register A.
CHIININTB:
Issues an interrupt whenever a valid CHI input sample is available from CHI RX Holding Register B;
this also means a valid CHI output sample can be written to CHI TX Holding Register B.
CHIACTINT:
Issues an interrupt whenever CHICLK is active. This is used for CHI wakeup purposes.
CHIERRINT:
Issues an interrupt whenever a CHI error is received. This interrupt is triggered if CPU or DMA
reading of the CHI RX Holding Registers does not keep up with the hardware filling of the CHI RX
Holding Registers or if CPU or DMA writing of the CHI TX Holding Registers does not keep up with
the hardware emptying of the CHI TX Holding Registers.
16-9
Chapter 16 CHI Module
16.3.7
Frame Structure and Serial Timing
Each CHI frame (nominally 8 kHz rate) is time-division-multiplexed into several timeslots or
channels. The total number of timeslots per frame is programmable, with a maximum of 64 timeslots
allowed, and the number of timeslots is also restricted to an even number. Each timeslot is 8 bits,
although 16-bit or 32-bit channels can be supported by accessing adjacent timeslots.
The TX4925 CHI Module supports a master or slave mode for both the clock (CHICLK) and sync
(CHIFS). For the master mode, the TX4925 contains programmable dividers for generating the clock
and/or sync signal, synchronously dividing down from the main core clock (CLK). For the slave mode,
TX4925 accepts external clock and/or sync signals and utilizes “digital-PLL” type circuitry to stayed
“locked” to the external source.
The CHI Module supports the following programmable features which allow support for various
clock and sync timing formats:
1x versus 2x clock modes for CHICLK (2x clock mode uses two CHICLK periods per data bit)
MSB-first versus LSB-first serial formats for transmit and receive
rising versus falling edge (polarity) used for frame sync triggering
CHIFS signal can be sampled on either rising or falling edge of CHICLK
CHIDIN receive data can be sampled on either rising or falling edge of CHICLK
CHIDOUT transmit data can be pushed on either rising or falling edge of CHICLK
CHIDIN receive data can have programmable bit offset (timeslot 0 offset from CHIFS)
CHIDOUT transmit data can have programmable bit offset (timeslot 0 offset from CHIFS)
CHIDOUT transmit data (tri-state) output buffer enable is dynamically asserted for only active
timeslots; for sleep mode CHIDOUT is always tri-stated
for CHIFS master mode, the CHIFS pulse width and polarity is programmable
The TX4925 CHI Module allows for a programmable bit offset for both CHIDIN and CHIDOUT,
which is related to the number of clock cycles between the start of timeslot 0 and CHIFS. This
flexibility allows the TX4925 CHI Module to support a wide variety of interface clock and sync timing
formats. The control bits for controlling the CHIDIN bit offset are CHIRXBOFF[3:0], while the control
bits for controlling the CHIDOUT bit offset are CHITXBOFF[3:0].
16-10
Chapter 16 CHI Module
Table 16.3.2 and Table 16.3.3 shows a summary matrix for the values of CERX and CETX for all
possible settings of CHIRXBOFF and CHITXBOFF, respectively. These values are shown for various
configurations of CHICLK mode (1x versus 2x), CHIFSEDGE, CHIRXEDGE, and CHITXEDGE. The
CHIFSEDGE settings determine whether to use the rising edge (CHIFSEDGE = 1) or falling edge
(CHIFSEDGE = 0) of CHICLK to sample CHIFS. The CHIRXEDGE settings determine whether to use
the rising edge (CHIRXEDGE = 1) or falling edge (CHIRXEDGE = 0) of CHICLK to sample the
CHIDIN input. The CHITXEDGE settings determine whether to use the rising edge (CHITXEDGE =
1) or falling edge (CHITXEDGE = 0) of CHICLK to push the CHIDOUT output. CERX is defined as
the number of CHICLK clock edges (rising and falling) between the edge where CHIFS is sampled and
the edge where CHIDIN is sampled. CETX is defined as the number of CHICLK clock edges (rising
and falling) between the edge where CHIFS is sampled and the edge where CHIDOUT is pushed. The
CHI frame structure and bit offsets are shown in Figure 16.3.5 to 16.3.11 for various clock and sync
configurations.
Table 16.3.2 CERX Values for CHIRXBOFF Versus Clock and Edge Configurations
CHICLK CHIFS- CHIRXMode
Edge
Edge
CHIRXBOFF
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
1x
0
0
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
1x
1
1
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
1x
0
1
−1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
1x
1
0
−1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
2x
0
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
2x
1
1
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
32
2x
0
1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
2x
1
0
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
31
Table 16.3.3 CETX Values for CHITXBOFF Versus Clock and Edge Configurations
CHICLK CHIFS- CHIRXMode
Edge
Edge
CHITXBOFF
0
1
2
3
4
5
6
7
8
9
10 11 12 13 14 15
1x
0
0
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
1x
1
1
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
1x
0
1
−1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
1x
1
0
−1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
2x
0
0
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
2x
1
1
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
2x
0
1
−1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
2x
1
0
−1
1
3
5
7
9
11
13
15
17
19
21
23
25
27
29
When the CHI frame consists of only two time slots, not all the BOFF values are supported. The
offsets must be within the half-frame.
16-11
Chapter 16 CHI Module
channel 1 Start
Frame start
channel 0
channel 63
channel 1
CHICLK
CHIFS
CHIDIN
0
1
2
6
7
CHIDOUT
0
1
2
6
7
Figure 16.3.5 CHI Frame Structure Example
CHICLK 1X mode
CHIFS sampled on falling edge
CHIDIN sampled on falling edge; RXBOFF = 0; CERX = 0
CHIDOUT pushed on rising edge; TXBOFF = 0; CETX = 1
channel 1 Start
Frame start
channel 0
channel 63
channel 1
CHICLK
CHIFS
CHIDIN
0
CHIDOUT
1
0
2
1
6
2
7
6
7
Figure 16.3.6 CHI Frame Structure Example
CHICLK 1X mode
CHIFS sampled on rising edge
CHIDIN sampled on falling edge; RXBOFF = 1; CERX = 1
CHIDOUT pushed on falling edge; TXBOFF = 1; CETX = 1
16-12
Chapter 16 CHI Module
channel 1 Start
Frame start
channel 0
channel 63
channel 1
CHICLK
CHIFS
CHIDIN
CHIDOUT
0
0
1
2
1
2
6
6
7
7
Figure 16.3.7 CHI Frame Structure Example
CHICLK 1X mode
CHIFS sampled on falling edge
CHIDIN sampled on rising edge; RXBOFF = 2; CERX = 3
CHIDOUT pushed on falling edge; TXBOFF = 0; CETX = 0
channel 1 Start
Frame start
channel 0
channel 63
channel 1
CHICLK
CHIFS
CHIDIN
0
1
2
6
7
CHIDOUT
0
1
2
6
7
Figure 16.3.8 CHI Frame Structure Example
CHICLK 2X mode
CHIFS sampled on falling edge
CHIDIN sampled on rising edge; RXBOFF = 0; CERX = 1
CHIDOUT pushed on rising edge; TXBOFF = 0; CETX = 1
16-13
Chapter 16 CHI Module
channel 1 Start
Frame start
channel 1
channel 0
channel 63
CHICLK
CHIFS
CHIDIN
0
1
2
6
7
CHIDOUT
0
1
2
6
7
Figure 16.3.9 CHI Frame Structure Example
CHICLK 2X mode
CHIFS sampled on falling edge
CHIDIN sampled on rising edge; RXBOFF = 2; CERX = 5
CHIDOUT pushed on rising edge; TXBOFF = 2; CETX = 3
channel 1 Start
Frame start
channel 0
channel 63
channel 1
CHICLK
CHIFS
CHIDIN
0
1
2
6
7
CHIDOUT
0
1
2
6
7
Figure 16.3.10 CHI Frame Structure Example
CHICLK 2X mode
CHIFS sampled on rising edge
CHIDIN sampled on rising edge; RXBOFF = 0; CERX = 2
CHIDOUT pushed on rising edge; TXBOFF = 0; CETX = 0
16-14
Chapter 16 CHI Module
channel 1 Start
Frame start
channel 0
channel 63
channel 1
CHICLK
CHIFS
CHIDIN
0
1
2
6
7
CHIDOUT
0
1
2
6
7
Figure 16.3.11 CHI Frame Structure Example
CHICLK 2X mode
CHIFS sampled on falling edge
CHIRXFSPOL = 1 (negative polarity)
CHIDIN sampled on rising edge; RXBOFF = 1; CERX = 3
CHIDOUT pushed on rising edge; TXBOFF = 1; CETX = 1
16-15
Chapter 16 CHI Module
16.3.8
Configurations
The programmability of the clock, sync, bit offsets, and number of timeslots allows the CHI Module
to support a wide range of configurations. Several of these configurations are commonly utilized as
communication interfaces by numerous commercial products, some of which are briefly discussed
below. Other configurations are available for application-specific usage.
The K2 Interface is an AT&T standard used as a serial inter-chip digital interface between U-interface
transmission circuits and various system-wide interface circuits. The K2 Interface utilizes four pins
(clock, sync, data in, and data out) and consists of eight 8-bit timeslots, with a frame rate of 8 kHz and a
clock rate of 512 kHz.
The SLD Interface utilizes 3 pins (clock, sync, data), with the transmit and receive pins tied together,
such that the data is sent bi-directionally in a ping-pong fashion. The SLD Interface consists of eight 8bit timeslots, with 4 timeslots reserved for transmit and 4 timeslots reserved for receive. The frame rate
is 8 kHz and the clock rate is 512 kHz.
The GCI Interface is a 4-pin variable-speed TDM highway utilizing anywhere from 4 to 48 timeslots.
The frame rate is 8 kHz and the clock rate is 2x the data rate and varies from 512-kHz to 6.144 MHz.
The IOM-2 Interface is commonly used to interface to 4-pin ISDN line interface drivers. Each frame
consists of twelve 8-bit timeslots, with a frame rate of 8 kHz and a (2x) clock rate of 1.536-MHz.
The CEPT Level-1 PCM Format is a common communications standard used for digital transmission
of voice and data. Each frame consists of 32 8-bit timeslots, with a frame rate of 8-kHz and a (1x) clock
rate of 2.048 MHz.
Table 16.3.4 shows a summary matrix of several example CHI configurations and their associated
parameters.
Table 16.3.4 Example CHI Configurations (Table Values Based on IMBUSCLKF = 32.256 MHz)
CHICLK
Divide
Time Slots
CHICLK
Mode
fs
CHICLK Rate
Data Rate
Comments
4
64
2x
8 kHz
8.064 MHz
4.032 Mbps
6
48
2x
8 kHz
5.376 MHz
2.688 Mbps
slave mode only
GCI format
8
64
1x
8 kHz
4.032 MHz
4.032 Mbps
CHI format
hi-speed mode
8
8
1x
64 kHz
4.032 MHz
4.032 Mbps
9
64
1x
7.2 kHz
3.584 MHz
3.584 Mbps
11
24
2x
8 kHz
2.932 MHz
1.466 Mbps
11
48
1x
8 kHz
2.932 MHz
2.932 Mbps
16
32
1x
8 kHz
2.016 MHz
2.016 Mbps
21
12
2x
8 kHz
1.536 MHz
768 kbps
IOM-2 format
63
8
1x
8 kHz
512 kHz
512 kbps
K2, SLD formats
CEPT PCM format
Note that the maximum achievable frame rate depends on the system configuration. If devices with
long access time and/or 16 bit-wide data bus are used, the frame rate of 64 kHz may be unachievable
because of the reduced bus band width. Using other interfaces in parallel with CHI and/or reducing the
CPU clock frequencies will also reduce the band width available for CHI.
16-16
Chapter 16 CHI Module
16.4 Registers
All registers should be accessed only as full word (32-bit) accesses. Any other type of access produces an
undefined result. Please write “0” to the undefined bit.
Table 16.4.1 CHI Module Registers
Reference
Offset Address
Bit Width
Register Symbol
Register Name
16.4.1
0xA800
32 bit
CTRL
CHI Control Register
16.4.2
0xA804
32 bit
PNTREN
CHI Pointer Enable Register
16.4.3
0xA808
32 bit
RXPTRA
CHI Receive Pointer A Register
16.4.4
0xA80C
32 bit
RXPTRB
CHI Receive Pointer B Register
16.4.5
0xA810
32 bit
TXPTRA
CHI Transmit Pointer A Register
16.4.6
0xA814
32 bit
TXPTRB
CHI Transmit Pointer B Register
16.4.7
0xA818
32 bit
CHISIZE
CHI SIZE Register
16.4.8
0xA81C
32 bit
RXSTRT
CHI RX Start Register
16.4.9
0xA820
32 bit
TXSTRT
CHI TX Start Register
16.4.10
0xA824
32 bit
HOLD
CHI TX Hold Register (write only)
16.4.10
0xA824
32 bit
HOLD
CHI RX Hold Register (read only)
16.4.12
0xA828
32 bit
CLOCK
CHI Clock Register
16.4.13
0xA82C
32 bit
CHIINTE
CHI Interrupt Enable Register.
16.4.14
0xA830
32 bit
CHIINT
CHI Interrupt Status Register
16-17
Chapter 16 CHI Module
16.4.1
CHI Control Register (CTRL)
31
30
Reserved
29
28
27
LOOP TEST FDIR
R/W
0
15
RBOF
R/W
0000
R/W
0
12
26
25
FWID
0xA800
24
20
R/W
0
R/W
0
R/W
0
R/W
0
Field Name
R/W
0
16
TBOF
R/W
R/W
R/W
0
00
00000
11
10
9
8
7
6
5
4
TMSB RMSB RFPL TFPL REDG TEDG FEDG TFED
R/W
0
19
CHAN
R/W
0
R/W
0
R/W
0000
: Type
: Initial value
3
C2X
2
REN
1
TEN
0
CEN
R/W
0
R/W
0
R/W
0
R/W : Type
0
: Initial value
Bits
Mnemonic
31:30

Reserved
Description

29
LOOP
CHILOOP
CHILOOP bit (Initial value: 0, R/W)
This bit is used for IC testing and should not be set. Setting this bit to a logic “1”
will cause the CHI serial transmitted data to be internally looped back to the CHI
serial receive data path. The data is inverted when this mode is selected. Clearing
this bit to a logic “0” selects the normal CHIDIN pin as the CHI serial receive data
source.
28
TEST
CHIENTEST
CHIENTEST bit (Initial value: 0, R/W)
This bit is used for IC testing and should not be set.
27
FDIR
CHIFSDIR
CHIFSDIR bit (Initial value: 0, R/W)
This bit controls the direction of the CHIFS pin.
0: CHIFS to be an input.(CHI sync slave mode) Note*
1: CHIFS to be an output.(CHI sync master mode)
Note that CHIRXFSPOL and CHIFSEDGE bits must be set to proper values even
when CHIFSDIR is set to a logic “1” (CHI sync master mode).
26:25
FWID[1:0]
CHIFSWIDTH
CHIFSWIDTH bits (Initial value: 00, R/W)
These bits are used to select pulse width for the CHIFS signal, relevant whenever
the CHI Module is configured as master mode. The pulse width is counted by data
bit width. (In clk2x mode, two CHICLKs correspond to one data bit.) The available
CHIFS pulse widths are as follows
00: 1 bit wide
01: 2 bits wides
10: 1 byte wide
11: half-frame wide
24:20
CHAN[4:0]
CHINCHAN
CHINCHAN bits (Initial value: 00000, R/W)
These bits are used to program the number of 8-bit channel timeslots per halfframe, up to 32 total per half-frame. The value loaded for CHINCHAN is the
desired number of channels-1.
19:16
TBOF[3:0]
CHTXBOFF
CHITXBOFF bits (Initial value: 0000, R/W)
These bits select the transmit data programmable bit offset, which is related to the
number of clocks from the start of timeslot 0 (1st timeslot) transmit data to the
CHIFS edge used to trigger the start of each CHI frame. The value loaded for
CHITXBOFF must be chosen from Table 16.3.3 according to the configuration.
15:12
RBOF[3:0]
CHIRXBOFF
CHIRXBOFF bits (Initial value: 0000, R/W)
These bits select the receive data programmable bit offset, which is related to the
number of clocks from the start of timeslot 0 (1st timeslot) receive data to the
CHIFS edge used to trigger the start of each CHI frame. The value loaded for
CHIRXBOFF must be chosen from Table 16.3.2 according to the configuration.
11
TMSB
TXMSBFIRST
TXMSBFIRST bit (Initial value: 0, R/W)
This bit selects between MSB-first and LSB-first serial data formats for each byte
of the CHI transmit data.
0: LSB-first
1: MSB-first
Figure 16.4.1 Control Register (CTRLREG) (1/3)
16-18
Chapter 16 CHI Module
Bits
Mnemonic
Field Name
Description
10
RMSB
RXMSBFIRST
9
RFPL
CHIRXFSPOL
CHIRXFSPOL bit (Initial value: 0, R/W)
This bit selects between positive (active high) or negative (active low) polarity for
the received CHIFS signal pulse. This bit must be properly set in CHI sync master
mode, as well as in CHI sync slave mode; In CHI sync master mode,
CHIRXFSPOL must be equal to CHITXFSPOL.
0: positive polarity for the CHIFS pulse. (the rising edge of the CHIFS pulse is
used to trigger the start of the CHI frame period.)
1: negative polarity for the CHIFS pulse. ( the falling edge of the CHIFS pulse is
used to trigger the start of the CHI frame period.)
8
TFPL
CHITXFSPOL
CHITXFSPOL bit (Initial value: 0, R/W)
This bit selects between positive (active high) or negative (active low) polarity for
the transmitted CHIFS signal pulse, relevant whenever the CHI Module is
configured as master mode.
0: positive polarity for the CHIFS pulse
1: negative polarity for the CHIFS pulse
7
REDG
CHIRXEDGE
CHIRXEDGE bit (Initial value: 0, R/W)
This bit selects whether to use either the rising edge or falling edge of CHICLK to
sample the receive data CHIDIN. CHIDIN must be stable before and after the
specified CHICLK edge.
0: falling edge
1: rising edge
6
TEDG
CHITXEDGE
CHITXEDGE bit (Initial value: 0, R/W)
This bit selects whether to use either the rising edge or falling edge of CHICLK to
clock out the transmit data CHIDOUT.
0: falling edge
1: rising edge
5
FEDG
CHIFSEDGE
CHIFSEDGE bit (Initial value: 0, R/W)
This bit selects whether to use either the rising edge or falling edge of CHICLK to
sample the receive frame sync CHIFS. This bit must be properly set in CHI sync
master mode, as well as in CHI sync slave mode. CHIFS must be stable before
and after the specified CHICLK edge; In CHI sync master mode, CHIFSEDGE
must be equal to inverted CHITXFSEDGE.
0: falling edge
1: rising edge
4
TFED
CHITXFSEDGE
CHITXFSEDGE (Initial value: 0, R/W)
This bit selects whether to use either the rising edge or falling edge of CHICLK to
clock out the transmit frame sync CHIFS, relevant whenever the CHI Module is
configured as master mode.
0: falling edge
1: rising edge
3
C2X
CHICLK2XMODE
CHICLK2XMODE bit (Initial value: 0, R/W)
This bit selects between 1x and 2x clock modes.
0: 1x clock mode (CHICLK frequency equals the serial data bit rate)
1: 2x clock mode (CHICLK frequency equals twice the serial data bit rate)
2
REN
CHIRXEN
CHIRXEN bit (Initial value: 0, R/W)
This bit is used to enable/disable CHI receive processing in the direct CPU
read/write mode, where the CPU reads the received data through the CHI RX
holding register.
This bit has no effect when RX DMA is enabled.
0: Disable (all received data to not be processed by the CHI module)
1: Enable
RXMSBFIRST bit (Initial value: 0, R/W)
This bit selects between MSB-first and LSB-first serial data formats for each byte
of the CHI receive data.
0: LSB-first
1: MSB-first
Figure 16.4.1 Control Register (CTRLREG) (2/3)
16-19
Chapter 16 CHI Module
Bits
Mnemonic
Field Name
Description
1
TEN
CHITXEN
CHITXEN bit (Initial value: 0, R/W)
This bit is used to enable/disable CHI transmit processing in the direct CPU
read/write mode, where the CPU writes the data to be transmitted through the
CHI TX holding register.
This bit has no effect when TX DMA is enabled.
0: Disable (the CHI serial transmitted data to be tri-stated)
1: Enable
0
CEN
ENCHI
ENCHI bit (Initial value: 0, R/W)
This bit is used to enable/disable the CHI module. Setting this bit to a logic “1”
enables the CHI module. Clearing this bit to a logic “0” disables the CHI Module
and keeps the module in a reset state but gives no effect on the CHI Control
Register.
0: Disable (CHI Module and keeps the module in a reset state but gives no effect
on the CHI Control Register)
1: Enable
To begin the CHI operation, follow the procedure below.
(1) Set up all the configuration registers except CHIRXEN, CHITXEN,
ENDMARXCHI, ENDMATXCHI, and ENCHI bits.
(2) Set either CHIRXEN or ENDMARXCHI, and/or, either CHITXEN or
ENDMATXCHI, to a logic “1”.
(3) Set ENCHI to a logic “1”.
To finish the CHI operation.
(1) Clear ENCHI to a logic “0”.
(2) Clear ENDMARXCHI and/or ENDMATXCHI to a logic “0”, if they were
previously set.
Figure 16.4.1 Control Register (CTRLREG) (3/3)
16-20
Chapter 16 CHI Module
16.4.2
CHI Pointer Enable Register (PNTREN)
0xA804
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
16
TB3E TB2E TB1E TB0E TA3E TA2E TA1E TA0E RB3E RB2E RB1E RB0E RA3E RA2E RA1E RA0E
R/W
0
15
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W
0
R/W : Type
0
: Initial value
0
Reserved
: Type
: Initial value
Bits
Mnemonic
Field Name
Description
31
TB3E
CHITXPTRB3EN
CHITXPTRB3EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRB3.
0: Disable
1: Enable
30
TB2E
CHITXPTRB2EN
CHITXPTRB2EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRB2.
0: Disable
1: Enable
29
TB1E
CHITXPTRB1EN
CHITXPTRB1EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRB1.
0: Disable
1: Enable
28
TB0E
CHITXPTRB0EN
CHITXPTRB0EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRB0.
0: Disable
1: Enable
27
TA3E
CHITXPTRA3EN
CHITXPTRA3EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRA3.
0: Disable
1: Enable
26
TA2E
CHITXPTRA2EN
CHITXPTRA2EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRA2.
0: Disable
1: Enable
25
TA1E
CHITXPTRA1EN
CHITXPTRA1EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTRA1.
0: Disable
1: Enable
24
TA0E
CHITXPTRA0EN
CHITXPTRA0EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the transmit channel pointed to by
the TDM switch pointer CHITXPTAB0.
0: Disable
1: Enable
Figure 16.4.2 CHI Pointer Enable Register (PNTREN) (1/2)
16-21
Chapter 16 CHI Module
Bits
Mnemonic
Field Name
Description
23
RB3E
CHIRXPTRB3EN
CHIRXPTRB3EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRB3
0: Disable
1: Enable
22
RB2E
CHIRXPTRB2EN
CHIRXPTRB2EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRB2
0: Disable
1: Enable
21
RB1E
CHIRXPTRB1EN
CHIRXPTRB1EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRB1
0: Disable
1: Enable
20
RB0E
CHIRXPTRB0EN
CHIRXPTRB0EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRB0
0: Disable
1: Enable
19
RA3E
CHIRXPTRA3EN
CHIRXPTRA3EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRA3
0: Disable
1: Enable
18
RA2E
CHIRXPTRA2EN
CHIRXPTRA2EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRA2
0: Disable
1: Enable
17
RA1E
CHIRXPTRA1EN
CHIRXPTRA1EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRA1
0: Disable
1: Enable
16
RA0E
CHIRXPTRA0EN
CHIRXPTRA0EN bit (Initial value: 0, R/W)
This bit is used to enable/disable the timeslot for the receive channel pointed to by
the TDM switch pointer CHIRXPTRA0
0: Disable
1: Enable
15:0


Reserved
Figure 16.4.2 CHI Pointer Enable Register (PNTREN) (2/2)
16-22
Chapter 16 CHI Module
16.4.3
CHI Receive Pointer A Register (RXPTRA)
31
29
28
Reserved
24
23
RXPTRA3
0xA808
21
20
Reserved
W
00000
15
13
W
00000
12
Reserved
8
7
RXPTRA1
5
4
Reserved
Bits
Mnemonic

28:24
RXPTRA3[4:0]
23:21

20:16
RXPTRA2[4:0]
15:13

12:8
RXPTRA1[4:0]
7:5

4:0
RXPTRA0[4:0]

CHIRXPTRA3 bits (Initial value: 00000, R/W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 3 of the CHI receive holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.

Reserved
CHIRXPTRA2
CHIRXPTRA2 bits (Initial value: 00000, R/W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 2 of the CHI receive holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.

Reserved
CHIRXPTRA1
CHIRXPTRA1 bits (Initial value: 00000, R/W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 1 of the CHI receive holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.

Reserved
CHIRXPTRA0
: Type
: Initial value
Description
Reserved
CHIRXPTRA3
0
W
00000
Field Name
: Type
: Initial value
RXPTRA0
W
00000
31:29
16
RXPTRA2
CHIRXPTRA0 bits (Initial value: 00000, R/W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 0 of the CHI receive holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.
Figure 16.4.3 CHI Receive Pointer A Register (RXPTRA)
16-23
Chapter 16 CHI Module
16.4.4
CHI Receive Pointer B Register (RXPTRB)
31
29
28
Reserved
24
23
RXPTRB3
0xA80C
21
20
Reserved
W
00000
15
13
W
00000
12
Reserved
8
7
RXPTRB1
5
4
Reserved
Bits
Mnemonic

28:24
RXPTRB3[4:0]
23:21

20:16
RXPTRB2[4:0]
15:13

12:8
RXPTRB1[4:0]
7:5

4:0
RXPTRB0[4:0]

CHIRXPTRB3 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 3 of the CHI receive holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).

Reserved
CHIRXPTRB2
CHIRXPTRB2 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 2 of the CHI receive holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).

Reserved
CHIRXPTRB1
CHIRXPTRB1 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 1 of the CHI receive holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).

Reserved
CHIRXPTRB0
: Type
: Initial value
Description
Reserved
CHIRXPTRB3
0
W
00000
Field Name
: Type
: Initial value
RXPTRB0
W
00000
31:29
16
RXPTRB2
CHIRXPTRB0 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the receive channel
timeslot for byte 0 of the CHI receive holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).
Figure 16.4.4 CHI Receive Pointer B Register (RXPTRB)
16-24
Chapter 16 CHI Module
16.4.5
CHI Transmit Pointer A Register (TXPTRA)
31
29
28
Reserved
24
23
TXPTRA3
0xA810
21
20
Reserved
W
00000
15
13
W
00000
12
Reserved
8
7
TXPTRA1
5
4
Reserved
Bits
Mnemonic

28:24
TXPTRA3[4:0]
23:21

20:16
TXPTRA2[4:0]
15:13

12:8
TXPTRA1[4:0]
7:5

4:0
TXPTRA0[4:0]

CHITXPTRA3 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 3 of the CHI transmit holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.

Reserved
CHITXPTRA2
CHITXPTRA2 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 2 of the CHI transmit holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.

Reserved
CHITXPTRA1
CHITXPTRA1 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 1 of the CHI transmit holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.

Reserved
CHITXPTRA0
: Type
: Initial value
Description
Reserved
CHITXPTRA3
0
W
00000
Field Name
: Type
: Initial value
TXPTRA0
W
00000
31:29
16
TXPTRA2
CHITXPTRA0 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 0 of the CHI transmit holding register A; register A handles all
timeslots from channel 0 to channel CHINCHAN.
Figure 16.4.5 CHI Transmit Pointer A Register (TXPTRA)
16-25
Chapter 16 CHI Module
16.4.6
CHI Transmit Pointer B Register (TXPTRB)
31
29
28
Reserved
24
23
TXPTRB3
0xA814
21
20
Reserved
W
00000
15
13
W
00000
12
Reserved
8
7
TXPTRB1
5
4
Reserved
Bits
Mnemonic

28:24
TXPTRB3[4:0]
23:21

20:16
TXPTRB2[4:0]
15:13

12:8
TXPTRB1[4:0]
7:5

4:0
TXPTRB0[4:0]

CHITXPTRB3 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 3 of the CHI transmit holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).

Reserved
CHITXPTRB2
CHITXPTRB2 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 2 of the CHI transmit holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).

Reserved
CHITXPTRB1
CHITXPTRB1 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 1 of the CHI transmit holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).

Reserved
CHITXPTRB0
: Type
: Initial value
Description
Reserved
CHITXPTRB3
0
W
00000
Field Name
: Type
: Initial value
TXPTRB0
W
00000
31:29
16
TXPTRB2
CHITXPTRB0 bits (Initial value: 00000, W)
These bits represent the TDM switch pointer which defines the transmit channel
timeslot for byte 0 of the CHI transmit holding register B; register B handles all
timeslots from channel (CHINCHAN + 1) to channel (CHINCHAN × 2 + 1). The
value loaded for this TDM switch pointer is the desired timeslot number minus
(CHINCHAN + 1).
Figure 16.4.6 CHI Transmit Pointer B Register (TXPTRB)
16-26
Chapter 16 CHI Module
16.4.7
CHI SIZE Register (CHISIZE)
31
30
Reserved
0xA818
29
18
DCNT
17
16
Reserved
R
000000000000
15
14
B1TM DLOP
: Type
: Initial value
13
2
SIZE
1
0
RDEN TDEN
R/W
R/W
W
R/W
0
0
000000000000
0
Bits
Mnemonic
31:30

29:18
DCNT[13:2]
Field Name
0
: Initial value
Description

Reserved
CHIDMACNT
R/W : Type
CHIDMACNT bits (Initial value: 0000_0000_0000, R)
These bits provide the status of the CHI DMA counter.
17:16

15
B1TM
CHIBUF1TIME
CHIBUF1TIME bit (Initial value: 0, R/W)
The CHI DMA controller supports two buffer addressing modes depending on the
state of this bit.
0: the CHI DMA controller will loop back to the start of the DMA buffer when the end
of the DMA buffer is reached and will continue operating in a continuous and
circular manner.
1: the CHI DMA controller will stop executing when it reaches the end of the DMA
buffer.

14
DLOP
CHIDMALOOP
CHIDMALOOP bit (Initial value: 0, R/W)
This bit selects loopback modes depending on the state of this bit.
0: not loopback mode.
1: loopback mode(This ordering allows an RX-to-TX immediate loopback via the
DMA buffer. Please refer to the chapter of 16.3.4
13:2
SIZE[13:2]
CHISIZE
CHISIZE bits (Initial value: 0000_0000_0000, W)
These bits define the size of the CHI DMA buffers (16 bytes minimum/16 Kbytes
maximum). Both the CHI RX buffer and the CHI TX buffer are the same size. The
last address in the CHI RX DMA buffer is given by CHIRXSTART[31:2] ·
CHISIZE[13:2]. The last address in the CHI TX DMA buffer is given by
CHITXSTART[31:2] · CHISIZE[13:2]. The value loaded into CHISIZE should be
equal to the desired buffer length-1.
1
RDEN
CHIRXDMAEN
CHIRXDMAEN bit (Initial value: 0, R/W)
This bit enables the CHI DMA receive function.
This bit should not be set until the CHIRXSTART, CHITXSTART, and CHISIZE
registers are setup. To enable CHI DMA receive function, this bit must be set before
the CHI Module is enabled (ENCHI asserted). Either CHIRXDMAEN or
CHITXDMAEN or both can be set at a time since the CHI DMA controller can
support full duplex operation.
0: Disable
1: Enable
0
TDEN
CHITXDMAEN
CHITXDMAEN bit (Initial value: 0, R/W)
This bit enables the CHI DMA transmit function.
This bit should not be set until the CHIRXSTART, CHITXSTART, and CHISIZE
registers are setup. To enable CHI DMA transmit function, this bit must be set
before the CHI Module is enabled (ENCHI asserted). Either CHIRXDMAEN or
CHITXDMAEN or both can be set at a time since the CHI DMA controller can
support full duplex operation.
0: Disable
1: Enable
Reserved
Figure 16.4.7 CHI SIZE Register (CHISIZE)
16-27
Chapter 16 CHI Module
16.4.8
CHI RX Start Register (RXSTRT)
0xA81C
31
16
CHIRXSTART
W
0000000000000000
: Type
: Initial value
15
2
CHIRXSTART
W
00000000000000
Bits
Mnemonic
31:2
RxStrt[31:2]
1:0

Field Name
CHIRXSTART
1
0
Reserved
: Type
: Initial value
Description
CHIRXSTART bits (Initial value: 30’b0, W)
These bits define the start address for the CHI RX DMA buffer. The CHI RX buffer
and CHI TX buffer can be configured to either reside in different memory spaces or
share the same memory space (overlapping buffers for loopback purposes or for
optimum memory allocation).

Reserved
Figure 16.4.8 CHI RX Start Register (RXSTRT)
16-28
Chapter 16 CHI Module
16.4.9
CHI TX Start Register (TXSTRT)
0xA820
31
16
CHITXSTART
W
0000000000000000
: Type
: Initial value
15
2
CHITXSTART
W
00000000000000
Bits
Mnemonic
31:2
TxStrt[31:2]
1:0

Field Name
CHITXSTART
1
0
Reserved
: Type
: Initial value
Description
CHITXSTART bits (Initial value: 30’b0, W)
These bits define the start address for the CHI TX DMA buffer. The CHI RX buffer
and CHI TX buffer can be configured to either reside in different memory spaces or
share the same memory space (overlapping buffers for loopback purposes or for
optimum memory allocation).

Reserved
Figure 16.4.9 CHI TX Start Register (TXSTRT)
16-29
Chapter 16 CHI Module
16.4.10 CHI TX Holding Register (CHIHOLD)
0xA824
31
16
CHITXHOLD
W
0000000000000000
: Type
: Initial value
15
0
CHITXHOLD
W
0000000000000000
Bits
Mnemonic
31:0
CHIHOLD[31:0]
Field Name
CHITXHOLD
: Type
: Initial value
Description
CHITXHOLD bits (Initial value: 32’b0, W)
These bits represent the CHI data to be transmitted. CHI data can be either written
directly to this register by the CPU or transparently read from the CHI TX DMA
buffer to this register. This register should only be loaded by the CPU after the
CHIININTA or CHIININTB interrupt is asserted. The write immediately after
CHIININTA updates the internal TX holding register A and the write immediately
after CHIININTB updates the internal TX holding register B. Transmit data for bytes
3, 2, 1, and 0 are loaded into the 32-bit CHITXHOLD at locations [31:24], [23:16],
[15:8], and [7:0], respectively. These data bytes correspond to the CHI timeslots as
defined by the values in the TXPTRA and TXPTRB TDM switch registers.
Figure 16.4.10 CHI TX Holding Register (CHIHOLD)
16-30
Chapter 16 CHI Module
16.4.11 CHI RX Holding Register (CHIHOLD)
0xA824
31
16
CHIRXHOLD
R
0000000000000000
: Type
: Initial value
15
0
CHIRXHOLD
R
0000000000000000
Bits
Mnemonic
31:0
CHIHOLD[31:0]
Field Name
CHIRXHOLD
: Type
: Initial value
Description
CHIRXHOLD bits (Initial value: 32’b0, R)
These bits represent the CHI data to be received. CHI data can be either read
directly from this register by the CPU or transparently written to the CHI RX DMA
buffer from this register. This register should only be read by the CPU after the
CHIININTA or CHIININTB interrupt is asserted. The read immediately after
CHIININTA sees the internal RX holding register A and the read immediately after
CHIININTB sees the internal RX holding register B. Receive data for bytes 3, 2, 1,
and 0 are stored into the 32-bit CHIRXHOLD at locations [31:24], [23:16], [15:8],
and [7:0], respectively. These data bytes correspond to the CHI timeslots as defined
by the values in the RXPTRA and RXPTRB TDM switch registers.
Figure 16.4.11 CHI RX Holding Register (CHIHOLD)
16-31
Chapter 16 CHI Module
16.4.12 CHI Clock Register (CHICLOCK)
0xA828
31
16
Reserved
: Type
: Initial value
15
10
Reserved
9
8
CDIR MCLK
R/W
0
7
0
CDIV
R/W
1
Field Name
R/W
00000000
: Type
: Initial value
Bits
Mnemonic
31:10

Description
9
CDIR
CHICLKDIR
CHICLKDIR bit (Initial value: 0, R/W)
This bit controls the direction of the CHICLK pin.
0: input (CHI slave mode)
1: output (CHI master mode)
Note: Please set the same value CHICLKDIR and CHIFSDIR. Each set the
difference value (CHIFSDIR = 1, CHICLKDIR = 0 or CHIFSDIR = 0,
CHICLKDIR = 1) can’t recommend
8
MCLK
CHIMCLKEN
CHIMCLKEN bit (Initial value: 1, R/W)
This bit is used to enable or disable the CHICLK counter and CHICLK clock
generation. This bit controls the direction of the CHICLK pin.
0: disable (halting the clock to the CHI Module in order to reduce power
consumption)
1: enable
7:0
CDIV[7:0]
CHICLKDIV
CHICLKDIV bit (Initial value: 0000_0000, R/W)
These bits define the divide-modulus for the programmable divider used to generate
CHICLK. The divide-modulus is equal to (CHICLKDIV + 2). (See the following Table
16.4.2.)
Note: CLKDIV less than 1 can’t recommend

Reserved
Figure 16.4.12 CHI Clock Register (CHICLOCK)
Table 16.4.2 CHI Clock Divide
CHICLKDIV[7:0]
Divide-modulus
2
:
N
:
253
254
4
:
N+2
:
255
256
16-32
Chapter 16 CHI Module
16.4.13 HI Interrupt Enable Register (CHIINTE)
0xA82C
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
6
BUSIE 05IE
5
10IE
4
3
2
1
0
DCIE INAIE INBIE ACTIE ERRIE
R/W
00000000
Bits
Mnemonic
31:8

Field Name
Description
7
BUSIE
CHIBUSERROR
Interrupt Enable
CHIBUSERROR Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHIBUSERROR Interrupt.
0: Disable
1: Enable
6
05IE
CHI0_5
Interrupt Enable
CHI0_5 Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHI0_5 Interrupt.
0: Disable
1: Enable
5
10IE
CHI1_0
Interrupt Enable
CHI1_0 Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHI1_0 Interrupt.
0: Disable
1: Enable
4
DCIE
CHIDMACNT
Interrupt Enable
CHIDMACNT Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHIDMACNT Interrupt.
0: Disable
1: Enable
3
INAIE
CHIININTA
Interrupt Enable
CHIININTA Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHIININTA Interrupt.
0: Disable
1: Enable
2
INBIE
CHIININTB
Interrupt Enable
CHIININTB Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHIININTB Interrupt.
0: Disable
1: Enable
1
ACTIE
CHIACTINT
Interrupt Enable
CHIACTINT Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHIACTINT Interrupt.
0: Disable
1: Enable
0
ERRIE
CHIERRINT
Interrupt Enable
CHIERRINT Interrupt Enable bits (Initial value: 0, R/W)
This bit is used to enable or disable the CHIERRINT Interrupt.
0: Disable
1: Enable

Reserved
Figure 16.4.13 CHI Interrupt Enable Register (CHIINTE)
16-33
: Type
: Initial value
Chapter 16 CHI Module
16.4.14 CHI Interrupt Status Register (CHIINT)
0xA830
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
BUSI
6
05I
5
10I
4
DCI
3
INAI
2
INBI
1
ACTI
0
ERRI
R/W
00000000
Field Name
: Type
: Initial value
Bits
Mnemonic
31:8

Description
7
BUSI
CHIBUSERROR
Interrupt Status
CHIBUSERROR Interrupt status bit (Initial value: 0, R/W)
This bit shows the CHIBUSERROR Interrupt Status. This bit is cleared by written
“0”.
0: No interrupt
1: Interrupt occurs
6
05I
CHI0_5
Interrupt Status
CHI0_5 Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHI0_5 Interrupt Status. This bit is cleared by written “0”.
0: No interrupt
1: Interrupt occurs
5
10I
CHI1_0
Interrupt Status
CHI1_0 Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHI1_0 Interrupt Status. This bit is cleared by written “0”
0: No interrupt
1: Interrupt occurs
4
DCI
CHIDMACNT
Interrupt Status
CHIDMACNT Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHIDMACNT Interrupt Status. This bit is cleared by written “0”
0: No interrupt
1: Interrupt occurs
3
INAI
CHIININTA
Interrupt Status
CHIININTA Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHIININTA Interrupt Status. This bit is cleared by written “0”
0: No interrupt
1: Interrupt occurs
2
INBI
CHIININTB
Interrupt Status
CHIININTB Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHIININTB Interrupt Status. This bit is cleared by written “0”
0: No interrupt
1: Interrupt occurs
1
ACTI
CHIACTINT
Interrupt Status
CHIACTINT Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHIACTINT Interrupt Status. This bit is cleared by written “0”
0: No interrupt
1: Interrupt occurs
0
ERRI
CHIERRINT
Interrupt Status
CHIERRINT Interrupt Status bit (Initial value: 0, R/W)
This bit shows the CHIERRINT Interrupt Status. This bit is cleared by written “0”
0: No interrupt
1: Interrupt occurs

Reserved
Figure 16.4.14 CHI Interrupt Status Register (CHIINT)
16-34
Chapter 17 Serial Peripheral Interface
17. Serial Peripheral Interface
17.1 Characteristics
The SPI is a serial interface consisting of clock, data out, and data in. The SPI is used to interface to
devices such as serial power supplies, serial A/D converters, and other devices that contain simple serial
clock and data interface. The TX4925 only supports the master mode and generates the SPI clock to the
slaves. Multiple slave devices can share the SPI by using a unique chip select for each slave device. The
chip select can be generated using one of the general purpose I/O ports on TX4925, or using some other
output port available in the system. When a device is selected by asserting it’s chip select, the device will
shift data in using the SPICLK and SPIOUT signals and the device will shift data out using the SPIIN signal.
When a device is not selected then the data output connected to SPIIN must be tri-stated so other devices can
share the SPIIN signal. The SPI module contains registers which provide programmability for SPICLK rate,
MSB first versus LSB first, clock polarity, data phase polarity, and byte mode versus word mode operation.
The SPI has the following characteristics.
•
Phase and Polarity Selection
•
Transfer size of 8 or 16 bits
•
4 frame transmit, 4 frame receive buffers
•
Master operation
•
Inter Frame Space Delay Feature
•
MSB/LSB first transfer
17-1
Chapter 17 Serial Peripheral Interface
17.2 Block Diagram
The SPI Module primarily consists of a 16-bit SPI Data Register (SPDR), a 16-bit Shift Register, a 16-bit
Transmitter Buffer, a 16-bit Receiver Buffer, a Baud Rate Generator, an Inter Frame Time Counter, and
Interrupt Logic. A block diagram of the SPI Module is shown in Figure 17.2.1.
IM-Bus
Bus I/F
Baud Rate
Generator
Inter Frame
Space Timer
SPDR
Interrupt
Logic
Read
Write
Receive Buffer (FIFO )
Transmit Buffer (FIFO )
Shift Register
SPIIN
Figure 17.2.1 SPI Block Diagram
17-2
SPICLK
SPIOUT
Chapter 17 Serial Peripheral Interface
17.3 Detailed Explanation
17.3.1
Operation mode
There are 2 operation modes possible:
•
Configuration mode (OPMODE = ‘01’) :
Only in this mode it is possible to change the setting of the low byte (bit 7 to 0) in the SPI
Control Register 0 (SPCR0) and all bits in the SPI Control Register 1 (SPCR1). In this mode
the SPSTP bit and also the receive and transmit FIFO will be cleared. The SPI module will
be kept in reset. Running transfer are immediately aborted, even within the current frame.
•
Active mode (OPMODE = ‘10’) :
This is the normal operation mode. A transfer occurs in this mode.
17.3.2
Transmitter/Receiver
The SPI module is kept in a reset state in the Configuration mode. Before setting the Active mode in
OPMODE bits, the low byte (bit 7 to 0) in the SPI Control Register 0 (SPCR0) and all bits in the SPI
Control Register 1 (SPCR1) should be set to the desired value. Once the OPMODE bits is set to the
Active mode, the SPI module can run a transfer. The SPI logic will then wait until the software writes
to the SPI Data Register (SPDR).
Once the software writes to the SPI Data Register (SPDR) then the contents will be transferred to the
Shift Register and shifted out to the slave device. While data is shifting out to the slave device using
the SPIOUT signal, data will shift in using the SPIIN signal. Once the data has finished shifting, the
contents of the Shift Register will be loaded into the Receive Buffer and the SRRDY bit in SPI Status
Register (SPSR) will be asserted to indicate that there is valid receive data in the Receive Buffer. The
RBSI bit in the SPI Status Register (SPSR) is set and the interrupt occurs when the Receive Buffer level
selected RXIFL bits in the SPI Control Register 0 (SPCR0) is filled.
Once the contents of the Transmit Buffer are transferred to the Shift Register, the STRDY bit in SPI
Status Register (SPSR) will be asserted to indicate that the Transmit Buffer is once again ready to
receive new data. The TBSI bit in the SPI Status Register (SPSR) is set and the interrupt occurs when
the Transmit Buffer level selected TXIFL bits in the SPI Control Register 0 (SPCR0) is filled.
Therefore the software is supposed to do the following procedure every time it attempts to write data
into the Transmit Buffer.
(1) Check if STRDY or TBSI is a logic “1”. If not, do nothing.
(2) Write data into the SPI Data Register (SPDR).
Thus, as long as the software can keep the Transmit Buffer serviced before the data shifts out of the
Shift Register, the SPI can maintain seamless data transfer. If the software fails to keep up with the
transfer rate, then the SPI will simply wait until the next data is written to the SPI Data Register
(SPDR).
17-3
Chapter 17 Serial Peripheral Interface
At the end of every series of transmission the software is supposed to negate the chip select signal for
the target device by the following procedure.
(1) Check if SRRDY or RBSI is a logic “1”. If not, do nothing.
(2) Check if SIDLE is a logic “1”. If not, do nothing.
(3) Negate the chip select signal.
The SPI supports either 8-bit per character or 16-bit per character operation, as defined by the SSZ
bits in the SPI Control Register 1 (SPCR1). The software can also select whether the MSB or LSB
should shift first using the SBOS bit in the SPI Control Register 0 (SPCR0). Another set of SPHA and
SPOL bits bit in the SPI Control Register 0 (SPCR0) select the transfer format. Please see to “17.3.4
Transfer Format”.
17.3.3
Baud Rate Generator
The rate of the SPICLK signal is determined by the value of the SER[7:0] bits in the SPI Control
Register 1 (SPCR1). The SER[7:0] bits are used by the Baud Rate Generator to devide the SPI master
clock generated by the Clock Generator (CG). The frequency of the SPI master clock is 40 MHz when
MASTERCLK input is 80 MHz. The SPICLK rate is shown in the table below in this time.
Table 17.3.1 SPICLK Rate when MASTERCLK is 80 MHz
SER[7:0]
SPI Clock Rate
00000001b
10 MHz
00000010b
6.667 MHz
00000011b
5 MHz
00000100b
4 MHz
00000101b
3.33 MHz
…
00001001b
2 MHz
…
00010011b
1 MHz
…
11111111b
78.125 KHz
17-4
Chapter 17 Serial Peripheral Interface
17.3.4
Transfer Format
During a SPI transfer, data is simultaneously transmitted (shifted out serially) and received serially
(shifted in serially). The serial clock synchronizes shifting and sampling of the information on the two
serial data lines.
The transfer format depends on the setting of the SPHA and SPOL bits in the SPI Control Register 0
(SPCR0). SPHA switches between two fundamentally different protocols, which are described below.
17.3.4.1 SPHA Equals 0 Format
Figure 17.3.1 shows the transfer format for a SPHA=0 transfer.
1
2
3
4
5
6
7
8
SPICLK
(SPOL=0)
SPICLK
(SPOL=1)
SPIIN
MSB
B6
B5
B4
B3
B2
B1
LSB
SPIOUT
MSB
B6
B5
B4
B3
B2
B1
LSB
Sample Point
Figure 17.3.1 Transfer format when SPHA is “0”.
In this transfer format, the bit value is captured on the first clock edge. This will be on a rising
edge when SPOL bit equals zero and on a falling edge when SPOL equals one. The value on the
SPIIN and SPIOUT signals changes with the second clock edge on SPICLK. This clock edge will
be a falling edge when SPOL equals zero and a rising edge, when SPOL equals one. With SPOL
equal to zero, the shift clock will be idle low. With SPOL equals 1 it will idle high.
17-5
Chapter 17 Serial Peripheral Interface
17.3.4.2 SPHA Equals 1 Format
Figure 17.3.2 shows the transfer format for a SPHA=1 transfer.
1
2
3
4
5
6
7
8
SPICLK
(SPOL=0)
SPICLK
(SPOL=1)
SPIIN
MSB
B6
B5
B4
B3
B2
B1
LSB
SPIOUT
MSB
B6
B5
B4
B3
B2
B1
LSB
Sample Point
Figure 17.3.2 Transfer format when SPHA is “1”.
In this transfer format, the value on the SPIIN and SPIOUT signals changes with the second
clock edge on SPICLK. This clock edge will be a rising edge when SPOL equals zero and a
falling edge, when SPOL equals one. The bit value is shifted in on the second clock edge. This
will be on a falling edge when SPOL bit equals zero and on a rising edge when SPOL equals one.
With SPOL equal to zero, the shift clock will be idle low. With SPOL equals 1 it will idle high.
17.3.5
Inter Frame Space Counter
Sometimes it is desirable to guarantee a minimum time between groups of data. The Inter Frame
Space Counter is used to provide delay between groups of data. If 16-bit data size is selected in the SPI
Control Register 1 (SPCR1), delay will be inserted after 16 bits of data are shifted. If 8-bit data size is
selected, delay will be inserted after 8 bits of data are shifted, as shown in Figure 17.4.3. Inter Frame
delay is added by setting the IFS[7:0] bits to a value other than 0. The number stored in these bits will
directly correspond to the number of the four times of SPI Master clock of delay that will be inserted
between frames. A zero value for these bits will imply seamless operation and the SPI will shift data
and provide clocks continuously as long as the software keeps up with the transmitter rate.
17-6
Chapter 17 Serial Peripheral Interface
17.3.6
SPI Buffer Structure
The SPI has both transmit and receive buffer. The buffers are implemented as FIFO and are able to
store four frames each.
When a new SPI transfer is started by writing the data register, the transfer value is first stored in
SPI’s transmit buffer. From there the value will be fetched by the shift register immediately, if the
module is idle or after the currently running transfer has completed.
A receive value from the shift register is stored in the receive buffer every time a transfer completes.
The SPI is able to generate interrupts depending on the fill-level of these buffers. Therefore, it is
possible to refill the buffers with several values within one interrupt service routine, if desired.
17.3.7
SPI System Errors
SPI is able to detect the following system error during the transfer.
17.3.7.1 Overrun Error (SPOE)
An Overrun Error will be generated, when the transmit buffer is completely filled, while a new
value has been written on the SPI Transmit FIFO. In this case the already written data in the
transmit buffer is not changed and the new value is abandoned. Then the SPOE flag in the SPSR
register is set.
17.3.8
Interrupts
The SPI has three types interrupt sources. OR signal of them connects to the internal Interrupt
Controller (IRC). Please check SPI Status Register (SPSR) to know which type interrupt occurred.
Type
Status Bits
Mask-able Bit
SPOE, SIDLE
SPOIE, SILIE
Receive Buffer Fill
RBSI
RBFIE
Transmit Buffer Fill
TBSI
TBFIE
System error or idle
The System error or idle interrupt is used for error detection purpose and idle state interrupt. The
receive buffer fill interrupt and the transmit buffer fill interrupt are used to fetch and setup new data in
an interrupt service routine.
17-7
Chapter 17 Serial Peripheral Interface
17.4 Registers
All registers in the SPI Module should be accessed only as full word (32-bit) accesses. Any other type of
access produces an undefined result. Please write “0” to the undefined bit.
Table 17.4.1 SPI Module Registers
Reference
Address
Bit Width
Register
Register Name
17.4.1
0xF800
32
SPMCR
SPI Master Control Register
17.4.2
0xF804
32
SPCR0
SPI Control Register 0
17.4.3
0xF808
32
SPCR1
SPI Control Register 1
17.4.4
0xF80C
32
SPFS
SPI Inter Frame Space Register
17.4.5
0xF810
32

17.4.5
0xF814
32
SPSR
SPI Status Register
0xF818
32
SPDR
SPI Data Register
0xF81C
32

17.4.6
17-8
(Reserved)
(Reserved)
Chapter 17 Serial Peripheral Interface
17.4.1
SPI Master Control Register (SPMCR)
0xF800
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
6
OPMODE
5
3
Reserved
R/W
01
Bits
Mnemonic
31 : 8

7:6
OPMODE
5:3

2

1
SPSTP
0
BCLR
Field Name
2
1
Reserved SPSTP
R/W
0
R/W
0
0
BCLR
R/C
0
: Type
: Initial value
Explanation
Reserved

Operation Mode
Operation Mode (Initial value: 01, R/W)
Set operation mode
00: Don’t care. Writing this value to the OPMODE bits doesn’t change any thing.
01: Configuration mode
10: Active mode (normal operation mode)
11: Reserved
Reserved


This bit is reserved. Don’t write “1” to this bit (Initial value: 0, R/W).
SPI Stop
SPI Stop (Initial value: 0, R/W)
If this flag is asserted, the module will stop the transferring after the current frame
has been completed. This bit could be set only when the SPI is in active mode.
Setting the SPI in configuration mode will clear this bit.
0: Normal operation
1: Stop after completion of the current transfer
SPI Buffer Clear
SPI Buffer Clear (Initial value: 0, R/C)
This flag is used to clear the receive and transmit FIFO. The FIFO logic can be
reset by writing a “1” value to this bit. Please wait until the SPI module is idle
(SIDLE = 1) before activating the BCLR bit.
This register will always be read as “0”.
Write:
0: Don’t care
1: FIFO clear
Figure 17.4.1 SPI Master Control Register
17-9
Chapter 17 Serial Peripheral Interface
17.4.2
SPI Control Register 0 (SPCR0)
0xF804
31
16
Reserved
: Type
: Initial value
15
14
TXIFL
13
12
RXIFL
R/W
0
R/W
0
Bits
Mnemonic
11
10
9
8
SILIE SOEIE RBFIE TBFIE
R/W
0
R/W
0
R/W
0
7
R/W
0
Field Name
5
Reserved
4
3
2
1
0
IFSPSE Reserved SBOS SPHA SPOL
R/W
0
R/W
0
R/W
0
R/W : Type
0 : Initial value
Explanation
31:16

Reserved
15:14
TXIFL
Transmit
Interrupt
Fill Level
Transmit Interrupt Fill Level (Initial value: 00, R/W)
Select the interrupt fill level of the transmit FIFO.
00: Interrupt, if one or more Tx values can be stored
01: Interrupt, if two or more Tx values can be stored
10: Interrupt, if three or more Tx values can be stored
11: Interrupt, if four Tx values can be stored

13:12
RXIFL
Receive Interrupt
Fill Level
Receive Interrupt Fill Level (Initial value: 00, R/W)
Select the interrupt fill level of the receive FIFO.
00: Interrupt, if one or more Rx values are stored
01: Interrupt, if two or more Rx values are stored
10: Interrupt, if three or more Rx values are stored
11: Interrupt, if four Rx values are stored
11
SILIE
SPI IDLE
Interrupt Enable
SPI IDLE Interrupt Enable (Initial value: 0, R/W)
Enable the SPI IDLE Interrupt to the interrupt controller of TX4925.
0: Disable
1: Enable
10
SOEIE
SPI Overrun
Interrupt Enable
SPI IDLE Overrun Enable (Initial value: 0, R/W)
Enable the SPI Overrun Interrupt to the interrupt controller of TX4925.
0: Disable
1: Enable
9
RBSIE
Receive Buffer
Fill Interrupt
Enable
Receive Buffer Fill Interrupt Enable (Initial value: 0, R/W)
Enable the Receive Buffer Fill Interrupt to the interrupt controller of TX4925.
0: Disable
1: Enable
8
TBSIE
Transmit Buffer
Fill Interrupt
Enable
Transmit Buffer Fill Interrupt Enable (Initial value: 0, R/W)
Enable the Transmit Buffer Fill Interrupt to the interrupt controller of TX4925.
0: Disable
1: Enable
7:5


Reserved
Note 1: Bit 5 to Bit 0 could only be written, when the SPI module is in configuration mode.
Note 2: SPOL and SPHA bits determine the idle phase of SPICLK and the valid clock edge for sampling
data. Refer to “17.3.4 Transfer Format”.
Figure 17.4.2 SPI Control Register 0 (SPCR0) (1/2)
17-10
Chapter 17 Serial Peripheral Interface
Bits
Mnemonic
Field Name
4
IFSPSE
3

2
SBOS
SPI Bit Order
Select
SPI Bit Order Select (Initial value: 0, R/W)
Select bit order of transfer data.
0: LSB first operation, the least significant bit is shifted first.
1: MSB first operation, the most significant bit is shifted first.
1
SPOL
SPI Polarity
SPI clock Polarity (Initial value: 0, R/W)
Select the SPICLK polarity.
0: Active High Clocks selected; SPICLK idles low
1: Active Low Clocks selected; SPICLK idles high
0
SPHA
SPI Phase
SPI clock Phase (Initial value: 0, R/W)
Selects one of two fundamentally different transfer format.
0: Sampling on the first edge, Shift on the second edge.
1: Shift on the first edge, Sampling on the second edge.
Inter Frame
Space prescaler
enable
Explanation
Inter Frame Space prescaler Enable (Initial value: 0, R/W)
Enable the Inter Frame Space prescaler.
0: Disable
1: Enable

Reserved
Note 1: Bit 5 to Bit 0 could only be written, when the SPI module is in configuration mode.
Note 2: SPOL and SPHA bits determine the idle phase of SPICLK and the valid clock edge for sampling
data. Refer to “17.3.4 Transfer Format”.
Figure 17.4.2 SPI Control Register 0 (SPCR0) (2/2)
17-11
Chapter 17 Serial Peripheral Interface
17.4.3
SPI Control Register 1 (SPCR1)
0xF808
31
16
Reserved
: Type
: Initial value
15
8
7
SER
5
4
Reserved
R/W
0x00
Bits
Mnemonic
31:16

15:8
SER
0
SSZ
R/W
00000
Field Name
Explanation

Reserved
SPI Data Rate
SPI Data Rate (Initial value: 0x00, R/W)
Control the bit-rate for the transmission.
The clock-rate on the SPI bus can be calculated using the following formula:
fBR = fSPI/2 (n + 1)
But n = 0 is not available.
Refer to Note 2.
7:5

4:0
SSZ

Reserved
SPI Transfer
Size
SPI Transfer size (Initial value: 00000b, R/W)
Select the number of bits to shift.
0x08: 8 bits
0x10: 16 bits
others: Reserved. Don’t set these values.
Note 1: This register could only be written, when the SPI module is in configuration mode.
Note 2: The SPICLK rate is shown in the table below in this time when MASTERCLK input is 40 MHz.
SER[7:0]
SPI Clock Rate
00000001b
10 MHz
00000010b
6.667 MHz
00000011b
5 MHz
00000100b
4 MHz
00000101b
3.33 MHz
…
00001001b
2 MHz
…
00010011b
1 MHz
…
11111111b
78.125 KHz
Figure 17.4.3 SPI Control Register 1 (SPCR1)
17-12
: Type
: Initial value
Chapter 17 Serial Peripheral Interface
17.4.4
SPI Inter Frame Space Register (SPFS)
0xF80C
31
16
Reserved
: Type
: Initial value
15
10
9
0
Reserved
IFS
R/W
0000000000
Bits
Mnemonic
Field Name
31:10

Reserved
9:0
IFS
Inter Frame
Space
: Type
: Initial value
Explanation

Inter Frame Space (Initial value: 0000000000b, R/W)
Configure the amount of time, which is inserted between two consecutive frames.
When setting this register to 0, two consecutive transfers will be send using only
minimum amount of time required to load the buffers between consecutive frames.
This minimum amount of time is not zero.
When the prescaler is not used (IFSPSE bit in SPCR0 register is “0”), the inter
frame space can be calculated using the following formula:
fIFS = n/fSEI
(range is 25 ns up to 25.6 µs when MASTERCLK frequency is 80 MHz.)
When using the prescaler (IFSPSE bit in SPCR0 register is “1”), the inter frame
space can be calculated using the following formula:
fIFS = 32 × n/fSEI
(range is 800 ns up to 819.2 µs when MASTERCLK frequency is 80 MHz.)
Please write to this register when SIDLE bit is “0”.
Figure 17.4.4 SPI Inter Frame Space Register (SPFS)
17-13
Chapter 17 Serial Peripheral Interface
17.4.5
SPI Status Register (SPSR)
0xF814
31
16
Reserved
: Type
: Initial value
15
TBSI
14
RBSI
R
1
R
0
Bits
13
Mnemonic
TBS
11
10
RBS
8
7
SPOE
R
000
R
000
R/C
0
Field Name
6
4
Reserved
3
2
1
0
IFSD SIDLE STRDY SRRDY
R
0
R
1
R
1
R
0
: Type
: Initial value
Explanation
31:16

15
TBSI
Transmit Buffer
Status Indicator
Transmit Buffer Status Indicator (Initial value: 1, R)
This bit indicates a transmit fill level interrupt.
0: Interrupt have been generated
1: Interrupt have not been generated

14
RBSI
Receive Buffer
Status Indicator
Receive Buffer Status Indicator (Initial value: 0, R)
This bit indicates a receive fill level interrupt.
0: Interrupt have been generated
1: Interrupt have not been generated
13:11
TBS
Transmit Buffer
Status
Transmit Buffer Status (Initial value: 000, R)
The field shows the status of the transmit buffer.
000: Transmit Buffer Empty
001: 1 transfer stored
010: 2 transfers stored
011: 3 transfers stored
100: 4 transfers stored, Buffer full
101 – 111: Not Available
10:8
RBS
Receive Buffer
Status
Receive Buffer Status (Initial value: 000, R)
The field shows the status of the receive buffer.
000: Receive Buffer Empty
001: 1 transfer stored
010: 2 transfers stored
011: 3 transfers stored
100: 4 transfers stored, Buffer full
101 – 111: Not Available
7
SPOE
SPI Overrun Error
SPI Overrun Error (Initial value: 0, R/C)
This flag indicates that a value in the transmit buffer has been overwritten, before it
could be sent. It can be cleared by writing a “1” value to it. This flag will be cleared
by setting the module in configuration mode.
Read:
0: no error
1: Overrun error occurred
Write:
0: Don’t care
1: Clear
6:4

Reserved

Reserved
Figure 17.4.5 SPI Status Register (SPSR) (1/2)
17-14
Chapter 17 Serial Peripheral Interface
Bits
Mnemonic
Field Name
Explanation
3
IFSD
SPI Inter Frame
Space Delay
Indicator
SPI Inter Frame Space Delay Indicator (Initial value: 0, R)
This flag is asserted during the time, where one frame has been processed and the
next frame is being delayed by the inter-frame-space timer.
0: no inter frame cycle
1: inter frame cycle
2
SIDLE
SPI Idle Indicator
SPI Idle Indicator (Initial value: 0, R)
This flag is asserted, if no transfer is in progress and if the transmit buffer is empty
or the stop mode (SESTP = 1) is activated.
0: run
1: Idle
1
STRDY
SPI Transmit
Ready
SPI Transmit Ready (Initial value: 0, R)
This flag indicates, that the transmit buffer is ready to receive new data. The flag is
cleared, if the transmit buffer is full.
0: transmit buffer full
1: one or more space in transmit buffer
0
SRRDY
SPI Receive
Ready
SPI Receive Ready (Initial value: 0, R)
This flag indicates, that there is valid data stored in the receive buffer. This flag is
cleared by reading the SPDR or SPRS register until the receive buffer is empty.
0: Receive buffer empty
1: one or more data in receive buffer
Figure 17.4.5 SPI Status Register (SPSR) (2/2)
17-15
Chapter 17 Serial Peripheral Interface
17.4.6
SPI Data Register (SPDR)
0xF818
31
16
Reserved
: Type
: Initial value
15
11
10
8
7
3
2
0
DR
R/W
0x00
Bits
Mnemonic
Field Name
31:16

Reserved
15:0
DR
SPI Data Register
: Type
: Initial value
Explanation

SPI Data Register (Initial value: 0x00, R/W)
A write to the SPDR register writes the value to the transmit buffer. From there, the
data will be transferred to the shift register as soon as SPI module is ready for the
next transfer.
Reading the SPDR register delivers the current value from the receive FIFO and
increments the receive FIFO pointer, if there are other values stored in the FIFO.
For eight bit transfers, only the lower eight bits of the SPDR register are used. The
upper byte, bit 15 to 8, are read “0x0” for eight bit transfers.
For 16 bit transfers all 16 bits of SPDR are used.
Figure 17.4.6 SPI Data Register (SPDR)
17-16
Chapter 18 NAND Flash Memory Controller
18. NAND Flash Memory Controller
18.1 Characteristics
The TX4925 on-chip NAND Flash Memory Controller (NDFMC) generates the control signals required to
interface with the NAND Flash Memory. It has also the ECC calculating circuits.
The NAND Flash Memory Controller has the following characteristics.
•
Controlled NAND Flash memory interface by setting Registers.
•
On-chip ECC calculating circuits
18.2 Block Diagram
G-Bus
NAND Flash Controller (NDFMC)
G-Bus I/F
Registers
ND_CLE
Register Address
Decoder
NAND Flash
Memory I/F
Timing
Control
Host I/F timing
Control
ND_ALE
ND_CE*
ND_RE*
ND_WE*
ND_RB*
EBIF Control
EBIF
DATA[7:0]
BUSSPRT*
Figure 18.2.1 NAND Flash Memory Controller Block Diagram
18-1
Chapter 18 NAND Flash Memory Controller
18.3 Detailed Explanation
18.3.1
Access to NAND Flash Memory
The TX4925 NDFMC supports the interface between the NAND Flash Memory using register
indirect sequence. It has the ECC calculating circuits. Please see 18.3.2 in detail of the ECC. This
section describes the procedure to access to NAND Flash Memory.
Basically, set the command in NDFMCR at first and then read or write in NDFDTR. The read cycle
for NDFDTR is finished after the external read cycle for the NAND Flash Memory is finished. Equally,
the write cycle for NDFDTR is finished after the external write cycle for the NAND Flash Memory is
finished.
18.3.1.1 Initialize
The initialize sequence is below.
(1) NDFSPR (0xC014): Set the Low pulse width.
(2) NDFIMR (0xC010): Set 0x81 if need enable interrupt.
18.3.1.2 Write
The write sequence is below.
(1) NDFMCR (0xC004):
Set 0x70 to reset ECC data.
(2) NDFMC hasn’t WP* signal. It must be high using other logic for example PIO.
(3) Write 512 bytes
•
NDFMCR (0xC004): Set 0x91 to assert ND_CLE* signal and do the command mode.
•
NDFDTR (0xC000): Set 0x80 to write the Serial Data Input command.
•
NDFMCR (0xC004): Set 0x92 to assert ND_ALE* signal and do the address mode.
•
NDFDTR (0xC000): Set A[7:0], A[16:9], and A[24:17]. If need, set A[25].
•
NDFMCR (0xC004): Set 0xb0 to do the data mode.
•
NDFDTR (0xC000): Write 512 bytes data.
(4) Read ECC data
•
NDFMCR (0xC004): Set 0xd0 to do the ECC data read mode.
•
NDFDTR (0xC000): Read 6 bytes ECC data.
First data:
LPR[7:0]
Second data:
LPR[15:8]
Third data:
CPR[5:0], 2’b11
Fourth data:
LPR[23:16]
Fifth data:
LPR[31:24]
Sixth data:
CPR[11:6], 2’b11
18-2
Chapter 18 NAND Flash Memory Controller
(5) Write 16 bytes redundant data
•
NDFMCR (0xC004): Set 0x90 to do the data mode without ECC.
•
NDFDTR (0xC000): Write 16 bytes redundant data.
D520: LPR[23:16]
D521: LPR[31:24]
D522: CPR[11:6], 2’b11
D525: LPR[7:0]
D526: LPR[15:8]
D527: CPR[5:0], 2’b11
(6) Run Page Program
•
NDFMCR (0xC004): Set 0x91 to assert ND_CLE* signal and do the command mode.
•
NDFDTR (0xC000): Set 0x10 to write the Page Program command.
•
NDFMCR (0xC004): Set 0x10 to deassert ND_ALE* signal.
•
NDFSR (0xC008):
Check BUSY flag. If it’s zero, go to the next. If it’s one, wait till
it will become zero.
(7) Read Status
•
NDFMCR (0xC004): Set 0x11 to assert ND_CLE* signal and do the command mode.
•
NDFDTR (0xC000): Set 0x70 to write the Read Status command.
•
NDFMCR (0xC004): Set 0x10 to deassert ND_CLE* signal.
•
NDFDTR (0xC000): Read the Status data from the NAND Flash memory.
(8) Continue from (1) to (7) for all other pages if need.
18.3.1.3 Read
The read sequence is below.
(1) NDFMCR (0xC004):
Set 0x70 to reset ECC data.
(2) Read 512 bytes
•
NDFMCR (0xC004): Set 0x11 to assert ND_CLE* signal and do the command mode.
(2-1)
•
NDFDTR (0xC000): Set 0x00 to write the Read command. (2-2)
•
NDFMCR (0xC004): Set 0x12 to assert ND_ALE* signal and do the address mode.
(2-3)
•
NDFDTR (0xC000): Set A[7:0], A[16:9], and A[24:17]. If need, set A[25]. (2-4)
•
NDFMCR (0xC004): Set 0x10 to deassert ND_ALE* signal. (2-5)
•
NDFSR (0xC008):
•
NDFMCR (0xC004): Set 0x30 to do the data mode with ECC calculation. (2-7)
•
NDFDTR (0xC000): Read 512 bytes data. (2-8)
•
NDFMCR (0xC004): Set 0x10 to do the data mode without ECC calculation. (2-9)
•
NDFDTR (0xC000): Read 16 bytes redundant data. (2-10)
Check BUSY flag. If it’s zero, go to the next. If it’s one, wait till
it will become zero. (2-6)
18-3
Chapter 18 NAND Flash Memory Controller
(3) Read ECC data
•
NDFMCR (0xC004): Set 0x50 to do the ECC data read mode.
•
NDFDTR (0xC000): Read 6 bytes ECC data.
First data:
LPR[7:0]
Second data:
LPR[15:8]
Third data:
CPR[5:0], 2’b11
Fourth data:
LPR[23:16]
Fifth data:
LPR[31:24]
Sixth data:
CPR[11:6], 2’b11
(4) Compare ECC data and run the error routine if error occurs by Software.
(5) Read other pages
•
NDFMCR (0xC004): Set 0x10.
•
NDFSR (0xC008):
•
Continue from (1) to (4) but (2-1) to (2-5) can be skipped when Sequential Read.
Check BUSY flag. If it’s zero, go to the next. If it’s one, wait till
it will become zero.
18.3.1.4 ID Read
The ID read sequence is below.
(1) NDFMCR (0xC004): Set 0x11 to assert ND_CLE* signal and do the command mode.
(2) NDFDTR (0xC000): Set 0x90 to write the ID Read command.
(3) NDFMCR (0xC004): Set 0x12 to assert ND_ALE* signal and do the address mode.
(4) NDFDTR (0xC000): Set 0x00.
(5) NDFMCR (0xC004): Set 0x10 to do the data mode without ECC calculation.
(6) NDFDTR (0xC000): Read Maker Code.
(7) NDFDTR (0xC000): Read Device Code.
18.3.2
ECC Control
NDFMC has the ECC calculating circuits. The circuits are controlled by NDFMCR. The Software
compares the ECC data and checks if error or not.
The calculated ECC data can be read from NDFDTR register when NDFMCR is 0xD0 (Write mode)
or 0x50 (Read mode). It is six bytes and six read operations for NDFDTR are needed. The order of the
data is following as.
First data:
LPR[7:0]
Second data: LPR[15:8]
Third data:
CPR[5:0], 2’b11
Fourth data: LPR[23:16]
Fifth data:
LPR[31:24]
Sixth data:
CPR[11:6], 2’b11
18-4
Chapter 18 NAND Flash Memory Controller
18.4 Registers
Table 18.4.1 NAND Flash Memory Control Registers
Reference
Address
Bit Width
Register
Register Name
18.4.1
0xC000
32
NDFDTR
NAND Flash memory Data transfer Register
18.4.2
0xC004
32
NDFMCR
NAND Flash memory Mode Control Register
18.4.3
0xC008
32
NDFSR
NAND Flash memory Status Register
18.4.4
0xC00C
32
NDFISR
NAND Flash memory Interrupt Status Register
18.4.5
0xC010
32
NDFIMR
NAND Flash memory Interrupt Mask Register
18.4.6
0xC014
32
NDFSPR
NAND Flash memory Strobe pulse width Register
18.4.7
0xC018
32
NDFRSTR
NAND Flash memory Reset Register
18.4.1
NAND Flash Memory Data Transfer Register (NDFDTR)
0xC000
31
16
Reserved
: Type
: Initial value
15
8
7
Reserved
0
DATA
R/W

Bits
Mnemonic
31:8

7:0
DATA
Field Name
Description

Reserved
DATA
: Type
: Initial value
Interrupt Detection Enable (Initial value: undefined, R/W)
NAND Flash memory data.
Read:
The data is read from the NAND Flash memory.
Note: Be able to read the data that was read from the NAND Flash memory at the
previous read cycle for the NAND Flash memory. At the same time the
NANDFC runs the next read cycle and stores the data in the buffer.
Please take care to read the first byte data and the last byte data.
Write:
The data is written to the NAND Flash memory.
Figure 18.4.1 NAND Flash Memory Data Transfer Register (NDFDTR)
18-5
Chapter 18 NAND Flash Memory Controller
18.4.2
NAND Flash Memory Mode Control Register (NDFMCR)
0xC004
31
16
Reserved
: Type
: Initial value
15
8
Reserved
Bits
Mnemonic
7
WE
6
R/W
0
R/W
0
Field Name
5
ECC
R/W
0
4
CE
3
2
Reserved BSPRT
R/W
0
R/W
0
1
ALE
0
CLE
R/W
0
R/W : Type
0 : Initial value
Description
31:8

7
WE
Write Enable
Write Enable (Initial value: 0, R/W)
This bit enables the data write operation. When you write the data in the NAND
flash memory, this bit must be set one.
0: Inhibit write operation
1: Enable write operation

6:5
ECC
ECC Control
ECC Control 19 (Initial value: 00, R/W)
These bits control the ECC calculating circuits.
ECC
11: Reset ECC circuits.
00: ECC circuits is disable.
01: ECC circuits is enable.
10: Read ECC data calculated by NDFMC.
4
CE
Chip Enable
Chip Enable (Initial value: 0, R/W)
Enable NAND Flash access. This bit must be set one when access to the NAND
Flash memory.
0: Disable (ND_CE* is high.)
1: Enable (ND_CE* is low.)
3

Reserved
2
BSPRT
Bus Separate
Bus Separate (Initial value: 0, R/W)
This bit enables the BUSSPRT* signal during NAND Flash memory access.
0: Disable
1: Enable
1
ALE
Address Latch
Enable
Address Latch Enable (Initial value: 0, R/W)
This bit specifies the value of ND_ALE signal.
0: Low
1: High
0
CLE
Command Latch
Enable
Command Latch Enable (Initial value: 0, R/W)
This bit specifies the value of ND_CLE signal.
0: Low
1: High
Reserved

Figure 18.4.2 NAND Flash Memory Mode Control Register (NDFMCR)
18-6
Chapter 18 NAND Flash Memory Controller
18.4.3
NAND Flash Memory Status Register (NDFSR)
0xC008
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
BUSY
6
0
Reserved
R

Bits
Mnemonic
31:8

7
BUSY
6:0

Field Name
Description

Reserved
BUSY
: Type
: Initial value
BUSY (Initial value: undefined, R)
This bit shows the status of NAND flash memory.
0: Ready
1: Busy

Reserved
Figure 18.4.3 NAND Flash Memory Status Register (NDFSR)
18-7
Chapter 18 NAND Flash Memory Controller
18.4.4
NAND Flash Memory Interrupt Status Register (NDFISR)
0xC00C
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
RDY
: Type
: Initial value
Bits
Mnemonic
31:1

0
RDY
Field Name
Description

Reserved
Ready
Ready (Initial value: 0)
This bit is set when ND_RB* signal changes from Low to High if MRDY in NDFIMR
is one. Writing “0” clears this bit to zero.
Read:
0: None
1: Change ND_RB* signal from Busy to Ready.
Write:
0: No change
1: Clear to zero
Figure 18.4.4 NAND Flash Memory Interrupt Status Register (NDFISR)
18-8
Chapter 18 NAND Flash Memory Controller
18.4.5
NAND Flash Memory Interrupt Mask Register (NDFIMR)
0xC010
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
INTEN
6
1
Reserved
R/W
0
Bits
Mnemonic
31:8

7
INTEN
Field Name
6:1

Reserved
0
MRDY
Mask RDY
interrupt
R/W : Type
0 : Initial value
Description

Reserved
Interrupt Enable
0
MRDY
Interrupt Enable (Initial value: 0, R/W)
Enable Interrupt. When this bit and MRDY bit in this register are set one and RDY
bit in NDFISR becomes one, the interrupt occurs.
0: Disable
1: Enable

Mask Ready Interrupt (Initial value: 0, R/W)
This bit masks the RDY bit in NDFISR. If this bit one, RDY in NDFISR set when
ND_RB* signal changes from Low to High.
0: Disable RDY in NDFISR
1: Enable RDY in NDFISR
Figure 18.4.5 NAND Flash Memory Interrupt Mask Register (NDFIMR)
18-9
Chapter 18 NAND Flash Memory Controller
18.4.6
NAND Flash Memory Strobe Pulse Width Register (NDFSPR)
0xC014
31
16
Reserved
: Type
: Initial value
15
8
7
Reserved
Bits
Mnemonic
Field Name
4
3
0
HOLD
SPW
R/W
0000
R/W
0000
: Type
: Initial value
Description
31:8

Reserved

7:4
HOLD
Hold Time
Hold Time (Initial value: 0000, R/W)
These bits specify the Hold time from the rising edge of the ND_RE* and ND_WE*
signals to the end of the bus cycle. The BUSSPRT* signal is deasserted after this
hold timing if the NDFMCR.BSPRT is one.
0000: Zero
0001: One GBUSCLK
0010: Two GBUSCLKs
0011: Three GBUSCLKs
0100: Four GBUSCLKs
0101: Five GBUSCLKs
0110: Six GBUSCLKs
0111: Seven GBUSCLKs
1000: Eight GBUSCLKs
1001: Nine GBUSCLKs
1010: Ten GBUSCLKs
1011: Eleven GBUSCLKs
1100: Twelve GBUSCLKs
1101: Thirteen GBUSCLKs
1110: Fourteen GBUSCLKs
1111: Fifteen GBUSCLKs
3:0
SPW
Strobe Pulse
Width
Strobe Pulse Width (Initial value: 0000, R/W)
These bits specify the Low pulse width of the ND_RE* and ND_WE* signals. The
low pulse width is the value of this field plus one.
0000: One GBUSCLK
0001: Two GBUSCLKs
0010: Three GBUSCLKs
0011: Four GBUSCLKs
0100: Five GBUSCLKs
0101: Six GBUSCLKs
0110: Seven GBUSCLKs
0111: Eight GBUSCLKs
1000: Nine GBUSCLKs
1001: Ten GBUSCLKs
1010: Eleven GBUSCLKs
1011: Twelve GBUSCLKs
1100: Thirteen GBUSCLKs
1101: Fourteen GBUSCLKs
1110: Fifteen GBUSCLKs
1111: Sixteen GBUSCLKs
Figure 18.4.6 NAND Flash Memory Strobe Pulse Width Register (NDFSPR)
18-10
Chapter 18 NAND Flash Memory Controller
18.4.7
NAND Flash Memory Reset Register (NDFRSTR)
0xC018
31
16
Reserved
: Type
: Initial value
15
1
Reserved
0
RST
R/W
0
Bits
Mnemonic
31:1

0
RST
Field Name
Description

Reserved
Reset
: Type
: Initial value
Reset (Initial value: 0, R/W)
Setting this bit reset the NANDFC. After reset, this bit is cleared automatically.
0: Don’t care
1: Reset
Figure 18.4.7 NAND Flash Memory Reset Register (NDFRSTR)
18-11
Chapter 18 NAND Flash Memory Controller
18.5 Timing Diagrams
Command and Address Cycle
NDFMCR.ALE = 0
NDFMCR.CLE = 0
NDFMCR.ALE = 1
NDFMCR.CLE = 1
DATA[7:0]
BUSSPRT*
ND_RB*
ND_WE*
ND_RE*
ND_CE*
ND_ALE
NDFMCR.CE = 1
ND_CLE
18.5.1
Figure 18.5.1 Command and Address Cycle (NDFMCR.BSPRT = 0)
18-12
Chapter 18 NAND Flash Memory Controller
DATA[7:0]
BUSSPRT*
ND_RB*
ND_WE*
ND_RE*
ND_CE*
ND_ALE
ND_CLE
Data Read Cycle
GBUSCLK
18.5.2
Figure 18.5.2 Data Read Cycle (NDFMCR.BSPRT = 0, NDFSPR = 0x34)
18-13
DATA[7:0]
BUSSPRT*
ND_RB*
ND_WE*
ND_RE*
ND_CE*
ND_ALE
ND_CLE
GBUSCLK
Chapter 18 NAND Flash Memory Controller
Figure 18.5.3 Data Read Cycle (NDFMCR.BSPRT = 1, NDFSPR = 0x34)
18-14
Chapter 18 NAND Flash Memory Controller
DATA[7:0]
BUSSPRT*
ND_RB*
ND_WE*
ND_RE*
ND_CE*
ND_ALE
ND_CLE
Data Write Cycle
GBUSCLK
18.5.3
Figure 18.5.4 Data Write Cycle (NDFMCR.BSPRT = 0, NDFSPR = 0x34 or
Use 74xx245 type, NDFMCR.BSPRT = 1, NDFSPR = 0x34)
18-15
Chapter 18 NAND Flash Memory Controller
18.6 Example of Using NAND Flash Memory
TX4925
NAND Flash Memory
ND_CLE
ND_ALE
ND_CE*
ND_RE*
ND_WE*
ND_RB*
CLE
ALE
CE*
RE*
WE*
R/B*
I/O[7:0]
DATA[7:0]
Figure 18.6.1 Example of Using NAND Flash Memory
18-16
Chapter 19 Real Time Clock (RTC)
19. Real Time Clock (RTC)
19.1 Features
Real Time Clock (RTC) is a 44-bit counter that uses a 32.768 kHz clock. The counter will provide a
maximum count of 6213 days. Also includes is a 44-bit alarm register for the RTC that allows the software
to set an alarm at any desired count of the RTC counter. The RTC will generate two interrupts for the CPU.
The first is the ALARMINT that will generate an interrupt whenever the RTC reaches the value set by the
alarm. The second is the RTCINT that will generate an interrupt whenever the RTC counter “rolls over”
after reaching a count of 6213 days.
19-1
Chapter 19 Real Time Clock (RTC)
19.2 Block Diagrams
Figure 19.2.1 shows the RTC Block Diagram.
ALARM[43:0]
TC5
4 Bit
Ripple
Counter
TC4
TC
8 Bit
Ripple
Counter
TC3
TC
8 Bit
Ripple
Counter
ALARMINT
=
TC2
TC
8 Bit
Ripple
Counter
TC1
TC
8 Bit
Ripple
Counter
TC0
TC
C32K
8 Bit
Ripple
Counter
TC5
TC4
TC3
TC2
TC1
TC0
RTCINT
Figure 19.2.1 RTC Block Diagram
19-2
Chapter 19 Real Time Clock (RTC)
19.3 Operations
19.3.1
Operation
The RTC contains five 8-bit ripple counters connected in series. The first counter counts on each
C32K clock, while each successive counter only counts when the previous count stage has reached a
count of “0xFF”. Once the counters reach a count of “0xFFFFFFFFFFF”, the RTCINT interrupt will
assert to indicate that the counter is “rolling over”. Given a 44-bit counter for the RTC and an input
clock C32K of 32.768 kHz, the time until RTCINT interrupt will assert is 6213 days.
The software can generate an alarm interrupt(ALARMINT) by setting the ALARM[43:0] bits in the
Alarm Register. Whenever the RTC becomes equal to the value set in the Alarm Register, the
ALARMINT will be triggered. The value of the RTC counter can be read via the RTC Register.
19.3.2
Interrupt
The RTC has two types interrupt sources. OR signal of them connects to the internal Interrupt
Controller (IRC). Please check RTC Interrupt Status Register (RTCINT) to know which type of
interrupt occurred.
Type
Status Bits
Mask-able Bit
RTCINT
ALARMINT
RTCINT in RTCINT
ALARMINT in RTCINT
DSRTCINT in RTCCTRL
DSALINT in RTCCTRL
RTCINT:
This interrupt is set 44 bits of the RTC counter reach a value of “0xFFFFFFFFFFF” to alert the
software that the counter is “rolling over”.
ALARMINT:
This interrupt is set whenever the RTC counter reaches a count that is equal to the value of the
ALARM[43:0] bits set in the ALAMHI and ALARMLO Registers.
19.4 Registers
All registers should be accessed only as full word (32-bit) accesses. Any other type of access produces an
undefined result. Please write “0” to the undefined bit.
Table 19.4.1 RTC Module Registers
Reference
Address
Bit Width
Register Symbol
19.4.1
0xF900
32-bit
RTCHI
RTC Register (High)
19.4.2
0xF904
32-bit
RTCLO
RTC Register (Low)
19.4.3
0xF908
32-bit
ALARMHI
Alarm Register (High)
19.4.4
0xF90C
32-bit
ALARMLO
Alarm Register (Low)
19.4.5
0xF910
32-bit
RTCCTRL
RTC Control Register
19.4.6
0xF914
32-bit
RTCINT
RTC Interrupt Status Register
19-3
Register Name
Chapter 19 Real Time Clock (RTC)
19.4.1
RTC Register (High) (RTCHI)
0xF900
31
16
Reserved
: Type
: Initial value
15
12
11
0
Reserved
RTCHI
R

Bits
Mnemonic
31:12

11:0
RTCHI
Field Name
: Type
: Initial value
Explanation

Reserved
RTC Register
(High)
RTC Register (High) (Initial value: undefined, R)
These bits provide the status of the bit 43 to 32 of RTC counter.
The software must read these bits twice and compare the values to ensure that the
counter is not read while the counter is counting since the CPU clock is not
synchronous with the RTC counter clock. If the two reads do not compare, the
software must read the register again to read the correct counter value.
Figure 19.4.1 RTC Register (High) (RTCHI)
19.4.2
RTC Register (Low) (RTCLO)
0xF904
31
16
RTCLO
R

: Type
: Initial value
15
0
RTCLO
R

Bits
Mnemonic
31:0
RTCLO
Field Name
RTC Register
(Low)
: Type
: Initial value
Explanation
RTC Register (Low) (Initial value: undefined, R)
These bits provide the status of the bit 31 to 0 of RTC counter.
The software must read these bits twice and compare the values to ensure that the
counter is not read while the counter is counting since the CPU clock is not
synchronous with the RTC counter clock. If the two reads do not compare, the
software must read the register again to read the correct counter value.
Figure 19.4.2 RTC Register (Low) (RTCLO)
19-4
Chapter 19 Real Time Clock (RTC)
19.4.3
Alarm Register (High) (ALARMHI)
0xF908
31
16
Reserved
: Type
: Initial value
15
12
11
0
Reserved
ALARMHI
R/W
0x000
Bits
Mnemonic
31:12

11:0
ALARMHI
Field Name
Explanation

Reserved
Alarm Register
(High)
: Type
: Initial value
Alarm Register (High) (Initial value: 0x000, R/W)
These bits provide the status of the bit 43 to 32 of Alarm counter.
Whenever the RTC counter reaches a count that is equal to the value of join to
these bits to Alarm Register (Low), the ALARMINT interrupt will be set.
Figure 19.4.3 Alarm Register (High) (ALARMHI)
19.4.4
Alarm Register (Low) (ALARMLO)
0xF90C
31
16
ALARMLO
R/W
0x0000
: Type
: Initial value
15
0
ALARMLO
R/W
0x0000
Bits
Mnemonic
31:0
ALARMLO
Field Name
Alarm Register
(Low)
: Type
: Initial value
Explanation
Alarm Register (Low) (Initial value: 0x0000_0000, R/W)
These bits provide the status of the bit 31 to 0 of Alarm counter.
Whenever the RTC counter reaches a count that is equal to the value of join to
Alarm Register (High) to these bits, the ALARMINT interrupt will be set.
Figure 19.4.4 Alarm Register (Low) (ALARMLO)
19-5
Chapter 19 Real Time Clock (RTC)
19.4.5
RTC Control Register (RTCCTRL)
0xF910
31
16
Reserved
: Type
: Initial value
15
8
Reserved
7
6
5
4
3
2
1
0
DISRTINT DISALINT FRZPRE FRZRTC RTCCLR Reserved TSTCLK RTCTST
R/W
1
Field Name
R/W
1
R/W
0
R/W
0
R/W
0
R/W
0
R/W : Type
0 : Initial value
Bits
Mnemonic
31:8

Explanation
7
DISRTINT
Disable RTC
Interrupt
Disable RTC Interrupt (Initial value: 1, R/W)
Disable RTC Interrupt. If clear, the interrupt occurs when RTC counter reaches a
value of “0xffffffffff”.
1: Disable
0: Enable
6
DISALINT
Disable Alarm
Interrupt
Disable Alarm Interrupt (Initial value: 1, R/W)
Disable Alarm Interrupt. If clear, the interrupt occurs when RTC counter reaches a
value that is equal to the value of Alarm count.
1: Disable
0: Enable
5
FRZPRE
Freeze Prescaler
Freeze Prescaler (Initial value: 0, R/W)
Setting this bit will cause the lower 8 bits of the RTC counter to freeze. This bit is a
test bit and customers can’t use it.
1: Freeze
0: Run
4
FRZRTC
Freeze RTC
Freeze RTC (Initial value: 0, R/W)
Setting this bit will cause the upper 36 bits of the RTC counter to freeze. This bit is
a test bit and customers can’t use it.
1: Freeze
0: Run
3
RTCCLR
RTC Clear
RTC Clear (Initial value: 0, R/W)
Setting this bit to a logic “1” will cause all 44 bits of the RTC counter to initialize to
“0x0000000_0000”. The RTC counter will stay cleared and the counter will not start
counting until this bit is cleared back to a logic “0”.
1: Stop
0: Run
2

Reserved
1
TSTCLK
Enable Test
Clock
Enable Test Clock (Initial value: 0, R/W)
Setting this bit will cause the 32 kHz input clock for the RTC counter to be driven by
the IMBUSCLK instead of the 32 kHz input pin. This bit is a test bit and customers
can’t use it.
0: 32 KHz input
1: IMBUSCLK
0
RTCTST
Enable RTC Test
Enable RTC Test (Initial value: 0, R/W)
Setting this bit will cause all five of the 8-bit counters and the 4-bit counter that
comprise the RTC counter to count together. This bit is a test bit and customers
can’t use it.
0: Normal run
1: Test run

Reserved

Figure 19.4.5 RTC Control Register (RTCCTRL)
19-6
Chapter 19 Real Time Clock (RTC)
19.4.6
RTC Interrupt Status Register (RTCINT)
0xF914
31
16
Reserved
: Type
: Initial value
15
2
Reserved
1
R/W
0
Field Name
0
RTCINT ALARMINT
R/W : Type
0 : Initial value
Bits
Mnemonic
31:2

Explanation
1
RTCINT
RTC Interrupt
Status
RTC Interrupt Status (Initial value: 0, R/W)
This bit shows the RTC Interrupt Status. This bit is cleared by written “0”.
0: No interrupt
1: Interrupt occurs
0
ALARMINT
Alarm Interrupt
Status
Alarm Interrupt Status (Initial value: 0, R/W)
This bit shows the Alarm Interrupt Status. This bit is cleared by written “0”.
0: No interrupt
1: Interrupt occurs

Reserved
Figure 19.4.6 RTC Interrupt Status Register (RTCINT)
19-7
Chapter 19 Real Time Clock (RTC)
19-8
Chapter 20 Removed
20. Removed
20-1
Chapter 20 Removed
20-2
Chapter 21 Extended EJTAG Interface
21. Extended EJTAG Interface
21.1 Extended EJTAG Interface
The TX4925 Extended EJTAG (Enhanced Joint Test Action Group) Interface provides two real-time
debugging functions. One is the IEEE1149.1 standard compliant JTAG Boundary Scan Test, and the other is
the Debugging Support Unit (DSU) that is built into the TX49/H2 core.
JTAG Boundary Scan Test
•
IEEE1149.1 compatible TAP Controller
•
Supports the following five instructions: EXTEST, SAMPLE/PRELOAD, IDCODE,
BYPASS, HIGHZ
Real-time Debugging
•
Real-time debugging using an emulation probe (made by Corelis or YDC)
•
Execution control (run, break, step, register/memory access)
•
Real-time PC tracing
Please contact your local Toshiba Sales representative for more information regarding how to connect the
emulation probe.
The two functions of the Extended EJTAG Interface operate in one of two modes.
PC Trace Mode
•
Execution control (fun, pause, access single steps, access internal register/system memory)
•
JTAG Boundary Scan Test
Real-time Mode
•
Real-time PC tracing
Refer to Section 3.1.14 for more information regarding signals used with the Extended EJTAG Interface.
Table 21.1.1 EJTAG Interface Function and Operation Code
PC Tracing Mode
Off
JTAG Boundary Scan
Boundary Scan Test

Real-time Debugging
Execution Control
Real-time PC Tracing
21-1
On
Chapter 21 Extended EJTAG Interface
21.2 JTAG Boundary Scan Test
21.2.1
JTAG Controller and Register
The Extended EJTAG Interface contains a JTAG Controller (TAP Controller) and a Control Register.
This section explains only those portions that are unique to the TX4925. Please refer to the TX49/H2
Core Architecture Manual for all other portion not covered here. Please contact your local Toshiba Sales
representative for more information regarding the required BSDL files when performing the JTAG
Boundary Scan Test.
•
Instruction Register (Refer to 21.2.2)
•
Data Register
•
•
Boundary Scan Register (Refer to 21.2.3)
•
Bypass Register
•
Device ID Register (Refer to 21.2.4)
•
JTAG Address Register
•
JTAG Data Register
•
JTAG Control Register
•
EJTAG Mount Register
Test Access Port Controller (TAP Controller) (Refer to 21.3)
21-2
Chapter 21 Extended EJTAG Interface
21.2.2
Instruction Register
The JTAG Instruction Register consists of an 8-bit shift register. This register is used for selecting
either one or both of the test to be performed and the Test Data Register to be accessed. The Data
Register is selected according to the instruction code in Table 21.2.1. Refer to the “64-Bit TX System
RISC TX49/H2 Core Architecture” for more information regarding each instruction.
Table 21.2.1 Bit Configuration of JTAG Instruction Register
Instruction Code
MSB → LSB
Instruction
Selected Data Register
00000000 (0x00)
EXTEST
Boundary Scan Register
00000001 (0x01)
SAMPLE/PRELOAD
Boundary Scan Register
00000010 (0x02)
Reserved
Reserved
00000011 (0x03)
IDCODE
Device ID Register
00000100 - 00001111
Reserved
Reserved
HIGHZ
Bypass Register
Reserved
Reserved
00010000 (0x10)
00010001 - 01111111
10000000 - 11111110
Refer to the TX49/H2 Core Architecture Manual
11111111 (0xFF)
BYPASS
Bypass Register
Figure 21.2.1 shows the format of the Instruction Register.
7
MSB
6
5
4
3
2
1
0
LSB
Figure 21.2.1 Instruction Register
The instruction code is shifted to the Instruction Register starting from the Least Significant Bit.
MSB
LSB
TDI
TDO
Figure 21.2.2 Shift Direction of the Instruction Register
21.2.3
Boundary Scan Register
The Boundary Scan Register contains a single 178-bit shift register to which all TX4925 I/O signals
except for power supply, TDI, TCK, TDO, TMS, TRST* are connected. TEST* and SCANENB*
cannot be tested, but it is possible for the Shift Register to sample the input. Figure 21.2.3. shows the
bits of the Boundary Scan Register.
255
0
Refer to Table 21.2.2.
Figure 21.2.3 Boundary Scan Register
Table 21.2.2 shows the scan sequence of 178 signals starting from TDI and ending with TDO.
TDI input is fetched to the Least Significant Bit (LSB) of the Boundary Scan Register and the Most
Significant Bit (MSB) of the Boundary Scan Register is sent from the TDO output.
Table 21.2.2 shows the boundary scan sequence relative to the processor signals.
21-3
Chapter 21 Extended EJTAG Interface
Table 21.2.2 TX4925 Processor JTAG Scan Sequence (1/2)
JTAG Scan
Sequence
Signal Name
JTAG Scan
Sequence
Signal Name
JTAG Scan
Sequence
Signal Name
TDI
43
PCIAD[14]
86
PIO[8]
1
GNT[0]*
44
PCIAD[9]
87
PIO[9]
2
PCICLKIO
45
PCIAD[10]
88
PIO[12]
3
PCICLK[1]
46
PCIAD[11]
89
PIO[17]
4
PCICLK[2]
47
C_BE[0]
90
PIO[13]
5
REQ[0]*
48
PCIAD[8]
91
PIO[7]
6
GNT[1]*
49
PCIAD[4]
92
PIO[14]
7
REQ[1]*
50
PCIAD[0]
93
PIO[15]
8
GNT[2]*
51
PCIAD[5]
94
PIO[16]
9
REQ[2]*
52
PCIAD[1]
95
BC32K
10
GNT[3]*
53
PCIAD[6]
96
NMI*
11
REQ[3]*
54
PCIAD[2]
97
TEST*
12
PCIAD[31]
55
PCIAD[7]
98
MASTERCLK
13
PCIAD[30]
56
PCIAD[3]
99
DATA[0]
14
PCIAD[29]
57
BWE[0]*
100
DATA[16]
15
PCIAD[28]
58
BWE[1]*
101
DATA[1]
16
PCIAD[27]
59
SYSCLK
102
DATA[17]
17
PCIAD[26]
60
BWE[2]*
103
DATA[2]
18
PCIAD[25]
61
BWE[3]*
104
DATA[18]
19
PCIAD[24]
62
UAE
105
DATA[3]
20
C_BE[3]
63
SWE*
106
DATA[19]
21
ID_SEL
64
ADDR[0]
107
DATA[4]
22
PCIAD[23]
65
ADDR[1]
108
DATA[20]
23
PCIAD[22]
66
ADDR[2]
109
DATA[5]
24
PCIAD[21]
67
ADDR[3]
110
DATA[21]
25
PCIAD[20]
68
ADDR[4]
111
DATA[6]
26
PCIAD[19]
69
CE[3]*
112
DATA[22]
27
PCIAD[17]
70
CE[2]*
113
DATA[23]
28
PCIAD[18]
71
ADDR[15]
114
DATA[8]
29
FRAME*
72
OE*
115
DATA[7]
30
C_BE[2]
73
PIO[0]
116
DATA[24]
31
PCIAD[16]
74
PIO[2]
117
DATA[9]
32
STOP*
75
CE[1]*
118
DATA[25]
33
DEVSEL*
76
CE[0]*
119
DATA[26]
34
TRDY*
77
BUSSPRT
120
DATA[10]
35
IRDY*
78
PIO[4]
121
DATA[27]
36
SERR*
79
ACK*
122
DATA[11]
37
PERR*
80
PIO[3]
123
DATA[28]
38
PCIAD[15]
81
PIO[1]
124
DATA[12]
39
C_BE[1]
82
PIO[11]
125
DATA[29]
40
PAR
83
PIO[10]
126
DATA[13]
41
PCIAD[12]
84
PIO[5]
127
DATA[15]
42
PCIAD[13]
85
PIO[6]
128
DATA[30]
21-4
Chapter 21 Extended EJTAG Interface
Table 21.2.2 TX4925 Processor JTAG Scan Sequence (2/2)
JTAG Scan
Sequence
Signal Name
JTAG Scan
Sequence
Signal Name
JTAG Scan
Sequence
Signal Name
129
DATA[14]
146
ADDR[10]
163
130
RP*
147
ADDR[11]
164
SDCLKIN
PIO[20]
131
DATA[31]
148
ADDR[12]
165
PON*
132
DQM[0]
149
ADDR[13]
166
PIO[19]
133
CAS*
150
ADDR[14]
167
PIO[18]
134
WE*
151
SADDR10
168
PIO[23]
135
DQM[1]
152
ADDR[16]
169
PIO[22]
136
SDCS[0]*
153
ADDR[19]
170
PIO[21]
137
DQM[2]
154
ADDR[18]
171
PIO[27]
138
DQM[3]
155
ADDR[17]
172
PIO[29]
139
ADDR[5]
156
CKE
173
PIO[28]
140
RAS*
157
SDCS[2]*
174
PIO[30]
141
SDCS[1]*
158
SCANENB*
175
PIO[24]
142
ADDR[6]
159
SDCS[3]*
176
PIO[31]
143
ADDR[7]
160
SDCLK[0]
177
PIO[25]
178
144
ADDR[8]
161
SDCLK[1]
145
ADDR[9]
162
RESET*
21-5
PIO[26]
TDO
Chapter 21 Extended EJTAG Interface
21.2.4
Device ID Register
The Device ID Register is a 32-bit shift register. This register is used for reading the ID code that
expresses the IC manufacturer, part number, and version from the IC and sending it to a serial device.
The following figure shows the configuration of the Device ID Register.
31
28 27
Version
0 0 1 0 0 0
4 bits
12
0
0
0
Product Number
0 0 0 0 0 0
16 bits
1
1
1
1
0
11
0
1
0
Manufacturer ID Code
0 0 0 0 1 1 0
11 bits
0
0
0
1
1
Figure 21.2.4 Device ID Register
The device ID code for the TX4925 is 0x0001_E031. However, the four top bits of the Version field
may be changed. The device ID code is shifted out from the Least Significant Bit.
MSB
LSB
……
TDO
Figure 21.2.5 Shift Direction of the Device ID Register
21-6
Chapter 21 Extended EJTAG Interface
21.3 Initializing the Extended EJTAG Interface
The Extended EJTAG Interface is not reset by asserting the RESET* signal. Operation of the TX49/H2
core is not guaranteed if the Extended EJTAG Interface is not reset. This interface is initialized by either of
the following methods.
•
Assert the TRST* signal.
•
After clearing the processor reset, set the TMS input to High for five consecutive rising edges of the
TCK input. The reset state is maintained if TMS is able to maintain the High state.
The above methods must be performed while the MASTERCLK signal is being input. Also, externally fix
the TRST* signal to GND when not using an emulation probe. The G-Bus Time Out Detection function is
disabled when the TRST* signal is deasserted. (Refer to Section 5.1.1.)
21-7
Chapter 21 Extended EJTAG Interface
21-8
Chapter 22 Electrical Characteristics
22. Electrical Characteristics
22.1 Absolute Maximum Rating
Parameter
(*1)
Symbol
Rating
Unit
Supply voltage (for I/O)
VCCIOMax
−0.3 ~ 3.9
V
Supply voltage (for internal)
VCCIntMax
−0.3 ~ 3.0
V
−0.3 ~ VCCIO + 0.3
V
−40 ~ +125
°C
Input voltage
(*2)
VIN
Storage Temperature
TSTG
*1:
If LSI is used above the maximum ratings, permanent destruction of LSI can result. In addition,
it is desirable to use LSI for normal operation under the recommended condition. If these conditions
are exceeded, reliability of LSI may be adversely affected.
*2:
The maximum rated VCCIOMax voltage must not be exceeded even at VCCIO + 0.3 volts.
22.2 Recommended Operating Conditions
Parameter
Supply voltage
Symbol
Condition
Min.
Max.
Unit
V
I/O
VCCIO
3.0
3.6
Internal
VCCINT
1.4
1.6
V
TC
0
70
°C
Operating Case Temperature
*3:
(*3)
Functional operation should be restricted to the recommended operating conditions. Those are the
limits under which proper device operation is guaranteed. Therefore, the end product must be
designed within the recommended voltage and temperature ranges indicated.
22-1
Chapter 22 Electrical Characteristics
22.3 DC Characteristics
22.3.1
DC Characteristics Except for PCI Interface
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
SYM
Conditions
Min.
Max.
Unit
V
Low-level input voltage
VIL1
(1)
-0.3
0.8
High-level input voltage
VIH1
(1)
2.0
VCCIO + 0.3
V
Low-level output current
IOL1
IOL2
(2)VOL = 0.4 V
(3)VOL = 0.4 V
16
8


mA
mA
High-level output current
IOH1
IOH2
(2)VOH = 2.4 V
(3)VOH = 2.4 V


−16
−8
mA
mA
Low-level input
Leakage current
IIL1
IIL2
(4)VIN=VSS
(5)VIN=VSS
-10
-200
10
10
µA
µA
High-level input
Leakage current
IIH1
(6)VIN=VCCIO
-10
10
µA
Input 200 MHz, GBUSCLK 2.5 RF


600
150
mA
mA
Operating current
IDDDInt
IDDDIO
(1): All input and input-mode bidirectional pins except PCI interface signals.
(2): PIO[4,2,0], SYSCLK, BUSSPRT*, RP*, DQM[3:0], CAS*, WE*, SDCS[3:0], RAS*, CKE, SDCLK[1:0], ACK*, DATA[31:0],
ADDR[19:16,14,5], SADDR10
(3): PIO[31:5,3,1], BWE[3:0]*, SWE*, CE[3:0]*, OE*, SDCLKIN, UAE, ADDR[15,4:0], BC32K, TDO
(4): PIO[17:12], TRST*, SDCLKIN, RESET*, PON*, TEST*, MASTERCLK, SCANENB*
(5): PIO[31:18,11:0], ACK*, DATA[31:0], ADDR[19:0], SADDR10, TCK, TDI, TMS, NMI*
(6): (4), (5) Signals
22-2
Chapter 22 Electrical Characteristics
22.3.2
DC Characteristics Except for PCI Interface
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Min.
Max.
Unit
Low-level input voltage
Parameter
VILPCI
SYM
(1)
-0.5
0.9
V
High-level input voltage
VIHPCI
(1)
1.8
VCCIO + 0.3
V
High-level output voltage
VOHPCI
(2) IOUT = −500 µA
VCCIO × 0.9

V
Low-level output voltage
VOLPCI
(2) IOUT = 1500 µA

VCCIO × 0.1
V
IIHPCI
IILPCI
(1) 0 < VIN < VCCIO
-10
-10
10
10
µA
µA
Input leakage current
Conditions
(1): PCICLKIO, PCIAD[31:0], C_BE[3:0], PAR, FRAME*, IRDY*, TRDY*, STOP*, ID_SEL, DEVSEL*, REQ[3:0]*, GNT[3:0]*,
PERR*, SERR
(2): All PCI interface except ID SEL.
22.4 Power Circuit for PLL
22.4.1
Recommended Circuit for PLL
C1, C2, C3, R, and L should be placed as
closed to the processor as possible.
TX4925
VddInt
R
L
PLL1Vdd_A
C1
C2
C3
PLL1Vss A
R
L
Vss
Parameter
Symbol
AS a Reference Value
Unit
Resistor
R
5.6
Ω
Inductance
L
2.2
µH
C1
C2
C3
1
82
10
nF
nF
µF
1.5 ± 0.1
V
Capacitor
VddInt / VddPLL
Note: Reference
Figure 22.4.1 Power Circuit for PLL
22-3
Chapter 22 Electrical Characteristics
22.5 AC Characteristics
22.5.1
MASTERCLK AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
SYM
Condition
Min.
Max.
Unit
MASTERCLK Period
tMCP
50

ns
MASTERCLK Frequency (*1)
fMCK

20
MHz
MASTERCLK High
tMCH
3

ns
MASTERCLK Low
tMCL
3

ns
Internal Operating Frequency
fCPU
25
200
MHz
MASTERCLK Rise Time
tMCR

2
ns
MASTERCLK Fall Time
tMCF

2
ns
Proper circuit operation of the TX4925 is guaranteed only when power supply to it is stable and the on-chip PLL is enabled.
*1:
tMCP
tMCL
tMCH
MASTERCLK 0.8 VCC
0.2 VCC
tMCR
tMCF
Figure 22.5.1 Timing Diagrams: MASTERCLK
22.5.2
Power On AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
SYM
Condition
Min.
Max.
Unit
ms
PON* width time
tMCO_PLL
1

PLL stable time
tMCP_PLL
10

ms
RESET* width time
tMCH_PLL
1

ms
MASTERCLK
Stable time
Vdd
MASTERCLK
//
//
//
//
//
//
//
//
//
//
//
//
//
tMCH_PLL
RESET*
PON*
tMCO_PLL
tMCP_PLL
PLL Output
CPUCLK
GBUSCLK
PCICLK
Figure 22.5.2 Timing Diagrams: POWER ON RESET
22-4
//
//
//
//
//
Chapter 22 Electrical Characteristics
22.5.3
SDRAM Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V, CL = 50 pF)
Min.
Max.
Unit
SDCLK[3:0] Cycle Time
Parameter
tCYC_SDCLK
Symbol
Rating
12.5

ns
SDCLK[3:0] High Time
tHIGH_SDCLK
3

ns
SDCLK[3:0] Low Time
tLOW_SDCLK
3

ns
SDCLKIN Skew
tBP
Non bypass mode
0
4.0
ns
ADDR[19:16,14:5],SADDR10 Output delay
tVAL_ADDR1
(*1)
1.5
7.5
ns
SDCS[3:0]* Output delay
tVAL_SDCS
1.5
7.5
ns
RAS* Output delay
tVAL_RAS
(*1)
1.5
7.5
ns
CAS* Output delay
tVAL_CAS
(*3)
1.5
7.5
ns
WE* Output delay
tVAL_WE
(*3)
1.5
7.5
ns
CKE Output delay
tVAL_CKE
1.5
7.5
ns
DQM[3:0] Output delay
tVAL_DQM
(*2)
1.5
7.5
ns
DATA[31:0] Output delay (H->L, L->H)
tVAL_DATA1
(*2)
1.5
7.5
ns
DATA[31:0] Output delay (High-Z->Valid)
tVAL_DATA1ZV
(*2)
1.5
7.5
ns
DATA[31:0] Output delay (Valid->High-Z)
tVAL_DATA1VZ
(*2)
1.5
7.5
ns
DATA[31:0] Input set-up time
tSU_DATA1B
Bypass mode
6.0

ns
DATA[31:0] input hold time
tHO_DATA1B
Bypass mode
0.5

ns
DATA[31:0] Input set-up time
tSU_DATA1NB
Non bypass mode
1.0

ns
DATA[31:0] input hold time
tHO_DATA1NB
Non bypass mode
2.0

ns
*1:
An SDRAM bus transaction can complete in no more than two clock cycles when the SDCTR.DA is set to 1.
*2:
An SDRAM bus transaction can complete in no more than two clock cycles when the SDCTR.SWB is set to 1.
*3:
2 cycle signals.
SDCLK[n]
tVAL_*
OUTPUT
outputs valid
tSU_*
tHO_*
inputs valid
INPUT
Figure 22.5.3 Timing Diagrams: Output Signals and When Bypass Mode Input Signals (SDCLK Basis)
SDCLK[n]
tBP
SDCLKIN
tSU_*
INPUT
tHO_*
inputs valid
Figure 22.5.4 Timing Diagrams: When Non Bypass Mode Input Signals (SDCLK Basis)
22-5
Chapter 22 Electrical Characteristics
22.5.4
External Bus Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Min.
Max.
Unit
SYSCLK Cycle Time
Parameter
tCYC_SYSCLK
Symbol
Rating
12.5

ns
SYSCLK HighTime
tHIGH_SYSCLK
4

ns
SYSCLK LowTime
tLOW_SYSCLK
4

ns
ADDR[19:5] Output delay
tVAL_ADDR2
1.5
9.5
ns
CE[5:0]* Output delay
tVAL_CE
1.5
9.0
ns
OE* Output delay
tVAL_OE
1.5
9.0
ns
SWE* Output delay
tVAL_SWE
1.5
9.0
ns
BWE[3:0]* Output delay
tVAL_BWE
1.5
9.0
ns
UAE Output delay
tVAL_UAE
1.5
9.0
ns
BUSSPRT* Output delay
tVAL_DQM
1.5
9.0
ns
DATA[31:0] Output delay (H->L, L->H)
tVAL_BUS
1.5
9.0
ns
DATA[31:0] Output delay (High-Z->Valid)
tVAL_DATA2ZV
1.5
9.0
ns
DATA[31:0] Output delay (Valid->High-Z)
tVAL_DATA2VZ
1.5
9.0
ns
DATA[31:0] Input set-up time
tSU_DATA2
6.0

ns
DATA[31:0] Input set-up time
tHO_DATA2
1.0

ns
ACK* Output delay (H->L, L->H)
tVAL_ACK
1.5
9.0
ns
ACK* Output delay (High-Z->Valid)
tVAL_ACKZV
1.5
9.0
ns
ACK* Output delay (Valid->High-Z)
tVAL_ACKVZ
1.5
9.0
ns
ACK* Input set-up time
tSU_ACK
6.0

ns
ACK* Input hold time
tHO_ACK
0.5

ns
tCYC_SYSCLK
tHIGH_SYSCLK
tLOW_SYSCLK
SYSCLK
tVAL_*
outputs valid
OUTPUT
tSU_*
INPUT
tHO_*
inputs valid
Figure 22.5.5 Timing Diagrams: External Bus Interface
22-6
Chapter 22 Electrical Characteristics
22.5.5
PCI Interface AC Characteristics (33 MHz)
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
Min.
Max.
Unit
tCYC33
Symbol
30
40
ns
PCICLKIO High time (33 MHz)
tHIGH33
11

ns
PCICLKIO Low time (33 MHz)
tLOW33
11

ns
PCICLKIO Through rate (33 MHz)
tSLEW33
1
4
V/ns
PCICLK[2:1],PCICLKIO Cycle time (33 MHz)
tCYC33
CL=70 pF
30
40
ns
PCICLK[2:1],PCICLKIO High time (33 MHz)
tHIGH33
CL=70 pF
11

ns
PCICLK[2:1],PCICLKIO Low time (33 MHz)
tLOW33
CL=70 pF
11

ns
PCICLK[2:1],PCICLKIO Skew (33 MHz)
tSKEW
CL=70 pF, point to point connection
0
T.B.D
ns
PCI output signal (*1) Output delay
tVAL33
CL=70 pF
2
11
ns
PCI input signal (*2) Input set-up time
tSU33
8

ns
PCI input signal (*2) Input set-up time
tHO33
0.5

ns
ID_SEL, REQ[0]*, GNT[3:0]*
Output delay
tVALPP33
CL=70 pF, point to point connection
2
12
ns
ID_SEL, REQ[3:0]*, GNT[0]*
Input set-up time
tSUPP33
point to point connection
10

ns
ID_SEL, REQ[3:0]*, GNT[0]*
Input hold time
tHOPP33
point to point connection
0

ns
PCICLKIO Cycle time (33 MHz)
Rating
*1: PCIAD[31:0],C_BE[3:0],PAR,FRAME*,IRDY*,TRDY*,STOP*,DEVSEL*,PERR*,SERR*,
*2: PCIAD[31:0],C_BE[3:0],PAR,FRAME*,IRDY*,TRDY*,STOP*,DEVSEL*,PERR*,SERR*,ID_SEL
tC Y C 33
t H IG H 3 3
tL O W 3 3
tS LE W 33
0 .6 V cc
0 .5 V cc
0 .4 V cc
0 .4 V c c p -to -p
(m in im u m )
0 .3 V cc
0 .2 V c c
P C IC L K IO
(V c c = 3 .3 V )
tsu 3 3 / tS U P P 3 3 tH O 3 3 / tH O P P 3 3
IN P U T
in p u ts v a lid
t VA L 3 3 / t VA L P P 3 3
OU TPUT
o u tp u ts v a lid
Figure 22.5.6 Timing Diagrams: PCI Interface (3.3V)
22-7
Chapter 22 Electrical Characteristics
tCYCO33
tHIGHO33
tLOWO33
PCICLK[n]
tSKEW
PCICLK[except for n]
n=1∼2
Figure 22.5.7 Timing Diagrams: PCI Clock Skew
22.5.6
DMA Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
Symbol
Rating
Min.
Max.
Unit
DMADONE* Delay
tVAL_DONE
CL=50 pF
SYSCLK (CL=50 pF) Standard

5.5
ns
DMADONE* Input pulse width time
tPW_DONE
1/4 × tMCP × 1.1

ns
tPW_DONE
DMADONE*
SYSCLK
tVAL_DONE
DMADONE*
Figure 22.5.8 Timing Diagrams: DMA Interface
22-8
Chapter 22 Electrical Characteristics
22.5.7
Interrupt Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Min.
Max.
Unit
INT Input pulse width time
Parameter
tPW_INT
Symbol
Rating
1/2 × tMCP × 1.1

ns
NMI Input pulse width time
tPW_NMI
1/2 × tMCP × 1.1

ns
tPW_INT/tPW_NMI
Figure 22.5.9 Timing Diagrams: INT/NMI Interface
22.5.8
SIO Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
Symbol
Rating
Min.
Max.
Unit
tMCP × 1.1

ns

2 × fMCK × 0.45
MHz
1/2 × tMCP × 1.1

ns

ns
SCLK Cycle time
fCYC_SCLK
SCLK Frequency
fSCLK
SCLK High time
tHIGH_SCLK
SCLK Low time
tLOW_SCLK
1/2 × tMCP × 1.1
tHIGH_SCLK
tLOW_SCLK
SCLK
tCYC_SCLK/fSCLK
Figure 22.5.10 Timing Diagrams: SIO Interface
22-9
Chapter 22 Electrical Characteristics
22.5.9
Timer Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
Symbol
TCLK Cycle time
Rating
fCYC_TCLK
Min.
Max.
Unit
tMCP × 1.1

ns
TCLK Frequency
fTCLK

2 × fMCK × 0.45
MHz
TCLK High time
tHIGH_TCLK
1/2 × tMCP × 1.1

ns
TCLK Low time
tLOW_TCLK
1/2 × tMCP × 1.1

ns
tHIGH_TCLK
tLOW_TCLK
TCLK
tCYC_TCLK/fTCLK
Figure 22.5.11 Timing Diagrams: Timer Interface
22.5.10 PIO Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
Symbol
Rating
Min.
Max.
Unit
PIO[31:0] Output Delay time
tVAL_PIO
IMBUSCLK Standard (CL=50 pF)

9.5
ns
PIO[31:0] Input Setup time
tSU_PIO
IMBUSCLK Standard
8.5

ns
PIO[31:0] Input Hold time
tHO_PIO
IMBUSCLK Standard
0

ns
Note: The IMBUSCLK is an internal signal. For details, please refer to “Chapter 6 Clocks” in the TMPR4925 Data book.
MASTERCLK
IMBUSCLK
(output)
tVAL_PIO
(input)
tSU_PIO
tHO_PIO
Figure 22.5.12 Timing Diagrams: PIO Interface
22-10
Chapter 22 Electrical Characteristics
22.5.11 AC-link Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Min.
Max.
Unit
BITCLK High time
Parameter
tHIGH_BCLK
Symbol
Rating
36
45
ns
BITCLK Low time
tLOW_BCLK
36
45
ns
SYNC Output Delay time
tVAL_SYNC
BITCLK Standard, CL=55 pF

15
ns
SDOUT Output Delay time
tVAL_SDOUT
BITCLK Standard, CL=55 pF

15
ns
SDIN[1:0] Input Setup time
tSU_SDIN
BITCLK Standard
10

ns
SDIN[1:0] Input Hold time
tHO_SDIN
BITCLK Standard
10

ns
BITCLK
tHIGH_BCLK
tLOW_BCLK
SYNC
tVAL_SYNC
tVAL_SYNC
SDOUT
tVAL_SDOUT
SDIN
tSU_SDIN tHO_SDIN
Figure 22.5.13 Timing Diagrams: AC-link Interface
22-11
Chapter 22 Electrical Characteristics
22.5.12 NAND Flash Memory Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Min.
Max.
Unit
ND_ALE Output Delay time
Parameter
tVAL_NDALE
Symbol
Rating

9.5
ns
ND_CLE Output Delay time
tVAL_NDCLE

9.5
ns
ND_CE* Output Delay time
tVAL_NDCE

9.5
ns
ND_RE* Output Delay time
tVAL_NDRE

9.5
ns
ND_WE* Output Delay time
tVAL_NDWE

9.5
ns
DATA[7:0] Read Setup time
tSU_RDATA
8.5

ns
DATA[7:0] Read Hold time
tHO_RDATA
1.0

ns
DATA[7:0] Write Delay time
tVAL_WDATA

9.5
ns
DATA[7:0] Write Hold time
tHO_WDATA
1.0

ns
GBUSCLK
tVAL_ND*
ND_ALE, ND_CLE
ND_CE*, ND_RE*
ND_WE*
ND_RE*
tSU_RDATA
DATA[7:0]
tHO_RDATA
inputs valid
ND_WE*
tHO_WDATA
tVAL_WDATA
DATA[7:0]
outputs valid
Figure 22.5.14 Timing Diagrams: NAND Flash Memory Interface
22-12
Chapter 22 Electrical Characteristics
22.5.13 CHI Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Min.
Max.
Unit
CHICLK Cycle time
Parameter
fCYC_CHICLK
Symbol
Rating
225

ns
CHICLK High time
tHIGH_CHICLK
100

ns
CHICLK Low time
tLOW_CHICLK
100

ns
tHIGH_CHICLK
tLOW_CHICLK
CHICLK
tCYC_CHICLK
Figure 22.5.15 Timing Diagrams: CHI Interface
22-13
Chapter 22 Electrical Characteristics
22.5.14 SPI Interface AC Characteristics
(Tc = 0 ~ 70°C, VCCIO = 3.3 V ± 0.3 V, VCCInt = 1.5 V ± 0.1 V, VSS = 0 V)
Parameter
Symbol
Rating
Min.
Max.
Unit
2× tMCP

ns

1/2 x fMCK
MHz
tMCP × 0.9

ns
SPICLK Cycle time
fCYC_SPICLK
SPICLK Frequency
fSPICLK
SPICLK High time
tHIGH_SPICLK
SPICLK Low time
tLOW_SPICLK
tMCP × 0.9

ns
SPIOUT Output Delay time
tVAL_SPIOUT

9.5
ns
SPIIN Input Setup time
tSU_SPIIN
8.5

ns
SPIIN Input Hold time
tHO_SPIIN
1.0

ns
tHIGH_SPICLK
tLOW_SPICLK
SPICLK
tCYC_SPICLK/fSPICLK
SPICLK
SPIOUT
(SPOL = 0)
tVAL_SPIOUT
SPIIN
(SPOL = 0)
tSU_SPIIN
tHO_SPIIN
SPICLK
SPIOUT
(SPOL = 1)
tVAL_SPIOUT
SPIIN
(SPOL = 1)
tSU_SPIIN
tHO_SPIIN
Figure 22.5.16 Timing Diagrams: SPI Interface
22-14
Chapter 23 Pin Layout, Package
23. Pin Layout, Package
23.1 Pin Layout
Table 23.1.1 shows pin layout, Table 23.1.2 shows pin designations (Coordinates), Table 23.1.3 shows pin
designations (Signal name).
23-1
Chapter 23 Pin Layout, Package
A
B
C
D
E
F
G
H
J
K
20
RAS*
SDCS[0]*
DQM[1]
DQM[0]
RP*
DATA[15]
DATA[29]
DATA[28]
DATA[27]
DATA[26]
19
SDCS[1]*
DQM[3]
DQM[2]
CAS*
DATA[31]
DATA[30]
DATA[13]
DATA[12]
DATA[11]
DATA[10]
18
ADDR[6]
ADDR[5]
VDDS
WE*
VDDS
DATA[14]
VDDC
VDDS
VDDC
VDDC
17
ADDR[8]
ADDR[7]
Vss
Vss
Vss
Vss
Vss
Vss
Vss
Vss
16
ADDR[10]
ADDR[9]
VDDC
VDDS
15
ADDR[13]
ADDR[12]
ADDR[11]
Vss
14
SADDR10 ADDR[14]
VDDC
Vss
13
ADDR[18]
ADDR[19]
ADDR[16]
VDDS
12
SDCS[2]*
CKE
ADDR[17]
Vss
11
SDCLK[0]
SDCS[3]*
SCANENB* VDDS
10
SDCLK[1]
RESET*
VDDC
Vss
9
SDCLKIN
PIO[20]
TRST*
PON*
8
PIO[19]
PIO[18]
PIO[23]
VDDS
7
PIO[22]
PIO[21]
VDDC
Vss
6
PIO[27]
PIO[29]
PIO[28]
PIO[30]
5
PIO[24]
PIO[31]
PIO[25]
VDDC
TOP View
4
PIO[26]
TDO
VDDC
Vss
REQ[2]*
VDDS
Vss
VDDS
Vss
VDDS
3
TDI
TCK
VDDS
GNT[1]*
GNT[3]*
PCIAD[30] VDDC
2
TMS
GNT[0]*
REQ[0]*
REQ[1]*
REQ[3]*
PCIAD[29] PCIAD[27] PCIAD[24] PCIAD[23] PCIAD[20]
1
PCICLKIO PCICLK[1]
PCICLK[2] GNT[2]*
PCIAD[25] ID_SEL
PCIAD[31] PCIAD[28] PCIAD[26] C_BE[3]
Table 23.1.1 Pin layout (1/2)
23-2
PCIAD[21]
PCIAD[22] PCIAD[19]
Chapter 23 Pin Layout, Package
L
M
N
P
R
T
U
V
W
Y
DATA[25]
DATA[8]
DATA[22]
DATA[21]
DATA[20]
DATA[3]
DATA[17]
Vss
MASTERCLK
Vss
20
DATA[9]
DATA[23]
DATA[6]
DATA[5]
DATA[4]
DATA[18]
DATA[1]
DATA[0]
PLLVDD
PLLVSS
19
DATA[24]
DATA[7]
VDDS
VDDC
DATA[19]
DATA[2]
DATA[16]
VDDS
C32KOUT
C32KIN
18
VDDS
Vss
Vss
Vss
Vss
VDDS
Vss
TEST*
NMI*
BC32K
17
Vss
PIO[16]
PIO[15]
PIO[14]
16
PIO[7]
PIO[13]
PIO[17]
PIO[12]
15
Vss
VDDC
PIO[9]
PIO[8]
14
PIO[6]
PIO[5]
PIO[10]
PIO[11]
13
VDDS
PIO[1]
PIO[3]
ACK*
12
Vss
VDDC
PIO[4]
BUSSPRT
11
PIO[0]
PIO[2]
CE[1]*
CE[0]*
10
CE[3]*
CE[2]*
ADDR[15]
OE*
9
VDDS
ADDR[2]
ADDR[3]
ADDR[4]
8
Vss
VDDC
ADDR[0]
ADDR[1]
7
BWE [2]*
BWE [3]*
UAE
SWE*
6
BWE [0]*
BWE [1]*
SYSCLK
5
TOP View VDDS
Vss
VDDS
IRDY*
VDDC
PCIAD[16] TRDY*
Vss
VDDC
VDDS
Vss
VDDC
PCIAD[7]
PCIAD[3]
4
VDDC
PAR
PCIAD[14] PCIAD[11] VDDS
PCIAD[6]
PCIAD[2]
3
PCIAD[13] PCIAD[10] PCIAD[8]
PCIAD[5]
PCIAD[1]
2
PCIAD[4]
PCIAD[0]
1
PCIAD[18] C_BE[2]
DEVSEL*
PERR*
C_BE[1]
PCIAD[17] FRAME*
STOP*
SERR*
PCIAD[15] PCIAD[12] PCIAD[9]
Table 23.1.1 Pin layout (2/2)
23-3
C_BE[0]
Chapter 23 Pin Layout, Package
Table 23.1.2 Pin Designations (Coordinates)
A1
PCICLKIO
C13
ADDR[16]
H1
C_BE[3]
P17
Vss
V13
PIO[5]
A2
TMS
C14
VDDC
H2
PCIAD[24]
P18
VDDC
V14
VDDC
A3
TDI
C15
ADDR[11]
H3
PCIAD[25]
P19
DATA[5]
V15
PIO[13]
A4
PIO[26]
C16
VDDC
H4
VDDS
P20
DATA[21]
V16
PIO[16]
A5
PIO[24]
C17
Vss
H17
Vss
R1
PCIAD[15]
V17
TEST*
A6
PIO[27]
C18
VDDS
H18
VDDS
R2
C_BE[1]
V18
VDDS
A7
PIO[22]
C19
DQM[2]
H19
DATA[12]
R3
PAR
V19
DATA[0]
A8
PIO[19]
C20
DQM[1]
H20
DATA[28]
R4
VDDC
V20
Vss
A9
SDCLKIN
D1
GNT[2]*
J1
PCIAD[22]
R17
Vss
W1
PCIAD[4]
A10
SDCLK[1]
D2
REQ[1]*
J2
PCIAD[23]
R18
DATA[19]
W2
PCIAD[5]
A11
SDCLK[0]
D3
GNT[1]*
J3
ID_SEL
R19
DATA[4]
W3
PCIAD[6]
A12
SDCS[2]*
D4
Vss
J4
Vss
R20
DATA[20]
W4
PCIAD[7]
A13
ADDR[18]
D5
VDDC
J17
Vss
T1
PCIAD[12]
W5
BWE[1]*
A14
SADDR10
D6
PIO[30]
J18
VDDC
T2
PCIAD[13]
W6
UAE
A15
ADDR[13]
D7
Vss
J19
DATA[11]
T3
PCIAD[14]
W7
ADDR[0]
A16
ADDR[10]
D8
VDDS
J20
DATA[27]
T4
VDDS
W8
ADDR[3]
A17
ADDR[8]
D9
PON*
K1
PCIAD[19]
T17
VDDS
W9
ADDR[15]
A18
ADDR[6]
D10
Vss
K2
PCIAD[20]
T18
DATA[2]
W10
CE[1]*
A19
SDCS[1]*
D11
VDDS
K3
PCIAD[21]
T19
DATA[18]
W11
PIO[4]
A20
RAS*
D12
Vss
K4
VDDS
T20
DATA[3]
W12
PIO[3]
B1
PCICLK[1]
D13
VDDS
K17
Vss
U1
PCIAD[9]
W13
PIO[10]
B2
GNT[0]*
D14
Vss
K18
VDDC
U2
PCIAD[10]
W14
PIO[9]
B3
TCK
D15
Vss
K19
DATA[10]
U3
PCIAD[11]
W15
PIO[17]
B4
TDO
D16
VDDS
K20
DATA[26]
U4
Vss
W16
PIO[15]
B5
PIO[31]
D17
Vss
L1
PCIAD[17]
U5
VDDS
W17
NMI*
B6
PIO[29]
D18
WE*
L2
PCIAD[18]
U6
BWE[2]*
W18
C32KOUT
B7
PIO[21]
D19
CAS*
L3
VDDC
U7
Vss
W19
PLLVDD
B8
PIO[18]
D20
DQM[0]
L4
Vss
U8
VDDS
W20
MASTERCLK
B9
PIO[20]
E1
PCIAD[31]
L17
VDDS
U9
CE[3]*
Y1
PCIAD[0]
B10
RESET*
E2
REQ[3]*
L18
DATA[24]
U10
PIO[0]
Y2
PCIAD[1]
PCIAD[2]
B11
SDCS[3]*
E3
GNT[3]*
L19
DATA[9]
U11
Vss
Y3
B12
CKE
E4
REQ[2]*
L20
DATA[25]
U12
VDDS
Y4
PCIAD[3]
B13
ADDR[19]
E17
Vss
M1
FRAME*
U13
PIO[6]
Y5
SYSCLK
B14
ADDR[14]
E18
VDDS
M2
C_BE[2]
U14
Vss
Y6
SWE*
B15
ADDR[12]
E19
DATA[31]
M3
PCIAD[16]
U15
PIO[7]
Y7
ADDR[1]
B16
ADDR[9]
E20
RP*
M4
VDDS
U16
Vss
Y8
ADDR[4]
B17
ADDR[7]
F1
PCIAD[28]
M17
Vss
U17
Vss
Y9
OE*
B18
ADDR[5]
F2
PCIAD[29]
M18
DATA[7]
U18
DATA[16]
Y10
CE[0]*
B19
DQM[3]
F3
PCIAD[30]
M19
DATA[23]
U19
DATA[1]
Y11
BUSSPRT
B20
SDCS[0]*
F4
VDDS
M20
DATA[8]
U20
DATA[17]
Y12
ACK*
C1
PCICLK[2]
F17
Vss
N1
STOP*
V1
C_BE[0]
Y13
PIO[11]
C2
REQ[0]*
F18
DATA[14]
N2
DEVSEL*
V2
PCIAD[8]
Y14
PIO[8]
C3
VDDS
F19
DATA[30]
N3
TRDY*
V3
VDDS
Y15
PIO[12]
C4
VDDC
F20
DATA[15]
N4
IRDY*
V4
VDDC
Y16
PIO[14]
C5
PIO[25]
G1
PCIAD[26]
N17
Vss
V5
BWE[0]*
Y17
BC32K
C6
PIO[28]
G2
PCIAD[27]
N18
VDDS
V6
BWE[3]*
Y18
C32KIN
C7
VDDC
G3
VDDC
N19
DATA[6]
V7
VDDC
Y19
PLLVSS
C8
PIO[23]
G4
Vss
N20
DATA[22]
V8
ADDR[2]
Y20
Vss
C9
TRST*
G17
Vss
P1
SERR*
V9
CE[2]*
C10
VDDC
G18
VDDC
P2
PERR*
V10
PIO[2]
C11
SCANENB*
G19
DATA[13]
P3
VDDC
V11
VDDC
C12
ADDR [17]
G20
DATA[29]
P4
Vss
V12
PIO[1]
23-4
Chapter 23 Pin Layout, Package
Table 23.1.3 Pin Designations (Signal name)
Y12
ACK*
G19
DATA[13]
L1
PCIAD[17]
Y19
PLLVSS
D13
VDDS
W7
ADDR[0]
F18
DATA[14]
L2
PCIAD[18]
D9
PON*
D16
VDDS
Y7
ADDR[1]
F20
DATA[15]
K1
PCIAD[19]
A20
RAS*
E18
VDDS
V8
ADDR[2]
U18
DATA[16]
K2
PCIAD[20]
C2
REQ[0]*
F4
VDDS
W8
ADDR[3]
U20
DATA[17]
K3
PCIAD[21]
D2
REQ[1]*
H4
VDDS
VDDS
Y8
ADDR[4]
T19
DATA[18]
J1
PCIAD[22]
E4
REQ[2]*
H18
B18
ADDR[5]
R18
DATA[19]
J2
PCIAD[23]
E2
REQ[3]*
K4
VDDS
A18
ADDR[6]
R20
DATA[20]
H2
PCIAD[24]
B10
RESET*
L17
VDDS
B17
ADDR[7]
P20
DATA[21]
H3
PCIAD[25]
E20
RP*
M4
VDDS
A17
ADDR[8]
N20
DATA[22]
G1
PCIAD[26]
A14
SADDR10
N18
VDDS
B16
ADDR[9]
M19
DATA[23]
G2
PCIAD[27]
C11
SCANENB*
T4
VDDS
A16
ADDR[10]
L18
DATA[24]
F1
PCIAD[28]
A11
SDCLK[0]
T17
VDDS
C15
ADDR[11]
L20
DATA[25]
F2
PCIAD[29]
A10
SDCLK[1]
U5
VDDS
B15
ADDR[12]
K20
DATA[26]
F3
PCIAD[30]
A9
SDCLKIN
U8
VDDS
A15
ADDR[13]
J20
DATA[27]
E1
PCIAD[31]
B20
SDCS[0]*
U12
VDDS
B14
ADDR[14]
H20
DATA[28]
B1
PCICLK[1]
A19
SDCS[1]*
V3
VDDS
W9
ADDR[15]
G20
DATA[29]
C1
PCICLK[2]
A12
SDCS[2]*
V18
VDDS
C13
ADDR[16]
F19
DATA[30]
A1
PCICLKIO
B11
SDCS[3]*
C17
Vss
C12
ADDR[17]
E19
DATA[31]
P2
PERR*
P1
SERR*
D4
Vss
A13
ADDR[18]
N2
DEVSEL*
U10
PIO[0]
N1
STOP*
D7
Vss
B13
ADDR[19]
D20
DQM[0]
V12
PIO[1]
Y6
SWE*
D10
Vss
Y17
BC32K
C20
DQM[1]
V10
PIO[2]
Y5
SYSCLK
D12
Vss
Y11
BUSSPRT
C19
DQM[2]
W12
PIO[3]
B3
TCK
D14
Vss
V5
BWE[0]*
B19
DQM[3]
W11
PIO[4]
A3
TDI
D15
Vss
W5
BWE[1]*
M1
FRAME*
V13
PIO[5]
B4
TDO
D17
Vss
U6
BWE[2]*
B2
GNT[0]*
U13
PIO[6]
V17
TEST*
E17
Vss
Vss
V6
BWE[3]*
D3
GNT[1]*
U15
PIO[7]
A2
TMS
F17
D19
CAS*
D1
GNT[2]*
Y14
PIO[8]
N3
TRDY*
G4
Vss
Y10
CE[0]*
E3
GNT[3]*
W14
PIO[9]
C9
TRST*
G17
Vss
W10
CE[1]*
J3
ID_SEL
W13
PIO[10]
W6
UAE
H17
Vss
V9
CE[2]*
N4
IRDY*
Y13
PIO[11]
C4
VDDC
J4
Vss
Vss
U9
CE[3]*
W20
MASTERCLK
Y15
PIO[12]
C7
VDDC
J17
B12
CKE
W17
NMI*
V15
PIO[13]
C10
VDDC
K17
Vss
Y18
C32KIN
Y9
OE*
Y16
PIO[14]
C14
VDDC
L4
Vss
W18
C32KOUT
R3
PAR
W16
PIO[15]
C16
VDDC
M17
Vss
V1
C_BE[0]
Y1
PCIAD[0]
V16
PIO[16]
D5
VDDC
N17
Vss
Vss
R2
C_BE[1]
Y2
PCIAD[1]
W15
PIO[17]
G3
VDDC
P4
M2
C_BE[2]
Y3
PCIAD[2]
B8
PIO[18]
G18
VDDC
P17
Vss
H1
C_BE[3]
Y4
PCIAD[3]
A8
PIO[19]
J18
VDDC
R17
Vss
V19
DATA[0]
W1
PCIAD[4]
B9
PIO[20]
K18
VDDC
U4
Vss
U19
DATA[1]
W2
PCIAD[5]
B7
PIO[21]
L3
VDDC
U7
Vss
T18
DATA[2]
W3
PCIAD[6]
A7
PIO[22]
P3
VDDC
U11
Vss
T20
DATA[3]
W4
PCIAD[7]
C8
PIO[23]
P18
VDDC
U14
Vss
R19
DATA[4]
V2
PCIAD[8]
A5
PIO[24]
R4
VDDC
U16
Vss
P19
DATA[5]
U1
PCIAD[9]
C5
PIO[25]
V4
VDDC
U17
Vss
N19
DATA[6]
U2
PCIAD[10]
A4
PIO[26]
V7
VDDC
V20
Vss
M18
DATA[7]
U3
PCIAD[11]
A6
PIO[27]
V11
VDDC
Y20
Vss
M20
DATA[8]
T1
PCIAD[12]
C6
PIO[28]
V14
VDDC
D18
Vss
L19
DATA[9]
T2
PCIAD[13]
B6
PIO[29]
C3
VDDS
K19
DATA[10]
T3
PCIAD[14]
D6
PIO[30]
C18
VDDS
J19
DATA[11]
R1
PCIAD[15]
B5
PIO[31]
D8
VDDS
H19
DATA[12]
M3
PCIAD[16]
W19
PLLVDD
D11
VDDS
23-5
Chapter 23 Pin Layout, Package
23.2 Package
Package Type (Package Code) : 256-pin PBGA / PBGA[4L] (P-BGA256-2727-1.27A4)
23-6
Chapter 24 Usage Notes
24. Usage Notes
24.1 Limitation on DMA Data Chaining
•
Overview
The DMA Controller works incorrectly if the DMCCRn.IMMCHN bit is cleared and the address
increment value (DMSAIRn/DMDAIRn) is negative. The DMA Controller might also work
incorrectly regardless of the setting of the DMCCRn.IMMCHN bit if a dynamic or typical DMA
chaining is performed after completion of a transfer with a negative address increment.
•
Symptom
The DMA Controller might read wrong data or write data to wrong addresses.
•
Workaround Measure
Keep the DMCCRn.IMMCHN bit set. Make sure the DMSAIRn and DMDAIRn values for the
last descriptor are equal to or greater than 0 before adding the next command descriptor chain for
dynamic DMA chaining. For DMA data chaining with a negative address increment, write 0 or a
positive number once, then the desired negative increment value to the DMSAIRn/DMDAIRn.
24.2 Limitation on a Register Read After an SIO Software Reset
•
Overview
Immediately reading a register after a software reset (seting “1” to bit 15 of the SIFCRx
Register) results in the SIO not responding and the bus locking up.
•
Symptom
After a software reset (setting “1” to bit 15 of the SIFCRx Register), IMBUSCLK resets SIO for
four clock cycles. During this reset, the SIO does not recognize that it has been accessed even
when it has been accessed. The bus locks up since the device that accesses the SIO waits for a
response from the SIO. A bus error will then be issued if timeout errors have been enabled.
•
Workaround Measure
After the software reset, perform a dummy read operation to the register of a different module on
the IM-Bus, then access the SIO register. Performing the dummy access on the IM-Bus requires
eight IMBUSCLK cycles to complete, making it possible to avoid the problem since this is longer
than the amount of time the SIO reset requires.
24.3 Other Precautions
•
Always set bit 4 in the G-Bus Arbiter Control register (GARBC) to 1. Clearing this bit might cause
arbitration deadlocks.
•
There are restrictions for address increment values regarding DMA burst transfers. For a detailed
description, see Section 8.3.7, “Single Address Transfer,” and Section 8.3.8, “Dual Address
Transfer.”
•
The four target address spaces (MEM0, MEM1, MEM2 and IO) of the PCI Controller may not
overlap. See Section 10.3.5, “Target Access.”
•
It is recommended to set the G2P Timeout register (GPTOCNT) to 0. See Section 10.4.12, “G2P
Timeout Count Register.”
24-1
Chapter 24 Usage Notes
24-2
Appendix A TX49/H2 Core Supplement
Appendix A.
TX49/H2 Core Supplement
This section explains items that are unique to the TX4925 of the TX49/H2 Core. Please refer to the “64-bit
TX System RISC TX49/H2 Core Architecture” for more information regarding the TX49/H2 Core.
A.1
Processor ID
PRId Register values of the TX4925 TX49/H2 Core are as follows.
Processor Revision Identifier Register: 0x0000_2D23
FPU Implementation/Revision Register (FCR0): 0x0000_2D21
These values may be changed at a later date. Please contact the Toshiba Engineering Department for the
most recent information.
A.2
Interrupts
Interrupt signalling of the on-chip interrupt controller is reflected in bit IP[2] of the Cause Register in the
TX49/H2 Core. In addition, interrupt causes are reflected in other bits of the IP field. Please refer to Section
“15.3.5 Interrupt Notification” for more information.
A.3
Bus Snoop
The Bus Snoop function is not used with the TX4925 due to restrictions of the Bus Snoop specification.
A.4
Halt/Doze Mode
The Doze mode is not necessary when the Bus Snoop function is not used. Please use the Halt mode,
which further reduces power consumption. Clearing the HALT bit of the Config Register makes it possible to
shift to the Halt mode by executing the WAIT instruction.
A.5
Memory Access Order
The TX49/H2 Core has a 4-stage Write buffer, the PCI Bus Bridge (PCI Controller) has 4 stages for
initiator access, and has a 2-stage Post Write buffer (Write buffer) for target access.
When data enters the Write buffer of the TX49/H2 Core, Cache Refill Read operations that do not match
the address of that data after the Write is issued may be issued to the internal bus (G-Bus) before the Write.
Other accesses are issued in order.
Executing the SYNC instruction guarantees that bus access invoked by a load/store instruction previously
executed will be complete on the internal bus.
The PCI Bus Bridge is issued by the issue destination bus in the order all bus accesses are issued on the
issue source bus. Please refer to “10.3.6 Post Write Function” for more information regarding methods for
guaranteeing the completion of Write transactions of the Post Write Buffer.
A-1
Appendix A TX49/H2 Core Supplement
A-2