1<?xml version="1.0" encoding="utf-8" standalone="no"?> 2<device xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" schemaVersion="1.1" xs:noNamespaceSchemaLocation="svd_schema.xsd"> 3 <peripheral> 4 <name>DVS</name> 5 <description>Dynamic Voltage Scaling</description> 6 <prependToName>DVS_</prependToName> 7 <baseAddress>0x40004800</baseAddress> 8 <addressBlock> 9 <offset>0x00</offset> 10 <size>0x0030</size> 11 <usage>registers</usage> 12 </addressBlock> 13 <interrupt> 14 <name>DVS</name> 15 <description>Dynamic Voltage Scaling Interrupt</description> 16 <value>83</value> 17 </interrupt> 18 <registers> 19 <register> 20 <name>CTL</name> 21 <description>Control Register</description> 22 <addressOffset>0x00</addressOffset> 23 <fields> 24 <field> 25 <name>MON_ENA</name> 26 <description>Enable the DVS monitoring circuit</description> 27 <bitOffset>0</bitOffset> 28 <bitWidth>1</bitWidth> 29 </field> 30 <field> 31 <name>ADJ_ENA</name> 32 <description>Enable the power supply adjustment based on measurements</description> 33 <bitOffset>1</bitOffset> 34 <bitWidth>1</bitWidth> 35 </field> 36 <field> 37 <name>PS_FB_DIS</name> 38 <description>Power Supply Feedback Disable</description> 39 <bitOffset>2</bitOffset> 40 <bitWidth>1</bitWidth> 41 </field> 42 <field> 43 <name>CTRL_TAP_ENA</name> 44 <description>Use the TAP Select for automatic adjustment or monitoring</description> 45 <bitOffset>3</bitOffset> 46 <bitWidth>1</bitWidth> 47 </field> 48 <field> 49 <name>PROP_DLY</name> 50 <description>Additional delay to monitor lines</description> 51 <bitOffset>4</bitOffset> 52 <bitWidth>2</bitWidth> 53 </field> 54 <field> 55 <name>MON_ONESHOT</name> 56 <description>Measure delay once</description> 57 <bitOffset>6</bitOffset> 58 <bitWidth>1</bitWidth> 59 </field> 60 <field> 61 <name>GO_DIRECT</name> 62 <description>Operate in automatic mode or move directly</description> 63 <bitOffset>7</bitOffset> 64 <bitWidth>1</bitWidth> 65 </field> 66 <field> 67 <name>DIRECT_REG</name> 68 <description>Step incrementally to target voltage</description> 69 <bitOffset>8</bitOffset> 70 <bitWidth>1</bitWidth> 71 </field> 72 <field> 73 <name>PRIME_ENA</name> 74 <description>Include a delay line priming signal before monitoring</description> 75 <bitOffset>9</bitOffset> 76 <bitWidth>1</bitWidth> 77 </field> 78 <field> 79 <name>LIMIT_IE</name> 80 <description>Enable Limit Error Interrupt</description> 81 <bitOffset>10</bitOffset> 82 <bitWidth>1</bitWidth> 83 </field> 84 <field> 85 <name>RANGE_IE</name> 86 <description>Enable Range Error Interrupt</description> 87 <bitOffset>11</bitOffset> 88 <bitWidth>1</bitWidth> 89 </field> 90 <field> 91 <name>ADJ_IE</name> 92 <description>Enable Adjustment Error Interrupt</description> 93 <bitOffset>12</bitOffset> 94 <bitWidth>1</bitWidth> 95 </field> 96 <field> 97 <name>REF_SEL</name> 98 <description>Select TAP used for voltage adjustment</description> 99 <bitOffset>13</bitOffset> 100 <bitWidth>4</bitWidth> 101 </field> 102 <field> 103 <name>INC_VAL</name> 104 <description>Step size to increment voltage when in automatic mode</description> 105 <bitOffset>17</bitOffset> 106 <bitWidth>3</bitWidth> 107 </field> 108 <field> 109 <name>DVS_PS_APB_DIS</name> 110 <description>Prevent the application code from adjusting Vcore</description> 111 <bitOffset>20</bitOffset> 112 <bitWidth>1</bitWidth> 113 </field> 114 <field> 115 <name>DVS_HI_RANGE_ANY</name> 116 <description>Any high range signal from a delay line will cause a voltage adjustment</description> 117 <bitOffset>21</bitOffset> 118 <bitWidth>1</bitWidth> 119 </field> 120 <field> 121 <name>FB_TO_IE</name> 122 <description>Enable Voltage Adjustment Timeout Interrupt</description> 123 <bitOffset>22</bitOffset> 124 <bitWidth>1</bitWidth> 125 </field> 126 <field> 127 <name>FC_LV_IE</name> 128 <description>Enable Low Voltage Interrupt</description> 129 <bitOffset>23</bitOffset> 130 <bitWidth>1</bitWidth> 131 </field> 132 <field> 133 <name>PD_ACK_ENA</name> 134 <description>Prevent DVS from ack'ing a request to enter a low power mode until in the idle state</description> 135 <bitOffset>24</bitOffset> 136 <bitWidth>1</bitWidth> 137 </field> 138 <field> 139 <name>ADJ_ABORT</name> 140 <description>Causes the DVS to enter the idle state immediately on a request to enter a low power mode</description> 141 <bitOffset>25</bitOffset> 142 <bitWidth>1</bitWidth> 143 </field> 144 </fields> 145 </register> 146 <register> 147 <name>STAT</name> 148 <description>Status Fields</description> 149 <addressOffset>0x04</addressOffset> 150 <resetValue>0x00000000</resetValue> 151 <fields> 152 <field> 153 <name>DVS_STATE</name> 154 <description>State machine state</description> 155 <bitOffset>0</bitOffset> 156 <bitWidth>4</bitWidth> 157 </field> 158 <field> 159 <name>ADJ_UP_ENA</name> 160 <description>DVS Raising voltage</description> 161 <bitOffset>4</bitOffset> 162 <bitWidth>1</bitWidth> 163 </field> 164 <field> 165 <name>ADJ_DWN_ENA</name> 166 <description>DVS Lowering voltage</description> 167 <bitOffset>5</bitOffset> 168 <bitWidth>1</bitWidth> 169 </field> 170 <field> 171 <name>ADJ_ACTIVE</name> 172 <description>Adjustment to a Direct Voltage</description> 173 <bitOffset>6</bitOffset> 174 <bitWidth>1</bitWidth> 175 </field> 176 <field> 177 <name>CTR_TAP_OK</name> 178 <description>Tap Enabled and the Tap is withing Hi/Low limits</description> 179 <bitOffset>7</bitOffset> 180 <bitWidth>1</bitWidth> 181 </field> 182 <field> 183 <name>CTR_TAP_SEL</name> 184 <description>Status of selected center tap delay line detect output</description> 185 <bitOffset>8</bitOffset> 186 <bitWidth>1</bitWidth> 187 </field> 188 <field> 189 <name>SLOW_TRIP_DET</name> 190 <description>Provides the current combined status of all selected Low Range delay lines</description> 191 <bitOffset>9</bitOffset> 192 <bitWidth>1</bitWidth> 193 </field> 194 <field> 195 <name>FAST_TRIP_DET</name> 196 <description>Provides the current combined status of all selected High Range delay lines</description> 197 <bitOffset>10</bitOffset> 198 <bitWidth>1</bitWidth> 199 </field> 200 <field> 201 <name>PS_IN_RANGE</name> 202 <description>Indicates if the power supply is in range</description> 203 <bitOffset>11</bitOffset> 204 <bitWidth>1</bitWidth> 205 </field> 206 <field> 207 <name>PS_VCNTR</name> 208 <description>Voltage Count value sent to the power supply</description> 209 <bitOffset>12</bitOffset> 210 <bitWidth>7</bitWidth> 211 </field> 212 <field> 213 <name>MON_DLY_OK</name> 214 <description>Indicates the monitor delay count is at 0</description> 215 <bitOffset>19</bitOffset> 216 <bitWidth>1</bitWidth> 217 </field> 218 <field> 219 <name>ADJ_DLY_OK</name> 220 <description>Indicates the adjustment delay count is at 0</description> 221 <bitOffset>20</bitOffset> 222 <bitWidth>1</bitWidth> 223 </field> 224 <field> 225 <name>LO_LIMIT_DET</name> 226 <description>Power supply voltage counter is at low limit</description> 227 <bitOffset>21</bitOffset> 228 <bitWidth>1</bitWidth> 229 </field> 230 <field> 231 <name>HI_LIMIT_DET</name> 232 <description>Power supply voltage counter is at high limit</description> 233 <bitOffset>22</bitOffset> 234 <bitWidth>1</bitWidth> 235 </field> 236 <field> 237 <name>VALID_TAP</name> 238 <description>At least one delay line has been enabled</description> 239 <bitOffset>23</bitOffset> 240 <bitWidth>1</bitWidth> 241 </field> 242 <field> 243 <name>LIMIT_ERR</name> 244 <description>Interrupt flag that indicates a voltage count is at/beyond manufacturer limits</description> 245 <bitOffset>24</bitOffset> 246 <bitWidth>1</bitWidth> 247 </field> 248 <field> 249 <name>RANGE_ERR</name> 250 <description>Interrupt flag that indicates a tap has an invalid value</description> 251 <bitOffset>25</bitOffset> 252 <bitWidth>1</bitWidth> 253 </field> 254 <field> 255 <name>ADJ_ERR</name> 256 <description>Interrupt flag that indicates up and down adjustment requested simultaneously</description> 257 <bitOffset>26</bitOffset> 258 <bitWidth>1</bitWidth> 259 </field> 260 <field> 261 <name>REF_SEL_ERR</name> 262 <description>Indicates the ref select register bit is out of range</description> 263 <bitOffset>27</bitOffset> 264 <bitWidth>1</bitWidth> 265 </field> 266 <field> 267 <name>FB_TO_ERR</name> 268 <description>Interrupt flag that indicates a timeout while adjusting the voltage</description> 269 <bitOffset>28</bitOffset> 270 <bitWidth>1</bitWidth> 271 </field> 272 <field> 273 <name>FB_TO_ERR_S</name> 274 <description>Interrupt flag that mirror FB_TO_ERR and is write one clear</description> 275 <bitOffset>29</bitOffset> 276 <bitWidth>1</bitWidth> 277 </field> 278 <field> 279 <name>FC_LV_DET_INT</name> 280 <description>Interrupt flag that indicates the power supply voltage requested is below the low threshold</description> 281 <bitOffset>30</bitOffset> 282 <bitWidth>1</bitWidth> 283 </field> 284 <field> 285 <name>FC_LV_DET_S</name> 286 <description>Interrupt flag that mirrors FC_LV_DET_INT</description> 287 <bitOffset>31</bitOffset> 288 <bitWidth>1</bitWidth> 289 </field> 290 </fields> 291 </register> 292 <register> 293 <name>DIRECT</name> 294 <description>Direct control of target voltage</description> 295 <addressOffset>0x08</addressOffset> 296 <fields> 297 <field> 298 <name>VOLTAGE</name> 299 <description>Sets the target power supply value</description> 300 <bitOffset>0</bitOffset> 301 <bitWidth>7</bitWidth> 302 </field> 303 </fields> 304 </register> 305 <register> 306 <name>MON</name> 307 <description>Monitor Delay</description> 308 <addressOffset>0x00C</addressOffset> 309 <fields> 310 <field> 311 <name>DLY</name> 312 <description>Number of prescaled clocks between delay line samples</description> 313 <bitOffset>0</bitOffset> 314 <bitWidth>24</bitWidth> 315 </field> 316 <field> 317 <name>PRE</name> 318 <description>Number of clocks before DVS_MON_DLY is decremented</description> 319 <bitOffset>24</bitOffset> 320 <bitWidth>8</bitWidth> 321 </field> 322 </fields> 323 </register> 324 <register> 325 <name>ADJ_UP</name> 326 <description>Up Delay Register</description> 327 <addressOffset>0x010</addressOffset> 328 <fields> 329 <field> 330 <name>DLY</name> 331 <description>Number of prescaled clocks between updates of the adjustment delay counter</description> 332 <bitOffset>0</bitOffset> 333 <bitWidth>16</bitWidth> 334 </field> 335 <field> 336 <name>PRE</name> 337 <description>Number of clocks before DVS_ADJ_UP_DLY is decremented</description> 338 <bitOffset>16</bitOffset> 339 <bitWidth>8</bitWidth> 340 </field> 341 </fields> 342 </register> 343 <register> 344 <name>ADJ_DWN</name> 345 <description>Down Delay Register</description> 346 <addressOffset>0x014</addressOffset> 347 <fields> 348 <field> 349 <name>DLY</name> 350 <description>Number of prescaled clocks between updates of the adjustment delay counter</description> 351 <bitOffset>0</bitOffset> 352 <bitWidth>16</bitWidth> 353 </field> 354 <field> 355 <name>PRE</name> 356 <description>Number of clocks before DVS_ADJ_DWN_DLY is decremented</description> 357 <bitOffset>16</bitOffset> 358 <bitWidth>8</bitWidth> 359 </field> 360 </fields> 361 </register> 362 <register> 363 <name>THRES_CMP</name> 364 <description>Up Delay Register</description> 365 <addressOffset>0x018</addressOffset> 366 <fields> 367 <field> 368 <name>VCNTR_THRES_CNT</name> 369 <description>Value used to determine 'low voltage' range</description> 370 <bitOffset>0</bitOffset> 371 <bitWidth>7</bitWidth> 372 </field> 373 <field> 374 <name>VCNTR_THRES_MASK</name> 375 <description>Mask applied to threshold and vcount to determine if the device is in a low voltage range</description> 376 <bitOffset>8</bitOffset> 377 <bitWidth>7</bitWidth> 378 </field> 379 </fields> 380 </register> 381 <register> 382 <dim>5</dim> 383 <dimIncrement>4</dimIncrement> 384 <name>TAP_SEL[%s]</name> 385 <description>DVS Tap Select Register</description> 386 <addressOffset>0x1C</addressOffset> 387 <fields> 388 <field> 389 <name>LO</name> 390 <description>Select delay line tap for lower bound of auto adjustment</description> 391 <bitOffset>0</bitOffset> 392 <bitWidth>5</bitWidth> 393 </field> 394 <field> 395 <name>LO_TAP_STAT</name> 396 <description>Returns last delay line tap value</description> 397 <bitOffset>5</bitOffset> 398 <bitWidth>1</bitWidth> 399 </field> 400 <field> 401 <name>CTR_TAP_STAT</name> 402 <description>Returns last delay line tap value</description> 403 <bitOffset>6</bitOffset> 404 <bitWidth>1</bitWidth> 405 </field> 406 <field> 407 <name>HI_TAP_STAT</name> 408 <description>Returns last delay line tap value</description> 409 <bitOffset>7</bitOffset> 410 <bitWidth>1</bitWidth> 411 </field> 412 <field> 413 <name>HI</name> 414 <description>Selects delay line tap for high point of auto adjustment</description> 415 <bitOffset>8</bitOffset> 416 <bitWidth>5</bitWidth> 417 </field> 418 <field> 419 <name>CTR</name> 420 <description>Selects delay line tap for center point of auto adjustment</description> 421 <bitOffset>16</bitOffset> 422 <bitWidth>5</bitWidth> 423 </field> 424 <field> 425 <name>COARSE</name> 426 <description>Selects delay line tap for coarse or fixed delay portion of the line</description> 427 <bitOffset>24</bitOffset> 428 <bitWidth>3</bitWidth> 429 </field> 430 <field> 431 <name>DET_DLY</name> 432 <description>Number of HCLK between delay line launch and sampling</description> 433 <bitOffset>29</bitOffset> 434 <bitWidth>2</bitWidth> 435 </field> 436 <field> 437 <name>DELAY_ACT</name> 438 <description>Set if the delay is active</description> 439 <bitOffset>31</bitOffset> 440 <bitWidth>1</bitWidth> 441 </field> 442 </fields> 443 </register> 444 </registers> 445 </peripheral> 446 <!-- DVS: 447 Dynamic Voltage Scaling --> 448</device>