agentee

Symulowanie

Symulacja RF: FDTD i kaskada

Uruchamianie pełnofalowego FDTD projektu PCB na GPU, wstawianie parametrów S i danych szumów od producenta oraz odczytywanie wzmocnienia, współczynnika szumów, dopasowania i stabilności.

W pracy z RF standardem jest podział na dwie symulacje. Uruchomienie FDTD dla biernego układu, z portem w miejscu każdego elementu aktywnego lub zmierzonego, daje parametry S płytki. Kaskada podpinia do tych portów parametry S, szum i dane o liniowości od producenta. Zmiana płytki wymaga ponownego uruchomienia FDTD; zmiana elementu tylko ponownego uruchomienia kaskady, co trwa sekundy.

Przykład LNA jest zbudowany w ten sposób, a ten przewodnik używa jego plików.

Uruchomienie FDTD

name = "lna-rf"
layout = "lna"
cell = 0.1

[frequency]
start = "50MHz"
stop = "6GHz"
points = 596

[[ports]]
name = "IN"
pad = "J1.1"
reference = "In2.Cu"

[[ports]]
name = "AMP_IN"
pad = "U1.1"
reference = "In2.Cu"

[[ports]]
name = "AMP_OUT"
pad = "U1.3"
reference = "In2.Cu"

Port to port skupiony nad całym padem, do następnej warstwy miedzi lub do warstwy reference, którą nazwiesz, 50 omów, chyba że podano inaczej. Miedź jest modelowana jako warstwy na każdej warstwie miedzi: pady, ścieżki, przelotki jako kolumny z powłoką między warstwami, które obejmują, oraz wypełnienia wylewek z ich odstępami. Dielektryki pochodzą ze stackupu wraz z ich tangensem strat. Kondensatory, cewki i rezystory domyślnie przyjmują wartości ze schematu jako elementy skupione; [[models]] nadpisuje jedną z nich własną wartością lub zostawia port otwarty. Każdy inny element jest otwarty.

Zweryfikowano na mikrostripie 50 omów: zwrot poniżej -25 dB, wstawienie poniżej 0,2 dB, a prędkość fazy w granicach 1,2% od Kirschning-Jansen.

Określ rozmiar przed uruchomieniem

FDTD jest kosztowne. Uruchomienie sześciu portów LNA zajęło 27 minut na GPU stacji roboczej. Zawsze najpierw wykonaj dry-run:

agentee sim lna-rf --dry-run
{
  "cells_millions": 4.202388,
  "dt_fs": 120.43,
  "grid": [335, 234, 55],
  "runs": 6,
  "max_steps": 150000
}

To trwa sekundę i mówi, ile będzie kosztowało uruchomienie: jedno uruchomienie na każdy sterowany port, każde na siatce o takiej liczbie komórek. Aby iterować:

  • Zacznij od cell = 0.1 i doprecyzuj do domyślnego 0.05 dopiero po ustabilizowaniu projektu. Siatka jest gradowana od krawędzi miedzi, więc najdrobniejsza komórka wyznacza koszt.
  • Przytnij za pomocą region = [x0, y0, x1, y1] do części płytki, którą sygnał przechodzi.
  • Steruj tylko portami, których potrzebujesz, za pomocą excite = ["IN"]. Kaskada wymaga sterowania każdym portem, więc tam pomiń excite.
  • Uruchamiaj długie symulacje w tle i edytuj inne rzeczy. Sprawdzanie ostrzega, gdy wynik jest nieaktualny.

Uruchom i odczytaj

agentee sim lna-rf
agentee show sim:lna-rf
agentee render sim:lna-rf -o lna-rf.png

Uruchomienie zapisuje .result.json i plik Touchstone .s6p obok specyfikacji, nazwane po pliku specyfikacji. show wypisuje odczyty, a render rysuje wykres amplitudy i diagram Smitha, tak jak podgląd.

Parametry S płytki LNA z uruchomienia FDTD

Wynik zapisuje hash miedzi, którą zobaczył (tylko region symulacji) i stackup. Gdy się zmieni jedno z nich, sprawdzanie ostrzega, że wynik jest nieaktualny, a wszystko, co go odczytuje, kaskada lub pomiar interfejsu, zawiedzie, dopóki nie uruchomisz ponownie.

Kaskada

name = "lna-cascade"
kind = "cascade"
board = "lna-rf"
bandwidth = "2MHz"
report = ["900MHz", "1090MHz", "1.9GHz"]

[after]
nf = 6.0

[[devices]]
ref = "U1"
file = "models/qorvo_spf5189z.s2p"
ports = ["AMP_IN", "AMP_OUT"]

[[devices.datasheet]]
freq = "0.9GHz"
nf = 0.55
oip3 = 38.5
p1db = 22.4

[[devices]]
ref = "L1"
file = "models/coilcraft_bcr-162.s2p"
ports = ["L1"]
mount = "shunt"

Każde urządzenie łączy się z płytką na swoich portach. Wzmacniacz dwuportowy przyjmuje swój plik Touchstone jako zmierzony; element dwuterminalowy przyjmuje dane z uchwytu producenta, mount = "shunt" lub "series", tak jak było mierzone. Porty nie połączone z urządzeniem są portami wyniku.

Szum i liniowość przychodzą, gdy dane są dostępne: blok szumu Touchstone, gdy plik go ma, inaczej nf z datasheetu, oraz oip3 i p1db dla każdego częstotliwości. [after] to stopień za wyjściem, tu odbiornik o współczynniku szumu 6 dB, połączony wzorem Friisa.

agentee sim lna-cascade
agentee show sim:lna-cascade

Odczyty dla LNA:

gain peak       27.0 dB    S21 at 50 MHz
input match     -5.1 dB    S11 at 4.380 GHz
output match    -9.9 dB    S22 at 4.420 GHz
stability mu    1.14       lowest at 60 MHz
noise figure    0.93 dB    best at 800 MHz, worst 2.16 dB at 2.200 GHz
at 900 MHz      gain 17.7 dB, NF 1.00 dB, floor -110.0 dBm, SFDR 86.8 dB, IIP3 20.3 dBm, P1dB out 21.9 dBm
at 1.090 GHz    gain 16.2 dB, NF 1.31 dB, floor -109.7 dBm, SFDR 87.9 dB, IIP3 22.2 dBm, P1dB out 21.9 dBm

Mu powyżej 1 dla każdej częstotliwości oznacza, że wzmacniacz jest bezwarunkowo stabilny na tej płytce. Poziom szumu to -174 dBm/Hz plus współczynnik szumu plus 10 log pasma, a SFDR to dwie trzecie IIP3 nad poziomem szumu.

Kaskada: wzmocnienie, dopasowanie, współczynnik szumu i stabilność

Gdzie urządzenie nie ma danych, pasmo jest przycinane do zakresu, w którym każde urządzenie ma jakieś, a współczynnik szumu poza danymi zostaje pusty zamiast zgadywany.

Przetwarzaj ponownie bez ponownego uruchamiania

agentee sparam lna-rf --tdr IN --rise 50ps
agentee sparam link --pair 1,2,3,4
agentee sparam link --xtalk 1,3

sparam działa na dowolnym wyniku FDTD lub kaskadowym: TDR jednego portu, parametry S w trybie mieszanym pary oraz krzyżowe sprzężenie w dziedzinie częstotliwości i jako skok. Zawsze raportuje pasywność i odwzajemnienie, gdy napędzano każdy port. Zobacz Diagramy oka, PDN i parametry S.

Pola i emisje

fields = ["1090MHz", "2.4GHz"]
far_field = true

Uruchomienie FDTD może też zapisywać mapy pól E i H w prepregu pod górną warstwą oraz pole dalekie z transformacji z bliskiego do dalekiego, dla maksymalnie czterech częstotliwości. Odczyty podają moc promieniowaną jako ułamek wejściowej, dyrektywność oraz szczytowe pole na 3 m dla 1 mW wejścia, w odniesieniu do FCC klasa B. Porty to obciążenia dopasowane, więc kable i złącza nie są częścią promiennika.

Straty

Straty dielektryczne podążają za przyczynowym modelem Djordjevic-Sarkar dopasowanym do przenikalności i tangensa strat każdej warstwy. Miedź to impedancja powierzchniowa podążająca za efektem skórnym, chropowatością stackupu i, z finish = "ENIG", złotem i niklem na zewnętrznych padach, którego nikiel dodaje kilka razy większego oporu niż czysta miedź poniżej kilku GHz. Referencja strat FDTD ma modele i pomiary, z którymi je zweryfikowano.

Popraw ten przewodnik · Markdown dla agentów