PDA

مشاهده نسخه کامل : راه نجات‌؛ نگاهي به فناوري Dual Channel



Trance
06-01-09, 18:34
حافظه اصلي سيستم (RAM) يكي از مهم‌ترين بخش‌هاي كامپيوتر است كه معمولاً توجه كمي به آن مي‌شود. پردازنده‌‌هاي امروزي بسيار سريع‌تر از حافظه‌ها هستند و معمولاً براي دسترسي به اطلاعات ذخيره شده در حافظه بايد زماني را در انتظار بمانند.







Only the registered members can see the link


حافظه اصلي سيستم (RAM) يكي از مهم‌ترين بخش‌هاي كامپيوتر است كه معمولاً توجه كمي به آن مي‌شود. پردازنده‌‌هاي امروزي بسيار سريع‌تر از حافظه‌ها هستند و معمولاً براي دسترسي به اطلاعات ذخيره شده در حافظه بايد زماني را در انتظار بمانند.
در چنين مواقعي پردازنده در وضعيت بيكاري قرار مي‌گيرد و هيچ‌گونه كاري انجام نمي‌دهد (البته در عمل هيچ‌گاه اتفاق نمي‌افتد). اين موضوع سبب شده تا حافظه شبيه به يك گلوگاه شود و كارايي سيستم را تا حد زيادي محدود كند. بنابراين اگر بخواهيد كارايي پردازنده سيستم محدود نشود بايد حافظه‌‌اي سريع‌تر از پردازنده داشته باشيد.

Dual Channel روشي است كه سرعت ارتباطي بين كنترلركننده حافظه و حافظه را دو برابر مي‌كند و موجب بهبود كارايي سيستم مي‌شود. ما در اين مقاله هر آنچه كه لازم است در مورد فناوريDual Channel بدانيد را شرح خواهيم داد. چگونه كار مي‌كند؟ چگونه بايد پيكربندي كرد؟ و چگونگي محاسبه سرعت انتقال اطلاعات و... .
اجازه دهيد قبل از آن‌كه به بررسي نحوه عملكرد حافظه‌هاي Dual Channel بپردازيم، در مورد نحوه ارتباط حافظه با سيستم توضيحاتي را ارائه دهيم. حافظه توسط مدارهايي كه كنترلر حافظه ناميده مي‌شوند كنترل مي‌شود.

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

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

Only the registered members can see the link (Only the registered members can see the link)
تصوير 1

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

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

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

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

كنترلر حافظه تنها مي‌تواند يك فركانس توليد كند. بنابراين اگر روي سيستمي كه داراي كنترلر حافظه با فركانس 667 مگاهرتز (2×333 مگاهرتز) است حافظه DDR2 800 مگاهرتزي قرار گيرد تنها با فركانس 667 مگاهرتز عمل خواهد كرد. معمولاً اين محدوديت كنترلر حافظه تنها در سيستم‌هاي مبتني بر پردازنده‌هاي اينتل مشاهده مي‌شود.

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

بيشتر پردازنده‌هاي اينتل داراي باس آدرس حافظه 32 يا 36 بيتي هستند (منظور باس آدرس درون باس خارجي پردازنده FSB است). اين موضوع سبب مي‌شود تا پردازنده به ترتيب ‌قادر به تشخيص حداكثر 4 (32ّ2) و 64 گيگابايت (36ّ2) حافظه باشد، اما از آنجا كه كنترلر حافظه دسترسي به حافظه را تعيين مي‌كند (نه مستقيماً پردازنده) اين موضوع موجب محدوديت حداكثر ميزان حافظه مورد پشتيباني مي‌شود.

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

به دليل اين‌كه همه انواع ماژول‌هاي حافظه قابل دسترس امروزي 64 بيتي هستند، بنابراين عرض باس حافظه 64 بيت است. فناوري Dual Channel در حقيقت به اين بخش از معماري حافظه توجه كرده است و باس حافظه را از 64 بيت به 128 بيت افزايش داده است.

Dual Channel چيست؟

كنترلر حافظه يك چيپ‌ست اگر به جاي يك عرض باس داده 64 بيتي از يك عرض باس داده 128 بيت استفاده كند، در اصطلاح داراي قابليت Dual Channel است. به عبارت ساده‌تر مادربوردهايي كه داراي چيپ‌ستي با كنترلر حافظه 128 بيتي هستند از قابليت Dual Channel پشتيباني مي‌كنند. توسط اين فناوري نرخ انتقال اطلاعات به‌طور تئوري به ميزان دو برابر افزايش پيدا مي‌كند.

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

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

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

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

اگر فناوري Dual Channel همراه با ماژول‌هاي حافظه DDR2 800 به كار گرفته شود، حداكثر نرخ انتقال اطلاعات تئوري حافظه دو برابر خواهد شد و از 6400 مگابايت بر ثانيه به 12800 مگابايت بر ثانيه افزايش پيدا مي‌كند. دليل اين موضوع نيز كاملاً روشن است، زيرا در هر سيكل به جاي 64 بيت، 128 بيت اطلاعات انتقال پيدا مي‌كند. اين موضوع خيلي مهم است كه به نرخ انتقال اطلاعات از نظر تئوري توجه كنيد.

Only the registered members can see the link (Only the registered members can see the link)
تصوير 2

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

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

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

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

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




عصر شبکه

Trance
06-01-09, 18:38
ابتدا به بررسي سيستمي مي‌پردازيم كه از خصوصيت Dual Channel پشتيباني نمي‌كند (يك سيستم تك كاناله Single Channel). زماني‌كه مي‌گوييم عرض باس حافظه 64 بيت است، اين موضوع به اين معني است كه بين كنترلر حافظه و درگاه‌هاي حافظه 64 عدد سيم وجود دارد. به عبارت ساده‌تر كنترلر حافظه توسط 64 عدد سيم به سوكت‌هاي حافظه متصل شده است. اين سيم‌ها از D0 تا D63 نامگذاري مي‌شوند.
Only the registered members can see the link (Only the registered members can see the link)
تصوير 3

به‌طور كلي باس داده بين درگاه‌‌هاي حافظه تقسيم مي‌شوند. باس‌هاي كنترل و آدرس روي سوكت حافظه مناسب، در صورتي فعال خواهند شد كه مشخص باشد آدرس در كدام قسمت بايد اطلاعات را ذخيره‌كند يا از كجا خوانده شود. شكل روبه‌رو اين موضوع را به‌طور واضح نمايش مي‌دهد.
سيستم‌هايي كه از فناوري Dual Channel پشتيباني مي‌كنند داراي عرض باس حافظه 128 بيتي هستند. بنابراين 128 سيم براي اتصال كنترلر حافظه و سوكت حافظه وجود دارد.

اين سيم‌ها از D0 تا D127 نامگذاري مي‌شوند. از آنجا كه هر يك از ماژول‌هاي حافظه مي‌توانند تنها 64 بيت داده را در هر سيكل انتقال دهند، دو ماژول حافظه براي پر كردن باس داده 128 بيتي مورد نياز است.

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

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

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

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

پردازنده‌هاي شركت AMD مبتني بر سوكت 939، 940، +AM2، AM2 و F (همچنين مادربوردهاي سوكت 462 كه داراي چيپ‌ست nForce2 هستند) از فناوري Dual Channel پشتيباني مي‌كنند. براي سيستم‌هاي مبتني بر پردازنده‌هاي اينتل نيز لازم است كه به دفترچه راهنماي مادربورد يا وب‌سايت سازنده مادربورد مراجعه كنيد.

Only the registered members can see the link (Only the registered members can see the link)
تصوير 4 و 5

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

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

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

Only the registered members can see the link (Only the registered members can see the link)
تصوير 6

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

توجه: پيكربندي Dual Channel در بعضي مادربوردها مطابق روش ذكر شده در بالا نيست و براي فعال شدن حالت دو كاناله بايد حافظه را روي اسلات‌هاي يك و دو يا سه و چهار قرار داد. (تصوير شش)
اجازه دهيد اكنون توضيحات فني بيشتري ارائه كنيم. اسلا‌ت يك و دو به‌طور فيزيكي متصل به كانال A هستند، در صورتي‌كه اسلا‌ت سه و چهار متصل به كانال Bهستند.

زماني‌كه شما ماژول‌هاي حافظه را روي اسلا‌ت يك و سه يا دو و چهار نصب مي‌كنيد يعني شما هر ماژول حافظه را روي يك كانال متفاوت نصب كرده‌ايد، بنابراين هر دو باس 64 بيتي فعال مي‌شوند و عرض باس حافظه به 128 بيت افزايش پيدا مي‌كند.

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

Only the registered members can see the link
تصوير 7 و 8

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

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

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

Only the registered members can see the link (Only the registered members can see the link)
تصوير 9
بعد از پيكربندي Dual Channel لازم است بررسي شود كه آيا حافظه‌ها در اين وضعيت عمل مي‌كنند يا خير ؟ بيشتر مادربوردهاي رايج، اطلاعات مربوط به وضعيت Dual Channel را در صفحه POST (صفحه سياه رنگي كه بعد از روشن كردن سيستم ديده مي‌شود و مشخصات پردازنده، مادربورد، ميزان حافظه و هارد‌ديسك‌ها را نمايش مي‌دهد) نشان مي‌دهند.

در اين صفحه در صورتي‌كه مادربورد در وضعيت Dual Channel قرار گرفته باشد، عبارت Dual Channel و در غير اين‌صورت عبارت Single Channel نمايش داده خواهد شد. (تصوير نه)
Only the registered members can see the link (Only the registered members can see the link)
تصوير 10
روش ديگر، استفاده از برنامه‌هاي تشخيص مشخصات‌ سخت افزار است. ما توصيه مي‌كنيم از نرم‌افزار CPU-Zبراي بررسي اطلاعات مربوط به حافظه استفاده كنيد.

در اين برنامه و در منوي Memory گزينه‌اي به نام #Channels وجود دارد. در صورتي‌كه جلوي اين گزينه عبارت Dual درج شده باشد به اين معني است كه سيستم در وضعيت Dual Channel عمل مي‌كند.

در اين منو همچنين مي‌توان اطلاعاتي در مورد فركانس حافظه و نحوه زمان‌بندي آن به دست آورد.

لازم به ذكر است كه در بخش فركانس حافظه، فركانس واقعي حافظه نمايش داده مي‌شود كه بايد ضربدر عدد دو (در صورت استفاده از حافظه‌هاي خانواده DDR) شود.

در شكل زير فركانس حافظه مورد استفاده ما 333 نمايش داده شده است، اما در حقيقت اين حافظه يك DDR2 667 است. (تصوير ده)