NITTA
Tool for Hard Real-Time CGRA Application Specific Processors
by Aleksandr Penskoi
We develop the tool for generating and programming specialized non-von Neumann processors for cyclic execution of control and signal/data processing algorithms. These processors are based on the original Not Instruction Transport Triggered Architecture (NITTA). That allows us to:
- Provide high speed and parallel execution of irregular algorithms (where GPU is not applicable) in hard real-time (clock accuracy).
- Make the processor reconfigurable for different application domains.
- Provide a high-level language for application developers and fast compilation.
Our users can resolve the following tasks:
- Development of embedded and cyber-physical systems.
- Hardware and software testing and rapid prototyping (HIL and PIL).
- Development of programmable accelerators and coprocessors.
Key technologies: Haskell, Verilog, TypeScript, React, GitHub.
Today, the project focus on the following goals:
- developing the hardware accelerator for system dynamics and its integration into the cloud platform of our friends: sdCloud project.
You can start meeting with the project by reading recent publications and viewing presentations:
You can start to contribute by simple tasks, for example:
- Update all web-UI dependencies (Yarn, Typescript, React).
- Add TARGET_PATH command-line argument (Haskell).
- Fix minor bugs.
After diving into the project, you can connect to solving more complex problems:
- Machine learning usage to make decisions in the synthesis process (Python, Haskell, ML).
- Add support for more complex hardware organisation with multiple networks inside the processor (Verilog, Haskell).
- Automatisation of synthesis process testing by property-based approach (Haskell, Verilog).
- Automatisation of UI testing (Typescript).
- Development of visualization tools for a multi-level computing process (Typescript, React).
- Development of control software for the integration of a specialized processor into other information systems (Rust, Verilog, Haskell).
For details and more actual information look at issues and projects on GitHub: GitHub
To participate in the project, you need to contact me: https://t.me/aleksandr_penskoi or aleksandr.penskoi@gmail.com.
Мы создаем инструментарий для генерации и программирования специализированных не фон – Неймановских процессоров, предназначенных для циклического исполнения алгоритмов управления и обработки сигналов/данных. Они строятся на оригинальной архитектуре NITTA (Not Instruction Transport Triggered Architecture). Это позволяет:
- обеспечить высокую скорость и уровень параллелизма для нерегулярных алгоритмов (где не используют GPU) и жесткое реальное время (с точностью до такта);
- сделать процессор реконфигурируемым под разные прикладные области;
- предоставить язык высокого уровня для прикладных разработчиков и быструю компиляцию.
Построенные при помощи нашего инструмента вычислители могут использоваться для:
- разработки встроенных и киберфизических систем;
- программно-аппаратного тестирования и быстрого прототипирования (HIL и PIL);
- разработки программируемых ускорителей и сопроцессоров.
В настоящий момент перед проектом стоят следующие цели:
- разработка аппаратного ускорителя для системной динамики и его интеграция в облачную платформу наших друзей из sdCloud project.
Знакомство с проектом можно начать с чтения последних публикацией по проекту и просмотра выступлений:
Участие в проекте можно начать с простых задач, к примеру (после открытия исходного кода здесь будет ссылка на GitHub с реальными тикетами):
- Обновление зависимостей пользовательского интерфейса (Yarn, Typescript, React).
- Добавление ключа TARGET_PATH к интерфейсу командной строки (Haskell).
- Исправление небольших ошибок.
После погружения в проект можно подключиться к решению более сложных задач:
- Применение машинного обучения для синтеза специализированных вычислителей (Python, Haskell, ML).
- Поддержка более сложной организации аппаратуры с несколькими сетями внутри процессора (Verilog, Haskell).
- Автоматизация тестирования процесса синтеза при помощи свойств-ориентированного тестирования (Haskell, Verilog).
- Автоматизация тестирования веб интерфейсов (Typescript, React).
- Разработка пользовательских интефейсов для отладки и профилирования программного и аппаратногообеспечения специализированных вычислителей (Typescript, React).
- Разработка системы управления для интеграции процессоров в информационные системы (Rust, Verilog, Haskell).
- Реализация поддержки арифметики с плавающей точки для специализированных вычислителей (Haskell, Verilog)
Для участия в проекте вам необходимо связаться со мной: https://t.me/aleksandr_penskoi или aleksandr.penskoi@gmail.com.
Дипломы связанные с проектом:
- Разработка и исследование архитектурных стилей проектирования уровневой организации Встроенных систем. Пенской А.В. 2016, autoref
- Разработка системы управления аппаратным вычислителем, Оспенников Л.В., бак., 2018, text, slides
- Механизмы ввода-вывода реконфигурируемой вычислительной платформы реального времени, Емельянов Д.В., маг., 2019, text
- Автоматизация построения моделей вычислительных блоков для системы проектирования специалиированных вычислителей, Ницер К.А., бак., 2019, text
- Разработка высокоскоростного интерфейса аппаратного ускорителя для системной динамики, Чижиков И.В., маг., 2020, text
- Оптимизация синтеза в САПР специализированных вычислителей с помощью машинного обучения, Бураков И.А., бак., 2021, text
- Верификация системы автоматического проектирования специализированных процессоров, Костючик А.Г., маг., 2021, text
- Разработка механизмов синтеза в системе автоматического проектирования специализированных вычислителей, Прохоров Д.А., бак., 2021, text
- Инструментальные средства крупногранулярных реконфигурируемых вычислителей для системной динамики, Гогиян А.Г., маг., 2022, text
- Механизмы автоматизированного синтеза микроархитектуры крупногранулярных реконфигурируемых вычислителей, Закусило В.А., маг., 2022, text
- Совершенствование метода синтеза на основе машинного обучения в САПР
специализированных вычислителей, Бураков И.А., маг., 2023, text