Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 15:56

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 72 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Сб дек 28, 2013 10:52 
Не в сети

Зарегистрирован: Ср май 03, 2006 11:27
Сообщения: 1394
Откуда: St.Petersburg
Благодарил (а): 2 раз.
Поблагодарили: 11 раз.
oco писал(а):
28 - 30 - it's a statistical error, I think, instructions are the same.


I tried several times. Sameness is stable.

oco писал(а):
Did you disassemble this?


Код:
0x10005 SYST_CSR !
0xFFFFFF SYST_RVR !

CODE TTST0

   SUBS    DSTK, #4
10001248   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
1000124A   6025      STR   R5, [R4, #0]
   SUBS    DSTK, #4
1000124C   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
1000124E   6025      STR   R5, [R4, #0]
   SUBS    DSTK, #4
10001250   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
10001252   6025      STR   R5, [R4, #0]
   SUBS    DSTK, #4
10001254   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
10001256   6025      STR   R5, [R4, #0]


   ADDS   DSTK,   # 4 4 *
10001258   3410      ADDS   R4, #16


   SUBS    DSTK, #4
1000125A   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
1000125C   6025      STR   R5, [R4, #0]
   SUBS    DSTK, #4
1000125E   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
10001260   6025      STR   R5, [R4, #0]
   SUBS    DSTK, #4
10001262   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
10001264   6025      STR   R5, [R4, #0]
   SUBS    DSTK, #4
10001266   3C04      SUBS   R4, #4
        STR     TOS, [DSTK]
10001268   6025      STR   R5, [R4, #0]

   ADDS   DSTK,   # 4 4 *
1000126A   3410      ADDS   R4, #16
   NEXT
1000126C   4770      BX   R14
END-CODE



CODE TTST1

  STR     TOS, [DSTK, #-4]!
1000126E   F844 5D04   STR.W   R5, [R4, #-4]!
  STR     TOS, [DSTK, #-4]!
10001272   F844 5D04   STR.W   R5, [R4, #-4]!
  STR     TOS, [DSTK, #-4]!
10001276   F844 5D04   STR.W   R5, [R4, #-4]!
  STR     TOS, [DSTK, #-4]!
1000127A   F844 5D04   STR.W   R5, [R4, #-4]!

   ADDS   DSTK,   # 4 4 *
1000127E   3410      ADDS   R4, #16

  STR     TOS, [DSTK, #-4]!
10001280   F844 5D04   STR.W   R5, [R4, #-4]!
  STR     TOS, [DSTK, #-4]!
10001284   F844 5D04   STR.W   R5, [R4, #-4]!
  STR     TOS, [DSTK, #-4]!
10001288   F844 5D04   STR.W   R5, [R4, #-4]!
  STR     TOS, [DSTK, #-4]!
1000128C   F844 5D04   STR.W   R5, [R4, #-4]!

   ADDS   DSTK,   # 4 4 *
10001290   3410      ADDS   R4, #16
   NEXT
10001292   4770      BX   R14
END-CODE


CODE TTST2

   STMDB   DSTK!, {TOS}
10001294   E924 0020   STMDB   R4!, {R5}
   STMDB   DSTK!, {TOS}
10001298   E924 0020   STMDB   R4!, {R5}
   STMDB   DSTK!, {TOS}
1000129C   E924 0020   STMDB   R4!, {R5}
   STMDB   DSTK!, {TOS}
100012A0   E924 0020   STMDB   R4!, {R5}

   ADDS   DSTK,   # 4 4 *
100012A4   3410      ADDS   R4, #16

   STMDB   DSTK!, {TOS}
100012A6   E924 0020   STMDB   R4!, {R5}
   STMDB   DSTK!, {TOS}
100012AA   E924 0020   STMDB   R4!, {R5}
   STMDB   DSTK!, {TOS}
100012AE   E924 0020   STMDB   R4!, {R5}
   STMDB   DSTK!, {TOS}
100012B2   E924 0020   STMDB   R4!, {R5}

   ADDS   DSTK,   # 4 4 *
100012B6   3410      ADDS   R4, #16
   NEXT
100012B8   4770      BX   R14
END-CODE


: ttt0 SYST_CVR @ TTST0  SYST_CVR @ - . ;
100012BA   B500      PUSH   {R14}
100012BC   F844 5D04   STR.W   R5, [R4, #-4]!
100012C0   F24E 0518   MOVW   R5, #57368 ; 0xE018
100012C4   F2CE 0500   MOVT   R5, #57344 ; 0xE000
100012C8   682D      LDR   R5, [R5, #0]
100012CA   F7FF FFBD   BL   10001248  ( TTST0 )
100012CE   F844 5D04   STR.W   R5, [R4, #-4]!
100012D2   F24E 0518   MOVW   R5, #57368 ; 0xE018
100012D6   F2CE 0500   MOVT   R5, #57344 ; 0xE000
100012DA   682D      LDR   R5, [R5, #0]
100012DC   CC01      LDMIA   R4!, {R0}
100012DE   1B45      SUBS   R5, R0, R5
100012E0   F7FF FDC4   BL   10000E6C  ( . )
100012E4   BD00      POP   {R15}
: ttt1 SYST_CVR @ TTST1  SYST_CVR @ - . ;
100012E6   B500      PUSH   {R14}
100012E8   F844 5D04   STR.W   R5, [R4, #-4]!
100012EC   F24E 0518   MOVW   R5, #57368 ; 0xE018
100012F0   F2CE 0500   MOVT   R5, #57344 ; 0xE000
100012F4   682D      LDR   R5, [R5, #0]
100012F6   F7FF FFBA   BL   1000126E  ( TTST1 )
100012FA   F844 5D04   STR.W   R5, [R4, #-4]!
100012FE   F24E 0518   MOVW   R5, #57368 ; 0xE018
10001302   F2CE 0500   MOVT   R5, #57344 ; 0xE000
10001306   682D      LDR   R5, [R5, #0]
10001308   CC01      LDMIA   R4!, {R0}
1000130A   1B45      SUBS   R5, R0, R5
1000130C   F7FF FDAE   BL   10000E6C  ( . )
10001310   BD00      POP   {R15}
: ttt2 SYST_CVR @ TTST2  SYST_CVR @ - . ;
10001312   B500      PUSH   {R14}
10001314   F844 5D04   STR.W   R5, [R4, #-4]!
10001318   F24E 0518   MOVW   R5, #57368 ; 0xE018
1000131C   F2CE 0500   MOVT   R5, #57344 ; 0xE000
10001320   682D      LDR   R5, [R5, #0]
10001322   F7FF FFB7   BL   10001294  ( TTST2 )
10001326   F844 5D04   STR.W   R5, [R4, #-4]!
1000132A   F24E 0518   MOVW   R5, #57368 ; 0xE018
1000132E   F2CE 0500   MOVT   R5, #57344 ; 0xE000
10001332   682D      LDR   R5, [R5, #0]
10001334   CC01      LDMIA   R4!, {R0}
10001336   1B45      SUBS   R5, R0, R5
10001338   F7FF FD98   BL   10000E6C  ( . )
1000133C   BD00      POP   {R15}


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Вс дек 29, 2013 01:25 
Не в сети

Зарегистрирован: Ср май 10, 2006 13:51
Сообщения: 202
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.
What assembler do you use?
arm-none-eabi-as replaces STMDB R4!, {R5} with STR.W R5, [R4, #-4]! instruction.
(There was a patch actually to follow ARM documentation here)
So I would not recommend to use STMDB with only one register in list because ARM does not recommend it. If your processor can handle this instruction it does not mean that all processors can handle it.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Пн янв 27, 2014 19:41 
Не в сети

Зарегистрирован: Ср май 10, 2006 13:51
Сообщения: 202
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.
Версия 0.5
Что нового:
    добавил контроллер lm3s316 для моделирования в Proteus. Для сборки под протеус набирайте make proteus
    мелкие изменения

Поддержкой cortex-m3 в proteus разочарован. Не работает system timer, начинает отсчет с нуля и вниз вместо того, чтобы начинать с заданного значения. И на bit-banding срабатывает reset.
Может я делаю что не так? Никто не сталкивался?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Вт фев 03, 2015 01:09 
Не в сети

Зарегистрирован: Ср май 10, 2006 13:51
Сообщения: 202
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.
Залил на гитхаб https://github.com/oco2000/m3forth


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Сб июн 27, 2015 20:34 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
у меня вопрос, не возникало ли ощущение, что процессор таки 16 битный в большей степени, и лучше делать 16-разрядный форт (тем более, что для ряда камней памяти маловато)?

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Вт июн 30, 2015 15:44 
Не в сети

Зарегистрирован: Вт ноя 06, 2012 10:41
Сообщения: 23
Благодарил (а): 4 раз.
Поблагодарили: 1 раз.
на 8-битных атмегах ведь сделали шикарный 16-битный amforth


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Вт июн 30, 2015 16:50 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7960
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Atmega, как и многие дешевые МК, становится несколько избыточной по ресурсам, поэтому уже можно и 32 бита делать, если нужно.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Вт июн 30, 2015 19:38 
Не в сети

Зарегистрирован: Ср май 10, 2006 13:51
Сообщения: 202
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.
mOleg писал(а):
у меня вопрос, не возникало ли ощущение, что процессор таки 16 битный в большей степени, и лучше делать 16-разрядный форт (тем более, что для ряда камней памяти маловато)?

Процессор 32-битный


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Вс июл 12, 2015 07:31 
Не в сети
Moderator
Moderator
Аватара пользователя

Зарегистрирован: Чт май 04, 2006 00:53
Сообщения: 5062
Откуда: был Крым, теперь Новосибирск
Благодарил (а): 23 раз.
Поблагодарили: 63 раз.
oco писал(а):
Процессор 32-битный

как бы да. Однако, памяти немного, команды 32 битные занимают 32 бита\команду. Обращение к памяти 16 битное в командах пересылки память->регистр.
Возможно я чего не уловил (только знакомлюсь помаленьку), но выигрыша от 32 бит не вижу.

_________________
Мне бы только мой крошечный вклад внести,
За короткую жизнь сплести
Хотя бы ниточку шёлка.
fleur


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Пн июл 13, 2015 11:44 
Не в сети

Зарегистрирован: Ср май 10, 2006 13:51
Сообщения: 202
Благодарил (а): 3 раз.
Поблагодарили: 4 раз.
mOleg писал(а):
как бы да. Однако, памяти немного, команды 32 битные занимают 32 бита\команду.

система команд тут Thumb-2, где очень много часто употребляемых команд (например, работа с нижней половиной регистров) занимают 16 бит в памяти
mOleg писал(а):
Обращение к памяти 16 битное в командах пересылки память->регистр.

Извините, впервые слышу об этом. При обращении к памяти по невыровненному адресу используется два обращения по выровненным адресам (см http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0337h/ch03s04s02.html)
Обращение к памяти 32-битное, но возможен и 16- и 8-битный доступ


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Пн июл 13, 2015 22:53 
Не в сети
Аватара пользователя

Зарегистрирован: Чт июн 25, 2009 11:12
Сообщения: 412
Благодарил (а): 41 раз.
Поблагодарили: 8 раз.
Renha писал(а):
на 8-битных атмегах ведь сделали шикарный 16-битный amforth

Шикарный, но очень уж медленный.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: m3forth - форт для ARM Cortex-M3
СообщениеДобавлено: Пн июл 13, 2015 23:13 
Не в сети

Зарегистрирован: Чт ноя 23, 2006 00:44
Сообщения: 494
Откуда: СПб
Благодарил (а): 19 раз.
Поблагодарили: 8 раз.
dynamic-wind писал(а):
Renha писал(а):
на 8-битных атмегах ведь сделали шикарный 16-битный amforth

Шикарный, но очень уж медленный.

А есть ещё доступные варианты (кроме FF5)?


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 72 ]  На страницу Пред.  1, 2, 3, 4, 5

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB