مقايسه بين تراشه هاي FPGA و CPLD
نخستين تفاوت بين اين دو تراشه در نوع حافظه مورد استفاده آنها مي باشد.تراشه هاي FPGA از حافظه RAM استفاده مي کنند به اين ترتيب با قطع ولتاژتغذيه، نياز به پيکربندي مجدد دارند در حالي که تراشه هاي CPLD از حافظه Flash يا EEPROM استفاده مي کنند و با قطع تغذيه برنامه ذخيره شده در آنها از بين نمي رود. تفاوت ديگر در حجم و تنوع بلوکهاي در دسترس مي باشد به طور کلي قابليتهاي تراشه FPGA بسيار بيشتر از تراشه اي CPLD مي باشد به عنوان مثال بلوکهاي RAM ،ضرب کننده ها، بلوکهاي DSP ، مدارهاي سنکرون سازي کلاک و بسياري از بلوکها و قابليتهاي متنوع ديگر در معماري FPGA ها در دسترس مي باشد همچنين استاندارهاي ولتاژي و جرياني متعدد توسط اين تراشه ها پشتيباني مي شود در حالي که CPLD ها از قابليتهاي محدودتري برخوردارند و حجم گينها و تعداد فليپ فلاپها در مقايسه با FPGA ها کمتر مي باشد. از سوي ديگر به دليل سادگي معماري، ميزان تاخير سيگنال در تراشه اي CPLD قابل پيش بيني است اما تاخير در FPGA به نوع برقراري اتصالات (Routing) وابسته بوده، قابل پيش بيني نمي باشد. همچنين مصرف جريان در تراشه هاي CPLD به مراتب کمتر از FPGA مي باشد.