NDK
Support Package for EVMDM642
Version 1.94.01.001
Release (Revision History)
This
software package contains NDK Support Package files for EVMDM642 platform. It contains NDK required drivers, and
examples.
NDK Support Package Overview
The TMS320C6000 NDK is a platform
for development and demonstration of network enabled applications on the
TMS320C6000 DSP family. The NDK
itself is delivered as a separate package which contains the platform
independent libraries, source files, and drivers. The platform specific portion
of the stack is delivered as a separate package per platform basis.
The NDK Support Package for
EVMDM642 includes demonstration software showcasing DM642 DSP capabilities
across a range of network enabled applications. In addition, the stack serves
as a rapid prototype platform for the development of network and packet
processing applications, or to add network connectivity to existing DSP
applications for communications, configuration, and control.
Using the components provided in
the NDK, developers can quickly move from development concepts to working
implementations attached to the network.
System Requirements
To install the NDK Support
Package for EVMDM642, a desktop or laptop PC is needed with the following
requirements:
Minimum
- 1Ghz PentiumTM-compatible CPU
- 600MB of free hard disk space
- 1GB of RAM
- Internet ExplorerTM (6.0 or
later) or Netscape NavigatorTM (6.0 or
later)
- Local CD-ROM Drive
Recommended
- 2Ghz PentiumTM-compatible CPU
- 2GB of RAM
- 16-bit color
Supported
Operating Systems
- WindowsTM 2000 Service Pack 1 or higher
- WindowsTM XP
Required Hardware
The NDK Support Package is
supported on the following platforms:
In addition to this hardware, a
compatible emulator connection to CCS is required.
Required
Software
- Code Composer Studio Version 3.3 or higher
- DSP/BIOS 5.31.08 or higher.
- You will need to download the required GEL file from the Spectrum
Digital’s Web Site, and add these gel files in your CCS
configuration to initialize the boards, prior to running any example
applications.
- You need to download and install the BSL library for EVMDM642
platform from Spectrum Digital’s web site. The NDK CCS project files
(*.pjt) expects the BSL library under
“<CCS_Install_Dir\boards\evmdm642\lib>” directory. If your
installation different than the default path, please update it to reflect
your environment.
- NDK V1.94.01.001
NDK Support Package for EVMDM642 Software Components
- The NDK Support Package for EVMDM642 libraries are built by using
DSP/BIOS 5.31.08, and NDK 1.94.01.001 libraries and CodeGen Tool V6.0.8. It contains
the following software components:
- HAL libraries and source files for EVMDM642
platform (eth_dm642, ser_ti752, userled_dm642).
Important Note:
Please note that the Ethernet drivers provided
in this release are built using NIMU architecture only. LL packet drivers are
not packaged in this release. To obtain LL packet drivers please use an older
NSP release than 1.94.01.001. The NDK 1.94.01.001 is completely compatible with
older NSP packages as long as LL packet drivers are used. To use NIMU drivers, please
use this release.
- “Hello
World” network example which contains the minimum setup necessary for a networking
application with DSP/BIOS. It can serve as a skeleton project, ready for the
application programmer to start adding code.
- Network
client demonstration shows DHCP client, HTTP server, Telnet client, and
multiple data servers for benchmarking.
- Configuration
demo illustrates how a "network appliance" can be installed and
configured on the home network without using DHCP.
- Additional
demonstrations using both Ethernet and serial port demonstrate
functionality like remote serial operation, serial connection to PC and
serial to Ethernet routing.
Software Installation
Follow the steps below for NDK
Support Package software installation:
- If not installed yet, install the Code Composer Studio (CCS) using
the CCS CD. It must be installed before the NDK software.
- If not installed yet, install the NDK software using the Stack CD.
- Copy the “ti.ndk.platforms.dm642_1_94_1_1.tar” under NDK_INSTALL_DIR\packages directory, and untar it. A new folder dm642 can be seen now.
Copy over the directory and contents of NDK_INSTALL_DIR\packages\dm642\ti to
NDK_INSTALL_DIR\packages directory.
After installation, all NDK
Support Package related files are located under NDK_INSTALL_DIR\packages\ti\ndk directory, and organized in subdirectories. These
subdirectories are fully described in the NDK Support Package for EVMDM642
User's Guide(SPRUES5), but can be summarized as follows:
[\example]
The EXAMPLE directory contains sample source code for a variety of
applications. Included here are demos that work on Ethernet and/or a serial
port. These include initialization examples, HTTP and Telnet servers,
configuration examples, and a Serial-PPP to Ethernet router.
|
[\example\network\<example_name>\evmdm642]
Examples using an Ethernet network.
[\example\serial\<example_name>\evmdm642]
Examples using a serial port alone, and with an Ethernet adapter.
[\example\tools\evmdm642]
EVMDM642 interrupt handling routines which is used by all EVMDM642 example
programs.
|
[\lib]
|
[\lib\hal\evmdm642]
This directory contains the NDK Support Package for EVMDM642 HAL library
files.
|
[\src]
The SRC directory is the location of the source code to the individual stack components
included with the TCP/IP Stack.
|
[\src\hal\evmdm642\eth_dm642]
This directory contains the DM642 EMAC ethernet driver source files.
[\src\hal\evmdm642\ser_ti752]
This directory contains the TI752 serial driver source files.
[\src\hal\evmdm642\userled_dm642]
This directory contains the EVMDM642 specific userled driver source files.
|
[\doc\evmdm642]
The DOC directory contains a copy of the NDK Support Package for EVMDM642
documents.
- Several builds of the libraries are provided with NIMU architecture
for Big and Little Endian architectures under [\lib\hal\evmdm642].
The libraries are named as <lib_name>.lib for little endian and
<lib_name>e.lib for big endian. The libraries built using NIMU are
named as <lib_name>_nimu.lib
The user needs to choose the most appropriate version of the library based on the
endianness and copy over the library to just
<lib_name>.lib before using it with any example projects.
For example: If an application requires NIMU little endian HAL ethernet driver,
copy over [lib\hal\evmdm642\hal_eth_dm642_nimu.lib]
to [lib\hal\dsk6455\hal_eth_dm642.lib] and recompile
your example project.
Important Note:
Please note that this version of NSP does not include ethernet drivers with
LL packet architecture. Please use an older release of NSP to obtain LL packet drivers.
- To build applications for Big Endian, please ensure that the following compilation flag
is defined: BIGENDIAN
Important First Steps
The NDK Support Package for
EVMDM642 User's Guide is the best first step in using the software package.
It contains all the necessary instructions for setting up and testing the
hardware and software. The chapters include:
- Installation and Test of the NDK Support Package
- Example Applications
- NDK Support Package for EVMDM642 Libraries
New users should
familiarize themselves with the contents of the NDK User's Guide, test
their hardware, and try out some of the example applications described within.
Additional Information
NDK Benchmarking for EVMDM642
Performance benchmarks are at
the same time an objective and subjective measurement for performance. They are
objective in the sense that the performance is measured using benchmark tools
that yield reproducible results, but they are subjective in that there are so
many variables involved that any one performance measurement is only a
guideline to overall performance in a diverse set of operating environments.
The following factors can have a
significant influence on performance:
- Socket API: The NDK includes support for classical buffer based sockets (for
transactions involving small payloads like Telnet), packet queue based
sockets (non-copy), and enhancements to the sockets API to allow the
application to directly receive non-copy TCP data. Performance varies
depending on what features are used.
- Socket Buffers: The socket buffer size affects the TCP send and receive window
size, and determines how much data can be sent in one burst. This can have
a dramatic effect on performance.
- CPU(DSP) Speed: Given sufficient cache is present, the networking performance has
an approximately linear relation to CPU speed.
- CPU(DSP) Cache: The amount of CPU cache used can have a dramatic influence on
overall performance.
- Network Hardware: The design of the Ethernet hardware and how it
interfaces to the DSP has a large impact on performance.
- EMIF speed: For designs where the Ethernet interface is connected to the
EMIF, the EMIF speed as well as the external decode logic has an
additional affect on speed.
For detailed information, please
see the benchmark results..