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

Jump Table indexing expected by ghz_fpga_server is confusing #325

Open
maffoo opened this issue Feb 26, 2016 · 1 comment
Open

Jump Table indexing expected by ghz_fpga_server is confusing #325

maffoo opened this issue Feb 26, 2016 · 1 comment

Comments

@maffoo
Copy link
Contributor

maffoo commented Feb 26, 2016

See the discussion on #324.

The problem is that the jump table indices one has to compute are off by one from the actual indices of command in the list, because the server adds an extra (required) NOP instruction at the beginning. There are a couple of ways to fix this, but we need to decide on the best way and coordinate the rollout between server and clients to maintain compatibility. Possible fixes:

  1. require the user to add the NOP, so that then the relative jt indices are consistent (and identical to what goes in fpga memory)
  2. OR, add the NOP as here but also add one to jump indices so that when we compute jt indices they point to the right places in our list.
@JulianSKelly
Copy link
Contributor

Thanks for filing this issue, as this clearly rears its ugly head in #324.

I think option 2 is the correct option so we can avoid exposing some hardware details to the user. I think it's fair to let a user assume that sequences start at t=0 and then handle the rest.

Aside: this NOP will be important in implementing paging in the future with the jump table boards. If we have a function thats gonna mess with all the SRAM addresses to do paging, we may as well re-index the jump table entries while we're at it.

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

No branches or pull requests

2 participants