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

...
Google Search
Forth-FAQ Spy Grafic

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




Начать новую тему Ответить на тему  [ Сообщений: 413 ]  На страницу Пред.  1 ... 21, 22, 23, 24, 25, 26, 27, 28  След.
Автор Сообщение
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Вт ноя 22, 2022 23:15 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7990
Благодарил (а): 26 раз.
Поблагодарили: 144 раз.
Total Vacuum писал(а):
Кстати, кто-нибудь знает какой-нибудь красивый и желательно короткий способ реализовать

Есть еще вариант вида syscall ( x n -- fn(x)). Делается пачка вычислителей, потом на стек кладется номер того, от кого нужно забрать результат.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Ср ноя 23, 2022 19:35 
Не в сети
Аватара пользователя

Зарегистрирован: Ср июл 03, 2019 11:10
Сообщения: 482
Откуда: Москва
Благодарил (а): 57 раз.
Поблагодарили: 24 раз.
KPG писал(а):
P.S. Результат эмуляции команд ARM на "Форт" не выглядит так уж безнадёжным в полученном результате.
Да я бы тоже не сказал, что всё безнадёжно :) Вот сейчас ради интереса поменял в системе команд 2/ на rshift (арифметический). И на одной из прошивок nqueens стал проигрывать ARM не в 7 с хвостиком, а в 6 раз. И бродилка стала бродить еще быстрее: 147fps против 131fps и 79fps против 73fps для версий с разной степенью "параллельности", с ARM и прочими уже и не сравниваю, ибо они безнадежно отстают в режиме "Форт". :) И радует, что максимально возможная тактовая частота не просела, а так и осталась в районе 72MHz. А если бы на месте моего процессора был любой другой Форт-процессор не с 16 командами, а с чуть более развитой системой команд (хотя бы 6-8 бит на команду) и с литералами/call/jz за такт-два, то не факт, что ARM бы устоял и в задаче с ферзями под таким натиском :)

Вот хочу попробовать перелопатить работу с литералами, вместо нынешних 5 команд push0 и 0-3 сделать 4 команды (zero/nibble/byte/word), которые пихают в стек 0 и переключают процессор в режим ввода литералов на 0, 1, 2 или 4 такта. Код станет более плотным и быстрым, а также освободится один опкод, который можно задействовать для чего-то интересного/полезного.
Другие варианты:
- word и 4 свободных опкода
- byte, word и 3 свободных опкода
- и т.д. и т.п., вариантов миллион

Hishnik писал(а):
Есть еще вариант вида syscall ( x n -- fn(x)). Делается пачка вычислителей, потом на стек кладется номер того, от кого нужно забрать результат.
Это уже будет читерство, ARM обидится :D


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Ср ноя 23, 2022 20:42 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Total Vacuum писал(а):
И радует, что максимально возможная тактовая частота не просела, а так и осталась в районе 72MHz.

А, не есть ли это признак того, что сама IDE используемая от производителя как то ограничивает максимальную частоту достижимую проектом для бюджетного кристалла? (как гипотеза)
сколько интересно в попугаях могло бы быть получено на Zync-e?

P.S. И, да у меня такие же есть кристалы в отладочной плате Digilent - Nexys 2 (Spartan 3E) и в Gameduino-1 (Spartan3AN),
но есть и платта Parallella, что как бы "намек" от Хищника начать планомерно с ними работать.:)
но, есть же, к примеру, и не менее интересная плата Arduino-101 (2-a контроллера - Quark-x86+ARC) к которой и подключена и опробована в примерах Gameduino-1 (вроде в плату можнo поместить штатно и 1Kб 16-ти битных команд в форме "скрипта")

Х.З. как продвинуть себя к работе с ними, если не найти какого то значимого стимула и кому, при этом, будут интересны полученные результаты. :)
Фонды развития, возможно, это хорошо, но где их искать.

Total Vacuum писал(а):
Это уже будет читерство, ARM обидится :D

Выше в топике уже это было в виде двух команд процессора - "загрузка литерала на стек" и его "исполнение" по команде EXECUTE, другие литералы на стеке - параметры слова для исполнения.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Чт ноя 24, 2022 05:37 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Страничка 32-х разрядного процессора с 2002г. на VHDL. с "самописным" инструментарием для создания ПО. :)
vc232cpu

The TTL-Retro Computer is a Stack Computer
Вложение:
mnemonic.png
mnemonic.png [ 35.28 Кб | Просмотров: 7345 ]


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Чт ноя 24, 2022 11:12 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7990
Благодарил (а): 26 раз.
Поблагодарили: 144 раз.
KPG писал(а):
А, не есть ли это признак того, что сама IDE используемая от производителя как то ограничивает максимальную частоту достижимую проектом для бюджетного кристалла?

Вот тут ключевой вопрос - ЗАЧЕМ? И так есть конкуренция, и так кристаллы low-cost, а техпроцесс не самый быстрый. Чем быстрее получится, тем лучше для производителя.

KPG писал(а):
Страничка 32-х разрядного процессора с 2002г. на VHDL. с "самописным" инструментарием для создания ПО.

Ну и как процессор-то сделать? :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Чт ноя 24, 2022 12:11 
Не в сети
Аватара пользователя

Зарегистрирован: Ср июл 03, 2019 11:10
Сообщения: 482
Откуда: Москва
Благодарил (а): 57 раз.
Поблагодарили: 24 раз.
KPG писал(а):
Х.З. как продвинуть себя к работе с ними, если не найти какого то значимого стимула и кому, при этом, будут интересны полученные результаты. :
Ну а саморазвитие чем не цель? :) Тем более, что платы с ПЛИС уже на руках есть, иначе зачем они вообще тогда нужны? :) Ну а результаты и в.т.ч. их обсуждение здесь - это пища для размышлений и обмен идеями, для кого-то (в т.ч. для меня) польза по любому будет...
Чтобы себя продвинуть, надо начать с самого главного: установить Xilinx ISE 14.7 и каждый день делать по капельке, тогда и результат не заставит себя ждать :) После установки надо создать проект, добавить в него схему (если нужно), ядро, периферию, назначить ноги, "скомпилировать" и "прошить". Если нужно, я могу свои исходники выложить и подсказать, куда тыкать, чтобы быстрее освоиться в среде разработки, тем более, что у меня такая же ПЛИС. Там ничего сверхсложного, в моем примитивном варианте ядра около 50 строк на верилоге и еще UART строк на 30.

KPG писал(а):
А, не есть ли это признак того, что сама IDE используемая от производителя как то ограничивает максимальную частоту достижимую проектом для бюджетного кристалла? (как гипотеза)
Не, не. Те же цифры по частоте и при сборке с помощью Xilinx ISE 12.3 получаются, а в то время (наверное) еще не было мэйнстримом считать Spartan-3 устаревшим :) Полагаю, что у меня частота режется в 2 раза или больше из-за схемы фронт/спад: стеки и счетчик команд по спаду тактового сигнала обновляются, а запись/чтение в/из памяти - по фронту. Ну а на каких-то схемах, когда еще только начинал, и 100MHz было и 200 вроде, но тогда делал неправильно, схема не работала и, наверное, вырождалась во что-то слишком примитивное, что могло и на высоких частотах работать :)

KPG писал(а):
P.S. И, да у меня такие же есть кристалы в отладочной плате Digilent - Nexys 2 (Spartan 3E) и в Gameduino-1 (Spartan3AN),
но есть и платта Parallella, что как бы "намек" от Хищника начать планомерно с ними работать.:)
У меня тоже валяется какая-то плата с надписями Digilent и Spartan-3E Starter Kit, но я даже не знаю, как к ней подступиться, инструкций нет, тренируюсь на рабочей плате, где Spartan-3E в корпусе VQ100 стоит, есть другие платы, где кажись 3A в коррусе PQ208. Думаю, что без разницы, на чем тренироваться. :)

KPG писал(а):
Выше в топике уже это было в виде двух команд процессора - "загрузка литерала на стек" и его "исполнение" по команде EXECUTE, другие литералы на стеке - параметры слова для исполнения.
:) Можно даже мою систему команд один к одному на это переложить:
0 0
1 10
2 110
3 1110
push0 11110
...
2/ 1111111111111110
Можно убрать часть команд и пересортировать в порядке убывания частоты использования, ну и вообще не обязательно, чтобы общее количество команд было степенью числа 2. Или даже схему со словарем сделать, как tsdima предлагал, такое, кажись, в LZSS было. :)


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Чт ноя 24, 2022 16:42 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7990
Благодарил (а): 26 раз.
Поблагодарили: 144 раз.
Можо и в телеграм выползать за онлайн-проектированием.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пт ноя 25, 2022 06:21 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Tine Alpha is an 8-bit MISC (Minimal Instruction Set Computer)
Изображение
Цитата:
Tine Alpha is an 8-bit MISC (Minimal Instruction Set Computer) processor architecture with a 4-stage pipelining. Initiated in 2016 as a prototype processor with pipelining for the Limen processor series. It has the following significant properties:

Harvard memory architecture
May address up to 256 B of each instructions and data
Accumulator-based design
Conditional skip instructions

Tine Alpha Programmer's manual.pdf


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пт ноя 25, 2022 12:23 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7990
Благодарил (а): 26 раз.
Поблагодарили: 144 раз.
KPG писал(а):
Tine Alpha is an 8-bit MISC (Minimal Instruction Set Computer)

Гениальная вещь, наверное. Боюсь, мне такое и не понять. Подожду победного шествия этого величайшего проекта по миру, а там видно будет :))


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пт ноя 25, 2022 16:49 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Hishnik писал(а):
KPG писал(а):
Tine Alpha is an 8-bit MISC (Minimal Instruction Set Computer)

Гениальная вещь, наверное. Боюсь, мне такое и не понять. Подожду победного шествия этого величайшего проекта по миру, а там видно будет :))

Вряд ли величайший в сравнении с представленными проектами от Хищника, но подумать об выбранных решениях автором позволяет подумать. :))


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пт ноя 25, 2022 16:57 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7990
Благодарил (а): 26 раз.
Поблагодарили: 144 раз.
KPG писал(а):
но подумать об выбранных решениях автором позволяет подумать

Не позволяет. Копание в сделанном кем-то похоже на изучение домашних работ школьников вместо чтения учебника.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пт ноя 25, 2022 17:15 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Hishnik писал(а):
KPG писал(а):
но подумать об выбранных решениях автором позволяет подумать

Не позволяет. Копание в сделанном кем-то похоже на изучение домашних работ школьников вместо чтения учебника.

Неужели действительно школьников, а учебники, наверное сразу профессора пишут минуя этап школьного обучения.

P.S. Вообще то, некоторая база знаний у меня существует, чтобы не приклеивать заранее и огульно какие то ярлыки на сделанные кем то проекты, хотя бы из уважения проделанной и представленной на публику работы.


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пт ноя 25, 2022 17:47 
Не в сети
Administrator
Administrator
Аватара пользователя

Зарегистрирован: Вт май 02, 2006 22:48
Сообщения: 7990
Благодарил (а): 26 раз.
Поблагодарили: 144 раз.
KPG писал(а):
а учебники, наверное сразу профессора пишут

Хорошие учебники именно профессора и пишут. Они сами все эти этапы успешно прошли и учебниками помогают не растрачивать время впустую.
KPG писал(а):
хотя бы из уважения проделанной и представленной на публику работы.

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


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Сб ноя 26, 2022 21:23 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
Total Vacuum писал(а):
По эффективности есть, а вот по наполнению интересно. Это, как мне кажется, как раз тот минимум, на базе которого можно сделать полноценный Форт. Странно только, что товарищ не задействовал целых 3 опкода.
:) Но мне с этим товарищем не по пути, ибо практически никогда не делаю r> r@ >r: у меня всегда подпрограммный шитый код и стек возвратов только для call/ret. Да и не только у меня. В PIC, например, если не ошибаюсь, к содержимому стека возвратов нет доступа, только call/ret, только хардкор.

Может просто в описание не попали?
Здесь описание подобной системы команд, но уже без пропусков.
BugsForth

P.S. Из этого одноимённого топика
с форума https://anycpu.org/forum

https://www.homebrewcpuring.org/

Small soft core uP Inventory.pdf

Создаем виртуальный Forth-процессор


Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
 Заголовок сообщения: Re: Как сделать форт-процессор 2022
СообщениеДобавлено: Пн ноя 28, 2022 03:33 
Не в сети

Зарегистрирован: Пн янв 07, 2013 22:40
Сообщения: 2141
Благодарил (а): 8 раз.
Поблагодарили: 74 раз.
KPG писал(а):
BugsForth

Обновлённое описание данного проекта от автора и файлы самого проекта.

Вложение:
BugsBoard_Primer.pdf [140.56 Кб]
Скачиваний: 156


P.S. Адресное расположение вложений взято из файла в описании проекта.
Исходники в следующем сообщении т.к. возможности форума позволяют прикрепить только один файл.


Последний раз редактировалось KPG Пн ноя 28, 2022 03:49, всего редактировалось 3 раз(а).

Вернуться к началу
 Профиль Отправить личное сообщение  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 413 ]  На страницу Пред.  1 ... 21, 22, 23, 24, 25, 26, 27, 28  След.

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


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

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


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

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