1. A method for controlling programming voltage levels of non-volatile memory cells, the method comprising: providing a resistive divider connected to a programming voltage reference and effective to generate at least one programming voltage level; providing a reference cell crossed by a cell current; and wherein cell current is applied to the resistive divider to correlate the programming voltage level to intrinsic features of the reference cell.