Собираем регистр адреса памяти и панель программирования для ввода данных в оперативную память

  Рет қаралды 4,123

BitFlip

BitFlip

3 жыл бұрын

Имея в наличии блок оперативной памяти, нам нужно найти способ, как записывать данные в эту память и как они будут считываться в процессе работы компьютера. Для записи данных мы можем заменить уже имеющиеся перемычки с помощью групп переключателей - нам нужен блок с четырьмя переключателями для задания адреса, по которому нам нужно записать данные, и блок с восемью переключателями для задания восьмибитного значения по этому адресу. Таким образом мы сможем программировать программу в памяти вручную.
Дополнительно, нам нужно продумать, откуда будет браться адрес в процессе выполнения программы на нашем компьютере. Мы добавим регистр адреса памяти, задача которого, хранить в себе адрес ячейки памяти, откуда нам нужно читать данные.
Схема: drive.google.com/file/d/14hhx...

Пікірлер: 36
@tidarka3629
@tidarka3629 3 жыл бұрын
Спасибо огромное за твой контент! В будущем собираюсь собрать такой же компьютер, прошу не останавливайся!
@atrata1906
@atrata1906 3 жыл бұрын
Здорово, давай дальше!
@alexey2118
@alexey2118 3 жыл бұрын
Топ, продолжай
@user-bw1fh9pd3i
@user-bw1fh9pd3i 2 жыл бұрын
Топ контент. Автору большое спасибо!
@ArkadiyAfonin
@ArkadiyAfonin 3 жыл бұрын
Сразу лайк
@user-ky8dr1hu5e
@user-ky8dr1hu5e 3 жыл бұрын
Топ)
@user-sd4pv6bc8v
@user-sd4pv6bc8v 3 жыл бұрын
Очень круто. Ребят у кого есть список всех компонентов. Уезжаю далеко и надолго хочу собрать все перед отъездом. Из чего лучше перемычки делать?
@ebjikkolu4757
@ebjikkolu4757 3 жыл бұрын
-Вот регистр адреса памяти ,куда ставить то? -Попробуй в спальню -Уже некуда ,там восьмибитный регистр -Тогда в туалет -Там шина данных Упрямо не хочешь использовать ПЛИС. Что ж , качество от этого не страдает ,как всегда - молодцом
@ArkadiyAfonin
@ArkadiyAfonin 3 жыл бұрын
А зачем ПЛИС? Суть-то в том, чтобы покомпонентно собрать компьютер и разобраться в составных частях
@ebjikkolu4757
@ebjikkolu4757 3 жыл бұрын
@@ArkadiyAfonin Затем ,что можно сделать это абстракцией ,без проводов и куч микросхем .Можно так же собирать ручками из логических элементов ,только это будет схематично
@ArkadiyAfonin
@ArkadiyAfonin 3 жыл бұрын
@@ebjikkolu4757 а у вас есть примеры какой-нибудь похожей логики на ПЛИС?
@ebjikkolu4757
@ebjikkolu4757 3 жыл бұрын
@@ArkadiyAfonin Конкретно из этого видео -нет ,но если бы мне понадобилось собрать регистр адреса -я бы это сделал .Я не имею ввиду ,что ПЛИС панацея ,я же не предлагаю собрать на ней RAM ,потому что это полный бред .Я говорю про инструменты ,про логические микросхемы .Я собирал то ,что мне было интересно ,это вентили ,(полу)сумматор ,триггеры ,регистр , сдвиговый регистр , дешифратор семисегментника . В виде ПЛИС у меня альтера и отладочная плата циклон , программировал через квартус с помощью программатора . Я купил FPGA именно из за того ,что меня достало искать микросхемы логики и ждать их из китая,я решил создавать эти микросхемы сам .Все это было на этапе обучения ,а теперь она валяется пылится (отладочная плата). Я лишь хочу сказать ,что это удобно .Удобно копать мотоблоком ,чем лопатой ,стирать в машинке ,чем руками ..понимаешь
@ArkadiyAfonin
@ArkadiyAfonin 3 жыл бұрын
@@ebjikkolu4757 это круто! пойду поизучаю этот плис, спасибо
@andrewkoz387
@andrewkoz387 3 жыл бұрын
Пзу с микрокодом в декодере инструкций будет, или другое решение?
@user-rw4bk2dm7h
@user-rw4bk2dm7h Жыл бұрын
А если нижнее положение переключателей считать за 0(хотя в реальности это 1),а верхнее за 1(0)т.е. как и должно быть с данными переключателями.Тогда записывая 0 в память(в реальности 1),мы и получим 0 на выходе,т.к. выход микросхемы памяти с инверсией.Тогда и инверторы на выходе не нужны.Как Вы считаете?Спасибо за проект.
@griffingo434
@griffingo434 Жыл бұрын
не заморачивайся. он сделал это для удобства. просто блин сотри надпись ON. кнопка может пропускать напряжение хоть в 1 сторону хоть в другую она не сгорит.
@user-ob7oq2uw5f
@user-ob7oq2uw5f 3 жыл бұрын
Не могли бы вы скинуть ссылку на серую кнопку на левой верхней панели или указать конкретное наименование компонента?
@BitFlipChannel
@BitFlipChannel 3 жыл бұрын
Кнопка: www.chipdip.ru/product/kls7-ts6601-5.0-180 Переключатель: www.chipdip.ru/product/ps850l-pb22e09
@user-ob7oq2uw5f
@user-ob7oq2uw5f 3 жыл бұрын
@@BitFlipChannel Благодарю.
@mimi-cc3yu
@mimi-cc3yu 3 жыл бұрын
мне вот любопытно, это все медленная подробная подводка к мк? P.S. так совпало, что сейчас читаю "Программирование микроконтроллеров ATMEL на языке C Прокопенко" и там примерно тоже самое, но командами на мк at90s2313 разбирается (страницы 66-73 "память EEPROM at90s2313")
@dismantledd9838
@dismantledd9838 3 жыл бұрын
Скорее это «подводка» к микропроцессорам, которые являются частью архитектуры (ядром) любого МК.
@andrewkoz387
@andrewkoz387 3 жыл бұрын
Как себя будет вести счётчик команд, когда встречается инструкция jump 100h, далее ещё какой то набор инструкций и вновь jump 100h ?
@dismantledd9838
@dismantledd9838 3 жыл бұрын
В счетчик команд (как правило это регистр PC в процессорах и микроконтроллерах) будет загружено значение 100h и программа продолжит выполнение с инструкции, расположенной по адресу 100h. Если по этому адресу не будет корректной инструкции, то PC перейдет к следующему адресу (101h) и так далее до ближайшей выполнимой инструкции. Ваш сценарий также зависит от того, по какому адресу хранится инструкция jump 100h. До адреса 100h или после. И какие инструкции между ними. В том числе сама инструкция jump 100h может и находиться по адресу 100h 😉
@andrewkoz387
@andrewkoz387 3 жыл бұрын
@@dismantledd9838 То есть счётчик команд имеет механизм загрузки адреса. Интересна реализация механизма. Кто этим занят в архитектуре?
@dismantledd9838
@dismantledd9838 3 жыл бұрын
@@andrewkoz387 если я правильно понял вопрос, то скорее всего этим как-то занимается транзисторная логика на уровне архитектуры процессора. В этом не силен :). Для меня это только тот факт, что на адресной шине при выполнении инструкции jump 100h будет установлено значение 1 0000 0000. Если такая адресация (больше 8 бит) поддерживается процессором и памятью конечно 😄
@BitFlipChannel
@BitFlipChannel 3 жыл бұрын
Да, все верно пишут в других комментариях: инструкция jump реализуется через загрузку адреса в счетчик команд. Затем счетчик просто ведет отсчет, начиная с нового адреса. Я намеренно не предусмотрел возможность загрузки адреса в счетчик команд, чтобы пока максимально упростить задачу, поэтому поддержки этой инструкции в данной сборке не будет. Но немного дополнив счетчик команд, эту возможность должно быть несложно реализовать.
@andrewkoz387
@andrewkoz387 3 жыл бұрын
@@BitFlipChannel Реализация механизма загрузки счётчика, и работа узла этой сборки в архитектуре, пожалуй самое интересное в проекте, а так же не менее интересен декодер инструкций и микрокод. С давних времён в голове сидит идея создать , что то подобное. В наше время такими вещами стало заниматься много проще, нежели лет так 30 назад. С удовольствием буду наблюдать за каналом. Продолжай уже)
@amoniterX
@amoniterX 3 жыл бұрын
Ти іспользуєш мікросхеми ттл логіки чи кмоп?
@amoniterX
@amoniterX 3 жыл бұрын
А у компьютера буде операціонна система чи асемблер?
@BitFlipChannel
@BitFlipChannel 3 жыл бұрын
В основном TTЛ. В некоторых местах использую КМОП, так как не смог найти аналогичную ТТЛ. Операционной системы не будет. Предполагается, что это будет очень простой компьютер, который может выполнить небольшую программу записанную в виде машинного кода в памяти.
@Alexey_Emelyanov
@Alexey_Emelyanov Жыл бұрын
Зачем отдельно сохранять в регистре значение от счётчика адресов или регистра инструкций, нельзя напрямую и счётчик адресов, и регистр инструкций подключить к оперативной памяти?
@Alexey_Emelyanov
@Alexey_Emelyanov Жыл бұрын
К концу видео до меня дошло. Регистр адресов нужен для возможности программирования памяти
@14types
@14types 2 жыл бұрын
Каждый ролик удивляюсь, как люди додумались до этого и как с помощью обычных транзисторов пришли к такому созданию искусственных мозгов.
@14types
@14types 2 жыл бұрын
интересно еще почитать историю, как происходила эта гонка по созданию первых процессоров. и сколько в ней участвовало гонщиков. и вообще удивительно, что кто-то, не имея транзисторов, изобретал эти логические схемы. нафига они были нужны, без транзисторов-то? вот наверно в те времена все так думали раньше, типа чем ты вообще занимаешься, ерундой какой-то, какие-то и или соединяешь, как дурак.
@14types
@14types 2 жыл бұрын
вот бы на всю стену чисто из транзисторов собрать свой SAP
Please be kind🙏
00:34
ISSEI / いっせい
Рет қаралды 56 МЛН
Универ. 10 лет спустя - ВСЕ СЕРИИ ПОДРЯД
9:04:59
Комедии 2023
Рет қаралды 1,3 МЛН
Сегментная Адресация Памяти
11:26
Volodya Mozhenkov
Рет қаралды 18 М.
РЦВМ1 - Мой первый релейный компьютер
10:50
Сумматор
16:57
BitFlip
Рет қаралды 8 М.
Девушка и AirPods Max 😳
0:59
ОТЛИЧНИКИ
Рет қаралды 16 М.
keren sih #iphone #apple
0:16
kadangaruan
Рет қаралды 1,7 МЛН
ВЫ ЧЕ СДЕЛАЛИ С iOS 18?
22:40
Overtake lab
Рет қаралды 119 М.