Manufaturação industrial
Internet das coisas industrial | Materiais industriais | Manutenção e reparo de equipamentos | Programação industrial |
home  MfgRobots >> Manufaturação industrial >  >> Industrial programming >> Verilog

Camadas de Abstração de Projeto: Guia Claro para Arquitetura de Chips

Antes de olharmos mais detalhes da linguagem Verilog, seria bom entender as diferentes camadas de abstração no projeto de chips.

A camada superior é a arquitetura de nível de sistema que define os vários sub-blocos e os agrupa com base na funcionalidade. Por exemplo, um cluster de processador teria múltiplos núcleos, blocos de cache e lógica de coerência de cache. Tudo isso será encapsulado e representado como um único bloco com sinais de entrada-saída.

No próximo nível, cada sub-bloco é escrito em uma hardware description language para descrever accuradamente a funcionalidade de cada bloco individual. Detalhes de implementação de nível inferior como esquemáticos de circuito, bibliotecas de tecnologia são ignorados neste estágio. Por exemplo, um bloco controlador acabará tendo múltiplos arquivos Verilog cada um descrevendo um componente menor de sua funcionalidade.

HDLs são então convertidos em esquemáticos de nível de porta que também envolvem bibliotecas de tecnologia que caracterizam elementos digitais como flip-flops. Por exemplo, o circuito digital para um latch D contém portas NAND organizadas de uma certa forma de modo que todas as combinações de entradas D e E produzam uma saída Q dada pela tabela verdade.

Uma tabela verdade essencialmente dá a permutação de todos os níveis de sinais de entrada e o nível de saída resultante e a abaixo é para um latch D com pino de enable. O esquemático de hardware também pode ser derivado da tabela verdade usando lógica booleana e mapas de Karnaugh. No entanto, não é prático seguir este método para blocos digitais mais complexos como processadores e controladores.

Implementação de uma porta NAND é feita pela conexão de transistores CMOS em um formato particular. Neste nível, as larguras de canal do transistor, Vdd e a capacidade de conduzir a carga capacitiva de saída são levadas em conta durante o processo de projeto.

A etapa final é o layout destes transistores em silício usando ferramentas EDA para que possa ser fabricado. Neste nível, algum conhecimento de dispositivo e tecnologia seria necessário porque diferentes layouts acabam tendo diferentes propriedades físicas como resistência e capacitância entre outras implicações.

Estilos de Projeto

Em seguida, existem principalmente dois estilos seguidos no projeto de blocos digitais, que são metodologias top-down e bottom-up.

Top-Down

Neste estilo, um bloco de nível superior é primeiro definido junto com a identificação de sub-módulos necessários para construir o bloco superior. Similarmente, cada um dos sub-blocos é further dividido em componentes menores, e o processo continua até alcançarmos a leaf cell ou um estágio onde não pode ser further dividido.

Bottom-up

Neste caso, a primeira tarefa é identificar os blocos de construção disponíveis. Então eles são colocados juntos e conectados de uma certa maneira para construir células maiores e usados para montar o bloco de nível superior.

Tipicamente, uma combinação de ambos os fluxos é usada. Arquitetos definem a visão de nível de sistema do projeto, e projetistas implementam a lógica de cada um dos blocos funcionais e são sintetizados em portas. Um estilo top-down é seguido até este ponto. No entanto, estas portas foram construídas seguindo um fluxo bottom-up onde começando com o layout físico do menor bloco na melhor área possível, desempenho e potência. Estas células padrão também têm um esquemático de hardware e podem ser usadas para obter várias informações como tempos de subida e descida, potência e outros atrasos. Estas células são disponibilizadas para a ferramenta de síntese que as escolhe e instancia onde necessário.

Verilog

  1. Dominando Design de Produto: Estratégias Comprovadas para Superar Desafios Comuns
  2. Blocos de Concreto (CMUs): História, Materiais, Design e Inovações Modernas
  3. Entendendo Escopo de Variáveis em C#: Níveis de Classe, Método e Bloco
  4. Domine o Verilog: Tutorial Completo para Projeto de Circuitos Digitais
  5. Dominando Fluxo de Controle em Verilog: IF-ELSE, Case, Loops e Mais
  6. Modelagem em Nível de Porta: Conectando Esquemas de Hardware a Código Verilog
  7. Design Prático em Nível de Porta Verilog: Portas AND, OR, NOT e Multiplexador 2x1
  8. Modelagem Avançada em Nível de Chave (Switch-Level) em Verilog
  9. Design de Arquitetura: Princípios, Práticas e Impacto
  10. Nivelamento Preciso de Torno: Guia Profissional