Стандартный формат паразитного обмена
![]() | Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( сентябрь 2021 г. ) |
Стандартный формат паразитного обмена ( SPEF ) — это стандарт IEEE для представления паразитных данных проводов в чипе в формате ASCII . Неидеальные провода имеют паразитное сопротивление и емкость , которые улавливаются SPEF. Эти провода также имеют индуктивность , не включенную в SPEF. SPEF используется для расчета задержки и обеспечения целостности сигнала чипа, что в конечном итоге определяет его скорость работы .
SPEF — самая популярная спецификация для паразитного обмена между различными инструментами области EDA на любом этапе проектирования.
Спецификация SPEF является частью стандарта IEEE 1481-1999 для систем расчета задержки и мощности интегральных схем (IC). Последняя версия SPEF является частью стандарта IEEE 1481-2019 для архитектуры открытой библиотеки интегральных схем (IC) (OLA) .
SPEF извлекается после маршрутизации на этапе Place и Route . Это помогает в точном расчете анализа падения ИК-излучения и другого анализа после маршрутизации. Этот файл содержит параметры R и C в зависимости от размещения тайла/блока и маршрутизации между размещенными ячейками.
Синтаксис SPEF
[ редактировать ]SPEF (стандартный формат паразитного обмена) описан в главе 9 стандарта IEEE 1481-1999. Задокументировано несколько методов описания паразитов, но мы обсудим лишь несколько важных.
Общий синтаксис
[ редактировать ]Типичный файл SPEF состоит из 4 основных разделов:
- раздел заголовка,
- раздел карты имен,
- раздел порта верхнего уровня и
- основной раздел описания паразитов.
Обычно перед ключевыми словами SPEF ставится звездочка , например: *R_UNIT
, *NAME_MAP
и *D_NET
.
Комментарии начинаются в любом месте строки с //
и беги до конца очереди. Каждая строка в блоке комментариев должна начинаться с //
.
Информация в заголовке
[ редактировать ]Раздел заголовка состоит из 14 строк и содержит информацию о:
- название дизайна,
- инструмент для извлечения паразитов,
- именование стилей и
- единицы.
При чтении SPEF важно проверять заголовок на наличие единиц измерения, поскольку они различаются в зависимости от инструмента. По умолчанию SPEF от Astro будет в пФ и кОм , тогда как SPEF от Star-RCXT и Quantus QRC будет в фФ и Ом.
Название раздела карты
[ редактировать ]Чтобы уменьшить размер файла, SPEF позволяет сопоставлять длинные имена более коротким числам, которым предшествует звездочка. Это сопоставление определяется в разделе карты имен. Например:
*NAME_MAP
*509 F_C_EP2
*510 F_C_EP3
*511 F_C_EP4
*512 F_C_EP5
*513 TOP/BUF_ZCLK_2_pin_Z_1
*514 TOP/BUF_ZCLK_3_pin_Z_1
*515 TOP/BUF_ZCLK_4_pin_Z_1
Далее в файле F_C_EP2
можно обращаться по имени или по *509
. Сопоставление имен в SPEF не требуется. Кроме того, в одном файле могут встречаться сопоставленные и несопоставленные имена. Обычно короткие имена, такие как вывод с именем A, не будут сопоставлены, поскольку сопоставление не уменьшит размер файла. Можно написать сценарий, который будет отображать числа обратно в имена. Это облегчит чтение SPEF, но значительно увеличит размер файла.
Портовая секция
[ редактировать ]Раздел портов представляет собой просто список портов верхнего уровня в проекте. Они также помечены как входные, выходные или двунаправленные с помощью I, O или B. Например:
*PORTS
*1 I
*2 I
*3 O
*4 O
*5 O
*6 O
*7 O
*8 B
*9 B
Паразиты
[ редактировать ]Каждая извлеченная сеть будет иметь *D_NET
раздел. Обычно это будет состоять из *D_NET
линия, а *CONN
раздел, а *CAP
раздел, *RES
раздел и *END
линия. Одноконтактные сети не будут иметь *RES
раздел. Сети, соединенные примыкающими штырями, не будут иметь *CAP
раздел.
*D_NET regcontrol_top/GRC/n13345 1.94482
*CONN
*I regcontrol_top/GRC/U9743:E I *C 537.855 9150.11 *L 3.70000
*I regcontrol_top/GRC/U9409:A I *C 540.735 9146.02 *L 5.40000
*I regcontrol_top/GRC/U9407:Z O *C 549.370 9149.88 *D OR2M1P
*CAP
1 regcontrol_top/GRC/U9743:E 0.936057
2 regcontrol_top/GRC/U9409:A regcontrol_top/GRC/U10716:Z 0.622675
3 regcontrol_top/GRC/U9407:Z 0.386093
*RES
1 regcontrol_top/GRC/U9743:E regcontrol_top/GRC/U9407:Z 10.7916
2 regcontrol_top/GRC/U9743:E regcontrol_top/GRC/U9409:A 8.07710
3 regcontrol_top/GRC/U9409:A regcontrol_top/GRC/U9407:Z 11.9156
*END
The *D_NET
строка сообщает имя сети и общую емкость сети. Эта емкость будет равна сумме всех емкостей *CAP
раздел.
*Раздел CONN
[ редактировать ]The *CONN
В разделе перечислены контакты, подключенные к сети. Соединение с экземпляром ячейки начинается с *I
. Соединение с портом верхнего уровня начинается с *P
.
Синтаксис *CONN
записи:
*I <pin name> <direction> *C <xy coordinate> <loading or driving information>
Где:
- Имя вывода — это имя вывода.
- Направление будет
I
,O
, илиB
, соответствующий входным, выходным или двунаправленным сигналам соответственно. - Координата xy будет местоположением вывода на макете.
- Для ввода информация о загрузке будет иметь вид
*L
и емкость контакта. - Для вывода информация о вождении будет
*D
и тип движущейся ячейки. - Координаты для
*P
записи портов могут быть неточными, поскольку некоторые инструменты извлечения ищут физическое расположение логического порта (которого не существует), а не местоположение соответствующего контакта.
*Раздел CAP
[ редактировать ]The *CAP
В разделе представлена подробная информация о емкости сети. Записи в *CAP
Секция бывает двух видов: одна для конденсатора, сосредоточенного на земле, и другая для связанного конденсатора.
Конденсатор, сосредоточенный на земле, имеет три поля:
- идентифицирующее целое число,
- имя узла и
- значение емкости этого узла.
Пример
[ редактировать ]1 regcontrol_top/GRC/U9743:E 0.936057
Конденсатор связи имеет четыре поля:
- идентифицирующее целое число,
- два имени узла и
- значения конденсатора связи между этими двумя узлами.
Пример
[ редактировать ]2 regcontrol_top/GRC/U9409:A regcontrol_top/GRC/U10716:Z 0.622675
Если нетто A
подключен к сети B
, разделительный конденсатор будет указан в каждой сети. *CAP
раздел.
*Раздел РЭС
[ редактировать ]The *RES
В разделе представлена сеть сопротивления для сети.
Записи в *RES
раздел содержит 4 поля:
- идентифицирующее целое число,
- два имени узла и
- сопротивление между этими двумя узлами.
Пример
[ редактировать ]1 regcontrol_top/GRC/U9743:E regcontrol_top/GRC/U9407:Z 10.7916
Сеть сопротивления для сети может быть очень сложной. SPEF может содержать резисторные петли или, казалось бы, смехотворно огромные резисторы, даже если схема представляет собой простой маршрут от точки к точке. Это вызвано тем, что инструмент извлечения разрезает сети на мелкие кусочки для извлечения, а затем математически сшивает их вместе при написании SPEF.
Паразитические ценности
[ редактировать ]В приведенных выше примерах показано одно паразитное значение для каждого конденсатора или резистора. Какой угол представляет это значение, зависит от потока паразитного извлечения и расчета задержки. SPEF также позволяет min : typ : max сообщать значения :
1 regcontrol_top/GRC/U9743:E 0.936057:1.02342:1.31343
Стандарт IEEE требует сообщать либо 1, либо 3 значения; однако некоторые инструменты сообщают о парах min : max , и ожидается, что инструменты могут сообщать о многих углах ( угол1 : угол2 : угол3 : угол4 ) в будущем.
Разница между паразитными форматами данных
[ редактировать ]SPEF — это не то же самое, что SPF (включая DSPF и RSPF). Подробный стандартный паразитный формат — это совершенно другой формат, предназначенный для использования в моделировании SPICE . Например, *NET
разделы не имеют окончаний, а комментарии должны начинаться с двух звездочек.
Краткий синтаксис формата DSPF показан ниже.
*DSPF 1.0
*DIVIDER /
*DELIMITER :
*BUS_DELIMITER [ ]
*|GROUND_NET NetName
.SUBCKT
*NET NetName NetCap
*|I(InstancePinName InstanceName PinName PinType PinCap X Y)
*|P(PinName PinType PinCap X Y)
*|S(SubNodeName X Y)
.ENDs
.END
Аббревиатуры означают:
- SPF — стандартный паразитный формат
- DSPF — подробный стандартный паразитный формат
- RSPF — сокращенный стандартный паразитный формат
- SPEF — стандартный формат паразитного обмена
- SBPF — двоичный паразитный формат Synopsys
SPF — это стандарт Cadence Design Systems для определения паразитов списка соединений. DSPF и RSPF — две формы SPF; сам термин SPF иногда используется (или неправильно используется) для обозначения паразитов в целом. И DSPF, и RSPF представляют паразитную информацию в виде RC-сети. RSPF представляет каждую цепь как RC-модель «пи», которая состоит из эквивалентной «ближней» емкости на драйвере сети, эквивалентной «дальней» емкости цепи и эквивалентного сопротивления, соединяющего эти две емкости. Каждая сеть имеет одну сеть «пи», независимо от того, сколько контактов в сети. В дополнение к сети Pi RSPF заставляет инструмент PrimeTime рассчитывать задержку Элмора для каждой задержки межконтактного соединения.
Напротив, DSPF моделирует подробную сеть паразитных RC для каждой сети. Таким образом, DSPF более точен, чем RSPF, но файлы DSPF могут быть на порядок больше, чем файлы RSPF для того же проекта. Кроме того, в DSPF нет спецификации соединительных колпачков. DSPF больше похож на список соединений SPICE, чем на другие форматы. SPEF — это формат Open Verilog Initiative (OVI), а теперь и IEEE, для определения паразитных списков соединений. SPEF не идентичен формату SPF, хотя используется аналогичным образом. Как и формат SPF, SPEF включает в себя паразитные значения сопротивления и емкости. Также, как и формат SPF, SPEF может представлять паразиты в подробной или сокращенной (пи-модель) формах, причем сокращенная форма, вероятно, используется чаще. SPEF также имеет синтаксис, который позволяет моделировать емкость между различными цепями, поэтому он используется инструментом анализа PrimeTime SI (перекрестные помехи). SPEF меньше, чем SPF и DSPF, поскольку имена преобразуются в целые числа для уменьшения размера файла.
SBPF — это двоичный формат Synopsys, поддерживаемый PrimeTime. Паразитические данные, преобразованные в этот формат, занимают меньше дискового пространства и могут быть прочитаны гораздо быстрее, чем те же данные, хранящиеся в формате SPEF. Вы можете преобразовать паразиты в SBPF, прочитав их, а затем выписав с помощью write_parasitics -format sbpf
команда.
Ссылки
[ редактировать ]- Стандарт IEEE для системы расчета задержки и мощности интегральных схем (IC) . 1999. doi : 10.1109/IEESTD.1999.91518 . ISBN 0-7381-1771-4 .
- Стандарт IEEE для архитектуры открытой библиотеки интегральных схем (IC) (OLA) . 2020. doi : 10.1109/IEESTD.2020.9034549 . ISBN 978-1-5044-6355-3 .
- http://143.248.230.186/tech_doc/diffrence_paracitic_data.txt
- «Стандартный паразитный формат Cadence (SPF). Версия C1.5.1» (PDF) . Системы проектирования Cadence . 19 мая 1999 г. Получено 19 апреля 2019 г. - через поддержку Cadence.
- «Где я могу найти спецификацию Cadence SPEF, DSPF, SPF или RSPF?» . Проверено 12 июля 2023 г.