Forth и другие саморасширяющиеся системы программирования Locations of visitors to this page
Текущее время: Чт мар 28, 2024 13:26

...
Google Search
Forth-FAQ Spy Grafic

Часовой пояс: UTC + 3 часа [ Летнее время ]




Ответить
Имя пользователя:
Заголовок:
Текст сообщения:
Введите текст вашего сообщения. Длина сообщения в символах не более: 60000

Размер шрифта:
Цвет шрифта
Настройки:
BBCode ВКЛЮЧЕН
[img] ВЫКЛЮЧЕН
[flash] ВЫКЛЮЧЕН
[url] ВКЛЮЧЕН
Смайлики ВЫКЛЮЧЕНЫ
Отключить в этом сообщении BBCode
Не преобразовывать адреса URL в ссылки
Вопрос
Теперь гостю придется вводить здесь пароль. Не от своей учетной записи, а ПАРОЛЬ ДЛЯ ГОСТЯ, получить который можно после регистрации на форуме через ЛС.:
Этот вопрос предназначен для выявления и предотвращения автоматических регистраций.
   

Обзор темы - Форт-процессор с VLIW/EPIC
Автор Сообщение
  Заголовок сообщения:  Re: Форт-процессор с VLIW/EPIC  Ответить с цитатой
Картинки будут ? :D
Сообщение Добавлено: Пт май 31, 2019 22:00
  Заголовок сообщения:  Форт-процессор с VLIW/EPIC  Ответить с цитатой
Тестируется еще один вариант форт-процессора. На этот раз это стековый процессор на основе подходов VLIW/EPIC. Напомню, что VLIW - это "сверхдлинное командное слово", а EPIC - "явный параллелизм команд". Это близкие вещи, и EPIC был предложен как развитие VLIW.

Особенность (или недостаток?) VLIW в том, что там исходно заложена возможность конфликта по доступу к данным. Например, связка
R0 = R1 + R2; R3 = R0 + R5
не может выполняться параллельно, поскольку вторая инструкция использует результат первой. Поэтому код может получаться "рыхлым", и часть исполнительных устройств может простаивать.

Что получается со стеком.
1. За счет входных коммутаторов "проглатываются" слова, манипулирующие стеком. Т.е. если выполняется DUP +, то слово DUP реализуется на входных коммутаторах, которые подают на 1-й и 2-й входы АЛУ вершину стека.
2. Используется дерево АЛУ, а не параллельные АЛУ. Поэтому можно выполнить команду над двумя верхними числами на стеке, а с результатом выполнить операцию, привлекая третье сверху число.

Что получилось в итоге.
1. Относительно небольшой размер ядра в ячейках ПЛИС. Явный параллелизм позволил уложить логику декодирования фактически в обычные мультиплексоры, в итоге возможных действий получилось гораздо больше, чем привычных слов ядра Форта, а эти слова являются подмножеством возможных операций.
2. Умеренная частота. Пока тесты на 50 МГц (low-cost ПЛИС), с возможностью перехода на 80-100 на high-end.
3. Команда в 36 бит с возможностью использования литералов прямо в поле команды. В итоге такие вещи как @ ! и подобные также "глотают" один из операндов, делая ненужным лишний такт на помещение литерала на вершину стека перед использованием.

Зачем.
Память в новых ПЛИС выросла в объеме, и от софт-ядра хочется умеренной частоты (чтобы удобно укладывалось в проекты общего назначения) при хорошем уровне соответствия Форту, а также возможности исполнения кода, скомпилированного из Си-подобного входного языка. В итоге сейчас есть 4 софт-ядра стековых процессоров различного назначения.
Сообщение Добавлено: Ср май 29, 2019 03:01

Часовой пояс: UTC + 3 часа [ Летнее время ]


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
phpBB сборка от FladeX // Русская поддержка phpBB