SimplHDL 0.0.3__tar.gz → 0.0.4__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (172) hide show
  1. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/PKG-INFO +1 -1
  2. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/SimplHDL.egg-info/PKG-INFO +1 -1
  3. SimplHDL-0.0.4/src/simplhdl/__init__.py +1 -0
  4. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/quartusflow.py +5 -1
  5. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/generators/spd.py +17 -10
  6. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/__init__.py +19 -0
  7. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/quartus/project.tcl.j2 +11 -18
  8. SimplHDL-0.0.3/src/simplhdl/__init__.py +0 -1
  9. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/.github/workflows/publish.yml +0 -0
  10. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/.gitignore +0 -0
  11. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/.readthedocs.yaml +0 -0
  12. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/LICENSE +0 -0
  13. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/README.md +0 -0
  14. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/_static/simplhdl_dark.png +0 -0
  15. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/_static/simplhdl_light.png +0 -0
  16. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/_static/simplhdl_light_1.png +0 -0
  17. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/conf.py +0 -0
  18. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/drawing.svg +0 -0
  19. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/ghdl.rst +0 -0
  20. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/icarus.rst +0 -0
  21. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/quartus.rst +0 -0
  22. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/questasim.rst +0 -0
  23. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/vcs.rst +0 -0
  24. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/vivado.rst +0 -0
  25. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows/xsim.rst +0 -0
  26. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/flows.rst +0 -0
  27. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/index.rst +0 -0
  28. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/intel-ips.md +0 -0
  29. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/introduction.rst +0 -0
  30. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/plugins.rst +0 -0
  31. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/docs/requirements.txt +0 -0
  32. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/adder.yml +0 -0
  33. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/hdl/adder.sv +0 -0
  34. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/sim/testbench.sv +0 -0
  35. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/sim/testbench.yml +0 -0
  36. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/syn/build.yml +0 -0
  37. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/syn/placement.xdc +0 -0
  38. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/syn/timing.xdc +0 -0
  39. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/adder/syn/top.sv +0 -0
  40. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/alu.yml +0 -0
  41. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/hdl/add.sv +0 -0
  42. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/hdl/alu.sv +0 -0
  43. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/hdl/mul.sv +0 -0
  44. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/hdl/sub.sv +0 -0
  45. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/__init__.py +0 -0
  46. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/agent.py +0 -0
  47. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/aluif.py +0 -0
  48. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/driver.py +0 -0
  49. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/monitor.py +0 -0
  50. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/sequenceitem.py +0 -0
  51. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/alu_vip/sequencer.py +0 -0
  52. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/clock_vip/__init__.py +0 -0
  53. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/clock_vip/agent.py +0 -0
  54. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/clock_vip/clockif.py +0 -0
  55. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/pyuvm.yml +0 -0
  56. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/test/__init__.py +0 -0
  57. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/test/env.py +0 -0
  58. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/test/seq_lib.py +0 -0
  59. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/test/test.py +0 -0
  60. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/pyuvm/testbench.py +0 -0
  61. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/agent.svh +0 -0
  62. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/alu_vip.sv +0 -0
  63. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/alu_vip.yml +0 -0
  64. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/driver.svh +0 -0
  65. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/env.svh +0 -0
  66. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/monitor.svh +0 -0
  67. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/alu_vip/sequence_item.svh +0 -0
  68. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/tb_env/seq_lib/add_seq.svh +0 -0
  69. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/tb_env/seq_lib/base_seq.svh +0 -0
  70. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/tb_env/tb_env.sv +0 -0
  71. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/tb_env/tb_env.yml +0 -0
  72. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/tb_env/test/base_test.svh +0 -0
  73. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/tb_env/test/test_add.svh +0 -0
  74. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/testbench/alu_if.sv +0 -0
  75. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/testbench/testbench.sv +0 -0
  76. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/testbench/testbench.yml +0 -0
  77. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/sim/uvm/testcases/test_add/test_add.yml +0 -0
  78. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/syn/build.yml +0 -0
  79. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/syn/placement.xdc +0 -0
  80. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/alu/syn/timing.xdc +0 -0
  81. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/hello/build.sbt +0 -0
  82. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/hello/hello.yml +0 -0
  83. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/hello/src/main/scala/Hello.scala +0 -0
  84. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/hdl/hello/syn/build.yml +0 -0
  85. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/plugins/simple_parser/setup.py +0 -0
  86. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/plugins/simple_parser/src/simple_parser/__init__.py +0 -0
  87. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/examples/plugins/simple_parser/src/simple_parser/simple_parser.py +0 -0
  88. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/pyproject.toml +0 -0
  89. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/setup.cfg +0 -0
  90. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/SimplHDL.egg-info/SOURCES.txt +0 -0
  91. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/SimplHDL.egg-info/dependency_links.txt +0 -0
  92. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/SimplHDL.egg-info/entry_points.txt +0 -0
  93. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/SimplHDL.egg-info/requires.txt +0 -0
  94. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/SimplHDL.egg-info/top_level.txt +0 -0
  95. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/__main__.py +0 -0
  96. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/cocotb.py +0 -0
  97. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flow.py +0 -0
  98. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/__init__.py +0 -0
  99. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/implementationflow.py +0 -0
  100. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/modelsimflow.py +0 -0
  101. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/questasim/__init__.py +0 -0
  102. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/questasim/questasimflow.py +0 -0
  103. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/rivierapro/__init__.py +0 -0
  104. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/rivierapro/rivieraproflow.py +0 -0
  105. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/simulationflow.py +0 -0
  106. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/vcs/__init__.py +0 -0
  107. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/vcs/vcsflow.py +0 -0
  108. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/vivadoflow.py +0 -0
  109. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/xsim/__init__.py +0 -0
  110. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/flows/xsim/xsimflow.py +0 -0
  111. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/generator.py +0 -0
  112. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/generators/__init__.py +0 -0
  113. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/generators/chisel.py +0 -0
  114. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/generators/ipxact.py +0 -0
  115. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/generators/systemrdl.py +0 -0
  116. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/info.py +0 -0
  117. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/parser.py +0 -0
  118. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/parsers/__init__.py +0 -0
  119. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/parsers/fusesocparser.py +0 -0
  120. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/parsers/simplhdlparser.py +0 -0
  121. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/plugins.py +0 -0
  122. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/attributes.py +0 -0
  123. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/design.py +0 -0
  124. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/fileset.py +0 -0
  125. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/filetypes.py +0 -0
  126. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/project.py +0 -0
  127. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/pyedaa/vhdllibrary.py +0 -0
  128. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/repo.py +0 -0
  129. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/__init__.py +0 -0
  130. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/__init__.py +0 -0
  131. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/quartus/__init__.py +0 -0
  132. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/quartus/run.tcl.j2 +0 -0
  133. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/Makefile.j2 +0 -0
  134. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/__init__.py +0 -0
  135. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/cocotb.mk.j2 +0 -0
  136. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/dependencies.mk.j2 +0 -0
  137. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/files.j2 +0 -0
  138. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/fileset.j2 +0 -0
  139. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/questasim/project.mk.j2 +0 -0
  140. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/Makefile.j2 +0 -0
  141. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/__init__.py +0 -0
  142. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/cocotb.mk.j2 +0 -0
  143. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/dependencies.mk.j2 +0 -0
  144. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/files.j2 +0 -0
  145. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/fileset.j2 +0 -0
  146. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/rivierapro/project.mk.j2 +0 -0
  147. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/Makefile.j2 +0 -0
  148. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/__init__.py +0 -0
  149. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/cocotb.mk.j2 +0 -0
  150. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/dependencies.mk.j2 +0 -0
  151. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/files.j2 +0 -0
  152. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/fileset.j2 +0 -0
  153. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/pli.tab.j2 +0 -0
  154. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/project.mk.j2 +0 -0
  155. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vcs/synopsys_sim.setup.j2 +0 -0
  156. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vivado/__init__.py +0 -0
  157. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vivado/launch_run.sh.j2 +0 -0
  158. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vivado/project.tcl.j2 +0 -0
  159. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vivado/run.tcl.j2 +0 -0
  160. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/vivado/steps.tcl.j2 +0 -0
  161. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/Makefile.j2 +0 -0
  162. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/__init__.py +0 -0
  163. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/cocotb.mk.j2 +0 -0
  164. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/dependencies.mk.j2 +0 -0
  165. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/files.j2 +0 -0
  166. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/fileset.j2 +0 -0
  167. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/resources/templates/xsim/project.mk.j2 +0 -0
  168. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/simplhdl.py +0 -0
  169. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/tools.py +0 -0
  170. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/src/simplhdl/utils.py +0 -0
  171. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/tests/test_dummy.py +0 -0
  172. {SimplHDL-0.0.3 → SimplHDL-0.0.4}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SimplHDL
3
- Version: 0.0.3
3
+ Version: 0.0.4
4
4
  Summary: A framework for simulating and implementing HDL designs
5
5
  Author-email: Rasmus Grøndahl Olsen <simplhdl@gmail.com>
6
6
  Maintainer-email: Rasmus Grøndahl Olsen <simplhdl@gmail.com>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: SimplHDL
3
- Version: 0.0.3
3
+ Version: 0.0.4
4
4
  Summary: A framework for simulating and implementing HDL designs
5
5
  Author-email: Rasmus Grøndahl Olsen <simplhdl@gmail.com>
6
6
  Maintainer-email: Rasmus Grøndahl Olsen <simplhdl@gmail.com>
@@ -0,0 +1 @@
1
+ __version__ = "0.0.4"
@@ -16,7 +16,8 @@ from ..resources.templates import quartus as templates
16
16
  from ..utils import sh, generate_from_template
17
17
  from ..pyedaa import (QuartusIPSpecificationFile, VerilogIncludeFile, VerilogSourceFile,
18
18
  SystemVerilogSourceFile, VHDLSourceFile, ConstraintFile,
19
- EDIFNetlistFile, NetlistFile, SettingFile, QuartusSignalTapFile)
19
+ EDIFNetlistFile, NetlistFile, SettingFile, QuartusSignalTapFile,
20
+ QuartusIniFile, QuartusQIPSpecificationFile, QuartusQSYSSpecificationFile)
20
21
  from ..pyedaa.project import Project
21
22
  from ..pyedaa.attributes import UsedIn
22
23
 
@@ -94,6 +95,9 @@ class QuartusFlow(ImplementationFlow):
94
95
  NetlistFile=NetlistFile,
95
96
  SettingFile=SettingFile,
96
97
  QuartusSignalTapFile=QuartusSignalTapFile,
98
+ QuartusQIPSpecificationFile=QuartusQIPSpecificationFile,
99
+ QuartusQSYSSpecificationFile=QuartusQSYSSpecificationFile,
100
+ QuartusIniFile=QuartusIniFile,
97
101
  project=self.project,
98
102
  UsedIn=UsedIn)
99
103
  template = environment.get_template('run.tcl.j2')
@@ -10,7 +10,8 @@ from shutil import copy, copytree
10
10
 
11
11
  from ..pyedaa import (
12
12
  File, SystemVerilogSourceFile, VHDLSourceFile, VerilogSourceFile,
13
- QuartusIPSpecificationFile, HDLLibrary, ConstraintFile, HDLSourceFile
13
+ QuartusIPSpecificationFile, HDLLibrary, ConstraintFile, HDLSourceFile,
14
+ QuartusIPCompressedSpecificationFile, QuartusQSYSSpecificationFile
14
15
  )
15
16
  from ..pyedaa.fileset import FileSet
16
17
  from ..flow import FlowBase, FlowCategory, FlowTools
@@ -111,14 +112,15 @@ class Spd:
111
112
  @GeneratorFactory.register('QuartusIP')
112
113
  class QuartusIP(GeneratorBase):
113
114
 
114
- def unpack_ip(self, filename: QuartusIPSpecificationFile) -> QuartusIPSpecificationFile:
115
+ def unpack_ip(self, filename: QuartusIPSpecificationFile) -> QuartusIPSpecificationFile: # noqa: C901
115
116
  ipdir = self.builddir.joinpath('ips')
116
117
  dest = ipdir.joinpath(filename.Path.name).with_suffix('')
117
118
  md5file = dest.with_suffix('.md5')
118
119
  ipdir.mkdir(exist_ok=True)
119
- if filename.Path.suffix == '.qsys':
120
- return
121
- elif filename.Path.suffix == '.zip':
120
+ if filename.FileType == QuartusQSYSSpecificationFile:
121
+ pass
122
+
123
+ elif filename.FileType == QuartusIPCompressedSpecificationFile:
122
124
  update = True
123
125
  if md5file.exists():
124
126
  update = not md5check(filename.Path, filename=md5file)
@@ -127,7 +129,14 @@ class QuartusIP(GeneratorBase):
127
129
  zip.extractall(ipdir)
128
130
  md5write(filename.Path, filename=md5file)
129
131
  logger.debug(f"Copy {filename.Path} to {dest}")
130
- elif filename.Path.suffix == '.ip':
132
+
133
+ if filename.Path.suffix == '.zip':
134
+ filename._path = dest.absolute()
135
+ else:
136
+ filename._path = dest.with_suffix('.ip').absolute()
137
+ filename._fileType = QuartusIPSpecificationFile
138
+
139
+ elif filename.FileType == QuartusIPSpecificationFile:
131
140
  update = True
132
141
  dir = filename.Path.with_suffix('')
133
142
  if dir.exists():
@@ -140,10 +149,8 @@ class QuartusIP(GeneratorBase):
140
149
  copytree(str(dir), str(dest.with_suffix('')), dirs_exist_ok=True)
141
150
  md5write(filename.Path, dir, filename=md5file)
142
151
  logger.debug(f"Copy {filename.Path} to {dest}")
143
- else:
144
- # Non Qartus IP files
145
- return filename
146
- filename._path = dest.absolute()
152
+ filename._path = dest.with_suffix('.ip').absolute()
153
+
147
154
  return filename
148
155
 
149
156
  def run(self, flow: FlowBase):
@@ -128,6 +128,25 @@ class QuartusIPSpecificationFile(IPSpecificationFile):
128
128
  pass
129
129
 
130
130
 
131
+ class QuartusIPCompressedSpecificationFile(QuartusIPSpecificationFile):
132
+ pass
133
+
134
+
135
+ class QuartusQSYSSpecificationFile(QuartusIPSpecificationFile):
136
+ pass
137
+
138
+
139
+ class QuartusQIPSpecificationFile(QuartusIPSpecificationFile):
140
+ pass
141
+
142
+
143
+ class QuartusIniFile(File):
144
+ def _registerAttributes(self):
145
+ super()._registerAttributes()
146
+ FileMixIn._registerAttributes(self)
147
+ self[UsedIn] = {'implementation'}
148
+
149
+
131
150
  class VivadoIPSpecificationFile(IPSpecificationFile):
132
151
  pass
133
152
 
@@ -14,33 +14,26 @@ set_global_assignment -name VERILOG_MACRO "{{define}}={{value}}"
14
14
  {% for file in project.DefaultDesign.Files() if 'implementation' in file[UsedIn] %}
15
15
  {% if file.FileType == VerilogIncludeFile %}
16
16
  set_global_assignment -name VERILOG_INCLUDE_FILE "{{file.Path}}"
17
- {% endif %}
18
- {% if file.FileType == SystemVerilogSourceFile %}
17
+ {% elif file.FileType == SystemVerilogSourceFile %}
19
18
  set_global_assignment -name SYSTEMVERILOG_FILE "{{file.Path}}"
20
- {% endif %}
21
- {% if file.FileType == VerilogSourceFile %}
19
+ {% elif file.FileType == VerilogSourceFile %}
22
20
  set_global_assignment -name VERILOG_FILE "{{file.Path}}"
23
- {% endif %}
24
- {% if file.FileType == VHDLSourceFile %}
21
+ {% elif file.FileType == VHDLSourceFile %}
25
22
  set_global_assignment -name VHDL_FILE "{{file.Path}}"
26
- {% endif %}
27
- {% if file.FileType == ConstraintFile %}
23
+ {% elif file.FileType == ConstraintFile %}
28
24
  set_global_assignment -name SDC_FILE "{{file.Path}}"
29
- {% endif %}
30
- {% if file.FileType == TCLSourceFile %}
25
+ {% elif file.FileType == TCLSourceFile %}
31
26
  set_global_assignment -name TCL_FILE "{{file.Path}}"
32
- {% endif %}
33
- {% if file.FileType == QuartusIPSpecificationFile and file.Path.suffix == '.ip' %}
27
+ {% elif file.FileType == QuartusIPSpecificationFile %}
34
28
  set_global_assignment -name IP_FILE "{{file.Path}}"
35
- {% endif %}
36
- {% if file.FileType == QuartusIPSpecificationFile and file.Path.suffix == '.qip' %}
29
+ {% elif file.FileType == QuartusQIPSpecificationFile %}
37
30
  set_global_assignment -name QIP_FILE "{{file.Path}}"
38
- {% endif %}
39
- {% if file.FileType == QuartusIPSpecificationFile and file.Path.suffix == '.qsys' %}
31
+ {% elif file.FileType == QuartusQSYSSpecificationFile %}
40
32
  set_global_assignment -name QSYS_FILE "{{file.Path}}"
41
- {% endif %}
42
- {% if file.FileType == SettingFile and file.Path.suffix == '.qsf' %}
33
+ {% elif file.FileType == SettingFile and file.Path.suffix == '.qsf' %}
43
34
  source "{{file.Path}}"
35
+ {% elif file.FileType == QuartusIniFile %}
36
+ file copy -force "{{file.Path}}" "quartus.ini"
44
37
  {% endif %}
45
38
  {% endfor %}
46
39
 
@@ -1 +0,0 @@
1
- __version__ = "0.0.3"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes