a programmable logic device has a plurality of levels of programmable logic modules with fixed interconnections . the outputs of a level connect to inputs of the next level of programmable logic modules . the first level is fed from a bank of memory elements and the inputs to this bank of memory elements are derived from the last level . crossbar switches are optionally inserted between a carefully chosen pairs of levels .