MAHDIAR
30th May 2010, 02:47 PM
فناوری FB-DIMM از سال 2004 رقابت خود با Registered-DIMM را آغاز کرد. این فناوری در مقایسه با دیگر فناوری های آشنای DIMM ، برتری های بسیاری دارد. FB-DIMM در اصل کوتاه شده Fully Buffered DIMM است. فناوری FB-DIMM بر پایه گذرگاه های سریال ساخته شده. این روش در کامپیوترهای سرویس دهنده ما را از باز بودن دست مان در افزایش میزان حافظه با وجود بالا رفتن بسامدها، مطمئن می کند. برای ايجاد بیشترین يكپارچگي داده ها در حافظه اصلی کامپیوترهای سرویس دهنده، وجود DIMM های registered ضروری است. ماجول های DDR2-800 امروزه بسیار رایجند. البته در کنار آن ها از DDR2-667 و DDR2-566 نیز استفاده می شود. اما در DDR2-800 تقریباً به مرز پایانی سرعت ماجول های registered رسیده ایم.
برای پشت سر گذاشتن این محدودیت، اینتل با همکار JEDEC در سال 2003 استاندارد FB-DIMM را پایه گذاری کرد که در کنار برتری های بسیاری که دارد شامل برخی کاستی ها نیز می شود. ما در این مقاله درباره جزئیات فنی فناوری FB-DIMM به طور مفصل صحبت می کنیم و شما را از وضعیت کنونی و آینده این فناوری آگاه خواهیم کرد.
معماری FB-DIMM
FB-DIMM از تراشه های کنونی DDR و DDR3 پشتیبانی می کند. هر ماجول گذشته از تراشه های حافظه یک بخش ویژه با نام AMB یا Advanced Memory Buffer نیز دارد. این تراشه مانند فناوری PCI-Express با 24 زوج پایه تفاضلی به کنترل کننده حافظه متصل می شود. اطلاعات کنترلی و داده ها از طریق 10 مسیر از کنترل کننده حافظه به ماجول های حافظه می روند و روی 14 مسیر باقیمانده، از ماجول ها به سوی کنترل کننده حافظه باز می گردند. فناوری FB-DIMM حداکثر در هر کانال حافظه هشت ماجول را می پذیرد.
روی هر ماجول حافظه FB-DIMM می توان تا 36 تراشه RAM نصب کرد. معمولاً روی هر دو طرف یک ماجول DIMM با احتساب Buffer-IC روی هم رفته 18 تراشه حافظه نصب می شود که می توان در صورت استفاده از حالت Huckpack، 18 تراشه دیگر هم به ماجول اضافه کرد. به این ترتیب شمار تراشه های متصل به هر کانال حافظه به 288 می رسد.
دریافت اطلاعات SPD و همچنین دسترسی به ثبات بافر AMBها از طریق یک SMBus انجام می گیرد. کنترل کننده حافظه این اطلاعات را برای بهینه سازی انتقال داده ها به کار می برد. هماهنگ سازی میان کنترل کننده حافظه و تک تکِ ماجول ها را یک Clock-Generator مرکزی به عهده دارد. با این کار زمانبندی انتقال داده ها میان همه بخش ها تنظیم می گردد.
جزئیات فنی حافظه های FB-DIMM
بخش اصلی و مرکزی یک ماجول FB-DIMM ، AMB است. AMB از جریان داده های سریال ، فرمان ها و عملیات نوشتن(Write) را استخراج و رمزگشایی کرده و آن ها را از طریق گذرگاه داده به تراشه های حافظه می رساند. AMB به طور وارون می تواند داده های موازی DRAM به جریان سریال تبدیل کند.
برای اطمینان از درستی زمانبندی عملیات خواندن و نوشتن در DIMM و کنترل کننده حافظه، از یک مدار کنترلی و تپش های ساعت برای هماهنگی استفاده می شود. همچنین یک مدار Passthrough به فرمان های خواندن و نوشتن که به ماجول خاصی مربوط نمی شوند اجازه عبور می دهد تا یک ماجول دیگر به آن ها رسیدگی کند. استفاده از روش Passthrough امکان کنترل جریان داده را برای هر یک از ماجول های DIMM فراهم می کند. افزون بر این، این فناوری برای فرمان های Read یک مدار Merging دارد که داده های خواندنی هر یک از DIMM ها را به موقع و به ترتیب برای کنترل کننده حافظه آماده می کند.
به دلیل ماهیت سریالی جریان داده ها، فناوری FB-DIMM می تواند روی هر کانال عملیات خواندن و نوشتن را به طور همزمان و موازی روی دو ماجول انجام بدهد. به این ترتیب ، پهنای باند در مقایسه با Registered-DIMMهای کنونی دو برابر می شود.
اصول پروتکل FB-DIMM
مسیر اصلی داده ها در فناوری FB-DIMM یک گذرگاه سریال است که میان کنترل کننده حافظه و بافر FB-DIMM کشیده شده است. در این جريان، همه فرمان های DRAM از کنترل کننده حافظه با یک مالتی پلکسر شش به یک، به بافر DIMM فرستاده می شوند. سپس در آن جا یک مدار الکترونیکی دیگر داده ها را دوباره به حالت قبلی تبدیل کرده و اطلاعات بدست آمده را به تک تک تراشه ها می فرستند. در فناوری FB-DIMM برای این تبادل داده از پروتکل RAS/CAS استفاده شده. با این کار از وجود یک فرآیند کنترل شده و قابل تکرار در هر لحظه میان کنترل کننده و حافظه اطمینان حاصل می کنیم. همزمان، پروتکل FB-DIMM با بهینه سازی مراجعه ها به ماجول ها، بازدهی حافظه را به طور چشمگیری بالاتر می برد.
در پروتکل FB-DIMM دو گونه Frame برای داده ها تعریف شده. یکی Frame های فرمان که از راه 10 بیتی Southbound به FB-DIMM می رسند و دیگری Frame های پاسخ که از راه 14 بیتی Northbound به کنترل کننده حافظه می رسند.
Frame های فرمان (Command Frames) می تواند تا سه فرمان در خود داشته باشند. این فرمان ها در هر تپش میان FB-DIMM ها توزیع می شوند. این Frame ها می توانند همچنين ترکیبی از یک فرمان و 9 بایت داده داشته باشند.
Frame های پاسخ، داده های خوانده شده یا اطلاعات وضعیت را در خود دارند. FB-DIMM این Frame ها را تنها در پاسخ به درخواست کنترل کننده حافظه می فرستند. درستی محتویات Frameهای فرمان و پاسخ با استفاده از سر جمع CRC بررسی می شود.
دیگر کارکردهای امنیتی
میزان SDC-FIT یا Silent Data Corruption Failure in Time یکی از معیارهای ارزیابی خطاهای سیستم است. SDCها خطاهایی هستند که کامپیوتر ایجاد می کند اما نمی تواند آن ها را تشخیص بدهد. در بخش کامپیوترهای سرویس دهنده ، اینتل یک خطا در صد سال را مجاز می داند. اما درصد روی دادن چنین خطایی در حافظه بسیار کمتر است. معماری FB-DIMM خطاهایی 1000 برابر کمتر از معیار اینتل را وعده می دهد.
فناوری FB-DIMM برای دستیابی به چنین امنیتی در بخش کامپیوترهای سرویس دهنده ، توانایی های امنیتی ویژه ای دارد. یکی از این توانایی ها گذشته از ECC ، CRC است که افزون بر داده ها، Frame های حامل فرمان ها را نیز زیر نظر دارد.
عملکرد Transient-Bit-Error داده ها را درست و بی کم و کاست به ماجول های حافظه می رساند. این عملکرد تک تک خطاهای بیتی را تشخیص داده و داده های سالم را دوباره می فرستند. از این گذشته وجود یک مدار Path-through-Path امنیت داده ها را بیشتر می کند.
FB-DIMM می تواند به کمک Bit Lane Fail-Over correction یک مسیر با کارکرد درست را به جای مسیری که دچار خطا شده بگذارد. برای این منظور تا زمان برطرف شدن اشكال از مسیر اضافه CRC به جای مسیر خراب استفاده می شود. به این ترتیب اگر چه تراشه های متاثر، دیگر عملکرد CRC نخواهند داشت اما می توانند همچنان به کار خود ادامه بدهند. اشکال این ماجول نیز با تعویض آن در زمان مناسب برطرف خواهد شد. یک Error-Register دیگر در AMB ایمنی را باز هم بالاتر می برد. این ثبات ، سلول هایی از حافظه که بدرستی کار نمی کنند را ایزوله می کند. اگر شمار خطاها زیاد باشد یک ماجول نرم افزاری، اعلام خطر می کند.
عملکرد Hot-Add هم آخرین موردی است که معرفی می کنیم. این عملکرد به ما اجازه می دهد در حالیکه سیستم در حال کار است به آن، ماجول های حافظه اضافه کنیم.
اشکال زدایی و آزمایش FB-DIMM
با ورود فناوری FB-DIMM شیوه های آزمایش و بررسی درستی ماجول های حافظه تغییر می کند. از یک سو AMB که وسیله ای برای پایش پیوسته حافظه است و به طور مستقیم به تراشه های حافظه متصل است این کار را دشوار می کند و از سوی دیگر شمار زیاد مسیرهای داده با فاصله زمانی زیاد بر دشواری ها می افزاید. همچنین به دلیل بالا بودن سرعت حافظه استفاده از روش های کم هزینه پاسخگو نیست.
همه اینها باعث شده تا طراحان برای FB-DIMM یک DFT یا Design-for-Test بسازند. ارزشدهی آغازین (initializing) حالت DFT از طریق گذرگاه داده یا SMBus انجام می گیرد. فناوری DFT در FB-DIMM سه حالت آزمایشی اصلی دارد. IBIST یا Intercommect Build in Self Test می تواند يكپارچگي داده های تک تک AMBها را بررسی کند. در این شیوه از یک کنترل کننده IBIST استفاده می شود که از یک On-Die-Pattern-Generator و یک Checker ساخته می شود. Pattern-Generator الگوهایی از پیش تعریف شده یا قابل تغییر با طول های متفاوت ایجاد می کند و Checker بر پایه یک عدد معیار درستی آن ها را بررسی می کند. MemBIST یا Memory Build in Self Test یک موتور آزمایش DRAM است که با بیشترین سرعت تراشه های حافظه را آزمایش می کند. این موتور برای این کار از عملیات استاندارد مانند نوشتن، خواندن ، Scan یا Dynamic Inversion با داده های ثابت یا قابل تعریف استفاده می کند.
MemBIST به پهنای باند پردازنده یا سری تراشه وابسته نیست و خطاهای سلول های FB-DIMM را یافته و آدرس سلول ها را مشخص می کند و استفاده از MemBIST پس از سر هم کردن کامپیوتر بسیار سودمند است تا در همان آغاز کار خطاهای احتمالی حافظه یافته شود. فناوری FB-DIMM از روش های دیگری نیز برای بررسی درسی کارکرد خود استفاده می کند که در این مقاله امکان پرداختن به آن ها را نداریم.
پارامترهای الکتریکی
معماری FB-DIMM بر پایه ارتباط های نقطه به نقطه تفاضلي بنا شده. برای جلوگیری از بازتاب های مزاحم در تک تکِ سیم ها در هر اتصال یک مقاومت 50 اهمی در نظر گرفته شده. از این گذشته، برای هر دو رشته سیم یک پایه تغذیه الکتریکی تعبیه شده. بالاترین اختلاف پتانسیل های بیش از ممکن روی مسیرها طبق تعریف استاندارد ، 800 میلی ولت است. یک مدار ویژه در سمت فرستند، اختلاف پتانسیل از اندازه را کاهش می دهد. با این کار از اثرات پارازیتی سیم ها روی یکدیگر کم شده و مدارها در برابر پارازیت های بیرونی مانند مدارهای الکتریکی و مغناطیسی مقاومت بیشتری به دست می آورند. بر پایه جزئيات اعلام شده از سوی اینتل ، بیشترین آهنگ انتقال داده برای هر سیم، 8/4 گیگابیت بر ثانیه است. به این ترتيب پهنای باند یک کنترل کننده FB-DIMM که شش کانال دارد و همه کانال های آن با ماجول های DDR2-800 پر شده اند به 40 گیگابایت بر ثانیه می رسد. این ميزان دو برابر پهنای باند حافظه های کنونی Dual-Channel با حافظه های DDR2-800 است.
یک نوسان ساز مرکزی (Clock Generator) از طریق مسیرهای ویژه ای تپش های لازم را برای ماجول های FB-DIMM ایجاد می کند که تپش های آن حدود یک چهارم بسامد DDR2 است و حداکثر اختلاف پتانسیل آن 700 میلی ولت است. نوسان ساز مرجع، کارکردی سراسری دارد. این به آن معنی است که بسامد روی همه مسیرهای انتقال تپش برابر است اما طول فازها نامشخص. اگر چه روش های پیچیده هماهنگ سازی بسامدها حذف شده اند اما فناوري FB-DIMM می تواند از روی بسامد و جریان داده ها، داده های اصلی را دوباره بسازد.
ماجول FB-DIMM برای تغذیه به سه منبع با اختلاف پتانسیل های متفاوت نیاز دارد که عبارتند از 8/1 ولتی برای تراشه های DDR2-DRAM ، 9/0 ولتی برای termination مسیرهای کنترلی و آدرس و 5/1 ولتی برای AMB. اما ماجول های DDR2 استاندارد تنها به یک تغذیه 8/1 ولتی نیاز دارند.
توان مصرفی FB-DIMM در مقایسه با Registered-DDR2-DIMM به دلیل وجود تراشه AMB ، 5 وات بیشت. این نکته دو اشکال در پی دارد. یکی از آن ها مصرف انرژی زیاد در کامپیوترهای سرویس دهنده و در نتیجه بالارفتن گرما و نیاز به خنک کننده های قوی تر است. یک کامپیوتر با 16 شکاف نصب حافظه با حافظه های FB-DIMM در مقایسه با ماجول های DDR2 ، 80 وات انرژی بیشتر مصرف می کند. طراحان کامپیوترهای سرویس دهنده باید نیاز به تهویه بهتر را در نظر داشته باشند.
مشخصات مکانیکی
در نگاه نخست شاید میان یک ماجول FB-DIMM که در هر دو روی آن تراشه نصب شده با یک ماجول registered تفاوتی نبینیم. اندازه ها و شکل اين دو حافظه مانند هم است. حتی شمار پایه ها هم یکسان و 240 عدد است. با نگاه دقیقتر در می یابیم در یک طرف ماجول 10 تراشه و در طرف دیگر 8 تراشه به همراه IC کنترلی نصب شده. تراشه های عملکرد registered و بافر ساعت PLL حذف شده اند اما SPD-EEPROM همچنان وجود دارد. در جدول زیر تفاوت های مکانیکی میان Registered-DIMM و FB-DIMM را می بینید:
FB-DIMM
Registered-DIMM
اندازه ها(میلی متر)
5/30×5/133
5/30×5/133
شمار پایه ها
240
240
واحد رمزگذار
8 میلی متر به سمت راست از وسط ماجول
4 میلی متر به سمت راست از وسط ماجول
شمار تراشه ها
36/18/9
36/18/9
دیگر بخش ها
یک AMB ، یک SPD-EEPROM
1/2 یا 4 ثبات، یک بافر ساعت PLL یک SPD-EEPROM
با دقت بیشتر می بینیم که در حافظه FB-DIMM از 240 پایه، تنها به 69 عدد آن ها (مطابق جدول زیر) سیم کشی شده و از بقیه آن ها استفاده نشده.
شمار پایه ها
داده های ورودی به DIMM
20(10 زوج)
داده های خروجی از DIMM
28(14 زوج)
مجموع پایه های داده ای
48
تغذیه الکتریکی
6
زمین
12
بسامد، کالیبراسیون، PLL و Test
3
جمع
69
به عنوان راه حلی برای مشکل گرما، طراحان در تراشه MB یک کنترل کننده پیش بینی کرده اند که 4/2 و 4/3 وات انرژی مصرف می کند و گرمای ایجاد شده را به بیرون می راند. این مجموعه یک صفحه خنک کننده که روی بر ماجول نصب می شود نیز دارد. طراحان برای ماجول های Stacked-BGA و Dual-Die-x4 خنک کننده های پیچیده تری نیز طراحی کرده اند.
ارتباط ماجول ها و routing
فناوری FB-DIMM روی هر کانال می تواند حداکثر 288 تراشه DDR2 را آدرس دهی کند. این در حالیست که فناوری کنونی Registered-DIMM تنها 72 تراشه را آدرس دهی می کند. با احتساب هشت تراشه برای داده ها و یک تراشه ECC ، بیشترین فضای قابل آدرس دهی در کنترل کننده های کنونی DDR2 ، هشت گیگابایت می شود. این در حالیست که بیشترین فضای قابل آدرس دهی در FB-DIMM ، 192 گیگابایت است.
برتری بعدی معماری FB-DIMM ، مسیریابی ساده آن به لطف کم بودن شمار پایه ها در روش انتقال تفاضلی است. در DDR2های registered برای هر کانال دست کم دو لایه مسیریابی و یک لایه اضافی برای تغذیه الکتریکی لازم است . در حالیکه در طراحی FB-DIMM در مجموع دو لايه کافی است. به این ترتیب روی یک برد شش لایه ای امکان نصب چهار کانال FB-DIMM در برابر دو کانال DDR2 وجود دارد.
در انتقال داده ها روی FB-DIMM در مقایسه با معماری کنونی گذرگاه های موازی می توان از روش های پیچیده مسیریابی صرف نظر کرد. دلیل آن هم این است که فناوری FB-DIMM با مسیرهای سریال و asynchron کار می کند. این کار باعث می شود که امکان مسیریابی با بهینه ترین راه میان کنترل کننده حافظه و ماجول های DIMM فراهم شود.
توپولوژی FB-DIMM
اما اصلی ترین برتری فناوری FB-DIMM در انتقال سریالی داده ها بر پایه زوج سیم های تفاضلی است. این نکته در توپولوژی گذرگاه FB-DIMM تاثیری بنیادین دارد. برخلاف registered-DIMM که کنترل کننده حافظه ، داده ها را میان ماجول ها توزیع می کند، در FB-DIMM این کار به عهده AMB است. از این گذشته ، جریان داده ها دیگر موازی و میان همه ماجول ها نیست بلکه بر پایه ارتباط های نقطه به نقطه و از یک ماجول به ماجول دیگر است. با اینکار مشکل امپدانس برطرف شده و روی کیفیت سیگنال های گذرگاه تاثیری مثبت دارد. در تعاریف کنونی، طول مسیر رسیدن به کنترل کننده حافظه می تواند از 1/3 تا 5/18 سانتی متر باشد. به این ترتيب استفاده از کارت های Riser در کامپیوترهای سرویس دهنده برای استفاده از بیشترین حافظه ممکن، فراهم می گردد. برای این کار شكاف PCI-Express لازم است.
وضعیت کنونی و آینده فناوری FB-DIMM
در کامیابی فناوری FB-DIMM ، شرکت اینتل نقشی بسیار تعیین کننده و اساسی دارد. این شرکت از سال 2003 در همکاری خود با JEDEC تلاش می کند تا بازار فناوری FB-DIMM را گسترش بدهد.
از همین رو، تاکنون اینتل تنها شرکتی بوده که در کامپیوترهای سرویس دهنده اش از فناوری FB-DIMM پشتیبانی کرده. شایان گفتن است که بستر Caneland تنها با حافظه های FB-DIMM کار می کند.
این بستر چهار کانال FB-DIMM دارد که روی هر کدام تا هشت ماجول حافظه نصب می شود. البته اینتل احتمالاً با گسترش پردازنده های Nehalem کم کم فناوری FB-DIMM را کنار خواهد گذاشت. پردازنده های Nehalem EP در سیستم های دو پردازنده ای به کار می روند و هرکدام تا سه کنترل کننده DDR3 یکپارچه با پردازنده دارند. اما اینتل فناوری FB-DIMM را همچنان برای پردازنده های ایتانیوم به کار خواهد برد. ایتانیوم های چهار هسته ای با نام Tukwila چهار کنترل کننده حافظه دارند.
شرکت ای ام دی در هیچ یک از بسترهای کنونی خود برای کامپیوترهای سرویس دهنده FB-DIMM پشتیبانی نمی کند و به نظر نمی رسد در آینده نزدیک نیز چنین برنامه ای برای این کار داشته باشد.
نتیجه
طراحی FB-DIMM هم مانند PCI-Express بر پایه روش انتقال سریال و تفاضلی است. این فناوری از 24 زوج سیم تفاضلی بهره می برد. این روش، بازدهی بالا، ایمنی زیاد و مقیاس پذیری را فراهم می کند. برخلاف فناوری های کنونی حافظه ها می توان گنجایش FB-DIMM را تا 24 برابر و پهنای باند را تا 4 برابر افزایش داد. یک برتری دیگر معماری FB-DIMM، کم بودن فضای لازم برای Routing است و به جای 240 پایه، تنها 70 پایه برای این کار کافی است. از این گذشته، سازندگان بردهای اصلی می توانند روی یک برد شش لایه، چهار کانال حافظه FB-DIMM را تعبیه کنند. این در حالیست که در یک برد شش لایه تنها دو کانال حافظه DDR2 جا می گیرد.
اینتل و دیگر طراحان انتظار داشتند که فناوری FB-DIMM با یک انقلاب در بخش کامپیوترهای سرویس دهنده بسرعت و با قدرت جای حافظه های registered-DIMM را بگیرد. اما گویا واقعیت چیز دیگری است. FB-DIMM به دلیل هزینه های بالاتر و مصرف انرژی بیشتر از سوی همه سازندگان کامپیوترهای سرویس دهنده پذیرفته نشده. برای نمونه، ای ام دی تنها روی حافظه های DDR2 و DDR3 برنامه ریزی کرده. البته حتی خود اینتل هم کمی از پشتیبانی خود از FB-DIMM کاسته و برای پردازنده های Nehalem در کامپیوترهای سرویس دهنده، استفاده از فناوری DDR3 موازی را در نظر دارد.
برای پشت سر گذاشتن این محدودیت، اینتل با همکار JEDEC در سال 2003 استاندارد FB-DIMM را پایه گذاری کرد که در کنار برتری های بسیاری که دارد شامل برخی کاستی ها نیز می شود. ما در این مقاله درباره جزئیات فنی فناوری FB-DIMM به طور مفصل صحبت می کنیم و شما را از وضعیت کنونی و آینده این فناوری آگاه خواهیم کرد.
معماری FB-DIMM
FB-DIMM از تراشه های کنونی DDR و DDR3 پشتیبانی می کند. هر ماجول گذشته از تراشه های حافظه یک بخش ویژه با نام AMB یا Advanced Memory Buffer نیز دارد. این تراشه مانند فناوری PCI-Express با 24 زوج پایه تفاضلی به کنترل کننده حافظه متصل می شود. اطلاعات کنترلی و داده ها از طریق 10 مسیر از کنترل کننده حافظه به ماجول های حافظه می روند و روی 14 مسیر باقیمانده، از ماجول ها به سوی کنترل کننده حافظه باز می گردند. فناوری FB-DIMM حداکثر در هر کانال حافظه هشت ماجول را می پذیرد.
روی هر ماجول حافظه FB-DIMM می توان تا 36 تراشه RAM نصب کرد. معمولاً روی هر دو طرف یک ماجول DIMM با احتساب Buffer-IC روی هم رفته 18 تراشه حافظه نصب می شود که می توان در صورت استفاده از حالت Huckpack، 18 تراشه دیگر هم به ماجول اضافه کرد. به این ترتیب شمار تراشه های متصل به هر کانال حافظه به 288 می رسد.
دریافت اطلاعات SPD و همچنین دسترسی به ثبات بافر AMBها از طریق یک SMBus انجام می گیرد. کنترل کننده حافظه این اطلاعات را برای بهینه سازی انتقال داده ها به کار می برد. هماهنگ سازی میان کنترل کننده حافظه و تک تکِ ماجول ها را یک Clock-Generator مرکزی به عهده دارد. با این کار زمانبندی انتقال داده ها میان همه بخش ها تنظیم می گردد.
جزئیات فنی حافظه های FB-DIMM
بخش اصلی و مرکزی یک ماجول FB-DIMM ، AMB است. AMB از جریان داده های سریال ، فرمان ها و عملیات نوشتن(Write) را استخراج و رمزگشایی کرده و آن ها را از طریق گذرگاه داده به تراشه های حافظه می رساند. AMB به طور وارون می تواند داده های موازی DRAM به جریان سریال تبدیل کند.
برای اطمینان از درستی زمانبندی عملیات خواندن و نوشتن در DIMM و کنترل کننده حافظه، از یک مدار کنترلی و تپش های ساعت برای هماهنگی استفاده می شود. همچنین یک مدار Passthrough به فرمان های خواندن و نوشتن که به ماجول خاصی مربوط نمی شوند اجازه عبور می دهد تا یک ماجول دیگر به آن ها رسیدگی کند. استفاده از روش Passthrough امکان کنترل جریان داده را برای هر یک از ماجول های DIMM فراهم می کند. افزون بر این، این فناوری برای فرمان های Read یک مدار Merging دارد که داده های خواندنی هر یک از DIMM ها را به موقع و به ترتیب برای کنترل کننده حافظه آماده می کند.
به دلیل ماهیت سریالی جریان داده ها، فناوری FB-DIMM می تواند روی هر کانال عملیات خواندن و نوشتن را به طور همزمان و موازی روی دو ماجول انجام بدهد. به این ترتیب ، پهنای باند در مقایسه با Registered-DIMMهای کنونی دو برابر می شود.
اصول پروتکل FB-DIMM
مسیر اصلی داده ها در فناوری FB-DIMM یک گذرگاه سریال است که میان کنترل کننده حافظه و بافر FB-DIMM کشیده شده است. در این جريان، همه فرمان های DRAM از کنترل کننده حافظه با یک مالتی پلکسر شش به یک، به بافر DIMM فرستاده می شوند. سپس در آن جا یک مدار الکترونیکی دیگر داده ها را دوباره به حالت قبلی تبدیل کرده و اطلاعات بدست آمده را به تک تک تراشه ها می فرستند. در فناوری FB-DIMM برای این تبادل داده از پروتکل RAS/CAS استفاده شده. با این کار از وجود یک فرآیند کنترل شده و قابل تکرار در هر لحظه میان کنترل کننده و حافظه اطمینان حاصل می کنیم. همزمان، پروتکل FB-DIMM با بهینه سازی مراجعه ها به ماجول ها، بازدهی حافظه را به طور چشمگیری بالاتر می برد.
در پروتکل FB-DIMM دو گونه Frame برای داده ها تعریف شده. یکی Frame های فرمان که از راه 10 بیتی Southbound به FB-DIMM می رسند و دیگری Frame های پاسخ که از راه 14 بیتی Northbound به کنترل کننده حافظه می رسند.
Frame های فرمان (Command Frames) می تواند تا سه فرمان در خود داشته باشند. این فرمان ها در هر تپش میان FB-DIMM ها توزیع می شوند. این Frame ها می توانند همچنين ترکیبی از یک فرمان و 9 بایت داده داشته باشند.
Frame های پاسخ، داده های خوانده شده یا اطلاعات وضعیت را در خود دارند. FB-DIMM این Frame ها را تنها در پاسخ به درخواست کنترل کننده حافظه می فرستند. درستی محتویات Frameهای فرمان و پاسخ با استفاده از سر جمع CRC بررسی می شود.
دیگر کارکردهای امنیتی
میزان SDC-FIT یا Silent Data Corruption Failure in Time یکی از معیارهای ارزیابی خطاهای سیستم است. SDCها خطاهایی هستند که کامپیوتر ایجاد می کند اما نمی تواند آن ها را تشخیص بدهد. در بخش کامپیوترهای سرویس دهنده ، اینتل یک خطا در صد سال را مجاز می داند. اما درصد روی دادن چنین خطایی در حافظه بسیار کمتر است. معماری FB-DIMM خطاهایی 1000 برابر کمتر از معیار اینتل را وعده می دهد.
فناوری FB-DIMM برای دستیابی به چنین امنیتی در بخش کامپیوترهای سرویس دهنده ، توانایی های امنیتی ویژه ای دارد. یکی از این توانایی ها گذشته از ECC ، CRC است که افزون بر داده ها، Frame های حامل فرمان ها را نیز زیر نظر دارد.
عملکرد Transient-Bit-Error داده ها را درست و بی کم و کاست به ماجول های حافظه می رساند. این عملکرد تک تک خطاهای بیتی را تشخیص داده و داده های سالم را دوباره می فرستند. از این گذشته وجود یک مدار Path-through-Path امنیت داده ها را بیشتر می کند.
FB-DIMM می تواند به کمک Bit Lane Fail-Over correction یک مسیر با کارکرد درست را به جای مسیری که دچار خطا شده بگذارد. برای این منظور تا زمان برطرف شدن اشكال از مسیر اضافه CRC به جای مسیر خراب استفاده می شود. به این ترتیب اگر چه تراشه های متاثر، دیگر عملکرد CRC نخواهند داشت اما می توانند همچنان به کار خود ادامه بدهند. اشکال این ماجول نیز با تعویض آن در زمان مناسب برطرف خواهد شد. یک Error-Register دیگر در AMB ایمنی را باز هم بالاتر می برد. این ثبات ، سلول هایی از حافظه که بدرستی کار نمی کنند را ایزوله می کند. اگر شمار خطاها زیاد باشد یک ماجول نرم افزاری، اعلام خطر می کند.
عملکرد Hot-Add هم آخرین موردی است که معرفی می کنیم. این عملکرد به ما اجازه می دهد در حالیکه سیستم در حال کار است به آن، ماجول های حافظه اضافه کنیم.
اشکال زدایی و آزمایش FB-DIMM
با ورود فناوری FB-DIMM شیوه های آزمایش و بررسی درستی ماجول های حافظه تغییر می کند. از یک سو AMB که وسیله ای برای پایش پیوسته حافظه است و به طور مستقیم به تراشه های حافظه متصل است این کار را دشوار می کند و از سوی دیگر شمار زیاد مسیرهای داده با فاصله زمانی زیاد بر دشواری ها می افزاید. همچنین به دلیل بالا بودن سرعت حافظه استفاده از روش های کم هزینه پاسخگو نیست.
همه اینها باعث شده تا طراحان برای FB-DIMM یک DFT یا Design-for-Test بسازند. ارزشدهی آغازین (initializing) حالت DFT از طریق گذرگاه داده یا SMBus انجام می گیرد. فناوری DFT در FB-DIMM سه حالت آزمایشی اصلی دارد. IBIST یا Intercommect Build in Self Test می تواند يكپارچگي داده های تک تک AMBها را بررسی کند. در این شیوه از یک کنترل کننده IBIST استفاده می شود که از یک On-Die-Pattern-Generator و یک Checker ساخته می شود. Pattern-Generator الگوهایی از پیش تعریف شده یا قابل تغییر با طول های متفاوت ایجاد می کند و Checker بر پایه یک عدد معیار درستی آن ها را بررسی می کند. MemBIST یا Memory Build in Self Test یک موتور آزمایش DRAM است که با بیشترین سرعت تراشه های حافظه را آزمایش می کند. این موتور برای این کار از عملیات استاندارد مانند نوشتن، خواندن ، Scan یا Dynamic Inversion با داده های ثابت یا قابل تعریف استفاده می کند.
MemBIST به پهنای باند پردازنده یا سری تراشه وابسته نیست و خطاهای سلول های FB-DIMM را یافته و آدرس سلول ها را مشخص می کند و استفاده از MemBIST پس از سر هم کردن کامپیوتر بسیار سودمند است تا در همان آغاز کار خطاهای احتمالی حافظه یافته شود. فناوری FB-DIMM از روش های دیگری نیز برای بررسی درسی کارکرد خود استفاده می کند که در این مقاله امکان پرداختن به آن ها را نداریم.
پارامترهای الکتریکی
معماری FB-DIMM بر پایه ارتباط های نقطه به نقطه تفاضلي بنا شده. برای جلوگیری از بازتاب های مزاحم در تک تکِ سیم ها در هر اتصال یک مقاومت 50 اهمی در نظر گرفته شده. از این گذشته، برای هر دو رشته سیم یک پایه تغذیه الکتریکی تعبیه شده. بالاترین اختلاف پتانسیل های بیش از ممکن روی مسیرها طبق تعریف استاندارد ، 800 میلی ولت است. یک مدار ویژه در سمت فرستند، اختلاف پتانسیل از اندازه را کاهش می دهد. با این کار از اثرات پارازیتی سیم ها روی یکدیگر کم شده و مدارها در برابر پارازیت های بیرونی مانند مدارهای الکتریکی و مغناطیسی مقاومت بیشتری به دست می آورند. بر پایه جزئيات اعلام شده از سوی اینتل ، بیشترین آهنگ انتقال داده برای هر سیم، 8/4 گیگابیت بر ثانیه است. به این ترتيب پهنای باند یک کنترل کننده FB-DIMM که شش کانال دارد و همه کانال های آن با ماجول های DDR2-800 پر شده اند به 40 گیگابایت بر ثانیه می رسد. این ميزان دو برابر پهنای باند حافظه های کنونی Dual-Channel با حافظه های DDR2-800 است.
یک نوسان ساز مرکزی (Clock Generator) از طریق مسیرهای ویژه ای تپش های لازم را برای ماجول های FB-DIMM ایجاد می کند که تپش های آن حدود یک چهارم بسامد DDR2 است و حداکثر اختلاف پتانسیل آن 700 میلی ولت است. نوسان ساز مرجع، کارکردی سراسری دارد. این به آن معنی است که بسامد روی همه مسیرهای انتقال تپش برابر است اما طول فازها نامشخص. اگر چه روش های پیچیده هماهنگ سازی بسامدها حذف شده اند اما فناوري FB-DIMM می تواند از روی بسامد و جریان داده ها، داده های اصلی را دوباره بسازد.
ماجول FB-DIMM برای تغذیه به سه منبع با اختلاف پتانسیل های متفاوت نیاز دارد که عبارتند از 8/1 ولتی برای تراشه های DDR2-DRAM ، 9/0 ولتی برای termination مسیرهای کنترلی و آدرس و 5/1 ولتی برای AMB. اما ماجول های DDR2 استاندارد تنها به یک تغذیه 8/1 ولتی نیاز دارند.
توان مصرفی FB-DIMM در مقایسه با Registered-DDR2-DIMM به دلیل وجود تراشه AMB ، 5 وات بیشت. این نکته دو اشکال در پی دارد. یکی از آن ها مصرف انرژی زیاد در کامپیوترهای سرویس دهنده و در نتیجه بالارفتن گرما و نیاز به خنک کننده های قوی تر است. یک کامپیوتر با 16 شکاف نصب حافظه با حافظه های FB-DIMM در مقایسه با ماجول های DDR2 ، 80 وات انرژی بیشتر مصرف می کند. طراحان کامپیوترهای سرویس دهنده باید نیاز به تهویه بهتر را در نظر داشته باشند.
مشخصات مکانیکی
در نگاه نخست شاید میان یک ماجول FB-DIMM که در هر دو روی آن تراشه نصب شده با یک ماجول registered تفاوتی نبینیم. اندازه ها و شکل اين دو حافظه مانند هم است. حتی شمار پایه ها هم یکسان و 240 عدد است. با نگاه دقیقتر در می یابیم در یک طرف ماجول 10 تراشه و در طرف دیگر 8 تراشه به همراه IC کنترلی نصب شده. تراشه های عملکرد registered و بافر ساعت PLL حذف شده اند اما SPD-EEPROM همچنان وجود دارد. در جدول زیر تفاوت های مکانیکی میان Registered-DIMM و FB-DIMM را می بینید:
FB-DIMM
Registered-DIMM
اندازه ها(میلی متر)
5/30×5/133
5/30×5/133
شمار پایه ها
240
240
واحد رمزگذار
8 میلی متر به سمت راست از وسط ماجول
4 میلی متر به سمت راست از وسط ماجول
شمار تراشه ها
36/18/9
36/18/9
دیگر بخش ها
یک AMB ، یک SPD-EEPROM
1/2 یا 4 ثبات، یک بافر ساعت PLL یک SPD-EEPROM
با دقت بیشتر می بینیم که در حافظه FB-DIMM از 240 پایه، تنها به 69 عدد آن ها (مطابق جدول زیر) سیم کشی شده و از بقیه آن ها استفاده نشده.
شمار پایه ها
داده های ورودی به DIMM
20(10 زوج)
داده های خروجی از DIMM
28(14 زوج)
مجموع پایه های داده ای
48
تغذیه الکتریکی
6
زمین
12
بسامد، کالیبراسیون، PLL و Test
3
جمع
69
به عنوان راه حلی برای مشکل گرما، طراحان در تراشه MB یک کنترل کننده پیش بینی کرده اند که 4/2 و 4/3 وات انرژی مصرف می کند و گرمای ایجاد شده را به بیرون می راند. این مجموعه یک صفحه خنک کننده که روی بر ماجول نصب می شود نیز دارد. طراحان برای ماجول های Stacked-BGA و Dual-Die-x4 خنک کننده های پیچیده تری نیز طراحی کرده اند.
ارتباط ماجول ها و routing
فناوری FB-DIMM روی هر کانال می تواند حداکثر 288 تراشه DDR2 را آدرس دهی کند. این در حالیست که فناوری کنونی Registered-DIMM تنها 72 تراشه را آدرس دهی می کند. با احتساب هشت تراشه برای داده ها و یک تراشه ECC ، بیشترین فضای قابل آدرس دهی در کنترل کننده های کنونی DDR2 ، هشت گیگابایت می شود. این در حالیست که بیشترین فضای قابل آدرس دهی در FB-DIMM ، 192 گیگابایت است.
برتری بعدی معماری FB-DIMM ، مسیریابی ساده آن به لطف کم بودن شمار پایه ها در روش انتقال تفاضلی است. در DDR2های registered برای هر کانال دست کم دو لایه مسیریابی و یک لایه اضافی برای تغذیه الکتریکی لازم است . در حالیکه در طراحی FB-DIMM در مجموع دو لايه کافی است. به این ترتیب روی یک برد شش لایه ای امکان نصب چهار کانال FB-DIMM در برابر دو کانال DDR2 وجود دارد.
در انتقال داده ها روی FB-DIMM در مقایسه با معماری کنونی گذرگاه های موازی می توان از روش های پیچیده مسیریابی صرف نظر کرد. دلیل آن هم این است که فناوری FB-DIMM با مسیرهای سریال و asynchron کار می کند. این کار باعث می شود که امکان مسیریابی با بهینه ترین راه میان کنترل کننده حافظه و ماجول های DIMM فراهم شود.
توپولوژی FB-DIMM
اما اصلی ترین برتری فناوری FB-DIMM در انتقال سریالی داده ها بر پایه زوج سیم های تفاضلی است. این نکته در توپولوژی گذرگاه FB-DIMM تاثیری بنیادین دارد. برخلاف registered-DIMM که کنترل کننده حافظه ، داده ها را میان ماجول ها توزیع می کند، در FB-DIMM این کار به عهده AMB است. از این گذشته ، جریان داده ها دیگر موازی و میان همه ماجول ها نیست بلکه بر پایه ارتباط های نقطه به نقطه و از یک ماجول به ماجول دیگر است. با اینکار مشکل امپدانس برطرف شده و روی کیفیت سیگنال های گذرگاه تاثیری مثبت دارد. در تعاریف کنونی، طول مسیر رسیدن به کنترل کننده حافظه می تواند از 1/3 تا 5/18 سانتی متر باشد. به این ترتيب استفاده از کارت های Riser در کامپیوترهای سرویس دهنده برای استفاده از بیشترین حافظه ممکن، فراهم می گردد. برای این کار شكاف PCI-Express لازم است.
وضعیت کنونی و آینده فناوری FB-DIMM
در کامیابی فناوری FB-DIMM ، شرکت اینتل نقشی بسیار تعیین کننده و اساسی دارد. این شرکت از سال 2003 در همکاری خود با JEDEC تلاش می کند تا بازار فناوری FB-DIMM را گسترش بدهد.
از همین رو، تاکنون اینتل تنها شرکتی بوده که در کامپیوترهای سرویس دهنده اش از فناوری FB-DIMM پشتیبانی کرده. شایان گفتن است که بستر Caneland تنها با حافظه های FB-DIMM کار می کند.
این بستر چهار کانال FB-DIMM دارد که روی هر کدام تا هشت ماجول حافظه نصب می شود. البته اینتل احتمالاً با گسترش پردازنده های Nehalem کم کم فناوری FB-DIMM را کنار خواهد گذاشت. پردازنده های Nehalem EP در سیستم های دو پردازنده ای به کار می روند و هرکدام تا سه کنترل کننده DDR3 یکپارچه با پردازنده دارند. اما اینتل فناوری FB-DIMM را همچنان برای پردازنده های ایتانیوم به کار خواهد برد. ایتانیوم های چهار هسته ای با نام Tukwila چهار کنترل کننده حافظه دارند.
شرکت ای ام دی در هیچ یک از بسترهای کنونی خود برای کامپیوترهای سرویس دهنده FB-DIMM پشتیبانی نمی کند و به نظر نمی رسد در آینده نزدیک نیز چنین برنامه ای برای این کار داشته باشد.
نتیجه
طراحی FB-DIMM هم مانند PCI-Express بر پایه روش انتقال سریال و تفاضلی است. این فناوری از 24 زوج سیم تفاضلی بهره می برد. این روش، بازدهی بالا، ایمنی زیاد و مقیاس پذیری را فراهم می کند. برخلاف فناوری های کنونی حافظه ها می توان گنجایش FB-DIMM را تا 24 برابر و پهنای باند را تا 4 برابر افزایش داد. یک برتری دیگر معماری FB-DIMM، کم بودن فضای لازم برای Routing است و به جای 240 پایه، تنها 70 پایه برای این کار کافی است. از این گذشته، سازندگان بردهای اصلی می توانند روی یک برد شش لایه، چهار کانال حافظه FB-DIMM را تعبیه کنند. این در حالیست که در یک برد شش لایه تنها دو کانال حافظه DDR2 جا می گیرد.
اینتل و دیگر طراحان انتظار داشتند که فناوری FB-DIMM با یک انقلاب در بخش کامپیوترهای سرویس دهنده بسرعت و با قدرت جای حافظه های registered-DIMM را بگیرد. اما گویا واقعیت چیز دیگری است. FB-DIMM به دلیل هزینه های بالاتر و مصرف انرژی بیشتر از سوی همه سازندگان کامپیوترهای سرویس دهنده پذیرفته نشده. برای نمونه، ای ام دی تنها روی حافظه های DDR2 و DDR3 برنامه ریزی کرده. البته حتی خود اینتل هم کمی از پشتیبانی خود از FB-DIMM کاسته و برای پردازنده های Nehalem در کامپیوترهای سرویس دهنده، استفاده از فناوری DDR3 موازی را در نظر دارد.