W niniejszym artykule dokonujemy przeglądu nowoczesnych narzędzi EDA, porządkując informacje według kluczowych funkcjonalności istotnych z punktu widzenia projektantów PCB. Zamiast omawiania każdego programu oddzielnie, skupimy się na takich aspektach, jak projektowanie wielopłytkowe, integracje 3D ECAD-MCAD, wbudowane symulacje i weryfikacja, czy też zarządzanie bibliotekami komponentów. W ramach każdej z tych kategorii przedstawimy, jak różne środowiska EDA realizują dane zadania, wskazując ich mocne i słabe strony. Wspomnimy także o aktualnych trendach rynkowych i o tym, czego można spodziewać się w najbliższej przyszłości.
Projektowanie wielopłytkowe
Coraz więcej nowoczesnych urządzeń zawiera wiele płytek drukowanych komunikujących się ze sobą w ramach jednego systemu – od prostych modułów czujnikowych łączonych z płytą główną, aż po rozbudowane systemy w formie płyty głównej z kartami rozszerzeń czy układy typu backplane z wieloma modułami. Zaprojektowanie takiego złożonego systemu niesie ze sobą liczne wyzwania: trzeba bowiem zapewnić poprawne prowadzenie połączeń między płytkami (zgodność sygnałów na złączach), właściwe dopasowanie mechaniczne oraz spójną dokumentację całego systemu. Błąd wykryty dopiero na etapie montażu prototypu wielopłytkowego bywa kosztowny i powoduje opóźnienia w komercjalizacji docelowego wyrobu.
Altium Designer jako jedno z niewielu narzędzi oferuje dedykowane wsparcie dla projektów wielopłytkowych – przykładowy widok 3D projektu płyty głównej komputera można zobaczyć na rysunku 1. Autorzy tego niezwykle popularnego pakietu EDA wprowadzili specjalny typ projektu zwany Multi-board (z rozszerzeniem pliku *.PrjMbd), w ramach którego można zdefiniować zarówno schemat systemowy łączący poszczególne płytki (*.MbsDoc), jak i fizyczny montaż 3D całego urządzenia (*.MbaDoc). Na schemacie systemowym umieszcza się bloki reprezentujące poszczególne projekty PCB i definiuje połączenia między nimi (np. wiązki sygnałów przechodzące pomiędzy złączami). Następnie do dokumentu montażowego można zaimportować gotowe projekty PCB poszczególnych płytek i zweryfikować ich wzajemne ułożenie w przestrzeni 3D, sprawdzając dopasowanie złączy oraz kompatybilność całości z obudową. Altium zapewnia przy tym spójność logiczną i fizyczną – narzędzie automatycznie kontroluje zgodność sygnałów na współpracujących złączach. Co więcej, możliwe jest wygenerowanie wspólnej listy materiałowej (BOM) całego systemu w dokumencie ActiveBOM, obejmującej elementy ze wszystkich płytek jednocześnie. Taka scentralizowana tabela komponentów uwzględnia dane o poszczególnych podzespołach (np. dostępność u dystrybutorów, status handlowy, etc.) w czasie rzeczywistym dzięki automatycznej łączności z bazami wielu czołowych hurtowni.
Inne duże pakiety EDA również kładą nacisk na projektowanie systemów wielopłytkowych. Przykładowo Siemens Xpedition, powstały po akwizycji przez Siemensa firmy Mentor Graphics w 2017 r., oferuje środowisko Xpedition Multi-Board Systems Design, które umożliwia współbieżną pracę zespołu nad jednym projektem systemowym w czasie rzeczywistym. Oznacza to, że wielu projektantów może jednocześnie opracowywać różne płytki wchodzące w skład systemu, mając wgląd w całość – co jest szczególnie istotne przy dużych projektach wymagających podziału pracy (np. w motoryzacji czy lotnictwie). Platforma Xpedition integruje zarządzanie złączami, wiązkami przewodów i logicznymi połączeniami między PCB, pozwalając na automatyczną synchronizację zmian wprowadzanych na poziomie poszczególnych płytek z dokumentacją systemu.
Oczywiście nie wszystkie narzędzia EDA dysponują tak rozbudowanymi funkcjami. KiCad – popularne, otwartoźródłowe środowisko EDA, które pomimo swojego darmowego charakteru jest chętnie stosowane przez wiele mniejszych firm – nie wspiera natywnej obsługi projektu wielopłytkowego w jednym pliku (każda płytka to osobny projekt). Użytkownicy co prawda wypracowali pewne rozwiązania polegające na tworzeniu nadrzędnego schematu systemu oraz ręcznej synchronizacji złączy między oddzielnymi projektami, ale jest to w zasadzie proces całkowicie manualny. Podobnie starsze wersje Autodesk Eagle (dawniej Cadsoft Eagle) nie oferowały dedykowanego trybu multi-board – zazwyczaj projektowano osobne pliki dla każdej PCB, a następnie składano je w jeden system dopiero na etapie mechaniki. Dopiero integracja Eagle z platformą Fusion 360 pozwoliła na łatwiejsze sprawdzanie montażu wielu płytek, choć nadal nie jest to jedno środowisko logiczne dla wszystkich PCB. Również w przypadku pakietu Cadence OrCAD/Allegro tradycyjnie brakowało osobnego trybu projektów systemowych – inżynierowie radzili sobie poprzez dokładne definicje złączy na schematach i ewentualne korzystanie z zewnętrznych narzędzi Cadence do projektowania systemów (System Capture), ale pełna integracja wielopłytowa stała się domeną dopiero najnowszych wersji Allegro X. Generalnie, projektowanie wielopłytkowe to obszar, w którym w ostatnich latach przewagę zyskały narzędzia oferujące zintegrowane środowisko systemowe (jak Altium czy Xpedition), znacząco redukujące ryzyko błędów połączeń i kolizji mechanicznych przed produkcją prototypu.
Integracja 3D i współpraca ECAD–MCAD
Wraz z miniaturyzacją urządzeń stale rośnie złożoność współpracującej mechaniki, która siłą rzeczy musi optymalnie wykorzystywać każdy milimetr sześcienny wewnątrz obudowy. Ścisła współpraca między projektantem elektroniki a konstruktorem mechanikiem stała się zatem nieodzowna. Nowoczesne narzędzia EDA coraz lepiej integrują się z systemami CAD 3D, umożliwiając projektantom PCB podgląd ułożenia podzespołów i płytek w przestrzeni trójwymiarowej oraz wczesne wykrywanie problemów mechanicznych (kolizje z obudową, nieprawidłowe wysokości komponentów itp.).
Altium Designer już kilkanaście lat temu wprowadził pełny widok 3D PCB, co było jedną z jego najważniejszych przewag nad starszymi narzędziami. Obecnie renderowanie widoków 3D i gotowych modeli (np. w formacie *.STEP) jest standardową funkcją – projektant jednym kliknięciem przechodzi z edycji 2D do realistycznego widoku 3D całej płytki, wraz z modelami elementów, dzięki czemu może sprawdzić m.in. prześwity, wysokości i rozmieszczenie komponentów. Co ciekawe, nawet KiCad od dość dawna oferuje taką funkcjonalność – ma wbudowany silnik renderujący płytkę w trójwymiarze i pozwala podłączyć do komponentów modele STEP, co ułatwia kontrolę poprawności rozmieszczenia elementów oraz ogólnej integralności konstrukcji. Jest to o tyle imponujące, że KiCad pozostaje oprogramowaniem otwartym i darmowym, a mimo to obsługuje coraz bardziej zaawansowane opcje wizualizacji 3D projektu. A jeszcze bardziej imponujący jest fakt, że pod koniec epoki „starego Eagle’a” (jeszcze za czasów istnienia firmy Cadsoft) KiCAD wyprzedzał nieznacznie nawet ten płatny (choć stosunkowo niedrogi) pakiet EDA. O ile bowiem eksport widoku 3D był w Eagle możliwy, to zadanie to wiązało się z koniecznością stosowania specjalnych makr (ULP) i korzystania z zewnętrznego silnika do raytracingu.
Kluczowym trendem ostatnich lat jest rozwój narzędzi do współpracy ECAD–MCAD, czyli między projektem elektroniki a modelem mechanicznym. Altium promuje dodatek MCAD CoDesigner, który integruje się z popularnymi programami CAD (SolidWorks, PTC Creo, Autodesk Inventor, Siemens NX, a nawet Fusion 360) i umożliwia dwukierunkową synchronizację zmian wprowadzanych przez projektantów PCB oraz konstruktorów mechaniki. Przykładowo, inżynier mechanik może w swoim programie CAD zaimportować aktualny model płytki z Altiuma (z rozmieszczeniem elementów), wpasować go w obudowę, a jeśli zajdzie potrzeba np. przesunięcia złącza – dokonać tej zmiany i odesłać ją z powrotem do projektanta PCB. Taka integracja, przebiegająca niemal w czasie rzeczywistym, eliminuje przestoje, podczas których elektronik czekał, aż mechanik skończy projekt obudowy, by sprawdzić dopasowanie bądź konstruktor obudowy czekał na poprawki wdrożone przez elektronika. Teraz prace te mogą toczyć się równolegle, a każdy z członków zespołu ma możliwość dodawania komentarzy do aktualizacji, znacznie łatwiejsze jest ponadto przeglądanie wprowadzanych zmian. W środowisku Altium mechanizm CoDesigner jest częścią platformy Altium 365, co pozwala na łatwe współdzielenie modeli 3D płytek z zespołem mechanicznym poprzez chmurę.
Również inne narzędzia podążają w kierunku ścisłej integracji z MCAD. Autodesk, już po przejęciu programu Eagle, poszedł o krok dalej – wchłonął Eagle w ekosystem Fusion 360, tworząc rozwiązanie o nazwie Fusion Electronics. W efekcie użytkownik ma do dyspozycji jednolite środowisko, w którym projekt PCB jest po prostu jedną z przestrzeni roboczych w ramach programu CAD 3D. Fusion 360 zapewnia unikalną na rynku, natywną integrację – rozmieszczenie komponentów elektronicznych można od razu oglądać na modelu całego urządzenia i sprawdzać zgodność z wymaganiami mechanicznymi, a wszystko odbywa się w jednej aplikacji. Autodesk chwali się, że dzięki temu synchronizacja układu elektronicznego z ograniczeniami mechanicznymi jest płynna, a współpraca zespołowa w chmurze dodatkowo to ułatwia. W praktyce oznacza to, że mechanik i elektronik mogą na bieżąco wymieniać się uwagami, korzystając z wbudowanych narzędzi komentowania i podglądu projektu PCB 3D w przeglądarce – z dowolnego miejsca na świecie.
Firma Cadence również dostrzegła konieczność poprawy doświadczeń użytkownika w zakresie kooperacji 3D. Najnowsza generacja OrCAD X/Allegro X wprowadziła moduł 3DX Canvas, który zapewnia bogate opcje przeglądu trójwymiarowego i sprawdzania odległości czy naruszeń reguł w 3D. Użytkownik może np. przekroić model płytki dowolną płaszczyzną, by zweryfikować ułożenie warstw, zmierzyć odstępy między elementami czy warstwami dielektryka oraz wykryć ewentualne kolizje mechaniczne już na etapie projektu PCB. OrCAD X wspiera też nadawanie indywidualnych kolorów i przezroczystości dla warstw w widoku 3D, by upodobnić obraz do rzeczywistego wyglądu produkcyjnego i łatwiej komunikować intencje produkcyjne zespołom mechanicznym lub klientom. Te zmiany sygnalizują odejście Cadence od dawnego podejścia, w którym Allegro koncentrowało się głównie na aspektach elektrycznych kosztem wygody wizualizacji – nowa wersja stawia na pełną wizualizację 3D i płynną integrację z MCAD.
Warto dodać, że integracja ECAD-MCAD to nie tylko bierne oglądanie modelu 3D. W przypadku projektów flex i rigid-flex – czyli płytek giętkich i sztywno-giętkich – logiczna integracja z mechaniką jest kluczowa, bo kształt wygięcia płytki wpływa bezpośrednio na montaż. Narzędzia takie jak Altium czy Allegro X umożliwiają definiowanie stref gięcia, różnych stosów warstw dla części giętkiej i sztywnej oraz oglądanie płytki po zgięciu w 3D. To samo dotyczy montażu wielu płytek: funkcja multi-board, dostępna w środowisku Altium Designer, pozwala importować model obudowy urządzenia, by sprawdzić poprawność montażu całego systemu w obudowie jeszcze przed zleceniem produkcji prototypów. Ogólny trend jest jasny – pełna korelacja projektu elektronicznego z modelem mechanicznym – co minimalizuje ryzyko „niespodzianek” przy składaniu urządzenia z gotowych płytek. A chyba każdemu konstruktorowi zdarzyły się rozmaite kolizje i nieprzewidziane sytuacje, zwłaszcza w projektach o dużym zagęszczeniu komponentów elektronicznych i mechanicznych w ograniczonej objętości.
Co istotne, integracja 3D przynosi korzyści nie tylko w aspektach mechanicznych, ale i elektrycznych. Możliwość obejrzenia płytki w 3D pomaga np. ocenić ciągłość ekranowania (obudowy metalowe, rozmieszczenie ekranów na płytce), czy położenie radiatorów i przepływ powietrza nad komponentami – zanim jeszcze zbudujemy fizyczny prototyp. Dzięki temu projektant może wcześnie wprowadzić korekty (np. przesunąć kondensator, który kolidowałby z obudową) i uniknąć kosztownych modyfikacji. Nic dziwnego, że inżynierowie często wskazują integrację 3D jako jeden z powodów wyboru konkretnego narzędzia.
Symulacja i weryfikacja układów w środowisku EDA
Drugim filarem nowoczesnych narzędzi EDA – obok projektowania geometrycznego PCB – jest symulacja działania projektowanego układu. Możliwość zweryfikowania poprawności schematu i płytki na długo przed powstaniem fizycznych prototypów pozwala oszczędzić czas i pieniądze, unikając błędów projektowych, zwłaszcza w przypadku kosztownych płyt wielowarstwowych (HDI), obwodów dla szybkich sygnałów (np. magistrale DDR) czy torów radiowych. Współczesne pakiety EDA integrują różnorodne rodzaje symulacji: od klasycznej symulacji SPICE dla obwodów analogowych, poprzez analizę integralności sygnałowej (Signal Integrity) w szybkich systemach cyfrowych, aż po symulacje integralności zasilania (Power Integrity) oraz obliczenia termiczne i elektromagnetyczne w najbardziej zaawansowanych przypadkach.
Tradycyjnie prym w dziedzinie symulacji analogowych wiedzie Cadence OrCAD dzięki swojemu modułowi PSpice, uchodzącemu od dekad za złoty standard symulatora układów elektronicznych i bogato wyposażonemu w modele elementów. OrCAD Capture (moduł schematów) umożliwia bezpośrednie uruchamianie symulacji PSpice z poziomu schematu – zarówno DC, AC, stanów przejściowych, jak i np. analiz Monte Carlo czy parametrycznych (dla tolerancji elementów). W praktyce inżynierowie cenią to środowisko za wiarygodność wyników symulacji i szeroki ekosystem modeli dostarczanych przez producentów komponentów. Altium Designer również dysponuje wbudowaną funkcjonalnością symulacji (bazującą na ulepszonej wersji XSpice) i intensywnie rozwija możliwości weryfikacji projektu. Oferuje m.in. analizator integralności sygnałów – można wskazać krytyczne połączenia na PCB (np. linie magistrali wysokiej częstotliwości) i przeprowadzić symulację przebiegów oraz odbić sygnałów na podstawie geometrii ścieżek. Altium zawiera też narzędzia do obliczeń impedancji ścieżek, podstawowej analizy termicznej (rozkład temperatur na płytce przy zadanych stratach mocy elementów) oraz analizy EMI. Jednak w przypadku bardzo szybkich lub wrażliwych układów, użytkownicy Altium często wspomagają się zewnętrznymi programami jak Simberian czy CST, gdyż wbudowane narzędzia mają ograniczenia.