مقدمه
شاید این سوال برای همه طراحان تراشههای FPGA و SoC وجود داشته باشد که چرا شرکت Xilinx تا این حد روی موضوع توسعه منبع باز یا open source سیستم ها تمرکز دارد، و چرا روز به روز حضورش در دنیای منبع باز پررنگتر میشود. اگه واقعا علاقهمند هستید، با تاریخچه حضور این غول دنیای فناوری در جوامع منبع باز آشنا بشوید، توصیه میکنم با ما همراه باشید. شرکت Xilinx سابقه بسیار طولانی در استفاده از منابع باز دارد و در چشم انداز بلند مدت خودش آینده بسیار روشن، همراه با فرصتهای فراوان ترسیم کرده است. اکنون فرصتی است تا ویدئویی را که به تازگی توسط Xilinx در کانال یوتیوب این شرکت منتشر شده با هم تماشا کنیم، در این ویدئو بسیاری از ناگفتهها و همکاریهای دامنه دار صورت گرفته در طول دو دهه گذشته به تصویر کشیده شده است. شما میتوانید، نسخه اصلی این ویدئو را در صفحه یوتیوب Xilinx و نسخه ترجمه شده آن را به صورت اختصاصی در کانال آپارات هگزالینکس یا در ادامه همین مطلب مشاهده نمایید. در ادامه خلاصهای از دلایل همکاری Xilinx با جوامع منبع باز که در این ویدئو بیان شده خدمتتان تقدیم میگردد.
جوامع منبع باز
امروزه، نرم افزارهای منبع باز تقریبا در همه جای صنعت دیده میشوند، بد نیست در ابتدا نگاهی به مهمترین نمونه آن بیندازیم.
- سیستم عامل لینوکس بهترین نمونه توسعه داده شده در جوامع منبع باز است، در ابتدا یکسری از مهترین دادههایی که از وضعیت توسعه کرنل لینوکس در سال ۲۰۱۷ توسط Linux Foundation مننشر شده است را با هم مرور میکنیم.
- لینوکس حدود ۶۲ درصد از سهم بازار محصولات مبتنی بر سیستمهای نهفته را به خودش اختصاص داده است.
- لینوکس تقریبا روی ۸۲ درصد تمام گوشی های هوشمند در جهان نصب شده است.
- لینوکس حدود ۹۰ درصد از فضای ابری عمومی در حهان را در اختیار دارد.
- از سال ۲۰۰۵ به بعد بیش از ۱۵۶۰۰ نفر در توسعه کرنل لینوکس مشارکت کردهاند که این افراد در بیش از ۱۴۰۰ شرکت متفاوت مشغول به کار بودهاند و جالب اینجاست که این افراد کار توسعه سیستم عامل را عموما از روی علاقه و بصورت رایگان انجام دادهاند.
- اما از سال ۲۰۱۷ به بعد بیش از ۸۵ درصد توسعههای صورت گرفته روی کرنل لینوکس در ازای پرداخت هزینه به توسعهدهنگان انجام شده است.
- و به عنوان یک تایید بر اهمیت لینوکس، بهتر است بدانیم که در سال ۲۰۱۷ شرکت IBM، با پرداخت ۳۴ بیلیون دلار RedHat را تصاحب کرد.
وسعت فعالیتهای منبع باز در شرکت Xilinx فراتر از حد تصور است و روز به روز هم در حال افزایش است. اگر یه نگاهی به تعداد مخازن ساخته شده در گیت هاب این شرکت بیاندازیم، به سادگی درمییابیم که از سال ۲۰۱۶ به بعد بیش از ۸۰ درصد به تعداد آنها اضافه شده است، در واقع این شرکت خودش رو متعهد میداند که در پروژههایی که انجمنهای مهم و توامند منبع باز، در آن ها فعال هستند، مشارکت کند و روز به روز سرمایه گذاری فروانی در سازمانهای فعال در این حوزه انجام میدهد. این شرکت علاوه بر مشارکت در اجرای پروژههای منبع باز در بهینه سازی و کاربرپسند کردن کدها نیز مشارکت میکند، تا جایی که رهبر و بنیان گذار پروژههای OpenAMP و PYNQ را نیز محسوب میشود.
اگر کمی به عقبتر برگردیم و نگاهی به گذشته بیاندازیم، خواهیم دید که به هیچ وجه فراگیری مفهوم منبع باز در دنیا به شکل امروزی قابل پیش بینی نبود.
تاریخچه سیستم عامل لینوکس بسیار مشابه تاریخچه حضور Xilinx در جوامع منبع باز است، زمانی که در سال ۱۹۹۱ آقای لینوس توروالدز پروژهاش را به عنوان یک دانشجو شروع کرد، به نوعی یک پروژه سرگم کننده را برای یادگیری علوم کامیوتری شروع کرده بود و هیچ آرزویی برای تبدیل آن به یک سیستم عامل کاملا حرفهای نداشت. اما با ادامه یافتن کار هر روز افراد بیشتری برای مشارکت و پیوستن به این پروژه ابراز تمایل کردند. تا اینکه در سال ۱۹۹۸ شرکتهایی همچون IBM ،Compaq و Oracle حمایت رسمی خودشون از این لینوکس رو اعلام کردند. سپس در سال ۲۰۰۱، استیو بالمر مدیرعامل وقت مایکروسافت این حرکت فراگیر به سمت منبع باز را به یک سرطان تشبیه کرد. اما در نهایت با وجود تمام مقاومتهایی که در جوامع عمومی وجود داشت، سیستم عاملی بسیار قدرتمند ظهور کرد. در سال ۲۰۱۴ توزیع اوبونتو لینوکس به رکورد ۲۲ میلیون کاربر فعال رسید و سپس در همان سال سانتیا نادلا مدیر عامل مایکروسافت در چرخشی معنا دار اعلام کرد که “مایکروسافت عاشق لینوکس” است.
تاریخچه همکاری Xilinx با جوامع منبع باز
با هم نگاهی به گذشته شرکت Xilinx میاندازیم، این شرکت خیلی زود به سمت همکاری با جوامع منبع باز حرکت کرد. با نگاهی به ارتباط بین لینوکس و Xilinx در طول ۱۸ سال گذشته، به وضوح میبینیم که لینوکس نقش بسزایی در توسعههای صورت گرفته داشته است، در سال ۲۰۰۱ زمانی که مایکروسافت تازه شروع به جدی گرفتن لینوکس کرده بود، شرکت Xilinx از لینوکس برای انجام تستهای اولیه پردازنده PowerPC400 و شبیه سازی عملکرد آن پیش از معرفی عمومی تراشه Virtex-II بود. سپس
- در سال ۲۰۰۲ شرکت همکاری مشترک خودش با مونتا ویستا را برای ارائه بورد ارزیاب ML300 آغاز کرد.
- در سال ۲۰۰۵ تیم توسعه درایور لینوکس در شرکت مستقر شد تا فرایند درایور نویسی برای IPCore ها را انجام بدهد.
- در سال های ۲۰۰۷تا ۲۰۰۸ تیم توسعه دهندگان اختصاصی شزکت در قالب تیم طراحی سیستمی و با تمرکز بر روی توسعه کرنل لینوکس برای PowerPC و MicroBlaze شکل گرفت.
- و در اواخر سال ۲۰۰۷ بزرگترین دستاورد شرکت رقم خورد و این شرکت اولین اصلاحیه نرم افزاری خود در مسیر توسعه کرنل لینوکس را ارائه کرد.
بسترهای سخت افزاری هم به اندازه عوامل نرم افزاری در شکل دهی مسیر حرکتی Xilinx تاثیرگذار بودهاند، اگر زوایه دیدمان را تغییر دهیم، به سادگی از بسترهای سخت افزاری که محرک اصلی Xilinx به سمت سیستمهای منبع باز بودند، آگاه میشویم. اشاره شد که شرکت ابتدا از لینوکس برای تست عملکرد سطح سیستم MicroBlaze و PowerPC در طول فاز تحقیق و توسعه خودش استفاده کرد، این دو محصول مهم به ترتیب در سالهای ۲۰۰۱ و ۲۰۰۲ به بازار عرضه شدند. این مسیر در سالهای بعد نیز ادامه پیدا کرد و شرکت در مسیر توسعه پلتفرمهای FPGA خودش از پردازنده PowerPC405 در تراشه Virtex-4 و از پردازنده PowerPC440 در تراشه Virtex-5 استفاده کرد. تا اینکه پلتفرمهای FPGA بالغ شدند و خانواده های SoC این شرکت یعنی Zynq 7000 و + Zynq UltraSclae و در نهایت تراشههای Versal معرفی شدند.
گام برداشتن از FPGA ها به سمت SoC ها نقطه عطفی در مسیر حرکت Xilinx در سفر هیچانانگیز منبع باز بود. معرفی Zynq 7000، مشتریان جدیدی را برای این شرکت به ارمغان آورد و اجازه داد تا شرکت وارد بازارهای جدیدی بشود که هم پیچیدگی سیستمی بالاتری داشتند و هم ملاحظات نرم افزاری بیشتری نیاز داشتند. به این ترتیب نیاز به ارائه راه حلهای اجرای نرم افزارها روی سیلکون و همینطور ارائه ابزارهایی برای دور نگه داشتن طراح از پیچیدگیهای طراحی و تسهیل فرایند توسعه به شدت احساس میشد. چون تیمهای توسعه دهنده نرم افزار روی سیستمهای نهفته نیز به جمع طراحان FPGA اضافه شده بودند. از سوی دیگر کاربران نهایی تراشههای Zynq غالبا تمایل به توسعه برنامههای خود روی بوردهای آماده داشتند و ترجیح میدانند با کمترین دانش نسبت بخش FPGA که وظیفه شتابدهی سخت افزاری الگوریتمها را به عهده داشت، روی توسعه محصول نهایی متمرکز بشوند.
در تراشه های Zynq از بخش قابل پیکره بندی برای شتاب دهی الگوریتمهای با زمان بندی محدود استفاده میشود.
در کنار مواردی که جزئیات آن ارائه شد، اجرای چند گام مهم و اتخاذ تعدادی تصمیم کلیدی با زمان بندی صحیح منجربه ثبت چند نقطه عطف در مسیر پیشرفت Xilinx گردید. این نقاط عطف نقش به سزایی در شکل دهی جایگاه امروزی Xilinx ایفا کردهاند. بعد از معرفی تراشههای مبتنی بر PowerPC و تراشههای Zynq، تصاحب استارت آپ پتالاجیکس (Petalogix) این امکان را فراهم ساخت تا ابزار پتالینوکس برای توسعه لینوکس روی Zynq مورد استفاده قرار بگیرد. علاوه بر این منابع اطلاعاتی ارزشمندی هم از تیم پتالاجیکس به Xilinx منتقل شد. در ادامه تصاحب یاکتو (Yocto)، گام مهم بعدی بود، که باعث توانمند شدن مشتریان و شرکای تجاری Xilinx در استفاده از جریانهای استاندارد کاری در حوزه منبع باز و فعالیتهای تجاری شد و در نهایت بکارگیری استراتژی جدید برای توسعه مستقیم کرنل لینوکس برای مشتریان تاثیر بسزایی در شکل دهی مسیر توسعه برنامهها روی تراشه های zynq ایفا کرد.
چشم انداز آینده از دید Xilinx
نگاه به آینده نیز بسیار امیدوارانه است و فرصت های فراوانی برای پیشرفت پیشرو دارد. از نظر Xilinx فرصت زیادی برای یاد گرفتن از پروژههای متعدد منبع باز وجود دارد. اکثر این پروژهها به صورت کاملا وسیع در سراسر دنیا دنبال میشوند و افراد توانمند زیادی در این پروژهها مشارکت میکنند. این اتفاق در حالی رخ می دهد که این افراد هرگز هم دیگر را ندیده اند، با این وجود این پروژه ها قادرند نتایج بسیار خوبی را به همراه بیاورند.
به عنوان یک شرکت در مقیاس جهانی Xilinx تصمیم دارد از این هم افزایی بزرگ به بهترین شکل استفاده کند، برای روشن تر شدن این موضوع اجازه بدهید کمی بیشتر توضیح بدهم. به طور کلی توسعه دهندگان باید اعتماد عمومی و اعتبار خودشان را در جوامع منبع باز به اثبات برسانند و بعد از اتمام طراحی به خوبی از کدهای خودشان پشتیبانی کنند و از اینکه طراحی آنها از حداقل کیفیت لازم برای ارائه به کاربران برخوردار است، اطمینان حاصل کنند. به عبارت دیگر انجام یک پروژه منبع باز پایان کار نیست و تازه ابتدای راه است. این شکل از کار باعث میشود که کدها قابلیت اطمینان بالاتری داشته باشند و ارزش نهایی آنها برای کاربران افزایش پیدا میکند.
به صورت کلی مزایای زیادی در مشارکت در توسعه کدها در پروژههای منبع باز وجود دارد. به شکل کلی افراد یا شرکتها با دریافت کدها از مخزن گیت هاب Xilinx که محل ارجاع پروژه های مورد تایید شرکت است، در کار توسعه و بهینه سازی آنها مشارکت میکنند و در نهایت قابلیتهای جدیدی را به عملکرد پایه اضافه میکنند. در مورد رهبری تکنیکی شرکت باید به این نکته اشاره کرد که قراردادن کدها معرض توسعه عمومی و در نهایت تایید شدن آنها توسط متخصصان و توسعه دهندگان معتبر باعث میشود رهبری تکنیکی Xilinx به اثبات برسد. وقتی کدها به صورت مداوم در فضای اشتراکی توسعه داده میشوند، تعداد زیادی چشم همواره بخشهای مختلف این کدها را مورد ارزیابی قرار میدهد و این باعث میشود کاری با کیفیتتر، همراه با هزینههای بهینهسازی پایینتر عرضه بشود.
شرکت Xilinx مشتریان زیادی دارد که هر کدام رنجِ وسیعی از نیارمندیها دارند، توسعه و ارائه کدها به صورت منبع باز به شکل گیری یک اکوسیستم برای پشتیبانی از محصولات میگردد و در نهایت این شیوه از کارکردن باعث میشود ویژگیهای مهم هر یک از توزیعهای لینوکس در اختیار Xilinx قرار بگیرد.
در انتها باید به این نکته اشاره کرد که برخلاف تفکر اکثر مردم، که گمان میکنند صحبت از واژه منبع باز تنها محدود به توسعههای مبتنی بر نرم افزار نیست. جالب اینجاست که شرکت Xilinx فرصتهایی در پروژههای منبع باز سخت افزاری هم برای خودش ایجاد کرده است. در سال ۲۰۱۸ دارپا پروژهای سخت افزاری به نام پروژه POSH را شروع کرد که یک پروژهِ منبع باز با هدف طراحی یک SoC و یک اکوسیستم کامل برای ارزیابی عملکرد SoC های پیچده نهایی، است، اینکار با استفاده از مجموعه از ابزارهای توسعه منبع باز برای خلق موج آینده نوآوریهای مرتبط با نیمه هادیها در ایالات متحده امریکا در حال اجرا است. علاوه بر این Xilinx در حال سرمایه گذاری و مشارکت تیمی برای اجرای شبیه سازیهای توامان RTL در محیطهای ترکیبی با استفاده از یک ابزار شبیه سازی نرم افزاری بسیار سریع به نام QEMU نیز می باشد.
جمع بندی
در این مطلب دلایل همکاری Xilinx با جوامع منبع باز را با هم مرور کردیم. حضور Xilinx در جوامع منبع باز اتفاق جدیدی نیست و در ادامه حضور در این جامعه نیز بسیار برای آینده Xilinx مهم است و جز استراتژیهای اصلی این شرکت قرار دارد. علاوه بر این شرکت برای هرچه فعالتر شدن در این حوزه هم سرمایه گذاریهای راهبردی و هم مشارکتهای فراوان انجام میدهد که نمونه بارز آن رویداد XDF هست که همه ساله برگزار میشود.
منبع : Xilinx