Programmable logic designs