package ti.platforms.generic |
|
Platform package for the generic platform
This package implements the interfaces (xdc.platform.IPlatform)
necessary to build and run executables on a "generic" platform; a
platform specified by:
[
more ... ]
package ti.platforms.generic [1, 0, 0, 1] {
// A generic platform that supports any HW platform
}
DETAILS
This package implements the interfaces (xdc.platform.IPlatform)
necessary to build and run executables on a "generic" platform; a
platform specified by:
- device name; e.g., "TMS320C2812"
- catalog name; the name of a package containing the device named above
- clock rate; the clock rate in MHz of the CPU
- external memory map; an array of memory blocks external to the device
For a complate list of parameters that can be specified when creating a
platform instance see the instance configuration parameters specified
by
ti.platforms.generic.Platform. This list, of course,
includes all the instance config parameters specified by the
xdc.platform.IPlatform interface.
THROWS
XDCException exceptions are thrown for fatal errors. The following error
codes are reported in the exception message:
- ti.platfoms.generic.LINK_TEMPLATE_ERROR
-
This error is raised when this platform cannot found the default
linker command template linkcmd.xdt in the build target's
package. When a target does not contain this file, the config
parameter xdc.cfg.Program.linkTemplate must be set.
EXAMPLES
Example 1: Suppose you need to create an application for a HW platform
that uses the TMS320C2812 running at 150 MHz. You can use this package
(in lieu of one specifically created for the HW platform) by defining a
named instance of this package's Platform module. Add the following
statements to your config.bld file to add the platform instance named
"ti.platforms.generic:C28".
Build.platformTable["ti.platforms.generic:C28"] = {
clockRate: 150,
catalogName: "ti.catalog.c2800",
deviceName: "TMS320C2812"
};
With this name defined, it is now possible to configure an application
using the platform instance name "ti.platforms.generic:C28". For example,
if you are using
xdc.tools.configuro to configure your
application, the string "ti.platforms.generic:C28" can now be used to
identify your platform:
xs xdc.tools.configuro -b config.bld -p ti.platforms.generic:C28 ...
Example 2: The following example illustrates how to specify a platform
instance with memory regions external to the specified device. In this
case, we define a platform using a TMS320C6416 running at 600 MHz on a
board with two external SDRAM memory blocks.
Build.platformTable["ti.platforms.generic:C64"] = {
clockRate: 600,
catalogName: "ti.catalog.c6000",
deviceName: "TMS320C6416",
externalMemoryMap : [
["SDRAM1", {
name: "SDRAM1",
base: 0x80000000, len: 0x1000000, space: "code/data"
}],
["SDRAM2", {
name: "SDRAM2",
base: 0x90000000, len: 0x1000000, space: "code/data"
}],
]
}
The
externalMemoryMap attribute is a map of string names to
xdc.platform.IPlatform.Memory structures.
SEE
generated on Fri, 09 Oct 2009 20:10:46 GMT