edsac-cover

از انیاک تا ادواک؛ تولد ایده‌ای که کامپیوترهای امروز را ساخت

زمانی که انیاک (ENIAC) به‌عنوان نخستین کامپیوتر الکترونیکی همه‌منظوره دنیا معرفی شد، رسانه‌ها و افکار عمومی در شگفتیِ قدرت پردازشی این مغز غول‌پیکر فرورفتند. اما سازندگان آن به‌خوبی می‌دانستند که این ماشین به‌دلیل ساختار برنامه‌ریزی دستی و زمان‌بر خود، راهی به آینده محاسبات ...

زمانی که انیاک (ENIAC) به‌عنوان یکی از نخستین کامپیوترهای الکترونیکی همه‌منظوره دنیا معرفی شد، رسانه‌ها و افکار عمومی در شگفتیِ قدرت پردازشی این مغز غول‌پیکر فرورفتند. اما سازندگان آن به‌خوبی می‌دانستند که این کامپیوتر به‌دلیل ساختار برنامه‌ریزی دستی و زمان‌بر خود، راهی به آینده محاسبات ندارد.

راهکار عبور از این محدودیت، تولد پروژه‌ای جاه‌طلبانه به‌نام اِدواک (Electronic Discrete Variable Automatic Computer یا به‌شکل خلاصه EDVAC) بود؛ کامپیوتری که با معرفی مفهوم برنامه ذخیره‌شده در حافظه، به تثبیت مفهومی کمک کرد که بعدها به یکی از پایه‌های مهم در شکل‌گیری معماری کامپیوترهای مدرن تبدیل شد.

محدودیت‌های انیاک و نیاز به تحول معماری

برای درک اهمیت ادواک، ابتدا باید به بستر تاریخی و فنی شکل‌گیری آن نگاه کرد. در طول جنگ جهانی دوم، آزمایشگاه تحقیقات بالستیک ارتش ایالات متحده، مسئولیت خطیر محاسبه جداول شلیک توپخانه را برعهده داشت. این محاسباتِ پیچیده و زمان‌بر، در ابتدا توسط زنان ریاضیدانی انجام می‌شد که به آن‌ها کامپیوتر می‌گفتند. با افزایش نیازهای جنگی، ارتش در سال ۱۹۴۳ قراردادی را با دانشکده مهندسی برق مور (Moore School) در دانشگاه پنسیلوانیا امضا کرد تا یک ماشین محاسبه‌گر الکترونیکی ساخته شود.

این پروژه تحت هدایت فیزیکدانی به‌نام جان ماکلی (John Mauchly) و مهندس جوانی به‌نام جی. پرسپر اِکرت (J. Presper Eckert) آغاز شد و نتیجه آن، ابداع انیاک بود. انیاک دستاوردی بی‌نظیر بود؛ سیستمی ۳۰ تنی که فضایی به وسعت ۱۷۰ متر مربع را اشغال می‌کرد، ۱۵۰ کیلووات برق مصرف می‌کرد و از بیش از ۱۸ هزار لامپ خلأ، ۷۰ هزار مقاومت و ۱۰ هزار خازن تشکیل شده بود. سرعت این کامپیوتر تقریباً بیش از هزار برابر بیشتر از ماشین‌های الکترومکانیکی هم‌عصر خود بود و می‌توانست ۵٬۰۰۰ عملیات جمع را در یک ثانیه انجام دهد.

جی. پرسپر اِکرت، از مخترعان اصلی کامپیوتر انیاک، در حال کار بر روی پنل کنترلی این دستگاه عظیم الکترونیکی.
جی. پرسپر اِکرت در حال کار با پنل کنترلی کامپیوتر انیاک. (منبع: آرشیو نظامی ایالات متحده / ویکی‌پدیا)

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

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

اِکرت برای مقابله با مشکل سوختن لامپ‌ها، استانداردهای ایمنی سخت‌گیرانه‌ای وضع کرد تا لامپ‌ها را در ولتاژی بسیار پایین‌تر از توان اسمی‌شان به‌کار بگیرد

در اوایل سال ۱۹۴۴، زمانی که انیاک هنوز در مراحل ساخت بود، اکرت و ماکلی به‌وضوح دریافتند که معماری آینده کامپیوترها نباید موازی و دهدهی باشد. آن‌ها در ژانویه ۱۹۴۴ ایده‌ای را برای یک «ماشین محاسبه‌گر مغناطیسی» مستند کردند که در آن، دستورالعمل‌های عملیاتی و جداول توابع دقیقاً در همان دستگاه حافظه‌ای ذخیره می‌شدند که اعداد و داده‌ها قرار داشتند. این مفهوم، هسته اولیه کامپیوتر ادواک به‌شمار می‌رفت.

ورود جان فون نویمان و تولد معماری برنامه ذخیره‌شده

در تابستان ۱۹۴۴، یک ملاقات تصادفی در ایستگاه قطار میان هرمان گلدستاین (Herman Goldstine)، افسر رابط ارتش در پروژه انیاک، و جان فون نویمان (John von Neumann)، ریاضیدان برجسته و از اعضای کلیدی پروژه منهتن، مسیر تاریخ محاسبات را برای همیشه تغییر داد. فون نویمان که برای محاسبات مربوط به شبیه‌سازی انفجار بمب اتم (هیدروژنی) در لوس‌آلاموس به قدرت پردازشی عظیمی نیاز داشت، مجذوب پروژه انیاک شد. او از سپتامبر ۱۹۴۴ به‌عنوان مشاور ارشد به تیم دانشکده مور پیوست.

پرتره جان فون نویمان، ریاضیدان و نظریه‌پرداز معماری کامپیوترهای مدرن
جان فون نویمان، یکی از تأثیرگذارترین چهره‌های قرن بیستم در ریاضیات و علوم کامپیوتر که مفهوم برنامه ذخیره‌شده را صورت‌بندی کرد (منبع: Wikimedia Commons)

حضور فون نویمان نقش مهمی در سازماندهی ایده‌های پراکنده اکرت و ماکلی داشت. او نگاه ریاضی‌محور را وارد طراحی سیستم کرد و به شکل‌گیری مفهوم برنامه ذخیره‌شده (Stored-program concept) کمک کرد.

بر اساس این مفهوم انقلابی، به‌جای سیم‌کشی دستی و فیزیکی برای تعیین دستورالعمل‌ها، برنامه‌ها مانند داده‌های عددی در حافظه ذخیره می‌شدند و پردازنده آن‌ها را مرحله‌به‌مرحله اجرا می‌کرد. این معماری به کامپیوتر اجازه می‌داد که دستورالعمل‌ها را به ترتیب از حافظه فراخوانی کند، آن‌ها را رمزگشایی کرده و با سرعت الکترونیکی اجرا کند.

نمودار بلوکی معماری سیستم EDVAC با بخش‌های حافظه، کنترل و پردازش
ادواک معماری عملی مبتنی بر برنامه ذخیره‌شده را به‌صورت سیستماتیک مطرح کرد (ComputerHistory)

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

طرح ادواک یکی از نخستین و اثرگذارترین توصیف‌های منسجم معماری ذخیره‌برنامه را ارائه کرد؛ هرچند خود کامپیوتر دیرتر از منچستر بیبی و EDSAC عملیاتی شد.

جنجال پیش‌نویس اول و دعوای تاریخی بر سر مالکیت فکری

تلاش‌های مفهومی تیم در بهار ۱۹۴۵ به نقطه اوج خود رسید. فون نویمان در مسیر سفرهای مداوم خود با قطار بین پرینستون و لوس‌آلاموس، یادداشت‌هایی دستی نوشت که ساختار منطقی و ریاضی این کامپیوتر جدید را با جزئیات توصیف می‌کرد. او این یادداشت‌ها را به فیلادلفیا پست کرد. گلدستاین این یادداشت‌ها را تایپ و در قالب «پیش‌نویس اولیه گزارشی درباره ادواک» (First Draft of a Report on the EDVAC) میان گروه محدودی از پژوهشگران توزیع کرد.

این سند ۱۰۱ صفحه‌ای، معماری سیستم را به ظرافتِ یک سیستم بیولوژیکی تشریح می‌کرد. فون نویمان متأثر از پژوهش‌های وارن مک‌کولوک (Warren Sturgis McCulloch) و والتر پیتس (Walter Pitts) در زمینه شبکه‌های عصبی مصنوعی، از استعاره‌هایی مانند عصب (Neuron) و اندام (Organ) برای توصیف قطعات کامپیوتر استفاده کرد.

صفحه‌ای از پیش‌نویس گزارش EDVAC نوشته جان فون نویمان
این سند ۱۰۱ صفحه‌ای نخستین توصیف رسمی از معماری برنامه ذخیره‌شده را ارائه کرد (computerhistory)

او ساختار کامپیوتر را به پنج بخش اصلی تفکیک کرد:

  • واحد مرکزی حساب (CA): برای انجام عملیات پایه ریاضی (جمع، تفریق، ضرب و تقسیم).
  • واحد کنترل مرکزی (CC): برای توالی‌یابی، فراخوانی و مدیریت اجرای دستورالعمل‌ها.
  • حافظه (M): یک فضای متمرکز برای نگهداری مشترک داده‌های عددی و کدهای برنامه.
  • واحد ورودی (I): برای انتقال اطلاعات از محیط بیرون به ماشین.
  • واحد خروجی (O): برای ثبت و نمایش نتایج محاسبات.

فون نویمان در این گزارش صراحتاً اعلام کرد که سیستم دودویی بسیار کارآمدتر از سیستم دهدهی است و طول کلمات داده‌ای را ابتدا ۲۷ بیت و سپس با در نظر گرفتن بیت‌های علامت و نوع دستور، به صورت ۳۲ بیتی پیشنهاد داد. البته این مشخصات به ماشین مفهومیِ توصیف‌شده در گزارش مربوط بود و با ادواک نهایی تفاوت داشت.

انتشار این گزارش، با وجود اهمیت علمی بی‌بدیل و تاریخ‌ساز آن، آغازگر یک مناقشه تلخ و ویرانگر شد. گلدستاین این سند را تنها با نام جان فون نویمان به‌عنوان نویسنده منتشر کرده بود. در صفحه عنوان، هیچ اشاره‌ای به‌نام اکرت، ماکلی و سایر مهندسانی که ایده‌های فنی را خلق کرده بودند، وجود نداشت.

اکرت و ماکلی که ایده‌های مهندسی آن‌ها (مانند حافظه خط تأخیر و استفاده از منطق متوالی) پایه و اساس فیزیکی این کامپیوتر بود، به‌شدت احساس خطر و خیانت کردند. از دید آن‌ها، فون نویمان تنها ایده‌های گروه را به زبان منطق ریاضی ترجمه و مکتوب کرده بود و حالا تمام اعتبار علمی به‌نام او ثبت می‌شد.

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

معماری فنی ادواک؛ عبور از مرزهای مهندسی دهه چهل

ادواک از نظر فنی یک جهش نسبت به طراحی انیاک محسوب می‌شد. درحالی‌که انیاک مجموعه‌ای عظیم از ماشین‌های حسابگر مستقل بود که به صورت فیزیکی به هم متصل شده بودند، ادواک به‌عنوان یک کامپیوتر متوالی، همگام (یعنی با هماهنگی یک ساعت مرکزی) و دودویی طراحی شد.

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

در یک معماری متوالی، داده‌ها بیت به بیت و از طریق یک کانال واحد پردازش می‌شوند. این امر اگرچه در نگاه اول کندتر از پردازش موازی به نظر می‌رسد، اما باعث کاهش پیچیدگی سخت‌افزاری و تعداد قطعات می‌شود.

همگام‌سازی اجزای سیستم نیز توسط یک کلاک مرکزی با فرکانس ۱ مگاهرتز تأمین می‌شد که تمام عملیات‌ها را در زمان‌بندی‌های دقیق کنترل می‌کرد. برای درک بهتر تفاوت‌های بنیادین این دو نسل از کامپیوترها، مقایسه زیر حائز اهمیت است:

ویژگی سیستمانیاکادواک
مبنای محاسبهدهدهیدودویی
نوع پردازشموازیمتوالی
روش برنامه‌نویسیفیزیکی / سخت‌افزاری (کابل و کلید)نرم‌افزاری (برنامه ذخیره‌شده در حافظه)
فناوری حافظه اصلیشمارنده‌های حلقه‌ای با لامپ خلأخطوط تأخیر جیوه
تعداد لامپ خلأحدود ۱۸,۰۰۰ عددحدود ۶,۰۰۰ عدد
وزن و اندازه۳۰ تن و ۱۷۰ متر مربعحدود ۷٫۸ تن و ۴۵ متر مربع

داده‌های جدول فوق نشان می‌دهد که ادواک چگونه با هوشمندی معماری، توانست ضمن افزایش انعطاف‌پذیری، ابعاد فیزیکی و مصرف انرژی را به میزان قابل توجهی کاهش دهد.

حافظه خط تأخیر جیوه

بزرگ‌ترین چالش مهندسی در ساخت کامپیوتری با معماری ذخیره‌برنامه، ابداع حافظه‌ای بود که هم‌زمان ظرفیت بالا، قیمت مناسب و سرعت کافی داشته باشد. لامپ‌های خلأ برای ساخت حافظه‌های بزرگ بسیار پرهزینه، پرمصرف و ناپایدار بودند. در اینجا بود که نبوغ اکرت به کار آمد. او با تکیه بر تجربه‌های خود در توسعه رادارهای نظامی، راه‌حلی خلاقانه به‌نام حافظه خط تأخیر صوتی (Acoustic Delay-line Memory) را پیشنهاد داد.

حافظه خط‌ تأخیر جیوه بر پایه تبدیل سیگنال‌های الکتریکی به امواج صوتی عمل می‌کرد. داده‌ها در قالب پالس‌های صوتی درون لوله‌ای از جیوه حرکت می‌کردند و به‌صورت چرخه‌ای بازتولید می‌شدند.

در ادواک، حافظه نه یک تراشه، بلکه یک جریان فیزیکی بود

این طراحی، یک راه‌حل هوشمندانه برای جایگزینی حافظه‌های پرهزینه مبتنی بر لامپ خلأ بود، اما در عوض، تأخیر ذاتی در دسترسی به داده‌ها را به معماری سیستم تحمیل می‌کرد. ادواک ۱٬۰۲۴ کلمه ۴۴ بیتی در حافظه داشت. در دستورها، این ۴۴ بیت به چهار نشانی ۱۰ بیتی و یک کد عملیات ۴ بیتی تقسیم می‌شد.

چالش برنامه‌نویسی متوالی و هنر کدنویسی بهینه

استفاده از حافظه خط تأخیر، اگرچه مشکل ظرفیت ذخیره‌سازی را با هزینه معقول حل کرد، یک چالش بنیادین جدید به‌نام تأخیر انتظار به وجود آورد. در یک ماشین متوالی مانند ادواک، پردازنده برای خواندن یک داده خاص یا یک دستورالعمل از حافظه، باید صبر می‌کرد تا امواج صوتی حامل آن بیت‌ها، از درون لوله جیوه عبور کند و به انتهای خط (محل خوانش) برسند.

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

چیدمان نامناسب دستورها می‌توانست پردازنده را صدها میکروثانیه معطل کند

برای دور زدن این محدودیت سخت‌افزاری، تکنیکی پیچیده به‌نام کدنویسی بهینه ابداع شد که در کامپیوترهای بریتانیایی مبتنی بر خط تأخیر مانند ACE (طراحی شده توسط آلن تورینگ) و EDSAC نیز مورد استفاده قرار گرفت.

برنامه‌نویسانِ این نسل از کامپیوترها نمی‌توانستند دستورالعمل‌ها را به صورت خطی و در آدرس‌های متوالی ذخیره کنند. آن‌ها باید با محاسبات دقیق ریاضی، زمان اجرای هر دستور در پردازنده را اندازه می‌گرفتند و دستور بعدی را در مکانی از حافظه قرار می‌دادند که دقیقاً در همان لحظه پایان یافتن پردازش، از لوله جیوه خارج شود.

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

بحران مدیریت در مدرسه مور و خروج نابغه‌ها

در حالی‌که معماری و مشخصات فنی ادواک روی کاغذ تکامل می‌یافت، تغییرات مدیریتی در دانشگاه پنسیلوانیا ضربه مهلکی به انسجام تیم وارد کرد. با پایان یافتن جنگ جهانی دوم، شرایط اضطراری جای خود را به بروکراسی اداری داد. در ژانویه ۱۹۴۶، ایروِن تراویس (Irven Travis) به‌عنوان مدیر تحقیقات دانشکده مور منصوب شد و تصمیم گرفت ساختار مالی و حقوقی پروژه‌ها را بازنگری کند.

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

وقتی مالکیت ایده روشن نباشد، حتی بهترین تیم‌ها هم از هم می‌پاشند

اکرت و ماکلی که اختراع انیاک و معماری پیشرفته ادواک را نتیجه نبوغ فردی خود می‌دانستند، این درخواست را صراحتاً رد کردند. از نگاه آن‌ها، این سیاست ناعادلانه بود و حق آن‌ها را برای بهره‌برداری تجاری از دانشی که خود خلق کرده بودند، سلب می‌کرد. بن‌بست در مذاکرات به استعفای رسمی اکرت و ماکلی در ۳۱ مارس ۱۹۴۶ منتهی شد.

آن‌ها نه‌تنها دانشگاه را ترک کردند، بلکه تعدادی از بهترین مهندسان ارشد پروژه را نیز با خود همراه کردند. این اعضای مستعفی، شرکت الکترونیک کنترل (Electronic Control Company) را تأسیس کردند که مدتی بعد به شرکت کامپیوتری اکرت-ماکلی (EMCC) تغییر نام داد. آن‌ها در این مسیر مستقل، کامپیوترهای پیشگامی همچون BINAC و UNIVAC I را توسعه دادند، اما خروج آن‌ها، پروژه ادواک را در بحرانی عمیق و بدون حضور طراح‌های اصلی خود رها کرد.

کلاس‌های دانشکده مور؛ انتقال دانش به سراسر دنیا

با خروج اکرت و ماکلی و کُند شدن توسعه فیزیکی ادواک، دانشکده مور برای حفظ پیشتازی آکادمیک خود دست به اقدام مهمی زد که مسیر توسعه کامپیوتر در دنیا را هموار کرد. در تابستان ۱۹۴۶، این نهاد با حمایت ارتش و نیروی دریایی، یک دوره فشرده هشت هفته‌ای با عنوان «تئوری و تکنیک‌های طراحی کامپیوترهای دیجیتال الکترونیکی» برگزار کرد که امروزه به‌نام «کلاس‌های دانشکده مور» (Moore School Lectures) شناخته می‌شود.

سه جلد از نخستین مجموعه آموزشی جامع در زمینه طراحی کامپیوترهای دیجیتال الکترونیکی (مدرسه مور، دانشگاه پنسیلوانیا، تابستان ۱۹۴۶) با عنوان تئوری و تکنیک‌های طراحی کامپیوترهای دیجیتال
این کلاس‌ها نخستین انتقال رسمی دانش طراحی کامپیوتر از محیط نظامی به فضای آکادمیک بودند (Computer History Museum)

اهمیت این کلاس‌ها در این بود که دانش انحصاری تولید کامپیوتر را از پشت درهای بسته پروژه‌های طبقه‌بندی‌شده نظامی، به محیط آکادمیک و بین‌المللی منتقل کرد

این دوره علمی که با حضور ۲۸ نفر از نخبگان و دانشمندان مدعو از سراسر ایالات متحده و بریتانیا برگزار شد، نقطه عطفی در تاریخ ارتباطات علمی بود. در این دوره ۴۸ جلسه‌ای، اساتیدی نظیر جان فون نویمان، آرتور بورکز (Arthur W. Burks) و حتی خود اکرت و ماکلی (که با وجود اختلافات، به‌عنوان استاد مدعو دعوت شده بودند)، جزئیات فنی معماری ادواک، منطق دودویی و مفهوم برنامه ذخیره‌شده را به‌طور کامل تشریح کردند.

موریس ویلکس (Maurice Wilkes)، محقق دانشگاه کمبریج، یکی از محققانی بود که پس از مطالعه پیش‌نویس فون نویمان و تأثیرپذیری از این فضای علمی، به بریتانیا بازگشت و کامپیوتر EDSAC را طراحی کرد. جالب آنکه EDSAC، به‌دلیل تمرکز بر اجرای عملی و استفاده از فناوری‌های تثبیت‌شده‌تر، در مِه ۱۹۴۹ توانست نخستین برنامه خود را با موفقیت اجرا کند و لقب یکی از اولین کامپیوترهای ذخیره‌برنامه عملیاتی در دنیا را حتی پیش از خودِ ادواک به دست آورد.

ساخت، تأخیر و استقرار در آزمایشگاه بالستیک

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

یکی از چالش‌های اساسی تیم جدید، سیستم ورودی-خروجی (I/O) بود. در طراحی جاه‌طلبانه اولیه، قرار بود ادواک از سیم‌های مغناطیسی برای ورود اطلاعات و برنامه‌ها استفاده کند. اما کلاچ‌های مغناطیسی این سیستم به‌شدت ناپایدار بودند و مدام دچار خرابی می‌شدند. تیم طراحی پس از تلاش‌های بی‌ثمر، مجبور شد این سیستم را کنار بگذارد و در سال ۱۹۵۰ از نوارهای کاغذی که فناوری کندتر اما مطمئن‌تری بودند، استفاده کند. در بهار ۱۹۵۴ تجهیزات کارت پانچ نیز به سیستم اضافه شد تا خواندن داده‌ها تسهیل شود.

کابینت‌های فلزی و پنل‌های کنترلی نیمه‌ساخته کامپیوتر ادواک در سال ۱۹۴۸، در محل کارگاه دانشکده مهندسی برق مور دانشگاه پنسیلوانیا.
کابینت‌های در حال ساخت و مونتاژ کامپیوتر ادواک در کارگاه دانشکده مور، پنسیلوانیا

مدارهای حافظه خط تأخیر جیوه و سیستم‌های منبع تغذیه نیز با ناپایداری‌های زیادی مواجه بودند. تقویت‌کننده‌های سیگنال که وظیفه بازسازی پالس‌های صوتی تضعیف‌شده در جیوه را داشتند، اغلب دچار خطا می‌شدند. این حجم از ناپایداری باعث شد تا در محافل علمی، همکاران به طعنه بگویند:

ادواک همیشه در حال تهدید کردنِ ما به کار کردن است!

همچنین تعداد لامپ‌های خلأ که در طراحی‌های فون نویمان بسیار محدودتر پیش‌بینی شده بود، در مراحل عیب‌یابی و توسعه افزایش یافت و در نهایت به مرز ۶ هزار عدد رسید.

عملکرد نهایی و خدمت به ارتش

با وجود تمامی تأخیرها، ادواک سرانجام در اوت ۱۹۴۹ به آزمایشگاه تحقیقات بالستیک تحویل داده شد. پس از گذراندن مراحل دشوار عیب‌یابی و رفع ایرادات طراحی، کامپیوتر در اواخر سال ۱۹۵۱ به‌صورت محدود وارد مدار عملیات شد و در بهار ۱۹۵۲ توانست به سطحی از پایداری برسد که روزانه بیش از ۷ ساعت کار مفید انجام دهد.

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

نوع عملیات در ادواکزمان تقریبی اجرا (میکروثانیه)
جمع / تفریق (اعداد صحیح)۸۶۴
ضرب دقیق۲٬۹۲۸
مقایسه (Compare)۶۹۶
جمع ممیز شناور (Floating point add)۹۶۰
ضرب ممیز شناور (Floating point multiply)۱٬۲۴۸

ارتش از ادواک برای حل طیف وسیعی از مسائل حیاتی استفاده کرد؛ از جمله محاسبه مسیرهای پروازی موشک‌ها، دینامیک امواج انفجار، بررسی احتمالات انهدام موشک‌های ضدهوایی، و حتی محاسبات مربوط به رهگیری و پرواز ماهواره‌ها.

تا اواخر دهه ۱۹۵۰، سیستم با دریافت به‌روزرسانی‌های سخت‌افزاری متعددی نظیر اضافه شدن یک واحد پردازش ممیز شناور در سال ۱۹۵۸ و حافظه‌های درام مغناطیسی (Magnetic drum) برای ذخیره اطلاعات بیشتر، توانست کارایی خود را ارتقا دهد.

تصویری تاریخی از کامپیوتر ادواک پس از نصب در ساختمان ۳۲۸ آزمایشگاه تحقیقات بالستیک ارتش آمریکا؛ دو تکنسین در حال کار بر روی پنل‌های کنترلی کابینت‌های غول‌پیکر و دستگاه‌های جانبی آن هستند.
نمای یکی از پنل‌های کامپیوتر ادواک در محل استقرار آن در آزمایشگاه تحقیقات بالستیک، جایی که از اوایل دهه ۱۹۵۰ به خدمت ارتش آمریکا درآمد. (منبع: Wikimedia)

در سال ۱۹۶۰، ادواک پس از چندین ارتقای سخت‌افزاری به پایداری بی‌نظیری دست یافت و روزانه بیش از ۲۰ ساعت کار می‌کرد که به طور میانگین ۸ ساعت آن بدون خطا بود. در نهایت، این کامپیوتر تاریخی در سال ۱۹۶۱ (و بنا به برخی منابع ۱۹۶۲) بازنشسته شد و جای خود را به کامپیوتر پیشرفته‌تر BRLESC داد.

میراثی فراتر از یک دهه پردازش

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

از انیاک تا ادواک، آنچه تغییر کرد صرفاً سخت‌افزار نبود، بلکه تعریف ما از محاسبه بود. اگر در نسل اول کامپیوترها، محاسبه یک فرآیند مکانیکی و وابسته به سیم‌کشی فیزیکی بود، در معماری برنامه ذخیره‌شده، محاسبه به یک مفهوم انتزاعی و قابل انتقال تبدیل شد.

معماری فون نویمان هنوز ستون فقرات دنیای دیجیتال است

این گذار، پایه‌ای شد برای دنیایی که در آن نرم‌افزار از سخت‌افزار مستقل شد و منطق محاسباتی توانست از محدودیت‌های فیزیکی ماشین‌ها فراتر برود. در این معنا، ادواک نه یک ماشین، بلکه لحظه‌ای تاریخی بود که در آن «تفکر قابل اجرا» تعریف شد.

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

ارسال دیدگاه

نشانی ایمیل شما منتشر نمی‌شود. بخش‌های ضروری با * مشخص شده‌اند.