el impacto de eliminar “+: d” en la sección de tiempo de verilog

0

Me gustaría comenzar con el ejemplo simple de un flop, y mi concentración se encuentra en la sección de especificaciones, así que ignora la parte de funcionalidad

module flop (clk,d,o);

...... //Functionality

    specify //Timing section starts

        posedge clk => (q [B]+:d[/B]) = 0;

    endspecify
endmodule

Entonces, a partir del ejemplo anterior, necesito saber el significado exacto de esta parte: +:d . Entiendo completamente que es la ruta de datos.

¿Cuál sería el impacto si lo eliminara?

Y también el archivo sdf backannotation muestra solo la ruta clk=>q con retrasos anotados, pero no muestra ninguna ruta de datos (d) relacionada con esa declaración. Entonces, ¿eso significa que es inútil?

    
pregunta Seshank Varma

2 respuestas

2

Un retraso entre una fuente y un pin de destino de un módulo se conoce como retraso de la ruta del módulo . Estos retrasos se modelan utilizando bloques specify .

Puede haber dos tipos de especificación de retardo en el bloque specify : conexión paralela y conexión completa.

En la conexión en paralelo, cada bit en el campo de origen se conecta individualmente con su bit de destino. Como se muestra en la siguiente imagen:

Lasintaxises:

(source_bit=>destination_bit)=delay_value

MientrasestáenFullConnection,cadabitenelcampodeorigenseconectaacadabitenelcampodedestino.Comosemuestraenlasiguienteimagen:

Lasintaxises:

(source_bit*>destination_bit)=delay_value

Ensucaso,posedgeclk=>(q[B]+:d[/B])=0;Esteesuntipodeconexiónderetardoparalelo.Estosignificaquesiemprequellegueunposedgedelaseñaldereloj,elvalordeq[B]cambiaráconunretrasode0units.

Dadoquehaynodemarcaciónconrespectoatiemposdesubidaybajada,elretrasoseaplicaigualmenteaambosbordeascendenteydescendentedeq[B].

Eloperadordepolaridad(+:)describesilosdatosquepasandelafuentealasalidaestáninvertidos(-)onoestáninvertidos(+).Elherramientasdeanálisisdetemporizaciónutilizaeloperadordepolaridadyelsimuladorloignora.

Polaridadpositiva(+:):seutilizacuandounaumentoenlafuenteprovocaunaaumentodelatransicióneneldestinoyunatransicióndecaídaenlafuenteprovocalatransicióndecaídaeneldestino.

Polaridadnegativa(-:):seusacuandounasubidaenlafuentehacequecaigatransiciónendestino,yunatransicióndecaídaenlafuenteprovocaunatransicióndesubidaeneldestino.

Pero,lasherramientasmodernasdeanálisisdetiempodependendesupropiabiblioteca,supongo.Porlotanto,podríaserseguroignoraraeseoperador.Puedeencontrarinformaciónsobreeloperadordepolaridaden este enlace .

    
respondido por el sharvil111
1

Esto fue para las herramientas de análisis de tiempo estático que utilizaron Verilog como la descripción de la fuente de la biblioteca. AFAIK, las herramientas de análisis de tiempo estático que usan Verilog como su fuente completa ya no existen (es decir, Veritime) y las herramientas actuales usan sus propias descripciones de fuente de biblioteca. Así que puedes ignorarlo.

    
respondido por el dave_59

Lea otras preguntas en las etiquetas