J'ai essayé d'utiliser la bibliothèque Veriloggen qui peut écrire Verilog en Python avec Windows + Visual Studio. Ensuite, il y a eu une erreur liée à la simulation, donc je l'ai corrigée.
Maintenant que je suis libre, je vais essayer d'utiliser Veriloggen, qui m'a toujours intéressé. J'utilise également Python pour la première fois.
Installez rapidement l'extension VS Python pour le moment Je ne peux rien faire sans le support de l'IDE car il est spacieux.
Créez un environnement virtuel sur VS et installez Veriloggen et les packages dépendants avec pip
Quand j'exécute l'exemple de code
...
endmodule
C:\Users\*******\AppData\Local\Temp\tmp16lswu9y: Permission denied
No top level modules, and no -s option.
'.'Est une commande interne ou externe,
Non reconnu comme programme opérationnel ou fichier de commandes.
Ouf
Il semble que quelque chose ne va pas avec la simulation, alors
Jetez un œil à simulation.py
de Veriloggen.
Tout d'abord, Permission.
simulation.py
tmp = tempfile.NamedTemporaryFile()
tmp.write(code.encode(encode))
tmp.read()
filename = tmp.name
cmd.append(filename)
# synthesis
p = subprocess.Popen(' '.join(cmd), shell=True, stdout=subprocess.PIPE)
Parce que Permission dit quelque chose comme ça Il y a un problème avec ce fichier temporaire.
Après de nombreuses recherches, à propos de tempfile.NamedTemporaryFile ()
Je jette un coup d'œil à quelque chose de dérangeant dans l'environnement Windows.
Donc, vous pouvez utiliser mkstemp ()
(je ne suis pas sûr), donc je vais essayer.
Référence
simulation.py
# tmp = tempfile.NamedTemporaryFile()
fd, path = tempfile.mkstemp()
os.close(fd)
tmp = open(path, "w+b")
tmp.write(code.encode(encode))
tmp.read()
filename = tmp.name
#Omission
# close temporal source code file
tmp.close()
os.remove(path)
Pour le moment, je n'ai rien dit sur la permission.
Puis cette ligne
simulation.py
# simulation
p = subprocess.Popen('./' + outputfile, shell=True, stdout=subprocess.PIPE)
Réécrivez «. /» En «. \». c'est tout.
Après avoir exécuté jusqu'à présent, la simulation s'est exécutée. Hourra
Recommended Posts