حافظه اصلی سیستم (RAM) یکی از مهم‌ترین بخش‌های کامپیوتر است که معمولاً توجه کمی به آن می‌شود. پردازنده‌‌های امروزی بسیار سریع‌تر از حافظه‌ها هستند و معمولاً برای دسترسی به اطلاعات ذخیره شده در حافظه باید زمانی را در انتظار بمانند.

در چنین مواقعی پردازنده در وضعیت بیکاری قرار می‌گیرد و هیچ‌گونه کاری انجام نمی‌دهد (البته در عمل هیچ‌گاه اتفاق نمی‌افتد). این موضوع سبب شده تا حافظه شبیه به یک گلوگاه شود و کارایی سیستم را تا حد زیادی محدود کند. بنابراین اگر بخواهید کارایی پردازنده سیستم محدود نشود باید حافظه‌‌ای سریع‌تر از پردازنده داشته باشید…

Dual Channel روشی است که سرعت ارتباطی بین کنترلرکننده حافظه و حافظه را دو برابر می‌کند و موجب بهبود کارایی سیستم می‌شود. ما در این مقاله هر آنچه که لازم است در مورد فناوریDual Channel  بدانید را شرح خواهیم داد. چگونه کار می‌کند؟ چگونه باید پیکربندی کرد؟ و چگونگی محاسبه سرعت انتقال اطلاعات و… .

اجازه دهید قبل از آن‌که به بررسی نحوه عملکرد حافظه‌های Dual Channel بپردازیم، در مورد نحوه ارتباط حافظه با سیستم توضیحاتی را ارائه دهیم. حافظه توسط مدارهایی که کنترلر حافظه نامیده می‌شوند کنترل می‌شود.

این مدارها به‌طور کلی در سیستم‌های مبتنی بر پردازنده‌های اینتل در چیپ‌ست پل شمالی و در سیستم‌های مبتنی بر پردازنده‌های K8 شرکت AMD در درون پردازنده قرار دارد. لازم به ذکر است که این کنترلر در پردازنده‌های سری K7(به‌عنوان مثال پردازنده‌های سری Athlon XP) در چیپ‌ست پل شمالی قرار داشت.

حافظه به واسطه یک سری از سیم‌ها به کنترلر حافظه متصل است. این سیم‌ها به سه گروه مختلف تقسیم می‌شوند: داده، آدرس و کنترل. سیم‌های مربوط به باس داده، داده‌های خواندن و نوشتن را انتقال خواهند داد. در وضعیت خواندن، داده‌ها را از حافظه به کنترلر حافظه و سپس به پردازنده انتقال می‌دهند و در وضعیت نوشتن، داده‌ها را از پردازنده به کنترلر حافظه و سپس به حافظه انتقال می‌دهند.


تصویر ۱

سیم‌های مربوط به باس آدرس، مشخص می‌کنند که داده‌ها در کدام قسمت حافظه باید نوشته شود و یا از کدام قسمت حافظه باید خوانده شود. سیم‌های کنترل، فرمان‌ها را به ماژول حافظه ارسال می‌کنند و مشخص می‌کنند که این داده‌ها چه نوع عملکردی را انجام دهند.

به‌عنوان مثال تعیین می‌کنند که داده‌ها مربوط به عملیات خواندن یا نوشتن (ذخیره‌کردن) هستند. در باس کنترل، سیم‌های مهم دیگری نیز رایج هستند که مربوط به فرکانس حافظه می‌شوند.

شکل روبه‌رو به‌طور مختصر تمامی موارد ذکر شده از جمله نحوه انتقال اطلاعات در یک سیستم مبتنی بر اینتل را نمایش می‌دهد. در پردازنده‌های شرکت AMD کنترلر حافظه درون پردازنده قرار دارد و بنابراین باس حافظه بدون هیچ‌گونه واسطه‌ای مستقیماً به پردازنده متصل است. (تصویر یک)

سرعت حافظه (فرکانس حافظه)، حداکثر میزان حافظه پشتیبانی شده و نوع حافظه (DDR2 ،DDR و DDR3) توسط چیپ‌ست در سیستم‌های مبتنی بر پردازنده‌های اینتل و در سیستم‌های مبتنی بر پردازنده‌های K8 شرکت AMD، توسط پردازنده مشخص می‌شود.

به‌عنوان مثال سیستم‌های مبتنی بر پردازنده‌های اینتل به دلیل آن‌که چیپ‌ست مادربورد تعیین کننده نوع حافظه است، قادر به پشتیبانی از حافظه‌های DDR3 هستند، در حالی‌که سیستم‌های مبتنی بر پردازنده‌های AM2 شرکت AMD از آنجا که کنترلر حافظه درون آن‌ها نمی‌تواند حافظه‌های DDR3 را شناسایی کند، در حال حاضر قادر به پشتیبانی از این حافظه‌ها نیستند.

کنترلر حافظه تنها می‌تواند یک فرکانس تولید کند. بنابراین اگر روی سیستمی که دارای کنترلر حافظه با فرکانس ۶۶۷ مگاهرتز (۲×۳۳۳ مگاهرتز) است حافظه DDR2 800 مگاهرتزی قرار گیرد تنها با فرکانس ۶۶۷ مگاهرتز عمل خواهد کرد. معمولاً این محدودیت کنترلر حافظه تنها در سیستم‌های مبتنی بر پردازنده‌های اینتل مشاهده می‌شود.

به‌طوری‌که پردازنده شرکت AMD قادر به پشتیبانی از حافظه‌های DDR2 800 (پردازنده‌های مبتنی بر سوکت AM2) یا حداکثر حافظه‌های DDR2 1066 (پردازنده‌های مبتنی بر سوکت +Phenom AM2) هستند. موضوع جالب توجه دیگر مربوط به حداکثر میزان حافظه‌ا‌ی است که سیستم می‌تواند تشخیص دهد.

بیشتر پردازنده‌های اینتل دارای باس آدرس حافظه ۳۲ یا ۳۶ بیتی هستند (منظور باس آدرس درون باس خارجی پردازنده FSB است). این موضوع سبب می‌شود تا پردازنده به ترتیب ‌قادر به تشخیص حداکثر ۴ (۳۲ّ۲) و ۶۴ گیگابایت (۳۶ّ۲) حافظه باشد، اما از آنجا که کنترلر حافظه دسترسی به حافظه را تعیین می‌کند (نه مستقیماً پردازنده) این موضوع موجب محدودیت حداکثر میزان حافظه مورد پشتیبانی می‌شود.

به‌عنوان مثال چیپ‌ست‌های سری P35 و G33 شرکت اینتل می‌توانند حداکثر از هشت گیگابایت حافظه (دو گیگابایت در هر سوکت حافظه) پشتیبانی کنند. سازندگان مادربوردها ممکن است برای کاهش هزینه ساخت و تولید مادربوردهای ارزان‌قیمت‌تر مادربوردهای تنها با دو سوکت حافظه تولید کنند. این موضوع موجب می‌شود تا مادربوردهای مبتنی بر این چیپ‌ست‌ها به جای هشت گیگابایت تنها از چهار گیگابایت حافظه (دو گیگابایت در هر درگاه حافظه و جمعاً چهار گیگابایت) پشتیبانی کنند.

به دلیل این‌که همه انواع ماژول‌های حافظه قابل دسترس امروزی ۶۴ بیتی هستند، بنابراین عرض باس حافظه ۶۴ بیت است. فناوری Dual Channel در حقیقت به این بخش از معماری حافظه توجه کرده است و باس حافظه را از ۶۴ بیت به ۱۲۸ بیت افزایش داده است.

Dual Channel چیست؟

کنترلر حافظه یک چیپ‌ست اگر به جای یک عرض باس داده ۶۴ بیتی از یک عرض باس داده ۱۲۸ بیت استفاده کند، در اصطلاح دارای قابلیت Dual Channel است. به عبارت ساده‌تر مادربوردهایی که دارای چیپ‌ستی با کنترلر حافظه ۱۲۸ بیتی هستند از قابلیت Dual Channel پشتیبانی می‌کنند. توسط این فناوری نرخ انتقال اطلاعات به‌طور تئوری به میزان دو برابر افزایش پیدا می‌کند.

حداکثر نرخ انتقال اطلاعات تئوری (MTTR) از روش زیر محاسبه می‌شود:

۸/ تعداد بیت منتقل شده در هر سیکل× تعداد دفعات انتقال در هر سیکل × فرکانس واقعی= MTTR
8/ تعداد بیت انتقال داده شده در هر سیکل × فرکانس MTTR=DDR حافظه‌های DDR

حافظه‌های مبتنی بر فناوری Double Data Rate) DDR) مانند DDR-SDRAM ،DDR2-SDRAM و DDR3-SDRAM  می‌توانند در هر سیکل دو مرتبه اطلاعات را انتقال دهند، اما حافظه‌های سنتی SDRAM تنها می‌توانند در هر سیکل یک مرتبه انتقال اطلاعات انجام دهند. با توجه به این موضوع حافظه‌های مبتنی بر معماری DDR معمولاً با دو برابر فرکانس واقعی شناسایی می‌شوند.

به‌عنوان مثال یک حافظه DDR2 800 دارای فرکانس ۴۰۰ مگاهرتز است. بنابراین در فرمول اول باید در قسمت «تعداد دفعات انتقال در هر سیکل» عدد دو را برای حافظه‌های سری DDR قرار دهید و در صورت استفاده از فرمول دوم لازم است آنچه روی حافظه نوشته شده (به‌عنوان مثال DDR2 800 عدد ۸۰۰) را قرار دهید.

با توجه به فرمول‌های ذکر شده در بالا نرخ انتقال اطلاعات در یک حافظه DDR2 800 برابر با ۶۴۰۰ مگابایت بر ثانیه است. اگر توجه کرده باشید برخی از سازندگان حافظه‌ها، ماژول‌های حافظه DDR2 800 خود را تحت نام PC2-6400 عرضه می‌کنند.

اگر فناوری Dual Channel همراه با ماژول‌های حافظه DDR2 800 به کار گرفته شود، حداکثر نرخ انتقال اطلاعات تئوری حافظه دو برابر خواهد شد و از ۶۴۰۰ مگابایت بر ثانیه به ۱۲۸۰۰ مگابایت بر ثانیه افزایش پیدا می‌کند. دلیل این موضوع نیز کاملاً روشن است، زیرا در هر سیکل به جای ۶۴ بیت، ۱۲۸ بیت اطلاعات انتقال پیدا می‌کند. این موضوع خیلی مهم است که به نرخ انتقال اطلاعات از نظر تئوری توجه کنید.

تصویر ۲

زمانی‌که ما این مقادیر را محاسبه می‌کنیم، ادعا می‌کنیم که این میزان انتقال اطلاعات در هر سیکل اتفاق خواهد افتاد، اما در حقیقت چنین انتقالی هیچ‌گاه اتفاق نمی‌افتد، زیرا پردازنده و کنترلر حافظه در هر زمان صد درصد اطلاعات را انتقال نمی‌دهند.

بنابراین زمانی‌که شما نرخ انتقال اطلاعات واقعی سیستم خود را توسط نرم‌افزاری مانند SiSoft Sandraاندازه‌گیری می‌کنید، همیشه مقادیری پایین‌تر از حداکثر نرخ انتقال اطلاعات تئوری به دست خواهید آورد.

به این نکته توجه کنید که این افزایش کارایی صد درصدی تنها در زیر سیستم حافظه اعمال می‌شود و هیچ‌گاه موجب افزایش کارایی صد درصد کل سیستم نخواهد شد. تنها درصد کمی از این افزایش کارایی حافظه روی کل سیستم تأثیر خواهد گذاشت.

یک کامپیوتر از قطعات متعددی تشکیل شده است که افزایش کارایی یکی از این قطعات حتی به میزان دو برابر موجب افزایش کارایی کل سیستم به میزان دو برابر نخواهد شد.

اکنون ما می‌خواهیم جزئیات آنچه به‌طور فیزیکی در باس داده حافظه اتفاق می‌افتد را شرح دهیم، زیرا آنچه تاکنون توضیح داده‌ایم هیچ‌گاه به‌طور عملی اتفاق نخواهد افتاد.

ابتدا به بررسی سیستمی می‌پردازیم که از خصوصیت Dual Channel پشتیبانی نمی‌کند (یک سیستم تک کاناله Single Channel). زمانی‌که می‌گوییم عرض باس حافظه ۶۴ بیت است، این موضوع به این معنی است که بین کنترلر حافظه و درگاه‌های حافظه ۶۴ عدد سیم وجود دارد. به عبارت ساده‌تر کنترلر حافظه توسط ۶۴ عدد سیم به سوکت‌های حافظه متصل شده است. این سیم‌ها از D0 تا D63 نامگذاری می‌شوند.

تصویر ۳

به‌طور کلی باس داده بین درگاه‌‌های حافظه تقسیم می‌شوند. باس‌های کنترل و آدرس روی سوکت حافظه مناسب، در صورتی فعال خواهند شد که مشخص باشد آدرس در کدام قسمت باید اطلاعات را ذخیره‌کند یا از کجا خوانده شود. شکل روبه‌رو این موضوع را به‌طور واضح نمایش می‌دهد.

سیستم‌هایی که از فناوری Dual Channel پشتیبانی می‌کنند دارای عرض باس حافظه ۱۲۸ بیتی هستند. بنابراین ۱۲۸ سیم برای اتصال کنترلر حافظه و سوکت حافظه وجود دارد.

این سیم‌ها از D0 تا D127 نامگذاری می‌شوند. از آنجا که هر یک از ماژول‌های حافظه می‌توانند تنها ۶۴ بیت داده را در هر سیکل انتقال دهند، دو ماژول حافظه برای پر کردن باس داده ۱۲۸ بیتی مورد نیاز است.

به‌طور کلی برای آن‌که فناوری Dual Channel فعال شود نیاز به تعداد ماژول‌های حافظه به صورت زوج است.

اگر سیستم شما از فناوری Dual Channel پشتیبانی کند، اما تنها یک ماژول حافظه روی آن قرار گیرد، به‌طور قطع این فناوری عمل نخواهد کرد، زیرا در هر سیکل تنها ۶۴ بیت داده انتقال پیدا می‌کند.

دو یا چهار ماژول حافظه برای آن‌که بتوانند به صورت Dual Channel عمل کنند باید دارای ظرفیت‌، زمان‌بندی و فرکانس یکسان باشند. (تصویر سه)

فعال کردن حالت Dual Channel

برای فعال کردن Dual Channel نیاز به پشتیبانی چیپ‌ست و مادربورد (در سیستم‌های مبتنی بر پردازنده‌های اینتل) و پشتیبانی پردازنده (درسیستم‌های مبتنی بر پردازنده‌های AMD) و دو یا چهار ماژول حافظه یکسان سازگار با حافظه مورد پشتیبانی توسط مادربورد DDR-SDRAM ،DDR2-SDRAM و DDR3-SDRAM) دارید.

پردازنده‌های شرکت AMD مبتنی بر سوکت ۹۳۹، ۹۴۰، +AM2، AM2 و F (همچنین مادربوردهای سوکت ۴۶۲ که دارای چیپ‌ست nForce2 هستند) از فناوری Dual Channel پشتیبانی می‌کنند. برای سیستم‌های مبتنی بر پردازنده‌های اینتل نیز لازم است که به دفترچه راهنمای مادربورد یا وب‌سایت سازنده مادربورد مراجعه کنید.

تصویر ۴ و ۵

اگر تنها یک ماژول حافظه داشته باشید، نمی‌توانید از فناوری Dual Channel استفاده کنید. بنابراین اگر قصد دارید سیستمی تهیه کنید که دو گیگابایت حافظه داشته باشد بهتر است دو عدد ماژول یک گیگابایتی به جای یک ماژول دو گیگابایتی داشته باشید، زیرا در این صورت می‌توانید از ویژگی Dual Channel که موجب افزایش کارایی می‌شود، استفاده کنید.

اگر مادربورد شما تنها دو اسلا‌ت حافظه داشته باشد برای فعال کردن ویژگی Dual Channel باید درون هر دو اسلا‌ت، ماژول حافظه قرار دهید. مادربوردهایی که دارای چهار اسلا‌ت حافظه هستند روش‌های متفاوتی برای فعال کردن ویژگی Dual Channel دارند.

اگر شما چهار ماژول حافظه یکسان داشته باشید، با قرار دادن آن‌ها روی چهار اسلا‌ت حافظه می‌توانید از ویژگی Dual Channel استفاده کنید، اما اگر دارای دو ماژول حافظه هستید باید به روش زیر عمل کنید. (تصویر چهار و پنج)

در مادربوردهای مبتنی بر پردازنده‌های اینتل باید یکی از حافظه‌ها را در اسلا‌ت یک و دیگری را در اسلا‌ت سه یا یکی از حافظه‌ها را درون اسلا‌ت دو و دیگری را در اسلا‌ت چهار قرار دهید. بیشتر سازندگان مادربوردها با رنگ‌بندی متفاوت نحوه قرار دادن حافظه‌ها را مشخص کرده‌اند.

تصویر ۶

برای استفاده از پیکربندی Dual Channel در این مادربوردها لازم است که حافظه‌ها را در اسلا‌ت‌های همرنگ قرار دهید.

توجه: پیکربندی Dual Channel در بعضی مادربوردها مطابق روش ذکر شده در بالا نیست و برای فعال شدن حالت دو کاناله باید حافظه را روی اسلات‌های یک و دو یا سه و چهار قرار داد. (تصویر شش)

اجازه دهید اکنون توضیحات فنی بیشتری ارائه کنیم. اسلا‌ت یک و دو به‌طور فیزیکی متصل به کانال A هستند، در صورتی‌که اسلا‌ت سه و چهار متصل به کانال Bهستند.

زمانی‌که شما ماژول‌های حافظه را روی اسلا‌ت یک و سه یا دو و چهار نصب می‌کنید یعنی شما هر ماژول حافظه را روی یک کانال متفاوت نصب کرده‌اید، بنابراین هر دو باس ۶۴ بیتی فعال می‌شوند و عرض باس حافظه به ۱۲۸ بیت افزایش پیدا می‌کند.

اگر شما حافظه‌ها را درون کانال‌های یکسان قرار دهید (نصب کردن حافظه‌ها روی کانال یک و دو یا سه و چهار) کنترلر حافظه تنها یک باس ۶۴ بیتی را خواهد دید و بنابراین سیستم در وضعیت Single Channel عمل می‌کند.

تصویر ۷ و ۸

فعال کردن قابلیت Dual Channel روی سیستم‌های مبتنی بر پردازنده‌های AMD کمی متفاوت است. برای فعال کردن قابلیت Dual Channel در مادربوردهای مبتنی بر پردازنده‌های AMD نیز باید از حافظه‌های یکسان و یک جور استفاده کرد، اما با این تفاوت که در این مادربوردها اسلات‌ها به صورت یک در میان با یکدیگر Dual Channelنمی‌شوند.

به عبارت ساده‌تر برای پیکربندی Dual Channel در تمامی مادربوردهای AMD (شامل MSI) باید حافظه‌ها را درون اسلا‌ت‌های همرنگ قرار داد.

در شکل روبه‌رو یک مادربورد مبتنی بر پردازنده‌های AMD که اسلا‌ت یک و دو آن زرد و اسلا‌ت سه و چهار آن بنفش است نمایش داده شده است. برای پیکربندی Dual Channel در این مادربورد تنها لازم است که حافظه‌ها را درون اسلا‌ت‌های همرنگ قرار داد. (تصویر هفت و هشت)

بررسی فعال شدن Dual Channel


تصویر ۹

بعد از پیکربندی Dual Channel لازم است بررسی شود که آیا حافظه‌ها در این وضعیت عمل می‌کنند یا خیر ؟ بیشتر مادربوردهای رایج، اطلاعات مربوط به وضعیت Dual Channel را در صفحه POST (صفحه سیاه رنگی که بعد از روشن کردن سیستم دیده می‌شود و مشخصات پردازنده، مادربورد، میزان حافظه و هارد‌دیسک‌ها را نمایش می‌دهد) نشان می‌دهند.
در این صفحه در صورتی‌که مادربورد در وضعیت Dual Channel قرار گرفته باشد، عبارت Dual Channel و در غیر این‌صورت عبارت Single Channel نمایش داده خواهد شد. (تصویر نه)

منبع- عصر شبکه