On 3/20/07, Thibaud Hottelier <address@hidden> wrote:
About the pulling/pushing thing: I though that I would have one process
in the usb block writing the usb_fifo data on the bus and one other
process in the channel block that would read them from the bus and store
them. This is neither pulling nor pushing right ? Can I do this with one
single process ?
I am not really sure I understand what your process does, but the way
I had thought about it was like this.
process( Read and Distribute Packets ) {
if the incoming FIFO has data in it loop
if channel == command then
write command information to command sequencer
else /* must be data */
write data information to channel sequencer
end if
end loop
}
In this process, anything coming into the USB FIFO that has either the
channel or the data endpoint as a target will then "push" that data
into those sequences.
Does that make sense?