[Logo] Форум DL
  [DL]  На главную страницу 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем
Автор Сообщение
Михаил Долинский

Темы: 1985
Сообщений: 47292

Мой профиль
В ответах на это сообщения будут выкладываться соответствующие задания.
Примерные направления разработок

- развитие системы команд учебного процессора TCPU
- развитие дизассемлера TCPU
- развитие ассемблера TCPU
- развитие С-компилятора TCPU
- развитие системы команд модели процессора Intel 80x86
- автоматизация тестирования модели TCPU
- автоматизация тестирования С-компилятора TCPU

- устранение ошибок внешнего редактора устройств в HLCCAD
- разработка комплекса заданий по проектированию устройств

- доработка флеш-лекции по программированию на ассемблере Intel 8086
- доработка флеш-лекции по проектированию устройств в HLCCAD
Игорь Коршунов

Темы: 7
Сообщений: 2186

Мой профиль
Развитие Си-компилятора для TCPU

Необходимо сделать генератор машинного кода TCPU для Си-компилятора. Пока реализована только операция присваивания.
Работающую версию компилятора под WInter можно посмотреть здесь.

Можно посмотреть исходный код генератора.
Полностью реализована функция CCAssignOperator::Generate(). Для некотрых функций приведены примеры какой ассемблерный код они должны генерировать. Для сложных инструкций приведены шаблоны. Например, см. функцию CCWhileOperator::Generate().
Александр Моисеенко

Темы: 0
Сообщений: 3

Мой профиль
у TCPU есть пока некоторые проблемы, которые могут сильно помешать созданию C-TCPU:
1. маленький объём памяти под код (256 байт) (а нужно хотябы 64Кб)
2. нет инструкции типа call
3. нету косвенных переходов

И ещё меня интересует один вопрос, достаточно ли хорошо документирован генератор (т.к. я понимаю, что у университета есть своя разработка по платформо-независимой трансляции C->ASM), чтобы можно было просто (ну или хотя бы понять используя только документацию, без запросов к создателям) написать соответствие С-шным конструкциям - ассемблерные, например, как RTL и MD в C-компиляторе из пакета GCC?

И кто будет поправлять TCPU, если будет решено внести некоторые новые инструкции?
Михаил Долинский

Темы: 1985
Сообщений: 47292

Мой профиль
1. маленький объём памяти под код (256 байт) (а нужно хотябы 64Кб)
2. нет инструкции типа call
3. нету косвенных переходов  
Вообще-то мы СРАЗУ договорились развивать процессор - делать TCPU-2, наследуясь от TCPU. Таким образом все установленные задачи для TCPU останутся актуальными.


И ещё меня интересует один вопрос, достаточно ли хорошо документирован генератор 
Это вопрос к Игорю Викторовичу, надеюсь достаточно - чего не будет хватать - скажешь, тебе помогут с информацией.

И кто будет поправлять TCPU, если будет решено внести некоторые новые инструкции?  
Ну тут двух мнений быть не может - ТЫ, заодно поправляя/развивая и свой ассемблер и дизассемблер Викторовича Богдана.
Александр Моисеенко

Темы: 0
Сообщений: 3

Мой профиль
Хотелось бы получить следующие заголовочные файлы, чтобы была возможность разрабатывать генератор:
#include "..\cparser\CalculatorException.h"
#include "CBackEnd.h"
#include "Codes.h"
#include "FloatEmulator.h"
#include "CodeFix.h"

Даже, если мне какие-то из них не потребуются, то лучше получить лишние, чем потом снова искать.
 
Индекс форума ->Учебный процесс ГГУ/СШ 27 ->Проектирование цифровых систем
Time:0,031