24 януари 2016 г.

История на компютрите

Предшественици на електронния компютър

Съвременните компютри възникват в резултат на съчетаването на две технологии, които се развиват самостоятелно в продължение на столетия – автоматизацията на изчисленията и програмируемостта.
Първите устройства за изчисления – сметалата, се появяват през Древността, като са известни още от Шумер в средата на III хилядолетие пр.н.е. През II-I век пр.н.е. са създадени механични устройства, предназначени за астрономически и навигационни изчисления – широко използваната астролабия и по-редкият и сложен механизъм от Антикитера. През I век египетският инженер Херон конструира механичен театър, задвижван със сложна система от въжета, който изпълнява продължаващо 10 минути представление. В началото на XVII век е изобретена сметачната линия, която остава широко използвана до масовото навлизане на електронните калкулатори през XX век.

Първият механичен калкулатор е създаден през 1641 г. от френския математик Блез Паскал, като няколко негови образци са запазени до днес. През 1673 г. немският математик Готфрид Лайбниц представя в Парижката академия усъвършенствана конструкция, която е първата машина, извършваща четирите математически действия. Ключов елемент в нея бил стъпаловиден валяк, представляващ цилиндър с десет зъба, всеки от които с различна дължина, чрез който именно са реализирани операциите умножение и деление.

През 1799 г. френският механик Жозеф Мари Жакард конструира тъкачен стан, използващ перфокарти за управление на работния процес, които през 20-ти век ще бъдат широко използвани за въвеждане на данни в първите поколения компютри. С него през 1801 г. на техническо изложение в Париж Жакард за първи път демонстрира автоматизирано управление на работен процес. По-късно са разработени и други програмируеми механични устройства, като механични играчки и музикални кутии.

Конструираният от французина Шарл Ксавие Тома дьо Колмар аритмометър през 1821 г. става първият серийно произвеждан калкулатор – около 100 броя годишно, бивайки достатъчно здрав и надежден за ежедневна употреба.   

В периода 1812 – 1822 г. английският математик Чарлз Бабидж конструира машина за автоматизирана обработка на таблица от числови данни, за която получава златен медал от Астрономическото общество на Великобритания. Тъй като резултатите от работата на машината не били пригодни за по-нататъшна обработка, Бабидж започва работа върху машина, която да изпълнява функциите на универсален изчислител. Наследство от неговата работа са над 200 чертежа, в които са изобразени около 50 000 детайла и около 4000 пояснения към тях. Проектираната от Бабидж машина има следните блокове: 
- устройство за запазване на цифровата информация
- устройство, в което се извършват операциите върху числата
- устройство, което управлява последователността от операции с числата 
- устройство за въвеждане и извеждане на числата 

Или с други думи всички основни блокове формиращи архитектурата на съвременните компютри. С въвеждането на управляващото устройство Бабидж става автор на фундаменталния принцип на програмното управление, че процесът на обработка на информация се осъществява от друга информация (програма или софтуер), специално предназначена за това.

Принос към развитието на изчислителните машини има Херман Холерит, който в края на 19-ти и началото на 20-ти век проектира система за въвеждане на набор от символи върху перфокарта, която Холерит използва за автоматизиране на изчислителната дейност по преброяване на населението на САЩ.

Първи компютри

През 1936 г. англичанинът Алън Тюринг теоретично разработва принципите, на които се основава универсалната изчислителна машина (т.нар. „машина на Тюринг“), като подобни резултати постигат и американците Емил Пост и Алонсо Чърч, както и германецът Г. Гедел (1934 – 36 г.)
През 1938 г. в Масачузетския технологичен университет Клод Шенън (Той е автор на книгата "Теория на игрите") за първи път демонстрира, че двупозиционните превключвателни елементи (независимо дали релета, електронни лампи или все още неизобретените транзистори) могат да бъдат използвани за извършване на математическите и логически операции на т. нар. булева алгебра, т.е. да обработват числа, изразени в двоична бройна система.
Междувременно вследствие на развитието на технологиите в електротехниката и електрониката през първите три десетилетия на 20-ти век става възможно и конструирането на първите немеханични изчислителни машини.
В периода 1936 – 1938 г. германецът Конрад Цузе конструира машината Z-1, изградена с електромагнитни релета, в която за въвеждане на данните е използвана клавиатура, а за извеждането им – лампи. В периода до края на 1939 г. Цузе разработва машината Z-2, в която устройството за въвеждане на данни работело с перфорирана 35-милиметрова кинолента, а през 1941 г. завършва и първата универсална изчислителна машина Z-3, която била използвана във военната индустрия при проектирането на немските самолети и ракети.
През 1940 г. Стибиц създава BEL-1 (изградена с електромагнитни релета) – първата изчислителна машина, която можела да работи с комплексни числа. Впоследствие Стибиц конструира и машините BEL-2 (1942 г.) и BEL-5 (1947 г.)  Поради ниската надеждност на релетата Стибиц вгражда в конструкциите първите диагностични схеми за откриване на грешки.
През август 1944 г. Хауърд Айкен представя в Харвардския университет машината MARC-1 (изградена с електромагнитни релета), която работила в продължение на 15 години. Впоследствие Айкен конструира и машината MARC-2.
Първата изцяло електронна (без движещи се елементи) изчислителна машина е конструирана от професора по физика в университета в Айова Джон Атанасов. В периода 1936 – 41 г. той и асистентът му Клифърд Бери разработват ABC – компютър на Атанасов-Бери, предназначен да решава системи линейни уравнения с 30 неизвестни. Входните данни – десетични числа, се въвеждали от стандартна перфокарта на фирмата IBM, след което се преобразували в 51-разредни двоични числа. Операционният и управляващият блок били изградени с около 300 електронни лампи. Паметта представлявала 32 набора от по 51 кондензатора (или 32 51-битови машинни думи). В края на 1941 г. били завършени всички устройства, с изключение на перфокартното, което трябвало да служи и като устройство за извеждане на данните. Нападението на 7-ми декември 1941 г. на японската армия над Пърл Харбър и включването на САЩ във Втората световна война обаче прекъсва работата на Атанасов.
През 1941 г. Джон Моучли, преподавател във Висшето електротехническо училище на Мур към университета в Пенсилваня гостува на Джон Атанасов, за да се запознае с резултатите от неговата работа. С написаната от него през 1942 г. докладна записка се запознава Херман Годстайн, доцент по математика от Мичиганския университет, който като офицер по това време осъществявал връзка между училището на Мур и артилерийското управление на американската армия. Докладната на Моучли, допълнена от Джон Екерт, е предадена през юни 1943 г. във Вашингтон, което в крайна сметка довежда до договор между артилерийското управление и Пенсилванския университет за конструиране на електронна изчислителна машина.
Под ръководството на Моучли, Екерт и Годстайн, 10 инженери, 200 техници и голям брой работници и помощен персонал за две години (1943 – 45 г.) създават първата универсална действаща електронна изчислителна машина, наречена ENIAC (Electronics Numerical Integrator and Computer), работеща с десетична бройна система. Машината съдържала около 18 000 електронни лампи и 1500 релета, консумирайки около 130 kW мощност. Управлението на машината (т.е. „програмата“) обаче било твърде тромаво, тъй като представлявало комутационен панел от клеми, съединители и превключватели, което изисквало значителното време и усилия, необходими за преконфигуриране на компютъра за изпълнение на нова задача. Паметта за данни била с обем 20 машинни думи.
Работата върху ENIAC била засекретена и поради това случайно, при разговор с Голдстайн, през 1944 г. за нея разбира Джон фон Нойман. На 30 юни 1945 г. (още преди завършването на ENIAC) той публикува изследване, озаглавено „Първа чернова на доклад за EDVAC“ („First Draft of a Report on the EDVAC“)[10] , в което описва принципите на компютър със „запаметена програма“ или че програмата, както и данните, трябва да бъде представена като набор от двоични числени стойности, които да се пазят в паметта на машината и което ще позволи на машината да извършва операции с тях вместо тя да се задава чрез физическото свързване на компонентите на компютъра.
Краят на Втората световна война и разсекретяването на проектите по изграждане на изчислителни машини правят възможно през лятото на 1946 г. на конференция в Пенсилванския университет тази и други идеи да бъдат направени публично достояние.
Конструирането на EDVAC завъшва през 1950 г. Паметта на машината била изградена с ултразвукови живачни закъснителни линии, като тя е първата проектирана машина, в която е реализиран актуалният и до днес принцип за софтуерно управление на изчислителния процес.
Междувременно по проект на Морис Уилкс и под негово ръководство през 1949 г. (или една година преди EDVAC) в Кембриджския универитет във Великобритания е завършена машината EDSAC, която става първата пусната в експлоатация машина със „запаметена програма“.
Като превключващи елементи в първото поколение компютри се използват релета и електронни лампи. Въпреки че тези компоненти позволяват значително по-висока скорост на работа от по-ранните механични превключватели, по различни причини тяхната надеждност е сравнително ниска. Така например изграждането на логически схеми с последователна логика от релета изисква допълнителен хардуер за елиминиране на проблема с вибрирането на контактите при превключване. При електронните лампи този проблем не съществува, но те изискват известно време, за да достигнат работната си температурата, а след няколко хиляди работни часа катодите им се изтошават - т.е. губят термоелектронната си емисия. Проблем с дадена лампа често е изисквал диагностициране на целия процесор, за да бъде локализирана и подменена.
По изброените причини ранните електронни (лампови) компютри са като цяло по-бързи, но по-ненадеждни от електромеханичните (използващи релета) машини. При ламповите компютри, като EDVAC, средното време между два отказа е бил около 8 часа, докато релейни системи, като Mark I, са се повреждали по-рядко.[11] В крайна сметка ламповите процесори стават по-широко разпространени, тъй като значително по-голямата скорост се оказва по-важна от проблемите с надеждността.
Процесорите от това поколение работят с много по-ниска тактова честота в сравнение със съвременните микроелектронни устройства. През този период обичайните честоти на системния часовник са до около 100 kHz, като основният ограничаващ фактор е скоростта на превключващите устройства.

Дискретни транзистори и интегрални схеми


Централен процесор, памет и външна шина на DEC PDP-8/I., изградени с интегрални схеми
Устройството на компютрите се оптимизира, след като различни нови технологии улесняват създаването на по-малки и по-надеждни електронни устройства. Решаващо значение в този процес има изобретяването на транзистора през 1947 г. През 50-те и 60-те години базираните на дискретни транзистори процесори и изобщо компютри вече не разчитат на обемисти, ненадеждни и нетрайни превключващи елементи, като електронните лампи и релетата. Това дава възможност за изграждането на по-сложни и надеждни процесори, съставени от една или повече печатни платки, съдържащи отделни компоненти.
В началото на 60-те години е изобретен метод за производство на голям брой транзистори в ограничено пространство – появяват се първите интегрални схеми. Интегралната схема позволява множество транзистори да се включат в един общ полупроводников кристал, наричан чип. В компютърната техника те първоначално се използват само за много прости неспециализирани схеми, например за отделни логически елементи. Процесорите, базирани на такива елементарни интегрални схеми, обикновено се наричат устройства с ниска степен на интеграция (SSI). SSSSII интегралните схеми, използвани в компютри като Apollo Guidance Computer, обикновено съдържат по няколко десетки транзистора. Изграждането на цял процесор от  интегрални схеми изисква хиляди отделни чипове, но все пак отнема много по-малко пространство и има по-нисък разход на енергия от дотогавашните устройства с дискретни транзистори. С напредъка на микроелектрониката интегралните схеми започват да включват все повече транзистори и пасивни елементи, намалявайки броя на отделните схеми, необходими за създаване на пълен процесор. Интегралните схеми със средна (MSI) и висока степен на интеграция (LSI) съдържат вече стотици, а след това и хиляди транзистори. Така първият компютър на DEC с LSI устройство, вариант на моделаPDP-11, има процесор, изграден с всичко четири интегрални схеми.[12]
През 1964 г. IBM въвеждат компютърната архитектура System/360, в която за пръв път е въведена идеята за микрокод и стандартизиране на програмите, изпълнявани от процесорите. Дотогава повечето електронни компютри, включително такива от един и същ производител, са несъвместими и не могат да изпълняват едни и същи програми. Архитектурата System/360 става толкова популярна, че в продължение на близо две десетилетия доминира на пазара на мейнфрейм компютри.
Базираните на транзистори компютри имат няколко отчетливи предимства пред своите предшественици. Освен подобрената надеждност и по-ниската консумация на енергия, те имат и много по-високо бързодействие, поради по-краткото време на превключване на транзистора в сравнение с електронната лампа – дължащо се на по-малките междуелектродни паразитни капацитети, и на релето – поради липсата на движещи се елементи, с тяхната характерна инерционност. Благодарение на увеличената надеждност и значително по-високата скорост на превключващите елементи, през 60-те години процесорите достигат тактови честоти от десетки мегахерци. През този период се появяват и първите високоефективни векторни процесори, ранни предшественици на по-късните специализирани суперкомпютри.

Персонални компютри

Изобретяването на микропроцесорите през 70-те години на 20-ти век значително променя устройството и разширява приложението на компютрите. Появата на пазара на първия 4-битов микропроцесор – Intel 4004 през 1970 г. е последвана през 1974 г. от 8-битовия микропроцесор с широко приложение – Intel 8080, който създава предпоставките за принципно нови решения при изграждането на компютърния хардуер. Основните производители на мейнфрейм компютри и миникомпютри започват собствени разработки в посока минимизиране на размерите на дотогавашните си компютърни архитектури, създавайки микропроцесори с набори от инструкции, съвместими с използваните в по-старите им системи хардуер и софтуер. Този процес постепенно довежда до появата и масовото разпространение на персоналните компютри.
Докато по-старите модели процесори са съставени от отделни компоненти и множество интегрални схеми с ниска и средна степен на интеграция, разположени върху една или повече платки, микропроцесорът представлява самостоятелен чип, който позволява много по-голямо съкращаване на времето за превключване. Това с времето ще даде възможност микропроцесорите да достигнат тактови честоти от десетки мегахерци до над три гигахерца. Освен това с подобряването на технологиите за конструиране на транзистори в интегралните схеми техният брой започва силно да се увеличава – съответно да се увеличат функционалните възможности на процесора (както впрочем и на останалите интегрални схеми използвани в компютъра). Тази емпирична закономерност е формулирана в наблюдавания за пръв път през 60-те години закон на Мур, според който технологично постижимата плътност на разполагане на транзисторите в интегралните схеми се удвоява за 18 до 24 месеца.
Въпреки че сложността, размерът, устройството и общият вид на процесорите се е променил значително от тяхната поява насам, основните принципи на тяхното функциониране остават приблизително същите. Крайната миниатюризация на логическите елементи обаче увеличава въздействието на физични явления, като електромиграцията, а намаляването на разстоянията между тях при повишаване на тактовата честота – до критично влияние на т. нар. паразитни капацитети. Практически след 2007 г. увеличаването на изчислителната мощност на микропроцесорните системи се търси в посока увеличаване на броя на микропроцесорните ядра, разположени на един чип и работещи в паралел, т.е. валидността на закона на Мур вече е твърде спорна. Това е една от причините да се търсят алтернативни конструкции на процесори, като квантовия компютър, както и да се разширяват приложенията на паралелизма и на други методи, разширяващи класическия модел на фон Нойман, на който се подчиняват 90% от създадените досега компютри.

Няма коментари:

Публикуване на коментар