Фон Нойман 2-ро поколение. Принципите на фон Нойман за конструиране на електронен компютър

Компютърна архитектура и принципи на фон Нойман

Терминът "архитектура" се използва за описание на принципа на работа, конфигурацията и взаимното свързване на главния логически възлиКОМПЮТЪР. Архитектурае многостепенна йерархия от хардуер и софтуер, от които е изграден компютърът.

Основите на доктрината за компютърната архитектура са положени от изключителния американски математик Джон фон Нойман. Първият компютър Eniakе създадена в САЩ през 1946 г. Групата създатели включва фон Нойман, който предложи основни принципи на изграждане на компютър: преход към двоична бройна система за представяне на информация и принцип на запаметена програма.

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

Основни принципи на изграждане на компютър:

1. Всеки компютър се състои от три основни компонента: процесор, памет и устройство. вход-изход (I/O).

2. Информацията, с която работи компютърът, се разделя на два вида:

    набор от команди за обработка (програми); данни за обработка.

3. Командите и данните се въвеждат в паметта (RAM) – принцип на съхранената програма .

4. Обработката се управлява от процесора, чието управляващо устройство (CU) избира команди от RAM и организира тяхното изпълнение, а аритметично-логическото устройство (ALU) извършва аритметични и логически операции с данните.


5. Входно-изходните устройства (I/O) са свързани към процесора и RAM паметта.

Фон Нойман не само представи основните принципи на логическата структура на компютрите, но също така предложи структура, която беше възпроизведена по време на първите две поколения компютри.

Външно устройство за съхранение (ESD)

ориз. 1. Компютърна архитектура Край на формуляра,

Памет с произволен достъп (RAM)

изградена върху принципите

фон Нойман

- посока на информационните потоци; - посока на управляващите сигнали от процесора към други компютърни възли

Основите на архитектурата на изчислителните устройства, разработени от фон Нойман, се оказаха толкова фундаментални, че получиха името „архитектура на фон Нойман“ в литературата. По-голямата част от виртуалните машини днес са машини на фон Нойман.

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

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

Шината е кабел, състоящ се от много проводници. Една група проводници - шина за данниобработената информация се предава, от друга - адресна шина- адреси на памет или външни устройства, достъпни от процесора. Третата част на магистралата - контролна шина, чрез него се предават управляващи сигнали (например сигнал, че устройството е готово за работа, сигнал за започване на работа на устройството и др.).

Как работи системната шина? Вече казахме, че единица и нула битове съществуват само в главите на програмистите. За един процесор реални са само напреженията на неговите контакти. Всеки щифт отговаря на един бит и процесорът трябва да разграничи само две нива на напрежение: да/не, високо/ниско. Следователно адресът на процесора е последователност от напрежения специални контакти, наречена адресна шина. Можете да си представите, че след като напреженията са зададени на контактите на адресната шина, напреженията се появяват на контактите на шината за данни, кодирайки съхранения софтуер посочен адресномер. Тази картина е много груба, защото отнема време за извличане на данни от паметта. За да избегнете объркване, работата на процесора се контролира от специален тактов генератор. Той произвежда импулси, които разделят работата на процесора на отделни стъпки. Единицата за процесорно време е един тактов цикъл, т.е. интервалът между два импулса на тактовия генератор.

Напреженията, появяващи се на адресната шина на процесора, се наричат ​​физически адрес. IN реален режимПроцесорът работи само с физически адреси. Напротив, защитеният режим на процесора е интересен, защото програмата работи с логически адреси, а процесорът невидимо ги преобразува във физически. Windows системаизползва режим на защитен процесор. Съвременните операционни системи и програми изискват толкова много памет, че защитеният режим на процесора е станал много по-„истински“ от неговия реален режим.

Характеризира се системната шина часовник честота и битова дълбочина.Извиква се броят на битовете, предавани едновременно по шината широчина на автобуса. Тактова честотахарактеризира броя на елементарните операции за пренос на данни в секунда. Ширината на шината се измерва в битове, тактова честота– в мегахерци.


Всяка информация, предавана от процесора към други устройства чрез шината за данни, се придружава от адреспредавани по адресната шина. Това може да бъде адресът на клетка от паметта или адресът на периферно устройство. Необходимо е ширината на шината да позволява предаването на адреса на клетката с памет. Така, с думи, ширината на шината ограничава обема RAM паметКомпютър, не може да бъде по-голямо от , където n е ширината на шината. Важно е производителността на всички устройства, свързани към шината, да е постоянна. Не е разумно да имате бърз процесор и бавна памет или бърз процесор и памет, но бавен твърд диск.

ориз. 2. Схема на компютър, изграден на принципа на гръбнака

В съвременните компютри е реализиран принцип на отворена архитектура,което позволява на потребителя да сглоби необходимата му компютърна конфигурация и, ако е необходимо, да я надстрои.

КонфигурацияКомпютър се отнася до действителната колекция от компютърни компоненти, които изграждат компютър. Принципът на отворената архитектура ви позволява да променяте състава на компютърните устройства. Към информационната магистрала могат да бъдат свързани допълнителни периферни устройства, а някои модели устройства могат да бъдат заменени с други.

Хардуерно свързване на периферно устройство към опорната мрежа на физическо нивоизвършва се чрез специален блок - контролер(други имена - адаптер, платка, карта). За инсталиране на контролери на дънна платкаима специални съединители - слотове.

Софтуерното управление на работата на периферно устройство се осъществява чрез програмата - шофьор, което е компонент операционна система. Тъй като има огромно количествоТъй като има различни устройства, които могат да бъдат инсталирани на компютър, всяко устройство обикновено идва с драйвер, който взаимодейства директно с това устройство.

Компютърът комуникира с външни устройства чрез пристанища– специални конектори на задния панел на компютъра. Разграничете последователени паралеленпристанища. Серийните (COM – портове) се използват за свързване на манипулатори, модем и предаване на малки количества информация на големи разстояния. Паралелни (LPT - портове) се използват за свързване на принтери, скенери и предаване на големи количества информация към къси разстояния. Напоследък универсалните серийни портове (USB) станаха широко разпространени, към които можете да свържете различни устройства.

Основите на доктрината за компютърната архитектура са положени от изключителния американски математик Джон фон Нойман. Той участва в създаването на първия в света лампов компютър ENIAC през 1944 г., когато неговият дизайн вече е избран. По време на работата си, по време на многобройни дискусии с колегите си Г. Голдщайн и А. Беркс, фон Нойман изрази идеята за фундаментално нов компютър. През 1946 г. учените очертаха своите принципи за конструиране на компютри в вече класическата статия „Предварително разглеждане на логическия дизайн на електронните изчислително устройствоОттогава измина половин век, но изложените в него разпоредби остават актуални и днес.

Статията убедително обосновава употребата двоична системаза представяне на числа (трябва да припомним, че преди всички компютри съхраняваха обработени числа в десетична форма). Авторите убедително демонстрираха предимствата на двоичната система за техническа реализация, удобството и простотата на извършване на аритметика и логически операции. Впоследствие компютрите започнаха да обработват нечислови типове информация - текстова, графична, звукова и други, но двоичното кодиране на данните все още е информационна основавсеки съвременен компютър.

Друга наистина революционна идея, чието значение е трудно да се надценява, е принципът на „съхранената програма“, предложен от Нойман. Първоначално програмата беше зададена чрез инсталиране на джъмпери на специален пач панел. Това беше много трудоемка задача: например бяха необходими няколко дни, за да се промени програмата на машината ENIAC (докато самото изчисление не можеше да продължи повече от няколко минути - лампите се повредиха). Нойман беше първият, който осъзна, че една програма може също да бъде съхранена като поредица от нули и единици, в същата памет като числата, които обработва. Липсата на фундаментална разлика между програмата и данните позволи на компютъра да формира програма за себе си в съответствие с резултатите от изчисленията.

Фон Нойман не само представи основните принципи на логическата структура на компютъра, но също така предложи неговата структура, която беше възпроизведена през първите две поколения компютри. Основните блокове според Нойман са управляващо устройство (CU) и аритметично-логическо устройство (ALU) (обикновено обединени в централен процесор), памет, външна памет, входни и изходни устройства. Трябва да се отбележи, че външната памет се различава от входните и изходните устройства по това, че данните се въвеждат в нея във формуляра удобни за вашия компютър, но недостъпни за прякото човешко възприятие. Да, устройството е включено магнитни дисковесе отнася до външна памет, а клавиатурата е входно устройство, дисплеят и печатът са изходни устройства.

Устройство за управление и аритметично логическо устройство в модерни компютрикомбинирани в един блок - процесор, който е конвертор на информация, идваща от паметта и външните устройства (това включва извличане на команди от паметта, кодиране и декодиране, извършване на различни, включително аритметични операции, координиране на работата на компютърните възли). Функциите на процесора ще бъдат разгледани по-подробно по-долу.

Паметта (memory) съхранява информация (данни) и програми. Устройството за съхранение в съвременните компютри е „многослойно“ и включва памет с произволен достъп (RAM), която съхранява информацията, с която компютърът работи директно. дадено време(изпълнима програма, част от данните, необходими за нея, някои програми за управление) и външни устройства за съхранение (OSD) с много по-голям капацитет от RAM. но със значително по-бавен достъп (и значително по-ниска цена на 1 байт съхранена информация). Класификацията на устройствата с памет не завършва с RAM и VRAM - определени функции се изпълняват както от SRAM (памет със свръхпроизволен достъп), ROM (памет само за четене), така и от други подвидове компютърна памет.

В компютър, изграден по описаната схема, инструкциите се четат последователно от паметта и се изпълняват. Номер (адрес) на следващата клетка от паметта. от която ще се извлече следващата програмна команда се указва от специално устройство - брояч на команди в блока за управление. Наличието му също е една от характерните черти на въпросната архитектура.

Основите на архитектурата на изчислителните устройства, разработени от фон Нойман, се оказаха толкова фундаментални, че получиха името „архитектура на фон Нойман“ в литературата. По-голямата част от компютрите днес са машини на фон Нойман. Единствените изключения са определени видове системи за паралелни изчисления, в които няма програмен брояч, не е реализирана класическата концепция за променлива и има други значителни фундаментални разлики от класическия модел (примерите включват поточни и редуциращи компютри).

Очевидно значително отклонение от архитектурата на фон Нойман ще настъпи в резултат на развитието на идеята за машини от пето поколение, в които обработката на информацията се основава не на изчисления, а на логически заключения.

Принципите на фон Нойман

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

Принципът на адресиране - Структурно основната памет се състои от номерирани клетки, като всяка клетка е достъпна за процесора по всяко време. Двоичните кодове на команди и данни се разделят на единици информация, наречени думи и се съхраняват в клетките на паметта, а за достъп до тях се използват номерата на съответните клетки - адреси.

Принцип програмен контрол- Всички изчисления, предвидени от алгоритъма за решаване на задачата, трябва да бъдат представени под формата на програма, състояща се от последователност от контролни думи - команди. Всяка команда предписва някаква операция от набора от изпълнени операции компютър. Програмните команди се съхраняват в последователни клетки от паметта на компютъра и се изпълняват в естествена последователност, тоест в реда на тяхната позиция в програмата. Ако е необходимо, използвайки специални екипи, тази последователност може да бъде променена. Решението за промяна на реда на изпълнение на програмните команди се взема или въз основа на анализ на резултатите от предишни изчисления, или безусловно.

Принцип на двоично кодиране - Съгласно този принцип цялата информация, както данни, така и команди, се кодира с двоични цифри 0 и 1. Всеки тип информация се представя от двоична последователност и има свой собствен формат. Поредица от битове във формат, който има конкретно значение, се нарича поле. В цифровата информация обикновено има поле за знаци и поле за значещи цифри. В командния формат могат да се разграничат две полета: полето за код на операцията и полето за адреси.

През 1946 г. Д. фон Нойман, Г. Голдщайн и А. Беркс в своя съвместна статия очертават нови принципи за конструиране и работа на компютрите. Впоследствие на базата на тези принципи са произведени първите две поколения компютри. Има някои промени в по-късните поколения, въпреки че принципите на Нойман са все още актуални днес.

Всъщност Нойман успява да обобщи научните разработки и открития на много други учени и да формулира нещо принципно ново на тяхна основа.

Принцип на управление на програмата:Програмата се състои от набор от команди, изпълнявани от процесор в определена последователност.

Принципът на хомогенност на паметта:програмите и данните се съхраняват в една и съща памет.

Принцип на насочване:Структурно основната памет се състои от номерирани клетки. Всяка клетка е достъпна за процесора по всяко време.

Компютрите, изградени на горните принципи, са от типа фон Нойман.

Най-важната последица от тези принципи е, че сега програмата вече не е постоянна част от машината (като например калкулатор). Стана възможно лесно да промените програмата. За сравнение, програмата на компютъра ENIAC (който нямаше запаметена програма) се определяше от специални джъмпери на панела. Препрограмирането на машината може да отнеме повече от един ден (задайте джъмпери по различен начин). И въпреки че писането на програми за съвременни компютри може да отнеме години, но те работят на милиони компютри, инсталирането на програми не изисква значителна инвестиция във време.

В допълнение към горните три принципа, фон Нойман предложи принципа на двоичното кодиране -Двоичната бройна система се използва за представяне на данни и команди (първите използвани машини десетична системаразчитане). Но последващите разработки показаха възможността за използване на нетрадиционни бройни системи.

В началото на 1956 г. по инициатива на акад. С.Л. Соболев, ръководител на катедрата по изчислителна математика във Факултета по механика и математика на Московския университет, беше създаден отдел по електроника в компютърния център на Московския държавен университет и започна работа семинар с цел създаване на практически пример за цифров компютър предназначени за използване в университети, както и в лаборатории и конструкторски бюра на промишлени предприятия. Беше необходимо да се разработи малък компютър, който да бъде лесен за научаване и използване, надежден, евтин и в същото време ефективен при широк спектър от задачи. Подробно проучване в продължение на една година на наличните по това време компютри и технически възможностиТяхното внедряване доведе до нестандартно решение в създадената машина да се използва не двоичен, а троичен симетричен код, реализиращ балансирана бройна система, която Д. Кнут, двадесет години по-късно, ще нарече може би най-елегантната и, тъй като по-късно стана известно, чиито предимства бяха идентифицирани от К. Шанън през 1950 г За разлика от общоприетия двоичен код в съвременните компютри с числата 0, 1, който е по-нисък аритметично поради невъзможността за директно представяне на отрицателни числа в него, троичният код с числата -1, 0, 1 осигурява оптималната конструкция на аритметиката на числата със знак. Тройната бройна система се основава на същия позиционен принцип на кодиране на числата като двоичната система, приета в съвременните компютри, но теглото азТата позиция (цифра) в него не е равна на 2 i , а на 3 i . Освен това самите цифри не са двуцифрени (не битове), а трицифрени (трита) - освен 0 и 1 те допускат и трета стойност, която в симетрична система е -1, поради което и двете положителни и отрицателните числа могат да бъдат представени равномерно. Стойността на n-тритно цяло число N се определя подобно на стойността на n-битово цяло число:

където a i ∈ (1, 0, -1) е стойността на i-тата цифра.

През април 1960 г. бяха проведени междуведомствени тестове на прототип на компютър, наречен „Setun“. Въз основа на резултатите от тези тестове „Setun“ беше признат за първия работещ модел на универсален компютър на безлампови елементи, който се характеризира с „. висока производителност, достатъчна надеждност, малки размери и лекота на поддръжка.” „Setun”, благодарение на естествеността на троичния симетричен код, се оказа наистина универсален, лесно програмируем и много ефективен изчислителен инструмент, който се доказа положително, по-специално , като техническо средство за преподаване на изчислителна математика в повече от тридесет университета. И във Военновъздушната инженерна академия. Жуковски е реализиран за първи път в „Сетун“ автоматизирана системакомпютърно обучение.

Според принципите на фон Нойман компютърът се състои от:

· аритметично логическо устройство - ALU(англ. ALU, Arithmetic and Logic Unit), който извършва аритметични и логически операции; управляващо устройство -UU, предназначено да организира изпълнението на програми;

· устройства за съхранение (съхранение), вкл. памет с произволен достъп (RAM - първична памет) и външно устройство за съхранение (ESD); в около основна памет съхраняват се данни и програми; модул памет се състои от много номерирани клетки, всяка клетка може да бъде записана двоично число, което се интерпретира или като команда, или като данни;

· при входно/изходни устройства, които служат за пренос на данни между компютъра и външната среда, състоящи се от различни периферни устройства, които включват вторична памет, комуникационно оборудване и терминали.

Осигурява взаимодействие между процесор (ALU и контролен блок), основна памет и входно/изходни устройства с системна шина .

Компютърната архитектура на фон Нойман се счита за класическа; повечето компютри са изградени върху нея. Като цяло, когато хората говорят за архитектура на фон Нойман, те имат предвид физическото отделяне на процесорния модул от програмата и устройствата за съхранение на данни. Идея за съхранение компютърни програмив споделената памет направи възможно превръщането на компютрите в универсални устройства, които са в състояние да изпълняват широк спектър от задачи. Програмите и данните се въвеждат в паметта от входното устройство чрез аритметично логическо устройство. Всички програмни команди се записват в съседни клетки от паметта, а данните за обработка могат да се съдържат в произволни клетки. За всяка програма последната команда трябва да бъде командата за изключване.

По-голямата част от компютрите днес са машини на фон Нойман. Единствените изключения са определени видове системи за паралелни изчисления, в които няма програмен брояч, не е реализирана класическата концепция за променлива и има други значителни фундаментални разлики от класическия модел (примерите включват поточни и редуциращи компютри). Очевидно значително отклонение от архитектурата на фон Нойман ще настъпи в резултат на развитието на идеята за машини от пето поколение, в които обработката на информацията се основава не на изчисления, а на логически заключения.

2.2 Команда, командни формати

Командата е описание на елементарна операция, която компютърът трябва да изпълни.

Структура на отбора.

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

Като цяло командата съдържа следната информация:

Ø код на извършваната операция;

Ø инструкции за дефиниране на операнди или техните адреси;

Ø инструкции за поставяне на получения резултат.

За всяка дадена машина трябва да се посочи броят на двоичните битове, разпределени в инструкцията за всеки от нейните адреси и за кода на операцията, както и самите действителни кодове на операция. Броят на битовете в инструкцията, разпределен при конструирането на машина за всеки от нейните адреси, определя горната граница на броя на клетките на паметта на машината, които имат отделни адреси: ако адресът в инструкция е представен от n бита, тогава паметта за бърз достъп не може да съдържа повече от 2 n клетки.

Командите се изпълняват последователно, започвайки от началния адрес (входна точка) на изпълнимата програма, адресът на всяка следваща команда е с едно по-голям от адреса на предишната команда, ако не е била команда за прескачане.

В съвременните машини дължината на инструкциите е променлива (обикновено от два до четири байта), а начините за определяне на променливи адреси са много разнообразни.

Адресната част на командата може да съдържа например:

операнд;

адрес на операнд;

Адрес на операнд (номерът на байта, от който се намира адресът на операнд) и др.

Нека да разгледаме структурата възможни вариантиняколко типа команди.

Триадресни команди.

Двупосочни команди.

Unicast команди.

Неадресирани команди.

Разгледайте операцията за двоично добавяне: c = a + b.

За всяка променлива в паметта дефинираме условни адреси:

Нека 53 е кодът на операцията за добавяне.

В този случай триадресната командна структура изглежда така:

· Триадресни команди.

Процесът на изпълнение на командата е разделен на следните етапи:

Следващата инструкция се избира от клетката с памет, чийто адрес се съхранява в програмния брояч; съдържанието на брояча се променя и сега съдържа адреса на следващата по ред команда;

Избраната команда се предава на управляващото устройство в регистъра на командите;

Устройството за управление декриптира адресното поле на командата;

Въз основа на сигнали от контролния блок, стойностите на операндите се четат от паметта и се записват в ALU в специални операндни регистри;

Блокът за управление дешифрира кода на операцията и подава сигнал към ALU за извършване на съответната операция върху данните;

Резултатът от операцията в този случай се изпраща в паметта (при едноадресни и двуадресни компютри той остава в процесора);

Всички предишни действия се изпълняват до достигане на командата СТОП.

2.3 Компютърът като автомат

„Електронните цифрови машини с програмно управление са пример за един от най-разпространените в момента видове преобразуватели на дискретна информация, наречени дискретни или цифрови автомати“ (Глушков В.М. Синтез на цифрови автомати)

Всеки компютър работи автоматично (независимо дали е голям или малък компютър, персонален компютър или суперкомпютър). В този смисъл компютърът като автомат може да бъде описан от блоковата диаграма, показана на фиг. 2.1.

В предишните параграфи беше разгледана блоковата схема на компютър. Въз основа на блокова схемакомпютърна и машинна схема, можем да сравним блоковете на машинната верига и елементите на компютърната блокова схема.

Като изпълнителни елементи в машината са включени:

Аритметично-логическо устройство:

· памет;

· устройства за вход/изход на информация.

Управляващият елемент на машината е управляващото устройство, което всъщност осигурява автоматична работа. Както вече беше отбелязано, в съвременните изчислителни устройства основният изпълнителен елемент е процесор или микропроцесор, който съдържа ALU, памет и управляващо устройство.

Помощни устройства на машината могат да бъдат всякакви допълнителни средства, които подобряват или разширяват възможностите на машината.

Днес е трудно да се повярва, но компютрите, без които мнозина вече не могат да си представят живота си, се появиха само преди около 70 години. Един от онези, които имат решаващ принос за създаването им, е американският учен Джон фон Нойман. Той предложи принципите, на които повечето компютри работят и до днес. Нека да разгледаме как работи машината на фон Нойман.

Кратки биографични сведения

Янош Нойман е роден през 1930 г. в Будапеща, в много богато еврейско семейство, което по-късно успява да получи благородническа титла. От детството си той се отличава с изключителни способности във всички области. На 23-годишна възраст Нойман вече е защитил докторската си дисертация в областта на експерименталната физика и химия. През 1930 г. младият учен е поканен да работи в САЩ и в същото време Нойман става един от първите служители на Института за напреднали изследвания, където работи като професор до края на живота си. Научните интереси на Нойман бяха доста обширни. По-специално, той е един от създателите на компютъра квантова механикаи концепцията за клетъчните автомати.

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

Преди да разберем на кой принцип не отговаря архитектурата на фон Нойман, ще бъде интересно да разберем как ученият е стигнал до идеята за създаване на модерен тип изчислителна машина.

Експерт по математика на експлозиите и ударните вълни, фон Нойман е служил като научен консултант на една от лабораториите за изследване на боеприпасите на армията на Съединените щати в началото на 40-те години. През есента на 1943 г. той пристига в Лос Аламос, за да участва в разработването на проекта Манхатън лична покананеговият лидер Той получи задачата да изчисли силата на имплозионно компресиране на заряд на атомна бомба до критична маса. За решаването му бяха необходими големи изчисления, които първоначално бяха извършени на ръчни калкулатори, а по-късно на механични табулатори от IBM, използвайки перфокарти.

Запознах се с информация за напредъка на създаването на електронно-механични и напълно електронни компютри. Скоро той участва в разработването на компютрите EDVAC и ENIAC, в резултат на което започва да пише работата „Първи чернови на доклад за EDVAC“, която остава недовършена, в която той представя на научната общност напълно нова идеяза това каква трябва да бъде компютърната архитектура.

Принципите на фон Нойман

Компютърната наука като наука беше стигнала до задънена улица до 1945 г., тъй като всеки съхраняваше обработени числа в паметта си в 10-та форма, а програмите за извършване на операции бяха определени чрез инсталиране на джъмпери на разпределителното табло.

Това значително ограничи възможностите на компютрите. Истинският пробив бяха принципите на фон Нойман. Те могат да бъдат изразени накратко в едно изречение: преходът към двоичната бройна система и принципът на запомнената програма.

Анализ

Нека разгледаме по-подробно на какви принципи се основава класическата структура на машината на фон Нойман:

1. Преход към двоична система от десетична

Този принцип на архитектурата на Нойман позволява използването на доста прости логически устройства.

2. Програмно управление на електронен компютър

Работата на компютъра се управлява от набор от команди, изпълнявани последователно една след друга. Разработването на първите машини с програма, съхранявана в паметта, бележи началото на съвременното програмиране.

3. Данните и програмите се съхраняват заедно в компютърната памет

В същото време както данните, така и програмните команди имат еднакъв начин на записване в двоичната бройна система, така че в определени ситуации е възможно да се извършват същите действия върху тях, както върху данните.

Последици

В допълнение, архитектурата на машината Fonneyman има следните характеристики:

1. Клетките с памет имат адреси, които са номерирани последователно

Благодарение на прилагането на този принцип стана възможна употребапроменливи в програмирането. По-специално, по всяко време можете да получите достъп до определена клетка от паметта чрез нейния адрес.

2. Възможност за условен скок по време на изпълнение на програмата

Както вече споменахме, командите в програмите трябва да се изпълняват последователно. Въпреки това е възможно да преминете към всеки раздел от кода.

Как работи машината на фон Нойман?

Такъв математически модел се състои от устройство за съхранение (памет), управление и входни и изходни устройства. Всички програмни команди се записват в клетки от паметта, разположени наблизо, а данните за обработката им са в произволни клетки.

Всеки екип трябва да се състои от:

  • указания каква операция трябва да се извърши;
  • адреси на клетки от паметта, в които се съхраняват изходните данни, засегнати от определената операция;
  • адреси на клетки, в които да се запише резултата.

Операциите, определени от командите върху конкретни изходни данни, се извършват от ALU и резултатите се записват в клетките на паметта, т.е. те се съхраняват във форма, удобна за последваща машинна обработка, или се предават на изходно устройство (монитор, принтер, и т.н.) и стават достъпни за хората.

Блокът за управление контролира всички части на компютъра. От него други устройства получават сигнали-заповеди „какво да се прави“, а от други устройства получава информация в какво състояние се намират.

Устройството за управление има специален регистър, наречен „програмен брояч“ SC. След зареждане на изходните данни и програмата в паметта, адресът на нейната първа команда се записва в CS. Блокът за управление прочита от паметта на компютъра съдържанието на клетката, чийто адрес е в IC и го поставя в „Команден регистър”. Устройството за управление определя операцията, съответстваща на конкретна команда, и „маркира“ в паметта на компютъра данните, чиито адреси са посочени в нея. След това ALU или компютърът започва да изпълнява операция, след завършване на която съдържанието на CS се променя с единица, т.е. сочи към следващата команда.

Критика

Недостатъците и настоящите перспективи продължават да бъдат предмет на дебат. Фактът, че машините, създадени на принципите, представени от този изключителен учен, не са съвършени, беше забелязан много отдавна.

Ето защо в изпитните работи по компютърни науки често можете да намерите въпроса „на какъв принцип не отговаря архитектурата на фон Нойман и какви недостатъци има?“

Когато отговаряте на втората част, не забравяйте да посочите:

  • за наличието на семантична празнина между езиците за програмиране на високо ниво и командните системи;
  • относно проблема за съвпадение на пропускателната способност на ОП и процесора;
  • за настъпващата криза софтуер, причинено от факта, че разходите за неговото създаване са много по-ниски от разходите за разработка на хардуер и няма възможност за пълно тестване на програмата;
  • безперспективност по отношение на производителността, тъй като теоретичната му граница вече е достигната.

Що се отнася до това, на кой принцип не отговаря архитектурата на фон Нойман ние говорим заза паралелната организация на голям брой потоци от данни и команди, характерни за многопроцесорната архитектура.

Заключение

Сега знаете на кой принцип не отговаря архитектурата на Фон Нойман. Очевидно е, че науката и технологиите не стоят неподвижни и може би съвсем скоро във всеки дом ще се появят компютри от съвсем нов тип, благодарение на които човечеството ще достигне ново нивона неговото развитие. Между другото, програмата за обучение „Архитектура на Фон Нойман“ ще ви помогне да се подготвите за изпита. Такава цифрова образователни ресурсиулесняват усвояването на материала и предоставят възможност за оценка на вашите знания.

Този вид машина често се нарича „машина на фон Нойман“, но съответствието между тези понятия не винаги е ясно. Като цяло, когато хората говорят за архитектурата на фон Нойман, те имат предвид принципа на съхраняване на данни и инструкции в една памет.

Енциклопедичен YouTube

  • 1 / 5

    Основите на доктрината за компютърната архитектура са положени от фон Нойман през 1944 г., когато той участва в създаването на първия в света лампов компютър ENIAC. Докато работи върху ENIAC в Университета на Пенсилвания, по време на многобройни дискусии с колегите си Джон Уилям Маучли, Джон Екерт, Херман Голдстайн и Артър Бъркс, възниква идеята за по-модерна машина, наречена EDVAC. Изследователска работаработата по EDVAC продължи успоредно с изграждането на ENIAC.

    През март 1945 г. принципите на логическата архитектура са формализирани в документ, наречен „Първият проект на доклад за EDVAC“ - доклад за балистичната лаборатория на армията на САЩ, която финансира изграждането на ENIAC и развитието на EDVAC. Докладът, тъй като беше само чернова, не беше предназначен за публикуване, а само за разпространение в рамките на групата, но Херман Голдщайн - ръководителят на проекта за американската армия - възпроизведе това научна работаи го изпрати на широк кръг от учени за преглед. Тъй като само името на фон Нойман беше на първата страница на документа, тези, които прочетоха документа, останаха с погрешното впечатление, че той е авторът на всички идеи, представени в работата. Документът предостави достатъчно информация, така че тези, които го прочетоха, да могат да изградят свои собствени компютри, подобни на EDVAC, на същите принципи и със същата архитектура, която в резултат стана известна като „архитектурата на фон Нойман“.

    След края на Втората световна война и края на работата по ENIAC през февруари 1946 г. екипът от инженери и учени се разпадна, Джон Маучли и Джон Екерт решиха да започнат бизнес и да създадат компютри на търговска основа. Фон Нойман, Голдщайн и Бъркс се преместват в , където решават да създадат свой собствен компютър „IAS машина“, подобен на EDVAC, и да го използват за изследователска работа. През юни 1946 г. те очертаха своите принципи за конструиране на компютри в вече класическата статия „Предварително разглеждане на логическия дизайн на електронно изчислително устройство“. Оттогава е изминал повече от половин век, но разпоредбите, изложени в него, остават актуални и днес. Статията убедително обосновава използването на двоичната система за представяне на числа, но преди това всички компютри съхраняваха обработените числа в десетична форма. Авторите демонстрираха предимствата на двоичната система за техническа реализация, удобството и лекотата на извършване на аритметични и логически операции в нея. По-късно компютрите започнаха да обработват нечислови типове информация - текст, графика, звук и други, но двоичното кодиране на данни все още формира информационната основа на всеки съвременен компютър.

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

    Друга революционна идея, чието значение е трудно да се надценява, е принципът на „съхранената програма“. Първоначално програмата беше зададена чрез инсталиране на джъмпери на специален пач панел. Това беше много трудоемка задача: например промяната на програмата на машината ENIAC изискваше няколко дни, докато самото изчисление не можеше да продължи повече от няколко минути - лампите, от които имаше огромен брой, не успяха. Програмата обаче може да се съхранява и като колекция от нули и единици и в същата памет като числата, които обработва. Липсата на фундаментална разлика между програмата и данните позволи на компютъра да формира програма за себе си в съответствие с резултатите от изчисленията.

    Наличието на даден набор от изпълними команди и програми беше характерна черта на първия компютърни системи. Днес подобен дизайн се използва за опростяване на дизайна на компютърно устройство. По този начин настолните калкулатори по принцип са устройства с фиксиран набор от програми, които могат да се изпълняват. Могат да се използват за математически изчисления, но е почти невъзможно да се използват за обработка на текст и компютърни игри, за гледане на графични изображения или видео. Промяната на фърмуера за този тип устройства изисква почти пълна преработка и в повечето случаи е невъзможна. Въпреки това, препрограмирането на ранните компютърни системи все още беше извършено, но изискваше огромно количество ръчна работа за подготовка на нова документация, повторно свързване и повторно изграждане на блокове и устройства и т.н.

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

    Принципите на фон Нойман

    Принципът на хомогенност на паметта Основната разлика между архитектурата на „фон Нойман” (Принстън) и тази на „Харвард”. Командите и данните се съхраняват в една и съща памет и са външно неразличими в паметта. Те могат да бъдат разпознати само по начина на използване; тоест една и съща стойност в клетка от паметта може да се използва като данни, като команда и като адрес, в зависимост само от начина, по който се осъществява достъп до нея. Това ви позволява да извършвате същите операции с команди, както и с числа, и съответно отваря редица възможности. По този начин чрез циклична промяна на адресната част на командата е възможно да се осъществи достъп до последователни елементи от масива от данни. Тази техника се нарича модифициране на команди и не се препоръчва от гледна точка на съвременното програмиране. По-полезно е друго следствие от принципа на хомогенност, когато инструкциите от една програма могат да бъдат получени в резултат на изпълнението на друга програма. Тази възможност е в основата на превода - превода на програмен текст от език на високо ниво на езика на конкретен компютър. В най-простия случай форматът на командата може да бъде разделен на две полета: поле за код на операция и поле за адреси.

    Компютри, изградени на принципите на фон Нойман

    По план първият компютър, изграден по архитектурата на фон Нойман, трябваше да бъде EDVAC (Electronic Discrete Variable Automatic Computer) – един от първите електронни компютри. За разлика от своя предшественик ENIAC, той беше двоичен, а не десетичен компютър. Подобно на ENIAC, EDVAC е разработен в Института Мур към Университета на Пенсилвания за Лабораторията за балистични изследвания на армията на САЩ от екип от инженери и учени, ръководени от Джон Преспър Екърт и Джон Уилям Маучли, с активното съдействие на математик], но до 1951 EDVAC не беше пуснат поради технически трудности при създаването на надеждна компютърна памет и разногласия в екипа за разработка. Други изследователски институти, след като се запознаха с ENIAC и проекта EDVAC, успяха да разрешат тези проблеми много по-рано. Първите компютри, приложили основните характеристики на архитектурата на фон Нойман, бяха:

    1. прототип - Manchester Small Experimental Machine - Manchester University, UK, 21 юни 1948 г.;
    2. EDSAC - Университет в Кеймбридж, Обединеното кралство, 6 май 1949 г.;
    3. Manchester Mark I – Манчестър University, UK, 1949;
    4. BINAC - САЩ, април или август 1949 г.;
    5. CSIR Mk 1
    6. EDVAC - САЩ, август 1949 г. - реално изстрелян през 1952 г.;
    7. CSIRAC - Австралия, ноември 1949 г.;
    8. SEAC - САЩ, 9 май 1950 г.;
    9. ORDVAC - САЩ, ноември 1951 г.;
    10. IAS машина – САЩ, 10.06.1952 г.;
    11. MANIAC I - САЩ, март 1952 г.;
    12. AVIDAC - САЩ, 28 януари 1953 г.;
    13. ORACLE - САЩ, края на 1953 г.;
    14. WEIZAC - Израел, 1955 г.;
    15. SILLIAC - Австралия, 4 юли 1956 г.

    В СССР първият напълно електронен компютър, близък до принципите на фон Нойман, беше МЕСМ, построен от Лебедев (на базата на Киевския електротехнически институт на Академията на науките на Украинската ССР), който премина държавни приемни изпитания през декември 1951 г. .

    Тясното място на фон Ноймановата архитектура

    Споделянешини за програмна памет и памет за данни води до тясно място на фон Ноймановата архитектура, а именно ограничението на честотната лента между процесора и паметта в сравнение с количеството памет. Поради факта, че програмната памет и паметта за данни не могат да бъдат достъпни по едно и също време, пропускателна способностКаналът процесор-памет и скоростта на паметта значително ограничават скоростта на процесора - много повече, отколкото ако програмите и данните се съхраняват на различни места. Тъй като скоростта на процесора и паметта се увеличиха много по-бързо от честотната лента между тях, тясното място стана голям проблем, чиято тежест нараства с всяко ново поколение процесори [ ] ; този проблемсе решава чрез подобряване на системите за кеширане и това поражда много нови проблеми [ кои?] .

    Терминът "тясно място на архитектурата на фон Нойман" е измислен от Джон Бакъс през 1977 г. в неговата лекция за наградата Тюринг "Може ли програмирането да бъде освободено от стила на фон Нойман?"

    Учени от САЩ и Италия през 2015 г. обявиха създаването на прототип на мем процесор (англ. memprocessor) с архитектура, различна от фон Нойман и възможността да се използва за решаване на цялостни проблеми.

    Вижте също

    Литература

    • Херман Х. Голдстайн.„Компютърът“ от „Паскал“ до „фон Нойман“. - Princeton University Press, 1980. - 365 p. - ISBN 9780691023670.(английски)
    • Уилям Аспрей.Джон фон Нойман и произходът на модерните компютри. - MIT Press, 1990. - 394 с. - ISBN 0262011212.(английски)
    • Скот Маккартни. ENIAC: Триумфите и трагедиите на първия компютър в света - Berkley Books, 2001. - 262 стр.
Споделете