As per Dr. Smith's instructions, I'm taking a break from the Hamsters and trying to get a prototyping board for the Unprintable Project (what I was working on in May, with the FIFO and all) up and running for the Gambler.
Let me just say that the Hamsters are looking better all the time. A former student who had worked on an earlier version of UP was on site the other day and shared some horror stories to the tune of "and we couldn't get the boards working so we had to run it off the development kit and then it still wouldn't work, so I put pull-up resistors on it and then it did work long enough for us to get graded on it. But then when I worked on it some more the next summer, I took off the pull-up resistors and it still worked. Augh!"
Actually, it was comforting to hear that other people are as confounded with UP as I am. This makes it much easier to blame the hardware.
In any event, all I really need to do is make sure that the prototyping board communicates with a desktop computer through a serial cable. Theoretically this is easy, as all the necessary software and hardware have been developed and set upplug & pray. What we really said, however, was "This chip is hot. What voltage are we supposed to be running this at? Ow! Damn, that chip is really hot."
After some minor hardware destruction, we then had to eliminate and resolve other hardware issues scientifically. My repeated declarations of "the FPGA on that module is fried" were not rigorous enough. We had to swap around cables, boards, solid state PCs, and software for five hours until Dr. Science said, "So, this is a bad FPGA, yes?"
Three days later, we've got a (theoretically) functional FPGA module, a (theoretically) functional solid state PC, and a (theoretically) functional prototyping board that do not communicate with the desktop PC.
Dr. Smith says, "Let's just write a program for the solid state PC that puts out a letter U over and over again. Then we can put a scope on some of the pins and see where the signal's going. I don't know why it's the letter U, there's something special about it in hex. Do you have an ASCII chart handy?"
I grab a C++ manual and flip to the ASCII chart in the back, but it only has the decimal values for the characters (each keyboard character, as well as every other character in the ASCII character set, is represented by a seven bit number which can be stated in decimal, hexadecimal, and octalor any other number base). Dr. Smith reaches over and grabs a C manual and searches the appendices for an ASCII chart.
I reach for a different manual, but then stop and mutter, "Oh, heck, I can find it faster online." I open my browser, which I have set to start at Google, type ascii table hex and hit "I'm feeling lucky." I end up here. (Yes, someone actually registered the domain "asciitable.com.") "U is 55 in hex. So that's 1010101."
Isn't that special? Now we've got to make the solid state PCs consistently give us U's we can use. Please note: The Unprintable Project has issues with consistency.
558 words | July 13, 2004 07:39 PM | Rocket science