| The Datasheet Archive - 100 Million Datasheets from 7500 Manufacturers. |
Technical Notes using Analog Devices' components development tools
Top Searches for this datasheetEE-116 Technical Notes using Analog Devices' components development tools SHARC SHORT WORD Last Modified: 8/1/00 ADSP-21065L SHARC User's Manual. better understanding please chapters Memory your User's Manual. 32-bit Normal Words Introduction Controller Analog Devices SHARC® family processors does automatically data from external memory SHARC's internal memory, however data transfers still easily accomplished. following Engineer Engineer Note describes method used move data into SHARC's internal memory includes sample code. external port serial port channels have packing capability allowing data packed bits. packed words transferred internal memory using standard dma. Once data safely internal memory accessed short word memory. Figure illustrates short words organized normal word space. least significant short word address generated arithmetically shifting normal word address left bit. Arithmetically shifting normal word address left then setting generates most significant short word address. example, normal word address memory location were 0xC000 short word address would 0x18000 least significant word 0x18001 most significant word. this information found ADSP-2106x SHARC User's Manual ADDR ADDR ADDR ADDR ADDR ADDR ADDR ADDR ADDR 16-bit Short Words 16-bit Short Words DATA31-16 Figure Short word addresses Copyright 2000, Analog Devices, Inc. rights reserved. Analog Devices assumes responsibility customer product design application customers' products infringements patents rights others which result from Analog Devices assistance. trademarks logos property their respective holders. Information furnished Analog Devices Applications Development Tools Engineers believed accurate reliable, however responsibility assumed Analog Devices regarding technical accuracy content provided Analog Devices' Engineer-to-Engineer Notes. Listing1: dma.asm DMA.ASM ADSP-21065L EPORT 16/32 packing GGL, Analog Devices, Inc. 7/19/00 This code simple example getting floating point data from SDRAM packing bits using into internal memory. Once internal memory, data accessed short word operated sent back internal memory. #define #include "def21065l.h" .section/DM seg_dmda; .VAR dest[N]; This your destination buffer internal memory which resides normal word space .section/DM seg_sdram; .VAR source[2*N]=0x1111, 0x2222, 0x3333, 0x4444, 0xAAAA, 0xBBBB, 0xCCCC, 0xDDDD; This sample data from external sdram .section/pm seg_rth; This interrupt vector table Reserved_1: rti; nop; nop; nop; Chip_Reset: idle; jump start; nop; nop; Reserved_2: rti; nop; nop; nop; stack_ov: rti; nop; nop; nop; timerhi: rti; nop; nop; nop; Vector: rti; nop; nop; nop; IRQ2: rti; nop; nop; nop; IRQ1: rti; nop; nop; nop; IRQ0: rti; nop; nop; nop; Reserved_3: rti; nop; nop; nop; sport0r: rti; nop; nop; nop; sport1r: rti; nop; nop; nop; sport0t: rti; nop; nop; nop; sport1t: rti; nop; nop; nop; Reserved_4: rti; nop; nop; nop; Reserved_5: rti; nop; nop; nop; EP0: nop; nop; rti; nop; EE-116 Technical Notes using Analog Devices' components development tools Phone: (800) ANALOG-D, FAX: (781)461-3010, EMAIL: dsp.support@analog.com, FTP: ftp.analog.com, WEB: www.analog.com/dsp Page EP1: rti; nop; nop; nop; .section/pm seg_pmco; /*_start main routine_*/ start: ustat1=937; /*refresh rate*/ dm(SDRDIV)=ustat1; ustat1=dm(IOCTL); /*mask SDRAM settings*/ ustat1 dm(IOCTL)=ustat1; /*initialize sdram*/ enable interrupts here MODE1 IRPTEN; enable global interrupts here IMASK EP0I; enable eport interrupts here must register memory bufffer then enable channel with DMAC channel external port buffer r0=0; dm(DMAC0)=r0; /*clear register*/ dm(IMEP0) internal memory modifier dm(EMEP0)=r0; external memory modifier dm(CEP0) /*set internal count r0=2*N; dm(ECEP0)=r0; /*set external count r0=dest; dm(IIEP0) Write internal index pointer dest r0=source; dm(EIEP0)=r0; /*Write External buffer Index pointer source r0=0x0241; dm(DMAC0)=r0; enable channel, master mode, 16/32bit packing wait1: idle; when this completes will have words that were stored SDRAM packed words external memory only after complete program flow will continue next instruction find first address data buffer convert short word r0=dest; EE-116 Technical Notes using Analog Devices' components development tools Page Phone: (800) ANALOG-D, FAX: (781)461-3010, EMAIL: dsp.support@analog.com, FTP: ftp.analog.com, WEB: www.analog.com/dsp r1=ashift arithmetically shifting normal word address left produces short word address initialize dags short word buffer b0=r1; m0=1; l0=2*N; operate short word data return short word space r0=dm(i0,m0); f0=funpack read short word floating point data register then unpack r1=dm(i0,m0); f1=funpack f2=f0*f1; r2=fpack multiply then pack back into floating point word dm(i0,m0)=r2;/* send result memory r3=dm(i0,m0);/* read fixed point value r4=dm(i0,m0); r5=r3+r4; fixed point dm(i0,m0)=r5;/* send result memory wait2: jump wait2; Listing ADSP21065L.ldf ARCHITECTURE(ADSP-21065L) ADSP-21065L Memory Map: Internal memory 0x0000 0000 0x0007 ffff 0x0000 0000 0x0000 00ff Regs 0x0000 0100 0x0000 01ff Regs Processor 0x0000 0200 0x0000 02ff Regs Processor 0x0000 0300 0x0000 07ff Reserved Block 0x0000 8000 0x0000 9fff Normal Word (32/48) Addresses (0x0000 8000 0x0000 97ff) 48-bit words (0x0000 8000 0x0000 9fff) 32-bit words 0x0000 A000 0x0000 Bfff Reserved EE-116 Technical Notes using Analog Devices' components development tools Phone: (800) ANALOG-D, FAX: (781)461-3010, EMAIL: dsp.support@analog.com, FTP: ftp.analog.com, WEB: www.analog.com/dsp Page Block 0x0000 C000 0x0000 Dfff Normal Word (32/48) Addresses (0x0000 C000 0x0000 Cfff) 48-bit words (0x0000 C000 0x0000 Dfff) 32-bit words 0x0000 E000 0x0000 ffff Reserved Block 0x0001 0000 0x0001 3fff Short Word (16) Addresses 0x0001 4000 0x0001 7fff Reserved Block 0x0001 8000 0x0001 Bfff Short Word (16) Addresses 0x0001 C000 0x0001 ffff Reserved External memory 0x0002 0000 0x03ff ffff External Bank 0x0002 0000 0x00ff ffff External Bank 0x0100 0000 0x01ff ffff External Bank 0x0200 0000 0x02ff ffff External Bank 0x0300 0000 0x03ff ffff This architecture file allocates: Internal words run-time header memory block words initialization code memory block 3.73K words code space memory block words data space memory block words data space memory block 1.25K words heap space memory block 2.75K words stack space memory block SEARCH_DIR( $ADI_DSP\21k\lib lib060.dlb must come before libc.dlb because libc.dlb some 21020 specific code data $LIBRARIES lib060.dlb, libc.dlb, libio32.dlb; Libraries from command line included COMMAND_LINE_OBJECTS. $OBJECTS $COMMAND_LINE_OBJECTS; MEMORY seg_rth TYPE(PM RAM) START(0x00008000) END(0x000080ff) WIDTH(48) seg_init TYPE(PM RAM) START(0x00008100) END(0x0000810f) WIDTH(48) seg_pmco TYPE(PM RAM) START(0x00008110) END(0x00008fff) WIDTH(48) seg_pmda TYPE(PM RAM) START(0x00009800) END(0x00009fff) WIDTH(32) seg_dmda TYPE(DM RAM) START(0x0000C000) END(0x0000Cfff) WIDTH(32) seg_heap TYPE(DM RAM) START(0x0000D000) END(0x0000D4ff) WIDTH(32) seg_stak TYPE(DM RAM) START(0x0000D500) END(0x0000Dfff) WIDTH(32) EE-116 Technical Notes using Analog Devices' components development tools Phone: (800) ANALOG-D, FAX: (781)461-3010, EMAIL: dsp.support@analog.com, FTP: ftp.analog.com, WEB: www.analog.com/dsp Page seg_sdram TYPE(DM RAM) START(0x3000000) END(0x030ffeff) WIDTH(32) PROCESSOR LINK_AGAINST( $COMMAND_LINE_LINK_AGAINST) OUTPUT( $COMMAND_LINE_OUTPUT_FILE SECTIONS .text output section seg_rth INPUT_SECTIONS( $OBJECTS(seg_rth) $LIBRARIES(seg_rth)) >seg_rth seg_init INPUT_SECTIONS( $OBJECTS(seg_init) $LIBRARIES(seg_init)) >seg_init seg_pmco INPUT_SECTIONS( $OBJECTS(seg_pmco) $LIBRARIES(seg_pmco)) >seg_pmco seg_pmda INPUT_SECTIONS( $OBJECTS(seg_pmda) $LIBRARIES(seg_pmda)) >seg_pmda seg_dmda INPUT_SECTIONS( $OBJECTS(seg_dmda) $LIBRARIES(seg_dmda)) seg_dmda seg_sdram /*SHT_NOBITS want initialize SRAM area executable*/ INPUT_SECTIONS( $OBJECTS(seg_sdram)) seg_sdram EE-116 Technical Notes using Analog Devices' components development tools Phone: (800) ANALOG-D, FAX: (781)461-3010, EMAIL: dsp.support@analog.com, FTP: ftp.analog.com, WEB: www.analog.com/dsp Page stackseg allocate stack application ldf_stack_space ldf_stack_length MEMORY_SIZEOF(seg_stak); seg_stak heap allocate heap application ldf_heap_space ldf_heap_length MEMORY_SIZEOF(seg_heap); ldf_heap_end ldf_heap_space ldf_heap_length seg_heap EE-116 Technical Notes using Analog Devices' components development tools Page Phone: (800) ANALOG-D, FAX: (781)461-3010, EMAIL: dsp.support@analog.com, FTP: ftp.analog.com, WEB: www.analog.com/dsp Other recent searchesTPA6203A1 - TPA6203A1 TPA6203A1 Datasheet TM02306 - TM02306 TM02306 Datasheet UL1950 - UL1950 UL1950 Datasheet EN60950 - EN60950 EN60950 Datasheet SiI9244 - SiI9244 SiI9244 Datasheet SA9904A - SA9904A SA9904A Datasheet ICS853S314I - ICS853S314I ICS853S314I Datasheet FTB-1-1+ - FTB-1-1+ FTB-1-1+ Datasheet CY8C24123 - CY8C24123 CY8C24123 Datasheet CY8C24223 - CY8C24223 CY8C24223 Datasheet CY8C24423 - CY8C24423 CY8C24423 Datasheet 2SK1188 - 2SK1188 2SK1188 Datasheet
Privacy Policy | Disclaimer |