5 Replies Latest reply on Sep 6, 2020 8:36 PM by YuxianL_01

    slavefifod的数据流向

    puqi_4721621

        

      这是slave fifo中的cyfxslfifosync.h文件中的一段代码

      我对同步从fifo的接口的数据流还是不太清楚

      我希望的是FPGA通过FX3实现与PC之间的双向通信

      我的理解如下:

      FPGA->PC的数据流向(P2U)

      GPIF II 通过CY_U3P_PIB_SOCKET_0将数据写进DMAbuffer中,通过CY_U3P_UIB_SOCKET_CONS_1端口读取数据到PC中,端点endpoint用的是0x81。期间的buffer数量为8个,每个buffer大小为16KB-16bit

      PC->FPGA的数据流向(U2P)

      PC通过CY_U3P_UIB_SOCKET_PROD_1将数据写进DMAbuffer中,通过CY_U3P_PIB_SOCKET_3端口读取数据到FPGA中,端点endpoint用的是0x01。期间的buffer数量为4个,每个buffer大小为16KB-16bit

       

       

      但是我总觉得自己的理解有些问题,因为我查到的资料显示,在FPGA->PC的数据流和FPGA->PC的数据流中,P2UU2P的通道都是同时存在的,具体如下表所示

      Buffer_count

      P2U

      U2P

      FPGA->PC

      8

      4

      FPGA->PC

      4

      8

      所以还是对数据流还是很迷惑,

      希望在论坛上能得到一个比较正确的解释

        • 1. Re: slavefifod的数据流向
          YiZ_31

          你的理解问题不大,但是这个buffer的数量不可能实现,如果是8个就超过了RAM的大小。实际上slavefifosync中默认Slave FIFO channel buffer count是2。

          • 2. Re: slavefifod的数据流向
            puqi_4721621

            既然您认为我的理解没有问题

            您方便梳理一下这整个数据流向是如何从一个produce_socket到另一个consumer_socket的吗

             

            因为,我自己只是迷迷糊糊的明白  实际让我解释 我解释不清楚 

             

            还有您说超过8个buffer就超过了 RAM的大小

            这里的8个buffer是指的P2U和U2P的buffer数量总和,

            还是说在FPGA->PC的数据流向上,RAM可以同时使用8个P2U的buffer,4个U2P的buffer?

             

            还望不吝赐教

             

            另外 刚刚发现我上面的表格有个问题,更正一下

            Buffer_count

            P2U

            U2P

            FPGA->PC

            8

            4

            PC->FPGA

            4

            8

            • 3. Re: slavefifod的数据流向
              YiZ_31

              DMA buffer的总大小不得超过224k。关于DMA buffer count与DMA buffer size的计算请参考:

              DMA Buffer Count - KBA218339

              • 4. Re: slavefifod的数据流向
                puqi_4721621

                你好

                 

                在使用FX3的slavefifo2bit固件的过程中,我的PC和FPGA可以进行通信,因此我想进行测试一下我的通信速度是多大

                 

                 

                 

                但是在使用streamer的时候发现,无法使用,请问我应该怎么修改才可以呢?

                 

                 

                 

                 

                谢谢

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                 

                在 2020-07-10 15:36:45,"YiZ_31" <community-manager@cypress.com> 写道:

                 

                |

                |

                Cypress Developer Community

                |

                |

                slavefifod的数据流向

                 

                reply from YiZ_31 in USB Superspeed Peripherals - View the full discussion

                 

                DMA buffer的总大小不得超过224k。关于DMA buffer count与DMA buffer size的计算请参考:

                 

                DMA Buffer Count - KBA218339

                 

                Reply to this message by replying to this email, or go to the message on Cypress Developer Community

                Start a new discussion in USB Superspeed Peripherals by email or at Cypress Developer Community

                Following slavefifod的数据流向 in these streams: Inbox

                 

                This email was sent by Cypress Developer Community because you are a registered user.

                You may unsubscribe instantly from Cypress Developer Community, or adjust email frequency in your email preferences

                 

                |

                |

                • 5. Re: slavefifod的数据流向
                  YuxianL_01

                  如果Jul 18的问题还没解决请开一个新帖,此贴结帖了。