TW201715406A - 具有彈性資料傳輸介面的記憶體裝置與其方法 - Google Patents
具有彈性資料傳輸介面的記憶體裝置與其方法 Download PDFInfo
- Publication number
- TW201715406A TW201715406A TW104139756A TW104139756A TW201715406A TW 201715406 A TW201715406 A TW 201715406A TW 104139756 A TW104139756 A TW 104139756A TW 104139756 A TW104139756 A TW 104139756A TW 201715406 A TW201715406 A TW 201715406A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- sorting
- byte
- output
- memory device
- Prior art date
Links
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
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)
- Dram (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Systems (AREA)
Abstract
本揭露係為記憶體裝置、傳輸資料至記憶體裝置的方法,以及可執行該傳輸方法的非揮發性電腦可讀式儲存媒體。記憶體裝置包含:一輸入/輸出介面,用於接收信號與輸出信號。其中,該輸入/輸出介面係於一時脈週期內,或是在一時脈週期的上升緣或下降緣接收欲進行存取的一記憶體位址與一資料排序資訊。其中,該資料排序資訊係用於指定一輸入資料的排序或一輸出資料的排序。
Description
本發明是有關於一種電子裝置,且特別是有關於一種具有彈性資料傳輸介面的記憶體裝置與其方法之電子裝置。
許多電子裝置利用儲存裝置儲存資料。一般說來,習用記憶體裝置所採用的序列周邊介面(serial protocol interface,簡稱為SPI),需要利用一個或多個指令指定記憶體位元組位址(memory byte address)。對寬度為8位元或更多位元的匯流排而言,若採用雙倍傳輸速率(double transfer rate,簡稱為DTR)或雙倍資料率(double data rate,簡稱為DDR)介面輸入或輸出資料時,由於每一個時脈週期輸出2個位元組(或一個字元)的資料(即,在時脈的上升緣(clock rising edge)輸入或輸出第一位元組,以及在時脈的下降緣(clock falling)輸入或輸出第二位元組)的緣故,匯流排並未使用最低有效位元(least significant bit,簡稱為LSB)。
請參見第1A、1B圖,其係進行記憶體讀取操作時,資料輸出區段的時脈圖。第1A、1B圖所示的波形包含:寬度為8位元的記憶體位址與在其後輸出的資料DQ[7:0]、時脈信號WTG,以及晶片選擇信號CSB。DTR 8輸入/輸出介面進行讀取操作時,可以採用兩種排序方式在每一個時脈週期內輸出一個字元(或兩個位元組)。在第1A圖中,先輸出高位元組(或稱,奇數位元組)的資料後才輸出低位元組(或稱,偶數位元組)的資料。此種先輸出奇數位元組資料、後輸出偶數位元組資料的排序方式被稱為高位元組優先序列(high-byte-first sequence)。在第1B圖中,先輸出低位元組(或稱,偶數位元組)的資料後才輸出高位元組(或稱,奇數位元組)的資料。此種先輸出偶數位元組的資料、後輸出奇數位元組的資料的排序方式,稱為低位元組優先序列(low-byte first)。
一般說來,記憶體裝置僅採用高位元組優先序列或低位元組優先序列的其中一種,導致記憶體裝置的開發廠商必須針對不同的資料輸入排序或資料輸出排序,生產不同的記憶體裝置。
本發明係有關於一種具有彈性資料傳輸介面的記憶體裝置與其方法之電子裝置。
根據本發明之第一方面,提出一種記憶體裝置,包含:一輸入/輸出介面,用於接收信號與輸出信號,其中該輸入/輸出介面係於一時脈週期內,或是在一時脈週期的上升緣或下降緣接收欲進行存取的一記憶體位址與一資料排序資訊,其中該資料排序資訊係指定一輸入資料的排序或一輸出資料的排序。
根據本發明之第二方面,提出一種傳輸資料的方法,包含以下步驟:於一時脈週期內,或是在一時脈週期的上升緣或下降緣將欲進行存取的一記憶體位址與一資料排序資訊傳送至一記憶體裝置,其中該資料排序資訊係指定一輸入資料的排序或一輸出資料的排序。
根據本發明之第三方面,提出一種非揮發性電腦可讀式儲存媒體,用於儲存由一個或多個處理器所執行之複數個指令,進而使該一個或多個處理器:於一時脈週期內,或是在一時脈週期的上升緣或下降緣將欲進行存取的一記憶體位址與一資料排序資訊傳送至一記憶體裝置,其中該資料排序資訊係指定一輸入資料的排序或一輸出資料的排序。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下:
以下將詳細說明實施例,實施例將搭配附圖解釋。除非另有說明,在以下的敘述與不同的附圖中,利用相同的數字表示相同或相似的元件。以下闡述的實施例並不代表符合本發明的所有實施方式。相反的,已下實施例僅為符合所附申請專利範圍所述之本發明之裝置和方法的舉例。
請參見第2圖,其係電子裝置的示意圖。電子裝置200包含一個微控制器(microcontroller unit,簡稱為MCU)202、一個記憶體裝置204,以及一個或多個資料匯流排206。如第2圖所示,在一個實施例中,匯流排206共包含三個匯流排206a、206b、206c。微控制器202被設定為:將控制信號與資料傳送至記憶體裝置204,或是自記憶體裝置204接收控制信號與資料。記憶體裝置204可能被嵌入至電子裝置200內,或是被耦接至電子裝置200。例如,記憶體裝置204可能是記憶卡,用於插入記憶體裝置200的插槽或自記憶體裝置200的插槽拔出。舉例而言,電子裝置200可以是,手機、遊戲機(game station)、平板電腦、電視,或是其他類似的裝置。
記憶體裝置204包含輸入/輸出介面(I/O interface)208、中央處理單元(central processing unit,簡稱為CPU)210,以及記憶體單元212。CPU 210用於執行儲存在記憶體單元212的指令,進而控制記憶體裝置204。資料匯流排206耦接於微控制器202與輸入/輸出介面208間。在部分的實施例中,匯流排206a用於傳送晶片選擇信號(chip select signals,簡稱為CSB);匯流排206b用於傳送時脈信號(STG);且匯流排206c用於傳輸資料信號。記憶體單元212用於儲存供微控制器 202進行讀取操作(read operation)或寫入操作(write operation)時的存取資料。在實施例中,記憶體單元212可為非揮發性記憶體(nonvolatile memory)或揮發性記憶體(volatile memory)。
在本實施例中,電子裝置的輸入/輸出介面能夠同時接收部分的記憶體存取位址與資料排序資訊。以下將進一步說明,此處的「同時」係指,在同一個時脈週期內,或是在同一個時脈的邊緣。資料排序資訊用於指定由記憶體裝置輸出資料或輸入資料至記憶體裝置時的資料排序方式。電子裝置使用一個位元代表輸出資料的排序或輸入資料的排序,並使用其他的位元代表記憶體的至少一個存取位址。隨著記憶體裝置的類型而異,資料排序資訊代表從複數種排序方式中選出之合適的排序方式。在某些實施例中,以最低有效位元LSB作為指定輸出資料的排序或輸入資料的排序的位元。
請參見第3A、3B圖,其係如第2圖的記憶體裝置,利用DTR 8的輸入/輸出介面進行讀取操作的波形圖。例如,圖式裡的波形代表耦接至記憶體裝置204的匯流排,在記憶體裝置204與微控制器202之間傳送控制信號與資料的情形。第3A、3B圖的波形包含以8個位元為基本單位傳送的記憶體位址與輸出資料DQ[7:0],時脈信號WTG,以及晶片選擇信號CSB。在波形圖中,將時脈信號WTG由T1時點開始延伸至T5時點的部分定義為指令段,以及將時脈信號WTG自T6時點開始的部分定義為資料輸出段。
在第3A圖中,輸入/輸出介面208在T1時點,一個時脈信號WTG的上升緣時,接收系統指令信號(system command signal)CMD。接著在T2時點,當時脈信號WTG再度為上升緣時,輸入/輸出介面208接收第一部分的記憶體位址資料(A31-A24)。在與T2時點相同時脈週期內的T3時點,時脈信號WTG為下降緣,此時輸入/輸出介面208接收第二部分的記憶體位址資料(A23-A16)。在T4時點,當下一個時脈週期為上升緣時,輸入/輸出介面208接收第三部分的記憶體位址資料(A15-A8)。在與T4時點的同一個時脈週期內的T5時點,時脈信號WTG為下降緣,此時輸入/輸出介面208接收第四部分的記憶體位址資料(A7-A0)。然而,A7-A0中的一個或多個位元並不是要被存取的記憶體位址。在一個實施例中,第四部分的記憶體位址資料(A7-A0)包含複數個用於表示記憶體位址的位元,與一個用於代表輸出資料的排序的位元。
為提供彈性而可選擇的輸出排序,可以使用最低有效位元A0或其他的較低有效位元(less significant bits)選擇輸出資料的排序。用於表示輸出資料之排序的位元,可以是接續在表示記憶體位址之複數個位元後的一個位元(例如,較低有效位元可以是A1或A2);或是其他未被用於代表欲存取之記憶體位址的位元。如實施例所述,記憶體裝置204的CPU 210用於讀取最低有效位元A0,且最低有效位元A0並非欲進行存取之記憶體位址。例如,在一個實施例中,以A0=1代表選用高位元組優先的方式對資料進行排序。DTR 8輸入/輸出介面採用高位元組優先的方式對資料進行排序時,會在時脈週期為上升緣時輸出高位元組(或稱,奇數位元組),先於在時脈週期為下降緣時輸出的低位元組(或稱,偶數位元組)。再請參看第3A圖中,時脈圖自T6時點開始的資料輸出段,記憶體裝置204輸出的資料起點為記憶體位址資料的(A31-A1)位元所指定之位址。例如,在某些實施例中,記憶體位址資料的(A31-A1)位元用於指定位元組0與位元組1所在的位址,且記憶體位址資料的最低有效位元A0用於指定應優先輸出位元組0與位元組1中的何者。在A0=1被接收後,記憶體裝置204的CPU 210,會在T6時點(時脈週期的上升緣)輸出位元組1(高位元組);以及在T7時點(時脈週期的下降緣)輸出位元組0(低位元組)。在下一個時脈週期內,記憶體裝置204的CPU 210,在T8時點(時脈週期的上升緣)輸出位元組3(高位元組);以及,在T9時點(時脈週期的下降緣)輸出位元組2(低位元組)。在這個例子中,位元組0~3均各自為8位元,且位元組0與位元組1共同組成由記憶體位址資料A31~A1所指定之第一個16位元長度的字元。此外,位元組2與位元組3共同組成在第一個字元後序列輸出的第二個字元。
儘管第3A圖的例子為輸出四個位元組(位元組0~位元組3),相當於兩個字元的情形,但是輸出資料的數量並不以此為限。此實施例可應用至輸出資料多於或少於四個位元組的情形。例如,微控制器202可以透過對晶片選擇信號CSB與時脈信號WTG的控制,控制記憶體裝置204在第一個字元後輸出的字元數量。因此,當記憶體位址資料的(A31-A1)位元代表位元組0與位元組1的起始位址時,記憶體裝置204能在第一個字元後持續輸出任意數量的字元。例如,直到微控制器202發出一個高位準的晶片選擇信號CSB後,才停止輸出字元。例如但不限於,當A0=0時,記憶體裝置204所輸出的資料可以根據位元組0、位元組1、位元組、位元組2、位元組3、位元組4、位元組5、位元組6、位元組7、位元組8、位元組9、位元組10、位元組11 . . .的方式排序;或者,當A0=1時,記憶體裝置204可以根據位元組1、位元組0、位元組3、位元組2、位元組5、位元組4、位元組7、位元組6、位元組9、位元組8、位元組11、位元組10 . . . 的方式排序。其中位元組4與位元組5組成一個字元,位元組6與位元組7組成一個字元,其餘類推。
同理,在某些實施例中,最低有效位元A0可以使用不同的數值代表選用低位元組優先的方式對資料進行排序。例如,以A0=0代表選用低位元組優先的方式對資料進行排序。DTR 8輸入/輸出介面採用低位元組優先的方式對資料進行排序時,會在時脈週期為上升緣時輸出低位元組(或稱,偶數位元組),先於在時脈週期為下降緣時輸出的高位元組(或稱,奇數位元組)。第3B圖為記憶體裝置204進行讀取操作的波形圖。除了最低有效位元A0的數值被設為0(A0=0)外,第3B圖中的T1時點至T5時點的敘述均與第3A圖類似,故此處不重複說明。請參看第3B圖,時脈圖中的資料輸出段開始於T6時點。在資料輸出段中,記憶體裝置204自記憶體位址資料的(A31-A1)位元所指定的記憶體位址開始輸出資料。據此,當A0=0被接收後,記憶體裝置204在T6時點(時脈週期的上升緣),輸出位元組0(為一低位元組);以及在T7時點(時脈週期的下降緣),輸出位元組1(為一高位元組)。如第3A圖的例子,在第3B圖的位元組0與位元組1共同組成由記憶體位址資料的(A31-A1)位元所指定的第一個字元(first word)。在下一個時脈週期內,記憶體裝置204的CPU在T8時點(時脈週期的上升緣),輸出位元組2(為一低位元組);以及在T9時點(時脈週期的下降緣),輸出位元組3(為一高位元組)。如第3A圖的例子,在第3B圖的位元組2與位元組3共同組成在第一個字元後,以序列方式輸出的第二個字元(second word)。儘管第3B圖以四個位元組(位元組0~3)的輸出為例,但輸出資料的數量並不以此為限。前述的實施例還可應用至輸出資料多於或少於四個位元組的情形。
據此,本案實施例的電子裝置所使用的輸入/輸出介面,可以同時接收欲存取之記憶體位址與用於指出輸出資料時的資料排序資訊。此處的「同時」係指,在同一個時脈週期內(例如,第3A、3B圖中的T4時點與T5時點),或是在同一個時脈的邊緣(例如第3A、3B圖的T5時點)。在第3A、3B圖中的T4時點與T5時點,記憶體位址資料的A15-A1部分指出欲存取之記憶體位址,且記憶體位址資料中的最低有效位元A0指出輸出資料的排序。在第3A、3B圖中的T5時點,記憶體位址資料的A7-A1代表欲存取之記憶體位址,且記憶體位址資料中的最低有效位元A0代表輸出資料的排序方式。電子裝置讀取一個位元,藉以判斷輸出資料的排序方式,並根據其他的位元決定欲存取的記憶體位址。某些實施例係以最低有效位元指定輸出資料的排序方式。前述實施例雖然以A0=1代表選擇以高位元組優先的排序方式輸出資料,並以A0=0代表選擇以低位元組優先的排序方式輸出資料,但本揭露並不限於該些設定方式。例如,可以A0=1代表選擇以低位元組優先的排序方式輸出資料,且以A0=0代表以高位元組優先的排序方式輸出資料。
如第3A、3B圖所示,在某些實施例中,會在指令段(T1時點與T5時點間)與資料輸出段(T6時點與T9時點間)之間設置一個或多個虛擬週期(dummy cycles)。在虛擬週期期間,記憶體裝置204自微控制器202接收高阻抗信號(HI-Z)。
在其他的實施例中,其他的介面亦可使用彈性的方式作為資料排序,例如DTR 16的輸入/輸出介面,或是一個單一資料率(single data rate,簡稱為SDR)16的輸入/輸出介面。請參見第4A、4B圖,其係如第2圖的記憶體裝置,利用DTR 16的輸入/輸出介面進行讀取操作的波形圖。例如,圖式裡的波形代表匯流排206在記憶體裝置204與微控制器202之間傳送控制信號與資料的情形。第4A、4B圖的波形包含以16個位元為基本單位傳送的記憶體位址與輸出資料DQ[15:0]、時脈信號WTG,以及晶片選擇信號CSB。此處將時脈信號WTG的T1時點開始延伸至T3時點的部分定義為指令段,以及將自T4時點開始的部分定義為資料輸出段。
請參見第4A圖,在T1時點,一個時脈信號WTG的上升緣時,接收系統指令信號CMD。接著在T2時點,當時脈信號WTG再度為上升緣時,接收第一部分的記憶體位址資料(A31-A16)。在與T2時點相同時脈週期內的T3時點,時脈信號WTG為下降緣,此時接收第二部分的記憶體位址資料(A15-A0)。然而,A15-A0中的一個或多個位元並非要被存取的記憶體位址。在一個實施例中,第二部分的記憶體位址資料(A15-A0)包含表示記憶體位址的複數個位元,與一個用於代表輸出資料的排序的位元。
為提供彈性而可選擇的輸出排序,可以使用最低有效位元A0或其他的較低有效位元選擇輸出資料的排序。例如,在一個實施例中,以A0=1代表選用高字元優先的方式對資料進行排序。採用高字元優先的方式對資料進行排序的DTR 16輸入/輸出介面,會在時脈週期為上升緣時輸出高字元(或稱,奇數字元),先於在時脈週期為下降緣時輸出的低字元(或稱,偶數字元)。請再次參看第4A圖,時脈圖自T4時點開始的資料輸出段,記憶體裝置204輸出自記憶體位址資料(A31-A1)所指定之位址開始的資料。據此,在A0=1被接收後,記憶體裝置204的CPU 210,在T4時點(時脈週期的上升緣)輸出字元1(高字元);以及,在T5時點(時脈週期的下降緣)輸出字元0(低字元)。在下一個時脈週期內,記憶體裝置204的CPU 210,在T6時點(時脈週期的上升緣)輸出字元3(高字元);以及,在T7時點(時脈週期的下降緣)輸出字元2(低字元)。儘管第4A圖舉例的輸出資料為四個字元(字元0~字元3),但是輸出資料的數量並不以此為限。與第3A、3B圖類似,透過微控制器202的控制,此實施例可應用至資料多於或少於四個字元的情形。
同理,在某些實施例中,最低有效位元A0可以利用不同的數值代表低字元優先排序的方式對資料進行排序。例如,以A0=0代表低字元優先排序。DTR 15 I/O介面採用低字元優先排序時,低字元(或稱,偶數字元)會在時脈週期的上升緣輸出,先於在同一個時脈週期的下降緣所輸出的高字元(或稱,奇數字元)。第4B圖為記憶體裝置204進行讀取操作時,以低字元優先排序輸出資料的波形圖。除了最低有效位元A0的數值被設為0(A0=0)外,第4B圖中的T1時點至T3時點的敘述均與第4A圖類似,此處不重複說明。請參看第4B圖,時脈圖中的資料輸出段開始於T4時點。在資料輸出段中,記憶體裝置204自記憶體位址資料的(A31-A1)位元所指定的記憶體位址開始輸出資料。據此,當A0=0被接收後,記憶體裝置204的CPU 210在T4時點(時脈週期的上升緣)輸出字元0(為一低字元);以及在T5時點(時脈週期的下降緣)輸出字元1(為一高字元)。在下一個時脈週期內,記憶體裝置204的CPU 210在T6時點(時脈週期的上升緣)輸出字元2(為一低字元);以及在T7時點(時脈週期的下降緣)輸出字元3(為一高字元)。儘管第4B圖以四個字元(字元0~字元3)的輸出為例,但輸出資料的數量並不以此為限。與第3A、3B圖類似,藉由微控制器202的控制,前述的實施例還可應用至多於或少於四個字元的情形。
請參見第5A、5B圖,其係如第2圖的記憶體裝置,利用SDR 16的輸入/輸出介面進行讀取操作的波形圖。例如,圖式裡的波形代表匯流排206在記憶體裝置204與微控制器202之間傳送控制信號與資料的情形。第5A、5B圖的波形包含以16個位元為基本單位傳送的記憶體位址與輸出資料DQ[15:0]、時脈信號WTG,以及晶片選擇信號CSB。此處將時脈信號WTG的T1時點開始延伸至T3時點的部分定義為指令段,以及將自T4時點開始的部分定義為資料輸出段。
請參見第5A圖,在T1時點,一個時脈信號WTG的上升緣時接收系統指令信號CMD。接著在T2時點,當時脈信號WTG再度為上升緣時,接收第一部分的記憶體位址資料(A31-A16)。在T3時點,時脈信號WTG再度為上升緣時,接收第二部分的記憶體位址資料(A15-A0)。然而,A15-A0中的一個或多個位元並非要被存取的記憶體位址。在一個實施例中,第二部分的記憶體位址資料(A15-A0)包含複數個用於表示記憶體位址的位元,與一個用於代表輸出資料排序的位元。
為提供彈性而可選擇的輸出排序,可以使用最低有效位元A0或其他的較低有效位元選擇輸出資料的排序。例如,在一個實施例中,記憶體裝置204的CPU 210用於讀取最低有效位元A0,其中最低有效位元A0並不是用於代表欲存取的記憶體位址。以A0=1代表選用高字元優先的方式對資料進行排序。採用高字元優先的方式對資料進行排序的SDR 16輸入/輸出介面,會在時脈週期為下降緣時輸出高字元(或稱,奇數字元),先於在下一個時脈週期為下降緣時輸出的低字元(或稱,偶數字元)。請再次參看第5A圖,時脈圖自T4時點開始的資料輸出段,記憶體裝置204輸出的資料起始於記憶體位址資料的(A31-A1)位元所指定之位址。據此,在A0=1被接收後,記憶體裝置204的CPU 210,在T4時點(時脈週期的下降緣)輸出高字元的字元1;以及,在T5時點(下一個時脈週期的下降緣)輸出低字元的字元0。儘管第5A圖舉例的輸出資料為兩個字元(字元0~字元1),但是輸出資料的數量並不以此為限。與第3A、3B圖類似,透過微控制器202的控制,此實施例可應用至輸出資料多於或少於兩個字元的情形。
同理,在某些實施例中,最低有效位元A0可以使用不同的數值代表選用低字元優先的方式對資料進行排序。例如,以A0=0代表選用低字元優先的方式對資料進行排序。SDR 16輸入/輸出介面採用低字元優先的方式對資料進行排序時,會在時脈週期為下降緣時輸出低字元(或稱,偶數字元),先於在下一個時脈週期的下降緣輸出的高字元(或稱,奇數字元)。第5B圖為記憶體裝置204利用SDR 16的輸入/輸出介面,並以低字元優先排序進行讀取操作的波形圖。除了最低有效位元A0的值被設為0(A0=0)外,第5B圖中的T1時點至T3時點的敘述均與第5A圖類似,此處不重複說明。請參看第5B圖,時脈圖中的資料輸出段開始於T4時點。在資料輸出段中,記憶體裝置204自記憶體位址資料的(A31-A1)位元所指定的記憶體位址開始輸出資料。據此,當A0=0被接收後,記憶體裝置204在T4時點(時脈週期的下降緣),輸出低字元的字元0;以及在T5時點(時脈週期的下降緣),輸出高字元的字元1。儘管第5B圖以兩個字元(字元0~字元1)的輸出為例,但輸出資料的數量並不以此為限。在微控制器202的控制下,前述的實施例還可應用至輸出資料多於或少於兩個字元的情形。
請參見第6A、6B圖,其係如第2圖的記憶體裝置,利用DTR 8的輸入/輸出介面進行寫入操作的波形圖。例如,圖式裡的波形代表耦接至記憶體裝置204的一個或多個匯流排,在記憶體裝置204與微控制器202之間傳送控制信號與資料的情形。第6A、6B圖的波形包含以8個位元為基本單位傳送的記憶體位址與輸出資料DQ[7:0]、時脈信號WTG,以及晶片選擇信號CSB。在波形圖中,將自時脈信號WTG的T1時點開始並延伸至T5時點的部分定義為指令段,以及將自T6時點開始的部分定義為資料輸入段(data input section)。
在第6A圖中,在T1時點,一個時脈信號WTG的上升緣時,接收系統指令信號CMD。接著在T2時點,當時脈信號WTG再度為上升緣時,輸入/輸出介面208接收第一部分的記憶體位址資料(A31-A24)。在與T2時點相同時脈週期內的T3時點,時脈信號WTG為下降緣接收第二部分的記憶體位址資料(A23-A16)。在T4時點,當下一個時脈週期為上升緣時,輸入/輸出介面208接收第三部分的記憶體位址資料(A15-A8)。在與T4時點的同一個時脈週期內的T5時點,時脈信號WTG為下降緣,此時接收第四部分的記憶體位址資料(A7-A0)。然而,A7-A0中的一個或多個位元並不是要被存取的記憶體位址。在一個實施例中,第四部分的記憶體位址資料(A7-A0)包含表示記憶體位址的複數個位元,與一個用於代表輸出資料的排序的位元。
為提供彈性而可選擇的輸出排序,可以使用最低有效位元A0或其他的較低有效位元選擇輸出資料的排序。記憶體裝置204的CPU 210可用於讀取最低有效位元A0。例如,在一個實施例中,以A0=1代表選用高位元組優先的方式對資料進行排序。DTR 8輸入/輸出介面採用高位元組優先的方式對資料進行排序時,會在時脈週期為上升緣時輸入高位元組(或稱,奇數位元組),先於在時脈週期為下降緣時輸入的低位元組(或稱,偶數位元組)。再請參看第6A圖中,時脈圖自T6時點開始的資料輸入段,記憶體裝置204開始輸入資料至記憶體位址資料的(A31-A1)位元所指定之位址。例如,在某些實施例中,記憶體位址資料的(A31-A1)位元用於指定位元組0與位元組1的位址,且記憶體位址資料的最低有效位元A0用於指定應優先輸入位元組0與位元組1中的何者。在接收A0=1後,記憶體裝置204的CPU 210,在T6時點(時脈週期的上升緣)輸入位元組1(高位元組);以及,在T7時點(時脈週期的下降緣)輸入位元組0(低位元組)。在下一個時脈週期內,記憶體裝置204在T8時點(時脈週期的上升緣)輸入位元組3(高位元組);以及,在T9時點(時脈週期的下降緣)輸入位元組2(低位元組)。儘管第6A圖以四個位元組(位元組0~3)的輸出為例,但輸入資料的數量並不以此為限。在微控制器202的控制下,前述的實施例還可應用至輸入資料多於或少於四個位元組的情形。
同理,在某些實施例中,最低有效位元A0可以使用不同的數值代表選用低位元組優先的方式對資料進行排序。例如,以A0=0代表選用低位元組優先的方式對資料進行排序。DTR 8輸入/輸出介面採用低位元組優先的方式對資料進行排序時,會在時脈週期為上升緣時輸入低位元組(或稱,偶數位元組),先於在時脈週期為下降緣時輸入的高位元組(或稱,奇數位元組)。第6B圖為記憶體裝置204進行寫入操作的波形圖。除了最低有效位元A0的值被設為0(A0=0)外,第6B圖中的T1時點至T5時點的敘述均與第6A圖類似,此處不重複說明。請參看第6B圖,時脈圖中的資料輸入段開始於T6時點。在資料輸入段中,記憶體裝置204開始輸入資料位元組(位元組0~位元組3)至記憶體位址資料的(A31-A1)位元所指定的記憶體位址。據此,在接收A0=0後,記憶體裝置204的CPU 210在T6時點(時脈週期的上升緣),輸入位元組0(為一低位元組);以及在T7時點(時脈週期的下降緣),輸入位元組1(為一高位元組)。在下一個時脈週期內,記憶體裝置204的CPU 210在T8時點(時脈週期的上升緣),輸入位元組2(為一低位元組);以及在T9時點(時脈週期的下降緣),輸入位元組3(為一高位元組)。儘管第6B圖以四個位元組(位元組0~3)的輸入為例,但輸入資料的數量並不以此為限。與第3A、3B圖類似,在微控制器202的控制下,前述的實施例還可應用至輸入資料多於或少於四個位元組的情形。
據此,本案實施例的電子裝置所使用的輸入/輸出介面,可以同時接收欲存取之記憶體位址與指出輸出資料時的資料排序資訊。此處的「同時」係指,在同一個時脈週期內(例如,第3A、3B圖中的T4時點與T5時點),或是在同一個時脈的邊緣(例如第3A、3B圖的T5時點)。在第3A、3B圖中的T4時點與T5時點,記憶體位址資料的A15-A1部分指出欲存取之記憶體位址,且記憶體位址資料的最低有效位元A0代表輸出資料的排序。在第3A、3B圖中的T5時點,記憶體位址資料的A7-A1指出欲存取之記憶體位址,且記憶體位址資料的最低有效位元A0代表輸出資料的排序。電子裝置讀取一個位元,藉以判斷輸入資料的排序方式,並根據其他的位元決定欲存取的記憶體位址。在某些實施例中,利用最低有效位元指定輸出資料的排序方式。前述實施例雖然以A0=1代表選擇以高位元組優先的排序方式輸出資料,並以A0=0代表選擇以低位元組優先的排序方式輸出資料,但本揭露並不以該些設定為限。例如,可以利用A0=1代表以低位元組優先的排序方式輸出資料,且利用A0=0代表以高位元組優先的排序方式輸出資料。
與本實施例相符,本揭露進一步提供一種利用電腦實現,而自記憶體裝置讀取或寫入至記憶體裝置的方法。第7圖為舉例說明,自記憶體裝置讀取或寫入至記憶體裝置的方法700的流程圖。請參照第7圖,在步驟702中,控制段為,微控制器202透過一個或多個資料匯流排206,轉發讀取指令或寫入指令至記憶體裝置,例如第2圖的記憶體裝置204。在步驟704中,微控制器202同時轉發欲存取的記憶體位址與資料排序資訊至記憶體裝置204。如前所述,“同時”是指在相同的時脈週期內(例如,第6A圖和第6B圖所示的T4時點與T5時點),或者在同一個時脈的邊緣(例如,在第6A圖和第6B圖的T5時點)。例如,在一些實施例中,記憶體裝置204可以在相同的時脈週期內,或是在同一個時脈週期的上升緣(例如,在第5A圖和第5B圖的T3時點)與下降緣(例如,在第3A圖和第3B圖的T5時點)。在一些實施例中,資料排序資訊可以是最低有效位元或較低有效位元的數值。
再請參看第7圖,步驟706判斷資料排序資訊的數值是否等於"1"或"0"。如果資料排序資訊的數值等於"1",則執行步驟708。在步驟708中,記憶體裝置204採用高位元組優先的排序方式輸入資料或輸出資料。高位元組優先的排序方式指的是,先輸入或輸出一個高位元組(或奇數位元組)的資料後,才輸入或輸出一個低位元組(或偶數位元組)的資料。高位元組優先的排序方式可以參看第3A圖與第6A圖。在一些實施例中,記憶體裝置在輸入資料或輸出資料時,亦可以字元為基本單位,先輸入或輸出高字元(或奇數字元)的資料後,才輸入或輸出低字元(或偶數字元)的資料。以高字元優先的排序方式的例子可參看第4A圖和第5A圖。
如果在步驟706中,資料排序資訊的數值等於"0",則執行步驟710。在步驟710中,記憶體裝置204採用低位元組優先的排序方式輸入資料或輸出資料。低位元組優先的排序方式指的是,先輸入或輸出一個低位元組(或偶數位元組)的資料後,才輸入或輸出一個高位元組(或奇數位元組)的資料。低位元組優先的排序方式可以參看第3B圖與第6B圖。在一些實施例中,記憶體裝置在輸入資料或輸出資料時,亦可以字元為基本單位,先輸入或輸出低字元(或偶數字元)的資料後,才輸入或輸出高字元(或奇數字元)的資料。以低字元優先的排序方式的例子可參看第4B圖和第5B圖。
在一些實施例中,方法700可以透過儲存在非揮發性電腦可讀式儲存媒體的多個指令所實現。例如,在(第2圖的)記憶體單元212存放指令,並由處理器,例如(第2圖的)CPU 210執行該些指令。
記憶體裝置204可以是快閃記憶體、電子可抹除可程式化唯讀記憶體(Electrically Erasable Programmable Read-Only Memory,簡稱為EEPROM)、動態隨機存取記憶體(Dynamic Random Access Memory,簡稱為DRAM)等。
綜上所述,雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
200‧‧‧電子裝置
202‧‧‧微控制器
204‧‧‧記憶體裝置
206、206a、206b、206c‧‧‧匯流排
208‧‧‧輸入/輸出介面
210‧‧‧中央處理單元
212‧‧‧記憶體單元
700‧‧‧方法
702、704、706、708、710‧‧‧步驟
202‧‧‧微控制器
204‧‧‧記憶體裝置
206、206a、206b、206c‧‧‧匯流排
208‧‧‧輸入/輸出介面
210‧‧‧中央處理單元
212‧‧‧記憶體單元
700‧‧‧方法
702、704、706、708、710‧‧‧步驟
第1A、1B圖,其係進行記憶體讀取操作時,資料輸出區段的時脈圖。 第2圖,其係電子裝置的示意圖。 第3A、3B圖,其係如第2圖的記憶體裝置,利用DTR 8的輸入/輸出介面進行讀取操作的波形圖。 第4A、4B圖,其係如第2圖的記憶體裝置,利用DTR 16的輸入/輸出介面進行讀取操作的波形圖。 第5A、5B圖,其係如第2圖的記憶體裝置,利用SDR 16的輸入/輸出介面進行讀取操作的波形圖。 第6A、6B圖,其係如第2圖的記憶體裝置,利用DTR 8的輸入/輸出介面進行寫入操作的波形圖。 第7圖,其係自記憶體裝置讀取資料或寫入資料至記憶體裝置的方法的流程圖。
700‧‧‧方法
702、704、706、708、710‧‧‧步驟
Claims (10)
- 一種記憶體裝置,包含: 一輸入/輸出介面,用於接收信號與輸出信號,其中該輸入/輸出介面係於一時脈週期內,或是在一時脈週期的上升緣或下降緣接收欲進行存取的一記憶體位址與一資料排序資訊,其中該資料排序資訊係指定一輸入資料的排序或一輸出資料的排序。
- 如申請專利範圍第1項所述之記憶體裝置,其中用於表示該資料排訊資訊的一個位元係接續在表示該記憶體位址之複數個位元後。
- 如申請專利範圍第2項所述之記憶體裝置,其中該資料排序資訊係為一最低有效位元或一較低有效位元。
- 如申請專利範圍第1項所述之記憶體裝置,其中該資料排序資訊係為複數個排序方式的其中之一,其中 該等排序方式中的一第一排序方式係指定一高位元組優先作為該輸入資料的排序或該輸出資料的排序,其中該高位元組優先係指在一奇數位元組後輸入或輸出一偶數位元組; 該等排序方式中的一第二排序方式係指定一低位元組優先作為該輸入資料的排序或該輸出資料的排序,其中該低位元組優先係指在一偶數位元組後輸入或輸出一奇數位元組; 該等排序方式中的一第三排序方式係指定一高字元優先作為該輸入資料的排序或該輸出資料的排序,其中該高字元優先係指在一奇數字元後輸入或輸出一偶數字元;以及 該等排序方式中的一第四排序方式係指定一低字元優先作為該輸入資料的排序或該輸出資料的排序,其中該低字元優先係指在一偶數字元後輸入或輸出一奇數字元。
- 一種傳輸資料的方法,包含以下步驟: 於一時脈週期內,或是在一時脈週期的上升緣或下降緣將欲進行存取的一記憶體位址與一資料排序資訊傳送至一記憶體裝置,其中該資料排序資訊係指定一輸入資料的排序或一輸出資料的排序。
- 如申請專利範圍第5項所述之方法,其中用於表示該資料排訊資訊的一個位元係接續在表示該記憶體位址之複數個位元後。
- 如申請專利範圍第6項所述之方法,其中該資料排序資訊係為一最低有效位元或一較低有效位元。
- 如申請專利範圍第5項所述之方法,其中該資料排序資訊係為複數個排序方式的其中之一,其中 該等排序方式中的一第一排序方式係指定一高位元組優先作為該輸入資料的排序或該輸出資料的排序,其中該高位元組優先係指在一奇數位元組後輸入或輸出一偶數位元組; 該等排序方式中的一第二排序方式係指定一低位元組優先作為該輸入資料的排序或該輸出資料的排序,其中該低位元組優先係指在一偶數位元組後輸入或輸出一奇數位元組; 該等排序方式中的一第三排序方式係指定一高字元優先作為該輸入資料的排序或該輸出資料的排序,其中該高字元優先係指在一奇數字元後輸入或輸出一偶數字元;以及 該等排序方式中的一第四排序方式係指定一低字元優先作為該輸入資料的排序或該輸出資料的排序,其中該低字元優先係指在一偶數字元後輸入或輸出一奇數字元。
- 一種非揮發性電腦可讀式儲存媒體,用於儲存由一個或多個處理器所執行之複數個指令,進而使該一個或多個處理器: 於一時脈週期內,或是在一時脈週期的上升緣或下降緣將欲進行存取的一記憶體位址與一資料排序資訊傳送至一記憶體裝置,其中該資料排序資訊係指定一輸入資料的排序或一輸出資料的排序。
- 如申請專利範圍第9項所述之非揮發性電腦可讀式儲存媒體,其中更包含: 根據該資料排序資訊而輸入資料至該記憶體裝置或自該記憶體裝置輸出資料。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/860,744 | 2015-09-22 | ||
US14/860,744 US10095617B2 (en) | 2015-09-22 | 2015-09-22 | Memory device with flexible data transfer rate interface and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201715406A true TW201715406A (zh) | 2017-05-01 |
TWI663513B TWI663513B (zh) | 2019-06-21 |
Family
ID=58282358
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104139756A TWI663513B (zh) | 2015-09-22 | 2015-11-27 | 具有彈性資料傳輸介面的記憶體裝置與其方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10095617B2 (zh) |
CN (1) | CN106547479A (zh) |
TW (1) | TWI663513B (zh) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2708763B1 (fr) * | 1993-06-30 | 2002-04-05 | Intel Corp | Dispositif de mémoire flash, procédé et circuit de traitement d'un ordre d'utilisateur dans un dispositif de mémoire flash et système d'ordinateur comprenant un dispositif de mémoire flash. |
US5497354A (en) * | 1994-06-02 | 1996-03-05 | Intel Corporation | Bit map addressing schemes for flash memory |
KR100384775B1 (ko) * | 2000-11-23 | 2003-05-22 | 주식회사 하이닉스반도체 | 쿼드 데이터 레이트 싱크로노스 에스램의 리드/라이트를위한 워드라인 및 비트라인 구동 방법 및 그 회로 |
TWI311325B (en) | 2006-11-16 | 2009-06-21 | Elite Semiconductor Esmt | Transmission method for serial periphery interface serial flash |
CN200990084Y (zh) * | 2006-12-14 | 2007-12-12 | 上海广电(集团)有限公司中央研究院 | 一种基于rs232标准的数据保存装置 |
CN103365857B (zh) * | 2012-03-28 | 2018-09-04 | 深圳市腾讯计算机系统有限公司 | 一种提供数据排序服务的方法、装置和系统 |
US8705310B2 (en) * | 2012-08-24 | 2014-04-22 | Cypress Semiconductor Corporation | Access methods and circuits for memory devices having multiple banks |
TWI471731B (zh) | 2013-03-29 | 2015-02-01 | Mediatek Inc | 記憶體存取方法、記憶體存取控制方法、spi快閃記憶體裝置以及spi控制器 |
-
2015
- 2015-09-22 US US14/860,744 patent/US10095617B2/en active Active
- 2015-11-27 TW TW104139756A patent/TWI663513B/zh active
- 2015-12-01 CN CN201510864359.8A patent/CN106547479A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
US20170083439A1 (en) | 2017-03-23 |
CN106547479A (zh) | 2017-03-29 |
US10095617B2 (en) | 2018-10-09 |
TWI663513B (zh) | 2019-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10592448B2 (en) | Master-slave system, command execution method and data access method with use of serial peripheral interface (SPI) | |
TWI512755B (zh) | 存取記憶體之方法及系統 | |
CN108701081B (zh) | 用于同时存取非易失性存储器的多个分区的设备和方法 | |
JP6232109B1 (ja) | 半導体記憶装置および連続読出し方法 | |
US10049005B2 (en) | Flash memory control apparatus utilizing buffer to temporarily storing valid data stored in storage plane, and control system and control method thereof | |
US8681552B2 (en) | System and method for accessing and storing interleaved data | |
TWI790456B (zh) | 記憶體定址方法及相關聯的控制器 | |
JP2006004079A (ja) | 記憶装置 | |
US10725902B2 (en) | Methods for scheduling read commands and apparatuses using the same | |
TW201337945A (zh) | 多晶片封裝nand快閃記憶體系統中的裝置選擇方法 | |
US8341330B2 (en) | Method and system for enhanced read performance in serial peripheral interface | |
US9952779B2 (en) | Parallel scheduling of write commands to multiple memory devices | |
TW200521847A (en) | Programmable chip select | |
TW201715406A (zh) | 具有彈性資料傳輸介面的記憶體裝置與其方法 | |
JP5839632B2 (ja) | シリアル不揮発性メモリに対する向上されたアドレス能力 | |
US20150143062A1 (en) | Controller, storage device, and control method | |
TWI602185B (zh) | 記憶體裝置及其操作方法 | |
CN112905234A (zh) | 处理装置与其数据存取方法 | |
CN111309653A (zh) | 一种数据总线以及读取数据和写入数据的方法 | |
JP2006065380A (ja) | データ記録方法 |