گاهی اوقات کارتهای گرافیکی جدید نسبت به نسل پیش از خود تفاوتهای ساختاری زیادی ندارند و سازندگان تراشهها ترجیح میدهند با چند بهروزرسانی کلی نسل جدیدی از پردازندههای گرافیکی را معرفی کنند اما زمانی هم این کارتها با تراشههایی وارد بازار میشوند که ساختار آنها تغییر پیدا کرده و پیشرفتهای اساسی در آنها انجام شده است. کارتهای جیفورس نسل ششم و همچنین نسل جدید تراشههای گرافیکی AMD شامل همین تغییرات شدهاند و پیشرفتهای قابل توجهی در معماری آنها دیده میشود.
انویدیا در نسل چهارم تراشههای گرافیکی که با مدلهایی مانند GTX 480 کار خود را آغاز کرد ساختار جدیدی به نام فرمی (Fermi) را توسعه داد. فرمی نام خود را از یک فیزیکدان ایتالیایی گرفته بود که در زمینه انرژی اتمی صاحبنام بود اما تراشههای انویدیا تنها حرارت و مصرف بسیار بالا را از این نام به ارث بردند و عملا نسل چهارم با موفقیت قابل قبولی روبهرو نشد، هر چند بعد از معرفی مدلهای اولیه، با ورود کارتهای متوسط، انویدیا توانست این مشکلات را تا حدود زیادی کاهش دهد. در نسل پنجم، تراشههای انویدیا قدرت زیادی پیدا کردند و علاوه بر بهبود مصرف انرژی و افزایش کارایی در زمینههایی مانند پردازشهای عمومی توسط تراشه یا GPGPU نیز عملکرد قابل توجهی نشان دادند، به طوری که تا مدتها تراشه GTX 580 عنوان قویترین تراشه گرافیکی را با خود همراه داشت. در تراشههای گرافیکی نسل ششم، انویدیا با تحولی دیگر در ساختار تراشهها وارد میدان شده و با تغییر پلتفرم از ساختار فرمی، معماری جدیدی به نام کپلر (Kepler) را مورد استفاده قرار داده است. این تراشهها با فناوری ۲۸ نانومتری تولید میشوند و انویدیا مدعی شده است تراشههای GeForce GTX 680 سریعترین تراشههای موجود با بهترین راندمان مصرف انرژی هستند. این تراشهها با کد GK104 تولید شدهاند و البته انویدیا باز هم اعلام کرده است این تراشهها تنها یک راهحل متوسط ولی قدرتمند هستند و امسال راهحل دیگری معرفی خواهد کرد که توانایی بالاتری نسبت به این مدل دارد ولی در حال حاضر جیفورس GTX 680 قویترین تراشه برای اجرای بازیها و محتوای سهبعدی است.
مهمترین نقطه عطف این تراشهها را میتوان در راندمان مصرف انرژی آنها عنوان کرد که بیشترین کارایی را در مقابل هر یک وات مصرفشده دارند که این موضوع علاوه بر کاهش فناوریساخت به ۲۸ نانومتر، به ساختار معماری کپلر هم مربوط است.
در این بین میتوان اشارهای هم به AMD داشت که اوایل سال میلادی تراشههای قدرتمند HD 7970 را معرفی کرد که در آنها نیز راندمان مصرف انرژی بهبود پیدا کرده و البته تغییرات ساختاری زیادی در آنها انجام شده است. به عنوان مثال معماری VLIW با معماری GCN عوض شده است و کارایی بهتری در زمینه
GPGPU دارد. AMD با این معماری تلاش زیادی برای استفاده از توان کارتهای گرافیکی برای پردازشهای عمومی و محاسباتی سیستم انجام داده است تا کارت گرافیکی بتواند علاوه بر پردازش محتوای سهبعدی در سایر کاربردها نیز با cpu همراهی کند. این موضوع نکتهای است که انویدیا دو نسل پیش از این و با ساختار فرمی به طور جدی آن را دنبال کرد و حالا نیز در این زمینه مدعی است.
ساختار کپلر شباهتهای زیادی با ساختار فرمی دارد بنابراین با نگاهی به گذشته، ابتدا ساختار فرمی را توضیح میدهیم و سپس به سراغ کپلر میرویم.
ساختار فرمی
تراشههای GTX 580 دارای ۵۱۲ پردازنده جریانی (Stream Processors) هستند که انویدیا نام این پردازندهها را هستههای کودا (CUDA) گذاشته است. هستههای کودا در بلوکهایی ۳۲ عددی جای میگیرند و به آنها SM گفته میشود. چهار گروه از این SMها در یک خوشه پردازشی (کلاستر) ردیف میشوند که به این خوشه GPC گفته میشود. در نهایت چهار GPC یک تراشه با معماری GF100 را تشکیل میدهند. از این چهار واحد، دو واحد در بالا و دو واحد نیز در پایین تراشه قرار گرفتهاند و بین آنها را حافظه درونی L2 پر کرده است. این حافظه به صورت ۴۸ واحد در میان تراشه قرار گرفته و ردهبندی آنها به صورت شش بخش است که در هر کدام از آنها هشت حافظه استفاده شده است. در اطراف تراشه نیز شش واحد کنترل حافظه دیده میشود.
۱۶ واحد SM (بلوکهای ۳۲ عددی هستههای کودا) در میان چهار واحد GPC مشخص است. این SMها میتوانند در هر چرخه فرکانس ۵۱۲ دستورالعمل را اجرا کنند. در انتهای ساختار SM چهار واحد پردازش بافتی نیز قرار داده شده و علاوه بر آن در هر SM یک واحد پردازش هندسی هم وجود دارد که مجموع آنها به ۱۶ واحد میرسد. انویدیا نام این قسمت را موتور پلیمورف یا موتور چندشکلی گذاشته است. موتور PolyMorph و موتور پیکسلی Raster دو بخش مهم اجرایی در ساختار فرمی هستند که در واقع یکی از تفاوتهای مهم این کارتها با نسلهای پیشین ناشی از این دو قسمت است. موتور Raster ترکیبی از تمام روشهای پیشین برای پردازش تصویر است که شامل تنظیم لبهها و سهضلعیها، تبدیل تصاویر به بیتمپ یا نقشههای بیتی و تبدیل نقشههای دوبعدی به تصاویر سهبعدی است. این واحد در تراشههایی که دارای معماری GF100 هستند میتواند در هر چرخه فرکانس تا ۳۲ پیکسل را پردازش کند. موتور پلیمورف که انویدیا آن را برای پردازشهای هندسی اختصاص داده است، چندین فعالیت اصلی را در کارتهای گرافیکی انجام میدهد که موارد زیر از نمونههای این وظایف است:
Vertex Fetch: در تصاویری مثل سطح آب یا شعلههای آتش با وجود اینکه با یک بافت سطحی روبهرو هستیم اما این بافت ثابت نیست و حرکت دارد. به عنوان مثال امواج بسیار کوچک سطح آب یا زبانههای شعله آتش اگر به صورت بافت پردازش شوند نتیجه یک تصویر صاف و بدون جزییات خواهد بود. موتور پلیمورف پردازش این سطوح را انجام میدهد.
Tessellation: تصاویر سهبعدی از چندضلعیها تشکیل شدهاند و با کمک Tessellation یا موزاییککاری، این چندضلعیها در یک ساختار مناسب کنار هم قرار میگیرند و آماده پردازش میشوند. دلیل این امر هم پیچیدگیهایی است که برای پردازش مستقیم تصویر وجود دارد و کارتهای گرافیکی با تقسیم یک سطح به چندضلعیها کار پردازش را آسانتر میکنند. با این حال پردازش جزییات ظریفی که در برخی اجسام مانند صورت انسان دیده میشود نیاز به توان قابل توجهی از سوی کارت گرافیکی دارد. علت اینکه نام این بخش Tessellation یا موزاییککاری گذاشته شده به دلیل شیوه مشابهی است که در پرداخت گرافیکی انجام میشود و این چندضلعیها به طور مرتب در کنار یکدیگر قرار میگیرند تا تصویر نهایی تشکیل شود.
Viewport Transform: تصاویر در بازیها و نمایشهای سهبعدی همیشه تولید نمیشوند و اغلب از تصاویر از پیش طراحیشده برای نمای سهبعدی استفاده میشود که این شبهعکسها با قرار گرفتن در کنار یکدیگر تصویر نهایی را خلق میکنند. در پردازشهای گرافیکی موضوع جایگیری و چیدمان این تصاویر مهم است و این بخش توسط Viewport مدیریت میشود.
موتورهای Raster در یک تراشه با مهندسی GF110 چهار عدد هستند یعنی برای هر GPC یک موتور Raster در نظر گرفته شده در حالی که موتورهای پلیمورف در هر GPC چهار عدد هستند و مجموع آنها در یک تراشه به ۱۶ عدد میرسد. ضمنا باید توجه داشت بسیاری از این امکانات برای این تراشه یا این کارتهای گرافیکی انحصاری نیست بلکه مجموعهای از تواناییهای فراهمشده توسط نسخه یازدهم دایرکتایکس است که کارتهای مختلف توان متفاوتی در اجرای آنها دارند. قبلا در تراشههای نسل GT200 از یک موتور Raster بزرگ استفاده میشد. بهکارگیری ۱۶ موتور پلیمورف به این معنی است که امکان پردازش موازی در این حالت بیشتر است و البته باید توجه داشت مدیریت این دادهها به صورت موازی که در کانال اطلاعات قرار دارند کار آسانی نیست. GF110 علاوه بر این موارد، تکههای مختلف و اجزای کوچک تصویر را نیز بررسی میکند و در صورت لزوم آنها را به تکههای کوچکتر تبدیل خواهد کرد تا توسط چند SM به صورت همزمان پردازش شوند. در این حالت اطلاعات مرتبط با داده در حال پردازش درون هسته باقی میماند و از طریق حافظه سطح L1 در میان SMها جابهجا میشود.
معماری کپلر
در ساختار کپلر مانند قبل یک موتور GigaThreadEngine، کـنــتـرلرهای حافظه، حافظه L2 cache برای دادهها و دستورالعملها، موتور پیکسلی Raster و کلاسترهای پردازشی وجود دارد و از این نظر تفاوتی با قبل ندارند. در تراشه GTX 680 چهار واحد GPC دیده میشود که هر کدام از آنها دارای یک موتور
Raster و چندین پردازنده جریانی هستند. تا پیش از این در ساختار فرمی و قبل از آن در ساختار تسلا، خوشههای حاوی واحدهای کوچک پردازشی کودا درون تراشه، SM نامیده میشدند اما انویدیا در ساختار کپلر نام آنها را SMX گذاشته است. در فرمی چهار GPC در تراشه وجود داشت که هر کدام دارای چهار SM بودند، اکنون در ساختار کپلر در هر کدام از چهار واحد GPC دو SMX دیده میشود.
منع
.: مهنا :....
ما را در سایت .: مهنا :. دنبال می کنید
برچسب : نویسنده : مهدی و سینا mahna بازدید : 734 تاريخ : يکشنبه 12 شهريور 1391 ساعت: 17:27