I have started to work with FPGAs recently, and have been running into a few problems
-
Multiple modules using a single peripheral gets very confusing with awkard combinational logic
-
Interacting with multiple resources from a single processor, or interface is a little bit of a pain itself
-
Trying to figure out how to incorporate other peoples code into my own is itself very frustrating.
I have been working on the older nokia camera which busonerd had cracked a while ago to work with my http://www.charmedlabs.com XPORT FPGA, and finally I got it working to display things on my Nintendo DS (Another post) but a coworker had introduced me to wishbone
wishbone is a protocol for HDL, it can be written in VHDL or verilog, and can be used to
-
Share a single peripheral
-
Interact with multiple resource from a single processor (soft or hard)
-
Since its a protocol then the barriers between sharing source is broken down a little bit more
I dont see too many FPGA projects on this site, but Im sure that all the intelligent people I learn from here will be getting to them in due time, and I would like to point these peoples attention to http://www.opencores.org The site is not the best, but it does have some fairly good examples.
I am working on a wishbone version for the camera right now, that I can hopefully post on a soon to come website. I hope that this protocol will become popular, making the task of designing verilog interfaces for LCDs, Cameras, and other exciting things not a redundant process.
Perhaps in the future we can get a scripting language or gui interface to wirite our verilog, or VHDL code for interconnects, and arbitrators.
Cospan