Beta
×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

Old MIPS/ARM PDAs for Teaching?

Cliff posted more than 12 years ago | from the tax-writeoffs-as-corporate-xmas-presents dept.

Handhelds 10

Barak Pearlmutter asks: "I'm teaching computer architecture this spring. The course involved a lot of assembly programming, and in the past has used a SPARC simulator. I'd like to get a bunch of PDAs with RISC processors (ARM or MIPS) instead. This requires a development environment that runs under Linux and supports assembler...and some PDAs. The less memory and the slower the CPU the better! Also no virtual memory or real OS to get in the way - best to have direct access to the display and buttons."

"It seems like companies must be sending 128k MIPS handhelds to the landfill at this point, so giving them to us to use in teaching would be a win/win, since they'd get a tax writeoff and some good will instead. But even if they cost $20/ea, that would be fine. Any suggestions on what hardware to use, or what companies to contact? Remember, there must be a convenient way to download executable code into them, using a cable rather than a flash ROM. And we're pretty much a Debian GNU/Linux shop, so a working cross-compiler based on the GNU toolset would be best. An emulator would be even peachier, so students could debug without downloading the code after each little change, although that's not strictly necessary."

cancel ×

10 comments

Sorry! There are no comments related to the filter you selected.

SPIM! (4, Insightful)

boopus (100890) | more than 12 years ago | (#2750091)

I can't really add too much usefull information, but I would question the usefullness of using real PDA's instead of a simulator. I just finished taking a basic computer architecture class from Patterson of Patterson & Hennesy and we used spim as a simulator. If you are trying to learn assembly language, the debugging tools availabel in a simulator are going to be far better, and I suspect any real development(And hence learning) are going to occur with the simulator, and the uploading and running on the PDA will be something you do at the end of the lab as a neat trick. That being said, it'd be a cool neat trick.

Re:SPIM! (3, Interesting)

jcwren (166164) | more than 12 years ago | (#2750880)

My only disagreement with this is that the satisfaction of seeing something run on a real piece of hardware is far higher than seeing the output of the simulator.

And, perhaps if done correctly, the student could keep the PDA with his/her code. After all, if PDAs are constantly becoming obsolete, turnover shouldn't be a problem, right?

--jcwren

Re:SPIM! (1)

systemBuilder (305288) | more than 12 years ago | (#2752539)

I have taught a class in logic design / computer architecture from Hennesy & Patterson's book, and I feel that to teach it with SPARC assembly language is just silly. The degenerate SPARC CPU architecture was motivated by the fundamental question, "what can I fit into a 10K gate array in the year 1985 ???" if I remember correctly. I can understand the desire to fill the student's mind with stale and rotting information, as a way to taking revenge for your low academic salary, but teach SPARC assembly language is simply going too far ...

Since the whole world is going embedded, and increasingly, battery-operated, the two CPU's that are most practical to teach about are (a) ARM (most mips per watt), and (b) 8051 (when you absolutely positively don't need 200 mips to start with ...)

There is an alternative to a PDA (1)

hairyian (540318) | more than 12 years ago | (#2752786)

Handheld game-playing devices have been in production since the days of the Atari Lynx. The gameboy (original) in particular shouldn't be too hard to get hold of, and certainly shouldn't be particularly expensive. They're based on a slightly cut down Z80 core (AFAIK the only real difference is the lack of the index registers (IX, IY) and their associated instructions).

The gameboy advance(d?) is another possibility: probably more expensive but much easier to get hold of. I've been told that they're based on an ARM7 core.

In both cases, you get enough peripherals for some interesting programming challenges. Seeing your program output to the LCD is a far more rewarding experience than examining the result in a register or a set of memory locations. Also, I'd expect their architectures to be very simple - their hardware is very well understood, and other than their compactness nowhere near cutting edge (and so no bizarre hacks required).

Ian Woods

Re:There is an alternative to a PDA (1)

bap (75675) | more than 12 years ago | (#2753050)

Can the GNU toolset target these gaming devices, and is there an easy way (ie short of burning a ROM) to get code into them?

Re:There is an alternative to a PDA (1)

we3 (546328) | more than 12 years ago | (#2754189)

From what I've read the GNU toolset can target the the gameboy advance. Check this site [devrs.com] for more information on programing the gameboy advance. To get the code into them there is a flashable card or a cheaper adapter that will allow you to send code directly to your gameboy advance. Both of those are available at this site [lik-sang.com]

SPARC (0)

neric (106851) | more than 12 years ago | (#2753731)

I'm taking this class next semester, and I would really rather do something with handhelds than the SPARC emulator.
I don't know much about the subject, but you would think there would be a few more replies!

Eric

Here's a thought... (1)

nephorm (464234) | more than 12 years ago | (#2755359)

Why don't you use a simulator of a PDA? You could use, for example, the Palm emulator. That way, you get the nice feedback onscreen, and all the advantages of programming the real thing without the cost.

If you are going to teach computer architecture... (2)

cmowire (254489) | more than 12 years ago | (#2756080)

If you are going to teach computer architecture, teach a real architecture with warts. The MIPS architecture has only one wart, and that was mostly there as a leftover from previous assumptions, as far as I can tell.

I think you will get much more mileage out of teaching students on the x86 architecture. You can get a good emulator [sourceforge.net] and also run things on a regular PC, depending. Most of your problem sets should fit on a 1.44MB floppy, which means that you can just boot an existing computer off of the floppy drive. Write a few pieces of code to make the student's life easier -- i.e. loading an executable image into memory and stuff.

Re:If you are going to teach computer architecture (0)

Anonymous Coward | more than 12 years ago | (#2756796)

Good idea. He should also force mustard water down their throats and make them eat their own vomit.
Check for New Comments
Slashdot Login

Need an Account?

Forgot your password?

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>