Ada dua pendekatan umum yang bisa digunakan. Banyak jenis FPGA menahan konfigurasinya dalam kait yang diambil dari perangkat eksternal (biasanya EEPROM) saat startup; perangkat eksternal tidak diperlukan oleh FPGA setelah dibaca. Perubahan pada EEPROM selama operasi perangkat tidak akan berlaku sampai FPGA diinstruksikan untuk memuat ulang kontennya. Dengan demikian, dimungkinkan untuk perangkat yang sepenuhnya tidak dapat dioperasikan tanpa FPGA untuk memprogram ulang FPGA itu selama operasi; Namun, jika terjadi kesalahan selama penulisan EEPROM, perangkat mungkin tidak dapat dioperasikan kecuali atau sampai dapat ditulis ulang oleh perangkat eksternal (keadaan yang kadang-kadang disebut sebagai 'bricked').
Pendekatan alternatif, yang sering berguna dengan CPLD yang sel EEPROM "secara langsung" mengontrol fungsionalitasnya (sebagai lawan disalin ke kait) adalah memiliki sistem yang dapat beroperasi dengan fungsionalitas terbatas bahkan ketika perangkat yang dapat diprogram dalam keadaan tidak berguna. Jika fungsi terbatas seperti itu cukup untuk memprogram ulang CPLD, perangkat mungkin kebal terhadap 'bricking'. Misalnya, perangkat nirkabel mungkin menggunakan CPLD untuk mengontrol fungsionalitas nirkabel dan fitur lainnya. Metode normal pemrograman ulang CPLD mungkin untuk menerima gambar ke dalam RAM melalui tautan nirkabel, dan kemudian menggunakan gambar itu untuk memprogram ulang CPLD. Jika memprogram file, tautan nirkabel mungkin tidak dapat digunakan sampai CPLD diprogram ulang. Untuk memungkinkan sistem pulih, prosesor dapat berisi "default"