System-on-a-chip Spis treści Struktura | Projektowanie SoC | Wytwarzanie | Przykładowe układy SoC | Zobacz też | Uwagi | Menu nawigacyjne
Układy scalone
układ scalonysystemy wbudowaneARMSiPang.PoPRAMFlashBGARAMFlashCPULinuxWindows CEWindows Mobileang.mikroprocesormikrokontrolerDSPFPGAVHDLVerilogSystemVerilogSystemCOpenVera
System-on-a-chip
Przejdź do nawigacji
Przejdź do wyszukiwania
SoC (ang. System-on-a-chip) – mianem tym określa się układ scalony zawierający kompletny system elektroniczny, w tym układy cyfrowe, analogowe (także radiowe) oraz cyfrowo-analogowe. Poszczególne moduły tego systemu, ze względu na ich złożoność, pochodzą zwykle od różnych dostawców. Przykładowo jednostka centralna pochodzi od jednego dostawcy, a porty komunikacji szeregowej od innego. Typowym obszarem zastosowań SoC są systemy wbudowane, a najbardziej rozpowszechnionym przedstawicielem tego rozwiązania są systemy oparte na procesorach w architekturze ARM.
W przypadku, gdy niemożliwe jest zintegrowanie wszystkich obwodów na jednym podłożu półprzewodnikowym, poszczególne moduły wykonuje się na oddzielnych kryształach, a całość zamyka się w jednej obudowie. Rozwiązanie takie określane jest mianem SiP (ang. System-in-package), jest ono jednak mniej opłacalne ekonomicznie, szczególnie przy produkcji w dużych seriach.
Innym rozwiązaniem, stosowanym np. w telefonach komórkowych z „najwyższej półki”, jest PoP (ang. Package-on-package). Polega ono na zastosowaniu dwu układów scalonych, z których jeden jest montowany pod drugim. Zwykle czip znajdujący się pod spodem jest układem typu SoC, a na nim umieszczony jest układ pamięci RAM lub Flash o znacznie większym rozmiarze zwykle w obudowie typu BGA.
Największą różnicą, pomiędzy mikrokontrolerami a SoC, jest ilość pamięci jaką wymagają do swojej pracy i jaką obsługują te układy scalone. W przypadku mikrokontrolerów jest to zwykle poniżej 100 kB pamięci RAM, a ponadto cały system rzeczywiście jest zawarty w jednym tylko czipie. Natomiast SoC najczęściej potrzebują zewnętrznych układów pamięci RAM i Flash, a określenie System on chip jest, głównie w przypadku większych systemów, tylko przenośnią, która określa raczej ukierunkowanie prac projektowych niż rzeczywistą realizację. Ponadto SoC wyposażone są w CPU o stosunkowo dużej mocy obliczeniowej, pozwalającej uruchamiać systemy operacyjne takie jak Linux, Windows CE / Windows Mobile lub nawet ich odpowiedniki desktopowe, a także mogą obsługiwać bardziej wyspecjalizowane peryferia niż mikrokontrolery.
Spis treści
1 Struktura
2 Projektowanie SoC
3 Wytwarzanie
4 Przykładowe układy SoC
5 Zobacz też
6 Uwagi
Struktura |
Typowy układ typu SoC składa się z elementów takich jak:
- pojedynczy mikroprocesor, mikrokontroler lub rdzeń DSP;
- bloki pamięci złożone z modułów RAM, ROM, EEPROM lub FLASH;
- układy czasowo-licznikowe;
- kontrolery transmisji szeregowej lub równoległej (np. UART, SPI, USB, Ethernet, FireWire);
- przetworniki analogowo-cyfrowe lub cyfrowo-analogowe;
- obwody zarządzania zasilaniem.
Niektóre układy SoC mogą zawierać kilka jednostek obliczeniowych, a są one określane mianem MPSoC (ang. Multiprocessor System-on-Chip).
Projektowanie SoC |
Opracowywanie układów SoC przebiega równolegle w dwóch procesach: rozwijana jest baza sprzętowa oraz programowa integrująca mikroprocesor, mikrokontroler lub rdzeń DSP z peryferiami i interfejsami.
Kluczowym etapem podczas projektowania układów SoC jest emulacja bloków sprzętowych na platformie FPGA połączona z rozwijaniem sterowników programowych. Gdy działanie poszczególnych bloków takiego systemu jest już prawidłowe, to następnym krokiem jest zaprojektowanie struktury SoC w pojedynczym układzie scalonym i sprawdzenie poprawności jej funkcjonowania z użyciem języków takich jak: VHDL, Verilog, SystemVerilog, SystemC czy OpenVera.
Wytwarzanie |
Układy SoC produkowane są w różnych procesach technologicznych, w tym:
- FPGA
- Standard cell
Full custom.
SoC są na ogół mniej energochłonne, bardziej niezawodne, prostsze w montażu i tańsze przy masowej produkcji od rozwiązań opartych na wielu układach scalonych. Niemniej zaprojektowanie układu SoC wymaga zaawansowanych technologii i znacznego nakładu kosztów, jest więc na ogół nieopłacalne przy produkcji małoseryjnej.
Przykładowe układy SoC |
nVidia Tegra 2- procesor – ARM Cortex A9 (2 rdzenie po 1,0 GHz)
- grafika – GeForce ULP
Qualcomm Snapdragon- (różne wersje)
Samsung Hummingbird (Apple A4[a])- procesor – ARM Cortex A8 (1 rdzeń o taktowaniu 1,0 GHz)
- grafika – PowerVR SGX-540
Samsung Exynos 4210- procesor – ARM Cortex A9 (2 rdzenie po 1,2 GHz)
- grafika – Mali 400 MP4
Texas Instruments OMAP- (różne wersje)
Zobacz też |
- ASIC
Uwagi |
↑ w procesorze Apple A4 zastosowano grafikę SGX-535
Kategoria:
- Układy scalone
(window.RLQ=window.RLQ||[]).push(function()mw.config.set("wgPageParseReport":"limitreport":"cputime":"0.044","walltime":"0.062","ppvisitednodes":"value":99,"limit":1000000,"ppgeneratednodes":"value":0,"limit":1500000,"postexpandincludesize":"value":262,"limit":2097152,"templateargumentsize":"value":0,"limit":2097152,"expansiondepth":"value":3,"limit":40,"expensivefunctioncount":"value":0,"limit":500,"unstrip-depth":"value":0,"limit":20,"unstrip-size":"value":392,"limit":5000000,"entityaccesscount":"value":0,"limit":400,"timingprofile":["100.00% 28.565 1 Szablon:Uwagi","100.00% 28.565 1 -total"],"scribunto":"limitreport-timeusage":"value":"0.006","limit":"10.000","limitreport-memusage":"value":559225,"limit":52428800,"cachereport":"origin":"mw1326","timestamp":"20190406203730","ttl":2592000,"transientcontent":false););"@context":"https://schema.org","@type":"Article","name":"System-on-a-chip","url":"https://pl.wikipedia.org/wiki/System-on-a-chip","sameAs":"http://www.wikidata.org/entity/Q610398","mainEntity":"http://www.wikidata.org/entity/Q610398","author":"@type":"Organization","name":"Contributors to Wikimedia projects","publisher":"@type":"Organization","name":"Wikimedia Foundation, Inc.","logo":"@type":"ImageObject","url":"https://www.wikimedia.org/static/images/wmf-hor-googpub.png","datePublished":"2007-10-18T15:05:41Z","image":"https://upload.wikimedia.org/wikipedia/commons/8/85/ARMSoCBlockDiagram.svg"(window.RLQ=window.RLQ||[]).push(function()mw.config.set("wgBackendResponseTime":163,"wgHostname":"mw1331"););