專利名稱::用于sram接口轉(zhuǎn)sdram接口的電路及轉(zhuǎn)換方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及同步動態(tài)存儲器(SynchronousDynamicRandomAccessMemory,簡稱SDRAM),特別是一種用于同步靜態(tài)存儲器(SynchronousRandomAccessMemory.,簡稱SRAM)接口轉(zhuǎn)SDRAM接口的電路及轉(zhuǎn)換方法。
背景技術(shù):
:隨著芯片技術(shù)的發(fā)展和PC的廣泛應(yīng)用,SDRAM的價格越來越低廉。與此同時,手持終端的應(yīng)用越來越豐富,手持終端軟件的體積越來越龐大,對內(nèi)存的要求也越來越大。SRAM最大的缺點(diǎn)就是價格昂貴,相同容量的SRAM的價格是SDRAM的十倍左右。因此如何采用SDRAM取代SRAM,來降低終端設(shè)備的成本,成了急需解決的問題。
發(fā)明內(nèi)容為克服上述已有技術(shù)的不足,本發(fā)明要解決的技術(shù)問題是提供一種用于SRAM接口轉(zhuǎn)SDRAM接口的電路及轉(zhuǎn)換方法,應(yīng)用在手持終端當(dāng)中,SRAM接口轉(zhuǎn)成SDRAM接口,CPU可以通過SRAM總線接口對SDRAM進(jìn)行讀、寫等操作。為解決上述技術(shù)問題,本發(fā)明的技術(shù)方案是一種用于SRAM接口轉(zhuǎn)SDRAM接口的電路,包括CPU、復(fù)雜可編程邏輯器件和SDRAM芯片,所述的CPU包括一個SRAM接口,該SRAM接口的寫控制端WE、讀控制端RE、片選信號端CS、地址信號端ADDR分別與所述復(fù)雜可編程邏輯器件的第一寫控制端WE1、讀控制端RE、片選信號端CS、第一地址信號端ADDR1相連,所述的CPU的數(shù)據(jù)信號端DATA與所述SDRAM芯片的數(shù)據(jù)信號端DATA相連,所述復(fù)雜可編程邏輯器件的列地址鎖存信號RAS、行地址鎖存信號CAS、第二寫控制端WE2、塊地址信號端BANK、第二地址信號端ADDR2、時鐘使能信號CKE分別與所述SDRAM芯片的列地址鎖存信號RAS、行地址鎖存信號CAS、寫控制端WE、塊地址信號端BANK、地址信號端ADDR、時鐘使能信號CKE相連。所述復(fù)雜可編程邏輯器件是Lattice公司的LC4064V,其驅(qū)動時鐘MCLK是50腿z的壓控振蕩器。所述SDRAM芯片的片選信號端CS直接接地。所述復(fù)雜可編程邏輯器件每隔64毫秒向所述的SDRAM芯片發(fā)送數(shù)據(jù)自動刷新的命令序列。所述復(fù)雜可編程邏輯器件每隔64毫秒向所述SDRAM發(fā)送時鐘掛起命令序列。一種應(yīng)用上述用于SRAM接口轉(zhuǎn)SDRAM接口的電路的轉(zhuǎn)換方法,包括以下步驟所述的SDR雇芯片上電以后的初始化步驟;所述的CPU向所述復(fù)雜可編程邏輯器件發(fā)出讀數(shù)據(jù)命令之后的讀SDRAM步驟;所述的CPU向所述復(fù)雜可編程邏輯器件發(fā)出寫數(shù)據(jù)命令之后的寫SDRAM步驟。該方法還包括所述SDRAM芯片的自刷新步驟,包括步驟D1:自刷新;步驟D2:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。該方法還包括所述SDRAM芯片的時鐘掛起步驟,包括步驟E1:初始化所述SDRAM芯片的所有管腳的狀態(tài);步驟E2:時鐘掛起;步驟E3:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。所述的初始化步驟包括步驟A1:初始化所述SDRAM芯片的所有管腳的狀態(tài);步驟A2:給所有的數(shù)據(jù)塊預(yù)充電;步驟A3:根據(jù)時鐘頻率和地址范圍設(shè)置所述SDRAM芯片的相關(guān)參數(shù);步驟A4:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。所述的讀SDRAM步驟包括步驟B1:給所有的數(shù)據(jù)塊預(yù)充電;步驟B2:根據(jù)CPU給出的地址總線,激活所述SDRAM芯片的相應(yīng)數(shù)據(jù)塊;步驟B3:讀取SDRAM芯片;步驟B4:給相應(yīng)的數(shù)據(jù)塊預(yù)充電;步驟B5:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。所述的寫SDRAM步驟包括步驟C1:給所有的數(shù)據(jù)塊預(yù)充電;步驟C2:根據(jù)地址總線,激活所述SDRAM芯片的相應(yīng)數(shù)據(jù)塊;步驟C3:寫SDRAM芯片;步驟C4:給相應(yīng)的數(shù)據(jù)塊預(yù)充電;步驟C5:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。與現(xiàn)有技術(shù)相比,本發(fā)明的有益效果是本發(fā)明提出一種用于SRAM接口轉(zhuǎn)SDRAM接口的電路及轉(zhuǎn)換方法,該方法采用復(fù)雜可編程邏輯器件(Co即lexProgrammableLogicDevice,簡稱CPLD)模擬SRAM和SDRAM時序,使CPU可以通過SRAM總線接口對SDRAM芯片進(jìn)行讀、寫等操作;同時該方法還實(shí)現(xiàn)了SDRAM的自刷新和掛起等操作,以降低SDRAM的功耗。該方法應(yīng)用在手持終端當(dāng)中,采用SDRAM取代SRAM,大大降低終端設(shè)備的成本。該方法沒有完全實(shí)現(xiàn)SDRAM的時序規(guī)范,只是根據(jù)SRAM的時序要求,實(shí)現(xiàn)對SDRAM的相關(guān)操作,這樣的好處是方法實(shí)現(xiàn)起來簡單和可靠,并且占用CPLD的邏輯單元非常少,非常適合應(yīng)用在手持終端這樣設(shè)備當(dāng)中。圖l是本發(fā)明的系統(tǒng)框圖。圖1中的信號說明WE:寫控制信號。RE:讀控制信號。CS:CPU的片選信號ADDR:地址信號DATA:數(shù)據(jù)信號MCLK:CPLD模塊的時鐘信號。RAS:SDRAM的列地址鎖存信號。CAS:SDRAM的行地址鎖存信號。BANK:SDRAM的塊地址信號。CKE:SDRAM的時鐘使能信號。CLK:SDRAM的時鐘信號。圖2是CPU通過SRAM接口讀數(shù)據(jù)的時序圖。圖3是CPU通過SRAM接口寫數(shù)據(jù)的時序圖。圖4是CPLD實(shí)現(xiàn)的邏輯模塊的狀態(tài)轉(zhuǎn)換圖。具體實(shí)施例方式下面結(jié)合附圖和實(shí)施例對本發(fā)明的具體實(shí)施方式做進(jìn)一步詳細(xì)的說明,但不應(yīng)以此限制本發(fā)明的保護(hù)范圍。表1是SDRAM操作的真值表。SDRAM的時序要求完整的操作如表1所示。本發(fā)明方法為了節(jié)省CPLD的邏輯單元,沒有完全實(shí)現(xiàn)表l所羅列的操作。該方法實(shí)現(xiàn)的邏輯操作如下①PrechargeallBanks:給所有的數(shù)據(jù)塊預(yù)充電②Moderegisterset:根據(jù)CLOCK的頻率和地址范圍設(shè)置SDRAM的相關(guān)參數(shù)。③BankActive:根據(jù)地址總線,激活相關(guān)的塊。④Read讀⑤Write寫⑥PrechargeSelectedBank⑦Clocksuspend時鐘掛起⑧AutoRefresh自動刷新◎NoOperation:初始化SDRAM的所有管腳的狀態(tài)。本發(fā)明方法把上述所有的邏輯操作組合起來,實(shí)現(xiàn)了CPU通過SRAM總線對SDRAM進(jìn)行讀、寫和SDRAM的自刷新等操作。表l<table>tableseeoriginaldocumentpage9</column></row><table><table>complextableseeoriginaldocumentpage10</column></row><table>表l解釋如下:Command:操作命令CKEn-1:第N-l個時鐘CKEn:第N個時鐘CS:片選信號RAS:列地址鎖存信號CAS:行地址鎖存信號WE:寫使能信號ADDR:地址總線A10/AP:第IO根地址線BA:塊地址ModeRegisterSet:設(shè)置模式寄存器NoOperation:空操作BankActive:激活數(shù)據(jù)塊Read:讀數(shù)據(jù)ReadwithAutoprecharge:帶予頁充的讀數(shù)據(jù)命令Write:寫數(shù)據(jù)WritewithAutoprecharge:帶預(yù)充的寫數(shù)據(jù)命令PrechargeallBanks:預(yù)充所有的數(shù)據(jù)塊PrechargeSelectedBank:預(yù)充相應(yīng)的數(shù)據(jù)塊BurstStop:停止連續(xù)操作AutoRefresh:自動刷新BurstReadSingleWrite:連續(xù)讀&單個寫SelfRefresh:自刷新Prechargepowerdown:預(yù)充掉電Clocksuspend-時鐘掛起表l中,各符號含義如下H:高電平L:低電平V:相應(yīng)的數(shù)值(由數(shù)據(jù)的地址決定)X:高阻態(tài)。如圖l所示,本發(fā)明用于SRAM接口轉(zhuǎn)SDRAM接口的電路,包括CPU、復(fù)雜可編程邏輯器件和SDRAM芯片。所述的CPU包括一個SRAM接口,該SRAM接口的寫控制端WE、讀控制端RE、片選信號端CS、地址信號端ADDR分別與所述復(fù)雜可編程邏輯器件的第一寫控制端WE1、讀控制端RE、片選信號端CS、第一地址信號端ADDRl相連,所述的CPU的數(shù)據(jù)信號端DATA與所述SDRAM芯片的數(shù)據(jù)信號端DATA相連。所述復(fù)雜可編程邏輯器件的列地址鎖存信號RAS、行地址鎖存信號CAS、第二寫控制端WE2、塊地址信號端BANK、第二地址信號端ADDR2、時鐘使能信號CKE分別與所述SDRAM芯片的列地址鎖存信號RAS、行地址鎖存信號CAS、寫控制端WE、塊地址信號端BANK、地址信號端ADDR、時鐘使能信號CKE相連。CPLD作為CPU和SDRAM之間的一個橋梁,CPU通過SRAM接口向CPLD發(fā)送讀寫請求;CPLD根據(jù)CPU的時序要求,向SDRAM發(fā)送相關(guān)的命令序列。復(fù)雜可編程邏輯器件是Lattice公司的LC4064V,包含64個邏輯單元,實(shí)現(xiàn)了CPU通過SRAM總線對SDRAM進(jìn)行操作,利用SDRAM芯片取代SRAM作為系統(tǒng)的數(shù)據(jù)存儲體。相同數(shù)據(jù)容量SDRAM的價格比SRAM要便宜很多;LC4064V只有64個可編程的邏輯單元,是一款價格非常低廉的CPLD;所以本發(fā)明方案的價格非常便宜,具有很強(qiáng)的實(shí)用價值。CPLD的MCLK是整個邏輯系統(tǒng)的驅(qū)動時鐘,實(shí)現(xiàn)過程中可以選擇50MHz的壓控振蕩器。SDRAM的CS信號在實(shí)現(xiàn)過程中直接接地,這樣可以節(jié)省CPLD的邏輯單元。復(fù)雜可編程邏輯器件每隔64毫秒向所述的SDRAM芯片的每行數(shù)據(jù)發(fā)送N個數(shù)據(jù)自動刷新的命令序列,從而了保證SDRAM的數(shù)據(jù)完整性。N由SDRAM的行的數(shù)量決定。例如,64MB(MegaByte)的SDRAM包含4096行數(shù)據(jù)單元,所以每隔64毫秒,應(yīng)該發(fā)送4096個自動刷新命令。為了節(jié)省整個系統(tǒng)的功耗,復(fù)雜可編程邏輯器件每隔64毫秒向所述SDRAM發(fā)送1個時鐘掛起命令序列。圖2是CPU通過SRAM接口讀數(shù)據(jù)的時序圖。CS在讀數(shù)據(jù)過程中為低電平,ADDR輸出相應(yīng)的地址之后,RE為低電平,CPU讀取數(shù)據(jù)線上的數(shù)據(jù)。所有信號之間的時延可以根據(jù)示波器測量的數(shù)據(jù)和SDRAM的時延參數(shù)進(jìn)行調(diào)整。圖3是CPU通過SRAM接口寫數(shù)據(jù)的時序圖。CS在寫數(shù)據(jù)過程中為低電平,ADDR輸出相應(yīng)的地址之后,CPU設(shè)置數(shù)據(jù)線上的數(shù)據(jù),WE為低電平,通知SRAM芯片存儲數(shù)據(jù)。所有信號之間的時延可以根據(jù)實(shí)際的情況進(jìn)行細(xì)微地調(diào)整。圖4是CPLD實(shí)現(xiàn)的邏輯模塊的狀態(tài)轉(zhuǎn)換圖。本發(fā)明采用CPLD實(shí)現(xiàn)一個邏輯模塊,該邏輯模塊根據(jù)CPU的SRAM接口的時序要求,實(shí)現(xiàn)對SDRAM的讀寫操作。同時,該邏輯模塊根據(jù)SDRAM的自動刷新要求,每隔64毫秒,向SDRAM發(fā)送N個自動刷新的命令序列,完成SDRAM的自刷新操作。為了節(jié)省整個系統(tǒng)的功耗,該邏輯模塊每隔64mS,向SDRAM發(fā)送時鐘掛起的命令序列。本發(fā)明方法按照表1的相關(guān)操作的組合,實(shí)現(xiàn)了CPU通過SRAM總線對SDRAM進(jìn)行讀、寫和SDRAM的自刷新等操作。具體的實(shí)現(xiàn)方式如下本發(fā)明應(yīng)用上述用于SRAM接口轉(zhuǎn)SDRAM接口的電路的轉(zhuǎn)換方法,包括以下步驟所述的SDRAM芯片上電以后的初始化步驟;所述的CPU向所述復(fù)雜可編程邏輯器件發(fā)出讀數(shù)據(jù)命令之后的讀SDRAM步驟;所述的CPU向所述復(fù)雜可編程邏輯器件發(fā)出寫數(shù)據(jù)命令之后的寫SDRAM步驟。(1)SDRAM上電以后,需要對SDRAM進(jìn)行初始化,使SDRAM進(jìn)入預(yù)設(shè)的狀態(tài)。初始化步驟包括步驟Al:NoOperation,即初始化所述SDRAM芯片的所有管腳的狀態(tài);步驟A2:PrechargeallBanks,即給所有的數(shù)據(jù)塊預(yù)充電;步驟A3:Moderegisterset,根據(jù)時鐘頻率和地址范圍設(shè)置所述SDRAM芯片的相關(guān)參數(shù),如CAS的時延,BURST的類型和BURST的長度等;步驟A4:返回所述SDRAM芯片的所有管腳的初始化狀態(tài),即返回NoOperation狀態(tài)。(2)接收到CPU的讀數(shù)據(jù)要求之后,對SDRAM進(jìn)行如下的操作,使相關(guān)地址的數(shù)據(jù)出現(xiàn)在數(shù)據(jù)總線上。讀SDRAM步驟包括步驟Bl:PrechargeallBanks;步驟B2:BankActive,根據(jù)CPU給出的地址總線,激活所述SDRAM芯片的相關(guān)塊;步驟B3:Read,讀取SDRAM芯片;步驟B4:PrechargeSelectedBank,給相應(yīng)的數(shù)據(jù)塊預(yù)充電;步驟B5:返回所述SDRAM芯片的所有管腳的初始化狀態(tài),即返回NoOperation狀態(tài)。(3)接收到CPU的寫數(shù)據(jù)要求之后,對SDRAM進(jìn)行如下的操作,使相關(guān)地址的數(shù)據(jù)寫入SDRAM當(dāng)中。寫SDRAM步驟包括步驟Cl:PrechargeallBanks,給所有的數(shù)據(jù)塊預(yù)充電;步驟C2:BankActive,根據(jù)地址總線,激活所述SDRAM芯片的相關(guān)塊;步驟C3:Write,寫SDRAM芯片;步驟C4:PrechargeSelectedBank,給相應(yīng)的數(shù)據(jù)塊預(yù)充電;步驟C5:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。(4)SDRAM要求64毫秒之內(nèi)必須對所有的存儲單元進(jìn)行一次刷新。SDRAM芯片的自刷新步驟,包括步驟Dl:AutoRefresh自動刷新步驟D2:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。(5)SDRAM的狀態(tài)轉(zhuǎn)換增加時鐘掛起這個狀態(tài)是為了減小本文所介紹的方法的整體功耗。SDRAM芯片的時鐘掛起步驟,包括步驟E1:初始化所述SDRAM芯片的所有管腳的狀態(tài);步驟E2:Clocksuspend,即時鐘掛起,這是SDRAM的一個狀態(tài),SDRAM輸入管腳狀態(tài)的變化見表l,輸出管腳沒有變化;步驟E3:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并非用來限定本發(fā)明的實(shí)施范圍。即凡依本發(fā)明申請專利范圍的內(nèi)容所作的等效變化與修飾,都應(yīng)為本發(fā)明的技術(shù)范疇。權(quán)利要求1、一種用于SRAM接口轉(zhuǎn)SDRAM接口的電路,其特征在于包括CPU、復(fù)雜可編程邏輯器件和SDRAM芯片,所述的CPU包括一個SRAM接口,該SRAM接口的寫控制端WE、讀控制端RE、片選信號端CS、地址信號端ADDR分別與所述復(fù)雜可編程邏輯器件的第一寫控制端WE1、讀控制端RE、片選信號端CS、第一地址信號端ADDR1相連,所述的CPU的數(shù)據(jù)信號端DATA與所述SDRAM芯片的數(shù)據(jù)信號端DATA相連,所述復(fù)雜可編程邏輯器件的列地址鎖存信號RAS、行地址鎖存信號CAS、第二寫控制端WE2、塊地址信號端BANK、第二地址信號端ADDR2、時鐘使能信號CKE分別與所述SDRAM芯片的列地址鎖存信號RAS、行地址鎖存信號CAS、寫控制端WE、塊地址信號端BANK、地址信號端ADDR、時鐘使能信號CKE相連。2、根據(jù)權(quán)利要求1所述的用于SRAM接口轉(zhuǎn)SDRAM接口的電路,其特征在于所述復(fù)雜可編程邏輯器件是Lattice公司的LC4064V,其驅(qū)動時鐘MCLK是50MHz的壓控振蕩器。3、根據(jù)權(quán)利要求1所述的用于SRAM接口轉(zhuǎn)SDRAM接口的電路,其特征在于所述SDRAM芯片的片選信號端CS直接接地。4、根據(jù)權(quán)利要求1所述的用于SR雇接口轉(zhuǎn)SDRAM接口的電路,其特征在于所述復(fù)雜可編程邏輯器件每隔64毫秒向所述的SDRAM芯片發(fā)送數(shù)據(jù)自動刷新的命令序列。5、根據(jù)權(quán)利要求1所述的用于SRAM接口轉(zhuǎn)SDRAM接口的電路,其特征在于所述復(fù)雜可編程邏輯器件每隔64毫秒向所述SDRAM發(fā)送時鐘掛起命令序列。6、一種應(yīng)用上述權(quán)利要求15所述用于SRAM接口轉(zhuǎn)SDRAM接口的電路的轉(zhuǎn)換方法,其特征在于包括以下步驟所述的SDRAM芯片上電以后的初始化步驟;所述的CPU向所述復(fù)雜可編程邏輯器件發(fā)出讀數(shù)據(jù)命令之后的讀SDRAM步驟;所述的CPU向所述復(fù)雜可編程邏輯器件發(fā)出寫數(shù)據(jù)命令之后的寫SDRAM步驟。7、根據(jù)權(quán)利要求6所述的SRAM接口轉(zhuǎn)SDRAM接口的轉(zhuǎn)換方法,其特征在于該方法還包括所述SDRAM芯片的自刷新步驟,包括步驟D1:自刷新;步驟D2:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。8、根據(jù)權(quán)利要求6所述的SRAM接口轉(zhuǎn)SDRAM接口的轉(zhuǎn)換方法,其特征在于該方法還包括所述SDRAM芯片的時鐘掛起步驟,包括步驟E1:初始化所述SDRAM芯片的所有管腳的狀態(tài);步驟E2:時鐘掛起;步驟E3:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。9、根據(jù)權(quán)利要求6所述的SRAM接口轉(zhuǎn)SDRAM接口的轉(zhuǎn)換方法,其特征在于所述的初始化步驟包括步驟A1:初始化所述SDRAM芯片的所有管腳的狀態(tài);步驟A2:給所有的數(shù)據(jù)塊預(yù)充電;步驟A3:根據(jù)時鐘頻率和地址范圍設(shè)置所述SDRAM芯片的相關(guān)參數(shù);步驟A4:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。10、根據(jù)權(quán)利要求6所述的SRAM接口轉(zhuǎn)SDRAM接口的轉(zhuǎn)換方法,其特征在于所述的讀SDRAM步驟包括步驟B1:給所有的數(shù)據(jù)塊預(yù)充電;步驟B2:根據(jù)CPU給出的地址總線,激活所述SDRAM芯片的相應(yīng)數(shù)據(jù)塊;步驟B3:讀取SDRAM芯片;步驟B4:給相應(yīng)的數(shù)據(jù)塊預(yù)充電;步驟B5:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。所述的寫SDRAM步驟包括步驟C1:給所有的數(shù)據(jù)塊預(yù)充電;步驟C2:根據(jù)地址總線,激活所述SDRAM芯片的相應(yīng)數(shù)據(jù)塊;步驟C3:寫SDRAM芯片;步驟C4:給相應(yīng)的數(shù)據(jù)塊預(yù)充電;步驟C5:返回所述SDRAM芯片的所有管腳的初始化狀態(tài)。全文摘要本發(fā)明公開了一種用于SRAM接口轉(zhuǎn)SDRAM接口的電路和轉(zhuǎn)換方法,該轉(zhuǎn)換電路包括CPU、CPLD和SDRAM芯片,CPU包括一個SRAM接口,該SRAM接口的WE、RE、CS、ADDR端分別與CPLD的相應(yīng)信號端相連,CPU的數(shù)據(jù)信號端DATA與SDRAM芯片的數(shù)據(jù)信號端DATA相連。CPLD的列地址鎖存信號RAS、行地址鎖存信號CAS、第二寫控制端WE2、塊地址信號端BANK、第二地址信號端ADDR2、時鐘使能信號CKE分別與所述SDRAM芯片的相應(yīng)信號端相連。本發(fā)明應(yīng)用在手持終端當(dāng)中,SRAM接口轉(zhuǎn)成SDRAM接口,CPU可以通過SRAM總線接口對SDRAM進(jìn)行讀、寫等操作。文檔編號G11C7/10GK101364428SQ200810200129公開日2009年2月11日申請日期2008年9月19日優(yōu)先權(quán)日2008年9月19日發(fā)明者武石申請人:嘉興聞泰通訊科技有限公司