TWI556162B - 具有排程單元之微控制器 - Google Patents
具有排程單元之微控制器 Download PDFInfo
- Publication number
- TWI556162B TWI556162B TW101130564A TW101130564A TWI556162B TW I556162 B TWI556162 B TW I556162B TW 101130564 A TW101130564 A TW 101130564A TW 101130564 A TW101130564 A TW 101130564A TW I556162 B TWI556162 B TW I556162B
- Authority
- TW
- Taiwan
- Prior art keywords
- event
- unit
- register
- microcontroller
- timer
- Prior art date
Links
Classifications
-
- 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
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- 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/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3243—Power saving in microcontroller unit
-
- 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/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7807—System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
- G06F15/7814—Specially adapted for real time processing, e.g. comprising hardware timers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7842—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers)
- G06F15/7853—Architectures of general purpose stored program computers comprising a single central processing unit with memory on one IC chip (single chip microcontrollers) including a ROM
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Microcomputers (AREA)
- Power Sources (AREA)
- Electric Clocks (AREA)
Description
本申請案之技術領域係關於微控制器,特定言之關於一種在一微控制器內之事件產生系統。
微控制器通常包括用於形成可在複數個應用中應用之一晶片上系統之一微處理器、記憶體及複數個周邊裝置。最常見的周邊裝置之一者係可用於產生中斷信號例如用於形成一即時作業系統(RTOS)中之一排程器之計時器單元。然而,此等計時器及其可產生之信號之功能性受到限制。
因此,需要一種改良型微控制器。
根據一實施例,一種微控制器可包括一中央處理單元(CPU);複數個周邊裝置;及一可程式化排程器單元,其包括:一計時器,其由一獨立時脈信號定時;一比較器,其與該計時器之一計時器暫存器耦合且具有產生一輸出信號之一輸出;一事件暫存器,其與該比較器耦合;一差量時間暫存器;及一算術邏輯單元,其受該比較器之該輸出信號控制且包括第一輸入及第二輸入以及一輸出,其中該第一輸入與該計時器暫存器或該事件暫存器耦合,且該第二輸入與該差量時間暫存器耦合且該輸出與該事件暫存器耦合。
根據一進一步實施例,該微控制器可進一步包括一事件邏輯單元,該事件邏輯單元接收該比較器之該輸出信號且
控制該算術邏輯單元及該事件暫存器。根據一進一步實施例,該微控制器可進一步包括複數個差量時間暫存器。根據一進一步實施例,該複數個差量時間暫存器可配置為一序列緩衝器。根據一進一步實施例,該序列緩衝器為一循環序列緩衝器,其可經控制以依一單個序列或預定次數以一循環方式輸出該等差量時間暫存器之內容。根據一進一步實施例,該微控制器可進一步包括一資料格式化單元,該資料格式化單元與該計時器暫存器及該差量時間暫存器之至少一者耦合,其中該資料格式化單元可操作以將一絕對時間值轉換成一相對時間值。根據一進一步實施例,該微控制器可進一步包括一校準單元,該校準單元與該計時器暫存器之預定義數目個位元耦合且可操作以將該預定義數目個位元覆寫在該計時器暫存器中。根據一進一步實施例,該校準單元可週期性地覆寫該等計時器暫存器位元。根據一進一步實施例,該時脈選擇單元可操作以在由至少一周邊計時器單元所產生之複數個時脈信號之間選擇。根據一進一步實施例,該微控制器可進一步包括一時脈選擇單元,該時脈選擇單元可操作以在內部時脈信號與外部時脈信號之間選擇。根據一進一步實施例,該事件邏輯單元可進一步接收該序列緩衝器之一輸出信號,其中該事件邏輯單元產生複數個輸出信號。根據一進一步實施例,該序列緩衝器之該輸出信號可指示一序列位置。根據一進一步實施例,來自該事件邏輯單元之一輸出信號可為一中斷信號。根據一進一步實施例,來自該事件邏輯單元之一輸出
信號可為具有一預定義脈衝寬度之一脈衝信號。根據一進一步實施例,來自該事件邏輯單元之一輸出信號可饋送至一時脈控制單元以啟用一預定時脈源。根據一進一步實施例,該微控制器可進一步包括一事件分配單元,該事件分配單元自該事件邏輯單元接收該複數個輸出信號且產生饋送至該CPU及至少一周邊裝置之至少一者之輸出信號。根據一進一步實施例,該微控制器可進一步包括與該事件分配單元耦合之一系統電力控制單元。根據一進一步實施例,該微控制器可係電池操作的。根據一進一步實施例,該微控制器可進一步包括用於程式化該可程式化排程器單元之複數個特殊功能暫存器。根據一進一步實施例,該計時器暫存器及該事件暫存器可經組態以儲存一UNIX時間格式。根據一進一步實施例,該算術邏輯單元可為一加法器。
根據另一實施例,一種操作包括一中央處理器單元(CPU)、複數個周邊裝置及一可程式化排程器單元之一微控制器之方法可包括:將一時間值程式化至一計時器之一計時器暫存器中;定時該計時器;比較一事件暫存器與該計時器暫存器;其中若該事件暫存器匹配該計時器暫存器,則該排程器單元自動產生一事件且將該時間值或一新時間值添加至該事件暫存器。
根據該方法之一進一步實施例,程式化該時間值之步驟可藉由接收一相對時間或一絕對時間且格式化該時間以形成該時間值而執行。根據該方法之一進一步實施例,一事
件可將該CPU自一睡眠模式喚醒。根據該方法之一進一步實施例,一事件可將一周邊裝置自一睡眠模式喚醒達一預定時間,同時該CPU保持處於一睡眠模式。根據該方法之一進一步實施例,在該預定時間期間,該周邊裝置可產生用於喚醒該CPU之一信號。根據該方法之一進一步實施例,複數個時間值可在一循序緩衝器內程式化。根據該方法之一進一步實施例,該循序緩衝器可為一循環序列緩衝器。根據該方法之一進一步實施例,該循序緩衝器可操作以經控制以依一單個序列或預定次數以一循環方式輸出該等時間值。根據該方法之一進一步實施例,該計時器及該等事件暫存器可儲存呈UNIX時間格式之一值。根據該方法之一進一步實施例,該方法可進一步包括藉由一校準單元而週期性地校準該計時器暫存器。根據該方法之一進一步實施例,定時該計時器暫存器可在內部時脈信號與外部時脈信號之間選擇。根據該方法之一進一步實施例,該方法可進一步包括處理該事件以產生複數個輸出信號。根據該方法之一進一步實施例,為了處理該事件可考量該序列緩衝器之一序列位置。根據該方法之一進一步實施例,來自該複數個輸出信號之一輸出信號可為一中斷信號。根據該方法之一進一步實施例,來自該複數個輸出信號之一輸出信號可為具有一預定義脈衝寬度之一脈衝信號。根據該方法之一進一步實施例,產生該事件可包括將複數個輸出信號分配至該CPU及該至少一周邊裝置之至少一者。根據該方法之一進一步實施例,該複數個輸出信號之至少一信
號可饋送至一系統電力控制單元。根據該方法之一進一步實施例,該複數個輸出信號之至少一信號可饋送至一時脈控制單元以啟用一預定時脈源。
熟習此項技術者將自下文圖式、描述及申請專利範圍容易明白本揭示內容之其他技術優點。本申請案之各種實施例僅可獲得所陳述之一子組優點。且無一優點對該等實施例而言係至關重要的。
可藉由參考結合隨附圖式加以採用之下文描述而獲得對本揭示內容及其優點的更詳盡瞭解,其中相同參考數字指示相同特徵。
特定言之,電池供電之微控制器(MCU)應用可能需要最小化軟體中之計算時間偏移所花之時間。具有一備用電源模式之AC幹線電力應用可具有相似要求。多數電池操作或備用功能應用將MCU及視需要其他組件置於一斷電(睡眠)模式以最小化電力消耗。在此一睡眠模式中,MCU必須以週期性間隔喚醒以執行特定任務。此等任務可包含讀取一感測器,檢查用於活動之一通信埠,接通一周邊裝置以準備一未來操作等。此等事件可依不同間隔發生。習知裝置使用自其自身振盪器操作之一計時器電路,同時該裝置處於一睡眠模式。應用軟體必須花時間計算一時間偏移以排程下一所要喚醒時間。計算時間偏移所花之時間添加至MCU覺醒之時間,從而增大總電力消耗且縮短電池壽命。
為此,習知MCU具有經設計用於操作同時其餘晶片處於一斷電狀態之一般計時器及振盪器電路。此等電路允許MCU維持時間記錄功能性且週期性地喚醒MCU使得其可執行軟體任務。根據各種實施例,在其他益處當中,可避免此額外電力消耗。
圖1展示根據一實施例之一微控制器100之一方塊圖。為了更佳地概述,圖1僅展示組件之間的特定連接。取決於各自功能性,各連接可代表單個或多個連接線。熟習此項技術者將明白一些連接可為替代物且可能並不需要。
一積體晶片100嵌入具有複數個外部接針140之一外殼105中。作為微控制器之典型,積體晶片100包括一中央處理單元110、複數個周邊裝置120及記憶體130。此外,根據一實施例,該微控制器包括可具有可與一或多個外部或內部輸入源耦合之一時脈選擇單元152之一可程式化即時時脈及排程器單元150(RTCS)。此外,RTCS 150可直接及/或經由特殊功能暫存器160而與CPU耦合。為此,該微控制器可包括一內部系統及/或周邊匯流排。此外,RTCS可包括與一事件/中斷分配單元180耦合之一事件邏輯單元154。然而,在其他實施例中,事件/中斷分配單元180可為RTCS之一積體部分或在不需要由此單元所提供之特定功能性的情況下,可全部省略。事件邏輯單元154可產生如下文將更詳細說明可由外部事件/中斷分配單元180處理及分配之複數個信號。事件邏輯單元154可例如產生直接饋送至CPU或一周邊裝置120之中斷或控制信號。然而,
根據其他實施例,事件/中斷分配單元180可耦合至產生饋送至CPU 110之中斷信號及/或向量之一中斷單元190。中斷單元190可包括如在微控制器系統中常見之一仲裁器及一遮罩單元。此外,事件/中斷分配單元180亦可直接連接至一系統電力管理單元175、系統時脈管理單元及/或一或多個周邊單元120。系統電力管理單元175可控制晶片上之各種系統組件之電力分配,其可在如在圖1中概念地展示具有電池50之一電池操作之系統中有利。因此,系統電力管理單元175可產生用於系統100之不同組件之啟用信號或選擇性對此等組件供電。根據其他實施例,系統電力管理單元175可經由一專用電力匯流排而與所有組件耦合。系統電力管理單元175可經由專用控制線或經由相關聯特殊功能暫存器而受控制。例如,根據一實施例,系統電力管理單元175可與事件/中斷分配單元耦合以將電力供應給選定系統組件(例如,一類比轉數位轉換器單元)達一預定義時間週期。該類比轉數位轉換器單元可經程式化以轉換一類比值且若該值超過一預定義臨限值,則產生一中斷。當接收該中斷時,CPU 110及/或其他系統組件可被喚醒且CPU 110可接著進一步處理各自資料。此一實施方案可對最小化電力消耗之電容式觸控辨識或其他應用非常有用,如下文將更詳細說明。
此外,可程式化RTCS可經由可在一記憶體映射之特殊功能暫存器區塊中含有之特殊功能暫存器160而程式化。或者或此外,CPU 110可直接耦合至RTCS 150。多種時脈
信號可經由來自時脈單元170之內部時脈信號線或經由透過一或多個接針140連接之外部時脈源而提供給RTCS 150。若提供多個時脈信號,則RTCS 150可包括一可程式化時脈選擇單元152。然而,可自RTCS 150外部提供此一時脈選擇單元152以及RTCS 150之其他組件。
圖2展示根據一實施例之一般概念之一方塊圖。在圖2中所示之單元150經組態使得其可被程式化且用作為一低電力中斷管理單元。此單元150之用途係為了最大化MCU在睡眠模式中所花之時間。單元150如一硬體RTOS起作用以在適當時間排程觸發器或CPU喚醒事件,如下文將更詳細說明。
單元150之中央元件為與一48位元計時器暫存器240及一48位元事件暫存器260耦合之一48位元比較器250。然而,根據其他實施例,更多或更少位元可提供用於比較器250及暫存器240、260。計時器暫存器240及事件暫存器260可各分離成如在圖2中所示且可在一16位元系統中有利之三段式16位元暫存器。然而,可根據各自MCU之位元大小而使用其他分段。計時器暫存器240由如在圖2中所示可為與一相關聯晶體(例如,一32.768 KHz晶體)耦合之一睡眠模式振盪器210之一專用時脈源。然而,如下文參考其他實施例將說明,可使用其他振盪器。比較器250不斷比較暫存器240中之值與暫存器260中之值,且若事件暫存器260中之值等於或超過計時器暫存器240中之值,則產生一信號。此信號用於觸發可用於產生一中斷信號之一輸出信
號。如在此項技術中所知,該中斷信號可為一優先化之中斷或一中斷向量或兩者之一組合。此外,提供亦可由比較器250之輸出信號觸發之一算術邏輯單元(ALU)270。ALU 270可直接受如在圖2中所示之比較器250控制。然而,可能更切實際的是,透過自比較器250接收輸出信號之一般事件佇列控制或管理單元(舉例而言,諸如在圖1中所示之事件邏輯單元154或如圖3所示且下文更詳細說明之事件邏輯單元或狀態機380)而控制ALU 270。根據一實施例,ALU 270可為如在圖2中所示之加法器。然而,可使用其他算術邏輯單元。此加法器270在由比較器250產生輸出信號時接收儲存在計時器暫存器240中之值。然而,根據一替代實施例,由於在比較器250產生輸出信號時計時器暫存器240之內容與事件暫存器260之內容相同,故事件暫存器260可與加法器270之第一輸入耦合。若計時器暫存器240已在ALU 270處理輸出值之前前進,則此連接亦可係有利的。加法器270之第二輸入接收儲存在一差量時間暫存器230中之一值。此暫存器230可為可記憶體映射之一特殊功能暫存器。根據另一實施例,可提供複數個差量時間暫存器230。由加法器270所執行之添加之結果饋送回至現自動含有下一事件之事件暫存器260。儲存在差量時間暫存器230中之值可根據內部信號或狀態而動態地改變,如在下文更詳細說明。計時器暫存器240及/或事件暫存器260亦可為記憶體映射之特殊功能暫存器。或者,CPU 110可直接存取用於程式化一單個事件之此等暫存器之任何一者。
因此,如在圖2中所示之單元150可操作以自動產生一次性或週期性軟體事件。不像一通用計時器,此周邊裝置最佳化用於追蹤長時間週期。低電力中斷管理單元150通常由一低電力源(諸如一石英錶220或一低頻RC振盪器)定時使得其可在睡眠模式中獨立操作。
根據一實施例,單元150可經組態以使用Unix時間格式。Unix時間格式追蹤自UTC 1970年1月1日午夜起已經歷之秒數。秒數儲存在一32位元整數值中,從而允許唯一地追蹤時間及日期直至2038年為止。當模組自一32.768 KHz晶體時脈操作時,需要一48位元暫存器追蹤Unix時間。當使用一32.768 KHz時脈參考時,最低有效之15位元暫存器將允許追蹤小於1秒之時間增量。
若需要,則差量時間暫存器230可以小於48位元實施以減小邏輯大小。該模組之觸發器輸出280可用於此等功能:
˙觸發另一周邊裝置或對另一周邊裝置供電-周邊事件可鏈接使得可在喚醒該裝置前起始一事件序列
- 產生一CPU中斷
- 產生一CPU喚醒事件
- 排程多個週期性時間事件。
在一些應用中,可能需要具有多個事件循環。例如,該應用可每4毫秒喚醒及檢查ADC且每50毫秒檢查使用者輸入按鈕。如下文將更詳細說明,該模組可經組態以具有處理不同週期或差量時間之一清單之能力。例如,在一實施
例中,該模組可處理一清單且正確地計算將產生一事件之絕對時間。此等事件可具有分開的中斷向量使得事件類型可被CPU 110快速辨別。
為了排程一絕對時間事件,即使需要一觸發事件,差量時間暫存器230亦可寫入為0。接著,使用者可直接操控事件暫存器位元EVT[47:0]以排程精確觸發時間。若一時間偏移寫入至該差量時間暫存器,則該事件將變成週期性。
根據各種應用實例,該單元可操作為一通用排程器以用於
- 每1毫秒進行一高頻任務:
- 取樣一ADC
- 載入通信緩衝器
- 每100毫秒進行媒體頻率任務:
- 檢查按鈕鍵壓或使用者活動
- 使一LED閃爍
- 更新顯示器
- 每10秒進行低頻任務:
- 檢查電池電壓位準
及/或操作為一低電力排程器以用於
- 接通一ADC、CTMU或啟用外部周邊裝置
- 等待一穩定週期
- 觸發量測
- 若該量測在一窗內,則喚醒CPU。
圖3展示可具有如上文所述之進一步功能性之一增強型RTCS單元150之一更詳細實施例。此等額外單元之任何組
合可提供在一RTCS 150內。此外,該單元可包括與計時器暫存器240耦合之一資料格式化單元310及一序列緩衝器單元320。序列緩衝器單元320可包括複數個暫存器325。此外,提供一校準單元350以將最低16個位元之內容覆寫在計時器暫存器240中。然而,根據其他實施例,可由校準單元350覆寫更多或更少位元。此單元可為經觸發以依特定時間間隔或藉由一使用者指令手動地覆寫計時器暫存器240之一偏移暫存器。
一多工器330提供為一時脈選擇單元且可自接針140接收一或多個外部時脈信號及/或內部時脈信號。特定內部時脈信號可使用如在圖2中所示之一外部組件。
此外,提供與比較器250之輸出耦合且亦與序列緩衝器320之一輸出耦合之一事件邏輯單元380。此外,如由虛線所指示,ALU 270可受事件邏輯單元380而非比較器250控制。此外,相反或此外,一狀態機390可經實施以例如使用多個暫存器325而產生更複雜的信號序列及/或控制序列緩衝器320之操作。如熟習此項技術者將明白,狀態機390可與在圖3中所示之任何組件耦合。因此,如下文將更詳細說明,狀態機390亦可取代事件邏輯單元380或事件邏輯單元380可實現為一狀態機,且接收比較器250及/或序列緩衝器320之輸出信號並控制該等輸出信號及ALU 270,及/或控制序列緩衝器320之操作。
又,圖3展示RTCS 150之核心為又具有例如至少48個位元之計時器暫存器240(TIME)。此允許計時器使Unix時間
格式保持至少1秒解析度且亦量測較短的時間間隔。計時器240可由任何時脈信號(較佳為可在睡眠模式期間運行之一獨立時脈源)定時。
對於需要準確計時功能之應用,此源又通常為如在圖2中所示之一32.768 KHz石英錶振盪器。校準電路350附接至提供週期性調整以校正時脈頻率誤差之計時器240。數位比較器250比較計時器值與儲存在EVT暫存器260中之一事件時間。
根據一實施例,提供多個資料暫存器325以產生序列緩衝器320。該序列緩衝器可保存事件時間之一清單。該等事件時間可進入緩衝器320中作為絕對時間偏移或相對時間偏移,此取決於使用者如何組態RTCS 150。序列緩衝器320中之資料無需與TIME暫存器240大小相同。該系統可經組態以例如使用資料格式化單元310而轉換暫存器325之內容。例如,資料格式化單元310可用於將絕對時間值轉換成相對時間值。
序列緩衝器320可經組態及/或控制以將暫存器值輸出至作為一循環緩衝器之ALU 270,其中每當輸出一緩衝器值時,RTCS 150可計算接著將在該循環緩衝器之末端處設定之該暫存器之一新值。狀態機390可用於完成此一行為。此外,該循環緩衝器可經組態或可例如受一狀態機或透過組態暫存器控制而操作使得一選定暫存器325始終用於提供輸出值。因此,可產生恆定計時器週期。此外,該序列緩衝器可經組態以根據各自組態暫存器設定而依循序次序
輸出連續作為一循環緩衝器之暫存器325中之值達一單個時間或達一預定時間。因此,序列緩衝器320可提供RTCS 150之靈活及可程式化操作。
ALU電路270用於將序列緩衝器320中之資料添加至儲存在TIME暫存器240中之目前時間。來自ALU電路270之結果載入至EVT暫存器260中以供與TIME暫存器240作比較。事件邏輯區塊380自TIME暫存器240與EVT暫存器260之比較而接收匹配信號。事件邏輯區塊380亦自序列緩衝器325接收例如目前位置使得可確證正確事件信號。使用者可程式化由事件邏輯380例如透過相關聯特殊功能暫存器所產生之事件信號之類型。例如,該事件邏輯可取決於事件類型而產生不同長度之脈衝。可根據由一周邊裝置120或CPU 110處理該事件所要之時間而預定義該長度。此外或或者,一輸出信號可用於控制另一計時器或時脈控制單元以啟用一預定時脈單元或計時器。組態暫存器可用於定義可啟用哪個計時器或時脈單元。接著,一使用者可預設此一時脈單元或計時器之功能性以輸出預定時脈信號。可根據其他信號而進一步調變或控制此等時脈信號。
根據一實施例,RTCS 150外之電路180可例如決定將如何利用各事件信號。根據進一步實施例,RTCS單元150可具有如上文提及用於將Unix時間轉換成行事歷時間之資料格式化邏輯310。此格式化邏輯310亦可具有至MCU匯流排之一介面使得可根據各種實施例而讀取或修改時間。
單元150可例如經組態以執行以下功能:
- 保存呈YY/MM/DD/HH/MM/SS或Unix時間格式之資料/時間
- 校正因晶體頻率不準確所致之時間誤差;
- 排程一絕對時間事件(例如,在23:05:59時中斷CPU 110)
- 排程一偏移時間事件(例如,自現在起中斷CPU 110十分鐘)
- 排程一週期性時間事件(例如,每十分鐘中斷CPU 110)
- 用作其他時基及周邊裝置之一觸發器源
- 定序至內部及/或外部周邊裝置之電力
- 起始可能或不可能將CPU 110自睡眠模式喚醒之動作或事件之一特定序列
- 對各事件提供唯一的中斷向量。
圖4展示事件/中斷分配單元180之一實例以更詳細說明其各種功能。該單元可具有複數個特殊功能暫存器450以允許一使用者定義當自RTCS 150接收一特定類型之事件時應執行何種功能。為此,例如,可提供自事件邏輯單元154接收多個信號之一簡單狀態機410。可提供一中斷信號產生單元420、一電力選擇單元430及一脈衝寬度產生單元440。輸出信號亦可用於控制如上文所說明之一時脈單元或計時器。可根據各自實施例而提供此等單元之任何組合。因此,特定實施例可無需此等單元之一者或可需要此等單元之多者。提供中斷信號產生單元420以產生用於
CPU 110之一中斷信號。此一信號可直接或透過一中斷控制器190前進至CPU 110。該單元可經組態以產生具有一優先權之一中斷或一中斷向量。優先權或向量可取決於事件且因此此單元可使用組態暫存器450以產生各自信號。
此外,電力選擇單元430可根據一事件而將電力提供給選定單元。因此,一事件可經組態以不僅產生一中斷信號此外亦產生使特定預定義周邊單元或包含外部周邊裝置之系統之組件通電之選擇性電力啟用信號。亦可產生不具中斷信號之各自信號。為此,提供脈衝寬度產生單元440以產生一特定長度之脈衝。此單元可將此等脈衝直接發送至一周邊裝置以啟用該等脈衝達脈衝長度時間或用於其他功能性。然而,該信號亦可用於控制電力選擇單元430以將電力直接提供給各自系統組件。因此,一DMA控制器可被啟動達一預定義長度之時間以根據一預定義傳送程式而傳輸資料。在另一實施例中,一ADC單元可執行一感測器信號之類比轉數位轉換達脈衝寬度時間且若已超過一特定預定義臨限值,則造成一中斷或喚醒信號用於CPU 110。在一替代實施例中,脈衝寬度單元440亦可為RTCS 150之部分,例如,在事件邏輯單元154中。且如上文所提及,整個單元180可嵌入RTCS單元150中。如上文所述,如在圖1、圖3及圖4之各種實施例中所示之單個或多個狀態機可用於提供上文功能性。
因此,本發明完全適於實行本發明之目的且達成所提及之目標及優點及其固有之其他目標及優點。雖然已描繪、
描述本發明,且參考本發明之特定較佳實施例而定義本發明,但是此等參考並非暗指限制本發明且推斷無此限制。如一般技術者將想到,本發明可進行形式及功能上之大量修改、替代及等效物。本發明之所描繪及所描述之較佳實施例僅係例示性的,且並非詳盡本發明之範疇。因此,本發明旨在僅受隨附申請專利範圍之精神及範疇限制,從而充分認知所有態樣中之等效物。
50‧‧‧電池
100‧‧‧積體晶片/微控制器
105‧‧‧外殼
110‧‧‧中央處理單元(CPU)
120‧‧‧周邊裝置
130‧‧‧記憶體
140‧‧‧外部接針
150‧‧‧可程式化即時時脈及排程器單元(RTCS)
152‧‧‧時脈選擇單元
154‧‧‧事件邏輯單元
160‧‧‧特殊功能暫存器
170‧‧‧時脈單元
175‧‧‧系統電力管理單元
180‧‧‧事件/中斷分配單元/電路
190‧‧‧中斷控制器/中斷單元
210‧‧‧睡眠模式振盪器
220‧‧‧石英錶
230‧‧‧差量時間暫存器
240‧‧‧48位元計時器暫存器
250‧‧‧48位元比較器
260‧‧‧48位元事件暫存器
270‧‧‧算術邏輯單元
280‧‧‧觸發器輸出
310‧‧‧資料格式化單元
320‧‧‧序列緩衝器單元
325‧‧‧資料暫存器
330‧‧‧多工器
350‧‧‧校準電路/校準單元
380‧‧‧事件邏輯單元
390‧‧‧狀態機
410‧‧‧狀態機
420‧‧‧中斷信號產生單元
430‧‧‧電力選擇單元
440‧‧‧脈衝寬度產生單元
450‧‧‧組態暫存器
圖1係展示根據一實施例之一微控制器之一方塊圖;圖2展示一即時時脈及排程器單元之一實施例;圖3展示一即時時脈及排程器單元之一更詳細的進一步實施例;及圖4展示一事件/中斷分配單元之一實施例。
50‧‧‧電池
100‧‧‧積體晶片/微控制器
105‧‧‧外殼
110‧‧‧中央處理單元(CPU)
120‧‧‧周邊裝置
130‧‧‧記憶體
140‧‧‧外部接針
150‧‧‧可程式化即時時脈及排程器單元(RTCS)
152‧‧‧時脈選擇單元
154‧‧‧事件邏輯單元
160‧‧‧特殊功能暫存器
170‧‧‧時脈單元
175‧‧‧系統電力管理單元
180‧‧‧事件/中斷分配單元/電路
190‧‧‧中斷控制器/中斷單元
Claims (32)
- 一種微控制器,其包括:一中央處理單元(CPU);複數個周邊裝置;及一可程式化排程器單元,其包括:一計時器,其由一獨立時脈信號定時;一比較器,其與該計時器之一計時器暫存器耦合且具有產生一輸出信號之一輸出;一事件暫存器,其與該比較器耦合;複數個差量時間暫存器,其配置為一序列緩衝器;及一算術邏輯單元,其受該比較器之該輸出信號控制且包括一第一輸入及一第二輸入以及一輸出,其中該第一輸入與該計時器暫存器或該事件暫存器耦合,且該第二輸入與該差量時間暫存器耦合且該輸出與該事件暫存器耦合;及。 一事件邏輯單元,其接收該比較器之該輸出信號及指示一序列位置之該序列緩衝器之一輸出信號且控制該算術邏輯單元及該事件暫存器,且該序列位置被考量以處理一事件,其中該事件邏輯單元經組態以產生複數個輸出信號。
- 如請求項1之微控制器,其中當該比較器偵測該事件暫存器及該計時器暫存器之一匹配時,該算術邏輯單元被控制以對在該第一輸入及該第二輸入所接收之資料執行一算術功能並儲存一結果值於該事件暫存器中。
- 如請求項1之微控制器,其中該序列緩衝器為一循環序列緩衝器,其可經控制以依一單個序列或預定次數以一循環方式輸出該等差量時間暫存器之內容。
- 如請求項1之微控制器,其進一步包括一資料格式化單元,該資料格式化單元與該計時器暫存器及該差量時間暫存器之至少一者耦合,其中該資料格式化單元可操作以將一絕對時間值轉換成一相對時間值。
- 如請求項1之微控制器,其進一步包括一校準單元,該校準單元與該計時器暫存器之預定義數目個位元耦合且可操作以將該預定義數目個位元覆寫在該計時器暫存器中。
- 如請求項5之微控制器,其中該校準單元週期性地覆寫該等計時器暫存器位元。
- 如請求項1之微控制器,其中該時脈選擇單元可操作以在由至少一周邊計時器單元所產生之複數個時脈信號之間選擇。
- 如請求項1之微控制器,其進一步包括一時脈選擇單元,該時脈選擇單元可操作以在內部時脈信號與一外部時脈信號之間選擇。
- 如請求項1之微控制器,其中來自該事件邏輯單元之一輸出信號為一中斷信號。
- 如請求項1之微控制器,其中來自該事件邏輯單元之一輸出信號為具有一預定義脈衝寬度之一脈衝信號。
- 如請求項1之微控制器,其中來自該事件邏輯單元之一 輸出信號饋送至一時脈控制單元以啟用一預定時脈源。
- 如請求項1之微控制器,其進一步包括一事件分配單元,該事件分配單元自該事件邏輯單元接收該複數個輸出信號且產生饋送至該CPU及至少一周邊裝置之至少一者之輸出信號。
- 如請求項12之微控制器,其進一步包括與該事件分配單元耦合之一系統電力控制單元。
- 如請求項1之微控制器,其中該微控制器係電池操作的。
- 如請求項1之微控制器,其包括用於程式化該可程式化排程器單元之複數個特殊功能暫存器。
- 如請求項1之微控制器,其中該計時器暫存器及該事件暫存器經組態以儲存一UNIX時間格式。
- 如請求項1之微控制器,其中該算術邏輯單元為一加法器。
- 一種操作一微控制器之方法,該微控制器包括一中央處理器單元(CPU)、複數個周邊裝置及一可程式化排程器單元;該方法包括:將一時間值程式化至一計時器之一計時器暫存器中;於一序列緩衝器內程式化複數個預定義差量時間值;其中若該事件暫存器匹配該計時器暫存器,則該排 程器單元自動產生一事件且將該時間值或一新時間值添加至該事件暫存器,進一步包括處理該事件以產生複數個輸出信號,其中該序列緩衝器之一序列位置被考量以處理該事件。
- 如請求項18之方法,其中程式化該時間值之該步驟藉由接收一相對時間或一絕對時間且格式化該時間以形成該時間值而執行。
- 如請求項18之方法,其中一匹配事件將該CPU自一睡眠模式喚醒。
- 如請求項18之方法,其中一匹配事件將一周邊裝置自一睡眠模式喚醒達一預定時間,同時該CPU保持處於一睡眠模式。
- 如請求項21之方法,其中在該預定時間期間,該周邊裝置產生用於喚醒該CPU之一信號。
- 如請求項18之方法,其中該循序緩衝器為一循環序列緩衝器。
- 如請求項18之方法,其中該循序緩衝器可操作以經控制而依一單個序列或預定次數以一循環方式輸出該等時間值。
- 如請求項18之方法,該計時器及該等事件暫存器進一步儲存呈UNIX時間格式之一值。
- 如請求項18之方法,其進一步包括藉由一校準單元而週期性地校準該計時器暫存器。
- 如請求項18之方法,其中定時該計時器暫存器係在內部 時脈信號與一外部時脈信號之間選擇。
- 如請求項18之方法,其中來自該複數個輸出信號之一輸出信號為一中斷信號。
- 如請求項18之方法,其中來自該複數個輸出信號之一輸出信號為具有一預定義脈衝寬度之一脈衝信號。
- 如請求項27之方法,其中產生該事件包括:將複數個輸出信號分配至該CPU及該至少一周邊裝置中之至少一者。
- 如請求項30之方法,其中該複數個輸出信號之至少一信號饋送至一系統電力控制單元。
- 如請求項30之方法,其中該複數個輸出信號之至少一信號饋送至一時脈控制單元以啟用一預定時脈源。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/247,489 US8984323B2 (en) | 2011-09-28 | 2011-09-28 | Scheduling events in a microprocessor using a plurality of delta time registers arranged as a sequence buffer and indicating a sequence position of the sequence buffer to process an event |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201319935A TW201319935A (zh) | 2013-05-16 |
TWI556162B true TWI556162B (zh) | 2016-11-01 |
Family
ID=46924555
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW101130564A TWI556162B (zh) | 2011-09-28 | 2012-08-23 | 具有排程單元之微控制器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8984323B2 (zh) |
EP (1) | EP2761387B1 (zh) |
KR (1) | KR20140069283A (zh) |
CN (1) | CN103842930B (zh) |
TW (1) | TWI556162B (zh) |
WO (1) | WO2013048726A1 (zh) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2698717A1 (en) * | 2012-08-16 | 2014-02-19 | Nxp B.V. | Integrated circuit |
KR101927096B1 (ko) * | 2012-10-19 | 2018-12-10 | 삼성전자주식회사 | 어플리케이션 프로세서, 이를 구비하는 모바일 기기 및 어플리케이션 프로세서를 위한 클럭 신호 선택 방법 |
TWI574148B (zh) | 2013-05-29 | 2017-03-11 | 緯創資通股份有限公司 | 嵌入式控制器及其省電控制方法 |
US8768712B1 (en) | 2013-12-04 | 2014-07-01 | Google Inc. | Initiating actions based on partial hotwords |
US10353345B2 (en) | 2015-02-13 | 2019-07-16 | Microdul Ag | Electronic circuit for controlling the operation of a watch |
US9715387B2 (en) * | 2015-06-05 | 2017-07-25 | Renesas Electronics America Inc. | Configurable event selection for microcontroller timer/counter unit control |
US10063238B1 (en) * | 2017-09-18 | 2018-08-28 | Qualcomm Incorporated | Apparatus and method for a permutation sequencer |
TWI661338B (zh) * | 2017-12-14 | 2019-06-01 | 美商海盜船記憶體股份有限公司 | 高速反應遊戲裝置及其任務分配方法 |
CN110069323B (zh) * | 2018-01-24 | 2024-04-05 | 可赛尔内存股份有限公司 | 高速反应游戏设备及其任务分配方法 |
US11070077B2 (en) | 2018-05-03 | 2021-07-20 | Calamp Corp. | Hibernate control circuits for battery power switching |
US11880314B1 (en) | 2018-07-27 | 2024-01-23 | Dialog Semiconductor B.V. | Microcontroller for driving an external device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6232808B1 (en) * | 1999-03-18 | 2001-05-15 | Intervoice Limited Partnership | Irregular interval timing |
US20040220921A1 (en) * | 2003-03-04 | 2004-11-04 | Billock Joseph Greg | Time series monitoring system |
US20060005054A1 (en) * | 2004-06-30 | 2006-01-05 | Fernald Kenneth W | Micro controller unit (MCU) with RTC |
US20070198698A1 (en) * | 2006-02-23 | 2007-08-23 | Boyd John D | System and method for scheduling content updates in a content-based application |
US20080080648A1 (en) * | 2006-10-02 | 2008-04-03 | Silicon Laboratories Inc. | Microcontroller unit (mcu) with suspend mode |
US20090013199A1 (en) * | 2004-07-27 | 2009-01-08 | Silicon Laboratories Inc. | Digital power supply controller with integrated microcontroller |
US20100229011A1 (en) * | 2009-03-09 | 2010-09-09 | Atmel Corporation | Power Reduction in Microcontrollers |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6314524B1 (en) * | 1999-03-18 | 2001-11-06 | Intervoice Limited Partnership | Repetitive interval timing |
US7882383B2 (en) * | 2006-11-01 | 2011-02-01 | Freescale Semiconductor, Inc. | System on a chip with RTC power supply |
DE102010003538A1 (de) * | 2010-03-31 | 2011-10-06 | Robert Bosch Gmbh | Verfahren zur Überprüfung von Signal- und Modulaktivitäten in einem Timermodul und Timermodul |
-
2011
- 2011-09-28 US US13/247,489 patent/US8984323B2/en active Active
-
2012
- 2012-08-23 TW TW101130564A patent/TWI556162B/zh active
- 2012-09-12 KR KR1020147011227A patent/KR20140069283A/ko active IP Right Grant
- 2012-09-12 CN CN201280047761.1A patent/CN103842930B/zh active Active
- 2012-09-12 EP EP12762731.3A patent/EP2761387B1/en active Active
- 2012-09-12 WO PCT/US2012/054733 patent/WO2013048726A1/en active Application Filing
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6232808B1 (en) * | 1999-03-18 | 2001-05-15 | Intervoice Limited Partnership | Irregular interval timing |
US20040220921A1 (en) * | 2003-03-04 | 2004-11-04 | Billock Joseph Greg | Time series monitoring system |
US20060005054A1 (en) * | 2004-06-30 | 2006-01-05 | Fernald Kenneth W | Micro controller unit (MCU) with RTC |
US20090013199A1 (en) * | 2004-07-27 | 2009-01-08 | Silicon Laboratories Inc. | Digital power supply controller with integrated microcontroller |
US20070198698A1 (en) * | 2006-02-23 | 2007-08-23 | Boyd John D | System and method for scheduling content updates in a content-based application |
US20080080648A1 (en) * | 2006-10-02 | 2008-04-03 | Silicon Laboratories Inc. | Microcontroller unit (mcu) with suspend mode |
US20100229011A1 (en) * | 2009-03-09 | 2010-09-09 | Atmel Corporation | Power Reduction in Microcontrollers |
Also Published As
Publication number | Publication date |
---|---|
US8984323B2 (en) | 2015-03-17 |
TW201319935A (zh) | 2013-05-16 |
CN103842930B (zh) | 2017-05-24 |
CN103842930A (zh) | 2014-06-04 |
KR20140069283A (ko) | 2014-06-09 |
EP2761387A1 (en) | 2014-08-06 |
WO2013048726A1 (en) | 2013-04-04 |
US20130080819A1 (en) | 2013-03-28 |
EP2761387B1 (en) | 2019-09-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI556162B (zh) | 具有排程單元之微控制器 | |
US11822364B2 (en) | Very low power microcontroller system | |
US6971036B2 (en) | Methods and apparatus for low power delay control | |
US9887701B1 (en) | Frequency offset correction precision of real-time clocks | |
US11112849B2 (en) | Method and apparatus for selectable high performance or low power processor system | |
CN107769774B (zh) | 具有提高的精度的振荡器装置及相关方法 | |
US20190012283A1 (en) | Dma controller with trigger sequence generator | |
TWI556160B (zh) | 時基週邊裝置 | |
JP5279762B2 (ja) | パワー・オフ状態での消費電力の低減が可能な電子機器および消費電力の低減方法 | |
US10020815B2 (en) | Apparatus for data converter with internal trigger circuitry and associated methods | |
EP0694851B1 (en) | Low power consumption micro-controller | |
JP2012226677A (ja) | コンピュータがウエイク・アップする方法およびコンピュータ | |
JP4729250B2 (ja) | 電子時計 | |
Morales | An Introduction to the Tiva™ C Series Platform of Microcontrollers | |
US10353345B2 (en) | Electronic circuit for controlling the operation of a watch | |
Venugopalan | Improving Energy-efficiency in Sensor Networks by Raising Communication Throughput using STI | |
USART | STM32L051x6 STM32L051x8 | |
packages are ECOPACK | STM32L072x8 STM32L072xB STM32L072xZ | |
Ultra-low-power et al. | Value line ultra-low-power 32-bit MCU Arm®-based Cortex®-M0+, 16-Kbyte Flash memory, 2-Kbyte SRAM, 128-byte EEPROM, ADC | |
Flash | SAM3S8/SD8 Series | |
One | ATxmega256C3, ATxmega192C3, ATxmega128C3, ATxmega64C3, ATxmega32C3 | |
POWER | 2.1. 2.4 POWER DOWN state (PDWN) |