TWI739422B - 記憶體控制器裝置與相位校正方法 - Google Patents
記憶體控制器裝置與相位校正方法 Download PDFInfo
- Publication number
- TWI739422B TWI739422B TW109115679A TW109115679A TWI739422B TW I739422 B TWI739422 B TW I739422B TW 109115679 A TW109115679 A TW 109115679A TW 109115679 A TW109115679 A TW 109115679A TW I739422 B TWI739422 B TW I739422B
- Authority
- TW
- Taiwan
- Prior art keywords
- signal
- detection
- clock signal
- phase
- clock
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/12015—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising clock generation or timing circuitry
-
- 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
- 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
-
- 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/4093—Input/output [I/O] data interface arrangements, e.g. data buffers
-
- 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/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1093—Input synchronization
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
- G11C7/222—Clock generating, synchronizing or distributing circuits within memory device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2254—Calibration
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/022—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/023—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- 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/1078—Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
- G11C7/1084—Data input buffers, e.g. comprising level conversion circuits, circuits for adapting load
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Hardware Design (AREA)
- Dram (AREA)
- Synchronisation In Digital Transmission Systems (AREA)
Abstract
記憶體控制器裝置包含延遲線電路系統、多個資料取樣電路、多個相位偵測電路以及控制邏輯電路。延遲線電路系統延遲資料選通訊號以產生第一至第三時脈訊號,其中第二時脈訊號用來讀取資料訊號,且第一至第三時脈訊號之相位依序相差一預定值。每一資料取樣電路根據第一至第三時脈訊號中一對應者對資料訊號取樣,以產生第一至第三訊號中的對應者。多個相位偵測電路比較第一訊號與第二訊號以產生第一偵測訊號,並比較第三訊號與第二訊號以產生第二偵測訊號。控制邏輯電路根據第一偵測訊號與第二偵測訊號調整第一至第三時脈訊號。
Description
本案是關於記憶體控制器裝置,尤其是關於可不使用類比式的鎖相迴路之資料讀取電路與相位校正方法。
在一些常見的記憶體中,其讀寫操作是根據資料選通(data strobe)訊號執行。為了可正確讀取記憶體內儲存的資料,資料選通訊號的相位需對齊資料窗口。然而,隨著操作條件(例如:溫度、電壓)的變化,資料選通訊號的相位會漂移,造成讀到不正確的資料。
於一些實施例中,記憶體控制器裝置包含延遲線電路系統、複數個資料取樣電路、複數個相位偵測電路以及控制邏輯電路。延遲線電路系統用以延遲資料選通(data strobe)訊號以產生第一時脈訊號、第二時脈訊號以及第三時脈訊號,其中第二時脈訊號用來讀取資料訊號,且第一時脈訊號之相位、第二時脈訊號之相位與第三時脈訊號之相位依序相差一預定值。該些資料取樣電路中每一者用以根據第一時脈訊號、第二時脈訊號與第三時脈訊號中之一對應者對資料訊號取樣,以產生第一訊號、第二訊號以及第三訊號中之對應者。複數個相位偵測電路用以比較第一訊號與該第二訊號以產生第一偵測訊號,並比較第三訊號與第二訊號以產生第二偵測訊號。控制邏輯電路用以根據第一偵測訊號與第二偵測訊號調整第一時脈訊號、第二時脈訊號與第三時脈訊號。
於一些實施例中,相位校正方法包含下列操作:延遲資料選通訊號以產生第一時脈訊號、第二時脈訊號以及第三時脈訊號,其中第二時脈訊號用來讀取一資料訊號,且第一時脈訊號之相位、第二時脈訊號之相位與第三時脈訊號之相位依序相差預定值;根據第一時脈訊號、第二時脈訊號與第三時脈訊號中之對應者對該資料訊號取樣,以產生第一訊號、第二訊號以及第三訊號中之對應者;比較第一訊號與第二訊號以產生第一偵測訊號,並比較第三訊號與第二訊號以產生第二偵測訊號;以及根據第一偵測訊號與第二偵測訊號調整第一時脈訊號、第二時脈訊號與第三時脈訊號。
有關本案的特徵、實作與功效,茲配合圖式作較佳實施例詳細說明如下。
本文所使用的所有詞彙具有其通常的意涵。上述之詞彙在普遍常用之字典中之定義,在本案的內容中包含任一於此討論的詞彙之使用例子僅為示例,不應限制到本案之範圍與意涵。同樣地,本案亦不僅以於此說明書所示出的各種實施例為限。
關於本文中所使用之『耦接』或『連接』,均可指二或多個元件相互直接作實體或電性接觸,或是相互間接作實體或電性接觸,亦可指二或多個元件相互操作或動作。如本文所用,用語『電路系統(circuitry)』可為由至少一電路(circuit)所形成的單一系統,且用語『電路』可為由至少一個電晶體與/或至少一個主被動元件按一定方式連接以處理訊號的裝置。
如本文所用,用語『與/或』包含了列出的關聯項目中的一個或多個的任何組合。在本文中,使用第一、第二與第三等等之詞彙,是用於描述並辨別各個元件。因此,在本文中的第一元件也可被稱為第二元件,而不脫離本案的本意。為易於理解,於各圖式中的類似元件將被指定為相同標號。
圖1A為根據本案一些實施例繪製一種電子系統100的示意圖。於一些實施例中,電子系統100可為有使用記憶體的各種類型的電子裝置(例如:電腦、智慧型手機等等)。電子系統100包含處理電路110、記憶體控制器裝置120以及記憶體130。
於一些實施例中,處理電路110可為中央處理器電路、微處理器電路等具有可執行軟體的運算能力之電路。於一些實施例中,處理電路110可為各種類型的資料處理晶片。處理電路110可經由記憶體控制器裝置120自記憶體130讀取資料訊號DQ。記憶體控制器裝置120可操作為處理電路110與記憶體130之間的一介面電路,其可用以根據來自記憶體130的資料選通(data strobe)訊號DQS產生時脈訊號CLK2(如圖1B所示)。記憶體控制器裝置120可自動調整時脈訊號CLK2之相位,並根據時脈訊號CLK2來讀取資料訊號DQ的資料以輸出為訊號S2至處理電路110。藉由記憶體控制器裝置120之操作,可確保處理電路110能夠藉由讀取訊號S2以獲得資料訊號DQ中的有效資料。
於一些實施例中,記憶體130可為雙倍資料率(double data rate, DDR)同步動態隨機存取記憶體。於一些實施例中,記憶體130可為單一資料率(single data rate, SDR)同步動態隨機存取記憶體。上述關於記憶體130的類型用於示例,且本案並不以此為限。於其他實施例中,記憶體130可為使用資料選通訊號DQS來讀/寫資料的各種記憶體。
圖1B為根據本案一些實施例繪製圖1A中相關訊號的波形示意圖。於此例中,記憶體130為DDR同步動態隨機存取記憶體。在DDR同步動態隨機存取記憶體的讀寫操作中,資料選通訊號DQS不是與資料訊號DQ為邊緣對齊(edge-aligned)就是與資料訊號DQ為中央對齊(center-aligned)。
例如,在資料寫入的操作中,記憶體130根據資料選通訊號DQS的正緣與負緣各儲存一筆資料。例如,記憶體130在資料選通訊號DQS的正緣P1儲存資料D0,並在資料選通訊號DQS的負緣N1儲存資料D1。依此類推,記憶體130依序在正緣P2與負緣N2儲存資料D2與資料D3。
或者,在資料讀取操作中,記憶體130發送資料選通訊號DQS與資料訊號DQ至處理電路110,且處理電路110可透過軟體(或韌體)延遲資料選通訊號DQS一預定時間Texp以產生時脈訊號CLK2。藉由延遲預定時間Texp,時脈訊號CLK2之相位與資料訊號DQ之間具有約90度的相位差。如此,時脈訊號CLK2之正緣與負緣可對齊資料D0~D3之中央。記憶體控制器裝置120可根據時脈訊號CLK2之正緣或負緣讀取資料訊號DQ,以輸出資料訊號DQ中的有效資料為訊號S2至處理電路110。於一些實施例中,記憶體控制器裝置120可自動調節時脈訊號CLK2之相位,以避免時脈訊號CLK2之相位因操作條件(例如:溫度、電壓等等)變化產生漂移。如此,可確保處理電路110可穩定地讀取到資料訊號DQ的有效資料。
圖2為根據本案一些實施例繪製圖1A中記憶體控制器裝置120的示意圖。於一些實施例中,記憶體控制器裝置120包含延遲線電路系統210、多個資料取樣電路220、222與224、多個相位偵測電路230與232以及控制邏輯電路240。
延遲線電路系統210自記憶體130接收資料選通訊號DQS,並用以延遲資料選通訊號DQS以產生時脈訊號CLK1、時脈訊號CLK2以及時脈訊號CLK3。時脈訊號CLK1之相位、時脈訊號CLK2之相位與時脈訊號CLK3之相位依序相差一預定值j。舉例來說,若時脈訊號CLK2之相位表示為n,時脈訊號CLK1之相位可表示為n-j,且時脈訊號CLK3之相位可表示為n+j。換言之,時脈訊號CLK1之相位落後時脈訊號CLK2之相位一預設值j,且時脈訊號CL3之相位領先時脈訊號CLK2之相位一預設值j。於一些實施例中,相位n以及預設值j中每一者可表示為一資料值,控制邏輯電路240可根據這些資料值更新選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3。延遲線電路系統210可根據選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3調整時脈訊號CLK1、時脈訊號CLK2以及時脈訊號CLK3。
多個資料取樣電路220、222與224中每一者用以根據時脈訊號CLK1、時脈訊號CLK2以及時脈訊號CLK2中一對應者對資料訊號DQ取樣,以產生訊號S1、訊號S2與訊號S3中一對應者。詳細而言,資料取樣電路220可根據時脈訊號CLK1的正緣(與/或負緣)觸發以將資料訊號DQ輸出為訊號S1。資料取樣電路222可根據時脈訊號CLK2的正緣(與/或負緣)觸發以將資料訊號DQ輸出為訊號S2,並提供訊號S2至圖1A的處理電路110。換言之,如先前圖1A所述,時脈訊號CLK2是用來讀取資料訊號DQ。資料取樣電路224可根據時脈訊號CLK3的正緣(與/或負緣)觸發以將資料訊號DQ輸出為訊號S3。
於一些實施例中,多個資料取樣電路220、222以及224中每一者可由(但不限於)一D型正反器電路實施。上述關於多個資料取樣電路220、222以及224的實施方式用於示例,各種可根據時脈訊號來擷取當前資料的取樣電路皆為本案所涵蓋之範圍。
多個相位偵測電路230與232用以比較訊號S1與訊號S2以產生偵測訊號D1,並比較訊號S3與訊號S2以產生偵測訊號D2。舉例而言,相位偵測電路230可用以比較訊號S1與訊號S2。若訊號S1相同於訊號S2,相位偵測電路230可輸出具有第一邏輯值(例如為邏輯值1)的偵測訊號D1。或者,若訊號S1不同於訊號S2,相位偵測電路230可輸出具有第二邏輯值(例如為邏輯值0)的偵測訊號D1。類似地,相位偵測電路232可用以比較訊號S3與訊號S2。若訊號S3相同於訊號S2,相位偵測電路232可輸出具有第一邏輯值的偵測訊號D2。或者,若訊號S3不同於訊號S2,相位偵測電路232可輸出具有第二邏輯值的偵測訊號D2。
於一些實施例中,多個相位偵測電路230與232中每一者可由(但不限於)反互斥或(XNOR)閘實施。上述關於多個相位偵測電路230與232的實施方式用於示例,各種可判斷資料值異同之偵測電路皆為本案所涵蓋之範圍。
控制邏輯電路240用以根據偵測訊號D1與偵測訊號D2調整時脈訊號CLK1、時脈訊號CLK2以及時脈訊號CLK3,以確保時脈訊號CLK2之相位可以穩定地對齊於資料訊號DQ中資料有效區間的中央。於一些實施例中,控制邏輯電路240用以根據偵測訊號D1與偵測訊號D2輸出選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3。關於此處之說明將於後參照圖2至圖5說明。
於一些實施例中,控制邏輯電路240可包含至少一暫存器,其可用以儲存預設最大值j_max、預設最小值j_min以及預設最大值n_max。其中預設最大值j_max、預設最小值j_min用於設定前述的預設值j的範圍,且預設最大值n_max用於設定時脈訊號CLK2的相位n之上限。於一些實施例中,上述多個數值可由處理電路110執行之軟體自動設定,或是由使用者直接輸入。於一些實施例中,此些數值可用以調整追蹤時脈訊號CLK2之相位的速度。
於一些實施例中,控制邏輯電路240可由至少一數位電路實施。於一些實施例中,前述的至少一數位電路可用以執行對應於後述圖4A之操作S420至操作S450的一狀態機。於一些實施例中,前述的至少一數位電路可為(但不限於)數位訊號處理電路、微控制器等等。
圖3為根據本案一些實施例繪製圖2中延遲線電路系統210的示意圖。於一些實施例中,延遲線電路系統210包含多個緩衝器電路310與多個多工器電路320、330以及340。多個緩衝器電路310依序串聯耦接,以延遲資料選通訊號DQS。多個緩衝器電路310的多個輸出訊號O1~Om傳輸至多個多工器電路320、330以及340中每一者。多個多工器電路320、330以及340中每一者可根據選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL中一對應者將多個輸出訊號O1~Om的一對應者輸出為時脈訊號CLK1、時脈訊號CLK2以及時脈訊號CLK3中一對應者。
舉例來說,多工器電路330可根據選擇訊號SEL2將多個輸出訊號O1~Om中的輸出訊號On輸出為時脈訊號CLK2。多工器電路320可根據選擇訊號SEL1將多個輸出訊號O1~Om中的輸出訊號On-j(圖中未示出)輸出為時脈訊號CLK1。多工器電路340可根據選擇訊號SEL3將多個輸出訊號O1~Om中的輸出訊號On+j(圖中未示出)輸出為時脈訊號CLK3。換言之,若一個緩衝器電路310引入一個延遲時間T,時脈訊號CLK2可視為資料選通訊號DQS經過n個緩衝器電路310延遲後的訊號。依此類推,時脈訊號CLK1可視為資料選通訊號DQS經過n-j個緩衝器電路310延遲後的訊號,且時脈訊號CLK3可視為資料選通訊號DQS經過n+j個緩衝器電路310延遲後的訊號。於一些實施例中,處理電路110可透過軟體(或韌體)選出n個緩衝器電路310,並經由該n個緩衝器電路310延遲資料選通訊號DQS以產生時脈訊號CLK2。換言之,圖1B中的預定時間Texp相當於n個延遲時間T之總和。
一併參照圖2、圖4A、圖4B與圖5,以說明記憶體控制器裝置120之操作。圖4A為根據本案一些實施例繪製一種相位校正方法400的流程圖,圖4B為根據本案一些實施例繪製圖4A中的操作S450之流程圖,且圖5為根據本案一些實施例繪製圖2中之相關波形的示意圖。於一些實施例中,相位校正方法400可由(但不限於)圖2的控制邏輯電路240執行。
於操作S410,在電子系統100上電(powered)後,自動校正時脈訊號CLK2之相位為相位n。例如,當電子系統100上電時,處理電路110可執行一軟體以發出一重置指令(圖中未示出)至延遲線電路系統210。響應於此重置指令,延遲線電路系統210可對資料選通訊號DQS延遲一預定時間Texp,以產生具有相位n的時脈訊號CLK2,其中相位n與資料選通訊號DQS的相位相差約為90度(如先前圖1B所示)。
於操作S420,延遲資料選通訊號DQS並根據選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3產生時脈訊號CLK1、時脈訊號CLK2以及時脈訊號CLK3。於操作S430,根據時脈訊號CLK1對資料訊號DQ取樣以產生訊號S1,根據時脈訊號CLK2對資料訊號DQ取樣以產生訊號S2,並根據時脈訊號CLK3對資料訊號DQ取樣以產生訊號S3。於操作S440,比較訊號S1與訊號S2以產生偵測訊號D1,並比較訊號S3與訊號S2以產生偵測訊號D2。操作S420、操作S430以及操作S440可參照前述圖2與圖3之說明,故於此不再重複贅述。
於操作S450,根據偵測訊號D1與偵測訊號D2更新選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3,以調整時脈訊號CLK1的相位、時脈訊號CLK2的相位與時脈訊號CLK3的相位。藉由重複地執行操作S420至操作S450,記憶體控制器裝置120可自動地調整時脈訊號CLK的相位,以確保處理電路110可穩定地讀取有效資料。
為理解操作S450,參照圖4B與圖5,操作S450可包含多個步驟S1-1~S1-4、S2-1~S2-3、S3-1~S3-3以及S4-1~S4-5。
於步驟S1-1中,保持相位n。於步驟S1-2中,確認預設值j是否為預設最大值j_max。若預設值j不為預設最大值j_max,則執行步驟S1-3。於步驟S1-3,增加預設值j。若預設值j為預設最大值j_max,執行步驟S1-4。於步驟S1-4中,更新選擇訊號SEL1、選擇訊號SEL2與選擇訊號SEL3。
舉例來說,如圖5所示,在第一情形中,時脈訊號CLK1之相位n-j、時脈訊號CLK2之相位n以及時脈訊號CLK3之相位n+j所對應的取樣點皆落入資料訊號DQ中的資料有效區間(即靠近資料窗口(data window)的中央區域)。於此條件下,訊號S2會相同於訊號S1與訊號S3中每一者,故偵測訊號D1與偵測訊號D2皆具有第一邏輯值。響應於此偵測訊號D1與偵測訊號D2,控制邏輯電路240可保持相位n(即步驟S1-1),並逐漸增加預定值j至預設最大值j_max(即步驟S1-2至步驟S1-4),以增加資料取樣的邊界(margin)。如此,多個取樣點可盡量涵蓋資料有效區間的整體範圍。
繼續參照圖4B,於步驟S2-1中,保持預設值j。於步驟S2-2中,減少相位n。於步驟S2-3中,更新選擇訊號SEL1、選擇訊號SEL2與選擇訊號SEL3。舉例來說,如圖5所示,在第二情形中,時脈訊號CLK1之相位n-j與時脈訊號CLK2之相位n所對應的多個取樣點皆落入資料訊號DQ中的資料有效區間,而時脈訊號CLK3之相位n+j對應的取樣點落入資料訊號DQ中的資料模糊區(以點狀區域表示,即為靠近轉態邊緣的區域)。於此條件下,訊號S2會相同於訊號S1且不同於訊號S3,故偵測訊號D1具有第一邏輯值且偵測訊號D2具有第二邏輯值。響應於此偵測訊號D1與偵測訊號D2,控制邏輯電路240可保持預設值j(即步驟S2-1)並左移相位n(即步驟S2-2)。如此,可將多個取樣點修正回資料有效區間。
繼續參照圖4B,於步驟S3-1中,保持預設值j。於步驟S3-2中,增加相位n。於步驟S3-3中,更新選擇訊號SEL1、選擇訊號SEL2與選擇訊號SEL3。舉例來說,如圖5所示,在第三情形中,時脈訊號CLK1之相位n-j所對應的取樣點落入資料訊號DQ中的資料模糊區,且時脈訊號CLK2之相位n以及時脈訊號CLK3之相位n+j所對應的多個取樣點皆落入資料有效區間。於此條件下,訊號S2會相同於訊號S3且不同於訊號S1,故偵測訊號D1具有第二邏輯值且偵測訊號D2具有第一邏輯值。響應於此偵測訊號D1與偵測訊號D2,控制邏輯電路240可保持預設值j(即步驟S3-1)並右移相位n(即步驟S3-2)。如此,可將多個取樣點修正回資料有效區間。換言之,當訊號S2不同於訊號S1與訊號S3中一者且相同於訊號S1與訊號S3中之另一者時(即第二情形或第三情形),控制邏輯電路240可藉由平移時脈訊號CLK2之相位n,以確保可取樣到有效資料。
繼續參照圖4B,於步驟S4-1中,保持相位n,並將預設值j設定為預設最小值j_min。於步驟S4-2中,更新選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3。於步驟S4-3,根據次一階段(next cycle)收到的偵測訊號D1與偵測訊號D2判斷訊號S2是否相同於訊號S1與訊號S3。若訊號S2不同於訊號S1與訊號S3中每一者,執行步驟S4-4。若訊號S2相同於訊號S1與訊號S3每一者,執行步驟S4-5。於步驟S4-4,重置相位n。於步驟S4-5,更新選擇訊號SEL1、選擇訊號SEL2與選擇訊號SEL3。
舉例來說,如圖5所示,第四情形可發生於兩種條件下。於第一條件下,相位n出錯而使至少兩個取樣點(包含對應於相位n的取樣點)落入資料模糊區。於第二條件下,預設值j太大而使得時脈訊號CLK1之相位n-j及時脈訊號CLK3之相位n+j所對應的多個取樣點落入資料模糊區。於此兩種條件下,訊號S2將不同於訊號S1與訊號S3中每一者,故偵測訊號D1與偵測訊號D2皆具有第二邏輯值。響應於此偵測訊號D1與偵測訊號D2,控制邏輯電路240可保持相位n,並將預設值j設為預設最小值j_min(即步驟S4-1),並根據次一階段收到的偵測訊號D1與偵測訊號D2判斷訊號S2是否相同於訊號S1與訊號S3(即步驟S4-2與步驟S4-3)。
應當理解,若預設值j已為預設最小值j_min而後續的訊號S2仍不同於訊號S1與訊號S3中每一者,代表相位n出錯,使得至少有兩個取樣點(包含對應於相位n之取樣點)仍位於資料模糊區(即出現前述的第一條件)。於此條件下,偵測訊號D1與偵測訊號D2仍具有第二邏輯值。響應於此偵測訊號D1與偵測訊號D2,控制邏輯電路240可重置相位n(即步驟S4-4),以將多個取樣點修正回資料有效區間。或者,若預設值j已為預設最小值j_min且後續的訊號S2已相同於訊號S1與訊號S3中每一者,代表先前的預設值j過大(即出現前述的第二條件)。於此條件下,偵測訊號D1與偵測訊號D2皆具有第一邏輯值,此時可根據當前的相關參數更新選擇訊號SEL1、選擇訊號SEL2以及選擇訊號SEL3。換言之,藉由減少預設值j,已足夠將多個取樣點修正回資料有效區間。
上述多個操作僅為示例,並非限定需依照此示例中的順序執行。在不違背本案的各實施例的操作方式與範圍下,在相位校正方法400下的各種操作當可適當地增加、替換、省略或以不同順序執行。或者,在相位校正方法400下的一或多個操作可以是同時或部分同時執行。
綜上所述,本案一些實施例中之記憶體控制器裝置與相位校正方法可不需採用鎖相迴路等類比電路來自動調節用於讀取資料訊號之時脈訊號的相位。如此,可簡化電路佈局與相位調節機制。另外,於本案一些實施例中,可透過軟體方式設定用於相位追蹤的相關參數,故具有較高的使用彈性。
雖然本案之實施例如上所述,然而該些實施例並非用來限定本案,本技術領域具有通常知識者可依據本案之明示或隱含之內容對本案之技術特徵施以變化,凡此種種變化均可能屬於本案所尋求之專利保護範疇,換言之,本案之專利保護範圍須視本說明書之申請專利範圍所界定者為準。
100:電子系統
110:處理電路
120:記憶體控制器裝置
130:記憶體
CLK1~CLK3:時脈訊號
D0~D3:資料
DQ:資料訊號
DQS:資料選通訊號
N1, N2:負緣
P1, P2:正緣
S1~S3:訊號
Texp:預定時間
210:延遲線電路系統
220, 222, 224:資料取樣電路
230, 232:相位偵測電路
240:控制邏輯電路
j_max:預設最大值
j_min:預設最小值
n_max:預設最大值
SEL1~SEL3:選擇訊號
310:緩衝器電路
320, 330, 340:多工器電路
O1~Om:輸出訊號
T:延遲時間
400:相位校正方法
S410, S420, S430, S440, S450:操作
S1-1~S1-4, S2-1~S2-3, S3-1~S3-3, S4-1~S4-5:步驟
n:相位
j:預設值
[圖1A]為根據本案一些實施例繪製一種電子系統的示意圖;
[圖1B]為根據本案一些實施例繪製圖1A中相關訊號的波形示意圖;
[圖2]為根據本案一些實施例繪製圖1A中記憶體控制器裝置的示意圖;
[圖3]為根據本案一些實施例繪製圖2中延遲線電路系統的示意圖;
[圖4A]為根據本案一些實施例繪製一種相位校正方法的流程圖;
[圖4B]為根據本案一些實施例繪製圖4A中之一操作的流程圖;以及
[圖5]為根據本案一些實施例繪製圖2中之相關波形的示意圖。
210:延遲線電路系統
220,222,224:資料取樣電路
230,232:相位偵測電路
240:控制邏輯電路
CLK1~CLK3:時脈訊號
DQ:資料訊號
DQS:資料選通訊號
j_max:預設最大值
j_min:預設最小值
n_max:預設最大值
SEL1~SEL3:選擇訊號
S1~S3:訊號
Claims (10)
- 一種記憶體控制器裝置,包含: 一延遲線電路系統,用以延遲一資料選通(data strobe)訊號以產生一第一時脈訊號、一第二時脈訊號以及一第三時脈訊號,其中該第二時脈訊號用來讀取一資料訊號,且該第一時脈訊號之相位、該第二時脈訊號之相位與該第三時脈訊號之相位依序相差一預定值; 複數個資料取樣電路,其中該些資料取樣電路中每一者用以根據該第一時脈訊號、該第二時脈訊號與該第三時脈訊號中之一對應者對該資料訊號取樣,以產生一第一訊號、一第二訊號以及一第三訊號中之一對應者; 複數個相位偵測電路,用以比較該第一訊號與該第二訊號以產生一第一偵測訊號,並比較該第三訊號與該第二訊號以產生一第二偵測訊號;以及 一控制邏輯電路,用以根據該第一偵測訊號與該第二偵測訊號調整該第一時脈訊號、該第二時脈訊號與該第三時脈訊號。
- 如請求項1之記憶體控制器裝置,其中該延遲線電路系統包含: 複數個緩衝器電路,其中該些緩衝器電路依序串聯耦接,並用以延遲該資料選通訊號;以及 複數個多工器電路,其中該些多工器電路每一者用以根據一第一選擇訊號、一第二選擇訊號與一第三選擇訊號中之一對應者將該些緩衝器電路中之一對應者的一輸出訊號輸出為該第一時脈訊號、該第二時脈訊號與該第三時脈訊號中之一對應者, 其中該控制邏輯電路更用以響應於該第一偵測訊號與該第二偵測訊號輸出該第一選擇訊號、該第二選擇訊號與該第三選擇訊號,以調整該第一時脈訊號、該第二時脈訊號與該第三時脈訊號。
- 如請求項1之記憶體控制器裝置,其中若該第二訊號相同於該第一訊號與該第三訊號中每一者,該控制邏輯電路用以響應於該第一偵測訊號與該第二偵測訊號逐漸增加該預定值至一預設最大值。
- 如請求項1之記憶體控制器裝置,其中若該第二訊號相同於該第一訊號與該第三訊號中每一者,該控制邏輯電路用以響應於該第一偵測訊號與該第二偵測訊號保持該第二時脈訊號之相位。
- 如請求項1之記憶體控制器裝置,其中若該第二訊號相同於該第一訊號與該第三訊號中之一者且不同於該第一訊號與該第三訊號中之另一者,該控制邏輯電路用以響應於該第一偵測訊號與該第二偵測訊號平移該第二時脈訊號之相位。
- 如請求項1之記憶體控制器裝置,其中若該第二訊號相同於該第一訊號與該第三訊號中之一者且不同於該第一訊號與該第三訊號中之另一者,該控制邏輯電路用以響應於該第一偵測訊號與該第二偵測訊號保持該預定值。
- 如請求項1之記憶體控制器裝置,其中若該第二訊號不同於該第一訊號與該第三訊號中每一者,該控制邏輯電路用以響應於該第一偵測訊號與該第二偵測訊號將該預設值設定為一預設最小值,並根據於次一階段所接收到的該第一偵測訊號與該第二偵測訊號判斷該第二訊號是否相同於該第一訊號與該第三訊號。
- 如請求項7之記憶體控制器裝置,其中若該控制邏輯電路判斷該第二訊號不同於該第一訊號與該第三訊號中每一者,該控制邏輯電路更用以重置該第二時脈訊號之相位。
- 如請求項1之記憶體控制器裝置,其中該些相位偵測電路包含: 一第一相位偵測電路,用以在該第一訊號相同於該第二訊號時輸出具有一第一邏輯值的該第一偵測訊號,並在該第一訊號不同於該第二訊號時輸出具有一第二邏輯值的該第一偵測訊號;以及 一第二相位偵測電路,用以在該第三訊號相同於該第二訊號時輸出具有該第一邏輯值的該第二偵測訊號,並在該第三訊號不同於該第二訊號時輸出具有該第二邏輯值的該第二偵測訊號。
- 一種相位校正方法,包含: 延遲一資料選通訊號以產生一第一時脈訊號、一第二時脈訊號以及一第三時脈訊號,其中該第二時脈訊號用來讀取一資料訊號,且該第一時脈訊號之相位、該第二時脈訊號之相位與該第三時脈訊號之相位依序相差一預定值; 根據該第一時脈訊號、該第二時脈訊號與該第三時脈訊號中之一對應者對該資料訊號取樣,以產生一第一訊號、一第二訊號以及一第三訊號中之一對應者; 比較該第一訊號與該第二訊號以產生一第一偵測訊號,並比較該第三訊號與該第二訊號以產生一第二偵測訊號;以及 根據該第一偵測訊號與該第二偵測訊號調整該第一時脈訊號、該第二時脈訊號與該第三時脈訊號。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010355459.9 | 2020-04-29 | ||
CN202010355459.9A CN113571118A (zh) | 2020-04-29 | 2020-04-29 | 存储器控制器装置与相位校正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI739422B true TWI739422B (zh) | 2021-09-11 |
TW202141220A TW202141220A (zh) | 2021-11-01 |
Family
ID=78158507
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109115679A TWI739422B (zh) | 2020-04-29 | 2020-05-12 | 記憶體控制器裝置與相位校正方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11302380B2 (zh) |
CN (1) | CN113571118A (zh) |
TW (1) | TWI739422B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI789218B (zh) * | 2022-01-21 | 2023-01-01 | 瑞昱半導體股份有限公司 | 校正資料產生電路及相關方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI311326B (en) * | 2006-12-01 | 2009-06-21 | Realtek Semiconductor Corp | Memory controller and signal synchronizing method thereof |
CN104272283A (zh) * | 2012-05-01 | 2015-01-07 | 马维尔国际贸易有限公司 | 用于dqs选通的系统和方法 |
CN104810054A (zh) * | 2014-01-23 | 2015-07-29 | 三星电子株式会社 | 控制目标模块的写入均衡的电路及其方法 |
WO2017142664A1 (en) * | 2016-02-18 | 2017-08-24 | Intel Corporation | Reconfigurable clocking architecture |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6675272B2 (en) * | 2001-04-24 | 2004-01-06 | Rambus Inc. | Method and apparatus for coordinating memory operations among diversely-located memory components |
US7098714B2 (en) * | 2003-12-08 | 2006-08-29 | Micron Technology, Inc. | Centralizing the lock point of a synchronous circuit |
KR101985457B1 (ko) * | 2012-08-28 | 2019-06-04 | 에스케이하이닉스 주식회사 | 반도체 장치 |
US9245605B2 (en) * | 2013-04-17 | 2016-01-26 | Samsung Electronics Co., Ltd. | Clock synchronization circuit and semiconductor memory device including clock synchronization circuit |
-
2020
- 2020-04-29 CN CN202010355459.9A patent/CN113571118A/zh active Pending
- 2020-05-12 TW TW109115679A patent/TWI739422B/zh active
- 2020-12-14 US US17/120,344 patent/US11302380B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI311326B (en) * | 2006-12-01 | 2009-06-21 | Realtek Semiconductor Corp | Memory controller and signal synchronizing method thereof |
CN104272283A (zh) * | 2012-05-01 | 2015-01-07 | 马维尔国际贸易有限公司 | 用于dqs选通的系统和方法 |
CN104810054A (zh) * | 2014-01-23 | 2015-07-29 | 三星电子株式会社 | 控制目标模块的写入均衡的电路及其方法 |
WO2017142664A1 (en) * | 2016-02-18 | 2017-08-24 | Intel Corporation | Reconfigurable clocking architecture |
CN108475524A (zh) * | 2016-02-18 | 2018-08-31 | 英特尔公司 | 可重配置时钟控制架构 |
Also Published As
Publication number | Publication date |
---|---|
TW202141220A (zh) | 2021-11-01 |
US11302380B2 (en) | 2022-04-12 |
CN113571118A (zh) | 2021-10-29 |
US20210343327A1 (en) | 2021-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10679683B1 (en) | Timing circuit for command path in a memory device | |
KR100902795B1 (ko) | 인터페이스 회로 | |
US6889336B2 (en) | Apparatus for improving output skew for synchronous integrate circuits has delay circuit for generating unique clock signal by applying programmable delay to delayed clock signal | |
US7098714B2 (en) | Centralizing the lock point of a synchronous circuit | |
US7111185B2 (en) | Synchronization device with delay line control circuit to control amount of delay added to input signal and tuning elements to receive signal form delay circuit | |
US6836166B2 (en) | Method and system for delay control in synchronization circuits | |
US9536579B2 (en) | Semiconductor integrated circuit capable of precisely adjusting delay amount of strobe signal | |
US7366862B2 (en) | Method and apparatus for self-adjusting input delay in DDR-based memory systems | |
US7423456B2 (en) | Fast response time, low power phase detector circuits, devices and systems incorporating the same, and associated methods | |
US7715272B2 (en) | Semiconductor device having latency counter | |
US20070011483A1 (en) | Delay-lock loop and method adapting itself to operate over a wide frequency range | |
US20050185500A1 (en) | Domain crossing device | |
US9154141B2 (en) | Continuous high-frequency event filter | |
US11348633B2 (en) | Selectively controlling clock transmission to a data (DQ) system | |
TWI739422B (zh) | 記憶體控制器裝置與相位校正方法 | |
US8766687B2 (en) | Semiconductor memory device and operating method thereof | |
US7952406B2 (en) | Delay locked loop circuit | |
US7848178B2 (en) | Semiconductor memory device and method for operating the same | |
KR100574934B1 (ko) | 리프레쉬시 동작차단되는 지연동기회로 | |
KR20030005771A (ko) | 외부클락의 주기에 따라 지연시간을 조절할 수 있는dll 회로 및 이를 포함하는 메모리 장치 | |
KR20010004250A (ko) | 개선된 쓰기 정렬 방식의 디디알 에스디램 |