Raspberry Pi основан на Гарвардской Архитектуре?
У меня сложилось впечатление, что процессор ARM Raspberry Pi, хотя и имеет микроархитектуру armhf, все же следует архитектуре Von Neumann (главным образом разделяя основную память для инструкций и данных).
Однако я наткнулся на эту единственную строчку в учебнике по компьютерным наукам (A Level Computer Science для AQA Unit 2, Kevin R Bond 2016, pg265)
Компьютер Raspberry Pi основан на гарвардской архитектуре
Поискав в Интернете, я не могу найти надежных источников, которые либо доказывают, либо опровергают это утверждение. Это по ошибке? Буду признателен за источник, указанный в ответе.
(Я знаю, что Raspberry Pi SE существует, но учитывая тот факт, что тега там не существует, я подумал, что более уместно разместить его здесь)
2 ответа
Несмотря на то, что внутренняя архитектура ЦП может быть подобна гарварду, с отдельными кэшами и шинами команд и данных, остальная часть SoC все еще имеет только одну основную память, и шины инструкций и данных подключаются к одной и той же памяти. С https://en.wikipedia.org/wiki/ARM9:
С этим поколением разработки ARM перешел от архитектуры фон Неймана (архитектура Принстона) к архитектуре Гарварда с отдельными шинами инструкций и данных (и кэшами), значительно увеличивая свою потенциальную скорость. Большинство кремниевых чипов, интегрирующих эти ядра, упаковывают их как модифицированные чипы архитектуры Гарварда, объединяя две адресные шины с другой стороны разделенных кешей ЦП и тесно связанных модулей памяти.
Со связанной страницы о модифицированной гарвардской архитектуре:
Вместо этого большинство современных компьютеров реализуют модифицированную архитектуру Гарварда.
Наиболее распространенная модификация строит иерархию памяти с кэшем ЦП, разделяющим инструкции и данные. Это объединяет все, кроме небольших частей адресного пространства данных и команд, обеспечивая модель фон Неймана. Большинству программистов никогда не нужно осознавать тот факт, что ядро процессора реализует (модифицированную) гарвардскую архитектуру, хотя они извлекают выгоду из ее скоростных преимуществ. Только программисты, которые пишут инструкции в память данных, должны знать о таких проблемах, как когерентность кэша.
То же самое касается любого современного чипа x86.
Это не представляет никакой проблемы для Raspbian, который является просто специальной перекомпиляцией обычного Debian для Raspberry Pis; Основное различие в raspbian заключается в том, что у него есть цель, отличная от руки (armv6+vfp hardfloat), чем другие существующие дистрибутивы arm (предназначенные либо для armv4t, либо для armv7+vfp hardfloat).
Архитектура использует не пи, а процессор.
Оригинальный Raspberry Pi использует чип ARM 11 (более поздние версии перенесли на чипы CORTEX-A), а ARM перенесен из архитектуры фон Неймана в Гарвард с чипом ARM9
https://en.wikipedia.org/wiki/ARM9
Кроме того, это со страницы продукта ARM
https://www.arm.com/products/processors/classic/arm9/index.php
Примечание. Предполагается, что, поскольку ничего не было упомянуто о каких-либо изменениях в архитектуре, ядра CORTEX-A также поддерживают это.