hardware

Jecel Assumpcao Jr jecel at merlintec.com
Thu May 29 23:37:06 UTC 2003


On Wednesday 28 May 2003 23:58, Dan Ingalls wrote:
> Jecel Assumpcao Jr <jecel at merlintec.com>  wrote...
> > [$5 Smalltalk machine]
>
> I'd be interested in any links. 

Currently I only have a description of the processor design for the 
board I am debugging (http://www.merlintec.com:8080/Hardware/Oliver) 
which will be adapted to be the $30 kid computer. The $5 version would 
require a custom chip instead of a FPGA, so it would have to be a high 
volume product.

> As you may be aware I'm working
> around the $200 price point with the help of a few others.  When
> we're done it might be interesting to see what could be thrown out
> for your needs-.

I didn't know about this project, though there is always talk about a 
Playstation or Xbox port.

Throwing out the keyboard, as I suggested in the previous email, is a 
bit extreme. In general, I like to add stuff instead of eliminating 
features.

> >[Squeak VM in Verilog. Slang?]
>
> I encourage you to play around with the Slang translator.  It will
> give you a working VM, and one that is even pretty fast if you have
> enough room to allow inlining.  The generation side of the translator
> is extremely simple - I think you could have something running in a
> couple of days (not including, of course, the rest of your BIOS etc).

Verilog is a hardware description language which sort of looks like C. 
VHDL is another one that looks like Ada. Using a normal programming 
style in these might even work but doesn't yield acceptable results.

Translating Occam to hardware worked reasonably well and Smalltalk is 
sort of used as a hardware description language in IDaSS 
(http://www.xs4all.nl/~averschu/idass/). I used Self as an HDL back in 
1991 with very nice results. And Reinaldo Silveira's unfinished PhD 
thesis was about translating a subset of objects in a Smalltalk or Self 
application into hardware.

I haven't started this project yet, so I don't know how much I'll be 
able to use Slang. If the VM was coded in a more OO style and less C 
like it would actually be easier for me, but I am hoping for a pleasant 
surprise anyway.

BIOS? This is extreme SqueakNOS. In fact, I am thinking of actually 
leaving all the primitives in Squeak untranslated and executing their 
bytecodes instead. Except for those associated with the special send 
bytecodes (and which the Slang->C translator handles, right?). Then, 
depending on how much space I have left on the FPGA (100,000 gates), I 
could convert some of the primitives into hardware to eliminate the 
bottlenecks.

Here is the board I am talking about, in case someone is interested (it 
costs $280 rather than $30, but that is typical of development systems 
and doesn't really reflect the component costs):

  http://www.xess.com/prod026.php3

David Farber wrote:
> SA-C: Single Assignment C

Thanks for the link! The name sounds like some kind of functional 
language. Which makes sense: during the 1980s we used something called 
ISP, which was a modified APL, to describe hardware at the register 
transfer level. It was an improvement on its successors, to quote 
Hoare.

-- Jecel



More information about the Squeak-dev mailing list