《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 解決方案 > Cortex-M1:面向FPGA的解決方案

Cortex-M1:面向FPGA的解決方案

2012-04-23
關鍵詞: 開發工具 Cortex-M1 FPGA
</a>FPGA" title="FPGA">FPGA" title="FPGA">FPGA作為靈活且具成本效益的平臺,越來越多地用于實現高性能嵌入系統的快速設計。這兩種趨勢相結合,正在推動市場對使用可編程邏輯實現32位處理器的需求。

圖1<a class=Cortex-M1處理器支持緊耦合內存TMC并采用了精細的低后滯中斷控制器" border="0" height="354" hspace="0" src="http://files.chinaaet.com/images/20100812/dae56da3-5db5-49f9-aae7-12708347c9a4.jpg" width="400" />


  市場所需的是針對FPGA優化且符合業界標準的32位處理器構架體系。直到最近,大多數處理器知識產權(IP)一直是針對ASIC使用而開發。因此,在FPGA的粗顆粒構架上實現時,處理器往往較大且速度較慢。雖然,市場上也有一些可在FPGA上實現的專用軟IP處理器核,但它們在開發工具、技術支持資源及設計人員經驗方面都存在局限。

  為了應對這一市場需求,Actel和ARM公司推出了專為在FPGA上實現而設計的32位ARM處理器核Cortex-M1,可在Actel非易失性ProASIC3 FPGA和Fusion可編程系統芯片(PSC)上使用。用戶無需與Actel簽約,也無需授權費用和權益金,從而將ARM體系擴展到小批量應用領域。對于那些擴大至超大產量規模的設計,32位Cortex-M1處理器核可執行業界標準的Thumb指令集,并向上兼容Cortex-M3處理

 

器,因而可輕易轉向ASIC設計。由于符合業界標準,Cortex-M1處理器核也能重復利用現有的開發工具、代碼和知識,有助于節省成本、降低開發風險及加快產品面市。

 

  在FPGA上實現業界標準構架

  專有構架所面臨的困難是如何提高其在目標應用中的效率,以及如何解決支持工具受限的問題。而且,經驗豐富的設計人員都知道,需要花費時間學習,并積累經驗,才能掌控新產品的特性。不幸的是,這些困難與日益縮短的開發周期及越來越大的設計風險形成直接的沖突。由于這些原因,設計人員總是趨向于重復使用他們所熟悉,或之前使用過的產品。

  當然,較之于專有構架,業界標準的架構給用戶帶來的優勢多得多。ARM和Actel基于Cortex構架,合作開發針對FPGA而優化的處理器核。這種定制化的設計使該處理器核的性能和效率提高,邏輯單元占用量減小。

  Cortex-M1特點

  Cortex-M1處理器核基于ARM的3級Cortex-M3流水線技術,具有高可配置性,在速度和內存占用上取得了很好的平衡,非常適合嵌入式應用。在最小配置情況下,僅比Actel的Core8051核(標準16位控制器)大一點,不超過5%。Cortex-M1在Actel ProASIC3和Fusion中的工作頻率超過70MHz。該處理器運行新的Thumb-2指令集的一個子集,支持緊耦合內存(TCM),并采用精細的低后滯中斷控制器,因而可提高嵌入式系統的性能和能力。

  改進的代碼密度能提高性能和能效

  Thumb-2技術基于成功的Thumb技術。Thumb是針對ARM微處理器設計的高代碼密度指令集,能夠提高用于低成本、高性能系統的ARM微處理器核的能力。

  就優化代碼性能而言,Thumb-2技術較之于現有的高密度代碼,內存占用減少了31%,從而降低了系統成本,同時性能提升高達38%,因而能夠延長產品的電池壽命或豐富產品的功能。

  Cortex-M1基于Cortex-M3流水線技術,并執行ARMv6-M指令集,亦即Thumb-2(ARMv7)指令集的一個全子集。Thumb-2指令集也用于Cortex系列的其它處理器核。Cortex系列向上兼容針對其傳統處理器核(ARM7、ARM9和ARM11)編寫的Thumb代碼,現有的Thumb代碼可直接在包括Cortex-M1的Cortex系列處理器上運行。

  較之于以前的ARM指令集體系,Thumb-2的優勢之一是16位和32位指令都以相同的模式執行。在過去的ARM體系中,Thumb指令主要用于子程序中,這些子程序帶有用于實現中斷服務的32位ARM指令。這種方式常常在中斷請求接收時和中斷服務啟動時之間造成較長的延遲。在Thumb-2體系中,ARM將16位和32位運作模式合并,因此處理中斷時就不必從16位模式切換到32位模式。Thumb-2能夠自由混合16位和32位指令,可大大地簡化編程任務,無需設定代碼的順序構造,即可實現代碼最小化和處理能力最大化。此外,Thumb-2指令的性能更高,這是因為設計人員能優化地混合指令,無需將它們按16位和32位分組。

  內存存取速度更快性能更高

  Cortex-M1具有來自AMBA外設總線接口的單獨內存接口。這類似于高性能的ARM9體系,但不同于ARM7,后者采用的是組合的內存和外設總線。Cortex-M1的這個單獨內存實際上是兩個接口,即為訪問指令緊耦合內存(ITCM)和數據緊耦合內存(DTCM)(見圖1)提供了單獨的通道。因此,處理器性能大大提升,因為處理器能在每個時鐘周期內從ITCM提取一條指令,且決不會因數據內存訪問操作或讀寫 AMBA上的外設而停頓。ITCM和DTCM的大小都可由用戶定制,容量可從0kB增加到1MB。

 

  高效的中斷操作縮短后滯

  Cortex-M1具有可配置的嵌套向量中斷控制器(NVIC),有利于實現低后滯中斷處理和異常處理,同時還簡化了編程(見圖1)。NVIC支持中斷優先級重新定義,并與處理器核緊密耦合,因而能減少中斷后滯,從而高效地處理隨后到達的中斷。Cortex-M1中的NVIC還允許用戶單獨決定中斷優先級,并支持4個中斷優先級別。例如,可設置關鍵事件首先處理,并可中斷一個正在執行的優先級較低的中斷服務,即設計人員可在自己的應用內部構造事件處理流程。

  簡化的編程模型使代碼編寫更方便

  Cortex-M1執行Thumb-2指令集的一個子集,有兩種工作模式。對于正常處理,Cortex-M1進入線程模式(通過復位進入或異常處理后返回);出現異常后則進入中斷處理模式。該處理器適用于那些不再需要其它工作模式的嵌入式系統。由于編程模型僅限于針對少量的工作模式,處理器的邏輯單元占用量顯著減小,因而降低了成本。

圖2標準處理器擁有龐大的開發工具系統


  這種處理器所采用的構架使設計人員能通過處理器核最大限度地控制數據和處

 

理流程,只要權衡得當,保持處理器盡可能小。這樣就可簡化編程,尤其是在多個工程師參與開發軟件和硬件的情況下。為簡化編程,使線程模式和中斷處理模式間的過渡盡可能平滑,該處理器采用了兩個堆棧。復位后,所有代碼都使用主堆棧。異常中斷處理程序可改變線程模式所使用的堆棧,即在線程模式退出時,通過改變它所使用的EXC_RETURN值將堆棧從主堆棧變為處理堆棧。而所有異常處理程序繼續使用主堆棧。堆棧指針(R13)是一個分組寄存器,負責實現主堆棧和處理堆棧間的切換。

  熟悉ARM7和ARM9的人會注意到,Cortex-M1寄存器文件作用類似于維護Thumb指令兼容性。不過,Cortex-M1寄存器要簡單些,用較少的FPGA系統門就可實現。為進一步簡化編程,該處理器還定義了一個內存映像,而處理器核能訪問該內存映像的所有區域,包括所有數據類型的數據區域。

 

  具有M1功能的FPGA

  采用FPGA就可在幾個小時內實現設計,并在應用中運行起來,而采用ASIC就需要好幾個月,而且還會有龐大的非經常性工程費用。

  ARM和Actel在開發Cortex-M1時就使處理器具有很高的可配置性,允許用戶針對應用的特定需求量身定制處理器。緊耦合內存的大小、多路復用器的大小和速度、外部中斷的個數、為實現向下兼容所采用的字節排序方式,以及是否納入調試電路和OS擴展集等,均可由用戶選擇。這樣,設計人員在編譯時就可控制,從而選出最能滿足應用要求的最小處理器配置。不僅如此,由于Cortex-M1是在FPGA器件上實現,設計人員能快速配置處理器核,將配置好的處理器核編寫入具M1功能的Flash器件中,并在最終應用中進行驗證。如果需要修改,可在幾分鐘內完成修改并重新編程寫入器件中。這樣,工程師就可在幾個小時內多次修改和測試其設計,從而找出產品的最優實現方案。

  在具M1功能的Actel FPGA上,可無縫使用Cortex-M1處理器核。具有60萬個系統門的M1AFS600 Fusion PSC集成了一個12位ADC、40個模擬輸出、8Mbit Flash內存,以及FPGA架構。Cortex-M1核僅用4300個邏輯單元就能實現,還不到M1AFS600 Fusion PSC中FPGA容量的30%。

  M1A3P1000有144kbit SRAM和300個數字I/O,Cortex-M1處理器核僅用4300個tile就能實現。

  Cortex-M1開發工具

  為支持在Actel FPGA中實現的ARM處理器,需要工具開發和調試在該處理器上運行的程序,也需要工具開發和調試編寫在FPGA中的邏輯電路。采用ARM處理器的一個主要優點是這種處理器擁有龐大的工具和設計支持生態系統,以及大量現成的嵌入式軟件程序(見圖2)。這個生態系統包含了Actel的IP核開發平臺CoreConsole IDP、Libero IDE開發環境、SoftConsole程序開發環境,以及完備的板級開發和調試環境。ARM也將在其RealView開發套件和RealView微控制器開發套件(MDK)中為Cortex-M1提供支持。

  除了ARM和Actel的開發工具外,Aldec、CriticalBlue、CodeSourcery、IAR、ImpulseC和Mentor Graphic等第三方廠商的開發工具也會為Cortex-M1提供支持。

  結論

  隨著嵌入式應用轉向可編程邏輯技術,由ASIC向FPGA的轉變正在推動人們使用在FPGA中實現的32位處理器。Cortex-M1處理器采用了均衡的三級流水線技術,精細的中斷控制器和緊耦合內存, 能最大限度地提升嵌入式系統的性能,并同時減小處理器的大小和實現成本。由于該方案基于符合業界標準的構架體系,因此用戶能夠充分利用大量現成的代碼、廣泛的知識和技術支持以及龐大的開發工具系統。

 

 
本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
日韩亚洲欧美高清| 亚洲国产精品毛片| 亚洲国产专区| 激情综合自拍| 狠狠色狠狠色综合人人| 国产午夜亚洲精品不卡| 国产欧美精品日韩精品| 国产欧美精品一区二区三区介绍 | 国产精品裸体一区二区三区| 欧美日韩精品在线视频| 欧美区高清在线| 欧美日韩免费高清| 欧美日韩免费网站| 国产精品av免费在线观看 | 亚洲欧洲精品一区二区| 亚洲卡通欧美制服中文| 亚洲毛片播放| 中文日韩欧美| 亚洲欧美日韩国产综合| 亚洲欧美日韩一区在线观看| 午夜精彩国产免费不卡不顿大片| 亚洲欧美不卡| 久久精品人人做人人爽电影蜜月 | 亚洲毛片在线| 一区二区高清视频| 亚洲一区二区三区中文字幕| 亚洲在线一区| 欧美中文在线字幕| 老鸭窝亚洲一区二区三区| 农夫在线精品视频免费观看| 欧美激情亚洲视频| 欧美日韩在线第一页| 国产精品一区二区久久| 国内精品伊人久久久久av影院 | 亚洲国产欧美精品| 99这里只有久久精品视频| 亚洲婷婷综合久久一本伊一区| 亚洲欧美日韩电影| 久久国产精品亚洲77777| 亚洲精品一二三区| 亚洲愉拍自拍另类高清精品| 欧美诱惑福利视频| 另类酷文…触手系列精品集v1小说| 欧美成人午夜激情在线| 国产精品v欧美精品v日韩| 国产人成精品一区二区三| 在线看不卡av| 亚洲素人一区二区| 亚洲国产成人在线| 在线一区欧美| 久久久国产精品一区| 欧美电影免费网站| 国产精品视频xxxx| 在线观看日韩精品| 一区二区免费在线观看| 欧美在线免费视屏| 日韩视频在线观看免费| 欧美在线视频播放| 欧美激情一区在线| 国产欧美一区二区三区在线看蜜臀| 国产一区深夜福利| 亚洲美女福利视频网站| 欧美一区1区三区3区公司| 亚洲毛片av在线| 久久国产乱子精品免费女| 欧美国产日韩xxxxx| 国产精品永久免费| 亚洲精品中文字幕在线| 欧美尤物一区| 亚洲性av在线| 免费中文字幕日韩欧美| 国产精品网曝门| 最新国产成人av网站网址麻豆| 亚洲欧美不卡| 夜夜爽99久久国产综合精品女不卡| 久久av一区二区| 欧美日韩一区二区三区在线观看免| 国产一区日韩一区| 亚洲视频在线看| 亚洲伦理精品| 六月丁香综合| 国产欧美在线观看| aⅴ色国产欧美| 最新高清无码专区| 久久久99国产精品免费| 欧美午夜一区二区三区免费大片 | 黄色亚洲大片免费在线观看| 亚洲午夜一区二区| 一本一本久久a久久精品牛牛影视| 久久超碰97中文字幕| 欧美日韩中文另类| 亚洲国产精品999| 欧美在线视频一区| 久久gogo国模裸体人体| 欧美午夜精彩| 亚洲精品国产精品国自产观看浪潮| 久久激情视频久久| 久久精品123| 国产精品一区二区三区观看| 一本色道久久综合| 亚洲精品资源美女情侣酒店| 久久嫩草精品久久久久| 国产午夜精品一区理论片飘花 | 99re热精品| 欧美成人精品不卡视频在线观看| 好吊日精品视频| 午夜视频一区二区| 午夜亚洲性色福利视频| 欧美性猛交一区二区三区精品| 亚洲精品视频在线看| 亚洲黄色在线视频| 免费欧美网站| 亚洲第一福利视频| 亚洲精品一区二区在线| 欧美成人高清视频| 亚洲高清电影| 亚洲精品视频免费观看| 欧美国产综合| 亚洲日本中文| 亚洲另类在线一区| 欧美日韩高清一区| 99精品免费| 亚洲男女毛片无遮挡| 国产精品午夜av在线| 亚洲一区二区三区四区在线观看| 亚洲一区999| 国产精品视频yy9299一区| 亚洲欧美一区二区激情| 久久国产色av| 精品成人在线观看| 亚洲日本va午夜在线电影| 欧美激情麻豆| 99re6热在线精品视频播放速度| 中文在线一区| 国产精品一区二区三区久久| 性欧美xxxx大乳国产app| 久久久久国产成人精品亚洲午夜| 激情综合网激情| 日韩视频第一页| 欧美性开放视频| 亚洲欧美日韩一区二区在线| 久久久精品日韩| 一区二区三区在线免费视频| 亚洲国产日韩欧美在线图片| 欧美成人情趣视频| 一本色道久久综合| 久久国产福利| 亚洲高清不卡av| 中国亚洲黄色| 国产精品亚洲一区| 亚洲高清不卡在线观看| 欧美二区在线播放| 一区二区三区成人精品| 欧美亚洲综合久久| 国语自产在线不卡| 亚洲最新视频在线| 国产日韩成人精品| 亚洲日本国产| 国产精品高潮呻吟久久av无限| 午夜精品久久久| 欧美成人免费播放| 中文高清一区| 久久久久久久综合| 亚洲人成网站色ww在线| 性做久久久久久久免费看| 在线成人www免费观看视频| 亚洲天堂免费观看| 好看的av在线不卡观看| 一区二区三区国产盗摄| 国产日韩欧美制服另类| 亚洲精品裸体| 国产女主播一区二区三区| 亚洲欧洲精品一区二区| 国产精品色一区二区三区| 亚洲人成在线观看网站高清| 国产精品乱码人人做人人爱| 亚洲国产精品va在线看黑人动漫| 欧美日韩亚洲一区二区三区四区| 性欧美激情精品| 欧美精品一区二区在线播放| 午夜精品久久久久| 欧美日韩精品二区| 久久成人免费网| 国产精品99一区二区| 亚洲日本电影在线| 国产亚洲欧美一级| 亚洲一区二区三区在线观看视频| 极品尤物久久久av免费看| 亚洲欧美大片| 亚洲精选久久| 免费成人在线观看视频| 亚洲综合精品一区二区| 欧美激情麻豆| 亚洲电影成人| 国产精品资源| 一区二区三区高清视频在线观看| 精品成人一区二区| 欧美在线亚洲在线| 一区二区三区三区在线| 欧美成人性网|