本技術(shù)涉及具有改進(jìn)的漂移補償?shù)拇鎯ζ鲀?nèi)計算裝置。
背景技術(shù):
1、眾所周知,存儲器內(nèi)計算裝置使用存儲器陣列的存儲器單元的特定布置以單元級執(zhí)行模擬數(shù)據(jù)處理。
2、例如,存儲器內(nèi)計算裝置用于執(zhí)行乘法和累加(mac)操作,例如采用mac操作來實現(xiàn)諸如神經(jīng)網(wǎng)絡(luò)之類的機器學(xué)習(xí)算法。
3、乘法和累加操作提供輸出向量y1、…、ym,作為輸入向量x1、…、xn乘以計算權(quán)重gij的向量或矩陣,例如:
4、即:
5、
6、存儲器內(nèi)計算裝置將計算權(quán)重gij存儲在存儲器的單元中,并且以單元級執(zhí)行乘法和求和(累加)操作。
7、具體而言,對于每個輸出向量yi,已知的存儲器內(nèi)裝置產(chǎn)生指示相應(yīng)mac操作的電流,即并且包括具有離散化所述電流的相應(yīng)模數(shù)轉(zhuǎn)換器(adc)的讀取電路。
8、存儲器內(nèi)計算裝置使得能夠避免在存儲器和細(xì)化(elaboration)電路之間來回傳送數(shù)據(jù)。因此,存儲器內(nèi)計算裝置的性能不受存儲器和細(xì)化電路之間的數(shù)據(jù)傳送帶寬的限制,并且具有低功耗。
9、然而,注意到,在已知的存儲器內(nèi)計算裝置中,指示mac操作的電流經(jīng)受例如由于存儲在存儲器單元中的計算值的時間漂移而導(dǎo)致的錯誤。因此,已知的存儲器內(nèi)計算裝置具有低計算精度。
10、需要克服現(xiàn)有技術(shù)的缺點。
技術(shù)實現(xiàn)思路
1、根據(jù)本實用新型的一個方面,公開了一種存儲器內(nèi)計算裝置,其特征在于,所述存儲器內(nèi)計算裝置包括:字線激活電路,所述字線激活電路被配置為接收指示多個輸入值的輸入信號并且提供多個激活信號,其中,每個激活信號隨著相應(yīng)輸入值的變化而變化;偏置電路,所述偏置電路被配置為響應(yīng)于參考電流而提供偏置電壓;存儲器陣列,所述存儲器陣列包括耦接到位線并且各自耦接到相應(yīng)字線的多個存儲器單元,其中,所述位線被配置為接收所述偏置電壓,其中,每個存儲器單元包括用于存儲相應(yīng)的計算權(quán)重的存儲元件以及用于從所述相應(yīng)字線接收相應(yīng)的激活信號的選擇元件,其中,流過每個存儲器單元的相應(yīng)的單元電流由所述存儲元件和所述選擇元件基于所述偏置電壓、相應(yīng)的激活信號和相應(yīng)的計算權(quán)重而產(chǎn)生,并且其中,流過所述位線的位線電流隨著耦接到所述位線的存儲器單元的單元電流之和的變化而變化;以及數(shù)字檢測器,所述數(shù)字檢測器耦接到位線并且被配置為對所述位線電流進(jìn)行采樣,并且作為響應(yīng),提供至少一個輸出信號。
2、根據(jù)本實用新型的至少一個實施例,所述偏置電路包括具有可變參考阻抗的參考網(wǎng)絡(luò),所述參考電流流過所述參考網(wǎng)絡(luò),其中,所述偏置電壓隨著所述參考電流和所述可變參考阻抗的變化而變化。
3、根據(jù)本實用新型的至少一個實施例,所述參考網(wǎng)絡(luò)包括被配置為具有參考跨導(dǎo)值的參考存儲器陣列,其中,所述可變參考阻抗隨著所述參考跨導(dǎo)值的變化而變化,所述參考存儲器陣列表示所述存儲器陣列的統(tǒng)計性顯著的樣本。
4、根據(jù)本實用新型的至少一個實施例,所述激活信號各自是脈沖信號,所述脈沖信號的持續(xù)時間是相應(yīng)輸入值的比例函數(shù)。
5、根據(jù)本實用新型的至少一個實施例,所述字線激活電路包括被配置為提供定時器信號的定時器,以及被配置為將所述定時器信號與相應(yīng)的輸入值進(jìn)行比較并且作為響應(yīng)提供相應(yīng)的激活信號的多個輸入時間轉(zhuǎn)換器。
6、根據(jù)本實用新型的至少一個實施例,所述定時器被配置為響應(yīng)于振蕩器電流提供所述定時器信號,其中,所述定時器被配置為以隨著所述振蕩器電流的變化而變化的更新頻率來更新所述定時器信號。
7、根據(jù)本實用新型的至少一個實施例,所述定時器被配置為根據(jù)所述參考電流產(chǎn)生所述振蕩器電流。
8、根據(jù)本實用新型的至少一個實施例,所述存儲器內(nèi)計算裝置還被配置為從用戶接收外部信號,其中,所述振蕩器電流隨著所述外部信號的變化而變化。
9、根據(jù)本實用新型的至少一個實施例,所述定時器包括積分級和計數(shù)器級,并且被配置為執(zhí)行多個連續(xù)的定時迭代,其中,在每個定時迭代中:所述積分級被配置為生成指示所述振蕩器電流的時間積分的相應(yīng)積分信號,將所述積分信號與振蕩器閾值進(jìn)行比較,并且響應(yīng)于所述積分信號達(dá)到所述振蕩器閾值而復(fù)位所述積分信號;以及所述計數(shù)器級被配置為響應(yīng)于所述積分信號達(dá)到所述振蕩器閾值而更新所述定時器信號。
10、根據(jù)本實用新型的至少一個實施例,所述字線激活電路被配置為將所述定時器信號與最大計數(shù)信號進(jìn)行比較,并且作為響應(yīng),提供結(jié)束計算信號,其中,所述數(shù)字檢測器被配置為接收所述結(jié)束計算信號并且響應(yīng)于接收到所述結(jié)束計算信號而停止對所述位線電流進(jìn)行采樣。
11、根據(jù)本實用新型的至少一個實施例,所述數(shù)字檢測器包括積分級和計數(shù)器級,并且被配置為執(zhí)行多個連續(xù)的采樣迭代,其中,在每個采樣迭代中:所述積分級被配置為生成指示所述位線電流的時間積分的積分信號,將所述積分信號與采樣閾值進(jìn)行比較,并且響應(yīng)于所述積分信號達(dá)到所述采樣閾值而復(fù)位所述積分信號;以及所述計數(shù)器級被配置為響應(yīng)于所述積分信號達(dá)到所述采樣閾值而更新所述輸出信號。
12、根據(jù)本實用新型的至少一個實施例,所述數(shù)字檢測器的積分級具有與所述定時器的積分級相同的電路圖。
13、根據(jù)本實用新型的至少一個實施例,所述積分級包括具有提供所述積分信號的輸出端的第一反相器以及耦接在所述第一反相器的輸出端處的積分電容元件,其中,所述第一反相器被配置為接收指示所述位線電流的偏置電流。
14、根據(jù)本實用新型的至少一個實施例,所述第一反相器具有被配置為接收指示所述積分信號達(dá)到所述采樣閾值的控制信號的輸入端,并且其中,所述第一反相器被配置為隨著所述控制信號的變化,用所述偏置電流對所述積分電容元件進(jìn)行充電或者將所述積分電容元件放電。
15、根據(jù)本實用新型的至少一個實施例,所述積分級包括具有第一輸入端和輸出端的第一運算放大器以及耦接在所述第一運算放大器的第一輸入端和所述第一運算放大器的輸出端之間的積分電容元件,并且其中,所述第一運算放大器被配置為在所述第一輸入端處接收指示所述位線電流的電流。
16、根據(jù)本實用新型的至少一個實施例,所述積分級包括具有開關(guān)閾值并接收所述積分信號的第二反相器,其中,所述采樣閾值是所述第二反相器的開關(guān)閾值。
17、根據(jù)本實用新型的至少一個實施例,所述積分級包括具有第一輸入端和第二輸入端的第二運算放大器,并且其中,所述第二運算放大器被配置為在所述第一輸入端處接收所述積分信號并且在所述第二輸入端處接收所述采樣閾值。
18、根據(jù)本實用新型的至少一個實施例,所述積分信號是第一積分信號并且所述采樣閾值是第一采樣閾值,所述積分級包括第一積分電路,所述第一積分電路被配置為生成所述第一積分信號,將所述第一積分信號與所述第一采樣閾值進(jìn)行比較并且復(fù)位所述第一積分信號,所述積分級還包括第二積分電路以及耦接在所述第一積分電路和所述第二積分電路之間的開關(guān)電路;其中,所述第二積分電路被配置為生成指示所述位線電流的時間積分的第二積分信號,將所述第二積分信號與第二采樣閾值進(jìn)行比較,并且響應(yīng)于所述第二積分信號達(dá)到所述第二采樣閾值而復(fù)位所述第二積分信號;其中,所述計數(shù)器級被配置為還響應(yīng)于所述第二積分信號達(dá)到所述第二采樣閾值而更新所述輸出信號;其中,所述開關(guān)電路被配置為響應(yīng)于所述第一積分信號達(dá)到所述第一采樣閾值而禁用所述第一積分電路并且啟用所述第二積分電路,并且響應(yīng)于所述第二積分信號達(dá)到所述第二采樣閾值而啟用所述第一積分電路并且禁用所述第二積分電路。
19、根據(jù)本實用新型的至少一個實施例,所述存儲器單元各自具有包括所述存儲元件和所述選擇元件并且在公共節(jié)點和參考電勢節(jié)點之間延伸的電流路徑,其中,所述選擇元件被配置為隨著相應(yīng)激活信號的變化而選擇性閉合相應(yīng)的電流路徑。
20、根據(jù)本實用新型的至少一個實施例,所述存儲器單元是非易失性存儲器單元。
21、根據(jù)本實用新型,提供了一種存儲器內(nèi)計算裝置及其控制方法。
22、在實施例中,存儲器內(nèi)計算裝置被配置為接收指示多個輸入值的輸入信號并提供至少一個輸出信號。所述存儲器內(nèi)計算裝置包括:字線激活電路,所述字線激活電路被配置為接收輸入信號并且提供多個激活信號,每個激活信號隨著相應(yīng)輸入值的變化而變化;偏置電路,所述偏置電路被配置為響應(yīng)于參考電流而提供偏置電壓;存儲器陣列,所述存儲器陣列包括耦接到位線并各自耦接到相應(yīng)字線的多個存儲器單元,所述位線被配置為接收所述偏置電壓,所述存儲器單元被配置為各自存儲相應(yīng)的計算權(quán)重并且各自從相應(yīng)字線接收相應(yīng)的激活信號,所述存儲器單元被配置為各自流過相應(yīng)的單元電流,該單元電流隨著所述偏置電壓、相應(yīng)的激活信號和相應(yīng)的計算權(quán)重的變化而變化,所述位線被配置為流過作為所述單元電流之和的位線電流;以及數(shù)字檢測器,所述數(shù)字檢測器耦接到所述位線,被配置為對所述位線電流進(jìn)行采樣,并且作為響應(yīng),提供至少一個輸出信號。
23、在實施例中,提供了一種方法,用于控制被配置為接收指示多個輸入值的輸入信號并提供至少一個輸出信號的存儲器內(nèi)計算裝置。所述存儲器內(nèi)計算裝置包括字線激活電路、偏置電路、存儲器陣列和數(shù)字檢測器,所述存儲器陣列包括耦接到位線并且各自耦接到相應(yīng)字線的多個存儲器單元,所述存儲器單元被配置為各自存儲相應(yīng)計算權(quán)重并且各自從相應(yīng)字線接收相應(yīng)激活信號,所述存儲器單元被配置為各自流過相應(yīng)的單元電流,該單元電流隨著偏置電壓、相應(yīng)激活信號和相應(yīng)計算權(quán)重的變化而變化,所述位線被配置為流過作為所述單元電流之和的位線電流。所述方法包括:通過所述字線激活電路向所述存儲器單元提供多個激活信號,每個激活信號隨著相應(yīng)輸入值的變化而變化;根據(jù)參考電流產(chǎn)生偏置電壓并且將所述偏置電壓施加到所述位線;以及由所述數(shù)字檢測器對所述位線電流進(jìn)行采樣,并且作為響應(yīng),提供所述至少一個輸出信號。