Czy są dostępne systemy produkcji na dużą skalę, które pozwalają na zaprogramowanie unikalnego numeru seryjnego w oprogramowaniu wewnętrznym lub wolną przestrzeń pamięci dla każdej przechodzącej płytki drukowanej?
Przekonałem się, że FDA postanowiła rozpocząć egzekwowanie przepisów dotyczących urządzeń klasy medycznej, ale czy jest to coś łatwego do osiągnięcia, czy też wymagałoby opracowania własnego procesu produkcyjnego?
Odpowiedzi:
Większość programistów produkcyjnych jest w stanie wstawić unikalny numer seryjny do zaprogramowanej pamięci, co jest zwykle procesem zwanym serializacją . To jest chwyt ekranu Serializacji od starego programisty Dataman.
źródło
serialization
jest to możliwe, ale wymaga szczególnej ostrożności, szczególnie jeśli zakres wartości przekracza granicę słowa. Jeśli outsourcingujesz programowanie, staje się to jeszcze trudniejsze - gdyby dobrze znany sprzedawca pomylił się nie raz, ale dwa razy z rzędu, zanim ostatecznie przyzna, że ich programista dla danej części nie mógł serializować na wiele bajtów. Ostatecznie wysłali im unikalny plik dla każdej wartości bardziej znaczącego bajtu, dla którego uruchomili unikalne 256-elementowe zadanie programowe szeregujące niższe. Do następnego projektu zbudowaliśmy programator niestandardowy.Być może pytasz o rozwiązanie tylko programowe, ale jeśli możesz dodać tani układ scalony do swojej płyty, możesz użyć układu „Silicon Serial Number”.
Są to małe układy pamięci ROM, w których każde urządzenie ma unikalny numer binarny. Przykładami są DS2401 Maxima (magistrala 1-wire) i DS28CM00 (I2C), które mają 48-bitowy unikalny numer.
Numer jest unikalny wśród wszystkich układów scalonych wykonanych z tego numeru części przez tego producenta. Oczywiście nie jest wyjątkowy wśród wszystkich chipów SSN wyprodukowanych przez wszystkich na świecie. Ale sprawiają, że bardzo łatwo jest wybrać urządzenie do swojej tablicy i wiedzą, że każda wyprodukowana płyta odczyta z niej inny i niepowtarzalny numer.
źródło
tak, oczywiście, ponieważ wspomniane adresy mac są oczywiste, zwykle w flash / eeprom obok mac, jeśli jest to osobna część, lub we flashu / eeprom gdzie indziej. istotne dane produktu (numer seryjny płyty itp.) można umieścić w osobnym eepromie lub pamięci flash lub w tym samym urządzeniu, w którym przechowywane jest inne oprogramowanie układowe.
Jeśli masz na przykład sytuację, w której możliwe jest uaktualnienie oprogramowania układowego w terenie, część projektu systemu, nie chcesz, aby dane VPD zostały usunięte po skasowaniu i przeprogramowaniu oprogramowania układowego, więc musisz to rozwiązać za pomocą funkcji ochrony przed zapisem urządzenia flash (umieszczenie VPD na swoim banku / obszarze i zablokowanie tego obszaru) i niekoniecznie publikowanie / dokumentowanie publicznie, jak zwolnić pin ochrony przed zapisem i / lub jakieś inne rozwiązanie, dzięki któremu można zaprogramować VPD w MFG i następnie należy go zablokować w inny sposób (pociągnięcie w dół / w górę, zgodnie z wymaganiami, a następnie zaprogramowane podczas / wokół ICT, które urządzenie może pociągnąć w drugą stronę).
Prawdopodobnie jest to bardziej powszechne niż myślisz, medycyna jest tylko bardzo malutką grupą ludzi, którzy by to zrobili. Może nie pilot do telewizora, ale prawdopodobnie mysz lub klawiatura, a na pewno telefon komórkowy itp.
Jeśli na płycie znajduje się również naklejka, może się okazać, że ma ona kod kreskowy, aby podczas produkcji urządzenie lub operator mógł zeskanować kod kreskowy, wersję montażu itp. I dodać go do VPD dla tej płyty.
źródło
Posiadanie unikalnych kodów dla każdego produktu jest możliwe i wykonalne. Jednym ze sposobów na to byłoby posiadanie systemu programowania, który sekwencyjnie zmienia numer identyfikacyjny oprogramowania układowego dla każdego zaprogramowanego urządzenia. W przypadku niektórych systemów jest to łatwe; na przykład niektóre mikrokontrolery mają zarezerwowaną lokalizację eeprom specjalnie do przechowywania identyfikatora.
Inną alternatywą byłoby dodanie unikalnego identyfikatora sprzętowego. Przykładem tego jest krzemowy układ scalony Dallas Semi (obecnie Maxim Integrated) z numerem seryjnym ( DS2401 ). To urządzenie podaje numer seryjny i masz gwarancję, że będzie unikalny. Ten numer seryjny może służyć do ustalenia unikalnego adresu dla konkretnego produktu.
źródło
Masowo produkowane karty sieciowe mają swoje numery seryjne w postaci adresu sprzętowego (MAC) zaprogramowanego w pamięci flash / EEPROM podczas produkcji.
Podczas gdy numery seryjne nakładane na obudowę produktu jako naklejka mogą zostać usunięte lub ponownie nałożone, wypalenie numeru seryjnego na konkretnej płycie stwarza inny sposób na śledzenie użycia płyty; najprawdopodobniej ten numer seryjny zostanie również wydrukowany na dokumentacji medycznej, aby sprawdzić, które dokładnie urządzenie zostało użyte do diagnozy medycznej lub operacji.
źródło
Około 10 lat temu byłem w podobnej sytuacji z oprogramowaniem sprzętowym dla urządzeń medycznych, które opracowałem dla jednego z moich klientów. To było urządzenie klasy 2, które podniosło poprzeczkę. Ilości produkcyjne były w setkach.
Nie mogliśmy znaleźć gotowego programatora, który mógłby zapisywać numery seryjne automatycznie lub półautomatycznie. Zrobiliśmy obejście. Mieliśmy fabryczne oprogramowanie wewnętrzne, które służyło do kalibracji i testowania. To fabryczne oprogramowanie układowe komunikowało się z resztą sprzętu testowego przez port szeregowy. W ramach tych testów pobieramy numer seryjny, który był przechowywany w pamięci EEPROM mikrokontrolera. (Fabryczne oprogramowanie wewnętrzne zostało zastąpione przez oprogramowanie wewnętrzne).
źródło
Programiści produkcji SEGGER wspierają flashowanie niepowtarzalnych numerów seryjnych w MCU.
źródło
Jeśli masz na to wiele opcji (niektóre z tej odpowiedzi ):
źródło
Jeśli masz dostęp do dobrego sprzętu RNG i 16 bajtów dodatkowej trwałej pamięci, jednym ze sposobów, który nie wymaga zbytniej zmiany procesu produkcyjnego, jest wygenerowanie identyfikatora GUID v4 przy pierwszym uruchomieniu i zapisanie go. Oprogramowanie układowe można zrzucić do portu szeregowego podczas przeprowadzanych testów postprogramowych. To nie jest sekwencyjne, ale to nie ma znaczenia dla większości aplikacji.
źródło
Jeśli użycie RFID lub Smart Tag na każdej płytce drukowanej spełnia ten wymóg, będzie to najłatwiejsza metoda wdrożenia - pod Twoją kontrolą.
źródło