logotipo intel

intel UG-20094 Cyclone 10 GX Núcleo IP DSP de ponto fixo nativo

intel-UG-20094-Cyclone-10-GX-Native-Fixed-Point-DSP-IP-Core-PRODUCT

Intel® Cyclone® 10 GX Native Point DSP IP Core Guia do usuário

O núcleo IP DSP de ponto fixo nativo Intel Cyclone® 10 GX instancia e controla um único bloco Intel Cyclone 10 GX Variable Precision Digital Signal Processing (DSP). O núcleo Cyclone 10 GX Native Fixed Point DSP IP está disponível apenas para dispositivos Intel Cyclone 10 GX.

Cyclone 10 GX Native Ponto Fixo DSP IP Núcleo Diagrama de Blocos Funcionaisintel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (1)

Informações relacionadas
Introdução aos núcleos IP FPGA da Intel.

Cyclone 10 GX Native Point DSP IP Core Features

O núcleo Cyclone 10 GX Native Fixed Point DSP IP suporta os seguintes recursos:

  • Operações de multiplicação de alto desempenho, otimizadas para energia e totalmente registradas
  • Comprimentos de palavra de 18 bits e 27 bits
  • Dois multiplicadores 18 × 19 ou um multiplicador 27 × 27 por bloco DSP
  • Registro integrado de adição, subtração e acumulação dupla de 64 bits para combinar resultados de multiplicação
  • Cascata de 19 bits ou 27 bits quando o pré-somador está desativado e cascata de 18 bits quando o pré-somador é usado para formar a linha de atraso de toque para aplicação de filtragem
  • Barramento de saída de 64 bits em cascata para propagar resultados de saída de um bloco para o próximo bloco sem suporte lógico externo
  • Pré-adicionador rígido suportado nos modos de 19 bits e 27 bits para filtros simétricos
  • Banco de registradores de coeficiente interno nos modos de 18 bits e 27 bits para implementação de filtro
  • Filtros sistólicos de resposta ao impulso finito (FIR) de 18 bits e 27 bits com adicionador de saída distribuído

Começando

Este capítulo fornece uma visão geral sobreview do fluxo de design do núcleo Intel FPGA IP para ajudá-lo a começar rapidamente com o núcleo Cyclone 10 GX Native Fixed Point DSP IP. A biblioteca Intel FPGA IP é instalada como parte do processo de instalação do Intel Quartus® Prime. Você pode selecionar e parametrizar qualquer núcleo Intel FPGA IP da biblioteca. A Intel fornece um editor de parâmetros integrado que permite personalizar o núcleo Intel FPGA DSP IP para oferecer suporte a uma ampla variedade de aplicativos. O editor de parâmetros orienta você na configuração dos valores dos parâmetros e na seleção de portas opcionais.

Informações relacionadas

  • Introdução aos núcleos IP Intel FPGA
    Fornece informações gerais sobre todos os núcleos IP Intel FPGA, incluindo parametrização, geração, atualização e simulação de núcleos IP.
  • Criação de scripts de simulação de IP e Platform Designer (padrão) independentes da versão
    Crie scripts de simulação que não exijam atualizações manuais para atualizações de software ou versão de IP.
  • Práticas recomendadas de gerenciamento de projetos
    Diretrizes para gerenciamento eficiente e portabilidade de seu projeto e IP files.
Cyclone 10 GX Native Point Fixed DSP IP Core Parâmetros

Você pode personalizar o núcleo Cyclone 10 GX Native Fixed Point DSP IP especificando os parâmetros usando o editor de parâmetros no software Intel Quartus Prime.

Guia do Modo de Operação

Parâmetro Parâmetro gerado por IP Valor Descrição
Por favor, escolha o modo de operação modo de operação m18×18_full m18×18_sumof2 m18×18_plus36 m18×18_systolic m27×27 Selecione o modo operacional desejado.
Configuração do multiplicador
Formato de representação para multiplicador x operando superior assinado_max assinado não assinado Especifique o formato de representação para o multiplicador x operando superior.
Parâmetro Parâmetro gerado por IP Valor Descrição
Formato de representação para o multiplicador superior y operando assinado_maio assinado não assinado Especifique o formato de representação para o operando multiplicador y superior.
Formato de representação para multiplicador inferior x operando assinado_mbx assinado não assinado Especifique o formato de representação para o multiplicador inferior x operando.
Formato de representação para multiplicador inferior y operando assinado_mby assinado não assinado Especifique o formato de representação para o operando do multiplicador inferior.

Sempre selecione não assinado para m18×18_mais36 .

Ativar porta 'sub' habilitar_sub Não Sim Selecione Sim para habilitar

subporta.

Registre a entrada 'sub' do multiplicador sub_relógio Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o subregistro de entrada.
Cascata de entrada
Habilita cascata de entrada para entrada 'ay' pode_usar_scan_in Não Sim Selecione Sim para ativar o módulo de cascata de entrada para qualquer entrada de dados.

Quando você ativa o módulo de cascata de entrada, o núcleo Cyclone 10 GX Native Fixed Point DSP IP usa os sinais de entrada de varredura como entrada em vez de sinais de entrada y.

Ativar cascata de entrada para entrada 'por' por_use_scan_in Não Sim Selecione Sim para ativar o módulo de cascata de entrada por entrada de dados.

Quando você habilita o módulo de cascata de entrada, o núcleo Cyclone 10 GX Native Fixed Point DSP IP usa os sinais de entrada ay como entrada em vez de por sinais de entrada.

Ativar registro de atraso de dados atraso_scan_out_ay Não Sim Selecione Sim para ativar o registro de atraso entre ay e por registros de entrada.

Este recurso não é suportado em m18×18_mais36 e m27x27 modo operacional.

Parâmetro Parâmetro gerado por IP Valor Descrição
Ativar dados por registro de atraso atraso_scan_out_by Não Sim Selecione Sim para habilitar o registro de atraso entre os registros de entrada e o barramento de saída de varredura.

Este recurso não é suportado em m18×18_mais36 e m27x27 modo operacional.

Ativar porta de varredura habilitar_gui_scanout Não Sim Selecione Sim para habilitar

barramento de saída de varredura.

largura do barramento de saída 'scanout' largura_saída_de_varredura 1–27 Especifique a largura de

barramento de saída de varredura.

Configuração de dados 'x'
largura do barramento de entrada 'ax' largura_do_ax 1–27 Especifique a largura de

barramento de entrada ax.(1)

Registre a entrada 'ax' do multiplicador relógio_ax Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada ax.

registro de entrada ax não está disponível se você definir origem do operando 'ax' para 'coef'.

largura do barramento de entrada 'bx' largura_bx 1–18 Especifique a largura de

barramento de entrada bx.(1)

Registre a entrada 'bx' do multiplicador relógio_bx Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada bx.

O registro de entrada bx não está disponível se você definir fonte do operando 'bx' para 'coef'.

Configuração de dados 'y'
largura do barramento 'ay' ou 'scanin' ay_scan_em_largura 1–27 Especifique a largura do barramento de entrada ay ou scanin.(1)
Registre a entrada 'ay' ou a entrada 'scanin' do multiplicador ay_scan_in_relógio Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada ay ou scanin.
'por' largura do barramento de entrada por_largura 1–19 Especifique a largura do barramento de entrada.(1)
Parâmetro Parâmetro gerado por IP Valor Descrição
Registre a entrada 'por' do multiplicador por_relógio Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para by ou scanin

registro de entrada.(1)

Configuração de 'resultado' de saída
largura do barramento de saída 'resultado' resultado_a_largura 1–64 Especifique a largura de

barramento de saída de resultado.

Largura do barramento de saída 'resultb' resultado_b_largura 1–64 Especifique a largura do barramento de saída resultb. resultb disponível apenas ao usar o operation_mode m18×18_completo.
Usar registrador de saída relógio_saída Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registros de saída result e resultb.

Aba Pré-adicionador

Parâmetro Parâmetro gerado por IP Valor Descrição
fonte do operando 'ay' operando_source_may Preader de entrada Especifique a origem do operando para uma entrada y. Selecione pregador para habilitar o módulo pré-somador para o multiplicador superior. As configurações para ay e por fonte de operando devem ser as mesmas.
'por' fonte do operando operando_source_mby Preader de entrada Especifique a origem do operando por entrada. Selecione pregador para habilitar o módulo pré-somador para o multiplicador inferior. As configurações para ay e por fonte de operando devem ser as mesmas.
Definir uma operação de pré-somador para subtração preadder_subtrair_a Não Sim Selecione Sim para especificar a operação de subtração para o módulo pré-somador para o multiplicador superior. As configurações do pré-somador para o multiplicador superior e inferior devem ser as mesmas.
Defina a operação do pré-somador b para subtração preadder_subtract_b Não Sim Selecione Sim para especificar a operação de subtração para o módulo pré-somador para o multiplicador inferior. As configurações do pré-somador para o multiplicador superior e inferior devem ser as mesmas.
Configuração de dados 'z'
Largura do barramento de entrada 'az' largura_az 1–26 Especifique a largura do barramento de entrada az.(1)
Registre a entrada 'az' do multiplicador z_clock Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de relógio de entrada para registros de entrada az. As configurações de relógio para os registros de entrada ay e az devem ser as mesmas.
largura do barramento de entrada 'bz' largura_bz 1–18 Especifique a largura do barramento de entrada bz.(1)
Registre a entrada 'bz' do multiplicador relógio_bz Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registradores de entrada bz. As configurações de relógio para registros de entrada by e bz devem ser as mesmas.

Aba Coeficiente Interno

Parâmetro Parâmetro gerado por IP Valor Descrição
origem do operando 'ax' operando_source_max entrada coef Especifique a origem do operando para o barramento de entrada ax. Selecione coef para ativar o módulo de coeficiente interno para o multiplicador superior.

Selecione Não para Registre a entrada 'ax' do multiplicador parâmetro quando você habilita o recurso de coeficiente interno.

Parâmetro Parâmetro gerado por IP Valor Descrição
      As configurações para a origem do operando ax e bx devem ser as mesmas.
fonte do operando 'bx' operando_fonte_mbx entrada coef Especifique a origem do operando para o barramento de entrada bx. Selecione coef para ativar o módulo de coeficiente interno para o multiplicador superior.

Selecione Não para Registre a entrada 'bx' do multiplicador parâmetro quando você habilita o recurso de coeficiente interno.

As configurações para a origem do operando ax e bx devem ser as mesmas.

Configuração do Registro de Entrada 'coefsel'
Registre a entrada 'coefsela' do multiplicador coef_sel_a_clock Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registradores de entrada coefsela.
Registre a entrada 'coefselb' do multiplicador coef_sel_b_relógio Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registradores de entrada coefselb.
Configuração de armazenamento de coeficiente
coef_a_0–7 coef_a_0–7 Inteiro Especifique os valores de coeficiente para o barramento de entrada ax.

Para o modo de operação de 18 bits, o valor máximo de entrada é 218 – 1. Para operação de 27 bits, o valor máximo é 227 – 1.

coef_b_0–7 coef_b_0–7 Inteiro Especifique os valores dos coeficientes para o barramento de entrada bx.

Aba Acumulador/Cascata de Saída

Parâmetro Parâmetro gerado por IP Valor Descrição
Ativar porta 'acumular' habilitar_acumular Não Sim Selecione Sim para habilitar

porta do acumulador.

Ativar porta 'negar' habilitar_negar Não Sim Selecione Sim para habilitar

negar porta.

Ativar porta 'loadconst' enable_loadconst Não Sim Selecione Sim para habilitar

porta loadconst.

Registre a entrada 'acumular' do acumulador acumular_relógio Não Relógio0 Relógio1 Relógio2 Selecione Relógio0 , Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registradores de entrada acumulados.
Parâmetro Parâmetro gerado por IP Valor Descrição
Registre a entrada 'loadconst' do acumulador relógio_constante_de_carga Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registradores de entrada loadconst.
Registre a entrada 'negar' da unidade adicionadora relógio_negado Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para os registradores de entrada de negação.
Ativar acumulador duplo habilitar_acumulação_dupla Não Sim Selecione Sim para ativar o recurso de acumulador duplo.
N valor da constante predefinida valor_const_de_carga 0 – 63 Especifique o valor constante predefinido.

Este valor pode ser 2N onde N é o valor constante predefinido.

Habilitar porta chainin usar_chainadder Não Sim Selecione Sim para ativar o módulo de cascata de saída e o barramento de entrada chainin.

O recurso de cascata de saída não é suportado em m18×18_completo modo de operação.

Habilitar porta chainout gui_chainout_ativar Não Sim Selecione Sim para habilitar o barramento de saída chainout. O recurso de cascata de saída não é suportado em

m18×18_completo modo de operação.

Aba Pipelining

Parâmetro Parâmetro gerado por IP Valor Descrição
Adicionar registro de pipeline de entrada ao sinal de dados de entrada (x/y/z/coefsel) relógio_do_pipeline_de_entrada Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para ativar e especificar o sinal de clock de entrada para os registros de entrada do pipeline x, y, z, coefsela e coefselb.
Adicionar registro de pipeline de entrada ao sinal de dados 'sub' sub_pipeline_relógio Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada do subpipeline. (2)
Adicionar registro de pipeline de entrada ao sinal de dados 'acumulado' relógio_acum_pipeline Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada de pipeline acumulado.(2)
Adicionar registro de pipeline de entrada ao sinal de dados 'loadconst' relógio_const_do_pipeline_de_carga Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada do pipeline loadconst.(2)
Adicionar registro de pipeline de entrada ao sinal de dados 'negar' negar_relógio_do_pipeline Não Relógio0 Relógio1 Relógio2 Selecione Relógio0, Relógio1, ou Relógio2 para habilitar e especificar o sinal de clock de entrada para o registro de entrada de pipeline negativo.(2)

Largura máxima de dados de entrada por modo de operação
Você pode personalizar a largura de dados para entradas x, y e z conforme especificado na tabela.

Todos os registros de entrada de pipeline para sinais de controle dinâmico devem ter a mesma configuração de relógio.

Modo de operação Largura Máxima dos Dados de Entrada
ax ay az bx by bz
Sem pré-somador ou coeficiente interno
m18×18_completo 18 (assinado)

18

(sem assinatura)

19 (assinado)

18 (não assinado)

Não usado 18 (assinado)

18

(sem assinatura)

19 (assinado)

18

(sem assinatura)

Não usado
m18×18_soma de 2
m18×18_sistólica
m18×18_mais36
m27×27 27 (assinado)

27 (não assinado)

Não usado
Somente com recurso de pré-adicionador
m18×18_completo 18 (assinado)

18 (não assinado)

m18×18_soma de 2
m18×18_sistólica
m27×27 27 (assinado)

27

(sem assinatura)

26 (assinado)

26 (não assinado)

Não usado
Somente com recurso de coeficiente interno
m18×18_completo Não usado 19 (assinado)

18 (não assinado)

Não usado 19 (assinado)

18

(sem assinatura)

Não usado
m18×18_soma de 2
m18×18_sistólica
m27×27 27 (assinado)

27 (não assinado)

Não usado

Descrição funcional

O núcleo Cyclone 10 GX Native Fixed Point DSP IP consiste em 2 arquiteturas; Multiplicação 18 × 18 e multiplicação 27 × 27. Cada instanciação do núcleo Cyclone 10 GX Native Fixed Point DSP IP gera apenas 1 das 2 arquiteturas, dependendo dos modos operacionais selecionados. Você pode habilitar módulos opcionais para seu aplicativo.

Informações relacionadas
Variable Precision DSP Blocks in Intel Cyclone 10 GX Devices Chapter, Intel Cyclone 10 GX Core Fabric and General Purpose I/Os Handbook.

Modos Operacionais

O núcleo Cyclone 10 GX Native Fixed Point DSP IP suporta 5 modos operacionais:

  • O modo completo 18 × 18
  • A Soma 18 × 18 do Modo 2
  • O modo 18 × 18 mais 36
  • O modo sistólico 18 × 18
  • O modo 27 × 27

O modo completo 18 × 18
Quando configurado como modo completo 18 × 18, o núcleo Cyclone 10 GX Native Fixed Point DSP IP opera como dois núcleos independentes 18 (assinado/não assinado) × 19 (assinado) ou 18
(assinado/não assinado) × 18 (sem sinal) multiplicadores com saída de 37 bits. Este modo aplica as seguintes equações:

  • resultado = ax * ay
  • resultadob = bx * por

A arquitetura de modo completo 18 × 18

intel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (2)

A Soma 18 × 18 do Modo 2
Nos modos Soma de 18 18 × 2, o núcleo Cyclone 10 GX Native Fixed Point DSP IP habilita os multiplicadores superior e inferior e gera um resultado de adição ou subtração entre os 2 multiplicadores. O sinal de controle subdinâmico controla um somador para realizar as operações de adição ou subtração. A largura de saída resultante do núcleo Cyclone 10 GX Native Fixed Point DSP IP pode suportar até 64 bits quando você habilita o acumulador/cascata de saída. Este modo aplica a equação de resultado =[±(ax * ay) + (bx * by)].

A soma de 18 × 18 da arquitetura de 2 modos

intel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (3)

O modo 18 × 18 mais 36
Quando configurado como modo 18 × 18 Plus 36, o núcleo Cyclone 10 GX Native Fixed Point DSP IP habilita apenas o multiplicador superior. Este modo aplica a equação de resultado = (ax * ay) + concatenate(bx[17:0],by[17:0]).

A arquitetura de modo 18 × 18 Plus 36

intel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (4)

Você deve definir o formato de representação para multiplicadores inferiores y operando como sem sinal ao usar este modo. Quando o barramento de entrada for menor que 36 bits neste modo, você deverá fornecer a extensão assinada necessária para preencher a entrada de 36 bits.

Usando menos de 36 bits operando no modo 18 × 18 Plus 36
Este exampO arquivo mostra como configurar o núcleo Cyclone 10 GX Native Fixed Point DSP IP para usar o modo operacional 18 × 18 Plus 36 com dados de entrada assinados de 12 bits de 101010101010 (binário) em vez de um operando de 36 bits.

  1. Defina o formato de representação para o multiplicador inferior x operando: para assinado.
  2. Defina o formato de representação para o multiplicador inferior y operando: para não assinado.
  3. Defina a largura do barramento de entrada 'bx' para 18.
  4. Defina a largura do barramento de entrada 'by' para 18.
  5. Forneça dados de '111111111111111111' para o barramento de entrada bx.
  6. Forneça dados de '111111101010101010' para o barramento de entrada.

O modo sistólico 18 × 18
Nos modos operacionais sistólicos 18 × 18, o núcleo Cyclone 10 GX Native Fixed Point DSP IP habilita os multiplicadores superior e inferior, um registro sistólico de entrada para o multiplicador superior e um registro sistólico de cadeia para a cadeia nos sinais de entrada. Quando você ativa a cascata de saída, este modo suporta largura de saída de resultado de 44 bits. Ao habilitar o recurso de acumulador sem cascata de saída, você pode configurar a largura de saída do resultado para 64 bits.

A arquitetura do modo sistólico 18 × 18

intel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (4)

O modo 27 × 27
Quando configurado como modos 27 × 27, o núcleo Cyclone 10 GX Native Fixed Point DSP IP permite um multiplicador 27 (assinado/não assinado) × 27 (assinado/não assinado). O barramento de saída pode suportar até 64 bits com acumulador/cascata de saída habilitado. Este modo aplica a equação de resultado = ax * ay.

A arquitetura do modo 27 × 27

intel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (6)

Módulos opcionais

Os módulos opcionais disponíveis no Cyclone 10 GX Native Fixed Point DSP IP Core são:

  • cascata de entrada
  • Pré-adicionadores
  • Coeficiente Interno
  • Acumulador e cascata de saída
  • Registros de pipeline

Cascata de entrada
O recurso de cascata de entrada é suportado em ay e por barramento de entrada. Quando você define Ativar cascata de entrada para entrada 'ay' como Sim, o núcleo Cyclone 10 GX Native Fixed Point DSP IP receberá entradas de sinais de entrada de varredura em vez de um barramento de entrada ay. Quando você define Ativar cascata de entrada para entrada 'por' como Sim, o núcleo Cyclone 10 GX Native Fixed Point DSP IP receberá entradas de qualquer barramento de entrada em vez de um barramento de entrada.

Recomenda-se habilitar os registradores de entrada para ay e/ou by sempre que a cascata de entrada for habilitada para a correção da aplicação.

Você pode ativar os registradores de atraso para corresponder ao requisito de latência entre o registrador de entrada e o registrador de saída. Existem 2 registradores de atraso no núcleo. O registro de atraso superior é usado para portas de entrada ay ou scan-in, enquanto o registro de atraso inferior é usado para portas de saída de saída. Esses registradores de atraso são suportados no modo 18 × 18 completo, 18 × 18 somas de 2 modos e 18 × 18 modos sistólicos.

Pré-adicionador

O pré-adicionador pode ser configurado nas seguintes configurações:

  • Dois pré-adicionadores independentes de 18 bits (assinados/não assinados).
  • Um pré-somador de 26 bits.

Quando você habilita o pré-somador nos modos de multiplicação 18 × 18, ay e az são usados ​​como barramento de entrada para o pré-somador superior, enquanto by e bz são usados ​​como barramento de entrada para o pré-somador inferior. Quando você habilita o pré-somador no modo de multiplicação 27 × 27, ay e az são usados ​​como barramento de entrada para o pré-somador. O pré-somador suporta operações de adição e subtração. Quando ambos os pré-somadores no mesmo bloco DSP são usados, eles devem compartilhar o mesmo tipo de operação (seja adição ou subtração).

Coeficiente Interno
O coeficiente interno pode suportar até oito coeficientes constantes para os multiplicandos nos modos de 18 e 27 bits. Ao ativar o recurso de coeficiente interno, serão gerados dois barramentos de entrada para controlar a seleção do multiplexador de coeficiente. O barramento de entrada coefsela é usado para selecionar os coeficientes predefinidos para o multiplicador superior e o barramento de entrada de conselho é usado para selecionar os coeficientes predefinidos para o multiplicador inferior.

O armazenamento de coeficiente interno não suporta valores de coeficiente controláveis ​​dinamicamente e o armazenamento de coeficiente externo é necessário para executar tal operação.

Acumulador e cascata de saída

O módulo acumulador pode ser habilitado para realizar as seguintes operações:

  • Operação de adição ou subtração
  • Operação de arredondamento tendencioso usando um valor constante de 2N
  • Acumulação de canal duplo

Para executar dinamicamente a operação de adição ou subtração do acumulador, controle o sinal de entrada negativo. Para uma operação de arredondamento tendencioso, você pode especificar e carregar uma constante predefinida de 2N antes que o módulo do acumulador seja ativado, especificando um número inteiro para o valor do parâmetro N da constante predefinida. O inteiro N deve ser menor que 64. Você pode ativar ou desativar dinamicamente o uso da constante predefinida controlando o sinal loadconst. Você pode usar esta operação como um muxing ativo do valor redondo no caminho de realimentação do acumulador. O custo carregado e o uso de sinal acumulado são mutuamente exclusivos.

Você pode habilitar o registro do acumulador duplo usando o parâmetro Ativar acumulador duplo para realizar o acúmulo duplo. O módulo acumulador pode suportar o encadeamento de vários blocos DSP para operações de adição ou subtração, habilitando a porta de entrada de encadeamento e a porta de saída de encadeamento. No modo sistólico 18 × 18, apenas 44 bits do barramento de entrada da cadeia e do barramento de saída da cadeia serão usados. No entanto, todas as cadeias de 64 bits no barramento de entrada devem ser conectadas ao barramento de saída do bloco DSP anterior.

Registro de Oleoduto

O núcleo Cyclone 10 GX Native Fixed Point DSP IP suporta um único nível de registro de pipeline. O registrador de pipeline suporta até três fontes de relógio e um sinal claro assíncrono para redefinir os registradores de pipeline. Existem cinco registradores de pipeline:

  • registro de pipeline de barramento de entrada de dados
  • registro de pipeline de sinal de controle subdinâmico
  • nega registro de pipeline de sinal de controle dinâmico
  • acumular registro de pipeline de sinal de controle dinâmico
  • registro de pipeline de controle dinâmico loadconst

Você pode optar por habilitar cada registro de pipeline de barramento de entrada de dados e os registros de pipeline de sinal de controle dinâmico independentemente. No entanto, todos os registradores de pipeline habilitados devem usar a mesma fonte de relógio.

Esquema de Cronometragem

A entrada, o pipeline e os registros de saída no núcleo Cyclone 10 GX Native Fixed Point DSP IP suportam três fontes/habilitações de relógio e duas limpezas assíncronas. Todos os registros de entrada usam aclr[0] e todos os registros de pipeline e saída usam aclr[1]. Cada tipo de registro pode selecionar uma das três fontes de relógio e sinais de habilitação de relógio. Quando você configura o núcleo Cyclone 10 GX Native Fixed Point DSP IP para o modo de operação sistólica 18 × 18, o software Intel Quartus Prime definirá o registro sistólico de entrada e a fonte de relógio do registro sistólico da cadeia para a mesma fonte de relógio que o registro de saída internamente.

Quando você habilita o recurso de acumulador duplo, o software Intel Quartus Prime definirá a fonte de relógio do registro do acumulador duplo para a mesma fonte de relógio que o registro de saída internamente.

Restrições do Esquema de Relógio
Esta guia mostra as restrições que você deve aplicar para todos os esquemas de relógio de registro.

Doença Restrição
Quando o pré-adicionador está ativado A fonte de clock para os registros de entrada ay e az deve ser a mesma.
  A fonte de clock para os registros de entrada by e bz deve ser a mesma.
Quando os registros de pipeline estão ativados A origem do relógio para todos os registradores de pipeline deve ser a mesma.
Quando qualquer um dos registros de entrada para sinais de controle dinâmico A fonte de clock para registros de entrada para sub, acumula, loadconst e negate deve ser a mesma.
Sinais núcleo DSP IP de ponto fixo nativo Cyclone 10 GX

A figura a seguir mostra os sinais de entrada e saída do núcleo Cyclone 10 GX Native Fixed Point DSP IP.

Sinais núcleo DSP IP de ponto fixo nativo Cyclone 10 GX

intel-UG-20094-Cyclone-10-GX-Nativo-Ponto-Fixo-DSP-IP-Core-FIG- (7)

Sinais de entrada de dados
Nome do sinal Tipo Largura Descrição
machado[] Entrada 27 Barramento de dados de entrada para o multiplicador superior.
sim[] Entrada 27 Barramento de dados de entrada para o multiplicador superior.

Quando o pré-somador está habilitado, esses sinais são servidos como sinais de entrada para o pré-somador superior.

z[] Entrada 26 Esses sinais são sinais de entrada para o pré-somador superior.

Esses sinais só estão disponíveis quando o pré-adicionador está habilitado. Esses sinais não estão disponíveis em m18×18_mais36

modo operacional.

bx[] Entrada 18 Barramento de dados de entrada para o multiplicador inferior.

Esses sinais não estão disponíveis em m27×27 modo operacional.

de[] Entrada 19 Barramento de dados de entrada para o multiplicador inferior.

Quando o pré-somador está ativado, esses sinais servem como sinais de entrada para o pré-somador inferior.

Esses sinais não estão disponíveis em m27×27 modo operacional.

beleza[] Entrada 18 Esses sinais são sinais de entrada para o pré-somador inferior. Esses sinais só estão disponíveis quando o pré-adicionador está ativado. Esses sinais não estão disponíveis em m27×27 m18×18_mais36 modos operacionais.
Sinais de Saída de Dados
Nome do sinal Tipo Largura Descrição
resultado[] Saída 64 Barramento de dados de saída do multiplicador superior.

Esses sinais suportam até 37 bits para m18×18_completo modo operacional.

resultadob[] Saída 37 Barramento de dados de saída do multiplicador inferior.

Estes sinais só estão disponíveis em m18×18_completo modo operacional.

Sinais de Relógio, Ativar e Limpar

Nome do sinal Tipo Largura Descrição
clique[] Entrada 3 Sinais de clock de entrada para todos os registradores.

Esses sinais de clock estão disponíveis apenas se qualquer um dos registradores de entrada, registradores de pipeline ou registrador de saída estiver definido como Relógio0, Relógio1, ou Relógio2.

• clk[0] = Relógio0

• clk[1] = Relógio1

• clk[2] = Relógio2

ena[] Entrada 3 Ativação do relógio para clk[2:0]. Este sinal é ativo-alto.

• ena[0] é para Relógio0

• ena[1] é para Relógio1

• ena[2] é para Relógio2

acl[] Entrada 2 Sinais de entrada claros assíncronos para todos os registradores. Este sinal é ativo-alto.

Usar acl[0] para todos os registradores de entrada e uso acl[1] para todos os registradores de pipeline e registradores de saída.

Por padrão, esse sinal é desativado.

Sinais de controle dinâmico

Nome do sinal Tipo Largura Descrição
sub Entrada 1 Sinal de entrada para somar ou subtrair a saída do multiplicador superior com a saída do multiplicador inferior.

• Desative este sinal para especificar a operação de adição.

• Ative este sinal para especificar a operação de subtração.

Por padrão, esse sinal é desativado. Você pode ativar ou desativar este sinal durante o tempo de execução.(3)

negar Entrada 1 Sinal de entrada para adicionar ou subtrair a soma dos multiplicadores superior e inferior com os dados dos sinais chainin.

• Desative este sinal para especificar a operação de adição.

• Ative este sinal para especificar a operação de subtração.

Por padrão, esse sinal é desativado. Você pode ativar ou desativar este sinal durante o tempo de execução.(3)

acumular Entrada 1 Sinal de entrada para habilitar ou desabilitar o recurso do acumulador.

• Desativar este sinal para desativar o recurso do acumulador.

• Ative este sinal para habilitar o recurso do acumulador.

Por padrão, esse sinal é desativado. Você pode ativar ou desativar este sinal durante o tempo de execução.(3)

cargaconst Entrada 1 Sinal de entrada para habilitar ou desabilitar o recurso de constante de carga.

• Desativar este sinal para desativar o recurso de constante de carga.

• Ative este sinal para habilitar o recurso de constante de carga.

Por padrão, esse sinal é desativado. Você pode ativar ou desativar este sinal durante o tempo de execução.(3)

Sinais de Coeficiente Interno

Nome do sinal Tipo Largura Descrição
coefsela[] Entrada 3 Sinais de seleção de entrada para 8 valores de coeficiente definidos pelo usuário para o multiplicador superior. Os valores dos coeficientes são armazenados na memória interna e especificados por parâmetros coef_a_0 para coef_a_7.

• coefsela[2:0] = 000 refere-se a coef_a_0

• coefsela[2:0] = 001 refere-se a coef_a_1

• coelsela[2:0] = 010 refere-se a coef_a_2

• … e assim por diante.

Esses sinais estão disponíveis apenas quando o recurso de coeficiente interno está habilitado.

coefself[] Entrada 3 Sinais de seleção de entrada para 8 valores de coeficiente definidos pelo usuário para o multiplicador inferior. Os valores dos coeficientes são armazenados na memória interna e especificados por parâmetros coef_b_0 para coef_b_7.

• coefselb[2:0] = 000 refere-se a coef_b_0

• coefselb[2:0] = 001 refere-se a coef_b_1

• coelselb[2:0] = 010 refere-se a coef_b_2

• … e assim por diante.

Esses sinais estão disponíveis apenas quando o recurso de coeficiente interno está habilitado.

Sinais de Cascata de Entrada

Nome do sinal Tipo Largura Descrição
digitalizando[] Entrada 27 Barramento de dados de entrada para módulo de cascata de entrada.

Conecte esses sinais aos sinais de varredura do núcleo DSP anterior.

escaneamento[] Saída 27 Barramento de dados de saída do módulo de entrada em cascata.

Conecte esses sinais aos sinais de varredura do próximo núcleo DSP.

Sinais de Cascata de Saída

Nome do sinal Tipo Largura Descrição
encadeando[] Entrada 64 Barramento de dados de entrada para módulo em cascata de saída.

Conecte esses sinais aos sinais de encadeamento do núcleo DSP anterior.

encadeamento[] Saída 64 Barramento de dados de saída do módulo de cascata de saída.

Conecte esses sinais aos sinais chainin do próximo núcleo DSP.

Histórico de revisão do documento para o Cyclone 10 GX Native Fixed Point DSP IP Core User Guide

Data Versão Mudanças
Novembro de 2017 2017.11.06 Lançamento inicial.

Corporação Intel. Todos os direitos reservados. Intel, o logotipo da Intel e outras marcas da Intel são marcas comerciais da Intel Corporation ou de suas subsidiárias. A Intel garante o desempenho de seus produtos FPGA e semicondutores de acordo com as especificações atuais de acordo com a garantia padrão da Intel, mas reserva-se o direito de fazer alterações em quaisquer produtos e serviços a qualquer momento sem aviso prévio. A Intel não assume nenhuma responsabilidade decorrente do aplicativo ou uso de qualquer informação, produto ou serviço aqui descrito, exceto conforme expressamente acordado por escrito pela Intel. Os clientes da Intel são aconselhados a obter a versão mais recente das especificações do dispositivo antes de confiar em qualquer informação publicada e antes de fazer pedidos de produtos ou serviços.

Outros nomes e marcas podem ser reivindicados como propriedade de terceiros.

Documentos / Recursos

intel UG-20094 Cyclone 10 GX Núcleo IP DSP de ponto fixo nativo [pdf] Guia do Usuário
UG-20094 Cyclone 10 GX Native Point Fixed Point DSP IP Core, UG-20094, Cyclone 10 GX Native Fixed Point DSP IP Core, Native Fixed Point DSP IP Core, Fixed Point DSP IP Core, DSP IP Core

Referências

Deixe um comentário

Seu endereço de e-mail não será publicado. Os campos obrigatórios estão marcados *