جنبش سختافزار آزاد(2)
استالمن در اینباره میگوید: مدارها نمیتوانند مشمول copyleft گردند. چرا كه مشمول قانون كپیرایت نمیگردند. با این حال شرح ساختار مدارات كه در HDL نوشته میشوند، میتوانند توسط copyleft مورد حمایت قرار گیرند. البته این موضوع صرفاً شامل نقشهها و الگوهاست نه خود مدار. این بدان معناست كه هر كسی قانوناً میتواند توپولوژی مدار مشابهی را با ظاهری متفاوت ترسیم كند و یا شرح ساختار متفاوتی را در HDL بنویسد كه به تولید همان مدار منجر شود. از اینرو توانایی copyleft، هنگام به كارگیری آن در حوزه مدارات محدود میشود. بنابراین قراردادن شرح ساختار مدارات در HDL و طرحبندیهای مدار چاپی تحت حمایت copyleft مزایایی نیز خواهد داشت.
همانطور كه استالمن اشاره میكند مهمترین مشكل توسعه مجوز برای طراحی سختافزار آن است كه سختافزار فینفسه یك كار اشتقاقی محسوب نمیشود. در عمل، این طراحی یك كار نیست كه بتواند مورد حمایت كپیرایت قرار گیرد. به عبارت دیگر به تولید یك پیادهسازی فیزیكی از یك طراحی، كپی كردن اطلاق نمیشود.
شاید بتوان آن را پیادهسازی عمومی نامید. به هر حال این امر به معنای آن است كه یك مجوز ساده و صریح برای یك طراح سختافزاری نمیتواند از كپی های غیرشفاف آن كه در قالب پیادهسازی فیزیكی حاصل میشوند جلوگیری كند. به عنوان راهحل این مشكل پیشنهاداتی چون جایگزینی سیستم مجوزدهی با قراردادهای قانونی ارائه میشود كه البته این روشها نیز بدون ضعف و نارسایی نخواهند بود.
هم اكنون سازمانهای مختلفی در مورد توسعه مجوزهای جدید سختافزاری فعالیت میكنند و بنابراین پیش از آنكه بتوان در مورد كارآمدی سیستم مجوزدهی در این حوزه اظهارنظر كرد، باید در انتظار ظهور مجوزهای تخصصی آن بود. اما آنچه در مجموع میتوان دریافت آن است كه مضامین به كار رفته در تعاریف سختافزار آزاد كپی، بهبود و ... میتوانند اساساً با آنچه كه به واسطه پیشزمینه نرمافزاری موجود به نظر میرسند، تفاوت داشته باشند و همین موضوع دلیل تفاوت بنیادین مجوزهای نرمافزاری و سختافزاری خواهد بود.
پیش نیاز تحقیق این امر، وجود یك شبكه (در آن زمان ARPANET) و همچنین شفافیت كامل بود. به واسطه همكاری مشترك عده زیادی از طراحان و با تلفیق چند طرح روی یك ویفر، امكان تولید چیپهایی ارزان میسر شد. این شیوه به سرعت از یك مبنای اولیه در زیراكس پارك، Caltech و MIT در سراسر ایالات متحده و سپس در اروپا گسترش یافت. در آغاز، مهمترین كاربرد نرمافزار، در طراحی بود. اما برای تقویت گسترش این روش، لازم بود این نرمافزار آزاد باشد.
این موضوع پیش از به وجود آمدن بنیاد نرمافزار آزاد و GPL بود. اما بعدها نرمافزار Chipmunk به عنوان الگوی قبلی نرمافزار اصلی مید و كانوی، كه هنوز هم برای تدریس و پژوهش از آن استفاده میشود، تحت مجوز GPL ارائه شد.
با گسترش این شیوه، خیل كسانی كه قادر به طراحی IC ها بودند ، به شدت رو به فزونی نهاد و مجموعهای از نرمافزارهای اتوماسیون طراحیِ توسعهیافته در محیط دانشگاهی ، غالباً بركلی و استانفورد و البته برخی دانشگاههای اروپایی مانند Delft، ارائه شد. Magic برای طرحبندی ، SIS و Espresso برای حداقلسازی طراحی منطقی، Ocean برای طراحی چیپهای Sea - Of - Gate (نوع خاصی از چیپها) و Olympus برای پیوندها.
همه این نرمافزارها تحت مجوز آزاد ارائه میشدند. به این ترتیب ،در یك دوره زمانی ، نرمافزارهای دارای طراحی بسیار پیشرفته، نرمافزارهای آزاد بودند تا جایی كه اكنون نیز ابزارهای طراحی منبع بسته امروزی، شامل برخی از اجزای برنامههای مذكور هستند.
گذشته از این امر، بازماندگان موج اول شاهد دگرگونی فناوری بودند؛ افزایش كوچكسازی، سرعتهای كلاك بالا، تخته مدارهای چاپی چند لایه، مدارهای مبتنی بر IC های سفارشی و ... همه باعث شد تا مصائب طراحیهای آزادی كه در مقابل نمونههای غیرآزاد منسوخ و كهنه جلوه نكنند، فزونی یابد. این عوامل سبب شد تا نیمه نخست دهه نود عصر تاریك جنبش سختافزار آزاد لقب بگیرد.
با تمام این احوال، بسیاری از طراحان راه خود را به صورت مستقل ادامه دادند و گروهی نیز سرگرم كار بر روی نرمافزار ۳EDA شدند. اما از اواسط دههنود و پس از وقوع تحولات فنی و اجتماعی آن زمان، جنبش سختافزار آزاد دوباره پا گرفت.
بهعنوان برخی از مهمترین دلایل این موضوع، میتوان بهموارد زیر اشاره كرد:
لی فلسن اشتاین
بهطور قطع، هر یك از عوامل مذكور در كنار حركتهایی چون Opencores، تأثیری مثبت و به سزا بر روند پیشرفت طراحی آزاد سختافزار داشته و دارند. اما شاید بتوان نقطه عطف این جنبش را حركت یكی از غولهای رایانه در این مسیر قلمداد كرد. IBM در سال ۲۰۰۴ میلادی اعلام كرد كه معماری پردازندههای خود موسوم به Power را به یك معماری باز تبدیلخواهدكرد.
IBM در ماه مارس سال ۲۰۰۴ میلادی كنسرسیومی به نام Power.org متشكل از ۱۵ شركت را معرفی كرد كه هدف آن، توسعه استانداردهای باز برای تراشهها و سیستمهای مبتنی بر معماریPower میباشد. ناول ، ردهت و سونی از صاحب نامترین شركتهای عضو این كنسرسیوم هستند.
IBM با استراتژی به عنوان یكی از مهمترین پروژههای این ائتلاف، توسعه یك معماری مشترك مبتنی بر پردازندههای Power را برای سیستمهای گوناگون ، از سیستمهای embedded تا main frame، هدف قرار داده است.
با باز شدن معماری پردازندهها ، IBM این امكان را در اختیار دیگر توسعهدهندگان قرار میدهد تا به طراحی و تولید تراشههایی دقیقاً منطبق با نیازهای خود بپردازند.
پرازندههای Power كه مبتنی بر معماری RISC میباشند، هماكنون كارایی بالای خود را در حوزههای مختلفی چون صنعت سرگرمی، تجهیزات embedded و سرورها نشان دادهاند. اما هیچ یك از اینها به معنای موفقیت قطعیIBM نخواهند بود.
زیرا فوجیستو و سان از مدتها قبل بخشی از معماری پردازندههای sparc را به صورت باز ارائه كردهاند. اما همچنان در جذب مشتریان بیشتر و تبدیل شدن به یكی از بازیگران اصلی این حوزه ناكام ماندهاند.
در مورد IBM نیز باید تا به ثمررسیدن تلاشهای توسعهدهندگان منتظر بود. IBM اعلام كرده است كه قصد دارد معماری پردازنده نسل جدید كنسول بازی سونی، Playstation۳، را كه محصول مشترك تلاشهای این دو شركت و توشیبا میباشد را به صورت باز ارائهكند.
علاوهبر نمونههای مطرحشده در موج نوین جنبش سختافزار آزاد ، موارد متعدد دیگری نیز موجود و قابلذكر میباشد كه البته از حوصله این نوشتار خارج است. اما آنچه بیش از همه در این جا مورد تاكید قرار گرفته توجه به ماهیت اجتماعی این حركت و پیوند آن با دیگر تحولات فرهنگی است. استنتاج این واقعیت بر اساس ریشه ها وعلل تاریخی این جنبش میتواند به روشنی برخی از كاركردهای آن را نمایان سازد و سمت وسوی بخش پیموده نشده این راه را به تصویر بكشد. البته مسلم ایناستكه پیشبرد و تحقق اهداف این جنبش، مستلزم درك صحیح شرایط و نیازها ، ارائه تعاریفی دقیق و شناخت چالشهای پیش روی آن است.
شاید برای بیان تعریفی دقیق و جامع از سختافزار آزاد نیاز باشد كه این جنبش به شكلی گستردهتر و از زوایای مختلف مورد بحث و بررسی قرار گیرد. با این حال نگاهی به چرایی شكلگیری این جنبش و همچنین پیشزمینه ذهنیای كه در مورد نرمافزارهای آزاد و منبع باز وجود دارد، به ارائه دو تعریف كلی در این مورد منجر شده است. كه در ادامه آورده میشود.
پیش از ادامه این موضوع ضروری است به عبارت سختافزار باز (Open Hardware) نیز اشاره كنیم. سختافزار باز یك عبارت تجاری ثبت شده متعلق به شركت debian است و مدلی خاص و محدود از سختافزار منبعباز شمرده میشود. لازمه اطلاق سختافزار باز به یك سختافزار این است كه اولاً باید مستندات كافی یك وسیله در اختیار برنامهنویسی كه قصد نوشتن درایور برای آن را دارد قرار گیرد. ثانیاً این مستندات باید كلیه ویژگیهای اینترفیس درایور وسیله كه ممكن است هر كاربری مایل به استفاده از آنها باشد را دربربگیرد.
بنابراین تعریف، غیر از مواردی كه فراهم كردن امكان نوشتن یك درایور برای وسیله ضرورت دارد، نیازی به اعلام جزئیات on-board firmware و پیادهسازی سختافزار نیست. بنابراین در این تعریف اطلاعات محدودی از یك سختافزار باز در دسترس قرار خواهد گرفت كه میتواند در مواردی (مثلاً زمان تعمیر یك قطعه) ناكافی باشد.
برگردیم به تعاریف اصلی. همانطور كه اشارهشد، در مورد سختافزار با طراحی آزاد، موضوع بدون هزینه بودن استفاده و پیادهسازی آن مطرح نیست. به همین دلیل گروهی به جای استفاده از واژه Free از لغت Libre استفاده میكنند تا به روشنی نشان دهند كه در اینجا موضوع آزادی مطرح است، نه رایگان بودن.
در این میان عبارت سختافزار آزاد یا Free hardware كه گاهی به عنوان مترادف سختافزار منبعباز به كار برده میشود نیز به واسطه همان موضوع تعدد معانی واژه Free در زبان انگلیسی و شباهت لغوی آن با نرمافزار رایگان میتواند به این اشتباه دامن بزند. مشابه این موضوع در دنیای نرمافزار نیز مطرح است.
۱- واژه معمولاً به معنای شادكننده و مسرتبخش بهكار میرود كه شاید در اینجا منظور نویسنده كتاب ابزارهایی است كه میتوانند سودمندی خود را از طریق تاثیر عمومی و فراگیر خود در اجتماع نمایان سازند. بهعنوان مثال یك رسانه آزاد میتواند چنین ابزاری تلقی شود.
۲- TTLهاگروه خاصی از مدارهای دیجیتال هستند كه بهطور گسترده در ابزارهای الكترونیكی متنوع مورد استفاده قرار میگیرند.
۳- نرمافزارهای EDA نرمافزارهای خاصی هستند كه برای طراحی قطعات الكترونیكی، مورداستفاده قرارمیگیرند.
ارسال مقاله توسط کاربر محترم سایت: sm1372
منبع:ماهنامه شبکه
همانطور كه استالمن اشاره میكند مهمترین مشكل توسعه مجوز برای طراحی سختافزار آن است كه سختافزار فینفسه یك كار اشتقاقی محسوب نمیشود. در عمل، این طراحی یك كار نیست كه بتواند مورد حمایت كپیرایت قرار گیرد. به عبارت دیگر به تولید یك پیادهسازی فیزیكی از یك طراحی، كپی كردن اطلاق نمیشود.
شاید بتوان آن را پیادهسازی عمومی نامید. به هر حال این امر به معنای آن است كه یك مجوز ساده و صریح برای یك طراح سختافزاری نمیتواند از كپی های غیرشفاف آن كه در قالب پیادهسازی فیزیكی حاصل میشوند جلوگیری كند. به عنوان راهحل این مشكل پیشنهاداتی چون جایگزینی سیستم مجوزدهی با قراردادهای قانونی ارائه میشود كه البته این روشها نیز بدون ضعف و نارسایی نخواهند بود.
هم اكنون سازمانهای مختلفی در مورد توسعه مجوزهای جدید سختافزاری فعالیت میكنند و بنابراین پیش از آنكه بتوان در مورد كارآمدی سیستم مجوزدهی در این حوزه اظهارنظر كرد، باید در انتظار ظهور مجوزهای تخصصی آن بود. اما آنچه در مجموع میتوان دریافت آن است كه مضامین به كار رفته در تعاریف سختافزار آزاد كپی، بهبود و ... میتوانند اساساً با آنچه كه به واسطه پیشزمینه نرمافزاری موجود به نظر میرسند، تفاوت داشته باشند و همین موضوع دلیل تفاوت بنیادین مجوزهای نرمافزاری و سختافزاری خواهد بود.
پیش نیاز تحقیق این امر، وجود یك شبكه (در آن زمان ARPANET) و همچنین شفافیت كامل بود. به واسطه همكاری مشترك عده زیادی از طراحان و با تلفیق چند طرح روی یك ویفر، امكان تولید چیپهایی ارزان میسر شد. این شیوه به سرعت از یك مبنای اولیه در زیراكس پارك، Caltech و MIT در سراسر ایالات متحده و سپس در اروپا گسترش یافت. در آغاز، مهمترین كاربرد نرمافزار، در طراحی بود. اما برای تقویت گسترش این روش، لازم بود این نرمافزار آزاد باشد.
این موضوع پیش از به وجود آمدن بنیاد نرمافزار آزاد و GPL بود. اما بعدها نرمافزار Chipmunk به عنوان الگوی قبلی نرمافزار اصلی مید و كانوی، كه هنوز هم برای تدریس و پژوهش از آن استفاده میشود، تحت مجوز GPL ارائه شد.
با گسترش این شیوه، خیل كسانی كه قادر به طراحی IC ها بودند ، به شدت رو به فزونی نهاد و مجموعهای از نرمافزارهای اتوماسیون طراحیِ توسعهیافته در محیط دانشگاهی ، غالباً بركلی و استانفورد و البته برخی دانشگاههای اروپایی مانند Delft، ارائه شد. Magic برای طرحبندی ، SIS و Espresso برای حداقلسازی طراحی منطقی، Ocean برای طراحی چیپهای Sea - Of - Gate (نوع خاصی از چیپها) و Olympus برای پیوندها.
همه این نرمافزارها تحت مجوز آزاد ارائه میشدند. به این ترتیب ،در یك دوره زمانی ، نرمافزارهای دارای طراحی بسیار پیشرفته، نرمافزارهای آزاد بودند تا جایی كه اكنون نیز ابزارهای طراحی منبع بسته امروزی، شامل برخی از اجزای برنامههای مذكور هستند.
▪ موج سوم
گذشته از این امر، بازماندگان موج اول شاهد دگرگونی فناوری بودند؛ افزایش كوچكسازی، سرعتهای كلاك بالا، تخته مدارهای چاپی چند لایه، مدارهای مبتنی بر IC های سفارشی و ... همه باعث شد تا مصائب طراحیهای آزادی كه در مقابل نمونههای غیرآزاد منسوخ و كهنه جلوه نكنند، فزونی یابد. این عوامل سبب شد تا نیمه نخست دهه نود عصر تاریك جنبش سختافزار آزاد لقب بگیرد.
با تمام این احوال، بسیاری از طراحان راه خود را به صورت مستقل ادامه دادند و گروهی نیز سرگرم كار بر روی نرمافزار ۳EDA شدند. اما از اواسط دههنود و پس از وقوع تحولات فنی و اجتماعی آن زمان، جنبش سختافزار آزاد دوباره پا گرفت.
بهعنوان برخی از مهمترین دلایل این موضوع، میتوان بهموارد زیر اشاره كرد:
۱ - تغییر مقیاس IC ها
لی فلسن اشتاین
۲ - گسترش استفاده از FPGAها
۳ - گسترش بازار سیستمهای embed
۴ - گسترش اینترنت:
۵ - پررنگ شدن نقش جنبش نرمافزارآزاد در صنعت رایانه و حضور تأثیرگذار، ثابت و پایدار جامعه نرمافزارآزاد به عنوان الگویی عملی برای طراحی سختافزار آزاد.
بهطور قطع، هر یك از عوامل مذكور در كنار حركتهایی چون Opencores، تأثیری مثبت و به سزا بر روند پیشرفت طراحی آزاد سختافزار داشته و دارند. اما شاید بتوان نقطه عطف این جنبش را حركت یكی از غولهای رایانه در این مسیر قلمداد كرد. IBM در سال ۲۰۰۴ میلادی اعلام كرد كه معماری پردازندههای خود موسوم به Power را به یك معماری باز تبدیلخواهدكرد.
IBM در ماه مارس سال ۲۰۰۴ میلادی كنسرسیومی به نام Power.org متشكل از ۱۵ شركت را معرفی كرد كه هدف آن، توسعه استانداردهای باز برای تراشهها و سیستمهای مبتنی بر معماریPower میباشد. ناول ، ردهت و سونی از صاحب نامترین شركتهای عضو این كنسرسیوم هستند.
IBM با استراتژی به عنوان یكی از مهمترین پروژههای این ائتلاف، توسعه یك معماری مشترك مبتنی بر پردازندههای Power را برای سیستمهای گوناگون ، از سیستمهای embedded تا main frame، هدف قرار داده است.
با باز شدن معماری پردازندهها ، IBM این امكان را در اختیار دیگر توسعهدهندگان قرار میدهد تا به طراحی و تولید تراشههایی دقیقاً منطبق با نیازهای خود بپردازند.
پرازندههای Power كه مبتنی بر معماری RISC میباشند، هماكنون كارایی بالای خود را در حوزههای مختلفی چون صنعت سرگرمی، تجهیزات embedded و سرورها نشان دادهاند. اما هیچ یك از اینها به معنای موفقیت قطعیIBM نخواهند بود.
زیرا فوجیستو و سان از مدتها قبل بخشی از معماری پردازندههای sparc را به صورت باز ارائه كردهاند. اما همچنان در جذب مشتریان بیشتر و تبدیل شدن به یكی از بازیگران اصلی این حوزه ناكام ماندهاند.
در مورد IBM نیز باید تا به ثمررسیدن تلاشهای توسعهدهندگان منتظر بود. IBM اعلام كرده است كه قصد دارد معماری پردازنده نسل جدید كنسول بازی سونی، Playstation۳، را كه محصول مشترك تلاشهای این دو شركت و توشیبا میباشد را به صورت باز ارائهكند.
علاوهبر نمونههای مطرحشده در موج نوین جنبش سختافزار آزاد ، موارد متعدد دیگری نیز موجود و قابلذكر میباشد كه البته از حوصله این نوشتار خارج است. اما آنچه بیش از همه در این جا مورد تاكید قرار گرفته توجه به ماهیت اجتماعی این حركت و پیوند آن با دیگر تحولات فرهنگی است. استنتاج این واقعیت بر اساس ریشه ها وعلل تاریخی این جنبش میتواند به روشنی برخی از كاركردهای آن را نمایان سازد و سمت وسوی بخش پیموده نشده این راه را به تصویر بكشد. البته مسلم ایناستكه پیشبرد و تحقق اهداف این جنبش، مستلزم درك صحیح شرایط و نیازها ، ارائه تعاریفی دقیق و شناخت چالشهای پیش روی آن است.
شاید برای بیان تعریفی دقیق و جامع از سختافزار آزاد نیاز باشد كه این جنبش به شكلی گستردهتر و از زوایای مختلف مورد بحث و بررسی قرار گیرد. با این حال نگاهی به چرایی شكلگیری این جنبش و همچنین پیشزمینه ذهنیای كه در مورد نرمافزارهای آزاد و منبع باز وجود دارد، به ارائه دو تعریف كلی در این مورد منجر شده است. كه در ادامه آورده میشود.
۱ - سختافزار با طراحی آزاد (Free Hardware Design)
۲- سختافزار اپنسورس (Open Source Hardware)
پیش از ادامه این موضوع ضروری است به عبارت سختافزار باز (Open Hardware) نیز اشاره كنیم. سختافزار باز یك عبارت تجاری ثبت شده متعلق به شركت debian است و مدلی خاص و محدود از سختافزار منبعباز شمرده میشود. لازمه اطلاق سختافزار باز به یك سختافزار این است كه اولاً باید مستندات كافی یك وسیله در اختیار برنامهنویسی كه قصد نوشتن درایور برای آن را دارد قرار گیرد. ثانیاً این مستندات باید كلیه ویژگیهای اینترفیس درایور وسیله كه ممكن است هر كاربری مایل به استفاده از آنها باشد را دربربگیرد.
بنابراین تعریف، غیر از مواردی كه فراهم كردن امكان نوشتن یك درایور برای وسیله ضرورت دارد، نیازی به اعلام جزئیات on-board firmware و پیادهسازی سختافزار نیست. بنابراین در این تعریف اطلاعات محدودی از یك سختافزار باز در دسترس قرار خواهد گرفت كه میتواند در مواردی (مثلاً زمان تعمیر یك قطعه) ناكافی باشد.
برگردیم به تعاریف اصلی. همانطور كه اشارهشد، در مورد سختافزار با طراحی آزاد، موضوع بدون هزینه بودن استفاده و پیادهسازی آن مطرح نیست. به همین دلیل گروهی به جای استفاده از واژه Free از لغت Libre استفاده میكنند تا به روشنی نشان دهند كه در اینجا موضوع آزادی مطرح است، نه رایگان بودن.
در این میان عبارت سختافزار آزاد یا Free hardware كه گاهی به عنوان مترادف سختافزار منبعباز به كار برده میشود نیز به واسطه همان موضوع تعدد معانی واژه Free در زبان انگلیسی و شباهت لغوی آن با نرمافزار رایگان میتواند به این اشتباه دامن بزند. مشابه این موضوع در دنیای نرمافزار نیز مطرح است.
۱- واژه معمولاً به معنای شادكننده و مسرتبخش بهكار میرود كه شاید در اینجا منظور نویسنده كتاب ابزارهایی است كه میتوانند سودمندی خود را از طریق تاثیر عمومی و فراگیر خود در اجتماع نمایان سازند. بهعنوان مثال یك رسانه آزاد میتواند چنین ابزاری تلقی شود.
۲- TTLهاگروه خاصی از مدارهای دیجیتال هستند كه بهطور گسترده در ابزارهای الكترونیكی متنوع مورد استفاده قرار میگیرند.
۳- نرمافزارهای EDA نرمافزارهای خاصی هستند كه برای طراحی قطعات الكترونیكی، مورداستفاده قرارمیگیرند.
ارسال مقاله توسط کاربر محترم سایت: sm1372
منبع:ماهنامه شبکه