Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge boneless_sim with Boneless-CPU #1

Open
wants to merge 54 commits into
base: main
Choose a base branch
from

Conversation

cr1901
Copy link
Collaborator

@cr1901 cr1901 commented Dec 25, 2018

Exactly what it says on the tin.

  • setup.py working properly on my mind (both boneless and boneless_sim packages installed).
  • Tests are properly discovered for both boneless and boneless_sim. The simulator tests pass on my end. The gateware tests on my machine fail with errors of the following form:
ERROR: test_XOR (boneless.gateware.test_core.BonelessTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
 File "C:\msys64\home\William\src\boneless-sim\boneless\gateware\test_core.py", line 14, in wrapper
   run_simulation(self.tb, case(self, self.tb), vcd_name="test.vcd")
 File "C:\msys64\home\william\src\nmigen\nmigen\compat\sim\__init__.py", line 19, in run_simulation
   with Simulator(fragment, vcd_file=open(vcd_name, "w") if vcd_name else None) as sim:
 File "C:\msys64\home\william\src\nmigen\nmigen\back\pysim.py", line 505, in __enter__
   var_type=var_type, size=var_size, init=var_init))
 File "C:\msys64\mingw64\lib\python3.6\site-packages\pyvcd-0.1.3-py3.6.egg\vcd\writer.py", line 144, in register_var
   raise ValueError('Invalid var_type "{}"'.format(var_type))
ValueError: Invalid var_type "string"
  • Badges have been updated to point to your accounts.
  • .travis.yml, readthedocs.yml unmodified, ready for your changes.
  • .gitignore, setup.py merged.
  • Stub README.md added. It is included by the top-level docs. I want to share the docs between boneless and boneless_sim.

cr1901 added 30 commits December 4, 2018 05:08
:100644 100644 159aa0c 6dbb54a M	boneless_sim/test/test_insns.py

:100644 100644 159aa0c 6dbb54a M	boneless_sim/test/test_insns.py
:100644 100644 e33125a e81849b M	boneless_sim/sim.py
:100644 100644 03b1a8d a2b6146 M	boneless_sim/sim.py
:100644 100644 30a21a9 98cde93 M	boneless_sim/test/test_insns.py
:000000 100644 0000000 dc34c84 A	.travis.yml
:000000 100644 0000000 05f18df A	README.md

:000000 100644 0000000 a4b0039 A	.travis.yml
:000000 100644 0000000 05f18df A	README.md

:000000 100644 0000000 a4b0039 A	.travis.yml
:000000 100644 0000000 a653b47 A	README.md

:000000 100644 0000000 f7cefe6 A	.travis.yml
:000000 100644 0000000 adf06b7 A	README.md

:000000 100644 0000000 e093d10 A	.travis.yml
:000000 100644 0000000 adf06b7 A	README.md

:000000 100644 0000000 6178ee4 A	.travis.yml
:000000 100644 0000000 adf06b7 A	README.md
:000000 100644 0000000 0a19fdb A	.readthedocs.yml
:100644 100644 adf06b7 793bddd M	README.md

:000000 100644 0000000 5ea5b22 A	.readthedocs.yml
:100644 100644 adf06b7 793bddd M	README.md
:100644 100644 7504957 29a8fa3 M	boneless_sim/sim.py
@whitequark
Copy link
Owner

  • Tests are properly discovered for both boneless and boneless_sim. The simulator tests pass on my end. The gateware tests on my machine fail with errors of the following form:

You need pyvcd>=0.1.4. This is in nmigen's dependencies, actually, not sure why it doesn't work.

@whitequark
Copy link
Owner

whitequark commented Dec 25, 2018

  • setup.py working properly on my mind (both boneless and boneless_sim packages installed).

The package should be called boneless.simulator, similar to boneless.gateware.

@codecov-io
Copy link

codecov-io commented Dec 26, 2018

Codecov Report

❗ No coverage uploaded for pull request base (master@32debb8). Click here to learn what that means.
The diff coverage is 99.43%.

Impacted file tree graph

@@            Coverage Diff            @@
##             master       #1   +/-   ##
=========================================
  Coverage          ?   96.34%           
=========================================
  Files             ?       13           
  Lines             ?     1257           
  Branches          ?        0           
=========================================
  Hits              ?     1211           
  Misses            ?       46           
  Partials          ?        0
Impacted Files Coverage Δ
boneless/simulator/__init__.py 100% <100%> (ø)
boneless/simulator/test/test_insns.py 100% <100%> (ø)
boneless/simulator/test/test_idioms.py 100% <100%> (ø)
boneless/simulator/test/common.py 96.29% <96.29%> (ø)
boneless/simulator/test/test_except.py 97.61% <97.61%> (ø)
boneless/simulator/sim.py 99.56% <99.56%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 32debb8...dfb7255. Read the comment docs.

@cr1901 cr1901 mentioned this pull request Mar 9, 2019
@cr1901
Copy link
Collaborator Author

cr1901 commented Mar 9, 2019

@whitequark Boneless Arch is finalized, correct? In the upcoming week, I plan to modify the simulator so it has feature parity w/ the arch itself.

And maybe add async support. Idk how much good it'll do, since a CPU arch simulator doesn't have to wait for anything when simulating ALU/mem ops. But maybe it might be useful to schedule opcodes in the event loop between, say, simulated I/O peripherals. Thoughts?

@whitequark
Copy link
Owner

Boneless Arch is finalized, correct? In the upcoming week, I plan to modify the simulator so it has feature parity w/ the arch itself.

Not yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants