當前位置:首頁 > 電腦網絡 > 文章正文

繼承與創新:lnnovasic Fido微控制器


Jim Turley

  上世紀最早出現的CISC(復雜指令集計算機)計算機結構,現又悄然興起——Xilinx,Tensilica,Sun Microsystems和Power聯盟等組織帶頭復興CISC計算機結構。畢竟CISC指令至今仍存在優于RISC之處。ISA(I業標準結構)雖不斷更替,但有些東西仍經久不變。如Freescale的老式68K結構至今仍在應用。68K系列至今仍一直保有32位處理器市場銷售額最高的地位,直到幾年前被ARM所取代。68K系列的長壽有很多原因:容易編程,支撐軟件優良,從性能、封裝、價格水平到外圍設備種類廣泛,適應各類客戶的需要。以至于68K結構一度成為嵌入式處理器的代名詞。Freescale 68K的產品系列的銷售額每年都高達數百萬美元。只要數以千計的忠誠于68K的開發人員尚未退休,它的市場份額暫時不會輕易失去。
  Innovasic公司發現了CISC的潛在機遇,設計制造了一款與Freescale公司68K系列相兼容的、新型32位Fido 1100微處理器芯片。Fido 1100并不只是一款克隆68K的產品,而是在68K結構的基礎上,增加了創新的外設與硬件實時任務切換等新技術。
  
  仿制高手
  
  Fido是Innovasic生產的第一款兼容于68K的芯片。其實Innovasic是克隆微處理器經驗豐富的廠家。過去十年以來,Innovasic的工程師們曾為停產的多個8位和16位微控制器生產過完全兼容的替代產品。不僅軍方是Innovasic的大量客戶,在尋找市面上難以找到的產品時,嵌入式和業界的設計人員也會經常想起Innovasic。lnnovasic的仿制經驗使其充滿自信地推出了自己的原始芯片Fido,這款芯片雖然沿用了68K的編程模式和指令集,但芯片關鍵的微結構內核、內部總線、以及外設等的設計都是自主的創新。例如,Fido使用的鐘頻提高到66MHz,以取勝于Freescale的680x0和ColdFire。
  
  真正的實時
  
  Fido的設計讓人感覺有些“自相矛盾”。如它所兼容的68K指令集是卡特時代的產品,但Fido的微結構內核卻驚人地現代化。Fido芯片的外設類別看似極為平常的I/O,而其實現卻絕非一般。粗覽數據表時,Fido顯得十分普通,但實際上卻有創新的技術內涵。Fido通過硬件取代一貫沿用的常規軟件任務切換,提高性能的同時也簡化了新手的使用。片上有五組32位程序員可見的地址、數據和控制,狀態寄存器組。可以在單一時鐘周期內,從某一寄存器組切換到其他任一組。由這套硬件代替傳統的軟件任務切換功能,或代替傳統實時操作系統的初等操作內核。嵌入式應用中,有了這套硬件,就足夠應付五個任務以內的一切操作管理了。五個任務以下的操作管理也是一般應用都會用得著的。Innovasic建議,任務多于五個時,僅需在五組中的一組上運行傳統的軟件任務管理程序或實時操作系統即可。
  Fido維護這五個任務,采用物理上雙份的程序員可見寄存器組,而且可以指定某一份在某個周期上使能。五個寄存器組的用戶及監控的特權級別與68K編程器的相同,當中斷或異常發生時,便無需處理器再行干預切換事物了。Fido的片上中斷控制器中含有中斷屏蔽位、中斷優先級位、和為硬件任務指定中斷源域。從而,在該中斷開放的情況下,就能夠觸發硬件任務的切換,或是由當前任務,如同任一68K處理器一樣,來處理中斷。
  任務切換還有其他一些因素。程序員可以給五個寄存器組各分配一個優先級,使高優先級任務能中斷當前任務。另外,當前任務也能把自己置于休眠態,將控制讓予其他任務。從而,可以使用一個定時器即可簡單地實現任務輪換,或優先級任務切換。各種任務排列組合后的切換算法都是可能的,Innovasic認為這是留給程序員的最好練習。
  
  緊拽住軟件價值鏈
  Fido將Freescale CPU32+的指令集的字節數加倍,其執行時間與Freescale指令相比,處處有一個時鐘周期的差異。這一點并不奇怪,Freescale的CPU32+,芯片不同,執行時間也不盡相同。作為Fido的客戶,要充分以利用CPU32+軟件開發工具在這方面已有的功能。就是說,絕大多數68K的開發工具Fido都可以利用。如Fido這樣的新開發的處理器,尚未建立自己軟件庫之前,都可以從Freescale原有開發工具中獲取幫助。
  Fido在確定性輸出方面,有三大特點:高速緩存具有確定性;I/O極具靈活性;和任務切換僅需單周期。 ......
很抱歉,暂无全文。欢迎作者提供全文。

推荐阅读
支持杂志产业发展,请购买、订阅纸质杂志,欢迎杂志社提供过刊、样刊及电子版。
关于我们 | 免责声明 | 联系方式 | RSS 2.0订阅
全刊赏析网 2019 繁體中文 简体中文