مقدمه :
کارت گرافیک در کامپیوتر شخصی دارای جایگاهی خاص است کارتهای فوق اطلاعات دیجیتال تولید شده توسط کامپیوتر را اخذ و آنها را بگونهای تبدیل مینمایند که برای انسان قابل مشاهده باشند. در اغلب کامپیوترها، کارتهای گرافیک اطلاعات دیجیتال را برای نمایش توسط نمایشگر، به اطلاعات آنالوگ تبدیل میکنند. در کامپیوترهایLaptop اطلاعات، همچنان دیجیتال باقی خواهند ماند زیرا این کامپیوترها اطلاعات را بصورت دیجیتال نمایش میدهند.
اگر از فاصله بسیار نزدیک به صفحه نمایشگر یک کامپیوتر شخصی نگاه کنید، مشاهده خواهید کرد که تمام چیزهائی که بر روی نمایشگر نشان داده میشود از «نقاط» تشکیل شدهاند. نقاط فوق «پیکسل» نامیده میشوند. هر پیکسل دارای یک رنگ است. در برخی نمایشگرها (مثلاً صفحه نمایشگر استفاده شده در کامپیوترهای اولیه مکینتاش) هر پکسل صرفاً دارای دو رنگ بود: سفید و سیاه. امروزه در برخی از صفحات نمایشگر، هر پیکسل میتواند دارای ۲۵۶ رنگ باشد. در اغلب صفحات نمایشگر، پیکسلها بصورت «تمام رنگ»(True Color) بوده و دارای ۱۶/۸ میلیون حالت متفاوت میباشند. با توجه به اینکه چشم انسان قادر به تشخیص ده میلیون رنگ متفاوت است، ۱۶/۸ میلیون رنگ بمراتب بیش از آن چیزی است که چشم انسان قادر به تشخیص آنها بوده و به نظر همان ده میلیون رنگ کفایت میکند!
هدف یک کارت گرافیک، ایجاد مجموعهای از سیگنال ها است که نقاط فوق را بر روی صفحه نمایشگر، نمایش دهند.
کارت گرافیک چیست ؟
یک کارت گرافیک پیشرفته، یک برد مدار چاپی بهمراه حافظه و یک پردازنده اختصاصی است. پردازنده با هدف انجام محاسبات مورد نیاز گرافیکی، طراحی شدهاست. اکثر پردازندههای فوق دارای دستورات اختصاصی بوده که به کمک آنها میتوان عملیات گرافیک را انجام داد. کارت گرافیک دارای اسامی متفاوتی نظیر: کارت ویدئو، برد ویدئو، برد نمایش ویدئوئی، برد گرافیک، آداپتور گرافیک و آداپتور ویدئو است.
مبانی کارت گرافیک
بمنظور شناخت اهمیت و جایگاه کارتهای گرافیک، یک کارت گرافیک با ساده ترین امکانات را در نظر میگیریم. کارت مورد نظر قادر به نمایش پیکسلهای سیاه وسفید بوده و از یک صفحه نمایشگر با وضوح تصویر ۴۸۰ * ۶۴۰ پیکسل استفاده مینماید. کارت گرافیک از سه بخش اساسی زیر تشکیل میشود :
-حافظه. اولین چیزی که یک کارت گرافیک به آن نیاز دارد، حافظهاست. حافظه رنگ مربوط به هر پیکسل را در خود نگاهداری مینماید. در ساده ترین حالت (هر پیکسل سیاه و سفید باشد) به یک بیت برای ذخیره سازی رنگ هر پیکسل نیاز خواهد بود. با توجه به اینکه هر بایت شامل هشت بیت است، نیاز به هشتاد بایت(حاصل تقسیم ۶۴۰ بر ۸) برای ذخیره سازی رنگ مربوط به پیکسلهای موجود در یک سطر بر روی صفحه نمایشگر و ۳۸۴۰۰ بایت (حاصلضرب ۴۸۰ در ۸۰) حافظه بمنظور نگهداری تمام پیکسلهای قابل مشاهده بر روی صفحه، خواهد بود.
-اینترفیس کامپیوتر. دومین چیزی که یک کارت گرافیک به آن نیاز دارد، روشی بمنظور تغییر محتویات حافظه کارت گرافیک است. امکان فوق با اتصال کارت گرافیک به گذرگاه مربوطه بر روی برد اصلی تحقق پیدا خواهد کرد. کامپیوتر قادر به ارسال سیگنال از طریق گذرگاه مربوطه برای تغییر محتویات حافظه خواهد بود.
-اینترفیس ویدئو. سومین چیزی که یک کارت گرافیک به آن نیاز دارد، روشی بمنظور تولید سیگنال برای مانیتور است. کارت گرافیک میبایست سیگنالهای رنگی را تولید تا باعث حرکت اشعه در CRT گردد. فرض کنید که صفحه نمایشگر در هر ثانیه شصت فریم را بازخوانی / باز نویسی مینماید، این بدان معنی است که کارت گرافیک تمام حافظه مربوطه را بیت به بیت اسکن و این عمل را شصت مرتبه در ثانیه انجام دهد. سیگنالهای مورد نظر برای هر پیکسل موجود بر هر خط ارسال و در ادامه یک پالس افقی sync، نیز ارسال میگردد.عملیات فوق برای ۴۸۰ خط تکرار شده و در نهایت یک پالس عمودی sync ارسال خواهد شد.
پردازندههای کمکی گرافیک
یک کارت گرافیک ساده نظیر آنچه در بخش قبل اشاره گردید، Frame Buffer نامیده میشود. کارت، یک فریم از اطلاعاتی را نگهداری مینماید که برای نمایشگر ارسال شدهاست. ریزپردازنده کامپیوتر مسئول بهنگام سازی هر بایت در حافظه کارت گرافیک است. در صورتیکه عملیات گرافیک پیچیدهای را داشته باشیم، ریزپردازنده کامپیوتر مدت زمان زیادی را صرف بهنگام سازی حافظه کارت گرافیک کرده و برای سایر عملیات مربوطه زمانی باقی نخواهد ماند. مثلاً اگر یک تصویر سه بعدی دارای ۱۰۰۰۰ ضلع باشد، ریزپردازنده میبایست هر ضلع را رسم و عملیات مربوطه در حافظه کارت گرافیک را نیز انجام دهد. عملیات فوق زمان بسیار زیادی را طلب میکند.
کارتهای گرافیک جدید، بطرز قابل توجهای، حجم عملیات مربوط به پردازنده اصلی کامپیوتر را کاهش میدهند. این نوع کارتها دارای یک پردازنده اصلی پر قدرت بوده که مختص عملیات گرافیکی طراحی شدهاست. با توجه به نوع کارت گرافیک، پردازنده فوق میتواند یک «کمک پردازنده گرافیکی» یا یک «شتاب دهنده گرافیکی» باشد. پردازنده کمکی و پردازنده اصلی بصورت همزمان فعالیت نموده و در مواردیکه از شتاب دهنده گرافیکی استفاده میگردد، دستورات لازم از طریق پردازنده اصلی برای شتاب دهنده ارسال و شتاب دهنده مسئولیت انجام آنها را برعهده خواهد داشت.
در سیستمهای «کمک پردازنده»، درایور کارت گرافیک عملیات مربوط به کارهای گرافیکی را مستقیماً برای پردازنده کمکی گرافیکی ارسال میکند. سیستم عامل هر چیز دیگر را برای پردازنده اصلی ارسال خواهد کرد. در سیستمهای «شتاب دهنده گرافیکی»، درایور کارت گرافیک هرچیز را در ابتدا برای پردازنده اصلی کامپیوتر ارسال میکند. در ادامه پردازنده اصلی کامپیوتر، شتاب دهنده گرافیک را به منظور انجام عملیات خاصی هدایت میکند. مثلاً پردازنده ممکن است به شتاب دهنده اعلام نماید که :«یک چند ضلعی رسم کن» در ادامه شتاب دهنده فعالیت تعریف شده فوق را انجام خواهد داد.
عناصر دیگر بر روی کارت گرافیک
یک کارت گرافیک دارای عناصر متفاوتی است :
-پردازنده گرافیک. پردازنده گرافیک بمنزله مغز یک کارت گرافیک است. پردازنده فوق میتواند یکی از سه حالت پیکربندی زیر را داشته باشد :
--Graphic Co-Processor. کارت هائی از این نوع قادر به انجام هر نوع عملیات گرافیکی بدون کمک گرفتن از پردازنده اصلی کامپیوتر میباشند.
--Graphics Accelerator. تراشه موجود بر روی این نوع کارتها، عملیات گرافیکی را بر اساس دستورات صادره شده توسط پردازنده اصلی کامپیوتر انجام خواهند داد.
--Frame Buffer. تراشه فوق، حافظه موجود بر روی کارت را کنترل و اطلاعاتی را برای «مبدل دیجیتال به آنالوگ» (DAC) ارسال خواهد کرد. عملاً پردازشی توسط تراشه فوق انجام نخواهد شد.
-حافظه. نوع حافظه استفاده شده بر روی کارتهای گرافیک متغیر است. متداولترین نوع، از پیکربندی dual-ported استفاده مینماید. در کارتهای فوق امکان نوشتن در یک بخش حافظه و امکان خواندن از بخش دیگر حافظه بصورت همزمان امکان پذیر خواهد بود. بدین ترتیب مدت زمان لازم برای بازخوانی / بازنویسی یک تصویر کاهش خواهد یافت.
-Graphic BIOS. کارتهای گرافیک دارای یک تراشه کوچکBIOS میباشند. اطلاعات موجود در تراشه فوق به سایر عناصر کارت نحوه انجام عملیات (مرتبط به یکدیگر) را تبین خواهد کرد.BIOS همچنین مسئولیت تست کارت گرافیک (حافظه مربوطه و عملیات ورودی و خروجی) را برعهده خواهد داشت.
-Digital-to-Analog Converter) DAC). تبدیل کننده فوق راRAMDAC نیز میگویند. دادههای تبدیل شده به دیجیتال مستقیماً از حافظه اخذ خواهند شد. سرعت تبدیل کننده فوق تاثیر مستقیمی را در ارتباط با مشاهده یک تصویر بر روی صفحه نمایشگر خواهد داشت.
-Display Connector. کارتهای گرافیک از کانکتورهای استاندارد استفاده مینمایند.اغلب کارتها از یک کانکتور پانزده پین استفاده میکنند. کانکتورهای فوق همزمان با عرضهVGA :Video Graphic Array مطرح گردیدند.
-Computer(Bus) Connector. اغلب گذرگاه فوق از نوعAGP است..پورت فوق امکان دستیابی مستقیم کارت گرافیک به حافظه را فراهم میآورد.ویژگی فوق باعث میگردد که سرعت پورتهای فوق نسبت بهPCI چهار مرتبه سریعتر باشد. بدین ترتیب پردازنده اصلی سیستم قادر به انجام فعالیتهای خود بوده و تراشه موجود بر روی کارت گرافیک امکان دستیابی مستقیم به حافظه را خواهد داشت.
استانداردهای کارت گرافیک
اولین کارت گرافیک در سال ۱۹۸۱ توسط شرکتIBM عرضه گردید. کارت فوق بصورت تک رنگ و با نامMonochrome Display Adapters)MDAs) ارائه گردید. صفحات نمایشگری که از کارت فوق استفاده میکردند، متنی بودند. رنگ نوشته سفید یا سبز و زمینه سیاه بود. در ادامه کارتهای چهار رنگHercules Graphic Catd)HGC) ارائه گردیدند. سپس کارتهای هشت رنگColor Graphic Adapter)CGA) و کارتهای شانزده رنگEnhanced Graphic Adapter)EGA) ارائه گردیدند. تولیدکنندگانی دیگر، نظیر کمودور کامپیوترهائی را معرفی کردند که دارای کارتهای گرافیک از قبل تعبیه شده و ساخته شده در سیستم بودند. کارتهای فوق قادر به نمایش تعداد زیادی رنگ بودند.
زمانیکه شرکتIBM در سال ۱۹۸۷ کارتVideo Graphic Array)VGA) را معرفی کرد، استاندارد جدیدی در این راستا مطرح گردید. نمایشگرهایVGA قادر به ارائه ۲۵۶ رنگ و وضوح تصویر ۴۰۰ * ۷۲۰ بودند. یک سال بعد استانداردSuper Video Graphic Array)SVGA) مطرح گردید. استاندارد فوق قادر به ارائه ۱۶/۸ میلیون رنگ با وضوح تصویر ۱۰۲۴ * ۱۲۸۰ است.
کارتهای گرافیک از استانداردهای متفاوتی پیروی مینمایند. تولیدکنندگان کارت گرافیک همواره سعی در افزایش تعداد رنگ و وضوح تصویر با توجه به راهکارهای اختصاصی خود دارند. کارتهای گرافیک میبایست قادر به اتصال به سیستم باشند. کارتهای گرافیک قدیمی اغلب از طریق اسلات هایISA و یا PCI به سیستم متصل میشوند. اغلب کارتهای گرافیک جدید از پورتAGP برای اتصال به کامپیوتر استفاده مینمایند.