Code Monkey home page Code Monkey logo

Comments (5)

CottonCollecter avatar CottonCollecter commented on June 2, 2024

BTW I'm using USB3.2 GEN1 cable&USB3.2 GEN1 interface.

from pcileech-fpga.

ufrisk avatar ufrisk commented on June 2, 2024

FIFO side of this chip is 32-bits @ 100MHz, i.e. 400MB/s dynamically shared between rx/tx.

Protocol overhead in PCILeech (in the implemention I've got) is 1 dword per / 7 dwords of data transmitted. i.e. x 7/8

PCIe TLP overhead for larger rx is 12bytes per 128 bytes received, i.e. x 128 / (128 + 12).

400 * 7/8 * 128/(128+12) = 320MB/s theoretical when only bulk receiving data. Add to this that some time is required for transmitting data over this shared bus as well it will eat up max performance.

People on some really fast Intel computers have reported close to 250MB/s on optimal workloads, and this is very close to the theoretical max.

In reality 180MB/s isn't that bad. It's close to the practical max of the FT601 chip. If you can find a better chip please let me know.

from pcileech-fpga.

CottonCollecter avatar CottonCollecter commented on June 2, 2024

Thanks for your quick answer! According your answer,could i get a conclusion that cable does effect the speed? Or it effect with CPU&cable? Before u answer I just found some information from a DMA board provider,they said use 3.2gen2 cable&interface could improve speed to 240MByte/s.

from pcileech-fpga.

ufrisk avatar ufrisk commented on June 2, 2024

I don't think USB 3.2 will make a difference in itself since the FT601 is not capable of it. But a nice higher speed USB controller and a really fast CPU definitely makes some changes. And as you mention speeds around 240 MB/s have been possible, and it's very close to the theoretical maximum... so there isn't a whole lot more I can do as things stand right now...

from pcileech-fpga.

CottonCollecter avatar CottonCollecter commented on June 2, 2024

Ok thanks i'll keep research this part!

from pcileech-fpga.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.