TWI521508B - 記憶體控制電路與控制記憶體模組之資料讀取程序之方法 - Google Patents
記憶體控制電路與控制記憶體模組之資料讀取程序之方法 Download PDFInfo
- Publication number
- TWI521508B TWI521508B TW102129068A TW102129068A TWI521508B TW I521508 B TWI521508 B TW I521508B TW 102129068 A TW102129068 A TW 102129068A TW 102129068 A TW102129068 A TW 102129068A TW I521508 B TWI521508 B TW I521508B
- Authority
- TW
- Taiwan
- Prior art keywords
- clock
- signal
- data
- enabling
- sampling
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/4076—Timing circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1066—Output synchronization
-
- 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/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/4063—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
- G11C11/407—Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
- G11C11/409—Read-write [R-W] circuits
- G11C11/4091—Sense or sense/refresh amplifiers, or associated sense circuitry, e.g. for coupled bit-line precharging, equalising or isolating
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1051—Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
- G11C7/1057—Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Dram (AREA)
Description
本發明是關於記憶體控制電路,尤其是關於控制記憶體模組之資料讀取程序的電路與方法。
請參閱圖1,其係習知雙倍數據率同步動態隨機存取記憶體(Double Data Rate Synchronous Dynamic Random AccessMemory,以下簡稱DDR SDRAM)之系統架構圖。DDR SDRAM 10包含記憶體控制電路110與記憶體模組120。記憶體控制電路110傳送時脈CLK給記憶體模組120,以作為其操作時之參考時脈。在進行讀取操作時,記憶體控制電路110先發送一個讀取命令CMD給記憶體模組120,記憶體模組120依據讀取命令CMD存取其內部的資料來產生資料訊號DQ,並且連同用來還原資料訊號DQ的資料觸發訊號(DataStrobe Signal)DQS一併回傳給記憶體控制電路110。
請參閱圖2,其係習知DDRSDRAM的訊號時序圖。資料觸發訊號DQS包含前置(preamble)部分tRPRE以及緊跟在前置部分tRPRE之後用來取樣資料訊號DQ的週期性時脈部分。前置部分tRPRE的長度大約等於時脈CLK的一個週期,其中間點標示為P。前置部分tRPRE的用途之一在於指示資料觸發訊號DQS的週期性時脈部分的起始位置,因此為了確保資料還原程序的正確性,必須先找出資料觸發訊號DQS的前置部分tRPRE。此外,資料觸發訊號DQS還包含非穩態部分TRI(斜線部分),訊號在此區間會在高低準位間不規則跳動。
記憶體控制電路110利用資料觸發訊號DQS來取樣資料訊號DQ以還原資料。然而因為電路板上的繞線以及各個元件內部或多或少所造成的訊號延遲,記憶體模組120內部的時脈DDR_CLK與記憶體控制電路110的時脈CLK可能已經有一定程度的延遲。因為時脈DDR_CLK與CLK不再是同相位,造成記憶體模組120所產生的資料觸發訊號DQS與記憶體控制電路110本身的時脈CLK不屬於同一個時脈領域(clock domain)。這種情況下要正確地找出資料觸發訊號DQS的前置部分tRPRE,便需要有相對應的處理機制。
習知中常以讀取均衡(read leveling)技術來找出資料觸發訊號DQS的前置部分tRPRE。記憶體控制電路110依據時脈CLK產生一個DQS致能(DQS enabling)訊號DQS_En,其功用在於指示資料觸發訊號DQS的前置部分tRPRE,因此DQS致能訊號DQS_En最好能在資料觸發訊號DQS的前置部分tRPRE的中間點P處致能(例如由低準位切換到高準位)。當DQS致能訊號致能時,代表資料觸發訊號DQS的前置部分tRPRE已經發生,也就是還原資料訊號DQ的程序即將開始。在讀取均衡的過程中,記憶體控制電路110會連續發送讀取命令CMD,而且每次發送時,皆會將DQS致能訊號DQS_En的致能時間點延遲時脈CLK的半個週期,並用DQS致能訊號DQS_En來取樣資料觸發訊號DQS。當連續的取樣結果符合預設的資料型態時,代表記憶體控制電路110於第一次發送的讀取命令CMD時所對應的DQS致能訊號DQS_En即是系統所需要的DQS致能訊號,其致能時間點可以指示資料觸發訊號DQS的前置部分tRPRE的位置。然而這個方法耗時,而且可能因為資料觸發訊號DQS中的非穩態部分TRI而造成誤判。
另一個習知方法,是利用讀取延遲(read latency)的方式來評估資料觸發訊號DQS的前置部分tRPRE的時間。一般而言可以推估記憶體模組120在收到讀取命令CMD後的多少時間內會發送資料觸發訊號DQS,例如是5個時脈CLK的週期的時間。然而因為時脈DDR_CLK與時脈CLK之間有延遲,而且延遲時間的長短與電路板及元件的設計及製程,或甚至是操作溫度有關。因此若記憶體控制電路110利用本身的時脈CLK為基礎,評估發送讀取命令CMD的5個週期後將收到資料觸發訊號DQS的前置部分tRPRE,這樣的判斷方式很容易產生誤差。而且這個方法必須配合資料訊號DQ一起判斷,增加操作上的複雜度。
鑑於先前技術之不足,本發明之一目的在於提供一種記憶體控制電路與一種控制記憶體模組之資料讀取程序之方法,以更有效率地產生理想的致能訊號。
本發明揭露了一種記憶體控制電路,用來控制一記憶體模組之一資料讀取程序,於該資料讀取程序中,該記憶體模組係傳送一資料訊號及用來還原該資料訊號之一資料觸發訊號至該記憶體控制電路,該資料觸發訊號包含一前置部分,該記憶體控制電路包含:一時脈產生電路,用來產生一時脈;一控制單元,耦接該記憶體模組及該時脈產生電路,用來控制該記憶體模組之一阻抗匹配電路及依據該時脈產生一致能訊號;以及一取樣電路,耦接該控制單元,用來依據該致能訊號取樣該資料觸發訊號,以產生一取樣結果;其中,該控制單元先控制該阻抗匹配電路以使得該資料觸發訊號於該前置部分之前維持於一固定準位,再控制該取樣電路依據該致能訊號取樣該資料觸發訊號,並且依據該取樣結果調整該致能訊號之致能時間點,並依據該致能訊號啟動還原該資料訊號之程序。
本發明另揭露了一種控制一記憶體模組之一資料讀取程序之方法,於該資料讀取程序中,該記憶體模組係傳送一資料訊號及用來還原該資料訊號之一資料觸發訊號,該資料觸發訊號包含一前置部分,該方法包含:控制該記憶體模組之一阻抗匹配電路,使該資料觸發訊號於該前置部分之前維持於一固定準位;產生一時脈;依據該時脈產生一致能訊號;依據該致能訊號取樣該資料觸發訊號,以產生一取樣結果;依據該取樣結果調整該致能訊號之致能時間點;以及依據該致能訊號啟動還原該資料訊號之程序。
本發明之記憶體控制電路與控制記憶體模組之資料讀取程序之方法能夠不受非穩態部分TRI的影響,並且降低判斷時的複雜度,因而更有效率地產生更準確的致能訊號。因此,系統能抵抗電壓、溫度、製程等影響,得以高速讀取DDR SDRAM的資料。
有關本發明的特徵、實作與功效,茲配合圖式作較佳實施例詳細說明如下。
以下說明內容之技術用語係參照本技術領域之習慣用語,如本說明書對部分用語有加以說明或定義,該部分用語之解釋係以本說明書之說明或定義為準。
本發明之揭露內容包含記憶體控制電路與控制記憶體模組之資料讀取程序的方法,能夠使讀取記憶體資料的過程較不受電壓、溫度、製程等影響,而能更快速且更精確地讀取資料。該電路與方法可應用於DDR SDRAM,在實施為可能的前提下,本技術領域具有通常知識者能夠依本說明書之揭露內容來選擇等效之元件或步驟來實現本發明,亦即本發明之實施並不限於後敘之實施例。由於本發明之記憶體控制電路與控制記憶體模組之資料讀取程序的方法所包含之部分元件單獨而言可能為已知元件,因此在不影響該裝置發明之充分揭露及可實施性的前提下,以下說明對於已知元件的細節將予以節略。此外,本發明之控制記憶體模組之資料讀取程序的方法可藉由本發明之記憶體控制電路或其等效電路來執行,在不影響該方法發明之充分揭露及可實施性的前提下,以下方法發明之說明將著重於步驟內容而非硬體。
請參閱圖3,其係本發明之記憶體控制電路之功能方塊圖。DDR SDRAM 30包含記憶體控制電路310與記憶體模組320。記憶體控制電路310包含時脈產生電路312、取樣電路314及控制單元316。記憶體模組320包含阻抗匹配電路322。為了說明方便及維持圖式之簡潔,圖3中未繪示所有元件間的連結關係或省略與本發明沒有直接關係之元件,例如記憶體控制電路310的控制單元316發送讀取命令CMD給記憶體模組320,而圖3中省略控制單元316與讀取命令CMD之傳送接腳之連線;另外記憶體模組320除了阻抗匹配電路322之外亦包含其他元件,例如記憶體晶粒等。以上為本技術領域具有通常知識者所熟知,故在不影響本發明之揭露下予以省略。事實上,阻抗匹配電路322即為記憶體模組320的片上端接(on-dietermination, ODT)電路,用來調整線路的阻抗匹配,以消除或減少訊號的反射。
請同時參閱圖2及圖3,在讀取資料的程序中,記憶體控制電路310為了找出資料觸發訊號DQS的前置部分tRPRE,控制單元316會依據時脈產生電路312所產生的時脈CLK來產生DQS致能訊號DQS_En。取樣電路314受控制單元316的控制,利用DQS致能訊號DQS_En來取樣資料觸發訊號DQS,並產生取樣結果。控制電路316再依據取樣結果判斷是否需要調整DQS致能訊號DQS_En的致能時間點。如圖2所示,當取樣電路312利用DQS致能訊號DQS_En來取樣資料觸發訊號DQS時,資料觸發訊號DQS中的非穩態部分TRI會造成不可預期的取樣結果,因此極易造成誤判。為了排除資料觸發訊號DQS中的非穩態部分TRI的影響,本發明利用控制單元316 控制記憶體模組320的阻抗匹配電路322的阻抗匹配設定。
請參閱圖4,其係阻抗匹配電路322之一實施例的示意圖。開關S1與S2受控制器410控制而呈現導通或不導通的狀態。控制單元316可以透過記憶體模組320的ODT接腳,發送控制訊號Ctrl來設定控制器410。電阻R1及R2的值則由擴展模式暫存器組(extended moderegister set, EMRS)412設定。記憶體控制電路310的控制單元316可以藉由設定擴展模式暫存器組412的值來改變電阻R1及R2的值。對第二代雙倍數據率同步動態隨機存取記憶體(DDR2 SDRAM)與第三代雙倍數據率同步動態隨機存取記憶體(DDR3 SDRAM)而言,資料觸發訊號DQS以差動訊號(differentialsignal)之方式傳送,兩個訊號分別稱為訊號DQS及訊號DQS#,透過記憶體模組320的兩個接腳傳送。在預設的情況下,當阻抗匹配電路322開啟時,不論對於訊號DQS或訊號DQS#,開關S1及S2導通,電阻R1及R2的值被設為相同,因此訊號DQS或訊號DQS#的電壓準位皆為VDD/2,使得這兩個訊號經過比較器的比較時,因為電壓相等或相近,造成比較器的輸出端在高低準位間產生不規則的跳動,造成如圖2的非穩態部分TRI。
為了避免資料觸發訊號DQS的非穩態部分TRI造成前置部分tRPRE的誤判,控制單元316於發送讀取命令CMD之前,也就是當記憶體模組320尚未發送資料觸發訊號DQS,訊號DQS及訊號DQS#尚處於初始狀態時,控制單元316藉由設定擴展模式暫存器組412的暫存值,來改變阻抗匹配電路322的阻抗匹配狀態。目的在於使訊號DQS及訊號DQS#產生一個電壓差,因此比較器的比較結果就能維持在一個固定的準位。例如將訊號DQS調整成具有較低的電壓準位,並且將訊號DQS#調整成具有較高的電壓準位,比較器的輸出就能維持在低電壓準位。
請參閱圖5,其係本發明DDR SDRAM之訊號時序圖。相較於圖2,因為改變了阻抗匹配電路322的阻抗匹配狀態,資料觸發訊號DQS不再有非穩定狀態,而是於前置部分tRPRE之前皆維持在固定的電壓準位(圖5以低電壓準位為例)。當控制單元316依據時脈CLK來觸發DQS致能訊號DQS_En的致能時間點,如圖5所示,當DQS致能訊號DQS_En的致能時間點位於時脈CLK之第(m-2)個時脈邊緣(clock edge)時(m為大於1之正整數;在圖5所示的例子中,m大於等於7),此時依據此DQS致能訊號DQS_En來取樣資料觸發訊號DQS得到的取樣結果將是0(或是低電壓準位)。之後控制單元316重新發送讀取命令CMD,並且將DQS致能訊號DQS_En的致能時間點延後至時脈CLK的下一個時脈邊緣(m-1),也就是將DQS致能訊號DQS_En延後時脈CLK的半個週期。此時依據此DQS致能訊號DQS_En來取樣資料觸發訊號DQS得到的取樣結果將也是0。重覆以上步驟,當DQS致能訊號DQS_En的致能時間點位於時脈CLK的時脈邊緣m時,此時將會得到取樣結果為1(或是高電壓準位)。因為資料觸發訊號DQS在前置部分tRPRE及之前的部分皆為低電壓準位,因此當取樣結果發生位準轉換時,代表資料觸發訊號DQS在前置部分tRPRE已經結束。實際操作上,控制單元316一直將取樣結果與預設值1做比較,當取樣結果與預設值相同,代表目前的DQS致能訊號DQS_En的致能時間點相當接近資料觸發訊號DQS的前置部分tRPRE。此時可以以取樣結果與預設值相同之時脈邊緣,也就是本實施例中的時脈邊緣m為基準,往前回溯1至2個時脈邊緣(也就是時脈邊緣(m-1)或時脈邊緣(m-2))作為DQS致能訊號DQS_En的致能時間點。因為資料觸發訊號DQS與時脈CLK的週期相同,因此時脈邊緣(m-1)及時脈邊緣(m-2)必能對應資料觸發訊號DQS的前置部分tRPRE。也就是說,依據上述步驟找到符合預設值的時脈邊緣m,再依據其前1至2個時脈邊緣作為致能時間點的DQS致能訊號DQS_En,已經可以被用來指示資料觸發訊號DQS之前置部分tRPRE,因而可進行接下來的資料還原程序。
然而如圖5所示,時脈邊緣(m-1)或時脈邊緣(m-2)與資料觸發訊號DQS的前置部分tRPRE的中間點P仍有些許誤差,此誤差最大可為時脈CLK的半個週期。換句話說,利用前揭步驟所產生的DQS致能訊號DQS_En,其精準度為時脈CLK的週期的一半。為了得到更精確的DQS致能訊號DQS_En,以下將進行訊號的微調。
在微調程序開始之前,必須先復原在上述粗調程序中經過調整的阻抗匹配電路322,使其回復到阻抗匹配狀態,以消除或減少訊號的反射。當阻抗匹配電路322回復到阻抗匹配狀態,表示資料觸發訊號DQS於前置部分tRPRE之前會有非穩態部分TRI產生,而不再維持在固定的電壓準位,如圖2所示。然而在粗調程序中已經找出DQS致能訊號DQS_En的大約的致能時間點,所以即使資料觸發訊號DQS在粗調程序後回復成有非穩態部分TRI,也不影響最終的結果。接下來便可進行DQS致能訊號DQS_En的微調程序。
控制單元316還包含延遲單元317。控制單元316利用該延遲單元317將時脈CLK延遲,並且依據延遲後的時脈調整DQS致能訊號DQS_En的致能時間點。延遲單元317延遲的時間長度可以設定為時脈CLK的連續兩個時脈邊緣的n等份,n為大於1的正整數。此延遲的時間長度即為微調程序的精準度。由於時脈CLK的連續兩個時脈邊緣對應時脈CLK的週期的一半,假設其週期為T,則微調的精準度即為T/2n。
以n等於4為例,也就是精準度設定為T/8。如圖5所示,資料觸發訊號DQS的前置部分tRPRE的右半部被等分劃分為4個區間,微調程序尚未開始前時脈邊緣(m-1)落於中間點P之右邊第3個區間。第一次延遲時,時脈CLK被延遲T/8,也就是時脈邊緣(m-1)將落於中間點P之右邊第4個區間。控制單元316再依據此時時脈邊緣(m-1)的時間點作為DQS致能訊號DQS_En的致能時間點,並且控制取樣電路314以DQS致能訊號DQS_En取樣資料觸發訊號DQS,而產生延遲後的取樣結果。如圖5所示,此時將得到延遲後的取樣結果為0。控制單元316將此延遲後的取樣結果與粗調程序中所設定的預設值做比對,發現兩者不相等,因此必須進行下一輪的微調。相較於第一次的延遲,第二次的延遲中時脈CLK再被延遲T/8,換句話說,第二次的延遲中,時脈CLK實際上由圖5所示的尚未延遲的時序延遲了2T/8。延遲後的時脈邊緣(m-1)將落在資料觸發訊號DQS的前置部分tRPRE之外,此時控制單元316將發現對應時脈邊緣(m-1)的延遲後的取樣結果為1,與預設值相同。當控制單元316發現延遲後的取樣結果與預設值相同時,便依據此次的延遲時間(即2T/8)來調整DQS致能訊號DQS_En的致能時間點。調整的方式為,控制單元316將記下此延遲時間(即2T/8),並再重新發送讀取命令,於產生DQS致能訊號DQS_En的過程中,將時脈CLK延遲2T/8,並且此次是依據時脈邊緣(m-2)的位置來調整DQS致能訊號DQS_En的致能時間點。由圖5可知,經過調整後的DQS致能訊號DQS_En,其致能時間點將更接近資料觸發訊號DQS的前置部分tRPRE的中間點P,且兩者的誤差小於微調程序的精準度。
請參閱圖6,其係本發明DDR SDRAM之另一訊號時序圖。在此例中,n同樣設定為4。時脈邊緣(m-1)落於資料觸發訊號DQS的前置部分tRPRE的中間點P的右邊第一區間。經過三次的延遲,對應時脈邊緣(m-1)的延遲後的取樣結果依然不等於預設值。直到第四次的延遲(相較於未延遲時,延遲時間為4T/8),控制單元316才發現對應時脈邊緣(m-1)的延遲後的取樣結果等於預設值。此時控制單元316依據時脈邊緣(m-2)延遲4T/8後的時間點來調整DQS致能訊號DQS_En的致能時間點。然而實際上時脈邊緣(m-2)延遲4T/8後即是時脈邊緣(m-1)的時間點。所以上述的步驟可以歸納如下,如果延遲的時間長度設定為時脈CLK的連續兩個時脈邊緣的n等份,當控制單元316將時脈CLK延遲第(n-1)次,亦即延遲時間等於(n-1)T/2n,對應時脈邊緣(m-1)的延遲後的取樣結果仍不等於預設值時,控制單元316即可依據時脈邊緣(m-1)的時間點來調整DQS致能訊號DQS_En的致能時間點。
請參閱圖7,其係本發明之控制記憶體模組之資料讀取程序的方法之粗調程序的流程圖。除前述之記憶體控制電路310外,本發明亦相對應地揭露了一種控制記憶體模組之資料讀取程序的方法,應用於DDR SDRAM,用來調整DQS致能訊號DQS_En的致能時間點,使其更精確指示DDR SDRAM之資料觸發訊號DQS之前置部分。本方法由前揭記憶體控制電路310或其等效電路來執行。如圖7所示,本發明之一實施例包含下列步驟:步驟S710:控制記憶體模組之阻抗匹配電路,使資料觸發訊號DQS於前置部分tRPRE開始之前維持於固定準位。如圖2所示,資料觸發訊號DQS於前置部分tRPRE之前為非穩態TRI,為了避免非穩態TRI造成前置部分tRPRE的誤判,因此先控制記憶體模組320內部的阻抗匹配電路322,使資料觸發訊號DQS的差動訊號對DQS及DQS#產生一個電壓差,因此比較器的比較結果就能維持在一個固定的準位。調整過後的訊號時序圖如圖5所示;步驟S720:產生時脈CLK。時脈CLK傳遞給記憶體模組320成為時脈DDR_CLK,兩時脈間因為電路板線路或元件的關係而產生延遲;步驟S730:依據時脈CLK產生DQS致能訊號DQS_En。DQS致能訊號DQS_En的致能時間點依據時脈CLK的時脈邊緣(上升緣或下降緣)而決定。圖5中即是以時脈邊緣(m-2)作為致能時間點來產生DQS致能訊號DQS_En;步驟S740:依據DQS致能訊號DQS_En取樣資料觸發訊號DQS,以產生取樣結果。如圖5所示,DQS致能訊號DQS_En將取樣到資料觸發訊號DQS的前置部分tRPRE,而得到取樣結果為0;步驟S750:依據取樣結果調整DQS致能訊號DQS_En之致能時間點。由於取樣結果不等於預設值1,表示取樣的時間點還沒到達資料觸發訊號DQS的前置部分tRPRE或是正好在前置部分tRPRE,所以尚無法確定前置部分tRPRE何時開始。因此必須再次發送讀取命令,而步驟S730及S740將被再次執行。在新的一次調整程序中,時脈邊緣(m-2)的次一個時脈邊緣,也就是時脈邊緣(m-1)被用來作為DQS致能訊號DQS_En之致能時間點。並且新的DQS致能訊號DQS_En被用來取樣資料觸發訊號DQS,以產生取樣結果。上述的步驟將一直重覆,直到取樣結果為1,代表DQS致能訊號DQS_En的致能時間點已經超過資料觸發訊號DQS的前置部分tRPRE,如圖5的時脈邊緣m所示。因為資料觸發訊號DQS的前置部分tRPRE大約佔時脈CLK的一個週期,因此時脈邊緣(m-1)及(m-2)可以被確定為對應資料觸發訊號DQS的前置部分tRPRE。也就是說,以時脈邊緣(m-1)或(m-2)作為致能時間點的DQS致能訊號DQS_En可以正確地指示資料觸發訊號DQS的前置部分tRPRE。步驟S760:依據DQS致能訊號DQS_En啟動還原資料訊號之程序。當DQS致能訊號DQS_En的致能時間點被調整到理想的位置之後,便可以依據DQS致能訊號DQS_En開始還原資料訊號的程序,以還原資料訊號所攜帶的資料。
圖7所示的流程已經可以正確地找出資料觸發訊號DQS的前置部分tRPRE。相較於習知技術,此方法不會受資料觸發訊號DQS的非穩態TRI的影響而造成誤判,並且亦不受資料觸發訊號DQS與控制電路310本身的時脈CLK已經不屬於同一個時脈領域之影響。
請參閱圖8,其係本發明之控制記憶體模組之資料讀取程序的方法之微調程序的流程圖。圖7的流程可以視為粗調的程序,圖8的流程進一步微調DQS致能訊號DQS_En,使其致能時間點更接近資料觸發訊號DQS的前置部分tRPRE的中間點P。如圖8所示,本發明之微調DQS致能訊號DQS_En的方法包含下列步驟:步驟S810:控制阻抗匹配電路322使資料觸發訊號DQS於前置部分tRPRE開始之前不維持於固定準位。當圖7的粗調程序完成(亦即找到時脈邊緣(m-1)或(m-2))後,不再需要使資料觸發訊號DQS的非穩態部分維持在固定準位,反而需要將阻抗匹配電路322調整回阻抗匹配的狀態,以避免訊號的反射;步驟S820:以預設時間延遲時脈CLK。可以將時脈CLK的連續兩個邊緣的n等份作為基礎時間,n為大於1的正整數,而每次延遲皆延遲基礎時間的整數倍。例如假設時脈CLK的週期為T且n等於4,則基礎時間為T/8,而預設時間則為kT/8,k為微調過程中延遲的次數。因此第一次延遲的預設時間為T/8,第二次延遲的預設時間為2T/8,以此類推。這裡所指的預設時間為相較於尚未延遲的時脈CLK而言,而連續的兩次延遲,其預設時間的差值為T/8。為了說明方便,以n等於4為例,圖5中資料觸發訊號DQS的前置部分tRPRE的右半邊被劃分為4等分,則每一等分即為T/8;步驟S830:依據延遲後之時脈CLK調整DQS致能訊號DQS_En之致能時間點。以圖5為例,在粗調程序中找到時脈邊緣(m-1)後,在微調程序中經過上一步驟的第一次延遲(即延遲預設時間T/8),時脈邊緣(m-1)的位置來到中間點P右方之第四個區間。此步驟便以此時間點來作為DQS致能訊號DQS_En之致能時間點;步驟S840:依據DQS致能訊號DQS_En取樣資料觸發訊號DQS而產生延遲後之取樣結果。依據上一步驟所產生的DQS致能訊號DQS_En來取樣資料觸發訊號DQS,將得到延遲後的取樣結果為0(即中間點P右方之第四個區間的值);以及步驟S850:依據預設時間及延遲後之取樣結果決定DQS致能訊號DQS_En之致能時間點。當延遲後之取樣結果不等於預設值1,則將重覆上述的步驟S820~S840,直到延遲後之取樣結果等於預設值1。如圖5所示,當第二次延遲時脈CLK(預設時間為T/4),即發生延遲後之取樣結果等於預設值1。此時將以時脈邊緣(m-1)之前一個時脈邊緣(即時脈邊緣(m-2))的時間點,加上預設時間作為DQS致能訊號DQS_En的致能時間點。然而如圖6的情形,直到第四次的延遲(預設時間為T/2),延遲後之取樣結果才等於預設值1,此時仍將時脈邊緣(m-2)的時間點延遲預設時間作為DQS致能訊號DQS_En的致能時間點。然而時脈邊緣(m-1)與時脈邊緣(m-2)的差距正好為T/2,因此可以歸納出,當進行到第(n-1)次(此例n等於4)的延遲,延遲後之取樣結果仍不等於預設值1時,則可以時脈邊緣(m-1)的時間點作為DQS致能訊號DQS_En的致能時間點。
綜上所述,經過圖8的微調程序,DQS致能訊號DQS_En的致能時間點將更接近資料觸發訊號DQS的前置部分tRPRE的中間點P。如此系統更能抵抗電壓、溫度、製程等影響,得以高速讀取DDR SDRAM的資料。
由於本技術領域具有通常知識者可藉由圖3之裝置發明的揭露內容來瞭解圖7至圖8之方法發明的實施細節與變化。因此,為避免贅文,在不影響該方法發明之揭露要求及可實施性的前提下,重複之說明在此予以節略。請注意,前揭圖示中,元件之形狀、尺寸、比例以及步驟之順序等僅為示意,係供本技術領域具有通常知識者瞭解本發明之用,非用以限制本發明。另外,本技術領域人士可依本發明之揭露內容及自身的需求選擇性地實施任一實施例之部分或全部技術特徵,或者選擇性地實施複數個實施例之部分或全部技術特徵之組合,藉此增加本發明實施時的彈性。再者,前揭實施例雖以雙倍數據率同步動態隨機存取記憶體之記憶體模組為例,然此並非對本發明之限制,本技術領域人士可依本發明之揭露適當地將本發明應用於其它類型的記憶體控制電路。
雖然本發明之實施例如上所述,然而該些實施例並非用來限定本發明,本技術領域具有通常知識者可依據本發明之明示或隱含之內容對本發明之技術特徵施以變化,凡此種種變化均可能屬於本發明所尋求之專利保護範疇,換言之,本發明之專利保護範圍須視本說明書之請求項所界定者為準。
10、30‧‧‧DDR SDRAM
110、310‧‧‧記憶體控制電路
120、320‧‧‧記憶體模組
312‧‧‧時脈產生電路
314‧‧‧取樣電路
316‧‧‧控制單元
317‧‧‧延遲單元
322‧‧‧阻抗匹配電路
410‧‧‧控制器
412‧‧‧擴展模式暫存器組
S710~S760、S810~S850‧‧‧步驟
110、310‧‧‧記憶體控制電路
120、320‧‧‧記憶體模組
312‧‧‧時脈產生電路
314‧‧‧取樣電路
316‧‧‧控制單元
317‧‧‧延遲單元
322‧‧‧阻抗匹配電路
410‧‧‧控制器
412‧‧‧擴展模式暫存器組
S710~S760、S810~S850‧‧‧步驟
〔圖1〕為習知DDR SDRAM之系統架構圖;〔圖2〕為習知DDR SDRAM之訊號時序圖;〔圖3〕為本發明之記憶體控制電路之功能方塊圖;〔圖4〕為阻抗匹配電路之一實施例的示意圖;〔圖5〕為本發明DDR SDRAM之訊號時序圖;〔圖6〕為本發明DDR SDRAM之另一訊號時序圖;〔圖7〕為本發明之控制記憶體模組之資料讀取程序的方法之粗調程序的流程圖;以及〔圖8〕為本發明之控制記憶體模組之資料讀取程序的方法之微調程序的流程圖。
S710~S760‧‧‧步驟
Claims (20)
- 一種記憶體控制電路,用來控制一記憶體模組之一資料讀取程序,於該資料讀取程序中,該記憶體模組係傳送一資料訊號及用來還原該資料訊號之一資料觸發訊號至該記憶體控制電路,該資料觸發訊號包含一前置部分,該記憶體控制電路包含:一時脈產生電路,用來產生一時脈;一控制單元,耦接該記憶體模組及該時脈產生電路,用來控制該記憶體模組之一阻抗匹配電路及依據該時脈產生一致能訊號;以及一取樣電路,耦接該控制單元,用來依據該致能訊號取樣該資料觸發訊號,以產生一取樣結果;其中,該控制單元先控制該阻抗匹配電路以使得該資料觸發訊號於該前置部分之前維持於一固定準位,再控制該取樣電路依據該致能訊號取樣該資料觸發訊號,並且依據該取樣結果調整該致能訊號之致能時間點,並依據該致能訊號啟動還原該資料訊號之程序。
- 如請求項第1項所述之記憶體控制電路,其中該資料觸發訊號係以差動訊號之方式傳送,該控制單元係控制該阻抗匹配電路使得該記憶體模組用來傳送該差動訊號之兩接腳產生一電壓差,以使該資料觸發訊號於該前置部分開始之前維持於該固定準位。
- 如請求項第1項所述之記憶體控制電路,其中該控制單元更包含:一延遲單元,用來延遲該時脈;其中該控制單元係利用該延遲單元將該時脈延遲一預設時間,並依據該延遲後之時脈調整該致能訊號之致能時間點,進而控制該取樣電路依據該致能訊號取 樣該資料觸發訊號而產生一延遲後之取樣結果,並且該控制單元依據該預設時間及該延遲後之取樣結果決定該致能訊號之致能時間點。
- 如請求項第3項所述之記憶體控制電路,其中該控制單元係於延遲該時脈之前控制該阻抗匹配電路使該資料觸發訊號於該前置部分開始之前不維持於該固定準位。
- 如請求項第3項所述之記憶體控制電路,其中該時脈之兩相鄰時脈邊緣之時間間隔為T,該預設時間係為kT/n,n為大於1之正整數,k為大於等於1且小於n之正整數。
- 如請求項第3項所述之記憶體控制電路,其中該控制單元係依據該時脈之複數個時脈邊緣依序調整該致能訊號之致能時間點,並且該取樣電路得到複數個取樣結果,該控制單元進而依據該複數個取樣結果得知符合一預設值之取樣結果所對應之一目標時脈邊緣,並且依據該目標時脈邊緣調整該致能訊號之致能時間點。
- 如請求項第6項所述之記憶體控制電路,其中若該目標時脈邊緣係為該時脈之第m個時脈邊緣,該控制單元係調整該致能訊號之致能時間點使其接近第(m-1)時脈邊緣,m為大於1之正整數。
- 如請求項第7項所述之記憶體控制電路,其中該延遲後之取樣結果係對應第(m-1)時脈邊緣。
- 如請求項第8項所述之記憶體控制電路,其中當該延遲後之取樣結果等於該預設值時,該控制單元係以第(m-2)時脈邊緣延遲該預設時間之時間點作為該致能訊號之致能時間點。
- 如請求項第1項所述之記憶體控制電路,其中該記憶體模組係為雙倍數據率同步動態隨機存取記憶體之記憶體模組。
- 一種控制一記憶體模組之一資料讀取程序之方法,於該資料讀取程序中,該記憶體模組係傳送一資料訊號及用來還原該資料訊號之一資料觸發訊號,該資料觸發訊號包含一前置部分,該方法包含:控制該記憶體模組之一阻抗匹配電路,使該資料觸發訊號於該前置部分之前維持於一固定準位;產生一時脈;依據該時脈產生一致能訊號;依據該致能訊號取樣該資料觸發訊號,以產生一取樣結果;依據該取樣結果調整該致能訊號之致能時間點;以及依據該致能訊號啟動還原該資料訊號之程序。
- 如請求項第11項所述之方法,其中該資料觸發訊號係以差動訊號之方式傳送,該控制該阻抗匹配電路之步驟係控制該阻抗匹配電路使該記憶體模組之用來傳送該差動訊號之兩接腳產生一電壓差,以使得該資料觸發訊號於該前置部分開始之前維持於該固定準位。
- 如請求項第11項所述之方法,更包含:延遲該時脈一預設時間;依據該延遲後之時脈調整該致能訊號之致能時間點;依據該致能訊號取樣該資料觸發訊號而產生一延遲後之取樣結果;以及依據該預設時間及該延遲後之取樣結果決定該致能訊號之致能時間點。
- 如請求項第13項所述之方法,更包含:控制該阻抗匹配電路使該資料觸發訊號於該前置部分開始之前不維持於該固定準位。
- 如請求項第13項所述之方法,其中該時脈之兩相鄰時脈邊緣之時間間隔為T,該預設時間係為kT/n,n為大於1之正整數,k為大於等於1且小於n之正整數。
- 如請求項第13項所述之方法,其中該依據該時脈產生該致能訊號之步驟係包含:依據該時脈之複數個時脈邊緣依序調整該致能訊號之致能時間點;則該依據該致能訊號取樣該資料觸發訊號之步驟係得到複數個取樣結果,且該依據該取樣結果調整該致能訊號之致能時間點之步驟係包含:依據該複數個取樣結果找出符合一預設值之取樣結果所對應之一目標時脈邊緣,並且依據該目標時脈邊緣調整該致能訊號之致能時間點。
- 如請求項第16項所述之方法,其中若該目標時脈邊緣係為該時脈之第m個時脈邊緣,該依據該目標時脈邊緣調整該致能訊號之致能時間點之步驟係調整該致能訊號之致能時間點使其接近第(m-1)時脈邊緣,m為大於1之正整數。
- 如請求項第17項所述之方法,其中該延遲後之取樣結果係對應第(m-1)時脈邊緣。
- 如請求項第18項所述之方法,其中該依據該預設時間及該延遲後之取樣結果決定該致能訊號之致能時間點之步驟係包含:當該延遲後之取樣結果等於該預設值時,以第(m-2)時脈邊緣延遲該預設時間之時間點作為該致能訊號之致能時間點。
- 如請求項第11項所述之方法,其中該記憶體模組係為雙倍數據率同步動態隨機存取記憶體之記憶體模組。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102129068A TWI521508B (zh) | 2013-08-13 | 2013-08-13 | 記憶體控制電路與控制記憶體模組之資料讀取程序之方法 |
US14/326,869 US9135980B2 (en) | 2013-08-13 | 2014-07-09 | Memory control circuit and method of controlling data reading process of memory module |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW102129068A TWI521508B (zh) | 2013-08-13 | 2013-08-13 | 記憶體控制電路與控制記憶體模組之資料讀取程序之方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201506928A TW201506928A (zh) | 2015-02-16 |
TWI521508B true TWI521508B (zh) | 2016-02-11 |
Family
ID=52466739
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW102129068A TWI521508B (zh) | 2013-08-13 | 2013-08-13 | 記憶體控制電路與控制記憶體模組之資料讀取程序之方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9135980B2 (zh) |
TW (1) | TWI521508B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10643685B1 (en) | 2018-11-01 | 2020-05-05 | Realtek Semiconductor Corporation | Control circuit, sampling circuit for synchronous dynamic random-access memory, method of reading procedure and calibration thereof |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9577854B1 (en) * | 2015-08-20 | 2017-02-21 | Micron Technology, Inc. | Apparatuses and methods for asymmetric bi-directional signaling incorporating multi-level encoding |
TWI582790B (zh) * | 2015-10-02 | 2017-05-11 | 智原科技股份有限公司 | 雙倍資料率閘控方法與裝置 |
US10978118B1 (en) * | 2019-11-13 | 2021-04-13 | Realtek Semiconductor Corporation | DDR SDRAM signal calibration device and method |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4450586B2 (ja) * | 2003-09-03 | 2010-04-14 | 株式会社ルネサステクノロジ | 半導体集積回路 |
US7171321B2 (en) * | 2004-08-20 | 2007-01-30 | Rambus Inc. | Individual data line strobe-offset control in memory systems |
JP5013394B2 (ja) * | 2005-09-13 | 2012-08-29 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
US7685393B2 (en) | 2006-06-30 | 2010-03-23 | Mosaid Technologies Incorporated | Synchronous memory read data capture |
US8159887B2 (en) * | 2007-04-19 | 2012-04-17 | Rambus Inc. | Clock synchronization in a memory system |
KR101789077B1 (ko) | 2010-02-23 | 2017-11-20 | 삼성전자주식회사 | 온-다이 터미네이션 회로, 데이터 출력 버퍼, 반도체 메모리 장치, 메모리 모듈, 온-다이 터미네이션 회로의 구동 방법, 데이터 출력 버퍼의 구동 방법 및 온-다이 터미네이션 트레이닝 방법 |
US8270235B2 (en) * | 2010-06-04 | 2012-09-18 | Xilinx, Inc. | Dynamic detection of a strobe signal within an integrated circuit |
-
2013
- 2013-08-13 TW TW102129068A patent/TWI521508B/zh active
-
2014
- 2014-07-09 US US14/326,869 patent/US9135980B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10643685B1 (en) | 2018-11-01 | 2020-05-05 | Realtek Semiconductor Corporation | Control circuit, sampling circuit for synchronous dynamic random-access memory, method of reading procedure and calibration thereof |
Also Published As
Publication number | Publication date |
---|---|
US20150049562A1 (en) | 2015-02-19 |
US9135980B2 (en) | 2015-09-15 |
TW201506928A (zh) | 2015-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10482936B2 (en) | Signal training for prevention of metastability due to clocking indeterminacy | |
US7816941B2 (en) | Circuit and method for controlling termination impedance | |
CN110870010B (zh) | 在ddr5 dram中调整到锁存路径的指令延迟 | |
US8208321B2 (en) | Apparatus and method for data strobe and timing variation detection of an SDRAM interface | |
US9105327B2 (en) | Memory controller using a data strobe signal and method of calibrating data strobe signal in a memory controller | |
US9025410B2 (en) | Semiconductor memory devices and semiconductor system having parameters, and methods of testing the same | |
US8674734B2 (en) | Synchronous semiconductor device having delay locked loop for latency control | |
JP2005322374A (ja) | 周波数変化によってデータの出力タイミングを制御するための半導体メモリ装置 | |
US8982650B2 (en) | Memory interface circuit and timing adjusting method | |
TWI521508B (zh) | 記憶體控制電路與控制記憶體模組之資料讀取程序之方法 | |
JP5577776B2 (ja) | メモリ制御装置及びマスクタイミング制御方法 | |
US6760263B2 (en) | Method and device for controlling data latch time | |
WO2019125525A1 (en) | Management of strobe/clock phase tolerances during extended write preambles | |
KR102016532B1 (ko) | 반도체 장치 및 그의 구동방법 | |
US10978118B1 (en) | DDR SDRAM signal calibration device and method | |
TWI694462B (zh) | 記憶體控制電路及校正方法 | |
JP2013109637A (ja) | メモリインターフェース回路、および、そのメモリインターフェース回路の動作方法 | |
CN116137164A (zh) | Ddr sdram信号校准装置与方法 | |
WO2019160581A1 (en) | Systems and methods for generating stagger delays in memory devices | |
US7886176B1 (en) | DDR memory system for measuring a clock signal by identifying a delay value corresponding to a changed logic state during clock signal transitions | |
CN104424984B (zh) | 存储器控制电路与控制存储器模块的数据读取程序的方法 | |
KR102006239B1 (ko) | 데이터 출력 회로 | |
JP5708258B2 (ja) | 受信回路、システム装置、及びタイミング調整方法 | |
CN208939923U (zh) | 延时锁相环电路及半导体存储器 | |
KR102119078B1 (ko) | 출력 인에이블 신호 생성 회로 |