Semi-custom devices, programmable logic and device technology