User Tag List

Показано с 1 по 10 из 70

Тема: Возможность доработки БК0010-01 -> БК0011М

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    Регистрация
    31.03.2013
    Адрес
    г. Киев
    Сообщений
    2,413
    Спасибо Благодарностей отдано 
    132
    Спасибо Благодарностей получено 
    759
    Поблагодарили
    353 сообщений
    Mentioned
    88 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от reddie Посмотреть сообщение
    Т.е. пока устройство назначения не пришлет команду подтверждения приема - процессор простаивает.
    Это реализуется и на Спектруме, проц вэйтится, если в момент обращения к памяти она занята видеоконтроллером.
    Нет, тут есть принципиальная разница - между снятием READY и ожиданием RPLY.
    При ожидании RPLY у ВМ1 запускается внутренний таймер, и если по истечении таймера ответ не получен - возникает исключение.
    Такой подход позволяет реализовать простейший PnP и программно определить есть что-то по интересующему адресу или нет.
    Более того, можно принципиально реализовать интересные вещи типа Substrative Decoding.

    Цитата Сообщение от reddie Посмотреть сообщение
    С чтением-записью портов примерно та же ситуация, проц можно застопорить по обращению к ним.
    I/O порты это вообще очень страшная вещь, стоившая индустрии миллиарды долларов, и эти счета до сих пор полностью не оплачены.
    Digital на самом деле сделала крутейший шаг вперед выкинув адресное пространство портов и включив устройства в адресное пространство памяти, унифицировав транзакции шины. Да, когда у вас нет защиты памяти, и всего 64К мгновенно доступны по произвольному адресу - втыкать устройства в это пространство страшно и не очень надежно. Но в DEC понимали что защита памяти будет, обязательно будет, и рискнули сделать унификацию - они умели думать на пару шагов вперед. Нету на шинах DECа адресного пространства портов. Это делает транзакции на шине полностью унифицированными и их количество минимальным - схемы декодирования упростились намного, DMA стал унифицированным и прочее. А вот x86, например, до сих пор цепляется за отдельное адресное пространство портов и все время платил за это свою цену - отдельный тип транзакций, отдельные схемы декодирования, отдельные шины, отдельные инструкции. Дальше-больше, отдельный тип транзакций PCI, типы BAR. Скорости растут, появляются новые шины, и везде это гемор с отдельным классом транзакций I/O портов тянется, взымая свою плату с процессоров, чипсетов и софта. Но шины все быстрее - синхронные протоколы, последовательные каналы, пакетный обмен, и на этом - все, I/O наконец умирает, например в шине AXI таких транзакций нет. Теоретически можно тегировать, но никто с этим уже не заморачивается. И вот уже спецификация SR-IOV говорит что устройства с I/O BAR не подлежат виртуализации. Почему? "Идите на@#й со своими I/O портами, вот почему" - ласково сказали разработчики рут-комплексов, виртуальных функций, IOMMU/VT-d и гипервизоров. В-общем, I/O порты на заре индустрии имели смысл, но потом они собрали кровавую жатву обратной совместимости, и местами все еще продолжают собирать, хотя сегодня изоляция адресных пространств реализуется совсем другими методами. Ото я загнул?

    Цитата Сообщение от reddie Посмотреть сообщение
    Как раз процессор Z80 (а не Спектрум) умеет работать с векторами, выставляемыми на шину. Баловался в свое время.
    Да, про IM2 я подзабыл, так что признаем что умеет, да.

    Цитата Сообщение от reddie Посмотреть сообщение
    Поискав данные о растактовке команд ВМ1 (я ж кодер, ага), внезапно обнаружил, что самые "вкусные" команды
    жрут до 60 тактов процессора. То бишь проц банально молотит кучу мелких последовательных операций на одну
    Да, это правда, ВМ1 не самая быстрая реализация команд PDP-11. Первый блин, к тому же реализованный на микроавтомате сделанном для другой архитектуры. ВМ2 - "работа над ошибками", при сопоставимом транзисторном бюджете работает намного лучше - предвыборка, предекодер, простой конвейер, блок арифметики, вылизанная микропрограмма.

    Цитата Сообщение от reddie Посмотреть сообщение
    Неужели нельзя было сделать некий набор однобайтных инструкций? Пусть машинное слово 2 байта, но можно же заложить условие, скажем,
    что однобайтные команды обязательно идут по две. Допустим, работа с половинками регистров. Вариантов можно придумать массу.
    Да все можно, но это будет другая архитектура. И опять-таки, надо смотреть не на братьев Марио, а в завтра - проблема памяти решается, объемов кода решается, а моноширинная система команд остается. И на этом сегодня стоят и ARM-ы и RISC V - декодер проще, конвейер проще, перформанс на такт выше. Но PDP-11 - это чуть другое, не RISC, да, но свой бонус от ортогональной системы команд он тоже получил - первые PDP-11 удалось собрать на мелкой логике.
    Последний раз редактировалось Vslav; 19.07.2021 в 22:20.

    Эти 3 пользователя(ей) поблагодарили Vslav за это полезное сообщение:

    grf(20.07.2021), Hunta(20.07.2021), SuperMax(20.07.2021)

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Каталогизация софта БК0010 / БК0011М
    от Woland в разделе БК-0010/0011
    Ответов: 21
    Последнее: 26.10.2025, 14:16
  2. Ответов: 2
    Последнее: 24.02.2017, 00:49
  3. Ответов: 0
    Последнее: 10.04.2016, 18:04
  4. Ответов: 70
    Последнее: 21.10.2013, 22:53
  5. Куплю БК0010.01 или БК0011М
    от Hakuna в разделе Барахолка (архив)
    Ответов: 0
    Последнее: 08.06.2010, 13:32

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •