HP LaserJet Enterprise 500 Maintenance Manual - Page 95

ERROR: DRAM AT ADDRESS X is displayed on the LCD.

Page 95 highlights

CMX Controller Board Handshake Sequences • Read Control Panel Keys - The control panel keys are read to determine if the user is requesting that the printer be placed in download mode, diagnostic mode, or debug SIMM disabled. If ON LINE and FF are pressed during start-up, the printer is placed in download mode. If ; (PREV) and > (DOWN) are pressed during start-up, the printer is placed in diagnostic mode. If any other combination of keys are pressed, the debug SIMM is disabled. Key states are put in an internal register in the VX ASIC. • Detect DRAM - The VX ASIC supports up to four banks of DRAM totalling up to 32 Megabytes. Boot code detects how much DRAM is located in each bank, and relocates the banks to create one contiguous block of DRAM. The size and location of each bank is then displayed on the debug terminal through the debug serial port. • Test DRAM - DRAM is tested by writing a pseudo-random number sequence to all the DRAM, then reading the pattern back to verify it against what was originally written. If an error is detected, the message "ERROR: DRAM AT ADDRESS XXXXXXXX" is displayed on the LCD. When finished, the DRAM test sets all memory to zero. • Inform the EC Processor - The first 8 Kilobytes of DRAM are reserved for the EC processor, which must be notified when DRAM is ready to be used. This is done by putting the message "DCS1" in the ECDC communications register in the VX ASIC. • Detect Ethernet Adapter - An Ethernet adapter must be detected early in the power up sequence so the printer can tell the adapter it has been detected and continue with its own power up sequence. An Ethernet adapter takes a long time to complete its internal diagnostic tests, so the boot code allows the adapter to power up in parallel with the printer to reduce its effect on overall boot time. • Load Boot Messages - The boot code scans flash memory for OEM boot messages and loads them into DRAM. The manufacturer's boot code is the same for all OEMs, and contains a set of default messages. Boot messages for specific OEMs are stored in the DC code, not the boot code. • Load Boot Code into DRAM - Flash memory cannot be accessed while flash is being detected, cleared, or programmed. This prevents boot code from running in flash because the opcodes cannot be fetched. This is solved by copying the program into DRAM and executing the program out of DRAM. The boot code is position-independent in order for the program to operate at a different address. The interrupt vector table is also move to DRAM and the vectors are changed to reflect the new address. • Detect Flash - The boot code supports many different kinds of flash memory, permitting any mixture of flash in the four memory banks. The only requirement is that flash must exist in bank 0 and have boot code programmed on it. The boot code displays flash configuration, manufacturer's part number, size, and start address out the debug serial port. • Display VX Registers - The boot code displays the values of the VX registers out of the debug serial port. 95

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302
  • 303
  • 304
  • 305
  • 306
  • 307
  • 308
  • 309
  • 310
  • 311
  • 312
  • 313
  • 314
  • 315
  • 316
  • 317
  • 318
  • 319
  • 320
  • 321
  • 322
  • 323
  • 324
  • 325
  • 326
  • 327
  • 328
  • 329
  • 330
  • 331
  • 332
  • 333
  • 334
  • 335
  • 336
  • 337
  • 338
  • 339
  • 340
  • 341
  • 342
  • 343
  • 344
  • 345
  • 346
  • 347
  • 348
  • 349
  • 350
  • 351
  • 352
  • 353
  • 354
  • 355
  • 356

CMX Controller Board Handshake Sequences
95
Read Control Panel Keys
— The control panel keys are read to
determine if the user is requesting that the printer be placed in download
mode, diagnostic mode, or debug SIMM disabled. If
ON LINE
and
FF
are
pressed during start-up, the printer is placed in download mode.
If
;
(PREV)
and
>
(DOWN)
are pressed during start-up, the printer is
placed in diagnostic mode. If any other combination of keys are pressed,
the debug SIMM is disabled. Key states are put in an internal register in
the VX ASIC.
Detect DRAM
— The VX ASIC supports up to four banks of DRAM
totalling up to 32 Megabytes. Boot code detects how much DRAM is
located in each bank, and relocates the banks to create one contiguous
block of DRAM. The size and location of each bank is then displayed on
the debug terminal through the debug serial port.
Test DRAM
— DRAM is tested by writing a pseudo–random number
sequence to all the DRAM, then reading the pattern back to verify it
against what was originally written. If an error is detected, the message
“ERROR: DRAM AT ADDRESS XXXXXXXX” is displayed on the LCD.
When finished, the DRAM test sets all memory to zero.
Inform the EC Processor
— The first 8 Kilobytes of DRAM are reserved
for the EC processor, which must be notified when DRAM is ready to be
used. This is done by putting the message “DCS1” in the ECDC
communications register in the VX ASIC.
Detect Ethernet Adapter
— An Ethernet adapter must be detected early
in the power up sequence so the printer can tell the adapter it has been
detected and continue with its own power up sequence. An Ethernet
adapter takes a long time to complete its internal diagnostic tests, so the
boot code allows the adapter to power up in parallel with the printer to
reduce its effect on overall boot time.
Load Boot Messages
— The boot code scans flash memory for OEM
boot messages and loads them into DRAM. The manufacturer’s boot
code is the same for all OEMs, and contains a set of default messages.
Boot messages for specific OEMs are stored in the DC code, not the boot
code.
Load Boot Code into DRAM
— Flash memory cannot be accessed
while flash is being detected, cleared, or programmed. This prevents boot
code from running in flash because the opcodes cannot be fetched. This
is solved by copying the program into DRAM and executing the program
out of DRAM. The boot code is position-independent in order for the
program to operate at a different address. The interrupt vector table is
also move to DRAM and the vectors are changed to reflect the new
address.
Detect Flash
— The boot code supports many different kinds of flash
memory, permitting any mixture of flash in the four memory banks. The
only requirement is that flash must exist in bank 0 and have boot code
programmed on it. The boot code displays flash configuration,
manufacturer’s part number, size, and start address out the debug serial
port.
Display VX Registers
— The boot code displays the values of the VX
registers out of the debug serial port.