TWI533136B - 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 - Google Patents
應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 Download PDFInfo
- Publication number
- TWI533136B TWI533136B TW102144686A TW102144686A TWI533136B TW I533136 B TWI533136 B TW I533136B TW 102144686 A TW102144686 A TW 102144686A TW 102144686 A TW102144686 A TW 102144686A TW I533136 B TWI533136 B TW I533136B
- Authority
- TW
- Taiwan
- Prior art keywords
- signal
- cycles
- universal serial
- host
- serial bus
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0042—Universal serial bus [USB]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
Description
本發明係有關於應用於一通用串列匯流排裝置的一頻率校正方法及其相關的通用串列匯流排裝置,尤指利用一輪詢低頻週期訊號來校正一通用串列匯流排裝置內的一振盪器的方法及其相關的通用串列匯流排裝置。
隨著技術的演進,目前的資料傳輸介面已進入通用串列匯流排(Universal Serial Bus,USB)3.0的年代。通用串列匯流排3.0的最大資料傳輸速率為5Gbps(Bits per second)。換句話說,對於一個通用串列匯流排3.0的裝置(device)而言,其操作時脈至少是2.5GHz。一般而言,傳統的方法是內建一個精準電感電容振盪器(LC Oscillator)於通用串列匯流排3.0的裝置內,該電感電容振盪器會振盪出一精準頻率的參考時脈。接著,一訊號合成器就可以用來合成出頻率為2.5GHz的操作時脈。然而,一個電感電容振盪器通常會佔據非常大的晶片面積,進而提高了通用串列匯流排3.0的裝置的製作成本。因此,如何以較低成本的方式來產生一具有精準頻率的參考時脈已成為此領域所亟需解決的問題。
因此,本發明之一目的在於提供利用一輪詢低頻週期訊號來校正一通用串列匯流排裝置內的一振盪器的方法及其相關的通用串列匯流排裝置。
依據本發明之一第一實施例,其係揭露了一種應用於一通用串列
匯流排裝置的頻率校正方法。該頻率校正方法包含有:將該通用串列匯流排裝置耦接於一通用串列匯流排主機;利用該通用串列匯流排裝置接收來自該通用串列匯流排主機的一輪詢低頻週期訊號;依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的一主機類型;以及依據該主機類型所對應到的一特定時脈週期來校正該通用串列匯流排裝置的一可程式化振盪電路以使得該可程式化振盪電路得以產生具有一預定頻率的一目標振盪訊號。
依據本發明之一第二實施例,其係揭露了一種通用串列匯流排裝
置。該通用串列匯流排裝置包含有一偵測電路、一判斷電路、一可程式化振盪電路以及一調整電路。該偵測電路用來接收來自一通用串列匯流排主機的一輪詢低頻週期訊號。該判斷電路耦接於該偵測電路,用來依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的一主機類型。該可程式化振盪電路用來產生一振盪訊號。該調整電路耦接於該偵測電路、該判斷電路以及該可程式化振盪電路,用來依據該主機類型所對應到的一特定時脈週期來校正該可程式化振盪電路以使得該可程式化振盪電路得以產生具有一預定頻率的一目標振盪訊號。
100‧‧‧通用串列匯流排裝置
102‧‧‧偵測電路
104‧‧‧控制電路
106‧‧‧可程式化振盪電路
108‧‧‧傳送電路
110‧‧‧終端阻抗
112‧‧‧通用串列匯流排主機
1042‧‧‧判斷電路
1042a‧‧‧表格
1044‧‧‧調整電路
200‧‧‧部分狀態圖
202~208‧‧‧狀態
2062~2066‧‧‧狀態
300‧‧‧頻率校正方法
302~326‧‧‧步驟
402‧‧‧第一部分
404‧‧‧第二部分
600‧‧‧頻率校正方法
602~624‧‧‧步驟
7042‧‧‧判斷電路
7042a‧‧‧表格
7044‧‧‧調整電路
7046‧‧‧頻率合成器
800‧‧‧頻率校正方法
802~826‧‧‧步驟
第1圖係本發明一種通用串列匯流排裝置之一實施例示意圖。
第2圖係當一通用串列匯流排裝置插入一通用串列匯流排主機後,該通用串列匯流排主機的部分狀態圖之一實施例。
第3圖係本發明一頻率校正方法之一實施例流程圖。
第4圖係本發明一低頻週期訊號以及一偵測振盪訊號的一實施例時序圖。
第5圖係本發明一控制電路之一第一實施例示意圖。
第6圖係本發明一頻率校正方法之一第一實施例流程圖。
第7圖係本發明一控制電路之一第二實施例示意圖。
第8圖係本發明一頻率校正方法之一第二實施例流程圖。
在說明書及後續的申請專利範圍當中使用了某些詞彙來指稱特定
的元件。所屬領域中具有通常知識者應可理解,硬體製造商可能會用不同的名詞來稱呼同一個元件。本說明書及後續的申請專利範圍並不以名稱的差異來作為區分元件的方式,而是以元件在功能上的差異來作為區分的準則。在通篇說明書及後續的請求項當中所提及的「包含」係為一開放式的用語,故應解釋成「包含但不限定於」。此外,「耦接」一詞在此係包含任何直接及間接的電氣連接手段,因此,若文中描述一第一裝置耦接於一第二裝置,則代表該第一裝置可直接電氣連接於該第二裝置,或者透過其他裝置或連接手段間接地電氣連接至該第二裝置。
請參考第1圖。第1圖所示係依據本發明一種通用串列匯流排裝置100之一實施例示意圖。通用串列匯流排裝置100包含有一偵測電路102、一控制電路104、一可程式化振盪電路106、一傳送電路108以及一終端阻抗110。當通用串列匯流排裝置100耦接於一通用串列匯流排主機112時,偵測電路102係用來擷取來自通用串列匯流排主機112的一輪詢低頻週期訊號(Polling Low Frequency Periodic Signal,Polling LFPS)Sps,以產生具有與低頻週期訊號Sps相同頻率的一偵測振盪訊號Spsr。可程式化振盪電路106耦接於控制電路104,用來依據一控制字(Control Word)Sc來產生一振盪訊號Sosc。控制電路104耦接於偵測電路102以及可程式化振盪電路106,用來依據偵測振盪訊號Spsr來校正可程式化振盪電路106以使得可程式化振盪電路106得以產生具有一預定頻率Fp的目標振盪訊號Sosc_tar。此外,終端阻抗110耦接於控制電路104以及偵測電路102之一訊號埠RXP、RXN,其中訊號埠RXP、RXN是用來接收來自通用串列匯流排主機112的輪詢低頻週期訊號Sps。傳送電路108耦接於控制電路104以及一訊號埠TXP、TXN,其中通用串列
匯流排裝置100的訊號是透過訊號埠TXP、TXN傳送至通用串列匯流排主機112。
依據本發明之實施例,通用串列匯流排裝置100係一通用串列匯流排3.0的裝置,而通用串列匯流排主機112係一通用串列匯流排3.0的主機,然此並不作為本發明之限制所在。通用串列匯流排主機112亦可以係一通用串列匯流排3.0的集線器(hub)。當通用串列匯流排裝置100插入通用串列匯流排主機112,且在通用串列匯流排裝置100與通用串列匯流排主機112進入超高速資料傳輸模式(即5Gbps)前,通用串列匯流排裝置100就會執行一頻率校正方法來校正可程式化振盪電路106,以使得可程式化振盪電路106得以產生具有預定頻率Fp的目標振盪訊號Sosc_tar,其中預定頻率Fp的目標振盪訊號Sosc_tar係用來作為一參考時脈,以合成出通用串列匯流排裝置100處於超高速資料傳輸模式下所需的操作時脈(例如頻率為2.5GHz的操作時脈)。
請參考第2圖。第2圖所示係當通用串列匯流排裝置100插入通用串列匯流排主機112後,通用串列匯流排主機112的部分狀態圖200之一實施例。狀態202代表通用串列匯流排主機112認為通用串列匯流排裝置100還沒開始啟動。狀態204代表通用串列匯流排主機112偵測到通用串列匯流排裝置100的終端阻抗110。狀態206代表通用串列匯流排主機112開始對通用串列匯流排裝置100進行輪詢(polling)。狀態208代表通用串列匯流排主機112與通用串列匯流排裝置100之間已進入超高速資料傳輸模式。為了使得通用串列匯流排裝置100與通用串列匯流排主機112進入超高速資料傳輸模式前,通用串列匯流排裝置100具有足夠的時間來校正可程式化振盪電路106,本發明的該頻率校正方法會在狀態206中暫時延長通用串列匯流排主機112對通用串列匯流排裝置100進行輪詢的時間。進一步而言,依據本發明的第2圖,狀態206中包含有三個狀態,即狀態2062、2064、2066。狀態2062代表通用串列匯流排主機112對通用串列匯流排裝置100發出輪詢低頻週期訊
號Sps。狀態2064代表通用串列匯流排主機112接收到通用串列匯流排裝置100所發出的輪詢低頻週期訊號Sps。狀態2066代表通用串列匯流排主機112進入一致性模式(Compliance Mode)。為了使得通用串列匯流排主機112的狀態可以持續暫留在狀態2062以持續對通用串列匯流排裝置100發出輪詢低頻週期訊號Sps,本發明的該頻率校正方法會避免通用串列匯流排主機112的狀態進入狀態2064或狀態2066,一直到可程式化振盪電路106被校正完成為止。
因此,當通用串列匯流排裝置100插入通用串列匯流排主機112時,通用串列匯流排裝置100就會執行如第3圖所示的頻率校正方法300來校正可程式化振盪電路106,以使得可程式化振盪電路106得以產生具有預定頻率Fp的目標振盪訊號Sosc_tar。第3圖所示係依據本發明的頻率校正方法300之一實施例流程圖。倘若大體上可達到相同的結果,並不需要一定照第3圖所示之流程中的步驟順序來進行,且第3圖所示之步驟不一定要連續進行,亦即其他步驟亦可插入其中。頻率校正方法300的步驟包含有:步驟302:將通用串列匯流排裝置100插入於通用串列匯流排主機112;步驟304:控制通用串列匯流排裝置100致能(enable)通用串列匯流排裝置100內的終端阻抗110以使得通用串列匯流排主機112發出輪詢低頻週期訊號Sps至通用串列匯流排裝置100;步驟306:延遲一第一延遲時間t1;步驟308:判斷通用串列匯流排裝置100是否收到輪詢低頻週期訊號Sps,若是,跳至步驟310,若否,跳至步驟306;步驟310:利用通用串列匯流排裝置100擷取來自通用串列匯流排主機112的輪詢低頻週期訊號Sps;步驟312:依據輪詢低頻週期訊號Sps來校正通用串列匯流排裝置100內的可程式化振盪電路106;
步驟314:可程式化振盪電路106是否產生具有預定頻率Fp的目標振盪訊號Sosc_tar,若是,跳至步驟316,若否,跳至步驟312;步驟316:將用來控制可程式化振盪電路106以產生具有預定頻率Fp的目標振盪訊號Sosc_tar的控制字Sc暫存於一暫存器;步驟318:控制通用串列匯流排裝置100抑能(disable)通用串列匯流排裝置100內的終端阻抗110;步驟320:延遲一第二延遲時間t2;步驟322:進行通用串列匯流排裝置100的一開卡初始化程序;步驟324:從通用串列匯流排裝置100饋入一內部原始碼程式(Internal Source Program,ISP);以及步驟326:將該控制字Sc儲存於通用串列匯流排裝置100內的一快閃記憶體。
請注意,在步驟304中,當終端阻抗110被致能時,通用串列匯流排主機112就會偵測到終端阻抗110進而發出輪詢低頻週期訊號Sps。反之,當終端阻抗110被抑能時,通用串列匯流排主機112就不會偵測到終端阻抗110,此時通用串列匯流排主機112就會認為通用串列匯流排裝置100並未正確地耦接於到通用串列匯流排主機112。當通用串列匯流排主機112對通用串列匯流排裝置100發出輪詢低頻週期訊號Sps時,控制電路104會先控制偵測電路102等待第一延遲時間t1再偵測來自通用串列匯流排主機112的輪詢低頻週期訊號Sps。這是因為通用串列匯流排主機112偵測到終端阻抗110時,通用串列匯流排主機112不一定會馬上發出輪詢低頻週期訊號Sps。依據通用串列匯流排3.0的規格,通用串列匯流排主機112必需在偵測到終端阻抗110的50ms(毫秒)內發出輪詢低頻週期訊號Sps。因此,經由適當地設計,第一延遲時間t1到達時,通用串列匯流排裝置100的偵測電路102應可接收到來自通用串列匯流排主機112的輪詢低頻週期訊號Sps。請參考第4圖,第4圖所示係依據本發明一輪詢低頻週期訊號Sps以及偵測振盪訊號Spsr的一
實施例時序圖。輪詢低頻週期訊號Sps大致上是一個工作周期(duty cycle)大致上為10%,頻率大致上為100KHz的週期性訊號。進一步而言,一個週期的輪詢低頻週期訊號Sps是分為兩個部分402和404,第一部分402是高頻週期性訊號,其中每一個高頻訊號的週期約10ns~100ns(毫微秒),而第二部分404則是沒有訊號的閒置時段。第一部分402的標準持續時間tBurst是1us(微秒),但是通用串列匯流排3.0的規格允許其範圍可從0.6us至1.4us。第二部分404的標準持續時間tRepeat是9us,但是通用串列匯流排3.0的規格允許其範圍可從6us至14us。雖然第一部分402的持續時間tBurst和第二部分404的持續時間tRepeat可在其規範的範圍內自行決定,但是通常第一部分402的持續時間tBurst是固定的(約1us),且第一部分402的持續時間tBurst和第二部分404的持續時間tRepeat之間的比例也是固定的。換句話說,輪詢低頻週期訊號Sps的工作周期是固定的,亦即工作周期為10%,且其頻率通常為100KHz。因此,通用串列匯流排裝置100就可以利用輪詢低頻週期訊號Sps的此一特性,並辨識並擷取出輪詢低頻週期訊號Sps,用來產生具有相同頻率的輪詢偵測振盪訊號Spsr來校正可程式化振盪電路106,以使得可程式化振盪電路106得以產生具有預定頻率Fp的目標振盪訊號Sosc_tar。
進一步而言,偵測電路102會擷取出具有與低頻週期訊號Sps大致上相同的偵測振盪訊號Spsr。控制電路104會讀取偵測振盪訊號Spsr,並輸出控制字Sc來調整可程式化振盪電路106的振盪訊號Sosc。請注意,從本實施例的第1圖可以得知控制電路104與可程式化振盪電路106之間是耦接成一迴授電路的形態。換句話說,控制電路104會一邊輸出不同的控制字Sc來調整可程式化振盪電路106,同時一邊接收對應的振盪訊號Sosc來計算出其振盪頻率,一直到其振盪頻率被校正至預定頻率Fp為止。因此,為了使得控制電路104具有足夠的時間來校正可程式化振盪電路106,本發明的控制電路104會同時控制傳送電路108以阻止傳送電路108產生一對應的低頻週期訊號至通用串列匯流排主機112,以使得通用串列匯流排主機112持續產生
輪詢低頻週期訊號Sps至通用串列匯流排裝置100。在一實施例中,當通用串列匯流排裝置100接收來自通用串列匯流排主機112的輪詢低頻週期訊號Sps時,控制電路104會控制傳送電路108持續產生比輪詢低頻週期訊號Sps的頻率來得高的一預定訊號至通用串列匯流排主機112以使得通用串列匯流排主機112持續產生輪詢低頻週期訊號Sps至通用串列匯流排裝置100。例如,該預定訊號可以係一週期約10ns~100ns(毫微秒)的高頻訊號。
在本發明的另一實施例中,當通用串列匯流排裝置100接收來自通用串列匯流排主機112的輪詢低頻週期訊號Sps時,控制電路104會控制傳送電路108停止產生一正常的回應訊號至通用串列匯流排主機112以使得通用串列匯流排主機112持續產生輪詢低頻週期訊號Sps至通用串列匯流排裝置100。
此外,在本發明的另一實施例中,當通用串列匯流排裝置100接收來自通用串列匯流排主機112的輪詢低頻週期訊號Sps時,控制電路104會控制傳送電路108產生任何相異於輪詢低頻週期訊號Sps的一預定訊號至通用串列匯流排主機112以使得通用串列匯流排主機112持續產生輪詢低頻週期訊號Sps至通用串列匯流排裝置100。
在步驟316中,當可程式化振盪電路106被校正至產生具有預定頻率Fp的目標振盪訊號Sosc_tar時,控制電路104將所對應的控制字Sc暫存於一暫存器。同時,控制電路104會抑能通用串列匯流排裝置100內的終端阻抗110,以使得通用串列匯流排主機112判定通用串列匯流排裝置100並未正確地耦接於到通用串列匯流排主機112(步驟318)。
接著,經過第二延遲時間t2後(步驟320),控制電路104才會進行通用串列匯流排裝置100的一開卡初始化程序(步驟322)。在開卡的初始化程序中,通用串列匯流排裝置100的控制電路104會饋入一內部原始碼程式(Internal Source Program,ISP),以初始化通用串列匯流排裝置100(步驟324)。請注意,該內部原始碼程式可以係一儲存於唯讀記憶體(ROM)中的韌體。
接著,在步驟326中,當通用串列匯流排裝置100完成開卡後,控制電路104就會將原本暫存在該暫存器的控制字Sc儲存於一快閃記憶體中。因此,當通用串列匯流排裝置100完成開卡後,該快閃記憶體內就儲存了用來控制可程式化振盪電路106以產生具有預定頻率Fp的目標振盪訊號Sosc_tar的控制字Sc。此後,若通用串列匯流排裝置100再次耦接於通用串列匯流排主機112時,控制電路104就無需再對可程式化振盪電路106進行校正,而直接讀取該快閃記憶體內的控制字Sc即可。如此一來,本發明的通用串列匯流排裝置100就可以用一較低成本的方式來產生一具有精準頻率的參考時脈。
請注意,在步驟316中,當控制電路104將所對應的控制字Sc暫存於該暫存器後,控制電路104不一定要抑能通用串列匯流排裝置100內的終端阻抗110。進一步而言,在本發明的另一實施例中,當控制電路104計算出所對應的控制字Sc並將該控制字Sc暫存於該暫存器後,控制電路104另持續致能通用串列匯流排裝置100內的終端阻抗110,並控制通用串列匯流排裝置100來產生另一輪詢低頻週期訊號Sps至通用串列匯流排主機112。如此一來,當通用串列匯流排主機112收到來自通用串列匯流排裝置100來產生的輪詢低頻週期訊號Sps時,通用串列匯流排主機112就會進入第2圖所示的狀態2064。接著,通用串列匯流排主機112與通用串列匯流排裝置100之間就會直接進入超高速資料傳輸模式,即第2圖所示的狀態208。
請參考第5圖,第5圖所示係依據本發明控制電路104之一第一實施例示意圖。控制電路104包含有一判斷電路1042以及一調整電路1044。請注意,為了更清楚描述控制電路104之技術特徵,第5圖另包含了本發明的偵測電路102以及可程式化振盪電路106。判斷電路1042耦接於偵測電路102,用來依據輪詢低頻週期訊號Sps來判斷通用串列匯流排主機112的一主機類型。調整電路1044耦接於偵測電路102、判斷電路1042以及可程式化振盪電路106,用來依據該主機類型所對應到的一特定時脈週期Tp來校正可
程式化振盪電路106以使得可程式化振盪電路106得以產生具有預定頻率Fp的目標振盪訊號Sosc_tar。
進一步而言,在本實施例中,判斷電路1042係用來依據低頻時脈訊號Spsr的一脈寬時間(即第4圖所示的第一部分402的持續時間tBurst,故後續的脈寬時間即以tBurst來標示)來調整可程式化振盪電路106的振盪訊號Sosc為一粗調振盪訊號Scoarse;利用可程式化振盪電路106的粗調振盪訊號Scoarse計算出低頻時脈訊號Spsr的一脈波週期(即第4圖所示第二部分404的持續時間tRepeat,故後續的脈波週期即以tRepeat來標示);計算出脈波週期tRepeat與脈寬時間tBurst之一比值R;以及依據比值R來判斷出通用串列匯流排主機112的該主機類型。此外,判斷電路1042另用來:於低頻時脈訊號Spsr的脈寬時間tBurst內計數振盪訊號Sosc的一週期數Nburst,並判斷週期數Nburst是否等於一第一預定週期數Np1;調整可程式化振盪電路106一直到振盪訊號Sosc的週期數Nburst等於第一預定週期數Np1;以及將對應於第一預定週期數Np1的振盪訊號Sosc視為粗調振盪訊號Scoarse。另一方面,判斷電路1042另用來:於低頻時脈訊號Spsr的脈波週期tRepeat內計數粗調振盪訊號Scoarse的一週期數Nrepeat,因此週期數Nrepeat係對應低頻時脈訊號Spsr的脈波週期tRepeat。因此,判斷電路1042可用來依據週期數Nrepeat及週期數Nburst來計算出脈波週期tRepeat與脈寬時間tBurst之比值R。
此外,當判斷電路1042判斷出通用串列匯流排主機112的該主機類型後,調整電路1044用來:於特定時脈週期Tp內計數振盪訊號Sosc的一週期數Nosc,並判斷週期數Nosc是否等於一第二預定週期數Np2;調整可程式化振盪電路106一直到振盪訊號Sosc的週期數Nosc等於第二預定週期數Np2;以及將對應於第二預定週期數Np2的振盪訊號Sosc為目標振盪訊號Sosc_tar。
因此,為了完成上述操作,判斷電路1042另儲存一表格1042a,其係用來儲存複數個候選主機類型以及其所分別對應的輪詢低頻週期訊號
Sps的複數個脈寬時間、複數個時脈週期、複數個候選比值(即脈波週期tRepeat與脈寬時間tBurst之比值)以及複數個預定週期數,如表1所示:
請注意,為了更清楚說明本發明的精神所在,本實施例的目標振盪訊號Sosc_tar的預定頻率Fp為24MHz,而通用串列匯流排主機112的類型分為上述四種,然此並不作為本發明的限制所在。此外,為了更精準校正可程式化振盪電路106,本發明另將低頻時脈訊號Spsr的脈寬時間tBurst(即1us)加上一預定延遲時間Td(即0.02us)以產生一更新後的脈寬時間(即1.02us),並將該更新後脈寬時間視為依據輪詢低頻週期訊號Sps所產生低頻時脈訊號Spsr的脈寬時間tBurst。進一步而言,如第4圖所示,當偵測電路102依據輪詢低頻週期訊號Sps擷取出對應的偵測振盪訊號Spsr時,偵測振盪訊號Spsr的第一部分402會具有一延遲時間(即預定延遲時間Td)。因此,考慮到該延遲時間的影響,本發明的判斷電路1042以及調整電路1044會將該更新後的脈寬時間視為輪詢低頻週期訊號Sps的持續時間tBurst。換句話說,低頻時脈訊號Spsr的該脈寬時間大致上等於輪詢低頻週期訊號Sps的脈寬時間加上一預定延遲時間Td。
因此,當判斷電路1042接收到低頻時脈訊號Spsr時,判斷電路1042就會在低頻時脈訊號Spsr的脈寬時間tBurst內計數振盪訊號Sosc的週期數Nburst,並調整可程式化振盪電路106一直到振盪訊號Sosc在脈寬時間tBurst內的週期數Nburst等於第一預定週期數Np1為止。請注意,本發明可
直接用判斷電路1042調整可程式化振盪電路106或透過調整電路1044來調整可程式化振盪電路106。由於脈寬時間tBurst是固定的(即1.02us),因此當振盪訊號Sosc在脈寬時間tBurst內的週期數Nburst等於第一預定週期數Np1時,振盪訊號Sosc就會是具有一預定頻率的振盪訊號,即粗調振盪訊號Scoarse。請注意,在此實施例中,第一預定週期數Np1約為25。
接著,可程式化振盪電路106所產生粗調振盪訊號Scoarse的頻率就大約是24MHz,而判斷電路1042就會計算在低頻時脈訊號Spsr的脈波週期tRepeat內粗調振盪訊號Scoarse的週期數Nrepeat。接著,判斷電路1042就可以計算週期數Nrepeat與週期數Nburst之比值(即Nrepeat/Nburst)來找出脈波週期tRepeat與脈寬時間tBurst之比值R(即tRepeat/tBurst),再透過表1來找到對應的主機類型。
當找到通用串列匯流排主機112的該主機類型後,意謂著通用串列匯流排主機112所產生的低頻時脈訊號Spsr的脈波週期tRepeat就可以從表1中決定出來,即特定時脈週期Tp。接著,調整電路1044就會在特定時脈週期Tp內計數振盪訊號Sosc(一開始仍為粗調振盪訊號Scoarse)的週期數Nosc,並判斷週期數Nosc是否等於表1中所對應的第二預定週期數Np2。接著,調整電路1044會調整可程式化振盪電路106一直到振盪訊號Sosc的週期數Nosc等於第二預定週期數Np2為止。由於當主機類型被決定出來後,其特定時脈週期Tp是固定的時間(例如主機類型一的脈波週期tRepeat:10.667us),因此當振盪訊號Sosc的週期數Nosc等於第二預定週期數Np2時,振盪訊號Sosc就會是具有一預定頻率的振盪訊號,即頻率為24MHz的目標振盪訊號Sosc_tar。
請注意,在表1中,該些第二預定週期數Np2是以一個脈波週期tRepeat來設定的,然此並不作為本發明的限制所在。為了獲得更精確的目標振盪訊號Sosc_tar,第二預定週期數Np2也可以設定為在複數倍的脈波週期tRepeat內所計數到振盪訊號Sosc的週期數,如以下表2的第5欄所示為三倍
的脈波週期tRepeat(即3*tRepeat)內所計數到振盪訊號Sosc的第二預定週期數Np2:
請注意,將第二預定週期數Np2設定為在複數倍的脈波週期tRepeat內計數振盪訊號Sosc的週期數的目的是為了獲得更精確的目標振盪訊號Sosc_tar,其餘的運算相似於表1的實施例,故其操作細節在此不另贅述。
簡言之,第5圖所示的控制電路104的操作流程可用第6圖所示的步驟圖來表示。第6圖所示係依據本發明一頻率校正方法600之一第一實施例流程圖。倘若大體上可達到相同的結果,並不需要一定照第6圖所示之流程中的步驟順序來進行,且第6圖所示之步驟不一定要連續進行,亦即其他步驟亦可插入其中。頻率校正方法600包含有:步驟602:接收來自通用串列匯流排主機112的輪詢低頻週期訊號Sps;步驟604:擷取出對應於輪詢低頻週期訊號Sps的低頻時脈訊號Spsr;步驟606:控制可程式化振盪電路106以產生振盪訊號Sosc;步驟608:於低頻時脈訊號Spsr的脈寬時間tBurst內計數振盪訊號Sosc的週期數Nburst;步驟610:調整可程式化振盪電路106一直到振盪訊號Sosc的週
期數Nburst等於第一預定週期數Np1;步驟612:將對應於第一預定週期數Np1的振盪訊號Sosc視為粗調振盪訊號Scoarse;步驟614:計算在低頻時脈訊號Spsr的脈波週期tRepeat內粗調振盪訊號Scoarse的週期數Nrepeat;步驟616:計算出脈波週期tRepeat與脈寬時間tBurst之比值R;步驟618:依據比值R來判斷出通用串列匯流排主機112的該主機類型;步驟620:依據通用串列匯流排主機112的該主機類型來判斷出通用串列匯流排主機112的特定時脈週期Tp;步驟622:於特定時脈週期Tp內計數振盪訊號Sosc的週期數Nosc,並調整可程式化振盪電路106一直到振盪訊號Sosc的週期數Nosc等於第二預定週期數Np2;步驟624:將對應於第二預定週期數Np2的振盪訊號Sosc視為目標振盪訊號Sosc_tar。
請注意,當控制電路104將可程式化振盪電路106校正為精準的目標振盪訊號Sosc_tar後,控制電路104就會將對應控制字Sc儲存起來。此後,若通用串列匯流排裝置100再次耦接於通用串列匯流排主機112時,控制電路104就無需再對可程式化振盪電路106進行校正,而直接讀取所儲存的控制字Sc即可。如此一來,本發明的通用串列匯流排裝置100就可以用一較低成本的方式來產生一具有精準頻率的參考時脈。
請參考第7圖,第7圖所示係依據本發明控制電路104之一第二實施例示意圖。控制電路104包含有一判斷電路7042、一調整電路7044以及一頻率合成器7046。請注意,為了更清楚描述控制電路104之技術特徵,第7圖另包含了本發明的偵測電路102以及可程式化振盪電路106。判斷電
路7042耦接於偵測電路102,用來依據輪詢低頻週期訊號Sps來判斷通用串列匯流排主機112的一主機類型。調整電路7044耦接於偵測電路102、判斷電路7042、可程式化振盪電路106以及頻率合成器7046,用來依據該主機類型所對應到的一特定時脈週期Tp來校正可程式化振盪電路106以使得可程式化振盪電路106得以產生具有預定頻率Fp的目標振盪訊號Sosc_tar。頻率合成器7046用來將振盪訊號Sosc進行頻率合成以產生一合成振盪訊號Ssyn。
此外,偵測電路102另擷取出對應於輪詢低頻週期訊號Sps的一低頻時脈訊號Spsr,判斷電路7042用來:依據低頻時脈訊號Spsr的複數倍脈寬時間M*tBurst(即M倍的脈寬時間tBurst)來調整振盪訊號Sosc,進而調整合成振盪訊號Syn為一粗調振盪訊號Ssyn_coarse;利用粗調振盪訊號Ssyn_coarse計算出低頻時脈訊號Spsr的複數倍脈波週期M*tRepeat(即M倍的脈波週期tRepeat);計算出複數倍脈波週期M*tRepeat與複數倍脈寬時間M*tBurst之一比值R;以及依據比值R來判斷出通用串列匯流排主機112的該主機類型。
進一步而言,判斷電路7042另用來:將複數倍脈寬時間M*tBurst內的每一個脈寬時間tBurst都加上一預定延遲時間Td以產生一更新後的複數倍脈寬時間M*(tBurst+Td),並將該更新後的複數倍脈寬時間M*(tBurst+Td)視為低頻時脈訊號Spsr的該複數倍脈寬時間M*tBurst。換句話說,低頻時脈訊號Spsr的複數倍脈寬時間內的每一個脈寬時間均大致上等於輪詢低頻週期訊號Sps的一脈寬時間加上一預定延遲時間Td。請注意,上述做法的目的與原因已於第一實施例中所揭露,故在此不另贅述。
此外,判斷電路7042係用來:於低頻時脈訊號Spsr的複數倍脈寬時間M*tBurst內計數合成振盪訊號Ssyn的一週期數N_mtburst,並判斷週期數N_mtburst是否等於一第一預定週期數N_mp1;調整可程式化振盪電路106一直到合成振盪訊號Ssyn的週期數N_mtburst等於第一預定週期數N_mp1;以及將對應於預定週期數N_mp1的合成振盪訊號Ssyn視為粗調合成振盪訊號Ssyn_coarse。判斷電路7042另用來:於低頻時脈訊號Spsr的複
數倍脈波週期M*tRepeat內計數粗調合成振盪訊號Ssyn_coarse的一週期數N_mtrepeat;以及依據週期數N_mtrepeat以及週期數N_mtburst來計算出複數倍脈波週期M*tRepeat與複數倍脈寬時間M*tBurst之比值R,進而判斷出通用串列匯流排主機112的該主機類型。
此外,當判斷電路7042判斷出通用串列匯流排主機112的該主機類型後,調整電路7044用來:依據該主機類型來從複數個候選時脈週期中判斷出通用串列匯流排主機112的特定時脈週期Tp以及計算出特定時脈週期Tp的一複數倍時脈週期N*Tp(即低頻時脈訊號Spsr的N倍的時脈週期Tp);於該複數倍的時脈週期N*Tp內計數合成振盪訊號Ssyn的一週期數Nosc1,並判斷週期數Nosc1是否等於一第二預定週期數N_mp2;調整可程式化振盪電路106的振盪訊號Sosc,一直到所對應的合成振盪訊號Ssyn的週期數Nosc1等於第二預定週期數N_mp2;以及將對應於第二預定週期數N_mp2的振盪訊號Sosc視為目標振盪訊號Sosc_tar。
因此,為了完成上述操作,判斷電路7042另儲存一表格7042a,其係用來儲存複數個候選主機類型以及其所分別對應的輪詢低頻週期訊號Sps的複數個脈寬時間、複數個時脈週期、複數個候選比值(即複數倍脈波週期M*tRepeat與複數倍脈寬時間M*tBurst之比值R)以及複數個第二預定週期數,如表3所示:
請注意,為了更清楚說明本發明的精神所在,本實施例的目標振
盪訊號Sosc的預定頻率Fp為24MHz,合成振盪訊號Ssyn的頻率為45MHz,通用串列匯流排主機112的類型分為上述四種,N=15(即第二預定週期數N_mp2是15倍的時脈週期Tp內所計數出合成振盪訊號Ssyn的週期數),然此並不作為本發明的限制所在。
因此,當判斷電路7042接收到低頻時脈訊號Spsr時,判斷電路1042就會在低頻時脈訊號Spsr的複數倍脈寬時間M*tBurst內計數合成振盪訊號Ssyn的週期數N_mtburst,並調整可程式化振盪電路106一直到合成振盪訊號Ssyn在複數倍脈寬時間M*tBurst內的週期數N_mtburst等於第一預定週期數N_mp1為止。請注意,本發明可直接用判斷電路7042調整可程式化振盪電路106或透過調整電路7044來調整可程式化振盪電路106,進而調整合成振盪訊號Ssyn的頻率。由於低頻時脈訊號Spsr的每一個脈寬時間tBurst是固定的,因此當合成振盪訊號Ssyn在複數個脈寬時間M*tBurst內的週期數N_mtburst等於第一預定週期數N_mp1時,合成振盪訊號Ssyn就會是具有一預定頻率的振盪訊號,即粗調合成振盪訊號Ssyn_coarse。請注意,在此實施例中,M為整數3,因此第一預定週期數N_mp1約為138。
接著,頻率合成器7046所產生的粗調合成振盪訊號Ssyn_coarse的頻率就大約為45MHz,而判斷電路7042就會計算在低頻時脈訊號Spsr的複數倍脈波週期M*tRepeat內粗調合成振盪訊號Ssyn_coarse的週期數N_mtrepeat。接著,判斷電路7042就可以計算週期數N_mtrepeat與週期數N_mtburst之比值(即N_mtrepeat/N_mtburst)來找出複數倍脈波週期M*tRepeat與複數倍脈寬時間M*tBurst之比值R(即M*tRepeat/M*tBurst),再透過表3來找到對應的主機類型。
當通用串列匯流排主機112的該主機類型後,代表通用串列匯流排主機112所產生的低頻時脈訊號Spsr的脈波週期tRepeat就可以從表3中決定出來,即特定時脈週期Tp。接著,調整電路7044就會在特定時脈週期Tp所對應的N倍時脈週期(即N*Tp)內計數合成振盪訊號Ssyn(一開始仍為粗
調合成振盪訊號Ssyn_coarse)的週期數Nosc1,並判斷週期數Nosc1是否等於第二預定週期數N_mp2。接著,調整電路7044會調整可程式化振盪電路106一直到合成振盪訊號Ssyn的週期數Nosc1等於第二預定週期數N_mp2為止。請注意,由於當主機類型被決定出來後,其特定時脈週期Tp是固定的時間(例如主機類型一的脈波週期tRepeat:10.667us),因此當合成振盪訊號Ssyn的週期數Nosc1等於第二預定週期數N_mp2時,合成振盪訊號Ssyn就會具有一預定頻率的振盪訊號,即45MHz。換句話說,此時所對應到的振盪訊號Sosc就是所需的目標振盪訊號Sosc_tar,即24MHz。
簡言之,第7圖所示的控制電路104的操作流程可用第8圖所示的步驟圖來表示。第8圖所示係依據本發明一頻率校正方法800之一第二實施例流程圖。倘若大體上可達到相同的結果,並不需要一定照第8圖所示之流程中的步驟順序來進行,且第8圖所示之步驟不一定要連續進行,亦即其他步驟亦可插入其中。頻率校正方法800包含有:步驟802:接收來自通用串列匯流排主機112的輪詢低頻週期訊號Sps;步驟804:擷取出對應於輪詢低頻週期訊號Sps的低頻時脈訊號Spsr;步驟806:控制可程式化振盪電路106以產生振盪訊號Sosc;步驟808:將振盪訊號Sosc進行頻率合成以產生合成振盪訊號Ssyn;步驟810:於低頻時脈訊號Spsr的複數個脈寬時間M*tBurst內計數合成振盪訊號Ssyn的週期數N_mtburst;步驟812:調整可程式化振盪電路106一直到合成振盪訊號Ssyn的週期數N_mtburst等於第一預定週期數N_mp1;步驟814:將對應於第一預定週期數N_mp1的合成振盪訊號Ssyn
視為粗調合成振盪訊號Ssyn_coarse;步驟816:計算在低頻時脈訊號Spsr的複數倍脈波週期M*tRepeat內粗調振盪訊號Ssyn_coarse的週期數N_mtrepeat;步驟818:計算出複數倍脈波週期M*tRepeat與複數倍脈寬時間M*tBurst之比值R;步驟820:依據比值R來判斷出通用串列匯流排主機112的該主機類型;步驟822:依據通用串列匯流排主機112的該主機類型來判斷出通用串列匯流排主機112的特定時脈週期Tp;步驟824:於特定時脈週期Tp的N倍時脈週期(即N*Tp)內計數合成振盪訊號Ssyn的週期數Nosc1,並調整可程式化振盪電路106一直到合成振盪訊號Ssyn的週期數Nosc1等於第二預定週期數N_mp2;步驟826:將對應於第二預定週期數N_mp2的振盪訊號Sosc視為目標振盪訊號Sosc_tar。
請注意,當控制電路104將可程式化振盪電路106校正為精準的目標振盪訊號Sosc_tar後,控制電路104就會將對應控制字Sc儲存起來。此後,若通用串列匯流排裝置100再次耦接於通用串列匯流排主機112時,控制電路104就無需再對可程式化振盪電路106進行校正,而直接讀取所儲存的控制字Sc即可。如此一來,本發明的通用串列匯流排裝置100就可以用一較低成本的方式來產生一具有精準頻率的參考時脈。
綜上所述,當通用串列匯流排主機112對通用串列匯流排裝置100進行輪詢(Polling)時,本發明所揭露的裝置與其方法是故意延遲通用串列匯流排主機112對通用串列匯流排裝置100進行輪詢的時間,以使得通用串列匯流排裝置100可以擷取出與輪詢低頻週期訊號Sps相同頻率的偵測振盪訊號Spsr,並利用偵測振盪訊號Spsr來校正可程式化振盪電路106。因此,本發
明的通用串列匯流排裝置100就可以無須內建一個精準電感電容振盪器(LC Oscillator)就可以產生一具有精準頻率的參考時脈,故本發明的通用串列匯流排裝置100相較於傳統的方法會具有較低製作成本。
100‧‧‧通用串列匯流排裝置
102‧‧‧偵測電路
104‧‧‧控制電路
106‧‧‧可程式化振盪電路
108‧‧‧傳送電路
110‧‧‧終端阻抗
112‧‧‧通用串列匯流排主機
Claims (36)
- 一種應用於一通用串列匯流排裝置(Universal Serial Bus device,USB device)的頻率校正方法,包含有:將該通用串列匯流排裝置耦接於一通用串列匯流排主機(USB host);利用該通用串列匯流排裝置接收來自該通用串列匯流排主機的一輪詢低頻週期訊號(Polling Low Frequency Periodic Signal,Polling LFPS);擷取出對應於一輪詢低頻週期訊號的一低頻時脈訊號;控制該可程式化振盪電路以產生一振盪訊號;依據該低頻時脈訊號的一脈寬時間來調整該可程式化振盪電路的該振盪訊號為一粗調振盪訊號;利用該可程式化振盪電路的該粗調振盪訊號計算出該低頻時脈訊號的一脈波週期;計算出該脈波週期與該脈寬時間之一比值;依據該比值來判斷出該通用串列匯流排主機的一主機類型;以及依據該主機類型所對應到的一特定時脈週期來校正該通用串列匯流排裝置的一可程式化振盪電路以使得該可程式化振盪電路得以產生具有一預定頻率的一目標振盪訊號。
- 如申請專利範圍第1項所述之頻率校正方法,另包含有:當該通用串列匯流排裝置接收來自該通用串列匯流排主機的該輪詢低頻週期訊號時,控制該通用串列匯流排裝置來停止產生另一輪詢低頻週期訊號至該通用串列匯流排主機以使得該通用串列匯流排主機持續產生該輪詢低頻週期訊號至該通用串列匯流排裝置。
- 申請專利範圍第1項所述之頻率校正方法,其中該低頻時脈訊號的該脈寬時間大致上等於該輪詢低頻週期訊號的一脈寬時間加上一預定延遲時間。
- 如申請專利範圍第1項所述之頻率校正方法,其中依據該低頻時脈訊號的該脈寬時間來調整該可程式化振盪電路的該振盪訊號為該粗調振盪訊號的步驟包含有:於該低頻時脈訊號的該脈寬時間內計數該振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該粗調振盪訊號。
- 如申請專利範圍第1項所述之頻率校正方法,其中利用該可程式化振盪電路的該粗調振盪訊號計算出該低頻時脈訊號的該脈波週期的步驟包含有:於該低頻時脈訊號的該脈波週期內計數該粗調振盪訊號的一週期數;其中該粗調振盪訊號的該週期數係對應該低頻時脈訊號的該脈波週期。
- 如申請專利範圍第1項所述之頻率校正方法,其中依據該比值來判斷出該通用串列匯流排主機的該主機類型的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選比值;以及比對該比值與該複數個候選比值來從該複數個候選主機類型中判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第1項所述之頻率校正方法,其中依據該主機類型所對應到的該特定時脈週期來校正該通用串列匯流排裝置的該可程式化振盪電路以使得該可程式化振盪電路得以產生具有該預定頻率的該目標振盪訊號的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機所對應的該特定時脈週期;於該特定時脈週期內計數該可程式化振盪電路的一振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
- 如申請專利範圍第1項所述之頻率校正方法,其中依據該主機類型所對應到的該特定時脈週期來校正該通用串列匯流排裝置的該可程式化振盪電路以使得該可程式化振盪電路得以產生具有該預定頻率的該目標振盪訊號的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機的該特定時脈週期以及計算出該特定時脈週期的一複數倍時脈週期;於該複數倍時脈週期內計數該可程式化振盪電路的一振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週 期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
- 如申請專利範圍第1項所述之頻率校正方法,其中依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的該主機類型的步驟包含有:擷取出對應於該輪詢低頻週期訊號的一低頻時脈訊號;控制該可程式化振盪電路以產生一振盪訊號;將該振盪訊號進行頻率合成以產生一合成振盪訊號;依據該低頻時脈訊號的複數倍脈寬時間來調整該振盪訊號,進而調整該合成振盪訊號為一粗調合成振盪訊號;利用該粗調合成振盪訊號計算出該低頻時脈訊號的複數倍脈波週期;計算出該複數倍脈波週期與該複數倍脈寬時間之一比值;以及依據該比值來判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第9項所述之頻率校正方法,其中該低頻時脈訊號的該複數倍脈寬時間內的每一個脈寬時間均大致上等於該輪詢低頻週期訊號的一脈寬時間加上一預定延遲時間。
- 如申請專利範圍第9項所述之頻率校正方法,其中依據該低頻時脈訊號的該複數倍脈寬時間來調整該振盪訊號,進而調整該合成振盪訊號為該粗調合成振盪訊號的步驟包含有:於該低頻時脈訊號的該複數倍脈寬時間內計數該合成振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該合成振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該合成振盪訊號視為該粗調合成振盪訊號。
- 如申請專利範圍第9項所述之頻率校正方法,其中利用該粗調合成振盪訊號計算出該低頻時脈訊號的該複數倍脈波週期的步驟包含有:於該低頻時脈訊號的該複數倍脈波週期內計數該粗調合成振盪訊號的一週期數;其中該粗調合成振盪訊號的該週期數係對應該低頻時脈訊號的該複數倍脈波週期。
- 如申請專利範圍第9項所述之頻率校正方法,其中依據該比值來判斷出該通用串列匯流排主機的該主機類型的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選比值;以及比對該比值與該複數個候選比值來從該複數個候選主機類型中判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第9項所述之頻率校正方法,其中依據該主機類型所對應到的該特定時脈週期來校正該通用串列匯流排裝置的該可程式化振盪電路以使得該可程式化振盪電路得以產生具有該預定頻率的該目標振盪訊號的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機的該特定時脈週期以及計算出該特定時脈週期的一複數倍時脈週期;於該複數倍時脈週期內計數該合成振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數; 調整該可程式化振盪電路的該振盪訊號,一直到所對應的該合成振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
- 一種通用串列匯流排裝置,包含有:一偵測電路,用來接收來自一通用串列匯流排主機的一輪詢低頻週期訊號;一判斷電路,耦接於該偵測電路,用來依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的一主機類型;一可程式化振盪電路,用來產生一振盪訊號;以及一調整電路,耦接於該偵測電路、該判斷電路以及該可程式化振盪電路,用來依據該主機類型所對應到的一特定時脈週期來校正該可程式化振盪電路以使得該可程式化振盪電路得以產生具有一預定頻率的一目標振盪訊號;其中該偵測電路另擷取出對應於該輪詢低頻週期訊號的一低頻時脈訊號,該判斷電路用來:依據該低頻時脈訊號的一脈寬時間來調整該可程式化振盪電路的該振盪訊號為一粗調振盪訊號;利用該可程式化振盪電路的該粗調振盪訊號計算出該低頻時脈訊號的一脈波週期;計算出該脈波週期與該脈寬時間之一比值;以及依據該比值來判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第15項所述之通用串列匯流排裝置,另包含有:一傳送電路,耦接於包含有該調整電路的一控制電路;其中當該偵測電路接收來自該通用串列匯流排主機的該輪詢低頻週期訊號時,該控制調整電路控制該傳送電路來停止產生另一輪詢低頻週期訊號至該通用串列匯流排主機以使得該通用串列匯流排主機持續產生該輪 詢低頻週期訊號至該通用串列匯流排裝置。
- 如申請專利範圍第16項所述之通用串列匯流排裝置,其中該低頻時脈訊號的該脈寬時間大致上等於該輪詢低頻週期訊號的一脈寬時間加上一預定延遲時間。
- 如申請專利範圍第16項所述之通用串列匯流排裝置,其中該判斷電路用來:於該低頻時脈訊號的該脈寬時間內計數該振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該粗調振盪訊號。
- 如申請專利範圍第16項所述之通用串列匯流排裝置,其中該判斷電路用來:於該低頻時脈訊號的該脈波週期內計數該粗調振盪訊號的一週期數;其中該粗調振盪訊號的該週期數係對應於該低頻時脈訊號的該脈波週期。
- 如申請專利範圍第16項所述之通用串列匯流排裝置,另包含有:一表格,用來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選比值;其中該判斷電路比對該比值與該複數個候選比值來從該複數個候選主機類型中判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第15項所述之通用串列匯流排裝置,另包含有:一表格,用來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期; 其中該調整電路用來:依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機所對應的該特定時脈週期;於該特定時脈週期內計數該可程式化振盪電路的一振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
- 如申請專利範圍第15項所述之通用串列匯流排裝置,另包含有:一表格,用來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;其中該調整電路用來:依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機的該特定時脈週期以及計算出該特定時脈週期的一複數倍時脈週期;於該複數倍時脈週期內計數該可程式化振盪電路的一振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
- 如申請專利範圍第15項所述之通用串列匯流排裝置,另包含有:一頻率合成器,用來將該振盪訊號進行頻率合成以產生一合成振盪訊號;其中該偵測電路另擷取出對應於該輪詢低頻週期訊號的一低頻時脈訊號,該判斷電路用來:依據該低頻時脈訊號的複數倍脈寬時間來調整該振盪訊號,進而調整該合成振盪訊號為一粗調合成振盪訊號;利用該粗調合成振盪訊號計算出該低頻時脈訊號的複數倍脈波週期;計算出該複數倍脈波週期與該複數倍脈寬時間之一比值;以及依據該比值來判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第23項所述之通用串列匯流排裝置,其中該低頻時脈訊號的該複數倍脈寬時間內的每一個脈寬時間均大致上等於該輪詢低頻週期訊號的一脈寬時間加上一預定延遲時間。
- 如申請專利範圍第23項所述之通用串列匯流排裝置,其中該判斷電路用來:於該低頻時脈訊號的該複數倍脈寬時間內計數該合成振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該合成振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該合成振盪訊號視為該粗調合成振盪訊號。
- 如申請專利範圍第23項所述之通用串列匯流排裝置,其中該判斷電路用來:於該低頻時脈訊號的該複數倍脈波週期內計數該粗調合成振盪訊號的一週期數;其中該粗調合成振盪訊號的該週期數係對應該低頻時脈訊號的該複數倍脈波週期。
- 如申請專利範圍第23項所述之通用串列匯流排裝置,另包含有:一表格,用來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選比值;其中該判斷電路用來比對該比值與該複數個候選比值來從該複數個候選主機類型中判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第23項所述之通用串列匯流排裝置,另包含有:一表格,用來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;其中該調整電路用來:依據該主機類型來從該複數個候選時脈週期中判 斷出該通用串列匯流排主機的該特定時脈週期以及計算出該特定時脈週期的一複數倍時脈週期;於該複數倍時脈週期內計數該合成振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路的該振盪訊號,一直到所對應的該合成振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
- 一種應用於一通用串列匯流排裝置(Universal Serial Bus device,USB device)的頻率校正方法,包含有:將該通用串列匯流排裝置耦接於一通用串列匯流排主機(USB host);利用該通用串列匯流排裝置接收來自該通用串列匯流排主機的一輪詢低頻週期訊號(Polling Low Frequency Periodic Signal,Polling LFPS);依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的一主機類型;以及利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機所對應的一特定時脈週期;於該特定時脈週期內計數一可程式化振盪電路的一振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為具有一預定頻率的一目標振盪訊號。
- 一種應用於一通用串列匯流排裝置(Universal Serial Bus device,USB device)的頻率校正方法,包含有:將該通用串列匯流排裝置耦接於一通用串列匯流排主機(USB host);利用該通用串列匯流排裝置接收來自該通用串列匯流排主機的一輪詢低頻週期訊號(Polling Low Frequency Periodic Signal,Polling LFPS);依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的一主機類型,以及利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機的一特定時脈週期以及計算出該特定時脈週期的一複數倍時脈週期;於該複數倍時脈週期內計數一可程式化振盪電路的一振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為具有一預定頻率的一目標振盪訊號。
- 一種應用於一通用串列匯流排裝置(Universal Serial Bus device,USB device)的頻率校正方法,包含有:將該通用串列匯流排裝置耦接於一通用串列匯流排主機(USB host);利用該通用串列匯流排裝置接收來自該通用串列匯流排主機的一輪詢低頻週期訊號(Polling Low Frequency Periodic Signal,Polling LFPS); 依據該輪詢低頻週期訊號來判斷該通用串列匯流排主機的一主機類型;以及擷取出對應於該輪詢低頻週期訊號的一低頻時脈訊號;控制該可程式化振盪電路以產生一振盪訊號;將該振盪訊號進行頻率合成以產生一合成振盪訊號;依據該低頻時脈訊號的複數倍脈寬時間來調整該振盪訊號,進而調整該合成振盪訊號為一粗調合成振盪訊號;利用該粗調合成振盪訊號計算出該低頻時脈訊號的複數倍脈波週期;計算出該複數倍脈波週期與該複數倍脈寬時間之一比值;依據該比值來判斷出該通用串列匯流排主機的一主機類型;以及依據該主機類型所對應到的一特定時脈週期來校正該通用串列匯流排裝置的一可程式化振盪電路以使得該可程式化振盪電路得以產生具有一預定頻率的一目標振盪訊號。
- 如申請專利範圍第31項所述之頻率校正方法,其中該低頻時脈訊號的該複數倍脈寬時間內的每一個脈寬時間均大致上等於該輪詢低頻週期訊號的一脈寬時間加上一預定延遲時間。
- 如申請專利範圍第31項所述之頻率校正方法,其中依據該低頻時脈訊號的該複數倍脈寬時間來調整該振盪訊號,進而調整該合成振盪訊號為該粗調合成振盪訊號的步驟包含有:於該低頻時脈訊號的該複數倍脈寬時間內計數該合成振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數;調整該可程式化振盪電路一直到該合成振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該合成振盪訊號視為該粗調合成振盪訊號。
- 如申請專利範圍第31項所述之頻率校正方法,其中利用該粗調合成振盪訊號計算出該低頻時脈訊號的該複數倍脈波週期的步驟包含有:於該低頻時脈訊號的該複數倍脈波週期內計數該粗調合成振盪訊號的一週期數;其中該粗調合成振盪訊號的該週期數係對應該低頻時脈訊號的該複數倍脈波週期。
- 如申請專利範圍第31項所述之頻率校正方法,其中依據該比值來判斷出該通用串列匯流排主機的該主機類型的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選比值;以及比對該比值與該複數個候選比值來從該複數個候選主機類型中判斷出該通用串列匯流排主機的該主機類型。
- 如申請專利範圍第31項所述之頻率校正方法,其中依據該主機類型所對應到的該特定時脈週期來校正該通用串列匯流排裝置的該可程式化振盪電路以使得該可程式化振盪電路得以產生具有該預定頻率的該目標振盪訊號的步驟包含有:利用一表格來儲存複數個候選主機類型以及該複數個候選主機類型所分別對應的複數個候選時脈週期;依據該主機類型來從該複數個候選時脈週期中判斷出該通用串列匯流排主機的該特定時脈週期以及計算出該特定時脈週期的一複數倍時脈週期;於該複數倍時脈週期內計數該合成振盪訊號的一週期數,並判斷該週期數是否等於一預定週期數; 調整該可程式化振盪電路的該振盪訊號,一直到所對應的該合成振盪訊號的該週期數等於該預定週期數;以及將對應於該預定週期數的該振盪訊號視為該目標振盪訊號。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102144686A TWI533136B (zh) | 2013-12-05 | 2013-12-05 | 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 |
CN201410011994.7A CN104699645B (zh) | 2013-12-05 | 2014-01-10 | 通用串行总线装置的频率校正方法及其通用串行总线装置 |
CN201710553095.3A CN107506327B (zh) | 2013-12-05 | 2014-01-10 | 通用串行总线装置的频率校正方法及其通用串行总线装置 |
US14/551,067 US9552012B2 (en) | 2013-12-05 | 2014-11-23 | Frequency calibration method applicable in universal serial bus device and related universal serial bus device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102144686A TWI533136B (zh) | 2013-12-05 | 2013-12-05 | 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201523265A TW201523265A (zh) | 2015-06-16 |
TWI533136B true TWI533136B (zh) | 2016-05-11 |
Family
ID=53271108
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102144686A TWI533136B (zh) | 2013-12-05 | 2013-12-05 | 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US9552012B2 (zh) |
CN (2) | CN107506327B (zh) |
TW (1) | TWI533136B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108763113B (zh) * | 2018-05-23 | 2020-10-09 | 广东水利电力职业技术学院(广东省水利电力技工学校) | 一种总线嵌入式工业控制系统及控制方法、信息处理终端 |
CN114430272A (zh) * | 2020-10-29 | 2022-05-03 | 爱普存储技术(杭州)有限公司 | 具有频率校准功能的时钟产生单元及其相关的电子系统 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005533305A (ja) * | 2002-07-17 | 2005-11-04 | ファイバーバイト プロプライアタリー リミテッド | 同期マルチチャネルユニバーサルシリアルバス |
CN1987843B (zh) * | 2005-12-23 | 2010-08-11 | 深圳市朗科科技股份有限公司 | Usb协议自适应方法 |
CN101051837B (zh) * | 2006-04-07 | 2011-08-10 | 盛群半导体股份有限公司 | Usb接口内建式振荡器的频率校正装置及其方法 |
US8407508B2 (en) * | 2009-02-18 | 2013-03-26 | Genesys Logic, Inc. | Serial bus clock frequency calibration system and method thereof |
TWI508457B (zh) * | 2009-06-05 | 2015-11-11 | Elan Microelectronics Corp | Methods and circuits for correcting the frequency of USB devices |
CN102063402B (zh) * | 2009-11-12 | 2015-01-14 | 义隆电子股份有限公司 | 校正usb装置频率的方法及电路 |
TWI417703B (zh) * | 2010-07-22 | 2013-12-01 | Genesys Logic Inc | 相容於通用序列匯流排協定之時脈同步方法 |
US8656205B2 (en) * | 2010-10-04 | 2014-02-18 | Jmicron Technology Corp. | Generating reference clocks in USB device by selecting control signal to oscillator form plural calibration units |
TWI407318B (zh) * | 2010-11-16 | 2013-09-01 | Genesys Logic Inc | 低頻交握訊號之偵測方法 |
US8457247B2 (en) * | 2010-11-18 | 2013-06-04 | Plx Technology, Inc. | In-band generation of low-frequency periodic signaling |
TWI463804B (zh) * | 2011-10-28 | 2014-12-01 | Phison Electronics Corp | 時脈資料回復電路 |
TWI564725B (zh) * | 2012-09-26 | 2017-01-01 | 威盛電子股份有限公司 | 適用於輸入輸出介面之傳輸電路及其訊號傳輸方法 |
US20140330995A1 (en) * | 2013-05-03 | 2014-11-06 | Paul S. Levy | Data storage system |
TWI530799B (zh) * | 2013-11-28 | 2016-04-21 | 慧榮科技股份有限公司 | 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 |
-
2013
- 2013-12-05 TW TW102144686A patent/TWI533136B/zh active
-
2014
- 2014-01-10 CN CN201710553095.3A patent/CN107506327B/zh active Active
- 2014-01-10 CN CN201410011994.7A patent/CN104699645B/zh active Active
- 2014-11-23 US US14/551,067 patent/US9552012B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
CN104699645A (zh) | 2015-06-10 |
CN104699645B (zh) | 2018-04-10 |
TW201523265A (zh) | 2015-06-16 |
US9552012B2 (en) | 2017-01-24 |
US20150160686A1 (en) | 2015-06-11 |
CN107506327A (zh) | 2017-12-22 |
CN107506327B (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI530799B (zh) | 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 | |
US10579580B2 (en) | Start of sequence detection for one wire bus | |
EP2787664B1 (en) | Time synchronization method and apparatus | |
US8595543B2 (en) | Method and circuit for trimming an internal oscillator of a USB device according to a counting number between a first and second clock count value | |
WO2015085825A1 (zh) | 一种频率校准方法及装置 | |
TWI535213B (zh) | 時脈資料回復電路與方法 | |
TWI420802B (zh) | 自動校正頻率之頻率校正電路及其方法 | |
TWI446718B (zh) | 振盪器校正裝置以及振盪器校正方法 | |
US20070132492A1 (en) | Delay locked loop circuit and signal delay locking method | |
US9722590B1 (en) | Skew adjustment circuit, semiconductor device, and skew calibration method | |
TWI332763B (en) | Usb device, frequency auto-locking device and frequency auto-locking method | |
TWI533136B (zh) | 應用於通用串列匯流排裝置的頻率校正方法及其相關的通用串列匯流排裝置 | |
TW201416820A (zh) | 自動校正傳輸頻率之傳輸介面裝置及方法 | |
US20120051479A1 (en) | Clock frequency adjusting circuit and clock frequency adjusting method thereof | |
TW201547182A (zh) | 用於校正在無晶體器件中以電容器為基礎的振盪器之系統及方法 | |
CN104242921A (zh) | 一种高频延迟锁相环及其时钟处理方法 | |
JP5994020B2 (ja) | 統合プロセッサ及びcdr回路 | |
CN107769907B (zh) | 用于无基准重定时器的多数据速率多协议通信技术 | |
JP2011130093A (ja) | 受信回路 | |
US20040068383A1 (en) | Method of operating a microcontroller chip having an internal RC oscillator and microcontroller chip embodying the method | |
TWI418155B (zh) | 自動校正天線共振頻率的電路及其方法 | |
JP5722733B2 (ja) | Pll回路およびそのキャリブレーション方法 | |
KR101697309B1 (ko) | 광대역 하모닉 락 발생을 방지하는 지연 고정 루프 회로 그 지연 고정 방법 | |
TW201810952A (zh) | 頻率控制電路,頻率控制方法以及鎖相迴路電路 | |
US9525406B2 (en) | Apparatus and method for compensating for duty signals |