Low-Error and Variation-Aware Approximate Full Adders for Imprecision-Tolerant Applications
Subject Areas : electrical and computer engineeringMohammad Mirzaei 1 , سيامك محمدي 2 *
1 - University of Tehran
2 - University of Tehran
Keywords: Process variation, approximate full adder, approximate adder, imprecision-tolerant applications, approximate computing, demand response,
Abstract :
In imprecision-tolerant applications such as image processing and machine learning, imprecision can be tolerated because of the nature of the application itself or the limitation of human senses. By using the approximate computation in these applications, significant power, delay, or area reductions can be achieved. In this paper, two approximate full adders and an approximate adder, with low error are proposed. The effects of die-to-die (D2D) process variation on the threshold voltage of approximate circuits have been evaluated. For evaluating the accuracy and the variability, these approximate full adders have been used and analyzed in the ripple carry adder structure, image Sharpening and image Smoothing algorithms. In terms of power-delay-product (PDP), accuracy, and area for uniformly distributed inputs, the proposed approximate full adder 1, exhibits the best performance, and the proposed approximate full adder 2 and the proposed approximate adder, show the best peak-signal-to-noise ratio (PSNR) for real images.
[1] M. A. Laurenzano, P. Hill, M. Samadi, S. Mahlke, J. Mars, and L. Tang, "Input responsiveness: using canary inputs to dynamically steer approximation," ACM SIGPLAN Notices, vol. 51, no. 6, pp. 161-176, Santa Barbara CA, USA, 13 - 17 Jun. 2016.
[2] H. Esmaeilzadeh, A. Sampson, L. Ceze, and D. Burger, "Architecture support for disciplined approximate programming," ACM SIGPLAN Notices, vol. 47, no. 4, pp. 301-312, London UK, 3-7 Mar. 2012.
[3] S. Mittal, "A survey of techniques for approximate computing," ACM Computing Surveys, vol. 48, no. 4, Article ID: 62, 33 pp., May 2016.
[4] H. Jiang, C. Liu, L. Liu, F. Lombardi, and J. Han, "A review, classification, and comparative evaluation of approximate arithmetic circuits," ACM J. on Emerging Technologies in Computing Systems, vol. 13, no. 4, Article ID: 60, pp 1-34, Oct. 2017.
[5] C. Hernandez, A. Roca, F. Silla, J. Flich, and J. Duato, "On the impact of within-die process variation in GALS-based NoC performance," IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, vol. 31, no. 2, pp. 294-307, Feb. 2012.
[6] M. Mirzaei, M. Mosaffa, and S. Mohammadi, "Variation-aware approaches with power improvement in digital circuits," Integration, the VLSI J., vol. 48, pp. 83-100, Jan. 2015.
[7] M. Mirzaei, M. Mosaffa, S. Mohammadi, and J. Trajkovic, "Power and variability improvement of an asynchronous router using stacking and dual-Vth approaches," in Proc. Euromicro Conf. on Digital System Design, pp. 327-334, Los Alamitos, CA, USA, 4-6 Sert. 2013.
[8] S. M. T. Adl, M. Mirzaei, and S. Mohammadi, "Elastic buffer evaluation for link pipelining under process variation," IET Circuits, Devices & Systems, vol. 12, no. 5, pp. 645-654, Sept. 2018.
[9] M. Mirzaei and S. Mohammadi, "Low-power and variation-aware approximate arithmetic units for Image Processing Applications," AEU-International J. of Electronics and Communications, vol. 138, Article ID: 153825, 13 pp., Aug. 2021.
[10] M. Mirzaei and S. Mohammadi, "Process variation-aware approximate full adders for imprecision-tolerant applications," Computers & Electrical Engineering, vol. 87, Article ID: 106761, 14 pp., Oct. 2020.
[11] T. Yang, T. Ukezono, and T. Sato, "A low-power configurable adder for approximate applications," in Proc. 19th Int. Symp. on Quality Electronic Design, ISQED’18, pp. 347-352, Santa Clara, CA, USA, 13-14 Mar. 2018.
[12] T. Ukezono, "An error corrector for dynamically accuracy-configurable approximate adder," in Proc. 6th Int. Symp. on Computing and Networking Workshops, CANDARW’18, pp. 145-151, Takayama, Japan, 27-30 Nov. 2018.
[13] H. R. Mahdiani, A. Ahmadi, S. M. Fakhraie, and C. Lucas, "Bio-inspired imprecise computational blocksfor efficient VLSI implementation of soft-computing applications," IEEE Trans. on Circuits and Systems I: Regular Papers, vol. 57, no. 4, pp. 850-862, Apr. 2009.
[14] A. M. Hassani, M. Rezaalipour, and M. Dehyadegari, "A novel ultra low power accuracy configurable adder at transistor level in Proc. 8th Int.Conf. on Computer and Knowledge Engineering, ICCKE’18, pp. 165-170, Mashhad, Iran, 25-26 Oct. 018.
[15] A. Dalloo, A. Najafi, and A. Garcia-Ortiz, "Systematic design of an approximate adder: the optimized lower part constant-or adder," IEEE Trans. on Very Large Scale Integration (VLSI) Systems, vol. 26, no. 8, pp. 1595-1599, Aug. 2018.
[16] L. B. Soares, M. M. A. da Rosa, C. M. Diniz, E. A. C. da Costa, and S. Bampi, "Design methodology to explore hybrid approximate adders for energy-efficient image and video processing accelerators," IEEE Trans. on Circuits and Systems I: Regular Papers, vol. 66, no. 6, pp. 2137-2150, Jun. 2019.
[17] S. Mazahir, M. K. Ayub, O. Hasan, and M. Shafique, "Probabilistic error analysis of approximate adders and multipliers," Approximate Circuits: Springerpp. 99-120, Dec. 2019.
[18] Y. Wu, Y. Li, X. Ge, Y. Gao, and W. Qian, "An efficient method for calculating the error statistics of block-based approximate adders," IEEE Trans. on Computers, vol. 68, no. 1, pp. 21-38, Jan. 2018.
[19] O. Akbari, M. Kamal, A. Afzali-Kusha, and M. Pedram, "RAP-CLA: a reconfigurable approximate carry look-ahead adder," IEEE Trans. on Circuits and Systems II: Express Briefs, vol. 65, no. 8, pp. 1089-1093, Nov. 2016.
[20] H. A. Almurib, T. N. Kumar, and F. Lombardi, "Approximate DCT image compression using inexact computing," IEEE Trans. on Computers, vol. 67, no. 2, pp. 149-159, Jul. 2017.
[21] V. Gupta, D. Mohapatra, S. P. Park, A. Raghunathan, and K. Roy, "IMPACT: imprecise adders for low-power approximate computing," in Proc. of the 17th IEEE/ACM Int. Symp. on Low-Power Electronics and Design, pp. 409-414, Fukuoka, Japan, 1-3 Aug. 2011.
[22] V. Gupta, D. Mohapatra, A. Raghunathan, and K. Roy, "Low-power digital signal processing using approximate adders," IEEE Trans. on Computer-Aided Design of Integrated Circuits and Systems, vol. 32, no. 1, pp. 124-137, Dec. 2012.
[23] Z. Yang, A. Jain, J. Liang, J. Han, and F. Lombardi, "Approximate XOR/XNOR-based adders for inexact computing," in Proc. 13th IEEE Int. Conf. on Nanotechnology, IEEE-NANO’13, pp. 690-693, Beijing, China, 5-8 Aug. 2013.
[24] H. A. Almurib, T. N. Kumar, and F. Lombardi, "Inexact designs for approximate low power addition bycell replacement," in Proc. Design, Automation & Test in Europe Conf. & Exhibition, DATE’16, , pp. 660-665, Dresden, Germany, 14-18 Mar. 2016.
[25] N. H. Weste and D. Harris, CMOS VLSI Design: A Circuits and Systems Perspective, Pearson Education India, 2015.
[26] Z. Yang, J. Han, and F. Lombardi, "Transmission gate-based approximate adders for inexact computing," in Proc. of the IEEE/ACM Int. Symp. on Nanoscale Architectures, NANOARCH'15, pp. 145-150, Boston, MA, USA, 08-10 Jul. 2015.
[27] S. Venkatachalam and S. B. Ko, "Design of power and area efficient approximate multipliers," IEEE Trans. on Very Large Scale Integration (VLSI) Systems, vol. 25, no. 5, pp. 1782-1786, Jan. 2017.
[28] H. Waris, C. Wang, and W. Liu, "High-performance approximate half and full adder cellsusing NAND logic gate," IEICE Electronics Express, vol.16, no.6, pp. 36-43, Jun. 2019.
[29] Y. S. Mehrabani, S. G. Gigasari, M. Mirzaei, and H. Uoosefian, "A novel highly-efficient inexact full adder cell for motion and edge detection systems of image processing in CNFET technology," ACM J. of Emerging Technologies in Computing System, vol. 18, no. 3, pp. 127-142, Mar. 2022.
[30] Z. Zareei, M. Bagherizadeh, M. Shafiabadi, and Y. S. Mehrabani, "Design of efficient approximate 1-bit full adder cells using CNFET technology applicable in motion detector systems," Microelectronics J., vol. 108, Article ID: 104962, 15 pp., Feb. 2021.
[31] S. H. Shahrokhi, M. Hosseinzadeh, M. Reshadi, and S. Gorgin, "High-performance and low-energy approximate full adder design for error-resilient image processing," International J. of Electronics, vol. 109, no. 6, pp. 1059-1079, Aug. 2021.
[32] Y. S. Mehrabani, M. Parsapour, M. Moradi, and M. Bagherizadeh, "A novel efficient CNFET-based inexact full adder design for image processing applications," International J. of Nanoscience, vol. 20, no. 2, pp. 21-30, Jan. 2015.
[33] S. Salavati, M. H. Moaiyeri, and K. Jafari, "Ultra-efficient nonvolatile approximate full-adder with spin-Hall-assisted MTJ cells for in-memory computing applications," IEEE Trans. on Magnetics, vol. 57, no. 5, pp. 1-11, Mar. 2021.
[34] G. Gulafshan, D. Hasan, and M. Khan, "Fast and Area Efficient Hybrid MTJ-CMOS Spintronic Approximate Adder," in Proc. , 5th IEEE Int. Conf. on Emerging Electronic, ICEE’20, New Delhi, India, 26-28 Nov. 2022.
[35] -, Predictive Technology Model, Retrived on Jan. 2, 2020, http://ptm.asu.edu
[36] H. R. Myler and A. R. Weeks, The Pocket Handbook of Image Processing Algorithms in C, Prentice Hall Press, 2009.
[37] Z. Wang, A. C. Bovik, H. R. Sheikh, and E. P. Simoncelli, "Image quality assessment: from error visibility to structural similarity," IEEE Trans. on Image Processing, vol. 13, no. 4, pp. 600-612, Apr. 2004.
نشریه مهندسی برق و مهندسی كامپیوتر ایران، الف- مهندسی برق، سال 20، شماره 2، تابستان 1401 93
مقاله پژوهشی
ارائه تمامجمعکنندههای تقریبی با خطای کم و آگاه از
تغییرپذیری برای کاربردهای تحملپذیر عدم دقت
محمد میرزایی و سیامک محمدی
چكیده: کاربردهای تحملپذیر عدم دقت مانند پردازش تصویر و یادگیری ماشین به دلیل محدودیتهای حس انسان یا ماهیت کاربرد، قابلیت تحمل
عدم دقت را دارند. استفاده از محاسبات تقریبی در این کاربردها میتواند به کاهش قابل توجهی در توان، تأخیر و مساحت منجر شود. در این مقاله دو تمامجمعکننده تقریبی و یک جمعکننده تقریبی با خطای کم ارائه شده و اثرات تغییرپذیری قالب به قالب ولتاژ آستانه روی این مدارها مورد ارزیابی قرار گرفته است. برای ارزیابی خطا و تغییرپذیری، از این تمامجمعکنندههای تقریبی در ساختار جمعکننده با انتشار نقلی و الگوریتمهای پردازش تصویر sharpening و smoothing استفاده شده است. از نظر سه پارامتر حاصلضرب- توان- تأخیر، دقت و مساحت برای ورودیهای با توزیع یکنواخت، تمامجمعکننده پیشنهادی 1 و از نظر حداکثر نسبت سیگنال به نویز برای کاربردهای واقعی، تمامجمعکننده پیشنهادی 2 و جمعکننده پیشنهادی، بهترین عملکرد را دارند.
کلیدواژه: تغییرپذیری، تمامجمعکننده تقریبی، جمعکننده تقریبی، کاربردهای تحملپذیر عدم دقت، محاسبات تقریبی.
1- مقدمه
کاربردهایی مانند پردازش تصویر و صدا و بینایی کامپیوتر2 به دلیل آن که اکثر محاسبات را روی تصویر، صدا و ویدئو انجام دادهاند یا با حسهای نادقیق انسان سروکار دارند، حساسیت کمتری به کیفیت خروجی کاربرد دارند. این کاربردها، کاربردهای تحملپذیر عدم دقت3 نامیده میشوند. در این کاربردها با استفاده از محاسبات تقریبی4 و کاهش ناچیز کیفیت خروجی، میتوان به بهبود قابل توجهی از نظر مساحت، توان مصرفی و کارایی دست یافت [1]. مثلاً در الگوریتم خوشهبندی5 k-means با کاهش 5 درصدی دقت دستهبندی6، میتوان تا 50 برابر انرژی را کاهش داد [2] و [3].
در سیستم محاسبات دودویی مهمترین واحد محاسباتی جمعکننده میباشد که از آن برای انجام عملیاتی مانند جمع، تفریق، ضرب و تقسیم استفاده میشود. همچنین در بیشتر کاربردهای تحملپذیر عدم دقت از واحدهای محاسباتی مانند جمعکنندهها و ضربکنندههای تقریبی استفاده میگردد. جزء اصلی تشکیلدهنده ساختار جمعکنندهها و ضربکنندههای تقریبی، تمامجمعکنندههای تقریبی7 است و به همین دلیل در این مقاله به بررسی تمامجمعکنندههای تقریبی میپردازیم که یکی از پرکاربردترین المانهای محاسباتی در محاسبات تقریبی میباشند [4].
با پیشرفت فناوری، در طی مراحل ساخت نیمههادی، عواملی چون لیتوگرافی و نقص لنز موجب ایجاد تغییراتی در پارامترهای ترانزیستور
و اتصالات میانی میشود. این تغییرات فیزیکی منجر به تغییراتی در مشخصه الکتریکی ترانزیستور، نظیر جریان و ولتاژ آستانه 8 ترانزیستور میگردد. در نتیجه استفاده از این ترانزیستور در یک مدار، موجب ایجاد تغییراتی در توان و تأخیر آن مدار میگردد. در این حالت تغییرپذیری به یکی از چالشهای طراحان مبدل شده است؛ به طوری که در فناوریهای زیر 45 نانومتر، مهمترین عامل عدم اطمینان، تغییرپذیری میباشد [5]. کاربردهای تحملپذیر عدم دقت از جمعکنندههای تقریبی برای کاهش توان و تأخیر استفاده مینمایند اما تغییرپذیری روی توان و تأخیر این مدارها تأثیر میگذارد. از این رو اثرات تغییرپذیری روی جمعکنندههای تقریبی باید مورد ارزیابی و بررسی قرار گیرند.
تغییرپذیری به دو دسته تغییرپذیری پارامترهای فرایند ساخت9 و تغییرپذیری پارامترهای محیطی10 تقسیم میشود [6]. تغییرپذیری فرایند، در طول فرایند ساخت رخ میدهد و عموماً دایمی است که این تغییرات به دلیل محدودیتهای فرآوری11 و پوششگذاری12 رخ میدهد. تغییرپذیری محیطی در طول کار یک مدار خود را نشان میدهد و این نوع تغییرپذیری شامل دما، ضریب فعالیت13 و ولتاژ تغذیه میباشد. تغییرپذیری فرایند ساخت به دو گروه درونقالب 14(WID) و قالب به قالب 15(D2D) تقسیم میشود. در تغییرپذیری درونقالب تغییرات میتوانند اثرات متفاوتی روی سطح یک قالب ایجاد نمایند. مثلاً به دلیل نوسانات تصادفی ناخالصی 16(RDF)، ولتاژ آستانه در سطح یک قالب یکسان نبوده و در قسمتهای مختلف آن متفاوت میباشد. تغییرپذیری قالب به قالب اثر یکسانی روی سطح یک قالب دارد اما این اثرات از قالبی به قالب دیگر متفاوت است. مثلاً به دلیل تفاوت در ضخامت یک ویفر17، ولتاژ آستانه دو قالب مجاور با هم متفاوت بوده و این در حالی است که در سطح هر قالب، ولتاژ آستانه دارای مقدار ثابتی میباشد.
در نتیجه در فناوریهای امروزی تغییرپذیری بسیار مهم است ولی اکثر کارهایی که در زمینه محاسبات تقریبی انجام شدهاند، اثرات تغییرپذیری را روی روشهای پیشنهادی مورد ارزیابی قرار ندادهاند. در این مقاله اثرات تغییرپذیری را روی تمامجمعکنندههای تقریبی مورد ارزیابی قرار خواهیم داد. با توجه به [6] تا [9]، ولتاژ آستانه مهمترین پارامتر در تغییرپذیری فناوریهای جدید بوده و اثرات تغییرپذیری D2D در کاربردهای تحملپذیر عدم دقت حدوداً 2 الی 3 برابر اثرات تغییرپذیری WID میباشد [10]. به همین دلیل در این مقاله اثر تغییرپذیری قالب به قالب پارامتر ولتاژ آستانه را روی کارایی واحدهای تقریبی مورد بررسی قرار خواهیم داد.
خلاصه نوآوریهای مقاله به صورت زیر است:
1) ارائه دو تمامجمعکننده تقریبی جدید به اسم 1APFA و 2APFA که نسبت به تمامجمعکنندههای تقریبی موجود خطای کمتری دارند.
2) برای تمامجمعکنندههای تقریبی، اثرات تغییرپذیری روی توان، تأخیر و حاصلضرب- توان- تأخیر 18(PDP) مورد ارزیابی قرار
گرفته است. برای این منظور اثرات تغییرپذیری D2D روی ولتاژ آستانه ترانزیستورها در فناوری 32 نانومتر با استفاده از شبیهسازی مونتکارلو19 در محیط اچاسپایس20 مورد ارزیابی قرار است.
3) همچنین با استفاده از 1APFA و 2APFA جمعکنندهای تقریبی مبتنی بر RCA ارائه مینماییم که در کاربردهای واقعی بهترین عملکرد را دارا است.
در ادامه مقاله و در بخش 2 به شرح کارهای انجامشده در زمینه جمعکنندههای تقریبی و تمامجمعکنندههای تقریبی پرداخته خواهد شد. در بخش 3 تمامجمعکنندههای تقریبی پیشنهادی شرح داده میشوند. در بخش 4 ساختار جمعکننده تقریبی پیشنهادی ارائه گردیده و به ارزیابی کارایی، خطا و اثرات تغییرپذیری جمعکنندههای تقریبی پرداخته خواهد شد. در بخش 5 نتایج شبیهسازیها روی کاربردهای پردازش تصویر ارائه خواهد گردید و نهایتاً در بخش 6 به جمعبندی و نتیجهگیری پرداخته شده است.
2- کارهای پیشین
جمعکنندهای تقریبی با قابلیت تنظیم دقت در [11] و [12] ارائه شده است. برای این کار یک تمامجمعکننده و یک نیمجمعکننده با قابلیت ماسککردن کری ارائه گردیده و از آن در ساختار RCA استفاده شده است. برای تنظیم دقت، مداری به منظور تصحیح خطا ارائه شده که در صورت نیاز فعال میگردد. در [13] یک جمعکننده تقریبی به نام LOA ارائه شده که در قسمت تقریبی آن از گیت 2Or برای محاسبه Sum استفاده گردیده و از یک گیت 2And روی پرارزشترین بیت بخش تقریبی برای محاسبه نقلی خروجی به بخش دقیق استفاده میگردد. اگر از این کار فقط برای یک تمامجمعکننده تقریبی استفاده نماییم، خروجی Sum توسط 2Or و خروجی Cout توسط 2And تولید خواهد شد.
در [14] با استفاده از منطق ترانزیستور گذر یک تمامجمعکننده قابل تنظیم در مد دقیق و تقریبی ارائه شده است. از این تمامجمعکننده در ساختار RCA استفاده شده که در مد تقریبی مانند LOA عمل نموده
ولی توان مصرفی را به نصف کاهش میدهد. در [15] به بهینهسازی جمعکننده LOA پرداخته شده است. روشی برای یافتن جمعکنندههای تقریبی هیبرید که از نظر انرژی کارا باشند، برای کاربردهای پردازش تصویر و ویدئو در [16] ارائه شده است. به دلیل آن که هدف این مقاله انجام عملیات ضرب بدون استفاده از ضربکنندههای مرسوم میباشد، عملیات غالب در این کار، شیفت و جمع21 بوده و از جمعکنندههای پیشوندی موازی22 استفاده شده است.
در [17] به تحلیل احتمالی خطای جمعکنندههای تقریبی پرداخته شده و در [18] روشی کارا برای محاسبه خطاهای آماری جمعکنندههای تقریبی مبتنی بر بلاک ارائه گردیده است. یک جمعکننده تقریبی قابل پیکربندی با پیشبینی کری در [19] ارائه شده است. این جمعکننده در دو مد دقیق و تقریبی کار میکند و در فناوری 15 نانومتر فینفت ارزیابی گردیده است. در [20] با استفاده از تمامجمعکنندههای تقریبی به ارائه
یک تبدیل کسینوسی گسسته 23(DCT) تقریبی برای فشردهسازی
تصاویر پرداخته شده است. در این کار ضربکنندههای ممیز شناور، حذف و به جای آن از جمع صحیح و شیفت استفاده شده است.
با حذف برخی از ترانزیستورهای یک تمامجمعکننده آینهای24، در
[21] و [22] به ترتیب 3 و 4 تمامجمعکننده تقریبی ارائه گردیده است. این تمامجمعکنندههای تقریبی به دلیل کاهش خازنهای سوئیچینگ دارای تأخیر و توان مصرفی کمتر و همچنین به دلیل حذف برخی از ترانزیستورها دارای مساحت کمتری نسبت به تمامجمعکننده آینهای دقیق میباشند. این تمامجمعکنندههای تقریبی در چندین حالت نیز خروجیهای نادرست تولید مینمایند. سه نوع تمامجمعکننده تقریبی مبتنی بر XOR و XNOR در [23] ارائه شده و برای پیادهسازی گیتهای XOR و XNOR از منطق ترانزیستورهای گذر25 استفاده گردیده است. سه نوع تمامجمعکننده نادقیق با استفاده از گیتهای استاندارد در [24] ارائه شده ولی برای پیادهسازی گیتهای استاندارد از منطق ترانزیستورهای گذر استفاده نموده است. در دو مقاله قبل، علاوه بر خروجیهای نادرست برای برخی ورودیها، مشکل دیگر این نوع تمامجمعکنندههای تقریبی، افت سطوح ولتاژ به دلیل استفاده از ترانزیستورهای گذر میباشد [25].
در [26]، دو نوع تمامجمعکننده مبتنی بر XOR و MUX ارائه شده که برای پیادهسازی آن از منطق گیت انتقال26 استفاده گردیده که مشکل افت سطوح ولتاژ ترانزیستورهای گذر را ندارد، ولی نسبت به سایر تمامجمعکنندههای نادقیق توان مصرفی بیشتری دارد. در [27] یک نیمجمعکننده، یک تمامجمعکننده و یک فشردهکننده 4 به 2 تقریبی برای ضربکننده آرایهای ارائه شده است. برای این کار برای تولید sum به جای یکی از گیتهای XOR از گیت OR استفاده شده است. برای تولید نقلی نیز از گیتهای AND و OR بین سه ورودی تمامجمعکننده استفاده گردیده است. در [28] یک نیمجمعکننده و یک تمامجمعکننده
[1] این مقاله در تاریخ 13 اسفند ماه 1399 دریافت و در تاریخ 11 اردیبهشت ماه 1401 بازنگری شد. اين تحقيق توسط پژوهشگاه دانشهای بنیادی بر اساس قرارداد شماره 992836574 پشتيباني شده است.
محمد میرزایی، دانشکده مهندسی برق و کامپیوتر، دانشگاه تهران، تهران، ایران، (email: mo.mirzaei@ut.ac.ir).
سیامک محمدي (نویسنده مسئول)، دانشکده مهندسی برق و کامپیوتر، دانشگاه تهران، تهران، ایران، (email: smohamadi@ut.ac.ir).
[2] . Computer Vision
[3] . Imprecision-Tolerant Applications
[4] . Approximate Computing
[5] . Clustering
[6] . Classification
[7] . Approximate Full Adder
[8] . Threshold Voltage
[9] . Process Variation
[10] . Environment Variation
[11] . Processing
[12] . Masking
[13] . Activity Factor
[14] . Within-Die
[15] . Die-to-Die
[16] . Random Dopant Fluctuation
[17] . Wafer
[18] . Power-Delay-Product
[19] . Monte-Carlo
[20] . HSPICE
[21] . Shift and Add
[22] . Parallel Prefix Adders
[23] . Discrete Cosine Transform
[24] . Mirror Adder
[25] . Pass Transistors
[26] . Transmission Gate
جدول 1: جدول درستی و پارامترهای خطا در تمامجمعکنندههای دقیق و تقریبی.
2APFA | 1APFA | 3AFA | 2AFA | 1AFA | LOA | 2TGA | NFAx | VAFA | 3AMA | 2AMA | 1AMA | CMA | Inputs | ||
CS | CS | CS | CS | CS | CS | CS | CS | CS | CS | CS | CS | CS | Cin | B | A |
00 | 00 | 00 | 00 | 01 | 00 | 00 | 01 | 00 | 01 | 01 | 00 | 00 | 0 | 0 | 0 |
01 | 01 | 00 | 00 | 01 | 00 | 01 | 10 | 01 | 01 | 01 | 01 | 01 | 1 | 0 | 0 |
01 | 01 | 01 | 01 | 01 | 01 | 10 | 01 | 01 | 10 | 01 | 10 | 01 | 0 | 1 | 0 |
01 | 01 | 01 | 11 | 01 | 01 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 1 | 1 | 0 |
01 | 01 | 01 | 01 | 01 | 01 | 10 | 01 | 01 | 01 | 01 | 00 | 01 | 0 | 0 | 1 |
11 | 01 | 11 | 11 | 10 | 01 | 10 | 10 | 10 | 10 | 10 | 10 | 10 | 1 | 0 | 1 |
10 | 10 | 11 | 11 | 10 | 11 | 10 | 11 | 01 | 10 | 10 | 10 | 10 | 0 | 1 | 1 |
11 | 11 | 11 | 11 | 10 | 11 | 11 | 11 | 10 | 10 | 10 | 11 | 11 | 1 | 1 | 1 |
25/0 | 25/0 | 5/0 | 5/0 | 375/0 | 5/0 | 25/0 | 375/0 | 25/0 | 375/0 | 25/0 | 25/0 | - | ER | ||
125/0 | 125/0 | 312/0 | 312/0 | 229/0 | 312/0 | 25/0 | 312/0 | 104/0 | 292/0 | 167/0 | 25/0 | - | MRED | ||
083/0 | 083/0 | 167/0 | 167/0 | 125/0 | 125/0 | 083/0 | 125/0 | 083/0 | 125/0 | 083/0 | 083/0 | - | NMED |
تقریبی با استفاده از گیتهای 2NAND ارائه شده است. طبق نتایج ارائهشده در مقاله، این تمامجمعکننده ارائهشده از نظر انرژی وضعیت خوبی دارد ولی از نظر خطا، جزء بدترین طراحیهای موجود میباشد. در [10] نیز 3 تمامجمعکننده تقریبی در منطق CMOS ارائه شده و برای اولین بار اثرات تغییرپذیری را روی تمامجمعکننده تقریبی مورد ارزیابی قرار گرفته است.
همچنین اخیراً کارهای زیادی در زمینه واحدهای محاسباتی تقریبی به خصوص تمامجمعکنندههای تقریبی در فناوریهای ترانزیستور اثر میدانی نانولوله کربنی 1(CNFET) و پیوند تونل مغناطیسی 2(MTJ) انجام
شده است. تمرکز این مقاله روی فناوریهای ماسفت بوده و فناوریهای فوق، خارج از حوزه کاری آن میباشد ولی به برخی از این کارها اشاره مختصری خواهیم داشت. در [29] و [30]، دو تمامجمعکننده تقریبی با استفاده از CNFET، ارائه و از آن در ساختار الگوریتمهای تشخیص حرکت و تشخیص لبه استفاده شده است. همچنین یک تمامجمعکننده تقریبی با استفاده از CNFET در هر یک از [31] و [32]، ارائه و از آن
در ساختار الگوریتم ترکیب تصویر3 استفاده گردیده است. در [33]، دو تمامجمعکننده تقریبی با استفاده از فناوری MTJ برای کاربردهای محاسبه در حافظه4 ارائه شده و همچنین یک تمامجمعکننده تقریبی با استفاده از فناوری MTJ در [34] آمده است.
تمامجمعکنندههای تقریبی ارائهشده در مقالات فوق، از نظر توان مصرفی، تأخیر، دقت و مساحت با هم متفاوت هستند و جز [9] و [10]، هیچ یک از دیگر مقالات اثرات تغییرپذیری را در نظر نگرفتهاند. هدف ما ارزیابی تمامجمعکنندههای تقریبی از نظر کارایی (توان، تأخیر و PDP)، خطا و بررسی اثرات تغییرپذیری بوده و همچنین ارائه تمامجمعکنندههای تقریبی با خطای کم، کارایی قابل قبول و آگاه از تغییرپذیری میباشد.
3- تمامجمعکنندههای تقریبی پیشنهادی
در یک تمامجمعکننده تقریبی با توجه به سه ورودی دودویی، هشت حالت خروجی امکانپذیر است. با افزایش تعداد حالات نادرست خروجی، دقت، پیچیدگی طراحی و توان کاهش یافته و با کاهش تعداد حالات نادرست خروجی، دقت، پیچیدگی طراحی و توان افزایش مییابد. با توجه به تمامجمعکنندههای تقریبی موجود و ارزیابیهای انجامشده در این مقاله، زمانی که 2 حالت از 8 حالت خروجی نادرست باشد، مصالحه مناسبی بین دقت، پیچیدگی طراحی و توان مصرفی وجود خواهد داشت. در این مقاله با توجه به این مشاهده، تمامی حالاتی را که میتوان یک تمامجمعکننده تقریبی با 2 حالت خروجی نادرست از 8 حالت ممکن داشت، مورد ارزیابی قرار دادیم. برای این کار یک جمعکننده 8بیتی مبتنی بر RCA با فرض در نظر گرفته و از تمامجمعکنندههای تقریبی در ساختار آن استفاده نمودیم.
با اعمال تمامی حالات ورودی ممکن برای جمعکننده، بهترین تمامجمعکنندههای تقریبی از نظر پارامترهای خطا را جستجو نمودیم. حاصل این کار دو تمامجمعکننده تقریبی 1APFA و 2APFA است که از نظر پارامترهای خطا بهتر از همه تمامجمعکنندههای تقریبی موجود میباشند. جدول درستی این تمامجمعکنندههای تقریبی در جدول 1 ارائه شده است. در ادامه برای پیادهسازی این تمامجمعکنندههای تقریبی در سطح ترانزیستور، طراحیهای گوناگونی را ارزیابی و بهترین طراحی را از نظر مصالحه بین پارامترهای توان، تأخیر و PDP انتخاب نمودهایم. شکل 1 ساختار سطح ترانزیستور این دو تمامجمعکننده تقریبی پیشنهادی را نشان میدهد. روابط منطقی این تمامجمعکنندههای تقریبی در (1) و (2) ارائه شده است
(1)
(2)
با توجه به شکل، برای پیادهسازی خروجی Sum در 1APFA و 2APFA از گیت 2XNOR در منطق ترانزیستور گذر5 استفاده شده است. منطق ترانزیستور گذر دارای 2 مشکل میباشد که عبارت هستند از: توان ایستا و مسئله کاهش/ افزایش سطح ولتاژ. با توجه به این که تنها از دو ترانزیستور گذر در طراحی تمامجمعکنندههای پیشنهادی استفاده شده است، لذا توان ایستای بالایی نداشته و توان مصرفی کل این طراحیها قابل قبول است (بر اساس نتایج ارائهشده در فناوری 65 نانومتر برای تمامجمعکنندههای تقریبی مبتنی بر ترانزیستور گذر دارای 6 الی 8 ترانزیستور، توان ایستا حدود 2 درصد از توان مصرفی کل را شامل میشود [23]). برای حل
(الف)
(ب)
شکل 1: تمامجمعکنندههای تقریبی پیشنهادی، (الف) 1APFA و (ب) 2APFA.
مسئله کاهش/ افزایش سطح ولتاژ در ترانزیستور گذر، از گیت 2Nand در منطق CMOS در خروجی این مدارها استفاده شده و از این رو کاهش یا افزایش در سطح ولتاژ را اصلاح خواهد نمود.
با توجه به (1)، تمامجمعکننده تقریبی 1APFA برای محاسبه Cout به نقلی طبقه قبل نیازی ندارد و به همین دلیل تأخیر مسیر بحرانی جمعکنندههایی که از این تمامجمعکننده تقریبی استفاده مینمایند،
کمتر میباشد. در جدول 1، تمامجمعکنندههای تقریبی را از نظر دقت با تمامجمعکننده دقیق، مقایسه و جدول درستی آنها را ارائه نمودهایم. در این جدول ستونهای CS بیانگر بیتهای خروجی تمامجمعکننده بوده که بیت کمارزش (سمت راست) متعلق به حاصلجمع (S) و بیت پرارزش (سمت چپ) متعلق به نقلی (C) میباشد. هر گاه خروجی تمامجمعکننده تقریبی نادرست باشد، بیت متناظر با آن در ستون CS جدول 1 با رنگ قرمز مشخص میگردد.
در این مقاله از تمامجمعکننده دقیق آینهای ارائهشده در [22] به عنوان طراحی پایه استفاده میگردد که در ادامه مقاله با نام CMA شناخته خواهد شد و 10 تمامجمعکننده تقریبی مختلف از مقالات دیگر مورد ارزیابی قرار خواهند گرفت. نامهای اختصاری آنها در این مقاله عبارت هستند از: 1AMA، 2AMA، 3AMA، VAFA، NFAx، 2TGA، LOA، 1AFA، 2AFA و 3AFA. تمامجمعکنندههای تقریبی AMA از [22]، تمامجمعکننده تقریبی VAFA از [27]، تمامجمعکننده تقریبی NFAx از [28]، تمامجمعکننده تقریبی 2TGA از [26]، تمامجمعکننده تقریبی LOA از [13] و تمامجمعکنندههای تقریبی AFA از [10]
اخذ گردیده است. با توجه به نتایج ارائهشده [10]، به دلیل این که تمامجمعکنندههای AXA و InXA [23] و [24] دارای مشکلات افت ولتاژ، پارامترهای خطای قابل توجه و حساسیت زیاد نسبت به تغییرپذیری میباشند، در این مقاله مقایسهای با کارهای ذکرشده نخواهیم داشت.
برای ارزیابی خطا با توجه به [22] از سه پارامتر نرخ خطا 6(ER)،
جدول 2: مقادیر پارامترهای فناوری 32 نانومتر و معکوسکننده پایه.
nm 6/12 | Leff | V 9/0 | Vdd | nm 32 | Tech |
nm 64 | 2Wn=Wp/ | V 16/0 | Vth | TT | Process |
nm 32 | Ln=Lp | nm 1 | Tox | °C 25 | Temp |
میانگین فاصله خطای نرمالشده 7(NMED) و میانگین نسبی فاصله خطا 8(MRED) استفاده گردیده است. در ادامه هر یک از این پارامترها شرح داده خواهند شد. در این روابط بیانگر تعداد کل حالتهای ورودی است
(3)
(4)
(5)
در 3 سطر آخر جدول 1، مقادیر پارامترهای خطا برای تمامجمعکنندههای تقریبی ارائه شده است. برای محاسبه MRED برای تمامجمعکنندههای تقریبی مانند 2AMA، 3AMA، NFAx و 1AFA با توجه به این که برای حالت ورودیهای دارای خطا میباشیم و با توجه به (5)، مقدار RED در این حالت بینهایت میگردد ولی ما در این حالت مقدار RED را 1 فرض مینماییم. با توجه به جدول 1، کمترین میزان خطا متعلق به VAFA بوده و پس از آن 1APFA و 2APFA هر دو در جایگاه دوم قرار دارند.
3-1 ارزیابی کارایی تمامجمعکنندههای تقریبی
در این بخش یک تمامجمعکننده دقیق آینهای و 12 تمامجمعکننده تقریبی را از نظر پارامترهای توان مصرفی، تأخیر، PDP و مساحت با
هم مقایسه میکنیم. برای این کار از شبیهساز HSPICE در فناوری 32 نانومتر PTM [35] استفاده شده است. برای خازن بار در خروجیهای تمامجمعکنندهها از 4 معکوسکننده استفاده نموده و در عمل هر خروجی تمامجمعکننده، 4 معکوسکننده را درایو میکند. منظور از مساحت، تعداد ترانزیستورهای موجود در آن تمامجمعکننده میباشد. در جدول 2، مقادیر پارامترهای فناوری 32 نانومتر (ولتاژ تغذیه، ولتاژ آستانه، طول مؤثر کانال، دما و ضخامت اکسید گیت) و همچنین پهنا و طول ترانزیستورهای نوع P و نوع N برای معکوسکننده پایه ارائه شده است.
برای به دست آوردن توان، تأخیر و PDP، تمامی حالتهایی را که ورودیهای تمامجمعکننده میتوانند داشته باشند به عنوان سناریوهای ورودی به آن داده و مقدار میانگین و ماکسیمم را در جدول 3 ارائه نمودهایم. مثلاً سناریوی اول، تغییر ورودی از حالت
به حالت است، سناریوی دوم تغییر ورودی از حالت
به حالت
بوده و به همین ترتیب تا سناریوی آخر که تغییر ورودی از حالت
به حالت
[1] . Carbon Nanotube Field-Effect Transistor
[2] . Magnetic Tunnel Junction
[3] . Image Blending
[4] . Computing-in-Memory
[5] . Pass Transistor Logic
[6] . Error Rate
[7] . Normalized Mean Error Distance
[8] . Mean Relative Error Distance
جدول 3: توان، تأخیر، PDP متوسط و ماکسیمم و مساحت تمامجمعکنندهها.
FAs | Power (µw) | Delay (ps) | PDP (aj) | Area | |||
Avg | Max | Avg | Max | Avg | Max | # of Tran | |
CMA | 04/6 | 63/10 | 81/24 | 00/40 | 69/151 | 72/287 | 28 |
1AMA | 24/4 | 80/6 | 73/18 | 59/33 | 21/82 | 88/189 | 20 |
2AMA | 77/3 | 89/4 | 55/21 | 37/28 | 98/80 | 31/118 | 14 |
3AMA | 36/3 | 31/4 | 76/20 | 46/25 | 52/69 | 62/100 | 11 |
VAFA | 89/6 | 15/11 | 58/27 | 41/43 | 80/205 | 06/454 | 24 |
NFAx | 25/3 | 89/4 | 66/14 | 35/19 | 16/47 | 45/76 | 14 |
2TGA | 59/4 | 65/7 | 48/19 | 60/39 | 10/100 | 11/286 | 22 |
LOA | 77/2 | 02/5 | 69/13 | 12/17 | 46/38 | 74/78 | 12 |
1AFA | 01/2 | 58/2 | 59/12 | 15/19 | 66/25 | 76/47 | 8 |
2AFA | 78/3 | 55/6 | 57/15 | 52/21 | 30/59 | 30/117 | 18 |
3AFA | 76/2 | 99/4 | 75/13 | 15/19 | 45/38 | 13/73 | 14 |
1APFA | 33/3 | 86/7 | 15/15 | 59/26 | 72/54 | 08/209 | 16 |
2APFA | 53/3 | 88/7 | 96/14 | 45/26 | 75/56 | 27/208 | 18 |
میباشد. در بازههای زمانی 250 پیکوثانیهای، سناریوها را تغییر میدهیم و با توجه به این که حداکثر تأخیر کمتر از 50 پیکوثانیه میباشد، در نتیجه زمان قابل توجهی (بیش از 150 پیکوثانیه) ورودیها و خروجیهای مدار ثابت بوده و از این طریق توان ایستا نیز در توان مصرفی کل لحاظ شده است.
برای گزارش تأخیر، از بین تأخیر Sum و Cout بزرگترین را به عنوان تأخیر آن تمامجمعکننده لحاظ میکنیم. در جدول 3 مقادیری که با رنگ سبز مشخص شدهاند بیانگر بهترین مقدار، مقادیری که با رنگ آبی مشخص شدهاند بیانگر دومین بهترین مقدار و مقادیری که با رنگ قرمز مشخص شدهاند بیانگر بدترین مقدار هستند (این قرارداد برای تمامی جداول بعدی نیز صادق است). بر اساس جدول 3 کمترین؛ توان متوسط، توان ماکسیمم، تأخیر متوسط، PDP متوسط و PDP ماکسیمم متعلق
به 1AFA بوده و کمترین تأخیر ماکسیمم متعلق به LOA میباشد. از نظر مساحت نیز 1AFA با 8 ترانزیستور کمترین مساحت را دارا است. بیشترین مقدار توان، تأخیر، PDP و مساحت متعلق به VAFA بوده و علتش این است که در این تمامجمعکننده تقریبی از گیت 2XOR در منطق CMOS استفاده شده که نسبت به گیتهای سادهتری مانند 2And و 2Or دارای توان و تأخیر بیشتری میباشد. با توجه به جدول 3، 1AFA نسبت به CMA توان متوسط، تأخیر متوسط، PDP متوسط و مساحت را به میزان 72/66%، 24/49%، 09/83% و 43/71% کاهش میدهد. 1APFA نسبت به CMA توان متوسط، تأخیر متوسط، PDP متوسط و مساحت را به میزان 80/44%، 92/38%، 93/63% و 86/42% کاهش میدهد. همچنین 2APFA نسبت به CMA توان متوسط، تأخیر متوسط، PDP متوسط و مساحت را به میزان 52/41%، 69/39%، 59/62% و 71/35% کاهش میدهد.
با توجه به جدول 1، تمامجمعکنندههای تقریبی VAFA، 1APFA و 2APFA از نظر ER و NMED یکسان هستند ولی از نظر MRED وضعیت VAFA از بقیه بهتر است. اما بر اساس جدول 3، VAFA از نظر توان، تأخیر، PDP و مساحت، بدترین وضعیت را دارد و نمیتواند انتخاب مناسبی برای کاربردهای تحملپذیر عدم دقت باشد. بر اساس جداول 1 و 3، هیچ تمامجمعکننده تقریبی وجود ندارد که از نظر توان، تأخیر، PDP و دقت همواره بهتر از بقیه باشد. در نتیجه باید از این تمامجمعکنندههای تقریبی در ساختارهای بزرگتری مانند RCA و یا الگوریتمهای پردازش تصویر استفاده شود تا بتوان نتیجهگیری قابل اعتمادی را ارائه نمود. این کار در بخشهای بعد انجام شده است.
3-2 ارزیابی اثرات تغییرپذیری روی تمامجمعکنندههای تقریبی
در این بخش تمامجمعکنندههای تقریبی را از نظر اثرات تغییرپذیری، ارزیابی خواهیم کرد. با توجه به [6]، [9] و [10]، ولتاژ آستانه مهمترین پارامتر در تغییرپذیری فناوریهای جدید بوده و اثرات تغییرپذیری D2D حدوداً 2 الی 3 برابر اثرات تغییرپذیری WID میباشد [10]. به همین دلیل در این مقاله اثرات تغییرپذیری فرایند D2D پارامتر روی تمامجمعکنندهها مورد ارزیابی قرار خواهند گرفت. تمامی شبیهسازیها در فناوری 32 نانومتر PTM با استفاده از HSPICE انجام شده است و
برای ارزیابی اثرات تغییرپذیری از شبیهسازی 1024نقطهای مونتکارلو در HSPICE استفاده گردیده است.
میزان تغییرات نسبت به حالت نامینال را 20 درصد با توزیع گوسی در نظر خواهیم گرفت که این فرض در بقیه بخشهای این مقاله نیز
در نظر گرفته میشود. برای ارزیابی اثرات تغییرپذیری پارامتر روی تمامجمعکنندههای مختلف، تمامی سناریوهای ورودی ممکن را اعمال مینماییم. مثلاً برای هر یک از سناریوها، یک شبیهسازی مونتکارلوی 1024نقطهای اجرا شده و مقادیر توان، تأخیر و PDP به دست آمده و میزان اثرات تغییرپذیری توان، تأخیر و PDP محاسبه میشود (نحوه محاسبه تغییرپذیری در ادامه آمده است). نهایتاً میانگین تغییرپذیری این سناریوها به عنوان تغییرپذیری نهایی در نظر گرفته میشود. برای ارزیابی اثرات تغییرپذیری از برخی فرمولهای ریاضی بر اساس [6] استفاده مینماییم. به همین منظور با استفاده از شبیهسازی مونتکارلو و توزیع گوسی برای پارامتر
، مقادیر توان، تأخیر و PDP را به دست میآوریم. بر اساس فرمولهای زیر، ابتدا میانگین
، واریانس1
و انحراف معیار2
هر یک از ملاکهای کارایی (توان، تأخیر و PDP) را بر اساس نتایج حاصل از شبیهسازیها، محاسبه نموده و سپس با استفاده از (6) ضریب تغییرپذیری
را به دست میآوریم. ابتدا
[1] . Variance
[2] . Standard Deviation
جدول 4: میانگین اثرات تغییرپذیری D2D ولتاژ آستانه روی توان، تأخیر و PDP تمامجمعکنندهها.
FAs | Power (µw) | Delay (ps) | PDP (aj) | ||||||
Mean | S.D | C.V (%) | Mean | S.D | C.V (%) | Mean | S.D | C.V (%) | |
CMA | 56/6 | 94/1 | 56/29 | 50/27 | 15/7 | 00/26 | 94/177 | 6477/47 | 77/26 |
1AMA | 68/4 | 64/1 | 1/35 | 43/20 | 68/4 | 89/22 | 15/96 | 43/27 | 53/28 |
2AMA | 07/4 | 11/1 | 14/27 | 72/23 | 83/5 | 59/24 | 66/94 | 04/28 | 62/29 |
3AMA | 64/3 | 01/1 | 278827 | 63/22 | 18/5 | 89/22 | 66/80 | 37/23 | 98/28 |
VAFA | 53/7 | 56/2 | 96/33 | 56/30 | 62/7 | 87/24 | 50/243 | 41/99 | 83/40 |
NFAx | 62/3 | 36/1 | 52/37 | 37/15 | 05/3 | 36/19 | 09/55 | 96/16 | 87/30 |
2TGA | 30/5 | 00/3 | 67/56 | 23/21 | 99/4 | 48/23 | 34/120 | 64/57 | 90/47 |
LOA | 10/3 | 25/1 | 33/40 | 79/14 | 05/3 | 59/20 | 34/45 | 78/14 | 59/32 |
1AFA | 24/2 | 79/0 | 46/35 | 54/13 | 70/2 | 96/19 | 18/30 | 84/9 | 61/32 |
2AFA | 17/4 | 50/1 | 89/35 | 01/17 | 89/3 | 88/22 | 78/69 | 10/22 | 67/31 |
3AFA | 13/3 | 37/1 | 66/43 | 90/14 | 14/3 | 07/21 | 93/45 | 48/16 | 89/35 |
1APFA | 63/3 | 74/1 | 98/47 | 60/17 | 26/4 | 96/24 | 32/65 | 280328 | 91/42 |
2APFA | 87/3 | 79/1 | 17/46 | 88/16 | 07/4 | 14/24 | 49/68 | 33/20 | 37/41 |
شبیهسازی مونتکارلوی 1024نقطهای برای سناریوهای ورودی انجام شده و مثلاً برای سناریوی 1، 1024 مقدار برای توان، 1024 مقدار برای تأخیر و 1024 مقدار برای PDP به دست میآید. برای آن که تغییرپذیری توان برای سناریوی 1 را محاسبه نماییم، ابتدا میانگین و انحراف معیار این 1024 مقدار توان را محاسبه نموده و با (7) مقدار توان را به دست میآوریم و به همین ترتیب بر اساس 1024 مقدار تأخیر و 1024 مقدار PDP، مقادیر
تأخیر و PDP را به دست میآوریم. این کار برای
همه سناریوهای ورودی انجام شده و در نهایت میانگین های توان، میانگین
های تأخیر و میانگین
های PDP محاسبه میشود. برای تمامجمعکنندههای با میانگین تقریباً برابر، هرچه ضریب تغییرپذیری عدد کوچکتری باشد، بیانگر تأثیر کمتر تغییرپذیری روی آن تمامجمعکننده خواهد بود. در نتیجه آن تمامجمعکننده از نظر مقاومت در برابر تغییرپذیری بسیار مناسب است
(6)
(7)
(8)
(9)
بر اساس راهنمای HSPICE، رابطه بین خطای نسبی با تعداد تکرارهای مونتکارلو به صورت زیر میباشد
(10)
با توجه به (10) و با در نظر گرفتن تعداد تکرارهای مونتکارلو برابر با 1024، مقدار خطای نسبی حدود 1/3% میشود. بر اساس راهنمای HSPICE، اگر مداری در تمامی این 1024 تکرار درست کار کند، آن گاه با احتمال 99%، این مدار برای بیش از 9/96% از مقادیر کامپوننتهای ممکن نیز درست کار خواهد کرد. بر اساس شبیهسازیهای انجامشده
در این مقاله، وقتی تعداد تکرارهای مونتکارلو را 10000 انتخاب کنیم، مقادیر میانگین، انحراف معیار و ضریب تغییرپذیری بین تا
نسبت به حالت شبیهسازی با 1024 تکرار، تفاوت خواهند داشت که این میزان تفاوت ناچیز بوده و میتوان دقت شبیهسازی مونتکارلوی هر دو حالت را تقریباً یکسان در نظر گرفت. اما زمان شبیهسازی مونتکارلو با 10000 تکرار، تقریباً 10 برابر بیشتر میباشد و از این رو در این مقاله تعداد تکرارها را 1024 در نظر گرفتهایم.
نتایج حاصل از ارزیابی تغییرپذیری D2D پارامتر روی توان، تأخیر و PDP تمامجمعکنندهها در جدول 4 ارائه شده است. همان گونه که در این جدول مشاهده میشود، تغییرپذیری موجب افزایش میانگین توان، تأخیر و PDP تمامجمعکنندهها میگردد. کمترین اثرات تغییرپذیری توان، تأخیر و PDP به ترتیب متعلق به 2AMA، NFAx و 1AMA با میزان
به ترتیب 14/27%، 36/19% و 53/28% میباشد. بیشترین اثرات تغییرپذیری توان و PDP متعلق به 2TGA با میزان
به ترتیب 67/56% و 90/47% بوده و بیشترین اثرات تغییرپذیری تأخیر متعلق به 1APFA با 96/24% میباشد.
از دلایل حساسیت بالای مدارهای 2TGA، 1APFA و 2APFA در برابر تغییرپذیری، به طراحی سطح ترانزیستور این تمامجمعکنندهها مربوط است. در طراحی 2TGA از گیتهای انتقال و در طراحی بخشی از 1APFA و 2APFA از ترانزیستور گذر استفاده شده است. گیتهای انتقال و ترانزیستور گذر به تغییرپذیری حساس بوده و از این رو مقادیر در مدارهای فوق نسبت به سایر مدارها بیشتر میباشد. در طراحی بخش اول از خروجی Sum در 1APFA و 2APFA از ترانزیستور گذر استفاده شده که این ترانزیستورها دارای مشکل کاهش/ افزایش سطح ولتاژ بوده و در برابر تغییرپذیری نیز بسیار حساس میباشند. با استفاده از گیت 2Nand در منطق CMOS در بخش دوم خروجی Sum، مشکل کاهش/ افزایش سطح ولتاژ کاملاً برطرف شده و حساسیت به تغییرپذیری نیز تا حدی کاهش مییابد.
در مورد 1APFA و 2APFA دلیل دوم برای بالابودن مقدار ، مقادیر نسبتاً کم برای میانگین توان، تأخیر و PDP میباشد. به عنوان مثال 1APFA و 2AMA از نظر PDP، انحراف معیار تقریباً مشابهی دارند (03/28 و 04/28) اما مقدار میانگین در 1APFA بسیار کمتر از 2AMA است (32/65 در برابر 66/94). این مسئله به دلیل وجود معدود نقاطی در شبیهسازی مونتکارلو میباشد که مقادیر توان، تأخیر یا PDP بسیار کمی نسبت به مقدار میانگین داشته و از این رو موجب افزایش انحراف معیار و در نتیجه افزایش مقدار
میگردد. بر اساس مشاهدات انجامشده روی نتایج حاصل از شبیهسازی مونتکارلو، برخی سناریوهای خاص ورودی دارای ضریب تغییرپذیری بسیار بزرگ میباشند که همین سناریوهای خاص، باعث افزایش میانگین ضریب تغییرپذیری میگردند. زمانی که از این تمامجمعکنندههای تقریبی در کاربردهای واقعی استفاده میشود، به ازای برخی ورودیها احتمال رخداد این سناریوها کمتر بوده
و میزان تغییرپذیری این تمامجمعکنندههای تقریبی به تغییرپذیری سایر تمامجمعکنندههای تقریبی نزدیک میگردد.
4- ارزیابی جمعکننده RCA تقریبی با استفاده
از تمامجمعکنندههای تقریبی
در این بخش قصد داریم از تمامجمعکنندههای تقریبی بررسیشده در بخش قبل، در ساختار جمعکننده RCA استفاده نموده و در این حالت کارایی، خطا و اثرات تغییرپذیری را مورد ارزیابی قرار دهیم. در مقالاتی که به ارائه تمامجمعکننده تقریبی میپردازند، معمولاً از آن در ساختار جمعکننده با انتشار نقلی 1(RCA) استفاده مینمایند و به دلیل ساختار جمعکننده با پیشبینی رقم نقلی 2(CLA)، نمیتوان از تمامجمعکننده تقریبی در این جمعکنندهها استفاده نمود (در CLA معمولاً از گیتهای Xor، And و Or استفاده میشود). همچنین جمعکننده RCA از نظر توان مصرفی بهتر از CLA است ولی از نظر تأخیر CLA بهتر میباشد. در نتیجه با توجه به قابلیت استفاده مستقیم از واحدهای تمامجمعکننده تقریبی در ساختار جمعکننده RCA، در این بخش از جمعکننده RCA برای ارزیابی استفاده خواهد شد. برای این منظور یک جمعکننده RCA با 8 بیت طراحی نموده و در بیتهای اول تا چهارم آن از تمامجمعکنندههای تقریبی استفاده مینماییم. در نتیجه 4 دسته مختلف خواهیم داشت که در دسته اول (1NAB) از تمامجمعکنندههای تقریبی تنها در 1 بیت کمارزش، در دسته دوم (2NAB) از تمامجمعکنندههای تقریبی تنها در 2 بیت کمارزش و در دسته چهارم (4NAB) از تمامجمعکنندههای تقریبی در 4 بیت کمارزش استفاده خواهد شد. تعداد بیتهای تقریبی یک جمعکننده را NAB مینامیم. همچنین برای خانوادههای AMA، AFA و APFA برای طراحی RCA، حالتهای مختلف قرارگیری تمامجمعکنندههای از یک خانواده را در کنار هم مورد ارزیابی قرار داده و به دنبال افزایش دقت در کنار کارایی قابل قبول میباشیم.
4-1 ارائه بهترین جمعکننده تقریبی RCA بر اساس خانوادههای AFA و APFA
در این بخش ما ترکیبهای مختلف قرارگیری تمامجمعکنندههای
از یک خانواده را در کنار هم مورد ارزیابی قرار میدهیم. برای یافتن بهترین ترکیب برای RCA به ازای مقادیر مختلف N و NAB، همه حالات ممکن را در نظر گرفته و مقادیر توان، تأخیر و خطا را محاسبه مینماییم. بر اساس نتایج حاصل از شبیهسازیها، ترکیبهای مختلف از تمامجمعکنندههای خانواده AMA همواره منتج به افزایش خطا نسبت به حالتی میشود که فقط از یکی از تمامجمعکنندههای خانواده AMA (حالت تک) در RCA استفاده میشود. به عنوان مثال برای 4NAB بهترین ترکیب از تمامجمعکنندههای تقریبی خانواده AMA در ساختار RCA تقریبی دارای و
بوده و این در حالی است که 1AMA در ساختار RCA تقریبی دارای
و
میباشد.
برخلاف خانواده AMA، در خانواده AFA و APFA همواره حالاتی یافت میشود که موجب کاهش خطا نسبت به حالت ت