專利名稱:存儲器與存儲器寫入方法
技術領域:
本發明涉及一種存儲器,特別涉及這種存儲器的寫入方法。
背景技術:
儲存單元...等。此類儲存單元通過一寫入電流脈沖改變其電阻值,以設定其 儲存的位值。
以下敘述相變儲存單元(Phase Change Memory cell, PCM cell)的特性。 相變儲存單元可在晶相(crystamne)與非晶相(amorphous)兩種狀態間切換。在 寫入電流脈沖具有高振幅與短脈沖寬度的狀況下,相變儲存單元切換至非晶 相,具有高阻值;此時,相變儲存單元處于一重置模式(reset),所記錄的數 據為位值'l'。在寫入電流脈沖具有低振幅與長脈沖寬度的狀況下,相變儲存 單元切換至晶相狀態,具有低阻值;此時,相變儲存單元處于一設定模式(set), 所記錄的數據為位值'0'。
然而,在晶相/非晶相切換過程中,可能會有轉換不完全的狀況發生。 美國專利公開文本US2005/0068804A1列舉一種解決方案,專門應用于切換 至非晶相狀態(重置模式)的相變儲存單元。此既有技術首先提供初步的寫入 電流脈沖輸入儲存單元;接著驗證該儲存單元的電阻值是否已成功轉換;若 尚未成功轉換則增加寫入電流脈沖的振幅,并且反復上述驗證、增加振幅以 及寫入動作直到成功轉換儲存單元的電阻值為止。
然而,上述既有技術僅能應用于切換至重置模式的相變儲存單元,并不 能應用于切換至設定模式的相變儲存單元。由于切換至設定模式所需的寫入 電流脈沖的振幅較切換至重置模式所需的振幅小,在切換至設定模式的例子 中,若以上述既有技術一^M也增加振幅,有可能導致振幅過高,儲存單元轉 而切換成重置模式。
因此,此技術領域需要一種新的存儲器技術,得以令其儲存單元正確地 在晶相/非晶相間切換。
發明內容
本發明提供一種存儲器,其中包括一儲存單元、 一阻值判斷器以及一寫 入電流脈沖產生器。該阻值判斷器負責判斷該儲存單元的電阻值范圍。該寫 入電流脈沖產生器負責產生一寫入電流脈沖輸入該儲存單元以改變該儲存 單元的電阻值。其中,該寫入電流脈沖產生器根據該儲存單元的電阻值范圍 決定該寫入電流脈沖的脈沖寬度、或振幅、或脈沖寬度與振幅。
在同時控制該寫入電流脈沖的脈沖寬度與振幅的實施方式中,本發明的 寫入電流脈沖產生器包括一振幅控制器、 一脈沖寬度控制器以及一脈沖寬度 控制開關。根據該儲存單元的電阻值范圍,該振幅控制器輸出一作用電流并 且決定該作用電流的大小。該脈沖寬度控制器負責輸出一脈沖,并且才艮據該 儲存單元的電阻值范圍決定該脈沖的脈沖寬度。該脈沖寬度控制開關耦接于 該振幅控制器與該儲存單元之間,其導通狀態由該脈沖控制,用以于導通時 傳送該作用電流至該儲存單元。
本發明還披露一種存儲器寫入方法,包括判斷一儲存單元的電阻值范 圍;以及根據該儲存單元的電阻值范圍決定一寫入電流脈沖的脈沖寬度、或 振幅、或脈沖寬度與振幅;以及產生該寫入電流脈沖輸入該儲存單元以改變 該儲存單元的電阻值。
在某些實施方式中,本發明的儲存單元為相變儲存單元,并且,本發明 應用于將相變儲存單元準確地切換至一重置模式或一設定模式。 為使本發明的上述和其它目的、特征、和優點能更明顯易懂,'下文特舉 出數個實施例,并結合附圖作詳細說明。
圖1以方塊解本發明的存儲器的一種實施方式;
圖2圖解本發明寫入電流脈沖產生器的一種實施方式;
圖3圖解本發明寫入電流脈沖產生器的另一種實施方式;
圖4為第二節點t2的電平、參考電平VT、與脈沖306的波形;
圖5圖解本發明寫入電流脈沖產生器的另一種實施方式;
圖6圖解本發明阻值判斷器的一種實施方式;
圖7為本發明的解碼器的一種實施方式;圖8圖解本發明阻值判斷器的另一種實施方式;
圖9圖解本發明寫入電流脈沖產生器的另一種實施方式;
圖10以流程圖說明此方法的一種實施方式;以及
圖11以流程圖說明本發明的存儲器寫入方法的另一種實施方式。
附圖符號說明
102-儲存單元;
104-阻值判斷器;
106 寫入電流脈沖產生器;
108 ~用以傳送儲存單元的電阻值范圍的信號線;
110-寫入電流脈沖;
202 儲存單元;
204 相變儲存元件;
206-字符線開關;
302~》文電元件;
304~信號線,用以于放電狀態下導通放電開關Sdc;
306 ~信號線,用以傳送一脈沖控制寫入電流脈沖的脈沖寬度;
502-方丈電元件;
504 ~電流4竟;
600~阻值判斷器;
602 控制單元;
604~鎖存器;
606 儲存單元;
608 觸發信號;
700~解碼器;
802 儲存單元;
902 振幅控制器;
904 脈沖寬度控制器;
906 脈沖寬度控制開關;
908 儲存單元;
910~脈沖;912~電流產生元件; 914-電流鏡;
916 ~電流產生元件的控制端; ArA^ 信號線,標示儲存單元的電阻值范圍; C~電容; cmp ~比較器;
d廣dn-開關S-Sn的控制信號;
I-作用電流;
I廣In-電流源;
Ia、 Ib-第一、第二電流源;
Ir~參考電流;
OUT-寫入電流脈沖產生器的輸出端;
R、 R廠Rn-! 電阻;
S廣Sn、 SW廣SWN.! 開關;
Sdc 放電開關;
tl、 t2 第一、第二節點;
V廣Vn-電壓源;
Vb、 Vw-V,廣闞值電平;
VceH-儲存單元電平;
VT~參考電平。
具體實施例方式
圖1以方塊解本發明的存儲器的一種實施方式,其中包括一儲存單 元102、 一阻值判斷器104以及一寫入電流脈沖產生器106。阻值判斷器104 判斷儲存單元102的電阻值范圍(判斷結果由信號線108傳送)。寫入電流脈 沖產生器106負責產生一寫入電流脈沖110輸入該儲存單元102以改變該儲 存單元102的電阻值。其中,寫入電流脈沖110的脈沖寬度由寫入電流脈沖 產生器106根據儲存單元102的電阻值范圍(信號線108所傳送的信號)決定。
圖2圖解寫入電流脈沖產生器106的一種實施方式,其中包括多個電流 源I
In、多個開關s廣sn以及一解碼器(未顯示于圖2)。所述電流源I廣lN 輸出具有不同脈沖寬度的多個電流脈沖。所述開關S^SN對應所述電流源
9IdN,分別耦接于所述電流源Ii-lN與該寫入電流脈沖產生器的輸出端OUT
之間。開關S^SN的導通狀態由解碼器所輸出的控制信號Di-Dw控制;隨 著儲存單元202的電阻值范圍不同導通不同的開關,以令適當的電流脈沖得 以輸入該儲存單元202 。
圖2的實施方式所采用的儲存單元為相變儲存單元,其中包括一相變元 件204與一字符線控制開關206。在其它實施方式中,也可采用其它利用電 流改變其電阻值的儲存單元。
圖3圖解寫入電流脈沖產生器106的另一種實施方式,其中包括多個電 圧源V廣Vn、多個開關S廣Sw、 一電容C、 一放電元件302、 一放電開關 Sdc、 一比較器cmp與一解碼器(未顯示于圖3中)。所述電壓源Vi ~ Vn提供 具有不同電平的多個電壓。電容C耦接于一第一節點ti與一地端之間。所述 開關S,-SN對應所述電壓源V, Vn,分別耦接于所述電壓源V!-VN與該 第一節點t,之間。在一充電狀態下,解碼器輸出控制信號D「DN控制開關 S廣SN的導通狀態;隨著儲存單元的電阻值范圍不同導通不同的開關,以適 當的電壓源對電容C充電。放電元件302耦接于一第二節點t2與該地端之間。 放電開關Sdc耦接于上述第一與第二節點(t!與t》之間,在一放電狀態下導通 (圖3信號304在放電狀態下導通放電開關Sdc),以令儲存于電容C的電平經 由放電元件302放電。在上述放電狀態下,第二節點t2的電平遞減。比較器 cmp將第二節點12的電平與一參考電平VT比較,以輸出一脈沖306決定該 寫入電流脈沖110的脈沖寬度。圖4為第二節點t2的電平、參考電平VT、 與脈沖306的波形。
在圖3所示的實施方式中,放電元件302為一晶體管。該晶體管的啟動 與否亦由信號3 04控制,故該晶體管于上述放電狀態時啟動。
圖5圖解寫入電流脈沖產生器106的另一種實施方式。與圖3相較,圖 5所采用的放電元件502包括一電流鏡504與一電阻R。電流鏡504經由電
阻R耦接第二節點t2,以提供放電電流下拉第二節點t2的電平。與放電元件
302相較,放電元件502將以較平穩的速度下拉第二節點t2的電平且可通過 控制電流鏡的電流量,進而控制放電時間,如此經由cmp輸出的訊號會根據 放電時間長短來變化脈沖寬度。此外,在其它實施方式中,放電元件可僅包 括電流鏡504,不包括電阻R。
圖6圖解阻值判斷器104的一種實施方式。阻值判斷器600包括一第一電流源Ia、 一第二電流源Ib、多個電阻R廣RN.!、多個開關SW廣SWn.p —
控制單元602、 一比較器cmp以及一鎖存器604。第一電流源Ij是供一第一 電流流經該儲存單元606,以產生一儲存單元電平Veell。第二電流源Ib提供 一第二電流。電阻& ~ 具有不同的電阻值;在此實施方式中, R^R2〈…〈Rn小所述開關SW廣SW^對應所述電阻R廣RN^分別耦接該 第二電流源Ib至所述電阻Ri R^。控制單元602在不同時段依序導通不同 的開關SWr SWp ...或SWN.1(J該第二電流流經導通的開關所對應的電阻 后產生一閾值電平Vb。比較器cmp比較該儲存單元電平Va與該閾值電平 Vb并將比較結果輸入鎖存器604寄存。待比較器cmp在不同時段的輸出都 寄存于鎖存器604后, 一觸發信號608觸發鎖存器604將鎖存器604內容一 并輸出,故信號線A「A^標示該儲存單元606的電阻值范圍。舉例說明,
假設儲存單元606的電阻值位于R,與R2之間,則(Ap A2..... Aw)為(l 、
0.....0);假設儲存單元606的電阻值位于R2與113之間,則(A!、 A2、 A3.....
A^)為(1、 1、 0..... 0)。
圖7為本發明的解碼器的一種實施方式。圖6的電阻R4 R^提供N 個電阻值范圍區塊。解碼器700將阻值判斷器600所提供的信號A「A^ 經過簡單的邏輯運算后,以信號Di DN標示該儲存單元606的電阻值位于
哪一個電阻值范圍區塊。舉例說明,(A!、 A2..... an.D為(l、 0..... O)的
狀況下,解碼器700輸出的(Dp D2、 D3.....DN)為(O、 1、 0..... 0),代
表儲存單元606的電阻值位于R!與R2之間。解碼器700所輸出的信號D! ~ Dn即困2、 3、 5的開關s廣sn的控制信號。
圖8圖解阻值判斷器104的另一種實施方式,其中包括一第一電流源Ia、
多個第二電流源Ib、多個電阻R廣R^以及多個比較器cmp。第一電流源Ia 提供一第一電流流經儲存單元802,以產生一儲存單元電平Veell。所述電阻 R, ~ RN.,具有不同的電阻值。所述第二電流源Ib分別耦接所述電阻R, ~ Rn.!, 以產生多個閾值電平Vb廣VbN.i。所述比較器cmp分別比較所述閾值電平 Vbl ~ Vw^與該儲存單元電平Veell。比較結果At ~ AN"代表該儲存單元802 的電阻值范圍。同樣地,信號A廣A^也可由圖7所示的解碼器700解碼, 產生圖2、 3、 5的開關S廣SN的控制信號D廣DN。
在某些實施方式中,圖1的寫入電流脈沖產生器106不僅會設定該寫入 電流脈沖110的脈沖寬度,還包括根據該儲存單元102的電阻值范圍(由信號108傳送)決定該寫入電流脈沖IIO的振幅。圖9為此種寫入電流脈沖產生器 的一種實施方式。此寫入電流脈沖產生器包括一振幅控制器902、 一脈沖寬 度控制器904、以及一脈沖寬度控制開關906。振幅控制器902輸出一作用 電流I并且根據儲存單元908的電阻值范圍決定該作用電流I的大小。脈沖 寬度控制器904輸出一脈沖910,其脈沖寬度由脈沖寬度控制器904根據儲 存單元908的電阻值范圍所決定。脈沖寬度控制開關906耦接振幅控制器902 輸入該作用電流I至儲存單元908,其導通狀態由脈沖910控制。
電路902為本發明振幅控制器的一種實施方式,其中包括多個電壓源 V! Vn、多個開關S廣SN、 一電流產生元件912、 一電流鏡914以及一解碼 器(未顯示于電路902中,可以解碼器700實現)。所述電壓源V廣Vn提供 具有不同電平的多個電壓。電流產生元件912具有一控制端916。根據控制 端916所接收的電平,電流產生元件912產生一參考電流Ir。電流鏡914耦 接該電流產生元件912,以根據該參考電流Ir產生該作用電流I。所述開關 S, ~ SN對應所述電壓源V, ~ VN,分別耦接于所述電壓源Vi ~ VN與該電流產 生元件912的控制端916之間。解碼器將根據儲存單元908的電阻值范圍產 生控制所述開關S, ~ SN的多個控制信號D! ~ DN,以在不同電阻值范圍下導 通不同開關傳送不同電壓至916。該作用電流I的大小即實際輸入該儲存單 元908的電-充的纟展幅。
電路904采用圖3所示的電路作為本發明的脈沖寬度控制器,以產生脈 沖910控制該脈沖寬度控制開關卯6的導通狀態,決定該作用電流I輸入該 儲存單元908的作用時間。本發明亦可釆用圖5所示的電路、或其它具有相 同功能的電路實現本發明的脈沖寬度控制器。
參考圖9,寫入電流脈沖產生器也可僅包括振幅控制器902而不包括脈 沖寬度控制器904以及脈沖寬度控制開關906。此實施方式中,寫入電流脈 沖產生器僅通過改變該寫入電流脈沖的振幅調整該儲存單元的電阻值。
本發明還提供一種存儲器寫入方法。圖10以流程圖說明此方法的一種 實施方式。此方式在步驟S1002判斷一儲存單元的電阻值范圍;然后在步驟 S1004根據該儲存單元的電阻值范圍決定一寫入電流脈沖的脈沖寬度、或振 幅、或脈沖寬度與振幅,并且產生該寫入電流脈沖輸入該儲存單元以改變該 儲存單元的電阻值。在某些實施方式中,步驟S1004不僅決定該寫入電流脈 沖的脈沖寬度,還根據該儲存單元的電阻值范圍決定該寫入電流脈沖的振幅。
圖11以流程圖說明本發明的存儲器寫入方法的另一種實施方式。此方
式在步驟S1102判斷一儲存單元的電阻值范圍;在步驟S1104根據該儲存單 元的電阻值范圍決定一寫入電流脈沖的脈沖寬度、或振幅、或脈沖寬度與振 幅,并且產生該寫入電流脈沖輸入該儲存單元以改變該儲存單元的電阻值; 待該寫入電流脈沖輸入該儲存單元后,在步驟S1106判斷該儲存單元的電阻 值是否落于一理想電阻值范圍;并且于該儲存單元的電阻值落于該理想電阻 值范圍時停止傳送該寫入電流脈沖至該儲存單元,于該儲存單元的電阻值不 落于該理想電阻值范圍時重復步驟S1104。
為了實現圖11所披露的存儲器寫入方法,本發明的存儲器可采用多組 阻值判斷器與寫入電流脈沖產生器。經由精心設計,不同組的阻值判斷器所 可以判斷的電阻值范圍越來越精密,并且所對應的寫入電流脈沖產生器所輸 出的寫入電流脈沖對該儲存單元的電阻值的影響也越來越細致。
本發明所采用的儲存單元可為相變儲存單元,本發明的技術可應用于將 該儲存單元切換至重置模式(高阻值)或設定模式(低阻值)。本發明技術也可 應用于其它以電流改變其阻值的儲存單元。
本發明雖以多個實施例披露如上,但其并非用以限定本發明的范圍,本 領域技術人員,在不脫離本發明的精神和范圍的前提下,當可做若干的更改 與修飾,因此本發明的保護范圍應以本發明的權利要求為準。
權利要求
1.一種存儲器,包括一儲存單元;一阻值判斷器,判斷該儲存單元的電阻值范圍;以及一寫入電流脈沖產生器,產生一寫入電流脈沖輸入該儲存單元以改變該儲存單元的電阻值,其中,該寫入電流脈沖的脈沖寬度乃由該寫入電流脈沖產生器根據該儲存單元的電阻值范圍所決定。
2. 如權利要求1所述的存儲器,其中該寫入電流脈沖產生器包括 多個電流源,輸出具有不同脈沖寬度的多個電流脈沖;多個開關,對應所述電流源,耦接于所述電流源與該寫入電流脈沖產生 器的輸出端之間;以及一解碼器,根據該儲存單元的電阻值范圍產生控制所述開關的多個控制信號,以于不同電阻值范圍下導通不同開關。
3. 如權利要求1所述的存儲器,其中該寫入電流脈沖產生器還包括 多個電壓源,提供具有不同電平的多個電壓;一電容,耦接于一第一節點與一地端之間;多個開關,對應所述電壓源,耦接于所述電壓源與該第一節點之間; 一解碼器,在一充電狀態下,根據該儲存單元的電阻值范圍產生控制所 述開關的多個控制信號,以在不同電阻值范圍下導通不同開關; 一放電元件,耦接于一第二節點與該地端之間; 一放電開關,耦接于上述第一與第二節點之間,在一放電狀態下導通;以及一比較器,將該第二節點的電平與一參考電平比較,以輸出一脈沖決定 該寫入電流脈沖的脈沖寬度。
4. 如權利要求3所述的存儲器,其中該放電元件為一晶體管,該晶體管 在該放電狀態時啟動。
5. 如權利要求3所述的存儲器,其中該放電元件包括一電流鏡與 一電阻; 其中該電流鏡經由該電阻耦接該第二節點,以提供放電電流下拉該第二節點 的電平。
6. 如權利要求1所述的存儲器,其中該寫入電流脈沖產生器還包括根據該儲存單元的電阻值范圍決定該寫入電流脈沖的振幅。
7. 如權利要求1所述的存儲器,其中該阻值判斷器包括 一第一電流源,提供一第一電流流經該儲存單元,以產生一儲存單元電平;一第二電流源,提供一第二電流; 多個電阻,具有不同的電阻值;多個開關,對應所述電阻,耦接該第二電流源至所述電阻;以及一控制單元,在不同時段導通不同的上述開關;一比較器,比較該儲存單元電平與一閾值電平,該閾值電平由導通的開 關所對應的電阻與該第二電流產生;一鎖存器,寄存該比較器在不同時段的輸出,并且在一觸發信號致能時 輸出所寄存的數據以標示該儲存單元的電阻值范圍。
8. 如權利要求1所述的存儲器,其中該阻值判斷器包括 一第一電流源,提供一第一電流流經該儲存單元,以產生一儲存單元電平;多個電阻,具有不同的電阻值;多個第二電流源,分別耦接所述電阻,以產生多個閾值電平; 多個比較器,分別比較所述閾值電平與該儲存單元電平; 其中,所述比較器的輸出端數據標示該儲存單元的電阻值范圍。
9. 一種存儲器,包括 一儲存單元;一阻值判斷器,判斷該儲存單元的電阻值范圍;以及一寫入電流脈沖產生器,產生一寫入電流脈沖輸入該儲存單元以改變該儲存單元的電阻值,其中,該寫入電流脈沖的振幅由該寫入電流脈沖產生器根據該儲存單元的電阻值范圍所決定。
10. 如權利要求9所述的'存儲器,其中該寫入電流脈沖產生器包括 多個電壓源,提供具有不同電平的多個電壓;一電流產生元件,具有一控制端,根據該控制端所接收的電平產生一參 考電流;多個開關,對應所述電壓源,耦接于所述電壓源與該電流產生元件的控 制端之間;一解碼器,根據該儲存單元的電阻值范圍產生控制所述開關的多個控制信號,以于不同電阻值范圍下導通不同上述開關;以及一電流鏡,耦接該電流產生元件,以根據該參考電流產生上述寫入電流 輸入該儲存單元。
11. 如權利要求9所述的存儲器,其中該寫入電流脈沖產生器還根據該 儲存單元的電阻值范圍決定該寫入電流脈沖的脈沖寬度。
12. 如權利要求11所述的存儲器,其中該寫入電流脈沖產生器包括 一振幅控制器,用以輸出 一作用電流并且根據該儲存單元的電阻值范圍決定該作用電流的大小;一脈沖寬度控制器,輸出 一脈沖并且根據該儲存單元的電阻值范圍決定 該脈沖的脈沖寬度;以及一脈沖寬度控制開關,耦接該振幅控制器至該儲存單元,其導通狀態由 該脈沖控制。
13. 如權利要求12所述的存儲器,其中該振幅控制器包括 多個電壓源,提供具有不同電平的多個電壓;一電流產生元件,具有一控制端,根據該控制端所接收的電平產生一參 考電流;多個開關,對應所述電壓源,耦接于所述電壓源與該電流產生元件的控 制端之間;一解碼器,根據該儲存單元的電阻值范圍產生控制所述開關的多個控制 信號,以于不同電阻值范圍下導通不同開關;以及一電流鏡,耦接該電流產生元件,以根據該參考電流產生該作用電流。
14. 如權利要求12所述的存儲器,其中該脈沖寬度控制器包括 多個電壓源,提供具有不同電平的多個電壓;一電容,耦接于一第一節點與一地端之間;多個開關,對應所述電壓源,耦接于所述電壓源與該第一節點之間; 一解碼器,在一充電狀態下,根據該儲存單元的電阻值范圍產生控制所 述開關的多個控制信號,以于不同電阻值范圍下導通不同開關; 一放電元件,耦接于一第二節點與該地端之間;一放電開關,耦接于上述第一與第二節點之間,在一放電狀態下導通;以及一比較器,將該第二節點的電平與一參考電平比較,以輸出上述脈沖。
15. 如權利要求14所述的存儲器,其中該放電元件為一晶體管,該晶體管于該放電狀態時啟動。
16. 如權利要求14所述的存儲器,其中該放電元件包括一電流鏡與一電阻;其中該電流鏡經由該電阻耦接該第二節點,以提供放電電流下拉該第二 節點的電平。
17. —種存儲器寫入方法,包括 判斷 一儲存單元的電阻值范圍;根據該儲存單元的電阻值范圍決定一寫入電流脈沖的脈沖寬度、或振 幅、或脈沖寬度與振幅;以及產生該寫入電流脈沖輸入該儲存單元以改變該儲存單元的電阻值。
18. 如權利要求17所述的存儲器寫入方法,其中還包括 判斷該儲存單元的電阻值是否落于一理想電阻值范圍;當該儲存單元的電阻值落于該理想電阻值范圍時停止傳送該寫入電流 脈沖至該儲存單元;并且當該儲存單元的電阻值不落于該理想電阻值范圍時反復上述根據該儲 存單元的電阻值范圍產生該寫入電流脈沖輸入該儲存單元的步驟。
19. 如權利要求17所述的存儲器寫入方法,其中,該儲存單元為相變儲 存單元。
20. 如權利要求19所述的存儲器寫入方法,應用于將該儲存單元切換至 一重置模式或一設定模式。
全文摘要
本發明提供一種存儲器及存儲器寫入方法。此存儲器包括一儲存單元、一阻值判斷器以及一寫入電流脈沖產生器。該阻值判斷器負責判斷該儲存單元的電阻值范圍。該寫入電流脈沖產生器負責產生一寫入電流脈沖輸入該儲存單元以改變該儲存單元的電阻值。其中,該寫入電流脈沖產生器根據該儲存單元的電阻值范圍決定該寫入電流脈沖的脈沖寬度、或振幅、或脈沖寬度與振幅。
文檔編號G11C11/56GK101599301SQ20081010849
公開日2009年12月9日 申請日期2008年6月6日 優先權日2008年6月6日
發明者林文斌, 林烈萩, 江培嘉, 許世玄 申請人:財團法人工業技術研究院;力晶半導體股份有限公司;南亞科技股份有限公司;茂德科技股份有限公司;華邦電子股份有限公司