1 2 3 4 5 6 7 8 9 10 11
12
13 14 15 16
17
18 /*!
19 * ======== ILM3Sx9xx.xdc ========
20 * The Stellaris device data sheet module.
21 *
22 * This module implements the xdc.platform.ICpuDataSheet interface and is
23 * used by platforms to obtain "data sheet" information about this device.
24 *
25 */
26
27 metaonly interface ILM3Sx9xx inherits ti.catalog.ICpuDataSheet
28 {
29
30 struct Timer {
31 string name;
32 UInt baseAddr;
33 UInt intNum;
34 };
35
36 instance:
37 override config string cpuCore = "CM3";
38 override config string isa = "v7M";
39 override config string cpuCoreRevision = "1.0";
40 override config int minProgUnitSize = 1;
41 override config int minDataUnitSize = 1;
42 override config int dataWordSize = 4;
43
44 /*!
45 * ======== memMap ========
46 * The memory map returned by getMemoryMap().
47 */
48 config xdc.platform.IPlatform.Memory memMap[string] = [
49 ["FRAM", {
50 comment: "256KB FRAM",
51 name: "FRAM",
52 base: 0x00000000,
53 len: 0x00040000
54 }],
55
56 ["IRAM", {
57 comment: "64KB IRAM",
58 name: "IRAM",
59 base: 0x20000000,
60 len: 0x00010000
61 }],
62 ];
63
64 config Timer timers[4] = [
65 {
66 name: "Timer 0",
67 baseAddr: 0x40030000,
68 intNum: 35
69 },
70
71 {
72 name: "Timer 1",
73 baseAddr: 0x40031000,
74 intNum: 37
75 },
76
77 {
78 name: "Timer 2",
79 baseAddr: 0x40032000,
80 intNum: 39
81 },
82
83 {
84 name: "Timer 3",
85 baseAddr: 0x40033000,
86 intNum: 51
87 },
88 ];
89
90 };
91
92 93 94
95