how to take a picture fpga and verilog - fpga

I have cyclone II fpga and also ı have a camera attached to it.Fisrtly ı want to take a capture from camera and this capture is passing to fpga and ı want to take this capture from serial port.Can you give me ideas how can do this or are there any example code about this.I am working with verilog .
thanks for help...

You need to research how exactly the camera is hooked up to your FPGA and how exactly you need to communicate with it. Once you understand this protocol and it's connections, you'll be 90% of the way towards understanding what you need to do, or at least will be better able to ask more specific, intelligent questions. =)
For example, there is a chance that you are working with a camera over a bus called Camera Link. If so, you will need to read up on the protocol (e.g. starting with https://en.wikipedia.org/wiki/Camera_Link), and then determine if you are going to write a custom interface yourself in an HDL (like Verilog) or if you are going to try to obtain and use an existing design from a 3rd party.
Once you know how to get images, then you need to do the same discovery to figure out how you are going to send these images to your PC. Do you already know all about RS-232 and UARTs (or USB, or whatever you are using)? If not, you will need to learn enough to either implement these interfaces, or at least to interface with existing designs that you have obtained elsewhere.
In sort -- you really need to do more research before anyone can help you with any specific advice. =)

Related

is design compiler& encounter is for ASIC design and quartus&modelsim is for FPGA design?

Right now, I am trying on place-routing on encounter, but when I search on web, I always see the tuition about quartus routing. For curious, I try to find out the difference between two of them. However, there is not any exact answer right now. But when I moving the layout of these two tools made, I feel like quartus' layout is look like making on a settle down chip. But encounter would give me more customly feeling. Thus, I suppose quartus for FPGA encounter for ASIC. Am I right? If not, plz tell me the exact story.
Encounter is a place and route tool for custom silicon, so it can pick any cell from a library, put it anywhere within a placement block, and route metal to it on any available layer as needed. The output of Encounter is a GDSII file showing what polygons need to be created on each layer as part of the silicon manufacturing process.
An FPGA has already placed all of the available transistors and wires within the device. Quartus (or ISE, for Xilinx) maps logic into LUTs (the logic unit within an FPGA) and figures out how to connect the LUTs using available tracks between the logic blocks. The output of Quartus is a bit stream which tells what values to put in to each LUT on the device and which routing tracks to select/connect between the LUTs.

Run VHDL code that displays on monitor

I am new to VHDL and FPGA. I have a Cyclone 2, DE 1 board. I am trying to program in VHDL such that it produces an animation of something (Say an algorithm). I have worked on the board and played with switches. Now, the biggest challenge for me is to get the display. For simple programs, I load the .sof file and directly manipulate the switches. Now, I downloaded a VHDL code that draws a rectangle to understand VGA and compiled it. When I load the .sof files, it loads but I do not see anything on the screen. My question is, Should VGA involved files be loaded/run in any different manner? I see that lots of material is available for xilinx but not for cyclone 2. Can anyone help me as to how the VGA works with respect to coding, compiling and running? I know the theory, need some basic practical knowledge.
All you need is to write a VGA driver. I learned it on this site. The example is pretty suitable for one who isn't familiar with VGA. You can download example code as well. Pay attention to the timing specifications for various VGA modes at the bottom of that page.
Also this teaches how to write a Pong game. Have fun with it:).

Choosing FPGA with enough inputs

I need a FPGA that can have 50 I/O pins. I'm going to use it as a MUX. I though about using MUX or CPLD but the the guy I'm designing this circuit for says that he might need more features in the future so it has to be a FPGA.
So I'm looking for one with enough design examples on the internet. Can you suggest anything (for example a family)?
Also if you could tell me what I should consider when picking, that would be great. I'm new to this and still learning.
This is a very open question, and the answer to it as stated can be very long, if possible at all given all the options. What I suggest to you is to make a list of all current and future requirements. This will help you communicate your needs (here and elsewhere) and force you, and the people you work with on this project, to think about them more carefully. Saying that "more features in the future" will be needed is meaningless; would you buy the most capable FPGA on the market? No.
When you've compiled this list and thought about the requirements, post them here again, and then you'd get plenty of help.
Another possibility to get feedback and help is to describe what you are trying to do/solve. Maybe an FPGA is not the best solution -- people here will tell you that.
I agree with Saar, but you have to go back one step further: when you decide which technology to target, keep in mind that an FPGA needs a lot of things to run, i.e. different voltages fore core, I/O, auxiliary, and probably more. Also you need some kind of configuration mechanism as an FPGA is in general (there are exceptions) SRAM based and therefore needs to be configured at startup. CPLDs are less flexible but much easier to handle...

Image Processing on a micro-controller

I'm interested in starting a hobbyist project, where I do some image processing by interfacing HW and SW. I am quite a newbie to this. I know how to do some basic image processing in Matlab using the existing image processing commands.
I personally enjoy working with HW and wanted to a combination of HW/SW to be able to do this. I've read articles on people using FPGAs and just basic FPGAs/micro-controllers to go about doing this.
Here is my question: can someone recommend languages I should consider that will help me with interfacing on a PC? I image, the SW part would essentially be a GUI and is place-holder for all the processing that is done on the HW. Also in-terms of selecting the HW and realistically considering what I could do on the HW, could I get a few recommendations on that too?
Any recommendations will be appreciated!
EDIT: I read a few of the other posts saying requirements are directly related to knowing what kind of image processing one is doing. Well initially, I want to do finger print recognition. So filtering and locating unique markers in the image etc.
It all depends on what you are familiar with, how you plan on doing the interface between FPGA and PC, and generally the scale of what you want to do. Examples could be:
A fast system could for instance consist of a Xilinx SP605
board, using the PCI Express interface to quickly transfer image
data between PC and FPGA. For this, you'd need to write a device
driver (in C), and a user-space application (I've done this in
C++/Qt).
A more realistic hobbyist system could be a Xilinx SP601
board, using Ethernet to transfer data - you'd then just have to
write a simple protocol (possibly using raw sockets (no TCP/UDP) to
make the FPGA side Ethernet simpler), which can be done in basically
any language offering network access (there's a Xilinx reference
design for the SP605 demonstrating this).
The simplest and cheapest solution would be an FPGA board with a
serial connection - you probably wouldn't be able to do any
"serious" image processing with this, but it should be enough for
very simple proof-of-concept stuff, although the smaller FPGA devices used o these boards typically do not have much on-board memory available.
But again, it all depends on what you actually want to do.

Using Accelerometer in Wiimote for Physics Practicals

I have to develop some software in my school to utilize the accelerometer in the Wiimote for recording data from experiments, for example finding the acceleration and velocity of a moving object. I understand how the accelerometer values will be used but I am sort of stuck on the programming front. There is a set of things that I would like to do:
Live streaming of data from the Wiimote via bluetooth
Use the accelerometer values to find velocity and displacment via integration
Plot a set of results
Avoid the use of the infrared sensor on the Wiimote
Please can anyone give me their thoughts on how to go about this. Also it would be great if people could direct me to existing projects that utizlise the wiimote. Also can someone suggest what would be the best programming language to use for this. My current bet is on using Visual basic.
Any sort of help is greatly appretiated.
There's some famous projects using the Wii remote by Johnny Lee Chung.
They use C# and you can download the source.
By and large they are the reverse of what you want - they use the camera, but you should be able to use the source as a starting point and to analyse the data coming from the remote.
NOTE: At the time of writing the Wiimote library linked to is unavailable, but as it's an MSDN site it should be back soon.
Addendum: It looks like this is now available on Codeplex
This also has a link to various applications built on the library. Wii Drum High looks like it just reads the accelerometer.
I have written some software to do some of what you ask. Check out wiiphysics.site88.net.
You will find integrating the acceleration data very tricky to get any decent results.
It is written in c#.
One problem is what are your initial conditions (ok if you start at rest), the other is that by the time you get to displacement you will have a lot of noise (the acceleration data from a wiimote is only 8-bit)

Resources