TMS320VC5401 Fixed-Point Digital Signal Processor Data Manual Literature Number: SPRS153B December 2000 – Revised May 2001 PRODUCTION DATA information is current as of publication date. Products conform to specifications per the terms of Texas Instruments standard warranty. Production processing does not necessarily include testing of all parameters. Printed on Recycled Paper IMPORTANT NOTICE Texas Instruments and its subsidiaries (TI) reserve the right to make changes to their products or to discontinue any product or service without notice, and advise customers to obtain the latest version of relevant information to verify, before placing orders, that information being relied on is current and complete. All products are sold subject to the terms and conditions of sale supplied at the time of order acknowledgment, including those pertaining to warranty, patent infringement, and limitation of liability. TI warrants performance of its products to the specifications applicable at the time of sale in accordance with TI’s standard warranty. Testing and other quality control techniques are utilized to the extent TI deems necessary to support this warranty. Specific testing of all parameters of each device is not necessarily performed, except those mandated by government requirements. Customers are responsible for their applications using TI components. In order to minimize risks associated with the customer’s applications, adequate design and operating safeguards must be provided by the customer to minimize inherent or procedural hazards. TI assumes no liability for applications assistance or customer product design. TI does not warrant or represent that any license, either express or implied, is granted under any patent right, copyright, mask work right, or other intellectual property right of TI covering or relating to any combination, machine, or process in which such products or services might be or are used. TI’s publication of information regarding any third party’s products or services does not constitute TI’s approval, license, warranty or endorsement thereof. Reproduction of information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompanied by all associated warranties, conditions, limitations and notices. Representation or reproduction of this information with alteration voids all warranties provided for an associated TI product or service, is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use. Resale of TI’s products or services with statements different from or beyond the parameters stated by TI for that product or service voids all express and any implied warranties for the associated TI product or service, is an unfair and deceptive business practice, and TI is not responsible nor liable for any such use. Also see: Standard Terms and Conditions of Sale for Semiconductor Products. www.ti.com/sc/docs/stdterms.htm Mailing Address: Texas Instruments Post Office Box 655303 Dallas, Texas 75265 Copyright 2001, Texas Instruments Incorporated REVISION HISTORY REVISION DATE PRODUCT STATUS HIGHLIGHTS * December 2000 Product Preview Original A April 2001 Product Preview Replaced memory map (Figure 2–2). B May 2001 Production Data Corrected memory maps and updated characteristic data. iii iv Contents Contents Section Page 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Pin Assignments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 Terminal Assignments for the GGU Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3.2 Pin Assignments for the PGE Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1 2 2 2 4 5 2 Functional Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1 Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1.1 On-Chip ROM With Bootloader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2 On-Chip RAM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Relocatable Interrupt Vector Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3.2 Extended Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4 On-Chip Peripherals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.1 Software-Programmable Wait-State Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4.2 Programmable Bank-Switching . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5 Parallel I/O Ports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5.1 Enhanced 8-Bit Host-Port Interface (HPI8) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6 Multichannel Buffered Serial Ports (McBSPs) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.1 Programmable McBSP Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6.2 Enhanced McBSPs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7 Hardware Timer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8 Clock Generator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9 DMA Controller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.2 DMA Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.3 DMA Priority Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.4 DMA Source/Destination Address Modification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.5 DMA in Autoinitialization Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.6 DMA Transfer Counting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.7 DMA Transfer in Doubleword Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.8 DMA Channel Index Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.9 DMA Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.10 DMA Controller Synchronization Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.9.11 DMA Channel Interrupt Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.10 Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.11 McBSP Control Registers and Subaddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.12 DMA Subbank Addressed Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.13 Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 10 10 11 12 12 13 14 14 16 16 17 18 19 19 20 20 21 22 22 22 22 23 23 23 23 23 24 24 24 27 28 30 3 Documentation Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 December 2000 – Revised May 2001 SPRS153B v Contents Section 4 5 vi Page Electrical Specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1 Absolute Maximum Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Recommended Operating Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Electrical Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Package Thermal Resistance Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Timing Parameter Symbology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Internal Oscillator With External Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7 Clock Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7.1 Divide-By-Two Clock Option (PLL Disabled) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7.2 Multiply-By-N Clock Option (PLL Enabled) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8 Memory and Parallel I/O Interface Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.1 Memory Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.2 Memory Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.3 I/O Read . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.4 I/O Write . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.9 Ready Timing for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.10 HOLD and HOLDA Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.11 Reset, BIO, Interrupt, and MP/MC Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.12 Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Timings . . . . . . . . . . . . . . . . . . 4.13 External Flag (XF) and TOUT Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.14 Multichannel Buffered Serial Port (McBSP) Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.14.1 McBSP Transmit and Receive Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.14.2 McBSP General-Purpose I/O Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.14.3 McBSP Transmit and Receive Timing Using CLKR/X as a Clock Source Input to the Sample Rate Generator (SRGR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.14.4 McBSP as SPI Master or Slave Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.15 Host-Port Interface (HPI8) Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 33 33 34 35 35 36 37 37 38 39 39 41 43 44 45 49 50 52 53 54 54 56 Mechanical Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1 GGU (S-PBGA-N144) Plastic Ball Grid Array Package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2 PGE (S-PQFP-G144) Plastic Quad Flatpack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 67 68 SPRS153B 57 59 63 December 2000 – Revised May 2001 Figures List of Figures Figure Page 1–1 1–2 144-Ball GGU MicroStar BGA (Bottom View) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144-Pin PGE Low-Profile Quad Flatpack (Top View) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 4 2–1 2–2 2–3 2–4 2–5 2–6 2–7 2–8 2–9 2–10 2–11 TMS320VC5401 Functional Block Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Processor Mode Status (PMST) Register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Extended Program Memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Software Wait-State Register (SWWSR) [Memory-Mapped Register (MMR) Address 0028h] . . . . Software Wait-State Control Register (SWCR) [MMR Address 002Bh] . . . . . . . . . . . . . . . . . . . . . . . Bank-Switching Control Register (BSCR), MMR Address 0029h . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HPI8 Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Pin Control Register (PCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DMA Memory Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IFR and IMR Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 12 13 14 14 15 16 17 20 22 31 4–1 4–2 4–3 4–4 4–5 4–6 4–7 4–8 4–9 4–10 4–11 4–12 4–13 4–14 4–15 4–16 4–17 4–18 4–19 4–20 4–21 4–22 4–23 4–24 3.3-V Test Load Circuit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Internal Oscillator With External Crystal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . External Divide-by-Two Clock Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . External Multiply-by-One Clock Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Read (MSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Write (MSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parallel I/O Port Read (IOSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Parallel I/O Port Write (IOSTRB = 0) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Read With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Write With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I/O Read With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I/O Write With Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HOLD and HOLDA Timings (HM = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reset and BIO Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interrupt Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . MP/MC Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IAQ and IACK Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . XF Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . TOUT Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Receive Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Transmit Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP General-Purpose I/O Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Sample Rate Generator Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . . 34 36 37 38 40 42 43 44 45 46 47 48 49 50 51 51 52 53 53 55 55 56 58 59 December 2000 – Revised May 2001 SPRS153B vii Figures Figure Page 4–25 4–26 4–27 4–28 4–29 4–30 4–31 McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0 . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1 . . . . . . . . . . . . . . . . . . . . . . . . . Using HDS to Control Accesses (HCS Always Low) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Using HCS to Control Accesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HINT Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . GPIOx Timings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 61 62 65 66 66 66 5–1 5–2 TMS320VC5401 144-Ball MicroStar BGA Plastic Ball Grid Array Package . . . . . . . . . . . . . . . . . . . . TMS320VC5401 144-Pin Low-Profile Quad Flatpack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 68 viii SPRS153B December 2000 – Revised May 2001 Tables List of Tables Table Page 1–1 1–2 Terminal Assignments for the TMS320VC5401GGU (144-Pin BGA Package) . . . . . . . . . . . . . . . . . Signal Descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 5 2–1 2–2 2–3 2–4 2–5 2–6 2–7 2–8 2–9 2–10 2–11 2–12 2–13 2–14 2–15 Standard On-Chip ROM Layout . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Software Wait-State Register (SWWSR) Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Software Wait-State Control Register (SWCR) Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bank-Switching Control Register (BSCR) Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Sample Rate Generator Clock Source Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Clock Mode Settings at Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DMA Interrupts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DMA Synchronization Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DMA Channel Interrupt Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . CPU Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Peripheral Memory-Mapped Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Control Registers and Subaddresses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . DMA Subbank Addressed Registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interrupt Locations and Priorities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . IFR and IMR Register Bit Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 15 15 16 20 21 24 24 24 25 26 27 28 30 31 4–1 4–2 4–3 4–4 4–5 4–6 4–7 4–8 4–9 4–10 4–11 4–12 4–13 4–14 4–15 4–16 4–17 4–18 4–19 4–20 4–21 4–22 4–23 4–24 4–25 4–26 4–27 Thermal Resistance Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Input Clock Frequency Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Divide-By-2 Clock Option Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Divide-By-2 Clock Option Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Multiply-By-N Clock Option Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Multiply-By-N Clock Option Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Read Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Read Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Memory Write Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I/O Read Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I/O Read Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I/O Write Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ready Timing Requirements for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . . . . Ready Switching Characteristics for Externally Generated Wait States . . . . . . . . . . . . . . . . . . . . . . . HOLD and HOLDA Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HOLD and HOLDA Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Reset, BIO, Interrupt, and MP/MC Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Switching Characteristics . . . . . External Flag (XF) and TOUT Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Transmit and Receive Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Transmit and Receive Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP General-Purpose I/O Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP General-Purpose I/O Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Sample Rate Generator Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP Sample Rate Generator Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 0) . . . . . . . . . . . McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 0) . . . . . . . 35 36 37 37 38 38 39 39 41 43 43 44 45 45 49 49 50 52 53 54 54 56 56 57 57 59 59 December 2000 – Revised May 2001 SPRS153B ix Tables Table 4–28 4–29 4–30 4–31 4–32 4–33 4–34 4–35 x Page McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 0) . . . . . . . . . . . McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 0) . . . . . . . McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 1) . . . . . . . . . . . McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 1) . . . . . . . McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 1) . . . . . . . . . . . McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 1) . . . . . . . HPI8 Timing Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . HPI8 Switching Characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . SPRS153B 60 60 61 61 62 62 63 64 December 2000 – Revised May 2001 Introduction 1 Introduction This section describes the main features of the TMS320VC5401, lists the pin assignments, and describes the function of each pin. This data manual also provides a detailed description section, electrical specifications, parameter measurement information, and mechanical data about the available packaging. NOTE: This data manual is designed to be used in conjunction with the TMS320C54x DSP Functional Overview (literature number SPRU307). 1.1 D D D D D D D D D D D D D Features Advanced Multibus Architecture With Three Separate 16-Bit Data Memory Buses and One Program Memory Bus 40-Bit Arithmetic Logic Unit (ALU), Including a 40-Bit Barrel Shifter and Two Independent 40-Bit Accumulators 17- × 17-Bit Parallel Multiplier Coupled to a 40-Bit Dedicated Adder for Non-Pipelined Single-Cycle Multiply/Accumulate (MAC) Operation Compare, Select, and Store Unit (CSSU) for the Add/Compare Selection of the Viterbi Operator Exponent Encoder to Compute an Exponent Value of a 40-Bit Accumulator Value in a Single Cycle Two Address Generators With Eight Auxiliary Registers and Two Auxiliary Register Arithmetic Units (ARAUs) Data Bus With a Bus-Holder Feature Extended Addressing Mode for 1M × 16-Bit Maximum Addressable External Program Space 4K x 16-Bit On-Chip ROM 8K x 16-Bit Dual-Access On-Chip RAM Single-Instruction-Repeat and Block-Repeat Operations for Program Code Block-Memory-Move Instructions for Efficient Program and Data Management Instructions With a 32-Bit Long Word Operand D D D D D D D D D D D Instructions With Two- or Three-Operand Reads Arithmetic Instructions With Parallel Store and Parallel Load Conditional Store Instructions Fast Return From Interrupt On-Chip Peripherals – Software-Programmable Wait-State Generator and Programmable Bank Switching – On-Chip Phase-Locked Loop (PLL) Clock Generator With Internal Oscillator or External Clock Source – Two Multichannel Buffered Serial Ports (McBSPs) – Enhanced 8-Bit Parallel Host-Port Interface (HPI8) – Two 16-Bit Timers – Six-Channel Direct Memory Access (DMA) Controller Power Consumption Control With IDLE1, IDLE2, and IDLE3 Instructions With Power-Down Modes CLKOUT Off Control to Disable CLKOUT On-Chip Scan-Based Emulation Logic, IEEE Std 1149.1† (JTAG) Boundary Scan Logic 20-ns Single-Cycle Fixed-Point Instruction Execution Time (50 MIPS) for 3.3-V Power Supply (1.8-V Core) 144-Pin Plastic Low-Profile Quad Flatpack (LQFP) (PGE Suffix) 144-Ball MicroStar BGA (GGU Suffix) † IEEE Standard 1149.1-1990 Standard Test-Access Port and Boundary Scan Architecture. TMS320C54x and MicroStar BGA are trademarks of Texas Instruments. December 2000 – Revised May 2001 SPRS153B 1 Introduction 1.2 Description The TMS320VC5401 fixed-point, digital signal processor (DSP) (hereafter referred to as the 5401 unless otherwise specified) is based on an advanced modified Harvard architecture that has one program memory bus and three data memory buses. This processor provides an arithmetic logic unit (ALU) with a high degree of parallelism, application-specific hardware logic, on-chip memory, and additional on-chip peripherals. The basis of the operational flexibility and speed of this DSP is a highly specialized instruction set. Separate program and data spaces allow simultaneous access to program instructions and data, providing the high degree of parallelism. Two read operations and one write operation can be performed in a single cycle. Instructions with parallel store and application-specific instructions can fully utilize this architecture. In addition, data can be transferred between data and program spaces. Such parallelism supports a powerful set of arithmetic, logic, and bit-manipulation operations that can be performed in a single machine cycle. In addition, the 5401 includes the control mechanisms to manage interrupts, repeated operations, and function calls. 1.3 Pin Assignments Figure 1–1 illustrates the ball locations for the 144-pin ball grid array (BGA) package and is used in conjunction with Table 1–1 to locate signal names and ball grid numbers. Figure 1–2 provides the pin assignments for the 144-pin low-profile quad flatpack (LQFP) package. 1.3.1 Terminal Assignments for the GGU Package Table 1–1 lists each signal name and BGA ball number for the 144-pin TMS320VC5401GGU package. Table 1–2 lists each terminal name, terminal function, and operating modes for the TMS320VC5401. 13 12 11 10 9 8 7 6 5 4 3 2 1 A B C D E F G H J K L M N Figure 1–1. 144-Ball GGU MicroStar BGA (Bottom View) 2 SPRS153B December 2000 – Revised May 2001 Introduction Table 1–1. Terminal Assignments for the TMS320VC5401GGU (144-Pin BGA Package)†‡ SIGNAL NAME BGA BALL # SIGNAL NAME BGA BALL # SIGNAL NAME BGA BALL # SIGNAL NAME BGA BALL # NC A1 NC N13 NC N1 A19 A13 NC B1 NC M13 NC N2 NC A12 VSS DVDD C2 L12 HCNTL0 M3 L13 N3 VSS DVDD B11 C1 DVDD VSS A10 D4 CLKMD1 K10 VSS BCLKR0 A11 K4 D6 D10 HD7 D3 CLKMD2 K11 BCLKR1 L4 D7 C10 A11 D2 CLKMD3 K12 BFSR0 M4 D8 B10 A12 D1 NC K13 BFSR1 N4 D9 A10 A13 E4 HD2 J10 BDR0 K5 D10 D9 A14 E3 TOUT0 J11 HCNTL1 L5 D11 C9 A15 E2 EMU0 J12 BDR1 M5 D12 B9 NC E1 EMU1/OFF J13 BCLKX0 N5 HD4 A9 HAS F4 TDO H10 BCLKX1 K6 D13 D8 VSS NC F3 TDI H11 L6 D14 C8 F2 TRST H12 VSS HINT/TOUT1 M6 D15 B8 CVDD F1 TCK H13 CVDD N6 HD5 A8 HCS G2 TMS G12 BFSX0 M7 CVDD B7 HR/W G1 NC G13 BFSX1 N7 NC A7 READY G3 CVDD HPIENA G11 HRDY L7 HDS1 C7 G10 DVDD K7 N8 F12 VSS HD0 VSS HDS2 D7 F13 M8 DVDD B6 PS G4 DS H1 IS H2 VSS CLKOUT A6 R/W H3 HD3 F11 BDX0 L8 A0 C6 MSTRB H4 X1 F10 BDX1 K8 A1 D6 IOSTRB J1 X2/CLKIN E13 IACK N9 A2 A5 MSC J2 RS E12 HBIL M9 A3 B5 XF J3 D0 E11 NMI L9 HD6 C5 HOLDA J4 D1 E10 INT0 K9 A4 D5 IAQ K1 D2 D13 INT1 N10 A5 A4 HOLD K2 D3 D12 INT2 M10 A6 B4 BIO K3 D4 D11 INT3 L10 A7 C4 MP/MC L1 D5 C13 CVDD N11 A8 A3 DVDD L2 A16 C12 HD1 M11 A9 B3 VSS NC L3 VSS A17 C11 VSS NC L11 CVDD C3 N12 NC A2 M1 B13 NC M2 A18 B12 NC M12 NC B2 † DVDD is the power supply for the I/O pins while CVDD is the power supply for the core CPU. VSS is the ground for both the I/O pins and the core CPU. ‡ NC = No internal connection December 2000 – Revised May 2001 SPRS153B 3 Introduction 1.3.2 Pin Assignments for the PGE Package 109 111 110 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 75 35 74 36 73 A18 A17 VSS A16 D5 D4 D3 D2 D1 D0 RS X2/CLKIN X1 HD3 CLKOUT VSS HPIENA CVDD NC TMS TCK TRST TDI TDO EMU1/OFF EMU0 TOUT0 HD2 NC CLKMD3 CLKMD2 CLKMD1 VSS DVDD NC NC NC NC HCNTL0 VSS BCLKR0 BCLKR1 BFSR0 BFSR1 BDR0 HCNTL1 BDR1 BCLKX0 BCLKX1 VSS HINT/TOUT1 CVDD BFSX0 BFSX1 HRDY DV DD V SS HD0 BDX0 BDX1 IACK HBIL NMI INT0 INT1 INT2 INT3 CVDD HD1 VSS NC NC 72 76 34 71 77 33 70 78 32 69 79 31 68 80 30 67 81 29 66 82 28 65 83 27 64 84 26 63 85 25 62 86 24 61 87 23 60 88 22 59 89 21 58 90 20 57 91 19 56 92 18 55 93 17 54 94 16 53 95 15 52 96 14 51 97 13 50 98 12 49 99 11 48 100 10 47 101 9 46 102 8 45 103 7 44 104 6 43 105 5 42 106 4 41 3 40 107 39 108 2 38 1 37 NC NC VSS DVDD A10 HD7 A11 A12 A13 A14 A15 NC HAS VSS NC CVDD HCS HR/W READY PS DS IS R/W MSTRB IOSTRB MSC XF HOLDA IAQ HOLD BIO MP/MC DVDD VSS NC NC 143 144 NC NC CV DD A9 A8 A7 A6 A5 A4 HD6 A3 A2 A1 A0 DVDD HDS2 VSS HDS1 NC CVDD HD5 D15 D14 D13 HD4 D12 D11 D10 D9 D8 D7 D6 DV DD VSS NC A19 The TMS320VC5401PGE 144-pin low-profile quad flatpack (LQFP) is footprint- and pin-compatible with the 5402. Figure 1–2. 144-Pin PGE Low-Profile Quad Flatpack (Top View) 4 SPRS153B December 2000 – Revised May 2001 Introduction 1.4 Signal Descriptions Table 1–2 lists each signal, function, and operating mode(s) grouped by function. See Section 1.3 for exact pin locations based on package type. Table 1–2. Signal Descriptions TERMINAL NAME TYPE† DESCRIPTION DATA SIGNALS A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 D15 D14 D13 D12 D11 D10 D9 D8 D7 D6 D5 D4 D3 D2 D1 D0 (MSB) O/Z Parallel address bus A19 [most significant bit (MSB)] through A0 [least significant bit (LSB)]. The lower sixteen address pins (A0 to A15) are multiplexed to address all external memory (program, data) or I/O, while the upper four address pins (A16 to A19) are only used to address external program space. These pins are placed in the high-impedance state when the hold mode is enabled, or when OFF is low. I/O/Z Parallel data bus D15 (MSB) through D0 (LSB). The sixteen data pins (D0 to D15) are multiplexed to transfer data between the core CPU and external data/program memory or I/O devices. The data bus is placed in the high-impedance state when not outputting or when RS or HOLD is asserted. The data bus also goes into the high-impedance state when OFF is low. (LSB) (MSB) The data bus has bus holders to reduce the static power dissipation caused by floating, unused pins. These bus holders also eliminate the need for external bias resistors on unused pins. When the data bus is not being driven by the 5401, the bus holders keep the pins at the previous logic level. The data bus holders on the 5401 are disabled at reset and can be enabled/disabled via the BH bit of the bank-switching control register (BSCR). (LSB) INITIALIZATION, INTERRUPT, AND RESET OPERATIONS IACK O/Z Interrupt acknowledge signal. IACK Indicates receipt of an interrupt and that the program counter is fetching the interrupt vector location designated by A15–A0. IACK also goes into the high-impedance state when OFF is low. INT0 INT1 INT2 INT3 I External user interrupts. INT0–INT3 are prioritized and are maskable by the interrupt mask register (IMR) and the interrupt mode bit. INT0 –INT3 can be polled and reset by way of the interrupt flag register (IFR). NMI I Nonmaskable interrupt. NMI is an external interrupt that cannot be masked by way of the INTM or the IMR. When NMI is activated, the processor traps to the appropriate vector location. † I = input, O = output, Z = high impedance, S = supply ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVDD), rather than the 3V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. December 2000 – Revised May 2001 SPRS153B 5 Introduction Table 1–2. Signal Descriptions (Continued) TERMINAL NAME TYPE† DESCRIPTION INITIALIZATION, INTERRUPT, AND RESET OPERATIONS (CONTINUED) RS MP/MC I Reset. RS causes the digital signal processor (DSP) to terminate execution and causes a reinitialization of the CPU and peripherals. When RS is brought to a high level, execution begins at location 0FF80h of program memory. RS affects various registers and status bits. I Microprocessor/microcomputer mode select. If active low at reset, microcomputer mode is selected, and the internal program ROM is mapped into the upper 4K words of program memory space. If the pin is driven high during reset, microprocessor mode is selected, and the on-chip ROM is removed from program space. This pin is only sampled at reset, and the MP/MC bit of the processor mode status (PMST) register can override the mode that is selected at reset. MULTIPROCESSING SIGNALS BIO XF I Branch control. A branch can be conditionally executed when BIO is active. If low, the processor executes the conditional instruction. For the XC instruction, the BIO condition is sampled during the decode phase of the pipeline; all other instructions sample BIO during the read phase of the pipeline. O/Z External flag output (latched software-programmable signal). XF is set high by the SSBX XF instruction, set low by the RSBX XF instruction or by loading ST1. XF is used for signaling other processors in multiprocessor configurations or used as a general-purpose output pin. XF goes into the high-impedance state when OFF is low, and is set high at reset. MEMORY CONTROL SIGNALS DS PS IS O/Z Data, program, and I/O space select signals. DS, PS, and IS are always high unless driven low for accessing a particular external memory space. Active period corresponds to valid address information. DS, PS, and IS are placed into the high-impedance state in the hold mode; the signals also go into the high-impedance state when OFF is low. MSTRB O/Z Memory strobe signal. MSTRB is always high unless low-level asserted to indicate an external bus access to data or program memory. MSTRB is placed in the high-impedance state in the hold mode; it also goes into the high-impedance state when OFF is low. READY I Data ready. READY indicates that an external device is prepared for a bus transaction to be completed. If the device is not ready (READY is low), the processor waits one cycle and checks READY again. Note that the processor performs ready detection if at least two software wait states are programmed. The READY signal is not sampled until the completion of the software wait states. R/W O/Z Read/write signal. R/W indicates transfer direction during communication to an external device. R/W is normally in the read mode (high), unless it is asserted low when the DSP performs a write operation. R/W is placed in the high-impedance state in hold mode; it also goes into the high-impedance state when OFF is low. IOSTRB O/Z I/O strobe signal. IOSTRB is always high unless low-level asserted to indicate an external bus access to an I/O device. IOSTRB is placed in the high-impedance state in the hold mode; it also goes into the high-impedance state when OFF is low. I Hold. HOLD is asserted to request control of the address, data, and control lines. When acknowledged by the C54x DSP, these lines go into the high-impedance state. O/Z Hold acknowledge. HOLDA indicates that the 5401 is in a hold state and that the address, data, and control lines are in the high-impedance state, allowing the external memory interface to be accessed by other devices. HOLDA also goes into the high-impedance state when OFF is low. MSC O/Z Microstate complete. MSC indicates completion of all software wait states. When two or more software wait states are enabled, the MSC pin goes active at the beginning of the first software wait state and goes inactive high at the beginning of the last software wait state. If connected to the READY input, MSC forces one external wait state after the last internal wait state is completed. MSC also goes into the high-impedance state when OFF is low. IAQ O/Z Instruction acquisition signal. IAQ is asserted (active low) when there is an instruction address on the address bus. IAQ goes into the high-impedance state when OFF is low. HOLD HOLDA † I = input, O = output, Z = high impedance, S = supply ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVDD), rather than the 3V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. C54x is a trademark of Texas Instruments. 6 SPRS153B December 2000 – Revised May 2001 Introduction Table 1–2. Signal Descriptions (Continued) TERMINAL NAME TYPE† DESCRIPTION CLKOUT O/Z Master clock output signal. CLKOUT cycles at the machine-cycle rate of the CPU. The internal machine cycle is bounded by rising edges of this signal. CLKOUT also goes into the high-impedance state when OFF is low. CLKMD1 CLKMD2 CLKMD3 I Clock mode select signals. These inputs select the mode that the clock generator is initialized to after reset. The logic levels of CLKMD1–CLKMD3 are latched when the reset pin is low, and the clock mode register is initialized to the selected mode. After reset, the clock mode can be changed through software, but the clock mode select signals have no effect until the device is reset again. X2/CLKIN I X1 O OSCILLATOR/TIMER SIGNALS Oscillator input. This is the input to the on-chip oscillator. If the internal oscillator is not used, X2/CLKIN functions as the clock input, and can be driven by an external clock source.‡ Output pin from the internal oscillator for the crystal. If the internal oscillator is not used, X1 should be left unconnected. X1 does not go into the high-impedance state when OFF is low.‡ TOUT0 O/Z Timer0 output. TOUT0 signals a pulse when the on-chip timer 0 counts down past zero. The pulse is a CLKOUT cycle wide. TOUT0 also goes into the high-impedance state when OFF is low. TOUT1 O/Z Timer1 output. TOUT1 signals a pulse when the on-chip timer1 counts down past zero. The pulse is one CLKOUT cycle wide. The TOUT1 output is multiplexed with the HINT pin of the HPI and is only available when the HPI is disabled. TOUT1 also goes into the high-impedance state when OFF is low. I/O/Z Receive clock input. BCLKR can be configured as an input or an output; it is configured as an input following reset. BCLKR serves as the serial shift clock for the buffered serial port receiver. MULTICHANNEL BUFFERED SERIAL PORT SIGNALS BCLKR0 BCLKR1 BDR0 BDR1 I BFSR0 BFSR1 I/O/Z Frame synchronization pulse for receive input. BFSR can be configured as an input or an output; it is configured as an input following reset. The BFSR pulse initiates the receive data process over BDR. BCLKX0 BCLKX1 I/O/Z Transmit clock. BCLKX serves as the serial shift clock for the McBSP transmitter. BCLKX can be configured as an input or an output; it is configured as an input following reset. BCLKX enters the high-impedance state when OFF goes low. BDX0 BDX1 O/Z Serial data transmit output. BDX is placed in the high-impedance state when not transmitting, when RS is asserted, or when OFF is low. BFSX0 BFSX1 I/O/Z Frame synchronization pulse for transmit input/output. The BFSX pulse initiates the transmit data process. BFSX can be configured as an input or an output; it is configured as an input following reset. BFSX goes into the high-impedance state when OFF is low. Serial data receive input MISCELLANEOUS SIGNAL NC No connection HD0–HD7 I/O/Z Parallel bidirectional data bus. The HPI data bus is used by a host device bus to exchange information with the HPI registers. These pins can also be used as general-purpose I/O pins. HD0–HD7 is placed in the high-impedance state when not outputting data or when OFF is low. The HPI data bus includes bus holders to reduce the static power dissipation caused by floating, unused pins. When the HPI data bus is not being driven by the 5401, the bus holders keep the pins at the previous logic level. The HPI data bus holders are disabled at reset and can be enabled/disabled via the HBH bit of the BSCR. I Control. HCNTL0 and HCNTL1 select a host access to one of the three HPI registers. The control inputs have internal pullup resistors that are only enabled when HPIENA = 0. HOST-PORT INTERFACE SIGNALS HCNTL0 HCNTL1 † I = input, O = output, Z = high impedance, S = supply ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVDD), rather than the 3V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. December 2000 – Revised May 2001 SPRS153B 7 Introduction Table 1–2. Signal Descriptions (Continued) TERMINAL NAME TYPE† DESCRIPTION HBIL I Byte identification. HBIL identifies the first or second byte of transfer. The HBIL input has an internal pullup resistor that is only enabled when HPIENA = 0. HCS I Chip select. HCS is the select input for the HPI and must be driven low during accesses. The chip-select input has an internal pullup resistor that is only enabled when HPIENA = 0. HDS1 HDS2 I Data strobe. HDS1 and HDS2 are driven by the host read and write strobes to control transfers. The strobe inputs have internal pullup resistors that are only enabled when HPIENA = 0. HAS I Address strobe. Hosts with multiplexed address and data pins require HAS to latch the address in the HPIA register. HAS has an internal pullup resistor that is only enabled when HPIENA = 0. HR/W I Read/write. HR/W controls the direction of an HPI transfer. R/W has an internal pullup resistor that is only enabled when HPIENA = 0. HRDY O/Z Ready. The ready output informs the host when the HPI is ready for the next transfer. HRDY goes into the high-impedance state when OFF is low. HINT O/Z Host interrupt. This output is used to interrupt the host. When the DSP is in reset, HINT is driven high. HINT can also be configured as the timer 1 output (TOUT1), when the HPI is disabled. The signal goes into the high-impedance state when OFF is low. HPIENA I HPI module select. HPIENA must be driven high during reset to enable the HPI. An internal pulldown resistor is always active and the HPIENA pin is sampled on the rising edge of RS. If HPIENA is left open or is driven low during reset, the HPI module is disabled. Once the HPI is disabled, the HPIENA pin has no effect until the 5401 is reset. CVDD S DVDD S +VDD. Dedicated 1.8-V power supply for the core CPU +VDD. Dedicated 3.3-V power supply for the I/O pins VSS S Ground TCK I IEEE standard 1149.1 test clock. TCK is normally a free-running clock signal with a 50% duty cycle. The changes on the test access port (TAP) of input signals TMS and TDI are clocked into the TAP controller, instruction register, or selected test data register on the rising edge of TCK. Changes at the TAP output signal (TDO) occur on the falling edge of TCK. TDI I IEEE standard 1149.1 test data input pin with internal pullup device. TDI is clocked into the selected register (instruction or data) on a rising edge of TCK. TDO O/Z IEEE standard 1149.1 test data output. The contents of the selected register (instruction or data) are shifted out of TDO on the falling edge of TCK. TDO is in the high-impedance state except when the scanning of data is in progress. TDO also goes into the high-impedance state when OFF is low. TMS I IEEE standard 1149.1 test mode select. Pin with internal pullup device. This serial control input is clocked into the TAP controller on the rising edge of TCK. TRST I IEEE standard 1149.1 test reset. TRST, when high, gives the IEEE standard 1149.1 scan system control of the operations of the device. If TRST is not connected or is driven low, the device operates in its functional mode, and the IEEE standard 1149.1 signals are ignored. Pin with internal pulldown device. HOST-PORT INTERFACE SIGNALS (CONTINUED) SUPPLY PNS TEST PINS † I = input, O = output, Z = high impedance, S = supply ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVDD), rather than the 3V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. 8 SPRS153B December 2000 – Revised May 2001 Introduction Table 1–2. Signal Descriptions (Continued) TERMINAL NAME TYPE† DESCRIPTION I/O/Z Emulator 0 pin. When TRST is driven low, EMU0 must be high for activation of the OFF condition. When TRST is driven high, EMU0 is used as an interrupt to or from the emulator system and is defined as input/output by way of the IEEE standard 1149.1 scan system. I/O/Z Emulator 1 pin/disable all outputs. When TRST is driven high, EMU1/OFF is used as an interrupt to or from the emulator system and is defined as input/output by way of the IEEE standard 1149.1 scan system. When TRST is driven low, EMU1/OFF is configured as OFF. The EMU1/OFF signal, when active low, puts all output drivers into the high-impedance state. Note that OFF is used exclusively for testing and emulation purposes (not for multiprocessing applications). The OFF feature is selected by the following pin combinations: TRST = low EMU0 = high EMU1/OFF = low TEST PINS (CONTINUED) EMU0 EMU1/OFF † I = input, O = output, Z = high impedance, S = supply ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVDD), rather than the 3V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. December 2000 – Revised May 2001 SPRS153B 9 Functional Overview 2 Functional Overview The following functional overview is based on the block diagram in Figure 2–1. 8K RAM Dual Access Program/Data 54X cLEAD Pbus Dbus Ebus Cbus Pbus Ebus Cbus Pbus Dbus P, C, D, E Buses and Control Signals 4K Program ROM MBus GPIO TI BUS RHEA Bus McBSP1 Enhanced XIO HPI McBSP2 MBus RHEA bus XIO RHEA Bridge TIMER HPI DMA logic RHEAbus TIMER APLL Clocks JTAG Figure 2–1. TMS320VC5401 Functional Block Diagram 2.1 Memory The 5401 device provides both on-chip ROM and RAM memories to aid in system performance and integration. 2.1.1 On-Chip ROM With Bootloader The 5401 features a 4K-word × 16-bit on-chip maskable ROM. Customers can arrange to have the ROM of the 5401 programmed with contents unique to any particular application. A security option is available to protect a custom ROM. This security option is described in the TMS320C54x DSP Reference Set, Volume 1: CPU and Peripherals (literature number SPRU131). Note that only the ROM security option, and not the ROM/RAM option, is available on the 5401. A bootloader is available in the standard 5401 on-chip ROM. This bootloader can be used to automatically transfer user code from an external source to anywhere in the program memory at power up. If the MP/MC pin is sampled low during a hardware reset, execution begins at location FF80h of the on-chip ROM. This location contains a branch instruction to the start of the bootloader program. The standard 5401 bootloader provides different ways to download the code to accommodate various system requirements: • • • • Parallel from 8-bit or 16-bit-wide EPROM Parallel from I/O space 8-bit or 16-bit mode Serial boot from serial ports 8-bit or 16-bit mode Host-port interface boot The standard on-chip ROM layout is shown in Table 2–1. 10 SPRS153B December 2000 – Revised May 2001 Functional Overview Table 2–1. Standard On-Chip ROM Layout† ADDRESS RANGE DESCRIPTION F000h – F7FFh Reserved F800h – FBFFh Bootloader FC00h – FCFFh µ-law expansion table FD00h – FDFFh A-law expansion table FE00h – FEFFh Sine look-up table FF00h – FF7Fh Reserved FF80h – FFFFh Interrupt vector table † In the 5401 ROM, 128 words are reserved for factory device-testing purposes. Application code to be implemented in on-chip ROM must reserve these 128 words at addresses FF00h–FF7Fh in program space. 2.2 On-Chip RAM The 5401 device contains 8K × 16-bit of on-chip dual-access RAM (DARAM). The DARAM is composed of two blocks of 4K words each. Each DARAM block can support two reads in one cycle, or a read and a write in one cycle. This allows code to be executed out of one block while two data values are read out of the other block without incurring a cycle penalty. The first DARAM block occupies two address ranges: 0060h–007Fh and 1000h–1FFFh in data space. The second DARAM block occupies 2000h–2FFFh in data space. In program space, each block occupies the same address ranges with the exception of 0060h–007Fh, which are not available. December 2000 – Revised May 2001 SPRS153B 11 Functional Overview 2.3 Memory Map Hex Page 0 Program 0000 Hex Page 0 Program 0000 Hex 0000 Data Memory Mapped Registers Reserved (OVLY = 1) External (OVLY = 0) 0FFF 1000 On-Chip DARAM (OVLY = 1) External (OVLY = 0) 1FFF 2000 On-Chip DARAM (OVLY = 1) External (OVLY = 0) 2FFF 3000 Reserved (OVLY = 1) External (OVLY = 0) 3FFF 4000 Reserved (OVLY = 1) External (OVLY = 0) 0FFF 1000 On-Chip DARAM (OVLY = 1) External (OVLY = 0) 1FFF 2000 On-Chip DARAM (OVLY = 1) External (OVLY = 0) 2FFF 3000 Reserved (OVLY = 1) External (OVLY = 0) 3FFF 4000 005F 0060 007F 0080 0FFF 1000 EFFF F000 On-Chip ROM (4K x 16-bit) FEFF FF00 FF7F FF80 Interrupts (External) FFFF MP/MC= 1 (Microprocessor Mode) Reserved 1FFF 2000 On-Chip DARAM (4K x 16-bit) 2FFF 3000 Reserved 3FFF 4000 External EFFF F000 ROM (DROM=1) or External (DROM=0) FEFF FF00 FF7F FF80 Reserved (DROM=1) or External (DROM=0) Interrupts (On-Chip) FFFF Reserved On-Chip DARAM (4K x 16-bit) External External Scratch-Pad RAM† FFFF MP/MC= 0 (Microcomputer Mode) † The scratch-pad RAM area is physically a part of the DARAM block starting at address 1000h. Physical location can affect multiple access performance. (See Section 2.2) Figure 2–2. Memory Map 2.3.1 Relocatable Interrupt Vector Table The reset, interrupt, and trap vectors are addressed in program space. These vectors are soft — meaning that the processor, when taking the trap, loads the program counter (PC) with the trap address and executes the code at the vector location. Four words are reserved at each vector location to accommodate a delayed branch instruction, either two 1-word instructions or one 2-word instruction, which allows branching to the appropriate interrupt service routine with minimal overhead. At device reset, the reset, interrupt, and trap vectors are mapped to address FF80h in program space. However, these vectors can be remapped to the beginning of any 128-word page in program space after device reset. This is done by loading the interrupt vector pointer (IPTR) bits in the PMST register (see Figure 2–3) with the appropriate 128-word page boundary address. After loading IPTR, any user interrupt or trap vector is mapped to the new 128-word page. 12 SPRS153B December 2000 – Revised May 2001 Functional Overview NOTE: The hardware reset (RS) vector cannot be remapped because a hardware reset loads the IPTR with 1s. Therefore, the reset vector is always fetched at location FF80h in program space. 15 7 6 5 4 3 IPTR MP/MC OVLY AVIS DROM R/W R/W R/W R R 2 CLK OFF R 1 0 SMUL SST R/W R/W LEGEND: R = Read, W = Write Figure 2–3. Processor Mode Status (PMST) Register 2.3.2 Extended Program Memory The 5401 uses a paged extended memory scheme in program space to allow access of up to 1024K program memory locations. In order to implement this scheme, the 5401 includes several features that are also present on the 548/549 devices: • • • • Twenty address lines, instead of sixteen An extra memory-mapped register, the XPC register, defines the page selection. This register is memory-mapped into data space to address 001Eh. At a hardware reset, the XPC is initialized to 0. Six extra instructions for addressing extended program space. These six instructions affect the XPC. – FB[D] pmad (20 bits) – Far branch – FBACC[D] Accu[19:0] – Far branch to the location specified by the value in accumulator A or accumulator B – FCALL[D] pmad (20 bits) – Far call – FCALA[D] Accu[19:0] – Far call to the location specified by the value in accumulator A or accumulator B – FRET[D] – Far return – FRETE[D] – Far return with interrupts enabled In addition to these new instructions, two 54x instructions are extended to use 20 bits in the 5401: – READA data_memory (using 20-bit accumulator address) – WRITA data_memory (using 20-bit accumulator address) All other instructions, software interrupts and hardware interrupts do not modify the XPC register and access only memory within the current page. Program memory in the 5401 is organized into 16 pages that are each 64K in length, as shown in Figure 2–4. December 2000 – Revised May 2001 SPRS153B 13 Functional Overview 0 0000 1 0000 1 3FFF 2 0000 Page 1 Lower 16K} External 2 3FFF ... 2 4000 1 4000 F 0000 ... Page 2 Lower 16K} External F 3FFF Page 15 Lower 16K} External F 4000 ... Page 0 Page 1 Upper 48K External 64K Words{ Page 2 Upper 48K External 2 FFFF 1 FFFF 0 FFFF Page 15 Upper 48K External F FFFF ... † See Figure 2–2 ‡ The lower 16K words of pages 1 through 15 are available only when the OVLY bit is cleared to 0. If the OVLY bit is set to 1, the on-chip RAM and reserved addresses are mapped to the lower 16K words of all program space pages. Figure 2–4. Extended Program Memory 2.4 On-Chip Peripherals The 5401 device has the following peripherals: • • • • • • Software-programmable wait-state generator with programmable bank-switching wait states An enhanced 8-bit host-port interface (HPI8) Two multichannel buffered serial ports (McBSPs) Two hardware timers A clock generator with a phase-locked loop (PLL) A direct memory access (DMA) controller 2.4.1 Software-Programmable Wait-State Generator The software wait-state generator of the 5401 can extend external bus cycles by up to fourteen machine cycles. Devices that require more than fourteen wait states can be interfaced using the hardware READY line. When all external accesses are configured for zero wait states, the internal clocks to the wait-state generator are automatically disabled. Disabling the wait-state generator clocks reduces the power consumption of the 5401. The software wait-state register (SWWSR) controls the operation of the wait-state generator. The 14 LSBs of the SWWSR specify the number of wait states (0 to 7) to be inserted for external memory accesses to five separate address ranges. This allows a different number of wait states for each of the five address ranges. Additionally, the software wait-state multiplier (SWSM) bit of the software wait-state control register (SWCR) defines a multiplication factor of 1 or 2 for the number of wait states. At reset, the wait-state generator is initialized to provide seven wait states on all external memory accesses. The SWWSR bit fields are shown in Figure 2–5 and described in Table 2–2. 15 XPA R/W-0 14 12 11 I/O R/W-111 9 8 Data R/W-111 6 Data R/W-111 5 3 Program R/W-111 2 0 Program R/W-111 LEGEND: R=Read, W=Write, 0=Value after reset Figure 2–5. Software Wait-State Register (SWWSR) [Memory-Mapped Register (MMR) Address 0028h] 14 SPRS153B December 2000 – Revised May 2001 Functional Overview Table 2–2. Software Wait-State Register (SWWSR) Bit Fields BIT NO. NAME RESET VALUE 15 XPA 0 Extended program address control bit. XPA is used in conjunction with the program space fields (bits 0 through 5) to select the address range for program space wait states. 14–12 I/O 1 I/O space. The field value (0–7) corresponds to the base number of wait states for I/O space accesses within addresses 0000–FFFFh. The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait states. 11–9 Data 1 Upper data space. The field value (0–7) corresponds to the base number of wait states for external data space accesses within addresses 8000–FFFFh. The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait states. 8–6 Data 1 Lower data space. The field value (0–7) corresponds to the base number of wait states for external data space accesses within addresses 0000–7FFFh. The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait states. FUNCTION Upper program space. The field value (0–7) corresponds to the base number of wait states for external program space accesses within the following addresses: 5–3 Program 1 - XPA = 0: x8000 – xFFFFh XPA = 1: The upper program space bit field has no effect on wait states. The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait states. Program space. The field value (0–7) corresponds to the base number of wait states for external program space accesses within the following addresses: 2–0 Program 1 - XPA = 0: x0000–x7FFFh XPA = 1: 00000–FFFFFh The SWSM bit of the SWCR defines a multiplication factor of 1 or 2 for the base number of wait states. The software wait-state multiplier bit of the software wait-state control register (SWCR) is used to extend the base number of wait states selected by the SWWSR. The SWCR bit fields are shown in Figure 2–6 and described in Table 2–3. 15 1 0 SWSM Reserved R/W-0 R/W-0 LEGEND: R = Read, W = Write Figure 2–6. Software Wait-State Control Register (SWCR) [MMR Address 002Bh] Table 2–3. Software Wait-State Control Register (SWCR) Bit Fields PIN NO. NAME RESET VALUE 15–1 Reserved 0 FUNCTION These bits are reserved and are unaffected by writes. Software wait-state multiplier. Used to multiply the number of wait states defined in the SWWSR by a factor of 1 or 2. 0 SWSM 0 December 2000 – Revised May 2001 - SWSM = 0: wait-state base values are unchanged (multiplied by 1). SWSM = 1: wait-state base values are multiplied by 2 for a maximum of 14 wait states. SPRS153B 15 Functional Overview 2.4.2 Programmable Bank-Switching The programmable bank-switching logic of the 5401 is functionally equivalent to that of the 548/549 devices. This feature automatically inserts one cycle when accesses cross memory-bank boundaries within program or data memory space. A bank-switching wait state can also be automatically inserted when accesses cross the data space boundary into program space. The bank-switching control register (BSCR) defines the bank size for bank-switching wait states. Figure 2–7 shows the BSCR and its bits are described in Table 2–4. 15 12 11 BNKCMP PS-DS R/W-1111 R/W-1 10 3 Reserved R-0 2 1 0 HBH BH EXIO R/W-0 R/W-0 R/W-0 LEGEND: R = Read, W = Write Figure 2–7. Bank-Switching Control Register (BSCR), MMR Address 0029h Table 2–4. Bank-Switching Control Register (BSCR) Fields BIT NAME NO. 15–12 11 10–3 2 1 0 2.5 BNKCMP RESET VALUE FUNCTION 1111 Bank compare. Determines the external memory-bank size. BNKCMP is used to mask the four MSBs of an address. For example, if BNKCMP = 1111b, the four MSBs (bits 12–15) are compared, resulting in a bank size of 4K words. Bank sizes of 4K words to 64K words are allowed. PS - DS 1 Program read – data read access. Inserts an extra cycle between consecutive accesses of program read and data read or data read and program read. PS-DS = 0 No extra cycles are inserted by this feature. PS-DS = 1 One extra cycle is inserted between consecutive data and program reads. Reserved 0 These bits are reserved and are unaffected by writes. 0 HPI Bus holder. Controls the HPI bus holder feature. HBH is cleared to 0 at reset. HBH = 0 The bus holder is disabled. HBH = 1 The bus holder is enabled. When not driven, the HPI data bus (HD[7:0]) is held in the previous logic level. 0 Bus holder. Controls the data bus holder feature. BH is cleared to 0 at reset. BH = 0 The bus holder is disabled. BH = 1 The bus holder is enabled. When not driven, the data bus (D[15:0]) is held in the previous logic level. 0 External bus interface off. The EXIO bit controls the external bus-off function. EXIO = 0 The external bus interface functions as usual. usual EXIO = 1 The address bus, data bus, and control signals become inactive after completing the c rrent bus current b s cycle. c cle Note that the DROM, DROM MP/MC, MP/MC and OVLY bits in the PMST and the HM bit of ST1 cannot be modified when the interface is disabled. HBH BH EXIO Parallel I/O Ports The 5401 has a total of 64K I/O ports. These ports can be addressed by the PORTR instruction or the PORTW instruction. The IS signal indicates a read/write operation through an I/O port. The 5401 can interface easily with external devices through the I/O ports while requiring minimal off-chip address-decoding circuits. 16 SPRS153B December 2000 – Revised May 2001 Functional Overview 2.5.1 Enhanced 8-Bit Host-Port Interface (HPI8) The 5401 host-port interface, also referred to as the HPI8, is an enhanced version of the standard 8-bit HPI found on earlier 54x DSPs (542, 545, 548, and 549). The HPI8 is an 8-bit parallel port for interprocessor communication. The features of the HPI8 include: Standard features: • • • Sequential transfers (with autoincrement) or random-access transfers Host interrupt and 54x interrupt capability Multiple data strobes and control pins for interface flexibility Enhanced features of the 5401 HPI8: • • Access to entire on-chip RAM through DMA bus Capability to continue transferring during emulation stop The HPI8 functions as a slave and enables the host processor to access the on-chip memory of the 5401. A major enhancement to the 5401 HPI over previous versions is that it allows host access to the entire on-chip memory range of the DSP. The HPI8 memory map (see Figure 2–8) is identical to that of the DMA controller shown in Figure 2–10. The host and the DSP both have access to the on-chip RAM at all times and host accesses are always synchronized to the DSP clock. If the host and the DSP contend for access to the same location, the host has priority, and the DSP waits for one HPI8 cycle. Note that since host accesses are always synchronized to the 5401 clock, an active input clock (CLKIN) is required for HPI8 accesses during IDLE states, and host accesses are not allowed while the 5401 reset pin is asserted. The HPI8 interface consists of an 8-bit bidirectional data bus and various control signals. Sixteen-bit transfers are accomplished in two parts with the HBIL input designating high or low byte. The host communicates with the HPI8 through three dedicated registers — HPI address register (HPIA), HPI data register (HPID), and an HPI control register (HPIC). The HPIA and HPID registers are only accessible by the host, and the HPIC register is accessible by both the host and the 5401. Hex 0000 001F 0020 0023 0024 005F 0060 007F 0080 0FFF 1000 1FFF 2000 Reserved McBSP Registers Reserved Scratch-Pad RAM† Reserved On-Chip DARAM (4K x 16-bit) On-Chip DARAM (4K x 16-bit) 2FFF 3000 Reserved FFFF † The scratch-pad RAM area is physically a part of the DARAM block starting at address 1000h. Physical location can affect multiple access performance. (See Section 2.2) Figure 2–8. HPI8 Memory Map December 2000 – Revised May 2001 SPRS153B 17 Functional Overview 2.6 Multichannel Buffered Serial Ports (McBSPs) The 5401 device includes two high-speed, full-duplex multichannel buffered serial ports (McBSPs) that allow direct interface to other C54x/LC54x devices, codecs, and other devices in a system. The McBSPs are based on the standard serial port interface found on other 54x devices. Like its predecessors, the McBSP provides: • • • Full-duplex communication Double-buffered data registers, which allow a continuous data stream Independent framing and clocking for receive and transmit In addition, the McBSP has the following capabilities: • • • • • • Direct interface to: – T1/E1 framers – MVIP switching compatible and ST-BUS compliant devices – IOM-2 compliant devices – Serial peripheral interface devices Multichannel transmit and receive of up to 128 channels A wide selection of data sizes including 8, 12, 16, 20, 24, or 32 bits µ-law and A-law companding Programmable polarity for both frame synchronization and data clocks Programmable internal clock and frame generation The McBSPs consist of separate transmit and receive channels that operate independently. The external interface of each McBSP consists of the following pins: • • • • • • BCLKX BDX BFSX BCLKR BDR BFSR Transmit reference clock Transmit data Transmit frame synchronization Receive reference clock Receive data Receive frame synchronization t The six pins listed are functionally equivalent to previous serial port interface pins in the TMS320C5000 platform of DSPs. On the transmitter, transmit frame synchronization and clocking are indicated by the BFSX and BCLKX pins, respectively. The CPU or DMA can initiate transmission of data by writing to the data transmit register (DXR). Data written to DXR is shifted out on the BDX pin through a transmit shift register (XSR). This structure allows DXR to be loaded with the next word to be sent while the transmission of the current word is in progress. On the receiver, receive frame synchronization and clocking are indicated by the BFSR and BCLKR pins, respectively. The CPU or DMA can read received data from the data receive register (DRR). Data received on the BDR pin is shifted into a receive shift register (RSR) and then buffered in the receive buffer register (RBR). If the DRR is empty, the RBR contents are copied into the DRR. If not, the RBR holds the data until the DRR is available. This structure allows storage of the two previous words while the reception of the current word is in progress. The CPU and DMA can move data to and from the McBSPs and can synchronize transfers based on McBSP interrupts, event signals, and status flags. The DMA is capable of handling data movement between the McBSPs and memory with no intervention from the CPU. TMS320C5000 is a trademark of Texas Instruments. 18 SPRS153B December 2000 – Revised May 2001 Functional Overview 2.6.1 Programmable McBSP Functions In addition to the standard serial port functions, the McBSP provides programmable clock and frame synchronization signals. The programmable functions include: • • • • • • Frame synchronization pulse width Frame period Frame synchronization delay Clock reference (internal vs. external) Clock division Clock and frame synchronization polarity The on-chip companding hardware allows compression and expansion of data in either µ-law or A-law format. When companding is used, transmit data is encoded according to specified companding law and received data is decoded to 2s complement format. The McBSP allows the multiple channels to be independently selected for the transmitter and receiver. When multiple channels are selected, each frame represents a time-division multiplexed (TDM) data stream. In using TDM data streams, the CPU may only need to process a few of them. Thus, to save memory and bus bandwidth, multichannel selection allows independent enabling of particular channels for transmission and reception. Up to 32 channels in a stream of up to 128 channels can be enabled. The clock-stop mode (CLKSTP) in the McBSP provides compatibility with the serial peripheral interface (SPI) protocol. The word sizes supported by the McBSP are programmable for 8-, 12-, 16-, 20-, 24-, or 32-bit operation. When the McBSP is configured to operate in SPI mode, both the transmitter and the receiver operate together as a master or as a slave. The McBSP is fully static and operates at arbitrarily low clock frequencies. The maximum frequency is CPU clock frequency divided by 2. 2.6.2 Enhanced McBSPs The 5401 McBSPs have been enhanced to provide more flexibility in the choice of the sample rate generator input clock source. On previous C5000 DSP platform devices, the McBSP sample rate input clock can be driven from one of two possible choices: the internal CPU clock , or the external CLKS pin. However, most C5000 DSP devices have only the internal CPU clock as a possible source because the CLKS pin is not implemented on most device packages. To accommodate applications that require an external reference clock for the sample rate generator, the 5401 McBSPs allow either the receive clock pin (BCLKR) or the transmit clock pin (BCLKX) to be configured as the input clock to the sample rate generator. This enhancement is enabled through two register bits: pin control register (PCR) bit 7 – enhanced sample clock mode (SCLKME), and sample rate generator register 2 (SRGR2) bit 13 – McBSP sample rate generator clock mode (CLKSM). SCLKME is an addition to the PCR contained in the McBSPs on previous C5000 DSP devices. The new bit layout of the PCR is shown in Figure 2–9. For a description of the remaining bits, see TMS320C54x DSP Reference Set, Volume 5: Enhanced Peripherals (literature number SPRU302). C5000 is a trademark of Texas Instruments. December 2000 – Revised May 2001 SPRS153B 19 Functional Overview 15 14 13 12 11 10 9 8 Reserved XIOEN RIOEN FSXM FSRM CLKXM CLKRM R,+0 RW,+0 RW,+0 RW,+0 RW,+0 RW,+0 RW,+0 7 6 5 4 3 2 1 0 SCLKME CLKS_STAT DX_STAT DR_STAT FSXP FSRP CLKXP CLKRP RW,+0 R,+0 R,+0 R,+0 RW,+0 RW,+0 RW,+0 RW,+0 Note: R = Read, W = Write, +0 = Value at reset Figure 2–9. Pin Control Register (PCR) The selection of the sample rate generator (SRG) clock input source is made by the combination of the CLKSM and SCLKME bit values as shown in Table 2–5. Table 2–5. Sample Rate Generator Clock Source Selection SCLKME CLKSM 0 0 SRG Clock Source CLKS (not available as a pin on 5401) 0 1 CPU clock 1 0 BCLKR pin 1 1 BCLKX pin When either of the bidirectional pins, BCLKR or BCLKX, is configured as the clock input, its output buffer is automatically disabled. For example, with SCLKME = 1 and CLKSM = 0, the BCLKR pin is configured as the SRG input. In this case, both the transmitter and receiver circuits can be synchronized to the SRG output by setting the PCR bits (9:8) for CLKXM = 1 and CLKRM = 1. However, the SRG output is only driven onto the BCLKX pin because the BCLKR output is automatically disabled. The McBSP supports independent selection of multiple channels for the transmitter and receiver. When multiple channels are selected, each frame represents a time-division multiplexed (TDM) data stream. In using time-division multiplexed data streams, the CPU may only need to process a few of them. Thus, to save memory and bus bandwidth, multichannel selection allows independent enabling of particular channels for transmission and reception. Up to a maximum of 128 channels in a bit stream can be enabled or disabled. 2.7 Hardware Timer The 5401 device features two 16-bit timing circuits with 4-bit prescalers. The main counter of each timer is decremented by one every CLKOUT cycle. Each time the counter decrements to 0, a timer interrupt is generated. The timers can be stopped, restarted, reset, or disabled by specific control bits. 2.8 Clock Generator The clock generator provides clocks to the 5401 device, and consists of an internal oscillator and a phase-locked loop (PLL) circuit. The clock generator requires a reference clock input, which can be provided by using a crystal resonator with the internal oscillator, or from an external clock source. NOTE: All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8 V power supply (CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. The reference clock input is then divided by two (DIV mode) to generate clocks for the 5401 device, or the PLL circuit can be used (PLL mode) to generate the device clock by multiplying the reference clock frequency by a scale factor, allowing use of a clock source with a lower frequency than that of the CPU.The PLL is an adaptive circuit that, once synchronized, locks onto and tracks an input clock signal. 20 SPRS153B December 2000 – Revised May 2001 Functional Overview When the PLL is initially started, it enters a transitional mode during which the PLL acquires lock with the input signal. Once the PLL is locked, it continues to track and maintain synchronization with the input signal. Then, other internal clock circuitry allows the synthesis of new clock frequencies for use as master clock for the 5401 device. This clock generator allows system designers to select the clock source. The sources that drive the clock generator are: • • A crystal resonator circuit. The crystal resonator circuit is connected across the X1 and X2/CLKIN pins of the 5401 to enable the internal oscillator. An external clock. The external clock source is directly connected to the X2/CLKIN pin, and X1 is left unconnected. NOTE: All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8 V power supply (CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. The software-programmable PLL features a high level of flexibility, and includes a clock scaler that provides various clock multiplier ratios, capability to directly enable and disable the PLL, and a PLL lock timer that can be used to delay switching to PLL clocking mode of the device until lock is achieved. Devices that have a built-in software-programmable PLL can be configured in one of two clock modes: • • PLL mode. The input clock (X2/CLKIN) is multiplied by 1 of 31 possible ratios. These ratios are achieved using the PLL circuitry. DIV (divider) mode. The input clock is divided by 2 or 4. Note that when DIV mode is used, the PLL can be completely disabled in order to minimize power dissipation. The software-programmable PLL is controlled using the 16-bit memory-mapped (address 0058h) clock mode register (CLKMD). The CLKMD register is used to define the configuration of the PLL clock module. Upon reset, the CLKMD register is initialized with a predetermined value dependent only upon the state of the CLKMD1 – CLKMD3 pins as shown in Table 2–6. Table 2–6. Clock Mode Settings at Reset 2.9 CLKMD1 CLKMD2 CLKMD3 CLKMD RESET VALUE 0 0 0 E007h PLL x 15 0 0 1 9007h PLL x 10 0 1 0 4007h PLL x 5 1 0 0 1007h PLL x 2 1 1 0 F007h PLL x 1 1 1 1 0000h 1/2 (PLL disabled) 1 0 1 F000h 1/4 (PLL disabled) 0 1 1 — CLOCK MODE Reserved (bypass mode) DMA Controller The 5401 direct memory access (DMA) controller transfers data between points in the memory map without intervention by the CPU. The DMA controller allows movements of data to and from internal program/data memory or internal peripherals (such as the McBSPs) to occur in the background of CPU operation. The DMA has six independent programmable channels allowing six different contexts for DMA operation. December 2000 – Revised May 2001 SPRS153B 21 Functional Overview 2.9.1 Features The DMA has the following features: • • • • • • • • The DMA operates independently of the CPU. The DMA has six channels. The DMA can keep track of the contexts of six independent block transfers. The DMA has higher priority than the CPU for internal accesses. Each channel has independently programmable priorities. Each channels source and destination address registers can have configurable indexes through memory on each read and write transfer, respectively. The address may remain constant, be post-incremented, post-decremented, or be adjusted by a programmable value. Each read or write transfer may be initialized by selected events. Upon completion of a half-block or an entire-block transfer, each DMA channel may send an interrupt to the CPU. The DMA can perform double-word transfers (a 32-bit transfer of two 16-bit words). 2.9.2 DMA Memory Map The DMA memory map is shown in Figure 2–10 to allow DMA transfers to be unaffected by the status of the MPMC, DROM, and OVLY bits. Hex 0000 001F 0020 0023 0024 005F 0060 007F 0080 0FFF 1000 1FFF 2000 Reserved McBSP Registers Reserved Scratch-Pad RAM† Reserved On-Chip DARAM (4K x 16-bit) On-Chip DARAM (4K x 16-bit) 2FFF 3000 Reserved FFFF † The scratch-pad RAM area is physically a part of the DARAM block starting at address 1000h. Physical location can affect multiple access performance. (See Section 2.2) Figure 2–10. DMA Memory Map 2.9.3 DMA Priority Level Each DMA channel can be independently assigned high priority or low priority relative to each other. Multiple DMA channels that are assigned to the same priority level are handled in a round-robin manner. 2.9.4 DMA Source/Destination Address Modification The DMA provides flexible address-indexing modes for easy implementation of data management schemes such as autobuffering and circular buffers. Source and destination addresses can be indexed separately and can be post-incremented, post-decremented, or post-incremented with a specified index offset. 22 SPRS153B December 2000 – Revised May 2001 Functional Overview 2.9.5 DMA in Autoinitialization Mode The DMA can automatically reinitialize itself after completion of a block transfer. Some of the DMA registers can be preloaded for the next block transfer through the DMA global reload registers (DMGSA, DMGDA, and DMGCR). Autoinitialization allows: • Continuous operation: Normally, the CPU would have to reinitialize the DMA immediately after the completion of the current block transfer; but with the global reload registers, it can reinitialize these values for the next block transfer any time after the current block transfer begins. • Repetitive operation: The CPU does not preload the global reload register with new values for each block transfer but only loads them on the first block transfer. 2.9.6 DMA Transfer Counting The DMA channel element count register (DMCTRx) and the frame count register (DMSFCx) contain bit fields that represent the number of frames and the number of elements per frame to be transferred. • Frame count. This 8-bit value defines the total number of frames in the block transfer. The maximum number of frames per block transfer is 128 (FRAME COUNT= 0ffh). The counter is decremented upon the last read transfer in a frame transfer. Once the last frame is transferred, the selected 8-bit counter is reloaded with the DMA global frame reload register (DMGFR) if the AUTOINIT bit is set to 1. A frame count of 0 (default value) means the block transfer contains a single frame. • Element count. This 16-bit value defines the number of elements per frame. This counter is decremented after the read transfer of each element. The maximum number of elements per frame is 65536 (DMCTRn = 0FFFFh). In autoinitialization mode, once the last frame is transferred, the counter is reloaded with the DMA global count reload register (DMGCR). 2.9.7 DMA Transfer in Doubleword Mode Doubleword mode allows the DMA to transfer 32-bit words in any index mode. In doubleword mode, two consecutive 16-bit transfers are initiated and the source and destination addresses are automatically updated following each transfer. In this mode, each 32-bit word is considered to be one element. 2.9.8 DMA Channel Index Registers The particular DMA channel index register is selected by way of the SIND and DIND field in the DMA mode control register (DMMCRx). Unlike basic address adjustment, in conjunction with the frame index DMFRI0 and DMFRI1, the DMA allows different adjustment amounts depending on whether or not the element transfer is the last in the current frame. The normal adjustment value (element index) is contained in the element index registers DMIDX0 and DMIDX1. The adjustment value (frame index) for the end of the frame, is determined by the selected DMA frame index register, either DMFRI0 or DMFRI1. The element index and the frame index affect address adjustment as follows: • Element index: For all except the last transfer in the frame, the element index determines the amount to be added to the DMA channel for the source/destination address register (DMSRCx/DMDSTx) as selected by the SIND/DIND bits. • Frame index: If the transfer is the last in a frame, the frame index is used for address adjustment as selected by the SIND/DIND bits. This occurs in both single-frame and multi-frame transfer. 2.9.9 DMA Interrupts The ability of the DMA to interrupt the CPU based on the status of the data transfer is configurable and is determined by the IMOD and DINM bits in the DMA channel mode control register (DMMCRn). The available modes are shown in Table 2–7. December 2000 – Revised May 2001 SPRS153B 23 Functional Overview Table 2–7. DMA Interrupts MODE DINM IMOD ABU (non-decrement) 1 0 At full buffer only ABU (non-decrement) 1 1 At half buffer and full buffer Multi-Frame 1 0 At block transfer complete (DMCTRn = DMSEFCn[7:0] = 0) Multi-Frame 1 1 At end of frame and end of block (DMCTRn = 0) Either 0 X No interrupt generated Either 0 X No interrupt generated 2.9.10 INTERRUPT DMA Controller Synchronization Events The transfers associated with each DMA channel can be synchronized to one of several events. The DSYN bit field of the DMA channel x sync select and frame count (DMSFCx) register selects the synchronization event for a channel. The list of possible events and the DSYN values are shown in Table 2–8. Table 2–8. DMA Synchronization Events DSYN VALUE DMA SYNCHRONIZATION EVENT 0000b No synchronization used 0001b McBSP0 receive event 0010b McBSP0 transmit event 0011–0100b Reserved 0101b McBSP1 receive event 0110b McBSP1 transmit event 0111b–0110b 2.9.11 Reserved 1101b Timer0 interrupt 1110b External interrupt 3 1111b Timer1 interrupt DMA Channel Interrupt Selection The DMA controller can generate a CPU interrupt for each of the six channels. However, the interrupt sources for channels 0,1, 2, and 3 are multiplexed with other interrupt sources. DMA channels 2 and 3 share an interrupt line with the receive and transmit portions of McBSP1 (IMR/IFR bits 10 and 11), and DMA channel 1 shares an interrupt line with timer 1 (IMR/IFR bit 7). The interrupt source for DMA channel 0 is shared with a reserved interrupt source. When the 5401 is reset, the interrupts from these four DMA channels are deselected. The INTSEL bit field in the DMA channel priority and enable control (DMPREC) register can be used to select these interrupts, as shown in Table 2–9. Table 2–9. DMA Channel Interrupt Selection INTSEL Value IMR/IFR[6] IMR/IFR[7] IMR/IFR[10] IMR/IFR[11] 00b (reset) Reserved TINT1 BRINT1 BXINT1 01b Reserved TINT1 DMAC2 DMAC3 10b DMAC0 DMAC1 DMAC2 DMAC3 11b Reserved 2.10 Memory-Mapped Registers The 5401 has 27 memory-mapped CPU registers, which are mapped in data memory space addresses 0h to 1Fh. Table 2–10 gives a list of CPU memory-mapped registers (MMRs) available on 5401. The device also has a set of memory-mapped registers associated with peripherals. Table 2–11, Table 2–12, and Table 2–13 show additional peripheral MMRs associated with the 5401. 24 SPRS153B December 2000 – Revised May 2001 Functional Overview Table 2–10. CPU Memory-Mapped Registers NAME ADDRESS DESCRIPTION DEC HEX IMR 0 0 Interrupt mask register IFR 1 1 Interrupt flag register 2–5 2–5 Reserved for testing ST0 6 6 Status register 0 ST1 7 7 Status register 1 AL 8 8 Accumulator A low word (15–0) AH 9 9 Accumulator A high word (31–16) AG 10 A Accumulator A guard bits (39–32) – BL 11 B Accumulator B low word (15–0) BH 12 C Accumulator B high word (31–16) BG 13 D Accumulator B guard bits (39–32) TREG 14 E Temporary register TRN 15 F Transition register AR0 16 10 Auxiliary register 0 AR1 17 11 Auxiliary register 1 AR2 18 12 Auxiliary register 2 AR3 19 13 Auxiliary register 3 AR4 20 14 Auxiliary register 4 AR5 21 15 Auxiliary register 5 AR6 22 16 Auxiliary register 6 AR7 23 17 Auxiliary register 7 SP 24 18 Stack pointer register BK 25 19 Circular buffer size register BRC 26 1A Block repeat counter RSA 27 1B Block repeat start address REA 28 1C Block repeat end address PMST 29 1D Processor mode status (PMST) register XPC 30 1E Extended program page register – 31 1F Reserved December 2000 – Revised May 2001 SPRS153B 25 Functional Overview Table 2–11. Peripheral Memory-Mapped Registers ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ NAME ADDRESS DESCRIPTION TYPE DRR20 20h McBSP0 data receive register 2 McBSP #0 DRR10 21h McBSP0 data receive register 1 McBSP #0 DXR20 22h McBSP0 data transmit register 2 McBSP #0 DXR10 23h McBSP0 data transmit register 1 McBSP #0 TIM 24h Timer0 register Timer0 PRD 25h Timer0 period counter Timer0 TCR 26h Timer0 control register Timer0 – 27h Reserved SWWSR 28h Software wait-state register External Bus BSCR 29h Bank-switching control register External Bus – 2Ah Reserved SWCR 2Bh Software wait-state control register HPIC 2Ch HPI control register – 2Dh–2Fh External Bus HPI Reserved TIM1 30h Timer1 register Timer1 PRD1 31h Timer1 period counter Timer1 32h Timer1 control register Timer1 TCR1 – 33h–37h SPSA0 SPSD0 – 38h 39h 3Ah–3Bh Reserved McBSP0 subbank address register† McBSP0 subbank data register† McBSP #0 McBSP #0 Reserved GPIOCR 3Ch General-purpose I/O pins control register GPIO GPIOSR 3Dh General-purpose I/O pins status register GPIO – 3Eh–3Fh Reserved DRR21 40h McBSP1 data receive register 2 McBSP #1 DRR11 41h McBSP1 data receive register 1 McBSP #1 DXR21 42h McBSP1 data transmit register 2 McBSP #1 43h McBSP1 data transmit register 1 McBSP #1 DXR11 – 44h–47h SPSA1 48h SPSD1 49h – 4Ah–53h DMPREC 54h DMSA 55h Reserved McBSP1 subbank address register† McBSP1 subbank data register† McBSP #1 McBSP #1 Reserved DMA channel priority and enable control register DMA subbank address register‡ DMA DMA PLL DMSDI 56h DMSDN 57h DMA subbank data register with autoincrement‡ DMA subbank data register‡ CLKMD 58h Clock mode register DMA DMA – 59h–5Fh Reserved † See Table 2–12 for a detailed description of the McBSP control registers and their sub-addresses. ‡ See Table 2–13 for a detailed description of the DMA subbank addressed registers. 26 SPRS153B December 2000 – Revised May 2001 Functional Overview 2.11 McBSP Control Registers and Subaddresses The control registers for the multichannel buffered serial port (McBSP) are accessed using the subbank addressing scheme. This allows a set or subbank of registers to be accessed through a single memory location. The serial port subbank address (SPSA) register is used as a pointer to select a particular register within the subbank. The serial port subbank data (SPSD) register is used to access (read or write) the selected register. Table 2–12 shows the McBSP control registers and their corresponding sub-addresses. Table 2–12. McBSP Control Registers and Subaddresses ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ McBSP0 McBSP1 NAME ADDRESS NAME ADDRESS SUBADDRESS SPCR10 39h SPCR11 49h 00h Serial port control register 1 SPCR20 39h SPCR21 49h 01h Serial port control register 2 RCR10 39h RCR11 49h 02h Receive control register 1 RCR20 39h RCR21 49h 03h Receive control register 2 XCR10 39h XCR11 49h 04h Transmit control register 1 XCR20 39h XCR21 49h 05h Transmit control register 2 SRGR10 39h SRGR11 49h 06h Sample rate generator register 1 SRGR20 39h SRGR21 49h 07h Sample rate generator register 2 MCR10 39h MCR11 49h 08h Multichannel register 1 DESCRIPTION MCR20 39h MCR21 49h 09h Multichannel register 2 RCERA0 39h RCERA1 49h 0Ah Receive channel enable register partition A RCERB0 39h RCERB1 49h 0Bh Receive channel enable register partition B XCERA0 39h XCERA1 49h 0Ch Transmit channel enable register partition A XCERB0 39h XCERB1 49h 0Dh Transmit channel enable register partition B PCR0 39h PCR1 49h 0Eh Pin control register December 2000 – Revised May 2001 SPRS153B 27 Functional Overview 2.12 DMA Subbank Addressed Registers The direct memory access (DMA) controller has several control registers associated with it. The main control register (DMPREC) is a standard memory-mapped register. However, the other registers are accessed using the subbank addressing scheme. This allows a set or subbank of registers to be accessed through a single memory location. The DMA subbank address (DMSA) register is used as a pointer to select a particular register within the subbank, while the DMA subbank data (DMSDN) register or the DMA subbank data register with autoincrement (DMSDI) is used to access (read or write) the selected register. When the DMSDI register is used to access the subbank, the subbank address is automatically post-incremented so that a subsequent access affects the next register within the subbank. This autoincrement feature is intended for efficient, successive accesses to several control registers. If the autoincrement feature is not required, the DMSDN register should be used to access the subbank. Table 2–13 shows the DMA controller subbank addressed registers and their corresponding subaddresses. Table 2–13. DMA Subbank Addressed Registers ÑÑÑÑÑ ÑÑÑÑÑ ÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ DMA ADDRESS SUBADDRESS DMSRC0 56h/57h 00h DMA channel 0 source address register DMDST0 56h/57h 01h DMA channel 0 destination address register DMCTR0 56h/57h 02h DMA channel 0 element count register DMSFC0 56h/57h 03h DMA channel 0 sync select and frame count register DMMCR0 56h/57h 04h DMA channel 0 transfer mode control register DMSRC1 56h/57h 05h DMA channel 1 source address register DMDST1 56h/57h 06h DMA channel 1 destination address register DMCTR1 56h/57h 07h DMA channel 1 element count register DMSFC1 56h/57h 08h DMA channel 1 sync select and frame count register DMMCR1 56h/57h 09h DMA channel 1 transfer mode control register DMSRC2 56h/57h 0Ah DMA channel 2 source address register DMDST2 56h/57h 0Bh DMA channel 2 destination address register DMCTR2 56h/57h 0Ch DMA channel 2 element count register DMSFC2 56h/57h 0Dh DMA channel 2 sync select and frame count register DMMCR2 56h/57h 0Eh DMA channel 2 transfer mode control register DMSRC3 56h/57h 0Fh DMA channel 3 source address register DMDST3 56h/57h 10h DMA channel 3 destination address register DMCTR3 56h/57h 11h DMA channel 3 element count register DMSFC3 56h/57h 12h DMA channel 3 sync select and frame count register DMMCR3 56h/57h 13h DMA channel 3 transfer mode control register DMSRC4 56h/57h 14h DMA channel 4 source address register DMDST4 56h/57h 15h DMA channel 4 destination address register DMCTR4 56h/57h 16h DMA channel 4 element count register DMSFC4 56h/57h 17h DMA channel 4 sync select and frame count register DMMCR4 56h/57h 18h DMA channel 4 transfer mode control register DMSRC5 56h/57h 19h DMA channel 5 source address register DMDST5 56h/57h 1Ah DMA channel 5 destination address register DMCTR5 56h/57h 1Bh DMA channel 5 element count register DMSFC5 56h/57h 1Ch DMA channel 5 sync select and frame count register DMMCR5 56h/57h 1Dh DMA channel 5 transfer mode control register DMSRCP 56h/57h 1Eh DMA source program page address (common channel) NAME 28 SPRS153B DESCRIPTION December 2000 – Revised May 2001 Functional Overview Table 2–13. DMA Subbank Addressed Registers (Continued) ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ ÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑÑ DMA ADDRESS SUBADDRESS DMDSTP 56h/57h 1Fh DMA destination program page address (common channel) DMIDX0 56h/57h 20h DMA element index address register 0 DMIDX1 56h/57h 21h DMA element index address register 1 DMFRI0 56h/57h 22h DMA frame index register 0 DMFRI1 56h/57h 23h DMA frame index register 1 DMGSA 56h/57h 24h DMA global source address reload register DMGDA 56h/57h 25h DMA global destination address reload register DMGCR 56h/57h 26h DMA global count reload register DMGFR 56h/57h 27h DMA global frame count reload register NAME December 2000 – Revised May 2001 DESCRIPTION SPRS153B 29 Functional Overview 2.13 Interrupts Vector-relative locations and priorities for all internal and external interrupts are shown in Table 2–14. Table 2–14. Interrupt Locations and Priorities NAME LOCATION DECIMAL HEX RS, SINTR 0 00 NMI, SINT16 4 SINT17 8 SINT18 SINT19 PRIORITY FUNCTION 1 Reset (hardware and software reset) 04 2 Nonmaskable interrupt 08 — Software interrupt #17 12 0C — Software interrupt #18 16 10 — Software interrupt #19 SINT20 20 14 — Software interrupt #20 SINT21 24 18 — Software interrupt #21 SINT22 28 1C — Software interrupt #22 SINT23 32 20 — Software interrupt #23 SINT24 36 24 — Software interrupt #24 SINT25 40 28 — Software interrupt #25 SINT26 44 2C — Software interrupt #26 SINT27 48 30 — Software interrupt #27 SINT28 52 34 — Software interrupt #28 SINT29 56 38 — Software interrupt #29 SINT30 60 3C — Software interrupt #30 INT0, SINT0 64 40 3 External user interrupt #0 INT1, SINT1 68 44 4 External user interrupt #1 INT2, SINT2 72 48 5 External user interrupt #2 TINT0, SINT3 76 4C 6 Timer0 interrupt BRINT0, SINT4 80 50 7 McBSP #0 receive interrupt BXINT0, SINT5 84 54 8 McBSP #0 transmit interrupt Reserved(DMAC0), SINT6 88 58 9 Reserved (default) or DMA channel 0 interrupt. The selection is made in the DMPREC register. TINT1(DMAC1), SINT7 92 5C 10 Timer1 interrupt (default) or DMA channel 1 interrupt. The selection is made in the DMPREC register. INT3, SINT8 96 60 11 External user interrupt #3 HPINT, SINT9 100 64 12 HPI interrupt BRINT1(DMAC2), SINT10 104 68 13 McBSP #1 receive interrupt (default) or DMA channel 2 interrupt. The selection is made in the DMPREC register. BXINT1(DMAC3), SINT11 108 6C 14 McBSP #1 transmit interrupt (default) or DMA channel 3 interrupt. The selection is made in the DMPREC register. DMAC4,SINT12 112 70 15 DMA channel 4 interrupt DMAC5,SINT13 116 74 16 DMA channel 5 interrupt 120–127 78–7F — Reserved Reserved 30 SPRS153B December 2000 – Revised May 2001 Functional Overview The bits of the interrupt flag register (IFR) and interrupt mask register (IMR) are arranged as shown in Figure 2–11. 15–14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 RES DMAC5 DMAC4 BXINT1 or DMAC3 BRINT1 or DMAC2 HPINT INT3 TINT1 or DMAC1 RES or DMAC0 BXINT0 BRINT0 TINT0 INT2 INT1 INT0 Figure 2–11. IFR and IMR Registers Table 2–15. IFR and IMR Register Bit Fields BIT NUMBER FUNCTION NAME 15–14 – 13 DMAC5 DMA channel 5 interrupt flag/mask bit 12 DMAC4 DMA channel 4 interrupt flag/mask bit 11 BXINT1/DMAC3 This bit can be configured as either the McBSP1 transmit interrupt flag/mask bit, or the DMA channel 3 interrupt flag/mask bit. The selection is made in the DMPREC register. 10 BRINT1/DMAC2 This bit can be configured as either the McBSP1 receive interrupt flag/mask bit, or the DMA channel 2 interrupt flag/mask bit. The selection is made in the DMPREC register. 9 HPINT Host to 54x interrupt flag/mask 8 INT3 External interrupt 3 flag/mask 7 TINT1/DMAC1 This bit can be configured as either the timer1 interrupt flag/mask bit, or the DMA channel 1 interrupt flag/mask bit. The selection is made in the DMPREC register. 6 DMAC0 This bit can be configured as either reserved, or the DMA channel 0 interrupt flag/mask bit. The selection is made in the DMPREC register. 5 BXINT0 McBSP0 transmit interrupt flag/mask bit 4 BRINT0 McBSP0 receive interrupt flag/mask bit 3 TINT0 2 INT2 External interrupt 2 flag/mask bit 1 INT1 External interrupt 1 flag/mask bit 0 INT0 External interrupt 0 flag/mask bit December 2000 – Revised May 2001 Reserved for future expansion Timer 0 interrupt flag/mask bit SPRS153B 31 Documentation Support 3 Documentation Support Extensive documentation supports all TMS320 DSP family of devices from product announcement through applications development. The following types of documentation are available to support the design and use of the C5000 platform of DSPs: • • • • • TMS320C54x DSP Functional Overview (literature number SPRU307) Device-specific data sheets Complete users guides Development support tools Hardware and software application reports The five-volume TMS320C54x DSP Reference Set (literature number SPRU210) consists of: • • • • • Volume 1: CPU and Peripherals (literature number SPRU131) Volume 2: Mnemonic Instruction Set (literature number SPRU172) Volume 3: Algebraic Instruction Set (literature number SPRU179) Volume 4: Applications Guide (literature number SPRU173) Volume 5: Enhanced Peripherals (literature number SPRU302) The reference set describes in detail the TMS320C54x DSP products currently available and the hardware and software applications, including algorithms, for fixed-point TMS320 DSP family of devices. A series of DSP textbooks is published by Prentice-Hall and John Wiley & Sons to support digital signal processing research and education. The TMS320 DSP newsletter, Details on Signal Processing, is published quarterly and distributed to update TMS320 DSP customers on product information. Information regarding TI DSP products is also available on the Worldwide Web at http://www.ti.com uniform resource locator (URL). TMS320 is a trademark of Texas Instruments. 32 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4 Electrical Specifications This section provides the absolute maximum ratings and the recommended operating conditions for the TMS320VC5401 DSP. 4.1 Absolute Maximum Ratings The list of absolute maximum ratings are specified over operating case temperature. Stresses beyond those listed under “absolute maximum ratings” may cause permanent damage to the device. These are stress ratings only, and functional operation of the device at these or any other conditions beyond those indicated under Section 4.2 is not implied. Exposure to absolute-maximum-rated conditions for extended periods may affect device reliability. All supply voltage values (core and I/O) are with respect to VSS. Figure 4–1 provides the test load circuit values for a 3.3-V device. Supply voltage I/O range, DVDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 4.0 V Supply voltage core range, CVDD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 2.4 V Input voltage range, VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 4.5 V Output voltage range, VO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –0.3 V to 4.5 V Operating case temperature range, TC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –40°C to 100°C Storage temperature range, Tstg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . –55°C to 150°C 4.2 Recommended Operating Conditions DVDD Device supply voltage, I/O† CVDD Device supply voltage, core† VSS Supply voltage, GND VIH VIL IOH IOL High-level High level input voltage DVDD = 3.3 0.3 V " Low-level input voltage DVDD = 3.3 0.3 V " MIN NOM MAX 3 3.3 3.6 V 1.71 1.8 1.98 V 0 RS, INTn, NMI, BIO, BCLKR0, BCLKR1, BCLKX0, BCLKX1, HCS, HDS1, HDS2, TDI, TMS, CLKMDn X2/CLKIN‡ UNIT V 2.3 DVDD + 0.3 1.45 CVDD+0.3 TCK, TRST 2.6 DVDD + 0.3 All other inputs 2.1 DVDD + 0.3 RS, INTn, NMI, X2/CLKIN, BIO, BCLKR0, BCLKR1, BCLKX0, BCLKX1, HCS, HDS1, HDS2, TCK, CLKMDn –0.3 0.5 All other inputs –0.3 0.7 V V High-level output current 300 µA Low-level output current 1.5 mA TC Operating case temperature –40 100 °C † Texas Instrument DSPs do not require specific power sequencing between the core supply and the I/O supply. However, systems should be designed to ensure that neither supply is powered up for extended periods of time if the other supply is below the proper operating voltage. Excessive exposure to these conditions can adversely affect the long term reliability of the devices. System-level concerns such as bus contention may require supply sequencing to be implemented. In this case, the core supply should be powered up at the same time as or prior to the I/O buffers and then powered down after the I/O buffers. ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8V power supply (CVDD), rather than the 3V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. December 2000 – Revised May 2001 SPRS153B 33 Electrical Specifications 4.3 Electrical Characteristics PARAMETER TEST CONDITIONS MIN VOH High-level output voltage IOH = MAX VOL Low-level output voltage IIZ Input current for D[15:0], HD[7:0] outputs in high impedance All other inputs IOL = MAX Bus holders enabled, DVDD = MAX, VI = VSS to DVDD Input current DVDD = MAX, VO = VSS to DVDD TRST With internal pulldown HPIENA With internal pulldown TMS, TCK, TDI, HPIw With internal pullups, HPIENA = 0 (VI = VSS to DVDD) IDDP UNIT V 0.5 only pins All other input input-only IDDC MAX 2.3 X2/CLKIN} II TYP† –175 175 –10 10 –40 40 –10 300 –10 300 –300 10 10 –10 10 V µA µ µA Supply current, core CPU CVDD = 1.8 V, fclock = 50 MHz¶, TC = 25°C# 22 mA Supply current, pins DVDD = 3.3 V, fclock = 50 MHz¶, TC = 25°C|| 30 mA 2 mA 20 µA IDLE2 PLL × 1 mode, 50 MHz input IDLE3 Divide-by-two mode, CLKIN stopped IDD Supply y current, standby Ci Input capacitance 5 pF Co Output capacitance 5 pF † All values are typical unless otherwise specified. ‡ All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8 V power supply (CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. § HPI input signals except for HPIENA. ¶ Clock mode: PLL × 1 with external source # This value represents the current consumption of the CPU, on-chip memory, and on-chip peripherals. Conditions include: program execution from on-chip RAM, with 50% usage of MAC and 50% usage of NOP instructions. Actual operating current varies with program being executed. || This value was obtained using the following conditions: external memory writes at a rate of 20 million writes per second, CLKOFF=0, full-duplex operation of McBSP0 and McBSP1 at a rate of 10 million bits per second each, and 15-pF loads on all outputs. For more details on how this calculation is performed, refer to the Calculation of TMS320LC54x Power Dissipation Application Report (literature number SPRA164). IOL 50 Ω Tester Pin Electronics VLoad CT Output Under Test IOH Where: IOL IOH VLoad CT = = = = 1.5 mA (all outputs) 300 µA (all outputs) 1.5 V 40 pF typical load circuit capacitance Figure 4–1. 3.3-V Test Load Circuit 34 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.4 Package Thermal Resistance Characteristics Table 4–1 provides the thermal resistance characteristics for the recommended package types used on the TMS320VC5401 DSP. Table 4–1. Thermal Resistance Characteristics 4.5 PARAMETER GGU PACKAGE PGE PACKAGE UNIT RΘJA 38 56 °C / W RΘJC 5 5 °C / W Timing Parameter Symbology Timing parameter symbols used in the timing requirements and switching characteristics tables are created in accordance with JEDEC Standard 100. To shorten the symbols, some of the pin names and other related terminology have been abbreviated as follows: Lowercase subscripts and their meanings: Letters and symbols and their meanings: a access time H High c cycle time (period) L Low d delay time V Valid dis disable time Z High impedance en enable time f fall time h hold time r rise time su setup time t transition time v valid time w pulse duration (width) X Unknown, changing, or don’t care level December 2000 – Revised May 2001 SPRS153B 35 Electrical Specifications 4.6 Internal Oscillator With External Crystal The internal oscillator is enabled by connecting a crystal across X1 and X2/CLKIN. The frequency of CLKOUT is a multiple of the oscillator frequency. The multiply ratio is determined by the bit settings in the CLKMD register. The crystal should be in fundamental-mode operation, and parallel resonant, with an effective series resistance of 30 Ω and power dissipation of 1 mW. The connection of the required circuit, consisting of the crystal and two load capacitors, is shown in Figure 4–2. The load capacitors, C1 and C2, should be chosen such that the equation below is satisfied. CL in the equation is the load specified for the crystal. CL + (CC)CC ) 1 1 2 2 Table 4–2. Input Clock Frequency Characteristics MIN fclock Input clock frequency 10 X1 MAX UNIT 20 MHz X2/CLKIN Crystal C1 C2 Figure 4–2. Internal Oscillator With External Crystal 36 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.7 Clock Options The frequency of the reference clock provided at the CLKIN pin can be divided by a factor of two or four to generate the internal machine cycle. 4.7.1 Divide-By-Two Clock Option (PLL Disabled) The frequency of the reference clock provided at the X2/CLKIN pin can be divided by a factor of two to generate the internal machine cycle. The selection of the clock mode is described in the clock generator section. When an external clock source is used, the frequency injected must conform to specifications listed in the timing requirements table. NOTE: All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8 V power supply (CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. Table 4–3 and Table 4–4 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–3). Table 4–3. Divide-By-2 Clock Option Timing Requirements tc(CI) tf(CI) Cycle time, X2/CLKIN MIN MAX 20 † ns 8 ns Fall time, X2/CLKIN UNIT tr(CI) Rise time, X2/CLKIN 8 ns † This device utilizes a fully static design and therefore can operate with tc(CI) approaching ∞. The device is characterized at frequencies approaching 0 Hz. Table 4–4. Divide-By-2 Clock Option Switching Characteristics PARAMETER MIN TYP MAX 20‡ 2tc(CI) 10 † UNIT ns 19 ns tc(CO) td(CIH-CO) Cycle time, CLKOUT tf(CO) tr(CO) Fall time, CLKOUT 2 ns Rise time, CLKOUT 2 ns Delay time, X2/CLKIN high to CLKOUT high/low 2 tw(COL) Pulse duration, CLKOUT low H–4 H+4 ns tw(COH) Pulse duration, CLKOUT high H–4 H+4 ns † This device utilizes a fully static design and therefore can operate with tc(CI) approaching ∞. The device is characterized at frequencies approaching 0 Hz. ‡ It is recommended that the PLL clocking option be used for maximum frequency operation. tr(CI) tc(CI) tf(CI) X2/CLKIN tc(CO) td(CIH-CO) tw(COH) tf(CO) tr(CO) tw(COL) CLKOUT Figure 4–3. External Divide-by-Two Clock Timing December 2000 – Revised May 2001 SPRS153B 37 Electrical Specifications 4.7.2 Multiply-By-N Clock Option (PLL Enabled) The frequency of the reference clock provided at the X2/CLKIN pin can be multiplied by a factor of N to generate the internal machine cycle. The selection of the clock mode and the value of N is described in the clock generator section. When an external clock source is used, the external frequency injected must conform to specifications listed in the timing requirements table. NOTE: All revisions of the 5401 can be operated with an external clock source, provided that the proper voltage levels be driven on the X2/CLKIN pin. It should be noted that the X2/CLKIN pin is referenced to the device 1.8 V power supply (CVDD), rather than the 3 V I/O supply (DVDD). Refer to the recommended operating conditions section of this document for the allowable voltage levels of the X2/CLKIN pin. Table 4–5 and Table 4–6 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–4). Table 4–5. Multiply-By-N Clock Option Timing Requirements tc(CI) ( ) Integer PLL multiplier N (N = 1–15)† PLL multiplier N = x.5† Cycle time, X2/CLKIN MIN 20‡ MAX 20‡ 20‡ 100 PLL multiplier N = x.25, x.75† tf(CI) tr(CI) UNIT 200 ns 50 Fall time, X2/CLKIN 8 ns Rise time, X2/CLKIN 8 ns † N = Multiplication factor ‡ The multiplication factor and minimum X2/CLKIN cycle time should be chosen such that the resulting CLKOUT cycle time is within the specified range (tc(CO)) Table 4–6. Multiply-By-N Clock Option Switching Characteristics PARAMETER MIN MAX 20 TYP tc(CI)/N† 2 10 19 UNIT tc(CO) td(CI-CO) Cycle time, CLKOUT tf(CO) tr(CO) Fall time, CLKOUT 2 Rise time, CLKOUT 2 tw(COL) tw(COH) Pulse duration, CLKOUT low H–4 H+4 ns Pulse duration, CLKOUT high H–4 H+4 ns 35 ms Delay time, X2/CLKIN high/low to CLKOUT high/low tp Transitory phase, PLL lock up time † N = Multiplication factor ns ns ns tf(CI) tr(CI) tc(CI) ns X2/CLKIN td(CI-CO) tc(CO) tp CLKOUT tw(COH) tf(CO) tw(COL) tr(CO) Unstable Figure 4–4. External Multiply-by-One Clock Timing 38 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.8 Memory and Parallel I/O Interface Timing 4.8.1 Memory Read External memory reads can be performed in consecutive or nonconsecutive mode under control of the CONSEC bit in the BSCR. Table 4–7 and Table 4–8 assume testing over recommended operating conditions with MSTRB = 0 and H = 0.5tc(CO) (see Figure 4–5). Table 4–7. Memory Read Timing Requirements MIN MAX UNIT 2H–9 ns 2H–10 ns ta(A)M ta(MSTRBL) Access time, read data access from address valid† tsu(D)R th(D)R Setup time, read data before CLKOUT low 8 ns Hold time, read data after CLKOUT low 0 ns th(A-D)R Hold time, read data after address invalid 2 ns 2 ns Access time, read data access from MSTRB low th(D)MSTRBH Hold time, read data after MSTRB high † Address, PS, and DS timings are all included in timings referenced as address. Table 4–8. Memory Read Switching Characteristics td(CLKL-A) td(CLKH-A) td(CLKL-MSL) td(CLKL-MSH) PARAMETER Delay time, CLKOUT low to address valid†‡ MIN MAX –4 5 ns Delay time, CLKOUT high (transition) to address valid†§ –4 5 ns Delay time, CLKOUT low to MSTRB low –3 5 ns Delay time, CLKOUT low to MSTRB high –3 5 ns –4 5 ns –4 5 ns th(CLKL-A)R Hold time, address valid after CLKOUT low†‡ th(CLKH-A)R Hold time, address valid after CLKOUT high†§ † Address, PS, and DS timings are all included in timings referenced as address. ‡ In the case of a memory read preceded by a memory read § In the case of a memory read preceded by a memory write December 2000 – Revised May 2001 SPRS153B UNIT 39 Electrical Specifications CLKOUT td(CLKL-A) th(CLKL-A)R A[19:0] th(A-D)R tsu(D)R ta(A)M th(D)R D[15:0] th(D)MSTRBH td(CLKL-MSL) td(CLKL-MSH) ta(MSTRBL) MSTRB R/W PS, DS NOTE A: A[19:16] are always driven low during accesses to external data space. Figure 4–5. Memory Read (MSTRB = 0) 40 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.8.2 Memory Write Table 4–9 assumes testing over recommended operating conditions with MSTRB = 0 and H = 0.5tc(CO) (see Figure 4–6). Table 4–9. Memory Write Switching Characteristics MIN MAX td(CLKH-A) td(CLKL-A) Delay time, CLKOUT high to address valid†‡ Delay time, CLKOUT low to address valid† PARAMETER –4 5 ns –4 5 ns td(CLKL-MSL) td(CLKL-D)W Delay time, CLKOUT low to MSTRB low –3 5 ns Delay time, CLKOUT low to data valid –2 8 ns td(CLKL-MSH) td(CLKH-RWL) Delay time, CLKOUT low to MSTRB high –3 5 ns Delay time, CLKOUT high to R/W low –3 5 ns td(CLKH-RWH) td(RWL-MSTRBL) Delay time, CLKOUT high to R/W high –3 5 ns H–4 H+3 ns th(A)W Hold time, address valid after CLKOUT high†‡ 5 ns th(D)MSH tw(SL)MS Hold time, write data valid after MSTRB high H+8 ns Pulse duration, MSTRB low 2H–4 tsu(A)W tsu(D)MSH Setup time, address valid before MSTRB low† 2H–4 Setup time, write data valid before MSTRB high 2H–4 Delay time, R/W low to MSTRB low ten(D–RWL) Enable time, data bus driven after R/W low tdis(RWH–D) Disable time, R/W high to data bus high impedance † Address, PS, and DS timings are all included in timings referenced as address. ‡ In the case of a memory write preceded by a memory write December 2000 – Revised May 2001 –1 H–1 UNIT ns ns 2H+7 H–6 ns ns 0 SPRS153B ns 41 Electrical Specifications CLKOUT td(CLKH-A) td(CLKL-A) th(A)W A[19:0] td(CLKL-D)W th(D)MSH tsu(D)MSH D[15:0] td(CLKL-MSL) tsu(A)W tdis(RWH-D) td(CLKL-MSH) MSTRB td(CLKH-RWL) ten(D-RWL) td(CLKH-RWH) tw(SL)MS td(RWL-MSTRBL) R/W PS, DS NOTE A: A[19:16] are always driven low during accesses to external data space. Figure 4–6. Memory Write (MSTRB = 0) 42 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.8.3 I/O Read Table 4–10 and Table 4–11 assume testing over recommended operating conditions, IOSTRB = 0, and H = 0.5tc(CO) (see Figure 4–7). Table 4–10. I/O Read Timing Requirements MAX UNIT ta(A)IO ta(ISTRBL)IO Access time, read data access from address valid† MIN 3H–9 ns Access time, read data access from IOSTRB low 2H–9 ns tsu(D)IOR th(D)IOR Setup time, read data before CLKOUT high 8 ns Hold time, read data after CLKOUT high 2 ns 2 ns th(ISTRBH-D)R Hold time, read data after IOSTRB high † Address and IS timings are included in timings referenced as address. Table 4–11. I/O Read Switching Characteristics td(CLKL-A) td(CLKH-ISTRBL) td(CLKH-ISTRBH) th(A)IOR PARAMETER Delay time, CLKOUT low to address valid† MIN MAX –4 5 UNIT ns Delay time, CLKOUT high to IOSTRB low –4 5 ns Delay time, CLKOUT high to IOSTRB high –4 5 ns Hold time, address after CLKOUT low –2 5 ns † Address and IS timings are included in timings referenced as address. CLKOUT th(A)IOR td(CLKL-A) A[19:0] tsu(D)IOR ta(A)IO th(D)IOR D[15:0] th(ISTRBH-D)R td(CLKH-ISTRBH) ta(ISTRBL)IO td(CLKH-ISTRBL) IOSTRB R/W IS NOTE A: A[19:16] are always driven low during accesses to I/O space. Figure 4–7. Parallel I/O Port Read (IOSTRB = 0) December 2000 – Revised May 2001 SPRS153B 43 Electrical Specifications 4.8.4 I/O Write Table 4–12 assumes testing over recommended operating conditions, IOSTRB = 0, and H = 0.5tc(CO) (see Figure 4–8). Table 4–12. I/O Write Switching Characteristics PARAMETER MIN MAX td(CLKL-A) td(CLKH-ISTRBL) Delay time, CLKOUT low to address valid† –4 5 ns td(CLKH-D)IOW td(CLKH-ISTRBH) Delay time, CLKOUT high to write data valid td(CLKL-RWL) td(CLKL-RWH) Delay time, CLKOUT high to IOSTRB low UNIT –4 5 ns H–7 H+11 ns Delay time, CLKOUT high to IOSTRB high –4 5 ns Delay time, CLKOUT low to R/W low –3 5 ns Delay time, CLKOUT low to R/W high –3 5 ns th(A)IOW Hold time, address valid after CLKOUT low† –2 5 ns th(D)IOW Hold time, write data after IOSTRB high H–5 H+9 ns tsu(D)IOSTRBH Setup time, write data before IOSTRB high H–9 H+3 ns H–4 H+4 ns tsu(A)IOSTRBL Setup time, address valid before IOSTRB low† † Address and IS timings are included in timings referenced as address. CLKOUT tsu(A)IOSTRBL td(CLKL-A) th(A)IOW A[19:0] td(CLKH-D)IOW th(D)IOW D[15:0] td(CLKH-ISTRBL) td(CLKH-ISTRBH) tsu(D)IOSTRBH IOSTRB td(CLKL-RWL) td(CLKL-RWH) R/W IS NOTE A: A[19:16] are always driven low during accesses to I/O space. Figure 4–8. Parallel I/O Port Write (IOSTRB = 0) 44 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.9 Ready Timing for Externally Generated Wait States Table 4–13 and Table 4–14 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–9, Figure 4–10, Figure 4–11, and Figure 4–12). Table 4–13. Ready Timing Requirements for Externally Generated Wait States† MIN tsu(RDY) th(RDY) tv(RDY)MSTRB th(RDY)MSTRB Setup time, READY before CLKOUT low 8 Hold time, READY after CLKOUT low Valid time, READY after MSTRB low‡ 0 Hold time, READY after MSTRB low‡ Valid time, READY after IOSTRB low‡ 4H MAX UNIT ns ns 4H–6 ns ns tv(RDY)IOSTRB 5H–6 ns th(RDY)IOSTRB Hold time, READY after IOSTRB low‡ 5H ns † The hardware wait states can be used only in conjunction with the software wait states to extend the bus cycles. To generate wait states using READY, at least two software wait states must be programmed. READY is not sampled until the completion of the internal software wait states. ‡ These timings are included for reference only. The critical timings for READY are those referenced to CLKOUT. Table 4–14. Ready Switching Characteristics for Externally Generated Wait States† PARAMETER td(MSCL) td(MSCH) MIN MAX Delay time, MSC low to CLKOUT low –1 3 UNIT ns Delay time, CLKOUT low to MSC high –1 3 ns † The hardware wait states can be used only in conjunction with the software wait states to extend the bus cycles. To generate wait states using READY, at least two software wait states must be programmed. READY is not sampled until the completion of the internal software wait states. CLKOUT A[19:0] tsu(RDY) th(RDY) READY tv(RDY)MSTRB th(RDY)MSTRB MSTRB tv(MSCH) tv(MSCL) MSC Wait States Generated Internally Wait State Generated by READY NOTE A: A[19:16] are always driven low during accesses to external data space. Figure 4–9. Memory Read With Externally Generated Wait States December 2000 – Revised May 2001 SPRS153B 45 Electrical Specifications CLKOUT A[19:0] D[15:0] th(RDY) tsu(RDY) READY tv(RDY)MSTRB th(RDY)MSTRB MSTRB tv(MSCH) tv(MSCL) MSC Wait States Generated Internally Wait State Generated by READY NOTE A: A[19:16] are always driven low during accesses to external data space. Figure 4–10. Memory Write With Externally Generated Wait States 46 SPRS153B December 2000 – Revised May 2001 Electrical Specifications CLKOUT A[19:0] th(RDY) tsu(RDY) READY tv(RDY)IOSTRB th(RDY)IOSTRB IOSTRB tv(MSCH) tv(MSCL) MSC Wait States Generated Internally Wait State Generated by READY NOTE A: A[19:16] are always driven low during accesses to I/O space. Figure 4–11. I/O Read With Externally Generated Wait States December 2000 – Revised May 2001 SPRS153B 47 Electrical Specifications CLKOUT A[19:0] D[15:0] th(RDY) tsu(RDY) READY tv(RDY)IOSTRB th(RDY)IOSTRB IOSTRB tv(MSCH) tv(MSCL) MSC Wait State Generated by READY Wait States Generated Internally NOTE A: A[19:16] are always driven low during accesses to I/O space. Figure 4–12. I/O Write With Externally Generated Wait States 48 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.10 HOLD and HOLDA Timings Table 4–15 and Table 4–16 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–13). Table 4–15. HOLD and HOLDA Timing Requirements MIN tw(HOLD) tsu(HOLD) Pulse duration, HOLD low Setup time, HOLD low/high before CLKOUT low MAX UNIT 4H+9 ns 9 ns Table 4–16. HOLD and HOLDA Switching Characteristics PARAMETER MIN MAX UNIT tdis(CLKL-A) tdis(CLKL-RW) Disable time, address, PS, DS, IS high impedance from CLKOUT low 7 ns Disable time, R/W high impedance from CLKOUT low 7 ns tdis(CLKL-S) ten(CLKL-A) Disable time, MSTRB, IOSTRB high impedance from CLKOUT low 7 ns Enable time, address, PS, DS, IS from CLKOUT low 2H+7 ns ten(CLKL-RW) ten(CLKL-S) Enable time, R/W enabled from CLKOUT low 2H+7 ns tv(HOLDA) (HOLDA) tw(HOLDA) Enable time, MSTRB, IOSTRB enabled from CLKOUT low 0 2H+7 ns Valid time, HOLDA low after CLKOUT low –3 4 ns Valid time, HOLDA high after CLKOUT low –3 4 ns Pulse duration, HOLDA low duration 2H–3 ns CLKOUT tsu(HOLD) tsu(HOLD) tw(HOLD) HOLD HOLDA tv(HOLDA) tv(HOLDA) tw(HOLDA) tdis(CLKL-A) ten(CLKL-A) A[19:0] PS, DS, IS D[15:0] tdis(CLKL-RW) ten(CLKL-RW) tdis(CLKL-S) ten(CLKL-S) tdis(CLKL-S) ten(CLKL-S) R/W MSTRB IOSTRB Figure 4–13. HOLD and HOLDA Timings (HM = 1) December 2000 – Revised May 2001 SPRS153B 49 Electrical Specifications 4.11 Reset, BIO, Interrupt, and MP/MC Timings Table 4–17 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–14, Figure 4–15, and Figure 4–16). Table 4–17. Reset, BIO, Interrupt, and MP/MC Timing Requirements MIN MAX UNIT th(RS) th(BIO) Hold time, RS after CLKOUT low 2 ns Hold time, BIO after CLKOUT low 2 ns th(INT) th(MPMC) Hold time, INTn, NMI, after CLKOUT low† 2 ns Hold time, MP/MC after CLKOUT low Pulse duration, RS low‡§ 2 ns 4H+7 ns Pulse duration, BIO low, synchronous 2H+4 ns tw(BIO)A tw(INTH)S Pulse duration, BIO low, asynchronous 4H+2 ns Pulse duration, INTn, NMI high (synchronous) 2H+2 ns tw(INTH)A tw(INTL)S Pulse duration, INTn, NMI high (asynchronous) 4H+2 ns Pulse duration, INTn, NMI low (synchronous) 2H+4 ns tw(INTL)A tw(INTL)WKP Pulse duration, INTn, NMI low (asynchronous) 4H+2 ns Pulse duration, INTn, NMI low for IDLE2/IDLE3 wakeup Setup time, RS before X2/CLKIN low¶ 12 ns Setup time, BIO before CLKOUT low 9 12 ns Setup time, INTn, NMI, RS before CLKOUT low 9 12 ns Setup time, MP/MC before CLKOUT low 7 tw(RSL) tw(BIO)S tsu(RS) tsu(BIO) tsu(INT) tsu(MPMC) 7 ns ns † The external interrupts (INT0–INT3, NMI) are synchronized to the core CPU by way of a two-flip-flop synchronizer which samples these inputs with consecutive falling edges of CLKOUT. The input to the interrupt pins is required to represent a 1-0-0 sequence at the timing that is corresponding to three CLKOUT sampling sequences. ‡ If the PLL mode is selected, then at power-on sequence, or at wakeup from IDLE3, RS must be held low for at least 50 µs to ensure synchronization and lock-in of the PLL. § Note that RS may cause a change in clock frequency, therefore changing the value of H. ¶ Divide-by-two mode X2/CLKIN tsu(RS) tw(RSL) RS, INTn, NMI tsu(INT) th(RS) CLKOUT tsu(BIO) th(BIO) BIO tw(BIO)S Figure 4–14. Reset and BIO Timings 50 SPRS153B December 2000 – Revised May 2001 Electrical Specifications CLKOUT tsu(INT) tsu(INT) th(INT) INTn, NMI tw(INTH)A tw(INTL)A Figure 4–15. Interrupt Timing CLKOUT RS th(MPMC) tsu(MPMC) MP/MC Figure 4–16. MP/MC Timing December 2000 – Revised May 2001 SPRS153B 51 Electrical Specifications 4.12 Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Timings Table 4–18 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–17). Table 4–18. Instruction Acquisition (IAQ) and Interrupt Acknowledge (IACK) Switching Characteristics MIN MAX td(CLKL-IAQL) td(CLKL-IAQH) Delay time, CLKOUT low to IAQ low PARAMETER –3 5 ns Delay time, CLKOUT low to IAQ high –3 5 ns td(A)IAQ td(CLKL-IACKL) Delay time, address valid to IAQ low 3 ns Delay time, CLKOUT low to IACK low –3 5 ns td(CLKL-IACKH) td(A)IACK Delay time , CLKOUT low to IACK high –3 5 ns 5 ns th(A)IAQ th(A)IACK Hold time, IAQ high after address invalid –4 ns Hold time, IACK high after address invalid –4 ns tw(IAQL) tw(IACKL) Pulse duration, IAQ low 2H–4 ns Pulse duration, IACK low 2H–4 ns Delay time, address valid to IACK low UNIT CLKOUT A[19:0] td(CLKL-IAQH) td(CLKL-IAQL) th(A)IAQ td(A)IAQ tw(IAQL) IAQ td(CLKL-IACKL) th(A)IACK td(A)IACK IACK td(CLKL-IACKH) tw(IACKL) MSTRB Figure 4–17. IAQ and IACK Timings 52 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.13 External Flag (XF) and TOUT Timings Table 4–19 assumes testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–18 and Figure 4–19). Table 4–19. External Flag (XF) and TOUT Switching Characteristics MIN MAX Delay time, CLKOUT low to XF high PARAMETER –3 5 Delay time, CLKOUT low to XF low –3 5 td(TOUTH) td(TOUTL) Delay time, CLKOUT low to TOUT high –2 6 ns Delay time, CLKOUT low to TOUT low –2 6 ns tw(TOUT) Pulse duration, TOUT td(XF) 2H–2 UNIT ns ns CLKOUT td(XF) XF Figure 4–18. XF Timing CLKOUT td(TOUTH) td(TOUTL) TOUT tw(TOUT) Figure 4–19. TOUT Timing December 2000 – Revised May 2001 SPRS153B 53 Electrical Specifications 4.14 Multichannel Buffered Serial Port (McBSP) Timing 4.14.1 McBSP Transmit and Receive Timings Table 4–20 and Table 4–21 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–20 and Figure 4–21). Table 4–20. McBSP Transmit and Receive Timing Requirements† MIN tc(BCKRX) tw(BCKRX) MAX UNIT Cycle time, BCLKR/X BCLKR/X ext 4H ns Pulse duration, BCLKR/X high or BCLKR/X low BCLKR/X ext 2H–2 ns tsu(BFRH-BCKRL) (BFRH BCKRL) Setup time, time external BFSR high before BCLKR low th(BCKRL-BFRH) h(BCKRL BFRH) time external BFSR high after BCLKR low Hold time, tsu(BDRV-BCKRL) (BDRV BCKRL) Setup time, time BDR valid before BCLKR low th(BCKRL-BDRV) h(BCKRL BDRV) Hold time time, BDR valid after BCLKR low tsu(BFXH-BCKXL) (BFXH BCKXL) Setup time, time external BFSX high before BCLKX low th(BCKXL-BFXH) h(BCKXL BFXH) Hold time time, external BFSX high after BCLKX low BCLKR int 10 BCLKR ext 3 BCLKR int 2 BCLKR ext 5 BCLKR int 7 BCLKR ext 2 BCLKR int 2 BCLKR ext 6 BCLKX int 9 BCLKX ext 2 BCLKX int 2 BCLKX ext 5 ns ns ns ns ns ns tr(BCKRX) Rise time, BCKR/X BCLKR/X ext 8 ns tf(BCKRX) Fall time, BCKR/X BCLKR/X ext 8 ns † CLKRP = CLKXP = FSRP = FSXP = 0. If the polarity of any of the signals is inverted, then the timing references of that signal are also inverted. Table 4–21. McBSP Transmit and Receive Switching Characteristics† PARAMETER MIN MAX UNIT tc(BCKRX) tw(BCKRXH) Cycle time, BCLKR/X BCLKR/X int 4H Pulse duration, BCLKR/X high BCLKR/X int D – 4‡ D + 4‡ ns tw(BCKRXL) Pulse duration, BCLKR/X low BCLKR/X int C – 4‡ C + 4‡ ns –4 4 ns BCLKR ext 1 11 ns BCLKX int –2 6 BCLKX ext 6 13 BCLKX int –3 6 BCLKX ext 11 BCLKX int 1 –2¶ BCLKX ext 1 13 td(BCKRH-BFRV) d(BCKRH BFRV) td(BCKXH-BFXV) d(BCKXH BFXV) BCLKR int Delay time, time BCLKR high to internal BFSR valid Delay time, time BCLKX high to internal BFSX valid Disable time,, BCLKX high g to BDX high g impedance following g last data tdis(BCKXH-BDXHZ) di (BCKXH BDXHZ) bit of transfer td(BCKXH-BDXV) d(BCKXH BDXV) Delay time, time BCLKX high to BDX valid DXENA = 0§ ns 9 Delay time, BFSX high to BDX valid BFSX int –3¶ 5 ONLY applies when in data delay 0 (XDATDLY = 00b) mode BFSX ext 1 15 td(BFXH-BDXV) d(BFXH BDXV) ns ns ns ns † CLKRP = CLKXP = FSRP = FSXP = 0. If the polarity of any of the signals is inverted, then the timing references of that signal are also inverted. ‡ T = BCLKRX period = (1 + CLKGDV) * 2H C = BCLKRX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even D = BCLKRX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even § The transmit delay enable (DXENA) and A–bis mode (ABIS) features of the McBSP are not implemented on the TMS320VC5401. ¶ Minimum delay times also represent minimum output hold times. 54 SPRS153B December 2000 – Revised May 2001 Electrical Specifications tc(BCKRX) tw(BCKRXH) tr(BCKRX) tw(BCKRXL) BCLKR td(BCKRH–BFRV) td(BCKRH–BFRV) tr(BCKRX) BFSR (int) tsu(BFRH–BCKRL) th(BCKRL–BFRH) BFSR (ext) th(BCKRL–BDRV) tsu(BDRV–BCKRL) BDR (RDATDLY=00b) Bit (n–1) (n–2) tsu(BDRV–BCKRL) (n–3) (n–4) th(BCKRL–BDRV) BDR (RDATDLY=01b) Bit (n–1) (n–2) tsu(BDRV–BCKRL) BDR (RDATDLY=10b) (n–3) th(BCKRL–BDRV) Bit (n–1) (n–2) Figure 4–20. McBSP Receive Timings tc(BCKRX) tw(BCKRXH) tw(BCKRXL) tr(BCKRX) tf(BCKRX) BCLKX td(BCKXH–BFXV) td(BCKXH–BFXV) BFSX (int) tsu(BFXH–BCKXL) th(BCKXL–BFXH) BFSX (ext) td(BDFXH–BDXV) BDX (XDATDLY=00b) Bit 0 Bit (n–1) td(BCKXH–BDXV) (n–2) (n–3) (n–4) td(BCKXH–BDXV) BDX (XDATDLY=01b) Bit 0 Bit (n–1) (n–3) td(BCKXH–BDXV) tdis(BCKXH–BDXHZ) BDX (XDATDLY=10b) (n–2) Bit 0 Bit (n–1) (n–2) Figure 4–21. McBSP Transmit Timings December 2000 – Revised May 2001 SPRS153B 55 Electrical Specifications 4.14.2 McBSP General-Purpose I/O Timing Table 4–22 and Table 4–23 assume testing over recommended operating conditions (see Figure 4–22). Table 4–22. McBSP General-Purpose I/O Timing Requirements MIN tsu(BGPIO-COH) th(COH-BGPIO) Setup time, BGPIOx input mode before CLKOUT high† Hold time, BGPIOx input mode after CLKOUT high† MAX UNIT 11 ns 2 ns † BGPIOx refers to BCLKRx, BFSRx, BDRx, BCLKXx, or BFSXx when configured as a general-purpose input. Table 4–23. McBSP General-Purpose I/O Switching Characteristics PARAMETER td(COH-BGPIO) Delay time, CLKOUT high to BGPIOx output mode‡ ‡ BGPIOx refers to BCLKRx, BFSRx, BCLKXx, BFSXx, or BDXx when configured as a general-purpose output. tsu(BGPIO-COH) MIN MAX –2 7 UNIT ns td(COH-BGPIO) CLKOUT th(COH-BGPIO) BGPIOx Input Mode† BGPIOx Output Mode‡ † BGPIOx refers to BCLKRx, BFSRx, BDRx, BCLKXx, or BFSXx when configured as a general-purpose input. ‡ BGPIOx refers to BCLKRx, BFSRx, BCLKXx, BFSXx, or BDXx when configured as a general-purpose output. Figure 4–22. McBSP General-Purpose I/O Timings 56 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.14.3 McBSP Transmit and Receive Timing Using CLKR/X as a Clock Source Input to the Sample Rate Generator (SRGR) The 5401 McBSP has been enhanced to allow the use of an external clock source as an input to the sample rate generator (SRGR). This capability is enabled by reconfiguring either the transmit shift clock (BCLKX), or the receive shift clock (BCLKR) to function as the input clock to the SRGR. When the McBSP is used in this mode, the output of the SRGR is then used as a common shift clock for both the receive and transmit sections of the serial port. This clock is output on the other of these two pins. Therefore, if BCLKX is reconfigured as the SRGR input, then BCLKR is used as the shift clock for both the transmit and receive sections of the McBSP. If BCLKR is reconfigured as the SRGR input, then BCLKX is used as the shift clock for both the transmit and receive sections of the McBSP. The relevant timings for this mode of operation are depicted in Figure 4–23. The other timings for serial port operations are the same as when using an internal clock source as described in the standard McBSP transmit and receive timings presented in section 4.14.1. Table 4–24 and Table 4–25 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–23). Table 4–24. McBSP Sample Rate Generator Timing Requirements MIN MAX 2H UNIT tc(BCKS) tw(BCKSH) Cycle time, SRGR clock input Pulse duration, SRGR clock input high H–6 H+3 ns ns tw(BCKSL) tr(BCKS) Pulse duration, SRGR clock input low H–6 H+3 ns Rise time, SRGR clock input 10 ns tf(BCKS) Fall time, SRGR clock input 10 ns Table 4–25. McBSP Sample Rate Generator Switching Characteristics PARAMETER td(BCKSH-BCLKRXH) Delay time, from SRGR clock input to SRGR output December 2000 – Revised May 2001 MIN MAX 1 15 SPRS153B UNIT ns 57 Electrical Specifications tc(BCKS) tw(BCKSH) tr(BCKS) tw(BCKSL) SRGR Input (BCLKX/BCLKR) td(BCKSH–BCKRXH) tf(BCKS) SRGR Output (BCLKR/BCLKX) Receive Signals Referenced to Sample Rate Generator Output BFSR BDR Bit (n–1) (n–2) (n–3) (n–4) Transmit Signals Referenced to Sample Rate Generator Output BFSX BDX Bit 0 Bit (n–1) (n–2) (n–3) (n–4) Figure 4–23. McBSP Sample Rate Generator Timings 58 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.14.4 McBSP as SPI Master or Slave Timing Table 4–26 through Table 4–33 assume testing over recommended operating conditions and H = 0.5tc(CO) (see Figure 4–24 through Figure 4–27). Table 4–26. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 0)† MASTER MIN tsu(BDRV-BCKXL) th(BCKXL-BDRV) Setup time, BDR valid before BCLKX low tsu(BFXL-BCKXH) Setup time, BFSX low before BCLKX high SLAVE MAX MIN MAX UNIT 11 – 12H ns 2 7 + 12H ns 12 ns 32H ns Hold time, BDR valid after BCLKX low tc(BCKX) Cycle time, BCLKX 12H † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. Table 4–27. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 0)† MASTER‡ SLAVE PARAMETER th(BCKXL-BFXL) td(BFXL-BCKXH) Hold time, BFSX low after BCLKX low§ Delay time, BFSX low to BCLKX high¶ td(BCKXH-BDXV) Delay time, BCLKX high to BDX valid tdis(BCKXL-BDXHZ) Disable time, BDX high impedance following last data bit from BCLKX low tdis(BFXH-BDXHZ) Disable time, BDX high impedance following last data bit from BFSX high MIN MAX T –5 T +6 C–7 C +5 –4 6 C–4 C+5 MIN MAX UNIT ns ns 6H +3 10H + 17 ns ns 2H+ 2 6H + 19 ns td(BFXL-BDXV) Delay time, BFSX low to BDX valid 4H –4 8H + 19 ns † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. ‡ T = BCLKX period = (1 + CLKGDV) * 2H C = BCLKX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even § FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX and BFSR is inverted before being used internally. CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP ¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock (BCLKX). LSB tsu(BFXL-BCKXH) tc(BCKX) MSB BCLKX th(BCKXL-BFXL) td(BFXL-BCKXH) BFSX tdis(BFXH-BDXHZ) tdis(BCKXL-BDXHZ) BDX Bit 0 td(BFXL-BDXV) td(BCKXH-BDXV) Bit(n-1) tsu(BDRV-BCLXL) BDR Bit 0 (n-2) (n-3) (n-4) th(BCKXL-BDRV) Bit(n-1) (n-2) (n-3) (n-4) Figure 4–24. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 0 December 2000 – Revised May 2001 SPRS153B 59 Electrical Specifications Table 4–28. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 0)† MASTER MIN tsu(BDRV-BCKXH) th(BCKXH-BDRV) Setup time, BDR valid before BCLKX high tsu(BFXL-BCKXH) Setup time, BFSX low before BCLKX high Hold time, BDR valid after BCLKX high SLAVE MAX MIN MAX UNIT 14 2 – 12H ns 6 5 + 12H ns 12 ns 32H ns tc(BCKX) Cycle time, BCLKX 12H † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. Table 4–29. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 0)† MASTER‡ SLAVE PARAMETER MIN MAX C–5 C+6 MIN MAX UNIT th(BCKXL-BFXL) td(BFXL-BCKXH) Hold time, BFSX low after BCLKX low§ Delay time, BFSX low to BCLKX high¶ T–7 T +5 td(BCKXL-BDXV) Delay time, BCLKX low to BDX valid –4 8 6H +3 10H + 17 ns tdis(BCKXL-BDXHZ) Disable time, BDX high impedance following last data bit from BCLKX low –4 6 6H +1 10H + 19 ns ns ns td(BFXL-BDXV) Delay time, BFSX low to BDX valid D–4 D +6 4H – 4 8H + 19 ns † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. ‡ T = BCLKX period = (1 + CLKGDV) * 2H C = BCLKX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even D = BCLKX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even § FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX and BFSR is inverted before being used internally. CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP ¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock (BCLKX). LSB tc(BCKX) MSB tsu(BFXL-BCKXH) BCLKX td(BFXL-BCKXH) th(BCKXL-BFXL) BFSX tdis(BCKXL-BDXHZ) BDX td(BCKXL-BDXV) td(BFXL-BDXV) Bit 0 Bit(n-1) tsu(BDRV-BCKXH) BDR Bit 0 (n-2) (n-3) (n-4) th(BCKXH-BDRV) Bit(n-1) (n-2) (n-3) (n-4) Figure 4–25. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 0 60 SPRS153B December 2000 – Revised May 2001 Electrical Specifications Table 4–30. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 10b, CLKXP = 1)† MASTER MIN tsu(BDRV-BCKXH) th(BCKXH-BDRV) Setup time, BDR valid before BCLKX high tsu(BFXL-BCKXL) Setup time, BFSX low before BCLKX low Hold time, BDR valid after BCLKX high SLAVE MAX MIN MAX UNIT 14 2 – 12H ns 6 5 + 12H ns 12 ns 32H ns tc(BCKX) Cycle time, BCLKX 12H † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. Table 4–31. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 10b, CLKXP = 1)† MASTER‡ PARAMETER th(BCKXH-BFXL) td(BFXL-BCKXL) Hold time, BFSX low after BCLKX high§ Delay time, BFSX low to BCLKX low¶ td(BCKXL-BDXV) Delay time, BCLKX low to BDX valid tdis(BCKXH-BDXHZ) Disable time, BDX high impedance following last data bit from BCLKX high tdis(BFXH-BDXHZ) Disable time, BDX high impedance following last data bit from BFSX high SLAVE MIN MAX T–5 T+6 D–7 D+5 –4 8 D–4 D+5 MIN MAX UNIT ns ns 6H + 3 10H + 17 ns ns 2H + 2 6H + 19 ns td(BFXL-BDXV) Delay time, BFSX low to BDX valid 4H – 4 8H + 19 ns † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. ‡ T = BCLKX period = (1 + CLKGDV) * 2H D = BCLKX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even § FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX and BFSR is inverted before being used internally. CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP ¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock (BCLKX). tsu(BFXL-BCKXL) LSB tc(BCKX) MSB BCLKX th(BCKXH-BFXL) td(BFXL-BCKXL) BFSX tdis(BFXH-BDXHZ) tdis(BCKXH-BDXHZ) BDX Bit 0 td(BFXL-BDXV) td(BCKXL-BDXV) Bit(n-1) tsu(BDRV-BCKXH) BDR Bit 0 (n-2) (n-3) (n-4) th(BCKXH-BDRV) Bit(n-1) (n-2) (n-3) (n-4) Figure 4–26. McBSP Timing as SPI Master or Slave: CLKSTP = 10b, CLKXP = 1 December 2000 – Revised May 2001 SPRS153B 61 Electrical Specifications Table 4–32. McBSP as SPI Master or Slave Timing Requirements (CLKSTP = 11b, CLKXP = 1)† MASTER MIN tsu(BDRV-BCKXL) th(BCKXL-BDRV) Setup time, BDR valid before BCLKX low tsu(BFXL-BCKXL) Setup time, BFSX low before BCLKX low Hold time, BDR valid after BCLKX low SLAVE MAX MIN UNIT MAX 11 – 12H ns 2 5 + 12H ns 12 ns 32H ns tc(BCKX) Cycle time, BCLKX 12H † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. Table 4–33. McBSP as SPI Master or Slave Switching Characteristics (CLKSTP = 11b, CLKXP = 1)† MASTER‡ SLAVE PARAMETER MIN MAX D–5 D+6 MIN UNIT MAX th(BCKXH-BFXL) td(BFXL-BCKXL) Hold time, BFSX low after BCLKX high§ Delay time, BFSX low to BCLKX low¶ T–7 T+5 td(BCKXH-BDXV) Delay time, BCLKX high to BDX valid –4 8 6H + 3 10H + 17 ns tdis(BCKXH-BDXHZ) Disable time, BDX high impedance following last data bit from BCLKX high –4 6 6H + 1 10H + 19 ns ns ns td(BFXL-BDXV) Delay time, BFSX low to BDX valid C–4 C+6 4H – 4 8H + 19 ns † For all SPI slave modes, CLKG is programmed as 1/2 of the CPU clock by setting CLKSM = CLKGDV = 1. ‡ T = BCLKX period = (1 + CLKGDV) * 2H C = BCLKX low pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2) * 2H when CLKGDV is even D = BCLKX high pulse width = T/2 when CLKGDV is odd or zero and = (CLKGDV/2 + 1) * 2H when CLKGDV is even § FSRP = FSXP = 1. As a SPI master, BFSX is inverted to provide active-low slave-enable output. As a slave, the active-low signal input on BFSX and BFSR is inverted before being used internally. CLKXM = FSXM = 1, CLKRM = FSRM = 0 for master McBSP CLKXM = CLKRM = FSXM = FSRM = 0 for slave McBSP ¶ BFSX should be low before the rising edge of clock to enable slave devices and then begin a SPI transfer at the rising edge of the master clock (BCLKX). LSB tsu(BFXL-BCKXL) tc(BCKX) MSB BCLKX th(BCKXH-BFXL) td(BFXL-BCKXL) BFSX tdis(BCKXH-BDXHZ) BDX td(BCKXH-BDXV) td(BFXL-BDXV) Bit 0 Bit(n-1) tsu(BDRV-BCKXL) BDR Bit 0 (n-2) (n-3) (n-4) th(BCKXL-BDRV) Bit(n-1) (n-2) (n-3) (n-4) Figure 4–27. McBSP Timing as SPI Master or Slave: CLKSTP = 11b, CLKXP = 1 62 SPRS153B December 2000 – Revised May 2001 Electrical Specifications 4.15 Host-Port Interface (HPI8) Timing Table 4–34 and Table 4–35 assume testing over recommended operating conditions and H = 0.5 * processor clock (see Figure 4–28 through Figure 4–31). In the following tables, DS refers to the logical OR of HCS, HDS1, and HDS2; HDx refers to any of the HPI data bus pins (HD0, HD1, HD2, etc.); and HAD stands for HCNTL0, HCNTL1, and HR/W. Table 4–34. HPI8 Timing Requirements† MIN MAX UNIT tsu(HBV-DSL) th(DSL-HBV) Setup time, HBIL and HAD valid before DS low or before HAS low‡§ Hold time, HBIL and HAD valid after DS low or after HAS low‡§ 7 ns 7 ns tsu(HSL-DSL) tw(DSL) Setup time, HAS low before DS low 12 ns Pulse duration, DS low 20 ns tw(DSH) tsu(HDV-DSH) Pulse duration, DS high 10 ns Setup time, HDx valid before DS high, HPI write 4 ns th(DSH-HDV)W tsu(GPIO-COH) Hold time, HDx valid after DS high, HPI write 5 ns Setup time, HDx input valid before CLKOUT high, HDx configured as general-purpose input 8 ns th(GPIO-COH) Hold time, HDx input valid after CLKOUT high, HDx configured as general-purpose input 2 ns † GPIO refers to the HD pins when they are configured as general-purpose input/outputs. ‡ HAD refers to HCNTL0, HCNTL1, and H/RW. § When the HAS signal is used to latch the control signals, this timing refers to the falling edge of the HAS signal. Otherwise, when HAS is not used (always high), this timing refers to the falling edge of DS. December 2000 – Revised May 2001 SPRS153B 63 Electrical Specifications Table 4–35. HPI8 Switching Characteristics PARAMETER ten(DSL-HD) td(DSL-HDV1) d(DSL HDV1) Enable time, HD driven from DS low Delay y time, DS low to HDx valid for first byte of an HPI read MIN MAX UNIT 0 18 ns Case 1a: Memory accesses when DMAC is active in 16-bit mode and tw(DSH) < 18H† Case 1b: Memory accesses when DMAC is active in 16-bit mode and tw(DSH) ≥ 18H† Case 1c: Memory access when DMAC is active in 32-bit mode and tw(DSH) < 26H† 18H+18 – tw(DSH) 18 26H+18 – tw(DSH) ns Case 1d: Memory access when DMAC is active in 32-bit mode and tw(DSH) ≥ 26H† 18 Case 2a: Memory accesses when DMAC is inactive and tw(DSH) < 10H† 10H+18 – tw(DSH) Case 2b: Memory accesses when DMAC is inactive and tw(DSH) ≥ 10H† 18 Case 3: Register accesses 18 td(DSL-HDV2) th(DSH-HDV)R Delay time, DS low to HDx valid for second byte of an HPI read tv(HYH-HDV) td(DSH-HYL) Valid time, HDx valid after HRDY high 11 Delay time, DS high to HRDY low (see Note 1) 18 ns Case 1a: Memory accesses when DMAC is active in 16-bit mode† 18H+18 ns Case 1b: Memory accesses when DMAC is active in 32-bit mode† 26H+18 ns Case 2: Memory accesses when DMAC is inactive† 10H+18 Case 3: Write accesses to HPIC register (see Note 2) 6H+18 td(DSH-HYH) Hold time, HDx valid after DS high, for a HPI read Delay time, time DS high to HRDY high 1 18 ns 7 ns ns td(HCS-HRDY) td(COH-HYH) Delay time, HCS low/high to HRDY low/high 18 ns Delay time, CLKOUT high to HRDY high 5 ns td(COH-HTX) Delay time, CLKOUT high to HINT change 7 ns td(COH-GPIO) Delay time, CLKOUT high to HDx output change. HDx is configured as a general-purpose output.‡ 8 ns NOTES: 1. The HRDY output is always high when the HCS input is high, regardless of DS timings. 2. This timing applies to the first byte of an access, when writing a one to the DSPINT bit or HINT bit of the HPIC register. All other writes to the HPIC occur asynchronoulsy, and do not cause HRDY to be deasserted. † DMAC stands for direct memory access (DMA) controller. The HPI8 shares the internal DMA bus with the DMAC, thus HPI8 access times are affected by DMAC activity. ‡ GPIO refers to the HD pins when they are configured as general-purpose input/outputs. 64 SPRS153B December 2000 – Revised May 2001 Electrical Specifications Second Byte First Byte Second Byte HAS tsu(HBV-DSL) tsu(HSL-DSL) th(DSL-HBV) HAD† Valid Valid tsu(HBV-DSL)‡ th(DSL-HBV)‡ HBIL HCS tw(DSH) tw(DSL) HDS td(DSH-HYH) td(DSH-HYL) HRDY ten(DSL-HD) td(DSL-HDV2) th(DSH-HDV)R HD READ Valid td(DSL-HDV1) Valid tsu(HDV-DSH) Valid tv(HYH-HDV) th(DSH-HDV)W HD WRITE Valid Valid Valid td(COH-HYH) CLKOUT † HAD refers to HCNTL0, HCNTL1, and HR/W. ‡ When HAS is not used (HAS always high) Figure 4–28. Using HDS to Control Accesses (HCS Always Low) December 2000 – Revised May 2001 SPRS153B 65 Electrical Specifications Second Byte First Byte Second Byte HCS HDS td(HCS-HRDY) HRDY Figure 4–29. Using HCS to Control Accesses CLKOUT td(COH-HTX) HINT Figure 4–30. HINT Timing CLKOUT tsu(GPIO-COH) th(GPIO-COH) GPIOx Input Mode† td(COH-GPIO) GPIOx Output Mode† † GPIOx refers to HD0, HD1, HD2, ...HD7, when the HD bus is configured for general-purpose input/output (I/O). Figure 4–31. GPIOx† Timings 66 SPRS153B December 2000 – Revised May 2001 Mechanical Data 5 Mechanical Data 5.1 GGU (S-PBGA-N144) PLASTIC BALL GRID ARRAY PACKAGE 12,10 SQ 11,90 9,60 TYP 0,80 0,80 N M L K J H G F E D C B A 1 2 3 4 5 6 7 8 9 10 11 12 13 0,95 0,85 1,40 MAX Seating Plane 0,12 0,08 0,55 0,45 0,08 M 0,45 0,35 0,10 4073221-2/B 08/00 NOTES: A. All linear dimensions are in millimeters. B. This drawing is subject to change without notice. C. MicroStar BGA configuration Figure 5–1. TMS320VC5401 144-Ball MicroStar BGA Plastic Ball Grid Array Package MicroStar BGA is a trademark of Texas Instruments. December 2000 – Revised May 2001 SPRS153B 67 Mechanical Data 5.2 PGE (S-PQFP-G144) PLASTIC QUAD FLATPACK 108 73 109 72 0,27 0,17 0,08 M 0,50 144 0,13 NOM 37 1 36 Gage Plane 17,50 TYP 20,20 SQ 19,80 22,20 SQ 21,80 0,25 0,05 MIN 0°– 7° 0,75 0,45 1,45 1,35 Seating Plane 0,08 1,60 MAX 4040147 / C 10/96 NOTES: A. All linear dimensions are in millimeters. B. This drawing is subject to change without notice. C. Falls within JEDEC MS-026 Figure 5–2. TMS320VC5401 144-Pin Low-Profile Quad Flatpack 68 SPRS153B December 2000 – Revised May 2001