Временной анализ и трассировка при проектировании иерархического блока

Содержание

Слайд 2

Задачи:

Создать маршрут проектирования с использованием план групп (plan_groups)
Провести оптимизацию тайминга и добиться

Задачи: Создать маршрут проектирования с использованием план групп (plan_groups) Провести оптимизацию тайминга
работы блока на частоте 1 Ггц (рабочий блок cu_cu и alc0_int_com)
Написать скрипты для ручной трассировки дизайна

Слайд 3

Маршрут проектирования:

Логический синтез
Планирование кристалла
Топологический синтез блока
Размещение элементов в макроблоках (plan groups)
Оптимизация тайминга
Трассировка
Установка

Маршрут проектирования: Логический синтез Планирование кристалла Топологический синтез блока Размещение элементов в
пинов
Фиксация плангрупп

Слайд 4

Временной анализ

slack – разница между временем необходимым для установки сигнала на элементе

Временной анализ slack – разница между временем необходимым для установки сигнала на
и реальным временем которое для этого имеется.
Критический путь – путь с наименьшим значением slack

Основная задача при оптимизации тайминга: уменьшить (по модулю) значение slack в критическом пути вплоть до 0.

Слайд 5

Оптимизация тайминга Автоматическая оптимизация

Буферизует длинные пути
Изменяет размер ячеек
Изменяет расположение ячеек

Исследование зависимости slack в

Оптимизация тайминга Автоматическая оптимизация Буферизует длинные пути Изменяет размер ячеек Изменяет расположение
дизайне от числа итераций

Резултат: оптимальным является использование двух итераций

Слайд 6

Оптимизация тайминга Оптимизация путем корректировки частоты синхросигнала

Частота синхросигнала влияет на алгоритм оптимизации САПР
Минусы:

Оптимизация тайминга Оптимизация путем корректировки частоты синхросигнала Частота синхросигнала влияет на алгоритм
выигрыш в тайминге отрицательно сказывается на площади дизайна, при clock = 0,1 нс - количество ячеек возросло на 3.5 %

Исследование зависимости Slack от частоты Clock

На графике возле каждой точки указано количество ячеек в дизайне.

Слайд 7

Оптимизация тайминга DC – ICC итерации

В маршруте использовались два САПР (Средство автоматического

Оптимизация тайминга DC – ICC итерации В маршруте использовались два САПР (Средство
проектирования)
DC (Design Compiler)
IC Compiler

Результат:
- Slack уменьшился на 0.3 нс (2.1830 - 1.8107)
- оптимизация негативно сказалась на площади дизайна увеличив ее на 34% (725×725 - 850×850)
- в процессе оптимизации на внешнем уровне иерархии появились дополнительная 371 ячейка что испортило созданную иерархию.

Проблема: DC оптимизирует лучше чем ICC, но DC не работает с plangroups.

Решение: использовать DC повторно после создания plangroups, выгрузив всю информацию о них из ICC.

Вывод: применение такой оптимизации нецелесообразно

Слайд 8

Трассировка

Проблема:
При автоматической трассировке САПР прокладывает провода не оптимальными способом.
Решение:
Прокладка части проводов

Трассировка Проблема: При автоматической трассировке САПР прокладывает провода не оптимальными способом. Решение:
вручную

Для облегчения ручной трассировки написаны вспомогательные скрипты:
Скрипт, позволяющий объединить неветвящиеся провода двух план групп в шину
Скрипт, соединяющий шинами соседние план группы
Скрипт, соединяющий шинами все план группы

Ручная трассировка завершается автоматической до разводкой проводов и установкой пинов.

Слайд 9

Фиксация плангрупп

До

После

Последний этап маршрута – фиксация плангрупп позволяющая работать с ними как

Фиксация плангрупп До После Последний этап маршрута – фиксация плангрупп позволяющая работать
с обычными стандартными ячейками

Слайд 10

Результаты работы

Создан новый маршрут проектирования с использованием plangroups.
Придуманы и проанализированы несколько оптимизаций

Результаты работы Создан новый маршрут проектирования с использованием plangroups. Придуманы и проанализированы
для тайминга
Обеспечена работа тестовых блоков на частоте 1 Ггц
Написаны вспомогательные скрипты для ручной трассировки
Имя файла: Временной-анализ-и-трассировка-при-проектировании-иерархического-блока.pptx
Количество просмотров: 110
Количество скачиваний: 0