Bộ tổng hợp C ++ để phát triển thuật toán PolarFire FPGA

Cập nhật: ngày 6 tháng 2023 năm XNUMX
Bộ tổng hợp C ++ để phát triển thuật toán PolarFire FPGA

“Phần lớn các thuật toán tính toán biên, thị giác máy tính và điều khiển công nghiệp được phát triển nguyên bản bằng C ++ bởi các nhà phát triển có ít hoặc không có kiến ​​thức cơ bản FPGA phần cứng, ”theo công ty.

Được gọi là SmartHLS, công cụ này cho phép các thuật toán C ++ được dịch trực tiếp sang mã RTL (cấp độ truyền thanh ghi) được FPGA tối ưu hóa.

Nó dựa trên môi trường phát triển tích hợp Eclipse mã nguồn mở và sử dụng mã phần mềm C ++ để tạo thành phần HDL IP (tài sản trí tuệ của ngôn ngữ thiết kế phần cứng) để tích hợp vào các dự án Libero SmartDesign của Microchip.

Cụ thể, người dùng thực hiện thiết kế của họ trong phần mềm C ++ và xác minh chức năng bằng các bài kiểm tra phần mềm. Tiếp theo, LegUp biên dịch chương trình C ++ thành các mô-đun phần cứng Verilog tương đương chức năng.

SmartHLS có thể chạy đồng mô phỏng với Modelsim để xác minh hành vi phần cứng theo chu kỳ chính xác và xác nhận chức năng phần cứng khớp với phần mềm và nó có thể tạo lõi IP phần cứng để tích hợp vào các hệ thống lớn hơn bởi SmartDesign. LegUp cũng có thể chạy tổng hợp Libero trên Verilog được tạo để xác định vùng FPGA và Fmax. Cũng như PolarFire, công cụ này hỗ trợ SmartFusion2 FPGA.

Microchip cho biết: “Viết mã phần mềm C ++ dễ dàng hơn cho các kỹ sư so với thiết kế trong RTL vì mã phần mềm ngắn gọn hơn, với số dòng C ++ yêu cầu ít hơn 5-10 lần so với RTL,” Microchip cho biết. “Phần mềm cũng dễ hiểu và dễ sửa đổi hơn để cải tiến hoặc bảo trì trong tương lai so với RTL. Tính ngắn gọn và dễ đọc của phần mềm có nghĩa là ít lỗi hơn trong thiết kế FPGA của bạn. ”

Trang sản phẩm SmartHLS ở đây