Analog Devices ADDS-2111-EZ-ICE, ADDS-2101-EZ-LAB, ADDS-2101-EZ-KIT, ADDS-2101-EZ-ICE, ADDS-2101-EZ-3V Datasheet

...
REV. B
Information furnished by Analog Devices is believed to be accurate and reliable. However, no responsibility is assumed by Analog Devices for its use, nor for any infringements of patents or other rights of third parties which may result from its use. No license is granted by implication or otherwise under any patent or patent rights of Analog Devices.
a
ADSP-2100 Family
© Analog Devices, Inc., 1995
One Technology Way, P.O. Box 9106, Norwood. MA 02062-9106, U.S.A. Tel: 617/329-4700 Fax: 617/326-8703
FEATURES
DEVELOPMENT SOFTWARE TOOLS
SYSTEM BUILDER
Defines Architecture of ADSP-21xx System Specifies Amount of RAM/ROM Memory
ASSEMBLER
Easy-to-Program, Algebraic Instruction Syntax Supports C Language Constructs Provides Flexible Macro Processing Encourages Modular Code Development
LINKER
Maps Assembler Output to Target System Memory Supports User-Defined Library Routines Creates Memory Map Listing
PROM SPLITTER & HOST PROCESSOR PORT (HIP) SPLITTER
Generates PROM Programmer Compatible Files in
a Variety of Industry-Standard Formats
Formats Executable File for Programming PROMs or
for Host Processor Booting
SYSTEM DEVELOPMENT PROCESS OVERVIEW
SOFTWARE SIMULATOR
LIBRARIES
ANSI
C COMPILER
ASSEMBLER
LINKER
EZ-ICE EMULATOR
= USER FILE OR HARDWARE
= SOFTWARE DEVELOPMENT TOOL = HARDWARE DEVELOPMENT TOOL
STEP 1: DESCRIBE ARCHITECTURE
STEP 2: GENERATE CODE
STEP 3: DEBUG SOFTWARE
STEP 4: DEBUG IN TARGET SYSTEM
STEP 5: MANUFACTURE FINAL SYSTEM
SYSTEM
BUILDER
PROM SPLITTER
HIP SPLITTER
SYSTEM
ARCHITECTURE
FILE
EXECUTABLE
FILE
SYSTEM
SPECIFICATION
FILE
C SOURCE
FILES
ASSEMBLER
SOURCE
FILES
EZ-LAB DEVELOPMENT BOARD
OR
THIRD-PARTY PC PLUG-IN CARDS
TARGET
BOARD
TESTED & DEBUGGED DSP BOARD
ADDS-21xx-TOOLS
REV. B
–2–
ADDS-21xx-TOOLS
SIMULATOR
Features Reconfigurable GUI (Graphical User Interface) Supports Full Symbolic Disassembly and On-Line
Assembly Provides Breakpoint and Single-Step Execution Includes CBUG™ C Source-Level Debugger as Integrated
Tool Supports Multiple Break Conditions Provides Full View of All Processor Registers and
Memory for Direct Modification of Contents Profiles Code Execution History Uses Data Files to Simulate Parallel I/O Ports, Serial
Ports, HIPs, and Analog I/O Interface Plots Data Memory Graphically
G21 OPTIMIZING C COMPILER & C RUNTIME LIBRARY
Compliant with ANSI C Standards Includes C-Callable Library of ANSI-Standard and DSP
Functions Supports In-Line Assembly Code Using asm () Construct Incorporates Optimizing Algorithms Generates Reliable and ROM-able Code Simplifies Interrupt Handling via Library Functions Provides Support for Heap Memory Management Supports Switches Used by the ADSP-21000 Family
G21K Floating Point C Compiler Supports Float Type IEEE-Single Precision Math Routines
CBUG C SOURCE-LEVEL DEBUGGER
Supports Single Step Execution Supports Breakpoints Integrated with Simulators and EZ-ICE Emulators
DEVELOPMENT HARDWARE TOOLS
EZ-LAB® EVALUATION BOARD
Complete Hardware Platform with Memory and I/O Preprogrammed with DSP Demo Programs Contains Audio/Voice I/O Port with Microphone Input
and Powered Output for Speaker Memory Expansion and I/O from Bus Expansion Connector Serial Port Interface via SPORT Connector
EZ-KIT STARTER PACKAGES
Complete Hardware and Software Development Kit Includes an EZ-LAB Evaluation Board and ADSP-2100
Family Assembler/Linker and Simulator Software for
IBM PC
EZ-KIT LITE
Low Cost Development System Including Hardware and Software
MS Windows 3.1 Based Monitor
Includes a Variety of Demonstration Programs with
Source Code Development Platform for all ADSP-21xx Processors Audio Input/Output and Expansion Connectors
EZ-ICE® EMULATOR
Performs Full-Speed, In-Circuit Emulation of ADSP-21xx
Target Systems
Software Uses Same GUI (Graphical User Interface) as
Simulator for Easier Debugging Control
Single-Step Capability Stand Alone Operation for Software Debugging Upload/Download Memory with IBM PC
3-VOLT EMULATION CONVERTER BOARD
Used with the ADSP-2101 EZ-ICE to Enable Emulation
with an ADSP-2103 (3 V) Target System
CBUG is a trademark of Analog Devices, Inc. EZ-ICE and EZ-LAB are registered trademarks of Analog Devices, Inc
ADDS-21xx-TOOLS
REV. B
–3–
Introduction to Development Tools
GENERAL DESCRIPTION
The ADSP-2100 Family Development Software, a complete set of software design tools, lets you program applications for this family of DSP microprocessors that includes the ADSP-2101, ADSP-2105, ADSP-2111, ADSP-2115, and the newest members, the ADSP-2171 and ADSP-2181. With these tools, an EZ-ICE In-Circuit Emulator, and an EZ-LAB Evaluation Board, you can quickly and efficiently design your DSP applications. The figure on page 1 (“System Development Process Overview”) shows how the tools are typically used in the development process.
DSP Software Development Tools
The software development tools include the following programs:
• System Builder • G21 C Compile
• Assembler • C Runtime Library
• Linker • CBUG C Source-Level Debugger
• Simulator • PROM Splitter The System Builder reads your system specification file and
then generates an architecture description file that passes information about your target hardware to the linker, simulator, and emulator. Code generation begins with the creation of C language and/or assembly language source code modules. These modules are compiled/assembled separately and then linked together to form an executable program (memory image file).
The highly readable algebraic syntax of the ADSP-2100 Family instruction set eases programming in assembly language. Multiply­accumulate instructions are written in the same manner as the actual equation. For example, the algebraic statement
r = r + x*y
is coded in assembly language as
MR = MR + MX0*MY0.
The simulator configures program and data memory according to the architecture description file and simulates the memory­mapped I/O ports to let you debug your system and analyze its performance. After simulating your system and software, use the emulator with your prototype hardware to test circuitry, timing, and real-time software execution. The PROM Splitter then translates the linker-output executable file into an industry­standard file format for a PROM programmer. Once you burn the code into a PROM device and plug in an ADSP-21xx processor to the target board, your prototype is ready to run.
Development software is available for the IBM (or IBM­compatible) PC/AT and Sun4 workstation platforms.
DSP Hardware Development Tools
• EZ-ICE Emulators
• EZ-KIT Development Tools Packages
• EZ-LAB Evaluation Boards
The ADSP-2100 Family hardware development tools provide a controlled environment for observing, debugging, and testing activities in a full-speed target system. Our ADSP-2100 Family EZ-ICE Emulators provide this control by replacing the target processor or, in the case of the ADSP-2181, by assuming control of the DSP through its ICE-Port. The EZ-ICE, controlled by an IBM PC host computer, using a GUI interface similar to the ADSP-2100 Family Simulators, lets you examine and modify processor information such as registers and memory.
The ADSP-2100 Family EZ-LAB Evaluation Boards let you test coded applications in real time without a host or PC. At reset, the processor on the ADSP-2100 Family EZ-LAB boots code and program memory into its internal program memory from the EPROM, and then executes the code.
EZ-KIT offers a complete development environment including the ADSP-2100 Family Assembler/Linker and Simulator, an ADSP-2100 Family EZ-LAB Evaluation Board. The EZ-KITs for the ADSP-2101 and ADSP-2111 include an applications handbook (Digital Signal Processing Applications Using the ADSP-2100 Family Applications), plus a laboratory textbook (Digital Signal Processing Laboratory Using the ADSP-2101
Microcomputer Laboratory Workbook with Introductory DSP Experiments) and source code diskettes. The EZ-KIT Lite for
the ADSP-2181 is a lower cost starter kit that includes a subset of the regular EZ-KIT software and documentation.
SOFTWARE TOOLS
SYSTEM BUILDER
The System Builder lets you define system hardware based on ADSP-21xx processors with memory that can be specified as RAM or ROM. It also lets you design ADSP-21xx Family systems with paged external data memory, extending the processor’s address space for additional data storage.
G21 C COMPILER
The G21 C Compiler is an optimizing ANSI compiler based on the GNU gcc compiler. Applications written in C are compiled, assembled, and linked to create executable ADSP-21xx programs that can be debugged with an ADSP-21xx Simulator or Emulator. It also supports in-line assembly code using the asm() construct, which lets you use C expressions.
The G21 C Compiler contains optimization features to increase execution speed of the resultant assembly code. These features include algorithms to perform the following:
• Constant Folding
• Common Subexpression Elimination
• Loop Optimization and Strength Reduction
• Global and Local Register Allocation
• Parallelization
• Instruction Scheduling
REV. B
–4–
ADDS-21xx-TOOLS
C RUNTIME LIBRARY
The C Compiler comes with ANSI-standard functions and a set of C-callable library routines commonly used in digital signal processing to speed up development.
The ADSP-2100 Family C Runtime Library includes the ANSI­standard and DSP-specific functions listed in Table I.
Table I. C Runtime Library Functions
Function Description
abs absolute value acos arc cosine asin arc sine atan arc tangent atan2 arc tangent of quotient ceil ceiling cos cosine cosh hyperbolic cosine exp exponential fabs absolute value fir finite impulse response (FIR) filter floor floor fmod floating-point modulus frexp separate fraction and exponent ifftN N-point inverse fast Fourier transform (IFFT) iir infinite impulse response (IIR) filter interrupt define interrupt handling isalpha detect alphabetic character isdigit detect decimal digit labs absolute value ldexp multiply by power of 2 log natural logarithm log10 base 10 logarithm memcmp compare objects memcpy copy characters from one object to another memset set range of memory to a character modf separate integral and fractional parts pow raise to a power raise force a signal signal define signal handling sin sine sinh hyperbolic sine sqrt square root strcat concatenate strings strcmp compare strings strcpy copy from one string to another strlen string length strncat concatenate characters from one string to another strncmp compare characters in strings strncpy copy characters from one string to another tan tangent tanh hyperbolic tangent timer_off disable ADSP-21xx timer timer_on enable ADSP-21xx timer timer_set initialize ADSP-21xx timer va_arg get next argument in variable list va_end reset variable list pointer va_start set variable list pointer
Interrupt Handling in C
The C environment supports hardware interrupts—a key feature that facilitates programming. The signal handling functions of the C library, signal, raise, and interrupt, process ADSP-21xx interrupts such as serial port transmit and receive interrupts, timer interrupts, and external interrupt request signals.
The signal and raise functions direct execution to a specific C interrupt service routine based on the type of interrupt that occurs. This routing service allows the entire application to be written in C without assembly language code. The signal handling routines save and restore registers, and the overhead is usually minimal compared to overall program execution time. If you choose to write custom interrupt service routines in assembly language, you can use the signal and raise functions to set up service routines in the C environment.
ASSEMBLER
The Assembler reads source files containing ADSP-2100 Family assembly language and generates a relocatable object file. The Assembler includes a preprocessor that lets you use C preprocessor directives such as #define, #include, #if, #ifdef, and #else in assembly code.
Assembler directives define code modules, data buffers, data variables, and memory-mapped I/O ports. Either assembler directives or C preprocessor directives define and invoke macros.
LINKER
The Linker processes separately assembled object files to create a single executable program. It assigns memory locations to code and data in accordance with the architecture file defined by the System Builder.
The Linker also generates symbols (variable names and program labels) in the processed files, which the simulator, emulator, and the CBUG C Source-level debugger use to perform symbolic debugging.
PROM SPLITTER AND HIP SPLITTER
The PROM Splitter translates an ADSP-21xx executable program into a file used to program PROM memory devices. The PROM Splitter’s output file can be generated in Motorola S Record or Intel Hex Record format. Motorola S2 format is supported for byte stream output.
The HIP Splitter utility generates ADSP-2111 and ADSP-2171 programs to be downloaded from a host processor through the DSP’s Host Interface Port (HIP). The HIP Splitter’s output file can be generated in Motorola S Record or Intel Hex Record format.
Both the PROM Splitter and the HIP Splitter have a boot loader option that enables loading of external memory.
ADDS-21xx-TOOLS
REV. B
–5–
SIMULATORS
There is a simulator for each ADSP-2100 Family processor that provides instruction-level simulation of program execution. The Simulator models system memory and I/O according to the contents of the system architecture file, and provides windows to display different portions of the target system hardware. The Graphical User Interface (GUI) lets system designers inter­actively observe and alter register and memory contents, providing a powerful debug environment. Simulator commands can be entered from the mouse or keyboard.
Features offered by the ADSP-2100 Family Simulators include the following:
• Program and Data Memory Simulation
• Memory-Mapped I/O Port Simulation
• Interrupt Simulation
• Program Booting (from PROM or host processor) Simulation
• Code Execution Pattern Profiling for Program Optimization
• On-Line Help
• Reconfigurable Windows
• Same User Interface as EZ-ICE Emulators
CBUG C SOURCE-LEVEL DEBUGGER
The Simulators are seamlessly integrated with the CBUG C source-level debugger. CBUG supports the following operations:
• Run, Step, Next, and Finish Program Execution Commands
• C Source Code Breakpoints
• Local and Global Variable Display with Auto Refresh Examines Value of Variables at Previously Executed Instructions
• Symbol Look-Up
List of Demos
Filter
E
cho Canceller
A
DPCM
7
.8 kbs LPC
2
.4 kbs LPC
Ex
it App
D
TNF
F
ile View Demo Loading Options Help
EZ-KIT Lite - Monitor
P
D
DP
?
Ready
Figure 1. EZ-KIT Lite Monitor Software
HARDWARE TOOLS
EZ-KIT Lite
The ADSP-21xx EZ-KIT Lite is a low-cost, easy to use development platform on which you can quickly get started with your ADSP-2100 Family based DSP software design. The EZ­KIT Lite is a complete development system package that includes:
• ADDS-2181 EZ-LAB Board
• MS-Windows 3.1 Based Monitor Software
• Development Software Kit (upgradable to complete ADSP­2100 Family Development Software package for full-featured development of final systems)
• Demo Programs
- Digital Filtering
- Speech Compression
- FFT
- Echo Cancellation
- DTMF Tone Generation
- MPEG Audio Playback
The EZ-Kit Lite uses the ADDS-2181 EZ-LAB as a development platform on which you can develop software applications for any of the ADSP-2100 Family DSPs. This is possible because the ADSP-2181 represents a superset of the features of the ADSP-2101/2105/2111/2115/2171 processors. With the ADSP-2181’s 32K words of on-chip RAM, there is no need for additional RAM devices on the EZ-LAB board. The board simply requires connection to power, an analog input source, and amplified speakers to be able to run audio applications and demos.
The EZ-LAB board can run in a stand-alone mode, or it can be connected to the RS-232 port of your PC. A Windows-based monitor program lets you interactively download programs and interrogate the ADSP-2181 (see Figure 1). The board comes with a socketed EPROM so that you can run the monitor program or demonstrations provided—or you can plug in an EPROM containing your own code.
Loading...
+ 11 hidden pages