- Програми
- Походження
- Модель
- Модифікована Гарвардська архітектура
- Як працює архітектура Гарварду?
- Доповнення в архітектурі
- Адреси пам'яті
- Система пам'яті
- Перевага
- Рівень захисту
- Більш висока швидкість
- Недоліки
- Більша складність і вартість
- Мало користі
- Неправильне використання простору пам'яті
- Список літератури
Гарварда архітектура є конфігурацією комп'ютера , в якому дані і інструкція програми розташовані в окремих осередках пам'яті, які можуть бути вирішені незалежно один від одного.
Тобто це термін, який використовується для комп'ютерної системи, що містить дві окремі області: для команд чи інструкцій та для даних. Тому основна функція цієї архітектури - зберігання фізично розділених даних, надання різних сигнальних шляхів для інструкцій та даних.
Джерело: From Nessa los - Власна робота, CC BY-SA 3.0, commons.wikimedia
У цій архітектурі як формат, так і носій цих двох сегментів системи можуть бути неоднаковими, оскільки дві частини складаються з двох окремих структур.
Деякі приклади архітектур Гарварду включають ранні комп'ютерні системи, де програмні вказівки можуть бути на одному носії, наприклад, на перфокартах, а збережені дані можуть бути на іншому носії, наприклад, на магнітних стрічках.
Програми
Цей тип архітектури має широке застосування у продуктах обробки відео та аудіо. З кожним інструментом для обробки відео та аудіо видно фігуру Гарвардської архітектури.
Аналогові пристрої Процесори Blackfin - це той самий пристрій, де він знайшов своє основне використання. В інших продуктах на основі електронних чіпів також широко використовується архітектура Гарварду.
Однак більшість комп'ютерів використовують архітектуру фон Неймана і використовують кеші процесора для досягнення перекриття.
Походження
Робота, проведена в Гарвардському університеті в 40-х роках під керівництвом Говарда Ейкена, створила оригінальний релейний комп'ютер під назвою Гарвардський Марк I, який є терміном, з якого виникла концепція гарвардської архітектури.
Цей комп'ютер використовував окремі блоки пам'яті для зберігання даних та інструкцій. Тоді відбувся значний розвиток з цією архітектурою.
Ейкен рекомендує використовувати окремі пам'яті для даних та програмних інструкцій, з окремими шинами для кожного.
Оригінальна архітектура Гарварду зазвичай зберігає інструкції щодо перфорованих стрічок та даних на електромеханічних лічильниках.
Зберігання даних цих ранніх машин повністю знаходилось в центральному блоці обробки. З іншого боку, вони не давали доступу до інструкцій, що зберігаються як дані. Оператору довелося завантажувати програми.
Гарвардська архітектура може одночасно обробляти дані та виконувати інструкції, оскільки кожна з них має власну шину адреси.
Модель
Ця модель характеризується тим, що інформаційні шини та накопичувач фізично розділені для даних та програмного коду.
Оскільки шини працюють автономно, дані та програмні вказівки можна отримувати одночасно, тим самим покращуючи швидкість в порівнянні з єдиною конструкцією шини.
Тому Гарвардська модель виявляється більш складною. Однак наявність автобусів самостійно уникає вузьких місць, створених архітектурою фон Неймана.
Комп'ютер може бути швидшим для ланцюга певної складності, тому що для пошуку інструкцій та доступу до даних не потрібно боротися за одну шину пам'яті.
Для роботи є дві адреси пам'яті. Тому існує регістр пам'яті для інструкцій на машині та інший регістр пам'яті для даних.
На відміну від архітектури фон Неймана, яка використовує шину для переміщення в пам'яті як інструкцій, так і даних, Гарвардська архітектура використовує одну область пам'яті для даних та іншу для вказівки.
Модифікована Гарвардська архітектура
У сучасних комп’ютерах немає фізичної дезагрегації областей пам’яті, що використовуються програмами та даними. З цієї причини можна сказати, що технологічно вони мають архітектуру Фон Ноймана.
Однак модифікована Гарвардська архітектура служить найкращим чином для представлення сучасних комп'ютерів.
Незважаючи на те, що нинішні одиниці обробки обмінюються пам'яттю, у них є певні елементи, такі як унікальні інструкції, які запобігають сплутуванню даних із інструкціями. Це називається модифікована Гарвардська архітектура.
Таким чином, модифікована Гарвардська архітектура має дві окремі шини - одну для коду та одну для даних, але сама пам'ять є фізично спільним елементом.
У контролері пам’яті знаходиться місце зміни, оскільки цей пристрій - це той, що обробляє пам'ять і як її слід використовувати.
Сучасні дизайни комп'ютерів підтримуються модифікованою Гарвардською архітектурою. Вони використовуються в мікроконтролерах і в цифровій обробці сигналу.
Як працює архітектура Гарварду?
Гарвардська архітектура має різні області пам'яті для програми та для даних.
Це призводить до можливості спроектувати схему таким чином, що шина та схема управління можуть використовуватися для обробки потоку інформації з пам'яті програми та окремого для обробки потоку інформації до пам'яті даних.
Використання окремих шин означає, що можливо отримати програму та виконати програму, не перериваючи її періодичною передачею даних у пам'ять даних.
Наприклад, у простій версії цієї архітектури блок відновлення програми міг би бути зайнятий завантаженням наступної інструкції в послідовності програми та паралельно виконуючи операцію передачі даних, яка могла бути частиною попередньої інструкції програми. .
На цьому рівні в Гарвардській архітектурі є обмеження, оскільки звичайно неможливо помістити програмний код у пам'ять даних та виконати його звідти.
Доповнення в архітектурі
До простої форми архітектури Гарварду можна додати багато складніших існуючих варіантів.
Поширеним доповненням є додавання кешу інструкцій до шини даних програми, що дозволяє блоку виконання інструкцій швидше отримати доступ до наступного кроку програми, не потребуючи сповільнення пам'яті, щоб дійти до кроку. програми щоразу, коли це потрібно.
Адреси пам'яті
Комп'ютер архітектури Гарварду має різні області інструкцій та даних: адреса інструкції одна не є тією самою областю, що й адреса даних.
Адреса інструкції може містити двадцять чотири бітове значення, тоді як адреса даних може вказувати восьмибітний байт, який не є частиною цього двадцяти чотирьох бітного значення.
Система пам'яті
Оскільки існує окрема область пам’яті для вказівок та даних, що розділяє і сигнали, і пам’ять пам’яті коду та даних, це дає можливість одночасно отримувати доступ до кожної із систем пам’яті.
Перевага
- менше шансів корупції при передачі, оскільки дані та інструкції передаються через різні автобуси.
- Отримати доступ до даних та інструкцій можна однаково.
- Дозволяє використовувати різні носії інформації для вказівок та даних. Наприклад, ви можете помістити інструкції в недорогий ПЗУ, а дані - в дорогу ОЗП.
- Дві пам'яті можуть використовувати різні розміри комірок, тим самим ефективно використовуючи ресурси.
- Він має більшу пропускну здатність пам’яті, що більш передбачувано, маючи окремі пам’яті для вказівок та даних.
Рівень захисту
У системах, які не мають блоку управління пам’яттю, він пропонує додатковий рівень захисту, оскільки дані не можуть бути запущені як код, що може піддавати систему багатьом проблемам, таким як переповнення буфера.
Ось чому він популярний у невеликих вбудованих системах, таких як мікрохвильова піч або годинник.
Більш висока швидкість
Гарвардська архітектура може прочитати інструкцію, а також отримати доступ до пам'яті даних одночасно з високою швидкістю.
Він пропонує більшу продуктивність, оскільки дозволяє одночасно отримувати дані та вказівки, щоб зберігати їх в окремій пам'яті та подорожувати різними автобусами.
Гарвардська архітектура, як правило, допоможе комп'ютеру з певним рівнем складності працювати швидше, ніж архітектура Фон Ноймана, доки не потрібно обмінюватися ресурсами між кодом і пам'яттю даних.
Якщо обмеження контактами або інші фактори змушують використовувати одну шину для доступу до обох просторів пам'яті, ці переваги, ймовірно, будуть значною мірою скасовані.
Недоліки
Більша складність і вартість
Проблема з гарвардською архітектурою полягає в її великій складності та вартості, оскільки замість однієї шини даних зараз потрібні дві.
Виробництво комп'ютера з двома шинами коштує значно дорожче і займає більше часу для виготовлення. Для цього потрібен блок управління двома автобусами, який складніший і трудомісткий і дорогий для розробки.
Це означає більш складну реалізацію для виробників. Це вимагає більше штифтів на процесорі, більш складної материнської плати і копіювання мікросхем оперативної пам'яті, а також більш складної конструкції кешу.
Мало користі
Гарвардська архітектура не використовується широко, що ускладнює її реалізацію. Ось чому він рідко використовується поза процесором.
Однак ця архітектура іноді використовується в ЦП для управління кешами.
Неправильне використання простору пам'яті
Якщо в пам'яті даних є вільний простір, його не можна використовувати для зберігання інструкцій і навпаки.
Тому окремі спогади, присвячені кожному з них, повинні бути ретельно збалансовані при їх виготовленні.
Список літератури
- Перерахуйте відмінності (2019). Відмінність фон Ноймана від Гарвардської архітектури? Взято з: listdifferences.com.
- PC Magazine (2019). Визначення: Гарвардська архітектура. Взято з: pcmag.com.
- Техопедія (2019). Гарвардська архітектура. Взяті з: plasmapedia.com.
- Скотт Торнтон (2018). Яка різниця між архітектурами Фон-Ноймана та Гарварду? Поради щодо мікроконтролерів. Взято з: microcontrollertips.com.
- Вікіпедія, безкоштовна енциклопедія (2019). Гарвардська архітектура. Взято з: en.wikipedia.org.
- Божевільний програміст (2019). Різниця між фон Нойманом та Гарвардською архітектурою. Взято з: thecrazyprogrammer.com.