Trouble in Promise-land

What's the first thing you do when you've got a display that has tons of interfaces and bandwidth at its disposal? Try them all at once to see if anything breaks of course. Over the course of the past few days that's exactly what I did. Unfortunately I did find a situation where things broke.

For whatever reason, if you're doing a lot of writes to the Promise Pegasus while playing music (or any other constant audio) through the Thunderbolt Display's internal speakers the audio will eventually corrupt. You can hear exactly what I'm talking about below:

TB Pegasus Audio Issue by AnandTech

This is a recording taken of me listening to music on the Thunderbolt Display (via its internal speakers) while writing a couple hundred gigabytes to the Pegasus R6. Note the introduction of what can only be described as really bad noise at the 6 second marker.

If you stop music playback and quickly resume, the problem will still be there. You have to restart the application that's using the audio codec to recover from this point. From a hardware standpoint, the codec just needs to go through an off/on (sleep/wake?) cycle to return back to normal. If you do this however and haven't stopped the transfer, the problem will creep up again. Stopping the transfer while playing back music won't fix the issue either. You have to stop the transfer and restart the music playback application for it to go away.

The issue goes deeper than that. I went out and bought a Creative Labs X-Fi Go Pro USB sound card to see if the problem stopped at the internal audio codec or extended to all USB sound devices. Unfortunately, it does even happen if you're using an external USB sound card connected to the Thunderbolt Display. Connect the same sound card directly to your Mac or use your Mac's 1/8" stereo jack and the problem goes away.

I was worried that what may appear as noise through speakers could result in data corruption over USB transfers. I ran the Pegasus write test while copying a bunch of files to an SSD attached via USB to the Thunderbolt Display and never saw any corruption on the SSD. This appears to be limited entirely to audio playback.

What's truly bizarre is I can only get the issue to appear when writing to the Pegasus, hundreds of GBs of sequential reads don't seem to produce it. Short bursts of writes don't seem to cause it either. Sending tons of data across the monitor's Gigabit Ethernet, FireWire 800 and USB ports doesn't seem to trigger it either. It appears to be an issue with the Pegasus and the Thunderbolt Display. But which device is ultimately at fault? Is it a problem with the Thunderbolt Display or the Pegasus? Ideally I'd use another Thunderbolt storage device to see if the issue remained, but I couldn't get my hands on a LaCie Little Big Disk.

I thought of something else.

First I needed to test and see if perhaps the issue was related to ultra high speed transfers. As we've already shown, the Pegasus can push as much as 1GB/s over Thunderbolt whereas none of the other bandwidth eaters come even remotely close to that. To determine if the issue was data rate invariant I wrote to the Pegasus at different speeds ranging from 480Mbps all the way up to 7.2Gbps. I tried putting SSDs in the Pegasus as well as standard mechanical hard drives. The problem remained. I got audio corruption regardless of what drives were in the Pegasus or what speed I wrote to the drives. The problem wasn't related to transfer rates.

I also took apart the Thunderbolt Display to confirm there weren't any obvious issues on the controller board (E.g. putting the Thunderbolt IC far too close to the audio controller). Nothing obvious there either.

While I was doing all of this, Apple put forth a Thunderbolt firmware update the other day, however it didn't seem to address the issue either. So I went back to my testing.

Since the problem appeared regardless of how fast (or slow) I was transferring and all I needed was another Thunderbolt storage device to vindicate either the Pegasus or the Thunderbolt Display I turned to the trusty MacBook Air.

As I mentioned in our original Pegasus review, if you have two Thunderbolt equipped Macs and a Thunderbolt cable you can actually put one of the machines in target disk mode and access its drives via Thunderbolt on the remaining Mac. You don't get super high performance but you can get around 500Mbps. Since I had reproduced the audio corruption issue at an even slower data rate I decided to give this a try.

I booted the MacBook Air in target disk mode by holding down the 't' key after turning on the machine. My MacBook Pro was connected to the Apple Thunderbolt Display and a Thunderbolt cable connected the display to the MacBook Air. This was the same setup as the Pegasus, but with the MBA in place of the Pegasus.

I wrote to the MBA just like I did the Pegasus (from a file server connected over the Thunderbolt Display's GigE, transfer rates were capped at around 500Mbps from the file server). After a couple hundred gigabytes were transferred without any audio corruption I swapped out the MBA and connected the Pegasus. I copied the same files at the same rate from the same source. After no more than 7GBs were written to the Pegasus the audio stream started to corrupt.

Based on my testing I can only conclude that the Pegasus seems to be at fault here, not the Thunderbolt Display. Given that the Pegasus was introduced prior to Apple's Thunderbolt Display it's not all that surprising that this issue made it through to production. It's unclear what the root cause is but it's hopefully something Promise can address either through firmware or a driver revision.

Update: I'm still verifying that this is indeed a "fix" but it looks like if you use a USB sound card plugged into a USB hub which is then plugged into the Thunderbolt Display then the sound corruption doesn't happen. This seems to point at noisy power as being the cause with the USB hub acting as a crude filter. It's still not ideal but this may be a workaround for Pegasus users until Promise supplies a fix.

Windows/Boot Camp Experience Dissection
Comments Locked

275 Comments

View All Comments

  • TegiriNenashi - Friday, September 23, 2011 - link

    Justification for yet another cable seems rather weak. Why do one needs sound card -- to reduce main CPU load by 0.001%? Next what is this Ethernet controller thingy?

    The main reason why 27" Cinema display sucks is its "full-HD" 16:9 ratio.
  • Constructor - Friday, September 23, 2011 - link

    1440 pixels vertically suck less than any other resolution, regardless of that other resolution's ratio.

    With the sole exception of the 2560*1600 of a much more expensive 30" panel (and utterly esoteric displays even beyond that).
  • Iketh - Friday, September 23, 2011 - link

    for better sound quality silly... you must have never watched a movie on a decked out PC... it's better than the theaters
  • Wolfpup - Friday, September 23, 2011 - link

    I would have bought one ages ago as I'd love a quality IPS or MVA/PVA panel with LED lighting...but I MUST have controls on the display itself, and I must have multiple inputs. Dell's...well actually Dell's lower end monitors have more inputs. Their higher end ones have tons of inputs, and actually start astonishingly cheap now.

    Geez...I just noticed they finally have an LED + IPS line, but it only goes up to 23" before switching over to florecent. I've currently got a 24" Studio one that's LED + TN (but it's very, very good for a TN panel) that I'll keep using until Dell or someone releases something at least as good and at least as large with IPS.
  • jecs - Friday, September 23, 2011 - link

    What I read and understand is LED is not good for color accuracy at lower cost unless you get the 3 LED matrices (RGB) or real LED which is very expensive and not suitable for entry level professional monitor like Dell or even Apple. So don't expect too soon to see the real quality LED adopted on desktop use.

    You will find real RGB LED on very high end TVs.

    Apparently low cost white LED lamps produce a bluish white and the why on higher end monitors you wont find it. The advantages in low cost LED comes from better power consumption efficiency and higher brightness.
  • repoman27 - Friday, September 23, 2011 - link

    How did you arrive at the conclusion that this is Eagle Ridge? It's clearly got 2 Thunderbolt ports, one just happens to be internal to the display. It's also a flip chip package and looks to be the exact same die size as all the other Light Ridge chips we've seen (none of which have had the same, or even decipherable markings.)

    I also don't quite grasp your block diagrams. These chips (as far as I can deduce) have connections for 4 PCIe 2.0 lanes (bi-directional), 1 or 2 DisplayPort 1.1a inputs, and 1 or 2 Thunderbolt ports (2 or 4 channels, also bi-directional). Showing "TB In" opposite of "TB out" doesn't make any sense, those should be "PCIe Lane 0-3". I'm also going to wager that there are connections for 1 onboard DisplayPort output. It does make sense that when a TB port on the host PC is operating in DisplayPort compatibility mode, that the DP signal can bypass the Thunderbolt logic. I believe the controller can pass through a DP input to either a TB port operating in DP compatibility mode or to the onboard output. Thus the 13" MacBook Pro being able to drive its built-in display and one external, or two external displays but with a dark built-in.

    Now, if a TB controller needs a DP input to drive a TB port in DisplayPort compatibility mode, devices that don't generate a DP stream themselves will need to come up with one from somewhere. Perhaps the TB controller uses the onboard DP output to feed it's own input in such situations, and then the signal bypasses the TB logic and passes through to the TB port with the DP display attached to it. This would explain why the ATD cannot drive a DP display in compatibility mode--it's already using the onboard DP output to drive the built in display, and thus there is nothing to drive one of the DP inputs.
  • Anand Lal Shimpi - Friday, September 23, 2011 - link

    I think you're actually right here. I had assumed it was Eagle Ridge due to the fact that you couldn't get DP out of the Thunderbolt port on the display but upon closer examination it looks like there's an eDP connector on the motherboard, not LVDS. If that's indeed eDP then it means Apple is routing the one DP output to drive the internal panel, which doesn't allow any more DP devices to be connected directly to the display.

    Give me a few and I'll clean up those diagrams as well :)

    Take care,
    Anand
  • Anand Lal Shimpi - Friday, September 23, 2011 - link

    Corrected, thank you for helping me see the light :)

    Take care,
    Anand
  • repoman27 - Sunday, September 25, 2011 - link

    Thanks for following up, that made my day! (There are still a few lingering references to Eagle Ridge sprinkled throughout the article though.)

    I threw together a theoretical Thunderbolt block diagram of my own, which you can check out here: http://i54.tinypic.com/8zdwci.jpg Of course this is all just based on speculation, as I'm not a Thunderbolt developer.

    Also, I was curious as to the identity of the SMSC USB hub device that didn't get a close-up, and was too blurry to make out the markings on in the full PCB shot.
  • jmmx - Friday, September 23, 2011 - link

    I see a couple of problems As you mention, no audio out jack. Why get half way there and quit? It changes the 2 necessary cables to 3. In other words - why bother.

    Price is also a bit of a killer.
    ---

    On your presentation: You may be cute, but the video is really boring with no changes. When you give statistics, e.g. screen res, how about displaying them? When you showed the board layout, show full screen and leave it up for more than 10 seconds.

    You obviously put a lot of time into this. A little more with some post production overlays of the monitor from different angles, etc.

    Good production tho with good quality image and sound.

    You do have a great site. One of the best!

Log in

Don't have an account? Sign up now