TWI706414B - 記憶體內運算系統及其記憶體裝置 - Google Patents

記憶體內運算系統及其記憶體裝置 Download PDF

Info

Publication number
TWI706414B
TWI706414B TW108118294A TW108118294A TWI706414B TW I706414 B TWI706414 B TW I706414B TW 108118294 A TW108118294 A TW 108118294A TW 108118294 A TW108118294 A TW 108118294A TW I706414 B TWI706414 B TW I706414B
Authority
TW
Taiwan
Prior art keywords
carry
switch
electrically connected
logic
line
Prior art date
Application number
TW108118294A
Other languages
English (en)
Other versions
TW202044263A (zh
Inventor
王朝欽
蔡宗毅
陳祐瑄
Original Assignee
國立中山大學
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 國立中山大學 filed Critical 國立中山大學
Priority to TW108118294A priority Critical patent/TWI706414B/zh
Application granted granted Critical
Publication of TWI706414B publication Critical patent/TWI706414B/zh
Publication of TW202044263A publication Critical patent/TW202044263A/zh

Links

Images

Landscapes

  • Logic Circuits (AREA)

Abstract

一種記憶體內運算系統具有複數個記憶體裝置、一加法單元、一多工器及一控制電路,各該記憶體裝置具有一記憶體單元、一第一開關單元及一第二開關單元,藉由兩個記憶體裝置之該第一開關單元及該第二開關單元的切換,能夠得到兩個記憶體單元之儲存資料之間的邏輯值,該加法單元以邏輯值進行加法運算而得到加法值,最後透過控制電路及多工器將計算而得之加法值存入記憶體裝置中而達成記憶體內運算。

Description

記憶體內運算系統及其記憶體裝置
本發明是關於一種運算系統,特別是關於一種記憶體內運算系統及其記憶體裝置。
現今計算機具有儲存裝置及中央處理單元,而計算機之中央處理單元接收到運算指令時,中央處理單元會先至儲存單元讀取資料至中央處理單元進行運算,運算完成後再將運算結果回傳並寫入儲存單元中。隨著半導體先進製程的發展,中央處理單元的運算速度已經遠大於儲存單元的讀寫速度及中央處理單元與儲存單元之間的傳輸流量,使得儲存單元的讀寫時間及中央處理單元及該儲存裝置之間的傳輸時間已經成為計算機之運算速度提昇的瓶頸,也就是所謂的范紐曼瓶頸(Von Neumann bottleneck)。因此,直接在記憶體讀取及寫入時進行運算的記憶體內運算(Compute in memory)已經成為目前提昇計算機運算速度的重要發展目標之一。
本發明的主要目的在於提供一種記憶體裝置,可透過兩個開關單元在讀取記憶體單元之儲存資料的同時得到兩個儲存資料之間的邏輯值,而能 透過加法單元對邏輯值進行運算而達成記憶體內運算。
本發明之一種記憶體裝置包含一記憶體單元、一第一開關單元、一第二開關單元及一預充電電路,該記憶體單元具有一儲存節點及一反儲存節點,該第一開關單元電性連接該儲存節點及一第一邏輯線,該第二開關單元電性連接該反儲存節點及一第二邏輯線,該預充電電路電性連接該第一邏輯線及該第二邏輯線,該預充電電路用以將該第一邏輯線及該第二邏輯線拉至高電位,其中該第一開關單元受一邏輯控制訊號及該儲存節點之電位控制,以選擇性地將該第一邏輯線接地,該第二開關單元受該邏輯控制訊號及該反儲存節點之電位控制,以選擇性地將該第二邏輯線接地。
本發明之一種記憶體內運算系統包含複數個記憶體裝置及一加法單元,各該記憶體裝置具有一記憶體單元、一第一開關單元、一第二開關單元及一進位開關單元,該記憶體單元具有一儲存節點及一反儲存節點,該第一開關單元電性連接該儲存節點及一第一邏輯線,該第二開關單元電性連接該反儲存節點及一第二邏輯線,該進位開關單元電性連接該儲存節點及一進位線,該預充電電路電性連接該第一邏輯線、該第二邏輯線及該進位線,該預充電電路用以將該第一邏輯線、該第二邏輯線及該進位線拉至高電位,其中該第一開關單元受一邏輯控制訊號及該儲存節點之電位控制,以選擇性地將該第一邏輯線接地,該第二開關單元受該邏輯控制訊號及該反儲存節點之電位控制,以選擇性地將該第二邏輯線接地,且該進位開關單元受一進位控制訊號及該儲存節點之電位控制,以選擇性地將該進位線接地,該加法單元具有一邏輯電路、一加法電路及一進位電路,該邏輯電路電性連接該第一邏輯線、該第二邏輯線及該進位線,且該邏輯電路輸出複數個邏輯訊號,該加法電路電性連接該邏輯電路及該進位線,該加法電 路根據該些邏輯訊號及該進位線之一反進位值輸出一加法值,該進位電路電性連接該邏輯電路及該第二邏輯線,該進位電路根據該些邏輯訊號及該第二邏輯線之一AND訊號輸出一次位元進位值。
本發明藉由該記憶體裝置之該第一開關單元及該第二開關單元的切換得到兩個該記憶體單元之儲存資料的邏輯值,並藉由該加法單元以該些邏輯值完成加法運算,由於可直接於該些記憶體裝置中完成運算,而能克服記憶體讀寫速度及傳輸流量的限制,令運算速度大幅提昇。
請參閱第1圖,其為本發明之一實施例,一記憶體內運算系統IMCS 的方塊圖,該記憶體內運算系統IMCS包含複數個記憶體裝置100、一加法單元200、一多工器300及一控制電路400,其中,該控制電路400電性連接該些記憶體裝置100及該多工器300,該控制電路400用以控制該些記憶體裝置100之資料的寫入、讀取及運算,並控制該多工器300傳輸至各該記憶體的寫入資料。該加法單元200電性連接該些記憶體裝置100以接收該些記憶體裝置100的運算結果,且該加法單元200將運算結果進行加法運算而得到加法值及進位值,該多工器300電性連接該加法單元200以接收加法值及進位值,且該多工器300受該控制電路400的控制將加法值及進位值寫入各該記憶體裝置100中。
請參閱第2圖,為該些記憶體裝置100的電路圖,該些記憶體裝置100電性連接一第一邏輯線FLL及一第二邏輯線SLL,其中第2圖具有4個該記憶體裝置100,由上至下分別為第0至第3位元,該數量僅為了方便說明,在其他實施例,能具有更多位元之該記憶體裝置100,該些記憶體裝置100的數量並非本發明之所限。
以第0位元之該記憶體裝置100進行說明,該記憶體裝置100具有一記憶體單元110、一第一開關單元120及一第二開關單元130,該記憶體單元110具有一儲存節點Q0及一反儲存節點Qb0,該第一開關單元120電性連接該第一邏輯線FLL及該記憶體單元110之該儲存節點Q0,該第二開關單元130電性連接該第二邏輯線SLL及該記憶體單元110之該反儲存節點Qb0。
在本實施例中,該第一開關單元120具有一第一開關121及一第二開關122,該第一開關121電性連接該第一邏輯線FLL,且該第一開關121受該控制電路400之一邏輯控制訊號C0控制,該第二開關122電性連接該儲存節點Q0、該第一開關121及一接地端,且該第二開關122受該儲存節點Q0之電位控制。其中,該第一開關121及該第二開關122皆為NMOS電晶體,該第一開關121之閘極接收該邏輯控制訊號C0,該第一開關121之汲極電性連接該第一邏輯線FLL,該第一開關121之源極電性連接該第二開關122之汲極,該第二開關122之源極接地,該第二開關122之閘極電性連接該記憶體單元110之該儲存節點Q0,藉此,該第一開關單元120受該邏輯控制訊號C0及該儲存節點Q0之電位控制,而決定是否將該第一邏輯線FLL接地。
該第二開關單元130具有一第三開關131及一第四開關132,該第三開關131電性連接該第二邏輯線SLL,且該第三開關131受該邏輯控制訊號C0控制,該第四開關132電性連接該反儲存節點Qb0、該第三開關131及該接地端,且該第四開關132受該反儲存節點Qb0之電位控制。在本實施例中,該第三開關131及該第四開關132皆為NMOS電晶體,該第三開關131之閘極接收該邏輯控制訊號C0,該第三開關131之汲極電性連接該第二邏輯線SLL,該第三開關131之源極電性連接該第四開關132之汲極,該第四開關132之源極接地,該第四開關132之閘極電性連接該記憶體單元110之該反儲存節點Qb0,藉此,該第二開關單元130受該邏輯控制訊號C0及該反儲存節點Qb0之電位控制,而決定是否將該第二邏輯線SLL接地。
請參閱第2圖,以第0位元之該記憶體裝置100儲存資料0與第1位元之該記憶體裝置100儲存1進行運算為例,該記憶體裝置100的運算過程為:首先以該預充電電路PreC對該第一邏輯線FLL及該第二邏輯線SLL進行充電,將該第一邏輯線FLL及該第二邏輯線SLL拉至高電位;接著,該邏輯控制訊號C0、C1上升至高電位,導通第0位元及第1位元之該第一開關121,由於第0位元之該記憶體單元110之該儲存節點Q0為0,因此第0位元之該第二開關122截止,由於第1位元之該記憶體單元110之該儲存節點Q1為1,因此第1位元之該第二開關122導通,使得該第一邏輯線FLL經由第1位元之該第一開關121及該第二開關122接地而降至低電位;相同地,高電位之該邏輯控制訊號C0、C1也會導通第0位元及第1位元之該第三開關131,由於第0位元之該記憶體單元110之該反儲存節點Qb0為1,因此第0位元之該第四開關132導通,由於第1位元之該記憶體單元110之該反儲存節點Qb1為0,因此第1位元之該第四開關132截止,使得該第二邏輯線SLL經由第0位元之該第三開關131及該第四開關132接地而降至低電位。
同理,當第0位元之該記憶體裝置100儲存資料0與第1位元之該記憶體裝置100儲存資料0進行運算後,該第一邏輯線FLL之電位為高電位,該第二邏輯線SLL之電位為低電位。當第0位元之該記憶體裝置100儲存資料1與第1位元之該記憶體裝置100儲存資料0進行運算後,該第一邏輯線FLL之電位為低電位,該第二邏輯線SLL之電位為低電位。當第0位元之該記憶體裝置100儲存資料1與第1位元之該記憶體裝置100儲存資料1進行運算後,該第一邏輯線FLL之電位為低電位,該第二邏輯線SLL之電位為高電位。因此,該第一邏輯線FLL之電位為該邏輯控制訊號C0-C3開啟之兩個該記憶體裝置100儲存資料的NOR訊號,該第二邏輯線SLL之電位為該邏輯控制訊號C0-C3開啟之兩個該記憶體裝置100儲存資料的AND訊號,而可藉由該第一開關單元120及該第二開關單元130達成NOR訊號及AND訊號的邏輯運算。
若是多位元之資料進行相加時,則必須考量到低位元之資料相加後可能產生的進位值,本實施例藉由將前一位元運算之進位值儲存於另一位元之該記憶體裝置100中,並在下一位元的運算中由該記憶體裝置100中取出進行運算的方式達成。其中,請參閱第3圖,各該記憶體裝置100另具有一進位開關單元140,以由另一位元之該記憶體裝置100中取出進位值,以第0位元之該些記憶體裝置100為例,該進位開關單元140電性連接該儲存節點Q0及一進位線CL,且該進位開關單元140受該控制電路400之一進位控制訊號S0及該儲存節點Q之電位控制,以選擇性地將該進位線CL接地,該預充電電路PreC電性連接該進位線CL,而用以將該進位線CL拉至高電位。其中,該進位開關單元140具有一第一進位開關141及一第二進位開關142,該第一進位開關141電性連接該進位線CL,且該第一進位開關141受該進位控制訊號S0控制,該第二進位開關142電性連接該儲存節點Q0、該第一進位開關141及該接地端,且該第二進位開關142受該儲存節點Q0之電位控制。在本實施例中,該第一進位開關141及該第二進位開關142皆為NMOS電晶體,該第一進位開關141之閘極接收該進位控制訊號S0,該第一進位開關141之汲極電性連接該進位線CL,該第一進位開關141之源極電性連接該第二進位開關142之汲極,該第二進位開關142之閘極電性連接該記憶體單元110之該儲存節點Q,該第二進位開關142之源極接地,藉此,該進位開關單元140受該進位控制訊號S0及該儲存節點Q0之電位控制,而決定是否將該進位線CL接地。當該第0位元之該記憶體裝置100是儲存前一位元運算之進位值為1時,在進行下一位元之運算前會先透過該預充電電路PreC將該進位線CL拉至高電位,接著,第0位元之該進位控制訊號S0會上升至高電位,使得該進位開關單元140之該第一進位開關141導通。由於第0位元之該記憶體裝置100之該儲存節點Q0為1,該第二進位開關142亦導通,因此,該進位線CL經由該第一進位開關141及該第二進位開關142接地而降為低電位。反之若該第0位元之該記憶體裝置100儲存之前一位元運算的進位值為0時,則第0位元之該進位開關單元140之該第二進位開關142截止,使得該進位線CL維持在高電位,因此,運算完成後之該進位線CL之電位即為第0位元之該記憶體裝置100儲存之進位值的反進位值Cb。
請參閱第4圖,為各該記憶體裝置100之該記憶體單元110的電路圖,該記憶體單元110具有一電晶體對111、一寫入電晶體112、一傳輸電晶體113、一防擾動電晶體114、一第一漏電流電晶體115、一第二漏電流電晶體116及一資料讀寫單元117,該電晶體對111電性連接該儲存節點Q及該反儲存節點Qb,該寫入電晶體112電性連接該儲存節點Q,該傳輸電晶體113電性連接該反儲存節點Qb,該防擾動電晶體114電性連接該寫入電晶體112及該傳輸記憶體113,該第一漏電流電晶體115電性連接該儲存節點Q及該接地端,該第一漏電流電晶體115受該反儲存節點Qb之一電位控制,以選擇性地導通或截止該儲存節點Q及該接地端之間的電性連接,該第二漏電流電晶體116電性連接該反儲存節點Qb及該接地端,該第二漏電流電晶體116受該儲存節點Q之一電位控制,以選擇性地導通或截止該反儲存節點Qb及該接地端之間的電性連接。在本實施例中,該第一漏電流電晶體115及該第二漏電流電晶體116皆為NMOS電晶體,當該儲存節點Q儲存資料1時,該反儲存節點Qb為0,此時該第二漏電流電晶體116導通,因此該反儲存節點Qb經由該第二漏電流電晶體116接地,而提供該反儲存節點Qb一漏電流路徑,以避免電荷累積於該反儲存節點Qb而影響資料之儲存。同理,當該儲存節點Q儲存資料0時,該反儲存節點Qb為1,此時該第一漏電流電晶體115導通,因此該儲存節點Q經由該第一漏電流電晶體115接地,而提供該儲存節點Q一漏電流路徑,以避免電荷累積於該儲存節點Q而影響資料之儲存。
請參閱第1圖,完成該NOR訊號NOR、該AND訊號AND、及該反進位值Cb的計算後,該NOR訊號NOR、該AND訊號AND及該反進位值Cb傳送至該加法單元200,請參閱第5、6及7圖,該加法單元200具有一邏輯電路210、一加法電路220及一進位電路230,該邏輯電路210電性連接該第一邏輯線FLL、該第二邏輯線SLL及該進位線CL,以接收該AND訊號AND、該NOR訊號NOR及該反進位值Cb,且該邏輯電路210輸出複數個邏輯訊號。
請參閱第5圖,在本實施例中,該邏輯電路210具有一第一反閘211、一反或閘212、一第二反閘213及一第三反閘214,該第一反閘211電性連接該第二邏輯線SLL並輸出一NAND訊號NAND,該反或閘212電性連接該第一邏輯線FLL及該第二邏輯線SLL並輸出一XOR訊號XOR,該第二反閘213電性連接該反或閘212並輸出一XNOR訊號XNOR,該第三反閘214電性連接該進位線CL並輸出一進位訊號Cl。
請參閱第6圖,該加法電路220電性連接該邏輯電路210及該進位線CL,該加法電路220根據該XOR訊號XOR、該XNOR訊號XNOR、該進位訊號Cl及該反進位值Cb輸出一加法值SUM,在本實施例中,該加法電路220具有一第一NMOS電晶體MN1、一第一PMOS電晶體MP1、一第二NMOS電晶體MN2、一第二PMOS電晶體MP2及一加值輸出端221。該第一NMOS電晶體MN1之閘極接收該反進位值Cb,該第一NMOS電晶體MN1之源極接收該XOR訊號XOR,該第一NMOS電晶體MN1之汲極電性連接加值輸出端221,該第一PMOS電晶體MP1之源極接收該XOR訊號XOR,該第一PMOS電晶體MP1之汲極電性連接該加值輸出端221,該第一PMOS電晶體MP1之閘極接收該進位訊號Cl,該第二NMOS電晶體MN2之閘極接收該進位訊號Cl,該第二NMOS電晶體MN2之源極接收該XNOR訊號XNOR,該第二NMOS電晶體MN2之汲極電性連接該加值輸出端221,該第二PMOS電晶體MP2之源極接收該XNOR訊號XNOR,該第二PMOS電晶體MP2之閘極接收該反進位值Cb,該第二PMOS電晶體MP2之汲極電性連接該加值輸出端221。
其中,當兩個位元之記憶體裝置100的儲存資料分別為1及0且進位值為0進行運算時,該XOR值為1,該XNOR值為0,該進位值Cl為0,該反進位值Cb為1,此時該第一NMOS電晶體MN1、該第二NMOS電晶體MN2及該第二PMOS電晶體MP2截止,該第一PMOS電晶體MP1導通,使該加值輸出端221輸出之該加法值SUM為1。當兩個位元之記憶體裝置100的儲存資料分別為1及0且進位值為1進行運算時,該XOR值為1,該XNOR值為0,該進位值Cl為1,該反進位值Cb為0,此時該第一NMOS電晶體MN1、該第一PMOS電晶體MP1及該第二PMOS電晶體MP2截止,該第二NMOS電晶體MN2導通,使該加值輸出端221輸出之該加法值SUM為0。當兩個位元之記憶體裝置100的儲存資料分別為0及0且進位值為0進行運算時,該XOR值為0,該NXOR值為1,該進位值Cl為0,該反進位值Cb為1,此時該第一PMOS電晶體MP1、該第二NMOS電晶體MN2及該第二PMOS電晶體MP2截止,該第一NMOS電晶體MN1導通,使該加值輸出端221輸出之該加法值SUM為0。當兩個位元之記憶體裝置100的儲存資料分別為0及0且進位值為1進行運算時,該XOR值為0,該XNOR值為1,該進位值Cl為1,該反進位值Cb為0,此時該第一NMOS電晶體MN1、該第一PMOS電晶體MP1及該第二NMOS電晶體MN2截止,該第二PMOS電晶體MP2導通,使該加值輸出端221輸出之該加法值SUM為1。當兩個位元之記憶體裝置100的儲存資料為1及1進行運算且進位值為0時,該XOR值為0,該NOR值為1,該進位值Cl為0,該反進位值Cb為1,此時該第一PMOS電晶體MP1、該第二NMOS電晶體MN2及該第二PMOS電晶體MP2截止,該第一NMOS電晶體MN1導通,使該加值輸出端221輸出之該加法值SUM為0。當兩個位元之記憶體裝置100的儲存資料為1及1進行運算且進位值為1時,該XOR值為0,該XNOR值為1,該進位值Cl為1,該反進位值Cb為0,此時該第一NMOS電晶體MN1、該第一PMOS電晶體MP1及該第二NMOS電晶體MN2截止,該第二PMOS電晶體MP2導通,使該加值輸出端221輸出之該加法值SUM為1。因此,該加法電路220可藉由該些電晶體MN1、MP1、MN2、MP2的設置,由該加值輸出端221輸出兩個位元之儲存資料之間的該加法值SUM。
請參閱第7圖,該進位電路230電性連接該邏輯電路210及該第二邏輯線SLL,該進位電路230根據該XOR訊號XOR、該進位訊號Cl、該XNOR訊號XNOR、該NAND訊號NAND及該AND訊號AND輸出一次位元進位值Co,在本實施例中,該進位電路230具有一第三NMOS電晶體MN3、一第三PMOS電晶體MP3、一第四NMOS電晶體MN4、一第四PMOS電晶體MP4、一第五NMOS電晶體MN5、一第五PMOS電晶體MP5及一進位值輸出端231。該第三NMOS電晶體MN3之閘極接收該XOR訊號XOR,該第三NMOS電晶體MN3之源極接收該進位訊號Cl,該第三NMOS電晶體MN3之汲極電性連接一節點N,該第三PMOS電晶體MP3之源極接收該XOR訊號XOR,該第三PMOS電晶體MP3之閘極接收該XNOR訊號XNOR,該第三PMOS電晶體MP3之汲極電性連接該節點N,該第四NMOS電晶體MN4之汲極電性連接該節點N,該第四NMOS電晶體MN4之閘極接收該XNOR訊號XNOR,該第四NMOS電晶體MN4之源極接地,該第四PMOS電晶體MP4之閘極接收該NAND訊號NAND,該第四PMOS電晶體MP4之源極接收一電源電壓,該第四PMOS電晶體MP4之汲極電性連接該進位值輸出端231,該第五NMOS電晶體MN5之閘極接收該NAND訊號NAND,該第五NMOS電晶體MN5之汲極電性連接該進位值輸出端231,該第五NMOS電晶體MN5之源極電性連接該節點N,該五PMOS電晶體MP5之汲極電性連接該進位值輸出端231,該第五PMOS電晶體MN5之閘極接收該第二邏輯線SLL之該AND訊號AND,該第五PMOS電晶體MN5之源極電性連接該節點N。其中若兩個位元之資料與該進位值相加後有進位時,該進位值輸出端231之一次位元進位值Co為高電位,反之若兩個位元之資料與該進位值相加後未進位時,該進位值輸出端231之一次位元進位值Co為低電位。
請參閱第1圖,當該加法單元200完成該加法值SUM及該次位元進位值Co的運算後,該加法值SUM及該次位元進位值Co傳送至該多工器300,並經由該控制電路400的控制,將該加法值SUM及該次位元進位值Co存入預定之該記憶體裝置100中。請參閱第8圖,為該記憶體內運算系統IMCS進行運算的示意圖,該記憶體內運算系統IMCS具有16位元之該記憶體裝置cell 00-cell 33,首先,該控制電路400先將欲運算之兩個4位元訊號0101及0110分別寫入cell 00-cell 03及cell 10-cell 13中(圖中之第0位元至第3位元為由左至右寫入),cell 20則為進位值0。經由上述之記憶體內運算後,可以得到該加法值SUM為1及該次位元進位值Co為0,該控制電路400再其分別寫入cell 30及cell 21中,並進行下一位元之運算,重複運算後即可於cell 30-cell 33得到兩個4位元訊號0101及0110的和為1011而完成記憶體內運算。
本發明藉由該記憶體裝置100之該第一開關單元120及該第二開關單元130的切換得到兩個該記憶體單元110之儲存資料的邏輯值,並藉由該加法單元200以該些邏輯值完成加法運算,由於可直接於該些記憶體裝置100中完成運算,而能克服記憶體讀寫速度及傳輸流量的限制,令運算速度大幅提昇。
本發明之保護範圍當視後附之申請專利範圍所界定者為準,任何熟知此項技藝者,在不脫離本發明之精神和範圍內所作之任何變化與修改,均屬於本發明之保護範圍。
IMCS:記憶體內運算系統
100:記憶體裝置
110:記憶體單元
111:電晶體對
112:寫入電晶體
113:傳輸電晶體
114:防擾動電晶體
115:第一漏電流電晶體
116:第二漏電流電晶體
117:資料讀寫單元
120:第一開關單元
121:第一開關
122:第二開關
130:第二開關單元
131:第三開關
132:第四開關
140:進位開關單元
141:第一進位開關
142:第二進位開關
PreC:預充電電路
200:加法單元
210:邏輯電路
211:第一反閘
212:反或閘
213:第二反閘
214:第三反閘
220:加法電路
221:加值輸出端
230:進位電路
231:進位值輸出端
300:多工器
400:控制電路
FLL:第一邏輯線
SLL:第二邏輯線
CL:進位線
Cb:反進位值
SUM:加法值
Co:次位元進位值
NAND:NAND訊號
XOR:XOR訊號
NOR:NOR訊號
XNOR:XNOR訊號
Cl:進位訊號
N:節點
AND:AND訊號
MN1:第一NMOS電晶體
MN2:第二NMOS電晶體
MN3:第三NMOS電晶體
MN4:第四NMOS電晶體
MN5:第五NMOS電晶體
MP1:第一PMOS電晶體
MP2:第二PMOS電晶體
MP3:第三PMOS電晶體
MP4:第四PMOS電晶體
MP5:第五PMOS電晶體
Q:儲存節點
Qb:反儲存節點
C0-C3:邏輯控制訊號
S0-S3:進位控制訊號
第1圖:依據本發明之一實施例,一種記憶體內運算系統的方塊圖。
第2圖:依據本發明之一實施例,複數個記憶體裝置的電路圖。
第3圖:依據本發明之一實施例,複數個進位開關單元的電路圖。
第4圖:依據本發明之一實施例,一記憶體單元的電路圖。
第5圖:依據本發明之一實施例,一邏輯電路的電路圖。
第6圖:依據本發明之一實施例,一加法電路的電路圖。
第7圖:依據本發明之一實施例,一進位電路的電路圖。
第8圖:依據本發明之一實施例,加法值及進位值之運算及寫入記憶體裝置的示意圖。
100:記憶體裝置
110:記憶體單元
120:第一開關單元
121:第一開關
122:第二開關
130:第二開關單元
131:第三開關
132:第四開關
Q0-Q3:儲存節點
Qb0-Qb3:反儲存節點
FLL:第一邏輯線
SLL:第二邏輯線
C0-C3:邏輯控制訊號
NOR:NOR訊號
AND:AND訊號
PreC:預充電電路

Claims (10)

  1. 一種記憶體裝置,其包含:一記憶體單元,具有一儲存節點及一反儲存節點;一第一開關單元,電性連接該儲存節點及一第一邏輯線;一第二開關單元,電性連接該反儲存節點及一第二邏輯線;以及一預充電電路,電性連接該第一邏輯線及該第二邏輯線,該預充電電路用以將該第一邏輯線及該第二邏輯線拉至高電位,其中該第一開關單元受一邏輯控制訊號及該儲存節點之電位控制,以選擇性地將該第一邏輯線接地,該第二開關單元受該邏輯控制訊號及該反儲存節點之電位控制,以選擇性地將該第二邏輯線接地。
  2. 如申請專利範圍第1項所述之記憶體裝置,其中該第一開關單元具有一第一開關及一第二開關,該第一開關電性連接該第一邏輯線,且該第一開關受該邏輯控制訊號控制,該第二開關電性連接該儲存節點、該第一開關及一接地端,且該第二開關受該儲存節點之電位控制。
  3. 如申請專利範圍第1或2項所述之記憶體裝置,其中該第二開關單元具有一第三開關及一第四開關,該第三開關電性連接該第二邏輯線,且該第三開關受該邏輯控制訊號控制,該第四開關電性連接該反儲存節點、該第三開關及一接地端,且該第四開關受該反儲存節點之電位控制。
  4. 如申請專利範圍第1項所述之記憶體裝置,其另包含有一進位開關單元,該進位開關單元電性連接該儲存節點及一進位線,且該進位開關單元受一進位控制訊號及該儲存節點之電位控制,以選擇性地將該進位線接地,該預充電電路電性連接該進位線,該預充電電路用以將該進位線拉至高電位,其中該進位 開關單元具有一第一進位開關及一第二進位開關,該第一進位開關電性連接該進位線,且該第一進位開關受該進位控制訊號控制,該第二進位開關電性連接該儲存節點、該第一進位開關及一接地端,且該第二進位開關受該儲存節點之電位控制。
  5. 一種記憶體內運算系統,其包含:複數個記憶體裝置,各該記憶體裝置具有一記憶體單元、一第一開關單元、一第二開關單元及一進位開關單元,該記憶體單元具有一儲存節點及一反儲存節點,該第一開關單元電性連接該儲存節點及一第一邏輯線,該第二開關單元電性連接該反儲存節點及一第二邏輯線,該進位開關單元電性連接該儲存節點及一進位線,該預充電電路電性連接該第一邏輯線、該第二邏輯線及該進位線,該預充電電路用以將該第一邏輯線、該第二邏輯線及該進位線拉至高電位,其中該第一開關單元受一邏輯控制訊號及該儲存節點之電位控制,以選擇性地將該第一邏輯線接地,該第二開關單元受該邏輯控制訊號及該反儲存節點之電位控制,以選擇性地將該第二邏輯線接地,且該進位開關單元受一進位控制訊號及該儲存節點之電位控制,以選擇性地將該進位線接地;以及一加法單元,具有一邏輯電路、一加法電路及一進位電路,該邏輯電路電性連接該第一邏輯線、該第二邏輯線及該進位線,且該邏輯電路輸出複數個邏輯訊號,該加法電路電性連接該邏輯電路及該進位線,該加法電路根據該些邏輯訊號及該進位線之一反進位值輸出一加法值,該進位電路電性連接該邏輯電路及該第二邏輯線,該進位電路根據該些邏輯訊號及該第二邏輯線之一AND訊號輸出一次位元進位值。
  6. 如申請專利範圍第5項所述之記憶體內運算系統,其中該第一開關單元具有一第一開關及一第二開關,該第一開關電性連接該第一邏輯線,且該第一開關受該邏輯控制訊號控制,該第二開關電性連接該儲存節點、該第一開關及一接地端,且該第二開關受該儲存節點之電位控制,其中該第二開關單元具有一第三開關及一第四開關,該第三開關電性連接該第二邏輯線,且該第三開關受該邏輯控制訊號控制,該第四開關電性連接該反儲存節點、該第三開關及一接地端,且該第四開關受該反儲存節點之電位控制。
  7. 如申請專利範圍第5項所述之記憶體內運算系統,其中該進位開關單元具有一第一進位開關及一第二進位開關,該第一進位開關電性連接該進位線,且該第一進位開關受該進位控制訊號控制,該第二進位開關電性連接該儲存節點、該第一進位開關及一接地端,且該第二進位開關受該儲存節點之電位控制。
  8. 如申請專利範圍第5項所述之記憶體內運算系統,其中該邏輯電路具有一第一反閘、一反或閘、一第二反閘及一第三反閘,該第一反閘電性連接該第二邏輯線並輸出一NAND訊號,該反或閘電性連接該第一邏輯線及該第二邏輯線並輸出一XOR訊號,該第二反閘電性連接該反或閘並輸出一XNOR訊號,該第三反閘電性連接該進位線並輸出一進位訊號。
  9. 如申請專利範圍第8項所述之記憶體內運算系統,其中該加法電路具有一第一NMOS電晶體、一第一PMOS電晶體、一第二NMOS電晶體、一第二PMOS電晶體及一加值輸出端,該第一NMOS電晶體之閘極接收該反進位值,該第一NMOS電晶體之源極接收該XOR訊號,該第一NMOS電晶體之汲極電性連接加值輸出端,該第一PMOS電晶體之源極接收該XOR訊號,該第一PMOS電晶體之汲極電性連接該加值輸出端,該第一PMOS電晶體之閘極接收該進位訊號,該第二NMOS電晶體之閘極接收該進位訊號,該第二NMOS電晶體之源極接收該XNOR訊號,該第二NMOS電晶體之汲極電性連接該加值輸出端,該第二PMOS電晶體之源極接收該XNOR訊號,該第二PMOS電晶體之閘極接收該反進位值,該第二PMOS電晶體之汲極電性連接該加值輸出端。
  10. 如申請專利範圍第9項所述之記憶體內運算系統,其中該進位電路具有一第三NMOS電晶體、一第三PMOS電晶體、一第四NMOS電晶體、一第四PMOS電晶體、一第五NMOS電晶體、一第五PMOS電晶體及一進位值輸出端,該第三NMOS電晶體之閘極接收該XOR訊號,該第三NMOS電晶體之源極接收該進位訊號,該第三NMOS電晶體之汲極電性連接一節點,該第三PMOS電晶體之源極接收該進位訊號,該第三PMOS電晶體之閘極接收該XNOR訊號,該第三PMOS電晶體之汲極電性連接該節點,該第四NMOS電晶體之汲極電性連接該節點,該第四NMOS電晶體之閘極接收該XNOR訊號,該第四NMOS電晶體之源極接地,該第四PMOS電晶體之閘極接收該NAND訊號,該第四PMOS電晶體之源極接收一電源電壓,該第四PMOS電晶體之汲極電性連接該進位值輸出端,該第五NMOS電晶體之閘極接收該NAND訊號,該第五NMOS電晶體之汲極電性連接該進位值輸出端,該第五NMOS電晶體之源極電性連接該節點,該五PMOS電晶體之汲極電性連接該進位值輸出端,該第五PMOS電晶體之閘極接收該第二邏輯線之一AND訊號,該第五PMOS電晶體之源極電性連接該節點。
TW108118294A 2019-05-27 2019-05-27 記憶體內運算系統及其記憶體裝置 TWI706414B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW108118294A TWI706414B (zh) 2019-05-27 2019-05-27 記憶體內運算系統及其記憶體裝置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW108118294A TWI706414B (zh) 2019-05-27 2019-05-27 記憶體內運算系統及其記憶體裝置

Publications (2)

Publication Number Publication Date
TWI706414B true TWI706414B (zh) 2020-10-01
TW202044263A TW202044263A (zh) 2020-12-01

Family

ID=74091380

Family Applications (1)

Application Number Title Priority Date Filing Date
TW108118294A TWI706414B (zh) 2019-05-27 2019-05-27 記憶體內運算系統及其記憶體裝置

Country Status (1)

Country Link
TW (1) TWI706414B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI772034B (zh) * 2021-05-21 2022-07-21 國立中山大學 記憶體內運算系統

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8144537B2 (en) * 2008-11-11 2012-03-27 Stmicroelectronics Pvt. Ltd. Balanced sense amplifier for single ended bitline memory architecture
US8964450B2 (en) * 2011-05-20 2015-02-24 Semiconductor Energy Laboratory Co., Ltd. Memory device and signal processing circuit
TW201530739A (zh) * 2013-12-26 2015-08-01 Semiconductor Energy Lab 半導體裝置
US9753667B2 (en) * 2015-02-19 2017-09-05 Avago Technologies General Ip (Singapore) Pte. Ltd. High bandwidth memory and glitch-less differential XOR

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8144537B2 (en) * 2008-11-11 2012-03-27 Stmicroelectronics Pvt. Ltd. Balanced sense amplifier for single ended bitline memory architecture
US8964450B2 (en) * 2011-05-20 2015-02-24 Semiconductor Energy Laboratory Co., Ltd. Memory device and signal processing circuit
TW201530739A (zh) * 2013-12-26 2015-08-01 Semiconductor Energy Lab 半導體裝置
US9753667B2 (en) * 2015-02-19 2017-09-05 Avago Technologies General Ip (Singapore) Pte. Ltd. High bandwidth memory and glitch-less differential XOR

Also Published As

Publication number Publication date
TW202044263A (zh) 2020-12-01

Similar Documents

Publication Publication Date Title
US11205476B1 (en) Read data processing circuits and methods associated with computational memory cells
CN110364203B (zh) 一种支撑存储内计算的存储系统及计算方法
US10877731B1 (en) Processing array device that performs one cycle full adder operation and bit line read/write logic features
US11257540B2 (en) Write data processing methods associated with computational memory cells
TWI746699B (zh) 用於xor及xnor計算之計算記憶體胞元及使用記憶體胞元之處理陣列裝置
TWI615850B (zh) 判定記憶體中最長元素長度
TWI620058B (zh) 記憶體中之交換運算
US11194519B2 (en) Results processing circuits and methods associated with computational memory cells
US10847212B1 (en) Read and write data processing circuits and methods associated with computational memory cells using two read multiplexers
US20170345505A1 (en) Memory circuit capable of implementing calculation operations
US10770133B1 (en) Read and write data processing circuits and methods associated with computational memory cells that provides write inhibits and read bit line pre-charge inhibits
US20190272877A1 (en) Memory as a programmable logic device
US10930341B1 (en) Processing array device that performs one cycle full adder operation and bit line read/write logic features
CN114341981A (zh) 具有人工智能模式的存储器
CN112929018A (zh) 锁存器、数据运算单元以及芯片
TWI706414B (zh) 記憶體內運算系統及其記憶體裝置
US10622034B2 (en) Element value comparison in memory
US8520447B2 (en) Semiconductor memory device and method of operating the same
Chen et al. Reconfigurable 2T2R ReRAM with split word-lines for TCAM operation and in-memory computing
US11227653B1 (en) Storage array circuits and methods for computational memory cells
JP4177131B2 (ja) 論理演算回路、論理演算装置および論理演算方法
CN112447249A (zh) 人工智能操作的调试操作
CN112951290B (zh) 一种基于非易失性随机存储器的内存计算电路及装置
Izhar et al. Logic Circuit Implementation for Enabling SRAM Based In Memory Computing
US7026841B2 (en) Logical operation circuit and logical operation method

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees