Neo-Smalltalk



Due to a technical problem, the live demo was impossible.

The demonstration is of a small computer built around an FPGA. The computer also has some RAM and flash memory (for perm storage). The last chip is the "bios", which reads from flash and programs the FPGA.

The computer is an instant on computer, currently boots directly into a pong game.

The computer was developed as part of an application for truckers. It was intended to cost ~$30 (before the LCD/keyboard).

The original intent was to develop a very low cost computer for the poorer people of Brazil (like the Simputer, I think). The machine is designed to go into schools (and even be acquirable by private individuals). The co-design focussed on Smalltalk because of it's exploratory background. The FPGA allows the designer to experiment with hardware implementation of VMs. FPGAs can take on characteristics of other processors.

Previous iterations could only implement 16-bit machines, the current version can implement a 32-bit machine.

The 16-bit machine was very limited due to it's limited address range. The discussion went into implementation tradeoffs of the Smalltalk system due to the small size. He wound up customizing a Forth processor to be more efficient at message sending. He could achieve message dispatch in one clock cycle. Mostly because RAM outstripped the object space requirements by a factor of four (or so).

One really cool thing about the implementation was that the hardware was available to the tool level. So a user who gets into programming will find the transition to programming the hardware very smooth.

Another thing that was cool was the way that syntax of his language eliminated the need for a real compiler because you would actually program the abstract syntax tree.

In the 32 bit version, there are actually multiple 16 bit machines which operate as separate tasks. A 32 bit implementation may involve multiple FPGAs, splitting the tasks across hardware so that messages actually involve inter-processor messages.

Really cool, but mostly over my head.

Posted: Tue - October 28, 2003 at 12:55 PM      


©