Skip to content
This repository was archived by the owner on Oct 31, 2023. It is now read-only.
This repository was archived by the owner on Oct 31, 2023. It is now read-only.

No support for ES values bigger than the number of bits of the posit number. Bug in multiply module. #4

@laumonte10

Description

@laumonte10

Hello,

I have used your Posit implementation of addition and multiplication as a reference model in my master thesis. During the verification of my code I have found some issues and a possible bug in your implementation.

The first problem is that it is not possible to select ES values bigger than POSIT_WIDTH-3. And looking at the documentation of the numbers there is no restrictions for the ES value. In order to support it in your code I have changed the PositDecode and PositEncode files. But maybe it is also needed to change other files.

The second problem is that there is a bug in the multiplication rounding. The value of the normalTrailingBits is not correct so I have added a line in the PositMultiply module assigning the correct value to the variable. With this change the multiplication results were correct.

Please find attached the three files I have modified. I would like to know if these changes make sense for you or I misunderstood something.

Best regards,

Laura.
PositDecode.txt
PositEncode.txt
PositMultiply.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions