1 2 3 4 5 6 7 8 9 10 11
12
13 14 15 16
17
18 /*!
19 * ======== ITMS320CDRx40x ========
20 * An interface implemented by all DRx40x and DRx41x devices
21 *
22 * This interface is defined to factor common data about all DRA40x and
23 * DRA41x devices into a single file; they are all configured in the same way.
24 */
25 metaonly interface ITMS320CDRx40x inherits ti.catalog.ICpuDataSheet
26 {
27 config long cacheSizeL1[string] = [
28 ["0k", 0x0000],
29 ["4k", 0x1000],
30 ["8k", 0x2000],
31 ["16k", 0x4000],
32 ["32k", 0x8000],
33 ];
34
35 config long cacheSizeL2[string] = [
36 ["0k", 0x00000],
37 ["32k", 0x08000],
38 ["64k", 0x10000],
39 ["128k",0x20000],
40 ];
41
42 readonly config ti.catalog.c6000.ICacheInfo.CacheDesc cacheMap[string] = [
43 ['l1PMode',{desc:"L1P Cache",
44 map : [["0k",0x0000],
45 ["4k",0x1000],
46 ["8k",0x2000],
47 ["16k",0x4000],
48 ["32k",0x8000]],
49 defaultValue: "0k",
50 memorySection: "L1PSRAM"}],
51
52 ['l1DMode',{desc:"L1D Cache",
53 map : [["0k",0x0000],
54 ["4k",0x1000],
55 ["8k",0x2000],
56 ["16k",0x4000],
57 ["32k",0x8000]],
58 defaultValue: "0k",
59 memorySection: "L1DSRAM"}],
60
61 ['l2Mode',{desc:"L2 Cache",
62 map : [["0k",0x0000],
63 ["32k",0x8000],
64 ["64k",0x10000],
65 ["128k",0x20000]],
66 defaultValue: "0k",
67 memorySection: "IRAM"}]
68
69 ];
70
71 instance:
72
73 override config string cpuCore = "64x+";
74 override config string isa = "64P";
75 override config string cpuCoreRevision = "1.0";
76
77 override config int minProgUnitSize = 1;
78 override config int minDataUnitSize = 1;
79 override config int dataWordSize = 4;
80
81 /*!
82 * ======== memMap ========
83 * The default memory map for this device
84 */
85 config xdc.platform.IPlatform.Memory memMap[string] = [
86 ["IRAM", {
87 comment: "Internal 192KB UMAP0 memory",
88 name: "IRAM",
89 base: 0x11810000,
90 len: 0x00030000,
91 space: "code/data",
92 access: "RWX"
93 }],
94
95 ["L1PSRAM", {
96 comment: "Internal 16KB RAM/CACHE L1 program memory",
97 name: "L1PSRAM",
98 base: 0x11E00000,
99 len: 0x00004000,
100 space: "code",
101 access: "RWX"
102 }],
103
104 ["L1DSRAM", {
105 comment: "Internal 32KB RAM/CACHE L1 data memory",
106 name: "L1DSRAM",
107 base: 0x11F00000,
108 len: 0x00008000,
109 space: "data",
110 access: "RW"
111 }],
112
113 ["ARM_RAM", {
114 comment: "Internal ARM RAM memory",
115 name: "ARM_RAM",
116 base: 0x10008000,
117 len: 0x00004000,
118 space: "data",
119 access: "RW"
120 }],
121 ];
122 };
123 124 125
126