Design of A Low-Energy SRAM Cell Capable of Performing In-memory Computations with Application in Neural Networks

Document Type : Research Article

Authors

Faculty of Electrical Engineering, Shahid Beheshti University, Tehran, Iran

Abstract

This paper proposed a novel 9T SRAM cell. The key idea is to separate the write and read operations, resolving the inherent conflict in conventional cells like 6T SRAM cells. Moreover, this cell is capable of performing in-memory computation as well. In this design, the data node is floated during the write operation to improve the write margin, ensuring a non-conflicting write operation within the cell. Moreover, to overcome the half-select issue, the design employs both row-based and column-based signaling. The performance of the proposed cell in an actual application is evaluated by simulating the LeNet-5 neural network structure. Based on the computational capabilities of the proposed cell, based on the in-memory AND/NAND and OR/NOR Boolean logic functions and the combination of them to perform XNOR logic, the layers of the binarized LeNet-5 network are implemented after circuit-level simulation. The results demonstrate that the energy consumption of the proposed cell is significantly reduced by up to 46% compared to other existing structures.

Keywords

Main Subjects


  • مقدمه[1]

حافظه­های SRAM از جملۀ حافظه­های پرسرعت هستند که در کاربردهایی وسیع از سیستم­های کامپیوتری استفاده می‏شوند [1]. اینترنت اشیاء (IoT[1])، شبکه­های حسگر بی‏سیم (WSN[2])، ابزارهای زیست‏پزشکی قابل کاشت و دستگاه­های الکترونیکی قابل حمل از جملۀ کابردهای نیازمند به حافظه­های سریع SRAM هستند که در استفادۀ طولانی‏مدت به مصرف کم‏توان نیاز دارند [2]. از آنجا که بخشی جالب توجه از مساحت تراشه‏های کامپیوتری توسط این حافظه­ها اشغال شده است [3]، کاهش توان مصرفی حافظۀ SRAM از جملۀ رویکردهایی است که بسیار مورد توجه پژوهشگران قرار گرفته است. از سوی دیگر، کاهش ابعاد ترانزیستورها سبب بروز چالش‏هایی فراوان همچون اثرات کانال کوتاه، حامل­های داغ و اشباع سرعت شده است. از جملۀ رویکردهایی نوین که امروزه مورد استقبال صنعت قرار گرفته‏اند، فناوری جایگزین FinFET است [4]. در این فناوری، گیت به واسطۀ ساختار سه‏بعدی خود، از سه وجه بر کانال سیلیکونی احاطه و تا حدی بسیار خوب بر جریان عبوری از کانال نظارت دارد [5]. زدودن ناحیۀ بالاسر گیت سه‌بعدی ترانزیستور FinFET سبب ایجاد ساختاری با دو گیت مستقل (IG-FinFET) می‏شود [6]. در این ساختار هر یک از گیت‏ها به طور مستقل قادر به کنترل جریان عبوری کانال است و در صورت فعال شدن یکی از گیت‏ها، ترانزیستور روشن می‏شود.

گفتنی است، با توجه به نیاز روزافزون به کاربردهایی مانند موتورهای جست­وجو و شبکه‏های عصبی، حجم داده‏های تحت پردازش در حال افزایش است [7]؛ این در حالی است که با توجه به اینکه معماری بیشتر سیستم‏های کامپیوتری امروزی بر اساس معماری وان­نیومن است که در آن پردازنده و حافظه مجزا از هم واقع شده‏اند و فقط از طریق گذرگاهی با پهنای باند محدود با یکدیگر ارتباط برقرار می‏کنند، با افزایش حجم اطلاعات تبادلی بین پردازنده و حافظه، تأخیر و توان مصرفی سیستم به‏شدت افزایش خواهد یافت [8]. به منظور حل این چالش، راهکار محاسبات در حافظه بسیار مورد توجه قرار گرفته است. در این روش بسیاری از محاسبات ساده با کمترین سربار در داخل حافظه اجرا می‏شوند و به تبادل داده بین پردازنده و حافظه نیاز نیست (شکل 1) [9].

شکل (1): ساختار محاسبه در حافظه

در سال­های گذشته، ساختارهای گوناگون حافظۀ SRAM طراحی شده‏اند تا در کنار توانایی ذخیرۀ داده با قابلیت اطمینان زیاد و توان مصرفی کم، توانایی اجرای محاسبات پایه­ای در حافظه را نیز ممکن کنند. بیشتر ساختارهای ارائه‏شده مبتنی بر ساختار 6 و 8 ترانزیستوری رایج هستند [7], [8], [9], [10], [11].

در مقالۀ [7]، یک ساختار محاسبه در حافظه مبتنی بر سلول حافظه 8 ترانزیستوری رایج طراحی شده است که توانایی محاسبۀ عملیات منطقی را دارا است. در مقالۀ [8]، یک ساختار 8ترانزیستوری ارائه شده است که دارای هستۀ 6 ترانزیستوری است و با استفاده از دو ترانزیستور اضافه‏شده، فرآیند محاسبه در حافظه را روی دو خط داده انجام می­دهد. در مقالۀ [9]، یک ساختار 9 ترانزیستوری طراحی شده است که با استفاده از هستۀ 6 ترانزیستوری و اضافه کردن سه ترانزیستور، فرآیند محاسبه در حافظه را به کمک دو خط داده اجرا می‏کند.

در تمامی ساختارهای محاسبه در حافظه، هستۀ سلول ساختار 6 ترانزیستوری رایج است که توانایی نوشتن آن کم است و پایداری مناسبی در این فرآیند نخواهد داشت. همچنین، ساختار 6 ترانزیستوری رایج در معرض نوشتن ناخواسته در سلول­های نیمه‏انتخابی است که در ساختارهای محاسبه در حافظه که به محاسبات بیتی در تک‏سلول­ها نیاز است، این امر میزان مصرف توان سلول‏ها را به دلیل نیاز به بازنویسی داده­های سلول­های تخریب‏شده به‏شدت افزایش خواهد داد [12].

در این مقاله، یک ساختار نوین SRAM مبتنی بر ترانزیستورهای FinFET ارائه شده است که فرآیندهای خواندن و نوشتن را برای اجرای کارآمد محاسبه در حافظه از هم جدا کرده است . همچنین، به منظور بهبود توانایی نوشتن در سلول، ساختار با استفاده از ساختاری نوین و شناورسازی گرۀ ذخیرۀ داده، فرآیند نوشتن را تسهیل کرده است. به منظور حل مشکل نوشتن ناخواسته در سلول­های نیمه‏انتخابی به منظور افزایش کارایی محاسبه در حافظه و کاهش توان مصرفی، سلول ارائه‏شده دارای سیگنال­های فرمان­ سطری و ستونی است. 

در ادامه، در بخش دوم، حافظۀ پیشنهادی و نحوۀ عملکرد آن بررسی و به دنبال آن، روش اجرای محاسبات در حافظه بیان می­شود. در بخش سوم، نتایج شبیه‏سازی‏های انجام‏شده روی سلول بررسی و ارزیابی می‏شود و در بخش پایانی، نتیجه­گیری مقاله ارائه می­شود.

2- طرح پیشنهادی

شکل (2) ساختار 9ترانزیستوری پیشنهادی را به تصویر می­کشد. این ساختار متقارن دارای دو ترانزیستور دسترسی (M5, M6) از نوع pFET برای نوشتن داده روی سلول طراحی شده است. ترانزیستورهای M1،M2 ،M3  و M4 تشکیل‏دهندۀ دو وارونگر پشت به پشت متصل هستند که بازخورد مثبت آن، داده را درون سلول حفظ می‏کند. همچنین، در این ساختار دو ترانزیستور پشته‏شدۀ M7 و M8 نیز تعبیه شده‏اند تا در فرآیند نوشتن داده، گرۀ مدنظر شناور شود [11] و داده به‏راحتی داخل سلول قرار داده شود.

1-2- حالت نگهداری داده

در این حالت، خطوط دادۀ BL و BLB و RBL به ولتاژ تغذیه متصل هستند. همچنین، سیگنال­های­ کنترلی WL و RWL به ولتاژ تغذیه متصل هستند؛ به این ترتیب، داده داخل سلول از محیط بیرون ایزوله و بازخورد مثبت مورد نیاز برای حفظ داده توسط دو وراونگر پشت به پشت برقرار می‏شود. با توجه به اتصال RWL و RBL به ولتاژ تغذیه در حالت نگهداری، میزان جریان‏های نشتی در سلول به میزانی جالب توجه کاهش می‏یابد.

 

شکل (2): ساختار طرح پیشنهادی

 

2-2- فرآیند خواندن داده

این فرآیند توسط ترانزیستور M9 اجرا می­شود. در این حالت، به طور پیش­فرض، خط دادۀ خواندن (RBL) به ولتاژ تغذیه پیش­شارژ می­شود؛ این در حالی است که در حالت اولیه، خط کلمۀ خواندن (RWL) به ولتاژ تغذیه متصل شده است. با رسیدن فرمان فرآیند خواندن، خط کلمۀ خواندن از مقدار ‘1’ به مقدار ‘0’ تغییر وضعیت می­دهد‌. چنانچه دادۀ موجود در گرۀ QB برابر ‘1’ باشد، خط پیش‌شارژشدۀ RBL شروع به دشارژ به سمت زمین می‏کند و چنانچه این داده ‘0’ باشد، خط RBL در ولتاژ پیش­شارژ خود باقی خواهد ماند. این تغییرات به طور هم‏زمان توسط تقویت‏کنندۀ حسی موجود در انتهای آرایه رصد می‏شوند و دادۀ خوانده‏شده را ثبت می‏کنند. با توجه به بهره‌گیری از یک ترانزیستور در فرآیند خواندن [8]، سرعت خواندن در این ساختار در مقایسه با سایر طرح‌هایی که مسیر دشارژ با تعداد ترانزیستور بیشتر دارند، زیادتر است.

 

3-2- فرآیند نوشتن داده

در این فرآیند، خط کلمۀ WL به عنوان سیگنال کنترلی در فرآیند نوشتن ایفای نقش می‏کند. بر این اساس، دادۀ مدنظر ابتدا روی خط دادۀ BL و وارون آن روی خط BLB قرار می‏گیرد و سپس، خط کلمۀ WL فعال می‌شود (‘0’ß‘1’). با فعال شدن خط کلمۀ WL، ترانزیستورهای M6 و M5 روشن می‏شوند و مسیری مستقیم از خطوط داده به گره‌های دادۀ سلول فراهم می‌شود‌. برای مثال، اگر فرض شود دادۀ ‘0’ درون سلول (گرۀ Q) ذخیره است، چنانچه قرار باشد دادۀ ‘1’ داخل سلول نوشته شود، خط BL به ‘1’ و خط BLB به ‘0’ متصل می­شود. با فعال شدن خط WL، مقدار ‘1’ از طریق ترانزیستور M5 به گرۀ Q منتقل می­شود. هم‏زمان با این فرآیند، از آنجا که خط BLB حاوی مقدار ‘0’ است و خط WL نیز به ‘0’ متصل شده است، ترانزیستور M7 خاموش است و عملا گرۀ Q شناور است و دادۀ ‘1’ بدون هیچ رقابت و تقابلی با سرعت زیاد درون سلول نوشته خواهد شد. در حالت دیگر، چنانچه درون سلول دادۀ ‘1’ ذخیره شده باشد، برای نوشتن دادۀ ‘0’ درون این سلول، نیاز است تا خطوط BL و BLB به ‘0’ و ‘1’ به‏ترتیب متصل شوند. سپس، با فعال کردن خط WL، مقادیر موجود روی خطوط داده به گره‌های دادۀ سلول منتقل می­شوند.

نکتۀ حائز اهمیت در سلول پیشنهادی آن است که در صورتی که فقط یکی از خطوط BL یا BLB یا WL تغییر وضعیت دهد، هیچ کدام از گره­های داده به حالت شناوری نمی‏رود و بازخورد درون سلول برقرار خواهد ماند تا از نوشتن ناخواسته در سلول­های نیمه‏انتخابی جلوگیری شود

4-2- ساختار محاسبه در حافظه

در ساختار پیشنهادی، با جداسازی فرآیند خواندن از نوشتن، توانایی اجرای محاسبه در حافظه ایجاد شده است. در این راستا، ساختار پیشنهادی توانایی اجرای محاسبات بولین را در ستون دارا است. به منظور اجرای محاسبۀ OR/NOR طبق شکل (3)، ابتدا خط RBL به میزان ولتاژ تغذیه شارژ اولیه می­شود.

سپس، در گام دوم، بر اساس دادۀ ذخیره‏شده در سلول حافظۀ اول و دوم، خط RBL تخلیه می‏شود یا بدون تغییر باقی خواهد ماند. برای مثال، اگر دادۀ ذخیره‏شده در گرۀ QB یکی از سلول­ها یا هر دو ‘1’ باشد، خط RBL تخلیه می­شود؛ این در حالی است که اگر این داده در هر دو سلول ‘0’ باشد، خط RBL دست‏نخورده باقی خواهد ماند. به منظور اجرای AND/NAND، نیز مانند OR/NOR همین فرآیند اجرا می‏شود؛ با این تفاوت که میزان زمان فعال‏سازی RWL محدود می­شود.

در این شرایط، خط RBL زمانی به صورت کامل تخلیه می­شود که دادۀ گرۀ QB در هر دو سلول ‘1’ باشد؛ در غیر این صورت، خط RBL به میزان کافی تخلیه نخواهد شد.

شکل (3): محاسبه OR/NOR  و AND/NAND

3- نتایج شبیه­سازی و ارزیابی سلول پیشنهادی

به منظور ارزیابی و شبیه‌سازی سلول پیشنهادی، از فناوری فین‌فت گیت مستقل (IG-FinFET) استفاده شده است [13]، [14]. برخی از پارامترهای مهم این فناوری در جدول (1) مشاهده می‏شوند. نکتۀ حائز اهمیت در این شبیه‌سازی‏ها آن است که به منظور ارزیابی منصفانه در تمام سلول‏های مقایسه‏شده از فین‏فت‏های تک­باله استفاده شده است. برای ارزیابی ساختار پیشنهادی، مقایسه­‏ها با طرح‏های موجود به­روز (8TC [7]، IG8T [6]، IG6T [15]، ST12T [16] و NT10T [2]) انجام شده‏اند.

 

جدول (1): برخی از پارامترهای مهم فناوری IG-FinFET

پارامترها

مقادیر (هر دو گیت)

پهنای باله

8 nm

طول گیت

30 nm

ضخامت اکسایدگیت معادل

1,4 nm / 1,4 nm

تابع کار گیت

4,61 eV / 4,61 eV

دوپینگ کانال

1022 cm-3

غلظت دوپینگ سورس/درین

226 cm-3

دوپینگ بدنه

523 cm-3

 

1-3- حاشیۀ نویز ایستای نگهداری (HSNM)

حاشیۀ نویز ایستای نگهداری معیاری معتبر و شناخته‏شده برای سنجش میزان مقاومت سلول در برابر نویزی است که هدف تخریب داده را در حالت نگهداری دارد. این معیار با اندازه­گیری بزرگ‏ترین ضلع مربع محاسبه می­شود که داخل کوچک‏ترین ناحیۀ نمودار پروانه قابل محاط است [16]. شکل (4-الف) نمایشی از نمودار پروانه­ای ساختار پیشنهادی در ولتاژ کاری 5/0 ولت را به تصویر می­کشد. به منظور ارزیابی بهتر سلول، مقایسه‌ای میان HSNM طرح پیشنهادی با پنج ساختار ارائه‏شده در سال‌های گذشته انجام شده است (شکل 4-ب). همان‏طور که در شکل (4-ب) مشاهده می­شود، HSNM سلول پیشنهادی بسیار نزدیک به سایر طرح‌های ارائه‏شده است و در حفظ داده مانند سایر طرح‌ها عمل می‏کند.

 

شکل (4): الف) نمودار پروانه­ای، ب) حاشیۀ نویز تگهداری، پ) حاشیۀ نویز خواندن در ولتاژهای تغذیۀ گوناگون

 

2-3- حاشیۀ نویز ایستای خواندن (RSNM)

همانند معیار HSNM، معیار حاشیۀ نویز ایستای خواندن با اندازه­گیری بزرگ‏ترین ضلع مربعی محاسبه می‌شود که داخل کوچک‏ترین ناحیۀ نمودار پروانه­ای در فرآیند خواندن ایجاد می‌شود [3]. از آنجا که با بهره­گیری از مسیر مجزای خواندن، فرآیند خواندن داده از سلول پیشنهادی، هیچ تاثیری روی گره‌های ذخیرۀ داده ندارد، مقادیر RSNM و HSNM برابر خواهتد بود. شکل (4-پ) مقایسۀ RSNM طرح پیشنهادی را با سایر طرح‌ها نشان می­دهد.

همان‏طور که مشاهده می­شود، طرح پیشنهادی حاشیۀ نویز خواندن بسیار زیادی نسبت به دو طرح IG8T و IG6T دارد. نکتۀ حائز اهمیت در این مقایسه آن است که طرح IG8T در فرآیند خواندن از سلول با مشکل نیمه­انتخابی مواجه است و دادۀ سلول در این فرآیند تغییر خواهد کرد. این امر سبب شده است تا حاشیۀ نویز خواندن از سلول در ولتاژهای زیاد نزدیک به صفر شود.

3-3- قابلیت نوشتن داده

ارزیابی فرآیند نوشتن در پژوهش‏های مختلف بر مبنای معیارهایی مختلف انجام می‏شود. از جملۀ شناختهشدهترین این معیارها میزان قابلیت نوشت‌پذیری داده در سلول (CWLM) است [17]. این معیار با اجرای شبیه‌سازی حالت ایستا و تغییر WL از ‘1’ به سمت ‘0’ محاسبه می‏شود تا فاصله ولتاژ WL نسبت به زمین، حاشیه نویز نوشتن را به تصویر کشد (صرفاً برای ترانزیستور نوع pFET) [18]. شکل (5) نوشت­پذیری سلول پیشنهادی را در قیاس با سایر طر­ح­ها نشان می­دهد. شناورسازی گرۀ ذخیرۀ داده همراه با نوشتن به صورت دیفرانسیلی سبب افزایش جالب توجه نوشت­پذیری سلول پیشنهادی می‏شود. همان‏طور که مشاهده می­شود، ساختار دیفرانسیلی IG8T و ساختار 8TC به دلیل وجود رقابت در مدار بالابر با ترانزیستورهای دسترسی، نوشت­پذیری کمی دارند.

 

4-3- تأخیر و انرژی مصرفی در فرآیند خواندن

شکل (6) مقایسۀ تأخیر خواندن طرح پیشنهادی را با سایر طرح­های مقایسه‏شده نشان می­دهد. همان‏طور که در این شکل نشان داده شده است، ساختار پیشنهادی کمترین زمان خواندن را دارا است . علت سرعت زیاد ساختار پیشنهادی، تک‏ترانزیستور بودن مدار خواندن سلول است که مقاومتی بسیار کم را برای تخلیۀRBL  از خود نشان می­دهد. در میان طرح­های مقایسه‏شده، ساختار ST12T به دلیل استفاده از سه ترانزیستور در مسیر خواندن، سرعتی بسیار کمتر نسبت به سایر طرح­ها دارد.

 

شکل (5): نوشت­پذیری سلول پیشنهادی در ولتاژهای گوناگون

 

یکی دیگر از پارامترهای مهم در ارزیابی عملکرد سلول‏های SRAM میزان انرژی مصرفی در فرآیند خواندن است. نتایج شبیه‏سازی محاسبۀ انرژی در شکل (7) نشان می­دهد طرح پیشنهادی کارایی مشابه ساختارهای 8TC، NT10T و IG6T را از خود نشان می­دهد و ساختار ST12T به واسطه تأخیر زیاد خواندن، دارای انرژی مصرفی خواندن زیادی نسبت به سایر طرح­های مقایسه‏شده است.

 شکل (6): تأخیر خواندن سلول پیشنهادی در ولتاژهای گوناگون

 5-3- تأخیر و انرژی مصرفی در فرآیند نوشتن

همان‏طور که شکل (8) نشان می­دهد، تأخیر نوشتن سلول پیشنهادی در مقایسه با طرح­هایی همچون ST12T که فقط از روش شناورسازی برای نوشتن داده بهره برده­اند، عملکردی بهتر را به ارمغان آورده است. همچنین، ساختار IG6T که ترانزیستورهای دسترسی آن مقاومتی زیاد دارند و به دنبال آن، طرح NT10T، عملکردی ضعیف­تر نسبت به طرح پیشنهادی دارند. از سوی دیگر، شکل (9) به‏خوبی نشان می­دهد طرح‏های 8TC و IG8T که از زمان نوشتن خوبی برخوردار هستند، به دلیل توان مصرفی زیاد، انرژی مصرفی بیشتری را نسبت به طرح پیشنهادی دارا هستند. با توجه به شکل (9)، مشاهده می‏شود طرح پیشنهادی دارای کمترین انرژی مصرفی در فرآیند نوشتن است.

 شکل (7): انرژی مصرفی خواندن سلول پیشنهادی در ولتاژهای گوناگون

 شکل (8): تأخیر نوشتن سلول پیشنهادی در ولتاژهای گوناگون

شکل (9): انرژی مصرفی نوشتن سلول پیشنهادی در ولتاژهای گوناگون

6-3- توان مصرفی ایستا

شکل (10) توان مصرفی ایستای سلول‏ها را در ولتاژهای کاری مختلف نشان می‏دهد. طرح پیشنهادی در ولتاژهای تغذیۀ پایین، توان مصرفی ایستای کمتری در قیاس با سایر طرح­های مقایسه‏شده دارد و در ولتاژهای تغذیۀ بالا جای خود را به ساختار ST12T و NT10T خواهد داد. این امر بدان علت است ساختار های بیان شده ترانزیستورهای پشتۀ خاموش بیشتری در حالت نگهداری دارند. گفتنی است، سلول 8TC بیشترین توان مصرفی ایستا را نسبت به سایر طرح­ها دارا است که دلیل اصلی آن قرارگیری خطوط BL و BLB سلول در حالت پیش­شارژ است که به افزایش نشتی از ولتاژ تغذیه به مسیرهای منتهی به زمین منجر می­شود.

شکل (10): توان مصرفی ایستای سلول پیشنهادی در ولتاژهای گوناگون

7-3- ارزیابی کاربردی ساختار پیشنهادی

برای ارزیابی ساختار ارائه‏شده به صورت کاربردی، ساختار بالا در اجرای شبکۀ عصبی دودویی بررسی و ارزیابی شده است. شبکۀ عصبی دودویی جایگزینی برای شبکه­های عصبی با دقت کامل است تا میزان توان مصرفی و حجم محاسبات را با کاهش اندک در دقت حاصل کند [19] .به طور کلی، در شبکه‏های عصبی بیشترین سربار توان مربوط به لایۀ کانولوشن است [20]؛ از این رو، به منظور اجرای این لایه در شبکۀ عصبی دودویی، نیاز است تا عملیات XNOR به‏جای ضرب پنجرۀ داده در وزن مربوط در هر لایه انجام شود و به دنبال آن، پس از محاسبات بالا، جمع یک‏های حاصل در مرحلۀ قبل به کمک جمع‏کننده محاسبه شود [21]. برای مثال، در اجرای لایۀ کانولوشن به کمک پنجرۀ داده با اندازه 3×3، نیاز است تا این پنجرۀ ورودی روی تمام لایۀ کانولوشن حرکت کند و در هر سیکل، عدد باینری وزن لایه در دادۀ داخل پنجره، XNOR شده و به دنبال آن، مجموع تعداد نتایج یک‏شده در محاسبات XNOR با هم جمع شود.

از این رو، در گام نخست، به منظور اجرای XNOR از چهارگیت NAND استفاده شده است؛ از این رو، محاسبۀ XNOR داده در وزن برای هر داده نیازمند چهار سیکل محاسبات است. شکل (11) ساختار کلی شبکۀ عصبی استفاده‏شده و محاسبات مربوط به XNOR را در داخل حافظه به تصویر می­کشد.

در این مدل، در ابتدا، محاسبات مربوط به XNOR در حافظه برای دادۀ ورودی و وزن دودویی در نرم‏افزار HSPICE شبیه‏سازی و پارامترهای تأخیر و انرژی مصرفی ساختار پیشنهادی استخراج می­شوند. سپس، با استفاده از نرم‏افزار MATLAB، ساختار شبکۀ عصبی اجرا می‏شود و مقادیر به‏دست‏آمده از مرحلۀ اجرای مداری بر روی شبکۀ طراحی‏شده مدل می­شوند [22]. شبکۀ استفاده‏شده در این بخش شبکۀ LeNet-5 و مجموعه دادۀ استفاده‏شده برای ارزیابی سیستم اجراشده، مجموعه دادۀ Fashion-MNIST است [23]، [24]. نکتۀ جالب توجه آن است که شبکۀ LeNet-5 استفاده‏شده به صورت از پیش آموزش‏دیده برای کار با داده­های ورودی و وزن دودویی انتخاب شده است. ساختار پیشنهادی با سه ساختار نوین محاسبه در حافظه مقایسه شده است. این سه ساختار جزء ساختارهایی هستند که توانایی اجرای محاسبه در حافظه را دارا هستند.

جدول (2) میزان تأخیر و انرژی مصرفی شبکۀ مدنظر را نشان می­دهد. با توجه به جدول (2)، مشاهده می­شود انرژی مصرفی و تأخیر ساختار پیشنهادی از سایر ساختارهای مقایسه‏شده کمتر هستند. این امر به آن علت است که در ساختار­های مقایسه‏شده در محاسبات مربوط به XNOR، تأخیر و انرژی مصرفی در فرآیند نوشتن داده‏های میانی و خواندن آن­ها برای محاسبات پیش‏رو از ساختار پیشنهادی بیشتر هستند. همچنین، تمامی ساختارهای مقایسه‏شده از مشکل نوشتن ناخواسته در سلول­های نیمه‏انتخابی رنج می‏برند که سبب می­شود تا مصرف توان در این ساختارها به دلیل نیاز به نوشتن مجدد داده در سلول‌های تخریب‏شده به‏شدت افزایش یابد.

میزان انرژی مصرفی در اجرای ساختار بالا بر اساس سلول پیشنهادی در مقایسه با ساختارهای 8TC،  ST12Tو NT10T به‏ترتیب به میزان 18 درصد، 46 درصد و 22 درصد کمتر است. همچنین، گفتنی است، میزان تأخیر اجرای شبکۀ تحت بررسی نسبت به ساختار­های بیان‏شده به میزان 37 درصد، 75 درصد و 57 درصد به‏ترتیب کمتر می‌باشد.

جدول (2): تأخیر و انرژی مصرفی شبکۀ عصبی LeNet-5 دودویی‏شده

ساختار حافظه

تأخیر (نانوثانیه)

انرژی ­مصرفی (میکرو ژول)

8TC

123.4

2.92

ST12T

311.56

4.41

NT10T

181

3.02

پیشنهادی

77.6

2.38

 

شکل (11): ساختار شبکۀ عصبی اجراشده و مراحل محاسبات XNOR

4- نتیجه‌گیری

در این مقاله، یک سلول SRAM 9 ترانزیستوری با مصرف توان کم طراحی شده است. در این ساختار، برای حل مشکل تقابل بین فرآیندهای خواندن و نوشتن، مسیرهای این دو فرآیند از هم جدا شده‏اند. همچنین، ساختار پیشنهادی قابلیت اجرای محاسبات بیتی OR/NOR و AND/NAND در حافظه را فراهم می‏کند. در این ساختار، به منظور افزایش حاشیۀ نویز نوشتن، گرۀ ذخیره داده شناور می‏شود تا داده به‏راحتی داخل سلول قرار داده شود. همچنین، به منظور حل مشکل نوشتن ناخواسته در سلول­های نیمه‏انتخابی، فرمان­های سطری و ستونی اعمال می‏شوند تا گرۀ ذخیرۀ داده در سلول­های نیمه‏انتخابی شناور نشود. در ساختار ارائه‏شده، میزان توان مصرفی نوشتن 19 درصد کمتر از ساختار 8ترانزیستوری رایج در اجرای محاسبات در حافظه است. به منظور ارزیابی کاربردی ساختار پیشنهادی، این ساختار در اجرای شبکۀ عصبی LeNet-5 دودویی‏شده ارزیابی شده است. نتایج شبیه‏سازی نشان می­دهد میزان تأخیر سیستم نسبت به ساختارهای 8TC ، ST12T و NT10T به‏ترتیب به میزان 37 درصد، 75 درصد و 57 درصد کمتر بوده است. همچنین، میزان انرژی مصرفی در اجرای شبکۀ عصبی تحت بررسی در مقایسه با ساختار های بیان‏شده به‏ترتیب 18درصد، 46 درصد و 22 درصد کمتر است.

 

[1] تاریخ ارسال مقاله: 06/04/1402

تاریخ پذیرش مقاله: 08/07/1403

نام نویسندۀ مسئول: محمد حسین معیری

نشانی نویسندۀ مسئول: ایران، تهران، دانشگاه شهید بهشتی، دانشکده مهندسی برق، گروه الکترونیک

 

[1] Internet of Things

[2] Wireless Sensor Networks

[1]  E. Abbasian, “A Highly Stable Low-Energy 10T SRAM for Near-Threshold Operation”, IEEE Transactions on Circuits and Systems I: Regular Papers, Vol. 69, No. 12, 2022. doi: 10.1109/TCSI.2022.3207992.
[2]  E. Abbasian, S. Sofimowloodi, “Energy-Efficient Single-Ended Read/Write 10T Near-Threshold SRAM”, IEEE Transactions on Circuits and Systems I: Regular Papers, Vol. 70, No. 5, 2023. doi: 10.1109/TCSI.2023.3247807.
[3]  S. Ahmad, N. Alam, M. Hasan, “Pseudo differential multi-cell upset immune robust SRAM cell for ultra-low power applications”, AEU - International Journal of Electronics and Communications, Vol. 83, pp. 366–375, 2018. doi: 10.1016/j.aeue.2017.09.022.
[4]  S. Sayyah Ensan, M. H. Moaiyeri, M. Moghaddam, S. Hessabi, “A Low-Power Single-Ended SRAM in FinFET Technology”, International Journal of Electronics and Communications, Vol. 99, pp. 361–368, 2018, [Online]. Available: https://www.sciencedirect.com/science/article/abs/pii/S1434841118312615
[5]  F. Salmanpour, M. H. Moaiyeri, F. Sabetzadeh, “Ultra-Compact Imprecise 4:2 Compressor and Multiplier Circuits for Approximate Computing in Deep Nanoscale”, Circuits Syst Signal Process, Vol. 40, No. 9, 2021. doi: 10.1007/s00034-021-01688-8.
[6]  S. Sayyah Ensan, M. H. Moaiyeri, B. Ebrahimi, S. Hessabi, A. Afzali-Kusha, “A low-leakage and high-writable SRAM cell with back-gate biasing in FinFET technology”, J Comput Electron, Vol. 18, pp. 519–526, 2019. doi: 10.1007/s10825-019-01327-1.
[7]  A. Agrawal, A. Jaiswal, C. Lee, K. Roy, “X-SRAM: Enabling in-memory Boolean computations in CMOS static random-access memories”, IEEE Transactions on Circuits and Systems I: Regular Papers, Vol. 65, No. 12, pp. 4219–4232, 2018. doi: 10.1109/TCSI.2018.2848999.
[8]  Y. Chen, J. Mu, H. Kim, L. Lu, T. T. H. Kim, “BP-SCIM: A Reconfigurable 8T SRAM Macro for Bit-Parallel Searching and Computing In-Memory”, IEEE Transactions on Circuits and Systems I: Regular Papers, Vol. 70, No. 5, 2023. doi: 10.1109/TCSI.2023.3240303.
[9]  K. Soundrapandiyan, S. K. Vishvakarma, B. S. Reniwal, “Enabling Energy-Efficient In-Memory Computing with Robust Assist-Based Reconfigurable Sense Amplifier in SRAM Array", IEEE J Emerg Sel Top Circuits Syst, Vol. 13, No. 1, 2023. doi: 10.1109/JETCAS.2023.3243192.
[10]         Z. Lin, H. Zhan, X. Li, Ch. Peng, W. Lu X. Wu, “In-Memory Computing with Double Word Lines and Three Read Ports for Four Operands", IEEE Trans Very Large Scale Integr VLSI Syst, Vol. 28, No. 5, pp. 1316–1320, 2020. doi: 10.1109/TVLSI.2020.2976099.
[11]         S. Mittal, G. Verma, B. Kaushik, F. A. Khanday, “A survey of SRAM-based in-memory computing techniques and applications", 2021. doi: 10.1016/j.sysarc.2021.102276.
[12]         S. H. H. Nemati, N. Eslami, M. H. Moaiyeri, “A Hybrid SRAM/RRAM In-Memory Computing Architecture Based on a Reconfigurable SRAM Sense Amplifier", IEEE Access, Vol. 11, 2023. doi: 10.1109/ACCESS.2023.3294675.
[13]         F. Kenarangi I. Partin-Vaisband, “Leveraging Independent Double-Gate FinFET Devices for Machine Learning Classification", IEEE Transactions on Circuits and Systems I: Regular Papers, Vol. 66, No. 11, 2019. doi: 10.1109/TCSI.2019.2927441.
[14]  “Predictive Technology Model (PTM)", Nanoscale Integration and Modeling (NIMO) Group. [Online]. Available: http://ptm.asu.edu/
[15]         R. Niaraki Asli, S. Taghipour, “Reliable and high performance asymmetric FinFET SRAM cell using back-gate control", Microelectronics Reliability, Vol. 104, p. 113545, Jan. 2020. doi: 10.1016/J.MICROREL.2019.113545.
[16]         M. Karamimanesh, E. Abiri, K. Hassanli, M. R. Salehi, A. Darabi, “A robust and write bit-line free sub-threshold 12T-SRAM for ultra-low power applications in 14 nm FinFET technology", Microelectronics J, Vol. 118, 2021. doi: 10.1016/j.mejo.2021.105185.
[17]         N. Eslami, B. Ebrahimi, E. Shakouri, D. Najafi, “A single-ended low leakage and low voltage 10T SRAM cell with high yield", Analog Integr Circuits Signal Process, Vol. 105, No. 2, 2020. doi: 10.1007/s10470-020-01669-y.
[18]         H. Makino, Sh. Nakata, H. Suzuki, Sh. Mutoh, M. Miyama, T. Yoshimura, “Reexamination of SRAM cell write margin definitions in view of predicting the distribution", IEEE Transactions on Circuits and Systems II: Express Briefs, Vol. 58, No. 4, pp. 230–234, 2011. doi: 10.1109/TCSII.2011.2124531.
[19]         C. H. Wang, K. Y. Huang, Y. Yao, J. C. Chen, H. H. Shuai, W. H. Cheng, “Lightweight Deep Learning: An Overview", IEEE Consumer Electronics Magazine, Vol. 13, No. 4, 2024. doi: 10.1109/MCE.2022.3181759.
[20]         S. M. Rizvi, A. A. H. A. Rahman, U. U. Sheikh, K. A. A. Fuad, H. M. F. Shehzad, “Computation and memory optimized spectral domain convolutional neural network for throughput and energy-efficient inference", Applied Intelligence, Vol. 53, No. 4, 2023. doi: 10.1007/s10489-022-03756-1.
[21]         S. Angizi, M. Morsali, S. Tabrizchi, A. Roohi, “A Near-Sensor Processing Accelerator for Approximate Local Binary Pattern Networks", IEEE Trans Emerg Top Comput, Vol. 12, No. 1, 2024. doi: 10.1109/TETC.2023.3285493.
[22]         N. Eslami, M. H. Moaiyeri, “A Flexible and Reliable RRAM-Based In-Memory Computing Architecture for Data-Intensive Applications", IEEE Trans Emerg Top Comput, 2023. doi: 10.1109/TETC.2023.3268079.
[23]         G. Xu, M. Liu, Z. Jiang, W. Shen, C. Huang, “Online Fault Diagnosis Method Based on Transfer Convolutional Neural Networks", IEEE Trans Instrum Meas, Vol. 69, No. 2, 2020. doi: 10.1109/TIM.2019.2902003.
[24]         Y. Ying, J. Su, P. Shan, L. Miao, X. Wang, S. Peng, “Rectified Exponential Units for Convolutional Neural Networks", IEEE Access, Vol. 7, 2019. doi: 10.1109/ACCESS.2019.2928442.