Skip to content
This repository has been archived by the owner on Apr 27, 2023. It is now read-only.

Spec: Finalise behaviour of MP instructions #23

Closed
1 task
ben-marshall opened this issue Sep 25, 2018 · 0 comments
Closed
1 task

Spec: Finalise behaviour of MP instructions #23

ben-marshall opened this issue Sep 25, 2018 · 0 comments
Assignees
Labels
question Further information is requested specification Issue relates to the XCrypto ISE specification

Comments

@ben-marshall
Copy link
Contributor

ben-marshall commented Sep 25, 2018

We haven't quite finalised how some of the MP instructions should behave, mainly wrt which bits some treat as carry in/carry out.

sub2/sub3

  • These don't seem to make sense in their current form. Would they be better formulated as a "deaccumulate"?

equ/ltu/gtu

  • I don't know exactly what sort of comparison these instructions are performing. I think they just need the individual carry bits stating.
  • I suspect these will need renaming.

Shift Instructions

  • Change spec so that the high word of the 64 bit result goes to destination register 2. Not only is this more sensible, it makes implementation easier as well.
  • See issue Spec: MP Shift destination register order. #24 for more information.
@ben-marshall ben-marshall added the question Further information is requested label Sep 25, 2018
@ben-marshall ben-marshall added this to the Version 1.0a milestone Sep 27, 2018
@ben-marshall ben-marshall added the specification Issue relates to the XCrypto ISE specification label Sep 27, 2018
ben-marshall added a commit that referenced this issue Oct 15, 2018
- See #14, #7, #23, #30
- Re-implemented all existing MALU RTL.
- All previously implemented instruction unit tests passing.
- Adding unit test for `sub2.mp`
- Added ISE model for `sub2.mp`
- Need to add unit tests for `sub3`, `mac` and comparison instructions.
- Only RTL left to implement is for comparison instructions.

 On branch dev/ben-marshall
 Changes to be committed:
	modified:   docs/implementation.tex
	modified:   flow/icarus/waves-view.gtkw
	modified:   rtl/coprocessor/scarv_cop_malu.v
	modified:   verif/model/model_ise.v
	modified:   verif/unit/21-add3-mp.S
	new file:   verif/unit/28-sub2-mp.S
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
question Further information is requested specification Issue relates to the XCrypto ISE specification
Projects
None yet
Development

No branches or pull requests

2 participants