[Oberon] Wrong results of selected REAL multiplications
Hans Klaver
hklaver at dds.nl
Fri Oct 13 18:39:47 CEST 2023
Hi Chris,
You wrote:
> I can confirm that I can reproduce the problem on currently available Project Oberon FPGA RISC5 Workstation hardware using Wirth's latest official Project Oberon sources:
>
> https://www.astrobe.com/RISC5/Workstation.htm
>
> A simpler test which helps to eliminate some of the possible causes of the problem from further investigation is:
>
> Texts.WriteReal(W, SYSTEM.VAL(REAL, 3F8637BDH), 16)
>
> this displays the incorrect result: 5.242880E+00. It should show: 1.048576E+00
>
> The problem does not occur on a April 2016 verison of Peter's emulator. This leads me to suspect that the problem may have been introduced during the changes to the Floating Point-related Verilog files that were made between 8 Aug 2016 and 3 Oct 2016 as summarised here:
>
> https://people.inf.ethz.ch/wirth/news.txt
Thanks for checking this.
As I don't know much about Verilog programming I am afraid that I can't be of much help to pinpoint this bug and propose a solution.
Hoping others in the community are able and willing to look into this.
Regards,
Hans
More information about the Oberon
mailing list