intel / intel/rohd-hcl

Multi-cycle divider improvements

Open
#139 2 comments 1 reaction 0 assignees Claimed by @joserochh View on GitHub
enhancement help wanted
Dominant language
Dart
Stars
115
Forks
39
Avg merge
1d 13h
Merged PRs (30d)
1

Description

### Motivation

Some of the computations are using 2's complement where a 1's complement (inversion) based approach may be more efficient.
This should be explored to see if you can save all those carry operations.

More corner cases for the divider would be good to have in the test suite.
A test using a narrow divider might cover all corners.
We could enhance the MultCycleDividerState to be an enum and perhaps use the ROHD-HCL FSM construct.

### Desired solution

Create a narrow divider and see if we can cover all corners.
If not, create a list of corner cases and cover them with short tests.

Try converting computations to use 1's complement and avoid the carries.

### Alternatives considered

_No response_

### Additional details

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by reviewing linked pull request #287, then inspect the MultCycleDividerState implementation and existing divider tests. Explore a narrow divider to cover corner cases, and assess the proposed 1's-complement computations and ROHD-HCL FSM construct; done means the relevant corner cases are tested and the agreed divider improvements are implemented.

Written by the indexing model from the issue text.

Assessment

Tech stack
dart
Domain
embedded-iot
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.