TWI470438B - 動態切換資料佇列臨界值的系統及方法 - Google Patents

動態切換資料佇列臨界值的系統及方法 Download PDF

Info

Publication number
TWI470438B
TWI470438B TW97139870A TW97139870A TWI470438B TW I470438 B TWI470438 B TW I470438B TW 97139870 A TW97139870 A TW 97139870A TW 97139870 A TW97139870 A TW 97139870A TW I470438 B TWI470438 B TW I470438B
Authority
TW
Taiwan
Prior art keywords
threshold
state
data
fifo
cpu
Prior art date
Application number
TW97139870A
Other languages
English (en)
Other versions
TW201017423A (en
Inventor
Chih Hao Weng
Ta Jung Yeh
Original Assignee
Via Tech 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
Application filed by Via Tech Inc filed Critical Via Tech Inc
Priority to TW97139870A priority Critical patent/TWI470438B/zh
Publication of TW201017423A publication Critical patent/TW201017423A/zh
Application granted granted Critical
Publication of TWI470438B publication Critical patent/TWI470438B/zh

Links

Landscapes

  • Power Sources (AREA)

Description

動態切換資料佇列臨界值的系統及方法
本發明係有關一種電源管理(power management),特別是關於一種動態切換先進先出緩衝器(FIFO)臨界值的系統及方法。
英特爾公司(Intel)於西元2004年制訂公告了高解析聲音(high definition audio,以下簡稱HDA)規格,其規格詳細內容可以參考High Definition Audio Specificatior版本1.0及其後續更新版本(http://www.intel.com/standards/hdaudio/)。
第一圖顯示HDA的基本架構。中央處理器(CPU)10經由主匯流排(host bus)11連接至記憶體控制器12,其係用以控制系統記憶體13的存取。記憶體控制器12經由系統匯流排(例如PCI)14連接至HDA控制器(HDAC)15。HDA控制器15經由HDA鏈結(link)16連接至一個或多個編解碼器(coder/decoder,codec)17。HDA控制器15包含有一個或多個直接記憶體存取(DMA)引擎(engine)或控制器150(以下簡稱為DMA),用以控制系統記憶體13和編解碼器17之間資料流(data stream)的傳送。HDA鏈結16則是提供一個途徑,讓HDA控制器15和編解碼 器17之間得以傳送控制信號及資料。每個編解碼器17包含有一個或多個轉換器(converter,C),用以將數位信號轉換成類比信號至輸出裝置(例如喇叭),或者自輸入裝置(例如麥克風)接收類比信號並將其轉換為數位信號。
DMA 150內含有資料佇列(queue),例如先進先出(first in first out,FIFO)緩衝器(以下簡稱FIFO),儲存足夠的資料以維持HDA鏈結16中的資料流,使其不會有短缺(under run)或溢出(overrun)情形。因此,在資料傳送至HDA鏈結16之前,如果FIFO中的資料量少於一臨界值(threshold),則HDA控制器15會進入匯流排主控週期(bus master cycle),至系統記憶體13內存取資料。通常,FIFO臨界值、連續傳送長度(burst length)及FIFO長度(FIFOSIZE)之間具有下表一之關係,其中h代表16進位數值,DW代表雙字組(double word,其相當於4位元組):
FIFO臨界值的功能在於讓HDA控制器15得以知道何時必須進 入匯流排主控週期(bus master cycle)以取得系統記憶體13內的資料進行播放(playback)或儲存資料至系統記憶體13內。藉此,可避免因系統匯流排14忙碌而造成的資料短缺(under run)情形,作為一種容錯(tolerance)作用。
第二圖例示一FIFO,其總長度為192位元組,而臨界值為128位元組。以取樣率48kHz、二頻道、每一頻道有16位元(或2位元組)的資料格式為例,每一資料框(frame)含4位元組,即可將”每一資料框”視為”單位資料傳輸量”。當FIFO內的資料少於128位元組時,HDA控制器15即會進入匯流排主控週期(bus master cycle)。由於每一資料框的傳送時間為20.83微秒(μs)(=1/(48x103)),即可將”20.83微秒(μs)”視為”單位傳輸時間”,因此128位元組可以容納32資料框(=128/4)達666微秒(μs)(=32x20.83)之久。
於第一圖的HDA系統中,輸出入裝置(例如喇叭、耳機、數據機或麥克風)藉由編解碼器17而連接至HDA控制器15。HDA鏈結16界面藉由一些基本控制信號來進行資料的傳送。例如,序列數位輸出信號(serial digital output,以下簡稱AZSDO)係用以傳送序列格式資料至輸出裝置;序列數位輸入信號(serial digital input,以下簡稱AZSDI)係用以接收輸入裝置的資料;同步信號SYNC係由HDA控制器15所驅動,用以作為資料框之同步及作為向外標籤(outbound tag)信號;重置信號AZRST#用以重置HDA鏈結16;時脈信號AZBITCLK為24MHz時脈信號源,其係由48MHz USBPHY PLL經除法運算所得到。
當HDA的驅動器(driver)向HDA控制器15發出請求 (request)並設定(set)執行(RUN)位元後,則HDA控制器15即可藉由DMA 150而與編解碼器17進行播音、錄音、向外指令環緩衝器序列(command outbound ring buffer,CORB)或向內回應環緩衝器序列(response inbound ring buffer,RIRB)。
第一圖系統中的電源功率管理單元(power management unit,以下簡稱PMU)18係用以控制中央處理器10的省電睡眠狀態(Cx)。例如惠普(HP)、英特爾(Intel)等公司所制訂的ACPI(Advanced Configuration and Power Interface)規格,該規格詳細內容可以參考網站(http://www.acpi.info/)。根據ACPI規格,C0狀態代表CPU 10處於完全工作狀態,而C1至Cn則為各種睡眠狀態;其中,n值愈大表示CPU 10閒置程度愈大,亦即愈節省電源。當處於C2(或以下)狀態時,系統可以繼續進行系統記憶體13的存取;當處於C3或以上狀態時,則系統無法進行系統記憶體13的存取。換句話說,如果處於C4狀態且FIFO內的資料量少於臨界值時,CPU 10必須從C4轉變至C2狀態,才能向系統記憶體13請求資料。同樣道理,如果處於C3狀態且FIFO內的資料量少於臨界值時,CPU 10必須從C3轉變為C2狀態,才能向系統記憶體13請求資料。
HDA控制器15和編解碼器17可以在睡眠狀態Cx中,無須軟體觸發而請求匯流排主控事件(event)或者中斷事件。此時,編解碼器17可驅動AZSDI以告知HDA控制器15並請求匯流排主控週期或中斷。此AZSDI信號可以被PMU 18鎖住以形成電源管理事件(power management event,簡稱PME事件),讓CPU 10離開睡眠狀態Cx。
第三圖顯示傳統HDA系統進入及離開睡眠狀態的流程圖。首先,PMU 18發出信號使得CPU 10進入C3或C4(亦即,C3/C4)狀態(步 驟30)。接著,以步驟31判定HDAC的RUN位元是否為主動(active)。如果RUN位元非為主動,則CPU 10處於C3/C4狀態(步驟32A)。此時,HDA鏈結16處於重置(reset)狀態(步驟33A),其使得編解碼器17被隱藏住(此時的HDA鏈結16不存在)。接著,於步驟34A中,如果HDA控制器15偵測到主動AZSDI信號,則CPU 10將離開C3/C4狀態而進入C0/C2狀態(步驟35);否則,如果HDA控制器15偵測到非主動AZSDI信號,則CPU 10維持於C3/C4狀態(步驟32A)。
如果步驟31所判定的RUN位元為主動,則CPU 10處於C3/C4狀態(步驟32B)。此時,HDA鏈結16離開重置(reset)狀態(步驟33B),其使得編解碼器17可被顯現出來(此時的HDA鏈結16存在)。接著,於步驟34B中,如果HDA控制器15偵測到主動AZSDI信號,或者FIFO內資料少於臨界值,則CPU 10將離開C3/C4狀態而進入C0/C2狀態(步驟35);否則,CPU 10維持於C3/C4狀態(步驟32B)。
當CPU 10處於C3/C4狀態時,由於HDA裝置亟容易進入匯流排主控週期,因此,FIFO內並不需要儲存太多資料作為播放或錄音之用。傳統HDA系統無論是處於C3/C4狀態或者C0/C2狀態,均採用固定的FIFO臨界值,因此造成CPU 10經常地離開C3/C4以進入C0/C2狀態。鑑於傳統之省電睡眠狀態轉換對於省電並非很有效率,因此亟需提出一種新穎的控制機制,以節省更多的電源,使得可攜式電子裝置可以在有限電源供應的情形下,使用更久的時間。
本發明的目的之一在於提供一種可動態切換資料佇列(例如FIFO)之臨界值的系統及方法,使得系統電源之節省更為有效。
根據本發明實施例,資料佇列(例如FIFO)設有第一臨界值及第二臨界值,其中第一臨界值大於第二臨界值。根據中央處理器(CPU)處於不同之省電狀態而動態切換至資料佇列的第一臨界值或第二臨界值。例如,當CPU由第一狀態變成較省電的第二狀態時,由第一臨界值切換至第二臨界值;當CPU由較省電的第二狀態變成第一狀態時,則由第二臨界值切換至第一臨界值。當資料佇列內的資料量少於切換後之第一臨界值或第二臨界值時,則存取一主記憶體以填滿資料佇列。
10‧‧‧中央處理器(CPU)
11‧‧‧主匯流排(host bus)
12‧‧‧記憶體控制器
13‧‧‧系統記憶體
14‧‧‧系統匯流排
15‧‧‧HDA控制器
16‧‧‧HDA鏈結(link)
17‧‧‧編解碼器(codec)
18‧‧‧PMU
30-35‧‧‧傳統HDA系統進入及離開睡眠狀態的流程步驟
40A‧‧‧設為第一臨界值之資料佇列
40B‧‧‧設為第二臨界值之資料佇列
60-71‧‧‧實施例之動態切換FIFO臨界值的流程步驟
150‧‧‧DMA
第一圖顯示HDA的基本架構。
第二圖例示一總長度為192位元組,臨界值為128位元組的FIFO。
第三圖顯示傳統HDA系統進入及離開睡眠狀態的流程圖。
第四A圖顯示本發明之動態切換資料佇列(queue)臨界值的發明概念。
第四B圖及第四C圖顯示根據本發明實施例之可動態切換臨界值之FIFO。
第五圖例示從C4狀態轉變為C3狀態直到C2狀態的信號波形圖。
第六圖顯示根據本發明實施例之動態切換FIFO臨界值的流程圖。
第四A圖顯示本發明之動態切換資料佇列(queue)臨界值的發明概念。資料佇列40A/40B(例如FIFO)設有第一臨界值及第二臨界值,其中第一臨界值大於第二臨界值。根據中央處理器(CPU)處於不同之省電狀 態而動態切換至資料佇列的第一臨界值或第二臨界值。如第四A圖所示,當CPU由第一狀態變成較省電的第二狀態時,由第一臨界值之資料佇列40A切換至第二臨界值之資料佇列40B。當CPU由較省電的第二狀態變成第一狀態時,則由第二臨界值之資料佇列40B切換至第一臨界值之資料佇列40A。
第四B圖及第四C圖顯示根據本發明實施例之可動態切換臨界值之FIFO。本實施例係以HDA系統為例,因此其系統架構將沿用第一圖所示之系統方塊圖及其標號。雖然本實施例以HDA為例,然而本發明也可以適用於其他的聲音規格系統、視訊規格系統,或一般的資料輸出入系統。例如:集成設備電路(Integrated Device Electronic;IDE)系統、序列進階技術附加裝置(Serial Advanced Technology Attachment;SATA)系統或通用序列匯流排(Universal Serial Bus;USB)系統。
在本實施例中,當CPU 10處於C0/C2狀態時,資料佇列之臨界值為較大的第一臨界值(第四B圖);當處於較省電的C3/C4狀態時,資料佇列之臨界值則為較小的第二臨界值。上述之C0、C2、C3、C4為ACPI(Advanced Configuration and Power Interface)規格中的省電狀態。CPU的省電狀態是由電源功率管理單元(PMU)18所控制的。
第四B圖及第四C圖所示之FIFO係以取樣率48kHz、二頻道、每一頻道有16位元(或2位元組)的資料格式為例,每一資料框(frame)含4位元組。在本實施例中,每一資料框(frame)可視為”單位資料傳輸量”之一種實施型態,然而其並非用以限定本發明。在其他實施例中,例 如:USB系統中,”單位資料傳輸量”可以為一個”交易”(Transaction)完成所涉及的資料傳輸量。對於第四B圖之FIFO,當HDA控制器15消耗了64位元組的資料後(亦即,FIFO內的資料少於臨界值128位元組時),CPU 10會離開C3/C4狀態並發出匯流排主控週期(bus master cycle)。由於每一資料框的傳送時間為20.83微秒(μs)(=1/(48x103)),即可將”20.83微秒(μs)”視為一個”單位傳輸時間”,亦即傳送一個”單位資料傳輸量”所需花的時間,因此這64位元組資料可讓CPU 10停留於C3/C4狀態達16資料框(=64/4)之久,相當於333.28微秒(μs)(=16x20.83)。
當本實施例將FIFO臨界值從第四B圖的128位元組(亦即,第一臨界值)切換至第四C圖的64位元組(亦即,第二臨界值)時,對於相同的資料格式(亦即,取樣率48kHz、二頻道、每一頻道有16位元(或2位元組)),當HDA控制器15消耗了128位元組的資料後(亦即,FIFO內的資料少於臨界值64位元組時),CPU 10會離開C3/C4狀態並發出匯流排主控週期(bus master cycle)。由於每一資料框的傳送時間為20.83微秒(μs)(=1/(48x103)),因此這128位元組資料可讓CPU 10停留於C3/C4狀態達32個資料框(=128/4)之久,亦即傳送32個”單位資料傳輸量”所需花的時間,相當於666.56微秒(μs)(=32x20.83)。相較於第四B圖之FIFO,第四C圖的FIFO可以讓CPU 10停留於C3/C4狀態的時間多出了333.28微秒(μs)(=666.56-333.28)。
CPU 10從Cx狀態(x大於或等於3)轉變為C2狀態需要花費一些時間。在這段時間內,為了避免資料有短缺(under run)或溢出(overrun)情形,因此,FIFO內必須維持足夠的資料量。鑑於此,新臨界 值的設定需足以應付CPU 10狀態轉變的時間。
第五圖例示從C4狀態轉變為C3狀態直到C2狀態的信號波形圖。CPU 10從C4進入C3狀態需時30.14微秒(μs)(=12.56+17.58),從C3進入C2狀態需時870奈秒(ns),因此,從C4至C2狀態總共需時約32微秒(μs)。若以一資料框的20.83微秒(μs)作為一單位傳輸時間(time unit of transportation),則第五圖所示之例子至少需要使用二單位傳輸時間才足以應付CPU 10狀態之轉變。也就是說,第二臨界值可設定為不小於二單位傳輸時間的長度。以取樣率48kHz、二頻道、每一頻道有16位元(或2位元組)的資料格式為例,二單位傳輸時間相當於8位元組,即2個”單位傳輸資料量”。通常,基於容錯(tolerance)之考量,會再加上數個”單位傳輸資料量”作為安全(safety)資料框。例如,如果CPU 10從C4轉變至C2狀態可能會超過41.66微秒(亦即,二單位傳輸時間)的情形發生,則必須加上數個”單位傳輸資料量”的安全資料框,以避免短缺(under run)或溢出(overrun)情形的發生。
在本實施例中,第二臨界值可以由下式得到:第二臨界值=(單位資料傳輸量)*[(由第一狀態變成第二狀態所需的時間)/(單位傳輸時間)]+n*(單位資料傳輸量)
上式中的n為不小於0的整數,在一實施例中可以由一暫存器中3位元所控制,且n為0~7之整數其中之一;上述的”安全資料框”即是指n*(單位資料傳輸量)。n可視應用情況而作調整,且不加入(n=0)或加入安全資料框後的第二臨界值仍不會大於第一臨界值。另外,在一實施例中,若[(由第二狀態/第一狀態變成第一狀態/第二狀態所需的時間)/(單位傳輸時間)]所計算的結果並非整數,則可將所得之”商數”加1,以避免資料有短缺 (under run)或溢出(overrun)。又,上述的第一臨界值或第二臨界值的單位可以是位元或是位元組。
第六圖顯示根據本發明實施例之動態切換FIFO臨界值的流程圖。首先,PMU 18發出信號使得CPU 10進入C3/C4狀態(步驟60)。接著,以步驟61判定HDAC的RUN位元是否為主動(active)。如果RUN位元非為主動,則CPU 10處於C3/C4狀態(步驟62)。此時,HDA鏈結16處於重置(reset)狀態(步驟63),其使得編解碼器17被隱藏住(此時的HDA鏈結16不存在)。接著,於步驟64中,如果HDA控制器15偵測到主動AZSDI信號,則CPU 10將離開C3/C4狀態而進入C0/C2狀態(步驟65);否則,如果HDA控制器15偵測到非主動AZSDI信號,則CPU 10維持於C3/C4狀態(步驟62)。
如果步驟61所判定的RUN位元為主動,則PMU 18會藉由HDA控制器15與PMU 18之間的一條連結線而藉由發出PMU_C3/C4信號(例如第五圖中的#DPSLP(C3)信號)讓HDA控制器15偵測得知目前的功率狀態(步驟66)。與傳統系統(如第三圖所示)作一比較,本實施例中的HDA控制器15可以主動偵測得知CPU 10目前的功率狀態,此為傳統系統所缺少的功能。
接著,將所算出的FIFO第二臨界值(亦即,C3/C4狀態的臨界值,例如第四C圖之例子)和FIFO第一臨界值(亦即,C0/C2狀態的臨界值,例如第四B圖所示)作比較(步驟67)。如果FIFO第二臨界值小於FIFO第一臨界值,則將HDA控制器15當中的相關FIFO臨界值切換為第二臨界值(步驟68A);否則,不作FIFO臨界值的切換(步驟68B)。
於臨界值之設定完成後,CPU 10係處於C3/C4狀態(步驟69)。此時,HDA鏈結16離開重置(reset)狀態(步驟70),其使得編解碼器17可被顯現出來(此時的HDA鏈結16存在)。接著,於步驟71中,如果HDA控制器15偵測到主動AZSDI信號,或者FIFO內資料少於臨界值,則CPU 10將離開C3/C4狀態而進入C0/C2狀態(步驟65);否則,CPU 10維持於C3/C4狀態(步驟69)。
根據本發明實施例,由於FIFO臨界值會動態地根據所處之功率狀態係為C0/C2狀態或者為C3/C4狀態而設定大小不同的臨界值,使得CPU 10可以處於C3/C4狀態達較長的時間,節省更多的電源,使得可攜式電子裝置可以在有限電源供應的情形下,使用更久的時間。
本發明是針對同一資料佇列臨界值進行”動態”調整,此與習知在出廠前所進行的人為調整是不一樣的。舉例來說,如果習知FIFO size原本是40hDW,其臨界值為31h DW,出廠前可能因客戶需求,而會故意將FIFO size 40hDW的臨界值調成另一個臨界值19hDW。相對的,本案之第一臨界值為一般出廠的臨界值(同於習知的臨界值),第二臨界值中的”單位資料傳輸量”、”單位傳輸時間”為使用者於使用時,依照使用狀況而得到的值,所以第二臨界值是可以事後動態加以變動的。
就硬體架構來說,在本發明的一個實施例中,DMA 150可以整合於HDA控制器15中;但是,在其他實施例中,DMA 150則可以配置於HDA控制器15外。再者,於本發明一實施例中,一個FIFO可以配置對應於一個DMA 150;但是,在其他實施例中,可以將多個FIFO配置對應至同一DMA 150,用以降低成本。
以上所述僅為本發明之較佳實施例而已,並非用以限定本發明 之申請專利範圍;凡其它未脫離發明所揭示之精神下所完成之等效改變或修飾,均應包含在下述之申請專利範圍內。例如,本發明可適用於需存取主記憶體資料之一般資料佇列,不一定侷限在HDA系統中。
40A‧‧‧設為第一臨界值之資料佇列
40B‧‧‧設為第二臨界值之資料佇列

Claims (19)

  1. 一種動態切換資料佇列(queue)臨界值的高解析聲音(HDA)系統,包含:一高解析聲音控制器;一電源功率管理單元,透過一連結線與該高解析控制器連接;一資料佇列,其設有一第一臨界值及一第二臨界值,根據一中央處理器(CPU)處於不同之省電狀態而動態切換至該資料佇列的該第一臨界值或該第二臨界值,其中該第一臨界值大於該第二臨界值;當該資料佇列內的資料量少於切換後之該第一臨界值或該第二臨界值時,則存取一主記憶體以填滿該資料佇列;其中當該CPU由一第一狀態變成一第二狀態時,藉由該連結線使該高解析聲音控制器接收來自該電源功率管理單元發出的信號,而由該第一臨界值切換至該第二臨界值;當該CPU由該第二狀態變成該第一狀態時,由該第二臨界值切換至該第一臨界值,其中該第二狀態比該第一狀態省電;其中該第二臨界值=(單位資料傳輸量)*[(由該第一狀態變成該第二狀態所需的時間)/(單位傳輸時間)]+n*(單位資料傳輸量);其中n為不小於0的整數。
  2. 如申請專利範圍第1項所述動態切換資料佇列臨界值的高解析聲音系統,其中當該CPU處於C0或C2狀態時,該資料佇列之臨界值為該第一臨界值;當處於C3或C4狀態時,該資料佇列之臨界值為該第二臨界值,其中上述之C0、C2、C3、C4為ACPI(Advanced Configuration and Power Interface)規格中的省電狀態。
  3. 如申請專利範圍第2項所述動態切換資料佇列臨界值的高解析聲音系統,上述之該電源功率管理單元(PMU)用以控制該CPU的省電狀態。
  4. 如申請專利範圍第1項所述動態切換資料佇列臨界值的高解析聲音系統,其中該n值由一暫存器中3位元所控制,n為0~7之整數其中之一。
  5. 如申請專利範圍第1項所述動態切換資料佇列臨界值的高解析聲音系統,其中該資料佇列為先進先出緩衝器(FIFO),該高解析聲音系統更包含至少一直接記憶體存取引擎(DMA),而該FIFO對應至少該DMA配置,以藉由至少該DMA存取該主記憶體以填滿該FIFO。
  6. 如申請專利範圍第1項所述動態切換資料佇列臨界值的高解析聲音系統,其中該資料佇列為先進先出緩衝器(FIFO),而該HDA控制器包含有至少一直接記憶體存取引擎(DMA),且至少該DMA對應該FIFO配置。
  7. 如申請專利範圍第6項所述動態切換資料佇列臨界值的高解析聲音系統,更包含一HDA鏈結(link),用以將該DMA連接至一個或多個編解碼器(codec)。
  8. 一種動態切換資料佇列(queue)臨界值的方法,其適用於高解析聲音(HDA)系統,包含:透過一連結線與一高解析控制器連接一電源功率管理單元;根據一中央處理器(CPU)處於不同之省電狀態而動態切換一資料佇列之臨界值至一第一臨界值或一第二臨界值,其中該第一臨界值大於該 第二臨界值;當該資料佇列內的資料量少於切換後之該第一臨界值或該第二臨界值時,則存取一主記憶體以填滿該資料佇列;其中當該CPU由一第一狀態變成一第二狀態時,藉由該連結線使該高解析聲音控制器接收來自該電源功率管理單元發出的信號,而由該第一臨界值切換至該第二臨界值;當該CPU由該第二狀態變成該第一狀態時,由該第二臨界值切換至該第一臨界值,其中該第二狀態比該第一狀態省電;其中該第二臨界值=[(單位資料傳輸量)*(由該第一狀態變成該第二狀態所需的時間)/(單位傳輸時間)]+n*(單位資料傳輸量);其中n為不小於0的整數。
  9. 如申請專利範圍第8項所述動態切換資料佇列臨界值的方法,其中當該CPU處於C0或C2狀態時,該資料佇列之臨界值為該第一臨界值;當處於C3或C4狀態時,該資料佇列之臨界值為該第二臨界值,其中上述之C0、C2、C3、C4為ACPI(Advanced Configuration and Power Interface)規格中的省電狀態。
  10. 如申請專利範圍第9項所述動態切換資料佇列臨界值的方法,其中該電源功率管理單元(PMU),用以控制該CPU的省電狀態。
  11. 如申請專利範圍第8項所述動態切換資料佇列臨界值的方法,其中該n值由一暫存器中3位元所控制,n為0~7之整數其中之一。
  12. 如申請專利範圍第8項所述動態切換資料佇列臨界值的方法,更包含使用至少一直接記憶體存取引擎(DMA),其中該資料佇列為先進先出緩衝器(FIFO),而該FIFO對應至少該DMA配置,以藉由至少 該DMA存取該主記憶體以填滿該FIFO。
  13. 如申請專利範圍第8項所述動態切換資料佇列臨界值的方法,該資料佇列為先進先出緩衝器(FIFO),而該HDA控制器包含有至少一直接記憶體存取引擎(DMA),且至少該DMA對應該FIFO配置。
  14. 如申請專利範圍第13項所述動態切換資料佇列臨界值的方法,更包含使用一HDA鏈結(link),用以將該DMA連接至一個或多個編解碼器(codec)。
  15. 如申請專利範圍第13項所述動態切換資料佇列臨界值的方法,當該HDA控制器非為主動且系統處於C3或C4狀態時,若有輸入裝置輸入資料時,則該CPU轉變為C0或C2狀態,其中上述之C0、C2、C3、C4為ACPI(Advanced Configuration and Power Interface)規格中的省電狀態。
  16. 如申請專利範圍第13項所述動態切換資料佇列臨界值的方法,當該HDA控制器為主動且該HDA控制器偵測得知該CPU進入C3或C4狀態,則該FIFO使用該第二臨界值,其中上述之C0、C2、C3、C4為ACPI(Advanced Configuration and Power Interface)規格中的省電狀態。
  17. 如申請專利範圍第16項所述動態切換資料佇列臨界值的方法,若該第二臨界值大於該第一臨界值,則該FIFO沿用該第一臨界值。
  18. 如申請專利範圍第17項所述動態切換資料佇列臨界值的方法,若有輸入裝置輸入資料或者該FIFO內資料少於該第二臨界值時,則該CPU轉變為C0或C2狀態。
  19. 如申請專利範圍第16項所述動態切換資料佇列臨界值的方 法,其中藉由該電源功率管理單元(PMU)發出PMU_C3/C4信號讓該HDA控制器偵測得知該CPU進入C3或C4狀態。
TW97139870A 2008-10-17 2008-10-17 動態切換資料佇列臨界值的系統及方法 TWI470438B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW97139870A TWI470438B (zh) 2008-10-17 2008-10-17 動態切換資料佇列臨界值的系統及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW97139870A TWI470438B (zh) 2008-10-17 2008-10-17 動態切換資料佇列臨界值的系統及方法

Publications (2)

Publication Number Publication Date
TW201017423A TW201017423A (en) 2010-05-01
TWI470438B true TWI470438B (zh) 2015-01-21

Family

ID=44830839

Family Applications (1)

Application Number Title Priority Date Filing Date
TW97139870A TWI470438B (zh) 2008-10-17 2008-10-17 動態切換資料佇列臨界值的系統及方法

Country Status (1)

Country Link
TW (1) TWI470438B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI627537B (zh) * 2013-03-06 2018-06-21 瑞昱半導體股份有限公司 應用於通用序列匯流排系統的資料傳輸電路及相關的資料傳輸方法
CN104050124B (zh) * 2013-03-12 2017-06-13 瑞昱半导体股份有限公司 应用于通用串行总线系统的数据传输电路及数据传输方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771356A (en) * 1995-01-04 1998-06-23 Cirrus Logic, Inc. Apparatus for controlling FIFO buffer data transfer by monitoring bus status and FIFO buffer thresholds
US20060020835A1 (en) * 2004-07-26 2006-01-26 Samson Eric C Method and apparatus for dynamic DLL powerdown and memory self-refresh

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771356A (en) * 1995-01-04 1998-06-23 Cirrus Logic, Inc. Apparatus for controlling FIFO buffer data transfer by monitoring bus status and FIFO buffer thresholds
US20060020835A1 (en) * 2004-07-26 2006-01-26 Samson Eric C Method and apparatus for dynamic DLL powerdown and memory self-refresh

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"High Definition Audio Specification Revision 1.0", Intel Corporation, 2004/04/15 *

Also Published As

Publication number Publication date
TW201017423A (en) 2010-05-01

Similar Documents

Publication Publication Date Title
US8412866B2 (en) System and method of dynamically switching queue threshold
US7970859B2 (en) Architecture and method for remote platform control management
JP3926873B2 (ja) コンピュータシステム
JP5636111B2 (ja) ターゲットデバイスに命令を送信する技術
US20080278508A1 (en) Architecture and Method for Remote Platform Control Management
US7430621B2 (en) Multiple channel data bus control for video processing
US20090249089A1 (en) Method and apparatus for dynamic power management control using serial bus management protocols
US5974480A (en) DMA controller which receives size data for each DMA channel
TWI465919B (zh) 採用雷霆介面之電子裝置、其連接方法及底座設備
JP2003534575A (ja) Dmaを用いたグラフィックスバスに接続されデジタルビデオ記憶インターフェイスを備えるramdacicを含むグラフィックスサブシステム
JP2004070571A (ja) データ転送制御システム、電子機器、プログラム及びデータ転送制御方法
US20060041611A1 (en) Data transfer control system, electronic apparatus, and program
US7337382B2 (en) Data transfer control device, electronic instrument, and data transfer control method
EP2207101A1 (en) Method and device for parallel interfacing
US7836240B2 (en) Interface arrangement for a system on a chip suitable for outputting higher-frequency signals for operating peripheral devices, and use thereof
CN101777036B (zh) 一种实现无驱图像数据传输的装置、usb设备和方法
JP6746791B2 (ja) クロックゲーティングイネーブルの生成
US20020178274A1 (en) System for digital stream transmission and method thereof
US20060182149A1 (en) Method and system for mobile multimedia processor supporting rate adaptation and mode selection
TWI470438B (zh) 動態切換資料佇列臨界值的系統及方法
US20060190665A1 (en) Data transfer control device and electronic equipment
JP2004349836A (ja) データ転送制御装置、電子機器及びデータ転送制御方法
JP2008242701A (ja) データ転送制御装置及び電子機器
US10013046B2 (en) Power management techniques
US9621334B2 (en) Data transmission method and system