Purchase Agreement
P&E Microcomputer Systems, Inc. reserves the right to make changes without further notice to any products herein to
improve reliability, function, or design. P&E Microcomputer Systems, Inc. does not assume any liability arising out of the
application or use of any product or circuit described herein.
This software and accompanying documentation are protected by United States Copyright law and also by International
Treaty provisions. Any use of this software in violation of copyright law or the terms of this agreement will be prosecuted.
All the software described in this document is copyrighted by P&E Microcomputer Systems, Inc. Copyright notices have
been included in the software.
P&E Microcomputer Systems authorizes you to make archival copies of the software and documentation for the sole
purpose of back-up and protecting your investment from loss. Under no circumstances may you copy this software or
documentation for the purpose of distribution to others. Under no conditions may you remove the copyright notices from
this software or documentation.
This software may be used by one person on as many computers as that person uses, provided that the software is never
used on two computers at the same time. P&E expects that group programming projects making use of this software will
purchase a copy of the software and documentation for each user in the group. Contact P&E for volume discounts and site
licensing agreements.
P&E Microcomputer Systems does not assume any liability for the use of this software beyond the original purchase price
of the software. In no event will P&E Microcomputer Systems be liable for additional damages, including any lost profits,
lost savings or other incidental or consequential damages arising out of the use or inability to use these programs, even if
P&E Microcomputer Systems has been advised of the possibility of such damage.
By using this software, you accept the terms of this agreement.
©2012 P&E Microcomputer Systems, Inc.
Freescale™ and the Freescale logo are trademarks of Freescale Semiconductor, Inc. All other product or service names
are the property of their respective owners. Kinetis and ColdFire are registered trademarks of Freescale Semiconductor,
Inc.
P&E Microcomputer Systems, Inc.
98 Galen St.
Watertown, MA 02472
617-923-0053
http://www.pemicro.com
TRACELINKUM
Manual version 1.00
August 2012
Tracelink User Manual i
1 INTRODUCTION ............................................................................................ 1
2 QUICK START GUIDE ................................................................................... 3
3 TRACELINK HARDWARE.............................................................................. 4
3.1 Tracelink Power Supply ..................................................................................4
3.2 Ethernet Connector.........................................................................................4
3.3 USB Connector...............................................................................................5
3.4 Target Debug Connectors ..............................................................................5
3.5 Target Power ................................................................................................13
4 EXTERNAL TRACE OVERVIEW ................................................................. 15
4.1 How External Trace Works ...........................................................................15
4.2 Trace Types..................................................................................................15
4.3 Trace Filtering...............................................................................................16
4.4 Board Design Considerations .......................................................................16
5 ETHERNET CONFIGURATION ................................................................... 18
5.1 Network Architectures...................................................................................18
5.2 Network Parameters .....................................................................................19
5.3 Internet Protocol ...........................................................................................20
5.4 Connecting The Tracelink Device .................................................................20
5.5 Tracelink IP Setup Utility User Interface (ConfigureIP).................................22
5.6 Using ConfigureIP.exe To Configure The Tracelink .....................................24
6 USB CONFIGURATION ............................................................................... 27
7 CODEWARRIOR 10.x CONFIGURATION ................................................... 28
8 PRODUCTION PROGRAMMING................................................................. 33
8.1 Cyclone Key Features ..................................................................................33
8.2 Cyclone In-Depth ..........................................................................................34
Tracelink User Manual 1
1 INTRODUCTION
The Tracelink is a powerful development interface capable of capturing external trace
data on Freescale microcontrollers.
The Tracelink is designed to help developers find and diagnose software bugs quickly
and efficiently. While a microcontroller is running, the Tracelink is constantly recording
trace information into its internal memory buffer, which can later be used by
supporting software to provide program flow charts and profiling statistics.
Figure 1-1: P&E’s Tracelink
In addition to trace capture, the Tracelink also supports all standard run control
operations, such as single-stepping, setting breakpoints, register/memory access,
and flash programming. The following features make the Tracelink an extremely
valuable debug tool:
Tracelink User Manual 2
Multiple Freescale Architecture Support
ColdFire V2-4
Kinetis
S12Z (coming soon)
External Trace Capture
Supports trace port speeds up to 250 MHz
128MB of trace storage
Multiple Voltage Operation
Automatically detects and caters to target voltages ranging from 1.8V to 5V
Target Power Generation
Can generate 2V, 3V, or 5V to directly power target microcontroller
Multiple Communication Interfaces
Ethernet 10/100 baseT
USB 1.1
Additional Tracelink resources can be found at pemicro.com/tracelink.
Tracelink User Manual 3
2 QUICK START GUIDE
Step 1. Install Software
The accompanying software includes all necessary drivers and configuration utilities
needed for the Tracelink. After installation is complete, make sure the PC is rebooted
before moving on to the configuration step.
Step 2. Power On Tracelink
Power up the Tracelink by connecting the included 9V power supply. A blue LED will
be illuminated on the Tracelink to indicate it is receiving power.
Step 3. Ethernet Configuration
Connect the Tracelink to the PC using a USB connection. Run the ConfigureIP
software utility to set up the network parameters (IP address, subnet mask, etc.). The
Ethernet port will not function properly until this one-time configuration is complete.
You may wish to refer to Section 5 - ETHERNET CONFIGURATION. If the Tracelink
Ethernet connection is not required, this step may be skipped.
Step 4. Hardware Setup
Connect the appropriate ribbon cable between the Tracelink and the target board. The
Tracelink case flips open for easy access to the ribbon cable connectors. Power up
the target board. A yellow LED on the Tracelink will be illuminated to indicate that it is
detecting target power.
Finally, connect the USB or Ethernet cable from the Tracelink to the host PC.
Step 5. Launch PC Software
The Tracelink is now ready to be used with PC software to debug and analyze trace.
Please refer to the documentation from the software vendor (e.g., P&E software,
FreescaleTM CodeWarrior) for more details on any additional configuration that may be
required.
Tracelink User Manual 4
3 TRACELINK HARDWARE
This chapter provides more in-depth technical detail about the features and interfaces
of the Tracelink unit.
3.1 Tracelink Power Supply
The Tracelink requires a regulated 9V DC center positive power supply with a 2.5/
5.5mm female plug. The power supply plugs into the power jack located on the top of
the unit.
Figure 3-1: Power Jack
3.2 Ethernet Connector
The Tracelink provides a standard RJ45 socket to communicate with a host PC
through the Ethernet Port (10/100 BaseT).
Figure 3-2: Ethernet Connector
Tracelink User Manual 5
3.3 USB Connector
The Tracelink provides a USB connector for Universal Serial Bus communications
with the host PC. The Tracelink is a USB 1.1 compliant device.
Figure 3-3: USB Connector
3.4 Target Debug Connectors
The different families of Freescale microcontrollers are supported via the multiple
debug headers located on the Tracelink. These headers are accessed by flipping
open the plastic case. Pin 1 of each header is marked with the number “1” and also
has a rounded corner.
Note: To avoid improper connections, the red stripe of the ribbon cable should always be
oriented towards Pin 1.
Warning: Do not attempt to use multiple ports at once, as this may damage both the target
processors and the Tracelink.
Tracelink User Manual 6
Figure 3-4: Tracelink Headers, Pin 1 Highlighted
Note: For signals requiring pull-up or pull-down resistors, please note that most
microprocessors implement internal resistors to meet these requirements. Otherwise,
an external resistor must be used.
Tracelink User Manual 7
3.4.1 PORT A: Kinetis (Mini-10)
Figure 3-5: Port A Pinout
Table C-1. Kinetis Mini-10 Signals (PORT A)
Signal Direction Description
TVCC Input Target reference voltage. Needs to be con-
nected to the microprocessor’s operating volt-
age (1.8V to 5V) and is used by the Tracelink
to determine the correct voltage level to use on
output signals. Required.
TMS/
SWD_DIO
I/O Debug communication signal. Pull-up resistor
required. Required.
GND Input Ground signal. Connect to the digital ground
signal of the microprocessor. Required.
TCK/
SWD_CLK
Output Debug communication signal. Pull-down resis-
tor required. Required.
TDO Input Debug communication signal. Pull-up resistor
recommended. Recommended.
TDI Output Debug communication signal. Pull-up resistor
required. Recommended.
RESET I/O Microprocessor reset signal. This signal is
driven low during initial debug mode entry. Pull-
up resistor required. Required.
Tracelink User Manual 8
3.4.2 PORT B: Kinetis (Mini-20)
Figure 3-6: Port B Pinout
Table C-1. Kinetis Mini-20 Signals (PORT B)
Signal Direction Description
TVCC Input Target reference voltage. Needs to be con-
nected to the microprocessor’s operating
voltage (1.8V to 5V) and is used by the
Tracelink to determine the correct voltage
level to use on output signals. Required.
TMS/SWD_DIO I/O Debug communication signal. Pull-up resistor
required. Required.
GND Input Ground signal. Connect to the digital ground
signal of the microprocessor. Required.
TCK/SWD_CLK Output Debug communication signal. Pull-down
resistor required. Required.
Tracelink User Manual 9
TDO Input Debug communication signal. Pull-up resistor
recommended. Recommended.
TDI Output Debug communication signal. Pull-up resistor
required. Recommended.
RESET I/O Microprocessor reset signal. This signal is
driven low during initial debug mode entry.
Pull-up resistor required. Required.
TRACE_CLKOUT Input Trace clock input. Required for external
trace capture.
TRACE_D[3:0] Input Trace data input. Required for external
trace capture.
Table C-1. Kinetis Mini-20 Signals (PORT B)
Signal Direction Description
Tracelink User Manual 10
3.4.3 PORT C: ColdFire V2/3/4
Figure 3-7: Port C Pinout
Table C-1. ColdFire V2/3/4 Signals (PORT C)
Signal Direction Description
BKPT Output Debug communication signal. Pull-up resistor
required. Required.
GND Input Ground signal. Connect to the digital ground
signal of the microprocessor. Required.
DSCLK Output Debug communication signal. Pull-up resistor
required. Required.
Tracelink User Manual 11
TCK Output Debug communication signal. Pull-up resistor
required. This signal is currently only used by
P&E when unsecuring ColdFire processors
with internal flash. Recommended.
RESET I/O Microprocessor reset signal. This signal is
driven low during initial debug mode entry.
Pull-up resistor is required. Required.
DSI Output Debug communication signal. Pull-up resistor
recommended. Required.
TVCC Input Target reference voltage. Needs to be con-
nected to the microprocessor’s operating volt-
age (1.8V to 5V) and is used by the Tracelink
to determine the correct voltage level to use on
output signals. Required.
DSO Input Debug communication signal. Pull-up resistor
recommended. Required.
PST[3:0]/
PSTDDATA[7:4]
Input Trace data input. Required for external trace
capture.
DDATA[3:0]/
PSTDDATA[3:0]
Input Trace data input. Required for external trace
capture.
PSTCLK Input Trace clock input. Required for external
trace capture.
TA Output Transfer acknowledge signal. Pull-up resistor
is required. Some ColdFire processors do not
implement this signal and this pin can be left
as a no connect (NC) in these cases. Highly
recommended for applications which use
external memory.
Table C-1. ColdFire V2/3/4 Signals (PORT C)
Signal Direction Description
Tracelink User Manual 12
3.4.4 PORT D: Kinetis
Figure 3-8: Port D Pinout
Table C-1. Kinetis Signals (Port D)
Signals Direction Description
TVCC Input Target reference voltage. Needs to be connected
to the microprocessor’s operating voltage (1.8V
to 5V) and is used by the Tracelink to determine
the correct voltage level to use on output signals.
Required.
TRST Output JTAG signal to reset debug logic. Pull-up resistor
required. Optional.
GND Input Ground signal. Connect to the digital ground sig-
nal of the microprocessor. Required.
TDI Output Debug communication signal. Pull-up resistor
required. Recommended.
Tracelink User Manual 13
3.5 Target Power
The Tracelink is capable of generating 2V, 3V, or 5V directly to the TVCC pin of the
debug header. This can be used to power target microprocessors requiring up to
500mA of current without the need for a separate power supply.
To enable this feature, a jumper needs to be installed onto option J2, which can be
accessed by flipping open the plastic case. This jumper is NOT installed by default.
TMS/
SWD_DIO
I/O Debug communication signal. Pull-up resistor
required. Required.
TCK/
SWD_CLK
Output Debug communication signal. Pull-down resistor
required. Required.
TDO Input Debug communication signal. Pull-up resistor
recommended. Recommended.
RESET I/O Microprocessor reset signal. This signal is driven
low during initial debug mode entry. Pull-up resis-
tor required. Required.
Table C-1. Kinetis Signals (Port D)
Signals Direction Description
Tracelink User Manual 14
Figure 3-9: J2 Jumper
There is additional configuration needed on the PC software to turn on the target
voltage and to specify target voltage value (2V, 3V, or 5V). Refer to the software
documentation for more details.
Tracelink User Manual 15
4 EXTERNAL TRACE OVERVIEW
This section provides an introduction to the vocabulary and methodologies of
debugging with external trace. Also discussed are general board and layout
guidelines to help improve signal integrity for the high-speed trace signals.
4.1 How External Trace Works
Below is a simple diagram of the trace process.
Figure 4-10: “Trace Flow” Diagram
When a microprocessor is properly configured for external trace and is executing
code, it will continuously generate trace data on designated output pins. The width of
the trace data port varies depending on the Freescale family and can range from a
single bit to 32-bits and higher. The trace data is always synchronized to the rising
and/or falling edges of the trace clock signal.
Note: On many microprocessors, the trace pins are often multiplexed with other functions
and will default as a general purpose input/output. These pins need to be configured
for trace functionality in the application’s initialization code.
The Tracelink monitors the trace clock signal and records the value of the trace data
pins when the appropriate clock edges occur. The data is saved into the Tracelink’s
internal 128MB buffer, which is later downloaded onto the host PC for analysis. The
software running on the host PC is responsible for decoding the trace data and
displaying it in a useful format to the developer.
4.2 Trace Types
Tracelink User Manual 16
Generally there are two categories of trace data being generated by the processor:
instruction trace and data trace.
Instruction trace provides “change of flow” information and is mostly concerned with
branch and jump type instructions. Instruction trace packets will tell the developer
whether a branch was taken and also the destination address of the branch.
Instruction trace is the most common type of trace and allows the application’s code
execution path to be fully reconstructed.
Data trace provides “data access” information and is mostly concerned with load and
store type instructions. Data trace packets will tell the developer the address of the
memory access, the data value of the memory access, or both. Due to the potentially
high bandwidth requirements of data trace, many microprocessors do not directly
implement this type of trace.
4.3 Trace Filtering
Trace filtering is a technique used to reduce the amount of trace data generated by
the target microprocessor. This is typically done to make better use of the available
trace buffer if the user is able to narrow down the scope of the application code where
the bug is occurring. For example, a large loop which is used to perform delays may
take up a large portion of the 128MB trace buffer but does not contribute useful
program flow information to the developer.
Trace filtering focuses primarily on determining when to start and stop trace
generation. For example, the microprocessor can be configured to begin generating
trace when the program counter matches a specific value and to stop generating trace
at a different value.
Each microprocessor family has different trace filtering capabilities, but the goal is the
same: try to reduce the amount of trace data generated to only include the most
relevant code paths or memory accesses. This allows the developer to make optimal
use of the available trace buffer, which may only be large enough to hold a few
seconds worth of trace information on a high-speed processor.
4.4 Board Design Considerations
High-speed digital design rules must be observed in order to avoid signal integrity
issues that can cause the Tracelink to capture incorrect data. Even with slower trace
clock ports, the slew rates of the trace signals can be extremely fast. At a minimum,
the following guidelines should be applied to all of the microprocessor trace signals,
with emphasis particularly on the trace clock.
Tracelink User Manual 17
4.4.1 Avoid impedance discontinuities
Stubs are printed circuit board tracks that branch off from the main track and are
usually formed when placing test points or connecting multiple components to the
same net. Stubs should be avoided at all costs as even short stubs can cause serious
signal integrity issues.
Vias are a source of impedance change and the number of vias used should be
minimized.
Keep track widths constant throughout the signal path.
4.4.2 Minimize skew
Try to match the length of all printed circuit board tracks used to carry the trace
signals.
4.4.3 Ground plane
A solid ground plane will ensure a good return path and minimize noise. Avoid having
breaks in the ground plane if possible. Ideally the ground plane should be situated in
the layer next to the signal layer carrying the trace signals.
4.4.4 Minimize crosstalk
If the design has multiple signals running parallel to each other for long distances,
increase the spacing between them to avoid crosstalk issues. Note that crosstalk can
also occur across layers if two signal layers are adjacent to each other.
4.4.5 Signal termination
To eliminate reflections on the signal path, three impedances must match: the source,
the printed circuit board track, and the load. There are two common termination
schemes to minimize reflection:
Series termination: A resistor is placed in series with the signal as close
as possible to the source. The resistor value plus the output impedance of
the source should equal the printed circuit board track impedance.
Parallel termination: A resistor is connected between the signal and
ground. This resistor is placed as close as possible to the load (eg. the
debug header). The value of the resistor is equal to the printed circuit
board track impedance.
Tracelink User Manual 18
5 ETHERNET CONFIGURATION
This section describes the mechanism used by the Tracelink device to transact data
over an Ethernet network. It primarily focuses on the User Datagram Protocol (UDP),
which is a popular method for sending data over a network when the speed of a data
transaction is of more concern than the guarantee of its delivery. The Tracelink takes
advantage of the UDP protocol’s penchant for speed, and adds an extra layer of logic
to guarantee the delivery of UDP packets in order to offer a best-of-both-worlds
solution.
5.1 Network Architectures
Before delving into the innards of Ethernet message passing, it is prudent to briefly
describe the different network architectures in use today, and how they pertain to the
operation of the Tracelink. Computers are, of course, connected to one another
through intermediary devices in order to form networks. There are several classes of
these intermediary devices, but they generally fall into one of the following three
groups:
Hubs
At the most basic level, computers are connected to one another through a
Hub. A Hub is a device with several ports that are used to connect multiple
computers together. It is a repeater device – a Hub simply copies the data
incoming on one port as data outgoing on the other ports. In this manner, if
there are four computers connected through a Hub, and if the first computer is
sending data to the second computer, then the third and the fourth computers
will also receive an identical copy of that data. Hubs are usually used to set up
a small Local Area Network (LAN), which may have on the order of 10 to 20
computers.
Tracelink User Manual 19
Switches
The aforementioned type of process, where the data is simply replicated onto
every available port, quickly becomes inefficient for larger sized networks. For
this reason, a larger sized LAN employs the usage of Switches instead of Hubs.
A Switch is essentially a smart Hub, in that it limits the input and output of data
to the two transacting computers.
Routers
Larger networks, such as Wide Area Networks (WANs), or the Internet for that
matter, use progressively more sophisticated devices to transact data. At the
core of these devices is the Router, which functions as a switch between
networks.
The Tracelink performs irrespective of the connection mechanism, with one very
important caveat: it needs to be set up with the appropriate network parameters for
the underlying network architecture.
5.2 Network Parameters
A typical network becomes operational not after the physical connections have been
established, but after network parameters in the form of IP (Internet Protocol)
numbers have been assigned to the individual computers. An IP number is a unique
string that consists of four numbers ranging between 0 and 255, separated by dots,
e.g., 192.168.1.2. Every computer that is on a network needs to have a unique IP
number. The computer uses this IP number to identify itself on the network, and also
to address the recipient of its data.
Assignation of this IP number is sufficient information to transact data on a simple
network connected by a hub. On a more complex network, however, routing
information becomes important. The routing information consists of two more IP
numbers. The first of these is called the Subnet Mask, and is used to determine
whether or not the destination address resides on the same subnet (i.e., doesn’t need
to be forwarded to another network). The other IP number is the Gateway Address,
which is the address of the computer that handles forwarding and receiving of packets
to and from other networks.
Before first use, the Tracelink needs to be programmed with a unique IP number, the
Subnet Mask IP number, and also the default Gateway’s IP number. This can be done
via the USB port and is described in greater detail in the “Configuring the Tracelink”
section of this manual.
Tracelink User Manual 20
5.3 Internet Protocol
Once the network has been established, and the IP numbers have been assigned,
data can be transacted over a network with one of several protocols. By far the most
prevalent protocol is the Transmission Control Protocol (TCP), which runs on top of
the Internet Protocol in what is collectively known as the TCP/IP protocol. The TCP/IP
protocol was developed by the Department of Defense to connect different computers
from different vendors by a “network of networks,” which has become what is known
as the Internet today.
The primary purpose of the TCP/IP protocol was to prevent a complete network
outage in the case of a nuclear attack, by automatically rerouting data traffic through
the functioning part of the network. As such, the TCP/IP mechanism guaranteed
delivery of data packets by introducing a system of acknowledgements and sequence
numbers for the data packets. This mechanism, while good for transacting large
amounts of data (such as email or file transfers), is unsuitable in the real-time type
environment in which the Tracelink operates. Because the Tracelink needs to transact
data as quickly as possible to the target, it takes advantage of TCP/IP’s alternative,
the UDP/IP protocol.
Unlike TCP/IP, the UDP/IP protocol is a connectionless, single-packet protocol that
sends short data packets at the expense of not guaranteeing their delivery. This
makes the UDP/IP protocol efficient in real-time applications such as broadcasting
video over the Internet, where the occasional loss of a frame of data is not going to
hamper the overall viewing experience. Left unmodified, the UDP/IP, with its lack of
guarantees for packet delivery, would be unusable in an environment where the
delivery of a single byte of data needs to be guaranteed. The Tracelink firmware adds
mechanisms to the UDP/IP protocol, without affecting its underlying efficiency, to
guarantee delivery of data packets.
5.4 Connecting The Tracelink Device
There are two methods for establishing a connection between a Tracelink and a PC
with an Ethernet cable. The most basic method is to connect the Tracelink directly to a
PC, via a cross-over Ethernet cable. However, the more common method is to place
the Tracelink and the PC on the same network through a Hub.
5.4.1 Connecting the Tracelink to the PC over a network:
The Tracelink was intended for use on a network of multiple computers (and other
Tracelinks). There are many possible network configurations, and to describe them all
is beyond the scope of this document. However, most configurations are a
Tracelink User Manual 21
modification of a basic theme, which is that of connecting one or more PCs through a
Hub to one or more Tracelinks.
In order to connect these devices to the Hub, you will need to use the provided
straight-through Ethernet cable. The straight-through cable, which is the “standard
Ethernet cable, is used to connect devices of different types together, such as a PC to
a Hub, or a Hub to a Tracelink.
At this point it once again becomes necessary to program the Tracelink with valid IP
numbers, the process for which is described in greater detail in the following section.
However, it is important for the Tracelink and the PCs to have matching Subnet and
Gateway IP numbers, and for each to have a unique IP number on the network. An
example of a setting for above is as follows:
IP Number Gateway IP Subnet Mask
PC1 192.168.100.1 192.168.100.3 255.255.255.0
PC2 192.168.100.2 192.168.100.3 255.255.255.0
Tracelink 192.168.100.4 192.168.100.3 255.255.255.0
Gateway 192.168.100.3 192.168.100.3 255.255.255.0
It is important to briefly touch upon the underlying network architecture, which can be
a 10Mb (Megabit), 100Mb, 10/100Mb, half-duplex, or a full-duplex connection. The
details of the underlying network architecture are beyond the scope of this document,
but it is sufficient to note that most modern network cards, as well as the Tracelink
device, have the capability to configure themselves for the underlying network through
the Auto-negotiation mechanism. Auto-negotiation is performed as soon as a network
cable is connected to the device, and it sets the operating parameters of the device to
match those of the network.
5.4.2 Connecting Tracelink-to-PC via an Ethernet cable
In order to connect the Tracelink to a PC directly via an Ethernet cable, you need to
use what is known as a cross-over cable. A cross-over cable, which is not provided by
P&E, is normally used to connect two similar devices such as a PC to a PC, or a Hub
to a Hub. It is a cable that has its receive and transmit wires crossed over so that the
similar devices can effectively communicate with one another.
With this configuration, it is still important to assign IP numbers to both the PC and the
Tracelink device. Although at first glance it may not seem necessary to assign a
Gateway address in this configuration, the Tracelink was designed to operate on a
network of more than two computers, and therefore it needs to be programmed with a
Gateway address.
Tracelink User Manual 22
Assuming the desktop’s IP number to be 192.168.100.1, this is an example of the
three IP numbers that would need to be programmed into the Tracelink:
IP Number Gateway IP Subnet Mask
PC 192.168.100.1 none 255.255.255.0
Tracelink 192.168.100.2 192.168.100.1 255.255.255.0
For more information on programming these IP numbers into the Tracelink device,
please see the following section.
5.5 Tracelink IP Setup Utility User Interface (ConfigureIP)
Before the Tracelink device transacts data on an Ethernet network, it will need to be
configured with the relevant network parameters. The application that provides this
capability is the Tracelink IP Setup Utility (ConfigureIP), which can be found as part of
the distribution software.
This utility is used to configure the Tracelink with network parameters, and also to
update the firmware of the Tracelink.
Figure 5-1: IPSetup.exe Default Screen
Tracelink User Manual 23
(1) Drop-down Box 1
There are two options available in this drop-down box: "Ethernet Port" and
"USB Port". Changing to any one of these Ports will list the devices which are
found over that specific Port.
(2) Drop-down Box 2
Once one of the communication interfaces (USB or Ethernet) has been
selected in the first drop-down box, a list of all available Tracelink devices over
that interface will be displayed for selection.
(3) Close Button
The “Close” button is active only when a device has been opened for access.
Once a device has been opened for access, it needs to be closed before
another device can be opened for access.
(4) Open Button
The “Open” button opens a device for access. This is a required step before
changing the parameters on the selected device. Once a device has been
selected through the second drop-down box and is opened for access, its
information will be displayed at the bottom of the dialog box.
(5) Refresh List
Will refresh the dialog boxes by searching for devices which are currently
connected via the USB or Ethernet interfaces.
(6) Tracelink IP Number
This is the IP number which will be associated with the Tracelink. It needs to
be a unique IP number which can be accessible on the network.
(7) Tracelink Device Name
This is a label which can be used to identify the Tracelink by name, e.g.,
“John’s Tracelink.”
(8) MAC Address
This is the Media Access Control address, the unique number of an Ethernet
device on the network. This is programmed by P&E and cannot be modified.
(9) Gateway IP Number
The IP number of a gateway on the network.
(10) Subnet Mask
The subnet mask of the network.
Tracelink User Manual 24
(11) Firmware Version
A read-only field which returns information pertaining to the build date and
firmware version of the Tracelink device.
(12) Program Tracelink Parameters
This button saves the information as it appears in the "Reconfigure IP
Numbers" area onto the Tracelink device.
(13) Specify IP Button
If the Tracelink cannot be automatically detected over the network, this button
allows the user to manually specify the Tracelink IP address.
5.6 Using ConfigureIP.exe To Configure The Tracelink
Before the Tracelink is ready to communicate over an Ethernet network, it will need to
be configured with the relevant network parameters. The application that provides this
capability is the Tracelink Configuration Utility (IPSetup.exe), and is provided as part
of the standard Tracelink software distribution.
In order to update the network parameters, perform the following steps:
1. Connect a Tracelink to the PC via a USB cable, and make sure that it is pow-
ered before launching the Tracelink Configuration Utility. The Tracelink Con-
figuration Utility starts up with the following screen:
Tracelink User Manual 25
Figure 5-2: Tracelink IP Setup Utility - Initial Screen
2. Click “Open” to get a dialog box similar to the following:
Figure 5-3: Tracelink IP Setup Utility - Continue Setup
Tracelink User Manual 26
3. The Tracelink now needs to be programmed with IP numbers for the network
on which it will operate. The Tracelink IP Number field must contain a unique
IP number.
Tracelink User Manual 27
6 USB CONFIGURATION
Standard USB cables may be used for Tracelink USB port configuration. The user
may use network hubs as necessary.
Tracelink User Manual 28
7 CODEWARRIOR 10.x CONFIGURATION
This section provides a walkthrough of the configuration steps required to begin using
the Tracelink in Freescale’s CodeWarrior 10.x development suite. CodeWarrior 10.2
or higher (with all available updates installed) is required. Before following these
steps, the Tracelink should already be connected to the target board and both should
be powered up.
Step 1. Project Creation
To create a new project, click on File -> New -> Bareboard Project.
After providing a project name and selecting the appropriate Freescale
microprocessor, you will be prompted for a run control device:
Figure 7-1: CodeWarrior: Select Run Control Device
Tracelink User Manual 29
Select the “P&E TraceLink USB” and/or “P&E TraceLink Ethernet” option. Continue
with the remaining steps in the wizard to finalize the project.
Step 2. Add Initialization Code
If necessary, add any device specific initialization code to configure the
microprocessor for trace generation. For example, the trace pins may be configured
as general purpose input/output by default and you may need to add a few lines of
code to initialize them for trace output. Once the changes are made, make sure to
compile/build the project.
Step 3. Configure Trace Settings
Click on Run -> Debug Configurations. Select the appropriate configuration (Flash,
RAM, etc.) from the left panel. Within the “Main” tab, click on the “Edit” button inside
the “Connection” groupbox.
Figure 7-2: CodeWarrior: Select Configuration (Edit Button Highlighted)
Inside the P&E connection dialog that appears, look for the “Trace Max Buffer Size”
Tracelink User Manual 30
option. This controls the size of the Tracelink’s internal buffer. By default, this is set to
the lowest value (128KB). As this capacity is increased, the Tracelink can store more
trace data, but PC download and processing times are also increased. P&E
recommends using one of the center values such as 2MB and increasing it as
necessary. Click “OK” to apply the settings.
Figure 7-3: CodeWarrior: Set Trace Max Buffer Size
Navigate to the “Trace and Profile” tab and check the “Enable Trace and Profile”
checkbox. There are additional device specific settings in this panel that the user
should review. These settings control what type of trace filtering will be applied by the
CodeWarrior debugger. Click “Apply” and then “Debug” to launch the debug session.
Tracelink User Manual 31
Figure 7-4: CodeWarrior: Enable Trace and Profile
Step 4. Run the project
When the microprocessor halts (eg. after a single-step, run/breakpoint, or run/user
halt), CodeWarrior will query the Tracelink for trace data. This data is automatically
downloaded and parsed by the CodeWarrior software analysis engine. The results are
displayed in the “Software Analysis” tab. Clicking on the individual links (Trace,
Timeline, Critical Code, Performance, Call Tree) will display the corresponding view of
the trace data.
Tracelink User Manual 32
Figure 7-5: CodeWarrior: Display Trace Data
Tracelink User Manual 33
8 PRODUCTION PROGRAMMING
Once you have accomplished the development stage of your project, you may need a
hardware tool to allow you to easily execute low- or high-volume production
programming. P&E’s Cyclone MAX and Cyclone PRO are versatile and robust
programming tools with advanced features and production capabilities. Each supports
a different set of Freescale architectures. They each feature multiple communications
interfaces (USB, Ethernet, and Serial), stand-alone programming functionality, and
many other advanced capabilities. They work with Freescale’s CodeWarrior as well as
P&E’s software to help provide a seamless transition to programming.
For more information about the Cyclones, please visit us at pemicro.com/
cyclonemax or pemicro.com/cyclonepro.
Figure 8-1: Cyclone PRO & Cyclone MAX Stand-Alone Programmers
8.1 Cyclone Key Features
Advanced programming and debugging capabilities, including:
PC-Controlled and User-Controlled Stand-Alone Operation
Interactive Programming via Host PC
Tracelink User Manual 34
In-Circuit Debugging, Programming, and Testing
Compatible with many Freescale microcontroller families:
Cyclone MAX
ColdFire® V2/V3/V4
•Power
® MPC5xx/8xx
•Qorivva
® MPC55xx/56xx
Kinetis® ARM
•Power
® Architecture PX Series
DSC (MC56F80xx, MC56F82xx, MC56F83xx, and MC56F84xx)
ARM (MAC7xxx)
Cyclone PRO
•HC08
•HCS08
S12Z (coming soon)
•HC(S)12(X)
•RS08
ColdFire +V1/ColdFire V1
Communication via USB, Serial, and Ethernet Ports
Multiple image storage
LCD screen menu interface
Supported by P&E software and Freescale’s CodeWarrior
8.2 Cyclone In-Depth
P&E’s Cyclones are extremely flexible tools designed for debugging, testing, and in-
circuit flash programming of Freescale microcontrollers. The Cyclone connects your
target to the PC via USB, Ethernet, or Serial Port and enables you to debug your
code, program, and test it on your board. After development is complete the Cyclone
can be used as a production tool on your manufacturing floor.
For production, the Cyclone may be operated interactively via Windows-based
programming applications as well as under batch or .dll commands from a PC. Once
loaded with data by a PC it can be disconnected and operated manually in a stand-
alone mode via the LCD menu and control buttons. The Cyclone has over 7 Mbytes
Tracelink User Manual 35
(MAX) or 3Mbytes (PRO) of non-volatile memory, which allows for the onboard
storage of multiple programming images. When connected to a PC for programming
or loading it can communicate via the ethernet, USB, or serial interfaces.
8.2.1 Software
The Cyclone comes with intuitive configuration software and interactive programming
software, as well as easy to use automated control software. The Cyclone also
functions as a full-featured debug interface, and is supported by Freescale’s
CodeWarrior as well as development software from P&E.
P&E’s Cyclones are also available bundled with additional software as part of various
Development Packages. In addition to the Cyclone programming hardware, these
Development Packages include in-circuit debugging software, flash programming
software, a Windows IDE, and register file editor.
8.2.2 Enhancements
P&E also offers add-on features that can increase the Cyclone’s versatility.
The CompactFlash port can be activated, which enables a very useful
memory expansion, making it easier to manage larger and/or multiple
orgramming images.
The Cyclone Automated Control Package allows you to control and fully
automate multplie Cyclones for efficient gang programming capability.
The Cyclone Power Pack gives you the ability to power the Cyclone out in the
field where a standard power source may be hard to come by. This allows you
to ge the most out of the Cyclone’s stand-alone programming ability.
For more information about P&E’s Cyclones, please visit us at pemicro.com/
cyclonemax or pemicro.com/cyclonepro.