2013年7月6日 星期六

一篇小小的ARM M0+ 學習心得

我之前有寫了一篇 ARM M0+ 的開箱文:小包裝 32bit ARM 開箱文

其實對於要不要投入ARM 的懷抱中,對我這一種LKK 工程師來說,內心真的有點掙扎。

講談白話,您說關於 ARM Cortex-M 系列剛出來時,對我們這一種老工程師來說,

是不是真的有那麼有吸引力?!真的見解兩極,以MCU 效能來說:當然毋容置疑的。

看換個方式想:那麼強的東西要搞哪些玩意?!就很難講了。

說穿了~如果一個很強的MCU 拿來做一個非得要N 個人來維護或搞得一大堆陣仗的

的東西,對我們這一種老人家來說:也不一定適合啊。因為往往一大堆陣仗的東西,

常常搞在裡面是見樹不見林...我們也沒不那個生命可以在那邊慢慢耗...所以總是

令人卻步。...這幾年也常常看到一些公司一開始也都信誓旦旦的開了一些偉大的案子,

講得也是鏗鏘有力,信心滿滿的...結果陣仗一擺出來。沒一兩年就被這一大陣仗給吃光了。

給個22 K (其實大多比這個多一點啦!),人家嫌沒有好蘿蔔,就找不到好馬!

但給個多一點...光每個月看人事資本支出,心中總是淌血。總是不能好好的靜下心

來好好磨一劍。最後都還是草草結束了。...對啊...對工程師們來說:學是有學到東西啦,

當然薪水雖不滿意,但也總算也是一份啦。但還是得再找下一個出路吧!幾年下來,

就成了那一種: 我用過6502 、8051 、PIC/PIC Like ,甚至 ARM A啊~MIPS ...

搞不好還有DSP等等一大堆的...還可以跟新老闆說:您要我學什麼?我都沒問題。

唉~...那您自己的最愛又是什麼呢?

-----

但那一篇開箱文後,我就有一點不同的觀點了,尤其是兩週前的一篇報導:

Silicon Labs收購節能MCU供應商Energy Micro

因為各位看官應該也知道版主我在講解USB MCU 時,我都是用該公司的產品,

(講實在的啦...您說為什麼不用Cypress 的呢?!您說:Cypress 算是專業的MCU

廠嗎?尤其像通俗的8051 來說:他有這麼完整的產品線嗎?!那其他的USB MCU

就不用說了。更何況說:我們也不是天天都只搞USB 的東西而已啊!)

而他們所收購的那一家MCU 廠也算是在ARM 產品線上的老公司了。而且他們在

收購該公司之後就在網站上整理了以下報導:

EFM32 Zero Gecko microcontrollers include ARM Cortex-M0+

司馬昭之心,路人皆知啊。您說:我們這些搞MCU這麼多年的工程師們,難道

有些道理不懂嗎?!如果不懂的話,那真的白混了啦。當然就是那個 Cortex-M 系列

要真正的壓迫到 8/16 位元的市場,還需要再施加一點力道。

我們再來看國外另一個工程師的看法:

ARM Cortex-M0+ vs. MSP430 (or are M0+-based devices really 16-bit MCU replacements?)

說真的啦,如果市場是有明顯的區隔,那幹嘛還要整理這一篇報導文章呢?

這些都是搞MCU 的工程師們嘴吧不講,心裡卻比誰更有數了。

那您也不要在講那個什麼台廠 8 bits MCU 。講難聽一點:光您在市場上,不管是人家

Agent 的產品發表會,網路行銷或甚至隨便在Google 上敲敲一些網購套件,您說:

您們家的MCU 可以像人家現在賣 32 bits ARM 這麼方便嗎?!那就更不用說,

您們怎麼不用養一大堆AE 工程師出門,就可以這麼輕易的行銷MCU 產品呢?

----  這是一個對於賣MCU 產品的公司或團隊來說:非常重要的考量。

當然啊...對我們使用者來說:當然也是相對重要性的啦。 這已經不是您的MCU 產品

本身技術強不強?!或是您們家的MCU 比人家便宜多少?講難聽一點:光您看這些

國外全球的這些MCU 工程師會拿您們的MCU 來大做文章嗎?

---

就在之前那一篇報導人家公司收購MCU 公司之外,那幾天另一家MCU 大廠

也正式發表相關的產品訊息:  Atmel adds ARM Cortex-M0+ MCU

,當然也不只如此一家而已:

Fujitsu adds high-performance ARM Cortex-M4 and low-power Cortex-M0+ MCU families

所以呢?!...難道還可以當個埋在土裡的鴕鳥嗎?...

我們可以從32 bits ARM 一路從ARM7 一路搞出Cortex-M3...M4 再來M0 及現在的M0+。

果然是夾著其優異的核心架構設計,在搭配市場需求的轉換其產品訴求,

我想可能有些人還不是很福氣,但換個角度想:您又何苦這麼堅持呢?

就像我自己也慢慢試著去瞭解其產品特質,說真的~當初我們剛開始玩單晶片時,

從8051 後來出現了 PIC ,再接著出現RISC 的AVR 等等...在這個8 bits 平台上,

各家各擁有其擁護者,也各堅持著其所好而讓各家均有擁有市場的一片天。

但現在(至少短時間內~),看來在 32 bits 的應用市場裡,我們所能選擇的機會

可能也不多了,也誠如我所說的:人家賣東西給您不是一定要您非選擇不可,

但是呢?!當您所能選擇的機會不多時,您又能如何漠視這股市場風潮呢?

-----

最後我就用當初ARM 在發表 Cortex-M0 時的幾張簡報資料為結論:

----

------------------------

-------------------------------

然後我就要推薦您可以參考讀一讀以下這一本書:

The Definitive Guide to the ARM Cortex-M0

作者 Joseph Yiu ( 中文名字:姚文祥,ARM 資深員工)

他是一路從Cortex-M3 一路寫過來的...以下是引述他書中的幾張圖片:

我常常講:您東西要賣得好,不能只光靠技術卓越超群而已。(當然這也是基本功!)

但產品要真正的在市場成功,還是得要看您在市場合縱連橫的能力,也包括您對於

未來市場產品走向與趨勢改變的靈敏度...

第一張說明了我們所熟悉的IP (設計智權)的商業模式。也是IC 設計很重要的市場模式,

他們懂得這一套市場遊戲規則,也玩得很成功。當然人家也是十年磨一劍的...

(其實是超過二十年了啦!)

----------------------

以下這張圖就讓我覺得是另一個非常有趣的事,您知道以前我們玩8051 時,

我們剛開始也只能玩Intel 的8051 ...幾乎要等到Intel 8051 專利過期後,才正式的

有許多公司拿著8051 的IP  拿來整合要我們一般的SOC (System-On-Chip)晶片中。

但是您看下圖:據原始的文獻資料顯示,其實 Cortex-M0 出現時,在FPGA 上

就已經有一個 FPGA 版的Cotrex-M1 版本在那邊Stand-by 了。

這代表著說:當我們在市場上拿到Cortex-M0 晶片時,其實已經有許多公司可以透過

IP 授權的方式,可以直接將Cortex-M1 拿來整合在新一代的SOC 裡面去了。

就不像我們以前一樣,還要等著幾十年的專利問題...這也代表會加速Cotrex-M1 在

市場產品的滲透率。

至於最後的這一張圖更是值得我們台灣公司值得好好思考與學習的,

我們台灣的公司不知道是自己能力不行,怕人家知道呢?!還是真的有點怕別人來

分一杯羹?!(我當然覺得一般台灣老闆事後者心態居多!!

搞產品呢...就是喜歡關起門來,自己玩自己的。不管公司大小,尤其大公司特別敏感!

都自以為與其要跟別人合作?我自己不會找個幾個22K 的或是想辦法挖角?!

然後就在那邊慢慢孵....,搞得神神秘秘的~搞了老半天,整個市場也都不知道您們在

玩什麼把戲,結果搞到最後就不了了之,也只好再回頭殺價搞Cost Down 最厲害。

您看人家那一圖,除了ARM 本身IP 產品以外,您有看到其他東西都是ARM 自己一路

搞過來的嗎?!您看人家產品能在市場上成功,當然首要就是要吸引世上一流行銷與

資源投入。舉個簡單的例子:您現在拿到許多ARM 的開發平台幾乎不是IAR 就是Keil

這一種世界上在這一方面專業一流的公司。難道您以為讓您每一家都去搞我們台灣

公司那一套嗎?!....

其實有許多人就是被台灣公司的那一套什麼都好像得要自己搞才行的錯誤印象所誤導。

(當然啊...很多人私底下是認為,那是許多老闆真的怕被別人笑說:自己不行啊!)

總是不願意真正的發揮那一種整合市場與世上其他專業領域專長的資源投入,

您說:好像每一家MCU 都是拿ARM 來搞產品,這樣子如何凸顯差異化?!

但您自己有沒有想過?!人家就是因為懂得如此整合產品行銷或資源投入,

在產品開發或市場教育上有著絕對強烈的力道...至於每一家公司能否真正獲利,

看的就不是產品本身的技術問題了,您沒看到人家那一張圖不是很清楚的告訴您

一件事嗎?產品核心技術只是一個開始,也只是一個起點而已...您要如何整合

其他周邊的資源才是您能在市場上勝出的重要關鍵。

-----------

最後:我要講一下我自己在這依段時間看ARM 的一些相關文獻資料時,我自己的

一個小小心得。我想如果您是像我一樣,以前有摸過傳統 8 bits MCU 的人,

您就不要在像以前我們在玩 8 bits MCU 那一種玩法或學習方式了...

什麼是"玩 8 bits MCU 那一種玩法或學習方式"?!就是趕快去找一本什麼

ARM 單晶片快速入門啊...或是什麼ARM 指令集的書回來研究....如果是的話~

那您還是回去用傳統 8 bits MCU 就好了。

我真的推薦一下您去讀一下人家那一本算是ARM 應用的聖經吧:

The Definitive Guide to the ARM Cortex-M0

因為如果您真的沒有真正去研究人家在講解ARM 的基本架構時,您根本就無法

真正去發揮32 bits 高效能MCU 所能帶給您不同的系統應用的好處。

如果還只是停留在說:我趕快去買一本入門書,然後依照過去寫8 bits MCU 經驗

一樣:先寫個I/O 或跑馬燈....說真的啦~您還是繼續用傳統 8 bits MCU 就好了。

很簡單: 因為人家書裡就直接告訴您,不要再用組合語言寫32 bit ARM 了!

這樣子的拿32 bits ARM 來搞的像傳統 8 bits MCU 系統,您都有可能連您自己

也說服不了您自己為什麼我把32 bits ARM 拿來用得像一般傳統 8 bits MCU ?!

那更不用說:您老闆一定很不會諒解您說:那32 bits ARM 真的有比較便宜嗎?!

哈~哈~

2 則留言:

  1. 用ARM還有幾個好處,由於有Freescale/NXP/TI/ST/Samsung等一大堆廠商都有在做類似規格的,根本不用怕被斷貨或是被漲價,我只要跟業務說要換別家的,他們就會怕了,而且因為競爭家數多,所以不論是原廠還是經銷商的FAE都會比較勤快,要source code不囉唆,還經常提供一些免費的課程,請我們去玩玩新的demo board再喝喝咖啡吃個便當XD

    回覆刪除
    回覆
    1. 您在說我兩年半前發生的事嗎? :ARM 之Cortex-M0

      您看我早在這幾年前就已經預估到這一種情形會發生了。
      所以我才說:8 bit MCU 這一回真的要稍微留意一下 32 bit 的ARM 了。
      或許我們可以真正從系統應用端切出 32 bits MCU 是 8 bits MCU
      在低價策略外,所不得不面對的議題。而不是搞 8 bits MCU 的人
      純粹只想當個埋在土理的鴕鳥心態:反正怎麼搞?!我8 bits MCU
      肯定比 8 bits MCU 便宜,還可以繼續殺價... --- 這一種想法。
      最好的比喻:您說LCD 電視有做到當年CRT 電視便宜嗎?!沒有!!
      LCD 不用搞到那麼同時期CRT便宜...他們所創造的周邊產值與產業
      群聚效應,自然足以就可以把CRT 給淘汰了。對不對?! ;;)

      刪除