Вынуть вм80 и вставить аналог.
Как раз HardWareMan удачно заглянул, он менял в специалисте ВМ80 на проц Vslava. К вектору и ВМ1 это отношения не имеет, наверно лучше обсуждение этого вопроса продолжить в соответствующей теме.
Ссылкой поделитесь?
Если есть возможность (а она есть) ВМ1 достать ,то может при определённой задаче и желании есть смысл и с ним справиться ?
Как уже сказали выше - я так делал. И что?
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Если бы я затевал проект века сейчас, то это был бы читабельный эквивалент проца Vslav-а. Привести его ближе к тому, как его написал бы человек. Постараться выделить модули. Дать им имена по возможности совпадающие с документацией. Раскидать по ним все семиэтажные выражения. Это очень непросто по-моему, но полезно. Смысл такого великого труда в том, что не только сверхлюди смогут вносить в него дополнения и изменения.
T80 с моими фиксами для режима 8080 -- это если надо get shit done прямо сейчас, потому что проверено, что работает. Но по-моему он слегка уродец, лично мне радости не приносит. Может быть это просто потому что я вижу VHDL как дореформенный Вѣрилогъ с твердыми знаками и ятями (хотя говорят, что все наоборот, это VHDL молодой и пышущий здоровьем).
Больше игр нет
Очеловечивание проца Vslava - это было бы очень хорошо, только нужен квалифицированный специалист с желанием и временем. И это отдельная задача. До ее решения приделать туда ВМ1 нереально. Приделывать к T80 ВМ1 можно прямо сейчас. Требования к квалификации ниже, но без желания и времени опять никуда, в это все упирается. Если судить по себе, то проекты, которые в принципе можно сделать, но не очень хочется, могут висеть годами, пока не появится человек, которому хочется очень. Или появится какая-либо дополнительная мотивация.
Я вижу очеловечивание как отдельную и самостоятельную задачу. Может быть кажется, что если мы получаем на выходе полный эквивалент оригинала, то и работы как бы нет. Но это не так. Это как погашение долговых обязательств -- развязывает руки.
Больше игр нет
Процитирую свое же сообщение:
Процессор - чистая стэйт-машина, никакого микрокода. Теперь точно ясно, что повторять его влоб смысла вообще нет, нужно делать изложение на тему. Речь конечно о реализации на FPGA/CPLD. Интересного там только сам ALU - он просто изящен, хоть и не настолько продвинут в математическом смысле, как у Z80. Ну еще и стэйт машина циклов, но ее можно и самому накорябать за полминуты. Забавно еще то, что только регистры реально хранят значения во времени и аккумулятор, хотя он часть ALU (его выбор - отдельная цепь). У ALU несколько внутренних регистров: X, R и A, причем X и R практически каждый такт перезаписываются. A, выполняет роль, собственно, аккумулятора. При расчете, данные из A сначала копируются в R. Второй операнд параллельно грузится в X и результат вычисляется комбинаторной логикой напрямую (затраты времени чисто задержка в логике), который может быть записан обратно в А, минуя внутреннюю шину, или сразу выставлен на внутреннюю шину данных. Она, кстати, двунаправленная, точнее там что-то вроде монтажного ИЛИ + накачка перед использованием, т.е. используется ёмкостный эффект - это уже обсуждали. Это позволяет загрузить опкод NOP (накачка внутренней шины отключается при активном сбросе), удерживая сброс в течение нескольких тактов (в доке написано, что их число минимально 3), что уменьшает накладные расходы в схеме. Таким образом, вот эта схема не верна, так как Accumulator Latch имеет доступ к внутренней шине.
А, еще регистр флагов. Он отсутствует как регистр - так, набор триггеров. 4 из них вообще тупые: P, Z, AC и S. А вот C - развитой. У него сложная цепь управления, т.к. он реально участвует в куче команд.
Последний раз редактировалось HardWareMan; 31.05.2022 в 13:22.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)