2008年11月19日 星期三

MCU -- Silicon Labs MCUs (2)

今天去參加了PIC的研討會

就像Edison所說的

真的收穫很多

然而這樣多的收穫裡

讓我更確定當初選用Silicon Labs的MCU是很明確的選擇!!

不過這並不是在說PIC不好唷~~

而是證明PIC很好很用心

看下去就知道為什麼了~~~





先來幾張研討會戰利品的特寫

1977649448

這個是有獎徵答的小禮物

挺有質感的計算尺

大廠在做廣告都不會手軟~~~

這很讓人欽佩!!



1977649449

這是研討會的主角 -- mTouch

我也買了一片~~~



1977649450

背面卯上了兩個PIC

這是mTouch的專用MCU



1977649451

這是debugger用的MCU





言歸正傳

話說近年來

PIC的8 bits MCU享有市佔率的龍頭老大地位

打破了Motorola長年來的領導地位

而且還持續在成長

小道消息說

ATxxx牌是即將收併的對象

這代表PIC是卯足了勁在衝

對使用者來說

是一項利多~~~



然而在8 bits MCU系列裡

PIC最近才打算進入量產的幾個時代性產品中

有幾項功能是Silicon Labs在一推出MCU時

就已經全系列通通都具備了

當然這不能怪PIC後知後覺

而是Silicon Labs出生得比PIC晚

所以PIC有的包袱他沒有而已

讓我依序說明這些內容吧!!





1. Low Pincount Serial Function (小包裝串列通訊功能)



PIC早期的MCU

只要是腳位不足20 pins的

應該都沒有串列功能

對於串列有重度使用的我來說

這是完全沒辦法接受的事實~~~

那就等於是一代武林高手被費了武功一樣痛不欲生



然而PIC最近announce的小包裝MCU

在明年第一季會正式量產的編號裡

串列已經被列進來了~~~

這證明PIC了解自己的市場弱點

並加以強化的第一彈





2. 硬體debug線路



這個功能也是最近幾年才被大量使用

最早期的名稱叫JTAG

是一種埋在MCU裡的硬體中斷電路

它可以透過通訊與硬體中斷的方式

即時抓取正在動作中的暫存器資料

這項技術在以往只存在高階的MCU中

一般8 bits的MCU根本就不可能有



所以開發者往往必須買價格昂貴的ICE來進行除錯

特別是針對剛入門的人來說

這是一個很重的負擔

過去幾年

我們公司都在教育使用者如何不透過ICE進行除錯的技巧

而UART就是我們最常用的功能之一



再回到主題



為了縮小開發成本

所以在MCU裡內建debug功能就變成了產品的優勢

一來大量降低下載工具的成本

二來縮短除錯的時程

這樣的硬體電路

在Silicon Labs的小包裝MCU中

是自家開發的叫做C2功能

換句話說

Silicon Labs的MCU也是全系列內建硬體除錯電路



有人質疑

這樣不是會增加die的成本

難怪MCU都賣得比人家貴?!

個人覺得

如果你把一萬支一元手機跟一支萬元手機比

那一支手機的性價比較高?



因為這樣的大環境趨勢

PIC也把這個功能加入全系列新推出的MCU裡

這也是大家現在可以用到很便宜的download工具的主要原因

因為電路通通利用半導體製程塞到MCU裡面去了



PIC唯一甩不開的包袱

是OTP的MCU

因為OTP只能燒寫一次

即便能抓bug也沒辦法修改

所以在OTP系列裡就沒有這樣的功能了

只有flash base的才有





3. Peripheral Pin Support(PPS) VS. Crosebar (XBR)



PIC在小包裝MCU中強力推打的重點功能裡

有一項PPS的功能

他是針對MCU功能夠多但IO pin無法靈活應用時

對這樣的需求進行補救的一項技術

它可以將有需要的功能指定到期望的腳位上

比方說

原來pin3的功能是UART-TX與SPI-DATA腳共用

如果我拿來當UART

SPI就被犧牲掉

但其它多餘的腳卻又用不上.....



此時透過PPS可以彌補這樣的缺憾

因為PPS可以把需求的功能

指定到自己想要的腳位上

充分應用每一隻IO



然而這樣的技術

Silicon Labs的MCU應該是首創先例

以Crossbar的技術將這樣的功能導入MCU裡

在已經慣用Silicon Labs的我來說

對這樣的功能並沒有特別的新意

卻有一種英雄所見略同的感受!!

大廠懂得積極將市面上最受歡迎的主流技術引入自己的產品線

用來確保自己的身家地位

這證明PIC是有心要做好MCU

像我這樣忠實的51使用者

都很心動想試試看

更別提可能是第一次聽過的初心者~~~





4. 無可比擬的超高速 25MIPS ~ 100MIPS



研討會中提到PIC在小包裝的MCU裡

已經有高達16MIPS的RISC MCU

對這樣的數據

在長時間被25MIPS的MCU洗禮過後

其實感受不到震撼

雖然PIC最高階的MCU有號稱高達80MIPS的超高時脈

但改版過的51(Silicon Labs MCUs)

推出之初就有亮眼的100MIPS MCU系列

雖然要價不菲

但卻是一個很強烈的指標展示

因為這樣的MCU

強悍度直逼DSP!!!





5. 開發工具超共用特好用



其實開發工具對每一個工程師所忠實的MCU來說

應該都是很好用的

但是Silicon Labs擺明不想賺你download工具的錢

因為現下一條USB download cable要價不到NT$1000

且全系列MCU通用

(PIC也做不到, 還是老話一句, 他有舊的包袱但Silicon Labs沒有)

除錯功能全部在IDE介面裡

而且C compiler還是老牌老字號的Keil C

處理出來的code超精簡

幾乎跟用組語寫的不相上下!!!

缺點是試用版有空間限制

但想必大家早就有正式版的在用了

直接把路徑順過去就好了



這就是MPLAB稍微落後一點的

因為程式的最佳化......

不覺得寫PIC的人

超多還是用組語在寫嗎?

特別是小包裝的......





*******************************************

好啦!!

看到這裡

PIC的愛用者請不要罵我

我說過

這不是PIC的錯

是因為PIC在MCU的亂世時代就已經在打滾

被Moto與Intel踢來踢去

好不容易才踏穩一條路

而且一直在堅持

一直在成長

這樣用心的公司

值得我們去投資

不是嗎?



然而對一個51的愛用者來說

長久以來被詬病的諸多缺點

在Silicon Labs裡找到了一條天堂之路

當然要好好表揚一下!!!





最近也會考慮投靠一下PIC

價格上

Silicon Labs的競爭性還是稍嫌不足呀!!





(2008/11/23更新)

再根據不可靠內部消息透露

收購ATxxx的計畫破盤

好像是價碼談不攏的原因

PIC在高階MCU的發展

果然還是會有點坎坷~~~~

8 則留言:

  1. 嘴巴說不要,口袋的小朋友倒是挺誠實的(掏)

    歡迎加入PIC陣營 XD



    我本來也不是PIC這頭的人,不過龍華科大朋友一直對我洗腦,

    加上長期有再觀察他們的成長和動態,昨天認真聽過簡報後,

    算是被打動了!



    其實哪一家,我覺得都很好,只是開發上方不方便,產品特性符合不符合

    需求、成本是否有競爭力、產品線是否夠廣,都是各家公司各有特色的地

    方,看個人需求囉!

    回覆刪除
    回覆
    1. 公司裡有PIC的產品
      應該不算剛加入啦...
      :p

      刪除
  2. 我想順便補充一點,其實 PIC 不一定要 MPLAB 才能寫啦,我同學可是有

    用過免費的 C compiler 寫到 16F877 MCU裡頭呢! 不過他裡頭有個圖

    控拉選單的功能,我覺得若要快速開發的工程師,應該會用得很開心!

    回覆刪除
    回覆
    1. 重點是最佳化
      程式的code要精簡
      執行效率才會高!!!

      刪除
  3. 大大是上那個課程呢?W401 – MPLAB C18 C Compiler Workshop 這個課程如何呢?

    回覆刪除
    回覆
    1. 大大您好
      我沒有上過課啦~~
      我只有聽研討會
      大部分的MCU使用都是自學的

      我還不算正式跨入PIC
      不過有在考慮便是

      感謝大大您提供的課程資訊~~
      有空常來嘿~~~
      ^___^

      刪除
  4. 請問您知道有哪些網站或論譠是在討論有關於使用Silicon Labs MCU開發

    板的嗎?因為最近在玩SiM3U167 Precision32 UDP MCU CARD, 但有遇到一

    些開發上的問題,所以想知道有哪些網站有資源能爬文或發問的?謝謝!!

    回覆刪除
    回覆
    1. 這東西太新了
      可能還沒什麼人在分享使用經驗
      一般來說會建議直接問原廠的FAE
      再不然就是建議您參考其他家ARM core的使用經驗去修正
      ST的ARM已經出來很久了
      參考資料很多
      如果你有先用過這一類的晶片
      可能就會比較容易上手了~~

      請問您目前遇到的問題是??

      刪除