US2020167119A1PendingUtilityA1

Managing display data

60
Assignee: DISPLAYLINK UK LTDPriority: Apr 30, 2015Filed: Dec 16, 2019Published: May 28, 2020
Est. expiryApr 30, 2035(~8.8 yrs left)· nominal 20-yr term from priority
G09G 2360/04G09G 2352/00G09G 2340/12G09G 2360/18G09G 5/003G09G 2310/08G09G 2360/12G06F 3/1431G09G 5/377G09G 5/001
60
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

Display data of a first type destined for a first display device (220A) is fetched from a first portion of a first buffer memory (26A) and display data of a second type destined for the first display device is fetched from a first portion of a second buffer memory (28A) at a first time according to an arbitration control signal. The fetched display data of the first and second types destined for the first display device (220A) is combined into combined display data destined for display on the first display device (220A). Display data of the first type destined for the second display device (220B) is fetched from a second portion of the first buffer (26B) memory and display data of the second type destined for the second display device (220B) is fetched from a second portion of the second buffer memory (28B) at a second time, different to the first time, according to the arbitration control signal, and the fetched display data of the first and second types destined for the second display device (220B) is combined into combined display data destined for display on the second display device. The combined display data destined for the first display device (220A) is then multiplexed with the combined display data for the second display device (220B) into a single display data stream and output.

Claims

exact text as granted — not AI-modified
1 . A method of providing display data for at least first and second display devices of a plurality of display devices from a plurality of display data sources, the method comprising:
 fetching display data of a first type destined for the first display device from a first portion of a first buffer memory and display data of a second type destined for the first display device from a first portion of a second buffer memory at a first time according to an arbitration control signal, the first buffer memory having stored therein respective display data of the first type for respective display devices in respective portions thereof and the second buffer memory having stored therein respective display data of the second type for respective display devices in respective portions thereof;   combining, by a first combining engine, the fetched display data of the first and second types destined for the first display device into combined display data destined for display on the first display device;   fetching display data of the first type destined for the second display device from a second portion of the first buffer memory and display data of the second type destined for the second display device from a second portion of the second buffer memory at a second time, different to the first time, according to the arbitration control signal;   combining, by the first combining engine, the fetched display data of the first and second types destined for the second display device into combined display data destined for display on the second display device;   time multiplexing the combined display data destined for the first display device with the combined display data for the second display device into a single display data stream; and   outputting the single display data stream.   
     
     
         2 . The method of  claim 1 , further comprising storing the combined display data for the first display device in a first portion of an output buffer memory prior to the time multiplexing, and storing the combined display data for the second display device in a second portion of the output buffer memory prior to the time multiplexing. 
     
     
         3 . The method of  claim 1 , further comprising:
 fetching cursor display data destined for the first display device from a first portion of a cursor buffer memory at a first predetermined time according to the arbitration control signal, the cursor buffer memory having stored therein respective cursor display data for respective display devices in respective portions thereof; and   combining, by a second combining engine, the fetched cursor display data destined for the first display device with the combined display data destined for display on the first display device into cursor combined display data destined for display on the first display device.   
     
     
         4 . The method of  claim 3 , further comprising:
 fetching cursor display data destined for the second display device from a second portion of the cursor buffer memory at a second predetermined time according to the arbitration control signal; and   combining, by the second combining engine, the fetched cursor display data destined for the second display device with the combined display data destined for the second display device into cursor combined display data destined for display on the second display device.   
     
     
         5 . The method of  claim 3 , further comprising processing the combined data or the cursor combined data prior to the time multiplexing. 
     
     
         6 . The method of  claim 5 , wherein the processing the combined data or the cursor combined data comprises any one or more of:
 flipping, mirroring, rotating, dithering, blending, colour correcting, scaling or other transformations of the display data;   mapping the display data according to requirements of the particular display device for which the display data is destined;   compressing; and   converting into a display specific protocol format for the particular display device for which the display data is destined.   
     
     
         7 . The method of  claim 1 , wherein the single display data stream is demultiplexed into separate display data streams, each separate display data stream being passed to a particular display device. 
     
     
         8 . The method of  claim 1 , wherein the single display data stream is passed to all the display devices, each display device only displaying the display data destined for that display device. 
     
     
         9 . The method of  claim 1 , wherein the arbitration control signal is generated by:
 generating a virtual clock signal for each particular display device, by:
 receiving a local clock signal, wherein the local clock signal has a frequency that is a, or a multiple of a, sum of the clock frequencies required for the plurality of display devices; 
 fetching ratio information for the particular display device indicating a ratio between the clock frequency required for the particular display device and the local clock signal; 
 counting a fraction of the local clock signal based on the ratio information; and 
 outputting the virtual clock signal when the count reaches an integer value, using the virtual clock signal by: 
 generating a horizontal synchronisation signal to be used to horizontally synchronise the display data on the particular display device; 
 generating a vertical synchronisation signal to be used to vertically synchronise the display date on the particular display device; and 
 generating an active pixel signal indicating that the display device includes a pixel value to be output, wherein the active pixel signal is used to increment an active pixel accumulator for the particular display device; and 
   generating the arbitration control signal based on the accumulation totals of each of the active pixel accumulators.   
     
     
         10 . The method of  claim 9 , wherein the accumulation total of a particular active pixel accumulator is reset when display data destined for the particular display device is fetched from a buffer memory based on the arbitration control signal. 
     
     
         11 . The method of  claim 1 , further comprising:
 inputting display data of the first type into the first portion of the first buffer memory from a first source of display data of the first type destined for the first display device, and inputting display data of the first type into the second portion of the first buffer memory from a second source of display data of the first type destined for the second display device, each of the sources of display data of the first type having display data of the first type destined for one of the display devices; and   inputting display data of the second type into the first portion of the second buffer memory from a first source of display data of the second type destined for the first display device, and inputting display data of the second type into the second portion of the second buffer memory from a second source of display data of the second type destined for the second display device, each of the sources of display data of the second type having display data of the second type destined for one of the display devices.   
     
     
         12 . The method of  claim 11 , further comprising decompressing the display data prior to inputting it into a buffer memory if a source of the display data provides it in compressed form. 
     
     
         13 . The method of  claim 1 , wherein the first type of display data comprises image data. 
     
     
         14 . The method of  claim 1 , wherein the second type of display data comprises video overlay data. 
     
     
         15 . A video display controller configured to perform:
 fetching display data of a first type destined for the first display device from a first portion of a first buffer memory and display data of a second type destined for the first display device from a first portion of a second buffer memory at a first time according to an arbitration control signal, the first buffer memory having stored therein respective display data of the first type for respective display devices in respective portions thereof and the second buffer memory having stored therein respective display data of the second type for respective display devices in respective portions thereof;   combining, by a first combining engine, the fetched display data of the first and second types destined for the first display device into combined display data destined for display on the first display device;   fetching display data of the first type destined for the second display device from a second portion of the first buffer memory and display data of the second type destined for the second display device from a second portion of the second buffer memory at a second time, different to the first time, according to the arbitration control signal;   combining, by the first combining engine, the fetched display data of the first and second types destined for the second display device into combined display data destined for display on the second display device;   time multiplexing the combined display data destined for the first display device with the combined display data for the second display device into a single display data stream; and   outputting the single display data stream.   
     
     
         16 . The video display controller of  claim 15 , comprising:
 a plurality of fetching engines, at least one for each type of display data, for fetching the display data from the buffer memories according to the arbitration control signal;   a first combining engine coupled to the plurality of fetching engines to receive the fetched display data for combining the fetched display data of different types for each of the plurality of display devices;   a multiplexer coupled to receive the combined display data for each of the display devices from the first combining engine and to multiplex the combined display data destined for different display devices into a single display data stream; and   an arbitration control module configured for generating the arbitration control signal.   
     
     
         17 . The video display controller of  claim 16 , further comprising a second combining engine coupled to the first combining engine and to a cursor fetching engine for combining the combined display data with the cursor display data. 
     
     
         18 . The video display controller according to  claim 15 , further comprising a plurality of sources of display data of different types. 
     
     
         19 . The video display controller of  claim 15 , further configured to perform:
 fetching cursor display data destined for the first display device from a first portion of a cursor buffer memory at a first predetermined time according to the arbitration control signal, the cursor buffer memory having stored therein respective cursor display data for respective display devices in respective portions thereof; and   combining, by a second combining engine, the fetched cursor display data destined for the first display device with the combined display data destined for display on the first display device into cursor combined display data destined for display on the first display device.   
     
     
         20 . The video display controller of  claim 19 , further configured to perform:
 fetching cursor display data destined for the second display device from a second portion of the cursor buffer memory at a second predetermined time according to the arbitration control signal; and   combining, by the second combining engine, the fetched cursor display data destined for the second display device with the combined display data destined for the second display device into cursor combined display data destined for display on the second display device.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.