內建高速CPU與Linux!
Arduino的開發環境搭配Linux的程式等於無限大的應用方式
本文摘錄自【ROBOCON】機器人雜誌
文/坪井 義浩 譯/陳曉峰
文/坪井 義浩 譯/陳曉峰
這裡想為大家介紹英特爾公司發售的「Galileo(伽利略)開發板」。去年10月在義大利舉辦的Maker Faire Rome首日,英特爾發表了這款Arduino認證的開發板。因為有Arduino的認證,因此可以使用專為Galileo打造的Arduino開發環境設計腳本程式碼(Sketch)來進行運作。另外,電路板上也設計有可以安裝Arduino擴充板的插槽。這款Galileo開發板內建英特爾的Quark SoC X1000處理器。X1000與Pentium的指令集架構(Instruction Set Architecture,ISA)相容,是一款最高時脈達400MHz的32位元處理器。Pentium則是英特爾在1990年代中期左右推出的一款電腦CPU,當時,該CPU的時脈為120MHz左右。
與一般的英特爾CPU不同,X1000屬於SoC(System-on-a-chip)的設計。所謂的SoC是一種在一個晶片上,將處理器以外的控制器和記憶體等周邊電路全都整合在一起的系統整合晶片。例如:在這款X1000中,包括記憶體控制器在內,USB、Ethernet、GPIO、I2C、SPI等各種控制器都直接整合在晶片上。這些相關的周邊裝置與IBM PC/AT相容,也有配置I/O Map及中斷(Interrupt)。也就是說,Quark Soc X1000的結構是將過去個人電腦大部分的功能全都整合在一個晶片上。
聽到這款開發板是採用英特爾的CPU,又是與PC/AT相容的周邊裝置之後,或許就會期待可以使用Windows或者MS-DOS吧,但這款開發板和當時的PC/AT相容電腦不同,並沒有內建BIOS,是使用UEFI來開機的。就如同剛才所說,Galileo 是採用Quark Soc X1000的32位元處理器和UEFI,不過能夠支援UEFI開機的只有64位元版本的Windows。因此,必須自己準備BIOS才能以Galileo來啟動Windows和MS-DOS。
在這款Galileo上SPI的快閃記憶體中已經寫入了嵌入「yocto project」的嵌入式客制化Linux系統為基礎設計。快閃記憶體的容量小,因此掛載這套作業系統的映像檔的話,就會有很多功能遭到限制,不過,英特爾還有提供其他可以載入到microSD的映像檔,如此一來,就可以使用更多的Linux功能。
另外,英特爾還開放了開發板支援套裝軟體(Board Support Package,BSP)供大家下載,自行建置Linux系統也變得更加容易。Galileo內搭載了256MB的記憶體,該記憶體是以DDR3 SDRAM進行連接。此外,在Galileo電路板的下方也具備了PCIe Mini Card的插槽,這種可以在筆電上使用的PCIe Mini Card在市面上比較容易買到。因為採用Linux系統來運作,因此要讓Galileo可以使用PCIe Mini Card應該不會太過困難。
此外,PCIe MiniCard插槽上還有USB的訊號線。雖然Galileo上有USB Host(主端)連接埠,不過這是屬於Micro-A插槽。如果試著使用能將PCIe Mini Card插槽轉換成USB Type A插槽的電路板的話,PCIe Mini Card插槽就可以做為USB的連接埠來使用。試著插入USB的快閃記憶體之後,能夠被Linux讀取,因此也可將PCIe Mini Card插槽當作驅動裝置使用。
與一般的英特爾CPU不同,X1000屬於SoC(System-on-a-chip)的設計。所謂的SoC是一種在一個晶片上,將處理器以外的控制器和記憶體等周邊電路全都整合在一起的系統整合晶片。例如:在這款X1000中,包括記憶體控制器在內,USB、Ethernet、GPIO、I2C、SPI等各種控制器都直接整合在晶片上。這些相關的周邊裝置與IBM PC/AT相容,也有配置I/O Map及中斷(Interrupt)。也就是說,Quark Soc X1000的結構是將過去個人電腦大部分的功能全都整合在一個晶片上。
聽到這款開發板是採用英特爾的CPU,又是與PC/AT相容的周邊裝置之後,或許就會期待可以使用Windows或者MS-DOS吧,但這款開發板和當時的PC/AT相容電腦不同,並沒有內建BIOS,是使用UEFI來開機的。就如同剛才所說,Galileo 是採用Quark Soc X1000的32位元處理器和UEFI,不過能夠支援UEFI開機的只有64位元版本的Windows。因此,必須自己準備BIOS才能以Galileo來啟動Windows和MS-DOS。
在這款Galileo上SPI的快閃記憶體中已經寫入了嵌入「yocto project」的嵌入式客制化Linux系統為基礎設計。快閃記憶體的容量小,因此掛載這套作業系統的映像檔的話,就會有很多功能遭到限制,不過,英特爾還有提供其他可以載入到microSD的映像檔,如此一來,就可以使用更多的Linux功能。
另外,英特爾還開放了開發板支援套裝軟體(Board Support Package,BSP)供大家下載,自行建置Linux系統也變得更加容易。Galileo內搭載了256MB的記憶體,該記憶體是以DDR3 SDRAM進行連接。此外,在Galileo電路板的下方也具備了PCIe Mini Card的插槽,這種可以在筆電上使用的PCIe Mini Card在市面上比較容易買到。因為採用Linux系統來運作,因此要讓Galileo可以使用PCIe Mini Card應該不會太過困難。
此外,PCIe MiniCard插槽上還有USB的訊號線。雖然Galileo上有USB Host(主端)連接埠,不過這是屬於Micro-A插槽。如果試著使用能將PCIe Mini Card插槽轉換成USB Type A插槽的電路板的話,PCIe Mini Card插槽就可以做為USB的連接埠來使用。試著插入USB的快閃記憶體之後,能夠被Linux讀取,因此也可將PCIe Mini Card插槽當作驅動裝置使用。
更多精采內容請見《ROBOCON》機器人雜誌