Моделирование
Канал и глазок
Поток битов через путь S-параметров с CTLE, DFE и драйверами/приёмниками IBIS, отображение в виде глазка.
Прогоняет битовый поток по пути в результате FDTD или каскада и строит глазовой диаграмму.
name = "usb-eye"
kind = "channel"
board = "usb-link" # the sim with the S-parameters
through = ["J1", "J2"] # single ended FROM, TO
# pair = ["J1+", "J1-", "J2+", "J2-"] # or differential, uses Sdd21
bit_rate = "5Gbps"
rise = "40ps" # 10-90% edge, default 0.35 UI
swing = "0.8V" # peak to peak
prbs = 7 # 7, 9, 11 or 15
ctle = { dc_gain = -6.0, zero = "1GHz", poles = ["5GHz", "10GHz"] }
dfe_taps = 2 # ideal decision feedback on the first post cursorsРеальные передатчики и приёмники берутся из их файлов IBIS:
tx = { file = "models/sn74lvc1g04.ibs", model = "LVC1G04_OUT_33", component = "LVC1G04_DBV", pin = "4" }
rx = { file = "models/sn74lvc1g04.ibs", model = "LVC1G04_IN_33", component = "LVC1G04_DBV", pin = "2" }Передатчик становится источником Тевена: сопротивление выходного сигнала малой мощности из таблиц [Pulldown] и [Pullup] возле их шин, C_comp на кристалле, затем R, L и C корпуса вывода (или компонента); его [Ramp] задаёт фронт (20-80% преобразуется в 10-90%), а [Voltage Range] размах, если не заданы rise или swing. Приёмник нагружает дальний конец своим корпусом и C_comp, а глаз читается на его кристалле. Путь решается полным двухпортовым устройством, поэтому высокоомный приёмник видит отражения от линии. В модели SN74LVC1G04 от TI ramp и таблицы V-I согласуются по размаху в 50 Ом с точностью 2,5%. IBIS пока работает только с однополярными путями.
Импульсная характеристика берётся из S21 (или Sdd21) пути, умноженной на CTLE, с гауссовым фронтом, а глаз это суперпозиция PRBS на ней с 64 фазами на интервал символа. Показания: высота глаза на лучшей фазе, ширина глаза, худший случай пиковых искажений (основной курсор минус каждый второй курсор), потери на частоте Найквиста и количество курсоров. Фронт быстрее, чем охватывают S-параметры, замедляется до 1,3 / верхней частоты, с примечанием. На RC-канале худший случай попадает в пределах 1,2% от 1 - 2e^(-T/tau).