1 2 3 4 5 6 7 8 9 10 11
12 13 14
15
16 package ti.platforms.load6x;
17
18 /*!
19 * ======== Platform ========
20 * Simulation-based Platform support for 6xxx platforms
21 *
22 * This module implements xdc.platform.IPlatform and defines configuration
23 * parameters that correspond to this platform's Cpu's, Board's, etc.
24 *
25 * The configuration parameters are initialized in this package's
26 * configuration script (package.cfg) and "bound" to the TCOM object
27 * model. Once they are part of the model, these parameters are
28 * queried by a program's configuration script.
29 *
30 * This particular platform has a single Cpu, and therefore, only
31 * declares a single CPU configuration object. Multi-CPU platforms
32 * would declare multiple Cpu configuration parameters (one per
33 * platform CPU).
34 */
35 metaonly module Platform inherits xdc.platform.IPlatform
36 {
37 /*!
38 * ======== BOARD ========
39 * This platform's board attributes
40 */
41 readonly config xdc.platform.IPlatform.Board BOARD = {
42 id: "0",
43 boardName: "sim6xxx",
44 boardFamily: "sim6xxx",
45 boardRevision: null
46 };
47
48 /*!
49 * ======== CPU ========
50 * The CPU simulated by this platform.
51 *
52 * The device simulated is determined by the platform instance name
53 * or if this does not name a ti.catalog.c6000 module, we simulate
54 * a TMS320C6416.
55 */
56 readonly config xdc.platform.IExeContext.Cpu CPU = {
57 id: "0",
58 clockRate: 600.0,
59 catalogName: "ti.catalog.c6000",
60 deviceName: "TMS320C6416",
61 revision: "",
62 };
63
64 instance:
65
66 /*!
67 * ======== deviceName ========
68 * The CPU simulated by this simulator platform.
69 *
70 * This parameter is optional. If it's not set, then the Platform module
71 * parameter CPU.deviceName is used.
72 */
73 config string deviceName;
74
75 override readonly config xdc.platform.IPlatform.Memory
76 externalMemoryMap[string] = [
77
78 ["EXT0", {name: "EXT0", base: 0x00400000, len: 0x00400000}],
79 ["EXT1", {name: "EXT1", base: 0x01000000, len: 0x00800000}],
80 ["EXT2", {name: "EXT2", base: 0x02000000, len: 0x01000000}],
81 ["EXT3", {name: "EXT3", base: 0x03000000, len: 0x01000000}],
82 ["BMEM", {name: "BMEM", base: 0x80000000, len: 0x00010000}],
83 ];
84
85 override config string codeMemory = "IRAM";
86
87 override config string dataMemory = "EXT3";
88
89 override config string stackMemory = "BMEM";
90 };
91 92 93
94