The performance of inexact processors can be improved at the cost of throughput by using parallel redundant computations to correct errors at the processor's output. Error correcting codes applicable to binary data strings have previously been suggested for application to optical processors. We demonstrate that multilevel block codes can likewise be applied. Specific attention is given to error correction multilevel optical matrix-vector multipliers. The per-formance of the multilevel block code is compared to that of multilevel error correction codes formulated for VLSI processors and bar code readers. In residue-coded form (in which the matrix-vector multiplication is performed conventionally), the multilevel block code is shown overall to require fewer resolvable levels at the output.