|
LPC同STM32的比較, 兩則還是各有千秋,所以,我們?cè)谶x擇型號(hào)的時(shí)候還得慎重。
STMicoelectronics:STM32F101 36M極限頻率,6到16KSRAM,32到128K flash ,1*12位ADC , 80個(gè)快速IO口。
NXP:LPC21303 ,、,70MHz, 8K SRAM, 2 UART , 2 I2C ,8*10位ADC ,32k FLASH。
而且價(jià)格上STM32要比NXP系列要貴。
Cortex-M3是新興起來(lái)的一種ARM7的核,而ARM7TDMI是一種傳統(tǒng)的經(jīng)典的ARM內(nèi)核。我們就拋開這一切,來(lái)比較一下兩則的異同。
在內(nèi)核結(jié)構(gòu)方面,NXP是馮諾依曼結(jié)構(gòu),而Cortex則是哈佛結(jié)構(gòu),它將代碼區(qū)和數(shù)據(jù)區(qū)分開了,多了分枝預(yù)測(cè),在運(yùn)行for等語(yǔ)句的時(shí)候有優(yōu)勢(shì),故有一定的優(yōu)勢(shì)。而且,Cortex支持一些比如位翻轉(zhuǎn)的DSP指令,這在運(yùn)行比如DFT的時(shí)候顯得無(wú)比的有用。Cortex還包含了分枝結(jié)構(gòu),較大地減少了中斷等等時(shí)間(比ARM7TDMI改進(jìn)了2.5倍),這無(wú)疑Cortex占據(jù)了優(yōu)勢(shì)。
這樣看來(lái)是不是NXP2103占據(jù)一定的優(yōu)勢(shì)呢?它便宜,更快,有更多的AD轉(zhuǎn)換,但是我們下面將從另外的方面來(lái)比較一下,看看NXP的優(yōu)勢(shì)真的是不是那么明顯?
我們?cè)俦容^一下ARM7TDMI同ARM Cortem-M3,我們將發(fā)現(xiàn)以下有趣的現(xiàn)象:
Cortex-M3主要針對(duì)價(jià)格第三的應(yīng)用場(chǎng)合,主要是代替性能強(qiáng)大的8位或者十六位微控制器的市場(chǎng)。
最值得注意的地方是整數(shù)運(yùn)算,Cortex是運(yùn)行在 1.25DMIPS/MHz,而ARM7TDMI則是在0.95(在thumb指令下是0.74)DMIPS/MHz,如果我們?cè)俳灰?DMIPS/MHz寫入,則會(huì)從ATM7TDMI得到66.5DMIPS,而從Cortex得到62.5DMIPS,如果ARM7需要運(yùn)行在thumb模式(如果代碼空間有限的話),ARM7TDMI僅僅才51.8 DMIPS,使Cortex運(yùn)行顯得更快了(如果代碼空間足夠的話就顯現(xiàn)不出來(lái))這就算兩則打平了。
兩則的電源管理和功耗。ARM7TDMI內(nèi)核有0.28mW/MHz,而Cortex是0.19mW/MHz,在片內(nèi),LCP2103在1.8V的時(shí)候是轉(zhuǎn)換到了50mA,(如果我的排除一切外圍電路,只留PLL工作),在Cortex內(nèi)核中我們得到的是更小的電流。
還有一些其它的方面值得注意,比如:Cortex有一些片內(nèi)集成的模塊,但這些在LPC芯片上要在外圍另外接。比如:LDO,片內(nèi)溫度傳感器等,這些功能看起來(lái)不怎么樣,但是如果我們的PCB板面積有限的話,為節(jié)省外部的空間,這些功能就很重要了。第二,頻率也顯得比較重要,Cortex提供了50M頻率輸出,但是LPC的PCC只能夠提供內(nèi)部時(shí)鐘倍頻。
|
|