PC-совместимый компьютер на К1810
Moderator: Shaos
-
- Writer
- Posts: 21
- Joined: 15 Nov 2013 05:34
- Location: Москва
PC-совместимый компьютер на К1810
Всем привет!
Хочется изучить работу компьютера на низком уровне, параллельно спроектировав и
собрав простую модель на базе комплекта К1810.
Кому-то это покажется простой задачей, но для меня сейчас это чистой воды магия,
в первую очередь из-за отсутствия знаний - каша в голове. Но это вопрос решаемый -
скачал всю литературу, какую нашёл по этой теме, изучаю.
О себе - паять умею, на асме под x86 кодил, тактовый импульс от RC-цепочки отличаю.
Размышляя над требованиями к будущему компьютеру остановился на таких мыслях:
1. совместимость с IBM PC/XT (возможность запускать софт, в первую очередь DOS)
2. возможность организовать ISA шину для подключения карт расширения
3. ввод - стандартная 101 клавиатура; вывод EGA и/или VGA
4. используемые компоненты - микропроцессорные комплекты и микросхемы стандартной логики. Никаких ПЛИС.
Разумеется это в дальнейшей перспективе. А для начала мне бы просто запустить процессор с минимальной обвязкой.
Другими словами архитектура должна гипотетически позволять расширить в дальнейшем компьютер под эти требования.
И так, сейчас нахожусь на нулевом шаге - выбор процессора и поверхностное продумывание архитектуры.
Собственно первый вопрос - ВМ86 или ВМ88? С одной стороны хочется более "взрослый" ВМ86, с другой понимаю,
что конструктивно проще использовать ВМ88 с его 8-и разрядной шиной.
С какими ограничениями я могу столкнуться используя ВМ88? Отвечает ли он вышеуказанным требованиям?
Или не стоит бояться и использовать ВМ86?
P.S. Предвидя вопросы, что мол зачем изобретать велосипед, когда можно повторить одну из схем существующих
компьютеров, отвечу что хочется не "тупо" повторить, а понимать, как всё это работает.
P.S.2 Я не студент, и это не лаба и не диплом. Всё делается для себя, с целью самообразования.
Спасибо :)
Хочется изучить работу компьютера на низком уровне, параллельно спроектировав и
собрав простую модель на базе комплекта К1810.
Кому-то это покажется простой задачей, но для меня сейчас это чистой воды магия,
в первую очередь из-за отсутствия знаний - каша в голове. Но это вопрос решаемый -
скачал всю литературу, какую нашёл по этой теме, изучаю.
О себе - паять умею, на асме под x86 кодил, тактовый импульс от RC-цепочки отличаю.
Размышляя над требованиями к будущему компьютеру остановился на таких мыслях:
1. совместимость с IBM PC/XT (возможность запускать софт, в первую очередь DOS)
2. возможность организовать ISA шину для подключения карт расширения
3. ввод - стандартная 101 клавиатура; вывод EGA и/или VGA
4. используемые компоненты - микропроцессорные комплекты и микросхемы стандартной логики. Никаких ПЛИС.
Разумеется это в дальнейшей перспективе. А для начала мне бы просто запустить процессор с минимальной обвязкой.
Другими словами архитектура должна гипотетически позволять расширить в дальнейшем компьютер под эти требования.
И так, сейчас нахожусь на нулевом шаге - выбор процессора и поверхностное продумывание архитектуры.
Собственно первый вопрос - ВМ86 или ВМ88? С одной стороны хочется более "взрослый" ВМ86, с другой понимаю,
что конструктивно проще использовать ВМ88 с его 8-и разрядной шиной.
С какими ограничениями я могу столкнуться используя ВМ88? Отвечает ли он вышеуказанным требованиям?
Или не стоит бояться и использовать ВМ86?
P.S. Предвидя вопросы, что мол зачем изобретать велосипед, когда можно повторить одну из схем существующих
компьютеров, отвечу что хочется не "тупо" повторить, а понимать, как всё это работает.
P.S.2 Я не студент, и это не лаба и не диплом. Всё делается для себя, с целью самообразования.
Спасибо :)
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Я бы Вам посоветовал полистать вот эту книжку:

в разделе УМПК-86.
Там есть и схемы простейшей микро-ЭВМ на 1810ВМ86 и Монитор под нее.
Она в принципе - учебная и простая, возможно, это даст ответ на возникающие
у Вас вопросы.
Книжка есть в сети. С некоторым трудом, но мы её в своё время разыскали.
МикроЭВМ. Книга 7, "Учебные стенды"
PS. Эту книгу можно разыскать и в гораздо лучшем качестве, если 30 секунд посмотреть
рекламу. Раньше - бесплатных экземпляров мне практически не попадалось...

Источник (выбрать rusfolder.net)

в разделе УМПК-86.
Там есть и схемы простейшей микро-ЭВМ на 1810ВМ86 и Монитор под нее.
Она в принципе - учебная и простая, возможно, это даст ответ на возникающие
у Вас вопросы.
Книжка есть в сети. С некоторым трудом, но мы её в своё время разыскали.
МикроЭВМ. Книга 7, "Учебные стенды"
PS. Эту книгу можно разыскать и в гораздо лучшем качестве, если 30 секунд посмотреть
рекламу. Раньше - бесплатных экземпляров мне практически не попадалось...


Источник (выбрать rusfolder.net)
Last edited by Lavr on 16 Nov 2013 15:12, edited 2 times in total.
iLavr
-
- Writer
- Posts: 21
- Joined: 15 Nov 2013 05:34
- Location: Москва
-
- Doomed
- Posts: 491
- Joined: 05 Apr 2011 12:45
- Location: Великий Новгород
-
- Fanat
- Posts: 79
- Joined: 27 May 2011 04:25
- Location: Perm
У соседей: Книги: IBM-совместимые персональные компьютеры и их периферийные устройства
Но... правильнее начать с изучения КР580 (принципы организации шин разные, но по сути одно и то же).
Также, с помощью средств моделирования, виртуально освоить принципы создания законченных узлов путем соединения цифровых схем(есть много паттернов, которые можно подсмотреть и не изобретать заново). Конечно, изучение реальных схем - тоже отличный источник информации.
Подключить процессор к памяти - это чрезвычайно просто, чтобы быть subj. В этой архитектуре много всяких атавизмов, которые придется реализовывать для совместимости - с помощью БИС, либо большого количества мелкой логики и совместимости только на уровне BIOS.
Это понятно все конечно. Но... начинать с устройства обвязки МП на мелкой логике... Достаточно один проводок перепутать или одной бракованной микросхемы - и начинаются приключения по поиску неисправности. Которые тоже требуют наличие знаний...
Мне этот путь кажется тернистым, аж не удержался чтобы не высказать;)
Идеальным кандидатом для self-made-PC считаю i80486. Аппаратная часть может быть простой(относительно), а совместимость с legacy достигается программным способом(эмуляция/виртуализация/динамическая перекомпиляция). Такого еще никто не делал. Но уже планируют(мысли витают в воздухе;) http://zx.pk.ru/showpost.php?p=641926&postcount=5
Есть проект то ли на ПЛИС, то ли на быстром 8051(закрытый): Flea86
Но... правильнее начать с изучения КР580 (принципы организации шин разные, но по сути одно и то же).
Также, с помощью средств моделирования, виртуально освоить принципы создания законченных узлов путем соединения цифровых схем(есть много паттернов, которые можно подсмотреть и не изобретать заново). Конечно, изучение реальных схем - тоже отличный источник информации.
Подключить процессор к памяти - это чрезвычайно просто, чтобы быть subj. В этой архитектуре много всяких атавизмов, которые придется реализовывать для совместимости - с помощью БИС, либо большого количества мелкой логики и совместимости только на уровне BIOS.
Это понятно все конечно. Но... начинать с устройства обвязки МП на мелкой логике... Достаточно один проводок перепутать или одной бракованной микросхемы - и начинаются приключения по поиску неисправности. Которые тоже требуют наличие знаний...
Мне этот путь кажется тернистым, аж не удержался чтобы не высказать;)
Идеальным кандидатом для self-made-PC считаю i80486. Аппаратная часть может быть простой(относительно), а совместимость с legacy достигается программным способом(эмуляция/виртуализация/динамическая перекомпиляция). Такого еще никто не делал. Но уже планируют(мысли витают в воздухе;) http://zx.pk.ru/showpost.php?p=641926&postcount=5
Есть проект то ли на ПЛИС, то ли на быстром 8051(закрытый): Flea86
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
А у него - проводков-то поболее будет... которые можно перепутать.KolAnVi wrote:Идеальным кандидатом для self-made-PC считаю i80486.

Да и корпусок у него - как бы не сильно способствует творчеству в домашних условиях.
Впрочем... пример исполнения у нас на форуме - есть.

Источник
Жаль только, что никто до сих пор не увидел ни схемы, ни прошивки ПЗУ этого чуда:

Как то не очень конструктивно, на мой взгляд, рекомендовать человеку неизвестную схему
с неизвестной прошивкой...
Да и сам топикстартер всё же остановил свой выбор на i8088/i8086, а на этих больших
камнях что-то и светодиодов никто не запустил до сих пор...

Ну а уж что касается организации шин для 1810ВМ86 (i8086) тут и в отечественой литературе
материала предостаточно, на мой взгляд.
Но рекомендовать 580ВМ80 с его 3-мя питаниями и двухтактной синхронизацией - это просто
как-то даже не тактично в наши дни...
Да - мы любим этот камень, но он стар, как окаменелое гавно динозавра!
Я поддерживаю выбор топикстартера и рекомендую 1810ВМ86 (i8086) из его альтернатив
выбора.
Я их и сам уже год почти как купил 10 штук прозапас...
iLavr
-
- Fanat
- Posts: 79
- Joined: 27 May 2011 04:25
- Location: Perm
Идея в том, чтобы не использовать аппаратный контроллер прерываний, контроллер ПДП, таймер, контроллер клавиатуры, контроллер дисковода, контроллер последовательного и параллельного порта, а эмулировать их. Т.е. обвязка может состоять из памяти, ISA-видеоплаты, контроллера носителя информации(собственной архитектуры, что упрощает схемотехнику) и некоего блока, помогающего в эмуляции таймера, прерываний и DMA.Lavr wrote:А у него - проводков-то поболее будет...
Шаг между выводами - 2,54мм. Можно припаять к макетке, можно сделать сокет из цанговых панелек. Не вижу сложностей, связанных с большим количеством выводовДа и корпусок у него - как бы не сильно способствует творчеству в домашних условиях.
У 486 уровни сигналов - TTL! У пентиума уже нет.на этих больших камнях что-то и светодиодов никто не запустил до сих пор...
Это вещь в себе. Зачем от нее прошивка? Мигалку светодиодами должен сделать каждый в своей жизни, но это ведь просто, нет?Жаль только, что никто до сих пор не увидел ни схемы, ни прошивки ПЗУ этого чуда
А кто модель для протеуса написал?;)Но рекомендовать 580ВМ80 с его 3-мя питаниями и двухтактной синхронизацией - это просто как-то даже не тактично в наши дни...
Начинать нужно, вооружившись виртуальной лабораторией и средствами моделирования. Чай в 21 веке живем. Понять принципы, освоить искусство схемотехники. Потом уже паяльником воплощать на том, на чем хочется. Серия 580 подходи для освоения базовых принципов того, как же все таки работает компьютер)
-
- Doomed
- Posts: 491
- Joined: 05 Apr 2011 12:45
- Location: Великий Новгород
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Человеку для начального старта нужна практическая повторяемая схема, а не идея.KolAnVi wrote:Идея в том, чтобы не использовать аппаратный контроллер прерываний, контроллер ПДП, таймер, контроллер клавиатуры, контроллер дисковода, контроллер последовательного и параллельного порта, а эмулировать их...
Когда он освоится с простой схемой и приобретет опыт - идеи её расширения возникнут
сами - как из рога изобилия...
Ну а я - вижу. Если Вы не видите - я Вам покажу:KolAnVi wrote:Не вижу сложностей, связанных с большим количеством выводов...


На мой взгляд - разница в трудоемкости ощутима...
Мы же не о себе говорим, что бы нам хотелось, а на основе собственного опыта -
советуем человеку, как начать так, чтобы не набить себе лишних шишек...
Неудача на старте многих отвращает от нашего замечательного хобби!
И что - пентиум не зажгет светодиода? Но разговор-то по существу не об этом!KolAnVi wrote:У 486 уровни сигналов - TTL! У пентиума уже нет.на этих больших камнях что-то и светодиодов никто не запустил до сих пор...
Я может чего-то не понял, уважаемый KolAnVi, но для вот такой "мигалки светодиодами",KolAnVi wrote:Это вещь в себе. Зачем от нее прошивка? Мигалку светодиодами должен сделатьЖаль только, что никто до сих пор не увидел ни схемы, ни прошивки ПЗУ этого чуда
каждый в своей жизни...
как на картинке:

начинающему нужна как хорошая схема с минимумом умолчаний, так и вменяемая прошивка.
Ну если Вы, как "каждый в своей жизни", сделали вот такую, как на рисунке выше, "мигалку светодиодами"
на 486-м процессоре - так поделитесь с начинающим простой схемой и вменяемой
прошивкой ПЗУ с листингом - чтобы на его основе поучиться...
Так пока - и никто... Я поддерживаю мнение большинства на этом форуме - моделиKolAnVi wrote:А кто модель для протеуса написал?;)Но рекомендовать 580ВМ80 с его 3-мя питаниями и двухтактной синхронизацией - это просто
как-то даже не тактично в наши дни...
никогда не заменят реальную железку!
Значит реальную железку для начинающего надо выбрать повторяемее и проще.
Начинать надо с железки! Как большинство здесь и начинали...KolAnVi wrote:Серия 580 подходи для освоения базовых принципов того, как же все таки работает компьютер)
А уж потом - на волне удовольствия и успеха - просто приятно на СВОЕЙ работающей железке
изучать все ньюансы теории.
А собственно - чего хочет сам топикстартер?
Так зачем ему подсовывать более сложную модель на i80486?renych wrote:Хочется изучить работу компьютера на низком уровне, параллельно спроектировав и
собрав простую модель на базе комплекта К1810.
Желание - вполне реализуемое, с процессором 1810ВМ86 великолепно стыкуется вся периферия
комплекта 580.
Мне кажется - наша задача - помочь человеку обойти известные нам "грабли"... ну - или не мешать.
iLavr
-
- Fanat
- Posts: 79
- Joined: 27 May 2011 04:25
- Location: Perm
Ну раз в пять наверно больше паяльником тыкнуть. Не знаю, это долго всего-лишь, никакого труда особого не требует. Слово "трудоемкость" не подходит тут. Это "мутороемкость", простецкая.
Я сам боялся когда-то такого. Это просто лень. Если побороть в себе с самого начала этот страх(перед большим количеством, перед неизвестностью и т.д.), открываются неограниченные возможности для творчества.
Одно но - на этом этапе необходимо очень хорошо разбираться в теории, например чтобы понимать, что такие-то глюки связаны с таким-то узлом, скорее всего, а такие - с другим. Такие знания можно разными путями получить. В том числе и тем, который отстаивает уважаемый Lavr (ведь на чужих ошибках учиться трудно, это да). Только IMHO долго это.
У всех разный опыт. Кто-то начинал просто припаивая детальки в конструкторы, кто-то выпаивая детальки из составных частей готовых изделий, а кто-то никогда паяльника и не держал, а просто рисовал на кульмане, сдавал, а потом получал от программистов баг-лист для следующей итерации.
Делюсь листингом для проекта на картинке с i486DX:
for(i=0;i<количество строк;i++) {
for(j=0;j<количество столбцов;j++) {
portOut(portRowSelector,i);
portOut(portColumnSelector,j);
portOut(portLED,GetLEDValue(i,j);
sleep(обеспечиваем 25Гц или около того)
}
}
Я сам боялся когда-то такого. Это просто лень. Если побороть в себе с самого начала этот страх(перед большим количеством, перед неизвестностью и т.д.), открываются неограниченные возможности для творчества.
Одно но - на этом этапе необходимо очень хорошо разбираться в теории, например чтобы понимать, что такие-то глюки связаны с таким-то узлом, скорее всего, а такие - с другим. Такие знания можно разными путями получить. В том числе и тем, который отстаивает уважаемый Lavr (ведь на чужих ошибках учиться трудно, это да). Только IMHO долго это.
У всех разный опыт. Кто-то начинал просто припаивая детальки в конструкторы, кто-то выпаивая детальки из составных частей готовых изделий, а кто-то никогда паяльника и не держал, а просто рисовал на кульмане, сдавал, а потом получал от программистов баг-лист для следующей итерации.
Без инструкций извне - сильно сомневаюсь. А это контроллер памяти, подключенный к системной шине(кажется спецификация GTL).Lavr wrote:И что - пентиум не зажгет светодиода?
Делюсь листингом для проекта на картинке с i486DX:
for(i=0;i<количество строк;i++) {
for(j=0;j<количество столбцов;j++) {
portOut(portRowSelector,i);
portOut(portColumnSelector,j);
portOut(portLED,GetLEDValue(i,j);
sleep(обеспечиваем 25Гц или около того)
}
}
Предлагаю начинающим не заблуждаться аналогичным образом. Да, можно идти по этому пути, так делали наши деды. У них не было компьютеров!*Убрал теги*Я поддерживаю мнение большинства на этом форуме - модели никогда не заменят реальную железку!
Значит реальную железку для начинающего надо выбрать повторяемее и проще.
Начинать надо с железки!Как большинство здесь и начинали...
А уж потом - на волне удовольствия и успеха - просто приятно на СВОЕЙ работающей железке изучать все ньюансы теории.
Предлагаю освоить 580 виртуально, а потом сразу за 486 взяться. Это почти-что то же самое. РЕАЛЬНО. Если что - поможем.renych wrote:Хочется изучить работу компьютера на низком уровне, параллельно спроектировав и
собрав простую модель на базе комплекта К1810.
-
- Doomed
- Posts: 491
- Joined: 05 Apr 2011 12:45
- Location: Великий Новгород
Мне этот форум и нравится по той причине что никто никогда не будет отговаривать заниматься любым проектом. Каким бы он бредовым не был. На других форумах да, нафиг тебе этот старый проц вот пользуй его модель в FPGA но я то хочу живой настоящий процессор а не его призрак который мертвее этого самого процессора.
И еще приятен тем этот форум что здесь живое железо а не те виртуальные модели. Да нет никакой ценности в этих железках. Но на то оно и хобби.
Если ТС хочет 1810 то надо или подсказать схемку книжку по даной теме или просто промолчать. Но не нужно его пихать в мертвый мир призраков тем более это не потранзисторные модели, а логически приближенные к оригиналу.
И еще приятен тем этот форум что здесь живое железо а не те виртуальные модели. Да нет никакой ценности в этих железках. Но на то оно и хобби.
Если ТС хочет 1810 то надо или подсказать схемку книжку по даной теме или просто промолчать. Но не нужно его пихать в мертвый мир призраков тем более это не потранзисторные модели, а логически приближенные к оригиналу.
танцуй пока живешь под каплями огненного дождя...
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
А зря - сомневаетесь... полюбому - зажгет..KolAnVi wrote:Без инструкций извне - сильно сомневаюсь.Lavr wrote:И что - пентиум не зажгет светодиода?
Итак, мы оба высказались: я предложил - конкретную схему и конкретное под неё ПО.KolAnVi wrote:Предлагаю освоить 580 виртуально, а потом сразу за 486 взяться. Это почти-что то же самое. РЕАЛЬНО. Если что - поможем.renych wrote:Хочется изучить работу компьютера на низком уровне, параллельно спроектировав и
собрав простую модель на базе комплекта К1810.
Уважаемый KolAnVi предложил абстрактные идеи и компьютерные модели.
Есть предложение и от Случайности: intel SDK86.
Я надеюсь, топикстартер сам решит, что ему в данной ситуации ближе, исходя из его потребностей.
iLavr
-
- God
- Posts: 1343
- Joined: 13 Nov 2010 04:06
ИБМ-совместимость предполагает достаточно сложную для начинающего схему. На мой взгляд, если нет опыта, лучше начать с "учебной модели", как в 7-й книге Тарабрина, ссылка на которую здесь приводилась. Загоревшийся в своей примитивной схеме светодиод реально доставит массу удовольствия!
Однако, если автор будет последователен в своих изысканиях, с любопытством буду следить. Сделать самому не то чтобы не интересно, но мне больше нравится К580.

Однако, если автор будет последователен в своих изысканиях, с любопытством буду следить. Сделать самому не то чтобы не интересно, но мне больше нравится К580.
-
- Supreme God
- Posts: 16676
- Joined: 21 Oct 2009 08:08
- Location: Россия
Я обычно к книжкам любопытен всегда... а 7-я книга Тарабрина - это что?VituZz wrote:На мой взгляд, если нет опыта, лучше начать с "учебной модели", как в 7-й книге Тарабрина,
ссылка на которую здесь приводилась.
Из двух ссылок, приведенных здесь, вроде как ни одна не Тарабрина...
А обвязка 1810ВМ86 - очень похожа на то, чем мы сейчас занимемся с 1801ВМх - сразу
требуются 4 буфера!

В этом плане старичок 580ВМ80 (как и z80) был более прост. Сразу буферов не требовал.
Читал я однажды в неумной книге, что "580ВМ80 (aka i8080) требует значительного количества
сторонних микросхем для своего запуска". Так и хотелось сказать - "бряхня"!

iLavr
-
- Fanat
- Posts: 79
- Joined: 27 May 2011 04:25
- Location: Perm
Ага. А также при подаче 12В превращается в эффективную кофеварку. Учту;) Только повлиять на это устройство извне нельзя. Не компьютер)))Lavr wrote:А зря - сомневаетесь... полюбому - зажгет..
Предлагаю для начала почитать:
1) БУРЕЕВ, ДУДКО, ЗАХАРОВ. Простейшая микро-ЭВМ. Проектирование. Наладка. Использование
Книга про 580
2) Живко Паскалев. Первые шаги в вычислительной технике
Про создание узлов из цифровых "кирпичиков"
3) Лебедев О.Н. Применение микросхем памяти в электронных устройствах
4) Тули М. Справочное пособие по цифровой электронике
Много материала, полезного с практической точки зрения, который не найдешь в других книгах
5) Коффрон Дж. Технические средства микропроцессорных систем. Практический курс.
Описаны 8080, 8085, Z80, 6800. У этих процессоров разные подходы в шинах. Изучение всего многообразия вариантов чрезвычайно полезно для интенсификации собственных творческих способностей
Must read
6) Шевкопляс Б.В. Микропроцессорные структуры инженерные решения
Паттерны компьютерной схемотехники от отечественного автора.
Must read
7) Потемкин И.С. - Функциональные узлы цифровой автоматики
Учебник по схемотехнике
8) Коффрон Дж., Лонг В. Расширение микропроцессорных систем
Про взаимодействие с внешним миром
Проблема ПЛИС и эмуляторов в том, что "их не умеют готовить".Случайность wrote:пользуй его модель в FPGA но я то хочу живой настоящий процессор а не его призрак который мертвее этого самого процессора. И еще приятен тем этот форум что здесь живое железо а не те виртуальные модели. Да нет никакой ценности в этих железках. Но на то оно и хобби.
Ну, кроме того, необходима миллион-кратное превосходство в производительности, чтобы адепты старины могли наслаждаться созерцанием огромных пикселей, но с точно воспроизведенными волновыми процессами по их краям.
А так, это все тоже творчество. И будет служить музейными экспонатами у пользователей кристалопьютеров будущего...