Perbezaan antara cpld dan fpga: 1. Struktur; 2. Tahap integrasi; 4. Skop aplikasi; Pengenalan terperinci: 1. Struktur, bahagian dalam CPLD terdiri daripada unit logik boleh atur cara, interkoneksi boleh atur cara dan unit I/O, dan bahagian dalam FPGA terdiri daripada blok logik boleh dikonfigurasikan, blok input/output boleh atur cara dan matriks antara sambungan boleh atur cara 2 , Tahap penyepaduan, tahap penyepaduan CPLD biasanya rendah, dan kebanyakannya adalah beribu-ribu atau puluhan ribu pintu dalam skala cip Sebagai perbandingan, FPGA mempunyai tahap penyepaduan yang lebih tinggi dan boleh mencapai skala yang lebih tinggi, dsb.
Sistem pengendalian tutorial ini: sistem Windows 10, komputer DELL G3.
CPLD dan FPGA jauh berbeza dalam banyak aspek.
1. Struktur:
CPLD: CPLD (Complex Programmable Logic Device) secara dalaman terdiri daripada unit logik boleh atur cara, interkoneksi boleh atur cara dan unit I/O. Strukturnya agak mudah, dan ia melaksanakan fungsi logik terutamanya melalui sumber talian sambungan yang sama panjang.
FPGA: FPGA (tatasusunan get boleh atur cara medan) secara dalaman terdiri daripada blok logik boleh dikonfigurasikan (CLB), blok input/output boleh atur cara (IOB) dan matriks antara sambungan boleh atur cara. Strukturnya lebih kompleks, menggunakan sambungan teragih berbilang bahagian dengan panjang yang berbeza-beza Kaedah penyambungan ini dicirikan oleh pendawaian fleksibel, tetapi kelewatan berkaitan dengan susun atur sistem dan pendawaian.
2. Tahap penyepaduan:
CPLD: Tahap penyepaduan CPLD biasanya rendah, dan kebanyakannya adalah beribu-ribu atau puluhan ribu get dalam saiz cip.
FPGA: Sebaliknya, FPGA mempunyai tahap integrasi yang lebih tinggi dan boleh mencapai skala yang lebih tinggi, seperti ratusan ribu pintu.
3. Struktur saling sambungan:
CPLD: CPLD menggunakan sumber talian sambungan yang sama panjang, yang dicirikan oleh kelewatan yang sama.
FPGA: FPGA menggunakan sambungan teragih berbilang segmen dengan panjang yang berbeza-beza Ia dicirikan oleh pendawaian fleksibel, tetapi kelewatan berkaitan dengan susun atur sistem dan pendawaian.
4. Skop aplikasi:
CPLD: CPLD digunakan terutamanya untuk melaksanakan logik gabungan, seperti laluan data, logik jujukan, dsb. Dalam sesetengah aplikasi, seperti pemprosesan isyarat digital dan kecerdasan buatan, CPLD mungkin tidak secekap FPGA.
FPGA: FPGA boleh melaksanakan kedua-dua logik gabungan dan logik jujukan, dan boleh digunakan untuk melaksanakan tugas yang lebih kompleks seperti mikropemproses dan algoritma pemprosesan isyarat digital (DSP). Dalam aplikasi yang memerlukan sejumlah besar kuasa pemprosesan data, seperti aplikasi intensif data, FPGA sering mempamerkan prestasi yang lebih tinggi.
5. Konfigurasi dan keselamatan:
CPLD: Cip konfigurasi CPLD wujud, dan konfigurasi tidak akan hilang selepas kegagalan kuasa, jadi tidak perlu cip konfigurasi luaran. Oleh kerana kewujudan cip konfigurasi, keselamatan CPLD agak tinggi.
FPGA: Dalam penggunaan sebenar, FPGA hampir boleh dikatakan tidak mempunyai had pada bilangan konfigurasi. Walau bagaimanapun, memandangkan FPGA menggunakan teknologi SRAM untuk konfigurasi, konfigurasi akan hilang selepas kegagalan kuasa, jadi cip konfigurasi luaran diperlukan. Di samping itu, memandangkan data konfigurasi boleh dibaca, kerahsiaan FPGA adalah lebih buruk sedikit daripada CPLD.
6. Kelewatan masa:
CPLD: Struktur pendawaian berterusan CPLD menentukan bahawa kelewatan pemasaannya adalah seragam dan tetap.
FPGA: Struktur pendawaian bersegmen yang digunakan oleh FPGA menyebabkan kelewatan menjadi tidak stabil.
Selain daripada perbezaan yang dinyatakan di atas, CPLD dan FPGA juga mempunyai perbezaan berikut:
1 Kaedah pengaturcaraan: Kaedah pengaturcaraan CPLD dan FPGA juga berbeza. CPLD biasanya diprogramkan menggunakan bahasa penerangan perkakasan (seperti VHDL atau Verilog), manakala FPGA boleh diprogramkan menggunakan bahasa penerangan perkakasan atau bahasa pengaturcaraan peringkat tinggi (seperti C/C++).
2 Fleksibiliti pengaturcaraan: FPGA mempunyai kaedah pengaturcaraan yang lebih fleksibel dan boleh merealisasikan pengaturcaraan dalam talian dan konfigurasi dinamik. CPLD, sebaliknya, perlu memuat turun data pengaturcaraan ke cip sebelum mengkonfigurasinya.
3 Penggunaan kuasa: Oleh kerana FPGA menggunakan struktur teragih, penggunaan kuasanya agak tinggi. Penggunaan kuasa CPLD agak rendah kerana ia menggunakan unit logik mudah dan struktur interkoneksi.
4 Kebolehpercayaan: Kerana FPGA menggunakan memori yang tidak menentu (seperti SRAM) untuk konfigurasi, kebolehpercayaannya agak rendah. CPLD menggunakan memori tidak meruap (seperti EEPROM atau Flash) untuk konfigurasi, jadi kebolehpercayaannya agak tinggi.
Ringkasnya, perbezaan antara CPLD dan FPGA terutamanya terletak pada struktur, tahap penyepaduan, struktur interkoneksi, skop aplikasi, konfigurasi dan keselamatan serta kelewatan masa. Apabila memilih peranti yang hendak digunakan, pertimbangan menyeluruh perlu dibuat berdasarkan keperluan reka bentuk khusus dan senario aplikasi.
Atas ialah kandungan terperinci Apakah perbezaan antara cpld dan fpga. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!