KPG 2 March 31 Posted March 31 (edited) · Report post My4th - Minimalistic FORTH computer with discrete CPU. (дата публикации проекта на сайте автора 2023-03-24) Edited March 31 by KPG Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 1 Posted April 1 (edited) · Report post P.S. Ещё вариант минималистического "Форт" процессора в TTL TOM1 (14 цифровых TTL компонент) Модель процессора отлажена в программе Digital (в опциях программы есть возможность экспорта в VHDL, VERILOG) Opcodes This is a non-exhaustive list of opcodes supported by the TOM-1: halt no_op push_literal — pushes a 16-bit operand to the top of stack branch0 — if the top of stack is equal to 0, jump to a 16-bit address (operand) add — pops values A and B from the data stack, pushes the value A + B to the top of stack nand — pops values A and B from the data stack, pushes the value A nand B to the top of stack load — pops an address from the stack, pushes the value of that address in RAM to the top of stack store — pops an address, then a value, from the stack and sets that address in RAM to the value return_push — pushes the value at the top of the stack onto the return stack return_pop — pops a value off the return stack and pushes it to the top of stack dup — duplicates the value a the top of stack drop — drops the top of the stack in — read a value from the 8-bit I/O port out — output a value on the 8-bit I/O port I/O Port The I/O port on the TOM-1 is a bidirectional transceiver that can read and write to any address in RAM. This port has the following pins: Power GND 8 bits of data (low byte of 2-byte value in RAM) CLK Data Valid По дизайну и системе команд: nybbleForth (Verilog) Code Name Size Operation 0 noop 4 No operation 1 @ 4 Load word from memory 2 call 4+16 Push P to return stack, fetch a word and jump 3 exit 4 Pop P from return stack 4 (literal) 4+16 Fetch a word and push to stack 7 r> 4 Pop return stack and push to data stack 8 + 4 Add top two items on data stack 9 nand 4 Inverted conjunction of the two top items on data stack 10 >r 4 Pop data stack and push to return stack 11 0branch 4+8 Fetch a byte and add to P if popped data stack is zero 12 ! 4 Store word into memory Edited April 1 by KPG Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 2 Posted April 2 · Report post Некотрое более заинтересованное обсуждение сабжа на площадке форума nedopc.org в топике Форт-компьютеры на рассыпухе Quote Share this post Link to post Share on other sites More sharing options...
tonyk_av 19 April 2 Posted April 2 · Report post 2 hours ago, KPG said: Некотрое более заинтересованное обсуждение сабжа на площадке форума nedopc.org в топике Форт-компьютеры на рассыпухе Можно просто для моего понимания пояснить практическую пользу от этого? Я ни разу не видел ни одного практического применения Форт, только в книжках ссылки на всякие телескопы и прочие штучки из какой-то параллельной Вселенной, которые никто вживую не видел. Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 2 Posted April 2 (edited) · Report post Just now, tonyk_av said: Можно просто для моего понимания пояснить практическую пользу от этого? Я ни разу не видел ни одного практического применения Форт, только в книжках ссылки на всякие телескопы и прочие штучки из какой-то параллельной Вселенной, которые никто вживую не видел. А, какой ответ Вы ожидаете услышать? Если слово Forth ввести в поисковый запрос на Github https://github.com/search?q=Forth , то можно увидеть некоторую выдачу проектов где он непосредственный участник (можно отсортировать и по времени изменения). Топики со словом Forth https://github.com/search?q=Forth&type=topics (в большей степени для применения в плане программирования и встраивания (Embedded) железа), поэтому и много разных сделано/делается Форт-систем. P.S. Forth тег в Q&A - вопросах/ответах на Хабр Можете поспрашать об Вашем вопросе в телеграмм канале (меня там нет) https://t.me/ruforth Quote [TF] Форт и общение фортеров 70 members, 10 online Обсуждение конкатенативных языков программирования и тематическое общение программистов. Форум: fforum.winglion.ru Или предлагаете, к примеру, начать цитировать какую то информацию, к примеру, представленную в рамках того же Форт форума? Сам, какие то топики, связанные с обсуждением Форт на местном форуме создал лет 17-ть назад. 🙂 Edited April 2 by KPG Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 2 Posted April 2 (edited) · Report post А, практический смысл/кредо от Форт можно представить и в такой ассоциации: Есть, к примеру, шуруповёрт, но от отвёртки ещё никто не отказался. (понимайте как можете это) Ответы по Форт на mail.ru конечно не сравнить с вопросами/ответами на площадке https://stackoverflow.com (слово стек и здесь применили 🙂 https://stackoverflow.com/questions/tagged/forth (273 questions) https://stackoverflow.com/questions/tagged/gforth (118 questions) https://stackoverflow.com/questions/tagged/win32forth (2 questions) https://stackoverflow.com/questions/tagged/vfxforth (2 questions) https://stackoverflow.com/questions/tagged/color-forth (1 question) https://www.reddit.com/r/Forth - The programming language for low-fat computing Язык Forth - зачем нужен, что можно делать на нём? Edited April 2 by KPG Quote Share this post Link to post Share on other sites More sharing options...
alexunder 4 April 2 Posted April 2 · Report post О, чудесно. У меня комплектухи в запасах на десятки таких компьютеров )) Quote Share this post Link to post Share on other sites More sharing options...
xvr 12 April 2 Posted April 2 · Report post On 3/31/2023 at 8:13 AM, KPG said: My4th - Minimalistic FORTH computer with discrete CPU. (дата публикации проекта на сайте автора 2023-03-24) Не, это не спортивно. Даёшь FORTH компьютер на транзисторах! А ешё лучше на лампах. Так как никакого практического смысла это поделее не имеет, то ценность его можно оченить только с археологической точки зрения 🙂 Если действительно нужен FORTH компьютер (пока оставим за бортом вопрос кому и зачем он мог понадобится), то нужно было делать его на какой нибудь FPGA в встроенной флэшкой (какой нибудь из GoWin'ов например). Туда штук 100 FORTH процессоров влезет - можно сразу FORTH супер кластер забабахать. Quote Share this post Link to post Share on other sites More sharing options...
Plain 122 April 2 Posted April 2 · Report post 10 часов назад, KPG сказал: какой ответ Вы ожидаете услышать? Очевидно, вопрос был, какой смысл именно в такой конструкции — заливка краской недвусмысленно намекает, что автор не планировал предоставлять пользователю возможность что-либо с ней делать — 40 лет назад я изучал Форт тоже на TTL, но это был настоящий компьютер, с дисплеем, клавиатурой, внешним накопителем, и т.п., но в котором эту TTL можно было перепахать под себя всю. Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 2 Posted April 2 · Report post Just now, Plain said: Очевидно, вопрос был, какой смысл именно в такой конструкции — заливка краской недвусмысленно намекает, что автор не планировал предоставлять пользователю возможность что-либо с ней делать — 40 лет назад я изучал Форт тоже на TTL, но это был настоящий компьютер, с дисплеем, клавиатурой, внешним накопителем, и т.п., но в котором эту TTL можно было перепахать под себя всю. Интересно, а что это был за компьютер? Неужели действительно с аппаратным Форт внутри? То, что платы залиты белой краской, то это, как понимаю, для представления девайса для продажи любителям в презенабельном виде, (предположу, что для покупки западными любителями "TTL" для поддержки автора проекта) Тот же проект Gigatron TTL компьютера вообще обрамлён в деревянный корпус, но это не помешало проекту найти свою группу интереса около него для обсуждения каких то идей на форуме поддержки проекта и прдавать в виде конструктора для сборки. Quote Share this post Link to post Share on other sites More sharing options...
Plain 122 April 3 Posted April 3 · Report post Нет, был обычный компьютер на аппаратном ассемблере, для решения практических задач, а Форт на нём кто-то написал похоже в учебных целях, тогда это было модно,— ну я его быстро изучил, полностью и до предела, а поскольку практического смысла не нашёл, сразу забыл. Quote Share this post Link to post Share on other sites More sharing options...
HardEgor 48 April 3 Posted April 3 · Report post 12 часов назад, KPG сказал: То, что платы залиты белой краской, то это, как понимаю, для представления девайса для продажи любителям в презенабельном виде, Да нет, это стандартная опция покрытия плат, так же как обычная зеленка, только есть выбор разных цветов(от белого до черного) и они непрозрачные. Ну и аккуратная пайка естественно. Quote Share this post Link to post Share on other sites More sharing options...
artemkad 40 April 3 Posted April 3 · Report post 15 часов назад, xvr сказал: то нужно было делать его на какой нибудь FPGA Ну так давноhttp://fforum.winglion.ru/viewtopic.php?f=3&t=3322 ... Причем многоядерные. Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 3 Posted April 3 (edited) · Report post 2 hours ago, Plain said: Нет, был обычный компьютер на аппаратном ассемблере, для решения практических задач, а Форт на нём кто-то написал похоже в учебных целях, тогда это было модно,— ну я его быстро изучил, полностью и до предела, а поскольку практического смысла не нашёл, сразу забыл. Сейчас, конечно, уже далеко до той популярности Форта из времени 80-х годов. 🙂 (но сообщество западных "старпёров" не унывает и тусуется в Zoom публикуя видео группы Forth2020) Но, в используемом "широко" софте, всё же, его можно встретить как, к примеру, программу nncron (и написана на SPF3 и имеет встроенный вариант Форт языка для скриптов). Форум у программы не сказать что особо активен сейчас в сравнении с программой AutoIT. Edited April 3 by KPG Quote Share this post Link to post Share on other sites More sharing options...
KPG 2 April 3 Posted April 3 (edited) · Report post Сделал автоперевод материала представленного на авторской странице (за небольшим исключением, как список слов и листингов кода подключения дополнительных устройств - не нуждающиихся в переводе) P.S. Как понимаю, в целом, не сильно бюджетно повторить проект по комплектации. 🙂 Здесь ещё один сторонний взгляд на реализованную систему команд микропроцессора в этом проекте Edited April 3 by KPG Quote Share this post Link to post Share on other sites More sharing options...