Tutorial Conciso de Análise de Tempo Estático (4)] Restrições Convencionais de Relógio

1. Escreva na frente

Qual é a principal competência de um engenheiro de chip digital ? Diferentes engenheiros podem dar respostas diferentes. Alguns podem se referir à linguagem de descrição de hardware , alguns podem se referir à compreensão de algoritmos e protocolos específicos , e alguns podem se referir à combinação de software e hardware . não. A linguagem de descrição de hardware nada mais é do que o uso repetido das instruções sempre e atribuir, e alguns algoritmos de protocolo básicos na verdade não são complicados de estudar. Para o autor, nas habilidades convencionais Além disso, existem duas habilidades adicionais que são bastante importante, uma das quais é a capacidade de análise do sdc/STA , que é importante como uma ponte para estabelecer a conexão entre o front-end e o back-end , embora para engenheiros de DE, a primeira versão entregue sdc seja muitas vezes imprecisa, e há não há como gerar um relatório de tempo livre de erros por meio deste sdc, mas o conteúdo do sdc é um mapeamento completo e completo das restrições de tempo da descrição do nível de comportamento ao nível da porta, um nível de circuito real. Escrevendo esta coluna, uma é para registros de aprendizado, e a outra é para comunicação e compartilhamento , a fim de recompensar fãs e leitores.

1.1 Links de Navegação Rápida ·

Tutorial breve de análise de tempo estático (1) Introdução
Tutorial breve de análise de tempo estático (2) Conhecimento básico: Estabelecer tempo de espera, reparo de violação, caminho de análise de tempo Análise de
tempo estático breve tutorial (3) Prepare-se para a queda, como entender um relatório de tempo desconhecido
Tutorial Breve de Análise de Tempo Estático (4) Restrições de Constante de Relógio
Tutorial Breve de Análise de Tempo Estático (5) Outros Recursos de Relógio
Tutorial Breve de Análise de Tempo Estático (6) Atraso de Porta
Breve Tutorial de Análise de Tempo Estático (7) Tutorial Resumido de Análise de Tempo Estático Completo de Restrição de Porta
(8 ) ) )
Breve Tutorial de Análise de Tempo Estático de Caminho Falso (9) Tutorial Resumido de Análise de
Tempo Estático de Caminho Multiciclo (10) Tutorial Resumido de Análise de Tempo Estático de Caminho de Circuito Combinado
(11) Análise de Padrões e Gerenciamento de Restrições
Breve Tutorial de Análise de Tempo Estático (12) Breve Discussão linguagem tcl

Em segundo lugar, as características do relógio

Antes de tudo, precisamos enfatizar que a premissa do nosso tutorial conciso 4 de análise de temporização estática é projetar o circuito de forma síncrona , e a análise de temporização estática de STA é inválida para circuitos assíncronos.
Em segundo lugar, sob a condição de restringirmos o relógio, precisamos dominar as três características do relógio, são elas:

  1. Período : Refere-se à ação repetida de um sinal de relógio depois de decorrido um tempo específico .
  2. Borda válida : A borda do clock é dividida em borda de subida e borda de descida .
  3. Ciclo de trabalho : A porcentagem do tempo de fase positivo no ciclo de clock total.

3. criar_relógio

create_clock -period period_value
			 [source_objects]
			 [-name clock_name]
			 [-waveform edge_list]
			 [-add]
			 [-comment comment_string]

3.1 Defina o período do relógio

A opção -period é usada para definir o período do relógio . Normalmente, a unidade do sinal de relógio é ns por padrão, mas também podemos definir unidades de relógio como ps através de set_units.

create_clock -period 10 

A declaração acima significa que configuramos um sinal de clock com um período de clock de 10ns , ou seja , uma frequência de clock de 100Mhz .

3.2 Identificando a fonte do relógio

Quando determinamos o ciclo de clock, também precisamos corresponder o sinal de clock a um objeto de origem (como uma porta clk ou um pino de flip-flop P, rede N), este passo é como adicionar um sinal de clock em STA é mapeado para um objeto no nível do circuito a ser acionado.
Podemos usar a seguinte declaração para identificá-lo

#代表作为时钟源端口
create_clock -period 10 [get_ports A]

#代表作为时钟源的网络
create_clock -period 10 [get_nets N]

#代表作为时钟源的引脚,若触发器的名称为FF的话
create_clock -period 10 [get_pins FF/P]

3.3 Nomeando o relógio

Quando mapeamos a porta, o próximo problema é o nome do relógio . Se não especificarmos o nome separadamente, a ferramenta atribuirá um nome padrão ao relógio. Na análise de temporização do STA, o nome do relógio é importante informação porque uma vez que um sinal de relógio é definido e nomeado, todos os outros comandos SDC que dependem deste relógio só precisam mencionar esse relógio . Nomeamos o relógio pelo sufixo -name, por exemplo

#创建一个10ns的时钟,映射到端口A,时钟命名为PCLK
create_clock create_clock -period 10 [get_ports A] -name PCLK

3.4 Especificando o ciclo de trabalho

Aqui podemos ser um pouco breves, porque para circuitos digitais, o ciclo de trabalho não é uma estrutura de circuito 1:1, e existem poucos tipos, mas se quisermos especificar o ciclo de trabalho, podemos usar -waveform para fazer isso, cole o endereço de informações, os leitores interessados ​​podem consultar e aprender
o Guia do usuário do Intel® Quartus® Prime Standard Edition: Analisador de tempo

3.5 Relógios múltiplos homólogos

Quando projetamos um módulo, sua frequência de trabalho não é fixa em muitos casos, como um módulo UART, podemos usá-lo no barramento APB de 200MHz, ou podemos usá-lo no barramento APB de 400M/1GHz, se este projeto precisar especificar vários relógios na fonte de relógio para atender às necessidades de protocolos de velocidade multi-IO , talvez seja necessário adicionar um sufixo na forma de "-add" no SDC para fazer com que todos os relógios da STA possam ser considerados no processo. Se não adicionarmos "-add", o último sinal de clock pode substituir o anterior

#同时对CLK端口做100MHz和50MHz的时钟约束
create_clock -name C1 -period 10 [get_ports CLK]
create_clock -name C2 -period 20 [get_ports CLK] -add

3.6 Relógio de Anotação

Além de usar os comentários na linguagem tcl, o SDC também oferece opções de comentários aos engenheiros. Usando o sufixo -comment, podemos adicionar as informações de documentação do sinal de relógio na forma de comentários, como:

#设定一个时钟信号,周期为10ns,信号名称为PCLK,映射到clk端口,备注为“Clock for UART input”
create_clock -period 10 -name PCLK 9get_ports clk] -comment "Clock for UART input"

3.7 Relógio Virtual

O conceito final são os relógios virtuais . Como o nome sugere, os relógios virtuais não têm como mapear para redes de portas ou pinos reais , mas sua presença pode ajudar os projetistas a usar características de relógio mais flexíveis (como deslocamentos de relógio, etc.) comando é o seguinte:

#建立一个周期为10ns,名称为vclk,不映射到具体端口的时钟(虚拟时钟)
create_clock -period 10 -name vclk

4. Resumo

Neste artigo, discutimos o comando mais básico em análise STA/restrições SDC - restrições de relógio, o conteúdo específico pode ser dividido em algum conteúdo básico, como criar relógios, nomear relógios, comentar relógios, relógios virtuais e identificar relógios, enquanto em Na próxima seção, discutiremos outras características dos sinais de clock, como divisão de frequência, multiplicação de frequência, gating, etc.

Acho que você gosta

Origin blog.csdn.net/weixin_43698385/article/details/127332453
Recomendado
Clasificación