سخت‌افزار‌های کد‌باز قسمت پنجم

توی نوشته‌های قبل (قسمت اول، دوم، سوم، چهارم) در مورد چند تا سخت‌افزار اپن‌سورس نوشتم. بیشتر این سخت‌افزارها مدارت‌الکترونیک هستند مثل OpenEGG که با آی‌سی‌های میکروکنترلر ساخته شده‌اند. شماتیک و طرح PCB و برنامه میکرو این مدارها بصورت آزاد منتشر شده اما نکته اصلی اینجاست که قطعه اصلی یعنی میکرو چه مجوزی داره! از طرفی ما داریم در مورد سخت‌افزارهای اپن‌سورس صحبت میکنیم. و واژه سخت‌افزار در درجه اول CPU و RAM و HARD و سایر قطعات رو به ذهن میاره. خوب پایه CPU یا میکروکنترلر هم به هر حال از همین مدارات ساده است دیگه! یعنی ما میتونیم یک سی‌پی‌یو طراحی کنیم و نقشه اون رو بصورت آزاد منتشر کنیم. اما مشکلی که توی طراحی CPU ها وجود داره اینه که به فرض که ما یک CPU رو طراحی کردیم با توجه به حجم بالای قطعات و فشردگی قطعات امکان ساخت CPU که برای ما وجود نداره! یعنی ما یک قطعه رو طراحی کردیم که فقط یک سری کمپانی‌های خاص مثل اینتل و IBM میتونن تولیدش کنن!

خوبه بدونیم دلیل رشد نکردن سخت‌افزارهای اپن سورس توی چند دهه اخیر هم همین موضوعه! یعنی با توجه به فشردگی و افزایش تعداد قطعات و همینطور پیچیده شدن پروسه تولید مدارت الکترونیک، فقط شرکت‌ها و کمپانی های بزرگ و آزمایشگاه‌ها میتونن این سخت‌افزارها رو تولید کنن. توی سالهای قبل شرایط به شکل دیگه بود ، مدارها ساده بود و بیشتر سخت‌افزارها رو با گیت‌ها می‌ساختن. خوب حتما ناامید شدید و فکر میکنید که دیگه امکان تولید CPU اپن‌سورس وجود نداره! اما الان شرایط فرق کرده توی آخر این پست راه‌حل تولید یک CPU رو توی خونه و بوسیله خودمون میگم. فعلا در مورد تنها CPU اپن سورسی که الان وجود داره مینویسم.

در حال حاظر ما CPU SPARC رو داریم که یک CPU متن‌بازه و بوسیله شرکت سان توسعه داده شده. طراحی این CPU بر اساس معماری RISC (ریسک تلفظ میشه) انجام شده این معماری روی ساده‌سازی دستور‌العمل‌ها تاکید داره و اینطور استدلال میکنن که ساده کردن دستورالعمل‌ها باعث افزایش کارایی میشه!

شرکت سان در سال ۲۰۰۶ CPU اسپارک رو بصورت اپن‌سورس ارائه کرد و نقشه‌ها و مدارات رو با هدف توسعه بیشتر به صورت باز در اختیار دیگران قرار داد.

ویژگی‌های سی‌پی‌یو اسپارک اینهاست:

  • معماری ۶۴ بیت: خوب معماری ۶۴ بین رو فکر کنم همه میشناسن دیگه 😀 یعنی ثبات‌ها، واحد ALU، باس داده و باس آدرس در این سی‌پی‌یو ۶۴ بیت هست. البته ما اسپارک ۳۲ بیت هم داریم که بصورت متن‌باز نیست و بصورت غیر‌آزاد منتشر شده!
  • بر پایه تکنولوژی ریسک (RISC):  یعنی سعی شده دستورالعمل‌ها تا حد ممکنه کوتاه و ساده باشه.
  • معماری SMP: یه جورایی همون مولتی‌پروسسور خودمونه. یک حافظه مشترک داریم که چند تا پردازشگرمون باهاش کار میکنن و البته سیستم‌عامل هم باید SMP رو پشتیبانی کنه.
  • عموما دارای ۱۲۸ ثبات همه منظوره: که از این تعداد ثبات ۳۲ تا بوسیله برنامه‌ها قابل استفاده است (۸ تا ثبات عمومی، و ۲۴ ثبات استک که مثلا توی توابع برگشتی استفاده میشه)
  • معماری پروسسور اسپارک طوریه که هم میشه توی embedded device ها و هم توی سرور‌های بزرگ ازش استفاده کرد.

توی سال ۲۰۰۹ کمپانی Fujitsu با استفاده از نقشه‌ها و طرح‌های اسپارک پروسسور Venus SPARC64 VIIIfx رو تولید کرد که میتونه ۱۲۸ بیلیون عملیات رو در ثانیه روی اعداد اعشاری ممیز شناور انجام بده. پس باز شدن این CPU باعث شده سرعت رشدش افزایش پیدا کنه و از طرفی بوسیله شرکت‌های متفاوت پشتیبانی بشه.

در حال حاظر تعداد خیلی زیادی از توزیع‌های لینوکس برای  SPARC آماده شدند و قابل نصب بروی سیستم‌هایی با این CPU هستند و تعداد خیلی بیشتری از توزیعها هم در حال پورت شدن به این معماری هستند. (دبیان اوبونتو و …)

خوب توی اول مطلب در این مورد گفتم که مدارات پیچیده شده و مثلا ساخت یک CPU با میلیونها ترانزیستور و خازن و مقاومت کار هر کسی نیست اما امروزه دیگه شرایط تغییر کرده و امکان تولید CPU با استفاده از تکنولوژی FPGA وجود داره. اگه خیلی ساده بخوام تعریف کنم FPGA رو میشه اینطوری گفت که ما یک آرایه از بلوک‌های گیت رو داریم که با استفاده از پروگرامر مخصوص این بلوک‌های گیت رو به هم متصل میکنیم و یا از هم جدا میکنیم. و در نتیجه یک CPU رو با بصورت سخت‌افزاری تولید میکنیم. تنها کاری که باید انجام بدیم اینه که فایل HDL رو که ساختار مدار رو داخل خودش داره به پروگرامر بدیم و CPU خودمون رو آماده تحویل بگیریم.

داخل سایت پروژه اسپارک میتونید فایل HDL این CPU رو دانلود کنید و حتی تغییرات خودتون رو توی پروژه بدید و بلاخره CPU خودتون رو تولید کنید! قدرت اپن‌سورس که میگن یعنی همین دیگه 😀

سخت‌افزار‌های باز‌متن در چند قسمت نوشته شده لیست تمام قسمت‌ها:

سخت‌افزار‌های متن‌باز قسمت اول

سخت‌افزار‌های متن‌باز قسمت دوم

سخت‌افزار‌های باز‌متن قسمت سوم

سخت‌افزارهای بازمتن قسمت چهارم

سخت‌افزارهای بازمتن قسمت پنجم

سخت‌افزارهای متن‌باز قسمت ششم

microSPARC

این نوشته در اپن سورس, تکنولوژی, علم, کامپیوتر, لینوکس ارسال و , , , , , , , , , , , , , , , , , , , , , برچسب شده است. افزودن پیوند یکتا به علاقه‌مندی‌ها.

2 پاسخ به سخت‌افزار‌های کد‌باز قسمت پنجم

  1. ابراهیم می‌گوید:

    می خواستم بگم مطالبتون واقعا حرف نداره. این یکی که معرکه بود. واقعا ممنون

  2. مهدی می‌گوید:

    ابراهیم: خواهش میکنم 😉

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *