Calculadora de frequência e período de clock
Um clock digital relaciona frequência, período e ciclos decorridos. Informe uma frequência, como 100 MHz, para descobrir a duração de um ciclo, ou um período, como 10 ns, para obter a frequência.
Executar grátis
Você também pode acrescentar um intervalo e calcular quantos ciclos ocorrem nesse tempo. Os resultados usam unidades práticas de engenharia para processadores, barramentos, FPGA, microcontroladores, instrumentos de teste e comunicações digitais.
Converta a frequência do clock em período
A frequência informa quantos ciclos ocorrem por segundo; o período indica a duração de um ciclo. As grandezas são recíprocas: período é um dividido pela frequência. Um clock de 100 MHz realiza 100 milhões de ciclos por segundo, portanto cada ciclo dura 10 nanossegundos. Selecione Hz, kHz, MHz ou GHz; a calculadora normaliza o valor e exibe várias escalas de frequência e tempo. Isso evita erros comuns com prefixos métricos. Use o período para analisar margens de temporização, ajustar um osciloscópio ou comparar requisitos de periféricos. A frequência deve ser positiva, pois zero não possui período finito.
Converta um período medido em frequência
Às vezes uma folha de dados, um diagrama temporal ou um osciloscópio fornece a duração do ciclo. Nesse sentido, frequência é um dividido pelo período. Informe segundos, milissegundos, microssegundos, nanossegundos ou picossegundos. Por exemplo, 20 ns correspondem a 50 MHz. Forneça somente frequência ou período para evitar valores contraditórios. Confirme que a medição representa um ciclo completo: largura de pulso não é necessariamente período quando o duty cycle difere de cinquenta por cento, e o tempo de bit de um protocolo pode abranger vários ciclos de referência.
Calcule ciclos durante um intervalo
Acrescente um intervalo para multiplicar a frequência normalizada pelo tempo em segundos. Isso ajuda a converter timeouts em ticks de timer, estimar ciclos disponíveis para uma rotina ou conferir uma simulação. `cycles` pode ser fracionário quando o intervalo termina no meio de um ciclo; `complete_cycles` arredonda para baixo porque conta apenas ciclos concluídos. Um intervalo zero retorna zero. Você pode selecionar a unidade do intervalo independentemente da unidade do clock. O cálculo pressupõe um clock ideal e constante; em margens reais, considere separadamente tolerância, jitter, deriva e clock gating.
Casos de uso
Analise o timing de uma FPGA
Converta a frequência-alvo nos nanossegundos disponíveis para cada estágio síncrono.
Configure contagens de timer
Descubra quantos ciclos do clock de entrada ocorrem em um timeout de microssegundos ou milissegundos.
Interprete medições
Transforme um período medido por osciloscópio ou analisador lógico em MHz ou GHz.
Perguntas frequentes
Quanto custa um cálculo via API?
Cada solicitação API custa US$ 0,002; a calculadora também funciona gratuitamente no navegador.
Qual fórmula converte frequência em período?
O período em segundos é 1 dividido pela frequência em hertz.
Posso informar frequência e período?
Não. Forneça exatamente um deles para manter uma única origem inequívoca.
Por que ciclos podem ter casas decimais?
O intervalo pode terminar durante um ciclo. Use complete_cycles quando somente ciclos concluídos importarem.
O cálculo considera jitter ou tolerância?
Não. Ele usa um clock ideal constante; aplique tolerância, jitter, deriva e clock gating separadamente.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/elec/clock-period \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"frequency":100,"frequency_unit":"MHz"}'const res = await fetch("https://api.kit.forhosting.com/elec/clock-period", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"frequency": 100,
"frequency_unit": "MHz"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/elec/clock-period",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"frequency": 100,
"frequency_unit": "MHz"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/elec/clock-period", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"frequency":100,"frequency_unit":"MHz"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"frequency":100,"frequency_unit":"MHz"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/elec/clock-period", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"frequency": 100,
"frequency_unit": "MHz"
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "elec.clock_period",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |