TWI789184B - 微控制器及其記憶體控制方法 - Google Patents
微控制器及其記憶體控制方法 Download PDFInfo
- Publication number
- TWI789184B TWI789184B TW110149048A TW110149048A TWI789184B TW I789184 B TWI789184 B TW I789184B TW 110149048 A TW110149048 A TW 110149048A TW 110149048 A TW110149048 A TW 110149048A TW I789184 B TWI789184 B TW I789184B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- controller
- count
- counting
- controllers
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 15
- 230000007423 decrease Effects 0.000 claims description 5
- 101000685663 Homo sapiens Sodium/nucleoside cotransporter 1 Proteins 0.000 description 46
- 102100023116 Sodium/nucleoside cotransporter 1 Human genes 0.000 description 46
- 101150080085 SEG1 gene Proteins 0.000 description 21
- 101100421134 Schizosaccharomyces pombe (strain 972 / ATCC 24843) sle1 gene Proteins 0.000 description 21
- 238000010586 diagram Methods 0.000 description 18
- 101100202858 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) SEG2 gene Proteins 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000004044 response Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0625—Power saving in storage systems
-
- 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
- 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/325—Power saving in peripheral device
- G06F1/3275—Power saving in memory, e.g. RAM, cache
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
-
- 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)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Microcomputers (AREA)
- Electrotherapy Devices (AREA)
- Electrophonic Musical Instruments (AREA)
- Power Sources (AREA)
Abstract
本發明提供一種微控制器以及用於微控制器記憶體控制方法。微控制器包括記憶體陣列、多個記憶體控制器以及多個計數控制器。記憶體陣列包括多個記憶體區塊。所述多個計數控制器分別基於記憶體時脈進行計數以產生計數值。當計數值到達預設值時,對應於計數值的計數控制器控制對應記憶體控制器進入省電模式。當接收到操作命令時,計數控制器重置計數值並控制對應記憶體控制器進入操作模式。
Description
本發明是有關於一種微控制器以及用於微控制器的記憶體控制方法,且特別是有關於一種在運行時具有低功率消耗的微控制器以及用於微控制器的記憶體控制方法。
微控制器會被搭載在電子裝置上以作為電子裝置的資料處理核心。為了降低電子裝置的耗電狀況,微控制器本身的功率消耗也須要被降低。一般來說,微控制器提供內建記憶體元件(如,包括靜態隨機存取記憶體(SRAM)的元件)可以進行快速的資料存取。當電子裝置處於關機狀態或休眠狀態下,微控制器會關閉記憶體元件的運行,從而達到省電效果。然而,上述的省電效果僅能在電子裝置處於關機狀態或休眠狀態下才能實現。
本發明提供一種能夠在運行時具有低功率消耗的微控制器的微控制器以及用於微控制器的記憶體控制方法。
本發明的微控制器包括記憶體陣列、多個記憶體控制器以及多個計數控制器。記憶體陣列包括多個記憶體區塊。所述多個記憶體控制器與所述多個記憶體區塊對應耦接。所述多個記憶體控制器分別在操作模式中對所述多個記憶體區塊中的對應記憶體區塊進行操作。所述多個計數控制器與所述多個記憶體控制器對應耦接。所述多個計數控制器基於記憶體時脈進行計數以產生計數值。當計數值到達預設值時,計數控制器控制對應記憶體控制器進入省電模式以停止對所述多個記憶體區塊中的對應記憶體區塊進行操作。此外,當接收到操作命令時,計數控制器重置計數值並控制對應記憶體控制器進入操作模式。
本發明的記憶體控制方法用於對微控制器的內部記憶體進行控制。微控制器包括記憶體陣列、多個記憶體控制器以及多個計數控制器。記憶體陣列包括多個記憶體區塊。所述多個記憶體控制器與所述多個記憶體區塊對應耦接。所述多個計數控制器與所述多個記憶體控制器對應耦接。記憶體控制方法包括:利用所述多個計數控制器接收記憶體時脈,並分別基於記憶體時脈進行計數以產生計數值;當所述多個計數控制器中的對應計數控制器的計數值到達預設值時,控制所述多個記憶體控制器的對應記憶體控制器進入省電模式以停止對所述多個記憶體區塊中的對應記憶體區塊進行操作;以及當對應計數控制器接收到操作命令時,重置計數值並控制對應記憶體控制器進入操作模式,使對應記憶體控制器依據操作命令以對對應記憶體區塊進行操作。
基於上述,計數控制器基於記憶體時脈進行計數以產生計數值。當計數值到達預設值時,計數控制器控制對應記憶體控制器進入省電模式。因此,對應記憶體控制器以及對應記憶體區塊不會進行操作。如此一來,對應記憶體控制器以及對應記憶體區塊的功率消耗能夠被節約。一旦接收到操作命令,計數控制器重置計數值並控制對應記憶體控制器進入操作模式。如此一來,微控制器能夠在運行時降低不常用到的記憶體控制器以及記憶體區塊的功率消耗。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
本發明的部份實施例接下來將會配合附圖來詳細描述,以下的描述所引用的元件符號,當不同附圖出現相同的元件符號將視為相同或相似的元件。這些實施例只是本發明的一部份,並未揭示所有本發明的可實施方式。更確切的說,這些實施例只是本發明的專利申請範圍中的範例。
請參考圖1,圖1是依據本發明第一實施例所繪示的微控制器的示意圖。在本實施例中,微控制器100包括記憶體陣列110、記憶體控制器120_1~120_n以及計數控制器130_1~130_n。記憶體陣列110包括記憶體區塊SEG1~SEGn。記憶體區塊SEG1~SEGn例如包括多個靜態隨機存取記憶胞(SRAM cells),本發明並不以此為限。記憶體控制器120_1~120_n與記憶體區塊SEG1~SEGn對應耦接。記憶體控制器120_1~120_n在操作模式中分別對記憶體區塊SEG1~SEGn中的對應記憶體區塊進行操作。以本實施例為例,記憶體控制器120_1耦接於記憶體區塊SEG1。記憶體控制器120_1在操作模式中對記憶體區塊SEG1進行操作。記憶體控制器120_2耦接於記憶體區塊SEG2。記憶體控制器120_2在操作模式中對記憶體區塊SEG2進行操作。同理可推,記憶體控制器120_n耦接於記憶體區塊SEGn。記憶體控制器120_n在操作模式中對記憶體區塊SEGn進行操作。
在一些實施例中,記憶體控制器120_1耦接於記憶體區塊SEG1、SEG2。記憶體控制器120_n在操作模式中對記憶體區塊SEG1、SEG2進行操作。本發明並不以此圖1的記憶體控制器120_1~120_n以及記憶體區塊SEG1~SEGn的對應耦接方式為限。
在本實施例中,計數控制器130_1~130_n與記憶體控制器120_1~120_n對應耦接。以本實施例為例,計數控制器130_1耦接於記憶體控制器120_1。計數控制器130_2耦接於記憶體控制器120_2,依此類推。計數控制器130_1~130_n基於記憶體時脈CLK進行計數以產生計數值CNT1~CNTn。計數控制器130_1~130_n分別依據計數值CNT1~CNTn以及操作命令CMD來決定對應記憶體控制器的模式。
以計數控制器130_1為例,當計數值CNT1還沒有到達預設值時,計數控制器130_1會持續基於記憶體時脈CLK進行計數。當計數值CNT1到達預設值時,計數控制器130_1會控制記憶體控制器120_1進入省電模式。因此,記憶體控制器120_1停止對記憶體區塊SEG1進行操作。當計數控制器130_1接收到操作命令CMD時,計數控制器130_1會重置計數值CNT1,並控制記憶體控制器120_1進入操作模式。因此,記憶體控制器120_1依據操作命令CMD以對記憶體區塊SEG1進行操作。
記憶體陣列110、記憶體控制器120_1~120_n以及計數控制器130_1~130_n可以被視為微控制器100的內部記憶體電路。記憶體時脈CLK可以是微控制器100內部所提供的時脈。
當計數值CNT1到達預設值之前接收到操作命令CMD時,計數控制器130_1也會重置計數值CNT1。因此,記憶體控制器120_1處於操作模式的時間會被延長。
在本實施例中,計數控制器130_1~130_n對記憶體時脈CLK的次數進行計數。因此,計數值CNT1~CNTn會關聯於記憶體控制器120_1~120_n沒有接收操作命令CMD的時間長度。承上例,當計數值CNT1到達預設值時,記憶體區塊SEG1會被視為較不常用的記憶體區塊。記憶體控制器120_1被控制以進入省電模式。因此,記憶體控制器120_1以及記憶體區塊SEG1的功率消耗能夠被節約。此外,其他的記憶體控制器可能處於操作模式。如此一來,在運行時,微控制器100能夠降低不常用到的記憶體控制器以及記憶體區塊的功率消耗。在本實施例中,一旦接收到操作命令CMD,計數控制器130_1將計數值CNT1重置為初始計數值,並且控制記憶體控制器120_1進入操作模式。
在本實施例中,記憶體控制器120_1~120_n在省電模式中會停止運行。因此,記憶體區塊SEG1~SEGn在省電模式中不會被進行寫入操作、讀取操作以及刷新操作的至少其中之一。記憶體區塊SEG1~SEGn在省電模式中僅消耗用以保存資料以防止資料流失的最小電力,然本發明並不以此為限。在一些實施例中,記憶體區塊SEG1~SEGn會被停用。因此,記憶體區塊SEG1~SEGn在省電模式中不會保存資料。
在本實施例中,微控制器100還包括處理器140以及匯流排BS。處理器140可透過匯流排BS將操作命令CMD提供至記憶體控制器120_1以及計數控制器130_1,從而使記憶體控制器120_1對記憶體區塊SEG1進行操作。匯流排BS可例如是AHB匯流排(本發明並不以此為限)。處理器140可例如是中央處理器(Central Processing Unit,CPU)。
請同時參考圖1以及圖2,圖2是依據本發明一實施例的記憶體控制方法的流程圖。在本實施例中,記憶體控制方法適用於微控制器100的內部記憶體電路。在步驟S110中,計數控制器130_1~130_n對記憶體時脈CLK的次數進行計數以產生計數值CNT1~CNTn。在步驟S120中,計數控制器130_1~130_n判斷計數值CNT1~Cn是否到達預設值。以計數控制器130_1為例,當計數值CNT1還沒有到達預設值時,計數控制器130_1會回到步驟S110以繼續計數。當計數值CNT1到達預設值時,計數控制器130_1會在步驟S130中控制記憶體控制器120_1從操作模式進入省電模式,從而使記憶體控制器120_1停止對記憶體區塊SEG1進行操作。
當計數控制器130_1在步驟S110與步驟S120之間接收到操作命令CMD時,計數控制器130_1會重置計數值CNT1。記憶體控制器120_1維持於操作模式。
在步驟S140中,計數控制器130_1會判斷是否接收到操作命令CMD。當沒有接收到操作命令CMD時,計數控制器130_1會回到步驟S140以繼續等待操作命令CMD。也就是說,在記憶體控制器120_1處於省電模式的情況下,當沒有接收到操作命令CMD時,記憶體控制器120_1會維持於省電模式。在另一方面,在步驟S140中,當接收到操作命令CMD時,計數控制器130_1會在步驟S150中重置計數值CNT1。在步驟S150中計數控制器130_1還會控制記憶體控制器120_1進入操作模式,使記憶體控制器120_1依據操作命令CMD以對記憶體區塊SEG1進行操作。
記憶體控制方法的實施細節可以在圖1的實施例中獲得足夠的教示,故不在此重述。
請同時參考圖1以及圖3,圖3是依據本發明一實施例所繪示的第一時序圖。第一時序圖TD1示例出計數控制器130_1控制記憶體控制器120_1從操作模式進入省電模式的多個訊號的時序。在本實施例中,計數控制器130_1會在時間點t1開始對記憶體時脈CLK的次數進行計數以產生計數值CNT1。在本實施例中,計數控制器130_1可以是反應於記憶體時脈CLK的上升緣(raising edge)進行計數。計數控制器130_1會對計數值CNT1以及預設值進行比較。當計數控制器130_1判斷出計數值CNT1到達預設值時,計數控制器130_1會提供具有第一電壓準位的控制訊號SC(即,第一控制訊號)。記憶體控制器120_1會反應於具有第一電壓準位的控制訊號SC而進入省電模式。
以本實施例為例,計數控制器130_1以遞增方式對記憶體時脈CLK的次數進行計數。預設值被設定為“100”。當判斷出計數值CNT1在時間點t2被判斷出大於或等於“100”時,計數控制器130_1會在時間點t2提供具有高電壓準位的控制訊號SC。因此,記憶體控制器120_1會反應於具有高電壓準位的控制訊號SC而進入省電模式。
在一些實施例中,在時間點t2之後,計數控制器130_1不會對記憶體時脈CLK進行計數。也就是說,一旦計數值CNT1到達預設值,計數值CNT1則不會改變,直到計數控制器130_1接收到操作命令CMD為止。在一些實施例中,在時間點t2之後,計數控制器130_1會持續對記憶體時脈CLK進行計數。
請同時參考圖1以及圖4,圖4是依據本發明一實施例所繪示的第二時序圖。第二時序圖TD2示例出計數值CNT1被重置的時序。在本實施例中,當計數控制器130_1判斷出計數值CNT1到達預設值之前接收到操作命令CMD,計數控制器130_1會重置計數值CNT1並基於記憶體時脈CLK的次數進行計數。
以本實施例為例,計數控制器130_1以遞增方式對記憶體時脈CLK的次數進行計數。預設值被設定為“100”。計數控制器130_1會在時間點t3開始對記憶體時脈CLK的次數進行計數以產生計數值CNT1。在時間點t4、t5之間,計數控制器130_1接收到操作命令CMD。因此,計數控制器130_1會在時間點t5將計數值CNT1重置為初始計數值(例如“0”),並基於記憶體時脈CLK的次數進行計數。
在一些實施例中,計數控制器130_1會對訊號進行識別。當識別出訊號是操作命令CMD時,計數控制器130_1會重置計數值CNT1,並基於記憶體時脈CLK的次數進行計數。
請同時參考圖1以及圖5,圖5是依據本發明一實施例所繪示的第三時序圖。第三時序圖TD3示例出計數控制器130_1控制記憶體控制器120_1從省電模式進入操作模式的多個訊號的時序。在本實施例中,在時間點t6之前,控制訊號SC具有第一電壓準位。第一電壓準位例如是高電壓準位。因此,記憶體控制器120_1處於省電模式。在時間點t6、t7之間,計數控制器130_1接收到操作命令CMD。因此,在時間點t7,計數控制器130_1提供具有第二電壓準位的控制訊號SC(即,第二控制訊號)。第二電壓準位例如是低電壓準位。因此,記憶體控制器120_1反應於具有第二電壓準位的控制訊號SC以從省電模式被喚醒,從而進入操作模式。
此外,在時間點t7,計數控制器130_1將計數值CNT1重置為初始計數值(例如“0”),並基於記憶體時脈CLK的次數進行計數。
在上述的第一時序圖TD1、第二時序圖TD2、第三時序圖TD3都是以遞增方式對記憶體時脈CLK的次數進行計數。也就是說,在計數過程中,計數值CNT1被逐漸增加。一旦計數值CNT1被增加至預設值,計數控制器130_1控制記憶體控制器120_1進入省電模式。在一些實施例中,計數控制器130_1可以是以遞減方式對記憶體時脈CLK的次數進行計數。也就是說,在計數過程中,計數值CNT1被逐漸降低。一旦計數值CNT1被降低至預設值,計數控制器130_1控制記憶體控制器120_1進入省電模式。以圖1的實施例為例,計數控制器130_1~130_n以遞增方式對記憶體時脈CLK的次數進行計數以產生計數值CNT1~CNTn。在一些實施例中,計數控制器130_1~130_n以遞減方式對記憶體時脈CLK的次數進行計數以產生計數值CNT1~CNTn。在一些實施例中,計數控制器130_1~130_n的部分計數控制器以遞增方式對記憶體時脈CLK的次數進行計數以產生計數值。計數控制器130_1~130_n的另一部分計數控制器以遞減方式對記憶體時脈CLK的次數進行計數以產生計數值。
進一步說明記憶體控制器以及計數控制器的實施細節。請參考圖6,圖6是依據本發明第二實施例所繪示的微控制器的部分示意圖。在本實施例中,為了便於說明,本實施例僅示出匯流排BS、記憶體控制器220_1以及計數控制器230_1等元件。在本實施例中,計數控制器230_1包括計數器231、暫存器232以及判斷電路233。計數器231接收記憶體時脈CLK,並對記憶體時脈CLK的次數進行計數以產生計數值CNT1。暫存器232儲存預設值DV。判斷電路233耦接於計數器231以及暫存器232。判斷電路233依據計數值CNT1以及操作命令CMD來控制記憶體控制器220_1的模式。
進一步來說,當計數值CNT1被判斷出到達預設值DV時,判斷電路233提供第一控制訊號SC1。因此,記憶體控制器220_1反應於第一控制訊號SC1以進入省電模式。在省電模式中,記憶體控制器220_1不會對對應的記憶體區塊進行操作。
當接收到操作命令CMD時,判斷電路233提供第二控制訊號SC2。因此,記憶體控制器220_1反應於第二控制訊號SC2以進入操作模式。在操作模式中,記憶體控制器220_1會接收操作命令CMD。如果操作命令CMD是寫入命令,記憶體控制器220_1會依據位址ADD以將資料DTA寫入至對應的記憶體區塊的指定位址中。如果操作命令CMD是讀取命令,記憶體控制器220_1會依據位址ADD以讀出對應的記憶體區塊的指定位址的資料DTA。
在本實施例中,記憶體控制器220_1包括模式控制電路221。模式控制電路221反應於第一控制訊號SC1以控制記憶體控制器220_1進入省電模式。此外,模式控制電路221還反應於第二控制訊號SC2以控制記憶體控制器220_1進入操作模式。
在本實施例中,計數控制器230_1會依據計數值CNT1被重置的頻率來調整初始計數值。舉例來說,計數器231以遞增方式對記憶體時脈CLK的次數進行計數。當計數值CNT1被重置的頻率增加時,表示與計數控制器230_1相對應的記憶體區塊是較為常用的記憶體區塊。計數控制器230_1會降低初始計數值。因此,初始計數值與預設值DV之間的差距就越大。如此一來,記憶體控制器220_1會降低省電模式與操作模式之間的切換頻繁,從而避免降低讀取效率。在另一方面,當計數值CNT1被重置的頻率降低時,表示與計數控制器230_1相對應的記憶體區塊是較不常用的記憶體區塊。計數控制器230_1會增加初始計數值。因此,初始計數值與預設值DV之間的差距就越小。如此一來,記憶體控制器220_1會提前進入省電模式,從而提高省電效果。
在本實施例中,計數控制器230_1會依據計數值CNT1被重置的頻率來調整儲存於暫存器232中的預設值DV。舉例來說,計數器231以遞增方式對記憶體時脈CLK的次數進行計數。當計數值CNT1被重置的頻率增加時,表示與計數控制器230_1相對應的記憶體區塊是較為常用的記憶體區塊。計數控制器230_1會增加預設值DV。因此,初始計數值與預設值DV之間的差距就越大。如此一來,記憶體控制器220_1會降低省電模式與操作模式之間的切換頻繁,從而避免降低讀取效率。在另一方面,當計數值CNT1被重置的頻率降低時,計數控制器230_1會降低預設值DV。因此,初始計數值與預設值DV之間的差距就越小。如此一來,記憶體控制器220_1會提前進入省電模式,從而提高省電效果。
綜上所述,計數控制器基於記憶體時脈進行計數以產生計數值。當計數值到達預設值時,計數控制器控制對應記憶體控制器進入省電模式。因此,對應記憶體控制器以及對應記憶體區塊不會進行操作。如此一來,對應記憶體控制器以及對應記憶體區塊的功率消耗能夠被節約。一旦接收到操作命令,計數控制器重置計數值並控制對應記憶體控制器進入操作模式。如此一來,微控制器能夠在運行時降低不常用到的記憶體控制器以及記憶體區塊的功率消耗。此外,預設值可以依據計數值被重置的頻率被調整。因此,對應於較常用的記憶體區塊的記憶體控制器會降低省電模式與操作模式之間的切換頻繁,從而避免降低讀取效率。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
100:微控制器
110:記憶體陣列
120_1~120_n、220_1:記憶體控制器
130_1~130_n、230_1:計數控制器
140:處理器
221:模式控制電路
231:計數器
232:暫存器
233:判斷電路
ADD:位址
BS:匯流排
CLK:記憶體時脈
CMD:操作命令
CNT1~CNTn:計數值
DTA:資料
DV:預設值
SEG1~SEGn:記憶體區塊
S110~S150:步驟
SC:控制訊號
SC1:第一控制訊號
SC2:第二控制訊號
t1~t7:時間點
TD1:第一時序圖
TD2:第二時序圖
TD3:第三時序圖
圖1是依據本發明第一實施例所繪示的微控制器的示意圖。
圖2是依據本發明一實施例的記憶體控制方法的流程圖。
圖3是依據本發明一實施例所繪示的第一時序圖。
圖4是依據本發明一實施例所繪示的第二時序圖。
圖5是依據本發明一實施例所繪示的第三時序圖。
圖6是依據本發明第二實施例所繪示的微控制器的部分示意圖。
100:微控制器
110:記憶體陣列
120_1~120_n:記憶體控制器
130_1~130_n:計數控制器
140:處理器
BS:匯流排
CLK:記憶體時脈
CMD:操作命令
CNT1~CNTn:計數值
SEG1~SEGn:記憶體區塊
Claims (10)
- 一種微控制器,包括:記憶體陣列,包括多個記憶體區塊;多個記憶體控制器,與所述多個記憶體區塊對應耦接,各經配置以在操作模式中對所述多個記憶體區塊中的對應記憶體區塊進行操作;以及多個計數控制器,與所述多個記憶體控制器對應耦接,各經配置以:基於記憶體時脈進行計數以產生計數值,當所述計數值到達預設值時,控制所述多個記憶體控制器中的對應記憶體控制器進入省電模式以停止對所述對應記憶體區塊進行操作,並且當接收到所述操作命令時,重置所述計數值為初始計數值並控制所述對應記憶體控制器進入所述操作模式,其中當所述計數值被重置的頻率增加時,所述多個計數控制器中的對應計數控制器調整所述預設值以及所述初始計數值的至少其中之一,增加所述預設值以及所述初始計數值之間的差距,並且當所述計數值被重置的頻率降低時,所述對應計數控制器調整所述預設值以及所述初始計數值的至少其中之一,降低所述預設值以及所述初始計數值之間的差距。
- 如請求項1所述的微控制器,其中所述多個計數控制器中的第一計數控制器包括:計數器,經配置以接收所述記憶體時脈,並對所述記憶體時脈的次數進行計數以產生所述計數值;暫存器,經配置以儲存所述預設值;以及判斷電路,耦接於所述計數器以及所述暫存器,經配置以依據所述計數值以及操作命令來控制所述多個記憶體控制器中的第一記憶體控制器的模式。
- 如請求項2所述的微控制器,其中當接收到所述操作命令時,所述第一計數控制器重置所述計數值並且基於所述記憶體時脈的次數進行計數。
- 如請求項3所述的微控制器,其中在所述操作模式中,所述第一記憶體控制器接收所述操作命令,並反應於所述操作命令以對所述對應記憶體區塊進行寫入操作、讀取操作以及刷新操作的至少其中之一。
- 如請求項4所述的微控制器,其中:當所述計數值到達預設值時,所述判斷電路提供第一控制訊號,所述第一記憶體控制器反應於所述第一控制訊號以進入所述省電模式,並且當接收到所述操作命令時,所述判斷電路提供第二控制訊號,所述第一記憶體控制器反應於所述第二控制訊號以進入操作模式。
- 如請求項5所述的微控制器,其中所述第一記憶體控制器包括:模式控制電路,經配置以反應於所述第一控制訊號以控制所述第一記憶體控制器進入所述省電模式,並反應於所述第二控制訊號以控制所述第一記憶體控制器進入所述操作模式。
- 如請求項2所述的微控制器,其中:所述計數器以遞增方式對所述記憶體時脈的次數進行計數。
- 一種記憶體控制方法,用於對微控制器的內部記憶體進行控制,其中所述微控制器包括記憶體陣列、多個記憶體控制器以及多個計數控制器,其中所述記憶體陣列包括多個記憶體區塊,其中所述多個記憶體控制器與所述多個記憶體區塊對應耦接,其中所述多個計數控制器與所述多個記憶體控制器對應耦接,其中所述記憶體控制方法包括:利用所述多個計數控制器接收記憶體時脈,並分別基於所述記憶體時脈進行計數以產生計數值;當所述多個計數控制器中的對應計數控制器的所述計數值到達預設值時,控制所述多個記憶體控制器的對應記憶體控制器進入省電模式以停止對所述多個記憶體區塊中的對應記憶體區塊進行操作;以及當所述對應計數控制器接收到所述操作命令時,重置所述計數值為初始計數值並控制所述對應記憶體控制器進入操作模式,使所述對應記憶體控制器依據所述操作命令以對所述對應記憶體 區塊進行操作,其中當所述計數值被重置的頻率增加時,所述對應計數控制器調整所述預設值以及所述初始計數值的至少其中之一,增加所述預設值以及所述初始計數值之間的差距,並且當所述計數值被重置的頻率降低時,所述對應計數控制器調整所述預設值以及所述初始計數值的至少其中之一,降低所述預設值以及所述初始計數值之間的差距。
- 如請求項8所述的記憶體控制方法,其中當所述對應計數控制器的所述計數值到達預設值時,控制所述對應記憶體控制器進入省電模式的步驟包括:由所述對應計數控制器提供第一控制訊號;以及由所述對應記憶體控制器反應於所述第一控制訊號以進入所述省電模式。
- 如請求項8所述的記憶體控制方法,其中當所述對應計數控制器接收到所述操作命令時,重置所述計數值並控制所述對應記憶體控制器進入操作模式的步驟包括:由所述對應記憶體控制器提供第二控制訊號;以及由所述對應記憶體控制器反應於所述第二控制訊號以進入操作模式。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110149048A TWI789184B (zh) | 2021-12-28 | 2021-12-28 | 微控制器及其記憶體控制方法 |
CN202210457269.7A CN116360577A (zh) | 2021-12-28 | 2022-04-28 | 微控制器及其内存控制方法 |
US17/968,801 US20230205434A1 (en) | 2021-12-28 | 2022-10-19 | Microcontroller and memory control method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW110149048A TWI789184B (zh) | 2021-12-28 | 2021-12-28 | 微控制器及其記憶體控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI789184B true TWI789184B (zh) | 2023-01-01 |
TW202326420A TW202326420A (zh) | 2023-07-01 |
Family
ID=86670011
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW110149048A TWI789184B (zh) | 2021-12-28 | 2021-12-28 | 微控制器及其記憶體控制方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230205434A1 (zh) |
CN (1) | CN116360577A (zh) |
TW (1) | TWI789184B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200813737A (en) * | 2006-05-09 | 2008-03-16 | Freescale Semiconductor Inc | Microcontroller unit |
CN104700886A (zh) * | 2013-12-06 | 2015-06-10 | 飞思卡尔半导体公司 | 具有电源状态传感器的存储器电路 |
TW201721356A (zh) * | 2015-09-23 | 2017-06-16 | 英特爾公司 | 針對關於記憶體裝置進入低功率態的技術 |
TW201729207A (zh) * | 2015-11-25 | 2017-08-16 | 英特爾公司 | 用以基於時鐘脈衝計數來讀取記憶體晶胞之方法與設備 |
TW202105180A (zh) * | 2019-07-22 | 2021-02-01 | 瑞昱半導體股份有限公司 | 記憶體分時控制的方法及相關系統 |
TWI721003B (zh) * | 2015-09-17 | 2021-03-11 | 美商英特爾公司 | 記憶體裝置及用於記憶體管理的系統 |
-
2021
- 2021-12-28 TW TW110149048A patent/TWI789184B/zh active
-
2022
- 2022-04-28 CN CN202210457269.7A patent/CN116360577A/zh active Pending
- 2022-10-19 US US17/968,801 patent/US20230205434A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200813737A (en) * | 2006-05-09 | 2008-03-16 | Freescale Semiconductor Inc | Microcontroller unit |
CN104700886A (zh) * | 2013-12-06 | 2015-06-10 | 飞思卡尔半导体公司 | 具有电源状态传感器的存储器电路 |
TWI721003B (zh) * | 2015-09-17 | 2021-03-11 | 美商英特爾公司 | 記憶體裝置及用於記憶體管理的系統 |
TW201721356A (zh) * | 2015-09-23 | 2017-06-16 | 英特爾公司 | 針對關於記憶體裝置進入低功率態的技術 |
TW201729207A (zh) * | 2015-11-25 | 2017-08-16 | 英特爾公司 | 用以基於時鐘脈衝計數來讀取記憶體晶胞之方法與設備 |
TW202105180A (zh) * | 2019-07-22 | 2021-02-01 | 瑞昱半導體股份有限公司 | 記憶體分時控制的方法及相關系統 |
Also Published As
Publication number | Publication date |
---|---|
CN116360577A (zh) | 2023-06-30 |
TW202326420A (zh) | 2023-07-01 |
US20230205434A1 (en) | 2023-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI774787B (zh) | 記憶體控制器及其操作方法 | |
JP4922306B2 (ja) | C0時のセルフリフレッシュメカニズム | |
KR100779871B1 (ko) | 동적 랜덤 액세스 메모리용 저전력 오토-리프레쉬 회로 및방법 | |
US7941683B2 (en) | Data processing device with low-power cache access mode | |
JP2006018797A (ja) | 集積回路装置における待機電力を低減させる方法、集積回路のキャッシュ付きメモリアレイを動作させる方法、および集積回路装置 | |
US10223017B2 (en) | Memory apparatus and energy-saving control method thereof | |
US20100257398A1 (en) | Method and system to improve the operations of a registered memory module | |
KR100922412B1 (ko) | 반도체 기억 장치의 제어 방법 및 반도체 기억 장치 | |
JP2007508649A (ja) | 低電力リフレッシュ動作のためのクロック同期回路を制御するための回路および方法 | |
US10216250B2 (en) | Memory apparatus and energy-saving control method thereof | |
CN112948312B (zh) | 芯片控制方法、装置、智能终端及计算机可读存储介质 | |
US20220366970A1 (en) | Bitline precharge system for a semiconductor memory device | |
US6216233B1 (en) | Maintaining a memory while in a power management mode | |
TWI789184B (zh) | 微控制器及其記憶體控制方法 | |
US20050198542A1 (en) | Method and apparatus for a variable memory enable deassertion wait time | |
TWI690844B (zh) | 電子裝置及裝置喚醒方法 | |
KR102208637B1 (ko) | 휘발성 메모리 디바이스 및 그 셀프 리프레쉬 방법 | |
TWI637387B (zh) | 揮發性記憶體裝置及其自刷新方法 | |
JP2003091453A (ja) | メモリ制御装置 | |
JP2005141845A (ja) | 半導体装置 | |
CN109859785B (zh) | 一种时钟自适应访问mram的装置 | |
US20200379547A1 (en) | Processing system and control method thereof | |
TWI682402B (zh) | 應用於動態隨機存取記憶體的主動更新方法以及電路 | |
CN117594076A (zh) | 存储器器件 | |
JP2007316805A (ja) | 半導体集積回路 |