1 tony 1.1 // ===================================================================
2 // Title: Physical Components 2.8
3 // Filename: Physical28_Component.mof
4 // Version: 2.8
5 // Status: Final
6 // Date: Jan 26, 2004
7 // ===================================================================
8 // Copyright 1998-2003 Distributed Management Task Force, Inc. (DMTF).
9 // All rights reserved.
10 // DMTF is a not-for-profit association of industry members dedicated
11 // to promoting enterprise and systems management and interoperability.
12 // DMTF specifications and documents may be reproduced for uses
13 // consistent with this purpose by members and non-members,
14 // provided that correct attribution is given.
15 // As DMTF specifications may be revised from time to time,
16 // the particular version and release date should always be noted.
17 //
18 // Implementation of certain elements of this standard or proposed
19 // standard may be subject to third party patent rights, including
20 // provisional patent rights (herein "patent rights"). DMTF makes
21 // no representations to users of the standard as to the existence
22 tony 1.1 // of such rights, and is not responsible to recognize, disclose, or
23 // identify any or all such third party patent right, owners or
24 // claimants, nor for any incomplete or inaccurate identification or
25 // disclosure of such rights, owners or claimants. DMTF shall have no
26 // liability to any party, in any manner or circumstance, under any
27 // legal theory whatsoever, for failure to recognize, disclose, or
28 // identify any such third party patent rights, or for such party's
29 // reliance on the standard or incorporation thereof in its product,
30 // protocols or testing procedures. DMTF shall have no liability to
31 // any party implementing such standard, whether such implementation
32 // is foreseeable or not, nor to any patent owner or claimant, and shall
33 // have no liability or responsibility for costs or losses incurred if
34 // a standard is withdrawn or modified after publication, and shall be
35 // indemnified and held harmless by any party implementing the
36 // standard from any and all claims of infringement by a patent owner
37 // for such implementations.
38 //
39 // For information about patents held by third-parties which have
40 // notified the DMTF that, in their opinion, such patent may relate to
41 // or impact implementations of DMTF standards, visit
42 // http://www.dmtf.org/about/policies/disclosures.php.
43 tony 1.1 // ===================================================================
44 // Description: The Physical Model defines modeling concepts related
45 // to actual boxes and packaging. This file defines
46 // the concepts related to components and chips.
47 //
48 // The object classes below are listed in an order that
49 // avoids forward references. Required objects, defined
50 // by other working groups, are omitted.
51 // ==================================================================
52 // Change Log for v2.8 Preliminary
53 // CR1005 - Deprecate several boolean properties in the physical model
54 // that overlap. Create a new property to express their
55 // meaning.
56 // CR1019 - CIM Versioning for 2.8 Preliminary
57 //
58 // Change Log for v2.7
59 // CR623 - Fix the DMI mapping string to include the attribute number
60 // PhysicalMemory.FormFactor, .MemoryType, .TotalWidth,
61 // .DataWidth, .Speed, .Capacity, .BankLabel.
62 // ==================================================================
63
64 tony 1.1 #pragma locale ("en_US")
65
66
67 // ==================================================================
68 // PhysicalComponent
69 // ==================================================================
70 [Version ( "2.8.0" ), Description (
71 "The PhysicalComponent class represents any low-level or basic "
72 "Component within a Package. A Component object either can not "
73 "or does not need to be decomposed into its constituent parts. "
74 "For example, an ASIC (or Chip) can not be further decomposed. "
75 "A tape for data storage (PhysicalMedia) does not need to be "
76 "decomposed. Any PhysicalElement that is not a Link, Connector, "
77 "or Package is a descendent (or member) of this class. For "
78 "example, the UART chipset on an internal modem Card would be a "
79 "subclass (if additional properties or associations are "
80 "defined) or an instance of PhysicalComponent.")]
81 class CIM_PhysicalComponent : CIM_PhysicalElement {
82
83 [Description (
84 "The RemovalCapabilites property is used to describe the "
85 tony 1.1 "conditions under which a PhysicalPackage can be removed. "
86 "Since all PhysicalPackages are not removable, this property "
87 "defaults to 2, 'Not Applicable'."),
88 ValueMap { "0", "2", "3", "4" },
89 Values { "Unknown", "Not Applicable", "Removable when off",
90 "Removable when on or off" }]
91 uint16 RemovalConditions = 2;
92
93 [Deprecated { "CIM_PhysicalComponent.RemovalConditions" },
94 Description (
95 "The use of this property is being deprecated. Instead "
96 "RemovalConditions should be used. The RemovalConditions "
97 "property addresses whether a PhysicalComponent is removable "
98 "with or without power being applied. \n"
99 "\n"
100 "A PhysicalComponent is Removable if it is designed to be "
101 "taken in and out of the physical container in which it is "
102 "normally found, without impairing the function of the "
103 "overall packaging. A Component can still be Removable if "
104 "power must be 'off' in order to perform the removal. If "
105 "power can be 'on' and the Component removed, then the "
106 tony 1.1 "Element is both Removable and HotSwappable. For example, an "
107 "upgradeable Processor chip is Removable.")]
108 boolean Removable;
109
110 [Deprecated { "No Value" }, Description (
111 "The use of this property is being deprecated because it is "
112 "redundant with the FRU class and its associations. A "
113 "PhysicalComponent is Replaceable if it is possible to "
114 "replace (FRU or upgrade) the Element with a physically "
115 "different one. For example, some ComputerSystems allow the "
116 "main Processor chip to be upgraded to one of a higher clock "
117 "rating. In this case, the Processor is said to be "
118 "Replaceable. All Removable Components are inherently "
119 "Replaceable.")]
120 boolean Replaceable;
121
122 [Deprecated { "CIM_PhysicalComponent.RemovalConditions" },
123 Description (
124 "The use of this property is being deprecated. Instead "
125 "RemovalConditions should be used. The RemovalConditions "
126 "property addresses whether a PhysicalComponent is removable "
127 tony 1.1 "with or without power being applied. \n"
128 "\n"
129 "A PhysicalComponent is HotSwappable if it is possible to "
130 "replace the Element with a physically different but "
131 "equivalent one while the containing Package has power "
132 "applied to it (ie, is 'on'). For example, a fan Component "
133 "may be designed to be HotSwappable. All HotSwappable "
134 "Components are inherently Removable and Replaceable.")]
135 boolean HotSwappable;
136 };
137
138
139 // ==================================================================
140 // PackagedComponent
141 // ==================================================================
142 [Association, Aggregation, Version ( "2.6.0" ), Description (
143 "A Component is typically contained by a PhysicalPackage, such "
144 "as a Chassis or Card. The PackagedComponent association makes "
145 "this relationship explicit. In the first sentence, the word, "
146 "'typically', is used. This is because a Component may be "
147 "removed from, or not yet inserted into, its containing Package "
148 tony 1.1 "(ie, the Removable boolean is TRUE). Therefore, a Component "
149 "may not always be associated with a container.")]
150 class CIM_PackagedComponent : CIM_Container {
151
152 [Aggregate, Override ( "GroupComponent" ), Max ( 1 ),
153 Description (
154 "The PhysicalPackage that contains Component(s).")]
155 CIM_PhysicalPackage REF GroupComponent;
156
157 [Override ( "PartComponent" ), Description (
158 "The PhysicalComponent which is contained in the Package.")]
159 CIM_PhysicalComponent REF PartComponent;
160 };
161
162
163 // ==================================================================
164 // Chip
165 // ==================================================================
166 [Version ( "2.6.0" ), Description (
167 "The Chip class represents any type of integrated circuit "
168 "hardware, including ASICs, processors, memory chips, etc.")]
169 tony 1.1 class CIM_Chip : CIM_PhysicalComponent {
170
171 [Description (
172 "The implementation form factor for the Chip. For example, "
173 "values such as SIMM (7), TSOP (9) or PGA (10) can be "
174 "specified."),
175 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
176 "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
177 "20", "21", "22", "23" },
178 Values { "Unknown", "Other", "SIP", "DIP", "ZIP", "SOJ",
179 "Proprietary", "SIMM", "DIMM", "TSOP",
180 // 10
181 "PGA", "RIMM", "SODIMM", "SRIMM", "SMD", "SSMP", "QFP",
182 "TQFP", "SOIC", "LCC",
183 // 20
184 "PLCC", "BGA", "FPBGA", "LGA" }]
185 uint16 FormFactor;
186 };
187
188
189 // ==================================================================
190 tony 1.1 // PhysicalMemory
191 // ==================================================================
192 [Version ( "2.7.0" ), Description (
193 "PhysicalMemory is a subclass of CIM_Chip, representing low "
194 "level memory devices - SIMMS, DIMMs, raw memory chips, etc.")]
195 class CIM_PhysicalMemory : CIM_Chip {
196
197 [Override ( "FormFactor" ),
198 MappingStrings { "MIF.DMTF|Memory Device|005.6" }]
199 uint16 FormFactor;
200
201 [Description (
202 "The type of PhysicalMemory."),
203 ValueMap { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
204 "10", "11", "12", "13", "14", "15", "16", "17", "18", "19",
205 "20" },
206 Values { "Unknown", "Other", "DRAM", "Synchronous DRAM",
207 "Cache DRAM", "EDO", "EDRAM", "VRAM", "SRAM", "RAM",
208 //10
209 "ROM", "Flash", "EEPROM", "FEPROM", "EPROM", "CDRAM",
210 "3DRAM", "SDRAM", "SGRAM", "RDRAM",
211 tony 1.1 // 20
212 "DDR" },
213 MappingStrings { "MIF.DMTF|Memory Device|005.9" }]
214 uint16 MemoryType;
215
216 [Description (
217 "Total width, in bits, of the PhysicalMemory, including "
218 "check or error correction bits. If there are no error "
219 "correction bits, the value in this property should match "
220 "that specified for DataWidth."),
221 Units ( "Bits" ),
222 MappingStrings { "MIF.DMTF|Memory Device|005.7" }]
223 uint16 TotalWidth;
224
225 [Description (
226 "Data width of the PhysicalMemory, in bits. A data width of "
227 "0 and a TotalWidth of 8 would indicate that the Memory is "
228 "solely used to provide error correction bits."),
229 Units ( "Bits" ),
230 MappingStrings { "MIF.DMTF|Memory Device|005.8" }]
231 uint16 DataWidth;
232 tony 1.1
233 [Description (
234 "The speed of the PhysicalMemory, in nanoseconds."),
235 Units ( "NanoSeconds" ),
236 MappingStrings { "MIF.DMTF|Memory Device|005.24" }]
237 uint32 Speed;
238
239 [Description (
240 "The total capacity of this PhysicalMemory, in bytes."),
241 Units ( "Bytes" ),
242 MappingStrings { "MIF.DMTF|Memory Device|005.5" }]
243 uint64 Capacity;
244
245 [Description (
246 "A string identifying the physically labeled bank where the "
247 "Memory is located - for example, 'Bank 0' or 'Bank A'."),
248 MaxLen ( 64 ),
249 MappingStrings { "MIF.DMTF|Memory Device|005.4" }]
250 string BankLabel;
251
252 [Description (
253 tony 1.1 "Specifies the position of the PhysicalMemory in a 'row'. "
254 "For example, if it takes two 8-bit memory devices to form a "
255 "16- bit row, then a value of '2'means that this Memory is "
256 "the second device. 0 is an invalid value for this property."),
257 MappingStrings { "MIF.DMTF|Memory Device Mapped Addresses|001.6"
258 }]
259 uint32 PositionInRow;
260
261 [Description (
262 "The position of this PhysicalMemory in an interleave. 0 "
263 "indicates non-interleaved. 1 indicates the first position, "
264 "2 the second position and so on. For example, in a 2:1 "
265 "interleave, a value of '1' would indicate that the Memory "
266 "is in the 'even' position."),
267 MappingStrings { "MIF.DMTF|Memory Device Mapped Addresses|001.7"
268 }]
269 uint32 InterleavePosition;
270 };
271
272
273 // ==================================================================
274 tony 1.1 // MemoryOnCard
275 // ==================================================================
276 [Association, Aggregation, Version ( "2.6.0" ), Description (
277 "PhysicalMemory can be located on HostingBoards, adapter Cards, "
278 "etc. This association explicitly defines this relationship of "
279 "Memory to Cards.")]
280 class CIM_MemoryOnCard : CIM_PackagedComponent {
281
282 [Aggregate, Override ( "GroupComponent" ), Max ( 1 ),
283 Description (
284 "The Card that includes or 'contains' Memory.")]
285 CIM_Card REF GroupComponent;
286
287 [Override ( "PartComponent" ), Description (
288 "The PhysicalMemory which is located on the Card.")]
289 CIM_PhysicalMemory REF PartComponent;
290 };
291
292
293 // ===================================================================
294 // end of file
295 tony 1.1 // ===================================================================
|