داستان عجیب پیدایش پردازندهی آرم؛ از بیاعتنایی اینتل تا فرصتطلبی اپل
بگذارید با شما روراست باشم؛ سال ۲۰۲۰ بسیار ناخوشایند بود. از هر طرف خبر بد میرسید و آنقدر اتفاقهای ناگوار دور و برمان پیش آمد که بهسختی میشد در جریان همهی آنها قرار گرفت. اما بیشتر ما توانستیم در جریان این اخبار و اتفاقات باشیم و عاملی که در این زمینه به ما کمک کرد، کامپیوترهای دستی کوچکی است که همه جا آن را همراه خود می بریم و بهطور خندهداری، آن را با نام بسیار سادهانگارانهی «گوشی موبایل» صدا میزنیم.
یکی از داستانهایی که فکر میکنم در این روزهای بد میتواند ما را سرحال بیاورد، داستانی بهشدت مرتبط با گوشی موبایل و آن هم پیدایش پردازندههای خانوادهی آرم (ARM) است. حالا که اپل از اولین کامپیوتر مک مجهز به پردازندهی آرم رونمایی کرده و اتفاقا بازخورد بسیار خوبی گرفته، وقت خوبی است تا داستان عجیب و بعید اختراع این تراشههای فوقالعاده را با هم مرور کنیم.
فرض کنید قرار است سناریویی از یک داستان واقعی بنویسید و در این سناریو، به دلایلی نامعلوم میخواهید به نام معروفترین واحد پردازندهی مرکزی اکثر گوشیهای موبایل، کنسولهای بازی، عابربانکها و هر دستگاه دیجیتال دیگر اشاره کنید؛ به احتمال زیاد سراغ یکی از سازندگان مطرح پردازنده در دنیا مثل اینتل (Intel) میروید. این انتخاب منطقی است؛ چرا که اینتل برای دنیا بسیار نامآشنا است و هیچ تولیدکنندهی فیلم یا مخاطبی با شنیدن اسم آن، از روی سردرگمی ابرو بالا نخواهد انداخت.
اما فرض کنید بهجای اینتل، در سناریوی خود اینطور بنویسید که تمام پردازندههای دستگاههای دیجیتال ساخت یک شرکت بینام و نشان، آن هم از کشوری است که در عرصهی نوآوری هایتک، اولین اسمی نیست که به ذهن مخاطب خطور میکند. و باز هم فرض کنید این پردازنده وجودش را (دست کم بهطور غیر مستقیم) مدیون یک برنامهی تلویزیونی آموزشی است. احتمالا تولیدکنندهی فیلم از شما بخواهد به جای این خیالپردازیهای بیهوده، موضوع را جدیتر بگیرید و اگر نمیخواهید این پروژه را از دست بدهید، به نفعتان است که به شرح واقعیت بپردازید.
اما این سناریو عین واقعیت است.
همه چیز از تلویزیون شروع شد
پردازندهی آرم، همان ذرهی سیلیکونی که بیش از ۱۳۰ میلیارد دستگاه را در دنیا کنترل میکند و بدون آن، مدرنیته با سر داخل تاریکی سقوط میکرد، داستان پیدایش بسیار عجیبی دارد. سفرنامهی آرم پر است از بدشانسیهایی که بعدا به فرصتهای مهمی تبدیل شد؛ مزیتهای فنی غیر منتظره که بعدها بهشدت حائز اهمیت شد؛ و تولید دستگاههایی که بعدا با شکست مفتضحانهای روبهرو شدند.
اما داستان آرم واقعا از یک برنامهی تلویزیونی شروع شد؛ برنامهای که در سال ۱۹۸۲ با نام «برنامهی کامپیوتر» از شبکهی بیبیسی پخش میشد. این برنامه تلاشی بود از سمت شبکهی بیبیسی تا مردم بریتانیا را با طرز کار این دستگاههای جدید و تجملی که شبیه ماشین تحریری بود که به تلویزیون متصل میشد، آشنا کند.
این برنامه در واقع بخشی از پروژهای بزرگتر در راستای سوادآموزی کامپیوتری بود که دولت بریتانیا و بیبیسی برای آمادهسازی مردم خود برای پذیرفتن تحول حاصل از کامپیوتر شخصی در آمریکا، کلید زدند.
اما برخلاف اغلب برنامههای تلویزیونی آن زمان، بیبیسی میخواست از کامپیوتری در برنامهی خود استفاده کند تا با آن بتواند مفاهیم بنیادین کامپیوتری را توضیح دهد و به مخاطب خود کمی هم برنامهنویسی بیسیک آموزش دهد. این مفاهیم شامل گرافیک و صدا، قابلیت اتصال به شبکهی تله تکست، سنتز گفتار و حتی کمی هوش مصنوعی ابتدایی بود. برای همین، کامپیوتری که برای این برنامه لازم داشتند، بایست کامپیوتر قابل قبولی میبود. در واقع خواستهی تولیدکنندگان برنامه آنقدر بالا بود که هیچ دستگاهی که آن زمان در بازار پیدا میشد، آنها را راضی نمیکرد.
برای همین بیبیسی درخواست خود را به گوش صنعت جوان کامپیوتر بریتانیا رساند که در آن زمان تحت کنترل سینکلر (شرکتی که ثروتش را از تولید ماشین حساب و تلویزیون کوچک به دست آورد) بود. اما به جای سینکلر، یک شرکت بسیار کوچک استارتاپ موفق شد این معاملهی بسیار سودآور را از آنِ خود کند: Acorn Computers.
داستان موفقیت شرکت Acorn
ایکورن شرکتی مستقر در کمبریج بود که که کارش را در سال ۱۹۷۹ با توسعهی سیستمهای کامپیوتری که ابتدا برای اسلاتماشین (دستگاههای مخصوص شرطبندی) و بعد برای کامپیوترهای کوچک تفننی مبتنی بر پردازندههای 6502 بود، شروع کرد. پردازندهی 6502 از همان خانوادهای بود که در Apple II، آتاری 2600 و کامپیوتر Commodore 64 به کار میرفت. به اهمیت طراحی این پردازنده در ادامهی مقاله خواهیم پرداخت؛ پس نام آن را به خاطر بسپارید.
در آن زمان، ایکورن کامپیوتر خانگی به نام «اتم» تولید کرده بود و وقتی این فرصت استثنایی از سمت بیبیسی مطرح شد، این شرکت شروع به برنامهریزی برای تبدیل نسل بعدی اتم به دستگاهی به نام BBC Micro کرد.
کامپیوتر اتم ایکورن
فهرست قابلیتهای درخواستی بیبیسی آنقدر زیاد و پرتوقع بود که باعث شد دستگاه تولیدی نهایی برای عصر خودش بهشدت قدرتمند باشد؛ البته نه به اندازهی طراحی اصلی ایکورن برای جانشین اتم که ابتدا قرار بود دو پردازنده داشته باشد: پردازندهی قابل اطمینان 6502 که امتحانش را پس داده و یک پردازندهی ۱۶بیتی که هنوز در مورد آن تصمیمگیری نشده بود.
مقالههای مرتبط:
ایکورن در نهایت از این پردازندهی دوم صرف نظر کرد؛ اما سیستم رابطی که اسمش تیوب بود و اتصال پردازندههای اضافه به دستگاه را ممکن میکرد، در این پروژه نگه داشت (این بخش هم در ادامهی مقاله اهمیت بیشتری خواهد یافت).
مهندسی BBC Micro با آن طراحی بسیار پیشرفته و مدرن واقعا ایکورن را از مرزهای خود فراتر برد. یکی از نتایج این فرا رفتن از مرز، تصمیمات مهندسی بیمنطق اما کارآمدی مانند شبیهسازی جای انگشت در مادربرد به کمک رزیستور بود تا دستگاه بتواند کار کند.
کامپیوتر BBC Micro
هیچ کس هرگز نفهمید چرا این دستگاه تنها با فشار انگشت در نقطهای مشخص روی مادربرد کار میکرد؛ اما تیم مهندسی ایکورن وقتی توانست لمس انگشت را با رزیستور شبیهسازی کند، از حل مشکل حل راضی بود و دیگر به دنبال دلیل این اتفاق عجیب نگشت.
توسعهی BBC Micro موفقیت بزرگی برای ایکورن به دست آورد؛ بهطوریکه در دههی ۱۹۸۰، کامپیوتر آموزشی غالب در بریتانیا بود.
احتمالا هرکسی که خواندن این مقاله را تا اینجا ادامه داده است، میداند که دههی ۱۹۸۰ در تاریخ کامپیوتر بسیار حائز اهمیت است. پیسی IBM در سال ۱۹۸۱ عرضه شد و به این ترتیب استاندارد لازم برای تولید کامپیوتر شخصی را تا دهها سال بعد تعیین کرد. اپل لیسا که در سال ۱۹۸۳ عرضه شد، پیشدرآمدی بود برای مک و انقلاب بزرگی در رابط کاربری گرافیکی ویندوز-آیکون-موس محسوب میشد که بر دنیای کامپیوتر چیره شد.
ایکورن درحالیکه نظارهگر این پیشرفتهای شگفتانگیز در صنعت کامپیوتر بود، متوجه شد برای ماندن در بازار رقابت، به چیزی بسیار قدرتمندتر از پردازندهی کهنهکار اما قابل اطمینان 6502 برای استفاده در دستگاههای آینده نیاز دارد. ایکورن در آن زمان پردازندههای ۱۶ بیتی زیادی را مورد آزمایش قرار داده بود؛ از جمله 65816، انواع ۱۶ بیتی 6502، موتورولا 68000 که در اپل مکینتاش به کار رفته بود و پردازندهی کمیابتری به اسم National Semiconductor 32016؛ اما هیچیک از این پردازندهها به کار ایکورن نمیآمد و این شرکت در نهایت مجبور شد به اینتل روی بیاندازد تا بتواند از پردازندههای Intel 80286 در معماری جدیدش استفاده کند.
اینتل البته این درخواست را کاملا نادیده گرفت.
کسبوکار «ریسک»ی
ایکورن وقتی با بیمحلی اینتل روبهرو شد، این تصمیم سرنوشت ساز را گرفت تا پردازندههای خودش را طراحی کند. این شرکت با الهام از Western Design Center (شرکتی که در حال تولید نسخههای جدید 6502 بود) و با انجام مطالعات گوناگونی دربارهی یک مدل طراحی جدید پردازنده به نام ریسک (RISC)، تصمیم گرفت در تولیدات خود گام بلندی به سمت جلو بردارد. در این پروژه مهندس سوفی ویلسون و استیو فربر نقش کلیدی داشتند.
پردازندههای RISC به این دلیل «کامپیوتر کمدستور» (Reduced Instruction Set Computing) نامیده شدهاند که در مقابل پردازندهی CISC، «کامپیوتری با دستورهای پیچیده» (Complex Instruction Set Computing) قرار میگیرند. شاید بد نباشد توضیحی بسیار خلاصه و ساده دربارهی این دو مدل پردازنده بدهیم.
پردازندهها قابلیت پیروی از گروهی از دستورها و عملیات دارند. مجموعه دستورالعملهای پردازندههای CISC طولانی و پیچیده است و به آنها این امکان را میدهد تا تسکهای پیچیده را در طول چندین «چرخهی ساعتی» پردازنده اجرا کنند. یعنی این پیچیدگی در واقع درون سختافزار تراشه گنجانده شده است و به همین خاطر کد نرمافزاری آن میتواند پیچیدگی کمتری داشته باشد. به این ترتیب، کدنویسی برای دستگاههایی با پردازندهی CISC نیاز به دستورالعملهای کمتری دارد، اما تعداد چرخههایی که پردازنده برای اجرای این دستورالعملها نیاز دارد، افزایش میدهد.
همانطور که احتمالا حدس زدید، RISC درست بر عکس این است: دستورالعملهای کمتر، سختافزار کمتر روی تراشه و هر دستورالعمل میتواند در یک چرخهی ساعتی اجرا شود. در نتیجه، کدی که برای این پردازنده نوشته میشود، طولانیتر و بهظاهر ناکارآمدتر است و برای اجرا به حافظهی بیشتری نیاز دارد؛ اما در عوض تراشه سادهتر است و میتواند دستورالعملها را سریعتر اجرا کند.
ایکورن برای طراحی پردازندهی RISC گزینهی مناسبی بود؛ زیرا تراشهی 6502 که بیشترین آشنایی را با آن داشت، اغلب گفته میشود شبیه طراحی نمونهی اولیهی RISC است. در واقع تراشهی جدید ایکورن آنقدر «ریسک»ی بود که به نظر میرسد سوفی ویلسون هنگام طراحی مجموعهی دستورالعملها برای پردازندهی جدید این شرکت، کاملا از طراحی مفهومی 6502 الهام گرفته باشد.
سوفی ویلسون به همراه وزیر کنث بیکر در زمان رونمایی از کامپیوتر BBC Micro در سال ۱۹۸۱
پردازندهی جدید مبتنی بر RISC ایکورن از رابط تیوب BBC Micro بهعنوان بستر آزمایش استفاده کرد و آن را Acorn RISC Machine یا همان ARM نامید. در این زمان بود که شرکت VLSI، تأمینکنندهی تراشههای ایکورن، شروع به تولید پردازندهی آرم کرد؛ البته ابتدا فقط برای بخش تحقیق و توسعهی ایکورن و کمی بعد نسخهی تولیدی آن به نام ARM2 را روانهی بازار کرد.
در سال ۱۹۸۷، اولین کامپیوتر شخصی مبتنی بر RISC با عنوان Acorn Archimedes معرفی شد که از پردازندهی ARM2 استفاده میکرد. پردازندهی آرم با آنکه دارای ۲۴۵ هزار ترانزیستور کمتر از پردازندهی 286 اینتل بود، عملکردی بهمراتب بهتر از تراشهی بزرگ اینتل داشت.
کامپیوتر Archimedes با سیستمعامل Arthur، دستگاهی منعطف، سریع و قدرتمند بود. برای زمان خودش گرافیک خوبی داشت، با رابط کاربری گرافیکی و تعدادی دمو و بازی با کیفیت پایین که واقعا سرعت این کامپیوتر را به لطف پردازندهی باریک و سریعش، به رخ میکشید.
در آن زمان، اولین دستگاه مبتنی بر معماری آرم با نرخ عملکرد چندين برابر پردازندهی 80286 اینتل، مدعی سریعترین کامپیوتر عصر خود بود.
هرچه کمتر، بهتر
نبود ترانزیستور در آرم گواه سادگی نسبی این پردازنده بود و در نتیجهی آن، تراشه مصرف برق کمتری داشت و نسبت به هر دستگاه دیگری در آن زمان، موقع پردازش خیلی کمتر داغ میکرد.
این دو ویژگی مفید کاملا تصادفی و بدون برنامهریزی قبلی بودند؛ چون ایکورن این پردازنده را برای دستگاه رومیزی طراحی میکرد. همین مصرف پایین برق و تولید حرارت کمتر، آرم را به بدیهیترین گزینهی ممکن برای گوشی موبایل تبدیل کرد. اواخر دههی ۱۹۸۰ بود که اپل در بازار به جستوجوی پردازندهای مشغول شد که بتواند تنها به کمک باتری AA، از پس تبدیل دستخط به متن برآید و همچنین بتواند رابط کاربری گرافیکی اجرا کند و حین این پردازش، آنقدر داغ نکند که نگه داشتنش در دست غیر ممکن شود. دستگاه دستی که اپل برایش دنبال پردازنده بود همان پلتفرم نیوتن بود که با آنکه اولین دستیار دیجیتال شخصی به حساب میآید، در فهرست بدترین محصولات اپل قرار دارد؛ به هر حال، فقط هستهی باریک و سریع آرم میتوانست از پس چنین دستگاهی برآید.
در پی این همکاری، اپل و شریک تولیدکنندهی تراشهی ایکورن یعنی VLSI، با همکاری یکدیگر بخش آرم را به شرکت جدیدی به نام Advanced RISC Machines تبدیل کردند و به این ترتیب نام آرم در تاریخ ماندگار شد. در این همکاری و با منابع قابل توجه اپل، آرم موفق به توسعهی هستهی ARM6 شد. پردازندهی ARM610 اولین تراشهی تولیدی مبتنی بر این هسته بود که نسخهی ۲۰ مگاهرتزی آن در سال ۱۹۹۳ در پلتفرم نیوتن اپل به کار رفته بود.
پلتفرم تبدیل دستخط به متن نیوتن اپل در کنار آیفون
نیوتن شکست مفتضحانهای در کارنامهی اپل بود؛ آنقدر که در سریال سیمپسونها هم قابلیت پرایراد تشخیص دستخط آن مورد تمسخر قرار گرفت؛ اما وقتی به عقب نگاه میکنیم، میتوان متوجه شد که این پلتفرم چیزی بیشتر از اینها بود: دستگاه قابل حمل در دست، باتریخور و با صفحهی نمایش لمسی که از پردازندهی آرم استفاده میکرد. امروزه همین توصیفات برای میلیاردها گوشی هوشمند که در سراسر دنیا دائما در حال استفاده هستند، به کار میرود.
در ادامهی موفقیتهای پردازندههای خانوادهی آرم، از پردازندهی ARM610 در نسل جدید کامپیوترهای Acorn Archimedes و لپتاپ عجیب مبتنی بر نیوتن به اسم eMate استفاده شد. در سال ۲۰۰۱، آیپاد اپل و کنسول Game Boy Advance نینتندو از پردازندهای با هستهی ARM7 استفاده کردند. در سال ۲۰۰۴، نمایشگر دوگانهی Nintendo DS هم از یک جفت پردازندهی مبتنی بر معماری آرم بهره برد. بعد در سال ۲۰۰۷، اپل اولین آیفون را با پردازندهی ARM11 به بازار عرضه کرد. از آن لحظه به بعد، همهی دستگاههای دیجیتال از پردازندهی مبتنی بر معماری آرم استفاده کردند.
سریال سیمپسونها قابلیت پر از ایراد تبدیل دستخط به متن نیوتن را به سخره گرفت
به این ترتیب پردازندههای آرم انتخاب اول گوشیهای هوشمند، چه اپل و چه هر برند دیگر شدند و هر دستگاه هوشمندی به جز لپتاپ، کامپیوتر رومیزی و سرور اینتل، از این پردازندهها استفاده میکرد. حالا با عرضهی کرومبوک و لپتاپ و کامپیوتر رومیزی مک مبتنی بر معماری آرم، به نظر میرسد این پردازنده سرانجام به نقطهی شروع خود، یعنی کامپیوترهای رومیزی بازگشته است.
سالهای زیادی از این ماجرا میگذرد؛ اما داستان پیدایش آرم به خاطر عجیب، بعید و بدون برنامهریزی بودنش ارزش یادآوری دارد. این پردازنده امروز بر دنیا چیره شده است؛ اما شروع فروتنانهاش باعث میشود متفاوتتر و دوستانهتر از غولهای بیاحساس صنعت و انحصارطلبانی چون اینتل و AMD به نظر برسد.
حالا که به پایان این مقاله رسیدیم، بیایید یک بار دیگر این داستان عجیب را مرور کنیم: چون بریتانیاییها احساس میکردند از انقلاب کامپیوتر عقب ماندهاند، تصمیم گرفتند دربارهی کامپیوترها برنامهی تلویزیونی بسازند. برای این کار به کامپیوتر نیاز داشتند؛، پس یک شرکت انگلیسی کوچک و تازهکار برای این منظور یک کامپیوتر مناسب تولید کرد. وقتی این شرکت کوچک نیاز داشت برای کامپیوترش پردازندهی سریعتری بسازد و چون اینتل حاضر نشد جواب تلفنش را بدهد، بر آن شد که خود دست به کار شود. خیلی اتفاقی، پردازندهی ساخت این شرکت مصرف برق کمتری داشت و حرارت کمتری تولید میکرد و به همین خاطر، توجه اپل را به خود جلب کرد. اپل از این پردازنده در پلتفرم نیوتن که مفتضحانهترین شکست در تاریخ پروژههای این شرکت بود، استفاده کرد. از این جا به بعد البته اپل رفت تا کل دنیا را به تسخیر خود درآورد.
شاید هنوز به حقیقت این سناریو شک دارید و فکر میکنید با الهام از فیلمهای وس اندرسون نوشته شده است، اما تکتک کلمات آن عین واقعیت است.
اما اگر واقعیت چیزی جز یک شبیهسازی نباشد، مطمئنم این دنیای شبیهسازیشده هم مبتنی بر معماری آرم است!