Somewhat of a tangent - since Alan mentioned the Alto architecture. Chuck 
Thacker is working on a few interesting HW prototyping platforms at MS research.

The FPGA prototype system:
http://research.microsoft.com/en-us/news/features/bee3.aspx

More interestingly, though, is beehive:
http://projects.csail.mit.edu/beehive/Beehive-2010-01-MIT.pdf

shawn


On Jan 3, 2011, at 2:16 PM, Jecel Assumpcao Jr. wrote:

> I am *very* interested in this subject - not only do I hope that the
> Squeak computer I am building will be itself an educational object, but
> I am also helping two related projects. I'll briefly describe those two
> projects before making comments on the "Nand to Tetris" course, but I
> should mention that both of these take the "students should learn the
> way I learned" approach with which I don't agree with at all. And it
> isn't easy to help while letting them explore on their own. Watching
> them happily test several little programs without pointing out that none
> of their examples use indexed addressing and that they will need it a
> lot later on is not easy for me.
> 
> Etienne Delacroix might be known to some in this list, but probably not
> to most. An artist and a physicist, he is now back in his native Belgium
> but spent most of the past decade roaming Brazil, Uruguay and other
> countries in the region. He gave workshops to both university students
> and to children where he used electronic components salvaged from old
> computers to create interesting art. They would learn what transistors
> are, how to use TTLs chips and then would mix Javascript software and
> such to get their results. Etienne's own projects often included a Z80
> processor.
> 
> Lately he became interested in opening up the black box that is the Z80
> or Pentium II and studied several online texts to see how to build a
> processor out of TTLs. He was not interested in simulators or FPGA
> implementations but wants something that he, and his students, can
> touch. I helped him play around with such radical stuff as the
> Subtract-And-Branch-If-Negative processor (around 12 TTLs) and he was
> able to simulate several versions of his e-cpu, which currently only has
> an 8 bit address. Together we evaluated some 16 to 20 educational
> processors (including "Hack" of the "Elements" course). If there is
> interest I could compile a list of links to the ones that are available
> online.
> 
> The other project is a book that two professors at my university want to
> write. They teach introduction to digital logic and at the end of the
> course the students have traditionally built a multiplication circuit
> with an adder and control logic, but recently they have been doing
> simple processors. Their idea is that the book (to be in Portuguese,
> which will seriously limit their audience) would be roughly the course
> they have been giving followed by a course on compiler writting with a C
> compiler for their processor. Their processor is a simple 16 bit RISC
> with instructions for reading from the keyboard and writing to the
> screen (with redefinable characters - the students have done several
> classic video games with this) implemented in entry level FPGAs
> development boards. They are considering adopting this board for their
> text: http://www.altera.com/b/nios-bemicro-evaluation-kit.html
> 
> This option doesn't have the video output like their older boards. The
> student doing the compiler has not yet taken any courses on compilers,
> which I see as a major problem and they see as an advantage. Their idea,
> like Etienne, is that someone who is also learning is in a far better
> position to teach than some expert who doesn't remember what it was like
> not to know stuff. I also advised them that they should have some
> interpreted environement running on their machine, not just
> cross-compiled C. Even TinyBasic would do. Otherwise their
> readers/students will have an initial experience in computing more
> typical of the 1960s than the late 1970s/early 1980s.
> 
> Given this context, I found the material in "The Elements of Computing
> Systems" very interesting. I got a little worried when I saw that the
> authors seemed confused about what "von Neumann" and "Harvard"
> architectures mean, but the rest of their stuff is great. The use of
> simulators instead of actual hardware lowers the cost for their
> audience, but I do feel that there is some educational value in actually
> being able to touch something you built. The exagerated simplicity of
> Hack reduces the time spent designing the hardware but makes programming
> it much more complicated (and not at all typical of assembly languages
> people actually program in). But the idea is to develop only a single
> program for Hack: a much nicer virtual machine. So it might be best to
> think of Hack assembly as microcode.
> 
> One thing that is very hard to balance in an educational object is the
> "low floor, high ceiling" thing. You have to make it simple enough to be
> learned in a short time, but powerful enough to be useful in real life.
> The "Elements" objects focus on the floor, so as soon as students have
> learned their lesson the objects are thrown away never to be seen again.
> Since they are just simulations anyway, they could hardly have any
> practical value after the course so this seems like a good decision. If
> I had to choose between teaching someone Logo to only later have them
> replace it with something else or starting with something like C++ or
> Java that they might use for years and years, I would go with the Logo
> approach every time. But I would find it sad to see it thrown away.
> While Basic is itself limited, for Logo the problem is more the
> implementations than the language.
> 
> Etienne's solution will lead to a throw-away TTL processor. Once you
> have understood what it does, you will want a Z80 instead for your next
> project. The design of the two professors is a bit limited, but there is
> no reason why it couldn't be used instead of Nios II or Microblaze even
> in commercial projects. Chuck Thacker's series of TinyComputer
> processors also have an extremely high ceiling. One detail I mentioned
> to the professors is that if they take VHDL or Verilog as their starting
> point (as Chuck does and they are currently doing) then they will be
> left with a huge black box. The "start with just NAND" solution that
> "Elements" and Etienne took will result in a much deeper understanding.
> They don't have to be mutually exclusive - it is probably good to have
> the students design the same processor both ways.
> 
> The result of STEPS will be something both learnable and usable - you
> won't want to throw it away to go back to your Windows/Linux/Mac PC
> instead. I see that as the major difference compared to "Elements" and
> the two projects I described.
> 
> -- Jecel
> 
> 
> _______________________________________________
> fonc mailing list
> [email protected]
> http://vpri.org/mailman/listinfo/fonc

_______________________________________________
fonc mailing list
[email protected]
http://vpri.org/mailman/listinfo/fonc

Reply via email to