esquemas de xilinx a la tabla de verdad

1

Tengo un diseño de esquemas algo complicado. ¿Hay algún programa que pueda convertir mi diseño en tablas de verdad?
Si no existe tal programa, ¿cómo puedo representar los flip-flops D del siguiente diseño en una tabla de verdad?

    
pregunta Umut

1 respuesta

4

No me molestaría en buscar herramientas, evitaría las tablas de verdad e iría directamente a VHDL (o Verilog, si lo prefiere). Dado el esquema que se muestra y algunos lápices de colores, esto tomará unos minutos, tal vez hasta una hora para una hoja tan simple como la que publicaste.

Es de suponer que todo el circuito tiene muchas de estas hojas.

Y supongo que todos son similares a los mostrados; dividiendo el diseño en simples elementos representables, puertas y FFs.

La estrategia que tomaría es:

1) Identifique y nombre cada red interna (ignorando los buffers, pero reconociendo los inversores). Por lo tanto, S0 está conectado a las entradas en la puerta Y superior y al INV superior izquierdo, pero la salida del INV es una red separada (llámela SO_n o incluso N1). Una pluma de color a lo largo de cada línea a medida que avanza ayudará a identificar las que aún no ha alcanzado.

2) Identifique y nombre las puertas y registros.

3) Use un componente VHDL (o creación de instancias de entidad) para cada registro

4) Use una asignación de señal para cada puerta. Estos se pueden etiquetar con el nombre que le dio a cada puerta.

Entonces tienes algo como lo siguiente:

entity Sheet1 is
   port (
      S0 : in std_logic;
      S1 : in std_logic;
      Reset : in std_logic;
      Clock : in std_logic;
      F     : out std_logic
   );
end Sheet1;

architecture Netlist of Sheet1 is

   signal S0_n : std_logic;
   signal S1_n : std_logic;
   signal FDR2_Q : std_logic;
   signal AND3_1_Q : std_logic;
-- and one for every named net on the drawing

begin

   AND3_1 : AND3_1_Q <= S0 and S1_n and FDR2_Q;

   FDR2 : entity Work.FDR 
           port map (
              D => Or4_1_Q,
              Q => FDR2_Q,
              C => Clock,
              R => Reset
           );

end Netlist;

El nombre de cada compuerta y red, y el etiquetado de cada señal VHDL, así como la asignación de componente y señal concurrente, le proporciona la trazabilidad entre VHDL y el esquema: plumas más coloreadas para marcar todo, y puede rápida y confiable verifique que la VHDL sea una representación precisa del esquema.

Ahora necesita modelos de componentes como FDR: probablemente los pueda encontrar (por ejemplo, en la biblioteca Unisims de Xilinx, en cuyo caso escribiría FDR2 : entity Unisims.FDR ) pero son rápidos y fáciles de crear a mano.

Ahora, la versión VHDL puede simularse (para descubrir qué hace) o sintetizarse como desee.

    
respondido por el Brian Drummond

Lea otras preguntas en las etiquetas