بخشی از مقاله

طراحی و بهبود جمع کننده گزینش رقم نقلی ( CSLA ) با توان و فضای بهینهLow-Power And Area Efficient Carry Select Adder 


چکيده – جمع کننده ها از پرکاربردترين اجزاي ديجيتال در طراحي مدارهاي کامل ديجيتال ميباشند. به واسطه ي رشد سريع صنعت سيار نه تنها نيازمند واحدهاي محاسباتي پرسرعت هستيم ، بلکه نياز به واحدهاي محاسباتي با فضاي کمتر و توان مصرفي پايين وجود دارد. جمع کننده ي گزينش رقم نقلي (CSLA) يکي از پرسرعت ترين جمع کننده هايي است که در سيستم هاي محاسباتي به منظور انجام سريع عمليات محاسبات استفاده ميشود. با اين وجود CSLAهاي معمولي به دليل ساختار دوتايي جمع کننده ي متناوب RCA، فضا و حجم زيادي مصرف ميکنند. در اين مقاله با جايگزين کردن يکي از RCAها با مبدل کد BEC و يا D Latch ميتوان مزاياي سه گانه فضا، زمان و توان مصرفي را بهبود بخشيده و با تحليل نتايج نشان خواهيم داد که ساختارهاي بهبوديافته خيلي کارآمدتر و موثرتر از CSLA معمولي ميباشند.
کليدواژ ها- جمع کننده CSLA، مبدل کد BEC، حجم بهينه ، توان پايين ، D Latch.

١. مقدمه
طراحي سيستم هاي پرسرعت منطقي مسـير داده بـا فضـا و توان مناسب يکي از اساسيترين حوزه هـاي تحقيقـات در زمينـه طراحــي سيســتم VLSI اســت . جمــع کننــده قلــب محاســبات کامپيوتري است و واحد محاسبه اغلب پرکـاربردترين جـزء مـدار محاسباتي است . راه هاي زيادي براي طراحي جمع کننـده وجـود دارد. جمع کننـده ي متنـاوب رقـم نقلـي RCA (Ripple Carry Adder) داراي متراکم ترين طراحـي اسـت ، امـا زمـان محاسـبات طـولاني دارد. چنانچـه يـک RCA،n بيـت داشـته باشـد، زمـان محاسبه هم به صورت خطي تابعي از n ميشـود. بنـابراين وقتـي که عدد n خيلي بزرگ باشد، RCA نسبت به ديگر جمع کننده ها زمان طولانيتر لازم دارد. جمع کننده رقـم نقلـي CLA نتـايج را خيلي سريع ارائه ميدهد، اما حجم و فضاي بالايي مصـرف مـي کند. چنانچه يک جمع کننده n بيتي داشته باشـيم ، CLA بـراي 4≥n سريع عمل ميکند؛ امـا بـراي مقـادير بيشـتر از n افـزايش زمان محاسباتياش بيش از ديگر جمـع کننـده هاسـت . بنـابراين براي ارقام بـالا، CLA در نتيجـه ي پهنـاي ورودي زيـاد و تعـداد بالاي گيت هاي منطقي استفاده شده ، زمـان بيشـتري نسـبت بـه ساير جمع کننده ها مصرف ميکنـد. CSA بـين فضـاي کـم ، امـا زمان زياد RCA و حجـم بـالا و زمـان CLA تعـادل ايجـاد مـي- کند.[١]
در جمع کننده ي ديجيتال ، سرعت عمل جمـع ، محـدود بـه زمان لازم براي پخش شـدن رقـم نقلـي در جمـع کننـده اسـت .
حاصل جمع هر بيت ابتدايي جمع کننده به ترتيب توليد شـده و تنها زماني که بيت قبلي جمع شده باشد و يک رقـم نقلـي بـراي مرحله بعدي توليد شده باشد، عمليـات روي بيـت بعـدي انجـام ميشود. CSLA در بسياري از سيستم هاي محاسباتي بـه منظـور کاهش مشکل تأخير در انتشار رقم نقلي به صورت مستقل ، رقم - هاي نقلي چندگانه اي را ايجاد ميکند و سپس يک رقـم را بـراي ايجاد جمع کل گزينش ميکند.[٢]
جمع کننده ي گـزينش رقـم نقلـي (CSLA) در اسـتفاده از حجم و فضا کارامد نيست ، چرا که از جفت هاي چندگانه ي اضافه گر متناوب رقم نقلي RCA به منظور بدست آوردن يک مجمـوع جزئـي و ناتمـام از ارقـام بـا لحـاظ کـردن ٠ = Cin و ١ = Cin استفاده ميکند و سپس يک مجموع نهايي و رقـم گـزينش شـده توسط مالتيپلکسر (mux) ارائه ميدهد.[٣]
CSLA به جاي استفاده از جمع کننده ي متناوب رقم نقلـي RCA، با استفاده از ساختارهاي بهتر و کارآمدتر، ميتواند مصرف
فضا و انرژي را کاهش دهد. هدف اصـلي ايـن مقالـه ارائـه دو تـا سـاختار جديــد بــراي CLSA معمــولي اســت کـه يکــي از ايــن سـاختارها اسـتفاده از BEC بـه جـاي يکـي از RCAهـا اسـت و ساختار ديگر استفاده از D Leatch به جاي يکي از RCAها است و با طراحي و تحليل نتـايج پـي خـواهيم بـرد کـه ، CSLAهـاي بهبوديافته با استفاده از اين دو سـاختار از روش معمـول CSLA، بسيار مناسب تر و کارآمدتر هستند و در مصرف توان و فضا بهبود چشمگيري از خود نشان ميدهند.
در ادامه هر کدام از بخش هـاي موجـود در مقالـه را معرفـي مي کنيم . در بخش ٢ بلاکهاي جمع کننـده ي CSLA معمـولي از نظر مساحت و تأخير مورد بررسي قرار ميگيرد. در بخـش ٣ بـه معرفي مبدل کد BEC خـواهيم پرداخـت و سـپس در بخـش ٤ CSLA معمـولي را بـه طـور مفصـل مـورد بـازبيني قـرار داده و ساختار آن مورد بررسي قرار ميگيرد. در بخش ٥ بـا اسـتفاده از
BEC يک روش بهينه در طراحي جمع کننـده ي CSLA معرفـي خواهيم کرد. در بخش ٦ روش ديگري را معرفي ميکنيم که اين بار توسط D-Latch، بهينه سازي در سطح معماري CSLA انجام خواهد شد. و در بخش ٧ به تحليل نتايج و مقايسه معماري هـاي مختلف بيان شده پرداخته ، و نقاط قوت و ضـعف هـر کـدام بيـان ميشود. نهايتاً در بخش ٨ يک نتيجه گيري از مفـاهيم کلـي ايـن مقاله بيان خواهد شد.
٢. ارياب يت أخ ير وم س اح ت در بلاک ه ايم ع ج کن ن ده CSLA م ع م يل ي
گيت هاي AND،OR و Inverter (معکوس کننـده ) اجرايـي در يک گيت XOR در شکل ١ نشان داده شده است . گيـت هـاي بين خطهاي نقطه چـين نشـان دهنـده ي عمليـات هـاي مـوازي و نمايش عددي تأخير ايجادشده توسط هر گيت ميباشد. در اينجا تأخير زماني هـر گيـت AND،OR و Inverter را بـراي سـادگي برابر ١ واحد فرض کرده ايم . همچنين فضا و مساحت هر گيت هم برابر ١ واحد فرض شده است . تعداد گيت ها را در درازترين مسير بلاک منطقي، که شامل تأخير هم ميشـود، بدسـت مـيآوريـم .
محاسبه ي مساحت با شمارش تعداد کل گيت هـاي AND( AOI، OR و Inverte) مورد نياز براي هر Logical Block بدسـت مـي- آيد. بر اساس اين روش و ديدگاه ، به طور مشابه بلاکهاي CSLA ADDER شــــامل Mux ٢:١، (HA)Half Adder،FA (FullAdder) محاسبه ميشوند و در جدول ١ ليست شده اند.[٢]

شکل ١: تأخير و مساحت ارزيابي شده در يک گيت xor
جدول ١: تأخير و مساحت براي هر کدام بلاکهاي جمع کننده CSLA

٣. معرفي مبدل کد BEC
BEC مداري است که به اعداد ورودي "١" اضافه ميکند.
يک مدار BEC ٤ بيتي و جدول نحوه عملکرد BEC به ترتيب در شکل ٢ و جدول ٢ نشان داده شده است .

شکل ٢: BEC ٤بيتي
همانطور که در شکل 3 مشاهده میشود عمل اضافه سازی با استفاده از BEC و MUX حاصل میشود . به این صورت که Mux 8:4 یکی از ورودی هایش را از B0 B1 B2 B3 دریافت کرده و ورودی دیگرش از خروجی مدار BEC دریافت میکند . این کار دو حالت ممکن موازی دارد که با کنترل سیگنال ورودي Cin به Mux انجام ميشود. هنگامي که 0=Cin است خروجي Mux، B0 B1 B2 B3 است و هنگامي که 1=Cin است خروجي Mux، همان خروجي BEC است .[٢]


شکل ٣: BEC ٤ بيتي با Mux

جدول ٢: نحوه عملکرد BEC (همان ١-Excess)

عبارات دودويي BEC ٤بيتي به صورت زير است :

٤. CSLA
CSLA يکي از پرسرعت ترين جمع کننده هايي است کـه در پردازشگرهاي داده پردازي براي اجراي سـريع عمليـات محاسـبه استفاده ميشود. CSLA که به چندين بخش تقسيم شده و در هر گروه به صورت موازي، دو اضافه سازي صورت ميگيـرد. بـر ايـن اساس دو نسخه از جمع کننده ي متنـاوب رقـم نقلـي در مرحلـه گزينش رقم ، به صورت واحد در ارزيابي رقم نقلي عمل ميکننـد.
يکي از RCAها زنجيره ي رقم را بـا فـرض رقـم ورودي ٠=Cin و ديگري با فرض ١=Cin ارزيابي ميکنند. هنگـامي کـه در نهايـت شاخص هاي رقم نقلي محاسبه شد، جمع صحيح و شـاخص هـاي رقم خروجي به سادگي توسط مالتي پلکسر (mux) گزينش مـي- شوند.[١] واحـد اضـافه گـر يـک RCA ٤ بيتـي اسـت . شـکل ٤ ساختار يک CSLA معمـولي ١٦ بيتـي را نشـان مـيدهـد. ايـن ساختار شامل پنج گروه از اندازه هاي مختلف RCA اسـت . مقـدار تأخير (delay) و مساحت (area) در هر گروه در شکل ٥ نشـان داده شده است . در هر کدام از گروه ها مقدار تأخير بـا يـک عـدد مشخص شده است . به طور مثال در گروه ٢، Sum٢ نياز به تأخير ١٠ گيت دارد. گام هاي اصلي محاسبه تأخير و مساحت در ادامـه آورده شده است .


در گروه ٢[ شکل ٥ (a) را ببينيد.] دو سري از RCA هـاي ٢ بيتي وجود دارد. بر اساس مشاهدات مقـدار تـأخير در جـدول ١، زمان ورود قسـمت زودتـر از ٦:٣ Mux و و بعـد از اسـت . بنـابراين Sum3 برابر مجموع زمانهـاي S٣ و اسـت و Sum2 از جمع زمان هاي C1 و Mux بدست ميآيد.
با توجه به جدول ١، و اينکه در گـروه ٢ يکـي از RCAهـا از دو تا FA و يک Mux تشکيل شـده اسـت و RCA ديگـر از يـک FA و يک HA و يک Mux تشکيل شده است ، تعداد کل گيتهاي شمارش شده در گروه ٢ به صورت زير تعيين ميشود:

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید