User Tag List

Страница 5 из 5 ПерваяПервая 12345
Показано с 41 по 42 из 42

Тема: x80: CISC - уже не i8080, ещё не i8086

  1. #41

    Регистрация
    15.02.2015
    Адрес
    г. Могилёв, Беларусь
    Сообщений
    928
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    119
    Поблагодарили
    73 сообщений
    Mentioned
    3 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Lethargeek Посмотреть сообщение
    MIPS - уныл
    Mi amigo, ¿tienes algo contra MIPS?
    ¡Un momento, señor fiscal!


  2. #42

    Регистрация
    05.03.2010
    Адрес
    Ташкент
    Сообщений
    160
    Спасибо Благодарностей отдано 
    25
    Спасибо Благодарностей получено 
    66
    Поблагодарили
    41 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Arrow Вариант с RISC-ядром собственной архитектуры

    Кстaти, так как x80 задумывался в идеале как CISC-процессор на ТТЛ, в силу своей сложности рассматривался вариант с RISC-ядром, как это сделали с i486.
    (Если помните, то i486 в сравнении с i386 стал чуточку медленнее (уже забыл, где, но по-моему, команды LOOP, IN, OUT пострадали). Но здесь я не буду вкапываться в историю Intel…)
    А чтобы не зависеть от топовых решений индустрии, ядром x80 я решил сделать собственную архитектуру со сквозным кодированием команд методом акына: Что вижу, то и кодирую.

    Тем самым, так как в эмуляторе используются 18 бит кодируемой команды и схема узла выборки команды выдаёт эти биты, то прямым кодированием можно закодировать в лоб 262144 микропрограмм.
    Например:
    Код:
    ; Код B8 FF - Команда RET
    ;
    ; 18-битный внутренний бинарный индекс подпрограммы:
    ; 0x00FB8
    ; 0x04FB8
    ; 0x08FB8
    ; 0x0CFB8
    ; 0x10FB8
    ; 0x14FB8
    ; 0x18FB8
    ; 0x1CFB8
    ; 0x20FB8
    ; 0x24FB8
    ; 0x28FB8
    ; 0x2CFB8
    ; 0x30FB8
    ; 0x34FB8
    ; 0x38FB8
    ; 0x3CFB8
    ;
    ; Примерный дамп микропрограммы команды RET
    000FB800 A9 AA 01    - A9 = 1
    000FB803 CB C4 B4 AD - AD = B4:C4
    000FB807 CA 0A       - C4 += A9
    000FB809 BA DC 0A    - DC B4 += A9
    000FB80B CC C9 BE    - C9 = [AD]
    000FB80E CB C4 B4 AD - AD = B4:C4
    000FB812 CA 0A       - C4 += A9
    000FB814 BA DC 0A    - DC B4 += A9
    000FB817 BB B9 BE    - B9 = [AD]
    000FB81A CB C9 B9 AD EB
    То есть, тем самым, x80-команда RET разворачивается всего в 31 RISC-команду по 2 такта на каждую и требует 62 такта!
    Это - чудовищный результат!
    Не смотря на чудовищное обилие микропрограмм в четверть миллиона, каждая микропрограмма будет жрать по несколько десятков тактов!

    P.S.: Вот так я стараюсь не ограничиваться одним JavaScript-эмулятором, а прощупываю более-менее приемлемые способы реализации не отступая от курса концепции: Не искажая общую таблицу всех команд.
    Мне ведь не дипломную работу защищать, где худо-бедно хоть какой-то процессор пинком запустить лампочками моргать.
    Потому и не торопясь десятилетиями двигаюсь крайне медленно к реализации всей концепции в целом, чтобы x80-Linux запустить в перспективе.
    (Это для тех, кто хотел бы увидеть результат и прототип хотя бы к 2038 году: Не дождётесь!)

Страница 5 из 5 ПерваяПервая 12345

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

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

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

Похожие темы

  1. Програмная эмуляция i8086 в ДВК
    от MM в разделе ДВК, УКНЦ
    Ответов: 21
    Последнее: 06.03.2019, 13:04
  2. Мнемоники i8080 vs Z80
    от Vladimir_S в разделе Разное
    Ответов: 153
    Последнее: 20.12.2016, 13:02
  3. Квадратный корень на i8080
    от shoorick в разделе Разное
    Ответов: 31
    Последнее: 25.08.2016, 14:04
  4. Код эмуляции i8080 на С
    от medvdv в разделе Эмуляторы отечественных компьютеров
    Ответов: 15
    Последнее: 27.03.2015, 03:43
  5. Эмулятор i8080
    от Higgins в разделе Разное
    Ответов: 2
    Последнее: 20.05.2011, 11:43

Ваши права

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