Слайд 1 - MES conference

реклама
®
Особенности статического
временного анализа и разработки
файлов SDC для комплексной
системы на кристалле с
множественными асинхронными
тактовыми доменами
И.П. Филимонова, П.Н. Дергачев,
П.А. Шевченко
ЗАО НТЦ «Модуль»
VIDEO
Особенности разработки комплексных
систем на кристалле
AUDIO
Интерфейс HDMI с поддержкой HDCP
Видео процессор
Аудио процессор
Блок масштабирования
16-бит
DDR2
память
Блок налож
слоев
Декодер
H.264
Деинтерл
MPEG-2
16-бит
DDR2
память
I2S
S/PDIF
I2C
NMC3
128KB
NMC3
128KB
UART
L2 Cache
128 KB
VDU Cache
VC-1
DMA
SPI
GPIO
Системная шина AMBA3.0
DDR
NAND
DVB процессор
TS DEMUX
DVB-CI
DVB-CSA2.1/3.0
Центральный процессор
Smart
Card IF
CRYPTO
ARM
1176JZF-S
AES 256
OTP ROM
DVB
processor
Интерфейсы
DES/3DES
L2 Cache
128 KB
USB Host
MEM
256KB
ETHERNET
BOOT
ROM
SDIO
Блок-схема СБИС ЦОТС
CPU
МЭС-2014
СБИС
ЦОТС
является
примером
сложной
комплексной
системы
с
множеством
асинхронных
доменов тактовых сигналов,
более 100 доменов тактовых
сигналов:
HLB блоки:
DVB процессор,
Видео и Аудио процессор;
 IP блоки:
Центральный процессор,
SDRAM DDR2,
USB PHY,
HDMI PHY,
CRG (PLL: до 40 доменов).
 Контроль
временных
параметров осуществляется
с помощью статического
временного
анализатора
(STA);
 Временные ограничения
заданы в файле SDC.
2
Маршрут проектирования
современной СнК
SDC IP1 блока
SDC IP2 блока
Библиотеки
.lib .lir
RTL код / Netlist
IP блоков
...
SDC IPn блока
RTL
Compiler,
скрипт
TCL
Сгенерированный
prelayout SDC файл
системы
Оптимизированный
prelayout netlist
STA
CCD
НЕТ
Верификация
без учета
задержек
НЕТ
ДА
ДА
CTS
TEST
logic
Оптимизированный
postlayout netlist
Postlayout SDC
файл системы
STA
CCD
НЕТ
Верификация
c учетом
задержек
ДА
НЕТ
SDC файл используется для
процесса логического синтеза,
физического
синтеза
и
верификации
временных
характеристик системы от начала
логического синтеза до отправки
проекта на производство
Отладка SDC файла включает в
себя три этапа:
 Формальная проверка;
 Проверка
полноты
формирования ограничений
(САПР
Cadence:
RTL
Compiler,
Conformal
Constraint Design, Encounter
Timing system);
 Проверка
правильности
спецификации
временных
параметров:
логическое
моделирование системы.
ДА
Готовая
топология
МЭС-2014
3
Метод построения файла временных
ограничений SDC
Путь между двумя регистрами
Комбинационная
логика
REG
Комбинационная
логика
REG
IN
Путь между регистром и
выходом
OUT
Комбинационная
логика
Путь между входом и
регистром
IN
OUT
Путь между входом и выходом
SDC файл состоит из следующих частей:
 спецификации тактовых сигналов системы;
create_clock / create_generated_clock + set_clock_uncertainty
 спецификации внешних задержек для входов и выходов системы;
set_input/output_delay
 спецификации исключений для временных путей системы.
set_false_path / set_multicycle_path (-setup/hold) / set_max/min_delay
МЭС-2014
4
Задание временных ограничений на
асинхронные тактовые домены
Использование команды
«set_multicycle_path» для
контроля длин путей между
асинхронными тактовыми доменами
1
2
3
4
5
6
7
clka
Пересечение путей между
асинхронными тактовыми
доменами clka <―> clkb
UFF0/D
D1
HOLD
D2
DATA NOT VALID
SETUP
clkb
UFF1/D
UFF2/D
UFF1/EN
D1
UFF3/D
D2
DATA NOT VALID
TimeGen
МЭС-2014
5
Проблемы при статическом
временном анализе
Задержка на дереве асинхронных
тактовых сигналов
начинает
оказывать влияние на время, в
которое должен уложится путь
при передачи данных с одного
регистра на другой. Данные
ограничения
задаются
в
спецификации (SDC файле):
Tsu / Thold -> 0
1
2
3
4
clka
clkb
SKEW
clka <after CTS>
SKEW
HOLD
clkb <after CTS>
Thold
Tsu
TimeGen
Tlaunch (or Tcapture) = Tclk_del_buf + SKEW (Tpll_jitter, OCV, oth req)
Расчетный параметр Параметр явно не определен
МЭС-2014
6
Метод задания временных ограничений на
асинхронные домены тактовых сигналов
Цель метода:
1
2
3
4
 Задавать
временные
ограничения на пути
между асинхронными
тактовыми доменами.
 Исключить задержку
на дереве тактовых
сигналов
из
временного
анализа
путей
между
асинхронными
доменами .
 Метод должен быть
максимально
автоматизирован.
5
clka_cdc
UFF0/D
D1
D2
...
SETUP
HOLD
Tsu / Thold - фиксированная величина
clkb_cdc
D1
UFF3/D
D2
Tsu
МЭС-2014
TimeGen
7
Алгоритм реализации
 Задание реальных тактовых сигналов:
create_clock –name clkb –period 10.0 [get_ports clka],
(1)
create_clock –name clkb –period
(2)
5.0 [get_ports clkb],
Задание синхронных и асинхронных доменов тактовых сигналов:
set_clock_groups –async –group {clka} –group {clkb},
(3)
 Задание дубликатов тактовых сигналов с исключением задержки на дереве при STA:
create_clock –name clka_cdc
–period 10.0 [get_ports clka],
(4)
create_clock –name clkb_cdc –period 5.0 [get_ports clkb],
(5)
remove_propagated_clock [get_clocks *_cdc],
(6)
 Исключение из временного анализа путей внутри асинхронного домена, тактируемых ‘cdc’
дублером:
foreach_in_collection cdcclk [get_clocks *_cdc] {set_false_path
[get_clock $cdcclk] –to [get_clock $cdcclk]},
–from
(7)
Устранение влияния доменов идеальных тактовых сигналов «_cdc» на реальные:
set_clock_groups –physically exclusive
[get_clocks *] [get_clocks *_cdc]]
-group [remove_from_collection
-group [get_clock *_cdc],
(8)
Задание временных ограничений на пути между асинхронными доменами дубликатов
тактовых сигналов:
set_multicycle_path –from [get_clock clka_cdc]
–setup –end 2,
–to [get_clock clkb_cdc]
(9)
set_multicycle_path –from [get_clock clka_cdc]
–hold –end 1.
–to [get_clock clkb_cdc]
(10)
МЭС-2014
8
Результаты STA:
синхронные домены тактовых сигналов
Clock Name
Source
Period (ps)
Prop
y
DSP_CLK148_5
theHLB_DSP/theCRG_DSP/clk_200_reg/Q
6732.0000
DSPCLK_297
theCRG11VIDEO_wrapper/theVIDEOCRG/uCRG11_nopll/uCRG11_main/uCR_
WLPC/uCR_LPOC2/uGCB0/uCELL/GCLK
3366.0000
y
###############################################################
#Design:
СБИС ЦОТС
#Command: report_timing -clock_from DSPCLK_297 -clock_to DSP_CLK148_5 -path_exceptions applied
###############################################################
Path 1: MET Setup Check with Pin theHLB_DSP/theaxi_wrp/adr_cnt_reg_11_/CLK
Endpoint:
theHLB_DSP/theaxi_wrp/adr_cnt_reg_11_/EN (v)
checked with leading edge of 'DSP_CLK148_5‘
Beginpoint: theHLB_DSP/theNM_TOP_0/DMAC_BSU/sw_m/MQ/AR_ADDR_reg_1_/Q (^)
triggered by leading edge of 'DSPCLK_297‘
Other End Arrival Time
3235.2190
- Setup
235.5000
Учет задержки на дереве тактовых
+ Phase Shift
3366.0000
+ CPPR Adjustment
526.6267
сигналов
+ Cycle Adjustment
3366.0000
- Uncertainty
150.0000
Задание временных ограничений на
= Required Time
10108.3457
пути м/у синхронными доменами
- Arrival Time
6670.3281
тактовых сигналов через mcp
= Slack Time
3438.0176
Clock Rise Edge
0.0000
From
To
Late (setup)
+ Clock Network Latency (Prop) 3985.7415
DSPCLK_297
DSP_CLK148_5
cycles 2
= Beginpoint Arrival Time
3985.7415
###############################################################
#Design: СБИС ЦОТС
#Command: report_timing -clock_from DSPCLK_297_CDC -clock_to DSP_CLK148_5_CDC -path_exceptions
applied
###############################################################
No constrained timing paths with given description found.
МЭС-2014
9
Результаты STA:
aсинхронные домены тактовых сигналов
Clock Name
Source
Period (ps)
Prop
CLK_AXI200_CDC
theCRG_wrapper/theARMCRG/uCRG11_nopll/uCRG11_main/uCR_
WDVS/U3/YB
5000.0000
n
DDR2CLKO400_EM0_CDC
theHLB_DDR2_EM0/theclk_divider2/theclk_out_reg/Q
2500.0000
n
###############################################################
#Design: СБИС ЦОТС
#Command: report_timing -clock_from CLK_AXI200_CDC -clock_to DDR2CLKO400_EM0_CDC
###############################################################
Path 1: MET Setup Check with Pin
theHLB_DDR2_EM0/thepl341_dmc/u_memif/u_bank_config/u_bank_fsm_b4c1/bank_count_one_reg/CLK
Endpoint:
theHLB_DDR2_EM0/thepl341_dmc/u_memif/u_bank_config/u_bank_fsm_b4c1/bank_count_one_reg/DATA (^)
checked with leading edge of 'DDR2CLKO400_EM0_CDC‘
Beginpoint:
theHLB_DDR2_EM0/thepl341_dmc/u_apb/u_reg_block/u_reg_fixed/t_wr_int_reg_1_/Q
(^)
triggered by leading edge of 'CLK_AXI200_CDC‘
Other End Arrival Time
0.0000
Нет учета задержки на дереве
Setup
52.0000
тактовых сигналов
+ Phase Shift
2500.0000
+ CPPR Adjustment
0.0000
Задание временных ограничений на
+ Cycle Adjustment
2500.0000
пути м/у асинхронными доменами
Uncertainty
400.0000
тактовых сигналов через mcp
= Required Time
4548.0000
- Arrival Time
3447.0249
From
Late (setup)
= Slack Time
1100.9751
Clock Rise Edge
0.0000
theHLB_DDR2_EM0/thepl341_dmc/u_apb/u_r
cycles 2
+ Clock Network Latency (Ideal) 0.0000
eg_block/u_reg_fixed/t_wr_int_reg_1_/CLK
= Beginpoint Arrival Time
0.0000
###############################################################
#Design: СБИС ЦОТС
#Command: report_timing -clock_from CLK_AXI200 -clock_to DDR2CLKO400_EM0
###############################################################
10
No constrained timing paths with given description found.
Реализация автоматического написания
файлов временных ограничений SDC
SDC IP1 блока
SDC IP2 блока
Библиотеки
.lib .lir
RTL код / Netlist
IP блоков
...
SDC IPn блока
RTL
Compiler,
скрипт
TCL
Сгенерированный
SDC файл системы
средствами EDA
Таблица
асинхронности
тактовых доменов
Оптимизированный
prelayout netlist
Верификация
без учета
задержек
НЕТ
ДА
STA
CCD
НЕТ
ДА
PERL
скрипт
CTS
TEST
logic
Автоматические
SDC1, SDC2, SDC3
файлы системы
Оптимизированный
postlayout netlist
STA
CCD
ДА
Готовая
топология
Верификация
c учетом
задержек
ДА
НЕТ
МЭС-2014
НЕТ
 SDC1
файл
определяет
временные ограничения для
всех
путей
синхронных
доменов, проверяются пути
между реальными тактовыми
сигналами. Является файлом
задания
временных
ограничений, созданным на
этапе логического синтеза
средствами EDA.
 SDC2
файл
определяет
временные ограничения для
всех асинхронных доменов,
проверяются пути между
идеальными
«cdc»
тактовыми сигналами. Файл
автоматически получается на
базе SDC1 файла путем
переименования
реальных
тактовых сигналов.
 SDC3 файл определяет на
базе таблицы асинхронности
отношения
между
множеством
доменов
тактовых сигналов системы,
содержит
необходимую
информацию о дубликатах
«cdc» тактовых сигналов.11
Основные достигнутые результаты
 Контроль путей асинхронных тактовых доменов;
СБИС ЦОТС:
 Общее число доменов тактовых сигналов – 119;
 Число асинхронных доменов тактовых сигналов – 44.
 Максимально автоматизированный
временных ограничений SDC;
процесс
написания
файлов
 Общий объем SDC1 и SDC2 файла – 2,83 Мб;
 Общий объем SDC3 файла – 92,5 Кб;
 Время разработки топологии при использовании описанного метода
может быть значительно сокращенно;
МЭС-2014
12
Контактная информация
• internet
www.module.ru
• тел.
+7 499 152-96-98
• факс
+7 499 152-46-61
• адрес
125190, Москва, 4-я ул. 8-го Марта д.3, а/я 166
Спасибо за внимание!
МЭС-2014
13
Скачать