Patent ID: 8058896

Claim:
A programmable logic device, comprising: a plurality of repeating blocks, each of which comprises an input and an output of a configuration data path on both of a top end and a bottom end thereof; and a plurality of configuration registers which are linked by the configuration data path, wherein: the plurality of repeating blocks form an array, in which each input of the plurality of repeating blocks is connected to a corresponding output of the plurality of repeating blocks, the programmable logic device further comprises a programming interface device, the programming interface device comprising a plurality of finite state machines, a plurality of loop-back connections and a control circuit, and the programming interface device is connected to at least one of a top and a bottom of the array, wherein the plurality of finite state machines are configured to generate a signal causing writing or reading of configuration data to and from at least one of the plurality of configuration registers included in at least one of the plurality of repeating blocks of a same column of the array.