کامپیوتر مجموعه دستورالعمل های حداقلی
کامپیوتر مجموعه دستور العمل حداقلی(MISC)، معماری ای برای واحد پردازش مرکزی است؛ که معمولا به صورت میکروپروسسور با تعداد بسیار کمی عملیات و آپکد است؛ که با هم مجموعه دستورالعمل را تشکیل میدهند. چنین مجموعه هایی به دلیل کاهش سایز مشخص کننده های عملوند معمولا به جای ثبات پردازنده(register) بر اساس پشته هستند.
این نوع معماری ماشین پشتهای راحت تر است زیرا تمام دستورالعمل ها بر روی بالاترین ورودی های پشته عمل میکند.
از نتایج معماری پشته ای میتوان به این اشاره کرد، که به صورت کلی مجموعه دستورالعمل ها کوچکتر باعث کوچک تر و سریع تر شدن واحد رمزگشایی دستورالعمل ها شده و این باعث سریع تر شدن اجرا هر دستورالعمل میشود
مشخصات و علت این نوع طراحی[ویرایش]
جدا از تعاریف بر مبنای پشته، معماری MISC بر مبنای تعداد دستورالعمل ها پشتیبانی شده نیز تعریف میشود .
- MISC معمولا دارای ۳۲ دستوالعمل یا کمتر میباشد؛ که NOP (کد)، RESET کد و CPUID کد بالاجماع به خاطر ویژگی ها پایه ای که دارند؛ جز دستورالعمل ها نمیباشند.
- ۳۲ دستورالعمل بیشترین تعداد مجاز دستورالعمل برای MISC میباشد اگرچه ۸ یا ۱۶ دستورالعمل به مفهوم "دستورالعمل ها حداقلی" نزدیک تر است.
- یک سیپییو MISC نمیتواند مانند محاسبات بدون مجموعه دستورالعمل ۰ دستورالعمل داشته باشد.
- یک سیپییو MISC نمیتواند مانند کامپیوتر های تک دستورالعملی، تنها یک دستورالعمل داشته باشد.
- دستورالعمل ها سیپییو به طور پبشفرض نباید مجموعه وسیعی از ورودی ها را پشتیبانی کند، بنابراین معمولا از سیپییو های ۸ بیتی یا ۱۶ بیتی استفاده میشود.
- اگر یک سیپییو داری اناکس بیت باشد به احتمال زیاد یک رایانه با دستورهای پیچیده(CISC) یا یک رایانه کم دستور(RISC) در نظر گرفته میشود.
- تراشههای MISC معمولاً فاقد هرگونه محافظت از حافظه سختافزاری هستند، مگر اینکه دلیل خاصی برای داشتن این ویژگی وجود داشته باشد.
- اگر یک سیپییو داری یک زیر سیستم ریزبرنامهسازیشده باشد، MISC نیست.
- تنها حالت آدرسدهی که برای سیپییو MISC مجاز است بارگیری(load) و ذخیره سازی(store) است؛ مانند سیپییو های RISC.
- سیپییو های MISC معمولا بین 64KB تا 4GB حافظه آدرسپذیر در دسترس دارند؛ اما معمولا کم تر از یک مگابایت طراحی میشوند
همچنین، خطوط لوله دستورالعمل MISC معمولاً بسیار ساده هستند. به طور کلی خط لوله (رایانه)، پیشبینیکننده پرش، اجرای خارج از ترتیب، تغییر نام ثبات و اجرای پیش بینانه نشان میدهد که سیپییو از دسته MISC نیست.
به طور کلی سیپییو های یک بیتی منسوخ شدند(MISC و OISC نیستند)، اولین کامپیوتر نانولوله کربنی یک کامپیوتر یک بیتی با یک دستورالعمل است و فقط 178 ترانزیستور دارد؛ بنابراین احتمالا ساده ترین سیپییو ساخته شده(بر اساس تعداد ترانزیستور) است.
تاریخچه[ویرایش]
برخی از اولین رایانههای دیجیتالی که با مجموعههای دستورالعمل پیادهسازی شدند، طبق تعریف مدرن MISC بودند.
در میان این کامپیوترهای مختلف، تنها ILLIAC و ORDVAC دارای مجموعه دستورالعملهای سازگار بودند.
- منچستر بیبی (دانشگاه منچستر، انگلستان) اولین اجرای موفقیت آمیز برنامه ذخیره شده خود را در 21 ژوئن 1948 انجام داد.
- ماشین حساب خودکار ذخیره سازی الکترونیکی (EDSAC، دانشگاه کمبریج، انگلستان) اولین کامپیوتر ذخیره الکترونیکی کاربردی بود (مه 1949)
- منچستر مارک 1 (دانشگاه ویکتوریا منچستر، انگلستان) از منچستر بیبی توسعه یافت (ژوئن 1949)
- کامپیوتر خودکار تحقیقات علمی و صنعتی مشترک المنافع (CSIRAC، شورای تحقیقات علمی و صنعتی) استرالیا (نوامبر 1949)
- رایانه خودکار متغیر گسسته الکترونیکی (EDVAC، آزمایشگاه تحقیقات بالستیک، آزمایشگاه محاسبات در زمین آزمایش آبردین 1951)
- رایانه خودکار متغیر گسسته (ORDVAC، دانشگاه ایلینویز در اوربانا-شامپین) در آبردین پرووینگ گراند، مریلند (تکمیل در نوامبر 1951)
- ماشین IAS در دانشگاه پرینستون (ژانویه 1952)
- Maniac I در آزمایشگاه علمی لس آلاموس (مارس 1952)
- MESM اولین آزمایش خود را در 6 نوامبر 1950 در کییف انجام داد
- کامپیوتر خودکار ایلینوی (ILLIAC) در دانشگاه ایلینوی، (سپتامبر 1952)
کامپیوترها با برنامه ذخیره شدهی اولیه[ویرایش]
- IBM SSEC این توانایی را داشت که دستورالعمل ها را به عنوان داده در نظر بگیرد؛ این کامپیوتر در 27 ژانویه 1948 به طور عمومی نشان داده شد. امتیاز آن در 28 آپریل 1953 به آمریکا داده شد. با این حال کاملا الکتریکی نبوده و الکترومکانیکی به حساب میآمد. در این کامپیوتر به دلیل حافظه محدود دستورالعمل ها از روی نور کاغذی خوانده میشد.
- منچستر بیبی، توسط دانشگاه ویکتوریا منچستر، اولین کامپیوتر کاملا الکترونیکی بود که یک برنامه ذخیره شده را اجرا کرد. پس از اجرای یک برنامه تقسیم ساده و برنامه ای برای نشان دادن اینکه دو عدد نسبت به هم اول هستند، یک برنامه فاکتورگیری را به مدت 52 دقیقه در 21 ژوئن 1948 اجرا کرد.
- یکپارچهساز عددی الکترونیکی و رایانه (ENIAC) برای اجرا بهعنوان رایانهای اولیه با برنامه ذخیرهشده فقط خواندنی (با استفاده از جدولهای تابع برای حافظه فقط خواندنی برنامه (ROM) اصلاح شد و در 16 سپتامبر 1948 رونمایی شد و برنامه ای توسط آدل گلدستاین برای فون نویمان اجرا شد
- .کامپیوتر باینری خودکار (BINAC) برخی از برنامه های آزمایشی را در فوریه، مارس و آوریل 1949 اجرا کرد، اگرچه تا سپتامبر 1949 تکمیل نشد.
- منچستر مارک 1 از پروژه منچستر بیبی توسعه یافت. یک نسخه متوسط از Mark 1 برای اجرای برنامه ها در آوریل 1949 در دسترس بود، اما تا اکتبر 1949 تکمیل نشد.
- ماشین حساب خودکار ذخیره سازی الکترونیکی (EDSAC) اولین برنامه خود را در 6 می 1949 اجرا کرد.
- کامپیوتر خودکار متغیر گسسته الکترونیکی (EDVAC) در آگوست 1949 تحویل داده شد، اما مشکلاتی داشت که باعث شد تا سال 1951 نتواند به طور منظم کار کند
- .کامپیوتر خودکار تحقیقات علمی و صنعتی مشترک المنافع(CSIRAC، سابق CSIR Mk I ) اولین برنامه خود را در نوامبر 1949 اجرا کرد.
- استانداردهای کامپیوتر اتوماتیک شرقی (SEAC) در آوریل 1950 نشان داده شد.
- Pilot ACE اولین برنامه خود را در 10 می 1950 اجرا کرد و در دسامبر 1950 رونمایی شد.
- استانداردهای وسترن اتوماتیک کامپیوتر (SWAC) در جولای 1950 تکمیل شد.
- Whirlwind در دسامبر 1950 تکمیل شد و در آوریل 1951 مورد استفاده قرار گرفت.
- اولین ERA Atlas (بعدا the commercial ERA 1101/UNIVAC 1101) در دسامبر 1950 نصب شد.
نقاط ضعف طراحی[ویرایش]
نقطه ضعف MISC این است که دستورالعمل ها وابستگی متوالی بیشتری دارند، و این باعث میشود موازیسازی در سطح دستورالعمل کاهش یابد.
معماری MISC با برخی ویژگی های برخی از زبان های برنامه نویسی مانند استفاده از پشته توسط زبان برنامهنویسی فورث و ماشین مجازی جاوا اشتراکات زیادی دارند. همه اینها در موازی سازی کامل در سطح دستورالعمل ضعیف هستند.
سیپییو های قابل توجه[ویرایش]
احتمالاً موفق ترین MISC از نظر تجاری، معماری اصلی ترنسپوتر INMOS بود که واحد ممیز شناور نداشت. با این حال، بسیاری از ریزکنترلگر 8 بیتی که برای برنامه های کاربردی کامپیوتری تعبیه شده، نوعی MISC هستند.
هر فضاپیمای STEREO شامل دو سیپییو MISC P24 و دو سیپییو MISC CPU24 است.