A velocidade que sua CPU executará será baseada no maior atraso de flop a flop em seu design sintetizado. O atraso de flop para flop incluirá o tempo de clock para Q, roteamento, lógica / LUT e tempo de configuração do flop. Esses itens somados formam o caminho crítico de sua temporização, que você pode inspecionar na saída do relatório de temporização pela ferramenta de localização e rota.
Existem disciplinas de design inteiras dedicadas a criar arquiteturas que minimizem esse atraso para obter o máximo de um determinado processo - pipelining, execução paralela, execução especulativa e assim por diante. É uma tarefa fascinante e envolvente, que extrai a última gota de desempenho de um FPGA (ou, nesse caso, de um ASIC).
Dito isto, os fornecedores de FPGA fornecerão diferentes graus de velocidade para suas peças, o que corresponde a uma taxa máxima de MHz. Por exemplo, um -2 Xilinx Artix é uma parte de '250 MHz', apesar de ser capaz de taxas de clock mais altas para projetos com pipelines.
Quando você interage com a síntese FPGA e as ferramentas de local e rota, você precisará fornecer restrições ao seu design. Isso informa à ferramenta o fluxo de atraso de flop para flop desejado que você está tentando atingir. Em Quartus (Altera) e Vivado (Xilinx), essas restrições usam uma sintaxe chamada SDC, que significa Synopsys Design Constraints. O SDC veio inicialmente do mundo ASIC e também foi adotado pelo setor de FPGA. Conheça o SDC - ele ajudará você a obter os resultados desejados.
Altera e Xilinx têm comunidades online para obter ajuda sobre como usar a sintaxe SDC e muitos outros tópicos.
Dito isso, se você se preocupa com a velocidade, considere um FPGA com uma macro rígida de CPU, como o Zynq.