2013-07-30 16 views
6

Voglio creare un programma per analizzare Verilog e visualizzare uno schema a blocchi. Qualcuno può aiutarmi riguardo a quali algoritmi ho bisogno di esaminare? Ho trovato un buon parser di Verilog, ma ora ho bisogno di trovare la relazione tra ogni blocco e posizionarli di conseguenza. Non deve essere ampiamente ottimizzato.Programma per creare uno schema a blocchi di Verilog

UPDATE:

per ora sto usando IronPython per disegnare il diagramma a blocchi in Visio.

  1. creare una lista di blocchi con loro ingressi e uscite
  2. Creare un grafico che corrisponde a tutti gli output di un blocco ai loro ingressi corrispondenti. Questo ha fondamentalmente tutte le connessioni tra i blocchi.
  3. Trovare un posto per loro nel diagramma di Visio.
  4. Disegnali su Visio
  5. Connettili su Visio.
+0

E 'possibile per l'utilizzo di Vivado da Xilinx, già fa per voi. –

+0

No, devo creare un diagramma visio. Che è quindi più facile da modificare per un utilizzo futuro. – user591124

risposta

1

Si può provare anche a utilizzare la sintesi Altera, EASE, progettista HDL, Synplify analista HDL, nSchema o Xilinx PlanAhead.

+0

e ora vivado di xilinx –

0

Se si desidera solo un visualizzatore per i blocchi e la loro relazione, è possibile provare Graphviz. Un esempio che puoi trovare da un altro StackOverflow thread. È possibile analizzare semplicemente il design HDL e creare la relazione tra di essi, quindi scrivere in formato testo nella sintassi Graphviz. Quindi chiama il programma per generare il

Se si desidera implementare un visualizzatore avanzato, ad esempio, è possibile ingrandire/rimpicciolire, eseguire il pan, saltare in/out e selezionare, questa è un'altra storia.

4

Yosys è uno strumento di sintesi verilog open source. Può anche essere usato per analizzare disegni e creare schemi (usando GraphViz). Guarda gli screenshot sulla pagina web:

Se ho capito bene le vostre esigenze, Yosys fa già quello che vuoi. Se vuoi ancora scrivere il tuo programma, puoi usare Yosys come riferimento per iniziare.

(Conflict of Interest Disclosure: Io sono l'autore di Yosys.)

Problemi correlati