I am looking for some interesting project ideas for a Masters Project. An idea/project that can be implemented on a Xilinx/Altera board and can be "seen" working.
I would appreciate any suggestions, at the least they would give me a direction to think in.
I would like to see a software defined radio framework with the 'software' written in 'C' for the target DSP/microcontroller (avoid any object oriented languages or libraries). The Sandbridge ISA and project looked very interesting along these lines and the front ends could be put on the FPGA.
How about this : Take the new Xilinx Spartan 3AN, and port the Lattice Mico32 open source SoftCPU to this, and implement a version that runs from on-chip flash ( ie fast serial memory access ) - Publish on the web. If you have spare time :) Add register frame support to the Mico32 (allows registers to map into on chip RAM), and also add a hardware threading system, that gives two iterleaved Mico32's. - Publish on the web.
I understand the must be seen working aspect of any project especially when you have to demonstrate it to non-FPGA knowledgeable supervisors/externals. However, don't forget that a future employer might ask you some different questions on your project. He might for example put more value on how you validated your code, ask you if you eyeballed some waveforms or did you write a proper selfchecking testbench, did you use any properties/assertions in your code, how did you derive the architecture, did you write any webpage/documentation/user guide, is your code commented/readable/maintainable, did you write any synthesis constraints, how did you handle async inputs, false/multi-cycle path etc etc.
So for these reason I would select a smallish project something that you can implement in about 50% of your available time and then spend the other 50% on trying to answer/implement/study some of the above issues.
Now for the visual aspect you could drive a monitor and do some image processing as mentioned by others however this might complicate your selfchecking testbench, so I would focus on something like a forward error correction code, or some communication protocol. You can use 2 UARTs (USB2serial cables are cheap and seem to work OK) to show the input and output datastreams. You can then use some switches to introduce errors/show error recovery/different scenarios etc.
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.