nedoPC.org

Community of electronics hobbyists established in 2002
Atom Feed | View unanswered posts | View active topics It is currently 28 Sep 2022 19:51



Reply to topic  [ 49 posts ]  Go to page Previous  1, 2, 3, 4  Next
Подборка процессоров на россыпухе 
Author Message
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 20330
Location: Silicon Valley
Reply with quote
Про Gigatron ушло в отдельный топик: http://www.nedopc.org/forum/viewtopic.php?f=68&t=20128

_________________
:eugeek: https://twitter.com/Shaos1973


17 Aug 2020 18:00
Profile WWW
Novelist

Joined: 18 Feb 2019 16:46
Posts: 26
Reply with quote
не знаю - в какую ветку написать. Вроде эта соответствует.
Попалась схема процессора:
может кто-нибудь знает что это и где найти инфо ?


Attachments:
cpu-.png
cpu-.png [ 628.36 KiB | Viewed 1272 times ]
16 Mar 2022 04:00
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
ra3qdp wrote:
Попалась схема процессора:
может кто-нибудь знает что это и где найти инфо ?

Ну это не совсем "схема процессора"... это что-то типа блок-схемы с элементами схемы...
Либо это какой-то учебный материал, типа иллюстрации работы процессора, либо это -
скриншот опять же какой-то учебной программы-симулятора простого процессора.

_________________
iLavr


17 Mar 2022 02:24
Profile
Novelist

Joined: 18 Feb 2019 16:46
Posts: 26
Reply with quote
почему Вы решили, что это не полная схема ?

Я не вижу возможности в этой схеме выставить 16-ти разрядный адрес (за 2 раза, а 256 адресов как-то маловато),
а Вы видите ?


17 Mar 2022 03:59
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
ra3qdp wrote:
почему Вы решили, что это не полная схема ?
Потому что я знаю, как выглядит полная схема.

ra3qdp wrote:
Я не вижу возможности в этой схеме выставить 16-ти разрядный адрес (за 2 раза, а 256 адресов как-то маловато),
а Вы видите ?
А здесь такой возможности, судя по всему, и нет.
Это что-то такое демонстрационно-учебное, насколько я вижу...

_________________
iLavr


17 Mar 2022 05:59
Profile
Novelist

Joined: 18 Feb 2019 16:46
Posts: 26
Reply with quote
жаль, что про приведенной схеме никто так и не опознал - что это.


17 Mar 2022 06:40
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
ra3qdp wrote:
жаль, что про приведенной схеме никто так и не опознал - что это.

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

Чтобы было понятно, в чем дело, это рисунок вот такого типа.
Attachment:
image023.jpg
image023.jpg [ 10.7 KiB | Viewed 1214 times ]

_________________
iLavr


17 Mar 2022 07:58
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
ra3qdp wrote:
жаль, что про приведенной схеме никто так и не опознал - что это.
Почему же, опознали: это не схема, и сделать это по этой картинке возможности нет.
Потому как отдельные части этого рисунка - просто коробки с названиями, а не элементы.

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

Я с самого начала прогнал это изображение через поисковики, но - безуспешно... :(

Но что-то у нас похолодало... я надумал в воскресенье лениться, валяться на тёплом диване, и чтобы
совсем уж не бездельничать, я почистил слегка эту блок-схему, чтобы надписи не мешали... :wink:
Attachment:
cpu-2.png
cpu-2.png [ 646.92 KiB | Viewed 394 times ]

После чего я окончательно убедился, что блок-схема из какой-то учебной литературы, и возможно,
у автора есть анимированная модель, где подсвечивается прохождение сигналов.
Я решил прогуглить по характерным названиям на блок-схеме: ALU, CONTROL UNIT, IAR.
Этого неожиданно оказалось Гуглу достаточно и источник картинки я нашел! :kruto:

Это оказалась книга: But How Do It Know? -
The Basic Principles of Computers for Everyone.

by Scott, J Clark
Attachment:
cpu-book.jpg
cpu-book.jpg [ 61.11 KiB | Viewed 394 times ]

Судя по всему, есть и сайт, где изложенный в книге материал популяризируют:
http://www.buthowdoitknow.com/cpu_build.html

По крайней мере из видео с этого сайта я вновь вытащил искомую схему в черно-белом виде: :wink:
Attachment:
cpu-maxresdefault.jpg
cpu-maxresdefault.jpg [ 216.07 KiB | Viewed 394 times ]

 ТО САМОЕ ВИДЕО ПРО DIY-CPU


Есть у меня предположение, что на следующей странице эта книга или часть её есть в формате .pdf
https://pdfroom.com/books/but-how-do-it-know-the-basic-principles-of-computers-for-everyone/zk2AqOee2PJ
Но у меня какие-то траблы с открытием этого ресурса... :(

Возможно, Shaos нам сможет помочь эту, судя по всему, интересную книжечку скачать и полистать? :ebiggrin:

_________________
iLavr


12 Sep 2022 13:34
Profile
Admin
User avatar

Joined: 09 Jan 2003 00:22
Posts: 20330
Location: Silicon Valley
Reply with quote
У меня в Firefox качнулось в 2 щелчка мыши :roll:

_________________
:eugeek: https://twitter.com/Shaos1973


13 Sep 2022 23:07
Profile WWW
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
ra3qdp wrote:
почему Вы решили, что это не полная схема ?
Потому что я знаю, как выглядит полная схема.
Пока не было книжки, я прикидывал, как бы я заполнил некоторые "коробочки" этой блок схемы... :wink:

В частности, вот эта коробочка, названная автором "stepper" ("шаговик" :lol: ) у меня сомнений практически не вызывала:
Attachment:
Т-Stepper0.PNG
Т-Stepper0.PNG [ 21.04 KiB | Viewed 330 times ]

Я бы впихнул туда счетчик со сбросом и дешифратор, как чаще всего и делают. В частности, в EDUC-8
в этой позиции стоит счетчик, совмещенный с дешифратором
.

Но автор этой конструкции решил иначе: "stepper" у него выполнен на сдвиговом регистре, собранном
буквально на NAND-ах! :roll:
Attachment:
Т-Stepper1.PNG
Т-Stepper1.PNG [ 63.28 KiB | Viewed 330 times ]
Я такого решения, честно говоря, не встречал, поэтому интересно стало посмотреть на этот узел в действии.

Я смоделировал "stepper" в Proteus, но не стал делать D-триггеров из NAND, а поставил обычные 7474.
Attachment:
Stepper_CPU.zip [58.65 KiB]
Downloaded 8 times

На удивление - весьма неплохо работает! :o
Правда RESET по схеме автора сбоит, но я подхалтурил общий сброс через входы /RES D-триггеров 7474.

Откровенно говоря, повторять эту конструкцию на рассыпухе я бы не советовал. :-?
С таким количеством регистров с Z-состоянием выхода можно состряпать более интересный DIY CPU!
Чем-то это напоминает затею Ч.Петцольда "Код" - интересно, доделал его кто-либо? :roll:

Но можно невозбранно поиграться моделью в LogiSim: http://www.buthowdoitknow.com/cpu_simulator.html

И онлайн симуляция на JS есть: http://www.buthowdoitknow.com/cpu_model_intro.html

На FPGA умельцы также проект воплотили: http://github.com/patrickleboutillier/jcscpu-hw

_________________
iLavr


14 Sep 2022 06:28
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Shaos wrote:
У меня в Firefox качнулось в 2 щелчка мыши :roll:
Это потому что я решил не ждать, когда (и если) ты поможешь,
а просто упорно поискал её сам и вставил сюда прямую ссылку, откуда скачать... :ebiggrin:

Но возбудило меня на активные действия вот что: автора книги позиционируют в различных анонсах
как разработчика процессоров с многолетним стажем, вот и стало мне интересно - что он такого необычного
о схемотехнике DIY-процессоров может поведать! :roll:

Разработчик ведь должен "уметь много гитик!" :wink:

Но пока он меня удивляет в совершенно обратную сторону... :(

В АЛУ он вытащил весьма корректно два флага - Z и C причем само АЛУ совершенно без затей
сделал самым тривиальным способом:"каждой твари по 8 штук" :esmile:

Я, когда делал в древние года АЛУ на NAND, хотя бы пытался ужаться и сэкономить корпуса,
учитывая хотя бы факт, что в сумматоре уже есть XOR и NAND...

Но это ладно... а вот дальше начинается самое удивительное! :o
Известно, и я надеюсь, что не только мне, что флагов Z и C достаточно, чтобы определить
любое отношение между двумя аргументами А и В на входе АЛУ.

Но автор книги совершенно непонятно с какой целью вводит в и так "жырное" АЛУ еще два флага:
А = В (Equal) и А > В (A larger)! :esmile:
Причем делает это вокруг функции XOR и подсыпает в схему 8-разрядного АЛУ немало вентилей! :o
Attachment:
Compair.PNG
Compair.PNG [ 38.55 KiB | Viewed 256 times ]
Attachment:
Compair1.PNG
Compair1.PNG [ 54.46 KiB | Viewed 256 times ]
И называет он всё это "компаратор"...

Ну еще о полезности флага А > В (A larger) можно спорить, возможно, он отчасти полезен...
Но вот флаг А = В (Equal) - это просто непонятно... :-?
У автора есть нормальная, неразрушающая команда CMP A,B - тут уж если А = В, то мгновенно
флаг Z сработает! 8)

Ну и если присмотреться к авторской конструкции этого узла под названием "компаратор", он и в него,
на мой взгляд, сыпанул вентилей излишне щедро... :-?

В архиве - авторский вариант "компаратора" и вариант попроще:
Attachment:
comparator_CPU.zip [95.44 KiB]
Downloaded 8 times

_________________
iLavr


16 Sep 2022 16:43
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
...это не схема, и сделать это по этой картинке возможности нет.
Потому как отдельные части этого рисунка - просто коробки с названиями, а не элементы.

Но некоторые рациональные зёрна у автора почерпнуть всё же можно...

Мне лично очень понравилось решение, которое автор ввёл сразу, поскольку об этот момент я сам очень
спотыкался, когда конструировал свой собственный 4-bit Processor... :-?

А сделал он вот что: наряду с тактовым сигналом clk он сформировал задержанный clk_d:
Attachment:
clk0.PNG
clk0.PNG [ 24.19 KiB | Viewed 189 times ]
Ниже диаграммы "типо схема", как он это сделал... :lol:
Почему я и говорю, что повторить DIY-CPU автора возможно лишь хорошо зная схемотехнику, хотя на
уровне понимания автор постарался изложить всё очень наглядно! :wink:

Но как сделать clk и задержать его, я думаю, кто умеет - смогут, а вот дальше - тот самый полезный
авторский трюк, который мне и понравился.
С помощью простой схемы:
Attachment:
clk3.png
clk3.png [ 9.84 KiB | Viewed 189 times ]

автор сформировал из clk и clk_d ещё два сигнала: clk_e и clk_s:
Attachment:
clk4.png
clk4.png [ 59.61 KiB | Viewed 189 times ]

Их смысл - clk_enable и clk_strobe, то есть сигналы разрешения выдачи на шину и строб записи данных с шины.

Поскольку автор не экономил, не ужимался и не строил "нищебродский" CPU, все регистры практически
у него с тристабильным выходом, и все они взаимодействуют сугубо через шину.

Поэтому, строя дешифратор команд, а автор его сделал аппаратным - что тоже интересно, хотя и весьма
увеличивает объём элементов супротив ПЗУ микрокоманд, так вот автор раздаёт дешифратором эти стробы
clk_e и clk_s регистрам источнику и приёмнику на шине.

Получается, что транзакция по шине у него происходит за один такт, что очень эффективно!
И главная прелесть в том, что взаимное расположение сигналов clk_e и clk_s позволяет
совершенно не мучиться с выбором регистров: они могут быть как с записью по фронту, по срезу, так и
по уровню. Если регистр без тристабильного выхода, можно поставить связку регистр+шинный буфер.

Опять же, кто знает схемотехнику... :wink: потому как именно с регистрами у автора - самая большая
засада в этой книге, для всех, кто решит, что всё понял, но со схемотехникой не знаком. :esmile:

_________________
iLavr


20 Sep 2022 06:39
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
Lavr wrote:
...именно с регистрами у автора - самая большая засада в этой книге, ...

И засада эта вот какая.

Поскольку автор популяризатор, он доходчиво показывает, как сделан параллельный регистр:
Attachment:
REG1.png
REG1.png [ 35.79 KiB | Viewed 187 times ]
где М - это D-триггер со статическим управлением, я показал его в постах выше.
На мой взгляд, автор не заморочил бы никому голову, если бы назвал вещи своими именами:
D-триггер или прозрачный "флип-флоп", как принято в западной литературе.

Но автор упрямо придерживается своей терминологии: М - это Мemory - элемент памяти,
объёмом в 1 бит
. Ну ладно... :-?
То, что на картинке выше из 8 элементов М - собственно, и есть параллельный регистр, но автор
решил назвать его B - Byte, понятно, байт. :roll: Ну и это ещё не страшно...

Далее автор рассказывает, что нужно уметь выключать "байты" по выходу, и вводит 8 штук элементов AND:
Attachment:
REG2.png
REG2.png [ 37.38 KiB | Viewed 187 times ]

Эту сборку он называет E - Enable, "разрешатель" по выходу, если хотите... :wink:

В итоге автор соединяет вместе B и E, получив, по его мнению, R - Register. :roll:
Attachment:
REG3.png
REG3.png [ 26.57 KiB | Viewed 187 times ]

С точки зрения понимания для людей, далёких от схемотехники, - всё логично и понятно. 8)

Но дальше автор вот эти самые регистры вешает на общую шину и начинает конструировать свой CPU! :o
Ни слова о тристабильном состоянии выходов или о шинных буферах у автора просто НИГДЕ НЕТ!
Ну или хотя бы об элементах AND с открытым коллектором и линиями шины, притянутыми резисторами
к потенциалу +5 В.

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

_________________
iLavr


20 Sep 2022 07:23
Profile
Novelist

Joined: 18 Feb 2019 16:46
Posts: 26
Reply with quote
Lavr, если Вы уже прочли ВСЮ книгу, то ответьте, пожалуйста на заданный мной вопрос о возможности в этой схеме выставить 16-ти разрядный адрес.


20 Sep 2022 10:54
Profile
Supreme God
User avatar

Joined: 21 Oct 2009 09:08
Posts: 7777
Location: Россия
Reply with quote
ra3qdp wrote:
Lavr, если Вы уже прочли ВСЮ книгу, то ответьте, пожалуйста на заданный мной вопрос о возможности в этой схеме выставить 16-ти разрядный адрес.

Я не прочёл ВСЮ книгу, потому что более 50% книги - полная ерунда для совсем далёких от электроники людей.
Я просмотрел внимательно всё, что касалось схемотехники устройства, рисунок которого вы запостили в топик,
чем меня и заинтересовали отчасти.

На заданный вами вопрос конкретно ответ следующий: в устройстве, являющемся моделью самодельного
процессора, рисунок которого опубликован в этом топике, 16-ти разрядный адрес выставить принципиально невозможно.

Вот команда прямого безусловного перехода JMP ADDR для этого устройства:
Attachment:
JMP1.png
JMP1.png [ 35.79 KiB | Viewed 174 times ]
Очевидно, что адрес принципиально 8-ми разрядный.

Инструкций вызова подпрограмм и возврата из них типа CALL ADDR и RET в устройстве
также принципиально нет, как факт.

_________________
iLavr


20 Sep 2022 11:31
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 49 posts ]  Go to page Previous  1, 2, 3, 4  Next

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  

Powered by phpBB® Forum Software © phpBB Group
Designed by ST Software.