PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مقاله کمک پردازنده چیست؟



آبجی
4th November 2009, 09:42 AM
اصطلاح کمک پردازنده یا پردازنده کمکی (Coprocessor)، یک عنوان کلی است و در حالت کلی به پردازنده ای (ریزپردازنده ای) اطلاق می شود که جهت کمک به پردازنده اصلی کنار آن قرار می گیرد. بدین ترتیب بدیهی است که همچنان کار اصلی پردازش بر عهده ریزپردازنده اصلی است و ریزپردازنده کمکی صرفا برای انجام برخی عملیات خاص و به منظور کمک به آن (مثلا در جهت بالا بردن سرعت کلی پردازش) در کنار آن قرارگرفته است.
جهت توضیح مفهوم کلی آن فرض کنید شما یک کار تخصصی و کاملا خاصی را انجام می دهید و مثلا در حین برنامه نویسی در موارد زیادی نیاز به رسم یک شکل مشخصی (مثلا شکل یک صندلی) دارید. در این صورت می توانید به شرکت سازنده ریزپردازنده سفارش کنید تا برای شما ریزپردازنده ای بسازد که عمل رسم صندلی را (که قبلا برای آن برنامه می نوشتید و با با دستورات زیادی آن را انجام می دادید) بصورت سخت افزاری (و با یک دستور خاص) انجام دهد. بنابراین ریزپردازنده اصلی در همان موقعیت و جایگاه خودش باقی خواهد بود و شما صرفا در مواقع خاصی از ریزپردازنده سفارشی خود استفاده خواهید کرد. بدیهی است وجود ریزپردازنده کمکی مذکور، وقتی مفید خواهد بود که شما در برنامه نویسی به تعداد زیادی از دستورات رسم شکل صندلی نیز استفاده کرده باشید.
البته عملا نه شرکت تولید کننده ریزپردازنده، کار طراحی و ساخت یک ریزپردازنده خاصی را برای شما انجام می دهد و نه شما قادر به پرداخت هزینه های سنگین تولید و ساخت اینچنین ریزپردازنده ای هستید ولی ذکر مثال فوق جایگاه واقعی ریزپردازنده های کمکی را کاملا مشخص می سازد.
البته موارد زیادی در برنامه نویسی و اجرا وجود دارد که می توان برای آنها ریزپردازنده کمکی ساخت. مثل اعمال محاسباتی و ریاضی. مثلا کاربرد اعمال محاسباتی نظیر توابعی مثل sin در محاسبات مهندسی زیاد است و اگر شرکت سازنده ریزپردازنده برای توابع مثلثاتی، ریزپردازنده خاصی بسازد می توان امیدوار بود که تعداد قابل توجهی از آنها به فروش رسد.
واقعیت هم همین است که برای اولین بار شرکت اینتل اقدام به تولید ریزپردازنده محاسباتی بدین منظور نمود و مثلا ریزپردازنده ای به شماره 8087 تولید کرد که به عنوان کمکی در کنار ریزپردازنده اصلی (8086) قرار می گرفت و البته صرفا دستورات خاصی را می توانست انجام دهد (مثل توابع مثلثاتی) و شرکت اینتل این نوع ریزپردازندهای کمکی را تا نسل ریزپردازنده 80386 تولید کرد که به آنها Numeric Processor Unit یا به اختصارNUP گفته می شد. (یا پردازنده های کمکی که برای تسریع عملیات I/O ساخته شد.)
همانطوریکه ذکر شد هدف از بکاربردن آنها، بالا بردن سرعت محاسبات عددي در داخل کامپيوتر به همراه CPU بود. براي تعيين نوع کمک پردازنده ها از همان روش شماره گذاری عددي به کار رفته در CPU اصلی استفاده شد و فقط به جای رقم آخر يک عدد 7 در انتهاي شماره ریزپردازنده اضافه گردید. بنابراين براي ریزپردازنده 80286 بايد از يک NPU به شماره 80287 و یا برای ریزپردازنده 80386 از کمک پردازنده 80387 استفاده شود. ولی از ریزپردازنده 80486 به بعد شرکت اینتل تصمیم گرفت که خود ریزپردازنده کمکی محاسباتی را هم در داخل ریزپردازنده اصلی تولید کرده و به بازار ارائه نماید.
بنابراین اگر سيستم شما از يک پردازنده 80486DX يا پردازنده پنتيوم استفاده مي کند نياز به کمک پردازنده نخواهيد داشت، چون خود اين تراشه در داخل پردازنده تعبيه شده است.
نکته 1: در پردازنده هاي 80486DX-33 تا جديدترين پردازنده ها (سري هاي پنتيوم و بعد از آن)، کمک پردازنده در داخل خود CPU طراحي شده است.
نکته 2: در صورتي که پردازنده شما به رده 80486 نمي رسد، شما مي توانيد از يک NPU که سرعتش بيشتر از پردازنده سيستم شما است استفاده کنيد و هيچ مشکلي پيش نخواهد آمد. اما اگر سرعت NPU کمتر از سرعت CPU باشد عملا به سرعت سيستم شما چیزی اضافه نخواهد شد .

استفاده از تمامی مطالب سایت تنها با ذکر منبع آن به نام سایت علمی نخبگان جوان و ذکر آدرس سایت مجاز است

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