# Архитектура компьютера ## Лекция * ### NITTA (CGRA) Пенской А.В., 2024 ---- ### План лекции - Архитектура NITTA --- ## NITTA Гибридная параллельная CGRA архитектура реального времени: 1. **TTA**. Статическое планирование по потоку данных. 1. **NISC**. Программа составляется на уровне управляющих сигналов. 1. **VLIW**. Инструкция управляет группой вычислительных узлов. 1. **MIMD** с распределённой памятью и разнотипными узлами.  ---- ### NITTA — Process Units
 
   (и любые другие варианты)
---- ### NITTA — Коммуникация
SISD  MIMD 
TTA / NITTA  TTA / NITTA future 
---
### NITTA — Управление NITTA предназначена для циклического исполнения алгоритмов управления и обработки сигналов/данных. Области применения: 1. разработки встроенных и киберфизических систем; 1. программно-аппаратного тестирования и быстрого прототипирования (HIL и PIL); 1. разработки программируемых ускорителей и сопроцессоров.

----
### NITTA — Процесс планирования Этапы (последовательность условна): 1. Формирование Data Flow Graph. 1. Формирование микроархитектуры для его вычисления. 1. Привязка (Bind) функций на вычислительные блоки. 1. Планирование процесса отталкиваясь от пересылки данных.

----
### NITTA — Design Flow 1. Синий — прикладное программирование. 1. Зелёный — аппаратура. 1. Жёлтый — синтез, планирование, генерация управляющей программы. 1. Монитор — пользовательский интерфейс САПР. 1. Чек-лист — тестирование за счёт совместного моделирования.

---- ### NITTA — Модель процессора и процесса синтеза `Lua | Xmile` $\longrightarrow$ `{ Microarch, Model }` $\longrightarrow$ `{ Verilog, Code }`   --- Key technologies: Haskell, Verilog, TypeScript, React, GitHub. Приходите в проект: [NITTA](https://ryukzak.github.io/projects/nitta/).