реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Описание отличий семейства ARM7, 720, 922, 926 и т.д.
aaarrr
сообщение Mar 27 2009, 15:45
Сообщение #31


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(GetSmart @ Mar 27 2009, 18:29) *
100 процедур по килобайту устроит? smile.gif
Я клоню к тому, что все они в кэш не влезут. А так как они вызываются по очереди, то когда исполнение вернётся к первой, то она из кэша уже сотрётся.

А я к тому, что такую ситуацию можно создать разве что искусственно.
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Mar 27 2009, 15:57
Сообщение #32


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Взять например LPC29xx. Указано что это ARM9 (968). Есть внутренний флэш и рама. Но нет кэша никакого. Ну и почему именно 9 а не 7 ? (ну если не считать дополнительные DSP инструкции)

Про гарвард наверное стоит говорить (в противовес гибриду) только когда есть внутренний флэш, что кстати редкость. Если же внутри проца только рама, да и то её малая часть, да если ещё внешняя шина только одна для флэша/статики, то раздельные шины без кэша ничем не помогут. С Интелом как раз вопрос неоднозначный из-за отсутствия внутри и флэша и рамы, да ещё к тому же одна внешняя шина (?).

Сообщение отредактировал GetSmart - Mar 27 2009, 15:59


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 27 2009, 16:05
Сообщение #33


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(GetSmart @ Mar 27 2009, 18:57) *
Есть внутренний флэш и рама. Но нет кэша никакого.

Зато есть TCM, которыми можно значительно ускорить критические участки.
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 27 2009, 16:07
Сообщение #34


кекс
******

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



Цитата(aaarrr @ Mar 27 2009, 18:05) *
Зато есть TCM, которыми можно значительно ускорить критические участки.

А объем TCM там (968) какой?
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Mar 27 2009, 16:09
Сообщение #35


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(aaarrr @ Mar 27 2009, 21:05) *
Зато есть TCM, которыми можно значительно ускорить критические участки.

Прочитал поподробнее. Про кэш оказалось не всё ясно. Что такое TCM ?


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 27 2009, 16:12
Сообщение #36


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(defunct @ Mar 27 2009, 19:07) *
А объем TCM там (968) какой?

На усмотрение производителя кристалла. В данном случае довольно приличный - 16+16.

Цитата(GetSmart @ Mar 27 2009, 19:09) *
Прочитал поподробнее. Про кэш оказалось не всё ясно. Что такое TCM ?

TCM - быстрые раздельные для кода и данных блоки памяти. Вешаются непосредственно на ядро.
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Mar 27 2009, 16:24
Сообщение #37


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Цитата(aaarrr @ Mar 27 2009, 21:12) *
TCM - быстрые раздельные для кода и данных блоки памяти. Вешаются непосредственно на ядро.

Ручной кэшазаменитель? smile.gif

Для данных только непонятно зачем. Ведь внутренняя рама и есть быстрый блок памяти данных. Сделали бы тогда 32К TCM только для кода, а данные в обычную раму можно писать параллельно с выборкой кода.

Вобщем склоняюсь к мнению, что основное отличие 9-ых от 7-ых это конвейер, который для программера имеет самое незаметное значение. 10-ый от 9-ого тоже конвейером отличается.

Сообщение отредактировал GetSmart - Mar 27 2009, 16:26


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 27 2009, 16:35
Сообщение #38


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(GetSmart @ Mar 27 2009, 19:24) *
Ручной кэшазаменитель? smile.gif

Да, для малоимущих smile.gif

Цитата(GetSmart @ Mar 27 2009, 19:24) *
Для данных только непонятно зачем. Ведь внутренняя рама и есть быстрый блок памяти данных. Сделали бы тогда 32К TCM только для кода, а данные в обычную раму можно писать параллельно с выборкой кода.

Ну, никто не мешает писать и в обычную RAM тоже. А так можно на время работы из TCM отдать шину какому-нибудь DMA.
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 27 2009, 17:49
Сообщение #39


кекс
******

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



Цитата(GetSmart @ Mar 27 2009, 17:29) *
Вы вопрос изначальный помните? Я спрашивал есть ли ARM9 без гарварда и является ли это основным отличием от ARM7.

ARM9TDMI, ни TCM, ни кеш не предусмотрен.
Все в руках разработчика МК, как подключит так и будет.

Можно немного перефразировать вопрос? Является ли наличие двух шин основным отличием от ARM7?
Да, по крайней мере одним из основных отличий является.
Go to the top of the page
 
+Quote Post
DRUID3
сообщение Mar 27 2009, 18:31
Сообщение #40


山伏
*****

Группа: Свой
Сообщений: 1 827
Регистрация: 3-08-06
Из: Kyyiv
Пользователь №: 19 294



...а еще в ARM9 часто присутствует float-coprocessor на борту. А это уже очень серьезно - от исходников которые не надо перерабатывать (скорость разработки), до числового DR (принципиальная взможность чего либо соорудит, для DSP например)... Это так, к слову... rolleyes.gif


--------------------
Нас помнят пока мы мешаем другим...
//--------------------------------------------------------
Хороший блатной - мертвый...
//--------------------------------------------------------
Нет старик, это те дроиды которых я ищу...
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Mar 27 2009, 19:57
Сообщение #41


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Насчет часто Вы, пожалуй, погорячились - это и здесь все же относительно редкое явление sad.gif
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Mar 27 2009, 20:06
Сообщение #42


.
******

Группа: Участник
Сообщений: 4 005
Регистрация: 3-05-06
Из: Россия
Пользователь №: 16 753



Подводя (промежуточный?) итог, я выяснил, что ARM7 отличается от ARM9 обязательным наличием по крайней мере двух раздельных внутренних шин для кода и данных, и усложнением конвейера до 5 стадий. Всё остальное опционально. Для программиста обе этих доработки на 99% незаметны. Программист может смело считать, что он работает с ARM7, имеющим кэш, MMU, VFP и прочие фичи не как усовершенствование ядра, а как дополнительную перифирию (от NXP к примеру). И вообще, выбирая ARM-процессор стоит обращать не на цифру 7,9,10 и тд, а на конкретные фичи. Причём фичи конкретного проца конкретного производителя (не важно какой версии ARM) могут иметь куда более важное значение, как например наличие внутреннего флэша, тактовая частота, размер кэша и размер внутренней рамы. Они могут повлиять на производительность куда больше чем просто двойная шина и конвейер.

Цитата(DRUID3)
...а еще в ARM9 часто присутствует float-coprocessor на борту. А это уже очень серьезно - от исходников которые не надо перерабатывать (скорость разработки), до числового DR (принципиальная взможность чего либо соорудит, для DSP например)... Это так, к слову...
Только для DSP приминений. Иначе от него пользы как собаке пятая нога.


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
defunct
сообщение Mar 28 2009, 01:30
Сообщение #43


кекс
******

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



Кстати, вот хорошая ссылка, по вопросу насчет архитектуры ARM:

Цитата
Прочие модификации
Существуют гибридные модификации архитектур, сочетающие некоторые достоинства как Гарвардской, так и фон-Неймановской архитектур. Например, современные варианты процессоров ARM, как правило, обладают раздельной кэш-памятью для инструкций и данных, что позволяет им за один такт получать одновременно как команду, так и данные для её выполнения, то есть процессорное ядро, формально, является гарвардским, но с программной точки зрения выглядит как фон-Неймановское, что упрощает написание программ. Обычно в данных процессорах одна шина используется и для передачи команд, и для передачи данных, что упрощает конструкцию системы. Современные варианты таких процессоров могут иногда содержать встроенные контроллеры сразу нескольких разнотипных шин для работы с различными типами памяти — например, DDR RAM и Flash. Тем не менее и в этом случае шины, как правило, используются и для передачи команд, и для передачи данных без разделения, что делает данные процессоры еще более близкими к фон-Неймановской архитектуре при сохранении плюсов Гарвардской архитектуры.
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 21:39
Рейтинг@Mail.ru


Страница сгенерированна за 0.01473 секунд с 7
ELECTRONIX ©2004-2016