Oberon System Implemented on a Low-Cost FPGA Board
Bob Lawrence (VE1RLL)
Posts: 1,720
Has anyone use Oberon for FPGA development or you are planning to do so in the future?
=========================================================
Oberon System
Implemented on a
Low-Cost FPGA Board
by Niklaus Wirth
Professor (retired)
Swiss Federal Institute of Technology (ETH)
Zurich, Switzerland
Niklaus Wirth:
"Choosing a Xilinx FPGA allowed me
to update the system while keeping the
design as close as possible
to the original version from 1990. "
Complete Article:
http://www.xilinx.com/support/documentation/xcell_articles/91-5-oberon-system-implemented-on-a-low-cost-fpga-board.pdf
================================
=========================================================
Oberon System
Implemented on a
Low-Cost FPGA Board
by Niklaus Wirth
Professor (retired)
Swiss Federal Institute of Technology (ETH)
Zurich, Switzerland
Niklaus Wirth:
"Choosing a Xilinx FPGA allowed me
to update the system while keeping the
design as close as possible
to the original version from 1990. "
Complete Article:
http://www.xilinx.com/support/documentation/xcell_articles/91-5-oberon-system-implemented-on-a-low-cost-fpga-board.pdf
================================
Comments
No. Thought about it, but no time, and I think doing that would take significant time.
I may well give it a go on P2 at some point in the future.
Yes I changed the title. Thanks!
@Potato: By all means do so! The Oberon OS could be just the ticket for a stand-alone P2 machine. Of course it would violate Dr. Wirth's rule that "no part must be specified in assembler code." But we won't tell Dr. Wirth. Besides, Propeller assembly is clearly more pure than the indecipherable gunk he was talking about.
Because we have hubexec, there would be no technical reason why the necessary core i/o, display, etc... libraries could not be modified as well. A couple in line or binary specifIed PASM instructions would need to live in there, to access hardware specific bits, like the streamer.
Seems to me, there are two basic paths there too.
One would be an Oberon loader. Have it be in PASM, and it does the setup. The other is to mod the libraries as mentioned. There has to be a little slack where software driven features, like a display, etc... are needed, but not part of Oberon. The loader path could potentially leave Oberon pure.
When we get this Smart Pin stage done, it's time for ongoing bug fixing and tweaks and the chip system software. At that time, we learn how booting can go, etc...
The on chip stuff probably will be PASM, monitor, booter, and crypt at a minimum. That's enough to both bootstrap something, and or build loaders, etc.. that can support something like Oberon, if on chip is chosen. The moment booting is sorted, the usual tools can be used as well.
The former is harder, but maybe good systems education material. The latter is the more likely and easier way to go.
Might be a great project in the future!
I got a P2 project in process right now, and one for the P1 in my queue. (Reference video drivers for Brett) Gonna get those done before I personally think too much about anything along these lines.
If Oberon gets done one day, it may actually see an education market. IMHO, it's powerful enough to do a lot. Someone here just mentioned using it to do ARM programming. I would be interested to know more about that.
A little P2 system with storage, maybe external RAM should perform nicely. Fun thoughts!
Check out Astrobe
http://www.astrobe.com/default.htm
They have free starter development packages for M3 and M4 chips. I use the M3 package since I primarily muck about with the LPC1347 boards(they're cheap).
There is also a Oberon documents page at:
http://www.astrobe.com/Oberon.htm
Yes, and recently they also release a RISC5 version, for cross compile to the FPGA hosts :
http://www.astrobe.com/RISC5/default.htm
OberonStation
enso, 18 January 2016 (created 27 August 2013)
OberonStation™ is a self-contained FPGA-based, 32-bit computer designed specifically to run Oberon RISC, as described by Profs. Niklaus Wirth and Jürg Gutknecht in Project Oberon (New Edition 2013).
Attached to a PS/2 keyboard, a mouse and a monitor (1024x768 or better) via a VGA cable, OberonStation is a complete Oberon workstation that boots Oberon in about 1 second from the uSD card. Complete source code for the Oberon GUI environment, Oberon RISC compiler and applications is available at projectoberon.com. OberonStation is also compatible with Astrobe.
http://oberonstation.x10.mx/
Starting price example:
Item total:$179.99