Dlaczego umieszczają „procesory” na dyskach twardych?


54

Co to znaczy, że dyski twarde mają procesor na dysku twardym? Jak to działa i jakie ma korzyści?

Nie rozumiem - procesor komputera to procesor, a dysk twardy przenosi jego zawartość do pamięci RAM komputera hosta. Czy dodatkowe procesory w jakiś sposób wstępnie przetwarzają dane?

Oto kilka przykładów:

  1. Western Digital WD Czarny WD1002FAEX 1 TBDwuprocesorowa prędkość”
  2. NETGEAR ReadyNAS 212 2-kieszeniowy bezdotykowy dysk sieciowy „Dwurdzeniowy procesor Intel 2,1 GHz i 2 GB pamięci wewnętrznej”

Ponadto routery mają teraz również procesory. Dlaczego to konieczne? Wydaje mi się, że to ma sens - musi być logika, aby pakiety zostały odczytane, aby wiedzieć, na których portach je wysyłać, ale dlaczego stare routery ich nie potrzebowały?

Przykład routera bezprzewodowego z procesorem : „Dwurdzeniowy procesor”

Jestem zaskoczony, ponieważ model maszyny von Neumann nie obejmuje procesorów do przechowywania diagram.


19
Ten Netgear to nie tylko router, ale pełnoprawny serwer plików. Z dyskiem twardym po prostu wykonuje wstępne przetwarzanie na jednym i IO na innych. Teoretycznie nieco szybszy, ale SSD wciąż jest królem prędkości. Wygląda na to, że router ASUS ma pewne funkcje VPN i inne cechy, które wymagałyby pewnej mocy obliczeniowej, stąd dwurdzeniowy.
user341814,

17
Model Von Neumann nic nie mówi o strukturze urządzeń I / O. Nadal potrzebujesz karty graficznej do sterowania monitorem, nawet jeśli ten model skupia wszystko pod jednym blokiem „wyjściowym”.
user253751,

10
Architektura von Neumanna (od 1945 r.) Jest świetnym punktem wyjścia (koncepcyjnym) do zrozumienia komputerów z programami przechowywanymi. Rzeczywista implementacja nowoczesnych komputerów (w tym większości urządzeń peryferyjnych) jest znacznie bardziej szczegółowe. W 1945 r. Nie było „inteligentnych urządzeń peryferyjnych”, więc nie byłyby reprezentowane na schemacie. Samochody są koncepcyjnie takie same jak w 1945 r. (Cztery koła, silnik, kierownica), ale nie można oczekiwać, że uproszczony schemat samochodu z 1945 r. Dałby wam dzisiaj ich pełne zrozumienie.
Maxx Daymon,

7
Schemat architektury von Neumanna również nie zawiera strzałki między „pamięcią” a „pamięcią”. Zastanów się nad DMA .
CVn

3
Czy wiesz, że (oprócz Apple - z powodu Woz) każdy wczesny domowy mikrokomputer (o którym myślę) miał procesor w stacji dyskietek? Pamiętasz dźwięk „chunk-chunk-chunk” wczesnych stacji dyskietek Apple? Stało się tak, ponieważ znaleźli sektor zero, przesuwając ramię napędu na maksymalną odległość trzy razy.
Elliott Frisch

Odpowiedzi:


81

Cóż, HDD zawsze miał procesory, głównie do buforowania danych i wykonywania innych czynności na HDD, takich jak oznaczanie uszkodzonych bloków itp.

Produkt Netgear, który połączyłeś, to NAS, który umożliwia strumieniowe przesyłanie z niego multimediów przez sieć, więc tak naprawdę nie jest to dysk twardy. To bardziej dysk twardy podłączony do sieci z jakimś fantazyjnym oprogramowaniem, które pozwala na przesyłanie strumieniowe informacji przez sieć.

Stare routery również miały procesory, choć były one powolne i wcale nie były reklamowane. WRT54G, który pojawił się w 2002 roku, miał Broadcom BCM4702 działający z częstotliwością 125 MHz. Rzeczywiście niezbyt szybki. Jednak obecnie wymagamy od routerów więcej, a funkcje takie jak VPN wymagają szybszych procesorów.


14
Dyski twarde nie zawsze miały rozpoznawalne „procesory”, ale z pewnością były powszechne od 15-20 lat.
Daniel R Hicks,

21
Dyski ST-506 były „głupimi” dyskami i były popularne na początku lat 90. IDE (Integrated Drive Electronics, inaczej „inteligentne” dyski) umieściło kontroler (CPU) bezpośrednio na dyskach, podobnie jak SCSI.
Maxx Daymon,

11
Dyski twarde zawierające procesory sięgają wczesnych lat 60. ubiegłego wieku dzięki procesorom peryferyjnym z serii CDC 6000 i ich odpowiednikom w IBM System / 360 (i prawdopodobnie wcześniejszych maszynach).
Andrew Medico,

3
Cóż, potrzebujesz procesora, aby pamięć podręczna działała optymalnie, podobnie jak decydowanie o tym, jakie dane chcesz buforować
matthew5025,

3
Dyski twarde z pewnością nie zawsze wewnętrznie śledziły uszkodzone bloki. Jak myślisz, dlaczego MS-DOS 6.0 wprowadził Scandisk i jego funkcję skanowania powierzchni, aby wypełnić FAT listą złych klastrów?
CVn

125

Nie rozumiem - procesor komputera to procesor, a dysk twardy przenosi jego zawartość do pamięci RAM komputera hosta. Czy dodatkowe procesory w jakiś sposób wstępnie przetwarzają dane?

CPU jest procesora; są inni. Procesor uruchamia kod programu, więc każde urządzenie, które ma oprogramowanie układowe (które jest kodem), ma jakiś procesor.

Dysk twardy ma własne (małe) procesorowe oprogramowanie układowe, które implementuje protokół interfejsu (np. SATA lub SCSI) i steruje silnikami napędu. Pomyśl o swoim dysku twardym jak o wyspecjalizowanym komputerze wewnątrz komputera; kabel SATA jest jak kabel sieciowy, który umożliwia komunikację z „głównym” komputerem. CPU tworzy wiadomości (takie jak pakiety poleceń SATA), aby powiedzieć napędowi, jakich danych chce, i wysyła je do napędu za pomocą kabla; procesor napędu patrzy na komunikaty z procesora i steruje silnikami napędu i głowicami magnetycznymi w celu odczytu lub zapisu danych.

NAS to komputer z oprogramowaniem serwera plików. Zasadniczo nie różni się to od konfigurowania folderów współdzielonych na komputerze; NAS działa na lżejszym systemie operacyjnym na wolniejszym procesorze, ale zasadniczo wykonuje tę samą pracę. To samo dotyczy routera.


53
Podoba mi się ta odpowiedź. CPU jest centralną jednostką przetwarzającą , więc muszą być inne.
gronostaj,

19
Kluczową kwestią jest „każde urządzenie, które ma oprogramowanie układowe (uruchamia kod), ma jakiś procesor”. Dobra droga Wyzard!
Mindwin,

2
Power Loss Protection to przykład funkcji, którą można zaimplementować na dysku twardym z procesorem i kodem programu. Dysk może wykryć utratę zasilania z MB. Program działający w procesorze HD może następnie zapisać ostatni bit buforowanych danych na dysk (z zasilaniem z kondensatora na pokładzie). Ponieważ MB nie ma zasilania, procesor na nim nie ma zasilania i jest bezużyteczny dla niedokończonych operacji zapisu HD. Ma więc sens, że HD ma własną moc, procesor i kod programu, aby zakończyć buforowane zapisy i zamknąć.
MikeM

2
I z Wikipedii: „Niektóre wczesne dyski twarde do komputerów PC nie parkowały automatycznie głowic, gdy zasilanie zostało przedwcześnie odłączone, a głowice wylądowały na danych. W niektórych innych wczesnych jednostkach użytkownik uruchomiłby program do ręcznego parkowania głowic”. - W przypadku procesora i kodu programu problem został rozwiązany.
MikeM

@gronostaj, więc potrzebujemy również Decentral Processing Units?
Thorbjørn Ravn Andersen

33

Gdybyś mógł szczegółowo przyjrzeć się działaniu typowego komputera stacjonarnego, wszędzie znajdziesz procesory. Jeśli do portów USB podłączona jest klawiatura i mysz, wewnątrz klawiatury znajduje się procesor i jedna mysz, która obsługuje protokół USB.

W przypadku dysku twardego procesor ma mnóstwo rzeczy do zrobienia. Po pierwsze, procesor musi ustawić głowicę, poczekać na odpowiedni moment, a następnie wysłać dane na talerze. Gdy procesor prosi o odczytanie wiązki danych, procesor znajduje optymalną kolejność, aby pobrać te dane z dysku, a może nawet pobiera dodatkowe dane, które przypadkiem trafiły pod głowę, aby umieścić je w pamięci podręcznej na wypadek, gdyby procesor o to poprosił Kolejny.

Nowoczesne dyski twarde mogą również przeprowadzać inteligentne kontrole stanu zdrowia w tle. Procesor nie musi się tym zajmować, poza tym, że może okresowo prosić o wyniki.

Nowoczesne „routery” SoHo to nie tylko routery. Są także punktami dostępu, przełącznikami, serwerami DHCP, serwerami internetowymi i implementują NAT, zaporę ogniową, czasem nawet funkcje NAS i mnóstwo innych rzeczy. Ich procesory mają mnóstwo do zrobienia.

Zasadniczo procesor jest obecnie tak tani w implementacji, że jest używany prawie w każdym przypadku, w którym ma sens. Wyjątkiem byłyby przypadki, w których zadanie jest bardzo proste lub wymagana jest wysoka wydajność. Cholera, prawdopodobnie jest nawet jeden zasilacz do zarządzania prędkościami wentylatorów i optymalizacji zużycia energii.


1
„Jeśli do portów USB podłączona jest klawiatura i mysz, w klawiaturze jest procesor, a w myszy jeden mówi protokół USB”. Myślałem, że to zadanie kontrolera . Czy kontrolery są czasami uważane za te same rzeczy co procesory?
Celeritas

1
Kontrolery mogą być czystym sprzętem, ale wymagania wobec nich rosną, co powoduje, że sprzęt jest coraz bardziej złożony. W pewnym momencie złożoności łatwiej jest używać procesora i robić rzeczy w oprogramowaniu. Ale to nie nadaje kontrolerowi innej nazwy; użytkownicy zazwyczaj nie chcą lub nie muszą wiedzieć, w jaki sposób kontroler jest wdrażany. Ponadto, w dzisiejszych czasach ze złożonymi sprzętowymi układami ASIC i FPGA, rozróżnienie na procesory staje się nieco rozmyte.
Guntram Blohm,

Na początku czytałem to jako „pisk myszki”
Tom Zych

21

Wiele obecnych „inteligentnych” urządzeń to w rzeczywistości pełnoprawne komputery, na których często działa jakiś klon systemu Linux. Jeśli urządzenie jest wystarczająco dopuszczalne lub zostało zrootowane / jailbroken, możesz być w stanie majstrować przy nim, instalować nowe pakiety, a nawet zmieniać system operacyjny. Oczywiście używają procesorów.

Przykłady obejmują telefony, telewizory, odtwarzacze DVD, czytniki e-booków, urządzenia NAS, routery domowe, modemy i zarządzanie pozapasmowe na serwerach, które w rzeczywistości są całymi komputerami z własnym systemem operacyjnym.

Ale nawet głupie urządzenia mają procesory, często nazywane mikrokontrolerami, odpowiedzialne np. Za odczyt i zapis danych. Karta Micro SD w telefonie zawiera procesor, a karta SIM ma inny, zdolny do uruchamiania aplikacji Java.

Nawet proste zabawki dla dzieci, takie jak sygnalizacja świetlna, mają mikrokontroler, ponieważ łatwiej i taniej jest zaimplementować logikę światła w oprogramowaniu mikrokontrolera niż w dyskretnych elementach.


8
właściwie niewiele osób wie, że karta SIM to prawdziwy komputer i można nawet przeprogramować ją w locie za pomocą specjalnych SMS
ów


Nie tylko karty SIM, ale dowolna karta inteligentna Chip & Pin zgodna ze standardem ISO. Karty bankowe, karty lojalnościowe i wiele innych zawierają teraz te rzeczy, a niektóre z nich są zaskakująco potężne.
shawty

20

Aby odpowiedzieć na konkretne pytanie dotyczące dysków twardych, na które nikt nie odpowiedział.

SATA (i wszystkie inne interfejsy dołączania dysku, o których myślę) działa z blokami. Polecenia są zdefiniowane (między innymi) do odczytu i zapisu określonych fizycznych bloków pamięci, a dane są przekazywane przez okablowanie interfejsu załączników. To polecenie musi być gdzieś przetworzone, co można wykonać albo w oprogramowaniu działającym na wbudowanym procesorze, albo przy użyciu jakiejś czystej konfiguracji sprzętowej, która prawdopodobnie musiałaby zrobić dokładnie to samo.

Zgadnij, co jest tańsze, fizycznie mniejsze, dalekie od mało prawdopodobnej łatwiejszej w obsłudze i zwykle znacznie bardziej wszechstronne? Zgadza się, procesor, niewielka ilość pamięci programu (flash, EPROM, ROM lub cokolwiek innego, co odpowiada twoim potrzebom) i niewielka ilość pamięci RAM, z których dwie ostatnie, jeśli twoje potrzeby są wystarczająco skromne, mogą nawet zostać uwzględnione w sam procesor (patrz na przykład rodzina mikrokontrolerów PIC ).

Pamiętaj też, że talerze dyskowe tak naprawdę nie przechowują bitów. Przechowują kodowanie strumienia magnetycznego bitów. Coś musi przetworzyć odczyty strumienia pochodzące z głowicy odczytu lub przetworzyć dane na przejścia strumienia, które zostaną przekazane do głowicy zapisu. Jeśli odczyt jest niedoskonały, wówczas dane korekcji błędów (przechowywane razem z danymi) są idealnie wykorzystywane (niestety nie zawsze tak jest ) do korygowania błędu i zwracania dobrych danych zamiast śmieci lub zwracania błędu, jeśli problem jest zbyt poważne, aby można je było poprawić. Znowu jest to najłatwiejsze do zaimplementowania w oprogramowaniu, które musi działać na czymś, a procesor z pewną pamięcią znowu całkiem nieźle sobie radzi.

Posiadanie dużej mocy obliczeniowej na pokładzie oznacza, że ​​możesz korzystać z bardziej zaawansowanych schematów kodowania i odzyskiwania po błędach, co w przypadku dysków twardych oznacza, że ​​możesz wcisnąć więcej danych na tę samą powierzchnię fizyczną. Efektem końcowym jest większa pojemność przechowywania niż jest to możliwe w innym przypadku. Moc obliczeniowa samego mikrokontrolera dysku twardego nie ma jednak decydującego znaczenia dla użytkownika napędu.


1
Opracowywanie „lub korzystanie z czystej konfiguracji sprzętowej” - mikrokontrolery (jak wspomniałeś) i niestandardowe układy ASIC były o wiele bardziej powszechne. W dzisiejszych czasach budowanie z „prawdziwymi” procesorami, które działają na wbudowanym systemie operacyjnym poza ROM, jest często tańsze i prostsze niż projektowanie i wytwarzanie niestandardowych układów ASIC i pisanie wysoce specjalistycznego oprogramowania układowego dla mikrokontrolerów. Problem sprzętowy staje się problemem oprogramowania, a komponenty są bardziej znormalizowane; oba zmniejszają koszty ... i otwierają drzwi dla nowych możliwości.
echo

12

Wybacz mi, jeśli przejrzałem ten punkt, ale nie przeczytałem go jeszcze w odpowiedziach (choć wszystkie inne odpowiedzi są świetne).

Wdrożenie procesorów na sprzęcie zmniejsza również obciążenie centralnego procesora, którym jest procesor na płycie głównej.

Pomyśl o komputerze z jednym procesorem, który musi wykonać każdą pracę, którą należy wykonać. Kontroluj pamięć, kontroluj magistralę, zarządzaj obliczeniami specyficznymi dla dysku twardego (spin dysk, dostęp, wielkość do zapisu, odczytu itp.)

Jeśli wszystko , co musi być zrobione, musi być wykonane przez procesor, to nie pozostanie wiele czasu na twoje rzeczywiste zadania.


9

Zacznijmy od oczywistości - te „procesory” zawsze były na pewnym poziomie. W starszych dyskach znajdowały się one na kartach kontrolerów, a przy czymkolwiek zbliżającym się do współczesnego, dyski twarde miały kontrolery dysków - oznaczenie „IDE” dla napędów pata odnosi się do faktu, że elektronika była na pokładzie w przeciwieństwie do posiadania oddzielnej karty.

Choć tradycyjnie te zostały mikro-kontrolerów, mój SSD - Samsung 840 posiada trzy rdzeń procesora opartego ramię. Układy te wykonują takie czynności, jak wyrównywanie zużycia, obsługa różnych tłumaczeń wewnętrznych (np. Konwertowanie poleceń ATA lub SCSI na coś, co przemawia elektronika napędu) oraz dwa czynniki - sprzęt jest o wiele bardziej skomplikowany niż kiedyś, a procesory są tańsze i szybsze niż kiedyś oznacza to, że sensowne jest wszczepienie ściętego rdzenia ogólnego przeznaczenia do napędu. Jednak tak, te procesory zawsze tam były.

W przypadku routerów zawsze mieli mipsy lub rdzenie - w zasadzie potrzebują mocy, aby uruchomić serwer WWW, routing i tak dalej. Wiele dysków podłączonych do sieci używa podobnych lub lepszych rdzeni, aby mogły obsługiwać takie rzeczy, jak smb lub strona administratora.

Co do tego przez wiele lat, klawiatury miały te same procesory M68K, które można znaleźć w wielu starych komputerach, a myszy z rdzeniami ramion obsługują takie rzeczy, jak fantazyjne oświetlenie i coraz szybsze reakcje.


Kiedy klawiatury miały kiedykolwiek mikroprocesory 68 000? I czy dyski takie jak ST-225 naprawdę miały w sobie procesory?
supercat

Cóż, to była stara, gówniana klawiatura z dzwonkiem paczkowym, którą rozebrałem około 4-5 lat temu i wtedy była używana. To była trochę niespodzianka. ST 225 był wcześniejszy niż IDE i dlatego potrzebowałem osobnego kontrolera. Nie uważam tego za coś, co można znaleźć w komputerze z ostatnich 15 lat
Journeyman Geek

Czy na pewno był to 68K w porównaniu do czegoś takiego jak 68HC05?
supercat

Dotyczy ST 225. Dyski MFM są na tyle stare, że używają procesora głównego komputera. Sam napęd ma jedynie kabel z nieprzetworzonym sygnałem z głowicy (głowic) napędowych, sygnałem do zmiany ścieżek, sygnałem do zmiany kierunku ścieżki (na wyższą ścieżkę lub na niższą ścieżkę) oraz sygnał wskazujący zero ścieżki został osiągnięty. Całe zarządzanie (w tym śledzenie wadliwych sektorów wydrukowanych na etykiecie dysków) zostało wykonane w oprogramowaniu na komputerze głównym.
Hennes

5

Ponadto routery mają teraz również procesory. Dlaczego to konieczne? Wydaje mi się, że to ma sens - musi być logika, aby pakiety zostały odczytane, aby wiedzieć, na których portach je wysyłać, ale dlaczego stare routery ich nie potrzebowały?

Routery zawsze miały procesor. Dwa oryginalne routery były oprogramowaniem działającym na PDP-11 (tak, następca maszyny, na której pierwotnie napisano Unix). Jeden został opracowany w Stanford, a drugi w MIT. Router Stanford został później licencjonowany dla małego wówczas startupu o nazwie Cisco Systems. Cisco ponownie zapakował komputery PDP do niestandardowych obudów, nakleił etykietę „Cisco” i sprzedał je jako routery.

Tak właśnie korzystały stare routery - procesory.

Pamiętam, jak przeczytałem wywiad jednego z założycieli Cisco, który powiedział coś w stylu: „to zaleta sprzedawania oprogramowania jako metalowych pudełek - nie trzeba przekonywać ludzi, aby nie przekazywali jego kopii znajomym”. Moje google-fu zawiodło mnie dzisiaj, więc nie mogę znaleźć właściwej oferty. To były dni, zanim pewien założyciel małej firmy Microsoft o imieniu Microsoft przekonał ludzi, że muszą płacić za oprogramowanie (wtedy była to wczesna wersja Basic).


4

Cały półautonomiczny sprzęt od czasu rewolucji komputerowej ma na sobie swego rodzaju „procesor”, do tej pory tak naprawdę nigdy nie był oznaczony jako taki.

To, co tu widzisz, to ciągła korupcja i półprawdy, które są rozpowszechniane w naszym społeczeństwie przez gorliwe agencje marketingowe, w których sprzedawcy są coraz bardziej zachęcani i przekonani, że są gwiazdami serialu, po prostu dlatego, że to oni tworzą zyski.

Faktem jest, że wszystko, co musi wykonać zestaw zadań, w których następna iteracja procesu może być inna niż poprzednia iteracja, musi mieć jakiś interpreter, który może zrozumieć instrukcje wydawane przez urządzenie , a następnie w pewien sposób reagować na te instrukcje.

Z powrotem w mgłę czasu terminologia taka jak „Kontrolery” była normą, ale wciąż sprowadzała się do tego samego.

Weźmy na przykład „dysk twardy IDE z wbudowanym kontrolerem IDE”, podczas gdy nie jest to procesor w tym samym sensie, co myślisz o procesorze na płycie głównej komputera, ale nadal jest to forma procesora.

Komputer hosta wysyła „Kody OP” (skrót od kodów operacyjnych) przez magistralę (PCI, ISA, MCI, PCIe lub cokolwiek innego) do kontrolera napędów, kontroler następnie odczytuje ten kod i wszelkie dostarczone z nim dane i zamienia je w operacje fizyczne, które powodują, że dysk przesuwa głowice w odpowiednie miejsce i odczytuje żądane dane.

Routery mają jeszcze dłuższą historię, Cisco już od ponad 50 lat buduje sprzęt sieciowy, a każde z tych urządzeń przez cały czas miało niestandardowy kontroler / procesor. Ten procesor został zaprojektowany przez Cisco, specjalnie dla Cisco w celu programowania i kontrolowania całego zakresu lub routerów i przełączników.

Karty graficzne to kolejna rzecz. Słyszysz, jak ludzie otaczają się terminem „GPU”, jakby to była mistyczna rzecz, która tylko grafikę. Nie, jest to masowo równoległy procesor algorytmów matematycznych, Iv'e właśnie zakończyła techniczną edycję książki o Nvidii CUDA, a to, czego dowiedziałem się o procesorach graficznych Nvidii, było dość zaskakujące, te rzeczy są procesorami same w sobie, procesorami, które są zaprojektowane do wykonywania specjalistycznego zestawu zadań, ale wciąż są na wpół inteligentne i są zdolne do wielu różnych rodzajów operacji.

Jak już wspomniano, Netgear Readynas jest bardziej podobny do pełnego komputera. Jest specjalnie zaprojektowany do działania tylko jako zdalne urządzenie magazynujące.

Jeśli chcesz, nic nie powstrzyma Cię przed przeprogramowaniem urządzenia Netgear za pomocą nowego oprogramowania i sprawi, że będzie on działał doskonale jako serwer WWW, serwer bazy danych lub nawet mały serwer programistyczny dla systemu Linux. (Szybkie wyszukiwanie pokaże więcej niż kilka projektów mających na celu zrobienie czegoś takiego z tymi jednostkami NAS)

Jeśli chodzi o procesor, może zaskoczyć cię, gdy dowiesz się, że nie tylko dyski twarde mają „procesory” w tych dniach, spróbuj tego małego eksperymentu.

Stań w kuchni i zobacz, ile procesorów możesz policzyć.

Jestem gotów się założyć, że twoja lodówka / zamrażarka, pralka, zmywarka, piekarnik i kuchenka mikrofalowa (przynajmniej) mają jakiś procesor, może nie być to Intel Core i7, ale wciąż jest to procesor, i jest zaprojektowany tak, aby siedzieć cicho, interpretując instrukcje wysyłane do niego przez inne obwody elektryczne / cyfrowe, które następnie przekształca w widoczne operacje fizyczne.

Jaka jest definicja procesora?

Cóż, w dzisiejszych czasach jest to trochę trudne do określenia, ale ogólnie definicja „procesora” jest czymś podobnym do „dowolnej niezależnej jednostki, która jest zdolna do działania na wejściach zewnętrznych w sposób częściowo inteligentny i produkuje znany zestaw wyników uzyskanych z tych danych wejściowych ”

Tak więc dowolna samodzielna jednostka, obwód, układ scalony lub autonomiczna maszyna, która może powodować fizyczną manifestację jakiegoś znanego procesu w oparciu o zestaw predefiniowanych danych wejściowych, może w najbardziej podstawowym i ogólnym sensie być uważana za procesor o pewnym opisie.


+1 uważa, że ​​jest to miła, myśląca dalej odpowiedź. Chciałbym przeczytać o ogromnej paralalizacji GPU w kategoriach „1024 rdzenie wykonują tę samą instrukcję w tym samym czasie”, by być bardziej precyzyjnym w tym kierunku - ale tak czy inaczej lubię twoją odpowiedź :)
Stefan

1
Dzięki :-) jeśli jesteś zainteresowany ogromną równoległością procesorów graficznych, wypatruj darmowego asortymentu Ebook Syncfusions do „CUDA Succintly”, który powinien zostać wydany w niedalekiej przyszłości i można go bezpłatnie pobrać.
shawty

4

Chociaż dyski twarde i karty flash Media nie zawsze zawierały procesory, ich konstrukcja podlega dość prostej zasadzie: coś z procesorem musi wiedzieć, co jest konieczne do przechowywania i pobierania danych. Jeśli urządzenie magazynujące nie zawiera procesora, ale jest połączone z czymś, co robi, sprzęt musi umożliwiać przechowywanie i wyszukiwanie informacji przy użyciu dokładnej sekwencji kroków, jakich oczekuje podłączone urządzenie. Nawet jeśli przechowywanie i wyszukiwanie informacji w inny sposób może być bardziej wydajne, może nie istnieć żaden sposób, aby podłączony system mógł o tym wiedzieć.

Na przykład większość dysków twardych działa poprzez magnesowanie każdego kawałka dysku w jednym z dwóch kierunków. Jeśli „L” oznacza magnetyzację w jednym kierunku przez określony czas, a „R” oznacza magnetyzację w drugim przez ten sam czas, próbujemy zapisać dane bezpośrednio, używając „L” do przedstawienia „1” i „ R „reprezentujący„ 0 ”byłoby bardzo zawodne z powodu dwóch czynników:

  1. Długi ciąg jedynek lub zer reprezentowałby długi ciąg Ls lub Rs, który z kolei może być źle odczytany jako nieco dłuższy lub nieco krótszy ciąg. Na przykład, jeśli silnik napędowy pracuje o 5% wolniej, gdy dane są odczytywane niż wtedy, gdy zostały zapisane, to co napisano jako ciąg 20 Ls, może zostać źle odczytane jako ciąg 21 Ls.

  2. Dwa ciągi Ls oddzielone małą liczbą Rs mogą rozprzestrzenić się na ten mały ciąg Rs i „pożreć to”. Podobnie dwa ciągi R oddzielone małą liczbą Ls.

Z powodu tych czynników dyski zazwyczaj muszą zakodować informacje w seriach Ls i Rs, których długość mieści się w zakresie między maksimum a minimum; optymalne wartości maksymalnej i minimalnej długości mogą się różnić w zależności od jakości elektroniki, silnika, głowicy i mediów. Dodatkowo, ponieważ zewnętrzne ścieżki na dysku są dłuższe niż wewnętrzne ścieżki, mogą być w stanie przechowywać krótsze przebiegi Ls i Rs niż zewnętrzne ścieżki.

Aby informacja mogła być przechowywana na dysku, należy go podłączyć do czegoś, co wie, jak konwertować dane na ciągi Ls i Rs, które nośnik będzie w stanie pomieścić. Gdyby czynność konwersji Ls i Rs była odpowiedzialna za kontroler, który był oddzielny od samego napędu, wówczas dysk musiałby używać tylko formatów zrozumiałych dla każdego kontrolera, z którym mógłby być podłączony. Przeniesienie kontrolera do zespołu napędu łagodzi ten problem: jeśli każdy producent wysyła dysk z kontrolerem, który może zrozumieć, w jaki sposób przechowuje dane, nie będzie musiał się martwić, czy jakikolwiek inny kontroler zrozumie te dane, ponieważ informacje będą tylko przechowywane i pobierane przez sterownik zawarty w zespole napędu.


3

Jak ludzie już wyjaśnili, wiele urządzeń peryferyjnych / urządzeń zawsze miało procesory zapewniające ich podstawową funkcjonalność, a nawet stosunkowo podstawowe routery to w rzeczywistości małe serwery (najbardziej widocznym aspektem dla użytkownika końcowego byłyby internetowe kreatory konfiguracji, potrzebujesz Stos IP, serwer WWW itp. Oraz procesor do ich uruchomienia).

Ale powinieneś także zdawać sobie sprawę, że nowoczesny konsumencki NAS to coś więcej, zwykle możesz zalogować się do niego za pomocą przeglądarki internetowej i mieć dostęp do GUI z wieloma aplikacjami, systemem zarządzania pakietami oprogramowania, wieloma usługami do strumieniowego przesyłania plików multimedialnych, uruchamiaj automatyczne aktualizacje, czytaj inne urządzenia pamięci masowej podłączone do portu USB itp., więc prawie pełnoprawne środowisko pulpitu (choć część pracy nad graficznym interfejsem użytkownika jest oczywiście współdzielona z komputerem klienta).


2

Wszystkie dyski twarde zawsze miały procesory. Wszystkie routery zawsze miały procesory.

Twoja karta graficzna ma procesor. Zawsze ma. Twoja karta interfejsu sieciowego ma procesor. Zawsze ma. Twoja drukarka ma procesor, klawiaturę, mysz i jest włączana i włączana. Trudno byłoby mi wymyślić urządzenie podłączone do komputera, które NIE ma żadnego procesora.

Są teraz bardziej reklamowane, ponieważ ich wydajność jest bardziej krytyczna, ponieważ prosimy te urządzenia, aby robiły coraz więcej.


2

W elektronice komputerowej praktycznie nie ma urządzenia, które byłoby tak głupie, aby mogło pełnić swoją rolę bez procesora - przynajmniej właściwie wszystko musi kiedyś zakodować lub wyprowadzić sygnał. Jeśli ten sygnał się zmienia, muszą istnieć reguły jego zmiany, a procesor egzekwuje te reguły.

Dryfując nieco dalej od pytania, ale wzmacniając wszystko ma temat procesorów , w latach 80. byłem administratorem systemu kilku komputerów mainframe VAX / VMS.

Mieliśmy bardzo szybką (głośną) drukarkę taśmową, która prowadziła zestaw młotków uderzających w taśmę o dużej prędkości i dużej wytrzymałości na rozciąganie. Wydaje mi się, że była to drukarka 600 linii na minutę. To w pełni uformowane 132 linie znaków, a nie linia kropek.

Aby kontrolować czas uderzenia młotka w zespół, miał on prosty układ elektroniczny. Wymagało to innego programu w zależności od pasma - mogłeś mieć jeszcze szybsze pasma, które miały tylko wielkie litery (kilka zestawów ASCII na jednym paśmie).

Program dla tego procesora był przechowywany na kawałku taśmy papierowej, który również był odczytywany w ciągłej pętli, za każdym razem, gdy drukarka była włączana (tak, pozostawała uruchomiona przez większość czasu).

Dowiedziałem się dopiero, gdy mój operator entuzjastycznie wyczyścił drukarkę i znalazł taśmę papierową. Na szczęście zdał sobie sprawę, że to nie był zwykły kawałek papieru i nie próbował go usunąć.


2

Co to znaczy, że dyski twarde mają procesor na dysku twardym?

Oznacza to, że dysk ma mały procesor. Zasadniczo każde urządzenie z procesorem będzie miało oprogramowanie układowe.

Jak to działa i jakie ma korzyści?

Peryferia komputerowe są złożone. Na przykład czynność odczytu i zapisu danych na dyskietce jest dość zaangażowana. Musisz manipulować sprzętem, który porusza głowicą napędu, a następnie poszukać nagłówków sektorów, dowiedzieć się, czy dane przychodzące do linii odczytu mają sens zgodnie z protokołem itp.

Weźmy uproszczony przykład odczytu dyskietki: Prawdopodobnie najbardziej podstawowym sposobem komunikacji procesora ze światem zewnętrznym są porty I / O. Porty te są podłączone do linii na płycie głównej lub gniazdach - jeśli prąd przepływa przez linię, 1 jest widoczny dla procesora na porcie podczas odczytu, jeśli nie, to 0 jest widoczne dla procesora. Podobnie do zapisu, CPU może zapisać 1 do portu, aby prąd przepłynął przez linię, lub ustawić na 0, aby to zatrzymać.

Tak więc w przypadku stacji dyskietek powiedzmy, że masz linię podłączoną do głowicy odczytu / zapisu dyskietki. Aby odczytać dane, musisz poczekać na „odwrócenie strumienia” - w zasadzie przesunięcie energii magnetycznej, które spowodowałoby przejście linii od 0 do 1 lub od 1 do 0. Następnie musiałbyś śledzić, ile czasu do wykrywasz odwrócenie drugiego strumienia i robisz to, dopóki nie będziesz mieć wszystkich bitów w swoim sektorze, i połączysz zmierzone czasy trwania razem, aby odtworzyć dane. Nie dotyczy to nawet poruszania głowicą napędową lub czekania, aż silnik napędowy osiągnie normalną prędkość, aby twoje czasy nie były pomieszane, a także biorąc pod uwagę fakt, że nie ma dwóch identycznych silników, więc potrzebujesz być elastycznym w swoich pomiarach.

Mam nadzieję, że zabrzmiało to skomplikowanie, ponieważ tak jest.

Więc na pewno możesz zaprogramować do tego normalny procesor komputera, ale ponieważ jest on bardzo wrażliwy na czas, procesor twojego komputera nie może naprawdę zrobić wiele więcej podczas tego procesu. Stare komputery, które faktycznie zrobiły coś takiego w całym procesorze / całym oprogramowaniu, aby zaoszczędzić pieniądze, jak stary Apple IIe, nie mogły zrobić nic innego podczas odczytu / zapisu na dysk z tego powodu.

Poprzez umieszczenie małego procesora w napędzie i posiadanie kontrolera na płycie głównej, który jest tak naprawdę tylko magistralą komunikacyjną, twój procesor może uruchamiać inne programy, pobierać / wysyłać dane do napędu za pomocą magistrali i odciążyć większość fizycznego niskiego napięcia poziom pracy do samego napędu. Co więcej, wraz z poprawą technologii, programowanie niskiego poziomu do obsługi może pozostać w napędzie i nie ma potrzeby zmiany programów na komputerze, aby działały z różnymi wewnętrznymi formatami dysków.

Jeśli chodzi o routery, faktyczna funkcja routingu niskiego poziomu nie jest trudna do wykonania w sprzęcie, a wiele routerów na poziomie korporacyjnym właśnie to robi, ale takie rzeczy jak zapora ogniowa, przekierowywanie portów, kontrola dostępu oraz interfejs internetowy lub konsola są wystarczająco złożone, aby ich potrzebować procesor, aby to zrobić.

Jestem zaskoczony, ponieważ model maszyny von Neumann nie obejmuje procesorów do przechowywania

W modelu von Neumanna nic nie mówi, że żadne urządzenia peryferyjne nie mogą same być maszynami von Neumanna. To, co czyni urządzenie peryferyjne urządzeniem peryferyjnym, to fakt, że CPU może wysyłać mu polecenia za pośrednictwem magistrali lub innego mechanizmu I / O i uzyskiwać wyniki z powrotem.


2

---- Wszystkie odpowiedzi na tej stronie były za długie (przynajmniej tak mi się wydawało) - - - Więc chciałbym dodać jedną ...

  • Dyski mają procesory, ponieważ aktywność fizyczna polegająca na przechodzeniu z „Spotu” do „Spotu” na dysku, w odpowiedniej kolejności, jest trudnym zadaniem

  • Jeśli odczytujesz / zapisujesz dane w „złym” lub „wolnym” porządku, w oparciu o odległości i takie od siebie do każdego, możesz znacznie spowolnić transfer danych.

Najlepszym sposobem, aby to opisać, jest praca w sklepie, w której kazano ci zdobyć przedmioty z najdalszych zakątków, zanim zdobędziesz wszystko po drodze.

Sprytne polecenie polega na zebraniu wszystkiego na trasie = = W ten sposób AHCI współpracuje z NCQ.

NCQ potrzebuje bardziej inteligentnego przetwarzania, ponieważ lepiej planuje swoje poszukiwania.

Wcześniej to się nazywało PIO lub „Kontrolowane przez procesor… umm… I / O. Co było powolne, ponieważ 1. odległość między procesorem a dyskiem twardym jest ogromna pod względem komputerowym: Opóźnienie. Opóźnienie przy podejmowaniu decyzji = powolny transfer 2. CPU wykonuje (musi robić) inne rzeczy 3. To ... naprawdę najważniejsze rzeczy.

Komputer prosi o pliki Tu i Tutaj Dysk jest odpowiedzialny za „JAK”, aby dostać się do komputera.

... skończone


To, co opisujesz, jest znane jako algorytm windy . Kolejkowanie poleceń (takie jak NCQ SATA) pozwala CPU wysyłać wiele poleceń na dysk jako grupę, dzięki czemu dysk może zdecydować o najbardziej wydajnej kolejności ich realizacji. Bez kolejkowania poleceń procesor musi poczekać, aż dysk obsłuży każde żądanie, zanim wyśle ​​następne, więc napęd musi obsłużyć żądania w kolejności, w jakiej procesor je wysyła. Może to być mniej wydajne, ponieważ procesor nie zna wewnętrznego fizycznego układu dysku.
Wyzard

PIO to jednak coś innego. Jest to tryb, w którym procesor musi uruchomić kod, aby odebrać dane odczytywane przez dysk, co jest nieefektywne. Zasadniczo jest on zastępowany przez DMA , który pozwala napędowi przechowywać dane bezpośrednio w pamięci RAM, podczas gdy procesor działa na innych rzeczach.
Wyzard
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.