I have 3 endpoints 2 out bulk endpoints and 1 in endpoint. I want to implement a slavefifo interface.
Is one consumer p-port socket is enough to transfer data from 2 out endpoints are should I create an other consumer p-port socket?
Thanks in advance
I can not really understand why you decide to use 2 out endpoint with the slave fifo interface. Do you already read the application note to AN65974
Designing with the EZ-USB® FX3™ Slave FIFO Interface? You may get your solution out of that document, otherwise you can also describe your application more detailed. e. g. why you need the 2 end point and why both ep's have to be connected to the GPIF on the p-port?
I think the eaysiest way which also should work fine for most applications is to use one p-port socket.
I have read the document before I will read it once again to make things clear. But I need 2 out endpoints and 2 in end points to suit my requirement because I am connecting the FX3 to a zynq-7000 data from one out end point goes to the arm processor and from the other goes to the programmable logic. But as for my knowledge I know I cant send data from both sockets at a time .I will manage it by changing the address based on the flag settings.
Thanks for your reply
I have gone through the document about slave fifo interface and also the api guide on dma channels. I didnt see any model where 2 endpoints are connected to 2 sockets all the time only many to one or one to many models are available .
So I cannot connect 2 out endpoints to 2 consumer sockets??
Is this what u wanted to say??
sorry, I forgot... you may look at the GPIF II designer project which comes with the slave fifo example in the application note (you can also take a look at the example with the 5-bit addressing mode http://www.cypress.com/?rID=59936). Yes these examples still have no use of 2 endpoints, but if you set up your states by using the address lines and setting up different threads in the states of data. Then you able to connect the endpoints to different sockets.
Your soultion should work by using the address lines of the GPIF. There is actually no solution or example available anyway no example that I know. But looking maybe into the different states of the slave fifo project may give you a answer how to setup your prefered system.