一種雙埠存儲器字線控制電路的製作方法
2023-04-26 20:28:36

本發明涉及存儲器技術領域,尤其涉及一種雙埠存儲器字線控制電路。
背景技術:
存儲器是數字系統中常用的器件之一。隨著存儲晶片容量的增大,器件的成品率呈指數規律下降,另一方面在不同的應用環境下,靜態隨機讀取存儲器SRAM的存儲單元(bit-cell)可能會發生翻轉造成存儲數據的錯誤。因此在存儲器電路設計時需要通過差錯監測和糾正(Error Detecting And Correcting,簡稱EDAC)電路進行數據的糾錯和回寫來實現存儲器可靠性的提高。
通常EDAC電路依據不同的糾錯碼和數據位寬,能夠糾正一個或多個的存儲單元的錯誤,然後將正確數據輸出。但如果存儲單元的錯誤數據沒有得到及時的改正,則會形成軟錯誤(soft error)的積累,也就是多個存儲單元發生翻轉,最終導致EDAC算法不能糾正的多位錯誤,造成存儲器數據讀出失效。因此,當檢測到存儲單元的錯誤時,必須對其及時回寫糾正,從而避免因為軟錯誤的累積導致的失效。
現有技術中,對於EDAC電路糾錯計算得出的正確數據,一般先存入冗餘的多位存儲單元,並將其地址信號存儲在鎖存器中,當控制信號滿足一定要求時,伺機回寫到原有地址的存儲單元。例如來自中國專利「一種糾錯SRAM的回寫方法」(申請號:201310643265.9)提出將正確碼字存入冗餘的n位存儲單元,並將其地址信息存儲在鎖存器中,然後根據不同的控制信號產生出回寫寫入信號以及回寫地址信號,確保地址信號不變,將存儲在n位存儲單元的數據寫入SRAM,完成回寫功能。又如來自中國專利「一種容錯存儲器及其糾錯容錯方法」(申請號:200710176138.7)提出所提出的存儲器包含冗餘行和冗餘列,通過一系列的判斷電路確定是否將冗餘行或冗餘列的存儲數據替換故障行或故障列的存儲數據,完成存儲 器的自修復。
然而,在實現本發明的過程中,申請人發現現有技術的方法需要最少一行或一列的冗餘存儲單元,用於存儲EDAC電路糾錯計算得出的正確數據,同時還需要將地址信息存儲在鎖存器中,使得晶片的面積更大。同時,上述方法需要引入新的控制觸發信號,以判斷何時將冗餘數據寫回存儲器,這樣增加了該信號的生成電路,使得硬體設計變得更為複雜。
技術實現要素:
(一)要解決的技術問題
鑑於上述技術問題,本發明提供了一種雙埠存儲器字線控制電路,以解決現有技術中存儲器需要冗餘行存儲單元或冗餘列存儲單元用於存儲EDAC電路糾錯計算得出的正確數據,實現減少存儲器冗餘存儲單元,簡化控制電路設計的目的。
(二)技術方案
本發明雙埠存儲器字線控制電路包括:控制模塊,用於根據存儲器埠的讀寫使能信號wren、EDAC開啟使能信號EDAC_en和雙埠地址比較信號add_compare產生兩路的控制信號-(cont0、cont1);時鐘延時模塊,用於由時鐘信號clk以及兩延時控制信號(Delay_adjust0、Delay_adjust1)產生四路的延時信號(delay0、delay1、delay2、delay3);以及字線控制信號產生模塊,與所述控制模塊和時鐘延時模塊電性連通,用於依據兩路的控制信號(cont0、cont1)和四路的延時信號(delay0、delay1、delay2、delay3),產生一字線控制信號word_line_en。
(三)有益效果
從上述技術方案可以看出,本發明雙埠存儲器字線控制電路具有以下有益效果:
(1)通過控制模塊、時鐘延時產生模塊和字線控制信號產生模塊可以產生帶糾錯功能字線控制信號,可以實現一個時鐘周期內完成數據讀出和回寫,因此糾錯數據無需冗餘的存儲單元,減少了晶片面積;
(2)根據不同的埠功能,通過控制模塊、時鐘延時產生模塊和字線控制信號產生模塊產生不同的字線控制信號,可以覆蓋正常讀寫模式、帶糾錯功能的讀出數據後回寫功能,和沒有EDAC功能的雙埠存儲器字 線控制電路實現兼容。
附圖說明
圖1為根據本發明實施例雙埠存儲器字線控制電路的結構示意圖;
圖2為圖1所示字線控制電路中控制模塊的結構示意圖;
圖3為圖1所示字線控制電路中延時模塊的結構示意圖;
圖3A為圖3所示延時模塊中固定延時鏈的結構示意圖
圖3B為圖3所示延時模塊中可調延時鏈的結構示意圖;
圖4為圖1所示字線控制電路中字線控制信號產生模塊的結構示意圖;
圖4A為圖4所示字線控制信號產生模塊中脈衝產生子模塊的結構示意圖;
圖5為圖1所示雙埠存儲器字線控制電路在不帶糾錯功能的正常存儲器讀功能時字線控制信號的時序圖;
圖6為圖1所示雙埠存儲器字線控制電路在不帶糾錯功能的正常存儲器寫功能時字線控制信號的時序圖;
圖7為圖6為圖1所示雙埠存儲器字線控制電路在有糾錯功能時的存儲器讀寫字線控制信號的時序圖;
圖8列出了圖1所示字線控制電路不同埠模式下字線控制信號。
具體實施方式
本發明提供了一種雙埠存儲器字線控制電路,可以在一個時鐘周期裡完成存儲器數據的讀出、EDAC糾錯數據的生成以及生成數據的回寫,同時本發明還可以和沒有EDAC功能的雙埠存儲器字線控制電路實現兼容。
為使本發明的目的、技術方案和優點更加清楚明白,以下結合具體實施例,並參照附圖,對本發明進一步詳細說明。
在本發明的一個示例性實施例中,提供了一種雙埠存儲器字線控制電路。圖1為根據本發明實施例雙埠存儲器字線控制電路的結構示意圖。如圖1所示,本實施例雙埠存儲器字線控制電路包括:
控制模塊,用於根據存儲器埠的讀寫使能信號wren、EDAC開啟使能信號EDAC_en和雙埠地址比較信號add_compare產生兩路的控制信 號-第一控制信號cont0和第二控制信號cont1;
時鐘延時模塊,用於由時鐘信號以及兩延時控制信號-Delay_adjust0和Delay_adjust1產生四路的延時信號-delay0、delay1、delay2、delay3;
字線控制信號產生模塊,與控制模塊和時鐘延時模塊電性連通,用於依據兩路控制信號-cont0和cont1和四路的延時信號-delay0、delay1、delay2、delay3,產生一字線控制信號-word_line_en。
以下對本實施例雙埠存儲器字線控制電路的各個組成部分進行詳細說明。
圖2為圖1所示字線控制電路中控制模塊的結構示意圖。如圖2所示,該控制模塊包括:
第一反相器,其輸入端輸入讀寫使能信號wren,其輸出端輸出第一控制信號cont0;
第一二選一多路選擇器,其0埠連接至第一反相器的輸出端,其1埠輸入雙埠地址比較信號add_compare,其選擇端輸入EDAC開啟使能信號EDAC_en,其輸出端輸出第二控制信號cont1。
本實施例中,各信號的定義如下:
(1)讀寫使能信號wren:wren的邏輯值為1時,表示存儲器埠功能為寫;其值為0時,表示存儲器埠功能為讀。
(2)EDAC開啟使能信號EDAC_en:EDAC_en的邏輯值為1時,表示存儲器埠功能為開啟EDAC;其值為0時,表示存儲器埠功能為關閉EDAC。
(3)雙埠地址比較信號add_compare:add_compare的邏輯值為1時,表示存儲器兩埠地址相同;其值為0時,表示存儲器兩埠地址相同。
由上述結構可知,第一控制信號cont0和第二控制信號contl1表徵當前雙埠存儲器的工作狀態。第一控制信號cont0為讀寫使能信號wren的反相信號。EDAC開啟使能信號EDAC_en作為第一二選一多路選擇器的控制信號,當EDAC開啟使能信號EDAC_en為0時,第二控制信號contl1同樣為讀寫使能信號wren的反相信號;當EDAC開啟使能信號EDAC_en為1時,第二控制信號contl1輸出雙埠地址比較信號add_compare。
圖3為圖1所示字線控制電路中延時模塊的結構示意圖。如圖3所示,該時鐘延時模塊包括:
第一級固定延時鏈,其輸入端輸入時鐘信號clk,其輸出端輸出第一延時信號delay0;
第一級可調延時鏈,其輸入端連接至第一級固定延時鏈的輸出端,其控制端輸入第一延時信號Delay_adjust0,其輸出端輸出第二延時信號delay1;
第二級固定延時鏈,其輸入端連接至第一級可調延時鏈的輸出端,其輸出端輸出第三延時信號delay2;
第二級可調延時鏈,其輸入端連接至第二級固定延時鏈的輸出端,其控制端輸入第二延時信號Delay_adjust1,其輸出端輸出第四延時信號delay3。
圖3A為圖3所示延時模塊中固定延時鏈的結構示意圖。如圖3所示,該固定延時鏈由數級反向器組成,級數為偶數。具體級數由存儲器規模大小及工藝模型確定。輸入信號連接第一個反相器的輸入端,第一個反相器的輸出端連接第二個反相器的輸入端,以此類推,經過偶數級反相器的輸出端為固定延時鏈的輸出端。
本實施例中,第一級固定延時鏈和第二級固定延時鏈均為如圖3A所示的固定延時鏈,兩者的結構相同,級數由存儲器規模大小及工藝模型確定。一般情況下,第一級固定延時鏈延時的長短需與雙埠存儲器中解碼器的延時匹配,第二級固定延時鏈延時的長短需與雙埠存儲器中糾錯算法模塊中計算出糾錯數據的延時匹配。
圖3B為圖3所示延時模塊中可調延時鏈的結構示意圖。如圖3B所示,該可調延時鏈由級聯的兩固定延時子鏈和第二二選一多路選擇器組成。該兩固定延時鏈均為圖3A所示的固定延時鏈。
在該可調延時鏈中,輸入信號連接第一固定延時子鏈中第一個反相器的輸入端,第一個反相器的輸出端連接第二個反相器的輸入端,以此類推,經過第一固定延時子鏈中偶數級反相器的輸出端信號定義為A。信號A連接到第二二選一多路選擇器的0埠。同時,信號A連接到下一固定延時子鏈第一個反相器的輸入端,和上一組類似,經過第二固定延時子鏈中偶 數級反相器的輸出端信號連接到第二二選一多路選擇器的1埠。Delay_adjust信號作為第二二選一選擇器的輸出選擇信號決定輸出埠和0埠或1埠相連。
本實施例中,第一級可調延時鏈和第二級可調延時鏈均為如圖3B所示的可調延時鏈,兩者的結構相同,級數可調。一般情況下,第一級可調延時鏈延時的長短需與雙埠存儲器中靈敏放大器模塊的開啟時間匹配,第二級可調延時鏈延時的長短需與糾錯數據完成寫入存儲器的延時匹配。
圖4為圖1所示字線控制電路中字線控制信號產生模塊的結構示意圖。如圖4所示。該字線控制信號產生模塊包括:
第三二選一多路選擇器,其0埠輸入第三延時信號delay2,其1埠輸入第一延時信號delay0,其選擇端輸入第一控制信號contl0;
第四二選一多路選擇器,其0埠輸入第四延時信號delay3,其1埠輸入第二延時信號delay1,其選擇端輸入第二控制信號contl1;
脈衝產生子模塊,其輸入端連接至第四二選一多路選擇器的輸出端,其輸出連接寄存器的清零端,用於字線控制信號產生模塊中寄存器的清零。
寄存器,為帶0清零端的寄存器,即當清零端信號為0時,寄存器輸出為0,其時鐘埠連接至第三二選一多路選擇器的輸出端,其清零埠連接至脈衝產生模塊的輸出端,其數據輸入埠連接固定的邏輯1,其輸出端輸出字線控制信號word_line_en。
其中,字線控制信號word_line_en的邏輯值為1時表示字線打開,表示存儲器可以正常讀寫;其值為0時,表示存儲器不能讀寫。
圖4A為圖4所示字線控制信號產生模塊中脈衝產生子模塊的結構示意圖。如圖4A所示,該脈衝產生子模塊包括:
一級數為奇數的反相器鏈,其第一個反相器的輸入端連接至第四二選一多路選擇器的輸出端;以及
一與非門,其第一輸入端連接至反相器鏈的輸出端,其第二輸入端連接至第四二選一多路選擇器的輸出端,其輸出端連接至寄存器的清零埠。
本實施例字線控制電路中,根據不同的埠功能,通過控制模塊、時鐘延時產生模塊和字線控制信號產生模塊產生不同的字線控制信號,可以覆蓋正常讀寫模式、帶糾錯功能的讀出數據後回寫功能,和沒有EDAC功 能的雙埠存儲器字線控制電路實現兼容。以下分別介紹三種模式字線控制信號產生具體實施方式:
(1)不帶糾錯功能的正常存儲器讀功能:此時的埠信號為wren為0,EDAC_en為0;經過控制模塊產生的控制信號cont0為1,cont1為1。cont0和cont1經過字線控制信號產生模塊分別選擇delay0和delay1。其中delay0連接寄存器的時鐘埠,delay1經過脈衝產生模塊連接寄存器的清零端,寄存器的輸入端連接固定1電平,寄存器的輸出定義為讀字線控制信號。具體圖例如圖5所示;
(2)不帶糾錯功能的正常存儲器寫功能:此時的讀寫使能信號wren為1,EDAC開啟使能信號EDAC_en為0;經過控制模塊產生的控制信號cont0為0,cont1為0。cont0和cont1經過字線控制信號產生模塊分別選擇delay2和delay3。其中delay2連接寄存器的時鐘埠,delay3經過脈衝產生模塊連接寄存器的清零端,寄存器的輸入端連接固定1電平,寄存器的輸出定義為寫字線控制信號。具體圖例如圖6所示;
(3)帶糾錯功能的存儲器讀出數據後回寫功能:此時的讀寫使能信號為wren為0,EDAC開啟使能信號EDAC_en為1;
3.1兩埠地址不同時:add_compare為0,經過控制模塊產生的控制信號cont0為1,cont1為0。cont0和cont1經過字線控制信號產生模塊分別選擇delay0和delay3。其中delay0連接寄存器的時鐘埠,delay3經過脈衝產生模塊連接寄存器的清零端,寄存器的輸入端連接固定1電平,寄存器的輸出定義為寫字線控制信號。具體圖例如圖7所示:
3.2兩埠地址相同時:add_compare為1,經過控制模塊產生的控制信號cont0為1,cont1為1。cont0和cont1經過字線控制信號產生模塊分別選擇delay0和delay1。其中delay0連接寄存器的時鐘埠,delay1經過脈衝產生模塊連接寄存器的清零端,寄存器的輸入端連接固定1電平,寄存器的輸出定義為寫字線控制信號。此時字線控制信號和正常讀的字線控制信號完全相同,具體圖例如圖5所示。
圖8列出了圖1所示字線控制電路不同埠模式下(包括雙埠地址是否相同)字線控制信號,從圖8中可以看出,當EDAC_en為0時,也就是存儲器沒有糾錯功能,讀寫字線分別正常開啟,分別完成存儲器的正 常讀寫功能;當EDAC_en為1且add_compare為0時,也就是存儲器有糾錯功能且雙埠地址不同,此時埠字線開啟覆蓋正常讀寫字線開啟,滿足此埠在一個時鐘周期讀出數據後回寫的時序功能要求,因此不需要存儲EDAC糾錯數據,也就避免增加冗餘存儲單元,同時本設計可以和沒有EDAC功能的雙埠存儲器字線控制電路實現兼容。當EDAC_en為1且add_compare為1時,也就是存儲器有糾錯功能且雙埠地址相同,此時埠字線與正常讀的字線控制信號完全相同,避免雙埠數據寫同一地址衝突。
可見,本發明可以覆蓋正常讀寫模式、帶糾錯功能的讀出數據後回寫功能,和沒有EDAC功能的雙埠存儲器字線控制電路實現兼容。
至此,已經結合附圖對本發明實施例進行了詳細描述。依據以上描述,本領域技術人員應當對本發明雙埠存儲器字線控制電路有了清楚的認識。
需要說明的是,在附圖或說明書正文中,未繪示或描述的實現方式,均為所屬技術領域中普通技術人員所知的形式,並未進行詳細說明。此外,上述對各元件和方法的定義並不僅限於實施例中提到的各種具體結構、形狀或方式,本領域普通技術人員可對其進行簡單地更改或替換,例如:
(1)本發明所採用的固定延時鏈和可調延時鏈,只是為滿足對讀時序和寫時序的精細調節,如對讀寫時序要求不嚴格,也可全部採用固定延時鏈。同時,採用反相器組成延時鏈只是生成延時鏈的一種形式,也可用金屬或氧化物電阻等生成延時鏈。
(2)本發明所採用的選擇器,不限定設計選擇器的電路,既可以採用傳輸門組成的選擇器也可以採用與非門等形式的電路。
(3)本發明所採用的電路是基於上述埠定義下所設計的電路原理圖,如埠定義不同,也可採用不同的電路實現方式。
(4)本發明所採用的帶0清零端的寄存器只是為滿足上述埠定義下的清零功能,如埠定義不同,可用其他的帶清零端的寄存器替換,只需要實現脈衝清零功能即可。
綜上所述,本發明雙埠存儲器字線控制電路可以在一個時鐘周期裡完成存儲器數據的讀出、EDAC糾錯數據的生成以及生成數據的回寫,從 而糾錯數據無需冗餘的存儲單元,減少了晶片面積,簡化了電路設計。此外,本發明還可以覆蓋正常讀寫模式、帶糾錯功能的讀出數據後回寫功能,和沒有EDAC功能的雙埠存儲器字線控制電路實現兼容。
以上所述的具體實施例,對本發明的目的、技術方案和有益效果進行了進一步詳細說明,所應理解的是,以上所述僅為本發明的具體實施例而已,並不用於限制本發明,凡在本發明的精神和原則之內,所做的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。