A copy instruction executed by a functional-level instruction-set
computing (FLIC) processor copies a variable-length data block from one
resource to another resource through a cross-bar switch. Resources
include general-purpose registers, input, output, and execution buffers,
DRAM, SRAM, and other memory. A copy-with-validate instruction has an
operand pointing to a first rule in an immediate rule table. The first
rule controls validation of a first data-item in the data being copied.
Validation includes range and equality checking of the data-item. The
value of the data-item or the current offset can be written to a
register. A format field in the rule indicates the size of the data-item,
or the size is read from the data-item for variable-size formats. The
current offset is incremented by the size. The next data-item is
validated by a next rule, and other rules in the immediate table control
validation of other data-items in the data block.