I've been testing the VAR-SOM-MX6 dev kit, and have noticed that the SATA write speed is well below what I would expect.
Both using a custom app and dding zeros to 2 separate SSD drives, I'm maxing out at around 96MB/s, less than a third of the rated speed of a SATA II interface.
Is there anything I'm missing here? I've looked through the IMX6DQAEC datasheet, and can't find anything about the read/write speed being less that 3.0 gbps. Could it be a limitation of the dev kit? Could anyone point me in the direction of the driver?
The SSDs I'm using are a 1tb Crucial M550 and a 120gb Kingston HyperX, and I'm running the Linaro Ubuntu 11.10 distro from the Variscite Wiki.
Thanks in advance.
The SATA II's theory speed is 300MB/s, but actually, it can't realize this speed because of many reasons.
I have test it on SabreSDP, its average speed is 124.6MB/s（64G Kingstone,Read) and 109.5MB/s(64G Kingstone,Write).
What is the physical limit on the iMX6 SATA interface throughput when using a fast SSD (>=480MB/s)?
In other words, what would be the maximum read and write throughput be if we could optimize all SW layers as much as possible?
Would it be possible to increase the throughput substantially from the ~120MB/s range or would we only gain small improvements (<10%)?
There are many factor (SW or HW)to influence SATA performance.
So, we have no such accurate data. But you can do some tuning works on SATA device, such as modifying FIFO length, AHB burst length and so on.
You can directly use memtool to write related registers. But it seems that this SATA IP don't provide the access to FIFO and burst size register for custom. The only register you can use is SATA_P0DMACR.