Group 0xf1d0
[ Home ] [ Our Group ] [ Design Goals ] [ Our Architecture ] [ Implementation ]
[ Technical Problems ] [ Our Code ] [ Results ] [ Pictures ]


As the semester came to a close, we began to realize that we could not expect to finish in time. The board worked, and the communications architecture was in place in both hardware and software. After considerable extra effort from all group members, the MP3 software was modified, hacked, and hardware-implemented to such a point that it was able to fit within the 64 kilobytes of RAM available. However, there were still unknown numbers of bugs in the software. We really have no idea what the scope of these bugs might be; we know that the decoder ran and appeared to return data, but that it was invalid, and we observed that after about 20 minutes decoding, it would return an error.

Why we failed

When it came time for demo3, our project did not yet meet our original design goals. Specifically, our board could not decode an MP3 from beginning to end on the board. There are several major reasons for this failure.

At the beginning of the semester, as we were spending all of our time scribbling on whiteboards and discussing the advantages and disadvantages of various architectures for the project, we failed to do enough research into the code, and thus missed a point that turned out to make our chosen architecture infeasible. In retrospect, however, it would have been difficult to have known that frames were not independent without spending the time to go through the entire code, which would have taken far more time than we had available. During our original whiteboard sessions, we were somewhat overconfident and overambitious about our design. One of our intentions was to choose an architecture that was interesting to us. We wanted an architecture that would be interesting enough to keep our interest, and therefore, our focus, on the project for the entire semester.

There were several things that we did not research as well as we should have and therefore did not understand some of the repercussions of our original choices. For example, we did not realize that our code would not fit in the allotted space until there were only a couple of weeks to go in the semester. We should have started off by doing some modifications to the mp3 decoding code from the very beginning to make it fit in the 64K of allotted space on SRAMS.