TMS320C6000 DSP/BIOS 5.x Application Programming Interface (API .

Transcription

TMS320C6000 DSP/BIOS 5.xApplication Programming Interface(API) Reference GuideLiterature Number: SPRU403RNovember 2010

IMPORTANT NOTICETexas Instruments Incorporated and its subsidiaries (TI) reserve the right to make corrections, modifications, enhancements,improvements, and other changes to its products and services at any time and to discontinue any product or service without notice.Customers should obtain the latest relevant information before placing orders and should verify that such information is current andcomplete. All products are sold subject to TI's terms and conditions of sale supplied at the time of order acknowledgment.TI warrants performance of its hardware products to the specifications applicable at the time of sale in accordance with TI's standardwarranty. Testing and other quality control techniques are used to the extent TI deems necessary to support this warranty. Exceptwhere mandated by government requirements, testing of all parameters of each product is not necessarily performed.TI assumes no liability for applications assistance or customer product design. Customers are responsible for their products andapplications using TI components. To minimize the risks associated with customer products and applications, customers shouldprovide adequate design and operating safeguards.TI does not warrant or represent that any license, either express or implied, is granted under any TI patent right, copyright, maskwork right, or other TI intellectual property right relating to any combination, machine, or process in which TI products or servicesare used. Information published by TI regarding third-party products or services does not constitute a license from TI to use suchproducts or services or a warranty or endorsement thereof. Use of such information may require a license from a third party underthe patents or other intellectual property of the third party, or a license from TI under the patents or other intellectual property of TI.Reproduction of information in TI data books or data sheets is permissible only if reproduction is without alteration and is accompaniedby all associated warranties, conditions, limitations, and notices. Reproduction of this information with alteration is an unfair anddeceptive business practice. TI is not responsible or liable for such altered documentation. Information of third parties may be subjectto additional restrictions.Resale of TI products or services with statements different from or beyond the parameters stated by TI for that product or servicevoids all express and any implied warranties for the associated TI product or service and is an unfair and deceptive business practice.TI is not responsible or liable for any such statements.TI products are not authorized for use in safety-critical applications (such as life support) where a failure of the TI product wouldreasonably be expected to cause severe personal injury or death, unless officers of the parties have executed an agreementspecifically governing such use. Buyers represent that they have all necessary expertise in the safety and regulatory ramificationsof their applications, and acknowledge and agree that they are solely responsible for all legal, regulatory and safety-related requirements concerning their products and any use of TI products in such safety-critical applications, notwithstanding any applicationsrelated information or support that may be provided by TI. Further, Buyers must fully indemnify TI and its representatives againstany damages arising out of the use of TI products in such safety-critical applications.TI products are neither designed nor intended for use in military/aerospace applications or environments unless the TI products arespecifically designated by TI as military-grade or "enhanced plastic." Only products designated by TI as military-grade meet militaryspecifications. Buyers acknowledge and agree that any such use of TI products which TI has not designated as military-grade issolely at the Buyer's risk, and that they are solely responsible for compliance with all legal and regulatory requirements in connectionwith such use.TI products are neither designed nor intended for use in automotive applications or environments unless the specific TI productsare designated by TI as compliant with ISO/TS 16949 requirements. Buyers acknowledge and agree that, if they use any nondesignated products in automotive applications, TI will not be responsible for any failure to meet such requirements.Following are URLs where you can obtain information on other Texas Instruments products and application ti.comAudioData /audiowww.ti.com/automotiveDLP Pdsp.ti.comDigital Controlwww.ti.com/digitalcontrolClocks and Logiclogic.ti.comOptical Networkingwww.ti.com/opticalnetworkPower /telephonyRFIDwww.ti-rfid.comVideo & Imagingwww.ti.com/videoRF/IF and ZigBee sMailing Address: Texas Instruments, Post Office Box 655303 Dallas, Texas 75265Copyright 2010, Texas Instruments Incorporated

This is a draft version printed from file: apipref.fm on 11/9/10PrefaceRead This FirstAbout This ManualDSP/BIOS gives developers of mainstream applications on TexasInstruments TMS320C6000TM DSP devices the ability to develop embeddedreal-time software. DSP/BIOS provides a small firmware real-time library andeasy-to-use tools for real-time tracing and analysis.You should read and become familiar with the TMS320 DSP/BIOS User’sGuide, a companion volume to this API reference guide.Before you read this manual, you may use the Code Composer Studio onlinetutorial and the DSP/BIOS section of the online help to get an overview ofDSP/BIOS. This manual discusses various aspects of DSP/BIOS in depthand assumes that you have at least a basic understanding of DSP/BIOS.Notational ConventionsThis document uses the following conventions: Program listings, program examples, and interactive displays are shownin a special typeface. Examples use a bold version of thespecial typeface for emphasis; interactive displays use a bold versionof the special typeface to distinguish commands that you enter from itemsthat the system displays (such as prompts, command output, errormessages, etc.).Here is a sample program listing:Void copy(HST Obj *input, HST Obj *output){PIP Obj*in, *out;Uns*src, *dst;Unssize;}iii

Related Documentation From Texas Instruments Square brackets ( [ and ] ) identify an optional parameter. If you use anoptional parameter, you specify the information within the brackets.Unless the square brackets are in a bold typeface, do not enter thebrackets themselves. Throughout this manual, 62 represents the two-digit numeric appropriateto your specific DSP platform. For example, DSP/BIOS assemblylanguage API header files for the C6000 platform are described as havinga suffix of .h62. For the C64x or C67x DSP platform, substitute either 64or 67 for each occurrence of 62. Information specific to a particular device is designated with one of thefollowing icons:Related Documentation From Texas InstrumentsThe following books describe TMS320 devices and related support tools. Toobtain a copy of any of these TI documents, call the Texas InstrumentsLiterature Response Center at (800) 477-8924. When ordering, pleaseidentify the book by its title and literature number.TMS320 DSP/BIOS User's Guide (literature number SPRU423) provides an overview and description of the DSP/BIOS real-time operating system.TMS320C6000 Optimizing C Compiler User's Guide (literature numberSPRU187) describes the c6000 C/C compiler and the assembly optimizer.This C/C compiler accepts ANSI standard C/C source code and produces assembly language source code for the C6000 generation of devices.TMS320C6000 Programmer's Guide (literature number SPRU189) describesthe c6000 CPU architecture, instruction set, pipeline, and interrupts for thesedigital signal processors.TMS320c6000 Peripherals Reference Guide (literature number SPRU190)describes common peripherals available on the TMS320C6000 family ofdigital signal processors. This book includes information on the internal dataand program memories, the external memory interface (EMIF), the host port,multichannel buffered serial ports, direct memory access (DMA), clocking andphase-locked loop (PLL), and the power-down modes.iv

Related DocumentationTMS320C6000 Code Composer Studio Tutorial Online Help (literature numberSPRH125) introduces the Code Composer Studio integrated developmentenvironment and software tools. Of special interest to DSP/BIOS users arethe Using DSP/BIOS lessons.TMS320C6000 Chip Support LIbrary API Reference Guide (literature numberSPRU401) contains a reference for the Chip Support Library (CSL) applicationprogramming interfaces (APIs). The CSL is a set of APIs used to configureand control all on-chip peripherals.Related DocumentationYou can use the following books to supplement this reference guide:The C Programming Language (second edition), by Brian W. Kernighanand Dennis M. Ritchie, published by Prentice-Hall, Englewood Cliffs, NewJersey, 1988Programming in C, Kochan, Steve G., Hayden Book CompanyProgramming Embedded Systems in C and C , by Michael Barr, AndyOram (Editor), published by O'Reilly & Associates; ISBN: 1565923545,February 1999Real-Time Systems, by Jane W. S. Liu, published by Prentice Hall; ISBN:013099651, June 2000Principles of Concurrent and Distributed Programming (Prentice HallInternational Series in Computer Science), by M. Ben-Ari, published byPrentice Hall; ISBN: 013711821X, May 1990American National Standard for Information Systems-ProgrammingLanguage C X3.159-1989, American National Standards Institute (ANSIstandard for C); (out of print)TrademarksMS-DOS, Windows, and Windows NT are trademarks of MicrosoftCorporation.The Texas Instruments logo and Texas Instruments are registeredtrademarks of Texas Instruments. Trademarks of Texas Instruments include:TI, XDS, Code Composer, Code Composer Studio, Probe Point, CodeExplorer, DSP/BIOS, RTDX, Online DSP Lab, BIOSuite, SPOX, TMS320,TMS320C28x, TMS320C54x, TMS320C55x, TMS320C62x, TMS320C64x,TMS320C67x, TMS320C5000, and TMS320C6000.Read This Firstv

TrademarksAll other brand or product names are trademarks or registered trademarks oftheir respective companies or organizations.November 9, 2010vi

This is a draft version printed from file: apirefTOC.fm on 11/9/10Contents1API Functional Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-1This chapter provides an overview to the TMS320C6000 DSP/BIOS API functions.1.1DSP/BIOS Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-21.2Naming Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-31.3Assembly Language Interface Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-31.4DSP/BIOS Tconf Overview. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-41.5List of Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1-52Application Program Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1This chapter describes the DSP/BIOS API modules and functions.2.1ATM Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-22.2BCACHE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-152.3BUF Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-312.4C62 and C64 Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-422.5CLK Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-512.6DEV Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-712.7ECM Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1182.8GBL Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1272.9GIO Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1432.10 HOOK Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1622.11 HST Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1682.12 HWI Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-1732.13 IDL Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2022.14 LCK Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2062.15 LOG Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2132.16 MBX Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2302.17 MEM Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2362.18 MPC Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2602.19 MSGQ Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-2702.20 PIP Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3062.21 POOL Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3262.22 PRD Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3312.23 PWRM Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3392.24 QUE Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-3882.25 RTDX Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4052.26 SEM Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-421vii

Contents2.272.282.292.302.312.322.33SIO Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .STS Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .SWI Module. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .SYS Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .TRC Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .TSK Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .std.h and stdlib.h functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2-4342-4642-4742-5032-5192-5242-562AFunction Callability and Error Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-1This appendix provides tables describing TMS320C6000 errors and function callability.A.1Function Callability Table . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-2A.2DSP/BIOS Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A-12BC6000 DSP/BIOS Register Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-1This appendix provides tables describing the TMS320C6000TM register conventions in terms ofpreservation across multi-threaded context switching and preconditions.B.1Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2B.2Register Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B-2CC64x Exception Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-1This appendix provides describes support for C64x exception handling.C.1C64x Exception Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-2C.2Using the DSP/BIOS EXC Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-3C.3Data Types and Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-6C.4EXC Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-7C.5MPC Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C-16viii

This is a draft version printed from file: apireflof.fm on 11/9/10Figures2-12-22-32-42-52-62-72-8Writers and Reader of a Message Queue . 2-273Components of the MSGQ Architecture . 2-274MSGQ Function Calling Sequence . 2-274Pipe Schematic . 2-308Allocators and Message Pools. 2-327Buffer Layout as Defined by STATICPOOL Params . 2-329PRD Tick Cycles . 2-336Statistics Accumulation on the Host. 2-467ix

This is a draft version printed from file: apireflot.fm on 12-122-13A-1A-2A-3B-1xDSP/BIOS Modules . 1-2DSP/BIOS Operations . 1-5Timer Counter Rates, Targets, and Resets . 2-53High-Resolution Time Determination . 2-54HWI interrupts for the TMS320C6000 . 2-182Conversion Characters for LOG printf . 2-224Typical Memory Segments for c6x EVM Boards. 2-248Typical Memory Segment for c6711 DSK Boards . 2-248Statistics Units for HWI, PIP, PRD, and SWI Modules . 2-465Conversion Characters Recognized by SYS printf . 2-510Conversion Characters Recognized by SYS sprintf . 2-512Conversion Characters Recognized by SYS vprintf . 2-514Conversion Characters Recognized by SYS vsprintf . 2-516Events and Statistics Traced by TRC. 2-519Function Callability. A-2RTS Function Calls . A-11Error Codes. A-12Register and Status Bit Handling . B-2

Chapter 1API Functional OverviewThis chapter provides an overview to the TMS320C6000 DSP/BIOS API functions.TopicPage1.1DSP/BIOS Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–21.2Naming Conventions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–31.3Assembly Language Interface Overview. . . . . . . . . . . . . . . . . . . . . . 1–31.4DSP/BIOS Tconf Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–41.5List of Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–51-1

DSP/BIOS Modules1.1DSP/BIOS ModulesTable 1-1.1-2DSP/BIOS ModulesModuleDescriptionATM ModuleAtomic functions written in assembly languageBCACHE ModuleCache operation manager (C64x only)BUF ModuleMaintains buffer pools of fixed size buffersC62 and C64 ModulesTarget-specific functionsCLK ModuleSystem clock managerDEV ModuleDevice driver interfaceECM ModuleEvent combiner manager (C64x only)EXC ModuleException manager (C64x only)GBL ModuleGlobal setting managerGIO ModuleI/O module used with IOM mini-driversHOOK ModuleHook function managerHST ModuleHost channel managerHWI ModuleHardware interrupt managerIDL ModuleIdle function and processing loop managerLCK ModuleResource lock managerLOG ModuleEvent Log managerMBX ModuleMailboxes managerMEM ModuleMemory managerMPC ModuleMemory protection manager (C64x only)MSGQ ModuleVariable-length message managerPIP ModuleBuffered pipe managerPOOL ModuleAllocator interface modulePRD ModulePeriodic function managerPWRM ModuleReduce application’s power consumptionQUE ModuleQueue managerRTDX ModuleReal-time data exchange managerSEM ModuleSemaphores managerSIO ModuleStream I/O managerSTS ModuleStatistics object managerSWI ModuleSoftware interrupt manager

Naming Conventions1.2ModuleDescriptionSYS ModuleSystem services managerTRC ModuleTrace managerTSK ModuleMultitasking managerstd.h and stdlib.h functionsStandard C library I/O functionsNaming ConventionsThe format for a DSP/BIOS operation name is a 3- or 4-letter prefix forthe module that contains the operation, an underscore, and the action.1.3Assembly Language Interface OverviewThe assembly interface that was provided for some of the DSP/BIOSAPIs has been deprecated. They are no longer documented.Assembly functions can call C functions. Remember that the C compileradds an underscore prefix to function names, so when calling a Cfunction from assembly, add an underscore to the beginning of the Cfunction name. For example, call myfunction instead of myfunction. Seethe TMS320C6000 Optimizing Compiler User’s Guide for more details.When you are using the DSP/BIOS Configuration Tool, use a leadingunderscore before the name of any C function you configure. (TheDSP/BIOS Configuration Tool generates assembly code, but does notadd the underscore automatically.) If you are using Tconf, do not add anunderscore before the function name; Tconf internally adds theunderscore needed to call a C function from assembly.All DSP/BIOS APIs follow standard C calling conventions as documentedin the C programmer’s guide for the device you are using.DSP/BIOS APIs save and restore context for each thread during acontext switch. Your code should simply follow standard C register usageconventions. Code written in assembly language should be written toconform to the register usage model specified in the C compiler manualfor your device. When writing assembly language, take special care tomake sure the C context is preserved. For example, if you change theAMR register on the ‘C6000, you should be sure to change it back beforereturning from your assembly language routine. See the Register Usageappendix in this book to see how DSP/BIOS uses specific registers.API Functional Overview1-3

DSP/BIOS Tconf Overview1.4DSP/BIOS Tconf OverviewThe section describing each modules in this manual lists properties thatcan be configured in Tconf scripts, along with their types and defaultvalues. The sections on manager properties and instance properties alsoprovide Tconf examples that set each property.For details on Tconf scripts, see the DSP/BIOS Tconf User’s Guide(SPRU007). The language used is JavaScript with an object modelspecific to the needs of DSP/BIOS configuration.In general, property names of Module objects are in all uppercase letters.For example, "STACKSIZE". Property names of Instance objects beginwith a lowercase word. Subsequent words have their first lettercapitalized. For example, "stackSize".Default values for many properties are dependent on the values of otherproperties. The defaults shown are those that apply if related propertyvalues have not been modified. The defaults shown are for ’C62x and’C67x. Memory segment defaults are different for ’C64x. Default valuesfor many HWI properties are different for each instance.The data types shown for the properties are not used as syntax in Tconfscripts. However, they do indicate the type of values that are valid foreach property. The types used are as follows:1-4 Arg. Arg properties hold arguments to pass to program functions.They may be strings, integers, labels, or other types as needed bythe program function. Bool. You may assign a value of either true or 1 to set a Booleanproperty to true. You may assign a value of either false or 0 (zero) toset a Boolean property to false. Do not set a Boolean property to thequoted string "true" or "false". EnumInt. Enumerated integer properties accept a set of valid integervalues. These values are displayed in a drop-down list in theDSP/BIOS Configuration Tool. EnumString. Enumerated string properties accept certain stringvalues. These values are displayed in a drop-down list in theDSP/BIOS Configuration Tool. Extern. Properties that hold function names use the Extern type. Inorder to specify a function Extern, use the prog.extern() method asshown in the examples to refer to objects defined as asm, C, or C language symbols. The default language is C. Int16. Integer properties hold 16-bit unsigned integer values. Thevalue range accepted for a property may have additional limits.

List of Operations1.5 Int32. Long integer properties hold 32-bit unsigned integer values.The value range accepted for a property may have additional limits. Numeric. Numeric properties hold either 32-bit signed or unsignedvalues or decimal values, as appropriate for the property. Reference. Properties that reference other configures objectscontain an object reference. Use the prog.get() method to specify areference to another object. String. String properties hold text strings.List of OperationsTable 1-2.DSP/BIOS OperationsATM module operationsFunctionOperationATM andi, ATM anduAtomically AND memory location with mask and return previous valueATM cleari, ATM clearuAtomically clear memory location and return previous valueATM deci, ATM decuAtomically decrement memory and return new valueATM inci, ATM incuAtomically increment memory and return new valueATM ori, ATM oruAtomically OR memory location with mask and return previous valueATM seti, ATM setuAtomically set memory and return previous valueBCACHE module operations (C64x only)FunctionOperationBCACHE getMarGet a MAR register valueBCACHE getModeGet L1D, L1P, or L2 cache operating modeBCACHE getSizeGet the L1D, L1P, and L2 cache sizesBCACHE invInvalidate the specified memory range in cachesBCACHE invL1pAllInvalidates all lines in L1P cacheBCACHE setMarSet a MAR register valueBCACHE setModeSet L1D, L1P, or L2 cache operating modeAPI Functional Overview1-5

List of OperationsFunctionOperationBCACHE setSizeSet the L1D, L1P, and L2 cache sizesBCACHE waitWaits for a previous cache operation to completeBCACHE wbWrites back a range of memory from cachesBCACHE wbAllPerforms a global write back from cachesBCACHE wbInvWrites back and invalidates a range of memoryBCACHE wbInvAllPerforms a global write back and invalidateBUF module operationsFunctionOperationBUF allocAllocate a fixed memory buffer out of the buffer poolBUF createDynamically create a buffer poolBUF deleteDelete a dynamically created buffer poolBUF freeFree a fixed memory buffer into the buffer poolBUF maxbuffCheck the maximum number of buffers used from the buffer poolBUF statDetermine the status of a buffer pool (buffer size, number of free buffers, totalnumber of buffers in the pool)C62/64 operationsFunctionOperationC62 disableIER,C64 disableIERDisable certain maskable interruptsC62 enableIER,C64 enableIEREnable certain maskable interruptsC62 plug, C64 plugC function to plug an interrupt vector1-6

List of OperationsCLK module operationsFunctionOperationCLK countspmsNumber of hardware timer counts per millisecondCLK cpuCyclesPerHtimeReturn multiplier for converting high-res time to CPU cyclesCLK cpuCyclesPerLtim

Resale of TI 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 and is an unfair and deceptive business p ractice. TI is not responsible or liable for any such statements.