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

 
 
7 страниц V   1 2 3 > »   
Reply to this topicStart new topic
> LPC1700 User manual, О чём так долго мечтали мы все
shahr
сообщение Jun 8 2009, 09:30
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 128
Регистрация: 6-06-06
Из: Москва
Пользователь №: 17 793



http://www.standardics.nxp.com/support/doc...ual.lpc17xx.pdf

upd. Если заметите какие-либо явные ошибки, неточности или отсутствие важной информации, напишите, пожалуйста, сюда и продублируйте личным сообщением. На стилистику давайте внимания не обращать.

Сообщение отредактировал shahr - Jun 8 2009, 09:35


--------------------
wbw
shahr
Go to the top of the page
 
+Quote Post
miv
сообщение Jun 8 2009, 09:32
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 29-08-05
Из: С-Петербург
Пользователь №: 8 055



Цитата(shahr @ Jun 8 2009, 13:30) *

Дык с 5-го числа лежит ! smile.gif
Кстати кто-то говорил что там таймеры 16 бит ! Я чот не увидел, вроде нормальные 32 бита ??

Сообщение отредактировал miv - Jun 8 2009, 09:34
Go to the top of the page
 
+Quote Post
shahr
сообщение Jun 8 2009, 09:36
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 128
Регистрация: 6-06-06
Из: Москва
Пользователь №: 17 793



Цитата(miv @ Jun 8 2009, 13:32) *
Дык с 5-го числа лежит ! smile.gif
Кстати кто-то говорил что там таймеры 16 бит ! Я чот не увидел, вроде нормальные 32 бита ??


Это в STM32 таймеры 16 бит.


--------------------
wbw
shahr
Go to the top of the page
 
+Quote Post
miv
сообщение Jun 8 2009, 09:43
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 29-08-05
Из: С-Петербург
Пользователь №: 8 055



Цитата(shahr @ Jun 8 2009, 13:36) *
Это в STM32 таймеры 16 бит.

А !!!! Ну наверно.
Go to the top of the page
 
+Quote Post
-=Sergei=-
сообщение Jun 8 2009, 10:31
Сообщение #5


Местный
***

Группа: Свой
Сообщений: 339
Регистрация: 26-10-04
Пользователь №: 985



Цитата(shahr @ Jun 8 2009, 13:30) *
http://www.standardics.nxp.com/support/doc...ual.lpc17xx.pdf

upd. Если заметите какие-либо явные ошибки, неточности или отсутствие важной информации, напишите, пожалуйста, сюда и продублируйте личным сообщением. На стилистику давайте внимания не обращать.


Ну и как всегда реклама:
Enhanced flash memory accelerator enables high-speed 100 MHz operation with zero wait states.

Расходится с делом:
Flash accesses use 5 CPU clocks. Use for up to 100 MHz CPU clock.

Теперь ждем обновленные электрические характеристики, а то на самом вкусном пока TBD стоит....
Go to the top of the page
 
+Quote Post
etoja
сообщение Jun 8 2009, 10:45
Сообщение #6


Профессионал
*****

Группа: Свой
Сообщений: 1 121
Регистрация: 14-01-05
Из: Москва
Пользователь №: 1 952



Не торопись.
Как говорил классик:
Всё у нас получится, Феликс Эдмундович.
Go to the top of the page
 
+Quote Post
KRS
сообщение Jun 8 2009, 10:45
Сообщение #7


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(-=Sergei=- @ Jun 8 2009, 14:31) *
Ну и как всегда реклама:
Enhanced flash memory accelerator enables high-speed 100 MHz operation with zero wait states.

Расходится с делом:
Flash accesses use 5 CPU clocks. Use for up to 100 MHz CPU clock.

Ничего не расходится!
Написано же акселератор позволяет!
Go to the top of the page
 
+Quote Post
Mitsufan
сообщение Jun 8 2009, 10:46
Сообщение #8


Участник
*

Группа: Участник
Сообщений: 31
Регистрация: 13-03-07
Пользователь №: 26 123



Цитата(-=Sergei=- @ Jun 8 2009, 13:31) *
Ну и как всегда реклама:
Enhanced flash memory accelerator enables high-speed 100 MHz operation with zero wait states.

Расходится с делом:
Flash accesses use 5 CPU clocks. Use for up to 100 MHz CPU clock.

Теперь ждем обновленные электрические характеристики, а то на самом вкусном пока TBD стоит....


Для доступа к памяти акселератор использует 5 CPU циклов на 100 МГц, а ядру отдает без задержек...
Go to the top of the page
 
+Quote Post
miv
сообщение Jun 8 2009, 10:47
Сообщение #9


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 29-08-05
Из: С-Петербург
Пользователь №: 8 055



Цитата(-=Sergei=- @ Jun 8 2009, 14:31) *
Ну и как всегда реклама:
Enhanced flash memory accelerator enables high-speed 100 MHz operation with zero wait states.

Расходится с делом:
Flash accesses use 5 CPU clocks. Use for up to 100 MHz CPU clock.

Теперь ждем обновленные электрические характеристики, а то на самом вкусном пока TBD стоит....

Так на сколько я понял 5 циклов это к Flash а после акселератора zero.
Т.е. если акселератор не включен то при 100 - 5 циклов доступа к инструкциям типа,
а если акселератор включён то доступ к инструкциям zero циклов. У него же там шина 128 бит.
Или чот я не понял ?
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Jun 8 2009, 11:01
Сообщение #10


.
******

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



Цитата(miv @ Jun 8 2009, 15:47) *
...
а если акселератор включён то доступ к инструкциям zero циклов. У него же там шина 128 бит.
Или чот я не понял ?

128 бит = 4 инструкции. Но не все инструкции однотактовые. Если хотя бы одна из инструкций будет двухтактовая то должно работать без тормозов, имхо. А вот если поставить подряд много NOP-ов, то наверное скорость упадёт до 80 MIPS.


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


Местный
***

Группа: Свой
Сообщений: 339
Регистрация: 26-10-04
Пользователь №: 985



Цитата(miv @ Jun 8 2009, 14:47) *
Так на сколько я понял 5 циклов это к Flash а после акселератора zero.
Т.е. если акселератор не включен то при 100 - 5 циклов доступа к инструкциям типа,
а если акселератор включён то доступ к инструкциям zero циклов. У него же там шина 128 бит.
Или чот я не понял ?



Скорость доступа к флеш по технологии 0.18 примрено 30 нс. По этому процессор может выдергивать из Флеш инструкцию (будем считать для простоты что они все 32 бита) на каждый свой цикл, только если его частота менее 33 МГц. Для того что бы процессор мог работать на большей частоте например 66 Мгц, он должен выдерхивать из флеш по две инструкции за 30 нс (флеш становится 64 битной) и в этом случае пока он выполняет первую инструкцию 15 нс и затем вторую еще 15 нс, успевают выдернуться из памяти еще две инструкции после чего все повторяется. Вот так оно и живет с нулевой задержкой. Но живет оно ровно до тех пор пока может предстказать адрес выдергиваемых на будующее инструкций. НО КАК ТОЛЬКО адрес не совпал, например витвление или прерывание, то контроллер флеша генерирует паузу по шине инструкций процессору, так как ему надо 30 нс выдернуть непредсказанные адреса.

Таким образом пока программа линейно выполняется будут честные ноль циклов задержки (у NXP Флеш 128 битная, от 4 до 8 инструкций за раз), но как только какое либо ветвление или прерывание вне этих предвыбранных адресов, получайте полностью 5 циклов дополнительной задержки при 100 МГц.

Ну а теперь для своих алгоритмов прикиньте сколько ASM инструкций занимают ваши циклы FOR ?

На моей задаче с 0 циклом задержки выполняется условно 4,7 млн. циклов, при 5 циклах задержки 8 млн циклов.

Вот и думал, что они что то придумали.... Но нет.

Хотя как я понял они SRAM смапировали в область кода, вот от туда действительно можно гнать алгоритм на всех парах.
Go to the top of the page
 
+Quote Post
KRS
сообщение Jun 8 2009, 11:10
Сообщение #12


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(GetSmart @ Jun 8 2009, 15:01) *
128 бит = 4 инструкции. Но не все инструкции однотактовые. Если хотя бы одна из инструкций будет двухтактовая то должно работать без тормозов, имхо. А вот если поставить подряд много NOP-ов, то наверное скорость упадёт до 80 MIPS.

В THUMB2 NOP - 16 битная! так что их 8 влезет

Цитата(-=Sergei=- @ Jun 8 2009, 15:05) *
Таким образом пока программа линейно выполняется будут честные ноль циклов задержки (у NXP Флеш 128 битная, от 4 до 8 инструкций за раз), но как только какое либо ветвление или прерывание вне этих предвыбранных адресов, получайте полностью 5 циклов дополнительной задержки при 100 МГц.

Ну а теперь для своих алгоритмов прикиньте сколько ASM инструкций занимают ваши циклы FOR ?

а ARM7 все нормально с ветвлениями было. ( кроме прерываний конечно)
Вы конкретный цикл приведите, который у вас из Flash работает медленнее чем из встроенной SRAM
Go to the top of the page
 
+Quote Post
GetSmart
сообщение Jun 8 2009, 11:13
Сообщение #13


.
******

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



Цитата(KRS @ Jun 8 2009, 16:10) *
В THUMB2 NOP - 16 битная! так что их 8 влезет

Да, точно. Я и забыл что там инструкции поменяли.

Но ведь можно и 32 битных однотактовых инструкций поставить более 4 штук подряд smile.gif

Сообщение отредактировал GetSmart - Jun 8 2009, 11:29


--------------------
Заблуждаться - Ваше законное право :-)
Go to the top of the page
 
+Quote Post
-=Sergei=-
сообщение Jun 8 2009, 11:21
Сообщение #14


Местный
***

Группа: Свой
Сообщений: 339
Регистрация: 26-10-04
Пользователь №: 985



Цитата(KRS @ Jun 8 2009, 15:10) *
а ARM7 все нормально с ветвлениями было. ( кроме прерываний конечно)
Вы конкретный цикл приведите, который у вас из Flash работает медленнее чем из встроенной SRAM


unsigned char y;
unsigned int m1[256];
unsigned int m2[256];
unsigned int m3[256];

for (y=0;y<=255;y++)
m1[y] = m2[y]*m3[y];



0x080000D4 2000 MOVS r0,#0x00
0x080000D6 E00D B 0x080000F4
0x080000D8 F50D6180 ADD r1,SP,#0x400
0x080000DC F8511020 LDR r1,[r1,r0,LSL #2]
0x080000E0 466A MOV r2,sp
0x080000E2 F8522020 LDR r2,[r2,r0,LSL #2]
0x080000E6 4351 MULS r1,r2,r1
0x080000E8 F50D6200 ADD r2,SP,#0x800
0x080000EC F8421020 STR r1,[r2,r0,LSL #2]
0x080000F0 1C41 ADDS r1,r0,#1
0x080000F2 B2C8 UXTB r0,r1
0x080000F4 28FF CMP r0,#0xFF
0x080000F6 DDEF BLE 0x080000D8

На этом форе, на каждый новый цикл имеем дополнительную задержку в 5 тактов процессора при 100МГц.

С SRAM это будет выполняться в 2 раза быстрей, только если SRAM для процессора адресуем меньше чем 0x2000_0000. Тогда Cortex будет лазить за ними через I и D шины.
Go to the top of the page
 
+Quote Post
KRS
сообщение Jun 8 2009, 11:50
Сообщение #15


Профессионал
*****

Группа: Модераторы
Сообщений: 1 951
Регистрация: 27-08-04
Из: Санкт-Петербург
Пользователь №: 555



Цитата(-=Sergei=- @ Jun 8 2009, 15:21) *

А вы на чипе реально померяли?
С помощью SysTick или у NXP там еще таймер специальный есть.

Потому что когда я исследовал ARM7. У него цикл, попроще правда, из FLASH работал быстрее чем из SRAM встроенной.

Сообщение отредактировал KRS - Jun 8 2009, 11:52
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 21st June 2025 - 20:02
Рейтинг@Mail.ru


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