Raspberry Pi

Raspberry Pi kreditu-txartelen tamaina duen eta zirkuitu-plaka bakarreko ordenagailu pertsonalen serie bat da. Raspberry Pi Foundationek garatzen ditu ordenagailuok Erresuma Batuan, eskoletan konputazio zientzien irakaskuntza sustatzeko asmoarekin.

Elektronika proiektuetan erabili daiteke, eta mahaigaineko ordenagailuek egiten dituzten lan gehienetarako, kalkulu-orriak, testu prozesua eta bideo-jokoak adibidez. Bereizmen handiko bideoa erreproduzitzeko ere gai da.

Raspberry Pi lehen belaunaldia Broadcomen BCM2835 txip bakarreko sisteman (SoC) oinarritzen da. ARM1176JZF-S 700 MHzeko prozesadorea dauka, VideoCore IV GPUa, eta hasieran 256 MBeko RAM memoria zeukan, geroago 512 MBera handitu zelarik (B eta B+ modeloetan).
USB bitartez konektatu ahal bazaio ere, Raspberry Piak ez dauka disko gogorrik. Sistema abiarazteko eta memoria iraunkor bezala SD txartela (A eta B modeloetan) edo MicroSD txartela (A+ eta B+ modeloetan) erabiltzen du.

B modeloa 2012ko otsailean jarri zen salgai,

eta A modeloa -funtzionalitate batzuk prezioaren eta energi beharrizanen alde sakrifikatzen dituena- 2013ko otsailean.

Raspberry Pi fundazioak ARM prozesagailuentzat egokitutako Linux banaketa desberdinak jartzen ditu eskuragarri deskargatzeko. Hauen artean aipagarria Raspbian banaketa, Debianen oinarritua eta Raspberry Piarentzat optimizatua.

Beste aukera bat NOOBS irudia deskargatzea edo aldez aurretik instalatua duen txartela erostea da. NOOBS -New Out of Box Software- Linuxen hasiberrientzako egokitutako irudi bat da, Raspberry Pia lehenengoz abiarazterakoan menu bat aurkezten du erabiltzaileak banaketa aukeratu eta era errazean instalatzeko.

Programaziorako, Raspberry Pi Fundazioak Python gomendatzen du ikasleentzat. Hala ere, ARM prozesagailuetan konpilatu daitekeen edozein programazio-lengoaia erabili daiteke. C, C++, Java, Scratch, Perl eta Rubyrentzat euskarriak ere modu lehenetsian daude instalatuta Raspberry Pian.

2014an Fundazioak Compute Module modeloa merkaturatu zuen. Compute Modulea sistema txertatuetan osagai bezala erabiltzeko pentsatua dago. BCM8235 txipa dauka oinarri bezala, 512MBeko RAM memoriarekin eta eMMC flash txip batekin.

2015eko otsailean bigarren belaunaldia, Raspberry Pi 2a merkaturatu zen. Hasieran B modeloa bakarrik dago eskuragarri. Broadcom BCM2836 txip bakarreko sisteman oinarritzen da, lau-nukleoko ARM Cortex-A7 CPUarekin eta VideoCore IV nukleo biko GPUarekin; RAM memoria 1 GBkoa da eta beste espezifikazioak lehenengo belaunaldiko B+ modeloaren antzerakoak dira. Salneurriei dagokienez, Raspberry Pi 2ak aurreko belaunaldiko B modeloaren salneurria mantentzen du, 35 $, eta A modeloak 25 $etan jarraitzen du salgai.

2015eko otsailaren 18an bost milioi Raspberry Pi saldu direla adierazi zen Raspberry webgunean.

Hardwarea

Modeloen arteko desberdintasunak 

B modeloa funtzionalitate gehien dituena da; A modeloak funtzionalitate batzuk sakrifikatzen ditu, prezioaren eta energi beharrizanen alde.
 RAM Memoria: A modeloak eta B rev1 modeloak 256 MB dauzkate, B rev2 modeloak 512 MB, eta bigarren belaunaldiko B modeloak 1 GB.
 Memoria iraunkorra: A eta B modeloetan SD txartela; A+, B+ eta bigarren belaunaldiko B modeloetan MicroSD txartela.
 Konektibitatea: B modeloak 3 atazadun USB hub bat dauka, hauetako ataza bat USB-Ethernet egokigailu bati konektatuta dagoelarik -1. diagramako eskuineko 3 blokeak, izatez txip batean integratuak-. Honela, B modeloak 2 USB konektore eta RJ45 Ethernet konektorea ditu; A eta A+ modeloek USB konektore bat bakarrik daukate, zuzenean SoCari konektatuta. Ethernet konexioa erabiltzaileak USB-Ethernet egokigailu bat konektatuta lor daiteke; B+ eta bigarren belaunaldiko B modeloek 5 atazadun USB huba daukan txipa dute, lau konektore USB eta RJ45 Ethernet konektorearekin; WiFi konexioa posiblea da modelo bietan USB Wifi egokigailuen bitartez.

Prozesadorea 
Lehen belaunaldiko Raspberry Pian erabilitako txip bakarreko sistema (SoC) gutxi gorabehera iPhone 3G/3GS smartphoneetan erabilitakoaren baliokidea da. Raspberry Pia Broadcom BCM2835 txip bakarreko sisteman oinarritzen da, hau 700 MHzeko ARM1176JZF-S prozesagailuaz, VideoCore IV GPUaz, eta RAM memoriaz osatzen delarik. Lehen mailako 16 KBeko cachea eta bigarren mailako 128 KBeko cachea dauzka. Bigarren mailako cachea nagusiki GPUak erabiltzen du. SoC-a RAM memoriaren txiparen azpian txertatua dago, beraz aldamena bakarrik gelditzen da begibistan.

Bigarren belaunaldiko Raspberry Pia Broadcom BCM2836 txip bakarreko sisteman oinarritzen da. Hau 900 MHzeko lau nukleoko ARM Cortex-A7 prozesagailuaz, VideoCore IV GPUaz, eta RAM memoriaz osatzen da.

Errendimendua 
Lehenetsitako 700 MHztan operatzerakoan, lehen belaunaldiko Raspberry Piak 0.041 GFLOPSeko errendimendua ematen zuen. PUZari dagokionez errendimendua 1997-1999 urteetako 300 MHztako Pentium IIarenaren antzerakoa da. GPUak 1 Gpixel/s edo 1.5 Gtexel/s-ko prozesu grafikoa, edo 24 GFLOPSeko konputazio orokorreko errendimendua ematen du. Raspberry Piaren kapazitate grafikoa 2001eko Xbox kontsolaren baliokidea da.

LINPACK nodo bakarreko konputazio benchmarkak batezbesteko 0.065 GFLOPSeko emaitza ematen du doitasun sinpleko koma higikorreko errendimenduan, eta batezbesteko 0.041 GFLOPSeko emaitza doitasun bikoitzeko koma higikorreko errendimenduan, Raspberry P B modelo bakarrarentzat. "Iridis-pi" izendun 64 Rasperry Pi Bz osatutako cluster batek 1.14 GFLOPS eko emaitza eman zuen.

2. belaunaldiko Raspberry Pia askoz ahaltsuagoa da, GPU berbera izanik.

Overclocking 
Lehen belaunaldiko Raspberry Piaren txipak 700 MHz-etan egiten zuen lan modu lehenetsi bezala, eta overclockingik egiten ez zen bitartean ez zen bero trukagailurik edo hotzitzeko medio berezirik behar izateko lain berotzen. Bigarren belaunaldiak 900 MHztan egiten du lan, eta honek ere ez du behar bero trukagailurik edo hozteko medio berezirik overclockingik egiten ez zen bitartean. Overclockingak SoC-a ohikoa baino gehiago berotu dezake.

Raspberry Pi txip gehienak 800 MHz-tara eta batzuk 1000 MHz-tik gora jazo zitezkeen. Bigarren belaunaldikoak antzera jazo daitezkeela dioten kontaketak daude, muturreko kasuetan 1500 MHz-etara ere (tenperatura seguritateak eta tentsio mugak desaktibatuta). Raspbian Linux banaketan overcloking aukerak sudo raspi-config" komandoarekin hautatu daitezke Raspberry Piaren bermea baliogabetu gabe. Kasu hauetan Raspberry Piak automatikoki jaisten du overclockinga txipa 85 °C-tara heltzen bada, baina posible da tentsio eta tenperatura gainditzeen arau automatikoak desaktibatzea (kasu honetan Raspberryaren bermea baliogabetu egiten da). Hau egin nahi bada, tamaina egokiko bero trukagailu bat jartzea komeni da txipa 85 °C-tik gora ez berotzeko.

28-10-2012-wheezy-Raspbian firmware bertsiotik aurrera bost overclock ("turbo") aukera daude SoC-aren errendimendua hobetzeko, Raspberry Piaren bizitza denbora laburtu gabe. Txiparen tenperatura eta PUZaren lan-karga monitorizaturik daude, eta hauen arabera erloju abiadurak eta nukleoaren lan-tentsioa dinamikoki aldatzen dira: PUZean lan eskari txikia badago edo hau oso bero badago errendimendua automatikoki jaisten da, baina PUZak lan-karga handia badu eta tenperatura onargarria bada abiadurak jaso egingo dira, aukeratu den "turbo" moduaren maximora heldu arte. Bost aukerak hauek dira:

 none; 700 MHz ARM, 250 MHz core, 400 MHz SDRAM, 0 overvolt,
 modest; 800 MHz ARM, 250 MHz core, 400 MHz SDRAM, 0 overvolt,
 medium; 900 MHz ARM, 250 MHz core, 450 MHz SDRAM, 2 overvolt,
 high; 950 MHz ARM, 250 MHz core, 450 MHz SDRAM, 6 overvolt,
 turbo; 1000 MHz ARM, 500 MHz core, 600 MHz SDRAM, 6 overvolt.

"Turbo" aukera altuenean SDRAM erlojua originalki 500 MHz-era jartzen zen, baina geroago 600 MHz-era aldatu zen, 500 MHz-etan batzutan SD txartelean erroreak gertatzen zirelako. Aldi berean, high moduan nukleoaren erloju abiadura 450etik 250 MHz-era jaitsi zen, eta medium moduan 333tik 250 MHz-era.

BIOS 
Raspberry Piak ez dauka ordenagailu pertsonal konbentzionaletan aurkitu daitekeen BIOSa. Tradizionalki BIOSean konfiguratu eta gordetzen diren parametroak config.txt izeneko fitxategi batean gordetzen dira. Fitxategi hau GPUak irakurtzen du ARM PUZa (eta Linux) abiarazi aurretik. SD -edo MicroSD- txarteleko lehen partizioan -boot partizioan- egon behar da.

RAM memoria 
Raspberry Pian RAM memoriaren erabilpena PUZaren eta GPUaren artean banatzen da, bakoitzari ematen zaion kopurua konfigurazioaren araberakoa izanik.

A modeloetan eta lehenengo 256 MBeko B modeloetan hiru banaketa posible zeuden: banaketa lehenetsia 192 MBekoa PUZarentzat eta 64MB GPUarentzat zen. Hau 1080p bideoa deskodetzeko gai izan beharko litzake, edo 3D sinplea, baina ziurrenik biak batera ez; beste aukera bat 224 MB Linuxentzako eta 32MB GPUarentzako, ziurrenik edozein bideo edo 3Drekin huts egingo lukeena; eta azkenik 128 MB PUZarentzat eta 128 MB GPUarentzat, 3D pisutsua eta bideoa deskodetzeko (adibidez XBMCn).

512 MBeko B modeloarentzat hasiera baten hiru banaketa estandar atera ziren: 256 MB PUZ / 256 MB GPU, 384 MB PUZ / 128 MB GPU eta 496 MB PUZ / 16 MB GPU. Baina astebete inguru geroago Raspberry Pi Fundazioak aukeratutako RAM memoria banaketa dinamikoki izendatu zezakeen bertsioa atera zuen. config.txt fitxategian ezartzen denaren arabera, GPUari 16 MB eta 256 MB arteko balioa ezarri al zaio, 8 MBeko pausuetan, aurreko banaketak zaharkituak gelditu zirelarik.

Bigarren belaunaldiko Raspberry Piak 1 GBeko RAM memoria kopurua dauka. PUZ eta GPUaren arteko memoria banaketa config.txt fitxategian ezartzen da. Modu lehenetsian 64 MB ematen dizkio GPUari, 16 eta 944 arteko balioa eman ahal zaiolarik.

Sare konexioa 
A eta A+ modeloek RJ45 Ethernet atazarik ez daukaten arren, sare lokalera erabiltzaileak gehitutako USB-Ethernet egokigailu bidez edo WiFi egokigailu bidez konektatu daitezke. B eta B+ modeloetan Ethernet ataza txertaturiko USB-Ethernet egokigailu bidez dago eskuragarri.

Periferikoak 
USB teklatu eta sagu generikoak Raspberry Piarekin bateragarriak dira.

Bideoa 
Bideo kontrolagailuak telebistako bereizmen estandar modernoak atera ditzake, HD eta Full HD bezalakoak, monitore bereizmen desberdinak, eta izpi katodikozko hodi (CRT) telebista zaharretako bereizmen estandarrak.

HDMI irteeraren bitartez, bereizmen hauek atera ditzake: 640×350 EGA; 640×480 VGA; 800×600 SVGA; 1024×768 XGA; 1280×720 720p HDTV; 1280×768 WXGA aldaera; 1280×800 WXGA aldaera; 1280×1024 SXGA; 1366×768 WXGA aldaera; 1400×1050 SXGA+; 1600×1200 UXGA; 1680×1050 WXGA+; 1920×1080 1080p HDTV; 1920×1200 WUXGA.

Irteera analogikoaren bitartez (RCA konektorea), 576i eta 480i bideo seinale konposatuak sor ditzake, PAL-B/G/D/K/I, PAL-M, PAL-N, NTSC eta NTSC-J formatuetan.

Denbora errealeko erlojua 
Raspberry Piak ez dauka denbora errealeko erlojurik, eta honen ondorioz ezin dezake orduaren jarraipena egin elikadurarik gabe dagoenean. Aukera moduan, NTP protokoloaren bidez hartu daiteke ordua, edo erabiltzaileak ezarri dezake sistema abiarazterakoan.

Espezifikazioak

Konektoreak

GPIO konektorea 
Raspberry Pi A+, B+ eta bigarren belaunaldiko B modeloen GPIO pinen antolamendua (J8 konektorea).

A eta B modeloek lehen 26 pinak bakarrik dauzkate.

B rev2 modeloak 8 pineko panel bat dauka (P6) beste 4 GPIO konexiorekin.

A eta B modeloek ACT egoera LEDera atzipena daukate GPIO 16aren bitartez. A+ eta B+ modeloek ACT egoera LEDera atzipena daukate GPIO 47aren bitartez, eta energi-iturriaren egoera LEDera GPIO 35aren bitartez.

Osagarriak 
 Kamera – 2013ko maiatzaren 14an, Raspberry Pi fundazioak eta RS Components & Premier Farnell/Element 14 banatzaileek Raspberry Pi camera board kamera merkaturatu zuten, berau erabiltzeko firmware eguneraketa batekin batera. Kamera txartela kable lau malgu -FFC, flexible flat cable- batekin batera saltzen da, berau ethernet eta HDMI ataken bitartean dagoen Camera interface-CSI konektorera konektatzen delarik. Raspbianen, kamera erabiltzeko azken firmware bertsioa instalatu/eguneratu, eta Raspi-config exekutatuz kamera aukera hautatu behar da. Kamera moduluaren salneurria, 2013ko irailean, 20 €koa zen. Kamerak 1080p, 720p eta 640x480p bideoa sortu dezake. Moduluaren neurriak 25 x 20 x 9 mm.-koak dira.

 Kamera infragorria– 2013ko urria, fundazioak Pi NoIR infragorri iragazkia duen kamera ekoizten hasiko zela adierazi zuen.

 Gertboard – Raspberry Pi Fundazioak onetsitako plaka, irakaskuntzarako diseinatua. Hedapen plaka hau Raspberry Piaren GPIO konektorera konektatzen da, eta LED, switch, seinale analogiko, sentsore eta beste gailu batzuekin komunikatu edo hauek kontrolatzeko balio du. Arduinoarekin bateragarria den kontrolagailua ere badu aukeran.

 HAT (Hardware Attached on Top, gainean erantsitako hardwarea) hedapen txartelak – Arduino hedapen plaketan inspiratuta, B+ modeloarekin batera, Raspberry Pi fundazioak HAT hedapen plakak eta berauentzat interfazea sortu zituen. HAT hedapen plakak B+ modeloarekin erabiltzeko pentsatuak daude. HAT plaka bakoitzak EEPROM txiki bat dauka (tipikoki CAT24C32WI-GT3 bat) plakaren datu garrantzitsuekin,  honela Raspberry Piaren sistema eragileak HATaren datu teknikoak hartu ditzake berau erabiltzeko.

Softwarea

Sistema eragileak 
Raspberry Piak nagusiki Linux nukleoan oinarritutako sistema eragileak erabiltzen ditu. Raspberry Pi fundazioak Raspbian gomendatzen du txartelarekin hasteko, Debianen oinarritutako eta Raspberry Piaren hardwarearentzat egokitutako Linux banaketa, lehen aldiz 2012ko uztailean argitaratu zutena.

Lehen belaunaldiko Raspberry Pien bihotzean dagoen ARM11 txipa ARM arkitekturaren 6 bertsioan oinarritzen da. Belaunaldi honen garaian erabilienak diren Linux banaketa batzuren bertsio berrienek, tartean Ubuntuk, ez dute ARM11 txiparentzat euskarririk, eta beraz ezin dira lehen belaunaldiko Raspberryetan instalatu.

Raspberry Pi originalean ezin da Windows exekutatu,
 bigarren belaunaldiko Raspberry Pia Windows 10 exekutatzeko gai izango bada ere.

Raspberry Pi 2aren ARM Cortex-A7 txipa ARM arkitekturaren 7 bertsioan oinarritzen da. Irteerako momentuan Ubuntu Snappy Core, Raspbian, OpenELEC eta RISC OS bakarrik exekutatu ditzake.

NOOBS 
Raspberry Piaren instalazio kudeatzailea NOOBS -New Out of Box Software- da. 2013ko ekainaren 3an argitaratu zuen Raspberry Pi fundazioak, hasiberriei instalazioa errazteko. Raspberry Piren webgunetik deskargatu eta irudia gutxienez 4 GB dituen SD (edo microSD) txartelean idazten da. Beste aukera bat irudia aldez aurretik idatzia duen txartela erostea da.

NOOBS kudeatzaileak menu bat aurkezten du, sistema eragile zerrenda batekin. Hautatutako sistema eragilea txartelari libre gelditzen zaion espazioan instalatzen du automatikoki. Kudeatzailea ez da ezabatzen, era honetan nahi denean sistema eragilea berrinstalatu edo beste bat instalatu daitekeelarik.

Aukerak Raspbian, Arch Linux ARM eta Pidora erabilera orokorreko banaketak, OpenELEC eta RaspBMC, XBMC -orain Kido- mediacenter Linux banaketak, eta RISC OS 5 sistema eragilea dira.

Sistema eragile zerrenda Raspberry Pian 
 Arch Linux ARM: Arch Linuxen ARM 6 bertsioarentzat moldaketa.
 OpenELEC: Linux mediacentera. ARM11 moldaketa. 
 Pidora (Rasperry PI Fedora Remix).
 Raspbian (Raspberry Piarentzat gomendatua)  Mantenua Raspberry Pi fundazioarekiko independientea da. Originalki ARMv7 arkitekturarako Debian 7 'Wheezy' moldaketan oinarritua, ARMv6 arktitekturarako konpilatua.
 RaspBMC: XBMC Linux mediacentera.
 RISC OS. 
Beste sistema eragile batzuk:
 Xbian: Kodi -lehenago XBMC- kode irekiko mediacentera erabiltzen du.
 openSUSE. ARMv6 bertsioa.
 SARPi: (Slackware ARM on Raspberry Pi).
 FreeBSD. 
 NetBSD. ARMv6 bertsioa.
 Moebius: Debianen oinarritua, Raspbian gordailua erabiltzen du, eta 128 MBko SD txartelean sartzen da.
 OpenWrt: Raspberry Piarentzeko bertsioa.
 Kali Linux: Debianen oinarrituta, segurtasun informatikoa aztertzeko egokitutako banaketa.

Sistema eragile zerrenda Raspberry Pi 2an 
 Arch Linux ARM: Arch Linuxen ARM 7 bertsioarentzat moldaketa.
 OpenELEC: Linux mediacentera. ARMv7 moldaketa. 
 OSMC: Linux mediacentera.
 Pidora (Rasperry PI Fedora Remix). 
 Raspbian (Raspberry Piarentzat gomendatua) 
 RISC OS. 
 Ubuntu 14.04 LTS (Trusty Tahr)
Beste sistema eragile batzuk:
 Xbian:
 openSUSE. ARMv7 bertsioa.
 SARPi 2: (Slackware ARM on Raspberry Pi 2).
 NetBSD. ARMv6 bertsioa, Raspberry Pi 2arentzat egokitu gabe.
 OpenWrt: Raspberry Pi 2arentzeko bertsioa.
 Kali Linux: Debianen oinarrituta, segurtasun informatikoa aztertzeko egokitutako banaketa.
 Raspand: Android 5.1 Lollypop-en Raspberryarentzako moldaketa.(Deskargatzeko 9$ ordaindu behar dira)
 Hypriot Docker. Docker, aplikazio banatuak sortu eta exekutatzeko plataforma irekiaren ARM bertsioa.

Kontrolatzaile APIak 

Raspberry Piak VideoCore IV GPUa erabili ahal izateko, "blob bitar" -kode irekiko nukleoan txertatutako software jabeduna- bat erabiltzen du, zeina SD txarteletik GPUra Raspberrya abiarazterakoan kargatzen den, eta honetaz gain, hasieran jabeduna zen software gehigarria. Kontrolatzailearen parte hau geroago askatu egin zen, baina kontrolatzailearen lan gehiena kode itxiko GPU kodea erabiliz egiten da. Aplikazioek kode itxiko OpenMax, OpenGL ES edo OpenVG liburutegiak deitzen dituzte eta hauek Linux nukleoko kode irekiko kontrolatzailea deitzen dute, zeinak kode itxiko VideoCore IV GPU kodea deitzen duen. Nukleoko kontrolatzailearen APIa kode itxiko liburutegi hauntzako aproposa da. Bideo aplikazioek OpenMAX erabiltzen dute, 3d aplikazioek OpenGL ES eta 2d grafikoek OpenVG. OpenGL ES eta OpenVGk EGL eabiltzen dute, eta azken honek kode irekiko nukleoko kontrolatzailea.

Hirugarrenen software aplikazioak 

 Mathematica – 2013ko azarako 21etik, software jabedun hau osorik instalatuta dator Raspbian banaketan, dohainik. 2014ko abuztuaren 1ean instalatzen den bertsioa Mathematica 10 da.
 Minecraft – 2013ko otsailaren 11n jaurtia; Raspberry Piarentzako bertsioa, erabiltzaileak jolaseko mundua kode bitartez aldatu dezake.

Erreferentziak

Ikus, gainera 
  Comparison of single-board computers

Kanpo estekak 
  Raspberry Pi webgunea
  The MagPi, Raspberry Piari buruzko aldizkari ofiziala. Pdf formatuan deskargatzeko eskuragarri (CC BY-NC-SA lizentziarekin)
  Raspberry Pi ataria, Embedded Linux Wikian.
  Raspbian webgunea.

Bibliografia 
Artikulu hau ingelesezko Wikipediako artikuluan oinarritzen da, 2015eko martxoan itzulia.

Hardwarea
Ordenagailuak