NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

GSG:Using BIOS

From Texas Instruments Wiki
Jump to: navigation, search

Introduction[edit]

This section shows how to create and debug projects using the two versions of BIOS shipped with CCSv4: DSP/BIOS 5 and BIOS 6. The sentences marked as Tutorial: show specific steps to create and debug a project with BIOS 6 in a hardware target (a DSK6455 is used as an example). The hardware target allows to better explore the functionality of the BIOS debug tools, therefore a simulator is not used in this section.

To create a project with BIOS, follow the steps 1 through 5 in the GSG:Creating projects section. In step 5, select one of the two options in the Target content section: Use DSP/BIOS v5.xx or Enable RTSC Support.

CCSv4 Creating project settings.png

Note: to date there is no way to add BIOS support to an existing non-BIOS project.

Tutorial: create a project named BIOS6_stairstep, set the Project Type to C6000, Device Variant to Generic C64x+ Device, Runtime Support Library to rts64plus.lib, select Enable RTSC Support and skip to the section BIOS6_Support below.


DSP/BIOS 5 Support[edit]

1. Selecting Use DSP/BIOS v5.xx enables the project to support DSP/BIOS 5 and creates a blank project. Click Finish.


2. A blank project will be shown in the C/C++ Projects tab.

To use DSP/BIOS 5, a configuration file (.TCF) must be created or added to the project, as well as any source file.


3. Several example files are installed with CCSv4. Go to menu Project --> Add Files to Active Project... and then browse to the BIOS5 examples directory typically located at:

C:\Program Files\Texas Instruments\bios_5_4x_xx_xx\packages\ti\bios\examples\
  • This directory has the C source files for some examples.


4. Highlight the desired C or CPP source file (<bigtime.cpp>, <semaphore.c>, etc.) to add it to the project. Click Open.


5. Repeat step 3. This time open the subdirectory that corresponds to the target used (evmOMAPL138, dsk5510, ezdsp2812, etc.).


6. Inside this subdirectory highlight the .TCF file that has the same name as the source file chosen in step 3 (<bigtime.tcf>, <semaphore.tcf>, etc.)

  • Each subdirectory has a board BIOS5 configuration file (.tcf) for each example.


7. Once each file is added the project is ready to build. Go to menu Project --> Build Active Project to compile everything.


Note: Proper mode for RTDX needs to be setup to match the type of target (Simulator or Target Hardware) during debug. If " Not a valid RTDX program: RTDX protocol (JTAG) does not match CCS setup (SIMULATOR)" message occurs while using a simulator,  Double click on the .tcf file in your project to open it in the editor Expand Input/Output, Select RTDX, right click and select properties, you can then change the RTDX mode to simulator.

BIOS6 Support[edit]

1. Selecting Enable RTSC Support requires additional project configuration steps. Click Next.


2. This screen will enable you to use an existing RTSC configuration project in the workspace or allow to create one from scratch.

  • Select the option Create a new RTSC Configuration project , as initially there are no projects in the workspace. Click Next.
Optional. The option Reference an existing RTSC Configuration project allows to select an existing RTSC configuration project in the workspace. All the RTSC projects will be shown in the box.
CCSv4 Creating RTSC referenced.png

Tutorial: simply click Next.


3. This next screen allows choosing the name of the configuration project - the default name chosen is usually a good idea. Click Next.

CCSv4 Creating RTSC project name.png

Tutorial: same thing as before. Simply click Next.


4. The next screen requires choosing the target configuration for BIOS6.

  • Select the target from the box RTSC Platform box. It takes a while for CCSv4 to scan all available platforms that match the device selected.
  • Select the RTSC Build-Profile box. Four options are available: whole_program_debug, debug, release, whole_program.
  • Click Next
CCSv4 Creating project settings complete.png

Tutorial: select ti.platforms.dsk6455 in RTSC Platform and debug in RTSC Build-Profile. Click Next.


5. A project template can be selected in the next screen. Select Create a project using one of the templates and choose between the templates available. Click Finish.

The use of project templates is a very good helper to start using BIOS6.
CCSv4 Creating RTSC templates.png

Tutorial: enable Create a project using one of the templates and select the template RTA Example. Click Finish.


6. The project will be created and shown in the C/C++ Projects tab. Opening the BIOS 6 configuration file shows the BIOS Graphical Configurator XGCONF.

  • the Available Packages view shows all the BIOS modules that can be added to the configuration
  • the Outline view shows all the BIOS modules being used by the configuration project
  • the window at the center shows the settings for the module selected in the Outline view.
CCSv4 BIOS6 Rtdx protocol.png

BIOS debug tools[edit]

One of the main advantages of BIOS is the real-time debugging tools that allow inspecting the system operation with minimal impact on real-time performance.

Most of the BIOS debug tools can be accessed through the menu Target --> RTA.

Tutorial: to debug the stairstep example project in a hardware board follow the steps below.

  • Build the project and start a debugger session: menu Target --> Debug Active Project.

Printf Logs[edit]

One of the most basic and powerful real-time debug tools is the Printf Logs accessible via menu Tools --> RTA --> Printf Logs. It enables real-time printing user-defined messages through the BIOS Log APIs, as well as system-wide warnings and errors.

CCSv4 BIOS6 Printf logs.png

Tutorial: the screen above shows the messages after executing the stairstep example for approximately 30 seconds.


Exec Graph and Exec Graph Data[edit]

The Exec Graph shows the execution of threads in a time-based graph, giving a good idea about thread execution order, priorities and possible conflicts between all the different threads in the system. The Exec Graph Data displays the numeric values together with additional thread information and can also be easily exported to data files.

CCSv4 BIOS6 Exec graph.png

Tutorial: the screen above shows the Exec graph of the stairstep example ranging from approximately 32.946 to 33.016 seconds.


CPU Load Graph and CPU Load Data[edit]

CPU Load shows graphically the ratio between the amount of time the CPU spends executing threads and the idle loop. The CPU Load Data displays the numeric values together with additional thread information which can be easily exported to data files.

CCSv4 BIOS6 CPU load.png

Tutorial: the screen above shows the CPU load of the stairstep example ranging from approximately 10 to 31 seconds.


Thread Load[edit]

The Thread Load displays the CPU load of each different type of thread (HWIs, SWIs, Idle loop, etc.). This allows additional analysis of the CPU usage on the system.

CCSv4 BIOS6 Thread load.png

Tutorial: the screen above shows the Thread load of the stairstep example with the same timespan of the CPU Load Graph.

Additional Topics[edit]

Now that you have finished adding BIOS support to your new project, you can check other Advanced Topics of the CCSv4 Getting Started Guide.


CN GSG:Using BIOS

E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article GSG:Using BIOS here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article GSG:Using BIOS here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article GSG:Using BIOS here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article GSG:Using BIOS here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article GSG:Using BIOS here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article GSG:Using BIOS here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article GSG:Using BIOS here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article GSG:Using BIOS here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article GSG:Using BIOS here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity