[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.


More information about the Oberon mailing list