Possibly the most exciting feature of the Papilio is the ability to shift peripheral functionality to any pin at any time, completely on the fly. Shifting SPI pins allows you to easily connect up to 12 SPI devices at once! Or control multiple stepper motors by shifting PWM outputs! Finally, shifting functionality means you never need to worry about where to connect Wings. Every I/O pin is equal, so go ahead and connect your Wing to any open Wing Slot, the FPGA can shift to accommodate the Wing!
We like using the programmable pin function on PIC24Fs too. There’s also some other uCs with pin assignment. If we have the choice between two otherwise similar chips and one has programmable pins, we almost always go for the reprogrammable pins. It makes PCB routing much easier, and minor circuit misnakes can be fixed in software.