1 /*
2 * Copyright (c) 2011 by Texas Instruments and others.
3 * All rights reserved. This program and the accompanying materials
4 * are made available under the terms of the Eclipse Public License v1.0
5 * which accompanies this distribution, and is available at
6 * http://www.eclipse.org/legal/epl-v10.html
7 *
8 * Contributors:
9 * Texas Instruments - initial implementation
10 *
11 * */
12
13 requires xdc.platform [1,0,1];
14
15 /*!
16 * ======== ti.platforms.generic ========
17 * Platform package for the generic platform.
18 *
19 * This package implements the interfaces (xdc.platform.IPlatform)
20 * necessary to build and run executables on a "generic" platform; a
21 * platform specified by:
22 * @p(blist) 23 * - device name; e.g., "TMS320C2812"
24 * - catalog name; the name of a package containing the device named above
25 * - clock rate; the clock rate in MHz of the CPU
26 * - external memory map; an array of memory blocks external to the device
27 * @p 28 * For a complate list of parameters that can be specified when creating a
29 * platform instance see the instance configuration parameters specified
30 * by `{@link ti.platforms.generic.Platform}`. This list, of course,
31 * includes all the instance config parameters specified by the
32 * `{@link xdc.platform.IPlatform}` interface.
33 *
34 *
35 * @a(Throws) 36 * `XDCException` exceptions are thrown for fatal errors. The following error
37 * codes are reported in the exception message:
38 * @p(dlist) 39 * - `ti.platfoms.generic.LINK_TEMPLATE_ERROR`
40 * This error is raised when this platform cannot found the default
41 * linker command template `linkcmd.xdt` in the build target's
42 * package. When a target does not contain this file, the config
43 * parameter `{@link xdc.cfg.Program#linkTemplate}` must be set.
44 * @p 45 *
46 * @a(EXAMPLES) 47 * Example 1: Suppose you need to create an application for a HW platform
48 * that uses the TMS320C2812 running at 150 MHz. You can use this package
49 * (in lieu of one specifically created for the HW platform) by defining a
50 * named instance of this package's Platform module. Add the following
51 * statements to your `config.bld` file to add the platform instance named
52 * "ti.platforms.generic:C28".
53 * @p(code) 54 * Build.platformTable["ti.platforms.generic:C28"] = {
55 * clockRate: 150,
56 * catalogName: "ti.catalog.c2800",
57 * deviceName: "TMS320C2812"
58 * };
59 * @p 60 * With this name defined, it is now possible to configure an application
61 * using the platform instance name "ti.platforms.generic:C28". For example,
62 * if you are using `{@link xdc.tools.configuro}` to configure your
63 * application, the string "ti.platforms.generic:C28" can now be used to
64 * identify your platform:
65 * @p(code) 66 * xs xdc.tools.configuro -b config.bld -p ti.platforms.generic:C28 ...
67 * @p 68 *
69 * @p(html) 70 * <hr/>
71 * @p 72 *
73 * Example 2: The following example illustrates how to specify a platform
74 * instance with memory regions external to the specified device. In this
75 * case, we define a platform using a TMS320C6416 running at 600 MHz on a
76 * board with two external SDRAM memory blocks.
77 * @p(code) 78 * Build.platformTable["ti.platforms.generic:C64"] = {
79 * clockRate: 600,
80 * catalogName: "ti.catalog.c6000",
81 * deviceName: "TMS320C6416",
82 * externalMemoryMap : [
83 * ["SDRAM1", {
84 * name: "SDRAM1",
85 * base: 0x80000000, len: 0x1000000, space: "code/data"
86 * }],
87 * ["SDRAM2", {
88 * name: "SDRAM2",
89 * base: 0x90000000, len: 0x1000000, space: "code/data"
90 * }],
91 * ]
92 * }
93 * @p 94 *
95 * The `externalMemoryMap` attribute is a map of string names to
96 * `{@link xdc.platform.IPlatform#Memory}` structures.
97 *
98 * @see ti.platforms.generic.Platform
99 * @see xdc.bld.BuildEnvironment#platformTable
100 * @see xdc.platform.IPlatform
101 */
102 package ti.platforms.generic [1,0,0,1] {
103 module Platform;
104 }
105 /*
106 * @(#) ti.platforms.generic; 1, 0, 0, 1,350; 11-9-2011 12:03:54; /db/ztree/library/trees/platform/platform-n08x/src/
107 */
108