Lattice Semiconductor
ispClock5300S Family Data Sheet
41
In addition to the four instructions described above, there are 20 unique instructions specied by Lattice for the
ispClock5300S. These instructions are primarily used to interface to the various user registers and the E
2CMOS
non-volatile memory. Additional instructions are used to control or monitor other features of the device, including
boundary scan operations. A brief description of each unique instruction is provided in detail below, and the bit
PROGRAM_ENABLE – This instruction enables the ispClock5300S programming mode.
PROGRAM_DISABLE – This instruction disables the ispClock5300S programming mode.
BULK_ERASE – This instruction will erase all E
2CMOS bits in the device, including the UES data and electronic
security fuse (ESF). A bulk erase instruction must be issued before reprogramming a device. The device must
already be in programming mode for this instruction to execute.
ADDRESS_SHIFT – This instruction shifts address data into the address register (10 bits) in preparation for either
a PROGRAM or VERIFY instruction.
DATA_SHIFT – This instruction shifts data into or out of the data register (43 bits for ispClock5312, 5308 and 5304;
61 bits for ispClock5320 and 5316), and is used with both the PROGRAM and VERIFY instructions.
PROGRAM – This instruction programs the contents of the data register to the E
2CMOS memory column pointed
to by the address register. The device must already be in programming mode for this instruction to execute.
PROG_INCR – This instruction rst programs the contents of the data register into E
2CMOS memory column
pointed to by the address register and then auto-increments the value of the address register. The device must
already be in programming mode for this instruction to execute.
PROGRAM_SECURITY – This instruction programs the electronic security fuse (ESF). This prevents data other
than the ID code and UES strings from being read from the device. The electronic security fuse may only be reset
by issuing a BULK_ERASE command. The device must already be in programming mode for this instruction to exe-
cute.
VERIFY – This instruction loads data from the E
2CMOS array into the column register. The data may then be
shifted out. The device must already be in programming mode for this instruction to execute.
VERIFY_INCR – This instruction copies the E
2CMOS column pointed to by the address register into the data col-
umn register and then auto-increments the value of the address register. The device must already be in program-
ming mode for this instruction to execute.
DISCHARGE – This instruction is used to discharge the internal programming supply voltage after an erase or pro-
gramming cycle and prepares ispClock5300S for a read cycle.
PROGRAM_USERCODE – This instruction writes the contents of the UES register (32 bits) into E
2CMOS memory.
The device must already be in programming mode for this instruction to execute.
USERCODE – This instruction both reads the UES string (32 bits) from E
2CMOS memory into the UES register
and addresses the UES register so that this data may be shifted in and out.
HIGHZ – This instruction forces all outputs into a High-Z state.
CLAMP – This instruction drives I/O pins with the contents of the boundary scan register.
INTEST – This instruction performs in-circuit functional testing of the device.
ERASE_DONE – This instruction erases the ‘DONE’ bit only. This instruction is used to disable normal operation of
the device while in programming mode until a valid conguration pattern has been programmed.
PROGRAM_DONE – This instruction programs the ‘DONE’ bit only. This instruction is used to enable normal
device operation after programming is complete.
NOOP – This instruction behaves similarly to the CLAMP instruction.