theTDC wrote: ↑16 Mar 2021, 14:44
MCLV wrote: ↑16 Mar 2021, 03:24
There is no reason why many lines (or even all of them) cannot be updated simultaneously. However, you have to understand that consumer products are not focused purely on overcoming technical limitations. That is done in research labs. In commercial world, it needs to be technically feasible and cheap. Huge emphasis is on the cheap part. It also often important that the technical solution is "proven". I put quotation marks there because it can mean that it is proven to work just passably. I sometimes say that these methods are proven in a way that it's proven that it doesn't really work as it should
But any better alternative means additional development cost, risk and maybe even 1$ increase of bill of materials/parts. And you better find a really good argument to explain this to management
Whether you can do it depends a lot on the industry, company culture, personality of your superiors and also on your ability to explain and communicate.
All of them? Through what physical process does this happen? Even when writing data to memory a CPU can’t just write to all of them at the same time, so how does that work? We would need a direct line linking the memory the image is stored in with the pixel itself. That seems... like a whole lot of wires for a 1080p display. About 2.075 million of them, directly hooked up to the memory.
To both of you --
RAM and screens are refreshed in similar ways -- row-and-column addressing technique.
This reduces the number of kilometers of microwires needed, since you only need to light up one vertical wire and one horizontal wire -- the intersecting area is the subpixel being controlled.
But screens are special in a way in that they need some more extreme optimization needed due to the long distances of those panel microwires carrying fairly high voltages (>10 volt) to remote transistor gates that need to be run long enough to cause the active transistor to switch. But the less time you have per pixel, the less power per active matrix transistor and GtG becomes slower at higher refresh rates, unless you do clever workarounds.
Techniques have been done to increase the number of channels of simultaneous pixel refreshing, with dramatic increases in panel electronics complexity.
Can't Refresh All Pixels At Same Time
Practically, there's definitely no way to refresh all pixels simultaneously. But we don't need to. We just need to give a good fast voltage kick to the pixels at line refresh. GtG is physical momentum of LCD molecules of a
Liquid
Crystal
Display -- rotating molecules behaving as light valves to block/unblock polarized light.
See
LCD GtG as Soccer Balls Metaphor to understand the law-of-physics behavior needed for fast GtG.
Each LCD pixel needs a running start for a hard fast GtG kick, so the soccer ball can fly fast on its own momentum while you're starting ar running start for the NEXT soccer ball (next LCD pixel).
The LCD pixel soccer ball kick lasts less than a microsecond!
If we tried to kick 2 million soccer balls simultaneously with strong momentum, there will be massive side effects such as voltage droop from the big instantaneous power surge over millions of microwires, crosstalk inteference between adjacent voltage surges, not to mention the (multi)million of dollars (per panel) worth of concurrent chips/processors necessary to do 2 million pixels realtime simultaneously with thousands of kilometers worth of microwires wired concurrently to multiple chips running in parallel to operate 2 million soccer ball kicks concurrently. A gaming monitor for well over $100M prototype or $1M mass-manufactured. Want one?
Now, if we could refresh all pixels simultaneously in just 1 microsecond, the chips then idle -- for 999999/1000000ths of a second. What's stopping it from being able to refresh at 1 million hertz? (Blue-phase LCDs can have GtGs in microseconds). Inefficient utilization of chip resources. Waste, waste. Why?
But There's Another Reason: Worse Input Lag If We Refresh Panel Globally
Also, it's more efficient latency-wise to stream the cable directly onto the panel. Since 1920s analog televisions, we've been serializing 2D data into 1D, via a raster mechanism. All modern signals are serializations of 2D data into 1D --
Blur Busters Custom Resolution (CRU) Glossary 101 / FAQ ...
I can even get
FreeSync working on an analog CRT because it's just essentially a variable-thickness VHOLD black bar spacering between refresh cycle. It's impressive how minor a signal modification raster VRR is, and how much in common a 2020's DisplayPort signal has with a signal being used for Baird 1920s prototype Nipikow mechanical TV.
For ~100 years, we've been sticking to the same signal methodology of a serialization of 2D-into-1D (wire/broadcast/analog/digital/delivery/file/whatever). Heck,
we've been rasterizing for more than 150 years if we don't neglect to consider those 1860s-1870s mechanical fax machines (pendulum-powered
pantelegraphs and resulting
raster images), which is also a raster-based 2D delivery of image data over a 1D telegraph wire. Anyway, back to today.
Most gaming LCDs have optimized latency by syncing panel scanout to cable scanout. VGA/HDMI/DVI/DP are identical signal-topologically as a calendar-readout or book-readout top-left through bottom-right, including sync intervals (original CRT beam movement signals, but now behaves as digital indicators and guard delays). Even Baird/Farnsworth 1920s TV had sync intervals too, and they still exist today in 2020s DisplayPort.
So we'd have
MORE input lag if we refreshed all pixels at the same time, because we have to
buffer the slow-delivering signal before we had all the image data to refresh the whole screen instantly with. We can't transmit data infinitely fast over the cable.
And lest, skeptical scientists hand-wave-off the importance of the millisecond, it is important they read
The Amazing Human Visible Benefits Of The Millisecond to understand the implications better.
TL;DR: Practically, it just isn't economically possible to refresh all pixels simultaneously