半導(dǎo)體存儲裝置的溫度檢測電路的制作方法
【專利摘要】半導(dǎo)體存儲裝置的溫度檢測電路包括固定周期振蕩器、溫度可變信號發(fā)生單元和計(jì)數(shù)單元。振蕩器被配置成當(dāng)使能信號被使能時,生成固定周期振蕩信號。溫度可變信號發(fā)生單元被配置成當(dāng)使能信號被使能時,生成其使能間隔基于溫度變化而改變的溫度可變信號。計(jì)數(shù)單元被配置成在溫度可變信號的使能間隔期間,對振蕩信號計(jì)數(shù)以生成溫度信息信號。
【專利說明】半導(dǎo)體存儲裝置的溫度檢測電路
[0001]相關(guān)申請的交叉引用
[0002]本申請是 申請人:于2009年12月18日向中華人民共和國國家知識產(chǎn)權(quán)局提出的申請?zhí)枮镃N200910260968.7、發(fā)明名稱為“半導(dǎo)體存儲裝置的溫度檢測電路”的中國發(fā)明專利申請的分案申請。
【技術(shù)領(lǐng)域】
[0003]實(shí)施例涉及半導(dǎo)體存儲裝置,以及更具體地,涉及半導(dǎo)體存儲裝置的溫度檢測電路。
【背景技術(shù)】
[0004]通常,半導(dǎo)體存儲裝置通過在電容器中電氣地充入或放出電荷來存儲數(shù)據(jù)。因此,將半導(dǎo)體存儲裝置如此設(shè)計(jì)使得半導(dǎo)體存儲裝置能執(zhí)行用于基本上維持電容器的電壓電平的刷新操作。換句話說,半導(dǎo)體存儲裝置通過周期地和重復(fù)地執(zhí)行刷新操作,可以保持所存儲的數(shù)據(jù)。
[0005]隨著半導(dǎo)體存儲裝置近來趨向低功耗,已經(jīng)提供了降低刷新操作期間所消耗的功率的各種技術(shù)。作為降低刷新操作期間所消耗的功率的技術(shù)中的一種,存在這樣的技術(shù),其通過基于溫度變化來改變刷新操作的重復(fù)周期,執(zhí)行刷新操作。
[0006]因此,為了基于溫度變化改變刷新操作的重復(fù)周期,在半導(dǎo)體存儲裝置內(nèi)部需要溫度檢測電路。
【發(fā)明內(nèi)容】
[0007]本發(fā)明的實(shí)施例包括半導(dǎo)體存儲裝置的溫度檢測電路,其能夠檢測半導(dǎo)體存儲裝置內(nèi)部的溫度變化。
[0008]在本發(fā)明的一個實(shí)施例中,一種半導(dǎo)體存儲裝置的溫度檢測電路包括:固定周期振蕩器,被配置成當(dāng)使能信號被使能時,生成振蕩信號;溫度可變信號發(fā)生單元,被配置成當(dāng)使能信號被使能時,生成其使能間隔基于溫度變化而變化的溫度可變信號;以及計(jì)數(shù)單元,被配置成在溫度可變信號的使能間隔期間,對振蕩信號計(jì)數(shù),以生成溫度信息信號。
[0009]在本發(fā)明的另一實(shí)施例中,一種半導(dǎo)體存儲裝置的溫度檢測電路包括:溫度可變信號發(fā)生單元,被配置成當(dāng)使能信號被使能時,使能溫度可變信號,并且對電容器充電,以及當(dāng)電容器的電壓電平升高到高于參考電壓電平時,使電容器放電,以及當(dāng)電容器的電壓電平降低到低于參考電壓電平時,禁用溫度可變信號;以及計(jì)數(shù)單元,被配置成在溫度可變信號的使能間隔期間,對振蕩信號計(jì)數(shù),以生成溫度信息信號。
【專利附圖】
【附圖說明】
[0010]結(jié)合附圖描述各個特征、方面和實(shí)施例,其中:
[0011]圖1是示意性地示出根據(jù)實(shí)施例的半導(dǎo)體存儲裝置的溫度檢測電路的結(jié)構(gòu)的方框圖;
[0012]圖2是示出圖1的固定周期振蕩器的實(shí)施例的結(jié)構(gòu)的圖;以及
[0013]圖3是示出圖1的溫度可變信號發(fā)生單元的實(shí)施例的結(jié)構(gòu)的圖。
【具體實(shí)施方式】
[0014]在下文中,將通過優(yōu)選實(shí)施例、參考附圖描述根據(jù)本發(fā)明的示例性實(shí)施例的半導(dǎo)體存儲裝置的溫度檢測電路。
[0015]圖1是示意性地示出根據(jù)實(shí)施例的半導(dǎo)體存儲裝置的溫度檢測電路的結(jié)構(gòu)的方框圖。如圖1所示,根據(jù)所公開的實(shí)施例的半導(dǎo)體存儲裝置的溫度檢測電路包括固定周期振蕩器100,溫度可變信號發(fā)生單元200和計(jì)數(shù)單元300。
[0016]當(dāng)使能信號‘en’被使能時,固定周期振蕩器100生成振蕩信號‘osc’。使能信號‘en’可以是片內(nèi)終結(jié)(on-die termination)使能信號。通常,將半導(dǎo)體存儲裝置配置成當(dāng)半導(dǎo)體存儲裝置通過焊點(diǎn)輸出數(shù)據(jù)時,通過將半導(dǎo)體存儲裝置的外部和內(nèi)部的阻抗值進(jìn)行匹配,可以使輸出數(shù)據(jù)的噪聲最小。這樣,執(zhí)行用于匹配半導(dǎo)體存儲裝置的外部阻抗和內(nèi)部阻抗的操作的電路就稱為片內(nèi)終結(jié)電路。通過將片內(nèi)終結(jié)使能信號用作實(shí)施例的使能信號‘en’,該實(shí)施例的溫度檢測電路可以在半導(dǎo)體存儲裝置執(zhí)行阻抗匹配操作的期間檢測溫度變化。
[0017]圖2是示出圖1的固定周期振蕩器的示例性實(shí)施例的結(jié)構(gòu)的圖。
[0018]如圖2所示,固定周期振蕩器100包括第一至第六反相器IVl I至IV16和第一 NAND門NDlI。第一至第六反相器IVll至IV16串聯(lián)耦合。第一 NAND門NDll接收第六反相器IV16的輸出信號和使能信號‘en’,并將其輸出信號輸出到第一反相器IV11。
[0019]參考圖1,當(dāng)使能信號‘en’被使能時,溫度可變信號發(fā)生單元200生成溫度可變信號‘signal_temp’,該溫度可變信號的使能間隔基于溫度變化而改變。即,當(dāng)使能信號‘en’被使能時,溫度可變信號發(fā)生單元200使能該溫度可變信號‘signal_temp’,然后基于溫度變化,改變溫度可變信號‘signal_temp’的禁用時間。
[0020]圖3是示出圖1的溫度可變信號發(fā)生單元200的示例性實(shí)施例的結(jié)構(gòu)的圖。
[0021]參考圖3,當(dāng)使能信號‘en’在邏輯高電平被使能時,溫度可變信號發(fā)生單元200升高電壓節(jié)點(diǎn)‘V_node’的電壓電平。此后,當(dāng)電壓節(jié)點(diǎn)‘V_node’的電壓電平升高到高于參考電壓(Vref)電平時,溫度可變信號發(fā)生單元200降低電壓節(jié)點(diǎn)‘V_node’的電壓電平,然后當(dāng)電壓節(jié)點(diǎn)“V_node”的電壓電平降低到低于參考電壓(Vref)電平時,禁用被使能的溫度可變信號“signal_temp”。此時,當(dāng)電壓節(jié)點(diǎn)‘V_node’的電壓電平升高到高于參考電壓(Vref)電平,并且隨后電壓節(jié)點(diǎn)‘V_node’的電壓電平降低時,溫度可變信號發(fā)生單元200隨溫度升高而增加電壓節(jié)點(diǎn)‘V_node’的壓降寬度,以及隨溫度降低而減小電壓節(jié)點(diǎn)‘V_node’的壓降寬度。
[0022]如圖3所示,溫度可變信號發(fā)生單元200包括控制單元210、電壓節(jié)點(diǎn)電平控制單元220、比較單元230和頻分單元240。
[0023]響應(yīng)使能信號‘en’和比較信號‘com’,控制單元210生成控制信號‘Ctrl’和反相的控制信號‘ctrlb’,即控制信號‘Ctrl’的反相信號。例如,當(dāng)使能信號‘en’在邏輯低電平被禁用時,不論比較信號‘com’如何,控制單元210禁用控制信號‘Ctrl’至邏輯高電平。另一方面,當(dāng)使能信號‘en’在邏輯高電平被使能時,控制單元210響應(yīng)比較信號‘com’,生成控制信號‘ctrl’。具體來說,如果使能信號‘en’在邏輯高電平被使能并且比較信號‘com’在邏輯高電平被使能,則控制單元210禁用控制信號‘Ctrl’至邏輯高電平,并且如果使能信號‘en’在邏輯高電平被使能并且比較信號‘com’在邏輯低電平被禁用,則使能控制信號‘Ctrl’至邏輯低電平。
[0024]控制單元210包括第七至第九反相器IV21至IV23和第二 NAND門ND21。第七反相器IV21接收比較信號‘com’。第二 NAND門ND21接收使能信號‘en’和第七反相器IV21的輸出信號。第八反相器IV22接收第二 NAND門ND21的輸出信號以輸出反相的控制信號‘ctrlb’。第九反相器IV23接收第八反相器IV22的輸出信號以輸出控制信號‘Ctrl’。
[0025]當(dāng)控制信號‘Ctrl’在邏輯低電平被使能時,電壓節(jié)點(diǎn)電平控制單元220升高電壓節(jié)點(diǎn)‘V_node’的電壓電平,并且當(dāng)控制信號‘Ctrl’在邏輯高電平被禁用時,降低電壓節(jié)點(diǎn)‘V_node’的電壓電平。
[0026]如圖3所示,電壓節(jié)點(diǎn)電平控制單元220包括充電單元221和放電單元222。
[0027]當(dāng)控制信號‘Ctrl’在邏輯低電平被使能時,充電單元221對電容器C21充電以升高電壓節(jié)點(diǎn)‘V_node’的電壓電平。
[0028]充電單元221包括第一晶體管P21和電容器C21。第一晶體管P21具有配置成接收控制信號‘Ctrl’的柵極和配置成接收外部電壓VDD的源極。電容器C21的一端耦合到第一晶體管P21的漏極,而另一端耦合到接地端VSS。
[0029]當(dāng)控制信號‘Ctrl’在邏輯高電平被禁用時,放電單元222使電容器C21放電以降低電壓節(jié)點(diǎn)‘V_node’的電壓電平。另一方面,當(dāng)控制信號‘Ctrl’在邏輯低電平被使能時,放電單元222基本上防止電壓節(jié)點(diǎn)‘V_node’的電壓電平降低。
[0030]放電單元222包括第二至第四晶體管N21、N22和P22。第二晶體管N21具有共同耦合到電壓節(jié)點(diǎn)‘V_node’的柵極和漏極。第三晶體管N22具有共同耦合到第二晶體管N21的源極的柵極和漏極,并且具有耦合到接地端VSS的源極。第四晶體管P22具有配置成接收控制信號‘Ctrl’的柵極、配置成接收外部電壓VDD的源極和耦合到第二和第三晶體管N21和N22共同耦合的節(jié)點(diǎn)的漏極。
[0031]在此,當(dāng)溫度上升時,閾值電壓電平降低,由此第二和第三晶體管N21和N22增加從電壓節(jié)點(diǎn)‘V_node’流向接地端VSS的電流量。因此,當(dāng)溫度上升時,電壓節(jié)點(diǎn)‘V_node’的壓降寬度增加。另一方面,當(dāng)溫度下降時,閾值電壓電平上升,由此第二和第三晶體管N21和N22減小從電壓節(jié)點(diǎn)‘V_node’流向接地端VSS的電流量。因此,當(dāng)溫度下降時,電壓節(jié)點(diǎn)‘V_node’的壓降寬度減小。
[0032]當(dāng)溫度上升時,放電單元222使高于參考電平(Vref)電平的電壓節(jié)點(diǎn)‘V_node’的電壓電平更快速地降低到低于參考電壓(Vref)電平,并且當(dāng)溫度下降時,放電單元222使高于參考電壓(Vref)電平的電壓節(jié)點(diǎn)‘V_node’的電壓電平更緩慢地降低到低于參考電壓(Vref)電平。另外,當(dāng)控制信號‘Ctrl’在邏輯低電平被使能時,第四晶體管P22升高第二晶體管N21的源極的電壓電平以斷開第二晶體管N21。因此,當(dāng)控制信號‘Ctrl’在邏輯低電平被使能時,放電單元222不降低電壓節(jié)點(diǎn)‘V_node’的電壓電平,并且只有當(dāng)控制信號‘Ctrl’在邏輯高電平被禁用時,才降低電壓節(jié)點(diǎn)‘V_node’的電壓電平。因此,由于第四晶體管P22確定放電單元222是否操作,第四晶體管P22可以稱為放電控制單元。[0033]比較單元230將電壓節(jié)點(diǎn)‘V_node’的電壓電平與參考電壓(Vref )電平進(jìn)行比較以生成比較信號‘com’。具體來說,如果電壓節(jié)點(diǎn)‘V_node’的電壓電平低于參考電壓(Vref)電平,則比較單元230輸出在邏輯低電平被禁用的比較信號‘com’,并且如果電壓節(jié)點(diǎn)‘V_node’的電壓電平高于參考電壓(Vref)電平,則比較單元230輸出在邏輯高電平被使能的比較信號‘com’。
[0034]比較單元230包括第五至第九晶體管N23至N25,P23和P24。第五晶體管N23通過其柵極接收參考電壓Vref。第六晶體管N24具有耦合到電壓節(jié)點(diǎn)‘V_node’的柵極。第七晶體管N25具有配置成接收參考電壓Vref的柵極、耦合到第五和第六晶體管N23和N24的源極共同耦合至的節(jié)點(diǎn)的漏極,以及耦合到接地端VSS的源極。第八晶體管P23具有配置成接收外部電壓VDD的源極和耦合到第五晶體管N23的漏極的漏極。第九晶體管P24具有配置成接收外部電壓VDD的源極,以及共同耦合到第八晶體管P23的柵極和第六晶體管N24的漏極的共同耦合至的節(jié)點(diǎn)的柵極和漏極。
[0035]接著,頻分單元240響應(yīng)反相的控制信號‘ctrlb’,生成溫度可變信號‘signal—temp’。具體來說,每當(dāng)反相的控制信號‘ctrlb’轉(zhuǎn)變到邏輯高電平,頻分單元240就使溫度可變信號‘signal_temp’的電壓電平反相。這里,從頻分單元240輸出的溫度可變信號‘signal_temp’具有作為其初始值的邏輯低電平。
[0036]頻分單元240包括第十反相器IV24和觸發(fā)器FF21。觸發(fā)器FF21通過其時鐘輸入端接收反相的控制信號‘ctrlb’。第十反相器IV24接收觸發(fā)器FF21的輸出信號,以便將其輸出信號輸出作為觸發(fā)器FF21的輸入信號。這里,觸發(fā)器FF21的輸出信號被輸出作為溫度可變信號‘signal_temp’。
[0037]參考圖1,在溫度可變信號‘signal_temp’被使能的間隔期間,計(jì)數(shù)單元300對振蕩信號‘osc’計(jì)數(shù),并且隨后生成溫度信息信號‘Temp_COde〈0:n>’。使用傳統(tǒng)的計(jì)數(shù)電路可以實(shí)現(xiàn)計(jì)數(shù)單元300。
[0038]下文將描述根據(jù)所公開的實(shí)施例的半導(dǎo)體存儲裝置的溫度檢測電路在這樣的結(jié)構(gòu)中的操作。
[0039]首先,將描述在邏輯低電平被禁用的使能信號‘en’的狀態(tài)。此時,頻分單元240的輸出信號,即溫度可變信號‘signal_temp’處于邏輯低電平的禁用狀態(tài)。
[0040]參考圖3,在這種狀態(tài)下,由于使能信號‘en’處于邏輯低電平,控制單元210使控制信號‘Ctrl’禁用至邏輯高電平。相應(yīng)地,由于反相的控制信號‘ctrlb’是控制信號‘Ctrl’的反相信號,則反相控制信號‘ctrlb’處于邏輯低電平。
[0041]另外,由于控制信號‘Ctrl’處于邏輯高電平,放電單元222降低電壓節(jié)點(diǎn)‘V_node’的電壓電平。此時,由于電壓節(jié)點(diǎn)‘V_node’的電壓電平低于參考電壓(Vref)電平,比較單元230輸出在邏輯低電平被禁用的比較信號‘com’。
[0042]接著,將假定使能信號‘en’被使能至邏輯高電平。在這種狀態(tài)下,由于比較信號‘com’處于邏輯低電平和使能信號‘en’處于邏輯高電平,控制單元210將控制信號‘Ctrl’使能至邏輯低電平。因此,反相的控制信號‘ctrlb’轉(zhuǎn)變成邏輯高電平,從而頻分單元240將溫度可變信號‘signal_temp’轉(zhuǎn)變到邏輯高電平。
[0043]另外,由于控制信號‘Ctrl’在邏輯低電平被使能,放電單元222停止降低電壓節(jié)點(diǎn)‘V_node’的電壓電平。同時,由于控制信號‘Ctrl’在邏輯低電平被使能,充電單元221對電容器C21充電以升高電壓節(jié)點(diǎn)‘V_node’的電壓電平。此時,當(dāng)電壓節(jié)點(diǎn)‘V_node’的電壓電平升高到高于參考電壓(Vref)電平時,比較單元230輸出在邏輯高電平被使能的比較信號‘com’。在這種狀態(tài)下,由于使能信號‘en’處于邏輯高電平以及比較信號‘com’處于邏輯高電平,控制單元210再次將控制信號‘Ctrl’禁用至邏輯高電平。在這種情況下,反相的控制信號‘ctrlb’也轉(zhuǎn)變成邏輯低電平。
[0044]另外,由于控制信號‘ ctrI ’在邏輯高電平被禁用,充電單元221停止對電容器C21的充電操作。同時,由于控制信號‘ ctrI ’被禁用至邏輯高電平,放電單元222使電容器C21放電以降低電壓節(jié)點(diǎn)‘V_node’的電壓電平。此時,當(dāng)電壓節(jié)點(diǎn)‘V_node’的電壓電平降低到低于參考電壓(Vref)電平時,比較單元230將比較信號‘com’禁用至邏輯低電平。因此,由于使能信號‘en’處于邏輯高電平以及比較信號‘com’處于邏輯低電平,控制單元210將控制信號‘Ctrl’再次使能至邏輯低電平。在這種情況下,反相的控制信號‘ctrlb’也再次轉(zhuǎn)變到邏輯高電平。因此,頻分單元240將在邏輯高電平被使能的溫度可變信號‘signal_temp’禁用至邏輯低電平。
[0045]用這種方式,溫度可變信號‘signal_temp’被使能至邏輯高電平,然后又被禁用至邏輯低電平。即,在溫度可變信號‘signal_temp’被使能和禁用的過程期間,根據(jù)所述實(shí)施例的溫度檢測電路對電容器C21充電和使電容器C21放電,并且基于電壓節(jié)點(diǎn)‘V_node’的電壓電平和參考電壓(Vref)電平的比較結(jié)果,使能和禁用溫度可變信號‘signal_temp’,由此重復(fù)地執(zhí)行該操作。
[0046]S卩,如果使能信號‘en’被使能,根據(jù)所述實(shí)施例的溫度可變信號發(fā)生單元200使能溫度可變信號‘signal_temp’,并對電容器C21充電以升高電壓節(jié)點(diǎn)‘V_node’的電壓電平。此后,當(dāng)電壓節(jié)點(diǎn)‘V_node’的電壓電平升高到高于參考電壓(Vref)電平時,溫度可變信號發(fā)生單元200使電容器C21放電。隨著電容器C21被放電,當(dāng)電壓節(jié)點(diǎn)‘V_node’的電壓電平降低到低于參考電壓(Vref)電平時,溫度可變信號發(fā)生單元200禁用溫度可變信號‘signal_temp’。此時,用來降低電壓節(jié)點(diǎn)‘V_node’的電壓電平也就是使電容器C21放電的第二和第三晶體管N21和N22以二極管結(jié)構(gòu)彼此耦合,并且第二和第三晶體管N21和N22基于溫度變化控制電壓節(jié)點(diǎn)‘V_node’的壓降寬度。具體來說,由于當(dāng)溫度上升時,閾值電壓電平降低,則當(dāng)溫度上升時,第二和第三晶體管N21和N22增加電壓節(jié)點(diǎn)‘V_node’的壓降寬度,并且當(dāng)溫度下降時,第二和第三晶體管N21和N22減小電壓節(jié)點(diǎn)‘V_node’的壓降覽度。
[0047]結(jié)果,溫度可變信號發(fā)生單元200使能溫度可變信號‘signal_temp’,并且當(dāng)溫度上升時,使溫度可變信號‘signal_temp’的禁用時間更早,以及當(dāng)溫度下降時,使溫度可變信號‘signal_temp’的禁用時間更晚。
[0048]因此,只在溫度可變信號‘signal_temp’的使能間隔期間才對振蕩信號‘osc’計(jì)數(shù)的計(jì)數(shù)單元300輸出編碼信號即溫度信息信號‘Temp_COde〈0:n>’,當(dāng)溫度上升時,溫度信息信號‘Temp_code〈0:n>’具有低計(jì)數(shù)值,以及當(dāng)溫度下降時,溫度信息信號‘Temp_code〈0:n>’具有高計(jì)數(shù)值。
[0049]根據(jù)示例性實(shí)施例的半導(dǎo)體存儲裝置的溫度檢測電可以基于溫度變化,增加和減小溫度可變信號的使能間隔,以及在使能間隔期間對振蕩信號計(jì)數(shù),從而最終輸出包含有關(guān)溫度變化的信息的多位編碼信號。[0050]盡管上面已經(jīng)描述了某些實(shí)施例,但本領(lǐng)域的技術(shù)人員將理解到上述實(shí)施例只是以實(shí)例的方式來描述。因此,在此所述的設(shè)備和方法不應(yīng)當(dāng)基于所述實(shí)施例進(jìn)行限制。相反,結(jié)合上述說明和附圖考慮,在此所述的裝置僅受下述的權(quán)利要求的限制。
【權(quán)利要求】
1.一種半導(dǎo)體存儲裝置的溫度檢測電路,包括: 溫度可變信號發(fā)生單元,被配置成當(dāng)使能信號被使能時,使能溫度可變信號,并且對電容器充電,以及當(dāng)所述電容器的電壓電平升高到高于參考電壓電平時,使所述電容器放電,以及當(dāng)所述電容器的電壓電平降低到低于所述參考電壓電平時,禁用所述溫度可變信號;以及 計(jì)數(shù)單元,被配置成在所述溫度可變信號的使能間隔期間,對振蕩信號計(jì)數(shù)來生成溫度信息信號。
2.如權(quán)利要求1所述的溫度檢測電路,其中,所述溫度信息信號包括多位編碼。
3.如權(quán)利要求2所述的溫度檢測電路,其中,所述溫度可變信號發(fā)生單元包括: 充電單元,被配置成當(dāng)所述使能信號被使能時,將外部電壓施加到所述電容器以對所述電容器充電;以及 放電單元,被配置成當(dāng)所述電容器的電壓電平升高到高于所述參考電壓電平時,使所述電容器放電,以及 所述溫度可變信號發(fā)生單元被配置成當(dāng)所述使能信號被使能時,使能所述溫度可變信號,以及當(dāng)所述電容器的電壓電平降低到低于所述參考電壓電平時,禁用所述溫度可變信號。
4.如權(quán)利要求3所述的溫度檢測電路,其中,所述放電單元包括: 第一晶體管,被配置成具有共同耦合到所述電容器的柵極和漏極; 第二晶體管,被配置成具有共同耦合到所述第一晶體管的源極的柵極和漏極,以及耦合到接地端的源極;以及 放電控制單元,被配置成當(dāng)所述電容器的電壓電平降低到低于所述參考電壓電平時,升高所述第一晶體管和第二晶體管共同耦合到的節(jié)點(diǎn)的電壓電平。
5.如權(quán)利要求4所述的溫度檢測電路,其中,將所述第一晶體管和第二晶體管配置成當(dāng)溫度上升時,升高從所述電容器流向所述接地端的電流量,以及當(dāng)溫度下降時,降低從所述電容器流向所述接地端的電流量。
【文檔編號】G11C11/406GK103956178SQ201410079844
【公開日】2014年7月30日 申請日期:2009年12月18日 優(yōu)先權(quán)日:2009年6月16日
【發(fā)明者】金帝潤, 李鍾天 申請人:愛思開海力士有限公司