Usar elementos primitivos de Xilinx en Verilog dentro de ISE

2

Generé el modelo de simulación posterior a la ruta de Verilog de mi módulo Verilog original, usando Xilinx ISE.
Generará un módulo Verilog utilizando primitivas de nivel LUT y fpga como IBUF, X_LUT4, ...

 Al intentar compilar este código directamente y sintetizarlo dentro de ISE, no puede encontrar las primtividades de Xilinx y afirmar un error de compilación como ERROR:HDLCompilers:87 - "test.v" line 26 Could not find module/primitive 'X_OPAD' .

Quiero saber cómo puedo incluir módulos / bibliotecas relacionados dentro de ISE verilog. Código para evitar errores de compilación.
Parte del código se muestra a continuación:

module tripler (
  TRIPLED_OUTPUT, INPUT_SIGNAL
);
  output TRIPLED_OUTPUT;
  input INPUT_SIGNAL;
  wire INPUT_SIGNAL_IBUF_23;
  wire GATE3_OUT_0;
  wire GATE1_OUT_0;
  wire GATE2_OUT_0;
  wire GATE4_OUT_0;
  wire GATE5_OUT_0;
  wire GATE6_OUT_0;
  wire \TRIPLED_OUTPUT/O ;
  wire \INPUT_SIGNAL/INBUF ;
  wire GATE3_OUT;
  wire GATE1_OUT;
  wire GATE2_OUT;
  wire GATE4_OUT;
  wire GATE5_OUT;
  wire GATE6_OUT;
  wire TRIPLE_OUT;
  wire VCC;

  X_OPAD #(
    .LOC ( "PAD1" ))
  \TRIPLED_OUTPUT/PAD  (
    .PAD(TRIPLED_OUTPUT)
  );
  X_OBUF #(
    .LOC ( "PAD1" ))
  TRIPLED_OUTPUT_OBUF (
    .I(\TRIPLED_OUTPUT/O ),
    .O(TRIPLED_OUTPUT)
  );
  X_IPAD #(
    .LOC ( "PAD2" ))
  \INPUT_SIGNAL/PAD  (
    .PAD(INPUT_SIGNAL)
  );
  INPUT_SIGNAL_IBUF (
    .I(INPUT_SIGNAL),
    .O(\INPUT_SIGNAL/INBUF )
  );
  X_BUF #(
    .LOC ( "PAD2" ))
  \INPUT_SIGNAL/IFF/IMUX  (
    .I(\INPUT_SIGNAL/INBUF ),
    .O(INPUT_SIGNAL_IBUF_23)
  );
  X_BUF #(
    .LOC ( "SLICE_X0Y13" ))
  \GATE3_OUT/XUSED  (
    .I(GATE3_OUT),
    .O(GATE3_OUT_0)
  );
  X_BUF #(
    .LOC ( "SLICE_X0Y13" ))
  \GATE3_OUT/YUSED  (
    .I(GATE1_OUT),
    .O(GATE1_OUT_0)
  );
    
pregunta VSB

1 respuesta

1

Las primitivas con el prefijo "X_" no se parecen a las primitivas normales.

Una vez intenté ocultar los pines del nivel superior. Así que instalé las primitivas de IPAD y OPAD en VHDL a mano.

Resultados:

  • Síntesis XST - > se quejó de cajas negras
  • Traducir - > se quejó de cajas negras
  • Mapa - > estaba muy feliz
  • P & R - > correr como normal
  • BitGen - > correr como normal
  • prueba en FPGA - > todo como se esperaba

Xilinx tiene varias bibliotecas primitivas:

  • UNISIM
  • UNIMACRO
  • UNIPRIM
  • ...

No sé si también hay documentación para XST / iSim, pero encontré esto para Synth / xSim (Vivado): Guía de usuario de Vivado Design Suite - Simulación lógica (UG900) . Echa un vistazo a las páginas 14 ff. Enumera todas las bibliotecas y cuando están enlazadas en simulación (post synth. / Post impl.)

    
respondido por el Paebbels

Lea otras preguntas en las etiquetas