Bài 2: Thiết kế kỹ thuật số
Khi bạn tìm hiểu là FPGA mà mong muốn sử dụng FPGA vào ứng dụng của mình thì bạn sẽ trở thành nhà thiết kế kỹ thuật số. Nhà thiết kế kỹ thuật số thường là kỹ sư viết mã cho FPGA hoặc ASIC, còn được gọi là Phần cứng. Có hai ngôn ngữ lập trình chính mà bạn có thể sử dụng: VHDL và Verilog. Loại mã này về cơ bản khác với mã cho phần mềm! Điểm khác biệt chính là mã phần mềm nhắm vào bộ vi xử lý, trong khi mã phần cứng thì không.
Một đơn vị xử lý trung tâm (CPU) hoặc chỉ là bộ vi xử lý, là thành phần trung tâm mà các nhà thiết kế phần mềm cần phải hiểu. Một CPU xử lý từng lệnh một để thực hiện một tác vụ. Ví dụ, một lệnh thêm nội dung của thanh ghi A và thanh ghi B, và sau đó lưu trữ kết quả trong vào thanh ghi C. Một nhà thiết kế phần mềm viết mã bằng một ngôn ngữ như C được biên dịch bởi một trình biên dịch. Công việc của trình biên dịch là lấy mã mức cao mà nhà thiết kế phần mềm viết và chuyển đổi nó thành mã mức thấp mà bộ xử lý có thể hiểu được. Ngược lại, trong thiết kế phần cứng, không có trình biên dịch! Không có gì để lấy mã của bạn và biến nó thành các chỉ dẫn theo cách mà trình biên dịch phần mềm làm.
Điều này là do Nhà thiết kế kỹ thuật số không cần bộ xử lý trung tâm. Thay vào đó, họ có hàng ngàn hoặc hàng trăm ngàn thành phần kỹ thuật số rời rạc như bảng tra cứu (LUT), thanh ghi, RAM, bộ xử lý tín hiệu kỹ thuật số và các thành phần khác. Đây là những viên gạch để bạn xây nên những phần cứng của bạn! Nhà thiết kế kỹ thuật số viết mã ở cấp độ thấp hơn nhiều so với kỹ sư phần mềm. Nhà thiết kế kỹ thuật số hiểu cặn kẽ các thành phần riêng lẻ của FPGA và có quyền kiểm soát mọi thứ!
Bạn có thể tự hỏi tại sao phải sử dụng thiết kế phần cứng FPGA khi mà tốc độ CPU đã quá nhanh rồi. Đó là một câu hỏi hay! Câu trả lời là CPU là tốt cho một số lượng lớn các nhiệm vụ, nhưng không phải tất cả các nhiệm vụ. Những thứ như xử lý video, Xử lý tín hiệu Radar kỹ thuật số, Giao dịch thị trường chứng khoán tốc độ cao, viễn thông tốc độ cao và nhiều thứ khác, sẽ không thể thực hiện được nếu không có Nhà thiết kế kỹ thuật số. Thiết kế kỹ thuật số rất thú vị để tìm hiểu, bởi vì nó là trình độ lập trình thấp nhất có thể thực hiện được. Mã của bạn được sử dụng để chạy (nối) dây theo nghĩa đen giữa các thành phần như Cổng AND và cổng OR.
Bình luận gần đây