An array of gates having interconnections that can be programmed to perform a specific logical function.