TWI658470B - 運用於雙倍資料率記憶體系統的先進先出電路 - Google Patents

運用於雙倍資料率記憶體系統的先進先出電路 Download PDF

Info

Publication number
TWI658470B
TWI658470B TW107115107A TW107115107A TWI658470B TW I658470 B TWI658470 B TW I658470B TW 107115107 A TW107115107 A TW 107115107A TW 107115107 A TW107115107 A TW 107115107A TW I658470 B TWI658470 B TW I658470B
Authority
TW
Taiwan
Prior art keywords
clock
circuit
reference clock
terminal
flop
Prior art date
Application number
TW107115107A
Other languages
English (en)
Other versions
TW201947586A (zh
Inventor
鍾昌瑾
Chang-Chin CHUNG
王聖昌
Shen-Chang Wang
Original Assignee
智原科技股份有限公司
Faraday Technology Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 智原科技股份有限公司, Faraday Technology Corporation filed Critical 智原科技股份有限公司
Priority to TW107115107A priority Critical patent/TWI658470B/zh
Priority to CN201810502826.6A priority patent/CN110442320B/zh
Priority to US16/012,392 priority patent/US10423386B1/en
Application granted granted Critical
Publication of TWI658470B publication Critical patent/TWI658470B/zh
Publication of TW201947586A publication Critical patent/TW201947586A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/10Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor having a sequence of storage locations each being individually accessible for both enqueue and dequeue operations, e.g. using random access memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital 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/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4076Timing circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C8/00Arrangements for selecting an address in a digital store
    • G11C8/18Address timing or clocking circuits; Address control signal generation or management, e.g. for row address strobe [RAS] or column address strobe [CAS] signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2205/00Indexing scheme relating to group G06F5/00; Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F2205/10Indexing scheme relating to groups G06F5/10 - G06F5/14
    • G06F2205/106Details of pointers, i.e. structure of the address generators

Abstract

一種運用於雙倍資料率記憶體系統的先進先出電路。此先進先出電路包括:一指標產生器,接收一第一重置信號與一延遲信號,其中,於該第一重置信號解主張後,該指標產生器根據一第一參考時脈產生一寫入指標,且該指標產生器根據一第二參考時脈與該延遲信號產生一讀取指標;以及一先進先出緩衝器,根據該第一參考時脈以及該寫入指標,將一輸入資料儲存至該先進先出緩衝器,並根據該第二參考時脈以及該讀取指標來產生一輸出資料。

Description

運用於雙倍資料率記憶體系統的先進先出電路
本發明是一種記憶體系統中的電路,且特別是有關於一種運用於雙倍資料率記憶體(DDR memory)系統的先進先出電路(FIFO circuit)。
請參照第1圖,其所繪示為習知雙倍資料率(double data rate)記憶體(簡稱DDR記憶體)系統示意圖。DDR記憶體系統100包括一特殊應用積體電路(Application-Specific Integrated Circuit,以下簡稱ASIC)110與一DDR記憶體120。
ASIC 110中包括一記憶體控制器(memory controller)112與實體層電路(PHY circuit)114。其中,實體層電路114與DDR記憶體120之間利用記憶體匯流排(memory bus)122來傳遞各種信號。再者,記憶體控制器112與實體層電路114之間的介面為記憶體與實體層介面116(DDR PHY Interface,簡稱DFI介面)。也就是說,記憶體控制器112與實體層電路114之間的複數個信號會經過DFI介面116來傳遞。
再者,ASIC 110更包括一鎖相迴路(PLL)118,其產生DFI時脈(DFIclk)至記憶體控制器112與實體層電路114。也就是說,記憶體控制器112與實體層電路114係運作在相同的DFI時脈域(DFI clock domain)。
實體層電路114中更包括資料實體層電路(Data0 PHY)131、資料實體層電路(Data1 PHY)132與指令實體層電路(CMD PHY)133。當然,在ASIC 110中,並不限定於二個資料實體層電路131、132,隨著資料量的增加,資料實體層電路的數目可以更多。
舉例來說,當記憶體控制器112欲將寫入資料儲存至DDR記憶體120時,記憶體控制器112會產生寫入指令與寫入資料。其中,寫入指令經由DFI介面116傳遞至指令實體層電路(CMD PHY)133,而指令實體層電路(CMD PHY)133會將寫入指令經由記憶體匯流排122傳送至DDR記憶體120。再者,寫入資料經由DFI介面116傳遞至二個資料實體層電路(Data0 PHY與Data1 PHY)131、132,而二個資料實體層電路(Data0 PHY與Data1 PHY)131、132會將寫入資料經由記憶體匯流排122傳送至DDR記憶體120。因此,DDR記憶體120即根據寫入指令將寫入資料儲存至DDR記憶體120。
另外,當記憶體控制器112欲由DDR記憶體120取得讀取資料時,記憶體控制器112會產生讀取指令。其中,讀取指令經由DFI介面116傳遞至指令實體層電路(CMD PHY)133,而指令實體層電路(CMD PHY)133會將讀取指令經由記憶體匯流排122傳送至DDR記憶體120。再者,DDR記憶體120根據讀取指令產生讀取資料,並經由記憶體匯流排122傳遞至二個資料實體層電路(Data0 PHY與Data1 PHY)131、132,而二個資料實體層電路(Data0 PHY與Data1 PHY)131、132會將讀取資料信號經由DFI介面116傳遞至記憶體控制器112。
由以上的說明可知,指令實體層電路(CMD PHY)133可單一方向地傳遞指令,而二個資料實體層電路(Data0 PHY與Data1 PHY)131、132可雙向地傳遞資料。
根據DDR記憶體120規格書,寫入指令與寫入資料之間需要有特定的時序(timing sequence)關係。因此,根據規格書的規範,記憶體控制器112必須產生特定時序關係的寫入指令與寫入資料至實體層電路114後,實體層電路114也會產生相同時序關係的寫入指令與寫入資料至DDR記憶體120。同理,讀取指令與讀取資料之間也需要有特定的時序關係。
在ASIC 110內部中,記憶體控制器112、實體層電路114以及DFI介面116係根據DFI時脈(DFI clock)來運作並傳送各種信號,因此。記憶體控制器112與實體層電路114之間需要從時脈源開始進行DFI時脈樹平衡(DDR memory controller and PHY circuit should be clock tree balanced from DFI clock tree root)。
在實際的應用中,指令實體層電路133、與二個資料實體層電路(Data0 PHY與Data1 PHY)131、132會配置在ASIC 110中的不同位置,所以幾乎無法設計出適合的DFI時脈樹。
因此,記憶體控制器112輸出特定時序關係的寫入指令與寫入資料後,實體層電路114收到的寫入指令與寫入資料將不會維持在特定的時序關係。如此,將造成寫入資料或者讀取資料的遺失,或者DDR記憶體120的誤動作。
本發明係有關於一種先進先出電路包括:一指標產生器,接收記憶體控制器所輸出的一第一重置信號與一延遲信號,其中於該第一重置信號解主張後,該指標產生器根據一第一參考時脈產生一寫入指標,且該指標產生器根據一第二參考時脈與該延遲信號產生一讀取指標;以及一先進先出緩衝器,根據該第一參考時脈以及該寫入指標,將一輸入資料儲存至該先進先出緩衝器,並根據該第二參考時脈以及該讀取指標來產生一輸出資料。
本發明係有關於一種雙倍資料率記憶體系統,包括一特殊應用積體電路連接至一雙倍資料率記憶體,該特殊應用積體電路包括一先進先出電路,連接於一記憶體控制器與一實體層電路之間,其中該先進先出電路包括:一指標產生器,接收該記 憶體控制器所輸出的一第一重置信號與一延遲信號,其中,於該第一重置信號解主張後,該指標產生器根據一第一參考時脈產生一寫入指標,且該指標產生器根據一第二參考時脈與該延遲信號產生一讀取指標;以及一先進先出緩衝器,根據該第一參考時脈以及該寫入指標,將一輸入資料儲存至該先進先出緩衝器,並根據該第二參考時脈以及該讀取指標來產生一輸出資料。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
100‧‧‧雙倍資料率記憶體系統
112‧‧‧記憶體控制器
114‧‧‧實體層電路
118‧‧‧PLL
120‧‧‧DDR記憶體
122‧‧‧記憶體匯流排
131、132‧‧‧資料實體層電路
133‧‧‧指令資料實體層電路
200‧‧‧雙倍資料率記憶體系統
205‧‧‧ASIC
208‧‧‧FIFO電路
210、230‧‧‧寫入資料FIFO緩衝器
220、240‧‧‧讀取資料FIFO緩衝器
250‧‧‧指令FIFO緩衝器
260、270‧‧‧指標產生器
290‧‧‧PLL
295、296‧‧‧時脈緩衝器
310、360‧‧‧控制電路
312、314、362、364‧‧‧環計數器
320、322、370、372‧‧‧選擇電路
323、325、327、329、373、375、377、379‧‧‧儲存電路
401~417、423、425、427、429‧‧‧D型正反器
420、422‧‧‧多工器
451~453‧‧‧及閘
第1圖為習知雙倍資料率記憶體系統示意圖。
第2圖為本發明雙倍資料率記憶體系統示意圖。
第3A圖與第3B圖為指標產生器260及其相關信號示意圖。
第3C圖與第3D圖為FIFO緩衝器示意圖與相關信號示意圖。
第4A圖與第4B圖為指標產生器270及FIFO緩衝器。
第5A圖至第5C圖為本發明FIFO電路中指標產生器與FIFO緩衝器的詳細電路與相關信號示意圖。
請參照第2圖,其所繪示為本發明雙倍資料率記憶體系統示意圖。DDR記憶體系統200包括一ASIC 205與一DDR記憶體120。
再者,ASIC 205中包括一記憶體控制器112、一先進先出電路(first in first out circuit,以下簡稱FIFO電路)208與實體層電路114。其中,實體層電路114與DDR記憶體120之間利用記憶體匯流排122來傳遞各種信號。
實體層電路114中更包括資料實體層電路(Data0 PHY)131、資料實體層電路(Data1 PHY)132與指令實體層電路(CMD PHY)133。當然,在ASIC 205中,並不限定於二個資料實體層電路,隨著資料量的增加,資料實體層電路的數目可以更多。
另外,ASIC 205中更包括一鎖相迴路(PLL)290,其產生DFI時脈(DFIclk)。另外,DFI時脈(DFIclk)經過複數個時脈緩衝器(clock buffer)295、296後成為主時脈(Mclk)。換句話說,在ASIC 205中的主時脈(Mclk)與DFI時脈(DFIclk)有相同的頻率(frequency)但不同的相位(phase)。
FIFO電路208中包括:指標產生器(point generator)260、指標產生器270、寫入資料FIFO緩衝器(Wdata0 FIFO)210、寫入資料FIFO緩衝器(Wdata1 FIFO)230、讀取資料FIFO緩衝器(Rdata0 FIFO)220、讀取資料FIFO緩衝器(Rdata1 FIFO)240與指令FIFO緩衝器(CMD FIFO)250。
其中,記憶體控制器112根據重置信號RST來控制FIFO電路208。當重置信號RST主張(assert)時,FIFO電路208為重置狀態,FIFO電路208不運作。
反之,當重置信號RST解主張(de-assert)時,FIFO電路208開始運作。此時,FIFO電路208中的指標產生器260產生寫入指標(Wptr1),並根據延遲信號SELd1來產生讀出指標(Rptr1),用以控制寫入資料FIFO緩衝器(Wdata0 FIFO)210、寫入資料FIFO緩衝器(Wdata1 FIFO)230與指令FIFO緩衝器(CMD FIFO)250的運作。再者,FIFO電路208中的指標產生器270產生寫入指標(Wptr2),並根據延遲信號SELd2來產生讀出指標(Rptr2),用以控制讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取讀取FIFO緩衝器(Rdata1 FIFO)240的運作。
根據本發明的實施例,實體層電路114根據DFI時脈(DFIclk)來運作,亦即實體層電路114係運作在DFI時脈(DFIclk)域。記憶體控制器112根據主時脈(Mclk)來運作,亦即記憶體控制器112係運作在主時脈(Mclk)域(main clock domain)。
FIFO電路208中的一部分的元件根據主時脈(Mclk)來運作,FIFO電路208中的另一部分的元件根據DFI時脈(DFIclk)來運作。也就是說,FIFO電路208在主時脈(Mclk)域與DFI時脈(DFIclk)域之間進行資料轉換。
舉例來說,當記憶體控制器112欲將寫入資料儲存至DDR記憶體120時,記憶體控制器112會根據主時脈(Mclk)產生寫入指令與寫入資料。而根據主時脈(Mclk),寫入指令輸入指令FIFO緩衝器(CMD FIFO)250,寫入資料輸入寫入資料FIFO緩衝器(Wdata0 FIFO)210與寫入資料FIFO緩衝器(Wdata1 FIFO)230。
接著,根據DFI時脈(DFIclk),指令FIFO緩衝器(CMD FIFO)250、寫入資料FIFO緩衝器(Wdata0 FIFO)210與寫入資料FIFO緩衝器(Wdata1 FIFO)230會輸出寫入指令與寫入資料,並分別傳送至實體層電路114中的指令實體層電路(CMD PHY)133、資料實體層電路(Data0 PHY)131與資料實體層電路(Data1 PHY)132。之後,指令實體層電路(CMD PHY)133會將寫入指令經由記憶體匯流排122傳送至DDR記憶體120。再者,二個資料實體層電路(Data0 PHY與Data1 PHY)131與132會將寫入資料經由記憶體匯流排122傳送至DDR記憶體120。因此,DDR記憶體120即根據寫入指令將寫入資料儲存至DDR記憶體120。
當記憶體控制器112欲由DDR記憶體120取得讀取資料時,記憶體控制器112會根據主時脈(Mclk)產生讀取指令,並輸入指令FIFO緩衝器(CMD FIFO)250。接著,根據DFI時脈(DFIclk),指令FIFO緩衝器(CMD FIFO)250輸出讀取指令至實體層電路114中的指令實體層電路(CMD PHY)133。之 後,指令實體層電路(CMD PHY)133會將讀取指令經由記憶體匯流排122傳送至DDR記憶體120。
再者,DDR記憶體120根據讀取指令所輸出的讀取資料經由記憶體匯流排122傳遞至實體層電路144中的二個資料實體層電路(Data0 PHY與Data1 PHY)131與132。接著,根據DFI時脈(DFIclk),二個資料實體層電路(Data0 PHY與Data1 PHY)131與132將讀取資料輸入讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取資料FIFO緩衝器(Rdata1 FIFO)240。之後,根據主時脈(Mclk),讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取資料FIFO緩衝器(Rdata1 FIFO)240輸出讀取資料至記憶體控制器112。
根據本發明的實施例,指標產生器260係用來控制寫入資料FIFO緩衝器(Wdata0 FIFO)210、寫入資料FIFO緩衝器(Wdata1 FIFO)230與指令FIFO緩衝器(CMD FIFO)250。而指標產生器270係用來控制讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取讀取FIFO緩衝器(Rdata1 FIFO)240。以下詳細介紹指標產生器260與FIFO緩衝器210、230與250的電路及其運作關係。
請參照第3A圖與第3B圖,其所繪示為指標產生器260及其相關信號示意圖。指標產生器260包括:控制電路310、環計數器(ring counter)312、314。控制電路310接收重置信號RST與延遲信號SELd1,並分別產生重置信號RSTa與RSTb至 環計數器312與314。其中,環計數器312根據第一參考時脈(CLK1)來產生寫入指標(Wptr1),環計數器314根據第二參考時脈(CLK2)來產生讀出指標(Rptr1)。
當記憶體控制器112產生寫入指令、讀取指令、或者寫入資料至DDR記憶體120時,第一參考時脈(CLK1)即為主時脈(Mclk),第二參考時脈(CLK2)即為DFI時脈(DFIclk)。
根據本發明的實施例,當重置信號RST主張(assert)時,控制電路310亦主張重置信號RSTa、RSTb。因此,環計數器312、314未開始計數。當重置信號RST解主張(de-assert)時,控制電路310先解主張(de-assert)重置信號RSTa。之後,控制電路310根據延遲信號SELd1來解主張(de-assert)重置信號RSTb。因此,環計數器312、314開始計數,並分別產生寫入指標(Wptr1)與讀出指標(Rptr1)。
如第3B圖所示,於時間點ta之前,重置信號RST被主張(低準位),且重置信號RSTa、RSTb亦被主張(低準位)。因此,環計數器312、314未開始計數。
於時間點ta時,重置信號RST被解主張(高準位)。因此,控制電路310於時間點tb時解主張重置信號RSTa,並於時間點tc時解主張重置信號RSTb。其中,重置信號RSTb的解主張時間點tc在重置信號RSTa的解主張時間點tb之後,且延遲信號SELd1可以調整重置信號RSTb被解主張的時間點。
舉例來說,如第3B圖所示,假設延遲信號SELd1為“1”(SELd1=“1”)時,重置信號RSTb於時間點tc被解主張。假設延遲信號SELd1為“0”(SELd1=“0”)時,重置信號RSTb於時間點tc’被解主張,且時間點tc’與時間點tc之間相差一個第二參考時脈(CLK2)週期(one CLK2 cycle)。同理,假設延遲信號SELd1為“2”(SELd1=“2”)時,重置信號RSTb於時間點tc”被解主張且時間點tc與時間點tc”之間相差一個第二參考時脈(CLK2)週期。以下係以重置信號RSTb於時間點tc解主張為例來進行說明。
如第3B圖所示,當重置信號RSTa於時間點tb解主張時,環計數器312根據主時脈(Mclk)開始由0至2持續循環地計數並輸出寫入指標(Wptr1)。再者,當重置信號RSTb於時間點tc解主張時,環計數器314根據DFI時脈(DFIclk)開始由0至2持續循環地計數並輸出讀取指標(Rptr1)。
由以上的說明可知,指標產生器260接收記憶體控制器112所輸出的重置信號RST與延遲信號SELd1。當重置信號RST解主張(de-assert)時,指標產生器260根據第一參考時脈(CLK1)產生寫入指標(Wptr1),且指標產生器260根據第二參考時脈(CLK2)與延遲信號(SELd1)產生讀取指標(Rptr1)。
請參照第3C圖與第3D圖,其所繪示為FIFO緩衝器與相關信號示意圖。此FIFO緩衝器適用於寫入資料FIFO緩衝 器(Wdata0 FIFO)210、寫入資料FIFO緩衝器(Wdata1 FIFO)230以及指令FIFO緩衝器(CMD FIFO)250。
FIFO緩衝器包括選擇電路320、322、儲存電路323、325、327、329。其中,儲存電路323、325、327根據第一參考時脈(CLK1)運作,儲存電路329根據第二參考時脈(CLK2)來運作。
選擇電路320接收資料信號D1i與寫入指標(Wptr1),並連接至儲存電路323、325、327的輸入端。而根據寫入指標(Wptr1)的數值,選擇電路320將資料信號D1i輸入對應的輸入儲存電路323、325、327。其中,資料信號D1i可為指令信號或者寫入資料。
再者,選擇電路322連接至儲存電路323、325、327的輸出端S0~S2以及儲存電路329的輸入端。而選擇電路322根據讀取指標(Rptr1)的數值,將儲存電路323、325、327輸出端S0~S2的資料輸出至儲存電路329,使得儲存電路329產生資料信號D1o。
在第3D圖中,重置信號RST、RSTa、RSTb、寫入指標(Wpt1r)與讀取指標(Rptr1)的運作情形相同於第3B圖,此處不再贅述。
於時間點t1的主時脈(Mclk)上升緣,寫入指標Wptr1為數值“0”,資料信號D1i的內容為“A”。因此,資料信號D1i的內容“A”被輸入至儲存電路323,使得儲存電路323的輸 出信號S0為“A”。如第3D圖所示,經過主時脈(Mclk)的三個週期後(3 Mclk cycles),寫入指標Wptr1再次為數值“0”時,儲存電路323中的內容“A”才會被內容“D”所取代,並依此類推。
於時間點t2的主時脈(Mclk)上升緣,寫入指標Wptr1為數值“1”,資料信號D1i的內容為“B”。因此,資料信號D1i的內容“B”被輸入至儲存電路325,使得儲存電路325的輸出信號S1為“B”。如第3D圖所示,經過主時脈(Mclk)的三個週期後(3 Mclk cycles),寫入指標Wptr1再次為數值“1”時,儲存電路325中的內容“B”才會被內容“E”所取代,並依此類推。
於時間點t3的主時脈(Mclk)上升緣,寫入指標Wptr1為數值“2”,資料信號D1i的內容為“C”。因此,資料信號D1i的內容“C”被輸入至儲存電路327,使得儲存電路327的輸出信號S2為“C”。如第3D圖所示,經過主時脈(Mclk)的三個週期後(3 Mclk cycles),寫入指標Wptr1再次為數值“2”時,儲存電路327中的內容“C”才會被內容“F”所取代,並依此類推。
由以上的說明可知,儲存電路323~325中的輸出信號S0~S2的資料有效時間(data valid time)為主時脈Mclk的三個週期(3 Mclk cycles)。
於時間點t4的DFI時脈(DFIclk)上升緣,讀取指標Rptr1為數值“0”,儲存電路323的輸出信號S0為“A”。因此,儲存電路323輸出信號S0的內容“A”被輸入至儲存電路329,使得儲存電路329的資料信號D1o為“A”。
於時間點t5的DFI時脈DFIclk上升緣,讀取指標Rptr1為數值“1”,儲存電路325的輸出信號S1為“B”。因此,儲存電路325輸出信號S1的內容“B”被輸入至儲存電路329,使得儲存電路329的資料信號D1o為“B”。
於時間點t6的DFI時脈DFIclk上升緣,讀取指標Rptr1為數值“2”,儲存電路327的輸出信號S2為“C”。因此,儲存電路327輸出信號S2的內容“C”被輸入至儲存電路329,使得儲存電路329的資料信號D1o為“C”。如此類推,資料信號D1o的內容會依序為“D”、“E”、“F”...等等。
由以上的說明可知,由於儲存電路329係根據DFI時脈(DFIclk)來運作,因此資料信號D1o與DFI時脈(DFIclk)同步。因此,FIFO電路208可在主時脈(Mclk)域與DFI時脈(DFIclk)域之間進行資料轉換,以維持寫入指令與寫入資料之間特定的時序(timing sequence)關係。
再者,本發明的指標產生器270與指標產生器260具有相同的結構與運作方式,但是接收不同的信號。相同地,本發明的所有FIFO緩衝器210~250的結構也相同。以下僅介紹標產生器270、讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取資料FIFO緩衝器(Rdata1 FIFO)240的連接關係,不再贅述其運作方式。
請參照第4A圖其所繪示為指標產生器270。其中,指標產生270係用來控制讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取資料FIFO緩衝器(Rdata1 FIFO)240。
指標產生器270與指標產生器260的差異在於,第一參考時脈(CLK1)為DFI時脈(DFIclk),第二參考時脈(CLK2)為主時脈(Mclk)。
在指標產生器270中,控制電路360接收重置信號RST與延遲信號SELd2,並分別產生重置信號RSTa與RSTb至環計數器362與364。其中,環計數器362根據第一參考時脈(CLK1)來產生寫入指標(Wptr2),環計數器364根據第二參考時脈(CLK2)來產生讀出指標(Rptr2)。
請參照第4B圖,其所繪示為FIFO緩衝器示意圖。此FIFO緩衝器適用於讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取資料FIFO緩衝器(Rdata1 FIFO)240。
FIFO緩衝器包括選擇電路370、372、儲存電路373、375、377、379。其中,儲存電路373、375、377根據第一參考時脈(CLK1)運作,儲存電路379根據第二參考時脈(CLK2)來運作。
選擇電路370接收資料信號D2i與寫入指標(Wptr2),並連接至儲存電路373、375、377的輸入端。而根據寫入指標(Wptr2)的數值,選擇電路370將資料信號D2i輸入對 應的輸入儲存電路373、375、377。其中,資料信號D2i可為讀取資料。
再者,選擇電路372連接至儲存電路373、375、377的輸出端S0~S2以及儲存電路379的輸入端。而選擇電路372根據讀取指標(Rptr2)的數值,將儲存電路373、375、377輸出端S0~S2的資料輸出至儲存電路379,使得儲存電路379產生資料信號D2o。。
請參照第5A圖至第5C圖,其所繪示為本發明FIFO電路中指標產生器與FIFO緩衝器的詳細電路與相關信號示意圖。以下的說明係以指標產生器260為例來說明,而FIFO緩衝器適用於寫入資料FIFO緩衝器(Wdata0 FIFO)210、寫入資料FIFO緩衝器(Wdata1 FIFO)230與指令FIFO緩衝器(CMD FIFO)250。再者,指標產生器270、讀取資料FIFO緩衝器(Rdata0 FIFO)220與讀取資料FIFO緩衝器(Rdata1 FIFO)240的結構與功能類似,此處不再贅述。
另外,這些電路僅是本發明的一實施利,並非用以限定本發明,在此領域的技術人員可以設計功能類似的指標產生器與FIFO緩衝器來達成本發明的目的。
如第5A圖所示,指標產生器260中的控制電路310包括:多個D型正反器(D flip flop)401~417與一多工器(multiplexer)420。其中,D型正反器401~405的時脈輸入端接收第一參考時脈(CLK1),D型正反器411~417的時脈輸入端接 收第二參考時脈(CLK2)。其中,第一參考時脈(CLK1)為主時脈(Mclk),第二參考時脈(CLK2)為DFI時脈(DFIclk)。
D型正反器401、402的重置端(reset terminal)接收重置信號RST。D型正反器401的輸入端接收高準位“Hi”,D型正反器401的輸出端產生重置信號ra_1。D型正反器402的輸入端接收重置信號ra_1,輸出端產生重置信號ra_2。
D型正反器403~405的重置端接收重置信號ra_2。D型正反器403的輸入端接收高準位“Hi”,D型正反器403的輸出端產生重置信號ra_3。D型正反器404的輸入端接收重置信號ra_3,輸出端產生重置信號ra_4。D型正反器405的輸入端接收重置信號ra_4,輸出端產生重置信號RSTa。
D型正反器411、412的重置端接收重置信號ra_2。D型正反器411的輸入端接收高準位“Hi”,D型正反器411的輸出端產生重置信號rb_1。D型正反器412的輸入端接收重置信號rb_1,輸出端產生重置信號rb_2。
D型正反器413~417的重置端接收重置信號rb_2。D型正反器413的輸入端接收高準位“Hi”,D型正反器413的輸出端產生重置信號rb_3。D型正反器414的輸入端接收重置信號rb_3,輸出端產生重置信號rb_4。D型正反器415的輸入端接收重置信號rb_4,輸出端產生重置信號rb_5。D型正反器416的輸入端接收重置信號rb_5,輸出端產生重置信號rb_6。
多工器420的選擇端接收延遲信號SELd1,第一輸入端接收重置信號rb_3,第二輸入端接收重置信號rb_4,第三輸入端接收重置信號rb_5,第四輸入端接收重置信號rb_6。根據延遲信號SELd1,重置信號rb_3、重置信號rb_4、重置信號rb_5、重置信號rb_6其中之一會由多工器420的輸出端輸出。再者,D型正反器417的輸入端連接至多工器420的輸出端,輸出端產生重置信號RSTb。
再者,環計數器312根據第一參考時脈(CLK1)來產生寫入指標(Wptr1),環計數器314根據第二參考時脈(CLK2)來產生讀出指標(Rptr1)。基本上,本發明並不限定環計數器312、314的實際電路,在此領域的技術人員可以利用設計出各種的環計數器來實現本發明。
請參照第5B圖其所繪示為FIFO緩衝器示意圖。選擇電路320中包括及閘451~453。及閘451的一輸入端接收資料信號D1i,另一輸入端於寫入指標的數值為“0”(Wptr1=“0”)時動作。及閘452的一輸入端接收資料信號D1i,另一輸入端於寫入指標的數值為“1”(Wptr1=“1”)時動作。及閘453的一輸入端接收資料信號D1i,另一輸入端於寫入指標的數值為“2”(Wptr1=“2”)時動作。
D型正反器423~429做為儲存電路。其中,D型正反器423~427的時脈端接收第一參考時脈CLK1,D型正反器423~427的重置端接收重置信號ra_2。D型正反器429的時脈端 接收第二參考時脈CLK2,D型正反器429的重置端接收重置信號rb_2。再者,第5B圖中的D型正反器423~429也可以直接接高準位,使得D型正反器423~429不會被重置而持續在運作。
再者,D型正反器423的輸入端連接至及閘451的輸出端,D型正反器423的輸出端產生輸出信號S0。D型正反器425的輸入端連接至及閘452的輸出端,D型正反器425的輸出端產生輸出信號S1。D型正反器427的輸入端連接至及閘453的輸出端,D型正反器427的輸出端產生輸出信號S2。
多工器422做為選擇電路。多工器422的第一輸入端接收輸出信號S0、第二輸入端接收輸出信號S1、第三輸入端接收輸出信號S2、選擇端接收讀取指標Rptr1。再者,D型正反器429的輸入端連接至多工器422的輸出端,D型正反器429的輸出端產生資料信號D1o。
如第5C圖所示,當重置信號RST解主張(高準位)時。每經過一個第一參考時脈CLK1週期,依序解主張重置信號ra_1、ra_2、ra_3、ra_4與RSTa。同理,當重置信號ra_2解主張(高準位)時。每經過一個第二參考時脈CLK2週期,依序解主張重置信號rb_1、rb_2、rb_3、rb_4、rb_5與rb_6。
再者,根據第一參考時脈CLK1,選擇電路320根據寫入指標(Wptr1),將資料信號D1i輸入對應的輸入儲存電路423、425、427。因此,D型正反器423產生內容“A”的輸入輸出信號S0、D型正反器425產生內容“B”的輸入輸出信號S1、D 型正反器427產生內容“C”的輸入輸出信號S2,並隨著寫入指標(Wptr1)的改變而依此類推。
再者,根據讀取指標(Rptr1)的數值以及延遲信號SELd1,選擇電路322將儲存電路323、325、327輸出端S0~S2的資料輸出至儲存電路329,使得儲存電路329產生資料信號D1o。
舉例來說,當延遲信號SELd1為數值“0”(SELd1=“0”)時,重置信號RSTb與重置信號rb_4同相位。因此,根據第二參考時脈CLK2於時間點ta、tb、tc的上升緣,D型正反器429會依序接收輸出信號S0、S1、S2的內容“A”、“B”、“C”並依此類推。
再者,當延遲信號SELd1為數值“1”(SELd1=“1”)時,重置信號RSTb與重置信號rb_5同相位。因此,根據第二參考時脈CLK2於時間點tb、tc、td的上升緣,D型正反器429會依序接收輸出信號S0、S1、S2的內容“A”、“B”、“C”並依此類推。
另外,當延遲信號SELd1為數值“2”(SELd1=“2”)時,重置信號RSTb與重置信號rb_6同相位。因此,根據第二參考時脈CLK2於時間點tc、td、te的上升緣,D型正反器429會依序接收輸出信號S0、S1、S2的內容“A”、“B”、“C”並依此類推。
換言之,延遲信號SELd1可以適當的調整讀取指標(Rptr1)產生的時間點,以控制資料信號D1i與資料信號D1o之間的延遲時間。也就是說,適當地調整延遲信號SELd1可以使得FIFO電路208在第一參考時脈(CLK1)域與第二參考時脈(CLK2)域之間進行資料轉換時,確保資料信號D1i與資料信號D1o的正確性,並維持寫入指令與寫入資料之間特定的時序(timing sequence)關係。
由以上的說明可知,本發明提出一種運用於雙倍資料率記憶體系統的先進先出電路,使得記憶體控制器112與實體層電路114運作在不同的時脈域。如此,可以解決習知記憶體控制器112與實體層電路114運作在相同時脈域所造成的問題。
再者,本發明的環計數器312、314係以計數0~2來進行說明。然而,本發明並不限定於此,在此技術領域的計數人員也可以修改環計數器的計數值來達成本發明的目的。舉例來說,環計數器可以計數0~3。此時,利用一個1對4的選擇電路、五個儲存電路以及一個四對一的選擇電路即可組合成FIFO緩衝器。
綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。

Claims (14)

  1. 一種先進先出電路,連接於一記憶體控制器與一實體層電路之間,該先進先出電路包括:一指標產生器,接收該記憶體控制器所輸出的一第一重置信號與一延遲信號,其中於該第一重置信號解主張後,該指標產生器根據一第一參考時脈產生一寫入指標,且該指標產生器根據一第二參考時脈與該延遲信號產生一讀取指標,其中該延遲信號為一數值,且該指標產生器根據該數值來決定該讀取指標的一動作時間點;以及一先進先出緩衝器,根據該第一參考時脈以及該寫入指標,將一輸入資料儲存至該先進先出緩衝器,並根據該第二參考時脈以及該讀取指標來產生一輸出資料。
  2. 如申請專利範圍第1項所述之先進先出電路,其中該指標產生器包括:一控制電路接收該第一重置信號與該延遲信號,其中當該第一重置信號解主張後,該控制電路先解主張一第二重置信號,之後再根據該延遲信號的該數值來決定一第三重置信號的一解主張時間點;一第一環計數器,接收該第二重置信號與該第一參考時脈,其中當該第二重置信號解主張時,該第一環計數器根據該第一參考時脈產生計數值做為該寫入指標;以及一第二環計數器,接收該第三重置信號與該第二參考時脈,其中當該第三重置信號解主張時,該第二環計數器根據該第二參考時脈產生計數值做為該讀取指標。
  3. 如申請專利範圍第2項所述之先進先出電路,其中該控制電路包括:一第一D型正反器,具有一輸入端接收一第一準位,一時脈端接收該第一參考時脈,一重置端接收該第一重置信號;一第二D型正反器,具有一輸入端連接至該第一D型正反器的一輸出端,一時脈端接收該第一參考時脈,一重置端接收該第一重置信號;一第三D型正反器,具有一輸入端接收該第一準位,一時脈端接收該第一參考時脈,一重置端連接至該第二D型正反器的一輸出端;一第四D型正反器,具有一輸入端連接至該第三D型正反器的一輸出端,一時脈端接收該第一參考時脈,一重置端連接至該第二D型正反器的該輸出端;一第五D型正反器,具有一輸入端連接至該第四D型正反器的一輸出端,一時脈端接收該第一參考時脈,一重置端連接至該第二D型正反器的該輸出端,以及一輸出端產生該第二重置信號;一第六D型正反器,具有一輸入端接收該第一準位,一時脈端接收該第二參考時脈,一重置端連接至該第二D型正反器的該輸出端;一第七D型正反器,具有一輸入端連接至該第六D型正反器的一輸出端,一時脈端接收該第二參考時脈,一重置端連接至該第二D型正反器的該輸出端;一第八D型正反器,具有一輸入端接收該第一準位,一時脈端接收該第二參考時脈,一重置端連接至該第七D型正反器的一輸出端;一第九D型正反器,具有一輸入端連接至該第八D型正反器的一輸出端,一時脈端接收該第二參考時脈,一重置端連接至該第七D型正反器的該輸出端;一第十D型正反器,具有一輸入端連接至該第九D型正反器的一輸出端,一時脈端接收該第二參考時脈,一重置端連接至該第七D型正反器的該輸出端;一第十一D型正反器,具有一輸入端連接至該第十D型正反器的一輸出端,一時脈端接收該第二參考時脈,一重置端連接至該第七D型正反器的該輸出端;一多工器,具有四輸入端連接至該第八D型正反器的該輸出端、該第九D型正反器的該輸出端、該第十D型正反器的該輸出端與該第十一D型正反器的一輸出端;以及一第十二D型正反器,具有一輸入端連接至該多工器的一輸出端,一時脈端接收該第二參考時脈,一重置端連接至該第七D型正反器的該輸出端,以及一輸出端產生該第三重置信號。
  4. 如申請專利範圍第2項所述之先進先出電路,其中該先進先出緩衝器包括:一第一及閘,具有一第一輸入端接收該輸入資料,一第二輸入端於該寫入指標為一第一數值時動作;一第二及閘,具有一第一輸入端接收該輸入資料,一第二輸入端於該寫入指標為一第二數值時動作;一第三及閘,具有一第一輸入端接收該輸入資料,一第二輸入端於該寫入指標為一第三數值時動作;一第一D型正反器,具有一輸入端連接至該第一及閘的一輸出端,一時脈端接收該第一參考時脈;一第二D型正反器,具有一輸入端連接至該第二及閘的一輸出端,一時脈端接收該第一參考時脈;一第三D型正反器,具有一輸入端連接至該第三及閘的一輸出端,一時脈端接收該第一參考時脈;一多工器,具有一選擇端接收該延遲信號,並具有三輸入端連接至該第一D型正反器的一輸出端、該第二D型正反器的一輸出端與該第三D型正反器的一輸出端;以及一第四D型正反器,具有一輸入端連接至該多工器的一輸出端,一時脈端接收該第二參考時脈,以及一輸出端產生該輸出資料。
  5. 如申請專利範圍第2項所述之先進先出電路,其中該先進先出緩衝器包括:一第一選擇電路,接收該輸入資料與該寫入指標;一第一儲存電路,連接至該第一選擇電路的一第一輸出端並接收該第一參考時脈;一第二儲存電路,連接至該第一選擇電路的一第二輸出端並接收該第一參考時脈;一第三儲存電路,連接至該第一選擇電路的一第三輸出端並接收該第一參考時脈,其中該第一選擇電路根據該寫入指標,將該輸入資料對應地輸入該第一儲存電路、該第二儲存電路與該第三儲存電路其中之一;一第二選擇電路,接收該讀取指標並連接至該第一儲存電路的輸出端、該第二儲存電路的輸出端以及該第三儲存電路的輸出端;以及一第四儲存電路,接收該第二參考時脈並連接至該第二選擇電路的輸出端,其中該第二選擇電路根據該讀取指標,將該第一儲存電路、該第二儲存電路與該第三儲存電路的內容其中之一輸入該第四儲存電路,使得該第四儲存電路產生該輸出資料。
  6. 如申請專利範圍第5項所述之先進先出電路,其中該記憶體控制器運作於一主時脈,該實體層電路運作於一記憶體與實體層介面時脈,該輸入資料為該記憶體控制器所產生的一指令信號,該先進先出緩衝器為一指令先進先出緩衝器,且該第一參考時脈為該主時脈,該第二參考時脈為該記憶體與實體層介面時脈。
  7. 如申請專利範圍第5項所述之先進先出電路,其中該記憶體控制器運作於一主時脈,該實體層電路運作於一記憶體與實體層介面時脈,該輸入資料為該記憶體控制器所產生的一寫入資料,該先進先出緩衝器為一寫入資料先進先出緩衝器,且該第一參考時脈為該主時脈,該第二參考時脈為該記憶體與實體層介面時脈。
  8. 如申請專利範圍第5項所述之先進先出電路,其中該記憶體控制器運作於一主時脈,該實體層電路運作於一記憶體與實體層介面時脈,該輸入資料為該實體層電路所產生的一讀取資料,該先進先出緩衝器為一讀取資料先進先出緩衝器,且該第一參考時脈為該記憶體與實體層介面時脈,該第二參考時脈為該主時脈。
  9. 一種雙倍資料率記憶體系統,包括一特殊應用積體電路連接至一雙倍資料率記憶體,該特殊應用積體電路包括一先進先出電路,連接於一記憶體控制器與一實體層電路之間,其中該先進先出電路包括:一指標產生器,接收該記憶體控制器所輸出的一第一重置信號與一延遲信號,其中,於該第一重置信號解主張後,該指標產生器根據一第一參考時脈產生一寫入指標,且該指標產生器根據一第二參考時脈與該延遲信號產生一讀取指標,其中該延遲信號為一數值,且該指標產生器根據該數值來決定該讀取指標的一動作時間點;以及一先進先出緩衝器,根據該第一參考時脈以及該寫入指標,將一輸入資料儲存至該先進先出緩衝器,並根據該第二參考時脈以及該讀取指標來產生一輸出資料。
  10. 如申請專利範圍第9項所述之雙倍資料率記憶體系統,其中該指標產生器包括:一控制電路接收該第一重置信號與該延遲信號,其中當該第一重置信號解主張後,該控制電路先解主張一第二重置信號,之後再根據該延遲信號的該數值來決定一第三重置信號的一解主張時間點;一第一環計數器,接收該第二重置信號與該第一參考時脈,其中當該第二重置信號解主張時,該第一環計數器根據該第一參考時脈產生計數值做為該寫入指標;以及一第二環計數器,接收該第三重置信號與該第二參考時脈,其中當該第三重置信號解主張時,該第二環計數器根據該第二參考時脈產生計數值做為該讀取指標。
  11. 如申請專利範圍第10項所述之雙倍資料率記憶體系統,其中該先進先出緩衝器包括:一第一選擇電路,接收該輸入資料與該寫入指標;一第一儲存電路,連接至該第一選擇電路的一第一輸出端並接收該第一參考時脈;一第二儲存電路,連接至該第一選擇電路的一第二輸出端並接收該第一參考時脈;一第三儲存電路,連接至該第一選擇電路的一第三輸出端並接收該第一參考時脈,其中該第一選擇電路根據該寫入指標,將該輸入資料對應地輸入該第一儲存電路、該第二儲存電路與該第三儲存電路其中之一;一第二選擇電路,接收該讀取指標並連接至該第一儲存電路的輸出端、該第二儲存電路的輸出端以及該第三儲存電路的輸出端;以及一第四儲存電路,接收該第二參考時脈並連接至該第二選擇電路的輸出端,其中該第二選擇電路根據該讀取指標,將該第一儲存電路、該第二儲存電路與該第三儲存電路的內容其中之一輸入該第四儲存電路,使得該第四儲存電路產生該輸出資料。
  12. 如申請專利範圍第11項所述之雙倍資料率記憶體系統,其中該記憶體控制器運作於一主時脈,該實體層電路運作於一記憶體與實體層介面時脈,該輸入資料為該記憶體控制器所產生的一指令信號,該先進先出緩衝器為一指令先進先出緩衝器,且該第一參考時脈為該主時脈,該第二參考時脈為該記憶體與實體層介面時脈。
  13. 如申請專利範圍第11項所述之雙倍資料率記憶體系統,其中該記憶體控制器運作於一主時脈,該實體層電路運作於一記憶體與實體層介面時脈,該輸入資料為該記憶體控制器所產生的一寫入資料,該先進先出緩衝器為一寫入資料先進先出緩衝器,且該第一參考時脈為該主時脈,該第二參考時脈為該記憶體與實體層介面時脈。
  14. 如申請專利範圍第11項所述之雙倍資料率記憶體系統,其中該記憶體控制器運作於一主時脈,該實體層電路運作於一記憶體與實體層介面時脈,該輸入資料為該實體存電路所產生的一讀取資料,該先進先出緩衝器為一讀取資料先進先出緩衝器,且該第一參考時脈為該記憶體與實體層介面時脈,該第二參考時脈為該主時脈。
TW107115107A 2018-05-03 2018-05-03 運用於雙倍資料率記憶體系統的先進先出電路 TWI658470B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW107115107A TWI658470B (zh) 2018-05-03 2018-05-03 運用於雙倍資料率記憶體系統的先進先出電路
CN201810502826.6A CN110442320B (zh) 2018-05-03 2018-05-23 运用于双倍数据率存储器系统的先进先出电路
US16/012,392 US10423386B1 (en) 2018-05-03 2018-06-19 FIFO circuit for DDR memory system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107115107A TWI658470B (zh) 2018-05-03 2018-05-03 運用於雙倍資料率記憶體系統的先進先出電路

Publications (2)

Publication Number Publication Date
TWI658470B true TWI658470B (zh) 2019-05-01
TW201947586A TW201947586A (zh) 2019-12-16

Family

ID=67348061

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107115107A TWI658470B (zh) 2018-05-03 2018-05-03 運用於雙倍資料率記憶體系統的先進先出電路

Country Status (3)

Country Link
US (1) US10423386B1 (zh)
CN (1) CN110442320B (zh)
TW (1) TWI658470B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10998020B1 (en) * 2020-05-05 2021-05-04 Realtek Semiconductor Corporation Memory system and memory access interface device thereof
EP4033347B1 (en) * 2020-08-12 2023-07-05 Changxin Memory Technologies, Inc. First in first out memory and storage device
CN113688074B (zh) * 2021-10-26 2022-02-01 浙江芯昇电子技术有限公司 先进先出数据处理装置及数据处理方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5406554A (en) * 1993-10-05 1995-04-11 Music Semiconductors, Corp. Synchronous FIFO having an alterable buffer store
TW430763B (en) * 1999-09-10 2001-04-21 Via Tech Inc Signal control method of first in first out
US20070230259A1 (en) * 2006-03-31 2007-10-04 Nec Corporation Buffer circuit and buffer control method
US20080031079A1 (en) * 2006-08-03 2008-02-07 Renesas Technology Corp. Interface circuit
US8270552B1 (en) * 2009-02-26 2012-09-18 Maxim Integrated Products, Inc. System and method for transferring data from non-spread clock domain to spread clock domain
US9570130B2 (en) * 2015-05-06 2017-02-14 Realtek Semiconductor Corporation Memory system and memory physical layer interface circuit

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6434642B1 (en) * 1999-10-07 2002-08-13 Xilinx, Inc. FIFO memory system and method with improved determination of full and empty conditions and amount of data stored
JP2003060627A (ja) 2001-08-13 2003-02-28 Oki Electric Ind Co Ltd クロック乗せ換え回路
US6696854B2 (en) 2001-09-17 2004-02-24 Broadcom Corporation Methods and circuitry for implementing first-in first-out structure
US7440351B2 (en) * 2005-10-25 2008-10-21 Promos Technologies Pte. Ltd. Wide window clock scheme for loading output FIFO registers
JP2009020932A (ja) * 2007-07-10 2009-01-29 Elpida Memory Inc レイテンシカウンタ及びこれを備える半導体記憶装置、並びに、データ処理システム
US20090180335A1 (en) * 2008-01-15 2009-07-16 Sivaraman Chokkalingam Integrated circuit with reduced pointer uncertainly
US8611178B2 (en) * 2011-11-11 2013-12-17 Qualcomm Incorporated Device and method to perform memory operations at a clock domain crossing
US9509640B2 (en) * 2014-12-05 2016-11-29 Xilinx, Inc. Latency control in a transmitter/receiver buffer
CN104536924B (zh) * 2014-12-11 2017-08-04 中国人民解放军国防科学技术大学 面向板级高速传输总线的多通道延迟斜偏纠正方法及装置
US10877509B2 (en) * 2016-12-12 2020-12-29 Intel Corporation Communicating signals between divided and undivided clock domains
CN107577623A (zh) * 2017-07-19 2018-01-12 成都华微电子科技有限公司 跨时钟域异步fifo及数据处理方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5406554A (en) * 1993-10-05 1995-04-11 Music Semiconductors, Corp. Synchronous FIFO having an alterable buffer store
TW430763B (en) * 1999-09-10 2001-04-21 Via Tech Inc Signal control method of first in first out
US20070230259A1 (en) * 2006-03-31 2007-10-04 Nec Corporation Buffer circuit and buffer control method
US20080031079A1 (en) * 2006-08-03 2008-02-07 Renesas Technology Corp. Interface circuit
US8270552B1 (en) * 2009-02-26 2012-09-18 Maxim Integrated Products, Inc. System and method for transferring data from non-spread clock domain to spread clock domain
US9570130B2 (en) * 2015-05-06 2017-02-14 Realtek Semiconductor Corporation Memory system and memory physical layer interface circuit

Also Published As

Publication number Publication date
TW201947586A (zh) 2019-12-16
CN110442320A (zh) 2019-11-12
CN110442320B (zh) 2021-04-09
US10423386B1 (en) 2019-09-24

Similar Documents

Publication Publication Date Title
TWI658470B (zh) 運用於雙倍資料率記憶體系統的先進先出電路
US10725950B2 (en) Peripheral interface circuit for serial memory
US10146251B2 (en) Semiconductor device
US20190245529A1 (en) Clock generation circuit having deskew function and semiconductor integrated circuit device including same
US7733129B2 (en) Method and circuit for generating memory clock signal
CN111161766B (zh) Ddr sdram物理层接口电路与ddr sdram控制装置
US8176352B2 (en) Clock domain data transfer device and methods thereof
TW200834600A (en) Read-data stage circuitry for DDR-SDRAM memory controller
KR100598010B1 (ko) 클럭 분배기, 클럭 분배기를 포함한 시스템, 클럭 분배방법 및 클럭 분배를 이용한 데이터 읽기 및 쓰기 방법
US6377071B1 (en) Composite flag generation for DDR FIFOs
JPH096462A (ja) データ処理システム及び半導体集積回路
KR100967112B1 (ko) 출력 인에이블 신호 생성회로
US11373694B1 (en) Generic physical layer providing a unified architecture for interfacing with an external memory device and methods of interfacing with an external memory device
US10742216B1 (en) Clock domain crossing for an interface between logic circuits
JP7211676B2 (ja) 半導体装置
US8514005B2 (en) Circuit and method for generating multiphase clock signals and corresponding indication signals
TW202232276A (zh) 除頻器電路
Day I/O and Memory Interfacing Features and Benefits in 7 Series Architecture
KR20130080731A (ko) 데이터 출력회로
Picatoste-Olloqui et al. Implementing high-speed double-data rate (DDR) SDRAM controllers on FPGA