| New Tools to Guide You Through TriCore Application Development | |
2001-02-17 |
Embedded Systems – The Need for Friendly Sophistication

Figure 1: An embedded system of today
During the last couple of years, Embedded systems have been subject to a great deal of change - more and more embedded products now employ powerful microcontrollers, which serve to improve the sophistication of their user interfaces or simply make them easier and more enjoyable to use. This steadily growing demand for user friendliness and comfort poses new challenges for the electronics built into such products. As an example, compare a mobile phone from five years ago with one from the latest generation - the speed at which development is being pushed forward then becomes obvious. Consumers are no longer content with a mobile phone that simply telephones. Programmable call tones, internet access, speech recognition and other comfort features are now part of the norm.
Effects on Development – The Pressures and Challenges
These comfort features are built into a product at the expense of an increased development expenditure, although the product may not become more expensive and design cycles are to be continuously shortened. The make-up of a development team has also changed with time.
Traditionally, embedded systems were mainly a hardware-oriented affair, whereas today, the main part of the expenditure is due to software. This is clearly demonstrated by the ever-increasing numbers of software engineers taking part in embedded systems projects. This does not only apply to the telecommunications area, but also to other industries such as automobile electronics. Here, more and more features can be found that increase passenger comfort and safety and engine efficiency, and all of this is realized using software running on microcontroller-supported systems.
Debugging with 32-Bit Microcontrollers
The performance of microcontrollers used in such applications has in the meantime reached levels that a few years ago were confined to desktop computers. Hence, 32-bit controllers such as TriCore are replacing their smaller 8 and 16-bit counterparts at an ever-increasing rate. However, whenever such a device is used in a project, the development department is faced with some new challenges that span the complete design process, from the project’s birth right up to quality assurance in the production department.
Due to their high levels of integration and fast clock frequencies, modern 32-bit controllers are no longer as simple to monitor as their traditional predecessors (e.g. the 8051). However, they are equipped with the necessary means to allow developers to continue debugging and testing applications running on them.
In the case of TriCore for example, the OCDS (On-Chip-Debug-System) is provided. Dedicated pins on the controller allow its behavior to be influenced for test purposes (Run Control), and it’s also possible to record a program trace, which provides valuable information on the execution of individual instructions. In order for the information supplied by the OCDS to be made useful to the developer, it must first be evaluated by suitable tools, which can then present the information in a clear and visible form. Such tools must however satisfy fundamentally diverse and sometimes conflicting requirements. Since testing and debugging is mostly about software analysis, it is quite often carried out by software developers themselves. This means that the tools, although based on hardware, are to assume the user has the minimum amount of hardware-specific knowledge required, and are to be as easy to use as possible. Furthermore, although the tools are to be as powerful as possible, but they should avoid becoming too costly, since they are often required to be supplied to all software developers working on a common project.
Different aspects of a project come to light as it progresses through its various stages of development. If for example the initial concern is to mainly detect and remove errors in the application software, performance improvement will play a more important roll at a later point in time.
Above all, for mission critical areas such as the automobile and medical electronics industries, further criteria come into play such as verification, quality assurance and certification according to the latest industry standards.
The OCDS is a primary source of information to address all of the above-mentioned criteria. It would therefore be ideal to be able to perform all of these tasks with just one universal tool.
The Tanto-System for TriCore
Based on today’s complex requirements for a modern microcontroller development environment, a trend setting concept for a new generation of tools has been put together. The primary objective of this concept is: To create a universal, modular test and analysis tool, to aid the entire software development process for an embedded system, thus providing optimal support to the development engineer.
The resulting product is the Tanto System from Hitex development Tools. Hitex has been active in the development and manufacture of development tools for the past 25 years.

Figure 2: The Tanto System

Figure 3: How the Tanto System can be used throughout the software development process
Careful choice in modern design methods and technologies has resulted in Tanto modules being universal, allowing fast porting to new processor architectures and an even faster adaptation to the derivative. New TriCore devices such as the TC1775, TC11IB and IWORX are all supported without difficulty. Once a Tanto base unit is bought, it can be configured for various applications at any time using cost effective add-on modules. The configuration of the add-on modules is carried out by software and it is an extremely user-friendly process. The task of switching over to a new processor generation is thus greatly eased since familiar tried and proven test routines and procedures from another processor family can be easily adopted for use in the new processor generation. This ensures a long-term return on investment when using Tanto.
A complete test environment consists of a host PC, the target system to be tested and the Tanto System, which can be expanded to different levels as required by the application.
The Tanto System comprises of several individual modules, which can be put together in various combinations to provide the user with the necessary level of customisation to meet individual requirements.
Tanto Base
The base module of the system facilitates connection to the host PC. Ethernet, USB and Serial interfaces are offered as standard. The powerful onboard communications processor allows the processing of large amounts of data in real-time. In comparison to pure software solutions or simple JTAG debuggers, this module achieves drastically reduced download times and a substantial increase in ease of use. When used with the Tanto PL-Tricore, the Base module provides full "Run Control" features that facilitate the debugging of simple software problems.
Tanto PL-TriCore
The Link Module is used to connect the Tanto System to the target system’s OCDS connector.
If Infineon specified OCDS connectors exist on the target system (i.e. the Level 1 connector for the Run Control and the Level 2 connector for the trace port), Tanto can be directly connected to the target system. If these connectors do not exist on the target system, an adaptation for the CPU or for the unpopulated SMD pads can be used.
Tanto PT
This universal module allows the documenting and analysis of a program during its real-time execution. When plugged in between the Tanto Base and the Tanto PL-Tricore, the module stores information emerging from the OCDS Trace Port. The controller built into the Tanto Base module is then able to further process this information. This allows timing measurements to be made down to a precision of 10 ns and the monitoring of critical time paths. The large trace memory of 1 M frames enables the continuous monitoring of long program runs. The resulting data can then be used for detailed analyses of the software, allowing errors in program execution to be detected and removed. This data can also be used to optimize the application. An optional data probe can be connected to extract up to 8 more signals to test the target system.
Tanto BL-TriCore
Besides the OCDS, the Bus Link module also provides full access to all TriCore bus signals, which can then be used for analysis purposes. This opens up a multitude of further options to test the reaction of the application to various disturbances. Since the Tanto-BL has its own memory, it can also be used as a real-time simulator, (i.e. the application can be run on the Tanto system without the target hardware being present). This allows initial software tests to be carried out in real-time before the target system even exists – which can substantially reduce the time to market. The crucial difference between the Tanto System and software-based simulators is that Tanto allows real-time execution of the application, since it uses its own TriCore microcontroller.
Tanto BT for deep tracing
To obtain an even more detailed analysis of program execution, the Bus Link module can be complemented with the universal Bus Trace add-on. Using its large trace memory, the complete width of signals from TriCore’s address and data bus can be recorded.
Regardless of whether a complex long-term analysis or a Code Coverage log is required, the Tanto BT records all required data and timing information down to an accuracy of 10 ns.
User Interface

Figure 4: The HiTOP User Interface
The user interface used in all configurations of the Tanto System is the popular HiTOP debugger. This software can be run on all Windows operating systems and has all the features expected from a modern high-level language debugger, right up to supporting C++. Depending on the Tanto configuration, the user is provided with appropriate corresponding features in the user interface, so that no further setting-up of Tanto is necessary. HiTOP also offers existing adaptations to real-time operating systems, such as proOSEK and PXROS and integration with the latest CASE tools, such as X32 and many more. All of this ensures that during testing, all boundary conditions can be taken into account and that any modifications to be made can be carried out by the software developer in a development environment that he or she is used to working from.
Why Choose Tanto?
Due to its modular flexibility, the Tanto System is able to cover all aspects of embedded software development as they arise during the complete development cycle.
Furthermore, since the Tanto System can be built up as required, the developer is not forced to go out and buy new alien tools that require the learning to use process to be started again from scratch.
The Tanto System brings help to the developers of modern TriCore applications by minimizing development costs, reducing time to market and ensuring the utmost quality in the product.