#elektronika #programowanie #pracbaza
19 lat temu pracowałem w pewnym projekcie u azjatyckiego giganta branży elektroniki konsumenckiej.
Układ typu SoC w naszym urządzeniu startował z pamięci Flash typu NOR, za to za faktyczną pamięć masową robiła duża kość typu NAND. Rozwiązanie nawet do dziś dość typowe.
Firma stwierdziła, że ma taki chip Flash NAND, z którego można wystartować bootloader, potem system i aplikację. Dzisiaj układy typu SoC mają mechanizmy pozwalające startować z chipów NAND, głównie z szyny SPI a także z kart SD, wtedy jednak nasz układ miał zwykłe szyny adresowe i danych i wołał odpowiedni, zdefiniowany w dokumentacji adres. Pamięć NOR była adresowana bezpośrednio, czyli cyk: adres, cyk - sygnał Chip Select i cyk - sygnał Output Enable, a na szynie danych pojawiało się słowo spod tego adresu. Pamięć NAND za to ma takie małe okienko, - zakres adresów do których komendą wczytuje się sektor z pamięci NAND i dopiero można go skopiować do RAM-u. Ale ale - ten nowy chip NAND miał dwa takie okienka, jedno po drugim, w sumie 2KB i po zwolnieniu sygnału resetu lądowały w nich dwa pierwsze sektory z NANDa. Hura - dało się wystartować, a ja miałem napisać coś co zwie się bootstrapem albo dzisiaj częściej First Stage Boot Loader (przy czym tych FSBLów obecnie bywa nawet po kilka, uruchamianych jeden po drugim - vide UEFI). To zadanie programistyczne to też były niezłe jaja, bo ile można upchnąć w 2KB? Ale nie o tym tutaj.
Debugerem przez jtag próbowałem załadować cokolwiek do tego flasha ale nie szło, odczytać, nawet śmieci, też.
Pan Szef kupił jakiś tydzień wcześniej elegancki analizator stanów logicznych od firmy Agilent, kosztował moje ponadroczne wynagrodzenie brutto, musiał być dobry.
Po wlutowaniu drucików w nóżki flasha okazało się że sygnał Chip Select nigdy się nie pojawia. No ale chip działa, startuje, ale tylko przez debuger.
Wydębić schemat od Pana Azjaty z działu HW nie szło. Po co komuś od klikania w klawiaturę schemat? Toż to tajemnica. Płytka wielowarstwowa, bardzo ciasny montaż, szukaj wiatru w polu. Po miesiącu tak zwanych eskalacji, włączaniu się szefów z różnych krajów Pan od HW zmiękł i wysłał schemat. Opisany krzaczkami ale czytelny.
Był tam pewien dekoder adresu na dyskretnych bramkach logicznych, żeby z tego adresu który chce procesor zrobić sygnał Chip Select do flasha. I tam była pomyłka, jakaś bramka NOR powinna być NAND, OR - AND czy coś podobnego.
Posłałem Panu Azjacie od HW, ale odpisał jego szef:
"Proszę dostosować oprogramowanie do konfiguracji sprzętowej".
No i kolejny miesiąc czczych wymian maili. Azjatycki protokół "zachowywania twarzy" odpalony i nic przez miesiąc nie drgnęło. Ja w międzyczasie rozejrzałem się po zakładzie i w sąsiednim dziale ktoś miał szufladę takich właśnie bramek. No to zamieniłem i zadziałało. To również nie przekonało Pana Azjaty i jego Szefa. Twarz trzeba zachować.
W końcu rozegrało się coś za kulisami i bez słowa nadeszła przesyłka z drugiego końca świata z poprawionymi płytami.
Ja już na szczęście kończyłem implementację tego bootstrapa na swojej porychowanej płycie. Koledzy zmodyfikowali również resztę płyt.
Pewnie nie jeden z Was słyszał od koleżanek z HRu jak to trzeba się cieszyć różnorodnością kulturową. Otóż nie.
A to nie byli jeszcze Hindusi.
5f826c53-2762-4077-996c-25f8dc8d2173
31

Komentarze (31)

@pierdonauta_kosmolony

I tam była pomyłka, jakaś bramka NOR powinna być NAND, OR - AND czy coś podobnego.

Co i z czym było zamienione?

@Marchew

Litości, to było 19 lat temu.

@Marchew

To może napiszę tak - do szyny adresowej flasha podłącza się wtedy tylko młodsze bity, tak, żeby ten adres startowy z dokumentacji SoCa mapowany był na adres 0 flasha.

Za to starsze bity przepuszcza się przez bramki, żeby, kiedy pojawią się starsze bity adresu startowego, generował sygnał Chip select do flasha.

Emocje jak na grzybach, leci piorun ( ͡° ͜ʖ ͡°)

@m_h

Ten flash to była półroczna odyseja niekompetencji. Jeszcze ze 3 historyjki mógłbym opowiedzieć, wszystko w tym samym temacie.

@pierdonauta_kosmolony Lubię takie historie procesowo-projektowe ponieważ wiele podobnych sytuacji powtarza się w różnych firmach co można później wykorzystać.

@pierdonauta_kosmolony - dzięki za interesującą wrzutę - coś czuję, że historia ze śniadymi kolegami będzie jeszcze ciekawsza

@koszotorobur

Hej, obawiam się że prędzej frustrująca. Poza tym miałbym problem żeby nie otrzeć się o nawoływanie do nienawiści.

@pierdonauta_kosmolony - opisz fakty - a interpretację pozostaw czytającemu

@pierdonauta_kosmolony spokojnie, praca z hindusamu leczy z tolerancji a przywodzi do głowy, bardzo mroczne myśli.

Więcej takich opowieści. Sztos

@pierdonauta_kosmolony pomijając wątek techniczny, ktorego ni w ząb nie rozumiem, to tak, mogę potwierdzić, że z nimi tak wygląda robienie czegokolwiek. Nie ma prawa się okazać, że to ty miałeś rację, a nie on

@pierdonauta_kosmolony żółtki to kłamliwe wały, do tego tchórze

@pierdonauta_kosmolony chciałem zawsze takie rzeczy robić, ale z azjatami jesteśmy na przegranej pozycji. Są krok przed nami. Spotkałem się z tym dwukrotnie przy projektowaniu elektroniki. Wypuszczali podobny produkt tydzień szybciej.

@30ohm

Tajemnic sukcesów Azjatów nie jest wiele.

* Gigantyczny protekcjonizm państwa

* Wymaganie i premiowanie tępego zapierdolu

* Jednostka się nie liczy - i jest to nie tyle stosunek elit do prostego człowieka, co głęboko zakorzeniona w kulturze filozofia.

* Społeczna świadomość konieczności stałego rozwoju, z naciskiem na technologię.


U nas z tego wszystkiego mamy jedynie przemijający kult zapierdolu. Reszta jest dokładnie na odwrót.

@30ohm

Po miesiącu tak zwanych eskalacji, włączaniu się szefów z różnych krajów Pan od HW zmiękł i wysłał schemat.


W ten sposób wypuszczają podobny produkt tydzień wcześniej

@pierdonauta_kosmolony jednak u nas kultura pozwala powiedzieć wprost, "tak, zjebałem". Samokrytyka, czynny żal i jedziemy dalej. Kultura korpo wymaga tylko, żeby podjąć "działania naprawcze", aby nie dochodziło do tego w przyszłości.

A kto niczego nigdy nie zjebał, ten niech pierwszy rzuci kamieniem.

O losie, dawno tak nie miałe, żeby rozumieć co drugie słowo. Piorunowałem aż huczało XD

@pierdonauta_kosmolony Pan Szef który murem stoi za swoim, to się chwali xD

@pierdonauta_kosmolony wyobraź sobie zespół: dwóch koreancow, dwóch Hindusów, Tajwanczyk i Singapurczyk, a na to wszystko szef Żyd - z takimi asami musiałem współpracować przez półtora roku.

@radoslaw-m najgorsze półtora roku mojego życia. Z nich wszystkich Tajwanczyk i Singapurczyk byli najlepsi i najbardziej ogarnięci.

@maximilianan

Z Chińczykami pracowało mi się zwykle dobrze.

Z Koreańczykami źle, w dodatku mają zwykle w pogardzie inne narodowości.

Z Hindusami pracowało mi się fatalnie, za to często byli sympatycznymi ludźmi.

@maximilianan też przerabiałem ich, więc się domyślam, że z drugiej strony skali był hindus

@pierdonauta_kosmolony @radoslaw-m jak Chińczycy są ogarnięci a nie najtańsi z najtańszych to dobrze się z nimi robi. Za to żeby koreaniec był taki musiałby najpierw na kilka lat wyjechać z Korei

@pierdonauta_kosmolony j⁎⁎ac azjatow w pracy. Serio to sa zazwyczaj chorzy ludzie (w moich oczach)

Azjatycki protokół "zachowywania twarzy"

Jak ja to dobrze znam... proceduralna nadgorliwość w stylu faszystowskim i absolutny jobel na punkcie nieomylności...

@NiebieskiSzpadelNihilizmu - czerpię więc perwersyjną radość z wytykania im błędów - a jako, że to międzynarodowe korpo to mogą sobie swój protokół zachowania twarzy wsadzić - i tyle z ich nieomylności

Wiadomo, że i mi też zdarzają się błędy - oni tylko na nie czekają by mi je wytknąć publicznie - ale to się zdarza raz na rok - ja im wtedy za zwrócenie uwagi dziękuję i przedstawiam plan naprawy - zero kajania się, zero przeprosin, zero pomijania swojej winy czy zwalania na kogoś - ot uczciwe przyznanie się i praca naprawcza by ponownie błędu nie zrobić - zachowanie, które szefostwo ocenia bardzo pozytywnie - a im to styki przepala

@koszotorobur u mnie lubią uprawiać proceduralne machanie kutasem. Jest ogólnofirmowa procedura wnioskowania o dostępy. Wnioskujesz, musisz mieć ticket, opcjonalnie dorzucasz krótki opis, uprawniona osoba to weryfikuje i akceptuje (albo odrzuca). Jasno i przejrzyście. No chyba że ci magicy, oni stwierdzili, że chuj, oni wiedzą lepiej, bo to jest gówno i oni muszą mieć więcej informacji i lepszą dokładność i więcej papierów i w ogóle "bardziej". Efekt? Wcześniej poza numerem ticketa chcieli, żeby uprawiać im beletrystykę po co ci to konto i czy obiecujesz, że nie wysadzisz nim połowy świata w powietrze. I to nie jakaś formułka w bezokoliczniku na 3-4 słowa, o nieee. Już to dostatecznie wkurwiało, więc z rok temu jeszcze bardziej dojebali do pieca i wymyślili sobie jeszcze swoją własną magiczną listę kodów opisujących typy tego co i po co wnioskujesz, jest ich bez kitu kilkadziesiąt. Które oczywiście są tak skonstruowane, że granica między jednym i drugim zwyczajnie potrafi nie istnieć. I teraz- u nich nie mamy możliwości akceptowania swoich kont, tylko oni to muszą robić, i to jeszcze 2 osoby- ktoś normalny z nich i ktoś z działu security. A przez rozjazd ze strefami czasowymi jak nie złożysz wniosku do max 9 rano to jesteś w dupie i w ten dzień nie zrobisz już nic, bo po prostu nie ma nikogo, kto by mógł ci dać accepta. A teraz najlepsze- z racji tej zatartej granicy między jednym kodem a drugim wnioskujesz o konto z kodem powiedzmy A, w międzyczasie wyjdzie, że zmienia się typ pracy, bo nie wiem- zalogowałeś się i się okazało, że przyczyną jest co innego, to po ogarnięciu zadania potrafią cię jeszcze jebać, że śmiałeś podać zły kod i to jest oszustwo i oni będą musieli to inwestygować czy nie podałeś tego złego kodu celowo xD

@NiebieskiSzpadelNihilizmu - oni tak mają, że muszą komplikować rzeczy by pokazać jak bardzo są potrzebni i ważni

Na szczęście moja firma nie ma żadnych zależności w Azji a azjaci to zwykli pracownicy, którzy muszą dostosować się do kultury zachodniego korpo. Są zgrzyty ale bidulki nie mają wyjscia

Chociaż muszę przyznać, że jest garstka ogarniętych i pomocnych - ale tylko jak się gada na privie

W drugim pokoleniu (u dzieci emigrantów) już takiego problemu nie ma

 oni tak mają, że muszą komplikować rzeczy by pokazać jak bardzo są potrzebni i ważni

@koszotorobur o to to. Kto pracował z ciapatymi ten w cyrku się nie śmieje. A kto przejmował po nich serwis ten od tej pory ma ptsd.

Zaloguj się aby komentować