一種實現顯示幀緩存切換的方法及顯示系統的制作方法
【專利摘要】本發明公開了一種用于實現顯示幀緩存切換的方法,包括:從主顯示幀緩存中讀取當前第N個顯示幀,并發送到顯示器進行顯示;將備顯示幀緩存中的數據更新為第(N+1)個幀;當所述備顯示幀緩存更新完成后,根據所述主顯示幀緩存中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;若所述切換條件滿足,則將驅動程序中的所述備顯示幀緩存與所述主顯示幀緩存進行切換。本發明還公開了一種顯示系統。采用本發明提供的方法和系統,可以縮短主顯示幀緩存和備顯示幀緩存的切換時間;擴大視頻圖像處理限定的最小時間范圍。在某些情形下,能使已準備好的備顯示幀緩存中的數據在顯示設備上更早的顯示,也就是說在可以縮短顯示延時,加快顯示幀的更新。
【專利說明】一種實現顯示幀緩存切換的方法及顯示系統
【技術領域】
[0001]本發明屬于圖像顯示領域,尤其涉及一種實現顯示幀緩存切換的方法及顯示系統。
【背景技術】
[0002]顯存,也被叫做幀緩存,它的作用是用來存儲顯卡芯片處理過或者即將提取的渲染數據。如同計算機的內存一樣,顯存是用來存儲要處理的圖形信息的部件。我們在顯示屏上看到的畫面是由一個個的像素點構成的,而每個像素點都以4至32甚至64位的數據來控制它的亮度和色彩,這些數據必須通過顯存來保存,再交由顯示芯片和CPU調配,最后把運算結果轉化為圖形輸出到顯示設備上。顯存和主板內存一樣,執行存貯的功能,但它存貯的對像是顯卡輸出到顯示設備上的每個像素的信息。顯存是顯卡非常重要的組成部分,顯示芯片處理完數據后會將數據保存到顯存中,然后由RAMDAC (數模轉換器)從顯存中讀取出數據并將數字信號轉換為模擬信號,最后由屏幕顯示出來。圖像采集是實時圖像處理的重要步驟。在圖像采集過程中,對于視頻切換技術,一般采用CPU控制兩塊緩存以乒乓方式工作,實現視頻數據流在系統中的高速傳輸。如圖中的兩塊緩存包括:主顯示幀緩存和備顯示巾貞緩存。
[0003]傳統的視頻切換方案是,當備顯示幀緩存更新好之后,等待場同步信號脈沖,當收到場同步信號脈沖后,中斷發生,顯示控制器一旦收到場同步信號的中斷后,就將主顯示幀緩存和備顯示幀緩存進行切換。該方案需要等到中斷發生后才將主顯示幀緩存和備顯示幀緩存進行切換。在某些情況下,如果備顯示幀緩存更新好是在收到場同步信號之后,需等待收到下一個場同步信號后再發生中斷,有可能造成主顯示幀緩存和備顯示幀緩存的切換時間會較長,導致已準備好的備顯示幀緩存中的顯示幀在顯示設備上顯示得太晚,顯示延時較大。
[0004]該方案的缺陷是,兩個顯示幀緩存中圖像幀的更新是根據預定的脈沖加以控制的,典型的是根據場同步信號脈沖。在這種情況下,當備顯示幀緩存更新好之后,等待場同步信號,當收到場同步信號后,中斷發生,顯示控制器一旦收到場同步信號的中斷后,就將備顯示幀緩存和主顯示幀緩存進行切換。在更新一個顯示幀期間,只有一個時刻能夠觸發新的顯示幀的更新。換句話說,如果備顯示幀緩存是在場同步信號脈沖之后不久更新好的話,顯示幀的更新,即主顯示幀緩存和備顯示幀緩存之間的切換只能從后續場同步信號脈沖開始。顯示幀更新的這種長延遲會導致顯示設備上顯示的圖像的跳動。
【發明內容】
[0005]有鑒于此,本發明的一個目的是提供一種實現顯示幀緩存切換的方法及顯示系統,從而縮短兩個顯不巾貞緩存的切換時間。為了對披露的實施例的一些方面有一個基本的理解,下面給出了簡單的概括。該概括部分不是泛泛評述,也不是要確定關鍵/重要組成元素或描繪這些實施例的保護范圍。其唯一目的是用簡單的形式呈現一些概念,以此作為后面的詳細說明的序言。
[0006]本發明的一個目的是提供一種用于實現顯示幀緩存切換的方法,包括:
[0007]從主顯示幀緩存中讀取當前第N個顯示幀,并發送到顯示器進行顯示;
[0008]將備顯示幀緩存中的數據更新為第(N+1)個幀;
[0009]當所述備顯示幀緩存更新完成后,根據所述主顯示幀緩存中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;
[0010]若所述切換條件滿足,則將驅動程序中的所述備顯示幀緩存與所述主顯示幀緩存進行切換。
[0011]在一些可選的實施例中,還包括:
[0012]當所述備顯示幀緩存更新完成之后,中央處理器向所述顯示控制器發出一個切換顯示幀緩存命令,由所述顯示控制器判斷切換條件是否滿足。
[0013]在一些可選的實施例中,還包括:
[0014]當所述切換條件滿足,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器;所述中央處理器響應該中斷請求,指示切換操作。
[0015]在一些可選的實施例中,所述切換條件為:
[0016]所述主顯示幀緩存中的第N個顯示幀的全部數據已經被讀入所述顯示控制器,并且未到達第(N+1)個顯示幀的預取時刻。
[0017]在一些可選的實施例中,所述切換條件為:
[0018]所述主顯示幀緩存中的第N個顯示幀的全部數據已被讀入所述顯示控制器,并且已由所述顯示設備全部顯示完成,并且未到達第(N+1)個顯示幀的預取時刻。
[0019]在一些可選的實施例中,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括:
[0020]所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀的數據,若已讀取完,則讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯示。
[0021]在一些可選的實施例中,所述切換條件為:
[0022]所述主顯示幀緩存中的第N個顯示幀的部分數據已經被讀入顯示控制器。
[0023]在一些可選的實施例中,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括:
[0024]所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若未讀取完,則先讀取第N個顯示幀的剩余數據之后,再讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯示。
[0025]本發明的另一個目的是提供一種顯示系統,包括:中央處理器、存儲設備、顯示控制器、顯示設備和其它設備;其中,所述存儲設備至少包括主顯示幀緩存和備顯示幀緩存;
[0026]所述中央處理器,用于對所述顯示控制器進行控制,還用于將所述主顯示幀緩存與所述備顯示幀緩存進行切換;
[0027]所述存儲設備,用于存儲顯示幀;
[0028]所述顯示控制器,用于從所述主顯示幀緩存中讀取顯示幀,經過一定處理后發送給所述顯示設備;還用于生成中斷請求,并將其發送給中央處理器;[0029]所述顯示設備,用于將顯示幀顯示為圖像;
[0030]所述主顯示幀緩存,用于存儲當前正在被讀取并顯示的第N個顯示幀;
[0031]所述備顯示幀緩存,用于存儲第(N+1)個顯示幀;
[0032]所述顯示控制器從所述主顯示幀緩存中讀取當前第N個顯示幀,并發送到所述顯示器進行顯示;
[0033]所述中央處理器或所述其它設備將所述備顯示幀緩存中的數據更新為第(N+1)個幀,當更新完成后,所述顯示控制器根據所述主顯示幀緩存中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;
[0034]若所述切換條件滿足,則所述中央處理器將驅動程序中的所述備顯示幀緩存與所述主顯示幀緩存進行切換。
[0035]在一些可選的實施例中,當所述備顯示幀緩存更新完成之后,所述中央處理器向所述顯示控制器發出一個切換顯示幀緩存命令;
[0036]所述顯示控制器收到該命令后,判斷切換條件是否滿足。
[0037]在一些可選的實施例中,當所述切換條件滿足,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器;
[0038]所述中央處理器響應該中斷請求,指示切換操作。
[0039]在一些可選的實施例中,所述切換條件為:
[0040]所述主顯示幀緩存中的第N個顯示幀的全部數據已經被讀入所述顯示控制器,并且未到達第(N+1)個顯示幀的預取時刻。
[0041]在一些可選的實施例中,所述切換條件為:
[0042]所述主顯示幀緩存中的第N個顯示幀的全部數據已被讀入所述顯示控制器,并且已由所述顯示設備全部顯示完成,并且未到達第(N+1)個顯示幀的預取時刻。
[0043]在一些可選的實施例中,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括:
[0044]所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若已讀取完,則讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯不O
[0045]在一些可選的實施例中,所述切換條件為:
[0046]第N個顯示幀的部分數據已經被讀入顯示控制器。
[0047]在一些可選的實施例中,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括:
[0048]所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若未讀取完,則先讀取第N個顯示幀的剩余數據之后,再讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯示。
[0049]在一些可選的實施例中,還包括:
[0050]所述主顯示幀緩存不允許被更新,即在所述主顯示幀緩存被讀取的時候,不允許寫入操作。
[0051]采用本發明提供的方案,可以縮短主顯示幀緩存(前顯示幀緩存,Front FrameBuffeer)和備顯示巾貞緩存(后顯示巾貞緩存Back Frame Buffer)的切換時間,不需要等待同步信號脈沖;擴大視頻圖像處理限定的最小時間范圍。在某些情形下,能使已準備好的備顯示幀緩存中的數據在顯示設備上更早的顯示,也就是說在可以縮短顯示延時(DisplayLatency ),加快顯示巾貞的更新。
[0052]為了上述以及相關的目的,一個或多個實施例包括后面將詳細說明并在權利要求中特別指出的特征。下面的說明以及附圖詳細說明某些示例性方面,并且其指示的僅僅是各個實施例的原則可以利用的各種方式中的一些方式。其它的益處和新穎性特征將隨著下面的詳細說明結合附圖考慮而變得明顯,所公開的實施例是要包括所有這些方面以及它們的等同。
[0053]說明書附圖
[0054]圖1是本發明實施例一提供的一種顯示系統的結構示意圖;
[0055]圖2是本發明實施例二提供的一種實現顯示幀緩存切換的方法流程圖;
[0056]圖3是本發明實施例三提供的另一種實現顯示幀緩存切換的方法流程圖;
[0057]圖4是本發明實施例四提供的另一種實現顯示幀緩存切換的方法流程圖。
【具體實施方式】
[0058]以下描述和附圖充分地示出本發明的具體實施方案,以使本領域的技術人員能夠實踐它們。其他實施方案可以包括結構的、邏輯的、電氣的、過程的以及其他的改變。實施例僅代表可能的變化。除非明確要求,否則單獨的組件和功能是可選的,并且操作的順序可以變化。一些實施方案的部分和特征可以被包括在或替換其他實施方案的部分和特征。本發明的實施方案的范圍包括權利要求書的整個范圍,以及權利要求書的所有可獲得的等同物。在本文中,本發明的這些實施方案可以被單獨地或總地用術語“發明”來表示,這僅僅是為了方便,并且如果事實上公開了超過一個的發明,不是要自動地限制該應用的范圍為任何單個發明或發明構思。
[0059]實施例一
[0060]在一些可選的實施例中,提供了一種顯示系統。圖1是本發明是實施例一提供的一種顯示系統的結構示意圖。
[0061]如圖1所示,該顯示系統至少包括:中央處理器101、存儲設備102、顯示控制器103、顯示設備104,以及其他設備105。其中,存儲設備102中至少包括兩塊緩存:主顯示幀緩存1021和備顯示幀緩存1022。
[0062]其中,中央處理器101,用于對顯示控制器103進行控制;較佳地,例如可以控制顯示控制器103的顯示模式、設置切換完成中斷的條件,以及控制顯示幀緩存的切換等;還用于訪問存儲設備102并讀寫數據;較佳地,中央處理器101還用于向顯示控制器103發送控制命令(切換顯示幀緩存命令),還用于響應中斷請求,指示切換操作,將驅動程序中的主顯示幀緩存1021與備顯示幀緩存1022進行切換。
[0063]存儲設備102,用于存儲顯示幀,包括:正在被讀取并顯示的顯示幀和將要被讀取并顯示的數據幀。主顯示幀緩存1021,用于存儲當前正在被讀取并顯示的第N個顯示幀,在主顯示幀緩存1021在被讀取顯示幀的時候,不允許被更新,即不允許進行寫入操作,以防止顯示圖像出現撕裂。備顯示幀緩存1022,用于存儲第(N+1)個將要被讀取并顯示的顯示幀,它可以被中央處理器101或者其他設備105更新。[0064]顯示控制器103,用于從存儲設備102中的主顯示幀緩存1021中讀取顯示幀,經過一定處理后,按照顯示設備104所能接受的方式傳送給顯示設備104 ;較佳地,顯示控制器103還用于生成中斷請求,并將其發送給中央處理器101。
[0065]顯示設備104,用于將顯示巾貞顯示為圖像。
[0066]較佳地,在視頻切換過程中,采用乒乓操作的具體處理流程如下:數據流被分配到數據緩沖區:主顯示幀緩存1021和備顯示幀緩存1022中。在第一個緩沖周期,將輸入的數據流緩存到主顯示幀緩存1021。在第二個緩沖周期,通過顯示控制器103的切換,將輸入的數據流緩存到備顯示幀緩存1022,與此同時,將主顯示幀緩存的1021數據(第一場圖像數據),通過顯示控制器103的選擇,送到顯示設備104進行顯示。在第三個緩沖周期,通過顯示控制器103的再次切換,將輸入的數據流緩存到主顯示幀緩存1021,與此同時,將備顯示幀緩存的數據(第二場圖像數據)通過顯示控制器103的切換,送到顯示設備104進行顯示。如此循環,周而復始。
[0067]乒乓操作的最大特點是通過顯示控制器103,按節拍、相互配合地切換,將經過緩沖的數據流不停頓地送到顯示設備104,進行顯示。把乒乓操作的主顯示幀緩存1021和備顯示幀緩存1022當作一個整體,其兩端的輸入數據流與輸出數據流均是連續不斷的,沒有任何停頓,因此非常適合進行流水線式處理,完成數據的無縫緩沖與處理。
[0068]在page-flip方法(有時稱為乒乓球緩沖),而不是復制數據,兩個緩沖區是能夠顯示(這兩個都是在VRAM)。在任何一個時間,一個緩沖正在被積極地顯示的監控,而其他的后緩沖區被吸引。在繪制完成后,兩人的角色轉換。page-flip完成的通常是通過修改值的指針開始的數據顯示在視頻內存。
[0069]這個page-flip遠遠快于復制數據,并可以保證撕裂將不會被看到,只要頁面切換在monitor的垂直落料時間間隔——空白時期沒有視頻數據被吸引。當前活躍和可見的緩沖區稱為主顯示幀緩存,而背景頁面被稱作“備顯示幀緩存”。
[0070]在計算機圖形學中,雙緩沖技術用于繪制圖形顯示沒有(或更少)閃爍。
[0071]它是很困難的一個程序,畫一個顯示以便像素不改變不止一次。例如更新頁面的文本是更容易清潔整個頁面,然后把信件比以某種方式消除所有像素,無論是舊和新字母。然而,這中間圖像被用戶看到作為閃爍。此外電腦顯示設備不斷重新可見視頻頁面(約在60次/秒),因此,即使一個完美的更新可以被看見瞬間為水平之間的分界線“新”的形象和un-redrawn “舊”的形象,稱為撕裂。
[0072]—個軟件實現雙緩沖的所有繪圖操作存儲他們的結果在某些地區的系統RAM ;任何這樣的地區通常被稱為一個“回緩沖區”。當所有繪圖操作被認為是完整的,整個地區(或者只是改變了部分)復制到視頻RAM(前面的緩沖區);這種復制通常是同步的顯示設備的光柵光束以避免撕裂。雙緩沖一定需要更多的視頻內存和CPU時間比單身的緩沖,因為視頻內存分配給回緩沖區、復制操作時間,時間等待同步。
[0073]合成窗口管理器經常結合“復制”操作與“合成”用于位置的窗戶,轉化為規模或扭曲效果,使部分透明。因此前面的緩沖區可能僅包含復合圖像出現在銀幕上,盡管有一個不同的“回緩沖區”每non-composited窗口包含了整個窗口內容的形象。
[0074]較佳地,顯示控制器103從主顯示幀緩存1021中讀取當前第N個顯示幀,并發送到顯示器104進行顯示;[0075]中央處理器101或其它設備105將備顯示幀緩存1022中的數據更新為第(N+1)個幀,當更新完成后,顯示控制器103根據主顯示幀緩存1021中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;
[0076]若切換條件滿足,則中央處理器101將驅動程序中的備顯示幀緩存1022與主顯示幀緩存1021進行切換。
[0077]較佳地,當備顯示幀緩存1022更新完成之后,中央處理器101向顯示控制器103發出一個切換顯示巾貞緩存命令;
[0078]顯示控制器103收到該命令后,判斷切換條件是否滿足。
[0079]較佳地,當切換條件滿足,顯示控制器103產生中斷請求,并將該中斷請求發送給中央處理器101 ;
[0080]中央處理器101響應該中斷請求,指示切換操作。
[0081]較佳地,切換條件為:
[0082]主顯示幀緩存1021中的第N個顯示幀的全部數據已經被讀入顯示控制器103,并且未到達第(N+1)個顯示幀的預取時刻。
[0083]較佳地,切換條件為:
[0084]主顯示幀緩存1021中的第N個顯示幀的全部數據已被讀入顯示控制器103,并且已由顯示設備104全部顯示完成,并且未到達第(N+1)個顯示幀的預取時刻。
[0085]較佳地,顯示控制器103產生中斷請求,并將該中斷請求發送給中央處理器101之后,還包括:
[0086]顯示控制器103判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若已讀取完,則讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備104進行顯示。
[0087]較佳地,切換條件為:
[0088]第N個顯示幀的部分數據已經被讀入顯示控制器。
[0089]較佳地,顯示控制器103產生中斷請求,并將該中斷請求發送給中央處理器101之后,還包括:
[0090]顯示控制器103判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若未讀取完,則先讀取第N個顯示幀的剩余數據之后,再讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯示。
[0091]較佳地,還包括:
[0092]主顯示幀緩存1021不允許被更新,即在主顯示幀緩存1021被讀取的時候,不允許寫入操作。
[0093]因此,采用本發明實施例一提供的顯示系統,不需要等待場同步信號脈沖,可以縮短主顯示幀緩存和備顯示幀緩存的切換時間;擴大視頻圖像處理限定的最小時間范圍。在某些情形下,能使已準備好的備顯示幀緩存中的數據在顯示設備上更早的顯示,也就是說在可以縮短顯示延時,加快顯示幀的更新。
[0094]實施例二
[0095]在一些可選的實施例中,提供了一種用于實現顯示幀緩存切換的方法,如圖2所示,包括:[0096]步驟S201,顯示控制器103從主顯示幀緩存1021中讀取當前第N個顯示幀,并發送到顯示器103進行顯示;中央處理器101或其它設備105將備顯示幀緩存1022的數據更新為第(N+1)個幀;
[0097]步驟S202,當備顯示幀緩存1022中存儲的顯示幀更新完成后,CPU101向顯示控制器103發出一個切換顯示幀緩存命令,由顯示控制器103判斷切換條件是否滿足;
[0098]步驟S203,顯示控制器103收到該切換顯示幀緩存命令之后,根據主顯示幀緩存1021中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;
[0099]若切換條件滿足,則顯示控制器103產生中斷請求,并將該中斷請求發送給中央處理器103 ;
[0100]步驟S204,中央處理器101收到該中斷請求后,響應該中斷請求,指示切換操作,將驅動程序中的備顯示幀緩存1022與主顯示幀緩存1021進行切換。
[0101]較佳地,切換條件可以為:
[0102]主顯示幀緩存1021中的第N個顯示幀的全部數據已經被讀入顯示控制器103,并且未到達第(N+1)個顯示幀的預取時刻。
[0103]較佳地,切換條件可以為:
[0104]主顯示幀緩存1021中的第N個顯示幀的全部數據已被讀入顯示控制器103,并且已由顯示設備104全部顯示完成,并且未到達第(N+1)個顯示幀的預取時刻。
[0105]步驟S205,顯示控制器103判斷是否已讀取完切換后備顯示幀緩存(即切換前主顯示幀緩存)中的當前第N個顯示幀的數據,若已讀取完,則讀取切換后的主顯示幀緩存(即切換前備顯示幀緩存)中的第(N+1)個顯示幀,并發送給顯示設備104進行顯示,因此,顯示設備104的第(N+1)個顯示幀將顯示切換后的主顯示幀緩存中的第(N+1)個顯示幀。
[0106]如此循環,周而復始。
[0107]因此,采用本發明實施例二提供的方法,不需要等待場同步信號脈沖,可以縮短主顯不巾貞緩存和備顯不巾貞緩存的切換時間;擴大視頻圖像處理限定的最小時間范圍。在某些情形下,能使已準備好的備顯示幀緩存中的數據在顯示設備上更早的顯示,也就是說在可以縮短顯示延時,加快顯示幀的更新。
[0108]實施例三
[0109]在一些可選的實施例中,提供了一種用于實現顯示幀緩存切換的方法,如圖3所示,包括:
[0110]步驟S301,顯示控制器103從主顯示幀緩存1021中讀取當前第N個顯示幀,并發送到顯示器103進行顯示;中央處理器101或其它設備105將備顯示幀緩存1022的數據更新為第(N+1)個幀;
[0111]步驟S302,當備顯示幀緩存1022中存儲的顯示幀更新完成后,CPU101向顯示控制器103發出一個切換顯示幀緩存命令,由顯示控制器103判斷切換條件是否滿足;
[0112]步驟S303,顯示控制器103收到該切換顯示幀緩存命令之后,根據主顯示幀緩存1021中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;
[0113]若切換條件滿足,則顯示控制器103產生中斷請求,并將該中斷請求發送給中央處理器103 ;
[0114]步驟S304,中央處理器101收到該中斷請求后,響應該中斷請求,指示切換操作,將驅動程序中的備顯示幀緩存1022與主顯示幀緩存1021進行切換。
[0115]較佳地,與實施例二不同的是,切換條件為:
[0116]主顯示幀緩存1021中的第N個顯示幀的部分數據已經被讀入顯示控制器103 ;
[0117]步驟S305,顯示控制器103判斷是否已讀取完切換后備顯示幀緩存(即切換前主顯示幀緩存)中的當前第N個顯示幀的數據,若未讀取完,則先讀取第N個顯示幀的剩余數據之后,再讀取切換后的主顯示幀緩存(即切換前備顯示幀緩存)中的第(N+1)個顯示幀,并發送給顯示設備104進行顯示,因此,顯示設備104的第(N+1)個顯示幀將顯示切換后的主顯示幀緩存中的第(N+1)個顯示幀。
[0118]如此循環,周而復始。
[0119]因此,采用本發明實施例二提供的方法,不需要等待場同步信號脈沖,可以縮短主顯不巾貞緩存和備顯不巾貞緩存的切換時間;擴大視頻圖像處理限定的最小時間范圍。在某些情形下,能使已準備好的備顯示幀緩存中的數據在顯示設備上更早的顯示,也就是說在可以縮短顯示延時,加快顯示幀的更新。并且,不需要讀取完全部數據就可以進行切換,從而使得未被讀取完數據的空間可以被部分更新,提高了系統的效率。
[0120]實施例四
[0121]在一些可選的實施例中,還提供了一種實現顯示幀緩存切換的方法,圖4為一種實現顯示幀緩存切換的方法流程圖。基于實施例一所述的顯示系統,該方法與實施例二和實施例三所述方的法不同的是:該方法將中央處理器和顯示控制器各自的工作分開進行描述,如圖4所示,虛線左邊是中央處理器完成的工作,虛線右邊是顯示控制器完成的工作。該方法的具體描述如下:
[0122]顯示控制器103:
[0123]從主顯示幀緩存1021中讀取當前第N個顯示幀,并發送到顯示器104進行顯示;
[0124]中央處理器101:
[0125]將備顯示幀緩存1022中的數據更新為第(N+1)個幀;
[0126]當更新完成后,CPUlOl向顯示控制器103發出一個切換顯示幀緩存命令,由顯示控制器103判斷切換條件是否滿足;
[0127]顯示控制器103:
[0128]收到該切換顯示幀緩存命令之后,根據主顯示幀緩存1021中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;
[0129]若切換的條件滿足,則產生中斷請求,并將該中斷請求發送給中央處理器101。
[0130]然后讀取顯示幀的數據,并準備顯示切換后的主顯示幀緩存的顯示幀。
[0131]中央處理器:
[0132]等待新中斷請求,若收到該中斷請求后,響應該中斷請求,并指示切換操作,將驅動程序中的主顯示幀緩存1021與備顯示幀緩存1022進行切換;
[0133]若未收到,則繼續等待。
[0134]因此,采用本發明實施例四的實施方式,不需要等待場同步信號脈沖,可以縮短主顯不巾貞緩存和備顯不巾貞緩存的切換時間;擴大視頻圖像處理限定的最小時間范圍。在某些情形下,能使已準備好的備顯示幀緩存中的數據在顯示設備上更早的顯示,也就是說在可以縮短顯示延時,加快顯示幀的更新。[0135]除非另外具體陳述,術語比如處理、計算、運算、確定、顯示等等可以指一個或更多個處理或者計算系統、或類似設備的動作和/或過程,所述動作和/或過程將表示為處理系統的寄存器或存儲設備內的物理(如電子)量的數據操作和轉換成為類似地表示為處理系統的存儲設備、寄存器或者其他此類信息存儲、發射或者顯示設備內的物理量的其他數據。信息和信號可以使用多種不同的技術和方法中的任何一種來表示。例如,在貫穿上面的描述中提及的數據、指令、命令、信息、信號、比特、符號和碼片可以用電壓、電流、電磁波、磁場或粒子、光場或粒子或者其任意組合來表示。
[0136]應該明白,公開的過程中的步驟的特定順序或層次是示例性方法的實例。基于設計偏好,應該理解,過程中的步驟的特定順序或層次可以在不脫離本公開的保護范圍的情況下得到重新安排。所附的方法權利要求以示例性的順序給出了各種步驟的要素,并且不是要限于所述的特定順序或層次。
[0137]在上述的詳細描述中,各種特征一起組合在單個的實施方案中,以簡化本公開。不應該將這種公開方法解釋為反映了這樣的意圖,即,所要求保護的主題的實施方案需要清楚地在每個權利要求中所陳述的特征更多的特征。相反,如所附的權利要求書所反映的那樣,本發明處于比所公開的單個實施方案的全部特征少的狀態。因此,所附的權利要求書特此清楚地被并入詳細描述中,其中每項權利要求獨自作為本發明單獨的優選實施方案。
[0138]本領域技術人員還應當理解,結合本文的實施例描述的各種說明性的邏輯框、模塊、電路和算法步驟均可以實現成電子硬件、計算機軟件或其組合。為了清楚地說明硬件和軟件之間的可交換性,上面對各種說明性的部件、框、模塊、電路和步驟均圍繞其功能進行了一般地描述。至于這種功能是實現成硬件還是實現成軟件,取決于特定的應用和對整個系統所施加的設計約束條件。熟練的技術人員可以針對每個特定應用,以變通的方式實現所描述的功能,但是,這種實現決策不應解釋為背離本公開的保護范圍。
[0139]結合本文的實施例所描述的方法或者算法的步驟可直接體現為硬件、由處理器執行的軟件模塊或其組合。軟件模塊可以位于RAM存儲設備、閃存、ROM存儲設備、EPROM存儲設備、EEPR0M存儲設備、寄存器、硬盤、移動磁盤、CD-ROM或者本領域熟知的任何其它形式的存儲介質中。一種示例性的存儲介質連接至處理器,從而使處理器能夠從該存儲介質讀取信息,且可向該存儲介質寫入信息。當然,存儲介質也可以是處理器的組成部分。處理器和存儲介質可以位于ASIC中。該ASIC可以位于用戶終端中。當然,處理器和存儲介質也可以作為分立組件存在于用戶終端中。
[0140]對于軟件實現,本申請中描述的技術可用執行本申請所述功能的模塊(例如,過程、函數等)來實現。這些軟件代碼可以存儲在存儲設備單元并由處理器執行。存儲設備單元可以實現在處理器內,也可以實現在處理器外,在后一種情況下,它經由各種手段以通信方式耦合到處理器,這些都是本領域中所公知的。
[0141 ] 上文的描述包括一個或多個實施例的舉例。當然,為了描述上述實施例而描述部件或方法的所有可能的結合是不可能的,但是本領域普通技術人員應該認識到,各個實施例可以做進一步的組合和排列。因此,本文中描述的實施例旨在涵蓋落入所附權利要求書的保護范圍內的所有這樣的改變、修改和變型。此外,就說明書或權利要求書中使用的術語“包含”,該詞的涵蓋方式類似于術語“包括”,就如同“包括,”在權利要求中用作銜接詞所解釋的那樣。此外,使用在權利要求書的說明書中的任何一個術語“或者”是要表示“非排它 性的或者”。
【權利要求】
1.一種用于實現顯示幀緩存切換的方法,其特征在于,包括: 從主顯示幀緩存中讀取當前第N個顯示幀,并發送到顯示器進行顯示; 將備顯示幀緩存中的數據更新為第(N+1)個幀; 當所述備顯示幀緩存更新完成后,根據所述主顯示幀緩存中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足; 若所述切換條件滿足,則將驅動程序中的所述備顯示幀緩存與所述主顯示幀緩存進行切換。
2.如權利要求1所述的方法,其特征在于,還包括: 當所述備顯示幀緩存更新完成之后,中央處理器向所述顯示控制器發出一個切換顯示幀緩存命令,由所述顯示控制器判斷切換條件是否滿足。
3.如權利要求1所述的方法,其特征在于,還包括: 當所述切換條件滿足,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器;所述中央處理器響應該中斷請求,指示切換操作。
4.如權利要求3所述的方法,其特征在于,所述切換條件為: 所述主顯示幀緩存中的第N個顯示幀的全部數據已經被讀入所述顯示控制器,并且未到達第(N+1)個顯示幀的預取時刻。
5.如權利要求3所述的方法,其特征在于,所述切換條件為: 所述主顯示幀緩存中的第N個顯示幀的全部數據已被讀入所述顯示控制器,并且已由所述顯示設備全部顯示完成,并且未到達第(N+1)個顯示幀的預取時刻。
6.如權利要求4或5所述的方法,其特征在于,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括: 所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀的數據,若已讀取完,則讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯示。
7.如權利要求3所述的方法,其特征在于,所述切換條件為: 所述主顯示幀緩存中的第N個顯示幀的部分數據已經被讀入顯示控制器。
8.如權利要求7所述的方法,其特征在于,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括: 所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若未讀取完,則先讀取第N個顯示幀的剩余數據之后,再讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯示。
9.一種顯示系統,其特征在于,包括:中央處理器、存儲設備、顯示控制器、顯示設備和其它設備;其中,所述存儲設備至少包括主顯示幀緩存和備顯示幀緩存; 所述中央處理器,用于對所述顯示控制器進行控制,還用于將所述主顯示幀緩存與所述備顯示幀緩存進行切換; 所述存儲設備,用于存儲顯示幀; 所述顯示控制器,用于從所述主顯示幀緩存中讀取顯示幀,經過一定處理后發送給所述顯示設備;還用于生成中斷請求,并將其發送給中央處理器; 所述顯示設備,用于將顯示幀顯示為圖像;所述主顯示幀緩存,用于存儲當前正在被讀取并顯示的第N個顯示幀;所述備顯示幀緩存,用于存儲第(N+1)個顯示幀;所述顯示控制器從所述主顯示幀緩存中讀取當前第N個顯示幀,并發送到所述顯示器進行顯示;所述中央處理器或所述其它設備將所述備顯示幀緩存中的數據更新為第(N+1)個幀,當更新完成后,所述顯示控制器根據所述主顯示幀緩存中的當前第N個顯示幀被讀取的情況,判斷切換條件是否滿足;若所述切換條件滿足,則所述中央處理器將驅動程序中的所述備顯示幀緩存與所述主顯示幀緩存進行切換。
10.如權利要求9所述的顯示系統,其特征在于,當所述備顯示幀緩存更新完成之后,所述中央處理器向所述顯示控制器發出一個切換顯不幀緩存命令;所述顯示控制器收到該命令后,判斷切換條件是否滿足。
11.如權利要求9所述的顯示系統,其特征在于,當所述切換條件滿足,所述 顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器;所述中央處理器響應該中斷請求,指示切換操作。
12.如權利要求11所述的顯示系統,其特征在于,所述切換條件為:所述主顯示幀緩存中的第N個顯示幀的全部數據已經被讀入所述顯示控制器,并且未到達第(N+1)個顯示幀的預取時刻。
13.如權利要求11所述的顯示系統,其特征在于,所述切換條件為:所述主顯示幀緩存中的第N個顯示幀的全部數據已被讀入所述顯示控制器,并且已由所述顯示設備全部顯示完成,并且未到達第(N+1)個顯示幀的預取時刻。
14.如權利要求12或13所述的顯示系統,其特征在于,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括:所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第N個顯示幀,若已讀取完,則讀取切換后的主顯示幀緩存中的第(N+1)個顯示幀,并發送給顯示設備進行顯/j、Ο
15.如權利要求11所述的顯示系統,其特征在于,所述切換條件為:第Ν個顯示幀的部分數據已經被讀入顯示控制器。
16.如權利要求15所述的顯示系統,其特征在于,所述顯示控制器產生中斷請求,并將該中斷請求發送給所述中央處理器之后,還包括:所述顯示控制器判斷是否已讀取完切換后備顯示幀緩存中的當前第Ν個顯示幀,若未讀取完,則先讀取第Ν個顯示幀的剩余數據之后,再讀取切換后的主顯示幀緩存中的第(Ν+1)個顯示幀,并發送給顯示設備進行顯示。
17.如權利要求9所述的顯示系統,其特征在于,還包括:所述主顯示幀緩存不允許被更新,即在所述主顯示幀緩存被讀取的時候,不允許寫入操作。
【文檔編號】G09G5/00GK103680461SQ201210351725
【公開日】2014年3月26日 申請日期:2012年9月20日 優先權日:2012年9月20日
【發明者】許海輝, 白永強 申請人:廣東新岸線計算機系統芯片有限公司