Prezentacja z barcampu firmy Semihalf. Przyglądamy się potencjałowi jaki leży w z pozoru starych urządzeniach domowych. Wystarczy pomysł, lutownica, odrobina determinacji i otwarty umysł by użyć stary router jako bazę do stworzenia własnego urządzenia komputerowego.
PLNOG19 - Jakub Słociński - Wieloprocesorowa platforma x86 a wydajny routing ...PROIDEA
W trakcie wykładu poruszony zostanie temat użycia platform serwerowych na potrzeby wydajnego routingu pakietów. Mocne i słabe strony zastosowania architektury jedno- czy wieloprocesorowej pod kątem konfiguracji sieciowej, jej wypływ na wydajność oraz skalowalność rozwiązania.
Piękny byłby świat komputerów, gdyby sprzęt zachowywał się tak samo jak oprogramowanie. Pomyślmy o nowej karcie graficznej, którą instalujemy w komputerze, zaznaczamy myszką, klikamy kopiuj, wklej, i bach, mamy już dwie! Albo nawet i trzy. A gdy już się nam znudzi, przesuwamy ją do kosza i cieszymy się z podstawowej konfiguracji. Sceptycy krzykną: niemożliwe! Ale czy na pewno?
Droga, którą procesor przebywa od włączenia do uruchomienia systemu operacyjnego, jest długa, kręta i pełna pułapek. Prezentacja nakreśla jej przebieg, ze szczególnym uwzględnieniem niełatwych początków uruchamiania systemu. Aplikacja Hello World była pisana na wiele sposobów, a tutaj pojawi się kolejny: Bare Metal.
Skazani na firmware. Serwer na ARM64? Tak, to możliwe! S07E03Semihalf
Przedstawiamy firmware UEFI, dzięki któremu możliwe jest coraz śmielsze wkraczanie architektury ARM64 do świata urządzeń serwerowych, czyli królestwa władanego przez Intel. Standardy, ich założenia i realizacja zostałą przybliżona na przykładzie dodawania wsparcia dla n
PLNOG19 - Jakub Słociński - Wieloprocesorowa platforma x86 a wydajny routing ...PROIDEA
W trakcie wykładu poruszony zostanie temat użycia platform serwerowych na potrzeby wydajnego routingu pakietów. Mocne i słabe strony zastosowania architektury jedno- czy wieloprocesorowej pod kątem konfiguracji sieciowej, jej wypływ na wydajność oraz skalowalność rozwiązania.
Piękny byłby świat komputerów, gdyby sprzęt zachowywał się tak samo jak oprogramowanie. Pomyślmy o nowej karcie graficznej, którą instalujemy w komputerze, zaznaczamy myszką, klikamy kopiuj, wklej, i bach, mamy już dwie! Albo nawet i trzy. A gdy już się nam znudzi, przesuwamy ją do kosza i cieszymy się z podstawowej konfiguracji. Sceptycy krzykną: niemożliwe! Ale czy na pewno?
Droga, którą procesor przebywa od włączenia do uruchomienia systemu operacyjnego, jest długa, kręta i pełna pułapek. Prezentacja nakreśla jej przebieg, ze szczególnym uwzględnieniem niełatwych początków uruchamiania systemu. Aplikacja Hello World była pisana na wiele sposobów, a tutaj pojawi się kolejny: Bare Metal.
Skazani na firmware. Serwer na ARM64? Tak, to możliwe! S07E03Semihalf
Przedstawiamy firmware UEFI, dzięki któremu możliwe jest coraz śmielsze wkraczanie architektury ARM64 do świata urządzeń serwerowych, czyli królestwa władanego przez Intel. Standardy, ich założenia i realizacja zostałą przybliżona na przykładzie dodawania wsparcia dla n
Złam zasady i stwórz wydajny stos IP przy użyciu DPDKSemihalf
W prezentacji znajdziesz opis zagadnienia przetwarzania pakietów w wysokowydajnych sieciach światłowodowych. Koncepcja przetwarzania ruchu sieciowego w przestrzeni użytkownika oparta jest na zastosowaniu frameworku DPDK na platformie Linux/x86.
Wiele portów w jednym kontrolerze Gigabit Ethernet - jak to oprogramować w Linuksie? Powiązanie działania sprzętu ze stosem sieciowym systemu operacyjnego na przykładzie nowego sterownika dodanego do Linuksa v3.17.
PLNOG 13: Robert Ślaski: NFV, Virtualise networks or die – the voice of the r...PROIDEA
Robert Ślaski – Chief network consultant at Atende S.A., with 15 years experience in ICT, responsible for most demanding and challenging company projects within operator networks and mobile technologies – i.e. for ATMAN, T-Mobile, Polkomtel, OST112. The Cisco Certified Internetwork Expert CCIE #10877 (Routing & Switching and Security).
Topic of Presentation: NFV, Virtualise networks or die – the voice of the realist
Language: Polish
Abstract: Currently we are on the leading edge of NFV (Network Function Virtualization) hype, but what does it entirely mean? Is the network element virtualization concept a quite new one? Does it mean the same as SDN? When it makes sense, when it is a salvation, and when it would probably fail? For the SP or for the enterprise? An introduction to the topic and a couple of unanswered questions.
ARM CoreSight - sprawdź, co tak naprawdę robi Twój SoC.Semihalf
Prezentacja barcampu firmy Semihalf.
Opowiadamy jak działa system ARM CoreSight. Przedstawiamy jego komponenty oraz zasady współdziałania i konfigurowania. Pokazujemy sposób integracji systemu CoreSight z Linuxowym narzędziem Perf oraz przykłady jego użycia podczas profilowania kodu.
Prezentacja dotycząca wydajnego przetwarzania ruchu IP na PC wygłoszona podczas IT Conference na WAT (http://itacademicday.azurewebsites.net/), listopad 2015.
(Polish only) Talk regarding effective IP traffic processing on x86 platforms, given at IT Academic Day / Military University of Technology in Warsaw, November 2015.
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFXPROIDEA
Zaprezentowany zostanie obecny status rozwiązań NFV. Ich historyczne znaczenie w przeszłości, zmiany na rynku, które doprowadziły do ponownego odkrycia tej technologii. Pokazane zostana możliwe scieżki rozwoju rozwiązań NFV i co w chwili obecnej stanowi blokadę do szerszego wdrożenia tych technologii. Zaprezentowane zostaną przykłady implementacji technolgoii NFV z wykorzystaniem rozwiązań Juniper vSRX vMX oraz produktów z rodziny NFX
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic NetworkingPROIDEA
Piotr Jabłoński – Network Consultant at Cisco Advanced Services. Delivers design solutions and recommendations for enterprise companies and ISPs in Central Europe. The main specialization includes technologies such as MPLS, L2/L3 VPN, Carrier Ethernet and Multicast. Prior to joining Cisco, he participated in the implementation and design of networking solutions in the UK and Poland. He is holding CCDE, CCIE SP and RS certifications. NetAcad Cisco Academy instructor and speaker at Cisco Live, Cisco Forum, PLNOG and other conferences. Co-author of the CCIE.pl portal.
Topic of Presentation: First Steps in Autonomic Networking
Language: Polish
Abstract: Autonomic Networking is an emerging, fundamentally new way to operate networks – it’s about self-management of network elements. In this presentation we explain and present a demo the first shipping parts of this new solution: A self-forming overlay network for control and management plane.
Złam zasady i stwórz wydajny stos IP przy użyciu DPDKSemihalf
W prezentacji znajdziesz opis zagadnienia przetwarzania pakietów w wysokowydajnych sieciach światłowodowych. Koncepcja przetwarzania ruchu sieciowego w przestrzeni użytkownika oparta jest na zastosowaniu frameworku DPDK na platformie Linux/x86.
Wiele portów w jednym kontrolerze Gigabit Ethernet - jak to oprogramować w Linuksie? Powiązanie działania sprzętu ze stosem sieciowym systemu operacyjnego na przykładzie nowego sterownika dodanego do Linuksa v3.17.
PLNOG 13: Robert Ślaski: NFV, Virtualise networks or die – the voice of the r...PROIDEA
Robert Ślaski – Chief network consultant at Atende S.A., with 15 years experience in ICT, responsible for most demanding and challenging company projects within operator networks and mobile technologies – i.e. for ATMAN, T-Mobile, Polkomtel, OST112. The Cisco Certified Internetwork Expert CCIE #10877 (Routing & Switching and Security).
Topic of Presentation: NFV, Virtualise networks or die – the voice of the realist
Language: Polish
Abstract: Currently we are on the leading edge of NFV (Network Function Virtualization) hype, but what does it entirely mean? Is the network element virtualization concept a quite new one? Does it mean the same as SDN? When it makes sense, when it is a salvation, and when it would probably fail? For the SP or for the enterprise? An introduction to the topic and a couple of unanswered questions.
ARM CoreSight - sprawdź, co tak naprawdę robi Twój SoC.Semihalf
Prezentacja barcampu firmy Semihalf.
Opowiadamy jak działa system ARM CoreSight. Przedstawiamy jego komponenty oraz zasady współdziałania i konfigurowania. Pokazujemy sposób integracji systemu CoreSight z Linuxowym narzędziem Perf oraz przykłady jego użycia podczas profilowania kodu.
Prezentacja dotycząca wydajnego przetwarzania ruchu IP na PC wygłoszona podczas IT Conference na WAT (http://itacademicday.azurewebsites.net/), listopad 2015.
(Polish only) Talk regarding effective IP traffic processing on x86 platforms, given at IT Academic Day / Military University of Technology in Warsaw, November 2015.
PLNOG 17 - Sławomir Janukowicz - NFV – using Juniper vMX, vSRX and NFXPROIDEA
Zaprezentowany zostanie obecny status rozwiązań NFV. Ich historyczne znaczenie w przeszłości, zmiany na rynku, które doprowadziły do ponownego odkrycia tej technologii. Pokazane zostana możliwe scieżki rozwoju rozwiązań NFV i co w chwili obecnej stanowi blokadę do szerszego wdrożenia tych technologii. Zaprezentowane zostaną przykłady implementacji technolgoii NFV z wykorzystaniem rozwiązań Juniper vSRX vMX oraz produktów z rodziny NFX
PLNOG 13: Piotr Jabłoński: First Steps in Autonomic NetworkingPROIDEA
Piotr Jabłoński – Network Consultant at Cisco Advanced Services. Delivers design solutions and recommendations for enterprise companies and ISPs in Central Europe. The main specialization includes technologies such as MPLS, L2/L3 VPN, Carrier Ethernet and Multicast. Prior to joining Cisco, he participated in the implementation and design of networking solutions in the UK and Poland. He is holding CCDE, CCIE SP and RS certifications. NetAcad Cisco Academy instructor and speaker at Cisco Live, Cisco Forum, PLNOG and other conferences. Co-author of the CCIE.pl portal.
Topic of Presentation: First Steps in Autonomic Networking
Language: Polish
Abstract: Autonomic Networking is an emerging, fundamentally new way to operate networks – it’s about self-management of network elements. In this presentation we explain and present a demo the first shipping parts of this new solution: A self-forming overlay network for control and management plane.
Wszystko, co niezbędne do stworzenia sieci
o maksymalnej wydajności
* Techniki badania i oceny wydajności sieci
* Działanie protokołu TCP/IP w nowych środowiskach sieciowych
* Algorytmy kontroli przeciążenia sieci
* Rozwiązania zwiększające wydajność
To co do tej pory wiedziałeś o sieciach komputerowych może okazać się kroplą w morzu, gdy zechcesz stosować najnowsze, wysoko wydajne technologie. Tradycyjne sieci są coraz częściej zastępowane sieciami bezprzewodowymi, optycznymi i satelitarnymi. Standard komunikacji pomiędzy sieciami -- protokół TCP/IP, jest wykorzystywany również w sieciach nowej generacji, co wywołuje nowe wyzwania i problemy związane z wydajnością przekazywania danych. Zaprojektowanie efektywnie działającej sieci wymaga poznania zagadnień mających wpływ na wydajność protokołu TCP/IP.
Książka "Wysoko wydajne sieci TCP/IP” to obszerny przewodnik. Nie koncentruje się na szczegółach działania protokołu TCP/IP. Zawiera natomiast informacje poświęcone ocenie wydajności sieci, działaniu protokołu TCP/IP w sieciach różnego typu, metodom kontroli przeciążenia ruchu w sieciach oraz nowoczesnym implementacjom protokołu TCP/IP.
* Podstawowe informacje o protokole TCP/IP
* Pomiary wydajności sieci i stosowane do tego narzędzia
* Symulowanie działania sieci TCP/IP
* Modelowanie matematyczne sieci TCP/IP
* Wydajność protokołu TCP/IP w sieciach bezprzewodowych, mobilnych, optycznych, asymetrycznych i satelitarnych
* Nowe standardy protokołu TCP/IP
* Zarządzanie kolejkami
* Przegląd implementacji programowych protokołu TCP/IP
Jeśli chcesz się przystosować lub przyczynić do zmian w technologiach sieciowych, musisz poznać metody poprawiania wydajności działania protokołu TCP/IP. W tej książce znajdziesz wszystkie niezbędne do tego wiadomości.
CPU GHOST BUSTING. Semihalf Barcamp Special. Semihalf
Z prezentacji dowiesz się jak działają nowoczesne procesory, jakich technik używają (Speculative Execution, Branch Prediction) aby zwiększyć wydajność i jak to się stało, że niektóre z tych usprawnień mogą być sprytnie wykorzystane do pozyskania poufnych danych. Omawiamy przykład złośliwego kodu wykorzystującego te luki i skutki jego działania. Pokazujemy mechanizmy obrony i wyjaśniamy jakie mogą przynosić ograniczenia.
Meetup #1 - Świat Komputera Przed Systemem Operacyjnym Semihalf
Prezentacja z Meetupu grupy Software Meets Hardware in Wrocław.
Na spotkaniu opisywaliśmy co dzieje się w komputerze zanim wystartuje system operacyjny, czyli tuż po włączeniu komputera lub wciśnięciu przycisku reset oraz co to jest firmware i jakie są jego rodzaje.
Embedded Debugging, czyli co kryje się w jądrze?Semihalf
Prezentacja barcampu firmy Semihalf z 27.11.2018 r.
Jak zaglądnąć tam gdzie pozornie jest to niewykonalne? Kernel panic? Crash dump? Za pomocą narzędzi software'owych i sprzętowych można rozwiązać i takie problemy.
Zagadnienia:
Wsparcie sprzętowe procesorów do debugowania (stepping, pmu, etc.)
Wsparcie systemu operacyjnego (trap, crash dump)
Narzędzia: LLDB, KDB
Case study: (Linux, FreeBSD, macOS, Windows)
Uwaga na buga! GDB w służbie programisty. Barcamp Semihalf S09:E01Semihalf
Prezentacja z barcampu firmy Semihalf (S09:E01). Zapis wideo dostępny jest na naszym kanale YouTube: https://youtu.be/jAp-bi-3ZiE
Omawiamy najpopularniejsze polecenia GDB, zwracając uwagę na często pomijane niuanse pozwalające ułatwić i przyspieszyć proces debugowania. Wyjaśniamy jak automatyzować i przyspieszać pracę w programie. Prezentujemy niektóre rozszerzenia. Opowiadamy o wstecznym wykonywaniu kodu oraz o możliwościach GDB, które bywają zapominane, a w konkretnych sytuacjach są niezastąpione.
Oczyszczacz powietrza i stos sieciowy? Czas na test! Semihalf Barcamp 13/06/2018Semihalf
Podczas wykładu pomijamy jakość filtracji powietrza natomiast skupiamy się na metodach testowania protokołów sieciowych przy wykorzystaniu języka TTCN-3. Sprawdzamy jakie dane nasze domowe urządzenia wysyłają w świat oraz jak można przejąć nad nimi kontrolę.
Prezentacja z barcampu firmy semihalf. Spotkanie miało formę interaktywnego quizu. Zaprezentowaliśmy kilkanaście nietypowych bugów, z którymi mieliśmy do czynienia. Uczestnicy wskazywali właściwe rozwiązania.
Skazani na firmware. ARM Trusted Firmware. S07E02Semihalf
Czy zastanawiałeś się kiedyś, jakie funkcjonalności realizuje nowoczesne oprogramowanie układowe?
Zapraszamy na prezentację poświęconą technologii ARM Trusted Firmware, na którym opowiemy w jaki sposób nowoczesne systemy radzą sobie z kwestiami bezpieczeństwa na przykładzie ARM Trusted Firmware. Zaprezentujemy także różnice między światem zaufanym a światem normalnym, czy i jak te dwa światy są w stanie istnieć w jednym systemie oraz co je łączy.
Skazani na firmware. Świat komputera przed systemem operacyjnym.Semihalf
Czy zastanawiałeś się kiedyś co dzieje się po włączeniu komputera lub wciśnięciu przycisku RESET?
Zanim uruchomi się Twój system operacyjny mija kilka sekund - przyjrzymy się im z bliska. Odpowiemy na pytania co to jest firmware i jakie są jego rodzaje.
Software Defined Networks (SDN) na przykładzie rozwiązania OpenContrail.Semihalf
Z prezentacji dowiesz się:
Co to są sieci programowalne i wirtualizowane (SDN / NFV)?
Jaką nową jakość wprowadzają one dla operatorów chmur obliczeniowych i centrów danych?
W jaki sposób technologia OpenContrail realizuje sieci nowej generacji?
Hierarchia pamięci w systemach komputerowych.Semihalf
Pamięć nie jest płaska! Wręcz przeciwnie – dostęp do pamięci operacyjnej jest nierównomierny, a tworzenie wydajnego oprogramowania polega na umiejętnym wykorzystaniu podsystemu pamięci wraz z całą jego wielopoziomową hierarchią.
Z prezentacji dowiesz się:
Jaki wpływ na wydajność programów ma pamięć operacyjna?
Jak przyspieszyć działanie programów?
Kiedy korzystać z pamięci RAM lub Cache?
Jak wygląda mikrokontroler od środka? W jaki sposób do niego mówić? Jak tłumaczy się kod C na wykonanie w sprzęcie? Skąd bierze się instrukcja? Gdzie szukać wyników operacji?
Dowiecie się, co to jest język opisu sprzętu i jak się go używa oraz jak zaprojektować własną architekturę mikrokontrolera z użyciem jednego z nich – języka Verilog.
Jak realizowana jest wielozadaniowość na pojedynczym CPU oraz jakie są jej konsekwencje? Czy “mutex to taki binarny semafor”? Dlaczego Windows nie jest używany do sterowania rakietami oraz jaki popularny błąd omal nie spowodował utraty jednej z misji NASA?
Linux KVM - wsparcie dla wirtualizacji w kontekście serwerów ARM.Semihalf
Dowiesz się na czym polega tajemnica kilku równoległych systemów operacyjnych. Wprowadzimy Cię w świat wirtualnych systemów operacyjnych, poznasz metody umożliwiające ich incepcję oraz zoptymalizujesz wydajność swojej maszyny wirtualnej.
Czym są heterogeniczne systemy mikroprocesorowe?Semihalf
Wyjaśnimy Ci co to jest system heterogoniczny, jak wygląda Linuxowy sterownik do "misc. character device" oraz w jaki sposób Linux może dogadać się z FreeRTOSem.
SmartNIC - wprowadzenie do inteligentnych interfejsów sieciowych.Semihalf
Dzięki prezentacji poznasz wyzwania jakie stawia rynek infrastrukturze sieciowej, dowiesz się jakie są główne potrzeby w tym obszarze, zapoznasz się z ewolucją kart sieciowych.
Wirtualizacja sieci na przykładzie OpenContrail vRouter.Semihalf
W prezentacji wyjaśniamy:
- Czym są programowalne sieci komputerowe (SDN - Software Defined Networks)?
- Jakie korzyści daje nam wirtualizacja funkcji sieciowych (NFV - Network Functions Virtualization)?
- Jak zrobić szybki routing pomiędzy maszynami wirtualnymi?
DTrace, czyli jak zobaczyć to czego nie widać.Semihalf
"Szanowny Panie, Pana program działa, ale niestety wolno. Czy da się go przyspieszyć?" Który programista nie spotkał się z takim stwierdzeniem niech pierwszy rzuci kamień. W prezentacji poruszamy tematykę analizy wydajności programów za pomocą narzędzia DTrace.
Wiele już powiedziano i napisano o bezpiecznym kodowaniu.
My skupiamy się w prezentacji na bezpiecznym kodowaniu w języku C na podstawie realnych podatności znalezionych w znanych programach i bibliotekach oraz kernelu Linuxa.
FreeBSD on Cavium ThunderX System on a ChipSemihalf
The lecture given during BSDCan 2016 by Wojtek Macek that describes the FreeBSD operating system port for the Cavium ThunderX CN88XX System on a Chip. ThunderX is a newly introduced, ARM64 (ARMv8) SoC designed for the high performance and server markets. It is currently the only one in the ARM world to incorporate up to 96 CPU cores in the system along with the whole technology to make it possible.
5. Co w środku piszczy
● Router jest wyposażony w procesor AR7240 (zdjęcie z dokumentacji)
6. Konsola szeregowa
● Do dalszych prac wygodnie jest posiadać konsolę szeregową
● Konieczne jest wlutowanie się do PCB w punktach
oznaczonych jako TX i RX
● Przejściówka USB pozwala na komunikację 11500 baud
źródło:
OpenWRT Wiki
7. Pierwsze uruchomienie
U-Boot 1.1.4 (Mar 8 2010 - 10:29:42)
AP91 (ar7240) U-boot
DRAM:
sri
#### TAP VALUE 1 = 9, 2 = a
32 MB
id read 0x100000ff
flash size 4194304, sector count = 64
Flash: 4 MB
Using default environment
In: serial
Out: serial
Err: serial
Net: ag7240_enet_initialize...
No valid address in Flash. Using fixed address
: cfg1 0xf cfg2 0x7014
eth0: 00:03:7f:09:0b:ad
eth0 up
No valid address in Flash. Using fixed address
: cfg1 0xf cfg2 0x7214
eth1: 00:03:7f:09:0b:ad
ATHRS26: resetting s26
ATHRS26: s26 reset done
eth1 up
eth0, eth1
Autobooting in 1 seconds
## Booting image at 9f020000 ...
Uncompressing Kernel Image ...
8. Cel
● Nadać routerowi drugie życie
○ Zmienić oprogramowanie na otwarte
○ Wykorzystać interfejsy procesora (USB, PCIe)
9. OpenWRT
● Otwarte oprogramowanie gotowe do zainstalowania
● Bazuje na systemie Linux
● System “paczek” podobny do innych dystrybucji
● Lekki, wystarczy 4MB Flash i 32MB RAM
10. Instalacja OpenWRT
● Projekt OpenWRT zawiera gotowe obrazy
● Według instrukcji potrzeba:
○ ściągnąć gotowy obraz “factory” ze strony OpenWRT
○ poprzez interfejs WWW routera użyć obrazu jako
“firmware update”
ERROR !
11. Instalacja - problem
● Producent zablokował możliwość wgrania obrazu przez
HTTP, konieczne ładowanie Flash z poziomu U-Boota
> setenv serverip 192.168.1.234
> tftpboot 0x81000000 firm.bin
> erase 0x9f020000 +0x7c0000
> cp.b 0x81000000 0x9f020000 0x7c0000
> bootm 0x9f020000
12. Start OpenWRT
● Po zainstalowaniu OpenWRT możemy się zalogować
wojtek@wojtek-laptop ~ $ ssh -l root 192.168.1.133
BusyBox v1.23.2 (2015-07-25 15:09:46 CEST) built-in shell (ash)
_______ ________ __
| |.-----.-----.-----.| | | |.----.| |_
| - || _ | -__| || | | || _|| _|
|_______|| __|_____|__|__||________||__| |____|
|__| W I R E L E S S F R E E D O M
-----------------------------------------------------
CHAOS CALMER (15.05, r46767)
-----------------------------------------------------
* 1 1/2 oz Gin Shake with a glassful
* 1/4 oz Triple Sec of broken ice and pour
* 3/4 oz Lime Juice unstrained into a goblet.
* 1 1/2 oz Orange Juice
* 1 tsp. Grenadine Syrup
-----------------------------------------------------
root@OpenWrt:~#
root@OpenWrt:~# uname -a
Linux OpenWrt 3.18.20 #1 Fri Sep 4 21:55:57 CEST 2015 mips GNU/Linux
14. PCIe - co to jest
● Standardowy interfejs komputerowy, następca PCI
● Używany do szybkich kart rozszerzeń
● Zaawansowany technicznie
○ Mały narzut na przetwarzanie przez OS (w
przeciwieństwie do USB)
○ Szybki
○ Niska latencja
15. PCIe - jak wygląda
● Transmisja za pomocą par
ścieżek (różnicowych) o
kontrolowanej impedancji
● Minimalna konfiguracja “x1”
wymaga:
○ Pary RX
○ Pary TX
○ Pary sygnału zegarowego CLK
grafika Tracy Wilson
16. PCIe - gdzie to jest
● Konieczne jest zlokalizowanie linii PCIe na
płycie.
● Założenia:
○ Ścieżki powinny łączyć CPU z modułem WiFi
○ Szukamy 3 par różnicowych na PCB (ścieżki
idące blisko siebie, otoczone masą)
○ Lane’y PCIe TX/RX są łączone przez
kondensatory
○ Para CLK może być łączona przez kondensatory,
albo rezystory albo bezpośrednio
22. Dopasowanie impedancji
● PCIe pracuje z częstotliwością 2.5GHz !!
● W transmisji sygnału po płytce PCB ujawniają się
zjawiska falowe (odbicia, przesłuchy itp.)
● W przypadku PCIe poniższe muszą być spełnione
○ Impedancje źródła, linii i odbiornika muszą
być równe!
○ Długość ścieżek w jednym lane’ie musi być
równa co do 0.1mm!
○ PCIe jest magistralą punkt-punkt
23. Dopasowanie impedancji
Jakość sygnału PCIe
pokazują tzw. “eye diagram”.
U góry - impedancja zgodna.
U dołu - impedancja
niedopasowana.
Ilustracje z przykładów firmy
Agilent.
24. Jak dobrać się do PCIe
Kolejnym krokiem jest wykorzystanie interfejsu PCIe.
Biorąc pod uwagę poprzednie wiadomości, zdecydowano by:
● Kondensatory postawić “pionowo”, odłączając linie
PCIe do karty WiFi
● Do kondensatorów przylutować kabel o impedancji
różnicowej 100R
● Przylutować kabel do zewnętrznego gniazda PCIe
25. Jak dobrać się do PCIe
Problem #1:
Kondensatory są małe (rozmiar 0402, 1.0x0.5mm).
Rozwiązanie:
Duża ilość topnika i lutownica na gorące powietrze.
26. Jak dobrać się do PCIe
Problem #2:
Linie PCIe muszą mieć impedancję różnicową 100R. Czego
użyć jako przewodu?
Rozwiązanie:
??
27. Jak dobrać się do PCIe
Problem #2:
Linie PCIe muszą mieć impedancję
różnicową 100R. Czego użyć jako
przewodu?
Rozwiązanie:
Kabel SATA
źródło:
Accura webpage
30. Pierwsze uruchomienie
root@OpenWRT:~# opkg update
root@OpenWRT:~# opkg install pciutils
root@OpenWRT:~# lspci
01:00.0 SATA controller: JMicron Technology
Corp. JMB362/JMB363 Serial ATA Controller (rev
03)
root@OpenWRT:~#
31. Kilka testów
Transfer do/z dysku:
root@OpenWRT:~#time dd if=~/test.bin bs=1M
of=/dev/null
100+0 records in
100+0 records out
real 0m 9.17s
root@OpenWRT:~#
Prędkość odczytu: 10.91 MB/s