Russian Language English Language


Place for sale

BC/NW 2021№ 1 (37):2.1  

ИЗУЧЕНИЕ ОСОБЕННОСТЕЙ РАЗРАБОТКИ ОПТИМИЗИРУЮЩЕГО КОМПИЛЯТОРА ДЛЯ VLIW-ПРОЦЕССОРА

Мишин А.А., Ладыгин И. И.

Архитектура с «широким командным словом» (VLIW) относится к архитектурам, разработанным для использования параллелизма на уровне команд. В машинах с архитектурой VLIW многие статически запланированные, тесно связанные, мелкозернистые операции выполняются параллельно в  рамках одного потока команд. Таким образом можно считать, что VLIW — это расширение многих текущих архитектур [1]. В ходе данной работы был разработан оптимизирующий компилятор для гипотетического  VLIW-процессора. Характеристики целевого устройства, такие как количество и назначение функциональных блоков, временные задержки обработки команд и прочие передаются компилятору в качестве параметров. Псевдокод описания входной программы представляет собой контекстно-независимый язык и его порождающая грамматика задается в расширенной форме Бэкуса–Наура [2]. Для токенизации псевдокода применяется лексер с поддержкой регулярных выражений, а  для формирования абстрактного синтаксического дерева из  получившегося потока токенов используется LARL(1)-парсер. Результирующее дерево обходится в глубину по алгоритму прямого обхода и в результате его обработки получается последовательность машинных инструкций. Из них, в свою очередь, и формируется непосредственно широкое командное слово путем их объединения с учетом отсутствия между ними зависимостей «чтение-после-записи», «записьпосле-чтения» и «запись-после-записи». Каждый этап работы компилятора сопровождается генерацией отчета о работе обеспечивая наглядность всего процесса. Разработанный компилятор может применяться в образовательном процессе для получения обучающимися знаний о принципах работы современных методов компиляции.

Литература

1. Joseph A. Fisher. Very Long  Instruction Word architectures and the ELI-512. SIGARCH Comput. Archit. News 11, 3 (June 1983), 140–150. DOI: https://doi.org/ 10.1145/1067651.801649

2. Альфред В. Ахо, Моника С. Лам, Рави Сети, Джеффри Д. Ульман. Компиляторы: принципы, технологии и инструментарий. — 2 изд. — М.: Вильямс, 2008. — ISBN 978-5-8459-1349-4.