![]() |
Возрождение БК0010/0011М в новом проекте "БК+"
http://www.milkywaygalaxy.ru/images/pylsar.jpg
Функциональное описание проекта 1. Первый этап Выполнить перепроектирование печатной платы БК0011М с проведением полного реинжениринга, включающего: • замену ОЗУ одним 16-ти разрядным SDR SDRAM-корпусом MT48LC16M16A2P-75 (32Мб) - в который войдет 4Мб ОЗУ, адресуемого по стандарту PDP-11/70, а также память под видеобуферы; • замену всех ПЗУ на ФЛЕШ-память; • реализацию логики процессора 1801ВМ1, видеоконтроллера 1801ВП1-037, контроллера клавиатуры 1801ВП1-014 и остальных узлов оригинальной схемы - на базе современной ПЛИС (EP3C16Q240), обеспечивающей максимальное быстродействие при стоимости, не превышающей $30; в реализацию процессора добавляются возможности процессора 1836ВМ3, расширяемые до стандарта PDP-11/70; при этом для обеспечения обратной совместимости с ВМ1 вводится возможность переключения ПЛИС-процессора в специальный режим. • обеспечение работы нового процессора в двух режимах: режим полного быстродействия и режим эмуляции быстродействия оригинальной БК0011М. По умолчанию работает последний, переключение между режимами осуществляется как программно, так и аппаратно - замыканием контактов. • интеграцию в ПЛИС логики контроллера SMK64-512 с разводкой 34-pin под дисковод, разъема под CompactFlash, параллельно c разъемом IDE-40 pin); все режимы работы контроллера должны быть реализованы в полной мере; • интеграцию на основную плату музыкального сопроцессора AY8930 (согласно оригинальной схемы подключения AY-3-8910); в случае физического отсутствия микросхемы, её функции должны эмулироваться внутри ПЛИС; • установку таймера реального времени и разъема батареи питания для него; • реализацию видеовыхода не только в виде RGB, но и в виде DVI + цветной композит (тюльпан); Для новой платформы требуется обязательное сохранение полной обратной совместимости, как программной, так и аппаратной - по всем разъемам и выводам с оригинальной БК0011М. В том числе сохранение возможности загрузки с магнитофона. Разводка платы выполняется под два формата: - первый полностью идентичен оригинальный БК0011М по размерам и геометрическому расположению разъемов (также на плате сохраняются оригинальный бипер, разъемы под "мягкую" клавиатуру + под "жесткую"); - второй разводится в формате Mini-IXT. Для формата Mini-IXT разъемы МПИ и УП заменяются на 4 штуки EC-64 (по 2 слота на каждый), разъем под "мягкую" клавиатуру упраздняется, под "жесткую" выводится на двухрядный штыревой разъем Pin Header (например 2,0*2,0мм h=4,3мм); пятиштырьковый разъем питания упраздняется, контакты разъемов ТВ, ЦТВ, МГ сводятся во второй двухрядный штыревой Pin Header, куда также заводятся контакты для бипера. Сам оригинальный бипер на плате формата Mini-IXT не устанавливается, но под него резервируются контакты для подключения. 2. Второй этап Выполнить расширение архитектуры новыми возможностями: • интеграция портов USB, Ethernet 10 Мбит (на базе микропроцессора PIC32MX675F512L-80I/PT), LPT, com (совместимого со стандартной реализацией на 1801ВП1-065, корректно определяемый в ОС БК); • интеграция современного звукового ЦАП с аппаратной поддержкой mp3. Выход звука AY и нового звукового чипа желательно свести в один; • расширение графические режимы 512*256, 640*480, 800*600 с опциональной цветностью 8/16/24 бит; расширенные графические возможности следует стандартизовать под графический API Amiga; • подключение клавиатуры PS/2, состояние которой следует отображать в новый регистр и дублировать в старый согласно заданного соответствия клавиш. Соответствие клавиш за основу можно взять отсюда: http://www.asvcorp.ru/darch/tools/em...010/index.html • подключение мыши PS/2 с дублированием её состояния на порт УП аналогично подключенной к БК мыши "Марсианка", а также в новый регистр. На плате БК старого формата новые разъемы располагаются следующим образом: LPT, com, Ethernet располагаются над разъемом УП; DVI, композит (тюльпан), PS/2 (2 шт), сдвоенный USB - над разъемом МПИ. 3. Третий этап Увеличение эффективности построенной архитектуры: • оптимизация FPGA-эмуляции процессора 1801ВМ1 с целью минимизации числа тактов, затрачиваемых на одну инструкцию; • интеграция контроллера прерываний для реализации аппаратной поддержки многозадачности; • интеграция видеоконтроллера, ускоряющего работу с видеопамятью, снимающего нагрузку с ЦП. Требования к проекту • выбор по возможности микросхем в планарных корпусах для поверхностного монтажа (BGA использовать не желательно); • максимально возможная элегантность и простота нового схемотехнического решения, доступность элементной базы; • ценовая доступность компонентов нового БК по цене. Предполагается упор на продажу в виде недорогих комплектов для самостоятельной сборки (конструкторов); • подробная техническая документация; • полная открытость проекта. Допускаются отклонения от ТЗ на усмотрение исполнителя в сторону более оптимальных решений, без ущерба концепции и требованиям. Первичный выбор элементной базы - на усмотрение исполнителя. Цели проекта • Удовлетворение интересов коллекционеров и фанатов БК. • Поддержка популярности системы команд PDP, в более современном формате. • Реализация современного нативного бытового компьютера в виде конструктора, что позволит привлекать к нему интерес начинающих схемотехников, стимулировать интерес начинающих программистов к реальному "железу", не скрытому высокоуровневыми абстракциями. НОВОСТИ ПО ПРОЕКТУ: 28.03.2012 Итак, уже готова базовая начинка ПЛИС (ВМ1 + 037 + 014), настолько, что в отладочной плате удалось запустить сапера, недавно написанного для БК пользователем vinxru: http://s019.radikal.ru/i642/1203/0c/dff0f438a98dt.jpg 07.04.2012 Вынесенный в составе проекта в отдельный модуль контроллер SMK512 (ПЛИС-реализация) уже в стадии разводки, в течение 1-2 недель будет отдан в производство печатной платы. |
Quote:
Если и есть какая-то перспектива у какого-либо клона БК, то это, имхо, исключительно совместимый с БК0010/11, плюс пререключаемый в какие-то дополнительные расширенные режимы, половина которых будет обслуживать жесткие, гибкие и флешовые диски для большего удобства доступа к софту, а вторая - новые графические возможности и т.д., под которые, опять же имхо, будет писать 1-2 человека, чисто для своего развлечения и популяризации платформы. |
а я бы присоединился. пишите, есть вариант.
|
ИМХО не надо городить огород
Я бы не отказался от БК новодела просто с малость доработанной схемотехникой (сокращением количества микросхем той же памяти) и расположением на 1 плате всех дополнительных устройств (менестреля или аналога, контроллера SMK64 целиком, вывода на ВГА-монитор, отдельных разъемов для джойстиков и мыши, клаву PS-2). А процессорный комплект лучше использовать оригинальный - никаких заморочек с программами не будет. Никаких дополнительных видеорежимов - толку с них все-равно не будет без поддержки, да и реально на БК-шке работать никто не будет - это так - типа ностальгия - запустить что-нибудь старое. Клавиатуру PS-2 лепить сразу. ЗЫ phantom.sannata.ru у меня одного 403 Forbidden выдает не первый день или у всех? |
ВМ4 практически недоставаемы. делать на ВМ3 тоже нет смысла...
|
Quote:
|
Вобщем после размышлений и изучения мнений на форумах я пришел к выводу, что слегка прокачаный БК на советских микросхемах никому нафик не нужен, точнее нужен 10-15ти восторженным фанатам, но не более того. Посему проект разбивается на 2 части:
1. Реплика БК0011М, с заменой ОЗУ и ПЗУ той же емкости, интеграция на плату AY-3-8910, контроллера SMK64, разъема под CF-вместо винчестера. Это классический минимум. Классический максимум - интергировать преобразователь RGB2VGA - чтобы можно было к любому современному монитору присоединяться. Всё остальное - будет больной и никому не нужной фантазией. 2. Берем готовое решение Altera DE1 (http://forum.xdevs.com/viewtopic.php...st=0&sk=t&sd=a), или подобное, берем уже готовую эмуляцию ВМ1 на верилог и допиливаем это всё до полной совместимости с БК11М. В идеале - эмулируем разъемы МПИ, УП и запихиваем эту плату внутрь корпуса БК - для любителей ретро, а остальные смогут поместить плату в современный корпус. Правда в случае ретро не знаю как быть со старой клавиатурой. Может где-то можно найти похожую по размерам, но под PS/2? Получаем реально прокачаный БК с полной обратной совместимостью и с новыми аппаратными возможностями для программистов. Если есть конструктивные возражения по этим пунктам - прошу озвучить. Порядка 12 программистов и схемотехников уже собрал, правда еще не встречались и не обсуждали что и как будем делать. Кто желает присоединиться к какому-то из двух пунктов, пишите на мыло nimamov@mail.ru. |
Quote:
Главный козырь реала - это не только то, что его можно потрогать руками, ностальгия и т.д. А еще и в том, что он априори состоит из правильного оригинального железа (процессор и заказные чипы). А чтобы довести до такого же состояния эмулятор, надо порой годами изучать реал, и то, не факт, что повторишь. |
Если это будет эмулятор, то в чем вообще отличие эмулятора от проекта http://code.google.com/p/bk0010/ ?
Я наверное чего-то не понимаю. Когда я говорю что можно сделать немного улучшенный БК, добавив ВМ2-ВМ3, увеличив памяти, все говорят что это никому не нужная херня, что микросхемы эти скоро исчезнут из продажи вовсе и что надо делать всё на ПЛИС, причем сразу на гигагерцах. На это я сначала говорил что проект тогда не будет отличаться от эмуляторов, но мне возражали, мол это будет новая платформа с системой команд ВМ1, а точнее PDP-11, на котором будет легко эмулироваться архитектура БК. Спустя какое-то время я соглашаюсь с этой идеей, как вдруг мне на форуме начинают писать, что я вообще не понимаю о чем говорю и не умею пользоваться гуглом. Объясните мне кто-нибудь четко и понятно, чего конкретно я не понимаю и что мне надо искать в гугле? |
Titus, не соглашусь. Очень советовал бы повнимательнее посмотреть на системы на чипе. Фактически это похоже на укладку многих дискретных элементов в один корпус. Эта задача становится сложной с контроллерами и процессорами, когда приходится создавать нечто, ведущее себя таким же образом как оригинал и здесь возможны нестыковки и различия в нюансах (тайминги, например). Но это тоже не эмуляция, а симуляция.
Но заменить большие куски схемы одним чипом без потери оригинального поведения вполне реально. Даже если нет идеального и многократно проверенного готового процессора для ПЛИС, то ничего не мешает поставить оригинальный процессор отдельно в паре с ПЛИС, сохранив полностью совместимость и скомпоновав большую часть остальной схемы в один чип. Я не вижу в таком пути ничего ущербного. |
| All times are GMT +4. The time now is 02:29. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.