TWI389511B - 用以更新緩衝器之方法及系統 - Google Patents

用以更新緩衝器之方法及系統 Download PDF

Info

Publication number
TWI389511B
TWI389511B TW94141289A TW94141289A TWI389511B TW I389511 B TWI389511 B TW I389511B TW 94141289 A TW94141289 A TW 94141289A TW 94141289 A TW94141289 A TW 94141289A TW I389511 B TWI389511 B TW I389511B
Authority
TW
Taiwan
Prior art keywords
buffer
read
processor
line
lines
Prior art date
Application number
TW94141289A
Other languages
English (en)
Other versions
TW200637271A (en
Inventor
George A Wiley
Brian Steele
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US11/285,399 external-priority patent/US8692838B2/en
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of TW200637271A publication Critical patent/TW200637271A/zh
Application granted granted Critical
Publication of TWI389511B publication Critical patent/TWI389511B/zh

Links

Landscapes

  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

用以更新緩衝器之方法及系統
本發明一般係有關用以更新緩衝器的方法與系統。本發明更尤其關於一種更新緩衝器於通訊鏈結上的方法與系統。
在互連技術的領域中,對不斷增加資料速率的需求持續成長,尤其是有關於視頻呈現。
行動顯示數位介面(MDDI)係為一具成本效益、低功率損耗的傳送機制,其係致使在主機與客戶端之間短程通訊鏈結上的非常高速度資料傳送。MDDI需要最少僅僅四條配線,加上以每秒高達3.2兆位元之最大頻帶寬傳遞的雙向資料傳送之功率。
在一應用中,MDDI藉由顯著地減少配線的數目而增加掀蓋式電話的可靠度並降低其功率耗損,該等配線穿過手機(handset)的鉸鏈,以將數位基頻帶控制器以及液晶(LCD)顯示器與/或照相機互連。此配線之減少亦可允許手機製造商藉由簡化掀蓋式或滑動式手機設計來降低研發成本。
在控制於MDDI鏈結上的LCD顯示器方面,當刷新(refresh)顯示時,會產生相關於影像閃爍的一個問題。典型上,需要的是一長的持續轉換或者比入眼可察覺到還高的刷新速率。當影像看起來好像在移動時,長的持續轉換導致影像模糊(smearing)。因此,對該顯示器而言,具有高的更新速率是令人希望的。不過,所發生的典型問題為影像分裂。問題是在該顯示器以高速率更新的同時,與該顯示器有關的框緩衝器會以比較慢的速率來充填。結果,該顯示器影像可能反應出在該顯示器之相同框內之經更新與舊的影像資訊兩者。
在一種解決辦法中,複數個緩衝器可被使用,且影像資訊會週期經過該等複數個緩衝器,以避免上述的影像分裂問題。這包括一般已知的〝雙重緩衝〞方法。但是,如此之解決辦法的缺點很清楚是在實施上增加的成本與晶片空間要求。
因此,需要的是致能緩衝器更新解決上述問題之解決辦法的方法與系統,而同時滿足MDDI應用的成本與空間要求。
本發明係有關用以更新緩衝器的方法與系統。
在一態樣中,本發明提供一種用以更新緩衝器的方法,其包括策略性地寫入到緩衝器,以致能同時對緩衝器讀取與寫入。該方法去除了雙倍緩衝之需求,因而相較於習知緩衝方法,產生實施成本與空間的節省。在其他的優點中,該方法避免當被使用來更新與顯示有關之框緩衝器時的影像分裂,但卻不限於此等應用。
在另一態樣中,本發明提供有效的機制,以致能緩衝器更新於通訊鏈結上。在一實例中,本發明提供一種中繼時序資訊於通訊鏈結上的方法。但是,該方法並不限於中繼時序資訊,並且可被使用於更一般的層面,如同熟諳該技藝者依據在此之教旨所能夠理解的。
本發明的進一步實施例、特徵與優點以及本發明種種實施例的結構與操作,係參考附圖詳細說明如下。
本說明書揭露出合併本發明特徵的一或多個實施例。所揭露之實施例僅僅作為本發明的例子。本發明範圍並不限於所揭露的實施例。本發明係藉由其所附加之申請專利範圍來予以界定的。
所說明的申請專利範圍,以及在本說明書中對於〝一個實施例〞、〝一實施例〞、〝一實例實施例〞等等的參考指出所說明的實施例可包括一特定特徵、結構或特色,但並非每一個實施例均一定包括該特定特徵、結構或特色。況且,此用詞不一定意指相同實施例。此外,當一特定特徵、結構或特色配合一實施例來做說明時,主張其係在熟諳該技藝者的知識範圍內,且在不論有否被明確說明之下,使與其他實施例有關的此特徵、結構或特色生效。
本發明的實施例可用硬體、韌體、軟體或其任何組合來予以實施。本發明的實施例亦可被當作儲存在機器可讀取媒體上的指令來實施,其係可藉由一或多個處理器來讀取與執行。機器可讀取媒體可包括用來將呈機器(例如,計算裝置)可讀取形式之資訊儲存或傳送的任何機構。例如,機器可讀取媒體包括唯讀記憶體(ROM);隨機存取記憶體(RAM);磁碟儲存媒體;光學儲存媒體;快閃記憶體裝置;電氣、光學、聲音或其他型式的傳播信號(例如,載波、紅外線信號、數位信號等等)以及其他。此外,韌體、軟體、常式、指令在此以進行特定動作來說明。不過,應該理解到的是,如此之說明僅僅為了方便,且如此之動作事實上源自於執行韌體、軟體、常式、指令等等的計算裝置、處理器、控制器或其他裝置。
行動顯示數位介面(MDDI)
行動顯示數位介面(MDDI)係為一具成本效益、低功率損耗的傳送機制,其係致使在主機與客戶端之間短程通訊鏈結上的非常高速度串列資料傳送。
在下文中,MDDI實例將有關包含在行動電話之上掀蓋中的照相機模組來呈現。不過,那些熟諳該相關技藝者將明顯理解,任何具有與照相機模組相等功能特徵的模組可被簡單地取代並被使用於本發明實施例中。
此外,依據本發明實施例,MDDI主機包含數種可從使用本發明而受益之裝置的其中一種。例如該主機可以是呈手持、膝上型或者類似移動式計算裝置形式的可攜式電腦。其同樣可以是個人資料助理(PDA)、傳呼裝置、或者許多無線電話或數據機的其中一種。替換地,該主機可以是可攜式娛樂或呈現裝置,譬如可攜式DVD或者CD播放器,或者遊戲裝置。此外,該主機可當作一主機裝置或控制元件地放在種種在其他方面被廣泛使用或計畫之令客戶希望的高速通訊鏈結商業產品。例如,一主機可被使用來將資料高速地從影像記錄裝置傳送到以儲存為主的客戶端以改善回應,或者到高解析度的較大螢幕以呈現。將電路板上清單或電腦系統與/或藍芽連接合併到其他家電裝置的一種應用,譬如電冰箱,其係當呈網路或藍芽連接模式來操作時會具有改善的顯示能力,或者當電子電腦或控制系統(主機)存在於纜線中別處時,對門內顯示(客戶端)以及鍵盤或掃描器(客戶端),具有降低的配線需要。一般而言,那些熟諳該技藝者將理解多種從使用本介面而受益的現代電子裝置與應用,以及用應用在重新添加或現存連接器或纜線中可得到之有限數目導體之較高資料速度的資訊傳送來翻新較舊裝置的能力。同時,MDDI客戶端包含可使用來將資訊呈現給終端使用者,或者將資訊從使用者呈現給主機的種種裝置。例如,併入於護目鏡或玻璃中的微顯示器、建立到帽子或頭盔內的投射裝置、建立到車子內的小螢幕或甚至全像攝影元件、譬如在窗戶或擋風玻璃、或種種擴音器、頭帶式耳機或聲音系統中,以用來呈現高畫質的聲音或音樂。其他的呈現裝置包括使用來呈現會議資訊或電影與電視影像的投射器或投射裝置。另一實例係為使用觸控板或靈敏裝置、聲音辨識輸入裝置、安全掃描器等等,其係被請求用除了來自使用者的觸碰或聲音以外極少真實的〝輸入〞,從一裝置或系統使用者傳送明顯數量的資訊。此外,電腦的基座以及汽車套件或者桌上套件以及無線電話座,其係可當作到終端使用者或者到其他裝置與設備的介面裝置使用,並且使用客戶端(輸出或輸入裝置,譬如滑鼠)或主機,以有助於資料傳送,特別是在有關高速網路之處。不過,那些熟諳該技藝者將輕易地理解本發明不限於這些裝置,在市場上還有許多其他裝置,並且打算使用,就儲存與傳送而言或者就播放時的呈現而言,該些裝置預期會以高品質的影像與聲音來提供給終端使用者。在增加種種元件或裝置之間的資料生產率以提供實施使用者希望經驗所需之高資料速度方面,本發明是有用的。
圖1A係為耦合到數位裝置150與週邊裝置180的數位資料裝置介面100圖式。數位裝置150可包括,但不限於蜂巢式電路、個人數位助理、智慧型電話或個人電腦。一般而言,數位裝置150可包括任何型態的數位裝置,其係用做數位指令的處理單元以及數位呈現資料的處理。數位裝置150包括一系統控制器160與一鏈結控制器170。
週邊裝置180可包括,但不限於照相機、條碼讀取機、影像掃描器、聲頻裝置與感測器。一般而言,週邊180包括任何類型的聲頻、視頻或影像捕捉與顯示裝置,其中,數位呈現資料係在週邊與製程單元之間做互換。週邊180包括控制方塊190。當週邊180例如是照相機時,控制方塊190可包括、但不限於透鏡控制、快閃或白光發光二極體(LED)控制與快門控制。數位呈現資料包括代表聲頻、視頻與多媒體資料的數位資料。
數位資料介面裝置100以高速將數位呈現資料傳送於通訊鏈結105上。在一實例中,可使用MDDI通訊鏈結,其係支持最大頻帶寬每秒3.2兆位元的雙向資料傳送。比此實例速率更高或更低的其他高速率資料傳送可依據通訊鏈結來予以支持。數位資料介面裝置100包括訊息解譯器模組110、內容模組120、控制模組130與鏈結控制器140。
置於數位資料介面100內的鏈結控制器140,以及置於數位裝置150內的鏈結控制器170,建立了通訊鏈結105。鏈結控制器140與鏈結控制器170係為MDDI鏈結控制器。
在此以引用方式併入文中的視訊電子標準協會(〝VESA〞)MDDI標準說明了高速數位封包介面的必要條件,該介面使得可攜式裝置將數位影像從小型可攜式裝置傳送到較大型外部顯示器。MDDI應用一微型連接器系統與薄的彈性纜線範例以鏈接可攜式電腦、通訊與娛樂裝置到新興的產品,譬如可穿戴微型顯示器。他亦同樣地包括如何簡化主機處理器與顯示裝置之間連接以便降低這些連接成本並增加這些連接可靠度的資訊。鏈結控制器140與170依據VESA MDDI標準來建立通訊路徑105。
在2004年7月6日,頒發給Zou等人的美國專利案第6,760,772號(‘772專利”),標題為產生並實施一通訊協定與介面給高資料速率信號傳送(Generating and Implementing a Communication Protocol and Interface for High Data Rate Signal Transfer),其說明一資料介面,用來在使用鏈結於一起之封包結構的通訊路徑上傳送數位資料於主機與客戶端之間,以形成通訊協定來呈現資料。在‘772專利中講的本發明實施例係針對MDDI介面。該信號協定係藉由鏈結控制器來使用,譬如鏈結控制器140與170,其係被組構來產生、傳送與接收形成通訊協定的封包,並將數位資料形成為一或多個資料封包,其中至少有一在主機裝置中,並經由通訊路徑耦合到客戶端,譬如通訊路徑105。
該介面提供一種具成本效益、低功率、雙向、高速資料傳送機制於短程的〝串列〞型資料鏈結,其係適合以微型連接器與薄的可撓纜線來予以實施。一鏈結控制器140與170實施例依據‘772專利的講法來建立通訊路徑105。‘772專利在此整體被併入當作參考資料。
在其他實施例中,鏈結控制器140與170兩者係為通用串列匯流排鏈結控制器或者他們兩者包括一控制器組合,譬如例如MDDI鏈結控制器以及另一鏈結控制器,譬如例如通用串列匯流排鏈結控制器。替換地,鏈結控制器140與170包括一控制器組合,譬如MDDI鏈結控制器與單一鏈結,以在數位資料介面裝置100與數位裝置150之間交換確認訊息。鏈結控制器140與170額外地支持其他介面,譬如乙太網絡或者RS-232串列埠介面。誠如依據在此之講法而來熟諳相關技藝者所已知的,額外的介面可被支持。
在數位資料介面裝置100內,訊息解譯器模組110接收來自系統控制器160的命令,並且產生回應的訊息,經過通訊鏈結105,到系統控制器160,解釋命令訊息,並將該等命令的資訊內容排定路由到數位資料介面裝置100內的適當模組。
內容模組120接收來自週邊裝置180的資料,儲存資料,並將該資料經過通訊鏈結105傳送到系統控制器160。
控制模組130接收來自訊息解譯器130的資訊,並且將資訊排定路由到週邊裝置180的控制方塊190。控制模組130亦可同樣地接收來自控制方塊190的資訊,並將該資訊排定路由到訊息解譯器模組110。
圖1係為說明使用MDDI介面之實例環境的方塊圖。在圖1的實例中,MDDI被使用來互連通過掀蓋式電話100的鉸鏈。
參照圖1,掀蓋式電路100的下掀蓋部份102包括移動台數據機(MSM)基頻帶晶片104。MSM104係為數位基頻帶控制器。掀蓋式電話100的上掀蓋部份114包括液晶顯示器(LCD)模組116與照相機模組118。
仍參照圖1,MDDI鏈結110將照相機模組118連接到MSM104。基本上,MDDI鏈結控制器會被整合到每一照相機模組118與MSM104內。在圖1實例中,MDDI主機122會被整合到照相機模組112內,同時MDDI客戶端106是在MDDI鏈結110的MSM側上。基本上,MDDI主機係為MDDI鏈結的主要控制器。在圖1實例中,來自照相機模組118的像素資料在被傳送到MDDI鏈結110以前會被接收並被MDDI主機122格式化成MDDI封包。MDDI客戶端106接收MDDI封包,並將他們重新轉換成由照相機模組118所產生的相同格式像素資料。該像素資料隨後被發送到在MSM104中的適當方塊以供處理。
仍參照圖1,MDDI鏈結112將LCD模組116連接到MSM104。在圖1的實例中,MDDI鏈結112使一被整合入MSM104的MDDI主機108與一被整合入LCD模組116內的MDDI客戶端120互連。在圖1的實例中,由MSM104圖形控制器所產生的影像資料在被傳送到MDDI鏈結112以前會被接收並被MDDI主機108格式化成MDDI封包。MDDI客戶端120接收MDDI封包,並將他們重新轉換成影像資料以供LCD模組116使用。基本上,在被使用來更新LCD顯示以前,影像資料係使用訊框緩衝器來緩衝。
圖2為例舉依據圖1實例之MDDI鏈結互連112的方塊圖。如上所述,MDDI鏈結112的其中一功能就是將影像資料從MSM104傳送到LCD模組116。框介面(未顯示於圖2)將MDDI鏈結控制器120連接到LCD模組116的諸模組。同樣地,另一框介面(未顯示於圖2)將MDDI鏈結控制器108連接到MSM104的適當模組。典型上,MDDI鏈結控制器108代表MDDI鏈結的主機控制器,而MDDI鏈結控制器120代表MDDI的客戶端控制器。但是,其他的實施可以顛倒兩個控制器的角色。
MDDI鏈結112包括最少四條配線,除了兩條功率信號用配線210與211以外,另包含兩條資料信號配線202與204以及兩條探測信號用配線206與208。資料信號202與204係為雙向。因此,使用資料信號202與204,可在任一方向上(從主機到客戶端,或者從客戶端到主機)傳送資料。選通信號206與208則是單一方向,並且僅可藉由該鏈結的主機控制器來予以驅動。因此,在圖2的實例中,只有主機控制器108可以驅動選通信號206與208。
用以更新緩衝器的方法與系統
如上所述,MDDI可被用來連接基頻帶處理器(例如,在圖2中的MSM104)與圖形控制器(例如,在圖2中的LCD模組116)。基頻帶處理器典型上將從照相機感測器所接收到的影像資訊輸送到圖形控制器,其使用該影像資訊以產生顯示影像。典型上,該圖形控制器利用一或多個框緩衝器,以便在使用從基頻帶處理器所接收到的影像資訊來產生顯示影像之前,先將其儲存起來。如上所述,影像分裂是產生的一個問題。這發生於當影像資訊正以比寫入到框緩衝器之速率更慢或更快的速率而從框緩衝器被讀出的時候。在其他的優點中,用來更新緩衝器的方法與系統會解決影像分裂問題,其係將說明於此。但是,應該注意的是,依據本發明之方法與系統並不限於特定的代表性實施例,而在該代表性實施例中,他們將被說明或正被使用於MDDI環境中。此外,本發明的方法與系統可被使用在利用緩衝的各種其他應用中,而且他們可從本發明的優點而受益。
影像分裂
圖3舉例說明能夠發生於當從緩衝器讀取與/或寫入到緩衝器時之影像分裂的兩個實例。圖3的圖形顯示做為緩衝器位置與時間函數之讀取與寫入指標的圖形。讀取指標代表緩衝器之正被讀取的位置。該寫入指標指示緩衝器之正被寫入的位置。在圖3的實例中,該緩衝器位置係根據緩衝器中的像素位置來予以定義。
在圖3的第一實例中,該緩衝器正用比寫入還慢的速率而被讀取。此乃藉由讀取與寫入指標線302與304的相對斜率來予舉例說明的。注意,讀取與寫入指標線302與304在時間t0 相交。在時間t0 以前,在緩衝器中的像素會在被更新以前被讀取。在時間t0 以後,像素會在被讀取以前被更新。因此,在同一框內(從時間0至時間t1 ),在位置0至p0 (其對應在時間t0 所讀取的像素位置)中的像素相對於在緩衝器中從位置p0 到最後一個像素的諸像素係讀取有經更新之影像資訊。結果則會影像分裂,即,相對於影像的上部份,影像的下部份會反應出更新的影像資訊。
在圖3的第二實例中,該緩衝器正以比寫入還快的速率而被讀取。此乃藉由讀取與寫入指標線302與306的相對斜率來予以舉例說明的。讀取與寫入指標線302與306在時間t2 相交。在時間t2 以前,在緩衝器中的像素會在被讀取以前被更新。在時間t2 以後,像素會在被更新以前被讀取。因此,在同一框內(從時間t1 至時間t3 ),在位置0至p2 (對應在時間t2 所讀取的像素位置)中的像素相對於緩衝器中從位置p2 到最後一個像素的諸像素(其係讀取有舊的影像資訊)係讀取有較新的影像資訊。結果則會影像分裂,即,相對於影像的上部份,該影像的下部份會反應出更新的影像資訊。
用以更新緩衝器的方法
現將提供一種策略性地更新緩衝器的方法。該方法防止當被使用來更新與顯示器有關的框緩衝器時之影像分裂。該方法亦可根據如同將在此被說明之其明顯的優點而被使用於其他的緩衝應用中。
圖4為舉例說明一根據本發明來更新緩衝器的程序流程圖400。程序流程圖400開始於步驟410,其包括決定在緩衝器中的讀取線位置。該讀取線位置指示目前正從緩衝器被讀取的線。典型上,步驟410係藉由決定讀取指標的值來予達成,而該讀取指標指到在緩衝器中的讀取線位置。
步驟420包括將緩衝器分割成係安全更新的至少一第一部份,以及不一定根據該讀取線位置而被更新的第二部份。在此要注意的是,緩衝器之分割在此不一定是指該緩衝器的實際的分割,而是指邏輯的分割。此外,該緩衝器的邏輯分割並非固定的,並且可改變,如同從在此之教旨而將被理解的。緩衝器的第一部份包括緩衝器之已經根據讀取線位置而在現有緩衝器讀取週期內被讀取的線。第一部份亦包括緩衝器中可根據讀取線位置而被更新的線。換句話說,第一部份包括其內容已經被讀取之線,或者在讀取線位置根據緩衝器讀取速度與緩衝器寫入速度而到達他們之前被更新的線。無法在讀取線位置根據緩衝器讀取速度與緩衝器寫入速度而到達他們之前被更新的線屬於緩衝器的第二部份。換句話說,緩衝器之第二部份的線為那些在他們必須被讀取之前沒有足夠時間更新者。因此,緩衝器之第二部份的線必須在緩衝器的最後一個讀取週期期間內被更新。
步驟430包括藉由寫入資料於第一部份之線上來更新緩衝器,該第一部份則根據讀取線位置而接著第二部份之後。典型上,該緩衝器係在如上所述係安全更新以及在緩衝器之最後一個讀取週期期間內被讀取的位置上被更新。在一實施例中,步驟430包括將資料寫入於第一部份的線上,該第一部份緊接著第二部份的最後一條線之後。如同熟諳該技藝者根據在此所揭露之教旨而將明顯的,步驟430的其他變化亦係有可能。
實例舉例說明
圖5提供例舉於圖4中之上述方法的實例。圖5顯示讀取緩衝器500的三個實例A、B與C。僅僅為了舉例說明,緩衝器500被顯示而包括352條資料線。讀取指標510指示在緩衝器中的讀取線位置。標以羅馬數字〝I〞的部份代表屬於上述緩衝器之第一部份的線。標以羅馬數字〝Ⅱ〞的部份則代表屬於上述緩衝器之第二部份的線。
在實例A中,陰影區域〝I〞代表在緩衝器之目前讀取週期期間已經被讀取之緩衝器第一部份的線。在該實例中,此區域包括線1至m-1。讀取指標510指示線m目前正被讀取。因此,在實例A中的區域〝Ⅱ〞代表無法根據讀取指標510之目前位置來予以更新之緩衝器500的線。換句話說,並沒有足夠時間根據讀取指標510之目前位置以及對緩衝器的讀取與寫入速度來更新區域〝Ⅱ〞中的線。注意,緩衝器的第一部份亦包括在區域〝Ⅱ〞下面的非陰影區域〝I〞。此區域〝I〞隨著能安全更新而屬於第一部份,但不應該被更新,假設,其在緩衝器之目前讀取週期期間內並未被讀取。在讀取他之前更新非陰影區域〝I〞將會導致影像分裂,如圖3所述,其中,相對於該影像的下部份,該影像的上部份會反應出較舊的影像資訊。
在實例B中,陰影區域代表在緩衝器之目前讀取週期期間已經被讀取的緩衝器之線。在該實例中,此區域包括線1至351。讀取指標510指示線352目前正被讀取。因此,在實例B中的區域〝Ⅱ〞代表在已知現有讀取線位置之情況下必須被更新的線。在區域〝Ⅱ〞中的線無法根據目前的讀取線位置以及對緩衝器的讀取與寫入速度來予以更新,並且根據以上說明而屬於緩衝器的第二部份。在區域〝I〞中的線屬於緩衝器的第一部份,並且能被安全更新。為了更新該緩衝器,寫入可在區域〝I〞中開始。資料可被寫入在立即接著區域〝Ⅱ〞後之區域〝I〞中的線上。這對應於實例B中的線m。
實例C例舉接在B所示之方案後的方案。在實例C中,讀取指標510已經被捲上,並且正在讀取緩衝器的線m。因此,在緩衝器中之讀取指標以前的線屬於緩衝器的第一部份,並可被更新。在區域〝Ⅱ〞中的線則在已知目前的讀取線位置下,於到緩衝器的最後一個讀取週期期間被更新。在區域〝Ⅱ〞中的線不會被更新,並且屬於如上所述之緩衝器的第二部份。換句話說,在區域〝Ⅱ〞中的線必須包含被更新於已知讀取線位置下的資訊,因為在他們必須被讀取以前並沒有足夠的時間來更新。陰影區域〝I〞代表被安全更新之緩衝器第一部份的線,但在已知他們在緩衝器的最後一個讀取週期期間不被讀取下不應該被更新。
緩衝器讀取/寫入策略
避免與緩衝器更新有關之影像分裂或等同問題的緩衝器讀取/寫入策略被說明於此。依據本發明之緩衝器更新策略會進一步去除目前所採用〝雙倍緩衝〞技術的需要。反而是單一緩衝器會被使用,其產生實施成本與空間節省兩者。本發明並不限於在此所述的代表性策略,而且對那些熟諳該技藝者係明顯的改變亦被視為是在本發明的範圍內。
圖6A與6B舉例說明依據本發明之代表性緩衝器讀取/寫入策略。圖6A與6B的圖形顯示做為緩衝器位置與時間之函數之讀取指標612以及寫入指標614與616的繪圖。在圖6A與6B的實例中,緩衝器位置係根據緩衝器中的像素位置來予以界定的,其可等同地以緩衝器位置的任何其他測量來予以取代,舉例來說,例如線數目。
參照圖6A,代表性緩衝器讀取/寫入策略被描述於該緩衝器的兩個讀取週期上。在第一個讀取週期中,從時間0至時間t1 ,緩衝器的前半被更新,而同時整個緩衝器內容被讀取。在緩衝器的第二個讀取週期中,從時間t1 至時間t2 ,緩衝器的後半被更新,而整個緩衝器內容被讀取。注意,在第二個讀取週期期間,緩衝器的前半包含經更新的資訊,該資訊在第一個讀取週期期間被寫入到緩衝器。在第二個週期期間,緩衝器的後半會在如所示由及時在第二個讀取週期上讀取指標612以前的寫入指標614所讀取以前被更新。因此,在兩個讀取週期上,從緩衝器所讀取出的資料屬於緩衝器的相同更新週期,而且沒有任何影像分裂發生。
圖6B舉例說明在緩衝器之兩個讀取週期上的另一代表性緩衝器讀取/寫入策略。在第一個讀取週期期間,緩衝器的前半係從時間t0 更新至時間t1 。在第二個讀取週期期間,緩衝器的後半係從時間t1 更新至時間t2 。注意,在第一個週期期間,寫入到緩衝器開始於時間t0 ,使得在第一個週期期間,整個緩衝器由於寫入程序而讀取有最初的資訊內容而非經更新的內容。另一方面,寫入到緩衝器結束於第二個週期期間的時間t2 ,使得在第二個週期期間,整個緩衝器當其被讀取時包含經更新的資訊內容。此乃藉由及時在第二個讀取週期上讀取指標612之前的寫入指標616來予以顯示。因此,影像分裂將不會發生在圖6B實例中的兩個讀取週期上。
經由通訊鏈結的緩衝器更新
依據本發明之更新緩衝器的方法與系統可被使用於各種應用中。如上所述,在一個應用中,該緩衝器更新方法可被使用來更新與顯示器有關的框緩衝器。在另一應用中,該緩衝器可被遠距離地更新,其中,他會藉由第一處理器來寫入,並藉由第二處理器來讀取,且其中,第一與第二處理器經由通訊鏈結來通訊。例如,第一與第二處理器分別代表MSM基頻帶處理器與LCD模組,其經由MDDI鏈結來通訊,如圖2所示。在某些應用中,第一與第二處理器之間的同步化將是需要的。
現將提供相關於同步化以致使緩衝器更新於通訊鏈結上的方法與系統。如同那些熟諳該技藝者依據在此之教旨而將理解到的,所呈現方法與系統的某些態樣可應用在一般的同步化的問題,且並不限於用以致能遠距離的緩衝器更新之同步化。
在一態樣中,第一與第二處理器之間的同步化包括在第一處理器處排程第一事件,該第一處理器係藉由第二處理器處的第二事件來予以觸發。典型,本上這是藉由寫入到暫存器來完成,以在每當第二事件發生於第二處理器時,致能致使第一處理器處之第一事件中斷的觸發。例如,在遠距離緩衝器更新應用中,在緩衝器藉由第一處理器來更新並藉由第二處理器來讀取之處,第一事件代表開始寫入到緩衝器的需要,然而第二事件則代表該讀取指標已經完成該緩衝器的完整讀取週期。根據該緩衝器的讀取線位置,第二事件然後在第二處理器處被觸發。
在另一態樣中,提供傳送同步化資訊於通訊鏈結上的方法。例如,如上所述,該等方法可被用來中繼與緩衝器更新有關的同步化資訊。圖7為一程序流程圖700,該流程圖例舉當通訊鏈結在冬眠模式中,將時序資訊傳遞於第一處理器與第二處理器間之通訊鏈結上的方法。程序流程圖700開始於步驟710中,其包括在第一處理器處排程一時間事件,以傳遞時序資訊到第二處理器。如同由特定應用所要求的,該時間事件為一週期性事件。例如,在緩衝器更新應用的情況中,該時間事件與緩衝器中的讀取線位置有關。
步驟720包括在該時間事件發生時,藉由第一處理器啟動鏈結喚醒。例如,在緩衝器更新於MDDI鏈結上的情況中,在MDDI客戶端係位於互連的LCD模組側上之處,MDDI客戶端可藉由驅動資料信號到一邏輯件來啟動鏈結喚醒,以告知MDDI主機該緩衝器應該被更新。
而後,步驟730包括偵測第二處理器處的鏈結喚醒(例如,在MDDI互連之MSM側上的MDDI主機),並且使用所偵測到的鏈結喚醒時序,以相關於被傳送的時序資訊來同步化第一與第二處理器。例如,在更新於MDDI鏈結上之緩衝器的情況中,當MDDI主機偵測出由MDDI客戶端所喚醒的鏈結時,其可相對於緩衝器更新開始時間而使其本身與MDDI客戶端同步化。
那些熟諳該技藝者依據在此之教旨而將可理解到,圖7所述的方法會擴及到傳送任何種類的時序資訊於通訊鏈結上,其並不限於緩衝器更新同步化目的。此等方法的優點為經由節省該鏈結,並且藉由簡單地喚醒該鏈結來傳遞資訊。
圖8舉例說明用來啟動鏈結喚醒以傳送時序資訊於MDDI互連上的實例時序圖800。例如,MDDI互連可譬如為參照圖2而敘述於上的一個互連,其具有一位於MSM處的MDDI主機,以及一位於LCD模組處的MDDI客戶端。因此,MDDI客戶端將啟動一鏈結喚醒,以傳送緩衝更新資訊到MDDI主機,其依序將開始刷新位於LCD模組中的緩衝器。在圖8的實例中,vsync_wakeup信號802代表寫入到在MDDI主機之暫存器的一值,以根據vsync信號806來致能主機處的喚醒。主機處的喚醒發生於每當vsync_喚醒802值係高的時候。vsync信號806代表〝垂直同步〞的信號值,其係發生於客戶端,並與緩衝更新時間有關。例如,每當讀取指標捲上並從緩衝器開始讀取時,vsync806會變高。Lmk_active信號804代表MDDI互連的資料信號是否為主動或在冬眠中。mddi_client_wakeup信號808代表在客戶端的一信號,其回應於vsync806以喚醒客戶端。
在圖8的實例中,在時間A時,vsync_wakeup 802被設定於主機處。在時間B時,MDDI鏈結進入冬眠模式。在時間C時,vsync806會變高,其指示該緩衝器需要藉由主機來重新更新。結果,mddi_client_wakeup信號808亦同樣變高,以喚醒客戶端來啟動鏈結喚醒。客戶端藉由驅動互連的資料信號來啟動鏈結喚醒,且在時間D時,該鏈結會變成主動。接著,vsync_wakeup 802與mddi_client_wakeup會回復到零,且該主機偵測鏈結喚醒並開始重新更新客戶端的緩衝器。
結語
在本發明之各種實施例已被說明如上的同時,應該理解的是,他們僅僅藉由舉例說明來予以提出,且沒有限制性。那些熟諳相關技藝者將明瞭,在形式與細節上的種種改變是在不違背本發明精神與範圍之下進行。因此本發明的寬度與範圍應該不會受到任何上述代表性實施例所限制,但卻應該僅僅根據以下申請專利範圍與其等同物來予以界定。
100...數位資料介面裝置
102...下掀蓋部分
104...移動台調製解調器(MSM)基帶晶片
105...通訊鏈結
106...行動顯示數位介面客戶端
108...行動顯示數位介面鏈結控制器
110...訊息解譯器模組
112...照相機模組
114...上掀蓋部分
116...圖形控制器液晶顯示模組
118...照相機模組
120...內容模組
120...行動顯示數位介面客戶端
122...行動顯示數位介面主機
130...控制模組
140...鏈結控制器
150...數位裝置
160...系統控制器
170...鏈結控制器
180...週邊裝置
190...控制方塊
202...資料信號
206...探測信號
210...功率信號
302...指標線
400...製程流程
500...緩衝器
510...讀取指標
612...讀取指標
614...寫入指標
616...寫入指標
700...製程流程
800...時序圖
802...垂直同步喚醒信號
804...鏈結主動信號
806...垂直信號
808...行動顯示數位介面客戶端喚醒信號
在此所合併並且形成一部分說明書的附圖顯示本發明,而且連同本說明,其係進一步用來解釋本發明原理,並使那些熟諳有關技藝者進行與使用本發明。
圖1係舉例說明使用行動顯示數位介面(MDDI)介面之實例環境的方塊圖。
圖1A係耦合到數位裝置與週邊裝置之數位資料裝置介面的圖形。
圖2係舉例說明依據圖1實例之實施例之MDDI鏈結互連的方塊圖。
圖3係舉例說明影像分裂問題的實例。
圖4係舉例說明一依據本發明來更新緩衝器之方法的程序流程圖。
圖5舉例說明圖4之方法的實例。
圖6A、6B舉例說明緩衝器讀取/寫入策略。
圖7係舉例說明一依據本發明之傳送時序資訊於通訊鏈結上之方法的程序流程圖。
圖8舉例說明用來啟動MDDI鏈結喚醒以傳送時序資訊的實例信號時序圖。
本發明將參考附圖來做說明。一元件首先出現的圖形基本上係由相應參考號碼最左邊的數字未予以標示出來。
500...緩衝器
510...讀取指標

Claims (39)

  1. 一種更新具有複數條線之緩衝器的方法,包含:(a)決定在該緩衝器中的讀取線位置,該讀取線位置指示目前正從緩衝器所讀出的線;(b)依據讀取線位置將該緩衝器分割成多個部分,其中該等部份包含可安全更新的一第一部份,以及一定不予以更新的一第二部份;以及(c)在該第一部份的線處寫入資料,以更新該緩衝器,其中該線係根據該讀取線位置而緊接著該第二部份之後。
  2. 如申請專利範圍第1項之方法,其中該讀取線位置係藉由決定一讀取指標值來予以決定的。
  3. 如申請專利範圍第1項之方法,其中該緩衝器的該第一部份包含以下的至少其中一個:(i)已經在該緩衝器的最後一個讀取週期中被讀取之該緩衝器的多個線;以及(ii)能夠根據該讀取線位置來予以更新之該緩衝器的多個線。
  4. 如申請專利範圍第3項之方法,其中(ii)另包含能夠在該讀取線位置到達其之前,根據緩衝器讀取速度與緩衝器寫入速度而被更新之該緩衝器的多個線。
  5. 如申請專利範圍第1項之方法,其中該緩衝器的該第二部份包含不能夠在該讀取線位置到達其之前,根據緩衝器讀取速度與緩衝器寫入速度而被更新之該緩衝器的多 個線。
  6. 如申請專利範圍第5項之方法,其中該緩衝器的該第二部份另包含在該緩衝器的最後一個讀取週期期間必須已被更新的線。
  7. 如申請專利範圍第1項之方法,其中該緩衝器係藉由第一處理器來予以寫入,並藉由第二處理器來予以讀取。
  8. 如申請專利範圍第7項之方法,進一步包含其中,該第一與第二處理器經由通訊鏈結而遠距離地通訊。
  9. 如申請專利範圍第8項之方法,其中該第一處理器根據由該第二處理器之第二事件所觸發之該第一處理器的第一事件來更新該緩衝器。
  10. 如申請專利範圍第9項之方法,另包含:(d)藉由寫入到暫存器來排程第一事件,以致能根據該第二事件而引起該第一事件之中斷的觸發;以及(e)根據該緩衝器的該讀取線位置,在第二處理器處觸發該第二事件。
  11. 如申請專利範圍第10項之方法,其中當該通訊鏈結係在冬眠模式中時,該第一事件代表一鏈結喚醒事件。
  12. 如申請專利範圍第8項之方法,其中該第一與第二處理器代表行動顯示數位介面(MDDI)鏈結的主機與客戶端控制器。
  13. 如申請專利範圍第9項之方法,其中該第一控制器代表一行動台數據機(MSM)基頻處理器,且其中該第二 控制器代表一LCD控制器。
  14. 如申請專利範圍第13項之方法,其中該緩衝器代表被使用來更新LCD顯示器的框緩衝器。
  15. 如申請專利範圍第14項之方法,其中在該顯示器中的影像分裂(tearing)被實質地避免。
  16. 如申請專利範圍第1項之方法,其中根據一讀取指標值來決定該讀取線位置,且該方法進一步包含:藉由重覆增加該讀取指標目前值以及重覆(a)及(b)步驟以讀取多個讀取線位置之一範圍內之多個線來執行一讀取循環,以及在該讀取循環內藉由重覆(c)步驟將資料寫入該第一部分之多個線內來更新該緩衝器之至少一部分,該等線係在緊跟在該邏輯分割中該第二部分之最後一條線之後之多個線位置,其中該等線位置在該讀取循環中隨著多個讀取線位置變動。
  17. 如申請專利範圍第16項之方法,其中讀取該讀取循環包含重覆增加該讀取指標目前值以及(a)及(b)步驟以讀取所有該等緩衝器線,且其中在讀取循環中該緩衝器之該第一部分包含以下至少一者:(i)已經在該緩衝器的最後一個讀取週期中被讀取之該緩衝器的多個線;以及(ii)能夠根據該讀取線位置來予以更新之該緩衝器的多個線。
  18. 一種傳送時序資訊於第一處理器與第二處理器間之 通訊鏈結上的方法,其中該通訊鏈結係在冬眠模式中,該方法包含:在該第一處理器處排程時間事件,以傳送該時序資訊到該第二處理器;在該時間事件之發生時,藉由該第一處理器啟動鏈結喚醒;以及在該第二處理器處偵測該鏈結喚醒,並且使用所偵測出的鏈結喚醒時序,以關於該所傳送的時序資訊而使第一與第二處理器同步化。
  19. 如申請專利範圍第18項之方法,其中該通訊鏈結代表一行動顯示數位介面(MDDI)鏈結。
  20. 如申請專利範圍第19項之方法,其中該第一與第二處理器分別代表MDDI客戶端與MDDI主機。
  21. 如申請專利範圍第20項之方法,其中該時序資訊代表與正經由MDDI鏈結被控制之顯示相關聯的緩衝器更新時間。
  22. 一種用以更新及讀取用於一顯示器之一緩衝器之裝置,該緩衝器具有複數條線,其對應到該顯示器之多個畫素以避免緩衝於該緩衝器中且顯示於該顯示器上之多個畫面分裂,該裝置包含:(a)一第一處理器,其組態以根據一讀取指標目前值決定該緩衝器中之一目前讀取線位置,並讀取位於該目前讀取線位置之該線,以及組態以執行該緩衝器之邏輯分割成可安全更新的至少一第一部分以及一定不予以更新的 一第二部分,其中該邏輯分割係根據該目前讀取線位置之改變並相對應地改變,以及(b)一第二處理器,其組態以在該第一部分的一條線處寫入資料以更新該緩衝器中之該線,其中該寫入資料的處理器包含根據該目前讀取線位置來定位該第一部分的該線以緊接著該邏輯分割中之該第二部分之後。
  23. 如申請專利範圍第22項之裝置,其中該第一處理器係進一步組態以藉由重覆增加該讀取指標目前值及重覆(a)以讀取多個讀取線位置之一範圍內之多個線來執行一讀取循環,以及其中該第二處理器係配置以在該讀取循環內藉由重覆(b)將資料寫入該第一部分之多個線內來更新該緩衝器之至少一部分,該等線係在緊跟在該邏輯分割中該第二部分之最後一條線之後之多個線位置,其中該等線位置在該讀取循環中隨著多個讀取線位置變動。
  24. 如申請專利範圍第23項之裝置,其中該第一處理器係組態以藉由重覆增加該讀取指標目前值及(a)以讀取所有緩衝器線,並且進一步組態以使得在該讀取循環中,該緩衝器之該第一部分包含以下至少一者:(i)已經在該緩衝器的最後一個讀取週期中被讀取之該緩衝器的多個線;以及(ii)能夠根據該讀取線位置來予以更新之該緩衝器的多個線。
  25. 如申請專利範圍第24項之裝置,其中該第一處理 器係進一步組態以使得(ii)進一步包含能夠在該目前讀取線位置到達其之前,根據緩衝器讀取速度與緩衝器寫入速度而被更新之該緩衝器的多個線。
  26. 如申請專利範圍第23項之裝置,其中該第一處理器係進一步組態以使得該緩衝器之該第二部分包含不能夠在該目前讀取線位置到達其之前,根據緩衝器讀取速度與緩衝器寫入速度而被更新之該緩衝器的多個線。
  27. 如申請專利範圍第23項之裝置,其中該第一處理器係進一步組態以使得該緩衝器之該第二部分進一步包含在該緩衝器的最後一個讀取週期期間必須已被更新之多個線。
  28. 如申請專利範圍第23項之裝置,進一步包含一在該第一和該第二處理器間之通訊鏈結,且其中該第一與該第二處理器係進一步組態以經由通訊鏈結通訊。
  29. 如申請專利範圍第28項之裝置,其中該第二處理器係組態以根據由該第一處理器之一第二事件所觸發之該第二處理器之一第一事件即時更新該緩衝器。
  30. 如申請專利範圍第29項之裝置,其中(a)該第二處理器係進一步組態以藉由寫入到暫存器來排程該第一事件,以致能根據該第二事件而引起該第一事件之一中斷的該觸發;以及(b)第一處理器係進一步組態由根據該緩衝器之該讀取線位置之該第二事件觸發。
  31. 如申請專利範圍第30項之裝置,其中當該通訊鏈 結係在冬眠模式中時,該第一事件代表一鏈結喚醒事件。
  32. 一種用以更新具有複數條線之一緩衝器之裝置,其包含:用以決定在該緩衝器中的一讀取線位置之構件,該讀取線位置指示目前正從該緩衝器所讀出之一線;用以依據該讀取線位置將該緩衝器分割成多個部分之構件,其中該等部份包含可安全更新的一第一部份,以及一定不予以更新的一第二部份;以及用以在該第一部份的線處寫入資料以更新該緩衝器之構件,其中該線係根據該讀取線位置而緊接著該第二部份之後。
  33. 如申請專利範圍第32項之裝置,其中用以將該緩衝器分割之構件係組態以分割該緩衝器,該緩衝器之該第一部分包含以下至少一者:(i)已經在該緩衝器的最後一個讀取週期中被讀取之該緩衝器的多個線;以及(ii)能夠根據該讀取線位置來予以更新之該緩衝器的多個線。
  34. 一種機器可讀媒體,其包含代碼,該代碼被一處理器執行時,使得該處理器執行以下步驟:(a)決定在該緩衝器中之一讀取線位置,該讀取線位置指示目前正從緩衝器所讀出之一線;(b)依據該讀取線位置將該緩衝器分割成數個部分,其中該等部份包含可安全更新的一第一部份,以及一定 不予以更新的一第二部份;以及(c)在該第一部份的線處寫入資料以更新該緩衝器,其中該線係根據該讀取線位置而緊接著該第二部份之後。
  35. 如申請專利範圍第34項之機器可讀媒體,其中該代碼使得一處理器藉由決定一讀取指標值來決定一讀取線位置。
  36. 如申請專利範圍第34項之機器可讀媒體,其中該代碼使得一處理器分割該緩衝器,其中該緩衝器之該第一部分包含以下至少一者:(i)已經在該緩衝器的最後一個讀取週期中被讀取之該緩衝器的多個線;以及(ii)能夠根據該讀取線位置來予以更新之該緩衝器的多個線。
  37. 如申請專利範圍第36項之機器可讀媒體,其中該代碼使得一處理器分割該緩衝器,其中(ii)進一步包含能夠在該讀取線位置到達其之前,根據緩衝器讀取速度與緩衝器寫入速度而被更新之該緩衝器的多個線。
  38. 如申請專利範圍第34項之機器可讀媒體,其中該代碼使得一處理器分割該緩衝器,其中該緩衝器的該第二部份包含不能夠在該讀取線位置到達其之前,根據緩衝器讀取速度與緩衝器寫入速度而被更新之該緩衝器的多個線。
  39. 如申請專利範圍第38項之機器可讀媒體,其中該 代碼使得一處理器分割該緩衝器,其中該緩衝器的該第二部份另包含在該緩衝器的最後一個讀取週期期間必須已被更新之多個線。
TW94141289A 2004-11-24 2005-11-24 用以更新緩衝器之方法及系統 TWI389511B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US63085304P 2004-11-24 2004-11-24
US11/285,399 US8692838B2 (en) 2004-11-24 2005-11-23 Methods and systems for updating a buffer

Publications (2)

Publication Number Publication Date
TW200637271A TW200637271A (en) 2006-10-16
TWI389511B true TWI389511B (zh) 2013-03-11

Family

ID=48471170

Family Applications (1)

Application Number Title Priority Date Filing Date
TW94141289A TWI389511B (zh) 2004-11-24 2005-11-24 用以更新緩衝器之方法及系統

Country Status (1)

Country Link
TW (1) TWI389511B (zh)

Also Published As

Publication number Publication date
TW200637271A (en) 2006-10-16

Similar Documents

Publication Publication Date Title
JP4669008B2 (ja) バッファを更新するための方法及びシステム
US8692838B2 (en) Methods and systems for updating a buffer
US8692839B2 (en) Methods and systems for updating a buffer
TWI389511B (zh) 用以更新緩衝器之方法及系統
TWI376114B (en) Methods and systems for synchronous execution of commands across a communication link
TWI470964B (zh) 數位資料介面裝置
MX2007006198A (en) Methods and systems for updating a buffer
TWI412936B (zh) 雙倍資料速率串列編碼器

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees