CPLD (Complex Programmable Logic Device – Thiết bị logic lập trình được phức tạp) là một loại chip bán dẫn cho phép người dùng tự thiết kế và cấu hình các chức năng logic số theo nhu cầu. Nó nằm ở phân khúc giữa các chip logic đơn giản (PAL/GAL) và các chip FPGA cực kỳ phức tạp.

Lịch sử ra đời
- Thập niên 1970 – 1980: Tiền thân của CPLD là các thiết bị SPLD (Simple Programmable Logic Devices) như PAL và PLA. Chúng chỉ có thể thực hiện các hàm logic rất đơn giản.
- Năm 1984: Altera Corporation (nay thuộc Intel) phát hành thiết bị logic lập trình được đầu tiên.
- Năm 1988: Altera giới thiệu dòng MAX 5000, được coi là chiếc CPLD mật độ cao đầu tiên trên thế giới. Đây là bước ngoặt chuyển đổi từ việc thực hiện các hàm logic rời rạc sang việc tích hợp cả một hệ thống con (subsystem) vào một con chip duy nhất.
- Thập niên 1990 – 2000: Các hãng như Xilinx, Lattice và Atmel gia nhập thị trường, đưa CPLD trở nên phổ biến với khả năng tái lập trình thông qua công nghệ Flash hoặc EEPROM.
Mục đích và Kiến trúc
Mục đích chính của CPLD là cung cấp một giải pháp logic tùy chỉnh có tốc độ phản hồi cực nhanh, tính ổn định cao và không mất dữ liệu khi tắt nguồn.
- Kiến trúc Macrocell: CPLD cấu tạo từ các khối macrocell (chứa các cổng AND/OR và Flip-flop). So với FPGA (dùng bảng tra cứu – LUT), CPLD có cấu trúc “thô” hơn nhưng độ trễ tín hiệu là cố định và có thể dự đoán trước được (deterministic timing).
- Tính phi khả biến (Non-volatile): Đây là điểm khác biệt lớn nhất với FPGA. CPLD lưu cấu hình trong bộ nhớ Flash nội bộ, nên ngay khi bật nguồn, chip sẽ hoạt động ngay lập tức (“Instant-on”) mà không cần nạp lại code từ bộ nhớ ngoài.
Lĩnh vực sử dụng
CPLD thường đóng vai trò “keo dính” (glue logic) kết nối các thành phần khác trong một hệ thống điện tử:
- Giao tiếp và Chuyển đổi giao thức: Cầu nối giữa các chuẩn bus khác nhau (ví dụ: chuyển đổi I2C sang SPI, hoặc quản lý địa chỉ bus dữ liệu).
- Quản lý nguồn (Power Sequencing): Điều khiển thứ tự bật/tắt nguồn của các linh kiện phức tạp như CPU hoặc FPGA để tránh hỏng hóc.
- Điều khiển thiết bị ngoại vi: Quản lý đèn LED, bàn phím, hoặc các cảm biến trong hệ thống nhúng.
- Thiết bị y tế và Ô tô: Nhờ tính “Instant-on”, CPLD được dùng trong túi khí ô tô hoặc máy trợ tim—những nơi mà sự chậm trễ 1 giây khi khởi động cũng có thể gây nguy hiểm.
Xu hướng hiện tại (Năm 2026)
Hiện nay, ranh giới giữa CPLD và FPGA đang dần mờ nhạt:
- CPLD lai (Hybrid CPLD): Các dòng chip mới (như Lattice MachXO3 hay Intel MAX 10) kết hợp bộ nhớ Flash của CPLD với tài nguyên logic mạnh mẽ của FPGA.
- Tiêu thụ năng lượng cực thấp: Xu hướng dịch chuyển sang các dòng CPLD có dòng rò thấp, lý tưởng cho thiết bị đeo (wearables) và cảm biến IoT chạy pin.
- Bảo mật phần cứng: CPLD hiện đại tích hợp các tính năng mã hóa để bảo vệ thiết kế chống lại việc sao chép trái phép (IP protection).
Tương lai của CPLD
- Sự trỗi dậy của Automotive: Với sự bùng nổ của xe điện và xe tự lái, nhu cầu về CPLD cấp độ ô tô (Automotive-grade) để điều phối hệ thống lái và an toàn đang tăng trưởng mạnh (khoảng 7-9%/năm).
- Edge Computing & AI: CPLD sẽ không chỉ làm các nhiệm vụ điều khiển đơn giản mà còn tham gia vào việc xử lý sơ bộ dữ liệu cảm biến (pre-processing) trước khi gửi về bộ xử lý trung tâm để tiết kiệm điện năng.
- Thay thế ASIC: Với các dự án sản xuất quy mô nhỏ hoặc vừa, CPLD vẫn là lựa chọn hàng đầu nhờ chi phí thấp hơn nhiều so với việc đặt hàng sản xuất một chip ASIC riêng biệt.
Tóm lại: Nếu bạn cần một con chip “bật là chạy”, phản ứng tức thì và dùng để kết nối các linh kiện trên bo mạch, CPLD vẫn là ông vua không thể thay thế.
Bạn đang tìm hiểu về CPLD để phục vụ cho đồ án thiết kế mạch hay đang cân nhắc lựa chọn giữa CPLD và FPGA cho một dự án cụ thể?