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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 43 ]  На страницу Пред.  1, 2, 3
Автор Сообщение
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Ср июн 30, 2021 12:18 
Не в сети
Аватара пользователя

Зарегистрирован: Чт апр 26, 2007 21:09
Сообщения: 303
Благодарил (а): 12 раз.
Поблагодарили: 10 раз.
Hishnik писал(а):
Добавление независимых процессоров для работы с такими критичными кусками кода, или же просто для облегчения работы программиста - вполне перспективное направление.
Напоминает решения Parallax (Propeller-ы ихние), ну и - GreenArray...

Вообще, самое понятие прерывания - "от бедности" прижилось. Когда все (даже "элементарные") "подзадачи", могут выполняться каждая - на отдельном "ядре", понятие "прерывание" - просто исчезает, "как класс" из программирования. :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Ср июн 30, 2021 13:34 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7958
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Wlad писал(а):
Напоминает решения Parallax (Propeller-ы ихние), ну и - GreenArray...

Они оба немного другие. Propeller - это "толстые" ядра, разделяющие одну системную шину. Общая часть, с точки зрения логической структуры, у них довольно мала. GreenArray - это... array. Из этого вытекает, что у него есть периферийные ядра и внутренние, а значит, возникает задача передачи данных от периферии.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Ср июл 07, 2021 01:52 
Не в сети
Аватара пользователя

Зарегистрирован: Чт апр 26, 2007 21:09
Сообщения: 303
Благодарил (а): 12 раз.
Поблагодарили: 10 раз.
Hishnik писал(а):
Если создавать оригинальную систему из нескольких ядер с произвольно разрабатываемой схемой соединений, то можно устранить потенциально узкие места. Если одно ядро не справляется - ему добавляется второе, забирающее часть работы.
Я имел в виду структуру "железа", определяемую задачей, а не "просто универсальный массив исполнителей". Что-то вроде Active Cells. Понятно, что FPGA сейчас кучу всего промоделировать способны, но там, всё же - "тупо-универсальный подход" - "на все случаи жизни, в рамках ресурсов".


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Ср июл 07, 2021 18:45 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7958
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
В FPGA как раз и следует собирать систему для конкретной задачи. Не "массив исполнителей", а набор ядер под конкретные периферийные устройства и алгоритмы. При этом имеет смысл заранее создать такой набор ядер, чтобы не придумывать каждый раз сверхспециализированный процессор.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Чт июл 08, 2021 12:04 
Не в сети
Аватара пользователя

Зарегистрирован: Чт апр 26, 2007 21:09
Сообщения: 303
Благодарил (а): 12 раз.
Поблагодарили: 10 раз.
Hishnik писал(а):
В FPGA как раз и следует собирать систему для конкретной задачи. Не "массив исполнителей", а набор ядер под конкретные периферийные устройства и алгоритмы. При этом имеет смысл заранее создать такой набор ядер, чтобы не придумывать каждый раз сверхспециализированный процессор.
Я имел в виду что-то подобное:
https://www.researchgate.net/publication/254037228_Active_Cells_A_Computing_Model_for_Rapid_Construction_of_On-Chip_Multi-core_Systems


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Чт июл 08, 2021 22:05 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7958
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Это все вокруг одной идеи - гетерогенная система на кристалле, собираемая под конкретный набор периферийных устройств и задач. В статье два ядра. Может быть три разных архитектуры, четыре или пять. Зависит от того, когда сложность программирования и поддержки превысит положительный эффект от специализации.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Пт апр 08, 2022 15:21 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
ZTH1 Форт (стековый) процессор в директории с Форт системой для него на VHDL

P.S. Мне, всё таки, кажется полезным/правильным иметь возможность в системе команд процессора с 0-адресной системой команд иметь возможность отдельной командой по адресу (по умолчанию считывать/записывать данные в "теневое" ОЗУ с таким же адресом как у команды в адресном пространстве исполняемого кода 0-адресной архитектуры).
т.е. по месту использования такой команды получать/сохранять данные в "теневом" ОЗУ однобайтовой командой помимо других железных Форт команд.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Сб апр 09, 2022 00:17 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7958
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
Вот так вот вместо работы на обеспечение технологического суверенитета России собираются ссылки на проекты из недружественных государств...


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Пт май 12, 2023 20:57 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
https://github.com/chochain/eJsv32
Цитата:
Реинкарнация eP32, 32-битного процессора от доктора Тинга. Однако, отклоняясь от дальнего происхождения eForth, он использует байт-код Java в качестве внутреннего набора инструкций и, следовательно, название J. После десятилетий разработки ЦП доктор Тинг в написании руководства для eJsv32 пришел к следующему выводу...


Изображение

P.S. R.I.P
Цитата:
Mr. Chen-Hanson Ting
August 29, 1939 - May 30, 2022

The family of Mr. Chen-Hanson Ting created this Life Tributes page to make it easy to share your memories.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Сб май 13, 2023 00:47 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7958
Благодарил (а): 25 раз.
Поблагодарили: 144 раз.
KPG писал(а):
Mr. Chen-Hanson Ting
August 29, 1939 - May 30, 2022

Ох, жалко.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Ср май 31, 2023 11:16 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Концепция небольшого RPN-процессора с интересными возможностями
https://hackaday.io/project/10553-cpu7 - CPU7

CPU7.pdf
emulation.zp
Код:
'! usage: addr len bubblesort8
:bubblesort8
  dup 1 > if          `! check if the array is more than one element
    enter
    1 over +          `! calculate end=addr+len; stack: beg, end
    1 swap dup        `! stack: end, beg, addr
    repeat
      dup rd8         `! stack: end, beg, addr, [addr]
      1 over ++ rd8   `! stack: end, beg, addr, [addr], [addr+1]
      < if            `! stack: end, beg, addr
        ++            `! addr=addr+1
      else
        dup rd8       `! stack: end, beg, addr, [addr]
        1 over ++ rd8 `! stack: end, beg, addr, [addr], [addr+1]
        2 over wr8    `! stack: end, beg, addr, [addr]
        1 over ++ wr8 `! stack: end, beg, addr
        drop dup      `! addr=beg; stack: end, beg, addr
      endif
    dup 3 over < until
    leave             `! clean up the data stack
  endif
  drop drop           `! remove the input parameters from the data stack
;

Код:
`! ==== collatz sequence ====
1000 1 =!
2
repeat
   dup
   :collatz_count
   0 0 =!
   repeat
      dup 1 and if
      3 * 1 + else
      1 shr endif
      0 ! ++ 0 =!
      trace
      100000 delay
      dup 1 ==
   until
   drop
   0 trace
   1000000 delay drop
   ++
   trace
   1000000 delay
   dup 1 ! >

until
print_stack
acall

Код:
`! ==== counter ====
154 trace 1 =!
1 ! trace print_stack
acall

1000 1 =!
6
repeat
   :collatz_count
   0 0 =!
   repeat
      0 ! ++ 0 =!
      trace
      --
      1000000 delay
      dup 1 ==
      print_stack
   until
   154 trace
   1000000 delay drop
   ++
   trace
   1000000 delay
   dup 1 !
   >
until

255 trace
1000000 delay
0 trace
1000000 delay
255 trace
1000000 delay
0 trace
1000000 delay
acall

P.S. В этой директории проекта на Github его реализация на Verilog CPU7


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Пт июл 14, 2023 22:48 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
microCore implemented on the simple RZ-EASY prototyping board with the EP4CE6 FPGA. Running @ 33 MHz ~ 25 M Forth instructions/second.

https://www.youtube.com/watch?v=pqhgPdtItjE&t=7415s


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: A FPGA based Forth microprocessor
СообщениеДобавлено: Сб авг 05, 2023 01:58 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Ещё вариант Форт процессора в проекте на Github похожего на J1
DCPU


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

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


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

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


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

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