|
Описание отличий семейства ARM7, 720, 922, 926 и т.д. |
|
|
|
 |
Ответов
|
Mar 27 2009, 00:40
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(aaarrr @ Mar 26 2009, 20:47)  но все имеют гарвардскую архитектуру. Как вы отличаете архитектуры. Всмысле, что в ARM9 более или менее гарвардского чем в ARM7? Цитата Я так понимаю все 9-ые имеют гарвардскую архитектуру и только поэтому отделены от 7-ых ? Думаю разработчики ARM вообще не заморачиваются такой ерундой как разделение архитектур на гарвард, нейман и т.д. Они просто делают свою работу. Что же касается вашего вопроса, разве отличий с wiki мало? : - длина конвеера - раздельный кеш
|
|
|
|
|
Mar 27 2009, 12:14
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(aaarrr @ Mar 27 2009, 14:03)  Да, надо было с самого начало добавить приставку "псевдо". Память вовсе не обязательно сидит на общей шине - TCM, например, подключаются отдельно. Не суть важно. Есть хоть какой-то адресуемый участок памяти в котором располагается код, и куда по определению нельзя добраться как к блоку данных (прочитать/изменить)? Все эти доп шины - это так мелкие ускоряющие фичи, не меняющие архитектуру в корне. Цитата(GetSmart @ Mar 27 2009, 14:09)  AVR в этом плане "убогий" гарвард. Либо "гарвард" в чистом смысле (аля AVR) убогая идея. Так как не позволяет выполнять код из рамы. И ещё ограничивает командам доступ к разным адресным простанствам. Ну если поставить заместо Flash RAM - то нет проблем можно будет модифицировать код! Но в этом и есть разительное отличие архитектур. Низя адресовать всю память линейно!
|
|
|
|
|
Mar 27 2009, 12:37
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(defunct @ Mar 27 2009, 15:30)  Раздельные шины применительно к общей памяти это просто ускоритель. Раздельные шины в комплексе с раздельной памятью - это гарвард. Хорошо, а как назовем раздельные шины с раздельным кэшем? И чем это решение будет хуже п.2? Цитата(defunct @ Mar 27 2009, 15:30)  Прилепите к шине инструкций непосредственно ПП, получим гарвардскую систему. В случае с TCM дело именно так и обстоит.
|
|
|
|
|
Mar 27 2009, 12:56
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(aaarrr @ Mar 27 2009, 14:37)  Хорошо, а как назовем раздельные шины с раздельным кэшем? Intel называет это Dual Independent Bus (DIB) и Separate code and data caches. Т.е. своими именами без подведения под какую-то черту. Цитата И чем это решение будет хуже п.2? 1. Ресурс(память) один, а шины две. Кеш не панацея всю память на разместит. Ресурс все равно надо делить - а значит меньше производительность. 2. Сложнее в реализации - т.к. для дележки требуется арбитраж. 3. Раз есть арбитраж получаем - непрогнозированную латентность выборки данных и команд.
|
|
|
|
|
Mar 27 2009, 13:02
|
Гуру
     
Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448

|
Цитата(defunct @ Mar 27 2009, 15:56)  1. Ресурс(память) один, а шины две. Ресурс надо делить - меньше производительность. Производительность ARM926EJ при работе из TCM (честный Гарвард в вашей интерпретации) и из кэша практически одинаковая (кэш немного быстрее). Цитата(defunct @ Mar 27 2009, 15:56)  1. Ресурс(память) один, а шины две. Ресурс Кеш не панацея всю память на разместит. Вам часто приходится работать со всей памятью? Не панацея, но и не от безделья придуман. Цитата(defunct @ Mar 27 2009, 15:56)  2. Сложнее в реализация - т.к. для дележки требуется арбитраж. 3. Раз есть арбитраж получаем - не прогнозированую латентность выборки данных и команд. Если уж есть кэш, то эти два пункта существуют по определению.
|
|
|
|
|
Mar 27 2009, 13:21
|

кекс
     
Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326

|
Цитата(aaarrr @ Mar 27 2009, 15:02)  Производительность ARM926EJ при работе из TCM (честный Гарвард в вашей интерпритации) и из кэша практически одинаковая (кэш немного быстрее). Кто и как измерял? Результат тут будет сильно зависеть от множества параметров - таких как размер кода, количество branch инструкций, объем данных обрабатываемых программой и их размещение. Не сомневаюсь какой-то крайний случай типа: while( temp--); может работать из кеш памяти быстрее. Цитата(aaarrr @ Mar 27 2009, 15:02)  Вам часто приходится работать со всей памятью? Не панацея, но и не от безделья придуман. В пределах работы программы, да - часто вся память используется. Другой вопрос, что на конкретном временном интервале выполняющем какой-то конкретный алгоритм/обработку чего-то, задействовано немного памяти, и на этом получается эффект от кеша. Правда данные которые надо обрабатывать разбросаны по разным участкам памяти, и часто получены через DMA, т.е. львиная доля данных требует invalidate изначально, либо лежит в некешируемом регионе памяти.
|
|
|
|
|
Mar 27 2009, 14:21
|
.
     
Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753

|
Цитата(defunct @ Mar 27 2009, 18:44)  ... т.е. к конкретным системам на ARM9 ядре слово Гарвардская Архитектура может не иметь никакого отношения. Если можно, приведите конкретные примеры ARM9 без гарварда. Цитата(defunct @ Mar 27 2009, 19:04)  IMHO, если планируете работать с конкретными готовыми МК, то лучше не на ядро смотреть, а на то, что на нем слеплено. Я вообще-то также думаю. К примеру фича NXP с 128 битной флэш могла бы претендовать на новое семейство ARM  То есть она вполне сопоставима с улучшениями вроде гарварда и 5-стадийности. Просто меня мой шеф напряг своей новящевой идеей про ARM9. Как и все "потребители" (в противовес разработчикам) он искренне верит, что ARM9 в 3-5 раз круче ARM7. Именно семейство круче. То есть если у проца есть "лейбл" ARM9, то это то, что надо. К примеру он предлагает закладываться на LPC31xx и LPC32xx, которые даже внутреннего флэша не имеют. У меня же есть большие сомнения что этот кастрированный ARM9 будет выполнять большой линейный код (без циклов), находящийся во внешней 32 битной флэш быстрее к примеру Cortex-M3 с внутренней флэш. То, что определёнными усилиями можно заставить выполняться небольшую часть кода (десятки кб) на полной частоте проца (266 МГц) конечно я понимаю. Но остальная бОльшая часть кода (сотни кб) будет выполняться даже медленней (в 2 и более раз) чем даже на LPC21/22/23/24. Я прав?
--------------------
Заблуждаться - Ваше законное право :-)
|
|
|
|
Сообщений в этой теме
GetSmart Описание отличий семейства ARM7, 720, 922, 926 и т.д. Mar 26 2009, 16:30 aaarrr Цитата(GetSmart @ Mar 26 2009, 19:30) Пож... Mar 26 2009, 16:46 KRS C точки зрения обычного программиста ядра ARM7 и A... Mar 26 2009, 17:41 aaarrr Цитата(KRS @ Mar 26 2009, 20:41) C точки ... Mar 26 2009, 17:49 GetSmart ЦитатаSome chips, such as the Cortex-M3, support o... Mar 26 2009, 18:41  GetSmart Цитата(defunct @ Mar 27 2009, 05:40) Как ... Mar 27 2009, 08:27              aaarrr Цитата(defunct @ Mar 27 2009, 16:44) Прим... Mar 27 2009, 13:54               aaarrr Цитата(GetSmart @ Mar 27 2009, 17:21) Но ... Mar 27 2009, 14:38                GetSmart Цитата(aaarrr @ Mar 27 2009, 19:38) Где и... Mar 27 2009, 14:57                 aaarrr Цитата(GetSmart @ Mar 27 2009, 17:57) Код... Mar 27 2009, 15:00               defunct Цитата(GetSmart @ Mar 27 2009, 16:21) Есл... Mar 27 2009, 15:10                GetSmart Цитата(defunct @ Mar 27 2009, 20:10) Мне ... Mar 27 2009, 15:29                 aaarrr Цитата(GetSmart @ Mar 27 2009, 18:29) 100... Mar 27 2009, 15:45                 defunct Цитата(GetSmart @ Mar 27 2009, 17:29) Вы ... Mar 27 2009, 17:49    GetSmart Цитата(defunct @ Mar 27 2009, 16:43) Этог... Mar 27 2009, 12:09  GetSmart Цитата(defunct @ Mar 27 2009, 05:40) Как ... Mar 27 2009, 13:04   defunct Цитата(GetSmart @ Mar 27 2009, 15:04) Всп... Mar 27 2009, 14:04 GetSmart Взять например LPC29xx. Указано что это ARM9 (968)... Mar 27 2009, 15:57 aaarrr Цитата(GetSmart @ Mar 27 2009, 18:57) Ест... Mar 27 2009, 16:05  defunct Цитата(aaarrr @ Mar 27 2009, 18:05) Зато ... Mar 27 2009, 16:07  GetSmart Цитата(aaarrr @ Mar 27 2009, 21:05) Зато ... Mar 27 2009, 16:09 aaarrr Цитата(defunct @ Mar 27 2009, 19:07) А об... Mar 27 2009, 16:12 GetSmart Цитата(aaarrr @ Mar 27 2009, 21:12) TCM -... Mar 27 2009, 16:24  aaarrr Цитата(GetSmart @ Mar 27 2009, 19:24) Руч... Mar 27 2009, 16:35 DRUID3 ...а еще в ARM9 часто присутствует float-coprocess... Mar 27 2009, 18:31 aaarrr Насчет часто Вы, пожалуй, погорячились - это и зде... Mar 27 2009, 19:57 GetSmart Подводя (промежуточный?) итог, я выяснил, что ARM7... Mar 27 2009, 20:06 defunct Кстати, вот хорошая ссылка, по вопросу насчет архи... Mar 28 2009, 01:30
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|