Diseño Complier cuestionario básico

1.1 ¿Qué es DC?
      DC (Diseño Compilador) es herramienta de síntesis lógica Synopsys' que sintetizan de forma automática a los circuitos a nivel de puertas optimizadas basadas en la descripción del diseño y las restricciones de diseño. Se puede aceptar una variedad de formatos de entrada, tales como HDL, esquemas, lista de conexiones, etc., y puede generar diversas propiedades del informe, lo que reduce el tiempo de diseño al tiempo que mejora el rendimiento del diseño.

¿Cuántos formatos 1.2 de entrada de CC puede aceptar?
     Apoyar .db, .v, VHD, .edif, .vgh, Lib , etc., en general, los fabricantes de .db biblioteca de células; .v es veilog sufijo; VHDL es el VHD sufijo; .edif y dos formas de netlist .vhd.

¿Cuántos formatos de salida de CC 1.3 proporciona?
     .Db, .v, VHD, edif, a condición de .vgh , etc., y SDC puede dar salida, el formato SDF y otros documentos relacionados.

1.4 ¿Cuáles son las principales funciones o rol principal de CC es?
     DC es la descripción HDL del circuito integrado en los circuitos a nivel de puertas asociados con el proceso. Y de acuerdo con los requisitos de diseño del usuario, para lograr los mejores resultados en el tiempo, el área, el poder. retorno de CC para floorplanning y el momento de verificación después árbol inserción y colocación del reloj.

? 1.5 Cómo encontrar ayuda
     puede ayudarle con las tres clases de formas:
     1. VENDIDO, la búsqueda de respuestas al documento de
     línea de comandos 2. con el comando man + DC (me gusta mucho)
     3. En la línea de comandos con el comando info + DC

1.6 ¿Cómo encontrar el documento VENDIDO?
      Documentos SOLD se pueden introducir en la ejecución y vendido en teminal.
      $> Vendido y
       o utilizar el comando find, que dc_shell directorio de instalación de corriente continua. Encuentra los directorios en línea.

1.7 Cómo configurar DC?
     Conjunto completo de parámetros necesarios para DC, la herramienta puede conocer la información necesaria para una solución amplia, como por ejemplo: la biblioteca de tecnología, biblioteca de destino, bibliotecas de símbolos, y así sucesivamente. Estos parámetros a ajustar en .synopsys_dc.setup. El .synopsys_dc.setup a una nota en los tres directorios, uno Synopsys directorio de instalación, una carpeta de usuario es el último es el directorio del proyecto. Después de un conjunto de cubierta antes de un archivo.
      Los parámetros específicos incluyen: search_path, target_library, link_library, symbol_library

1.8 target_library ¿Qué significa?
      Se necesita biblioteca proceso real target_library en la síntesis en fase mapa de.

1.9 link_library ¿Cómo especifico?
      Necesidad cuando se vincula la biblioteca, por lo general la misma biblioteca, cuando se establece, es necesario agregar "*" indica todas las bibliotecas de la memoria.

1.10 configuración search_path?
      Parámetro de almacenamiento especifica la ubicación de la biblioteca

1.11 DA y DC ¿Cuál es la diferencia?
      DA es la abreviatura de Diseño Analizador, DC llamarlo integral, pero es un gráfico, se puede ver el diagrama de circuito lógico, por supuesto, necesitará su biblioteca tiene una biblioteca de símbolos.

1.12 ¿Por qué sin cáscara interfaz DA?
      Esta pregunta parece ingenua, interfaces de shell se pueden utilizar, por supuesto, pero la mayoría de nosotros hemos acostumbrado al uso de las ventanas de esta interfaz gráfica amigable, simplemente DA es gráfico, muy adecuado para principiantes ! Sin embargo, recomiendo encarecidamente el uso de la interfaz de shell. Synopsys de síntesis incluyendo dc_shell (esto es Synopsys poseen) y dc_shell -tcl_mode (comando de script siguiendo la sintaxis TCL).


Lo que se 1.13 VENDIDO?
     VENDIDO es Synopsys OnLine Documento resumen, el conjunto básico de documentos que incluyen todas las herramientas de Synopsys empresas.

.? 1,14 Traducción Este paso es lo mando DC para lograr
      que sabemos, nuestro proceso de DC síntesis implica tres pasos: - Optimización Lógica Search.com + + mapas
      de transición correspondiente al comando read_verilog (read_vhdl etc.)
     Optimización Lógica y cartografía corresponde a la compilación

.? 1,15 lógica de optimización y mapeo (optimización lógica + mapeo) es lo mando CC para lograr la
      optimización de la lógica y la cartografía se completó en el comando de compilación, pero se puede especificar métodos especiales de optimización: estructural y aplanar, sugieren que la síntesis mientras que la generación de formato estructural y aplanar lista de conexiones, y la mirada abierta a continuación, al final lo que es la diferencia.

1.16. ¿Cuál es la secuencia de comandos DC?
      DC guión es una colección de comandos de corriente continua de un grupo puede hacer que el proceso de integral también es fácil de manejar.

1.17. ¿Qué ruta basadas integrado media?
      Path (ruta), que es un concepto importante en DC. Incluye cuatro tipos de camino maneras:
       . 1 ENTRADA al terminal D del FF.
      CLK 2 al terminal D del FF FF de otro.
      3 FF clk a la salida Q.
      4 entrada a la salida.
      Sobre la base de estos cuatro es un camino sin freno ruta completa, el circuito integrado para cumplir con estas restricciones.

1.18 CC cómo los diferentes parámetros de la unidad es para determinarla?
      Unidad del parámetro utilizado está determinado por la biblioteca, después de leer el almacenamiento, puede utilizar report_lib ver el repositorio, en el interior hay una descripción detallada de la unidad

Objetivo de 1,19 DC Que?
      Variables de diseño: un total de ocho: Diseño, celular, de referencia, el puerto , el pin, red, reloj, biblioteca. Donde la célula es un diagrama de la sub-diseño, la referencia es realización conocida de una pluralidad de sub-diseño, el puerto es el diseño de la entrada y salida, entrada de pin y la salida de la célula.

1.20 ¿Cuál es el punto de punto de inicio y fin?
      Estos dos conceptos son el punto de partida y el punto final de la ruta concepto DC:

      1 punto de inicio puede ser de entrada y el FF CLK
      2 puede ser el final de los datos y la salida de FF

       Estos son el momento de analizar los conceptos básicos, esperamos que la DC actual y STA sujete con firmeza!

? 1.21 Como encontrar los objetos que se desean limitaciones
      Uno es todos a encontrar incluyen: all_inputs, all_outputs, all_clocks, all_registers .

      Por ejemplo: set_input_delay 1.0 all_inputs (): El texto de dc_shell, si al dc_shell -tcl_mode, en comparación con

                 set_input_delay 1.0 [all_inputs]

      Una búsqueda se realiza de acuerdo a la palabra clave: [get_ports ()] o expresarse como find (puerto, ''), el primero está escrito en TCL modo!

      Como diseñador de IC, os recomiendo que los principiantes se ven documentos vendidas, mucha práctica, mucho que aprender TCL, Perl y otros de uso general

      lenguaje de script.

1.22 ¿Qué es un diseño (diseño)?
      El diseño es un tema importante en la CC, usted quiere algo que se llama diseño integrado, precisamente, es el primer archivo que desea un módulo integrado.

1.23 ¿Cuál es la célula y la célula de la hoja?
      En el diseño, diseño instancia sub, llamada célula.

      No sub-módulo de la célula se denomina célula de la hoja, definimos la restricción de reloj de tiempo, generalmente requieren la ruta de acceso se refiere a la célula de la hoja.

1.24 referencia ¿Qué significa? ¿Cuál es la diferencia y de la célula?
      Cuando hay varios casos de un módulo, el módulo se denomina referencia

1.25 Cómo leer un diseño?
    Uso analizar + describen o read_verilog, leer -f Verilog, read_vhdl, read_file comando.

1,26 analizar comando + elaborado y leer cuál es la diferencia
      read_file puede leer cualquier formato soportado por Synopsys, analizar y eloborate Verilog y VHDL de apoyo sólo dos formatos, pero apoyar puede acelerar el proceso de lectura después de añadir parámetros en el medio del proceso y .

1.27 ¿Cómo lidiar con el problema más referencias?
       Método uno: Uso uniquify, es citar un par de veces a continuación, cambiar el nombre en la memoria de introducir el diseño de sub múltiple, adecuados para diferentes restricciones de temporización

                    Requisitos.

      Método dos: comando dont_touch se puede utilizar, después de la primera de la pluralidad de compilación diseño de referencia, conjunto dont_touch, grupo adecuado

                    Esta mismos requisitos ambientales.

       Método tres: las dos referencias en aplanar (sin jerarquía), y luego integrado.

¿Cuál es el papel del enlace es de 1,28?
      ¿Seguro de todos los archivos están presentes y los relacionan con el diseño actual.

1,29 Lo que se entiende por valor de entorno?
     Se refiere a los parámetros físicos en el chip, tales como la tensión, la temperatura y así sucesivamente.

1.30 Cómo establecer el modelo de carga de línea?
      Comando de Uso set_wire_load_model,

      如: set_wire_load_model -nombre KME -library libr

1.31 ¿Cómo puedo saber el tipo de línea de modelo de carga?
      Leer archivos de la biblioteca a DC, el número de modelos de carga de alambre disponibles utilizar report_lib ver allí

1.32 Cómo establecer las variables de entorno de trabajo?
      Use set_operating_conditions

      如: set_operating_conditions "WCCOM"

1.33 Categoría de variables de entorno de trabajo se puede dividir en varias categorías?
      Generalmente se divide en el peor (peor caso), típica (típico), óptima (mejor de los casos).

1.34 ¿Por qué debemos establecer las variables de entorno operativo?
      Debido a que tenemos que hacer es el chip funcione correctamente en un entorno real, la temperatura y el medio ambiente tiene una gran influencia en el rendimiento del circuito, por lo que con el fin de simular el chip para el trabajo tanto como sea posible, al conjunto apropiado el ambiente de trabajo es la información esencial.

1.35 Leer y analizar + ealborate lo que se había hecho?
      Comprobación de sintaxis, para establecer la biblioteca GETECH (se puede ir a buscar lo que la biblioteca GETECH) Cabe señalar que, comando de lectura no realiza automáticamente operaciones de enlace.

1,36 biblioteca Getech está haciendo qué propósito?
      Macro biblioteca getch es suave (macros suaves) que consiste en un sumador, un multiplicador cosas como, se hace referencia a estos componentes en DW Lane.

Después de 1,37 llamadas Getech sumador de biblioteca, cómo elegir un sumador de necesidades de diseño?
      No he utilizado! Temporalmente no como respuesta

Después de 1,38 llamadas Adder en la fase de optimización también puede intercambiar diferentes víbora ¿Por qué?
      No he probado! Temporalmente no como respuesta

1.39 Cómo comprobar lo que es archivo de script que mal?
      Dc_shell-TCL -f

1.40 Si, después de dc_shell inicio, quiere modificar la biblioteca, ¿cómo?

      Presione Ctrl + C para hacer una pausa y continuar ejecutándose Cuando haya terminado!

1.41 Cómo ejecutar comandos UNIX en dc_shell medio ambiente?

      Este problema es muy simple, y muy ingenua! Que no voy a responder!

1.42 La optimización se divide en varios niveles?
     A es optimización de la estructura a base de HDL en la estructura getch; basado optimización lógica GTECH, incluyendo esquema (strcuture), corbata (Flatten), en getch optimizado; basado optimización nivel de la puerta getch, el papel principal se asigna a la actual la biblioteca de procesos.

1.43 ¿Cuáles son las limitaciones?
     Las restricciones se dividen en restricción de diseño y optimización de restricción. restricción de diseño está determinado no por el usuario, ha sido determinado por el uso de la biblioteca, los usuarios sólo podrán añadir más restricciones. restricción de optimización se divide en dos zonas, la restricción de tiempo y la restricción de zona. temporización restricción restricción restricción se puede dividir en un circuito combinacional, el circuito de temporización y la entrada y salida restricción.

1,44 DC script TCL lo apoyan?
     Textuales, Synopsys apoyar dc_shell y dc_shell -tcl_mode. El primero es el lenguaje interno SYNOPSYS, que siguen TCL sintaxis.

1,45 Integral seguro de que no quieran utilizar el mapeo unidad de biblioteca, ¿cómo hacer?
      Uso de comandos set_dont_use

/ ******** Parte 2 Compilar stategy ************** /

? 2.1 restricción de un diseño se divide en varias zonas
     total se divide en: restricción de área y la restricción de tiempo.

2.2 ¿Qué limitaciones de comandos área?
     set_max_area

2.3 Cómo restringir el reloj?
      Contiene una descripción de reloj de dos factores: la frecuencia y la fase.
     Uso create_clock establecer limitación reloj.

     如: create_clock -nombre clk200 -periodo 5 -waveform {0, 2,5} encuentre (pin, "armpll_wrapper_x / g_reg / Q")

2.4 Cómo restringen PLL?
     Si el PLL está presente, entonces el primer reloj introduce create_clock inicial restricción.
     Entonces create_propagated_clock para restringir el reloj de salida PLL basándose en el reloj de entrada, o create_clock directamente,

     Ambos tenían el camino del reloj de la célula de la hoja

2.5 ¿Qué es una restricción reloj virtual?
    reloj virtual se refiere a un reloj físico que no existe en el módulo actual para integrarse en. Por ejemplo, el reloj DFF diseño exterior.
    Establecimiento de una restricción tales reloj útil para describir la relación entre el circuito asíncrono, pero básicamente no fijan en el trabajo real!

2.6 características de DC que puede estar constreñidos reloj?
     descarga de CC para el reloj T, forma de onda, la vibración, inclinación, latencia descripción, por favor asegúrese de averiguar la diferencia entre el jitter y el sesgo también,

     Hay una variedad de latencia, si está haciendo análisis de tiempo, entonces preguntarse: estos factores de latencia, jitter, inclinación, ya tienen

     Resuelto todavía?

2.7 Cómo limitaciones fluctuaciones de reloj?
     Uso set_clock_uncertainty -setup (-hold) fluctuaciones de reloj obligado

2.8 Cómo limitaciones desvío de reloj?
    El uso de las limitaciones del reloj de la red de inclinación set_clock_uncertainty

2.9 Cómo limitaciones de latencia reloj?
    Uso -option set_clock_latency, la opción es la fuente o de la red , el valor predeterminado es la red.

2.10 Cómo restringir el puerto condiciones externas del diseño actual?
    Las condiciones externas de puerto que comprende: Tamaño de accionamiento de entrada, el tamaño de la carga de salida, el tamaño de fan-out.

2.11 ¿Cuánto puerto de entrada es impulsada por la unidad?
    Puede utilizar set_dirive y set_driving_cell, o el uso set_input_transition, prestar atención a la diferencia entre estos tres!

2.12 puerto de salida para excitar tanto de carga?
    Uso set_load valor de la restricción de la capacitancia de salida, de acuerdo a definir una biblioteca unidad de proceso predeterminado.

2.13 CC se basa en un camino integrado, a continuación, cómo se refleja en la falta de tiempo?
   Sabemos que, con base en el camino tienen uno de los cuatro caminos formar, dentro de los DC
   caminos entre los registros y registre una definición de create_clock;
   ; ruta set_input_delay definido entre el registro de entrada y la
   trayectoria entre el set_output_delay registro de salida definida;
   set_max_delay definir la entrada y set_min_delay y combinaciones de rutas de salida;

¿Cuál es el propósito de 2,14 set_input_delay?
   retardo de entrada define para el diseño de la lógica de entrada de temporización restricción

¿Cuál es el propósito de 2,15 set_output_delay?
   retardo de salida definido, para restringir la salida del diseño de la lógica de temporización

2.16 Cómo restringir el circuito combinado?
   Y un circuito lógico combinatorio set_max_delay set_min_delay refrenar


2.17 Cómo limitar la velocidad del circuito?
    uso create_clock

2.18 Cuando un circuito combinatorio supera las limitaciones del ciclo de reloj, a continuación, cómo hacer frente a?
    Además set_max_delay re-ligado, de acuerdo con el valor de esta herramienta integral a tratar de cumplir con los requisitos de set_max_delay, pero esto aumentará el área de diseño, y si todavía no se cumple el tiempo, sólo puede modificar el diseño.

2.19 Cuando se produce el circuito de bucle, la forma de frenar el circuito?
    Utilice set_false_path en un camino

2.20 ¿Cómo fortalecer el estado de las restricciones de diseño?
    RDC es una reglas de diseño de circuitos que se deben cumplir, el uso
    set_max_capcitance
    set_max_fanout
    set_max_tansition

Después de añadir 2,21 restricción de cuatro ruta, la forma de eliminar las limitaciones para cierto camino en el momento de la síntesis, el momento de análisis sin?
    Uso set_flase_path recorrido por lo que no se realiza esa cierta sincronización de encendido

2.22 queda mucho por hacer para ciertos caminos dentro de un número fijo de ciclos, la forma de restringir estos caminos?
    El uso de restricción set_multicycle_path ruta

2.23 añadir estas limitaciones de ruta especiales, cómo restaurar las restricciones de temporización generales originales?
    uso reset_path

2.24 Cómo ve limitada por la puerta de los tres estados?
    Debido a la amplia, puerta de tres estados es habilitar de forma predeterminada, por lo que por alguna ruta de acceso a conjunto set_false_path

2.25 Cómo restringir el reloj cerrada para garantizar la función normal?
    configuración de reloj activada e inspección circuito de retención, el uso set_gating_clock_check

2.26 establecer algún tipo de red tales como reloj o reposición sin adición de tampón y otras operaciones, ¿cómo deben las limitaciones?
    Uso set_dont_touch_network, tenga en cuenta la diferencia entre el uso y set_dont_touch


2.27 ¿Cómo arreglo violaciónes tiempo de mantenimiento?
   Únete restricción set_fix_hold, la restricción no suelen considerar que este paso en el encuentro de front-end, dejando a la compañía de procesamiento de back-end!

/ ************ Parte 3 Compilar stategy ****************** /

3.1 Cuando se integra, no hay mucho donde elegir la estrategia global?
   Puede utilizar la parte superior-abajo y de abajo arriba.

¿Cuáles son las ventajas 3,2 manera de arriba hacia abajo?
   TOP de la escritura sólo proporcionan un único
   diseño en su conjunto, podemos obtener mejores resultados

3.3 de la moda de abajo hacia arriba ¿Cuáles son las ventajas?
   Más integral multi-reloj para
   cada sub-módulo tiene su propio guión, fácil de manejar
   cuando un módulo de cambios, sin re-integración de todo el diseño

3.4 Cómo llevar a cabo el tiempo-brazo a torcer?
   uso característico

¿Cuáles son las deficiencias 3,5 manera de arriba hacia abajo?
   Compilar un largo tiempo
   submódulo de cambiar todo el diseño para ser reintegrada de
   múltiples diseños de reloj efecto combinado es no es bueno
cualquier deficiencia 3,6 camino de abajo hacia arriba?
   La necesidad de mantener la escritura múltiple

-Incremental tiempo de compilación 3.7 ¿Qué significa?
   Después de diseñar la asignación de puerta, de tiempo y de área limitaciones pueden ser redefinidos, antes de la incrementales asegurar el mantenimiento de la configuración del circuito, y sólo para un mejor rendimiento de temporización, sin añadir lógica innecesaria.
3.8 ...

/ ******* parte 4 Analizar el informe ****************** /

4.1 Cómo ver el informe de área?
    Report_area

4.2 Cómo ver el informe de tiempo?
    Report_timing, por favor detalle hombre report_timing este comando para ver si se utiliza una variedad de opción

4.3 les gustaría ver el informe de área para una unidad separada, qué orden?
    Report_cell pero sólo puede ver el área de la celda report_cell por defecto de nivel siguiente current_design, por lo que hay dos maneras de resolver este problema:
     1. report_cell [get_cells - hier *] se puede ver toda la zona de las células
     2. lista list_design todo el diseño, a continuación, cambiar a una célula de ese nivel current_design que quiere ver, y luego directamente report_cell.

4.4 entorno de diseño y ver cómo el modelo de carga de línea?
      Report_design

4.5 Si las reglas de diseño y violaciónes tiempo de restricción, la forma de ver?
     Use -all_violators report_constraint

4.6 ¿Cómo puedo ver la conexión de fan-in, fan-out, capacidad de carga y el tiempo de transición?
     Uso report_net
4.6 Cómo ver la cantidad de tipos de puerta de lista de conexiones de circuito después de que se utiliza todo el complejo?
     uso report_hierarchy

4.7 Cómo comprobar excepción de tiempo de las limitaciones de tiempo?
     Use report_timing_requirements, por favor, pensar en lo que excepciones temporales

------------

Se trata de un Republicado

Liberadas 1012 artículos originales · ganado elogios 520 · Vistas 12.700.000 +

Supongo que te gusta

Origin blog.csdn.net/Augusdi/article/details/104955469
Recomendado
Clasificación