TWI462103B - 記憶體控制器、記憶體控制方法及記憶體系統 - Google Patents
記憶體控制器、記憶體控制方法及記憶體系統 Download PDFInfo
- Publication number
- TWI462103B TWI462103B TW100101994A TW100101994A TWI462103B TW I462103 B TWI462103 B TW I462103B TW 100101994 A TW100101994 A TW 100101994A TW 100101994 A TW100101994 A TW 100101994A TW I462103 B TWI462103 B TW I462103B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- volatile memory
- message
- predetermined identification
- addressing mode
- 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/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1694—Configuration of memory controller to different memory types
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
Description
本發明係與記憶體相關,並且尤其與記憶體之控制裝置及控制方法相關。
許多電子產品利用唯讀記憶體儲存運作所需之設定值或是參考資料。電子可抹除可規劃唯讀記憶體(electrically-erasable programmable read-only memory,EEPROM)具有耐久性佳、成本低、寫入程序單純等優點,因此被廣泛應用在多種電子產品中。
記憶體容量不同,其外部控制電路(例如時序控制晶片)與記憶體溝通時所採用的定址模式也會不同。記憶體容量愈高,用以表示其中各個儲存位置之位址的位元數量也愈高。以現行之序列式EEPROM為例,容量為4K/8K/16K位元的EEPROM係採用單位元組定址模式(one byte addressing)與外部控制電路溝通;容量為32K/64K/128K/256K/512K位元的EEPROM則是採用雙位元組定址模式(two bytes addressing)與外部控制電路溝通。
圖一(A)為外部控制電路以單位元組定址模式將資料寫入具有內部整合電路(inter-integrated circuit,I2
C)介面之EEPROM之時序圖;圖中所示之時序係對應於I2
C介面中資料線所傳遞的資訊。如圖一(A)所示,在送出EEPROM之裝置位址並得到EEPROM回傳的確認(acknowledgement,ACK)信號後,外部控制電路會繼續傳送長度為一個位元組的字元位址(word address)給EEPROM,用以表示將寫入資料之儲存單元的位址。再次收到EEPROM回傳的確認信號後,外部控制電路才會送出欲寫入EEPROM的資料。
圖一(B)係繪示對應於採用雙位元組定址模式的狀況。如圖一(B)所示,在「裝置位址」和「寫入資料」之間,外部控制電路係以長度為兩個位元組的字元位址表示將寫入資料之儲存單元的位址。
請參閱圖二,圖二為序列式EEPROM的外觀例,採用I2
C介面,因此包含資料腳位5和時脈腳位6。編號為4、7、8的腳位分別為接地腳位GND、寫入保護腳位WP和電源腳位VCC。編號為1、2、3的三個腳位A0~A2係用以區別多個連接至同一傳輸埠之EEPROM的定址腳位。現行容量為1K/2K/4K/8K/16K/32K/64K/128K/256K/512K位元的序列式EEPROM大多具有如圖二所示之腳位圖。
在控制電路只連接單一EEPROM的情況下,EEPROM的腳位A0~A2會被保留為浮接狀態。若同一控制電路連接至複數個EEPROM,各個EEPROM的A0~A2腳位之連接方式都會不同。圖三係一記憶體控制電路12同時連接至四個容量為1K位元EEPROM(10A~10D)的例子。如圖三所示,這四個EEPROM(10A~10D)的A1、A0腳位被分接固接至00、01、10、11,其中0表示低準位電壓,1表示高準位電壓。仍處於浮接狀態的A2腳位會被視為連接至低準位電壓。
圖四(A)為外部控制電路與1K/2K位元之EEPROM溝通時的「裝置位址」格式;藉由在A0~A2欄位填入不同內容,圖三中的記憶體控制電路12得以呼叫EEPROM 10A~10D中的某一個特定EEPROM。舉例而言,若在記憶體控制電路12送出的「裝置位址」中,A0~A2欄位被填入010,只有EEPROM 10C會回傳確認信號。
雖然4K/8K/16K位元的EEPROM係採用單位元組定址模式,但長度為一個位元組的字元位址其實並不足以標示記憶體中所有的儲存空間。因此,實際電路實施上,外部控制電路與4K/8K/16K位元之EEPROM溝通時,會借用「裝置位址」的部分欄位來表示一部份的記憶體內部位址。易言之,對4K/8K/16K位元的EEPROM來說,「裝置位址」資訊中實際上可以帶有部份字元位址訊息。
圖四(B)~圖四(D)分別為外部控制電路與4K/8K/16K位元之EEPROM溝通時的「裝置位址」格式。如圖四(B)所示,對4K位元的EEPROM來說,原本的A0欄位被P0取代。4K位元的EEPROM具有兩個記憶體頁面(memory page),P0為字元位址訊息的一部分,用以區別這兩個記憶體頁面。當P0欄位被填入1,表示外部控制電路在呼叫EEPROM中的第二個記憶體頁面。
如圖四(C)所示,對8K位元的EEPROM來說,原本的A1、A0欄位被P1、P0取代。P1、P0為字元位址訊息的一部分,用以區別8K位元之EEPROM中的四個記憶體頁面。如圖四(D)所示,對16K位元的EEPROM來說,原本的A2、A1、A0欄位被P2、P1、P0取代。P2、P1、P0為字元位址訊息的一部分,用以區別16K位元之EEPROM中的八個記憶體頁面。由於A0~A2欄位已完全被取代,16K位元的EEPROM不可以如圖三所示與其他相同容量的EEPROM共用控制電路。
另一方面,對採用雙位元組定址模式的EEPROM來說,由於已有兩個位元組的空間得表示字元位址,外部控制電路與該等較大容量之EEPROM溝通時不需要借用「裝置位址」來填寫字元位址訊息。因此,圖四(A)亦為外部控制電路與32K/64K/128K/256K/512K位元之EEPROM溝通時的「裝置位址」格式,亦即雙位元組定址模式中的「裝置位址」格式。
顯然,硬體設計者必須針對各種不同容量的記憶體選擇具有相對應定址功能的外部控制電路,方能令外部控制電路正確地與記憶體溝通。習知技術中,如果要針對不同定址模式的記憶體採用不同的外部控制電路,對控制電路製造者來說,就必須生產、儲備至少兩種不同的控制晶片,提高了生產線和庫存管理的複雜度。
需要一種能解決生產線和庫存管理的複雜度的控制晶片解決方案。
為解決上述問題,本發明提供之記憶體控制器和記憶體控制方法被設計為支援至少兩種不同的定址模式,並係根據實際與記憶體溝通的結果判定應採用何種定址模式。採用本發明提出的方案,控制電路製造者僅需生產、儲備一種控制晶片,並且不需要如先前技術預先固接晶片的某個腳位。藉此,生產過程和管理庫存的複雜度都可被有效降低。
本發明揭露一種記憶體控制器,包含一傳送單元及一控制單元。傳送單元將一預定識別訊息傳送至與記憶體控制器配合之非揮發性記憶體。根據非揮發性記憶體是否回傳對應於該預定識別訊息之一確認訊息,控制單元決定與非揮發性記憶體溝通之定址模式。
本發明亦揭露一種記憶體控制方法。該方法首先執行將一預定識別訊息傳送至非揮發性記憶體的步驟,接著再執行根據非揮發性記憶體是否回傳對應於該預定識別訊息之一確認訊息,以決定與非揮發性記憶體溝通之一定址模式的步驟。
本發明的概念可廣泛應用於各種因容量相異而定址方式可能不同的記憶體。關於本發明之優點與精神可以藉由以下的發明詳述及所附圖式得到瞭解。
圖五顯示根據本發明之具體實施例中的記憶體控制器20之電路方塊圖。於此實施例中,非揮發性記憶體30為EEPROM,記憶體控制器20與記憶體30彼此係透過I2
C介面26溝通。實際電路應用中,記憶體控制器20和記憶體30可被設置於多種需要記憶體的電子產品中。
記憶體控制器20能進行至少兩種不同的定址模式。在記憶體30被啟動前,記憶體控制器20不知道記憶體30的容量,因此也無法決定應該用哪一種定址模式與記憶體30溝通。如圖五所示,記憶體控制器20包含傳送單元22和控制單元24。一旦記憶體30被供以電力並啟動,傳送單元22即傳送一預定識別訊息至記憶體30。於此實施例中,預定識別訊息為一裝置位址。
若記憶體30的裝置位址與傳送單元22提供的裝置位址相符,記憶體30會回應此呼叫,回傳一確認訊息。控制單元24根據記憶體30是否回傳確認訊息來決定與記憶體30溝通的定址模式。預定識別訊息和確認訊息可透過兩電路間的資料線傳遞。
於此實施例中,考慮記憶體30之容量為4K/8K/16K/32K/64K/128K/256K/512K位元,且記憶體控制器20連接至單一個記憶體的狀況。記憶體控制器20與4K/8K/16K位元之EEPROM溝通時,會借用「裝置位址」的部分欄位來表示一部份的記憶體內部位址。適用這三種不同容量之EEPROM的「裝置位址」格式分別繪示於圖四(B)~圖四(D)。適用32K/64K/128K/256K/512K位元之EEPROM的「裝置位址」格式則如圖四(A)所示。
根據圖四(A)~圖四(D)「裝置位址」格式可歸納出以下幾個規律性。若傳送單元22送出之預定識別訊息為10100000,4K/8K/16K/32K/64K/128K/256K/512K位元的EEPROM都會回傳確認訊息。相對地,若傳送單元22送出之預定識別訊息為10100010,表示記憶體控制器20在呼叫記憶體30中的第二個記憶體頁面,只有包含兩個以上記憶體頁面的4K/8K/16K之EEPROM才會回傳確認訊息。32K/64K/128K/256K/512K位元之EEPROM收到內容為10100010的預定識別訊息時不回傳確認訊息。
另一方面,若傳送單元22送出之預定識別訊息為10100100,表示記憶體控制器20在呼叫記憶體30中的第三個記憶體頁面,只有包含三個以上記憶體頁面的8K/16K位元之EEPROM才會回傳確認訊息。如果傳送單元22送出之預定識別訊息為10101000,則表示記憶體控制器20在呼叫記憶體30中的第五個記憶體頁面,只有包含五個以上記憶體頁面的16K位元之EEPROM會回傳確認訊息。
於此實施例中,在傳送單元22送出內容為10100010之預定識別訊息之後,有回傳確認訊息者即為4K/8K/16K位元的EEPROM,未回傳確認訊息者則屬於其他幾種容量的EEPROM。因此,若記憶體30回傳確認訊息,控制單元24判定記憶體30之容量為4K/8K/16K位元,並採用單位元組定址模式與記憶體30溝通。相對地,若記憶體30未回傳確認訊息,控制單元24即判定記憶體30之容量高於16K位元,並採用雙位元組定址模式與記憶體30溝通。
根據以上實施例之揭露,本發明無須透過預先固接選擇定址模式的腳位來為控制電路選擇定址模式,記憶體控制器20的製造者不需要管理、儲備數種不同的控制晶片。換句話說,由於多種不同容量的記憶體都可以共用單一種控制電路,控制電路製造者因此得以大幅降低生產線和庫存管理的複雜度。
定址模式的選擇不僅限於上述之單位元組定址模式和雙位元組定址模式,記憶體的種類亦不限定於實施例中的EEPROM。藉由找出定址模式的規律性,多種記憶體都可適用本發明所提出藉由讓記憶體控制器下達預定的識別訊息並偵測記憶體是否回傳確認訊息來判定定址模式的構想。
圖六顯示根據本發明之具體實施例中的記憶體控制方法流程圖。於步驟S62,將一預定識別訊息傳送至一記憶體。於步驟S64,偵測該記憶體是否回傳對應於該預定識別訊息之一確認訊息。若步驟S64的判斷結果為是,步驟S66將被執行,決定與記憶體溝通之定址模式為單位元組定址模式。若步驟S64的判斷結果為否,步驟S68將被執行,決定與記憶體溝通之定址模式為雙位元組定址模式。
本發明揭露包含圖五所示之記憶體控制器20和記憶體30之記憶體系統,進行如圖六之運作,不再贅述。
綜上所述,本發明提供之記憶體控制器、記憶體控制方法和記憶體系統被設計為支援至少兩種不同的定址模式,可根據實際與記憶體溝通的結果判定應採用何種定址模式。採用本發明提出的方案,控制電路製造者僅需生產、儲備一種控制晶片,並且不需要固接晶片的某個腳位而佔用晶片珍貴的腳位。藉此,生產過程和管理庫存的複雜度都可被有效降低。本發明的概念可廣泛應用於各種因容量相異而定址方式不同的記憶體。
藉由以上較佳具體實施例之詳述,以更加清楚描述本發明之特徵與精神,而並非以上述所揭露的較佳具體實施例來對本發明之範疇加以限制。本發明得由熟習此技藝之人士任施匠思而為諸般修飾,皆不脫如附申請專利範圍所欲保護者。
本案圖式中所包含之各元件列示如下:
10A~10D...EEPROM
12...記憶體控制電路
20...記憶體控制器
22...傳送單元
24...控制單元
26...I2
C介面
30...記憶體
S62~S68...流程步驟
本案得藉由下列圖式及說明,俾得一更深入之了解:
圖一(A)和圖一(B)係繪示外部控制電路和EEPROM間資料線上所傳遞之資訊的時序示意圖。
圖二為序列式EEPROM的外觀例。
圖三顯示記憶體控制電路同時連接至多個EEPROM。
圖四(A)~圖四(D)為控制電路與各種容量之EEPROM溝通時的裝置位址格式。
圖五為根據本發明之具體實施例中的記憶體控制器之電路方塊圖。
圖六顯示根據本發明之具體實施例中的記憶體控制方法流程圖。
S62~S68...流程步驟
Claims (20)
- 一種記憶體控制器,包含:一傳送單元,用以將一預定識別訊息傳送至一非揮發性記憶體;以及一控制單元,用以根據該非揮發性記憶體是否回傳對應於該預定識別訊息之一確認訊息,決定與該非揮發性記憶體溝通之一定址模式;其中若該非揮發性記憶體回傳該確認訊息,該控制單元即判定該非揮發性記憶體為小容量記憶體,並採用一單位元組定址模式與該非揮發性記憶體溝通;若該非揮發性記憶體未回傳該確認訊息,該控制單元即判定該非揮發性記憶體為大容量記憶體,並採用一雙位元組定址模式與該非揮發性記憶體溝通。
- 如申請專利範圍第1項所述之記憶體控制器,其中在該非揮發性記憶體被啟動之後,該傳送單元傳送該預定識別訊息至該非揮發性記憶體。
- 如申請專利範圍第1項所述之記憶體控制器,其中該預定識別訊息為一裝置位址。
- 如申請專利範圍第1項所述之記憶體控制器,其中該小容量記憶體之容量為4K位元、8K位元或16K位元。
- 如申請專利範圍第1項所述之記憶體控制器,其中若該大容量記憶體之容量高於16K位元。
- 如申請專利範圍第1項所述之記憶體控制器,其中該預定識別訊息及該確認訊息係透過以一內部整合電路(inter- integrated circuit,I2 C)介面被傳遞。
- 如申請專利範圍第1項所述之記憶體控制器,其中該預定識別訊息為以二進位表示之八位元識別訊號,不同的識別訊息用以分別呼叫不同的記憶體頁面。
- 如申請專利範圍第1項所述之記憶體控制器,其中該非揮發性記憶體為一電子可抹除可規劃唯讀記憶體(electrically-erasable programmable read-only memory,EEPROM)。
- 一種記憶體控制方法,包含下列步驟:將一預定識別訊息傳送至一非揮發性記憶體;以及根據該非揮發性記憶體是否回傳對應於該預定識別訊息之一確認訊息,決定與該非揮發性記憶體溝通之一定址模式;其中若該非揮發性記憶體回傳該確認訊息,判定該非揮發性記憶體為小容量記憶體,並採用第一定址模式與該非揮發性記憶體溝通;若該非揮發性記憶體未回傳該確認訊息,判定該非揮發性記憶體為大容量記憶體,並採用第二定址模式與該非揮發性記憶體溝通。
- 如申請專利範圍第9項所述之記憶體控制方法,其中該第一定址模式為一單位元組定址模式。
- 如申請專利範圍第9項所述之記憶體控制方法,其中該第二定址模式為一雙位元組定址模式。
- 如申請專利範圍第9項所述之記憶體控制方法,其中該預定識別訊息以及該確認訊息係以一內部整合電路介面被傳遞。
- 如申請專利範圍第9項所述之記憶體控制方法,其中該預定識別訊息為一裝置位址。
- 如申請專利範圍第9項所述之記憶體控制方法,其中該預定識別訊息為以二進位表示之八位元識別訊號,不同的識別訊息用以分別呼叫不同的記憶體頁面。
- 一種記憶體系統,包含:一非揮發性記憶體;以及一記憶體控制器,用以將一預定識別訊息傳送至該非揮發性記憶體,並根據該非揮發性記憶體是否回傳對應於該預定識別訊息之一確認訊息,決定與該非揮發性記憶體溝通之一定址模式;其中若該非揮發性記憶體回傳該確認訊息,該記憶體控制器即判定該非揮發性記憶體為第一容量記憶體,並採用第一定址模式與該非揮發性記憶體溝通;若該非揮發性記憶體未回傳該確認訊息,該記憶體控制器即判定該非揮發性記憶體為第二容量記憶體,並採用第二定址模式與該非揮發性記憶體溝通。
- 如申請專利範圍第15項所述之記憶體系統,其中在該非揮發性記憶體被啟動之後,該記憶體控制器傳送該預定識別訊息至該非揮發性記憶體。
- 如申請專利範圍第15項所述之記憶體系統,其中該預定識別訊息為一裝置位址。
- 如申請專利範圍第15項所述之記憶體系統,其中該第二容量大於該第一容量,該第一定址模式為一單位元組定址模式,且該第二定址模式為一雙位元組定址模式。
- 如申請專利範圍第15項所述之記憶體系統,進一步包含:一內部整合電路介面,該預定識別訊息以及該確認訊息係透過該內部整合電路介面被傳遞。
- 如申請專利範圍第15項所述之記憶體系統,其中該預定識別訊息為以二進位表示之八位元識別訊號,不同的識別訊息用以分別呼叫不同的記憶體頁面。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100101994A TWI462103B (zh) | 2011-01-19 | 2011-01-19 | 記憶體控制器、記憶體控制方法及記憶體系統 |
US13/241,798 US20120185640A1 (en) | 2011-01-19 | 2011-09-23 | Controller and method for controlling memory and memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100101994A TWI462103B (zh) | 2011-01-19 | 2011-01-19 | 記憶體控制器、記憶體控制方法及記憶體系統 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201232549A TW201232549A (en) | 2012-08-01 |
TWI462103B true TWI462103B (zh) | 2014-11-21 |
Family
ID=46491634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100101994A TWI462103B (zh) | 2011-01-19 | 2011-01-19 | 記憶體控制器、記憶體控制方法及記憶體系統 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20120185640A1 (zh) |
TW (1) | TWI462103B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9886194B2 (en) * | 2015-07-13 | 2018-02-06 | Samsung Electronics Co., Ltd. | NVDIMM adaptive access mode and smart partition mechanism |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5524245A (en) * | 1992-06-19 | 1996-06-04 | Silicon Graphics, Inc. | System for booting computer for operation in either one of two byte-order modes |
US7058732B1 (en) * | 2001-02-06 | 2006-06-06 | Cypress Semiconductor Corporation | Method and apparatus for automatic detection of a serial peripheral interface (SPI) device memory size |
US20070067684A1 (en) * | 2004-07-09 | 2007-03-22 | Simon Stolero | Non-volatile memory system with self test capability |
US20070180186A1 (en) * | 2006-01-27 | 2007-08-02 | Cornwell Michael J | Non-volatile memory management |
US8151042B2 (en) * | 2005-11-28 | 2012-04-03 | International Business Machines Corporation | Method and system for providing identification tags in a memory system having indeterminate data response times |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7542867B2 (en) * | 2001-08-14 | 2009-06-02 | National Instruments Corporation | Measurement system with modular measurement modules that convey interface information |
-
2011
- 2011-01-19 TW TW100101994A patent/TWI462103B/zh not_active IP Right Cessation
- 2011-09-23 US US13/241,798 patent/US20120185640A1/en not_active Abandoned
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5524245A (en) * | 1992-06-19 | 1996-06-04 | Silicon Graphics, Inc. | System for booting computer for operation in either one of two byte-order modes |
US7058732B1 (en) * | 2001-02-06 | 2006-06-06 | Cypress Semiconductor Corporation | Method and apparatus for automatic detection of a serial peripheral interface (SPI) device memory size |
US20070067684A1 (en) * | 2004-07-09 | 2007-03-22 | Simon Stolero | Non-volatile memory system with self test capability |
US8151042B2 (en) * | 2005-11-28 | 2012-04-03 | International Business Machines Corporation | Method and system for providing identification tags in a memory system having indeterminate data response times |
US20070180186A1 (en) * | 2006-01-27 | 2007-08-02 | Cornwell Michael J | Non-volatile memory management |
Also Published As
Publication number | Publication date |
---|---|
US20120185640A1 (en) | 2012-07-19 |
TW201232549A (en) | 2012-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI537969B (zh) | 用於包括或介接非順應記憶體技術之記憶體模組的響應控制技術 | |
US8582356B2 (en) | Providing a ready-busy signal from a non-volatile memory device to a memory controller | |
US11347444B2 (en) | Memory device for controlling operations according to different access units of memory | |
TWI421696B (zh) | Semiconductor device | |
US20200293199A1 (en) | Memory device | |
US20030188091A1 (en) | Exchanging operation parameters between a data storage device and a controller | |
US11082043B2 (en) | Memory device | |
JP6987267B2 (ja) | メモリアドレス指定方法と関連するコントローラ、メモリデバイス、及びホスト | |
US20170270050A1 (en) | Memory system including memory device and operation method thereof | |
US11755255B2 (en) | Memory device comprising a plurality of memories sharing a resistance for impedance matching | |
WO2007075336A2 (en) | Memory using a single-node data, address and control bus | |
TWI462103B (zh) | 記憶體控制器、記憶體控制方法及記憶體系統 | |
TW202020670A (zh) | 資料儲存裝置與資料存取方法 | |
US11875064B2 (en) | Solid state drive supporting both byte addressable protocol and block addressable protocol | |
US10445259B2 (en) | Bit reordering for memory devices | |
CN113571106B (zh) | 带电可擦可编程只读存储器的数据读取方法及装置 | |
CN111209221A (zh) | 存储系统 | |
KR20130072891A (ko) | 반도체 메모리 장치 및 이의 테스트 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |