ARM和X86嵌入式工控機(jī)比較.
ARM和X86嵌入式工控機(jī)比較分析 CISC的典型代表是各種X86的CPU,ARM則是RISC最常見(jiàn)的處 理器。
關(guān)于ARM和X86架構(gòu)上的比較也就代表了CISC和RISC的發(fā)展趨勢(shì)。RISC架構(gòu)系統(tǒng)在嵌入式領(lǐng)域廣泛應(yīng)用(比X86有更大的出貨量)比較重要的有幾個(gè)原因:
(1)因?yàn)橛谐墒斓奶幚砥鱅P可以直接加以利用,可以減少芯片 的研發(fā)周期、降低開(kāi)發(fā)難度,開(kāi)發(fā)周期比較短,芯片做得針對(duì)性很強(qiáng);
(2)功耗低,嵌入式系統(tǒng)大多都是在很多特定場(chǎng)合使用的,譬 如手持設(shè)備。 在有限的空間里面,散熱也是個(gè)大問(wèn)題。X86的CPU需要南橋和 北橋來(lái)擴(kuò)展內(nèi)存控制器、PCI控制器、AGP控制器、ATA控制器、USB控制器等,這樣系統(tǒng)結(jié)構(gòu)復(fù)雜,但是擴(kuò)展性很好,不適合專(zhuān)用設(shè)備,但是很適合通用設(shè)備,因此在PC和服務(wù)器中得到了廣泛的應(yīng)用。 ARM處理器更接近于SOC(System on Chip),一顆芯片上集成一個(gè) 系統(tǒng),事實(shí)上正是如此,譬如專(zhuān)門(mén)的手持設(shè)備的ARM,就是一個(gè)ARM Core,然后集成SDRAM Controller、FLASH Controller、LCD Controller和Uart等,然后集成以太網(wǎng)MAC或者專(zhuān)門(mén)的Network Engine,甚至還會(huì)集成專(zhuān)門(mén)的AC97、MMX等迎合不同的應(yīng)用需要。采用 ARM 處理器的結(jié)果就是,在板級(jí)的時(shí)候,硬件結(jié)構(gòu)非常簡(jiǎn)單,可以簡(jiǎn)單的把ARM平臺(tái)的嵌入式系統(tǒng)認(rèn)為是:CPU + SDRAM + Flash + I/O + Power Supply。 軟件上,X86系統(tǒng)復(fù)位以后,首先運(yùn)行的是BIOS,根據(jù)硬件的 具體設(shè)置對(duì)I/O、 IRQ、地址空間等進(jìn)行初步的分配管理;接著是 boot manager,譬如 NT Loader 或者Linux,它會(huì)對(duì)CPU系統(tǒng)進(jìn)行進(jìn)一步的設(shè)置,然后 Load OS kernel &root filesystem,把硬件的控制權(quán)交給OS。 對(duì)于ARM嵌入式的系統(tǒng),基本上過(guò)程存在一些差異,在Flash的某個(gè)特定地址存儲(chǔ)了boot loader,這里的boot loader相當(dāng)于集成了X86系統(tǒng)的BIOS + Boot Manager的功能,復(fù)位啟動(dòng)boot loader, 然后加載load Linux kernel & root filesystem。
比較ARM和X86這兩個(gè)架構(gòu)之間的差異包括如下幾點(diǎn):
(1)ARM處理器本身集成了豐富的常用控制器接口;X86沒(méi)有提供控制器接口,通過(guò)南北橋擴(kuò)展外設(shè)。ARM平臺(tái)的架構(gòu)比較簡(jiǎn)單,不需要太多的硬件電路,X86系統(tǒng)則比較復(fù)雜。
(2)ARM處理器的外設(shè)空間是統(tǒng)一制定的,由存儲(chǔ)器控制器進(jìn)行管理;X86的外設(shè)空間由Mem和I/O這兩套獨(dú)立的空間構(gòu)成,并分別由不同的控制器控制,結(jié)構(gòu)略顯復(fù)雜。
(3)ARM采用先進(jìn)的RISC技術(shù),并輔上獨(dú)特設(shè)計(jì),保證其超低功耗的品質(zhì);X86因?yàn)槠銫ISC結(jié)構(gòu),始終存在大功耗的毛病,并據(jù)此而伴隨散熱、噪聲等一