Sự khác biệt giữa CPLD và một FPGA là gì? [đóng cửa]


10

Sự khác biệt giữa CPLD và FPGA là gì?


1
CPLD chỉ sử dụng thuật ngữ sản phẩm (và một DFF cho mỗi pin đầu ra); FPGA có các khối cấu hình bên trong gồm LUT, carry / shift, DFF, cũng như định tuyến linh hoạt hơn, khối RAM và các khối chuyên dụng khác như PLL hoặc MAC.
MarkU

1
... và thông thường các CPLD sử dụng bộ nhớ không bay hơi để lưu trữ cấu hình của chúng trong khi FPGA sử dụng bộ nhớ dễ bay hơi (RAM), tức là các GPU phải được khởi tạo mỗi lần sau khi bật nguồn.
Sữa đông

6
Trả lời có sẵn bằng Google - câu hỏi nên được đóng lại.
Leon Heller

4
@Leon Heller Tôi không biết tại sao bạn muốn gọi người khác đóng câu hỏi này. Nếu bạn cảm thấy câu hỏi này gần gũi, bạn có thể tự do bỏ phiếu để đóng nhưng thực sự khủng khiếp khi bình luận "câu hỏi nên được đóng lại" và cố gắng kêu gọi người khác đi cùng bạn. Nếu câu hỏi này có khả năng bị đóng thì trước tiên, bạn nên đóng câu hỏi dưới đây về điện
tử.stackexchange.com/

1
@LeonHeller (et al), chính câu hỏi này cũng xuất hiện như một câu trả lời cho tìm kiếm Google đó. (Tôi đã nhận nó dưới dạng liên kết thứ hai, cùng với các liên kết khác thực sự hữu ích.)
ilkkachu

Câu trả lời:


5

CPLD thường chỉ được sử dụng để thay thế một lượng logic rời rạc tương đối nhỏ. Cụ thể, những thứ như một loạt các bộ giải mã địa chỉ và mạch giao diện xe buýt. CPLD chứa rất ít bộ nhớ; về mặt tổng thể, số lượng flip-flop có cùng độ lớn với các chân I / O (tức là một CPLD 32 macrocell có ~ 30 chân và ~ 30 flip-flop). Logic tổ hợp trong CPLD được triển khai trên mảng logic lập trình, thường không hữu ích ở tốc độ rất cao. CPLD cũng thường dựa trên flash hoặc có bộ nhớ flash bên trong, đơn giản hóa các yêu cầu thiết kế bảng và cải thiện khả năng bảo vệ chống lại kỹ thuật đảo ngược. CPLD cũng không được xây dựng với các quy trình logic 'cạnh chảy máu'.

Các GPU được thiết kế để tính toán hiệu năng rất cao và giao tiếp băng thông cao. Trong nội bộ, họ sử dụng một kiến ​​trúc rất khác so với CPLD. Các GPU có trạng thái bên trong (thanh ghi và khối RAM) nhiều hơn so với các chân I / O. Logic kết hợp được triển khai trên các bảng tra cứu tốc độ cao có thể chạy tới vài trăm MHz. Các LUT và các thành phần khác được kết nối với nhau bằng mạng định tuyến hiệu suất cao. FPGA cũng chứa các lõi cứng chuyên dụng cung cấp việc triển khai hiệu quả các thành phần khác nhau. Chặn RAM và bội số / lát DSP là rất phổ biến. Các GPU cũng có thể chứa MAC ethernet, lõi xử lý cứng, giao diện PCI Express và các khối chuyên dụng khác. Bộ chuyển đổi nhiều gigabit cũng là một tính năng phổ biến của các loại GPU cao cấp cho phép truyền dữ liệu với tốc độ lên tới 50 Gbit / giây trên mỗi cặp pin. Các GPU thường không chứa bất kỳ bộ nhớ không dễ bay hơi nào, do đó cần có bộ nhớ flash ngoài để tải cấu hình. Mã hóa có thể được thực hiện để cải thiện bảo mật thiết kế với khóa được hỗ trợ bằng pin được lưu trữ trong FPGA.


10

Sự khác biệt:

  1. Năng lực - CPLD thường có ít năng lực logic. CPLD lớn nhất có thể ở mức tương tự với loại nhỏ nhất trên thị trường chính.

  2. Lưu trữ hình ảnh - CPLD có thể tự khởi động trong khi hầu hết các FPGA cần tìm nạp dòng bit cấu hình từ bộ lưu trữ không bay hơi vì chúng dựa trên SRAM. Điều này tác động đến an ninh của hệ thống.

  3. Tính năng - CPLD chỉ cung cấp các cổng, hoặc nói, các ô logic, có thể thực hiện tất cả các loại thuật toán logic. Ngoài ra, FPGA cũng nhúng rất nhiều khối cứng như BlockRAM, DSP, TEMAC, PCIe, MGT, bộ vi xử lý, v.v ... để tạo ra một con chip duy nhất có khả năng xây dựng một hệ thống tích hợp đầy đủ tính năng.


3
Về thứ 3, điều đáng nói là trong những năm qua, các CPLD đã trở nên tinh vi hơn, ranh giới giữa CPLD và FPGA đã bị xóa nhòa. Ví dụ, các CPLD hiện đại đủ lớn để thực hiện một vi điều khiển. Đến thời điểm hiện tại, một số họ chip được quảng cáo là CPLD hiện đang được đánh dấu là các GPU (ví dụ như họ Altera Max)
David Gardner
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.