Tốc độ mà CPU của bạn sẽ chạy sẽ dựa trên độ trễ flop-to-flop dài nhất trong thiết kế tổng hợp của bạn. Độ trễ flop-to-flop sẽ bao gồm clock-to-Q, định tuyến, logic / LUT và thời gian thiết lập flop. Chúng được thêm vào cùng nhau tạo thành đường dẫn quan trọng về thời gian của bạn, mà bạn có thể kiểm tra trong đầu ra báo cáo thời gian bằng công cụ địa điểm và tuyến đường.
Có toàn bộ các quy tắc thiết kế dành cho việc tạo ra các kiến trúc nhằm giảm thiểu độ trễ này để tận dụng tối đa quy trình nhất định - đường ống, thực hiện song song, thực hiện đầu cơ, v.v. Đó là một nhiệm vụ hấp dẫn, liên quan đến việc vắt kiệt hiệu năng cuối cùng của một GPU (hoặc cho vấn đề đó, ASIC.)
Điều đó nói rằng, các nhà cung cấp đồ họa sẽ cung cấp các loại tốc độ khác nhau cho các bộ phận của họ, tương ứng với tốc độ MHz tối đa. Ví dụ, -2 Xilinx Artix là một phần '250 MHz' đại khái mặc dù nó có khả năng tốc độ xung nhịp cao hơn cho các thiết kế có đường ống cao.
Khi bạn tương tác với công cụ tổng hợp và vị trí định tuyến của FPGA, bạn sẽ cần đưa ra các ràng buộc cho thiết kế của mình. Chúng cho biết công cụ lưu chuyển độ trễ flop-to-flop mục tiêu mà bạn đang cố gắng đạt được. Trong Quartus (Altera) và Vivado (Xilinx), các ràng buộc này sử dụng một cú pháp gọi là SDC, viết tắt của Synopsys Design Ràng buộc. SDC ban đầu đến từ thế giới ASIC và cũng đã được ngành công nghiệp FPGA chấp nhận. Tìm hiểu SDC - nó sẽ giúp bạn có được kết quả như mong muốn.
Altera và Xilinx có các cộng đồng trực tuyến để được trợ giúp về cách sử dụng cú pháp SDC và nhiều chủ đề khác.
Tất cả đã nói, nếu bạn quan tâm đến tốc độ, bạn nên xem xét một GPU có macro cứng CPU, chẳng hạn như Zynq.