¿Por qué design_vision compila mi sumador de carry-lookahead en un sumador de ripple carry?

3

En mi escuela tenemos la Sinopsis "design_vision" en los laboratorios de computación. No sé cómo usar ninguna de las funciones, así que para mí es solo una herramienta de dibujo esquemático.

Por curiosidad, codifiqué a mano un verificador de 8 bits de lectura anticipada, y luego le pedí a design_vision que lo compilara. El resultado se parece mucho a un sumador de ondulación.

Ahora, el sumador de ondulación portadora usa menos puertas, pero es mucho más profundo. ¿Por qué design_vision prefiere el ripple-carry?

    
pregunta Owen

2 respuestas

2

Si el sumador de ripple carry contiene menos compuertas y cumple con las restricciones de tiempo, ¿por qué el sintetizador no lo prefiere? En muchos casos, la forma más eficiente de generar una cadena de transporte es utilizar una mezcla de unidades de acarreo por ondulación y de anticipación. Por ejemplo, si uno está implementando un sumador de 32 bits con un presupuesto de tiempo de retardo de 16 compuertas, procesarlo como dos secciones de once bits y una sección de diez bits puede requerir menos compuertas que la disposición más rápida posible y al mismo tiempo cumplir con el tiempo requisitos.

Yo sugeriría descubrir cómo jugar con restricciones de tiempo; Supongo que lo encontrará independientemente de si diseña en un sumador de arrastre de ondulación o de arrastre de look-look, la combinación de acarreo de ripple y lookahead generada por el compilador variaría con las restricciones especificadas. Si desea mantener una disposición particular de la lógica de acarreo, puede decirle explícitamente al compilador que desea que se generen ciertas señales (ya que este es un diseño ficticio de todos modos, enrutarlos a los pines de E / S puede ser una buena manera de hacerlo). Supongo que un compilador podría decidir ignorar las señales P y G incluso si se vio obligado a generarlas, pero espero que sea lo suficientemente inteligente como para no hacer eso.

    
respondido por el supercat
2

¿A qué tecnología te dirigías?

Si se trataba de un FPGA, el sintetizador puede haber sido tan inteligente que sabía que el acarreo de rizado es más eficiente (en términos de conteo de LUT y probablemente también de rendimiento) ya que la cadena de acarreo está disponible de forma gratuita.

    
respondido por el Martin Thompson

Lea otras preguntas en las etiquetas