Part Number Hot Search : 
ENA2120 MTRS9520 NJM2283 BCW30 01907 7658A MA43002 TCZL18B
Product Description
Full Text Search
 

To Download DSP56009EVMUM Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  dsp56009evm user? manual motorola, incorporated semiconductor products sector dsp division 6501 william cannon drive west austin, tx 78735-8598
introduction this document supports the dsp56009 evaluation module (dsp56009evm) including a description of its basic structure and operation, the equipment required to use it, the specifications of the key components, the provided software (such as the demonstration code and the software required to develop and debug sophisticated applications), schematic diagrams, and a parts list. section 1 is a quick start guide. section 2 provides evaluation module specifications. section 3 provides peripheral specifications. section 4 provides schematics for the dsp56009evm. section 5 provides pld equations and schematics and the parts list. section 6 provides an example program and information on the debugger. appendix a documents the audio pass-through demonstration program provided with the evm. appendix b describes the sound field processing demonstration. appendix c includes additional notes for using the assembler. this document has been designed for users experienced with dsp development tools. for users with little or no dsp experience, detailed information is provided in the additional documents supplied with this kit.
motorola reserves the right to make changes without further notice to any products herein. motorola makes no warranty, representation or guarantee regarding the suitability of its products for any particular purpose, nor does motorola assume any liability arising out of the application or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. ?ypical? parameters which may be provided in motorola data sheets and/or specifications can and do vary in different applications and actual performance may vary over time. all operating parameters, including ?ypicals?must be validated for each customer application by customer? technical experts. motorola does not convey any license under its patent rights nor the rights of others. motorola products are not designed, intended, or authorized for use as components in systems intended for surgical implant into the body, or other applications intended to support life, or for any other application in which the failure of the motorola product could create a situation where personal injury or death may occur. should buyer purchase or use motorola products for any such unintended or unauthorized application, buyer shall indemnify and hold motorola and its officers, employees, subsidiaries, affiliates, and distributors harmless against all claims, costs, damages, and expenses, and reasonable attorney fees arising out of, directly or indirectly, any claim of personal injury or death associated with such unintended or unauthorized use, even if such claim alleges that motorola was negligent regarding the design or manufacture of the part. motorola and are registered trademarks of motorola, inc. motorola, inc. is an equal opportunity/affirmative action employer. how to reach us: usa/europe/locations not listed : motorola literature distribution p.o. box 20912 phoenix, arizona 85036 1 (800) 441-2447 or 1 (602) 303-5454 mfax : rmfax0@email.sps.mot.com touchtone (602) 244-6609 asia/pacific : motorola semiconductors h.k. ltd. 8b tai ping industrial park 51 ting kok road tai po, n.t., hong kong 852-2662928 technical resource center: 1 (800) 521-6274 dsp helpline dsphelp@dsp.sps.mot.com japan : nippon motorola ltd. tatsumi-spd-jldc 6f seibu-butsuryu-center 3-14-2 tatsumi koto-ku tokyo 135, japan 03-3521-8315 internet : http://www.motorola-dsp.com once is a trademark of motorola, inc.
-4 dsp56302evmum/ad, preliminary motorola
motorola DSP56009EVMUM iii contents section 1 quick start guide. . . . . . . . . . . . . . . . . . . . . . . 1-1 1.1 overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1.2 evaluation module description and features . 1-3 1.3 equipment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1.3.1 what you get with the evaluation module . . . . . . . . . . . . . 1-4 1.3.2 what you need to supply for ac-3/prologic demonstration . 1-5 1.3.3 what you need to supply for software development . . . . . 1-6 1.4 installation procedure . . . . . . . . . . . . . . . . . . . . . . . 1-6 1.4.1 preparing the dsp56009evm . . . . . . . . . . . . . . . . . . . . . . 1-7 1.4.2 connecting the dsp56009evm to the pc and power . . . 1-8 1.4.3 installing the software . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9 section 2 evm theory of operation . . . . . . . . . . . . . . . 2-1 2.1 inputs and outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 2.1.1 clock select. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4 2.1.2 serial audio interface (sai) . . . . . . . . . . . . . . . . . . . . . . . . 2-4 2.1.3 sony-philips digital interface format (spdif) . . . . . . . . . . 2-5 2.1.4 other inputs and outputs. . . . . . . . . . . . . . . . . . . . . . . . . . 2-5 2.1.5 operating mode selection . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 2.1.6 once port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 2.1.7 rs232 connections and jp1. . . . . . . . . . . . . . . . . . . . . . . 2-7 2.1.8 operating modes and sram refresh in the 56009 . . . . . . 2-7 2.1.9 evaluation module parts . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 2.1.10 power supplies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 2.1.11 memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 section 3 peripheral specifications . . . . . . . . . . . . . . 3-1 3.1 cs5390 stereo adc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.2 cs4331 stereo dac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 3.3 cs3310 stereo digital volume control . . . . . . . . . 3-4 3.4 cs8412 digital audio interface receiver . . . . . . . 3-5
iv DSP56009EVMUM motorola 3.5 cs8402a digital audio interface transmitter . . 3-6 3.6 stk10c68 cmos 2k x 8 nvsram . . . . . . . . . . . . . . . . . . . 3-7 3.7 sc937-02 aes/ebu transformer . . . . . . . . . . . . . . . . . 3-7 3.8 lcd panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 3.9 wiring for keypad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 section 4 dsp56009evm schematics. . . . . . . . . . . . . . . . 4-1 section 5 dsp56009evm pld specification and evm parts list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1 5.1 epm7032 pld specifications . . . . . . . . . . . . . . . . . . . . 5-3 5.1.1 pld schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3 5.1.2 pld equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5 5.2 evaluation module parts list . . . . . . . . . . . . . . . . . 5-8 section 6 example test program . . . . . . . . . . . . . . . . . 6-1 6.1 overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3 6.2 writing the program . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6.2.1 source statement format . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6.2.2 example program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 6.3 assembling the program . . . . . . . . . . . . . . . . . . . . . . 6-7 6.3.1 assembler command format . . . . . . . . . . . . . . . . . . . . . . 6-7 6.3.2 assembler options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 6.3.3 assembler directives . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 6.3.4 assembling the example program . . . . . . . . . . . . . . . . . 6-16 6.4 motorola dsp linker . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 6.4.1 linker options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17 6.4.2 linker directives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23 6.5 introduction to the debugger software . . . . 6-24 6.6 running the program . . . . . . . . . . . . . . . . . . . . . . . . 6-26
motorola DSP56009EVMUM v appendix a audio pass-through example . . . . . . . . . . .a-1 appendix b sound field processing example . . . . . . .b-1 appendix c dsp56009evm multiplex defintition . . . . . .c-1
vi DSP56009EVMUM motorola list of figures figure 1-1 evaluation module component layout . . . . . . . . . . . . . . . . . . . . 1-5 figure 1-2 ac-3 home theater demonstration. . . . . . . . . . . . . . . . . . . . . . . 1-6 figure 1-3 connecting the dsp56009evm cables. . . . . . . . . . . . . . . . . . . . 1-8 figure 3-1 cs5390 adc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 figure 3-2 cs4331 dac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 figure 3-3 cs3310 stereo digital volume control . . . . . . . . . . . . . . . . . . . . 3-5 figure 3-4 serial port timing for the cs3310 . . . . . . . . . . . . . . . . . . . . . . . . 3-5 figure 3-5 cs8412 digital audio interface receiver . . . . . . . . . . . . . . . . . . . 3-6 figure 3-6 cs8402 digital audio interface transmitter . . . . . . . . . . . . . . . . . 3-6 figure 3-7 stk10c68 8k x 8 nvsram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-7 figure 3-8 sc937-02 aes/ebu transformer . . . . . . . . . . . . . . . . . . . . . . . . 3-8 figure 3-9 lcd softswitch screens. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-9 figure 3-10 keypad wiring diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11 figure 4-1 dsp56009 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 figure 4-2 microcontroller and lcd. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-4 figure 4-3 programmable logic device . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5 figure 4-4 sram and external memory interface. . . . . . . . . . . . . . . . . . . . . 4-6 figure 4-5 rs-232 and once interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7 figure 4-6 analog-to-digital converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-8
motorola DSP56009EVMUM vii figure 4-7 digital-to-analog converter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9 figure 4-8 spdif i/o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10 figure 4-9 power supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11 figure 5-1 pld schematic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4 figure 6-1 development process flow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3 figure 6-2 example debugger window display . . . . . . . . . . . . . . . . . . . . . 6-25 figure a-1 output interrupt structure for analog input . . . . . . . . . . . . . . . . . a-4 figure a-2 output interrupt structure for digital input. . . . . . . . . . . . . . . . . . a-4 figure a-3 dsp56009evm pass-through setup. . . . . . . . . . . . . . . . . . . . . . a-6 figure b-1 early reflection do loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-6 figure b-2 early reflection fir block (one channel) . . . . . . . . . . . . . . . . . . b-6 figure b-3 comb filter (one of six) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-8 figure b-4 all-pass filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-9 figure b-5 all-pass filter routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-9 figure b-6 de-correlation routine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-11 figure b-7 evm configuration for sound field processing demo . . . . . . . b-12 figure b-8 sound field processor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-14 figure b-9 sound field processor time analysis. . . . . . . . . . . . . . . . . . . . b-18 figure c-1 dsp56009evm jumper setting for multiplexing . . . . . . . . . . . . . c-5
motorola DSP56009EVMUM vii list of tables table 2-1 jp4 jumpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 table 2-2 jp5 jumpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4 table 2-3 jp3 jumpers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 table 5-1 dsp56009evm parts list . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-8 table a-1 output sources for audio pass-through . . . . . . . . . . . . . . . . . . . . a-5 table b-1 early reflection fir structure . . . . . . . . . . . . . . . . . . . . . . . . . . . b-4 table b-2 comb filter loop-back gains . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-7 table b-3 de-correlation all-pass filter gains . . . . . . . . . . . . . . . . . . . . . . b-11 table b-4 sound field processing audio outputs. . . . . . . . . . . . . . . . . . . b-13 table b-5 x and y memory map for sound field processing demo . . . . . b-15 table c-1 dsp56009evm mux cable pinout. . . . . . . . . . . . . . . . . . . . . . . c-3
viii DSP56009EVMUM motorola
motorola DSP56009EVMUM 1-1 section 1 quick start guide
1-2 DSP56009EVMUM motorola quick start guide 1.1 overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-3 1.2 evaluation module description and features . . . . . 1-3 1.3 equipment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4 1.3.1 what you get with the evaluation module . . . . . . . . . . . . . . . . 1-4 1.3.2 what you need to supply for ac-3/prologic demonstration . . 1-5 1.3.3 what you need to supply for software development. . . . . . . . . 1-6 1.4 installation procedure . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-6 1.4.1 preparing the dsp56009evm . . . . . . . . . . . . . . . . . . . . . . . . . 1-7 1.4.2 connecting the dsp56009evm to the pc and power . . . . . . . 1-8 1.4.3 installing the software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-9
quick start guide overview motorola DSP56009EVMUM 1-3 1.1 overview this document describes the basic structure, theory, and operation of the dsp56009evm (evaluation module), the equipment required to use the evaluation module, and the specifications of the key components on the evaluation module. code samples and self-test code are provided on the accompanying software diskette. evaluation module schematic diagrams and a parts list are included as well. 1.2 evaluation module description and features the dsp56009evm is a low-cost platform for multichannel digital audio applications design, prototyping, and development. the fully assembled and tested circuit board contains: 24-bit dsp56009 digital signal processor operating at 81 mhz for dolby ac-3 and dolby prologic 8192 bytes of off-chip sram and 8192 bytes of nonvolatile ram standard 30-pin simm slot for easy, inexpensive dram expansion one 20-bit stereo analog-to-digital converter (adc), three 18-bit stereo digital-to-analog converters (dacs) programmable analog-domain attenuators on the digital-to-analog outputs rca jacks for all analog audio input/output optical and transformer-isolated electrical spdif/cp340 stereo digital audio inputs and outputs 50-pin expansion connector to provide the capability for expansion and/or substitution of other input/output peripherals, as well as easy interprocessor communication between motorola evaluation modules socketed mc68hc711e9 (52-pin clcc microcontroller) to allow the user to substitute user-programmed microprocessor and prototype custom 68hc711 code (allows connection to mc68hc711 emulation systems) ? 16 character liquid crystal display (lcd) and four softswitches for user interface connector provides capability to use optional standard 4 4 keypad matrix mc68705k1 microcontroller performing rs-232-to-once tm port command conversions
1-4 DSP56009EVMUM motorola quick start guide equipment 1.3 equipment the following section gives a brief summary of the equipment required to use the evaluation module, some of which is supplied with the evaluation module, and some of which will have to be supplied by the user. 1.3.1 what you get with the evaluation module evaluation module board (see figure 1-1 ) 3.5" disk titled ?ebug - evaluation module 3.5" disk titled ?sp56009evm demos pcm passthrough files soundfield processor files example assembly language files (example.asm) debug - evaluation module manual dsp56000 family manual dsp56009 user? manual dsp56009 technical data sheet dsp56009 product brief dsp56009 evm user? manual (this document), including evaluation module schematics and demonstration software documentation additional relevant documentation may be included in the form of a read.me file on the evaluation module software disk.
quick start guide equipment motorola DSP56009EVMUM 1-5 figure 1-1 evaluation module component layout 1.3.2 what you need to supply for ac-3/prologic demonstration an ac-3 or pcm bitstream source (i.e. laserdisc, dat, cd source, vhs, etc...) an audio amplifier driving headphones or speakers as shown on the following page in figure 1-2 . power supplies: dual 8-12v dc (for analog circuits), 8-15v ac or dc (for digital circuits) 68hc711e9 lcd display sc937-02 rs-232 once tm reset cs5390 pld dsp 56009 68hc705k1 cs4331 cs3310 cs3310 cs4331 cs3310 cs4331 stk10c68 cs8412 cs8402a analog power 30-pin simm socket jp7 jp4 jp2 jp5 jp3 j9 j18 jp1 jp6 j2 j3 digital power spdif in spdif out right in left in analog outputs right 3 right 2 left 2 left 1 right 1 left 3 analog inputs j5 jp9 infrared remote receiver in optical out optical j1 ls rs c sub l r j4
1-6 DSP56009EVMUM motorola quick start guide installation procedure 1.3.3 what you need to supply for software development a pc (-386 or higher) with minimum 2 mbytes of memory, a 3.5?floppy disk drive, and a serial port capable of at least 19,200 bits-per-second data transfer rate. an rs-232 cable (db9 male to db9 female) figure 1-2 ac-3 home theater demonstration 1.4 installation procedure installation requires four basic steps: 1. preparing the dsp56009evm board 2. connecting the board to the pc and power 3. installing the software power amp laserdisc player rf demodulator listener dsp56009evm subwoofer (unpowered) subwoofer (powered)
quick start guide installation procedure motorola DSP56009EVMUM 1-7 4. testing the installation 1.4.1 preparing the dsp56009evm caution because all electronic components are sensitive to the effects of electrostatic discharge (esd) damage, correct procedures should be used when handling all components in this kit and inside the supporting personal computer. use the following procedures to minimize the likelihood of damage due to esd: always handle all static-sensitive components only in a protected area, preferably a lab with conductive (anti-static) flooring and bench surfaces. always use grounded wrist straps when handling sensitive components. never remove components from anti-static packaging until required for installation. always transport sensitive components in anti-static packaging.
1-8 DSP56009EVMUM motorola quick start guide installation procedure 1.4.2 connecting the dsp56009evm to the pc and power figure 1-3 shows the interconnection diagram for connecting the pc and the external power supply to the dsp56009evm board. use the following steps to complete cable connections: 1. connect the db9p end of the rs-232 interface cable to the rs-232 port connection on the pc. 2. connect the db9s end of the cable to j4, shown in figure 1-1 on page 1-5, on the dsp56009evm board. this provides the connection to allow the pc to control the board function. 3. make sure that the external power supplies do not have power supplied to them. 4. connect the output power connectors into j2 and j3, shown in figure 1-1 on page 1-5, on the dsp56009evm board. 5. apply power to the power supply. the green power led will light when power is correctly applied. figure 1-3 connecting the dsp56009evm cables pc-compatible cable computer db9 interface dsp56009evm external +5v power j4 j2 connect cable to rs-232 port j3 external 8-12v power
quick start guide installation procedure motorola DSP56009EVMUM 1-9 1.4.3 installing the software the dsp56009evm demo software includes the following: motorola diskette containing: demonstration code (passthru, sfpevm09, example) domain technologies diskette containing the windowed user interface debug software use the following steps to install the software: 1. insert the motorola software diskette into the pc diskette drive. 2. if the system is not already running in windows, start windows. 3. from windows, select a dos window and run the install program. the general format for the command line of the install program is install . for example, if your diskette drive is the a: drive, type in a:install a:. the program installs the software in the default destination c:\evm56007. 4. close the dos window and remove the motorola software diskette from the diskette drive. insert the domain technologies diskette labeled debug-56k into the drive. 5. from windows, run the debugger installation program install.exe on the diskette. this can be done from the microsoft windows program manager by pulling down the file menu, choosing run, entering a:install on the command line, and clicking ok. 6. read the readme.txt if you are installing the debugger program for the first time. this provides information in addition to that provided by the domain technologies manual included with this kit. 7. the install program creates a program group called evm56007 and a program icon called evm56007 within windows. this step completes the software installation.
1-10 DSP56009EVMUM motorola quick start guide installation procedure
motorola DSP56009EVMUM 2-1 section 2 evaluation module theory of operation
2-2 DSP56009EVMUM motorola evaluation module theory of operation 2.1 inputs and outputs. . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-3 2.1.1 clock select . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4 2.1.2 serial audio interface (sai). . . . . . . . . . . . . . . . . . . . . . . . 2-4 2.1.3 sony-philips digital interface format (spdif) . . . . . . . . . . 2-5 2.1.4 other inputs and outputs . . . . . . . . . . . . . . . . . . . . . . . . . 2-5 2.1.5 operating mode selection. . . . . . . . . . . . . . . . . . . . . . . . . 2-6 2.1.6 once port . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-6 2.1.7 rs232 connections and jp1 . . . . . . . . . . . . . . . . . . . . . . 2-7 2.1.8 operating modes and sram refresh in the 56009 . . . . . . 2-7 2.1.9 evaluation module parts . . . . . . . . . . . . . . . . . . . . . . . . . . 2-7 2.1.10 power supplies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8 2.1.11 memory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-8
evaluation module theory of operation inputs and outputs motorola DSP56009EVMUM 2-3 refer to section 4, 56009evm schematics , for reference to pinouts and jumper configurations. 2.1 inputs and outputs analog signals connected to the evaluation module inputs are converted to 20 bit data at the adc. u19 and u20 attenuate the signal and convert it to balanced mode. the adc has the select serial i/o mode (smode) pin pulled high to make the adc the sai receive clock master. when the adc is in master mode, the adc? serial data clock (sclk) and left/right select (l/r) word clock pins are outputs. the l/r word clock output is the opposite polarity of i 2 s. it is inverted in the programmable logic device (pld) to create true i 2 s. the adc receives its oversampling clock on the digital section clock input (iclkd), which is then internally divided by two, and this signal is provided to the analog section clock input (iclka). iclkd can be driven from the 11.2896 mhz clock, the 12.288 mhz clock, or the 256 f s clock produced by the cs8412 aes/ebu receiver. the audio power down input (apd) and digital power down input (dpd) pins are wired to the cntl_mute signal of the pld. when pulled high, the adc will be muted. when first pulled low, the adc will be reset, then it will be enabled. the other possible input source comes from the spdif inputs (j14 for electrical input and j17 for optical input). jumper jp4 selects the source (see table 2-1 below). when receiving valid spdif input, the spdif receiver drives the master clock (mck) output that is 256 times the frame sync frequency of the received data. the cs8412 operates in mode 3, the i 2 s slave mode. table 2-1 jp4 jumpers selection jumper settings electric spdif jp4.1 to jp4.3 jp4.2 to jp4.4
2-4 DSP56009EVMUM motorola evaluation module theory of operation inputs and outputs 2.1.1 clock select the evaluation module provides a means for the user to select which clock controls the reception and transmission of digital audio (see table 2-2 below). jp2 selects the adc and dac clocks which, when jumpered, are set at 44.1 khz and, when not jumpered, at 48 khz. the expansion connector, j5, can be used to directly access the dsp. the receive sai bus may be clocked by the selection made at jp2 (44.1 khz or 48 khz) or be clocked by the received spdif signal. the transmit sai bus may be clocked by either the clock selected at jp2 or by the received spdif signal. it is the user? responsibility to ensure that data is output at the desired rate. see table 2-2 , below. table 2-2 jp5 jumpers 2.1.2 serial audio interface (sai) the dsp56009 sai transmitter drives the six analog outputs and the spdif output. i 2 s is the default mode for the dacs. the master clock (mclk) rate for the dacs is 256 f s . the dual rc networks after the dacs serve as ac couplers for audio data, optical spdif jp4.3 to jp4.5 jp4.4 to jp4.6 receive /transm it jumper jp5.1 to jp5.2 jumper jp5.3 to jp5.4 no jumper rx clocked by crys- tal clocked by received spdif tx clocked by crys- tal clocked by received spdif table 2-1 jp4 jumpers selection jumper settings
evaluation module theory of operation inputs and outputs motorola DSP56009EVMUM 2-5 and as low-pass filters to convert the delta-sigma digital output pulses to analog waveforms. the digitally controlled analog domain attenuators receive the audio data and attenuate or amplify the data as determined by the microcontroller. the attenuators receive the serial clock input (sclk), serial data input (sdatai), and the chip select/latch (cs) from the microcontroller. 2.1.3 sony-philips digital interface format (spdif) the spdif transmitter receives data from the dsp through the serial data input (sdata) using the frame sync (fsync) and the serial data clock (sck). the transmitter outputs spdif audio signals through j15 (electrical) and j16 (optical). fs_sens from the clock select appears at the expansion connector in order to read the sampling rate with the dsp? general purpose i/o (gpio1) at j5.41 and also at u21-2 to select the state of the ?ample-rate?bits transmitted within the channel status block. see the spdif specification for more information. the channel status bits and block sync signals (drcv_blk, dtrn_blk, drcv_cs, and dtrn_cs) are available at j5.43 to allow the dsp to read one of them, as well. isolation transformers are used on both input and output, although they are not strictly required for spdif because this evaluation module is intended to be used as a development system. 2.1.4 other inputs and outputs the clock master is derived from one of two sources: the 11.2896 mhz clock or the 12.288 mhz clock. the microcontroller also receives commands from either the soft switches (s1, s2, s3, or s4) or from the keypad expansion port, j18. the current user screen or the results of these commands are then displayed by a modular lcd panel with a 2 16 character display. the microcontroller code is capable of driving larger lcd displays, but all user screens are designed for a 2 16 character display. the mc68hc711e9 communicates with the dsp via the serial host interface (shi) port in spi mode. when ss is pulled low, the microcontroller can write to the dsp. the mosi and miso lines pass control data through the dsp shi in 24-bit mode. sck is the spi shift clock from the dsp. again, the expansion connector, j5, can be used to access or intercept host port communications.
2-6 DSP56009EVMUM motorola evaluation module theory of operation inputs and outputs the control_data, control_clock, and control_latch lines from the microcontroller control the digitally controlled analog domain attenuators. the control_mute line mutes the adc and the dacs; low is muted, high is enabled. 2.1.5 operating mode selection dsp56009evm modes can be selected at jp3, as shown in table 2-3 . once the mode has been selected, the pld can receive interrupts from the network attached to j19. x = jumper installed; - = no jumper 2.1.6 once port the once tm port interface operates by receiving the serial data from the rs-232 transceiver and executing commands sent by the host computer. these commands can reset the dsp, put the dsp in debug mode, release the dsp from debug mode, read and write to the once tm port, and read and write to the dsp itself. the serial bit rate is 19,200 bits/second. the rs-232 serial communications are performed in software on the mc68705k1. port a of the mc68705k1 communicates with the dsp, and port b communicates with the host computer. the acknowledge signal from the once tm port is a low-going pulse on ds0. since the 68705k1 is too slow to reliably table 2-3 jp3 jumpers mode jp3.5 to jp3.6 jp3.3 to jp3.4 jp3.1 to jp3.2 0xxx 1xx- 2x - x 3x - - 4- x x 5- x - 6--x 7---
evaluation module theory of operation inputs and outputs motorola DSP56009EVMUM 2-7 catch this very narrow pulse, the pulse is latched in the pld and the output of the latch appears on the ack pin (pa2). when this occurs, the 68705k1 illuminates red led d5 to indicate that the dsp is in the debug mode. for more information on the once port, see the dsp56000 family manual. the reset switch will reset the microcontroller, which will subsequently reset the dsp56009. the mc68705k1 source and object code are available from the motorola dsp division; contact your local motorola fae. 2.1.7 rs232 connections and jp1 rs-232 is an often-abused standard, and the direction of the signals present on pins 2 and 3 of the db9 connector do not always conform to the standard. jp1 provides the user with the ability to reverse these two pin connections without resorting to null modem adapters or rewiring cable connectors. as shipped, jp1.1 is connected via shorting jumpers to jp1.3 and jp1.2 is connected to jp1.4. this connects j4.2 to the output of the evaluation module? rs-232 level converter (u4) and j4.3 to the input of the board? rs-232 receiver. these directions can be reversed by reorienting the shorting jumpers and turning them 90 degrees (one-quarter turn), thereby connecting jp1.1 to jp1.2 and jp1.3 to jp1.4. the user should never need to rewire an rs-232 connector in order to establish evaluation module communications with a host computer. 2.1.8 operating modes and sram refresh in the 56009 in modes 0, 1, 2, and 3 the sram is refreshed from the nvram and the dsp can bootstrap from the sram via the emi if a valid bootstrap mode is used. when in modes 4, 5, 6, and 7 the sram is not refreshed. refreshes are not affected by jumpers on the expansion connector, j5. jumpers j5.37 and j5.39 must be inserted to have full dsp control of the sram and nvram after bootstrap. 2.1.9 evaluation module parts the parts list of the dsp56009evm is shown in section 5 .
2-8 DSP56009EVMUM motorola evaluation module theory of operation inputs and outputs 2.1.10 power supplies the evaluation module requires power sources, for both analog and digital circuits, in order to operate. bipolar analog power (use a linear power supply for best results) is received through screw terminals at j3. digital power is received through screw terminals at j2 or via a 2.1mm connector (j1). when the power is on, d6 (green led) is illuminated. analog power input may be 8 to 12 volts and digital power input may be 8 to 15 volts. while the voltage regulator can accommodate higher input voltage potentials, the added heat dissipation required at these input voltage levels will result in the regulator becoming dangerously warm, and it is not recommended that the user subject the board to power inputs in excess of the maximum levels listed. note: always supply the evaluation module with analog power prior to or simultaneous with the application of digital power. if digital power is supplied before the analog power, the dacs may go into one of three possible error modes (no long-term damage to the device will occur), and will not function correctly. if analog power is supplied first, or if both analog power and digital power are applied simultaneously, these problems do not appear and the dacs are properly initialized. 2.1.11 memory the evaluation module has 8192 bytes each of fast static ram (sram) and of nonvolatile ram (nvram). the sram operates at zero wait states at a 40 mhz dsp clock speed, one wait state at 50, 66 mhz and two wait states at 81 mhz. the contents of the sram may be block-loaded into nvram and the contents of the nvram may be block- loaded into the sram. the lowest 3072 bytes of the nvram may also be used to store code to load into the dsp via emi bootstrap.
motorola DSP56009EVMUM 3-1 section 3 peripheral specifications
3-2 DSP56009EVMUM motorola peripheral specifications 3.1 cs5390 stereo adc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-3 3.2 cs4331 stereo dac . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4 3.3 cs3310 stereo digital volume control . . . . . . . . 3-4 3.4 cs8412 digital audio interface receiver . . . . . . . 3-5 3.5 cs8402a digital audio interface transmitter . . 3-6 3.6 stk10c68 cmos 2k x 8 nvsram . . . . . . . . . . . . . . . . . . . 3-7 3.7 sc937-02 aes/ebu transformer . . . . . . . . . . . . . . . . . 3-7 3.8 lcd panel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-8 3.9 wiring for keypad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-11
peripheral specifications cs5390 stereo adc motorola DSP56009EVMUM 3-3 the following section describes the various peripheral devices used on the dsp56009evm and includes any necessary equations and information. contact information for the manufacturers of significant peripheral devices is included along with the parts listing in section 5 . 3.1 cs5390 stereo adc the cs5390 is a complete analog-to-digital converter (adc) for stereo digital audio systems. it performs sampling, analog-to-digital conversion and anti-alias filtering, generating 20-bit values for both left and right inputs in serial form. the output word rate can be up to 50 khz per channel. the cs5390 uses fifth-order, delta-sigma modulation with 64 times oversampling followed by digital filtering and decimation, which removes the need for an external anti-alias filter, beyond the simple balanced rc filter formed by r25, r26, and c8 (r31, r32, and c20 for the right channel). the adc uses a differential architecture that provides excellent noise rejection. the cs5390 has a filter passband of dc to 21.7 khz. the filters are linear phase, have 0.005 db passband ripple, and greater than 100 db stopband rejection. the operating temperature range is 0 o to 70 o . figure 3-1 cs5390 adc voltage reference lp filter lp filter dac comparator dac comparator s/h microcontroller calibration calibration sram digital decimation filter digital decimation filter serial output interface s/h va+ va- vl+ lgnd dcal dpd vd+ dgnd s data cmod e smod e vref+ vref- ainl- ainl+ agnd ainr- ainr+ iclka apd acal oclkd iclkd fsync sclk l/r + - + - + - - + 28 27 4 3 1 5 20 19 16 14 13 11 12 23 24 76 910 17 18 22 2 15 26 25
3-4 DSP56009EVMUM motorola peripheral specifications cs4331 stereo dac 3.2 cs4331 stereo dac the cs4331 is a complete stereo digital-to-analog converter (dac) with 18-bit resolution, including interpolation, 1-bit digital-to-analog conversion, and output analog filtering in an 8-pin package. the cs4331 is based on delta-sigma modulation where the modulator output controls the reference voltage input to an ultra-linear analog low-pass filter. this architecture allows for infinite adjustment of sample rate between 1 khz and 50 khz while maintaining linear phase response, simply by changing the master clock frequency. the cs4331 contains optional on-chip de-emphasis and operates from a single +5 v power supply. the cs4331 has a 96 db dynamic range, less than 0.003% thd, low clock jitter sensitivity and completely filtered line level outputs that use linear-phase filtering. . figure 3-2 cs4331 dac 3.3 cs3310 stereo digital volume control the cs3310 is a complete stereo digital volume control designed specifically for audio systems. it features a 16-bit serial interface that controls two independent, low distortion (0.001% thd + n) audio channels. the cs3310 includes an array of well-matched resistors and a low-noise active output stage that is capable of driving a 600 w load. a total adjustable range of 127 db, in 0.5 db steps, is achieved through 95.5 db of attenuation and 31.5 db of gain. 3 1 2 4 8 5 serial input interface interpolator interpolator delta-sigma modulator delta-sigma modulator dac dac analog low-pass filter analog low-pass filter de-emphasis voltage reference lrck s data i dem/sclk/config agnd va+ aoutl aoutr mclk 6 7
peripheral specifications cs8412 digital audio interface receiver motorola DSP56009EVMUM 3-5 the simple 3-wire interface provides daisy-chaining of multiple cs3310s for multi-channel audio systems. the device operates from 5v supplies and has an input/output voltage range of 3.75 v. figure 3-3 cs3310 stereo digital volume control l0 = left channel least significant bit r0 = right channel least significant bit l7 = left channel most significant bit r7 = right channel most significant bit sdata is latched internally on the rising edge of sclk sdatao transitions after the falling edge of sclk sdatao bits reflect the data previously loaded into the cs3310 figure 3-4 serial port timing for the cs3310 3.4 cs8412 digital audio interface receiver the cs8412 is a monolithic cmos device that receives and decodes audio data according to the aes 3 - 1992, ebu tech. 3250-e, iec 958, spdif, and eiaj cp-340 interface standards. the cs8412 receives data from a transmission line, recovers the + - + - u x m u x m control register serial to parallel register ainl agndl agndr ainr aoutl zcen s datao s data i sclk aoutr 16 15 10 9 12 13 4 5 14 2 1 3 7 6 8 mute 8 8 8 8 16 va+ va- vd+ dgnd cs s data i s datao r7 r6 r5 r4 r3 r2 r1 r0 l7 l6 l5 l4 l3 l2 l1 l0 r7 r6 r5 r4 r3 r2 r1 r0 l7 l6 l5 l4 l3 l2 l1 l0 cs sclk
3-6 DSP56009EVMUM motorola peripheral specifications cs8402a digital audio interface transmitter clock and synchronization signals, and de-multiplexes the audio and non-audio data. either differential or single-ended inputs can be decoded. the cs8412 de-multiplexes the channel, user, and validity data directly to dedicated output pins for the most commonly needed channel status bits. figure 3-5 cs8412 digital audio interface receiver 3.5 cs8402a digital audio interface transmitter the cs8402a is a monolithic cmos device that encodes and transmits audio data according to the aes 3 - 1992, ebu tech. 3250-e, iec 958, spdif, and eiaj cp-340 interface standards. the cs8402a accepts audio and non-audio data and multiplexes and encodes the data. the audio serial port is double-buffered and capable of supporting a wide variety of formats. the cs8402a multiplexes the channel, user, and validity data directly from dedicated input pins for the most commonly needed channel status bits. figure 3-6 cs8402 digital audio interface transmitter rs-422 receiver clock & data recovery de-mux audio serial port registers mux mux cs12/fck sel co / ca/ cb/ cc/ cd/ ca/ erf cbl e0 e1 e2 f0 f1 f2 rxp rxn vd+ dgnd va+ filt agnd mck m3 m2 m1 m0 s data sclk fsync c u verf 9 10 13 16 6 5 4 3 2 1 25 15 7 8 22 20 21 19 17 18 24 23 26 12 11 1 14 28 audio serial port registers mux rs422 driver 6 7 8 10 11 9 23 22 21 5 16 15 24 20 17 sck fsync sdata c u v dedicated channel cbl trnpt status bits m2 m1 m0 mck rst txp txn 7
peripheral specifications stk10c68 cmos 2k x 8 nvsram motorola DSP56009EVMUM 3-7 3.6 stk10c68 cmos 2k x 8 nvsram the simtek stk10c68 is a fast static ram (25, 30, 35, and 45ns), with a nonvolatile electrically-erasable prom (eeprom) element incorporated in each static memory cell. the sram can be read and written an unlimited number of times while independent, nonvolatile data resides in eeprom. data may easily be transferred from the sram to the eeprom (store cycle), or from the eeprom to the sram (recall cycle) using the ne pin (nonvolatile enable). it combines the high performance and ease of use of a fast sram with nonvolatile data integrity. the stk10c68 features 12, 15, 20, and 25 ns output enable access times, hardware store and recall initiation, automatic store and recall timing, 10 4 or 10 5 store cycles to eeprom, unlimited recall cycles from eeprom, and 10-year data retention in eeprom. the stk10c68 requires a single +5 v power supply. figure 3-7 stk10c68 8 k 8 nvsram 3.7 sc937-02 aes/ebu transformer the aes/ebu circuit incorporates a transformer to reject common mode interference while transmitting the signal with fast rise time and minimum aberration. the sc937-02 is a surface mount, low capacitance, wide-band aes/ebu transformer. the a 3 a 4 a 5 a 6 a 7 a 8 a 9 a 12 dq 1 dq 0 dq 2 dq 3 dq 4 dq 5 dq 6 dq 7 a 0 a 1 a 2 a 10 a 11 g ne e w store/ recall control column i/o column decoder static ram array 256 256 eeprom array 256 256 store recall input buffers input buffers
3-8 DSP56009EVMUM motorola peripheral specifications lcd panel sc937-02 has a very low capacitance shielded winding that reduces both radiated and received noise coupling and provides decreased jitter and improved audio quality, especially in noisy environments. emi compliance and emi susceptibility are improved by the use of this type of transformer. the transformer? ratio is 1:1, primary inductance is 600 m h, inter-winding capacitance is 1.1 pf, bandwidth is 16 khz to 100 mhz, and rise-time is 3 ns. figure 3-8 sc937-02 aes/ebu transformer 3.8 lcd panel illustrates the different screens of the lcd panel and the corresponding actions of the soft switches. 1 2 3 4 8 7 6 5 input input rtn output rtn output
peripheral specifications lcd panel motorola DSP56009EVMUM 3-9 figure 3-9 lcd softswitch screens surr ctr samp dly dly rat ext slct code/v1.09 ac-3 pcm pro logic > pl4 pl3 pl4 ext nxt main menu pcm cntr mode > nml nml wid phtm nxt pro logic on/off/auto out info fmt lfe nxt additional menus out format > 3/2 1/0 2/0 20pl nxt output format out format > 3/2 2/1 2/2 3/0 nxt output format out format > 3/2 3/1 3/2 nxt output format lfe level > on on off ext lfe stat > ok ext nxt ac-3 information continued on new page ac-3 dcr hi> 0.00 + - ext nxt ac-3 dcr lo> 0.00 + - ext nxt ac-3... pro cmp drc logic nxt ac-3 lo dyn rnge cntrl hi dyn rnge cntrl pro noise mstr logic seq vol prologic mstr ac-3 vol ac-3 pro logic > off off on auto nxt pro logic on/off mstr vol >+6 db + - ext master volume noise gen > lf lf c rf nxt noise sequencer noise gen > lf ls rs sw nxt noise sequencer noise gen > lf ext nxt noise sequencer see right additional menu samp rat > 48 khz 48 44.1 32 ext sample rate cntr delay >0 ms + - ext center delay surr delay >0 ms + - ext surround delay reset always returns here: ac-3 cmp>lin cst1 cst2 lin rf compression
3-10 DSP56009EVMUM motorola peripheral specifications lcd panel smp rat>48 khz ext nxt ac-3 information bs rat>384 kb/s ext nxt ac-3 information extra word > no ext nxt ac-3 information lfe present > no ext nxt ac-3 information aud cod > 3/2 ext nxt ac-3 information frm sz > 768 wds ext nxt ac-3 information crc sz > 468 wds ext nxt ac-3 information bs id > 8 ext nxt ac-3 information bs mod > main ext nxt ac-3 information c mx lv > -3 db ext nxt ac-3 information s mx lv > -3 db ext nxt ac-3 information dolby surr> unk ext nxt ac-3 information cpyrght prot> yes ext nxt ac-3 information original bs > yes ext nxt ac-3 information dial nm > 0 ext nxt ac-3 information dial nm #2 > 0 ext nxt ac-3 information lang cd > 9 ext nxt ac-3 information lang cd #2 > 0 ext nxt ac-3 information rm typ > - ext nxt ac-3 information mix lv > - ext nxt ac-3 information rm typ #2 > - ext nxt ac-3 information mix lv #2 > - ext nxt ac-3 information tim cod > - hr ext nxt ac-3 information tim cod > - min ext nxt ac-3 information tim cod > - sec/8 ext nxt ac-3 information tim cod > - sec%8 ext nxt ac-3 information tim cod > - frm ext nxt ac-3 information tim cod > - frc ext nxt ac-3 information stat > ok ext nxt ac-3 information back to smp rat menu
peripheral specifications wiring for keypad motorola DSP56009EVMUM 3-11 3.9 wiring for keypad a wiring diagram for a generic keypad is shown in figure 3-10 . the keypad is not provided with the dsp56009evm. 2 3 4 5 9876 1 10 button # 1 button # 16 figure 3-10 keypad wiring diagram
motorola DSP56009EVMUM 4-1 section 4 dsp56009evm schematics
4-2 DSP56009EVMUM motorola dsp56009evm schematics figure 4-1 dsp56009 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-3 figure 4-2 microcontroller and lcd. . . . . . . . . . . . . . . . . . . . . . . . 4-4 figure 4-3 programmable logic device . . . . . . . . . . . . . . . . . . . . 4-5 figure 4-4 sram and external memory interface . . . . . . . . . . . . . 4-6 figure 4-5 rs-232 and once interface . . . . . . . . . . . . . . . . . . . . 4-7 figure 4-6 analog-to-digital converter . . . . . . . . . . . . . . . . . . . . . 4-8 figure 4-7 digital-to-analog converter . . . . . . . . . . . . . . . . . . . . . 4-9 figure 4-8 spdif i/o . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10 figure 4-9 power supply . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11
dsp56009evm schematics dsp56009 motorola DSP56009EVMUM 4-3 figure 4-1 dsp56009 once int erf ace 768 khz   0.01 ? c1 md7 md6 md5 md4 md3 md2 md1 md0 +5v +5v +5v 4-f4, 3-f4 dso 4-f5 dsi/os0 dsck/os1 4-f5 4-f4 /dr wst sckt sdo0 sdo1 sdo2 +5v sdi1 sdi0 sckr wsr ~mrd gpio3 gpio2 gpio1 gpio0 d_hreq d_sck d_miso d_ss d_mosi +5v r6 10 k emi 3-f3, 5-a4 5-g4 exp1 dsp_rst 3-b4, 2-g3, 4-f3 dsp_moda 3-b3 dsp_modb 3-b3 dsp_modc 3-b3 +5v ~mcas ~mras ~mwr ma0 ma1 ma2 ma3 ma4 ma5 ma6 ma7 ma8 ma9 ma10 ma11 ma12 ma13 3-f2 dsp_clk md0 md1 md2 md3 md4 md5 md6 md7 ma0 ma1 ma2 ma3 ma4 ma5 ma6 ma7 ma8 ma9 ma10 ma11 ma12 ma13 ma14 ma15/~mcs3 ma16/~mcs2 ma17/~mcs1 ~mcs0 ~mwr ~mrd agnd3 agnd2 agnd1 agnd0 avcc0 avcc1 dgnd0 dgnd1 dvcc0 gpio0 gpio1 gpio2 gpio3 modc/~nmi modb/~irqb moda/~irqa ~reset qgnd0 qgnd1 qgnd2 qvcc0 qvcc1 qvcc2 mosi/ha0 ~ss/ha2 miso/sda sck/scl ~hreq sgnd0 sgnd1 sgnd2 svcc0 svcc1 wsr sckr sdi0 sdi1 wst sckt sdo0 sdo1 sdo2 dsck/os1 dsi/os0 dso dr pvcc pgnd pcap pinit extal 71 69 68 67 65 64 63 62 25 24 23 22 20 19 18 16 14 13 12 11 7 5 4 3 80 79 2 78 77 21 15 8 1 6 17 66 72 70 76 75 74 73 39 38 37 36 10 29 52 9 28 53 41 42 35 26 43 34 44 54 40 48 55 51 57 56 50 49 47 46 45 60 59 58 61 33 31 32 30 27 dsp5600 9 dsp56009
4-4 DSP56009EVMUM motorola dsp56009evm schematics microcontroller and lcd figure 4-2 microcontroller and lcd 4 mhz cl ock rs r/w e db0 db1 db2 db3 db4 db5 db6 db7 lcd panel vss vo vdd 4 5 6 7 8 9 10 11 12 13 14 1 3 2 u16 2 1 3 contrast 20 k r20 +5v s1 s2 s3 s4 10 k r10 10 k r12 1 0 r1 +5v +5v +5v e r/w rs 10 k r11 cntl_data 7-a6 cntl_clk 7-a6 cntl_latch 7-a6 cntl_mute 7-g4, 3-d4, 8-b5 d_miso d_mosi d_sck d_ss pc0/a0/d0 pc1/a1/d1 pc2/a2/d2 pc3/a3/d3 pc4/a4/d4 pc5/a5/d5 pc6/a6/d6 pc7/a7/d7 xirq reset irq pa7/pai/oc1 pa6/oc2/oc1 pa5/oc3/oc1 pa4/oc4/oc1 pa3/ic4/oc5/oc1 pa2/ic1 pa1/ic2 pa0/ic3 pb7/a15 pb6/a14 pb5/a13 pb4/a12 pb3/a11 pb2/a10 pb1/a9 pb0/a8 modb/vstby moda/~lir e extal mc68hc711e9 xtal vss vdd pd0/rxd pd1/txd pd2/miso pd3/mosi pd4/sck pd5/~ss strb/r/~w stra/as pe0/an4 pe1/an1 pe2/an2 pe3/an3 pe4/an4 pe5/an5 pe6/an6 pe7/an7 vrh vrl 9 10 11 12 13 14 15 16 18 35 36 37 38 39 40 41 42 2 3 5 7 1 26 8 25 24 23 22 21 20 27 28 29 30 31 32 33 34 19 17 6 4 43 44 45 46 47 48 49 50 52 51 u2 microcontroller 12 34 56 78 910 keypad ex p j18 7-a3, 3-f 3 6-g3, 8-b 4 exp2 hc11_clk 4-f2 pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 rs r/w e hc11_gpio 5-f5 pc0 pc1 pc2 pc3 pc4 pc5 pc6 pc7 ir_rcv 3-b4 +5v r8 10 k r3 10 k 1 2 jp8 2-pin male header 17 28 39 4 5 6 jp9 configuration jumpers +5v
dsp56009evm schematics programmable logic device motorola DSP56009EVMUM 4-5 figure 4-3 programmable logic device tx rx (768 khz) rx - jumper - cl ocked by cr yst al no jumper - cl ocked by rcvd s p tx - jumper - cl ocked by cr yst al no jumper - cl ocked by dsp jumper -11.2896 mhz no jumper - 1 2.28 8 mhz ir rcv. 1 2 3 infared receiver u22 +5v 10 k r2 10 k r4 10 k r5 +5v 10 k r9 10 k r14 10 k r15 1 2 3 4 interrupts j19 dsp_moda 1-e3 dsp_modb 1-e4 dsp_modc 1-e4 1-e3, 2-g3, 4-f3 dsp_rst 1 2 3 4 5 6 mode select jp3 +5v 5-d6 nvram_g +5v fs_sens 5-d2, 8-b5 ada_clk 7-a2 3 2 1 oscillator 11.2896 mhz y1 3 2 1 12.288 mhz oscillator y2 10 k r1 1 2 jp2 clock select +5v ada_clk/2 8-c3 cntl_mute 7-g4, 2-b4, 8-b5 ~cntl_mute 6-f4 ack_rst 4-f4 ack 4-f4 dso 1-i4, 4-f4 7-a3, 5-e4, 2-f4, 8-g2, 6-g3, 8-b4 exp2 r48 10 k +5v 6-g2 5390_clk 8-g1 8412_mck epm7032 vcc gnd vcc gnd vcc gnd vcc gnd 42 3 33 4 32 15 35 43 9 44 23 31 34 38 30 16 17 28 24 27 12 40 11 14 10 8 7 2 29 37 6 5 1 13 18 36 19 20 21 22 26 25 41 39 u5 pld 1-h3 dsp_clk ir_rcv 2-f4 10 k r57 1 2 3 4 jp5 master select ~mrd 5-a4, 1-f5 emi gpio2 wst sckt wsr ~wsr gpio3
4-6 DSP56009EVMUM motorola dsp56009evm schematics sram and external memory interface figure 4-4 sram and external memory interface md0 md1 md2 md3 md4 md5 md6 md7 +5v emi 3-f3, 1-f5 +5v ~mcas ~mras ~mwr ma0 ma1 ma2 ma3 ma4 ma5 ma6 ma7 ma8 ma9 ma10 ma11 12 34 56 78 910 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 connector expansion j5 wsr sckr sdi0 sdi1 wst sckt sdo0 sdo1 sdo2 wst sckt sdo0 sdo1 sdo2 wsr sckr sdi0 sdi1 d_sck d_ss d_miso d_mosi d_hreq +5v exp2 7-a3, 3-f3, 2-f4, 8-g2, 6-g3, 8-b4 1-i4 exp 1 r19 10 k 10 k r45 +5v ma12 ma7 ma6 ma5 ma4 ma3 ma2 ma1 ma0 md0 md1 md2 ~we nc a7 a6 a5 a4 a3 a2 a1 a0 d0 d1 d2 vss d3 d4 d5 d6 d7 ~e a10 ~g nc a9 a8 nc ~ne vcc stk10c48 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 sram/nvram u6 ~mwr ma13 ma8 ma9 ma11 md7 md6 md5 md4 md3 gpio3 gpio2 gpio1 gpio0 dq0 dq1 dq2 dq3 dq4 dq5 dq6 dq7 a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 ~ras ~cas ~w 30-pin simm socket vcc vcc vss vss a10 a11 q8 d8 ~cas8 3 6 10 13 16 20 23 25 4 5 7 8 11 12 14 15 17 18 27 2 21 1 30 22 19 24 26 28 29 9 u15 fs_sens 3-d6, 8-b5 1 2 3 4 5 6 jp7 nad select drcv_blk 8-g3 dtrn_blk 8-b5 drcv_cs 8-g3 dtrn_cs 8-b5 3-f2 nvram_g d_sck d_ss d_miso d_mosi hc11_gpio 2-b4 ma10 gpio2 gpio3
dsp56009evm schematics rs-232 and once interface motorola DSP56009EVMUM 4-7 figure 4-5 rs-232 and once interface res et c6 1 ? c5 1 ? c7 1 ? c4 1 ? +5v 1 2 3 4 5 6 7 8 9 j4 once/host max232 v+ c1- c1+ vcc v- c2+ c2- t1out t1in t2out t2in r1in r2in r1out r2out gnd 2 1 3 16 6 4 5 14 11 710 13 8 12 9 15 rs-232 transceiver u4 +5v r17 10 k s5 12 34 serial config jp1 rst pb1 pb0 irq/vpp pa0 pa1 pa2 pa3 osc1 osc2 vss vdd pa7 pa6 pa5 pa4 mc68705k1 1 2 3 4 5 6 7 8 16 15 14 13 12 11 10 9 controller once u24 de b re d d5 1500 r16 +5v dsp_rst 1-e3, 3-b4, 2- g /dr 1-i3 ack_rst 3-d5 dso 1-i4, 3-f4 ack 3-d5 dsck/os1 1-i4 dsi/os0 1-i4 hc11_clk 2-d2 1 ? c22 y3 4 mhz c2 47 pf c3 47 pf d7 1n5827
4-8 DSP56009EVMUM motorola dsp56009evm schematics analog-to-digital converter figure 4-6 analog-to-digital converter right analog input lef t analog input 3 2 1 u19 3 2 1 u20 5 6 7 u20 20 k r21 20 k r27 10 k r23 10 k r24 10 k r29 10 k r30 +5v agnd agnd agnd agnd agnd agnd agnd 7-a3, 3- f 8-g2, 8- b ~wsr sckr sdi0 0.22 ? c12 100 ? c11 agnd apd ainl+ ainl- acal lgnd vl+ tst01 dcal dpd cmode smode l/~r sclk sdata fsync vd+ dgnd iclkd oclkd tst02 iclka va+ va- ainr+ ainr- vref- vref+ 12 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 u7 a/d converter cs5390 39.2 r25 r26 39.2 r31 39.2 r32 39.2 npo 6.8 nf c20 npo 6.8 nf c8 5 6 7 u19 13 2 r22 20 k 13 2 r28 20 k +avcc 3 5 ~cntl_mute 3-d5 -avss r47 51 c63 0.01 ? agnd c21 100 ? agnd agnd 1 2 j6 1 2 j7
dsp56009evm schematics digital-to-analog converter motorola DSP56009EVMUM 4-9 figure 4-7 digital-to-analog converter agnd agnd agnd agnd agnd agnd cntl_data 2-b3 cntl_clk 2-b4 cntl_latch 2-b4 cntl_mute 2-b4, 3-d4, 8-b5 +avcc +avcc agnd agnd agnd +avcc +avcc +avcc exp2 3-f3, 5-e4, 2-f4, 8-f1, 6-g3, 8-a4 -avss -avss -avss r38 600 r39 600 r40 600 r41 600 r42 600 aoutl aoutr sdatai ~dem/sclk lrck va+ mclk agnd 8 5 1 2 3 74 6 u8 cs4331 d/a converter aoutl aoutr sdatai ~dem/sclk lrck va+ mclk agnd 8 5 1 2 3 74 6 u9 cs4331 d/a converter aoutl aoutr sdatai ~dem/sclk lrck va+ mclk agnd 8 5 1 2 3 74 6 u10 cs4331 d/a converter zcen ~cs sdatai vd+ dgnd sclk sdata0 ~mute ainr agndr aoutr va+ va- aoutl agndl ainl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 u11 cs3310 dig vol cntrl zcen ~cs sdatai vd+ dgnd sclk sdata0 ~mute ainr agndr aoutr va+ va- aoutl agndl ainl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 u12 cs3310 dig vol cntrl zcen ~cs sdatai vd+ dgnd sclk sdata0 ~mute ainr agndr aoutr va+ va- aoutl agndl ainl 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 u13 cs3310 dig vol cntrl c13 .0027 ? c14 .0027 ? c15 .0027 ? c17 .0027 ? c18 .0027 ? agnd agnd agnd 0.1 ? c44 agnd c45 0.1 ? c46 0.1 ? agnd 1 2 j8 left output 1 1 2 j9 right output 1 1 2 j12 left output 3 1 2 j13 right output 3 1 2 j10 left output 2 1 2 j11 right output 2 +avcc 3-f2 ada_clk 1 ? c28 1 ? c66 56 k r51 56 k r52 c72 1 ? c73 1 ? r53 56 k r54 56 k c16 .0027 ? c74 1 ? c75 1 ? r55 56 k r56 56 k 600 r37 agnd 10 r50 wst sckt sdo0 sdo1 sdo2
4-10 DSP56009EVMUM motorola dsp56009evm schematics spdif i/o figure 4-8 spdif i/o 256fs mode 3 128fs mo d e 4 1 2 j14 cp340 in r7 75 374 r43 90.9 r44 +5v 1 2 j15 cp340 out +5v +5v sdo0 sckt wst exp2 7-a3, 3-f3, 5-e4, 2-f4, 8-f1, 6-g3 +5v fs_sens 3-d6, 5-d2 ~pro ~c1/fc0 trnpt/fc1 ~c6/~c2 ~c7/~c3 em1/~c8 em0/~c9 ~c9/~c15 ~rst cbl/sbc u c/sbf v sdata sck fsync txn txp m0 m1 m2 gnd cs8402a mck vd+ 2 3 24 4 1 13 14 12 16 15 11 10 9 8 6 7 519 17 20 21 22 23 18 aes/ebu transmitter u21 cntl_mute 7-g4, 2-b4, 3-d4 ada_clk/2 3-f2 fibre optic transmitter 1 2 3 j16 optical out fibre optic receiver 1 2 3 j17 optical in +5v c26 0.1 ? c27 0.047 ? 1 k r46 +avcc agnd +5v 7-a3, 3-f3, 5-e4, 2-f4, 6-g3, 8-a4 exp2 filt c0/e0 ca/e1 cb/e2 cc/f0 cd/f1 ce/f2 erf cs12/fck rxn rxp agnd cbl u c fsync sdata sck verf mck cs8412 va+ vd+ dgnd sel m0 m1 m2 m3 20 6 5 4 3 2 27 25 13 10 9 21 22 7 15 14 1 11 26 12 28 19 8 16 17 18 23 24 u23 aes/ebu receiver sckr sdi1 wsr +5v 3-f4 8412_mck drcv_cs 5-f1 drcv_blk 5-d1 dtrn_blk 5-d2 dtrn_cs 5-f2 r49 10 k 1 2 3 4 5 6 input select jp4 0.1 ? c65 2 1 0.1 ? c68 0.1 ? c67 agnd 1 4 5 8 2 sc937-02 l4 1 4 8 5 6 sc937-02 l3
dsp56009evm schematics power supply motorola DSP56009EVMUM 4-11 figure 4-9 power supply c29-c37- u1 c38-u2 c39-u4 c40,c4 1-u5  c42-u6 c43-u7 c47-u21 c48-u23 di gi t a l d ec oup l i n g caps a l l 0 .1 f un l es s ot he rw i s e no t e d c49,c50-u7 c51- u8 c52- u9 c53- u10 c54,c55,c69-u11 c56 ,c57,c70-u12 c58 ,c59,c71-u13 c6 0 - u1 9 c6 1 - u2 0 c6 2 - u2 3 analog decoupli ng caps all 0.1 ? unless ot herwise not ed 5-20 v ac/dc power input j1 100 ? c19 1 ? c9 1 ? c10 c33 +5v 1n5827 d1 1n5827 d2 1n5827 d3 1n5827 d4 l1 ferrite c30 c31 c32 c29 c34 c35 c36 c37 c38 c39 c40 power input terminal block j2 1500 r18 1 2 3 j3 analog power connector c24 1 ? 12 jp6 ground connect green power d6 c53 c52 c51 c54 c56 c58 c60 c61 c62 c49 c42 c43 c41 c47 c48 +avcc in ground out 2 13 mc7805 voltage regulator u14 100 ? c23 100 ? c64 c69 c70 c71 agnd c25 1 ? c50 c55 c57 c59 -avss vout vin gnd 1 2 3 mc7805 voltage regulator u17 vout vin gnd 2 1 3 mc7905 voltage regulator u18 dgnd
motorola DSP56009EVMUM 5-1 section 5 dsp56009evm pld specification and evm parts list
5-2 DSP56009EVMUM motorola dsp56009evm pld specification and evm parts list 5.1 epm7032 pld specifications . . . . . . . . . . . . . . . . . . . . 5-3 5.1.1 pld schematics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3 5.1.2 pld equations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-5 5.2 evaluation module parts list . . . . . . . . . . . . . . . . . 5-8
dsp56009evm pld specification and evm parts list epm7032 pld specifications motorola DSP56009EVMUM 5-3 5.1 epm7032 pld specifications 5.1.1 pld schematics the pld schematic is illustrated on the following page in figure 5-1 .
5-4 DSP56009EVMUM motorola dsp56009evm pld specification and evm parts list epm7032 pld specifications figure 5-1 pld schematic moda_sel irqa modb_sel irqb modc_sel irqc 74157 dsp_rst dsp_moda dsp_modb dsp_modc nvram_g a1 b1 a2 b2 a3 b3 a4 b4 gnd y1 y2 y3 y4 sel multiplexer exp2_gpio2 exp2_gpio3 74393 counter a1 a2 clr1 clr2 q1a q1b q1c q1d q2a q2b q2c q2d ada_clk exp2_sckt exp2_wst clock_in clock_out 4m_clk 1m_clk clkdiv4 clockpr4 inputa inputb sela selb mux4x1 d3 d2 d1 d0 s1 s0 12mhz_clk 11mhz_clk rcvmaster_sel fs_sens txmaster_sel 8412_mck 74393m cka ckr dsp_clk qa qb qc qd ada_clk 5390_clk outputa outputb nandltch ack_rst dso ack cntl_mute exp2_~wsr ~cntl_mute exp2_wsr
dsp56009evm pld specification and evm parts list epm7032 pld specifications motorola DSP56009EVMUM 5-5 5.1.2 pld equations the following data represents the pld equations for the dsp56009evm: device: epm7032tc44 *************************equations************************* ack_rst : input; cntl_mute : input; dso : input; dsp_rst : input; emi_mrd : input; exp2_~wsr : input; fs_sens : input; irqa : input; irqb : input; irqc : input; moda_sel : input; modb_sel : input; modc_sel : input; rcvmaster_sel : input; txmaster_sel : input; 4m_clk : input; 11mhz_clk : input; 12mhz_clk : input; 8412_mck : input; % ack = _lc031 % ack = lcell( _eq001 $ gnd); _eq001 = _x001; _x001 = exp( dso & _x002); _x002 = exp( ack_rst & _x001); % ada_clk = _lc006 % ada_clk = lcell( _eq002 $ gnd); _eq002 = fs_sens & !rcvmaster_sel & 12mhz_clk # !fs_sens & rcvmaster_sel & 8412_mck # !fs_sens & !rcvmaster_sel & 11mhz_clk;
5-6 DSP56009EVMUM motorola dsp56009evm pld specification and evm parts list epm7032 pld specifications % ada_clk/2 = _lc019 % % ada_clk/2 = |74393:15|q1a % ada_clk/2 = tffe( vcc, _eq003, vcc, vcc, vcc); _eq003 = _x003 & _x004 & _x005; _x003 = exp(!fs_sens & rcvmaster_sel & 8412_mck); _x004 = exp( fs_sens & !rcvmaster_sel & 12mhz_clk); _x005 = exp(!fs_sens & !rcvmaster_sel & 11mhz_clk); % dsp_clk = _lc020 % % dsp_clk = |74393m:82|qd % dsp_clk = tffe( _eq004, !12mhz_clk, vcc, vcc, vcc); _eq004 = _lc009 & _lc014 & _lc027; % dsp_moda = _lc010 % dsp_moda = lcell( _eq005 $ gnd); _eq005 = dsp_rst & irqa # !dsp_rst & moda_sel; % dsp_modb = _lc011 % dsp_modb = lcell( _eq006 $ gnd); _eq006 = dsp_rst & irqb # !dsp_rst & modb_sel; % dsp_modc = _lc012 % dsp_modc = lcell( _eq007 $ gnd); _eq007 = dsp_rst & irqc # !dsp_rst & modc_sel; % exp2_gpio2 = _lc016 % exp2_gpio2 = tri(_lc016, global(!dsp_rst)); _lc016 = lcell( gnd $ gnd); % exp2_gpio3 = _lc021 % exp2_gpio3 = tri(_lc021, global(!dsp_rst)); _lc021 = lcell( gnd $ gnd); % exp2_sckt = |74393:15|q1b % exp2_sckt = tri(_lc002, global(!txmaster_sel)); _lc002 = tffe( ada_clk/2, _eq008, vcc, vcc, vcc); _eq008 = _x003 & _x004 & _x005; % exp2_wsr = _lc003 % exp2_wsr = lcell(!exp2_~wsr $ gnd);
dsp56009evm pld specification and evm parts list epm7032 pld specifications motorola DSP56009EVMUM 5-7 % exp2_wst = |74393:15|q2d % exp2_wst = tri(_lc017, global(!txmaster_sel)); _lc017 = tffe( _eq009, !_lc007, vcc, vcc, vcc); _eq009 = _lc004 & _lc013 & _lc026; % nvram_g = _lc001 % nvram_g = lcell( _eq010 $ gnd); _eq010 = dsp_rst & emi_mrd # !dsp_rst & modc_sel; % 1m_clk = _lc025 % % 1m_clk = |clkdiv4:116|clock_out % 1m_clk = tffe( vcc, _lc024, vcc, vcc, vcc); % 5390_clk = _lc023 % 5390_clk = lcell( _eq011 $ gnd); _eq011 = fs_sens & !rcvmaster_sel & 12mhz_clk # !fs_sens & rcvmaster_sel & 8412_mck # !fs_sens & !rcvmaster_sel & 11mhz_clk; % |clkdiv4:116|:1 % _lc024 = tffe( vcc, 4m_clk, vcc, vcc, vcc); % |74393:15|q1c = |74393:15|:5 % _lc005 = tffe( _eq012, _eq013, vcc, vcc, vcc); _eq012 = ada_clk/2 & _lc002; _eq013 = _x003 & _x004 & _x005; % |74393:15|q1d = |74393:15|:9 % _lc007 = tffe( _eq014, _eq015, vcc, vcc, vcc); _eq014 = ada_clk/2 & _lc002 & _lc005; _eq015 = _x003 & _x004 & _x005; % |74393:15|q2a = |74393:15|:28 % _lc004 = tffe( vcc, !_lc007, vcc, vcc, vcc); % |74393:15|q2b = |74393:15|:29 % _lc013 = tffe( _lc004, !_lc007, vcc, vcc, vcc); % |74393:15|q2c = |74393:15|:30 % _lc026 = tffe( _eq016, !_lc007, vcc, vcc, vcc); _eq016 = _lc004 & _lc013;
5-8 DSP56009EVMUM motorola dsp56009evm pld specification and evm parts list evaluation module parts list % |74393m:82|qa = |74393m:82|:1 % _lc014 = tffe( vcc, !12mhz_clk, vcc, vcc, vcc); % |74393m:82|qb = |74393m:82|:3 % _lc009 = tffe( _lc014, !12mhz_clk, vcc, vcc, vcc); % |74393m:82|qc = |74393m:82|:5 % _lc027 = tffe( _eq017, !12mhz_clk, vcc, vcc, vcc); _eq017 = _lc009 & _lc014; % ~cntl_mute = _lc029 % ~cntl_mute = lcell(!cntl_mute $ gnd); 5.2 evaluation module parts list the following four pages contain, in table form, information on the parts and devices on the evaluation module. contact information for suppliers of key devices, as indicated by footnote, is also included at the end of the table. table 5-1 dsp56009evm parts list part designator manufacturer part number description u1 motorola dsp56009 dsp u2 motorola mc68hc711e9 microcontroller u24 motorola mc68hc705k1 microcontroller (once) u7 crystal a cs5390-ks adc u8 u9 u10 crystal a cs4331-ks dac u21 crystal a cs8402-cs aes/ebu transmitter u23 crystal a cs8412-cs aes/ebu receiver u11 u12 u13 crystal a cs3310-ks digital volume controller
dsp56009evm pld specification and evm parts list evaluation module parts list motorola DSP56009EVMUM 5-9 l3 l4 scienti? conversion b sc937-02 audio isolation transformer u6 simtek c stk1068-s45 sram/nvram u16 hitachi lm052l lcd module u14 u17 motorola mc7805 voltage regulator u18 motorola mc7905 voltage regulator u19 u20 motorola mc33078 op-amp u5 altera epm7032tc44-12 pld d1 d2 d3 d4 d7 rectron fm4001 recti?r, smd u4 maxim max232cse rs232 transceiver c4 c5 c6 c7 c9 c10 c22 c24 c25 murata grm42-6y5v105z16bl 1.0 m f capacitor c28 c66 c72 c73 c74 c75 tdk cc1206cy5v335ztr 3.3 m f capacitor c1 c63 murata grm42-6xr103k050bd 0.01 m f capacitor c8 c20 venkel c1210c0g500-682jne 6.8 nf capacitor c11 c19 c21 c23 c64 future sme25t101m6x16ll 100 m f aluminum electro- lytic capacitor c2 c3 murata grm42-6c0g470j050b d 47 pf capacitor c26 c29 c30 c31 c33 c34 c35 c36 c37 c38 c39 c40 c41 c42 c43 c44 c45 c46 c47 c48 c49 c50 c51 c52 c53 c54 c55 c56 c57 c58 c59 c60 c61 c62 c65 c67 c68 c69 c70 c71 murata grm42-6x7r104k050b l 0.1 m f capacitor c27 venkel c1206x7r500-473kne 0.047 m f capacitor c13 c14 c15 c16 c17 c18 venkel c1206x7r500-272kne 0.0027 m f capacitor c12 venkel c1206x7r500-224kne 0.22 m f capacitor part designator manufacturer part number description
5-10 DSP56009EVMUM motorola dsp56009evm pld specification and evm parts list evaluation module parts list r50 10 w 1/4w resistor r25 r26 r31 r32 venkel cr1206-8w-39r2ft 39.2 w 1/4w resistor r47 venkel cr1206-8w-51r1ft 51 w 1/4w resistor r7 75 w 1/4w resistor r44 venkel cr1206-8w-90r9ft 90.9 w 1/4w resistor r43 venkel cr1206-8w-3740ft 374 w 1/4w resistor r37 r38 r39 r40 r41 r42 future nrc12f604otr 604 w 1/4w resistor r46 future crcw1206-102jrt1 1.0 k w 1/4w resistor r16 r18 newark 44f6300-1.5k 1.5 k w 1/4w resistor r1 r2 r3 r4 r5 r6 r8 r9 r10 r11 r12 r13 r14 r15 r17 r19 r23 r24 r29 r30 r45 r48 r49 r57 future cr32-1002f-t 10 k w 1/4w resistor r21 r27 20 k w 1/4w resistors r51 r52 r53 r54 r55 r56 56 k w 1/4w resistors r20 r22 r28 digikey d4aa24-nd 20 k w 1/4w trimpot thru-hole y1 mmd mb100ha-11.2896mhz 11.2896 mhz clock oscilla- tor y2 mmd mb100ha-12.288mhz 12.288 mhz clock oscilla- tor y3 ecliptek ec2-040-4.000mhz-i 4.0 mhz crystal jp2 jp6 jp8 2-pin single row header j19 4-pin single row header jp1 jp5 4-pin double row header jp3 jp4 jp7 6-pin double row header j18 10-pin double row header part designator manufacturer part number description
dsp56009evm pld specification and evm parts list evaluation module parts list motorola DSP56009EVMUM 5-11 a.crystal semiconductor corporation, p.o. box 17847, austin, tx 78760, (512) 445-7222 fax: (512) 462-2723 b.scienti? conversion, inc., 42 truman drive, novato, ca 94947,(415) 892-2323, fax: (415) 892-2321 c.simtek corporation, 1465 kelly johnson blvd., colorado springs, co 80920, (800) 637-1667, fax: (719) 531-9481 on pc board for u16 14-pin single row female header on pc board for u16 14-pin single row male header j5 50-pin double row male header on pc board for u15 simm socket j17 sharp gp1f32r optical connector-receive j16 sharp gp1f32t optical connector-transmit j1 mouser 16pj031 2.1 mm din power connec- tor j4 mouser 152-3409 pc mount db9 female con- nector j7 j9 j11 j13 j6 j8 j10 j13 j14 j15 mouser 161-4215 rca jack on pc board for u2 mckensie plcc-52p-t 52-pin plcc socket j2 2-position terminal block j3 3-position terminal block s1 s2 s3 s4 s5 6mm pushbutton switch d6 future hlmp1790 green led 2 ma, 1.8 v d5 future hlmp1700 red led 2 ma, 1.8 v u22 sharp gp1u56y infrared receiver l1 future bl01rn1-a62 ferrite on pc board for u14 to-220 0.5 compact heat sink part designator manufacturer part number description
motorola DSP56009EVMUM 6-1 section 6 example test program
6-2 DSP56009EVMUM motorola example test program 6.1 overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-3 6.2 writing the program . . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6.2.1 source statement format . . . . . . . . . . . . . . . . . . . . . . . . . 6-4 6.2.2 example program . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5 6.3 assembling the program . . . . . . . . . . . . . . . . . . . . . . 6-7 6.3.1 assembler command format . . . . . . . . . . . . . . . . . . . . . . 6-7 6.3.2 assembler options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-8 6.3.3 assembler directives . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-11 6.3.4 assembling the example program . . . . . . . . . . . . . . . . . 6-16 6.4 motorola dsp linker . . . . . . . . . . . . . . . . . . . . . . . . . 6-16 6.4.1 linker options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-17 6.4.2 linker directives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-23 6.5 introduction to the debugger software . . . . 6-24 6.6 running the program . . . . . . . . . . . . . . . . . . . . . . . . 6-26
example test program overview motorola DSP56009EVMUM 6-3 6.1 overview this section contains an example that illustrates how to develop a very simple program for the dsp56009. this example has been designed for users who have little or no experience with the dsp development tools. the example demonstrates the form of assembly programs, gives instructions on how to assemble programs, and shows how the debugger can be used to verify the operation of programs. the rounded blocks represent the assembly and object files. the white blocks represent software programs to assemble and link the assemble programs. the gray blocks represent hardware products. the following sections give basic information regarding the assembly program, the assembler, the linker and the object files. detailed information about these subjects can be found in the assembler and linker manuals provided with the motorola dsp clas software package, available through your motorola sales office or distributor. the documentation is also available through the motorola dsp internet url http://www.motorola-dsp.com . figure 6-1 development process flow assembly program assembler relocatable linker executable object file object file dsp56009evm *.asm *.cln *.cld ads command converter card dsp56009 68hc711e9
6-4 DSP56009EVMUM motorola example test program writing the program 6.2 writing the program the following sections describe the format of assembly language source statements and give an example assembly program. 6.2.1 source statement format programs written in assembly language consist of a sequence of source statements. each source statement may include up to six fields separated by one or more spaces or tabs: a label field, an operation field, an operand field, up to two data transfer fields, and a comment field. for example, the following source statement shows all six possible fields: 6.2.1.1 label field the label field is the first field of a source statement and can take one of the following forms: a space or tab as the first character on a line ordinarily indicates that the label files is empty and that the line has no label. an alphabetic character as the first character indicates that the line contains a symbol called a label. an underscore as the first character indicated that the label is a local label. with the exception of some directives, a label is assigned the value of the location counter of the first word of the instruction or data being assembled. a line consisting of a label only is a valid line and has the effect of assigning the value of the location counter to the label. 6.2.1.2 operation field the operation field appears after the label field and must be preceded by at least one space or tab. entries in the operation field may be one of three types: opcode ?nemonics that correspond directly to dsp machine instructions directive ?pecial operation codes known to the assembler which control the assembly process trm mac x0,y0,a x:(r0)+,x0 y:(r4)+,y0 ;text l abel operation operand x data transfer y data transfer comment
example test program writing the program motorola DSP56009EVMUM 6-5 macro call invocation of a previously defined macro which is to be inserted in place of the macro call 6.2.1.3 operand field the interpretation of the operand field is dependent on the contents of the operation field. the operand field, if present, must follow the operation field and must be preceded by at least one space or tab. 6.2.1.4 data transfer fields most opcodes can specify one or more data transfers to occur during the execution of the instruction. these data transfers are indicated by two addressing mode operands separated by a comma, with no embedded blanks. if two data transfers are specified, they must be separated by one or more blanks or tabs. refer to the dsp56000 family manual for a complete discussion of addressing modes that are applicable to data transfer specifications. 6.2.1.5 comment field comments are not considered significant to the assembler, but can be included in the source file for documentation purposes. a comment field is composed of any characters that are preceded by a semicolon. 6.2.2 example program this program takes two lists of data, one in x memory, and one in y memory, and calculates the sum of the products of the two lists. calculating the sum of products is the basis for many dsp functions. therefore, the dsp56009 has a special instruction (mac) that multiplies two values and adds the result to the contents of an accumulator. this program is provided as example.asm on the dsp56009evm demos diskette and is placed in the evm56007 directory by the installation procedure.
6-6 DSP56009EVMUM motorola example test program writing the program example 6-1 simple dsp56009 code example ;************************************************************* ;a simple program: calculating the sum of products ;************************************************************* pbase equ $100 ;instruct the assembler to replace ;every occurrence of pbase with $200 xbase equ $0 ;used to define the position of the ;data in x memory ybase equ $0 ;used to define the position of the ;data in y memory ;************************************************************* ;x memory ;************************************************************* org x:xbase ;instructs the assembler that we ;are referring to x memory starting ;at location xbase list1 dc $475638,$738301,$92673a,$898978,$091271,$f25067 dc $987153,$3a8761,$987237,$34b852,$734623,$233763 dc $f76756,$423423,$324732,$f40029 ;************************************************************* ;y memory ;************************************************************* org y:ybase ;instructs the assembler that we ;are referring to y memory starting ;at location ybase list2 dc $f98734,$800000,$fedcba,$487327,$957572,$369856 dc $247978,$8a3407,$734546,$344787,$938482,$304f82 dc $123456,$657784,$567123,$675634 ;************************************************************* ;program ;************************************************************* org p:0 ;put following program in program ;memory starting at location 0 jmp begin ;p:0 is the reset vector i.e. where ;the dsp looks for instructions ;after a reset org p:pbase ;start the main program at p:pbase begin move #list1,r0 ;set up pointer to start of list1 move #list2,r4 ;set up pointer to start of list2 clr a ;clear accumulator a move x:(r0)+,x0 y:(r4)+,y0 ;load the value of x memory pointed ;to by the contents of r0 into x0 and ;post-increment r0 ;load the value of y memory pointed ;to by the contents of r4 into y0 and ;post-increment r4
example test program assembling the program motorola DSP56009EVMUM 6-7 6.3 assembling the program the following sections describe the format of the assembler command, give a list of assembler special characters and directives, and give instructions to assemble the example program. 6.3.1 assembler command format the motorola dsp assembler is included with the dsp56009evm on the motorola 3-1/2 inch diskette and can be installed by following the instructions in section 1.4.3 . the motorola dsp assembler is a program that translates assembly language source statements into object programs compatible with the dsp56009. the general format of the command line to invoke the assembler is: asm56000[options] where asm56000 is the name of the motorola dsp assembler program, and is a list of the assembly language programs to be assembled. the following section describes the assembler options. to avoid ambiguity, the option arguments should immediately follow the option letter with no blanks between them. do #15,endloop;do 15 times mac x0,y0,a x:(r0)+,x0 y:(r4)+,y0 ;multiply and accumulate, and load ;next values endloop jmp * ;this is equivalent to ;label jmp label ;and is therefore a never-ending, ;empty loop ;************************************************************* ;end of the simple program ;************************************************************* example 6-1 simple dsp56009 code example (continued)
6-8 DSP56009EVMUM motorola example test program assembling the program 6.3.2 assembler options -a this option indicates that the assembler should run in absolute mode, generating an absolute object file when the -b command line option is given. by default, the assembler produces a relocatable object file that is subsequently processed by the motorola dsp linker. -b this option specifies that an object file is to be created for assembler output. can be any legal operating system filename, including an optional pathname. the type of object file produced depends on the assembler operation mode. if the -a option is supplied on the command line, the assembler operates in absolute mode and generates an absolute object (.cld) file. if there is no -a option on the command line, the assembler operates in relative mode and creates a relocatable object (.cln) file. if the -b option is not specified, the assembler will not generate an object file. if no is specified, the assembler will use the basename (filename without extension) of the first filename encountered in the source input file list and append the appropriate file type (.cln or.cld) to the basename. the -b option should be specified only once. example: asm56000 -bfilter main.asm fft.asm fio.asm this example assembles the files main.asm, fft.asm, and fio.asm together to produce the relocatable object file filter.cln. -d this option replaces all occurrences of with in the source files to be assembled. example: asm56000 -dpoints 16 prog.asm this example replaces all occurrences of the symbol points in the program prog.asm by the string ?6? -ea or -ew these options allow the standard error output file to be reassigned on hosts that do not support error output redirection from the command line. must be present as an argument, but can be any legal operating system filename, including an
example test program assembling the program motorola DSP56009EVMUM 6-9 optional pathname. the -ea option causes the standard error stream to be written to ; if exists, the output stream is appended to the end of the file. the -ew option also writes the standard error stream to ; if exists, it will be overwritten. example: asm56000 -ewerrors prog.asm this example redirects the standard output to the file errors. if the file already exists, it will be overwritten. -f this option indicates that the assembler should read command line input from . can be any legal operation system filename, including an optional pathname. is a text file containing further options, arguments, and filenames to be passed to the assembler. the arguments in the file need to be separated only by some form of white space. a semicolon on a line following white space makes the rest of the line a comment. example: asm56000 -fopts.cmd this example invokes the assembler and takes the command line options and source filenames from the command file opts.cmd. -g this option sends the source file line number information to the object file. this option is valid only in conjunction with the -b command line option. the generated line number information can be used by debuggers to provide source-level debugging. example: asm56000 -b -gmyprog.asm this example assembles the file myprog.asm and sends the source file line number information to the resulting object file myprog.cln. -i this option causes the assembler to look in the directory defined by for any include file not found in the current directory. can be any legal operating system pathname. example: asm56000 -i\project\ testprog
6-10 DSP56009EVMUM motorola example test program assembling the program this example uses ibm pc pathname conventions, and would cause the assembler to prefix any include files not found in the current directory with the \project\ pathname. -l this option specifies that a listing file is to be created for assembler output. can be any legal operating system filename, including an optional pathname. if no is specified, the assembler will use the basename (filename without extension) of the first filename encountered in the source input file list and append .lst to the basename. the -l option should be specified only once. example: asm56000 -l filter.asm gauss.asm this example assembles the files filter.asm and gauss.ams together to produce a listing file. because no filename was given, the output file will be named using the basename of the first source file, in this case filter, and the listing file will be called filter.lst. -m this option causes the assembler to look in the directory defined by for any macro file not found in the current directory. can be any legal operating system pathname. example: asm56000 -mfftlib\ trans.asm this example uses ibm pc pathname conventions, and would cause the assembler to look in the fftlib subdirectory of the current directory for a file with the name of the currently invoked marco found in the source file, trans.asm. -v this option causes the assembler to report assembly progress to the standard error output stream. -z this option causes the assembler to strip symbol information from the absolute load file. normally symbol information is retained in the object file for symbolic references purposes. this option is only valid with the -a and -b options. note: multiple options can be used. a typical string might be: example: asm56000 -a -b -l -g filename.asm
example test program assembling the program motorola DSP56009EVMUM 6-11 6.3.3 assembler directives in addition to the dsp56009 instruction set, the assembly programs can contain mnemonic directives that specify auxiliary actions to be performed by the assembler. these are the assembler directives. these directives are not always translated into machine language. the following sections briefly describe the various types of assembler directives. 6.3.3.1 assembler significant characters there are several one and two character sequences that are significant to the assembler. the assembler significant characters are: ; - comment delimiter ;; - unreported comment delimiter \ - line continuation character or macro dummy argument concatenation operator ? - macro value substitution operator % - macro hex value substitution operator ^ - macro local label override operator - macro string delimiter or quoted string define expansion character @ - function delimiter * - location counter substitution ++ - string concatenation operator [] - substring delimiter << - i/o short addressing mode force operator < - short addressing mode force operator > - long addressing mode force operator # - immediate addressing mode operator #< - immediate short addressing mode force operator #> - immediate long addressing mode force operator
6-12 DSP56009EVMUM motorola example test program assembling the program 6.3.3.2 assembly control the directives used for assembly control are: comment - start comment lines define - define substitution string end - end of source program fail - programmer generated error message force - set operand forcing mode himem - set high memory bounds include - include secondary file lomem - set low memory bounds mode - change relocation mode msg - programmer generated message org - initialize memory space and location counters radix - change input radix for constants rdirect - remove directive or mnemonic from table scsjmp - set structured control branching mode scsreg - reassign structured control statement registers undef - undefine define symbol warn - programmer generated warning
example test program assembling the program motorola DSP56009EVMUM 6-13 6.3.3.3 symbol definition the directives used to control symbol definition are: endsec - end section equ - equate symbol to a value global - global section symbol declaration gset - set global symbol to a value local - local section symbol declaration section - start section set - set symbol to a value xdef - external section symbol definition xref - external section symbol reference 6.3.3.4 data definition/storage allocation the directives used to control constant data definition and storage allocation are: baddr - set buffer address bsb - block storage bit-reverse bsc - block storage of constant bsm - block storage modulo buffer - start buffer dc - define constant dcb - define constant byte ds - define storage dsm - define modulo storage dsr - define reverse carry storage endbuf - end buffer
6-14 DSP56009EVMUM motorola example test program assembling the program 6.3.3.5 listing control and options the directives used to control the output listing are: list - list the assembly lstcol - set listing field widths nolist - stop assembly listing opt - assembler options page - top of page/size page prctl - send control string to printer stitle - initialize program subtitle tabs - set listing tab stops title - initialize program title 6.3.3.6 object file control the directives used for control of the object file are: cobj - comment object code ident - object code identification record symobj - write symbol information to object file
example test program assembling the program motorola DSP56009EVMUM 6-15 6.3.3.7 macros and conditional assembly the directives used for macros and conditional assembly are: dup - duplicate sequence of source lines dupa - duplicate sequence with arguments dupc - duplicate sequence with characters dupf - duplicate sequence in loop endif - end of conditional assembly endm - end of macro definition exitm - exit macro if - conditional assembly directive maclib - macro library macro - macro definition pmacro - purge macro definition 6.3.3.8 structured programming the directives used for structured programming are: .break - exit from structured loop construct .continue - continue next iteration of structured loop .else - perform following statements when .if false .endf - end of .for loop .endi - end of .if condition .endl - end of hardware loop .endw - end of .while loop .for - begin .for loop .if - begin .if condition .loop - begin hardware loop .repeat - begin .repeat loop .until - end of .repeat loop .while - begin .while loop
6-16 DSP56009EVMUM motorola example test program motorola dsp linker 6.3.4 assembling the example program the assembler is a ms-dos based program, thus to use the assembler you will need to exit windows or open a ms-dos prompt window. to assemble the example program, type asm56000 -a -b -l -g example.asm in the evm007 directory created by the installation process from section 1.4.3 . this will create two additional files: example.cld and example.lst. the example.cld file is the absolute object file of the program, and this is what will be downloaded into the dsp56009. the example.lst file is the listing file and gives full details of where the program and data will be placed in the dsp56009 memory. 6.4 motorola dsp linker though not needed for our simple example, the motorola dsp linker is also discussed here in the dsp56009evm user? manual. the dsp linker may be obtained through your motorola sales office or distributor. the motorola dsp linker is a program that processes relocatable object files produced by the motorola dsp assembler, generating an absolute executable file that can be downloaded to the dsp56009. the general format of the command line to invoke the linker is: dsplnk [options] where dsplnk is the name of the motorola dsp linker program, and is a list of the relocatable object files to be linked. the following section describes the linker options. to avoid ambiguity, the option arguments should immediately follow the option letter with no blanks between them.
example test program motorola dsp linker motorola DSP56009EVMUM 6-17 6.4.1 linker options -a this option auto-aligns circular buffers. any modulo or reverse-carry buffers defined in the object file input sections are relocated independently in order to optimize placement in memory. code and data surrounding the buffer are packed to fill the space formerly occupied by the buffer and any corresponding alignment gaps. example: dsplnk -a myprog.cln this example links the file myprog.cln and optimally aligns any buffers encountered in the input. -b this option specifies that an object file is to be created for linker output. can be any legal operating system filename, including an optional pathname. if no filename is specified, or if the -b option is not present, the linker will use the basename (filename without extension) of the first filename encountered in the input file list and append .cld to the basename. if the -i option is present (see below), an explicit filename must be given. this is because if the linker followed the default action, it possibly could overwrite one of the existing input files. the -b option should be specified only once. if the file named in the -b option already exists, it will be overwritten. example: dsplnk -bfilter.cld main.cln fft.cln fio.cln in this example, the files main.cln, fft.cln, and fio.cln are linked together to produce the absolute executable file filter.cld. -ea or -ew these options allow the standard error output file to be reassigned on hosts that do not support error output redirection from the command line. must be present as an argument, but can be any legal operating system filename, including an optional pathname. the -ea option causes the standard error stream to be written to ; if exists, the output stream is appended to the end of the file. the -ew option also writes the standard error stream to ; if exists it will be overwritten. example: dsplnk -ewerrors myprog.cln
6-18 DSP56009EVMUM motorola example test program motorola dsp linker this example redirects the standard error output to the file errors. if the file already exists, it will be overwritten. -f this option indicates that the linker should read command line input from . can be any legal operating system filename, including an optional pathname. is a text file containing further options, arguments, and filenames to be passed to the linker. the arguments in the file need be separated only by some form of white space. a semicolon on a line following white space makes the rest of the line a comment. example: dsplnk -fopts.cmd this example invokes the linker and takes command line options and input filenames from the command file opts.cmd. -g this option sends source file line number information to the object file. the generated line number information can be used by debuggers to provide source-level debugging. example: dsplnk -b -gmyprog.cln this example links the file myprog.cln and sends source file line number information to the resulting object file myprog.cld. -i the linker ordinarily produces an absolute executable file as output. when the -i option is given, the linker combines the input files into a single relocatable object file suitable for reprocessing by the linker. no absolute addresses are assigned and no errors are issued for unresolved external references. note that the -b option must be used when performing incremental linking in order to give an explicit name to the output file. if the filename were allowed to default, it could overwrite an existing input file. example: dsplnk -i -bfilter.cln main.cln fft.cln fio.cln in this example, the files main.cln, fft.cln, and fio.cln are combined to produce the relocatable object file filter.cln.
example test program motorola dsp linker motorola DSP56009EVMUM 6-19 -l the linker ordinarily processes a list of input files, which each contain a single relocatable code module. if the -l option is encountered, the linker treats the following argument as a library file and searches the file for any outstanding unresolved references. if a module is found in the library that resolves an outstanding external reference, the module is read from the library and included in the object file output. the linker continues to search a library until all external references are resolved or no more references can be satisfied within the current library. the linker searches a library only once, when it is encountered on the command line. therefore, the position of the -l option on the command line is significant. example: dsplnk -b filter main fir -lio this example illustrates linking with a library. the files main.cln and fir.cln are combined with any needed modules in the library io.lib to create the file filter.cld. -m this option indicates that a map file is to be created. can be any legal operating system filename, including an optional pathname. if no filename is specified, the linker will use the basename (filename without extension) of the first filename encountered in the input file list and append .map to the basename. if the -m option is not specified, then the linker will not generate a map file. the -m option should be specified only once. if the file named in the -m option already exists, it will be overwritten. example: dsplnk -m filter.cln gauss.cln in this example, the files filter.cln and gauss.cln are linked together to produce a map file. because no filename was given with the -m option, the output file will be named using the basename of the first input file, in this case filter. the map file will be called filter.map. -n the linker considers case significant in symbol names. when the -n option is given the linker ignores case in symbol names; all symbols are mapped to lower case. example: dsplnk -n filter.cln fft.cln fio.cln
6-20 DSP56009EVMUM motorola example test program motorola dsp linker in this example, the files filter.cln, fft.cln, and fio.cln are linked to produce the absolute executable file filetr.cld. all symbol references are mapped to lower case. -o[][]: by default, the linker generates instructions and data for the output file beginning at absolute location zero for all dsp memory spaces. this option allows the programmer to redefine the start address for any memory space and associated location counter. is one of the single-character memory space identifiers (x, y, l, p). the letter may be upper or lower case. the optional is a letter indicating the high (h) or low (l) location counters. if no counter is specified, the default counter is used. is also optional and signifies the desired physical mapping for all relocatable code in the given memory space. it may be i for internal memory, e for external memory, r for rom, a for port a, and b for port b. if is not supplied, then no explicit mapping is presumed. the is a hexadecimal number signifying the new relocation address for the given memory space. the -o option may be specified as many times as needed on the command line. this option has no effect if incremental linking is being done (see the -i option). example: dsplnk -ope:200 myprog -lmylib this example initializes the default p memory counter to hex 200 and maps the program space to external memory. -p when the linker encounters input files, the current directory (or the directory given in the library specification) is first searched for the file. if it is not found and the -p option is specified, the linker prefixes the filename (and optional pathname) of the file specification with and searches the newly formed directory pathname for the file.the pathname must be a legal operating system pathname. the -p option may be repeated as many times as desired. example: dsplnk -p\project\ testprog this example uses ibm pc pathname conventions, and would cause the linker to prefix any library files not found in the current directory with the \project\ pathname. -r this option indicates that a memory control file is to be read to determine the placement of sections in dsp memory and other linker control functions. can
example test program motorola dsp linker motorola DSP56009EVMUM 6-21 be any legal operating system filename, including an optional pathname. if a pathname is not specified, an attempt will be made to open the file in the current directory. if no filename is specified, the linker will use the basename (filename without extension) of the first filename encountered in the link input file list and append .ctl to the basename. if the -r option is not specified, then the linker will not use a memory control file. the -r option should be specified only once. example: dsplnk -rproj filter.cln gauss.cln in this example, the files filter.cln and gauss.cln are linked together using the memory file proj.ctl. -u this option allows the declaration of an unresolved reference from the command line. must be specified. this option is useful for creating an undefined external reference in order to force linking entirely from a library. example: dsplnk -ustart -lproj.lib this example declares the symbol start undefined so that it will be resolved by code within the library proj.lib. -v this option causes the linker to report linking progress (beginning of passes, opening and closing of input files) to the standard error output stream. this is useful to insure that link editing is proceeding normally. example: dsplnk -v myprog.cln this example links the file myprog.cln and sends progress lines to the standard error output.
6-22 DSP56009EVMUM motorola example test program motorola dsp linker -x[,,...,] the -x option provides for link time options that alter the standard operation of the linker. the options are described below (* means default). all options may be preceded by no to reverse their meaning. the -x sequence can be repeated for as many options as desired. option meaning abc* perform address bounds checking aec* check form of address expressions asc enable absolute section bounds checking csl cumulate section length data eso do not allocate memory below ordered sections ovlp warn on section overlap ro allow region overlap rsc* enable relative section bounds checking svo preserve object file on errors wex add warning count to exit status example: dsplnk -xwex filter.cln fft.cln fio.cln this example allows the linker to add the warning count to the exit status so that a project build will abort on warnings as well as errors. -z this option allows the linker to strip source file line number and symbol information from the output file. symbol information normally is retained for debugging purposes. this option has no effect if incremental linking is being done (see the -i option). example: dsplnk -zfilter.cln fft.cln fio.cln in this example, the files filter.cln, fft.cln, and fio.cln are linked to produce the absolute object file filter.cln. the output file will contain no symbol or line number information.
example test program motorola dsp linker motorola DSP56009EVMUM 6-23 6.4.2 linker directives similar to the assembler directives, the linker includes mnemonic directives that specify auxiliary actions to be performed by the linker. the following sections briefly describe the linker directives. balign -auto-align circular buffers base - set region base address ident - object module identification include - include directive file map - map file format control memory - set region high memory address region - establish memory region reserve - reserve memory block sbalign - auto-align section buffers secsize - pad section length section - set section base address set - set symbol value sizsym - set size symbol start - establish start address symbol - set symbol value
6-24 DSP56009EVMUM motorola example test program introduction to the debugger software 6.5 introduction to the debugger software this section will give a brief introduction of the domain technologies debugger, detailing only that which is required to work through this example. full details of the debugger and an informative tutorial can be found in the debug-56k manual. the domain technologies debugger is a software development system for the dsp56009. the domain technologies debugger is included with the dsp56009evm on the domain technologies 3-1/2 inch diskette and can be installed by following the instructions in section 1.4.3 . to invoke the debugger, double-click on the icon labelled evm56007 debugger in the evm56007 program group that was created when the debugger was installed. the debugger display will be similar to figure 6-2, with the screen divided into four windows: the command window, the data window, the unassembly window, and the registers window (dsp56303evm debugger shown). the command window is the window selected, which means that key strokes will be placed in the command window. the command window is where commands are entered. the data window is used to display dsp56009 data. the unassembly window is used to display the dsp56009 programs. the next instruction to be executed will be highlighted. the registers window shows the contents of the dsp56009 internal registers.
example test program introduction to the debugger software motorola DSP56009EVMUM 6-25 when the command window is selected as in figure 6-2 , the tool-bar at the top of the screen contains buttons for the most often used commands. from right to left the commands are: go, stop, step, jump, automatic update, reset and radix. the go button runs the dsp56009 from the program counter. the stop button stops the dsp56009. the step button executes a single instruction. the jump button is similar to the step button, except that subroutines are treated as one instruction. the automatic update button turns the automatic screen update mode on, so that the dsp56009 is interrupted periodically to update the data and registers windows. the reset button resets the dsp56009. the radix button can be used to change the radix of the selected window. other buttons will appear when other windows are selected, and the function of these buttons can be found in the debug-56k manual. figure 6-2 example debugger window display
6-26 DSP56009EVMUM motorola example test program running the program 6.6 running the program to load the example program developed above into the debugger, click in the command window and type load example . the instruction at line 33 will be highlighted in the unassembly window, as this will be the first instruction to be executed. however, before we start to execute the program, we should check that the values we expect to be in data memory are there. to do this, type display x:0 and display y:0 . the data will be displayed in the data window. to step through the program, type step at the command window prompt. as a shortcut, you can click on the step button or you can type the start of the command and press the space bar, and the debugger will complete the remainder of the command. to repeat the last command, simply press return. as you step through the code, you will see the registers in the registers window being changed by the instructions. after each cycle, any register that has been changed will be brightened. once you have stepped through the program, ensure that the program has executed correctly by checking that the result in accumulator a is: $fe 9f2051 6dfcc2. stepping through the program like this is good for short programs, but it is impractical for large complex programs. the way to debug large programs is to set breakpoints. these are user-defined points at which execution of the code will stop, allowing the user to step through the section of interest. to set a breakpoint in the example to check that the values in r0 and r4 are correct before the do loop, type break p:$106 in the command window. you will see the line before the loop brighten in the unassembly window, indicating the breakpoint has been set. to point the dsp56009 back to the start point of the program, type change pc 0 . this changes the program counter such that it is pointing to the reset vector. to start the program running type go or click on the go button. the dsp56009 will stop when it reaches the breakpoint, and you will be able to step through the remainder of the code. to exit the debugger, type quit at the command prompt.
motorola DSP56009EVMUM a-1 appendix a audio pass-through example
a-2 DSP56009EVMUM motorola audio pass-through example a.1 pass-through theory . . . . . . . . . . . . . . . . . . . . . . . . . a-3 a.2 spdif input pass-through theory . . . . . . . . . . . . . a-4 a.3 evm setup for audio pass-through . . . . . . . . . . . . a-5
audio pass-through example pass-through theory motorola DSP56009EVMUM a-3 a.1 pass-through theory the main program loop of the passthru.asm code serves as a reference guide on how to pass data into and out of the evm. the following describes the operation of the passthru.asm program. audio samples are composed of left and right data words that are received and trans- mitted alternately. the rx_here bit is polled until it is set, indicating that a the left data word is shifted in on the associated serial receive data pin (sdi0 or sdi1) and transferred to the receive data register (rx0, rx1, or rx2). this bit is cleared after the word is received. the left receive interrupt service routine moves the word in the receive data register into the receive buffer left_audin. the received word is also saved into another register such as x1. the user's code may be inserted in this section to perform any necessary audio processing. the word to be transmitted out, stored in x1 is then moved into the left_audout transmit buffer. the left transmit interrupt service routine moves the word in the transmit buffer into the transmit data register (tx0, tx1, or tx2) and it is shifted out on the associated serial transmit data pin (sdo0, sdo1, or sdo2). the right data is received and transmitted similarly. after the right word is received, the rx_here bit is set in the right receive interrupt routine to indicate that the next data to be received (left data) is a new sample. the program loops back to the beginning of the main code to receive the next sample. the illustration shown in figure a-1 is the interrupt sequence for analog audio input.
a-4 DSP56009EVMUM motorola audio pass-through example spdif input pass-through theory sai_lft_tx_irq movep x:left_audout,x:tx0 movep x:left_audout,x:tx1 movep x:left_audout,x:tx2 ;movep x:left_digout,x:tx0 ;movep x:left_digout,x:tx1 ;movep x:left_digout,x:tx2 rti ; sai_rgt_tx_irq movep x:right_audout,x:tx0 movep x:right_audout,x:tx1 movep x:right_audout,x:tx2 ;movep x:right_digout,x:tx0 ;movep x:right_digout,x:tx1 ;movep x:right_digout,x:tx2 rti figure a-1 output interrupt structure for analog input a.2 spdif input pass-through theory in order to perform the pass-through example with the s/pdif input instead of the analog inputs, a few changes must be made to the ?e, passthru.asm . the structure already supports digital input buffers, therefore the only change necessary to enable digital audio input is in the interrupt routines, as shown below in figure a-2 . sai_lft_tx_irq ;movep x:left_audout,x:tx0 ;movep x:left_audout,x:tx1 ;movep x:left_audout,x:tx2 movep x:left_digout,x:tx0 movep x:left_digout,x:tx1 movep x:left_digout,x:tx2 rti ; sai_rgt_tx_irq ;movep x:right_audout,x:tx0 ;movep x:right_audout,x:tx1 ;movep x:right_audout,x:tx2 movep x:right_digout,x:tx0 movep x:right_digout,x:tx1 movep x:right_digout,x:tx2 rti figure a-2 output interrupt structure for digital input
audio pass-through example evm setup for audio pass-through motorola DSP56009EVMUM a-5 a.3 evm setup for audio pass-through the input sources for the respective output channels for the demo, passthru.cld , are illustrated below in table a-1 . the output channels are speci?d in the output interrupt routines, sai_lft_tx_irq and sai_rgt_tx_irq . the audio pass-through evm jumper con?uration is illustrated below in figure a-3 . note that jp5 is con?ured to clock from the dsp clock and receive analog input data. therefore, in order to receive the spdif input clock and data the jumper on jp5.3 and jp5.4 must be removed. also, note that jp4 is set for non-optical input. table a-1 output sources for audio pass-through audio source evm output analog inputs left 1 right 1 analog inputs left 2 right 2 digital inputs left 3 right 3
a-6 DSP56009EVMUM motorola audio pass-through example evm setup for audio pass-through figure a-3 dsp56009evm pass-through setup 68hc711e9 lcd display sc937-02 rs-232 once tm reset cs5390 pld dsp 56009 68hc705k1 cs4331 cs3310 cs3310 cs4331 cs3310 cs4331 stk10c68 cs8412 cs8402a analog power 30-pin simm socket jp7 jp4 jp2 jp5 jp3 j9 j18 jp1 jp6 j2 j3 digital power spdif in spdif out right in left in analog outputs right 3 right 2 left 2 left 1 right 1 left 3 analog inputs j5 jp9 infrared remote receiver in optical out optical j1 ls rs c sub l r
motorola DSP56009EVMUM b-1 appendix b sound field processing example
b-2 DSP56009EVMUM motorola sound field processing example b.1 introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-3 b.2 early reflections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-3 b.3 delay line for combs/reverberation . . . . . . . . . . b-6 b.4 comb filter. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-7 b.5 all-pass filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . b-8 b.6 de-correlation routine . . . . . . . . . . . . . . . . . . . . . . . b-9 b.7 dsp56009evm setup for sfp demonstration . . . b-11 b.8 block diagram of the sound field processor b-13 b.9 x/y memory map for sound field processor . . b-15 b.10 reverb time analysis . . . . . . . . . . . . . . . . . . . . . . . . . b-17
sound field processing example introduction motorola DSP56009EVMUM b-3 b.1 introduction the phrase ?ound ?ld processing?seems to embody a sense of extra space added to an original sound. with the advent of practical multichannel sound, processing certain sound ?lds arti?ially became attainable and edi?s the listening environment when certain theaters or other settings are replicated in software. in order to create the delay and reverberation elements that typify certain acoustical spaces, ?tering and delay components must be instituted. therefore, dsps ideally might handle even the toughest simulation. the sound?ld processing example offered here is a design based around studies performed independently by manfred schroeder and james moorer 1 . each provide important insight into effective algorithms that create arti?ial reverberation. this appendix will explain speci?ally the reverberation blocks inherent in one particular example; however, this example provides only one of many as de?ed by schroeder and moorer. this implementation uses ?ter coef?ients collected by schroeder that imitate the boston concert hall. a four channel output is generated: left front, right front, left rear, and right rear; with a summed output feeding the center channel which may also be lowpass ?tered to be used for a subwoofer channel. the complete block diagram of the system is shown in figure b-8 . the software to implement this design is provided on the dsp56009 diskette for view- ing/editing as sfpevm09.asm and for downloading onto the evm as sfpevm09.cld. the sfpevm09.asm may be operated with either a dsp56004, dsp56007, or dsp56009. the basic reverberation elements utilized in the ?e, sfpevm09.asm , include an early re?ction fir ?ter for each of the four main channels and a reverberation unit comprised of six parallel comb ?ters and a single all-pass ?ter. this code as written can be implemented on the dsp56009evm. b.2 early reflections schroeder suggested a method for simulating early wall reflections and room geometry by combining the direct summation of the original signal with a standard unit reverberator to recreate late echos. the theory proposes that the first gains and delays simulate the room? geometry patterned after an fir (non-recursive) filter structure; and the unit reverberator/iir (recursive) filter imitates the decay of the reverberation once the pulses become inseparable. 1. moore, james. ?bout this reverberation business.?computer music journal, vol 3, #2.
b-4 DSP56009EVMUM motorola sound field processing example early reflections implemented in software, the algorithm takes advantage of the sai (serial audio interface) and the emi (external memory interface), two of the peripherals on motorola? symphony line of dsps. the input samples are received by the sai as left and right channel data stored in memory. these samples are delayed several milliseconds and retrieved according to the early reflection offset table er_off_buf . er_off_buf is constructed as a seven-tap fir section (see figure b-1 ). table b-1 below illustrates the respective tap and its associated time delay and gain as patterned after the boston concert hall. twelve samples are read from the delay line(two channels, left and right, multiplied by the offset table which is six deep) and four fir filters are calculated. reading of the delayed samples is triggered by writing offset values to the emi? eor0 and eor1 registers (as defined by the values in er_dax). the fir filter creates the early reflection defining the room size and reflective characteristics of the room environment. the fir filter is implemented within a do loop (instructions 33-70) in which the offset information is retrieved by a post incrementing pointer, r4, and the left and right data samples are read via the edr registers. the do loop is shown in figure b-1 below. 1 clr a #er_off_buf,r4 ;clr acc, offset start 2 ;address in r4. 3 !loop reduce 4 clr b #er_gains, r1 ;clr acc, gains start 5 ;address in r1. 6 !loop reduce 7 move m7,m1 ;set linear 8 move #front,r5 ;pointer r5 for samples 9 movep x:(er_ebar),x:ebar0 ;fir left delay line 10 movep y:(er_ebar),x:ebar1 ;fir right delay line 11 move l:(r4)+,x ;get 1?t stage left and 12 ;right offsets table b-1 early reflection fir structure tap time delay gain 0 0 1.00 1 0.0199 1.02 2 0.0354 0.818 3 0.0389 0.635 4 0.0414 0.719 5 0.0699 0.267 6 0.0796 0.242
sound field processing example early reflections motorola DSP56009EVMUM b-5 13 movep x1,x:eor0 ;1st stage trigger of left 14 movep x0,x:eor1 ;1st stage trigger of right 33 do #(nfir-1),end_fir ; emi reading 34 35 move l:(r4)+,x ; get next stage l & r offsets 36 37 movep x1,x:eor0 ; next left trigger 38 movep x:edr0,x1 ; get left sample 39 movep x0,x:eor1 ; next right trigger 40 movep x:edr1,y1 ; get right sample 41 ; front 42 43 mac x1,y0,a x:(r1)+,x0 b,y:(r5)- ;left from left, 44 ;get left front right gain, 45 ; store right rear 46 macr x0,y1,a x:(r1),x0 y:(r5),b ; left from right, 47 ; get right front 48 ; right gain, 49 ; get right front 50 mac x0,y1,b a,x:(r5)+ y:(r1)+,y0;right from right, 51 ;get right front left gain, 52 ; store left front 53 macr x1,y0,b x:(r5)-,a y:(r1),y0 ;right from left, 54 ;get left rear left gain, 55 ; get left rear 56 ; rear 57 58 mac x1,y0,a x:(r1)+,x0 b,y:(r5)+ ;left from left, 59 ;get left rear right gain, 60 ; store right front 61 macr x0,y1,a x:(r1),x0 y:(r5),b ;left from right, 62 ;get right rear right gain, 63 ; get right rear 64 mac x0,y1,b a,x:(r5)- y:(r1)+,y0;right from right, 65 ;get right rear left gain, 66 ; store left rear 67 macr x1,y0,b x:(r5)+,a y:(r1),y0 ;right from left, 68 ;get left front left gain, 69 ; get left front 70 end_fir 71 ; complete the loop 72 move l:(in_in),x ; get l & r delay line samples 73 74 movep x1,x:edr0 ; store l_in (base incremented) 75 movep x:edr0,x1 ; get last left sample 76 movep x0,x:edr1 ; store r_in (base incremented) 77 movep x:edr1,y1 ; get last r sample figure b-1 early reflection do loop
b-6 DSP56009EVMUM motorola sound field processing example delay line for combs/reverberation the early reflection part is constructed such that the first emi write transfer triggers are performed in lines 13-14 before the do loop; therefore, the first delayed emi read can occur after the first offsets are retrieved from x and y memory in line 35 within the do loop. following the beginning of the do loop, a trigger occurs (lines 37 and 39). in the next iteration of the do loop the corresponding read occurs (lines 38 and 40). therefore, the final emi reads transpire at the termination of the loop in lines 75 and 77 and the final left and right delay line samples are stored in x memory (line 72). each time the loop executes, the left and right samples are multiplied by their corresponding gains from er_gains in pointer r1 (lines 43, 46) and routed to the corresponding output. for instance, the comment in line 43, ? left from left signifies that the left fir multiply is routed to the left output. the comment in line 46, ? left from right?likewise denotes that the right fir multiply is routed to the left output. this structure can be explicitly seen in figure b-8 on page -14. the pointer, r5, contains the input samples for the early reflections and the pointer, r4, contains the delay values for the fir as stated previously. the block diagram of the early reflection is illustrated in figure b-2 . figure b-2 early reflection fir block (one channel) b.3 delay line for combs/reverberation this portion of the code acts as the gathering point for the results of the four early re- ?ction fir blocks for the left front, right front, left rear, and right rear, respectively. the saved values from each of these processes are summed with averaging weights and stored in a delay line for use in the following comb ?ter and all-pass ?ter blocks, ? x(n) y(n) 19.9ms 15.5ms 3.5ms 2.5ms 28.5ms 9.7ms 19.9ms 35.4ms 38.9ms 41.4ms 69.9ms 79.6ms 1.0 1.01 .817 .634 .718 .266 .241 er_gains
sound field processing example comb filter motorola DSP56009EVMUM b-7 which generate the diffuse reverberation. the timing of the delay is designed to syn- chronize the inputs to the comb ?ter section. the summed value is routed to the center channel. b.4 comb filter following the early re?ctions, there follows a section of six parallel comb ?ters that create diffuse ?ld reverberation. recursive comb ?ters provide delay and incorpo- rate feedback, which generate a ?oothed?frequency response. moorer determined that the gain, g , should be a function of the reverberation time according to the formula: g = 1 - 0.366/t where t=reverberation time (a.1) the values of the optimal gain in the feedback loop, g 1 , are determined by the room humidity versus distance from the source and the sample rate of the system. from moorer? diagrams, the coef?ients for a 44.1 khz sample rate can be discerned. larger values of g 1 will produce bright reverberation at the onset followed by a muf?d decay. the loopback gain, g 2 , can be determined by the equation g 2 = g(1-g 1 ) (a.2) the total reverberation time for sfpevm09.asm is designed for two seconds. there- fore, using (a.1) , the overall gain, g , is 0.83. the values of g 1 for the seven-tap comb ?ter model are shown in table b-2 below. the block diagram of one of the six comb ?ter structures is shown in figure b-3 table b-2 comb filter loop-back gains comb # delay (in ms) g 1 comb 1 50 0.45 comb 2 56 0.47 comb 3 61 0.49 comb 4 68 0.51 comb 5 72 0.52 comb 6 78 0.54
b-8 DSP56009EVMUM motorola sound field processing example all-pass filter below. figure b-3 comb filter (one of six) the output of each of the six comb ?ters is summed and routed to the all-pass ?ter portion of the program. b.5 all-pass filter the all-pass ?ter has a ?t frequency response from 0 hz to the nyquist frequency; however, the phase response delays different frequencies by different amounts. this provides a very distinct sound approaching a phasing effect. moorer de?es the most natural sounding unit reverberator to contain a number of comb ?ters and a single all-pass ?ter. he also states that the use of more than six parallel comb ?ters and one all-pass ?ter does not signi?antly enhance reverberant qualities. therefore, only a single all-pass ?ter is implemented here. the delay must be set to six milliseconds or less, as longer delays produce what moorer describes as an audible repetition. the gain, constant g , of the all-pass ?ter is 0.7. the block diagram for the all-pass ?ter is shown in figure b-4 . figure b-4 all-pass filter ? z -m ? z -1 g 1 g 2 x(n) y(n) ? ? z -m x(n) v(n) -g 1 g 1 1-g 1 2 y(n) y(n-t) z(n)
sound field processing example de-correlation routine motorola DSP56009EVMUM b-9 the value z(n), which is the value of the upper gain stage, is computed first, the delay z -m is accessed from the edr0 (emi data read register), and v(n) is computed. the parallel move feature of motorola? dsp56k architecture allows this arithmetic to be achieved in only four instructions, as shown in figure b-5 . 1 move b,y0 x:(r6)+,x1 ; transfer x(n) to y0 for 2 ; multiplication get 1-k**2 at x1 3 mpy -y0,y1,a x:(r0),x0 ; z(n)=-k*x(n), 4 ; get y(n-t) from edr0 to x0 5 macr x0,y1,b (r4)- ; compute y(n)= x(n)+k*y(n-t) 6 ; pointer goes to apf end 7 macr x0,x1,a b,x:(r0) ; compute v(n)=z(n)+(1-k**2) ; *y(n-t), 8 ; store y(n) figure b-5 all-pass filter routine in the above example, r6, points to the comb_gains , r0 points to the emi data read register edr0, and r4 points to eecomb, which is the base addresses of the delays. the ?al instructions in the routine store the all-pass output v(n) and the base address (ebar0) of the latest sample to be passed to the decorrelator and rear delay lines, as shown in figure b-6 below. a description of the de-correlator and delay line are provided in b.6 de-correlation routine on page b-9. the all-pass portion may be set to loop to allow for more multiple ?ter designs. however, james moorer states that this produces only a negligible increase in rever- berant quality. b.6 de-correlation routine the data stream output from the main reverb routine is combined with each of the separate early re?ction values to provide the four discrete outputs: left front, right front, left rear, and right rear. this routine takes the output of the ?st early re?ction value and decorrelates the signals from each of the other three channels. the de-cor- relation is performed by using all-pass ?ters with different coef?ients to adjust the phase of each channel independently. the all-pass ?ter? delay base and offset values and the gains are saved using pointers r0 and r4 and then extracted as their manipulation occurs. the instructions:
b-10 DSP56009EVMUM motorola sound field processing example de-correlation routine front_right movep x:(r4),x:ebar0 movep y:(r4)+,x:eor0 front_left movep x:(r4),x:ebar1 movep y:(r4)+,x:eor1 save the front right and left base and offset values from the tables, eeapf_fr and eeapf_fr and apf_fr_coeffs, respectively. then the all-pass function is simply imple- mented as in b.5 all-pass filter on page b-8, utilizing the corresponding channel? delays (affecting phase only in an all-pass ?ter). the de-correlation block diagram is shown in figure b-6 . figure b-6 de-correlation routine ? ? z -m -g 0 g 0 g 1 ? ? z -m -g 0 g 0 g 1 ? ? x lf y out x rf y out lf rev rf rev ? ? z -m -g 0 g 0 g 1 ? x rr y out rr rev ? ? z -m -g 0 g 0 g 1 ? x lr y out lr rev z -m z -m rnda6g rnda18g rnda6g rnda18g rnda6g rnda18g rnda6g rnda18g
sound field processing example dsp56009evm setup for sfp demonstration motorola DSP56009EVMUM b-11 the gains of the respective gains for the de-correlation all-pass ?ters are shown in table b-3 below. b.7 dsp56009evm setup for sfp demonstration the jumper con?uration necessary to run the sound field processing demonstration for the dsp56009evm is shown below in figure b-7 . note that jp5 is con?ured to clock from the dsp clock and receive analog input data. therefore, in order to receive the spdif input clock and data the jumper on jp5.3 and jp5.4 must be removed. table b-3 de-correlation all-pass filter gains channel g 0 g 1 (1-g 0 2 ) lf 0.65 0.58 rf 0.80 0.36 rr 0.75 0.44 lr 0.60 0.64
b-12 DSP56009EVMUM motorola sound field processing example dsp56009evm setup for sfp demonstration figure b-7 evm configuration for sound field processing demo in order to adequately run the sfpevm09.cld ?e, a 256 kbyte 30-pin simm dram must also be provided at connector u15. an audio source, an audio ampli?r driving headphones or speakers, and cables with rca/phono connectors for ?e channels are required to use the demo software. the sfpevm09.cld demo operates with ?e of the six channel outputs shown in table b-4 below. table b-4 sound field processing audio outputs evm output demo channel left 1 right 1 front left front right 68hc711e9 lcd display sc937-02 rs-232 once tm reset cs5390 pld dsp 56009 68hc705k1 cs4331 cs3310 cs3310 cs4331 cs3310 cs4331 stk10c68 cs8412 cs8402a analog power 30-pin simm socket jp7 jp4 jp2 jp5 jp3 j9 j18 jp1 jp6 j2 j3 digital power spdif in spdif out right in left in analog outputs right 3 right 2 left 2 left 1 right 1 left 3 analog inputs j5 jp9 infrared remote receiver in optical out optical j1 ls rs c sub l r
sound field processing example block diagram of the sound field processor motorola DSP56009EVMUM b-13 in order to operate the sound ?ld processing demonstration, open the debug-evm and load the ?e, sfpevm09.cld . once the object ?e has downloaded successfully, type go in the command window or click on the run icon. the demonstration should now execute. macro commands that enable and disable the reverberation routines are provided with the sound field processing code. the command ?e, normal.cmd may be input in the command window of the domain debugger as ?ormal?and the reverberation will be effectively bypassed. likewise, the command ?e, reverb.cmd may be input in the command window as ?everb?to enable the sound ?ld processor. b.8 block diagram of the sound field processor the block diagram of the sound ?ld processor utilizing the four aforementioned blocks is shown in figure b-8 . left 2 right 2 n/a center left 3 right 3 rear left rear right table b-4 sound field processing audio outputs
b-14 DSP56009EVMUM motorola sound field processing example block diagram of the sound field processor ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? l in_in1 r in_in1 left right ? ? ? ? ? ? ? ? ? ? ? ? ? center channel and/or subwoofer ? ? ? y out x lf x rf x rr x lr atten. atten. l l l l l l l r r r r r r r l l l l l l l r r r r r r r r r r r r r r l l l l l l l l l l l l l l r r r r r r r z -m z -1 z -m z -1 z -m z -1 z -m z -1 z -m z -1 z -m z -1 z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m z -m t 1 early reflection comb filter all-pass filter figure b-8 sound field processor
sound field processing example x/y memory map for sound field processor motorola DSP56009EVMUM b-15 b.9 x/y memory map for sound field processor table b-5 shows the memory map of the x and y memories of the dsp546009 running the sfpevm09.cld program. table b-5 x and y memory map for sound field processing demo label address x: y: comments rsrvd5 005b reserved reserved rsrvd4 005a reserved reserved rsrvd3 0059 reserved reserved rsrvd2 0058 reserved reserved rsrvd1 0057 reserved reserved reserved (also end_table1) apf_rl_coeffs 0056 apfagf_rl apfag_rl apf_rr_coeffs 0055 apfagf_rr apfag_rr apf_fl_coeffs 0054 apfagf_fl apfag_fl apf_fr_coeffs 0053 apfagf_fr apfag_fr output allpass coefficients eedelay_rl 0052 dly_rl_base dly_rl_off eedelay_rr 0051 dly_rr_base dly_rr_off rear output delay lines eeapf_rl 0050 apf_rl_base apf_rl_off eeapf_rr 004f apf_rr_base apf_rr_off eeapf_fl 004e apf_fl_base apf_fl_off eeapf_fr 004d apf_fr_base apf_fr_off allpass output stage delay lines tcombs_gain 004c tcomba_gain tcomba_gain total combs gain rnd_gains 004b rnda6g rnda18g round gains apf_gains 004a apfagf apfag allpass filter gains 0049 comb6g2a comb6g1a 0048 comb5g2a comb5g1a 0047 comb4g2a comb4g1a 0046 comb3g2a comb3g1a 0045 comb2g2a comb2g1a comb_gains 0044 comb1g2a comb1g1a comb gains 0043 era_rravg era_rlavg d_avgs 0042 era_fravg era_flavg delay line averaging gains 0041 era_rrrg6 era_rr1g6 0040 era_rlrg6 era_rl1g6 003f era_frrg6 era_fr1g6 003e era_flrg6 era_fl1g6
b-16 DSP56009EVMUM motorola sound field processing example x/y memory map for sound field processor 003d era_rrrg5 era_rr1g5 003c era_rlrg5 era_rl1g5 003b era_frrg5 era_fr1g5 003a era_flrg5 era_fl1g65 0039 era_rrrg4 era_rr1g4 0038 era_rlrg4 era_rl1g4 0037 era_frrg4 era_fr1g4 0036 era_flrg4 era_fl1g4 0035 era_rrrg3 era_rr1g3 0034 era_rlrg3 era_rl1g3 0033 era_frrg3 era_fr1g3 0032 era_flrg3 era_fl1g3 0031 era_rrrg2 era_rr1g2 0030 era_rlrg2 era_rl1g2 002f era_frrg2 era_fr1g2 002e era_flrg2 era_fl1g2 002d era_rrrg1 era_rr1g1 002c era_rlrg1 era_rl1g1 002b era_frrg1 era_fr1g1 002a era_flrg1 era_fl1g1 er_gains 0029 era_ling era_ring early reflection gains eeapf 0028 apf_base apfa_off allpass filters ebar and eor pair 0027 comb6_base comb6a_off 0026 comb5_base comb5a_off 0025 comb4_base comb4a_off 0024 comb3_base comb3a_off 0023 comb2_base comb2a_off eecomb 0022 comb1_base comb1a_off combs ebars and eors dcomb_ebar 0021 dl_base dla_off delay line ebar and eor (also dcomb_eor) 0020 er_offa6 er_offa6 001f er_offa5 er_offa5 001e er_offa4 er_offa4 001d er_offa3 er_offa3 001c er_offa3 er_offa2 er_off_buf 001b er_offa2 er_offa1 early reflection eors er_ebar 001a left_base right_base early reflection ebars (also table1) table b-5 x and y memory map for sound field processing demo
sound field processing example reverb time analysis motorola DSP56009EVMUM b-17 b.10 reverb time analysis the time analysis for the response of the sound ?ld processor is illustrated in figure b-9 on the following page. the rt60 (reverberation time) is de?ed as two seconds. temp2 0019 temp storage temp1 0018 temp storage t3_add 0017 x(left) y(right) third transmitter addresses to transmit control 0016 control flags mode_timeout 0015 mode change delay count mode change delay count shi_mode_new 0014 shi_mode_new gpio_mode_new 0013 gpio_mode_new new mode shi_mode_set 0012 shi_mode_set shi_counter gpio_mode_set 0011 gpio_mode_set gpio_counter mode during previous pass apf2s 0010 reserved 2nd allpass filter in series result apf1s 000f apf1s 1st allpass filter in series result apin 000e (double precision) input to allpass filters (also apout) 000d v(n?) 000c v(n?) 000b v(n?) 000a v(n?) 0009 v(n?) combs_states 0008 v(n?) internal comb state for lpf right 0007 front rear right channel before output to sai left 0006 front rear left channel before output to sai combs_input 0005 average input to combs central_channel 0004 average pre-input to combs rear 0003 left right rear sample storage front 0002 left right front sample storage in_in1 0001 left_in right_in input samples from the sai undisturbed by interrupts in_in 0000 left_in right_in input samples from the sai table b-5 x and y memory map for sound field processing demo
b-18 DSP56009EVMUM motorola sound field processing example reverb time analysis figure b-9 sound field processor time analysis early re?ction reverberation
motorola DSP56009EVMUM c-1 appendix c dsp56009evm multiplex definition
c-2 DSP56009EVMUM motorola dsp56009evm multiplex definition c.1 overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . c-3 c.2 multiplex cable specification . . . . . . . . . . . . . . . . . c-3 c.3 evm setup for multiplexing . . . . . . . . . . . . . . . . . . . c-4
dsp56009evm multiplex definition overview motorola DSP56009EVMUM c-3 c.1 overview two dsp56009evms may be connected together to utilize the memory of two symphony dsps. six-channel data is multiplexed to sdi0 and sdi1, two of the sai transmitters on the dsp of the transmit evm. the data is then demultiplexed on the dsp of the receive evm and available as discrete channels for post-processing of certain decoding algorithms on the transmit evm. the file listen.cld must be downloaded onto the receive dsp in order to de-multiplex the serial audio stream. the user? dsp assembly files may be linked with this source file. a special cable must be built in order to take advantage of this special function. c.2 multiplex cable specification the mux cable must be connected from jumper block j5 on the transmit board to j5 on the receive board. the cable must be no longer than seven or eight inches (preferably six inches). there must be ground wires interspersed between each clock and data line (those marked with an *). ground connections can be found at pins 1, 2, 11, 12, etc. as seen in the sram and external memory interface schematic. the cable must be a ribbon cable split to carry the wst and sckt signals and grounds physically separate from the wsr, sckr, sdi0, and sdi1 signals and grounds. table c-1 dsp56009evm mux cable pinout transmit receive description *3-4 *13-14 wst *5-6 *15-16 sckt *14 *4 wsr *16 *6 sckr *18 *8 sdi0 *20 *10 sdi1 7-8 9-10 25-26 27-28 29-30 31-32 37-38 39-40 43-44
c-4 DSP56009EVMUM motorola dsp56009evm multiplex definition evm setup for multiplexing c.3 evm setup for multiplexing there are a few differences between the dsp56009evm? typical setup and the setup for multiplexing. jp5 jumpers must be off on both boards and the jp2 jumper must be connected. the spdif connector must be input to both boards with an ac-3 demod- ulated bit-stream. 17-18 19-20 21-22 25-26 27-28 29-30 31-32 37-38 39-40 43-44 table c-1 dsp56009evm mux cable pinout transmit receive description
dsp56009evm multiplex definition evm setup for multiplexing motorola DSP56009EVMUM c-5 figure c-1 dsp56009evm jumper setting for multiplexing 68hc711e9 lcd display sc937-02 rs-232 once tm reset cs5390 pld dsp 56009 68hc705k1 cs4331 cs3310 cs3310 cs4331 cs3310 cs4331 stk10c68 cs8412 cs8402a analog power 30-pin simm socket jp7 jp4 jp2 jp5 jp3 j9 j18 jp1 jp6 j2 j3 digital power spdif in spdif out right in left in analog outputs right 3 right 2 left 2 left 1 right 1 left 3 analog inputs j5 jp9 infrared remote receiver in optical out optical j1 ls rs c sub l r


▲Up To Search▲   

 
Price & Availability of DSP56009EVMUM

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X