INTEGRATED CIRCUITS XA-H3 CMOS 16-bit highly integrated microcontroller Preliminary specification IC28 Data Handbook 1999 Sep 24 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 DESCRIPTION The XA-H3 feature set is a subset of the XA-H4 (see Table 1). The XA-H3/H4 devices are members of the Philips XA (eXtended Architecture) family of high performance 16-bit microcontrollers. The powerful 16-bit XA CPU core and rich feature set make the XA-H3 and XA-H4 devices ideal for high-performance real-time applications such as industrial control and networking. By supporting of up to 32 MB of external memory, these devices provide a low-cost solution to embedded applications of any complexity. Features like DMA, memory controller and four advanced UARTs help solve I/O intensive tasks with a minimum of CPU load. The XA-H3 and XA-H4 are designed to significantly minimize the need for external components. FEATURES • Large Memory Support (up to 6 MB external) • De-multiplexed Address/Data Bus • Six Programmable Chip Selects • Dynamic Bus Timing – each of 6 chip selects has individual programmable bus timing. • 32 Programmable General Purpose I/O Pins • Four UARTs with 230.4 kbps capability • Eight DMA Channels – Support for Unified Memory – allows easy user modification of all code – External ISP Flash support for easy code download • Dynamic Bus Sizing – each of 6 Chip Selects can be programmed for 8-bit or 16-bit bus. Table 1. XA-H3 and XA-H4 features comparison Feature XA-H3 XA-H4 Maximum External Memory (Harvard Memory Mode) 6 MB 32 MB (16 MB Code, 16 MB Data) Maximum External Memory (Unified Memory Mode) 6 MB 16 MB Memory Controller supports both Harvard and Unified architectures Yes Yes De-multiplexed Address/Data Bus Yes Yes DRAM Controller No Yes DMA Channels 8 8 Dynamic Bus Sizing Yes Yes Dynamic Bus Timing Yes Yes Programmable Chip Selects 6 6 General Purpose IO Pins 33 33 Potential Interrupt Pins Interrupts (programmable priority) Counter/Timers Baud Rate Generators1 Serial Ports 16 16 7 Standard SW 7 Standard SW 4 High Priority SW 4 High Priority SW 13 Hardware Event 13 Hardware Event 2 plus Watchdog 2 plus Watchdog 4 4 4 UARTS 4 USARTS asynch to 230.4 kbps (no sync) asynch to 230.4 kbps sync to 1 Mbps Match Characters No 4 async chars per USART Hardware Autobaud No up to 230.4 kbps SCP/SPI Bus No Maximum Serial Data Rates NOTE: 1. Can be used as additional counters if not needed as BRGs. 1999 Sep 24 2 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 ORDERING INFORMATION Temperature range °C and Package Freq (MHz) Package Drawing Number –40 to +85°C, 100-Pin Low Profile Quad Flat Package (LQFP) 30 SOT407-1 ROMless Only H3 = PXAH30KFBE NOTE K=30 MHz, F = (–40 to +85), BE = LQFP 76 VSS 77 VDD 78 CD1_Int2 79 Int0 80 P2.0_RxD3 81 P2.1_TxD3 82 P2.2_RTClk3 83 P2.3_ComClk_TRClk3 84 P2.4_CD3 85 P2.5_CTS3 86 P2.6_RTS3 87 P2.7_BRG3 88 VSS 89 VDD 90 P0.0_BRG0 91 P0.1_RTS0 92 P0.2_CTS0 93 P0.3_CD0 94 P0.4_TRClk0 95 P0.5_RTClk0 96 TxD0 97 RxD0 98 GPOut 99 P0.6 100 P0.7 PIN CONFIGURATION VSS 1 75 P1.7_BRG2 VDD 2 74 P1.6_RTS2 A0 3 73 P1.5_CTS2 A1 4 A2 5 71 P1.3_TRClk2 A3 6 70 P1.2_RTClk2 A4 7 69 P1.1_TxD2 A5 8 68 P1.0_RxD2 A6 9 67 P3.7_Int1_TRClk1 A7 10 66 P3.6_TxD1 A8 11 A9 12 A10 13 A11 14 A12 15 A13 16 60 XTALIN A14 17 59 VSS A15 18 58 P3.2_Timer0_ResetOut VSS 19 57 P3.1_CS5_RTS1 VDD 20 56 P3.0_CS4_RTClk1 A16 21 A17 22 A18 23 53 BHE A19 24 52 WAIT_Size16 D0 25 51 OE 72 P1.4_CD2 MOLD MARK 65 P3.5_RxD1 XA-H3 Top View 100 Pin LQFP Part Number: PXAH30KFBE K = 30 MHz, F = –40 to +85°C, BE = LQFP pkg LQFP Package = SOT407-1 64 P3.4_CTS1 63 P3.3_Timer1_BRG1 62 VDD 61 XTALOUT 55 Reset_In MOLD MARK 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 D1 D2 VSS VDD D3 D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14 D15 VDD VSS ClkOut CS3 CS2 CS1 CS0 WE 54 BLE SU01234 1999 Sep 24 3 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 LOGIC SYMBOL XA-H3 VDD Int0 MISC. UART1 Int2 CD1 CS4 CS5 ResetOut, Timer0 Timer1 RTClk1 RTS1 Int1 BRG1 CTS1 RxD1 TxD1 TRClk1 PORT3 VSS XTAL1 XTAL2 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 CS3 CS2 CS1 CS0 UART3 RxD3 TxD3 RTClk3 ComClk, TRClk3 CD3 CTS3 RTS3 BRG3 UART2 RxD2 TxD2 RTClk2 TRClk2 CD2 CTS2 RTS2 BRG2 PORT2 2.0 2.1 2.2 2.3 2.4 2.5 2.6 2.7 A19 – A0 D15 – D0 PORT1 1.0 1.1 1.2 1.3 1.4 1.5 1.6 1.7 ClkOut BHE BLE OE WE UART0 PORT0 TxD0 RxD0 BRG0 RTS0 CTS0 CD0 TRClk0 RTClk0 Wait, Size16 ResetIn 0.0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 GPOut SU01235 1999 Sep 24 4 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 XA-H3 BLOCK DIAGRAM XA-H3 CPU Core 256 Bytes Data SRAM Data MMR Bus SFR Bus DMA R0 UART 0 Port 0 DMA T0 Port 1 DMA R1 UART 1 DMA T1 Port 2 DMA R2 UART 2 Port 3 DMA T2 Timer 0 DMA R3 UART 3 DMA T3 Timer 1 Watchdog Timer Memory Bus Controller 6 Chip Selects Dynamic Bus Sizing Dynamic Bus Timing External System Bus SU01247 1999 Sep 24 5 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 XA-H3 MEMORY MAPS FFFFFFh 6 MB * Common Code and Data Space 000000h Unified Memory (von Neuman architecture) *In either memory architecture, the XA-H3 can support a maximum of 6 MB because each of six Chip Selects is capable of 1 MB each. In Unified architecture, Code and Data can share the same physical Memory Chip and address space. Code Space + Data Space = 6 MB Maximum Total with 1 MB per Chip Select. Each CS (and thus, 1 MB space) can support either Code or Data in Harvard architecture. FFFFFFh FFFFFFh Dedicated Code Space Dedicated Data Space 000000h 000000h Harvard Architecture SU01248 1999 Sep 24 6 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 PIN DESCRIPTIONS Lqfp Pin No. Type 1, 19, 28, 44, 59, 76, 88 I 2, 20, 29, 43, 62, 77, 89 I ResetIn 55 I Reset: A low on this pin resets the microcontroller, causing I/O ports and peripherals to take on their default states, and the processor to begin execution at the address contained in the reset vector. WAIT/ Size16 52 I Wait/Size16: During Reset, this input determines bus size for boot device (“1” = 16-bit boot device; “0” = 8-bit.) During normal operation this is the Wait input (“1” = Wait; “0” = Proceed.) XTALIn 60 I Crystal 1: Input to the inverting amplifier used in the oscillator circuit and input to the internal clock generator circuits. XTALOut 61 I Crystal 2: Output from the oscillator amplifier. Chip Select 0: This output provides the active low chip select to the boot device (usually ROM or Flash.) From reset, it is enabled and mapped to an address range based at 000000h. It can be remapped by software to a higher base in the address map (see the “Memory Interface” chapter in the XA-H3 User Manual.) Mnemonic VSS VDD Name and Function See Note Ground: 0 V reference. Power Supply: This is the power supply voltage for normal, idle, and power down operation. CS0 49 O CS1 48 O Chip Select 1*: Chip Selects 1 through 5 come out of reset disabled. They function as normal chip selects on the H3. CS1 can be “swapped” with CS0 (see the SWAP operation in the “Memory Controller” chapter of the XA-H3 User Manual.) CS1 is usually mapped to be based at 000000h after the swap, but is capable of being based anywhere in the 16 MB address space. CS2 47 O Chip Select 2 *: Active low Chip Selects CS1 through CS5 come out of reset disabled. They can be programmed to function as normal chip selects. CS2 through CS5 are not used with the “SWAP” operation (only /CS0 and CS1 can be swapped; see “Memory Controller” chapter in the XA-H3 User Manual.) They are mappable to any region of the 16 MB address space. CS3 46 O Chip Select 3 *: See Chip Select 2 for description. See Pins 56, 57 for 2 additional Chip Selects WE 50 O Write Enable: Goes active low during all bus write cycles only. OE 51 O Output Enable: Goes active low during all bus read cycles only. BLE 54 O Byte Low Enable: Goes active low during all bus cycles that access data bus lines D7 – D0, read or write. BHE 53 O Byte High Enable: Goes active low during all bus cycles that access data bus lines D15 – D8, read or write. Never goes active on an 8-bit bus; always goes active on Reads or Fetches on a 16-bit bus, even if the processor does not need these bits. In other words, all Reads (byte or word) on a 16-bit bus, assert BHE. ClkOut 45 O Clock Output: This pin outputs a buffered version of the internal CPU clock. The clock output may be used in conjunction with the external bus to synchronize WAIT state generators, etc. The clock output may be disabled by software. WARNING: The capacitive loading on this output must not exceed 40 pf. A19 – A0 24 – 21, 18 – 3 O Address[19:0]: These address lines output A19 – A0 during all external bus cycles. D15 – D0 42 – 30, 27 – 25 I/O Data[15:0]: Bi-directional data bus, D15 – D0; for those bus cycles that are programmed to occur on an “8-bit bus”, D15 – D8 are unused. P0.0 90 I/O P0.0_BRG0*: Port 0 Bit 0, or UART0 BRG output, or UART0 TxClk output 1 P0.1 91 I/O P0.1_RTS0: Port 0 Bit 1 , or UART0 RTS (Request To Send) output. 1 P0.2 92 I/O P0.2_CTS0: Port 0 Bit 2, or UART0 CTS (Clear To Send) input. 1 P0.3 93 I/O P0.3_CD0: Port 0 Bit 3, or UART0 Carrier Detect input. 1 P0.4 94 I/O P0.4_TRClk0: Port 0 Bit 4, or UART0 TR clock input. 1, 2 P0.5 95 I/O P0.5_RTClk0: Port 0 Bit 5, or UART0 RT clock input. 1, 2 P0.6 99 I/O P0.6: Port 0 Bit 6 1 P0.7 100 I/O P0.7: Port 0 Bit 7 1 TxD0 96 O TxD0: Transmit data for UART0. 1999 Sep 24 7 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller Mnemonic Lqfp Pin No. Type XA-H3 Name and Function See Note RxD0 97 I RxD0: Receive data for UART0 GPOut 98 O GPOut – General Purpose Output Bar: Similar to GPIO, but Push/Pull and inverted output only. WARNING: This output is inverted. The polarity of the pin is the opposite of the bit that drives it (GPOut[7]) P1.0 68 I/O P1.0_RxD2: Port 1 Bit 0, or UART2 RxD input P1.1 69 I/O P1.1_TxD2: Port 1 Bit 1, or UART2 TxD output P1.2 70 I/O P1.2_RTClk2: Port 1 Bit 2, or UART2 RT Clock input 2 P1.3 71 I/O P1.3_TRClk2: Port 1 Bit 3, or UART2 TR Clock input 2 P1.4 72 I/O P1.4_CD2: Port 1 Bit 4, or UART2 Carrier Detect input P1.5 73 I/O P1.5_CTS2: Port 1 Bit 5, or UART2 Clear To Send input P1.6 74 I/O P1.6_RTS2: Port 1 Bit 6, or UART2 Request To Send output P1.7 75 I/O P1.7_BRG2: Port 1 Bit 7, or BRG output, or TxClk output (see UART clk diagrams in the XA-H3 User Manual.) P2.0 80 I/O P2.0_RxD3: Port 2 Bit 0, or UART3 Rx Data input P2.1 81 I/O P2.1_TxD3: Port 2 Bit 1, or UART3 Tx Data output P2.2 82 I/O P2.2_RTClk3: Port 2 Bit 2, or UART3 RT Clock input 2 P2.3 83 I/O P2.3_ComClk_TRClk3: Port 2 Bit 3, or UART3 TR Clock input 2 P2.4 84 I/O P2.4_CD3: Port 2 Bit 4, or UART3 Carrier Detect input P2.5 85 I/O P2.5_CTS3: Port 2 Bit 5, or UART3 Clear To Send input P2.6 86 I/O P2.6_RTS3: Port 2 Bit 6, or UART3 Request To Send output P2.7 87 I/O P2.7_BRG3: Port 2 Bit 7, or BRG output, or TxClk output (see UART clock diagrams in the XA-H3 User Manual.) P3.0 56 I/O P3.0_CS4_RTClk1: Port 3 Bit 0, or CS4 output, or UART1 RT Clock input 2 Active low chip selects CS1 through CS5 come out of reset disabled. CS2 through CS5 are not used with the “SWAP” operation (see “Memory Controller” chapter in the XA-H3 User Manual.) They are mappable to any region of the 16 MB address space. P3.1_CS5_RTS1: Port 3 Bit 1, or CS5 output, or UART1 Request To Send output P3.1 P3.2 57 58 I/O I/O Active low chip selects CS1 through CS5 come out of reset disabled. CS2 through CS5 are not used with the “SWAP” operation (see “Memory Controller” chapter in the XA-H3 User Manual.) They are mappable to any region of the 16 MB address space. P3.2_Timer0_ResetOut: Port 3 Bit 2, or Timer0 input or output, or ResetOut output. ResetOut: If the ResetOut function is selected, this pin outputs a low whenever the XA-H3 processor is reset by an internal source (Watchdog Reset or the RESET instruction.) WARNING: Unlike the other 31 GPIO pins, during power up reset, this pin can output a strongly driven low pulse. The duration of this low pulse ranges from 0 ns to 258 system clocks, starting at the time that VCC is valid. The state of the ResetIn pin does not affect this pulse; in other words ResetIn is not passed to ResetOut. When used as GPIO, this pin can also be driven low by software without resetting the XA-H3. P3.3 63 I/O P3.3_Timer1_BRG1: Port 3 Bit 3, or Timer1 input or output, or UART1 BRG output. P3.4 64 I/O P3.4_CTS1: Port 3 Bit 4, or UART1 Clear To Send input P3.5 65 I/O P3.5_RxD1: Port 3 Bit 5, or UART1 Receive Data input P3.6 66 I/O P3.6_TxD1: Port 3 Bit 6, or UART1 Transmit Data output P3.7 67 I/O P3.7_Int1_TRClk1: Port 3 Bit 7, or External Interrupt 1 input, or UART1 TR Clock input CD1_Int2 78 I/O CD1_Int2: UART1 Carrier Detect, or External Interrupt 2 Int0 79 I/O External Interrupt 0 2 NOTES: 1. See XA-H3 User Guide, “Pins Chapter,” for how to program selection of pin functions. 2. RTClk input is usually used for Rx Clock if an external clock is needed, but can be used for either Rx or Tx or both. TRClk is usually used for Tx Clock, but can be used for Rx or Tx or both. 1999 Sep 24 8 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 CONTROL REGISTER OVERVIEW There are two types of control registers in the XA-H3, these are SFRs (Special Function Registers), and MMRs (Memory Mapped Registers.) The SFR registers, with the exception of MRBL, MRBH, MICFG, BCR, BRTH, BRTL, and RSTSRC are the standard XA core registers. See WARNINGs about BCR, BRTH, and BRTL in Table 2. on-chip peripherals, and can be accessed by any addressing mode that can be used for off-chip data accesses. The MMRs are implemented in a relocatable block. See the “Memory Controller” chapter in the XA-H3 User Manual for details on how to relocate the MMRs by writing a new base address into the MRBL and MRBH (MMR Base Low and High) registers. SFRs are accessed by “direct addressing” only (see IC25 XA User Manual for direct addressing.) The MMRs are specific to the XA-H3 Table 2. Special Function Registers (SFR) Name BCR Description Bus Configuration Reg SFR Address Bit Functions and Addresses MSB LSB Reset Value 46Ah WARNING – Never write to the BCR register in the XA-H3 – it is initialized to 07h, the only legal value. This is not the same as for some other XA derivatives. 07h WARNING – Immediately after reset, always write BTRH = 51h, followed by writing BTRL = 40h in that order order. Follow these two writes with five NOPS. NOPS This is not the same as for some other XA derivatives. FFh RESERVED – see Warning BTRH Bus Timing Reg High 469h BTRL Bus Timing Reg Low 468h MRBL# MMR Base Address Low 496h MA15 MA14 MA13 MA12 – – – MRBE MRBH# MMR Base Address High 497h MA23 MA22 MA21 MA20 MA19 MA18 MA17 MA16 xx MICFG# ClkOut Tri-St Enable 1 = Enabled 499h – – – – – – – CLKOE 01h CS Code Segment 443h 00h DS Data Segment 441h 00h ES Extra Segment 442h 00h 33F 33E 33D 33C 33B 33A 339 338 EHSWR3 EHSWR2 EHSWR1 EHSWR0 – EAuto ESC23 ESC01 EFh x0h IEH* Interrupt Enable High 427h 337 336 335 334 333 332 331 330 IEL* Interrupt Enable Low 426h EA EDMAH EDMAL EX2 ET1 EX1 ET0 EX0 IPA0 Interrupt Priority A0 4A0h – PT0 – PX0 00h IPA1 Interrupt Priority A1 4A1h – PT1 – PX1 00h IPA2 Interrupt Priority A2 4A2h – PDMAL – PX2 00h IPA3 Interrupt Priority A3 4A3h IPA4 Interrupt Priority A4 4A4h – IPA5 Interrupt Priority A5 4A5h IPA6 Interrupt Priority A6 4A6h IPA7 Interrupt Priority A7 4A7h P0* Port 0 430h P1* P2* P3* 1999 Sep 24 Port 1 Port 2 Port 3 Reserved 00h 00h – PDMAH 00h PSC23 – PSC01 00h – – – PAutoB 00h – PHSWR1 – PHSWR0 00h – PHSWR3 – PHSWR2 00h 387 386 385 384 383 382 381 380 38F 38E 38D 38C 38B 38A 389 388 397 396 395 394 393 392 391 390 39F 39E 39D 39C 39B 39A 399 398 FFh 431h FFh 432h FFh 433h FFh 9 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller Name Description SFR Address XA-H3 Bit Functions and Addresses MSB LSB Reset Value P0CFGA Port 0 Configuration A 470h 5 P1CFGA Port 1 Configuration A 471h 5 P2CFGA Port 2 Configuration A 472h 5 P3CFGA Port 3 Configuration A 473h 5 P0CFGB Port 0 Configuration B 4F0h 5 P1CFGB Port 1 Configuration B 4F1h 5 P2CFGB Port 2 Configuration B 4F2h 5 P3CFGB Port 3 Configuration B 4F3h 5 PCON* PSWH* PSWL* Power Control Reg Program Status Word High Program Status Word Low 404h 401h 400h 227 226 225 224 223 222 221 220 – – – – – – PD IDL 20F 20E 20D 20C 20B 20A 209 208 SM TM RS1 RS0 IM3 IM2 IM1 IM0 207 206 205 204 203 202 201 200 C AC – – – V N Z 217 216 215 214 213 212 211 210 00h 2 2 PSW51* 80C51 Compatible PSW 402h C AC F0 RS1 RS0 V F1 P 3 RSTSRC Reset Source Reg 463h ROEN – – – – R_WD R_CMD R_EXT 7 RTH0 Timer 0 Reload High 455h 00h RTH1 Timer 1 Reload High 457h 00h RTL0 Timer 0 Reload Low 454h 00h RTL1 Timer 1 Reload Low 456h 00h SCR System Configuration Reg 440h – – – – PT1 PT0 CM PZ 21F 21E 21D 21C 21B 21A 219 218 00h SSEL* Segment Selection Reg 403h ESWEN R6SEG R5SEG R4SEG R3SEG R2SEG R1SEG R0SEG 00h SWE Software Interrupt Enable 47Ah – SWE7 SWE6 SWE5 SWE4 SWE3 SWE2 SWE1 00h SWR* 42Ah 357 356 355 354 353 352 351 350 – SWR7 SWR6 SWR5 SWR4 SWR3 SWR2 SWR1 287 286 285 284 283 282 281 280 TF1 TR1 TF0 TR0 IE1 IT1 IE0 IT0 00h TCON* Timer 0/1 Control 410h TH0 Timer 0 High 451h 00h TH1 Timer 1 High 453h 00h TL0 Timer 0 Low 450h 00h TL1 Timer 1 Low 452h TMOD Timer 0/1 Mode 45Ch 1999 Sep 24 00h 00h GATE C/T M1 10 M0 GATE C/T M1 M0 00h Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller Name Description SFR Address XA-H3 Bit Functions and Addresses MSB LSB Reset Value 28F 28E 28D 28C 28B 28A 289 288 TSTAT* Timer 0/1 Extended Status 411h – – – – – T1OE – T0OE 2FF 2FE 2FD 2FC 2FB 2FA 2F9 2F8 WDCON* Watchdog Control 41Fh PRE2 PRE1 PRE0 – – WDRUN WDTOF – WDL Watchdog Timer Reload 45Fh 00h WFEED1 Watchdog Feed 1 45Dh x WFEED2 Watchdog Feed 2 45Eh x 00h 6 NOTES: * SFRs marked with an asterisk (*) are bit addressable. # SFRs marked with a pound sign (#) are additional SFR registers specific to the XA-H3 and XA-H4. 1. The XA-H3 implements an 8-bit SFR bus, as stated in Chapter 8 of the IC25 Data Handbook XA User Guide. All SFR accesses must be 8-bit operations. Attempts to write 16 bits to an SFR will actually write only the lower 8 bits. 16-bit SFR reads will return undefined data in the upper byte. 2. SFR is loaded from the reset vector. 3. F1, F0, and P reset to “0”. All other bits are loaded from the reset vector. 4. Unimplemented bits in SFRs are “X” (unknown) at all times. “1”s should not be written to these bits since they may be used for other purposes in future XA derivatives. The reset value shown for these bits is “0”. 5. Port configurations default to quasi-bidirectional when the XA begins execution after reset. Thus all PnCFGA registers will contain FFh and PnCFGB register will contain 00h. See warning in XA-H3 User Manual about P3.2_Timer0_ResetOut pin during first 258 clocks after power up. Basically, during this period, this pin may output a strongly-driven low pulse. If the pulse does occur, it will terminate in a transition to high at a time no later than the 259th system clock after valid VCC power up. 6. The WDCON reset value is E6 for a Watchdog reset; E4 for all other reset causes. 7. The RSTSRC register reflects the cause of the last XA reset. One bit will be set to “1”, the others will be “0”. RSTSRC[7] enables the ResetOut function; “1” = Enabled, “0” = Disabled. See XA-H3 User Manual for details; RSTSRC[7] differs in function from most other XA derivatives. 8. The XA guards writes to certain bits (typically interrupt flags) that may be written by a peripheral function. This prevents loss of an interrupt or other status if a bit was written directly by a peripheral action between the read and write of an instruction that performs a read-modify-write operation. XA-H3 SFR bits that are guarded in this manner are: TF1, TF0, IE1, and IE0 (in TCON), and WDTOF (in WDCON). 1999 Sep 24 11 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Table 3. Memory Mapped Registers (MMR) MMR Name Read/Write or Read Only Size Address Offset Description Reset Value UART0 Registers UART0 Write Register 0 R/W 8 800h Command register 00h UART0 Write Register 1 R/W 8 802h Tx/Rx Interrupt & data transfer mode xx UART0 Write Register 2 R/W 8 804h Extended Features Control xx UART0 Write Register 3 R/W 8 806h Receive Parameter and Control 00h UART0 Write Register 4 R/W 8 808h Tx/Rx miscellaneous parameters & mode 00h UART0 Write Register 5 R/W 8 80Ah Tx parameter and control 00h 8 80Ch Reserved – do not write 00h Reserved – do not write 8 80Eh Reserved – do not write xx UART0 Write Register 8 Reserved – do not write R/W 8 810h Transmit Data Buffer xx UART0 Write Register 9 R/W 8 812h Master Interrupt control xx UART0 Write Register 10 R/W 8 814h Miscellaneous Tx/Rx control register 00h UART0 Write Register 11 R/W 8 816h Clock Mode Control xx UART0 Write Register 12 R/W 8 818h Lower Byte of Baud rate time constant 00h UART0 Write Register 13 R/W 8 81Ah Upper Byte of Baud rate time constant 00h UART0 Write Register 14 R/W 8 81Ch Miscellaneous Control bits xx UART0 Write Register 15 R/W 8 81Eh External / Status interrupt control f8h 8 828h Reserved – do not write 00h 00h Reserved – do not write 8 82Ah Reserved – do not write UART0 Read Register 0 Reserved – do not write RO 8 820h Tx/Rx buffer and external status UART0 Read Register 1 RO 8 822h Receive condition status RO 8 826h Interrupt Pending Bits Reserved – do not write 8 82Ch Reserved – do not write Reserved – do not write 8 82Eh Reserved – do not write RO 8 830h Receive Buffer RO 8 Reserved – do not write UART0 Read Register 3 UART0 Read Register 8 824h Reserved – do not write UART0 Read Register 10 – 832h Reserved – do not write 834h Clock status 836-83Eh – UART1 Registers UART1 Write Register 0 R/W 8 840h Command register 00h UART1 Write Register 1 R/W 8 842h Tx/Rx Interrupt & data transfer mode xx UART1 Write Register 2 R/W 8 844h Extended Features Control xx UART1 Write Register 3 R/W 8 846h Receive Parameter and Control 00h UART1 Write Register 4 R/W 8 848h Tx/Rx miscellaneous parameters & mode 00h UART1 Write Register 5 R/W 8 84Ah Tx. parameter and control 00h 8 84Ch Reserved – do not write 00h Reserved – do not write 8 84Eh Reserved – do not write xx UART1 Write Register 8 Reserved – do not write R/W 8 850h Transmit Data Buffer xx UART1 Write Register 9 R/W 8 852h Master Interrupt control xx UART1 Write Register 10 R/W 8 854h Miscellaneous Tx/Rx control register 00h UART1 Write Register 11 R/W 8 856h Clock Mode Control xx UART1 Write Register 12 R/W 8 858h Lower Byte of Baud rate time constant 00h UART1 Write Register 13 R/W 8 85Ah Upper Byte of Baud rate time constant 00h 1999 Sep 24 12 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Reset Value Read/Write or Read Only Size Address Offset UART1 Write Register 14 R/W 8 85Ch Miscellaneous Control bits xx UART1 Write Register 15 R/W 8 85Eh External / Status interrupt control f8h 8 868h Reserved – do not write 00h 00h MMR Name Reserved – do not write Reserved – do not write Description 8 86Ah Reserved – do not write UART1 Read Register 0 RO 8 860h Tx/Rx buffer and external status UART1 Read Register 1 RO 8 862h Receive condition status RO 8 866 Reserved – do not write 8 86Ch Reserved – do not write Reserved – do not write 8 86Eh Reserved – do not write RO 8 870h Receive Buffer RO 8 Reserved – do not write UART1 Read Register 3 UART1 Read Register 8 864h Reserved – do not write UART1 Read Register 10 Interrupt Pending Bits 872h Reserved – do not write 874h Clock status 876-87Eh UART2 Registers UART2 Write Register 0 R/W 8 880h Command register 00h UART2 Write Register 1 R/W 8 882h Tx/Rx Interrupt & data transfer mode xx UART2 Write Register 2 R/W 8 884h Extended Features Control xx UART2 Write Register 3 R/W 8 886h Receive Parameter and Control 00h UART2 Write Register 4 R/W 8 888h Tx/Rx miscellaneous parameters & mode 00h UART2 Write Register 5 R/W 8 88Ah Tx. parameter and control 00h 8 88Ch Reserved – do not write 00h Reserved – do not write 8 88Eh Reserved – do not write xx UART2 Write Register 8 Reserved – do not write R/W 8 890h Transmit Data Buffer xx UART2 Write Register 9 R/W 8 892h Master Interrupt control xx UART2 Write Register 10 R/W 8 894h Miscellaneous Tx/Rx control register 00h UART2 Write Register 11 R/W 8 896h Clock Mode Control xx UART2 Write Register 12 R/W 8 898h Lower Byte of Baud rate time constant 00h UART2 Write Register 13 R/W 8 89Ah Upper Byte of Baud rate time constant 00h UART2 Write Register 14 R/W 8 89Ch Miscellaneous Control bits xx UART2 Write Register 15 R/W 8 89Eh External / Status interrupt control f8h 8 8A8h Reserved – do not write 00h 00h Reserved – do not write 8 8AAh Reserved – do not write UART2 Read Register 0 Reserved – do not write RO 8 8A0h Tx/Rx buffer and external status UART2 Read Register 1 RO 8 8A2h Receive condition status RO 8 8A6h Interrupt Pending Bits Reserved – do not write 8 8ACh Reserved – do not write Reserved – do not write 8 8AEh Reserved – do not write RO 8 8B0h Receive Buffer RO 8 Reserved – do not write UART2 Read Register 3 UART2 Read Register 8 8A4h Reserved – do not write UART2 Read Register 10 Reserved – do not write 1999 Sep 24 8B2h 8B4h 8B6-8BEh 13 Clock status Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller MMR Name Read/Write or Read Only Size XA-H3 Address Offset Description Reset Value UART3 Registers UART3 Write Register 0 R/W 8 8C0h Command register 00h UART3 Write Register 1 R/W 8 8C2h Tx/Rx Interrupt & data transfer mode xx UART3 Write Register 2 R/W 8 8C4h Extended Features Control xx UART3 Write Register 3 R/W 8 8C6h Receive Parameter and Control 00h UART3 Write Register 4 R/W 8 8C8h Tx/Rx miscellaneous parameters & mode 00h UART3 Write Register 5 R/W 8 8CAh Tx. parameter and control 00h Reserved – do not write 8 8CCh Reserved – do not write 00h Reserved – do not write 8 8CEh Reserved – do not write xx UART3 Write Register 8 R/W 8 8D0h Transmit Data Buffer xx UART3 Write Register 9 R/W 8 8D2h Master Interrupt control xx UART3 Write Register 10 R/W 8 8D4h Miscellaneous Tx/Rx control register 00h UART3 Write Register 11 R/W 8 8D6h Clock Mode Control xx UART3 Write Register 12 R/W 8 8D8h Lower Byte of Baud rate time constant 00h UART3 Write Register 13 R/W 8 8DAh Upper Byte of Baud rate time constant 00h UART3 Write Register 14 R/W 8 8DCh Miscellaneous Control bits xx UART3 Write Register 15 R/W 8 8DEh External / Status interrupt control f8h Reserved – do not write 8 8E8h Reserved – do not write 00h Reserved – do not write 8 8EAh Reserved – do not write 00h UART3 Read Register 0 RO 8 8E0h Tx/Rx buffer and external status UART3 Read Register 1 RO 8 8E2h Receive condition status Reserved – do not write UART3 Read Register 3 8E4h RO Reserved – do not write Reserved – do not write UART3 Read Register 8 RO 8 8E6h Interrupt Pending Bits 8 8ECh Reserved – do not write 8 8EEh Reserved – do not write 8 8F0h Receive Buffer Reserved – do not write UART3 Read Register 10 8F2h RO 8 Reserved – do not write 8F4h – Clock status 8F6-8FEh Rx DMA Registers DMA Control Register Ch.0 Rx R/W 8 100h Control Register 00h FIFO Control & Status Reg Ch.0 Rx R/W 8 101h Control & Status Register 00h Segment Register Ch.0 Rx R/W 8 102h Points to 64 k data segment 00h Buffer Base Register Ch.0 Rx R/W 8 104h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.0 Rx R/W 16 106h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.0 Rx R/W 16 108h Current Address pointer A15 – A0 0000h Byte Count Register Ch.0 Rx R/W 16 10Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.0 Lo Rx R/W 16 10Ch 10Ch = Byte 0 = older, 00h 10Dh = Byte 1 = younger 00h 10Eh = Byte 2 = older, 00h 10Fh = Byte 3 = younger 00h Data FIFO Register Ch.0 Hi Rx R/W 16 10Eh DMA Control Register Ch.1 Rx R/W 8 110h Control Register 00h FIFO Control & Status Register Ch.1 Rx R/W 8 111h Control & Status Register 00h Segment Register Ch. 1 Rx R/W 8 112h Points to 64 k data segment 00h 1999 Sep 24 14 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Reset Value Read/Write or Read Only Size Address Offset Buffer Base Register Ch. 1 Rx R/W 8 114h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.1 Rx R/W 16 116h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.1 Rx R/W 16 118h Current Address pointer A15 – A0 0000h Byte Count Register Ch.1 Rx R/W 16 11Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.1 Lo Rx R/W 16 11Ch 11Ch = Byte 0 = older, 00h 11Dh = Byte 1 = younger 00h Data FIFO Register Ch.1 Hi Rx R/W 16 11Eh 11Eh = Byte 2 = older, 00h 11Fh = Byte 3 = younger 00h MMR Name Description DMA Control Register Ch.2 Rx R/W 8 120h Control Register 00h FIFO Control & Status Register Ch.2 Rx R/W 8 121h Control & Status Register 00h Segment Register Ch. 2 Rx R/W 8 122h Points to 64 k data segment 00h Buffer Base Register Ch. 2 Rx R/W 8 124h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.2 Rx R/W 16 126h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.2 Rx R/W 16 128h Current Address pointer A15 – A0 0000h Byte Count Register Ch.2 Rx R/W 16 12Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.2 Lo Rx R/W 16 12Ch 12Ch = Byte 0 = older, 00h 12Dh = Byte 1 = younger 00h Data FIFO Register Ch.2 Hi Rx R/W 16 12Eh 12Eh = Byte 2 = older, 00h 12Fh = Byte 3 = younger 00h DMA Control Register Ch.3 Rx R/W 8 130h Control Register 00h FIFO Control & Status Register Ch.3 Rx R/W 8 131h Control & Status Register 00h Segment Register Ch. 3 Rx R/W 8 132h Points to 64 k data segment 00h Buffer Base Register Ch. 3 Rx R/W 8 134h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.3 Rx R/W 16 136h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.3 Rx R/W 16 138h Current Address pointer A15 – A0 0000h Byte Count Register Ch.3 Rx R/W 16 13Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.3 Lo Rx R/W 16 13Ch 13Ch = Byte 0 = older, 00h 13Dh = Byte 1 = younger 00h 13Eh = Byte 2 = older, 00h 13Fh = Byte 3 = younger 00h Data FIFO Register Ch.3 Hi Rx R/W 16 13Eh Tx DMA Registers DMA Control Register Ch.0 Tx R/W 8 140h Control Register 00h FIFO Control & Status Register Ch.0 Tx R/W 8 141h Control & Status Register 00h Segment Register Ch. 0 Tx R/W 8 142h Points to 64 k data segment 00h Buffer Base Register Ch. 0 Tx R/W 8 144h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.0 Tx R/W 16 146h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.0 Tx R/W 16 148h Current Address pointer A15 – A0 0000h Byte Count Register Ch.0 Tx R/W 16 14Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.0 Tx R/W 16 14Ch 14C = Byte0 = older 0000h 14D = Byte 1 = younger 1999 Sep 24 15 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller MMR Name Data FIFO Register Ch.0 Tx Read/Write or Read Only Size Address Offset R/W 16 14Eh XA-H3 Description 14E = Byte2 = older Reset Value 0000h 14F = Byte3 = younger DMA Control Register Ch.1 Tx R/W 8 150h Control Register 00h FIFO Control & Status Register Ch.1 Tx R/W 8 151h Control & Status Register 00h Segment Register Ch.1 Tx R/W 8 152h Points to 64 k data segment 00h Buffer Base Register Ch.1 Tx R/W 8 154h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.1 Tx R/W 16 156h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.1 Tx R/W 16 158h Current Address pointer A15 – A0 0000h Byte Count Register Ch.1 Tx R/W 16 15Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.1 Lo Tx R/W 16 15Ch Byte0 & 1 0000h Data FIFO Register Ch.1 Hi Tx R/W 16 15Eh Byte2 & 3 0000h DMA Control Register Ch.2 Tx R/W 8 160h Control Register 00h FIFO Control & Status Register Ch.2 Tx R/W 8 161h Control & Status Register 00h Segment Register Ch.2 Tx R/W 8 162h Points to 64 k data segment 00h Buffer Base Register Ch.2 Tx R/W 8 164h Wrap Reload Value for A15 – A8, A7 – A0 reloaded to zero by hardware 00h Buffer Bound Register Ch.2 Tx R/W 16 166h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.2 Tx R/W 16 168h Current Address pointer A15 – A0 0000h Byte Count Register Ch.2 Tx R/W 16 16Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.2 Lo Tx R/W 16 16Ch Byte0 & 1 0000h Data FIFO Register Ch.2 Hi Tx R/W 16 16Eh Byte2 & 3 0000h DMA Control Register Ch.3 Tx R/W 8 170h Control Register 00h FIFO Control & Status Register Ch.3 Tx R/W 8 171h Control & Status Register 00h Segment Register Ch. 3 Tx R/W 8 172h Points to 64 k data segment 00h Buffer Base Register Ch. 3 Tx R/W 8 174h Wrap Reload Value for A15 – A8, 00h A7 – A0 reloaded to zero by hardware Buffer Bound Register Ch.3 Tx R/W 16 176h Upper Bound (plus 1) on A15 – A0 0000h Address Pointer Reg Ch.3 Tx R/W Byte Count Register Ch.3 Tx R/W 16 178h Current Address pointer A15 – A0 0000h 16 17Ah Corresponds to A15 – A0 Byte Count, generates interrupt if enabled and byte count exceeded. 0000h Data FIFO Register Ch.3Lo Tx Data FIFO Register Ch.3 Hi Tx R/W 16 17Ch Byte0 & 1 0000h R/W 16 17Eh Byte2 & 3 0000h RESERVED for future DMA – R/W 180-1FEh Miscellaneous DMA Registers Rx Character Time Out Register Ch.0 R/W 8 200h 0 value disables counter interrupt. 00h Rx Character Time Out Register Ch.1 R/W 8 202h Same as above, for Rx1 00h Rx Character Time Out Register Ch.2 R/W 8 204h Same as above, for Rx2 00h Rx Character Time Out Register Ch.3 R/W 8 206h Same as above, for Rx3 00h Global DMA Interrupt Register R/W 16 210h DMA Interrupt Flags 0000h GPOut R/W 8 260h GPOut[7] drives pin 98 (GPOut) through an inverter. 8xh GPOut[6-0] are unused, and must be written with zeroes. 1999 Sep 24 16 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller MMR Name Read/Write or Read Only Size XA-H3 Address Offset Reset Value Description Memory Interface (MIF) Registers B0CFG R/W 8 280h MIF Bank 0 Config 0Fh B0AM R/W 8 281h MIF Bank 0 Base Address 00h B0TMG R/W 8 282h MIF Bank 0 Timing Params B1CFG R/W 8 284h MIF Bank 1 Config B1AM R/W 8 285h MIF Bank 1 Base Address B1TMG R/W 8 286h MIF Bank 1 Timing Params B2CFG R/W 8 288h MIF Bank 2 Config B2AM R/W 8 289h MIF Bank 2 Base Address B2TMG R/W 8 28Ah MIF Bank 2 Timing Params B3CFG R/W 8 28Ch MIF Bank 3 Config B3AM R/W 8 28Dh MIF Bank 3 Base Address B3TMG R/W 8 28Eh MIF Bank 3 Timing Params B4CFG R/W 8 290h MIF Bank 4 Config B4AM R/W 8 291h MIF Bank 4 Base Address B4TMG R/W 8 292h MIF Bank 4 Timing Params B5CFG R/W 8 294h MIF Bank 5 Config B5AM R/W 8 295h MIF Bank 5 Base Address B5TMG R/W 8 296h MIF Bank 5 Timing Params MBCL R/W 8 2BEh MIF Memory Bank Configuration Lock Register Reserved – do not write R/W 8 2BFh Reserved – do not write Miscellaneous Registers Hi-Pri Soft Ints & Pin Mux Control Reg. R/W 16 2D0h Control bits for Hi-Priority Soft Ints, and Pin Mux 0000h XInt2 R/W 8 2D2h External Interrupt 2 Control 00h FUNCTIONAL DESCRIPTION The XA-H3 functions are described in the following sections. Because all blocks are thoroughly documented in either the IC25 XA Data Handbook, or the XA-H3 User Manual, only brief descriptions are given in this datasheet, in conjunction with references to the appropriate document. XA CPU XA CPU BIU The CPU is a 30 MHz implementation of the standard XA CPU core. See the XA Data Handbook (IC25) for details. The CPU core is identical to the G3 core. See caveat in next paragraph about the Bus Interface Unit. Internal Cpu Bus Bus Interface Unit (BIU) External Memory and I/O Bus This is the internal Bus, not the bus at the pins. This internal bus connects the CPU to Memory Controller. WARNING: Immediately after reset, always write BTRH = 51h, followed by BTRL = 40h, in that order. Once written, do not change the values in these registers. Follow these two writes with five NOPS. Never write to the BCR register, it comes out of reset initialized to 07h, which is the only value that will work. 1999 Sep 24 Memory Controller DMA Channels x8 SU01236 Figure 1. XA CPU Core BIU (Bus Interface Unit) 17 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Timers 0 and 1 ResetOut Timers 0 and 1 are the standard XA-G3 timer 0 and 1. Each has an associated I/O pin and interrupt. See the XA-G3 data sheet in the IC25 XA Data Handbook for details. Many XA derivatives include a standard XA Timer 2. The Timer 2 block has been removed in order to provide other functions on the XA-H3. The P3.2_Timer0_ResetOut pin provides an external indication (if the ResetOut function is enabled in the RSRSRC register) via an active low output when an internal reset occurs (internal reset is Reset instruction or Watchdog time out.) If the ResetOut function is enabled, the ResetOut pin will be driven low when a Watchdog reset occurs or the Reset instruction is executed. This signal may be used to inform other devices in the system that the XA-H3 has been internally reset. The ResetIn signal does NOT get passed on to ResetOut. When activated, the duration of the ResetOut pulse is 256 system clocks. Watchdog Timer This timer is a standard XA-G3 Watchdog Timer. See the G3 datasheet in IC25. Also, if you intend to use the Watchdog Timer to assert the ResetOut pin, see “ResetOut” in the XA-H3 User Manual. The Watchdog Timer is enabled at reset, and must be periodically fed to prevent timeout. If the watchdog times out, it will generate an internal reset; and if ResetOut is enabled the internal reset will generate a ResetOut pulse (active low pulse on ResetOut pin.) WARNING: At power on time, from the time that power coming up is valid, the P3.2_Timer0_ResetOut pin may be driven low for any period from zero nanoseconds up to 258 system clocks. This is true independently of whether ResetIn is active or not. Reset Source Register Reset The reset source identification register (RSTSRC) indicates the cause of the most recent XA reset. The cause may have been an externally applied reset signal, execution of the RESET instruction, or a Watchdog reset. Figure 2 shows the fields in the RSTSRC register. If the ResetOut function is tied back into the ResetIn pin, then all resets will be external resets, and will thus appear as external resets in the reset source register. RSTSRC[7] enables the ResetOut function; 1 = Enabled, 0 = Disabled. See XA-H3 User Manual for details; RSTSRC[7] differs in function from most other XA derivatives. On the XA-H3 there are two pins associated with reset. The ResetIn pin provides an external reset into the XA-H3. The port pin P3.2_Timer0_ResetOut output can be configured as ResetOut. Because ResetOut does not reflect ResetIn, the ResetOut pin can be tied directly back into the ResetIn pin without other PC board logic. This configuration will make all resets (internal or external) appear to the XA as external resets. See the XA-H3 User Manual for a full discussion of the reset functions. ResetIn The ResetIn function is the standard XA-G3 ResetIn function. The ResetIn signal does NOT get passed on to ResetOut. See the XA-H3 User Manual for details on reset. RSTSRC Reg Type and Address = SFR 463h Not Bit Addressable Reset Value = see below MSB ROEN LSB — — — — R_WD R_CMD R_EXT BIT SYMBOL FUNCTION RSTSRC.7 ROEN ResetOut function enable bit – see XA-H3 User Manual for details RSTSRC.6 – Reserved for future use. Should not be set to 1 by user programs. RSTSRC.5 – Reserved for future use. Should not be set to 1 by user programs. RSTSRC.4 – Reserved for future use. Should not be set to 1 by user programs. RSTSRC.3 – Reserved for future use. Should not be set to 1 by user programs. RSTSRC.2 R_WD Indicates that the last reset was caused by a watchdog timer overflow (see WARNING.) RSTSRC.1 R_CMD Indicates that the last reset was caused by execution of the RESET instruction (see WARNING.) RSTSRC.0 R_EXT Indicates that the last reset was caused by the external ResetIn input. WARNING: If ResetOut function is tied back into ResetIn pin, RSTSRC will always show external reset ONLY, because external reset always takes precedence over internal reset. SU01237 Figure 2. RSTSRC Reset Source Register MEMORY CONTROLLER AND I/O BUS INTERFACE The Memory Controller and bus interface generate bus cycles that are designed to service SRAMs, Flash, EEPROM, peripheral chips, etc. interface with no external decode logic or interface chips. The bus interface provides 6 mappable chip select outputs. The bus timing for each individual memory bank or peripheral can be programmed to accommodate slow or fast devices, with various bus protocols. The XA-H3 has a highly programmable memory bus interface. Most SRAMs, Flash, ROMs, and peripheral chips can be connected to this 1999 Sep 24 18 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 The Memory Interface can be programmed to support both Intel style and 68000 bus style SRAMs and peripherals. Each memory bank and associated chip select is capable of supporting a 1 MB address space (six chip selects can thus support 6 MB of SRAM and other generic devices.) XA-H3 CS5 (or P3.1, RTS1) Memory Controller CS4 (or P3.0, RTClk1) CS3 CS2 CS1 CS0 A19–A0 D15–D0 SRAM Controller Dynamic Bus Sizing Dynamic Bus Timing ClkOut BHE BLE OE WE WAIT, SIZE16 SU01238 Figure 3. Memory Bus Interface Signal Pins Bus Interface Pins For the following discussion, see Figure 3. Chip Select Pins on/off, address range, external device access time, detailed bus strobe sequence, and bus width. There are six chip select pins (CS5 – CS0)mapped to six sets of bank control registers. The following attributes are individually programmable for each bank and associated chip select : bank WARNING: On the external bus, ALL XA-H3 reads are 16-bit Reads. If the CPU instruction only specifies 8-bits, then the CPU uses the appropriate byte, and discards the extra byte. Thus “8-Bit Reads” and “16-Bit Reads” appear to be identical on the bus. On an 8-bit bus, this will appear as two consecutive 8-bit reads even though the CPU instruction specified a byte read. Some 8-bit I/O devices (especially FIFOs) cannot operate correctly with 2 bytes being Read for a 1 Byte Read. The most common (and least expensive) solution is to operate these 8-bit devices on a 16-bit bus, and access them in software on all odd byte (or all even byte) boundaries. An added benefit of this technique is that byte reads are faster than on an 8-bit bus, because only 1 word is fetched (a single read) instead of 2 consecutive bytes. Clock Output CLKOUT to be output enabled at reset, but it may be turned off (tri-state disabled) by software via the MICFG MMR. WARNING: The capacitive loading on this output must not exceed 40 pf. The CLKOUT pin allows easier external bus interfacing in some situations. This output reflects the XTALIn clock input to the XA (referred to internally as CClk or System Clock), but is delayed to match the external bus outputs and strobes. The default is for 1999 Sep 24 19 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 CS5 I/O Chip or Memory CS4 I/O Chip or Memory CS3 I/O Chip or Memory CS2 I/O Chip or Memory XA-H3 CS CS0 WE OE A16–A0 D7–D0 A19–A0 OE ROM or Flash 128 k x 8 A16–A0 D7–D0 D15–D0 CS1 CS BLE BLE BHE BHE A15–A1 D15–D0 A15–A1 32 k x 16 SRAM D15–D0 OE WE WE NOTE: The 16-bit wide RAM does not need the A0 pin from the processor. During byte writes to the RAM, the A0 value will cause either BLE or BHE pin to go active from the XA-H3, but not to both. For all Word Writes, Word Reads, Code Fetches, and Byte Reads, both BLE and BHE will go active. SU01239 Figure 4. Typical System Bus Configuration 1999 Sep 24 20 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Table 4. Memory interface control registers Register Name Reg Type Description MRBH “MMR Base Address” High SFR 8 bits This SFR is used to relocate the MMRs. It contains address bits a23 – a16 of the base address for the 4 kB Memory Mapped Register space. See the User Manual for using this SFR to relocate the MMRs. MRBL “MMR Base Address” Low SFR 8 bits Contains address bits a15 – a12 of the base address for the 4 kB Memory Mapped Register space. MICFG MIF Configuration MMR 8 bits Contains the CLKOUT Enable bit. MBCL Memory Bank Configuration Lock MMR 8 bits Contains the bits for locking and unlocking the BiCFG Registers. BiCFG Bank i Configuration MMR 8 bits Contains the size, type, bus width, and enable bits for Memory Bank i. BiAM Bank i Base Address MMR 8 bits Contains the base address bits for Memory Bank i. BiTMG Bank i Timing MMR 8 bits Contains the timing control bits for Memory Bank i. EIGHT CHANNEL DMA CONTROLLER The XA-H3/H4 has eight DMA channels; one Rx DMA channel dedicated to each UART Receive (Rx) channel, and one Tx DMA channel dedicated to each UART Transmit (Tx) channel. All DMA channels are optimized to support memory efficient circular data buffers in external memory. All DMA channels can also support traditional linear data buffers. Transmit DMA Channel Modes The four Tx channels have three DMA modes specifically designed for various applications of the attached UARTs. These modes are summarized in the following table. Full details for all DMA functions can be found in the DMA chapter of the XA-H3 User Manual. Table 5. Tx DMA modes summary Mode Byte Count Source Maskable Interrupt Description Tx Chaining Header in memory On stop DMA channel picks up header from memory at end of transmission. If byte count in header is greater than zero, then DMA transmits the number of bytes specified in the byte count. If byte count equals 0, then a maskable interrupt is generated. This process repeats until byte count in data header is zero. See XA-H3 User Manual for details. Stop on TC Processor loads Byte Count Register Byte count completed (Tx DMA stops) Processor loads byte count into DMA. DMA sends that number of bytes, generates maskable interrupt, and stops. Periodic Interrupt Loaded by processor into DMA, used by DMA only to determine the number of bytes between interrupts. Processor can calculate the byte count from the DMA address pointer. When Byte Counter reaches zero and is reloaded by DMA hardware from the byte count register. DMA runs until commanded to stop by processor. CPU loaded value in Byte Count Register is used to generate an interrupt for every n bytes. Every time byte counter rolls over, a new maskable interrupt is generated. Receive DMA Channel Modes The Rx DMA channels have two DMA modes specifically designed for various applications of the attached UARTs. These modes are 1999 Sep 24 summarized in the following table. For full details on implementation and use, see the XA-H3 User Manual. 21 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Table 6. Rx DMA modes summary Mode Byte Count Source Maskable Interrupt Description Periodic Interrupt Loaded by processor into DMA, used by DMA only to determine the number of bytes between interrupts. Processor can calculate the byte count from the DMA address pointer. When Byte Counter reaches zero and is reloaded by DMA hardware from the byte count register. The DMA channel runs until commanded to stop by the processor. It generates a maskable interrupt once per n bytes, where n is the number written once into the byte count register by the processor, thus an interrupt is generated once every n received bytes. Asynchronous with Character Time Out Byte Count can be calculated by software from the DMA address pointer. If no character is received within a specified time out period, then interrupt. Processor specifies time out period between incoming characters. If no character is received within that time, a maskable interrupt is generated. Asynchronous without interrupt Byte Count can be calculated by software from the DMA address pointer. No interrupt generated Whenever a new character is received, it is moved into the memory buffer – no interrupt is generated. Data FIFO 3 Data FIFO 2 Data FIFO 1 Data FIFO 0 DMA Control Segment Buffer Base Rx Channel Buffer Bound Address Pointer Byte Count FIFO Control Rx Time Out Data FIFO 3 Data FIFO 2 Data FIFO 1 Data FIFO 0 DMA Control Segment Tx Channel Buffer Base Buffer Bound Address Pointer Byte Count FIFO Control SU01240 Figure 5. Rx and Tx DMA Registers DMA Registers • Global DMA Interrupt Register (not shown in figure): All DMA In addition to the 16-bit Global DMA Interrupt Register (which is shared by all eight DMA channels), each DMA channel has seven control registers and a four-byte Data FIFO. The four Rx DMA channels have one additional register, the Rx Character Time Out Register. All DMA registers can be read and written in Memory Mapped Register (MMR) space. These registers are summarized below. 1999 Sep 24 interrupt flags are in this register . • DMA Control Register: Contains the master mode select and interrupt enable bits for the channel. 22 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller • Segment Register: Holds A23–A16 (the current segment) of the Hi-Z, and allows the pin to be used as an input. WARNING: At power on time, from the time that power coming up is valid, the P3.2_Timer0_ResetOut pin may be driven low for any period from zero nanoseconds up to 258 system clocks. This is true independently of whether ResetIn is active or not. 24-bit data buffer address. • Buffer Base Register: Holds a pointer (A15–A8) to the lowest byte in the memory buffer. • Buffer Bound Register: Points to the first out-of-bounds address Power Reduction Modes above a circular buffer. The XA-H3 supports Idle and Power Down modes of power reduction. The idle mode leaves most peripherals running in order to allow them to activate the processor when an interrupt is generated. The power down mode stops the oscillator in order to absolutely minimize power. The processor can be made to exit power down mode via a reset or one of the external interrupt inputs (INT0 or INT1). This will occur if the interrupt is enabled and its priority is higher than that defined by IM3 through IM0. In power down mode, the power supply voltage may be reduced to the RAM keep-alive voltage VRAM. This retains the RAM, register, and SFR contents at the point where power down mode was entered. WARNING: VDD must be raised to within the operating range before power down mode is exited. • Address Pointer Register: Points to a single byte or word in the data buffer in memory. The 24-bit DMA address is formed by concatenating the contents of the Segment Register [A23–A16] with the contents of the Address Pointer Register [A15–A0]. • Byte Count Register: Holds the initial number of bytes to be transferred. In Tx Chaining mode, this register is not used because the byte count is brought into the byte counter from buffer headers in memory. • FIFO Control & Status Register: Holds the queuing order and full/empty status for the Data FIFO Registers. • Data FIFO Registers: A four-byte data FIFO buffer internal to the Interrupts DMA channel. In the XA architecture, all exceptions, including Reset, are handled in the same general exception structure. The highest priority exception is of course Reset, and it is non-maskable. All exceptions are vectored through the Exception Vector Table in low memory. Coming out of Reset, these vectors must be stored in non-volatile memory based at location 000000. Later in the boot sequence, SRAM or other memory can be mapped into this address space if desired. There is a feature in the XA-H3 Memory Controller called “Bank Swap” that supports replacing the ROM vector table and other low memory with RAM. See the XA-H3 User Manual for details. • Rx Char Time Out Register (RxCTOR, Rx DMA channels only): Holds the initial value for an 8-bit character timeout countdown timer which can generate an interrupt. Four UARTS • Asynchronous transfers up to 230.4 kbps • 5, 6, 7, or 8 data bits per character • 1, 1.5, or 2 Stop bits per character • Even or Odd parity generate and check • Parity, Rx Overrun, and Framing Error detection • Break detection • Programmable Baud Rate Generator • Auto Echo and Loopback Modes The XA-H3 has a standard XA CPU Interrupt Controller, implemented with 15 Maskable Event Interrupts. Event Interrupts are defined as maskable interrupts usually generated by hardware events. However, in the XA-H3, 4 of the 15 Event Interrupts are generated by software writing directly to the interrupt flag bit. These 4 interrupts are referred to as High Priority Software Interrupts. See the IC25 XA Data Handbook for a full explanation of the exception structure, including event interrupts, of the XA CPU. Because the High Priority Software Interrupts are specific to the XA-H3, they are explained in the XA-H3 User Manual. I/O Port Output Configuration Port input/output configurations are the same as standard XA ports: open drain, quasi-bidirectional, push-pull, and off (off means tri-state 1999 Sep 24 XA-H3 23 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 XA Core Interrupt Controller DMAH DMA Interrupts DMAL RxD0 CTS0 CD0 RxD1 UART0/ UART1 CTS1 CD1_INT2 INT2 RxD2 CTS2 CD2 RxD3 Interrupt Enable/ Disable Bits UART2/ UART3 Master Enable “EA” Interrupt To XA CPU CTS3 CD3 INT0 INT1 Timer 0 Timer 1 High Priority Software Ints HSWR 3–0 4 SU01241 Figure 6. XA-H3 Interrupt Structure Overview 1999 Sep 24 24 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Table 7. UART0 Interrupts (Interrupt structure is the same except for bit locations for all 4 UARTs) Potential UART0 Interrupt Rx Character Available Individual Enable Bit Source Bit Group Enable Bit(S) Group Flag Bit Master Enable Bit MMR Hex Offset MMR Hex Offset MMR Hex Offset MMR Hex Offset MMR Hex Offset – RR0[0] WR1[4:3] Even Channel Rx IP 820[0] 802[4:3] RR3[5] UART0/1 Master Interrupt Enable 826[5] WR9[3] 812[3] CRC/Framing Error – RR1[6] Rx Overrun – Parity Error WR1[2] RR1[4] 802[2] 822[4] See WR1[1] RR0[2] Tx Interrupt Enable Even Channel Tx IP 820[2] WR1[1] RR3[4] 802[1] 826[4] Master External/Status Interrupt Enable Even Channel External/Status IP WR15[7] WR1[0] RR3[3] 81E[7] 802[0] 826[3] 822[6] RR1[5] 822[5] Tx Buffer Empty Break/Abort Tx Underrun/EOM Break/ RR0[7] Abort IE 820[7] Tx Underrun/EOM IE RR0[6] WR15[6] 820[6] 81E[6] CTS CTS IE RR0[5] WR15[5] 820[5] 81E[5] DCD DCD IE RR0[3] WR15[3] 820[3] 81E[3] Zero Count Zero Count IE RR0[1] WR15[1] 820[1] 81E[1] EXCEPTION/TRAPS PRECEDENCE Description Vector Address Arbitration Ranking 0000–0003 0 (High) Break Point 0004–0007 1 Trace 0008–000B 1 Stack Overflow 000C–000F 1 Divide by 0 0010–0013 1 User RETI 0014–0017 1 TRAP 0–15 (software) 0040–007F 1 Reset (h/w, watchdog, s/w) 1999 Sep 24 25 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 EVENT INTERRUPTS Description Event Interrupt Source Flag Bit Interrupt Vector Address Enable Bit (SFR) Priority Register Bit Field (SFR) Arb. Rank High Priority Software Interrupt 3 HSWR3 MMR 2D0[15] 00BF–00BC EHSWR3 427[7] 33F PHSWR3 4A7[6:4] 17 High Priority Software Interrupt 2 HSWR2 MMR 2D0[14] 00BB–00B8 EHSWR2 427[6] 33E PHSWR2 4A7[2:0] 16 High Priority Software Interrupt 1 HSWR1 MMR 2D0[13] 00B7–00B4 EHSWR1 427[5] 33D PHSWR1 4A6[6:4] 15 High Priority Software Interrupt 0 HSWR0 MMR 2D0[12] 00B3–00B0 EHSWR0 427[4] 33C PHSWR0 4A6[2:0] 14 UART “UART2/3” Interrupt multiple OR from UART2 & UART3 00A7–00A4 ESC23 427[1] 339 PSC23 4A4[6:4] 11 UART “UART0/1” Interrupt multiple OR from UART0 & UART1 00A3–00A0 ESC01 427[0] 338 PSC01 4A4[2:0] 10 DMA “DMAH” Interrupt multiple OR from DMA 009B–0098 EDMAH 426[6] 336 PDMAH 4A3[2:0] 8 DMA “DMAL” Interrupt multiple OR from DMA 0097–0094 EDMAL 426[5] 335 PDMAL 4A2[6:4] 7 External Interrupt 2 (INT2) IE2 MMR 2D2[0] 0093–0090 EX2 426[4] 334 PX2 4A2[2:0] 6 Timer 1 TF1 SFR 410[7] 287 008F–008C ET1 426[3] 333 PT1 4A1[6:4] 5 External Interrupt 1 (INT1) IE1 SFR 410[3] 283 008B–0088 EX1 426[2] 332 PX1 4A1[2:0] 4 Timer 0 TF0 SFR 410[5] 285 0087–0084 ET0 426[1] 331 PT0 4A0[6:4] 3 External Interrupt 0 (INT0) IE0 SFR 410[1] 0083–0080 EX0 426[0] 330 PX0 4A0[2:0] 2 SOFTWARE INTERRUPTS Flag Bit Vector Address Enable Bit Interrupt Priority Software Interrupt 1 Description SWR1 0100–0103 SWE1 (fixed at 1) Software Interrupt 2 SWR2 0104–0107 SWE2 (fixed at 2) Software Interrupt 3 SWR3 0108–010B SWE3 (fixed at 3) Software Interrupt 4 SWR4 010C–010F SWE4 (fixed at 4) Software Interrupt 5 SWR5 0110–0113 SWE5 (fixed at 5) Software Interrupt 6 SWR6 0114–0117 SWE6 (fixed at 6) Software Interrupt 7 SWR7 0118–011B SWE7 (fixed at 7) 1999 Sep 24 26 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 ABSOLUTE MAXIMUM RATINGS Rating Unit Operating temperature under bias Parameter –55 to +125 °C Storage temperature range –65 to +150 °C Voltage on any other pin to VSS –0.5 to VDD+0.5 V v Maximum IOL per I/O pin 15 mA Power dissipation (based on package heat transfer, not device power consumption) 1.5 W PRELIMINARY DC ELECTRICAL CHARACTERISTICS VDD = 5.0 V +/– 10% or 3.3 V +/– 10% unless otherwise specified; Tamb = –40°C to +85°C for industrial, unless otherwise specified. Symbol IDD IID IPDI VRAM Parameter Power supply current, operating Power supply current, Idle mode Power supply current, Power Down mode1 Test Conditions Limits Min Max 5.0 V, 30 MHz 64 80 mA 3.3 V, 30 MHz 55 70 mA 5.0 V, 30 MHz 50 70 mA 3.3 V, 30 MHz 44 60 mA 500 µA 5.0 V, 3.0 V RAM keep-alive voltage 1.5 VIL Input low voltage –0.5 VIH Input high voltage, except Xtal1, RST 2.2 VIH1 Input high voltage to Xtal1, RST VOL Output low voltage all ports8 VOH1 VOH2 CIO Output high voltage, all ports Output high voltage, all ports Unit Typ For both 3.0 & 5.0 V V 0.22 VDD V V 0.7 VDD V IOL = 3.2 mA, VDD = 4.5 V 0.5 V IOL = 1.0 mA, VDD = 3.0 V 0.4 V IOH = –100 µA, VDD = 4.5 V 2.4 V IOH = –30 µA, VDD = 3.0 V 2.0 V IOH = 3.2 mA, VDD = 4.5 V 2.4 V IOH = 1.0 mA, VDD = 3.0 V 2.2 Input/Output pin capacitance V 15 pF IIL Logical 0 input current, all ports7 VIN = 0.45 V –50 µA ILI Input leakage current, all ports6 VIN = VIL or VIH ±10 µA ITL Logical 1 to 0 transition current, all ports5 At VDD = 5.5 V –650 µA At VDD = 3.6 V –250 µA NOTE: 1. VDD must be raised to within the operating range before power down mode is exited. 2. Ports in quasi-bidirectional mode with weak pullup. 3. Ports in PUSH-PULL mode, both pullup and pulldown assumed to be the same strength. 4. In all output modes. 5. Port pins source a transition current when used in quasi-bidirectional mode and externally driven from 1 to 0. This current is highest when VIN is approximately 2 V. 6. Measured with port in high impedance mode. 7. Measured with port in quasi-bidirectional mode. 8. Under steady state (non-transient) conditions, IOL must be externally limited as follows: 15 mA (NOTE: This is +85°C specification for VDD = 5 V) Maximum IOL per port pin: Maximum IOL per 8-bit port: 26 mA 71 mA Maximum total IOL for all outputs: If IOL exceeds the test condition, VOL may exceed the related specification. Pins are not guaranteed to sink current greater than the listed test conditions. 1999 Sep 24 27 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 PRELIMINARY AC ELECTRICAL CHARACTERISTICS (5.0 V +/–10%) Symbol Fig re Figure Parameter Limits Min Max Unit All Cycles FC 0 30 MHz tC 13 System Clock Frequency System Clock Period = 1/FC 33.33 – ns tCHCX 13 XTALIN High Time tC* 0.5 – ns tCLCX 13 XTALIN Low Time tC* 0.4 – ns tCLCH 13 XTALIN Rise Time – 5 ns tCHCL 13 XTALIN Fall Time tAVSL All Address Valid to Strobe low tCHAH All – 5 ns tC – 21 – ns Address hold after CLKOUT rising edge 7 1 – ns tCHAV All Delay from CLKOUT rising edge to address valid – 25 ns tCHSH All Delay from CLKOUT rising edge to Strobe High7 1 21 ns tCHSL All Delay from CLKOUT rising edge to Strobe Low7 1 19 ns tCODH 14 ClkOut Duty Cycle High (into 40 pF max.) tCHCX–7 tCHCX+3 ns tC – 12 – ns Data Read Only tAHDR 10 Address hold (A19 – A1 only, not A0) after CS, BLE, BHE rise at end of Data Read Cycle (not code fetch) Data Read and Instruction Fetch Cycles tDIS 7, 8, 10, 11 Data In Valid setup to ClkOut rising edge 25 – ns tDIH 7, 8, 10, 11 Data In Valid hold after ClkOut rising edge 2 0 – ns tOHDE 10 OE high to XA Data Bus Driver Enable tC – 14 – ns tCHDV 9 Clock High to Data Valid – 25 ns Write Cycles tDVSL 12 Data Valid prior to Strobe Low tC – 23 – ns tSHAH 9, 12 Minimum Address Hold Time after strobe goes inactive tC – 25 – ns tSHDH 9, 12 Data hold after strobes (CS and BHE/BLE) high tC – 25 – ns tWS 15 WAIT setup (stable high or low) to CLKOUT rising edge 20 – ns tWH 15 WAIT hold (stable high or low) after CLKOUT rising edge 0 – ns Wait Input NOTE: 1. On a 16-bit bus, if only one byte is being written, then only one of BLE or BHE will go active. On an 8-bit bus, BLE goes active for all (odd or even address) accesses. BHE will not go active during any accesses on an 8 bit bus. 2. The bus timing is designed to make meeting hold time very straightforward without glue logic. On all reads and fetches, in order to meet hold time, the slave should hold data valid on the bus until the earliest of CS, BHE/BLE, OE, goes high (inactive), or until the address changes. 3. To avoid 3-State fights during read cycles and fetch cycles, do not drive data bus until OE goes active 4. WARNING: ClkOut is specified at 40 pF max. More than 40 pf on ClkOut may significantly degrade the ClkOut waveform. Load capacitance for all outputs (except ClkOut) = 80 pF. 5. Not all combinations of bus timing configuration values result in valid bus cycles. Please refer to the XA-H3 User Manual for details. 6. When code is being fetched on the external bus, a burst mode fetch is used. This burst can be from 2 to 16 bytes long. On a 16-bit bus, A3 – A1 are incremented for each new word of the burst. On an 8-bit bus, A3 – A0 are incremented for each new byte of the burst code fetch. 7. The MIN value for this parameter is guaranteed by design and is not tested in production to the specified limit. In those cases where a maximum value is specified in the table for this parameter, it is tested. 1999 Sep 24 28 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 AC ELECTRICAL CHARACTERISTICS (3.3 V +/–10%) Vdd = 3.3 V +/– 10%; Tamb = –40°C to +85°C ( industrial ) Symbol Fig re Figure Limits Parameter Min Max Unit All Cycles FC System Clock (internally called CClk) Frequency 0 30 MHz tC 13 System Clock Period = 1/FC 33.33 – ns tCHCX 13 XTALIN High Time tC* 0.5 – ns tCLCX 13 XTALIN Low Time tC* 0.4 – ns tCLCH 13 XTALIN Rise Time – 5 ns tCHCL 13 XTALIN Fall Time – 5 ns tAVSL All Address Valid to Strobe low tC – 21 – ns 7 tCHAH All Address hold after CLKOUT rising edge 1 – ns tCHAV All Delay from CLKOUT rising edge to address valid – 30 ns tCHSH All Delay from CLKOUT rising edge to Strobe High 7 1 28 ns tCHSL All Delay from CLKOUT rising edge to Strobe Low 7 1 25 ns tCODH 14 ClkOut Duty Cycle High (into 40 pF max.) tCHCX–7 tCHCX+3 ns tAHDR 10 Address hold (A19 – A1 only, not A0) after CS, BLE, BHE rise at end of Data Read Cycle (not code fetch) tC – 12 – ns tDIS 7, 8, 10, 11 Data In Valid setup to ClkOut rising edge 32 – ns tDIH 7, 8, 10, 11 Data In Valid hold after ClkOut rising edge 2 0 – ns tOHDE 10 tC – 19 – ns Data Read Only Data Read and Instruction Fetch Cycles OE high to XA Data Bus Driver Enable Write Cycles tCHDV 9 Clock High to Data Valid – 30 ns tDVSL 12 Data Valid prior to Strobe Low tC – 23 – ns tSHAH 9, 12 Minimum Address Hold Time after strobe goes inactive tC – 25 – ns tSHDH 9, 12 Data hold after strobes (CS and BHE/BLE) high tC – 25 – ns Wait Input tWS 15 WAIT setup (stable high or low)prior to CLKOUT rising edge 25 – ns tWH 15 WAIT hold (stable high or low) after CLKOUT rising edge 0 – ns NOTE: 1. On a 16-bit bus, if only one byte is being written, then only one of BLE or BHE will go active. On an 8-bit bus, BLE goes active for all (odd or even address) accesses. BHE will not go active during any accesses on an 8-bit bus. 2. The bus timing is designed to make meeting hold time very straightforward without glue logic. On all reads and fetches, in order to meet hold time, the slave should hold data valid on the bus until the earliest of CS, BHE/BLE, OE, goes high (inactive), or until the address changes. 3. To avoid 3-State fights during read cycles and fetch cycles, do not drive data bus until OE goes active 4. WARNING: ClkOut is specified at 40 pF max. More than 40 pf on ClkOut may significantly degrade the ClkOut waveform. Load capacitance for all outputs (except ClkOut) = 80 pF. 5. Not all combinations of bus timing configuration values result in valid bus cycles. Please refer to the XA-H3 User Manual for details. 6. When code is being fetched on the external bus, a burst mode fetch is used. This burst can be from 2 to 16 bytes long. On a 16-bit bus, A3 – A1 are incremented for each new word of the burst. On an 8-bit bus, A3 – A0 are incremented for each new byte of the burst code fetch. 7. The MIN value for this parameter is guaranteed by design and is not tested in production to the specified limit. In those cases where a maximum value is specified in the table for this parameter, it is tested. 1999 Sep 24 29 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 TIMING DIAGRAMS All references to numbered Notes are to the notes following the AC Electrical Characteristics tables ClkOut A0 tCHAV tCHAH A19–A1 tCHSL tAHDR (Does Not Include A0) tAVSL CS tCHSH BHE/BLE Note 3 OE tDIH (Note 2) tDIS D15–D0 Note: On Generic Data Reads, A0 can terminate a full clock period before A19–A1, and therefore should not be used on some peripheral devices. SU01277 Figure 7. Read on 16-Bit Bus ClkOut tCHAV A[19:0] tCHAV Address tCHAV Address + 2 Address + 4 tCHSL tCHSH tAVSL CS BHE/BLE tOHDE Note 3 OE tDIS D[15:0] Note: tDIH Note 2 tDIS tDIH Note 2 tDIS tDIH (Note 2) Driven by XA Driven by XA The processor can prefetch from one to eight words. SU01131 Figure 8. Burst Code Fetch on 16-Bit Bus 1999 Sep 24 30 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 ClkOut tCHSH tCHAV A tCHSL tAVSL CS tSHAH Note 1 BHE/BLE WE tSHDH tCHDV D SU01278 Figure 9. Write ( byte write on 8-bit bus, or all writes on 16-bit bus ) ClkOut A19 – A1 A0 tAHDR tCHAV tCHSL tCHSH CS tAVSL BLE Note 3 OE tOHDE tDIS D7 – D0 Note 2 Driven by XA tDIH tDIS Note 2 Driven by XA On all cycles on 8-bit bus, BHE remains high (inactive) Note: On the external bus, ALL XA-H4 reads are 16-bit reads. If the CPU instruction only specifies 8-bits, then the CPU uses the appropriate byte, and discards the extra byte. Thus, “8-Bit Reads” and “16-Bit Reads” appear to be identical on the bus. On an 8-bit bus, this will appear as two consecutive 8-bit reads even though the CPU will only use one of the two bytes. WARNING: Some 8-bit I/O devices (especially FIFOS) cannot operate correctly with 2 bytes being read for a one byte read. The most common (and least expensive) solution is to operate these 8-bit devices on a 16-bit bus, and access them in software on all odd byte (or all even byte) boundaries. An added benefit of this technique is that byte reads are faster than on an 8-bit bus, because only 1 word is fetched (a single read) instead of 2 consecutive bytes. SU01283 Figure 10. Read (16-Bit or 8-Bit) on 8 Bit Bus 1999 Sep 24 31 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Clkout tCHAV tCHAV Even Address tCHAV Address + 1 tCHAV Address + 2 Address + 3 tCHAV tCHSH Note 3 OE, BLE, CS tDIS tDIH tDIH tDIS Note 2 D[7:0] Note: LS Byte tDIS tDIH Note 2 tDIS Note 2 MS Byte LS Byte tDIH Note 2 MS Byte BHE remains high (inactive) for all accesses on an 8-bit bus. A burst code fetch can be from 1 to 8 words (1 word = 2 bytes), a 2 word fetch is shown here. SU01245 Figure 11. Burst Code Fetch on 8-bit bus Clkout tCHAV tCHSL tCHSH A19 – A1 tSHAH A0 tSHAH tCHSL CS tAVSL tAVSL BLE, WE tSHDH tDVSL D7 – D0 Note. OE is inactive during all writes. SU01246 Figure 12. 16-Bit Write on 8-Bit Bus 1999 Sep 24 32 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 VDD – 0.5 0.7 VDD XTALIN 0.45 V 0.2 VDD – 0.1 tCHCX tCHCL tCLCX tCLCH tC SU01146 Figure 13. External Clock Input Drive tCODH ClkOut WARNING: ClkOut is specified into 40 pF max, do not overload. SU01147 Figure 14. ClkOut Duty Cycle ClkOut tWS tWH WAIT tWS – Setup time of WAIT to rising edge of ClkOut. tWH – Hold time of WAIT after ClkOut High. SU01148 Figure 15. External WAIT Pin Timing 1999 Sep 24 33 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller LQFP100: plastic low profile quad flat package; 100 leads; body 14 x 14 x 1.4 mm 1999 Sep 24 34 XA-H3 SOT407-1 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller NOTES 1999 Sep 24 35 XA-H3 Philips Semiconductors Preliminary specification CMOS 16-bit highly integrated microcontroller XA-H3 Data sheet status Data sheet status Product status Definition [1] Objective specification Development This data sheet contains the design target or goal specifications for product development. Specification may change in any manner without notice. Preliminary specification Qualification This data sheet contains preliminary data, and supplementary data will be published at a later date. Philips Semiconductors reserves the right to make changes at any time without notice in order to improve design and supply the best possible product. Product specification Production This data sheet contains final specifications. Philips Semiconductors reserves the right to make changes at any time without notice in order to improve design and supply the best possible product. [1] Please consult the most recently issued datasheet before initiating or completing a design. Definitions Short-form specification — The data in a short-form specification is extracted from a full data sheet with the same type number and title. For detailed information see the relevant data sheet or data handbook. Limiting values definition — Limiting values given are in accordance with the Absolute Maximum Rating System (IEC 134). Stress above one or more of the limiting values may cause permanent damage to the device. These are stress ratings only and operation of the device at these or at any other conditions above those given in the Characteristics sections of the specification is not implied. Exposure to limiting values for extended periods may affect device reliability. Application information — Applications that are described herein for any of these products are for illustrative purposes only. Philips Semiconductors make no representation or warranty that such applications will be suitable for the specified use without further testing or modification. Disclaimers Life support — These products are not designed for use in life support appliances, devices or systems where malfunction of these products can reasonably be expected to result in personal injury. Philips Semiconductors customers using or selling these products for use in such applications do so at their own risk and agree to fully indemnify Philips Semiconductors for any damages resulting from such application. Right to make changes — Philips Semiconductors reserves the right to make changes, without notice, in the products, including circuits, standard cells, and/or software, described or contained herein in order to improve design and/or performance. Philips Semiconductors assumes no responsibility or liability for the use of any of these products, conveys no license or title under any patent, copyright, or mask work right to these products, and makes no representations or warranties that these products are free from patent, copyright, or mask work right infringement, unless otherwise specified. Copyright Philips Electronics North America Corporation 1999 All rights reserved. Printed in U.S.A. Philips Semiconductors 811 East Arques Avenue P.O. Box 3409 Sunnyvale, California 94088–3409 Telephone 800-234-7381 Date of release: 09-99 Document order number: 1999 Sep 24 36 9397 750 06431