[Oberon] Volatile variables in Oberon

Srinivas Nayak sinu.nayak2001 at gmail.com
Mon Aug 1 05:00:45 CEST 2016


Dear Skulski,

Do you mean a volatile array?


With thanks and best regards,

Yours sincerely,
Srinivas Nayak

Home: http://www.mathmeth.com/sn/
Blog: http://srinivas-nayak.blogspot.in/

On 08/01/2016 05:01 AM, Skulski, Wojciech wrote:
> Chris wrote:
>
>> It is not allowed in Oberon-07 based systems either e.g. Project Oberon
>> 2013. Oberon-07 is more strict than Component Pascal as it limits the use of
>> pointer variables to record types. Pointers to arrays are not supported.
>
> Not supporting pointers to arrays is surprising for an FPGA-based project. Looking from the hardware side, an array is one of just two fundamental constructs in programmable logic. The other one is a register. Just to clarify, a register can be made out of distributed flip-flops, while an array corresponds to FPGA RAM. (There are two kinds of RAM, the block BRAM and the distributed RAM. For this discussion they are pretty much the same.). There is not much else in the FPGA but these two kinds of objects. I find it surprising that one of them is supported via the SYSTEM put and get, while the other is not.
>
> There is a fundamental need in the FPGA-based project to interface the software to hardware. You can also say "interface the CPU to the logic portion of the design". This can only be done by mapping software objects to hardware objects. Mapping a variable to a register has been discussed in this thread. The solution seems adequate. However, mapping the software array to the hardware array seems to be left out of focus. I can imagine a kluge using PUT and GET, but it will be a kluge.
>
> Component Pascal offered the untagged arrays for much the same purpose. I wonder why a similar solution seems to be missing from the FPGA Project Oberon.
>
> Regards,
> Wojtek
> --
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon
> .
>


More information about the Oberon mailing list