¿Es posible encontrar la ruta crítica en una parte específica del diseño?

He escrito una descripción RTL de un circuito en VHDL que es jerárquico y estoy usando Altera Quartus II; mi diseño cumple con el tiempo. Había establecido una restricción de frecuencia de reloj de 50 MHz (período de 20 ns) usando create_clock por ahora.

Tengo una holgura de aproximadamente 10 ns en el diseño en este momento. El diseño contiene un Nios II conectado con un diseño personalizado que es un diseño bastante complejo con múltiples niveles de jerarquía. Siempre que quiera encontrar la ruta del peor de los casos dentro de mi diseño personalizado a partir de un determinado bloque y, por lo tanto, incluya todas las cosas debajo de él (en jerarquía), ¿cómo haría eso en TimeQuest? ¿Es posible? En la actualidad, el cuello de botella de tiempo parece ser el Nios II.

Respuestas (1)

Incluso si puede encontrarlo, es poco probable que sea información significativa: las herramientas dejan de optimizar el tiempo tan pronto como cumple con los requisitos (frecuencia de reloj). Si desea conocer la velocidad máxima de su diseño, o desea ver dónde debe comenzar a optimizar más para que funcione a velocidades de reloj más altas, debe sintetizar su componente de forma independiente, aumentando progresivamente la velocidad del reloj hasta que ya no coincida con el tiempo. Luego puede ver qué caminos hacen que falle el tiempo.

No coincidirá exactamente con el diseño combinado ya que la ubicación de E/S y las opciones de ubicación disponibles no serán las mismas, pero generalmente la ruta crítica estará en la misma parte del diseño. A veces, después de integrar su componente en un diseño grande, la ruta crítica puede cambiar porque para algunos componentes solo quedan ubicaciones muy subóptimas; Principalmente he visto que esto suceda para block ram. Pero no hay nada que pueda hacer con respecto a estos casos aparte de observar el diseño combinado específico.

De acuerdo, debo sintetizar solo el complejo bloque lógico personalizado y usar todos los pines virtuales al realizar la compilación completa.