Global BFI or Rolling BFI; Which is better?

Advanced display talk, display hackers, advanced game programmers, scientists, display researchers, display manufacturers, vision researchers & Advanced Display Articles on Blur Busters. The masters on Blur Busters.
Post Reply
analog_headache
Posts: 2
Joined: 12 Dec 2019, 05:24

Global BFI or Rolling BFI; Which is better?

Post by analog_headache » 12 Dec 2019, 05:34

All,

I have searched around for ages trying to find an answer on this but I can't find anything :cry: .

If we consider a fast response OLED which is operating at 120Hz refresh rate. If it was possible for the OLED to have
a global black frame for 50% of the frame time (4.16ms) or a rolling black frame running top to bottom for 50% duty
cycle, would one be better than the other from a motion artefacts point of view? Might the rolling BFI has
more issues if you move your head?

Also as an aside, Does anyone make an OLED with global BFI? Seems like the act of writing the OLED with a
raster scan in prevents a global BFI as the displayed lines would have different 'on' times.

Thanks all

AH

User avatar
sharknice
Posts: 292
Joined: 23 Dec 2013, 17:16
Location: Minnesota
Contact:

Re: Global BFI or Rolling BFI; Which is better?

Post by sharknice » 13 Dec 2019, 13:36

Global is better. If you display the bottom of the frame later than the top of the frame motion is off by that time difference.

The only advantage to scanning is you could reduce latency by displaying the frame data as it comes in, instead of waiting for the entire frame then displaying it. There are plenty of disadvantages to doing it that way though.

User avatar
Chief Blur Buster
Site Admin
Posts: 8804
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Global BFI or Rolling BFI; Which is better?

Post by Chief Blur Buster » 13 Dec 2019, 13:45

sharknice wrote:
13 Dec 2019, 13:36
Global is better. If you display the bottom of the frame later than the top of the frame motion is off by that time difference.

The only advantage to scanning is you could reduce latency by displaying the frame data as it comes in, instead of waiting for the entire frame then displaying it. There are plenty of disadvantages to doing it that way though.
Actually, amazingly, it depends on the sync tech you use!
Synchronizing the game’s time with the photons hitting your human eyeballs.

FIrst, Understand Display Scan Out Behavior On LCDs

First, watch www.blurbusters.com/scanout and come back to this post.
If you don’t want to click that link, please click play on this 2ms BenQ ZOWIE monitor... High speed video of an LCD refresh cycle in realtime. It’s flashing 4 images rapidly at 60fps, 1 image per refresh cycle.

phpBB [video]


There’s also a high speed video of an OLED there too. Non-strobed OLEDs usually scans out in exactly the same way as a non-strobed LCD. Their behaviour only changes when you’re doing low persistence behaviours because OLEDs do not have a backlight that can be indepedently (separately) strobed. But I want to cover LCDs first so you can at least understand how this works. Now, For strobed LCDs (video of one at www.blurbusters.com/lightboost/video ...) — they use global-flash strobing.

1. LCD with VSYNC ON + Strobed = gametime:photontime is more syncd
Why? VSYNC ON is global, and strobed is global/

2. LCD with VSYNC ON + Nonstrobed = bottom edge has more lag than top edge
Why? The globalness of VSYNC ON combined with sequential raster delivery to the display in www.testufo.com/scanout

3. LCD with VSYNC OFF + Strobed = top edge has more lag than bottom edge
Why? The screen scans out in total darkness, and the freshest VSYNC OFF frameslices at bottom reveals when whole screen is flashed

4. LCD with VSYNC OFF + Nonstrobed = gaimetime:photontime is more syncd
Why? The frameslice streaming is in sync with the rolling scan. VSYNC OFF frameslices is scanout-following, so the higher the framerate, the more frameslices, the more linear gametime increases along the vertical dimension of the screen, as the screen scans out.

1. LCD with VSYNC ON + Strobed
2. LCD with VSYNC ON + Non-strobed

- For strobed, the panel is refreshed in dark, flashed in VBI, as global visibility. The globalness of VSYNC ON is in sync with the globalness of the global strobe flash. Zero scanskew at www.testufo.com/scanskew
- For nonstrobed, photon visibility is realtime in scanout. The globalness of VSYNC ON versus the scanout (delivery-based latency, www.blurbusters.com/scanout) creates a latency gradient. Scanskewing at www.testufo.com/scanskew

Image

1. LCD with VSYNC OFF + Strobed
2. LCD with VSYNC OFF + Non-strobed

Different gametimes in different frameslices that are streamed onto the screen mid-scanout, during VSYNC OFF.
- For strobed, the panel is refreshed sight-unseen (backlight off, screen is dark) top to bottom. The sequentialness of VSYNC OFF frameslice streaming versus the globalness of strobing, creates the reverse latency gradient with more lag at top than bottom, because the bottom just finished refreshing in dark and the backlight finally strobes during VBI. Now the masterpiece (aka “one refresh cycle”) is seen by human eyes, but the top edge is now containing the oldest VSYNC OFF frameslices from earlier gametimes. Ergo, more lag for top edge.
- For nonstrobed LCD, photon visibility is realtime in scanout. So VSYNC OFF frameslice streaming is in sync with delivery scanout.

Image

Summary

If you want MOTION PERFECTION (zero stutter, zero blur, gametime:photontime sync)
- Use VSYNC ON + Strobed

If you want LATENCY CONSISTENCY
- Use VSYNC OFF + Nonstrobed
- Use VSYNC ON + Strobed

If you want LOWEST LATENCY (despite motion blu & inconsistencies)
- Use VSYNC OFF + Nonstrobed

Now, Understand Scan Out Behaviour On OLEDs

OLEDs also have similar scanout behaviour, as seen in this high speed video:

phpBB [video]


Strobing on OLEDs sometimes have to behave differently because there’s no independent light source separate from pixel refresh source like for LCDs.

As a result, strobing on most OLEDs are almost always rolling-scan strobe (some exceptions apply, as some panels are designed differently OLED transistors can be preconfigured in scanout refresh, and then a illumination voltage does a global illumination at the end).

However, most large OLED panels have to do a rolling-scan strobe for reducing persistence. Also, rolling strobe on OLED can be fractional refreshes, so OLED BFI can actually be arbitrary lengths unrelated to refresh cycle length. Since the off-pass can chase behind the on-pass simultaneously on the same screen at an arbitrary distance, much like it did on the Dell UP3017Q monitor. Like changing the phosphor of a CRT to a shorter or medium persistence (except it’s a squarewave rather than a fade wave), CRT phosphor persistence length being unrelated to refresh cycle length. So BFI isn’t necessarily integer divisors here, and the meaning of “strobing” vs “BFI” is blurred into one meaning.

Custom OLED Rolling Scans

Image

VSYNC ON + OLED sample-and-hold = Same as nonstrobed LCD behavior
VSYNC OFF + OLED sample-and-hold = Same as nonstrobed LCD behavior
VSYNC ON + OLED rolling strobe = Same as CRT behavior = bottom edge has more latency than top edge
VSYNC OFF + OLED rolling strobe = Same as CRT behavior = same average latency throughout screen

This is Blur Busters!

As you already know, Blur Busters is the experts on explaining these topics to advanced end users. We’re the only website that can explain this in easy Popular Science terminology without looking like an engineering journal.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

       To support Blur Busters:
       • Official List of Best Gaming Monitors
       • List of G-SYNC Monitors
       • List of FreeSync Monitors
       • List of Ultrawide Monitors

analog_headache
Posts: 2
Joined: 12 Dec 2019, 05:24

Re: Global BFI or Rolling BFI; Which is better?

Post by analog_headache » 16 Dec 2019, 09:02

Thanks for both of you guy's responses. Very helpful and informative.

If considering a VR type headset and OLED panels such as Oculus running at 120Hz then the real differential between a global impulse display compared to a progressive scanned out one (with a rolling clear following the image) is the ability to deal with the scan-out skew. Both types are able to deal with motion blur pretty well at 120 Hz with a low persistance image but only the global one can eliminate the scan-out skew.

1) I take it there isn't any other methods of reducing scan-out skew other than global showing of the image and faster refresh.

2) Have you seen many displays that use a global show of data by cramming the data into the first part of the frame and then using the front porch to show the global image? This would reduce the latency associated with storing a frame.

Keep up the brilliant work. I am learning lots here from your site

AH

User avatar
Chief Blur Buster
Site Admin
Posts: 8804
Joined: 05 Dec 2013, 15:44
Location: Toronto / Hamilton, Ontario, Canada
Contact:

Re: Global BFI or Rolling BFI; Which is better?

Post by Chief Blur Buster » 19 Dec 2019, 02:37

analog_headache wrote:
16 Dec 2019, 09:02
2) Have you seen many displays that use a global show of data by cramming the data into the first part of the frame and then using the front porch to show the global image? This would reduce the latency associated with storing a frame.
Infinite-speed data transmission speed is not possible, so there's no way to globally show the image at zero latency.

Scanout skewing almost completely disappears once scanouts reach a sufficiently fast velocity such as 1/240sec.

The art of cramming a two-dimensional image through a one-dimensional wire, means you're transmitting pixels one at a time. In this case, left-to-right, in rows, top-to-bottom. This is serializing a 2D image into a 1D medium, and we've standardized on that direction globally for almost the last 100 years since the first analog television. A huge amount of world languages are read left-to-right, top-to-bottom. And most calendars are sequenced left-to-right, top-to-bottom too. This common standardized human direction kind of mirrored into pixel delivery direction too -- the delivery order of uncompressed video imagery. It remains equally true for a 1930s analog TV broadcast or a 2020s DisplayPort connection.

However, you can transmit the image faster, using Quick Frame Transport.
See FAQ: Understanding Quick Frame Transport. It's simply using a higher scanrate to transmit the pixel rows faster. It's good for delivering global refreshes sooner, for "VSYNC ON required" architectures (e.g. virtual reality).

However, it's also got a useful double-edged sword in reducing strobe crosstalk by tilting the scanout:VBI ratio. A Quick Frame Transport acceleration factor of 2x means 50% is done frame transmission and 50% is done VBI. For real-time scanout panels, if you scanout a 120Hz refresh cycle in 1/240sec, that's 1/240sec of idling between refresh cycles (4.2ms), which is big enough to hide GtG in the VBI. That's why strobing looks so much better at 120Hz than 240Hz on a 240Hz LCD, far less strobe crosstalk, because you've crammed the pixel response hidden, unseen by human eyes, in the blanking interval. I've repeatedly written about this since year 2013. This is already being done routinely with strobe backlights, it's why strobe backlights on LCD gaming monitors have become so good, the use of accelerated scanout tricks to "Cram The GtG Elephant Through The VBI Drinking Straw" -- make the VBI several milliseconds and make GtG as fast as possible. That's the magic recipie to make LCD motion clarity bottomless (unbounded). It's getting easier with Talbot-Plateau Theorem (flash twice as bright for half as long = same brightness) with modern superbright LEDs, even moreso than low-persistence OLED. (The Oculus Rift OLED is 2ms persistence, while Valve Index LCD is 0.3ms persistence -- one sixth the motion blur of the Rift OLED!). It definitely uses a lot of tricks up the wazoo, including quick frame transport for the one-stone-two-birds effect of Quick Frame Transport and Strobe Crosstalk Reductions.

Also, did you know variable refresh rate is simply a variable-sized blanking interval? (Varying back porch). Basically, it's fixed horizontal scan rate (constant transmission of scanlines per second). Except a variable number of dummy blanking scanlines are used to temporally space apart the refresh cycles. So when a game presents, it suddenly end VBI and begins frame transmission (ends the porches, start of new active refresh cycle). If you are a software developer, you may be surprised to learn frame presentation aka Present() instantly triggers the start of a new refresh cycle .... the monitor is actually slaving to the computer whenever the frame rate is within the VRR range -- aka VBI time tolerances (min size,max size). Instead of a fixed refresh cycle schedule, the monitor actually waits (in a roundabout way) for the game to begin delivering a frame!

In fact, VRR is such a minor modification of a 1930s raster scanning methodology, that FreeSync successfully adaptors into the analog domain (using a 1:1 HDMI-to-VGA adaptor + Radeon card + ToastyX forcing), and works on certain forgiving CRT tubes.

Image

Image

VSYNC and VBI are often used interchangeably, but in practical terms, VBI = all vertical porches + vertical sync added together. Porches are simply overscan (black pixels that are usually offscreen), while sync is the synchronization marker (Both in the analog and digital eras).

This raster hierarchy is almost 100 years old, used since the first analog CRT television broadcasts! Completely surviving into the digital era as digital padding on DisplayPort and HDMI cables today -- the SIgnal Timings (Custom Resolution Utility Numbers) have been commandeered into many realms like Quick Frame Transport (big VBI) and Variable Refresh (variable VBI), but are just de-facto fundamentally minor modifications to a 1930s raster signal hierarchy.

If you're beyond your middle age, you remember the VHOLD adjustment -- which often caused a rolling black bar on old analog TVs from 1970s and earlier. Quick Frame Transport simply means a VHOLD black bar that's sometimes taller than the active image (and a correspondingly higher horizontal scanrate in order to maintain the same vertical refresh rate). Variable Refresh Rate simply means the VHOLD black bar can vary in thickness between every single refresh cycle. Yes, all of them, FreeSync, VESA Adaptive-Sync, HDMI VRR, and even the behind-the-scenes behaviour of proprietary G-SYNC. It's really that simple if you understand the classic raster.
Head of Blur Busters - BlurBusters.com | TestUFO.com | Follow @BlurBusters on Twitter

       To support Blur Busters:
       • Official List of Best Gaming Monitors
       • List of G-SYNC Monitors
       • List of FreeSync Monitors
       • List of Ultrawide Monitors

Post Reply