Forum Discussion
Altera_Forum
Honored Contributor
13 years agoHi Dave,
I guess it would have been helpful to include a screenshot of the block diagram for people without Quartus. See attached. As to the interface, I'm not actually using GPIO for any heavy lifting. The FPGA PCB connects via the BBxMs camera header which exposes the OMAP CCDC camera interface which we plan to use in 8-bit parallel mode. This interface goes through the silicon on the OMAP which supports resizing memory mapping, etc. and is already integrated into vidoe4linux as the omap3isp. The header also includes an i2c bus, which goes to an SX1503 16 line IO expander. We did because IP cores for i2c were absurdly expensive and we really don't need much other than: reset, on/off, mode, go, test, and fault. Also, we are already on rev 2 & 3 of some of the PCBs in the system, and already have an alpha version of the kernel driver written so I'd like to avoid changing interfaces if possible. The BBxM doesn't expose the GPMC interface due to the POP memory and I wanted to leave the main expansion header open just in case. Regarding your comments about modelsim. That seems like really sound advice and is certainly consistent with all I've been reading. I've already been studying the datasheets timing diagrams quite carefully. Is there a good example of what you are suggesting regarding the interface? I'm unclear as to what I would actually create. Are you referring to a testbench for the modules, by which I mean a verilog file that uses always blocks with timing delays to generate signals which are in turn inputs to my modules? That seems simple enough (I think) for the inputs, but not applicable to the outputs insofar that there are timing requirements on them as well. As an aside, small world. I'm actually over at Carnegie Observatories working on this system and the instrument (a multi-fiber optical spectrograph for the Magellan Clay Telescope) all week. --EDIT-- Also, I forgot to mention: I'm very open to good books anyone knows. I've read through basic tutorials online, but I'm essentially trying to bootstrap myself to the level of "build your own high-speed webcam system from scratch" and most guides I've run across just don't seem to go into enough depth.