MDFourier: Micro SD Roundup 3: MiSTer, SSDS3 and Samsung EVO Select Holds Strong

bfbiii

June 4, 2020

1 MDFourier Notes

These series of quick notes are meant as stand alone bits of interesting data we find along while developing and polishing MDFourier. For the full documentation and the rest of the notes, please visit http://junkerhq.net/MDFourier.

2 Micro SD Roundup 3: MiSTer, SSDS3 and Samsung EVO Select Holds Strong

The search for a perfect micro SD card for certain ODE solutions has continued, matured, and is ready for a big update. If you are not familiar with the two issues being studied, access noise, and “audio stretch,” please check out my earlier notes.

First, I refined my testing methodology. While it was already easy to measure access noise with a simple hack by Artemio of his own software, it was not so easy to test for audio stretch with such a hack. Thankfully MDFourier does not require a user to measure a console for an hour or more to get one reading, but that was the sort of test I needed in order to isolate occurrences of the stretch on these cards. But using Artemio’s hack as inspiration, I created a one hour long WAV file: silence on the left track (isolating any access noise) and a series of 120 BPM tones on the right track, so I could both easily see and hear any occurrences of stretch.

A short sample of the hour-long test file.

This was used as the default CDDA for the PC Engine CD 240P Test Suite, and with a click of a button, I was able to make one hour recordings of my test… over and over… and over again.

The result was I could reliably determine in a multitude of ways which cards would stretch on the SSDS3 and which would not. Right off the bat any card that stretched would produce a track that was simply too long. And as it turned out putting the recorded tracks in a DAW made for easy analysis, too.

Hour-long example below, the 4 gaps in the waveform are the 4 stretches.


PIC

Figure 1: Hour-long example using Transcend 330S 256GB. The 4 gaps in the waveform are the 4 stretches.


Now the stretch zoomed in, as well as the access noise zoomed in even more.


PIC

Figure 2: Stretch zoomed in using the Transcend 300S 256GB.


Audio example of stretch.

Interestingly you can see and hear how dramatically the access noise changes in these moments as well.

Cards were tested multiple times, and cards that stretched would usually do so 3 to 4 times in an hour; no card that stretched could make it an hour without stretching; a single card did not stretch in all the same places each time it was tested.

I also tested these cards on MiSTer’s PC Engine core and will get right to the point with MiSTer.

No cards tested exhibited any audible access noise on MiSTer’s digital output. The noise floor is unaltered during access on MiSTer over HDMI.


PIC

Figure 3: Mister’s normal noise floor at 96kHz HDMI out



PIC

Figure 4: MiSTer’s SD Access at 96kHz HDMI out


On MiSTer’s analogue output the noise during access is also respectably low, though definitely audible.


PIC

Figure 5: MiSTer’s analogue output noise


Furthermore, no cards tested exhibited audio stretch on MiSTer. The absolute shortest explanation for this is that MiSTer has a massive cache resource on its ARM side, and therefore even an extremely slow card will not trip up CDDA streaming. MiSTer can load that cache fast as well. In counterpoint, The SSDS3 cache alone is about 3.5 times smaller—it holds 4,704 bytes in cache (2352 bytes read at a time). The result is if a micro SD card slows down enough, what makes it to cache is insufficient, and we get the data… delaaaaaayed… the stretch you hear above.

But there is a twist. In its current configuration, the SSDS3 can execute a command to the “CD-ROM” in as little as 2ms. This is one of the dozens of things we measure with MDFourier. The command delays for SSDS3 are extremely fast. They are barely delays at all! 2ms is much faster than any OEM PC Engine CD console.

Reference: recapped Super CD-ROM2 Compare: SSDS3 with SanDisk Extreme


PIC

Figure 6: Access compared between Super CD-ROM2 and SSDS3 with SanDisk Extreme


Reference: recapped Super CD-ROM2 Compare: SSDS3 with Transcend 330S


PIC

Figure 7: Access compared between Super CD-ROM2 and SSDS3 with Transcend 330S


Talking this over with Terra Onion SSDS3 developer Neodev, he believes–given the extra time allotted–it *might* be possible to simply execute additional reads and hold more in cache before issuing commands. He posits that about 4 double buffered reads could get the SSDS3 over the troublesome hump. The SSDS3 CPU is 150 MHz, and has many other tasks to perform, so there is no guarantee. Fingers crossed.

And therefore a side note: should the SSDS3 (and likely the MegaSD) firmware be altered to navigate cards that now exhibit stretch without issue, any low noise card will be the best choice for those devices, and you can ignore everything I’ve studied here about audio stretching!

Now the results of several cards, their basic access noise, and whether they will stretch on the SSDS3.

To judge SD access noise for all cards on the same scale, I used The Sandisk Ultra 400GB as the reference, and limited frequency analysis to 100Hz and above (that is “-s 100” in extra commands)


PIC

Figure 8: Limited analysis options


MDFourier’s “relative noise floor” calculation will be the published spec. Of course to truly appreciate the differences in noise requires more elaborate study. I am doing this in shortcut, but I will also list my subjective appraisal based on further analysis in parentheses.






Model CapacityNoise Floor Loudness Stretch





Samsung EVO Select 256GB -54.7881 dBFS(Medium Loudness)No Stretch
SanDisk Ultra 400GB -45.614 dBFS (Loud Access) No Stretch
SanDisk High Endurance 256GB -48.7099 dBFS(Loud Access) No Stretch
SanDisk Extreme 128GB -49.897 dBFS (Loud Access) No Stretch
Delkin Advantage 256GB -48.7046 dBFS(Loud Access) No Stretch
Kingston SDR104 64GB -51.4886 dBFS(Loud Access) No Stretch
Transcend 300S 256GB -59.3418 dBFS(Quiet Access) Stretch
Transcend 330S 256GB -59.5198 dBFS(Quiet Access) Stretch
Lexar Pro 667x 256GB -59.4606 dBFS(Quiet Access) Stretch
Silicon Power Superior Pro256GB -59.5641 dBFS(Quiet Access) Stretch





Quiet access and no stretch would be the perfect combo, but as it stands the 256GB Samsung EVO Select still remains the best compromise. Note that one person has reported to me that a 500GB EVO Select did stretch for them. I do not have any additional details on that case, unfortunately. We did not test the 500GB EVO Select because it was cost prohibitive. We did test the 32GB, 64GB, and 128GB EVO Select cards, and they passed without issue as well, but ultimately for extensive testing and repeated testing I decided to stick to the 256GB card; that is the most vetted choice. I should also mention that Neodev himself ran across a 32GB Samsung EVO (NOT SELECT) card from about 2018 that stretched on him. Supposedly EVO Plus and EVO Select cards are identical, and some folks even think EVO cards are the same as both. Leaving all of the theorizing aside, the 256GB EVO Select has been rock solid through all of this testing.

I have mentioned the surmised cause of the audio stretch and have not delved into why we hear additional access noise with the SSDS3 and certain cards. This is mostly because in that regard I have more theory than science. It’s also not something I can directly measure with MDFourier. However, in brief, my THEORY is noise from the power rail on the micro SD cards is making its way into the audio stream on the SSDS3; I assume some cards are more power hungry and are simply creating more of that noise. That’s a guess. There is precedent for taming the noise on these rails in circuit design, and there is definitely a loose correlation between faster cards and more noise in our recordings. And those two factors are the basis of my theory. Like all things, this can be studied, measured, refined or thrown out completely. I leave it for now. Theory. That’s it. Someone run with it! Go science!

Back to real measures.

Well sort of… I’m not currently planning on picking up additional cards to test at this time, as this sort of endeavor gets very expensive very fast, and already has. If anyone would like to see additional tests of cards we can try to organize a way for donations to be made. If not, I will happily add to this list if for some reason I buy more cards for actual personal use. Frankly, for personal use, I think I’m set for a bit.

3 Contact

bfbiii can be contacted at twitter https://twitter.com/bernardbygott.