《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 解決方案 > STM32-F2系列微控制器能夠滿(mǎn)足工廠(chǎng)自動(dòng)化苛刻要求的高速Cortex-M3微控制器

STM32-F2系列微控制器能夠滿(mǎn)足工廠(chǎng)自動(dòng)化苛刻要求的高速Cortex-M3微控制器

2012-04-18

引言

    工業(yè)環(huán)境正在對(duì)嵌入式控制系統(tǒng)開(kāi)發(fā)人員構(gòu)成日益嚴(yán)峻的挑戰(zhàn),究其主要原因,當(dāng)前系統(tǒng)和通信協(xié)議棧變得越來(lái)越復(fù)雜,系統(tǒng)實(shí)時(shí)性和安全要求越來(lái)越嚴(yán)格,同時(shí),這種趨勢(shì)直接影響到半導(dǎo)體元器件的特性和技術(shù)規(guī)格。

    為克服這些挑戰(zhàn),意法半導(dǎo)體在今年初發(fā)布了STM32-F2系列微控制器,以幫助開(kāi)發(fā)人員實(shí)現(xiàn)要求苛刻的工業(yè)應(yīng)用。新系列產(chǎn)品誕生于深受市場(chǎng)歡迎的STM32產(chǎn)品家族,擁有更高的性能、更大的存儲(chǔ)容量和針對(duì)工業(yè)應(yīng)用優(yōu)化的外設(shè)。F2系列產(chǎn)品在一顆芯片上集成了多種功能,例如,控制/調(diào)整功能和復(fù)雜的通信協(xié)議棧。高集成度的優(yōu)點(diǎn)是,縮小印刷電路板空間,避免在不同的控制器之間存在易受到電磁兼容性影響的連接電路,優(yōu)化應(yīng)用成本。

    工業(yè)自動(dòng)化市場(chǎng)的特點(diǎn)是多個(gè)通信協(xié)議并存,實(shí)時(shí)應(yīng)用需要高效的操作系統(tǒng)。因此,軟件棧和操作系統(tǒng)成為選擇微控制器的首要參數(shù)。STM32微控制器基于受到市場(chǎng)廣泛支持的Cortex M3內(nèi)核,因此,有20多家實(shí)時(shí)操作系統(tǒng)和通信協(xié)議提供商供用戶(hù)選擇。為使STM32微控制器更加完美,意法半導(dǎo)體還增加了一個(gè)兼容CMSIS的硬件抽象層和其它固件庫(kù),例如,支持永磁同步電機(jī)(PMSM)的磁場(chǎng)定向控制(FOC) 。本文將介紹兩個(gè)第三方專(zhuān)門(mén)為STM32F-2研發(fā)的工廠(chǎng)自動(dòng)化軟件: IXXAT 開(kāi)發(fā)的支持PTP的IEEE1588協(xié)議軟件包和PORT 開(kāi)發(fā)的Profinet通信協(xié)議棧。

STM32-F2針對(duì)工廠(chǎng)自動(dòng)化的改進(jìn)的性能

    與上一代產(chǎn)品STM32-F1相比,STM32-F2在很多方面加以改進(jìn),特別是性能更加出色,外設(shè)接口更加豐富。STM32-F2采用90nm光刻技術(shù),處理速度達(dá)到120MHz,并使運(yùn)行功耗保持在合理水平(300uA/MHz)。這項(xiàng)光刻技術(shù)的另一個(gè)好處是集成度更高,有助于降低應(yīng)用的系統(tǒng)級(jí)成本。

    為了充分發(fā)揮Cortex-M3內(nèi)核的優(yōu)異性能,意法半導(dǎo)體重新評(píng)估了產(chǎn)品架構(gòu)。新產(chǎn)品在120MHz下釋放150DMIP的強(qiáng)勁性能(Dhrystone 2.1),CoreMark™測(cè)試成績(jī)?nèi)〉?54高分(2.120 CoreMark/MHz 通過(guò)EEMBC 認(rèn)證),STM32F-2因而進(jìn)入Cortex-M微控制器的第一陣營(yíng),這個(gè)成績(jī)歸功于自適應(yīng)實(shí)時(shí)存儲(chǔ)器加速器(ARTTM),采用這項(xiàng)閃存訪(fǎng)問(wèn)管理技術(shù)后,應(yīng)用代碼執(zhí)行不再會(huì)受閃存本身固有的等待狀態(tài)的影響。雖然閃存的速度比內(nèi)核本身慢三倍,但是,在代碼執(zhí)行過(guò)程中不會(huì)出現(xiàn)等待狀態(tài),即便處理速度達(dá)到120MHz時(shí)也是零等待狀態(tài)。因此,新系列產(chǎn)品可大幅縮減設(shè)計(jì)尺寸,降低功耗和閃存的EMC影響,確保最高的產(chǎn)品性能。

    STM32-F2的主要特性如下: 最高1MB的閃存、128kB RAM、6個(gè)UART(7.5Mbps)、3 SPI接口(30Mbps)、支持IEE1588 PTP V2的以太網(wǎng)媒體訪(fǎng)問(wèn)控制器(MAC)、4kB備用RAM、512字節(jié)的一次性可編程存儲(chǔ)器(OTP)。

總線(xiàn)矩陣

    除單純的內(nèi)核計(jì)算能力外,微控制器設(shè)計(jì)人員還必須考慮總線(xiàn)設(shè)計(jì),在微控制器不同單元之間實(shí)現(xiàn)并行訪(fǎng)存和數(shù)據(jù)傳輸,例如,內(nèi)核和通信外設(shè)需要同時(shí)訪(fǎng)問(wèn)不同的存儲(chǔ)器。因此,主要總線(xiàn)最終被設(shè)計(jì)成一個(gè)多層AHB總線(xiàn)矩陣,最多支持6個(gè)同步數(shù)據(jù)流。

STM32-F2系列微控制器共有5個(gè)總線(xiàn)主控制器

STM32-F2系列微控制器共有5個(gè)總線(xiàn)主控制器:

·         有3條內(nèi)核總線(xiàn)的ARM Cortex-M3內(nèi)核

·         2個(gè)DMA控制器

·         高速USB主設(shè)備控制器

·         10/100以太網(wǎng)MAC控制器

   上圖中的黑點(diǎn)代表在這個(gè)7層總線(xiàn)結(jié)構(gòu)中總線(xiàn)主控制器與從控制器的全部接口。為提高系統(tǒng)的能效,SRAM存儲(chǔ)器被分成兩個(gè)存儲(chǔ)區(qū)SRAM1和SRAM2,SRAM1用于保存基本協(xié)議棧和變量,而SRAM2則用作通信外設(shè)的幀緩沖區(qū)。以太網(wǎng)和USB外設(shè)都占用了幾千字節(jié)的FIFO存儲(chǔ)空間,而且分別擁有一個(gè)各自專(zhuān)用的DMA控制器。

   除多個(gè)SRAM分區(qū)外,該系統(tǒng)還有兩個(gè)AHB總線(xiàn)從控制器。同樣地,這樣的配置準(zhǔn)許不同的總線(xiàn)主控制器并行處理和同步訪(fǎng)問(wèn)不同的高速外設(shè),例如,加密處理器和通用輸入輸出端口。AHB從控制器和DMA控制器都是雙端口,這樣設(shè)計(jì)準(zhǔn)許在A(yíng)HB總線(xiàn)上直接連接DMA控制器與高速外設(shè),避免在總線(xiàn)矩陣和二級(jí)高速至低速橋上因延遲而降低性能。

   外部存儲(chǔ)器接口又稱(chēng)“靜態(tài)存儲(chǔ)控制器”,可直接連接不同的異步和同步存儲(chǔ)器、NOR/NAND閃存、SRAM、偽SRAM,甚至還能連接一個(gè)液晶顯示器控制器,外存接口總線(xiàn)頻率最高60MHz,還能通過(guò)指令總線(xiàn)(I-bus)獲取CPU內(nèi)核指令。

存儲(chǔ)器加速器

STM32存儲(chǔ)器加速器

    意法半導(dǎo)體的自適應(yīng)實(shí)時(shí)(ART)存儲(chǔ)器加速器(如上圖所示)可讓Cortex-M3內(nèi)核釋放最高的處理性能,雖然閃存本身需要等待狀態(tài),但是,引入這項(xiàng)技術(shù)后,STM32-F2以120 MHz的速度從閃存執(zhí)行代碼無(wú)等待狀態(tài)。

    存儲(chǔ)器接口是128位寬,每次可取4-8條THUMB2指令。如果執(zhí)行線(xiàn)性代碼,因?yàn)轭A(yù)取指功能,即便閃存速度只是內(nèi)核的四分之一,代碼執(zhí)行也不會(huì)出現(xiàn)等待狀態(tài)。

    然而,如果執(zhí)行轉(zhuǎn)移或跳轉(zhuǎn)指令,需要立即取出轉(zhuǎn)移或跳轉(zhuǎn)目標(biāo)地址的數(shù)據(jù),這樣,存儲(chǔ)器的等待狀態(tài)會(huì)增加系統(tǒng)開(kāi)銷(xiāo),這就是ART及其64項(xiàng)高速指令緩存發(fā)揮作用的地方。如果非順序指令第一次出現(xiàn),這條指令將從存儲(chǔ)器中取出并保存在64項(xiàng)高速緩存的一個(gè)存儲(chǔ)項(xiàng)內(nèi)。在下一次出現(xiàn)時(shí),該指令將從高速緩存中直接取出,沒(méi)有等待狀態(tài)。

    這個(gè)指令高速緩存還有一個(gè)LRU即最近不常用機(jī)制,因此,假如一個(gè)應(yīng)用軟件的轉(zhuǎn)移指令超過(guò)64條,最近常用的新指令將取代最近不常用的指令。這個(gè)架構(gòu)的優(yōu)點(diǎn)是,即便中斷服務(wù)處理程序被加速器覆蓋,這個(gè)機(jī)制仍然能夠支持各種轉(zhuǎn)移指令。

    最常用的8行數(shù)據(jù)項(xiàng)目像高速指令緩存一樣,但是用于暫存最常用的數(shù)據(jù)庫(kù),可以使D-bus總線(xiàn)立即充滿(mǎn)數(shù)據(jù)。


數(shù)據(jù)項(xiàng)目像高速指令緩存

工業(yè)協(xié)議棧和固件

IXXAT為STM32開(kāi)發(fā)的IEEE 1588 PTP協(xié)議

    測(cè)量系統(tǒng)、電信設(shè)備、自動(dòng)化系統(tǒng)或汽車(chē)系統(tǒng)等分布式應(yīng)用設(shè)備對(duì)精確時(shí)序機(jī)制的要求越來(lái)越高。IEEE 1588的精確時(shí)序協(xié)議(PTP)通過(guò)以太網(wǎng)使分布式設(shè)備的時(shí)序同步精度達(dá)到納秒級(jí),從而滿(mǎn)足分布式應(yīng)用系統(tǒng)的要求。

    IXXAT自動(dòng)化技術(shù)有限公司開(kāi)發(fā)的IEEE 1588協(xié)議軟件讓設(shè)備廠(chǎng)商能夠輕松、快速地開(kāi)發(fā)IEEE 1588兼容設(shè)備,這款軟件的源代碼采用C語(yǔ)言,可實(shí)現(xiàn)在任何平臺(tái)上。

    為了在意法半導(dǎo)體的STM32-F2系列微控制器上實(shí)現(xiàn)IEEE 1588協(xié)議,IXXAT為STM32-F2用戶(hù)提供一個(gè)定制版協(xié)議軟件,該解決方案大幅簡(jiǎn)化并加快了協(xié)議的實(shí)現(xiàn)過(guò)程。STM32-F2專(zhuān)用協(xié)議軟件需要與一個(gè)有組播功能的TCP/IP協(xié)議棧配合使用,有無(wú)操作系統(tǒng)均可。

    因?yàn)楣δ茇S富,連續(xù)升級(jí),占有率高,IXXAT的IEEE 1588協(xié)議軟件已成為1588協(xié)議軟件市場(chǎng)的主要參考標(biāo)準(zhǔn)。最新的1.03版IEEE 1588已支持新的IPv6標(biāo)準(zhǔn),該標(biāo)準(zhǔn)將逐漸被新系統(tǒng)所采用。這個(gè)解決方案的模塊化軟件結(jié)構(gòu)包含基本包和可選擴(kuò)展文件,例如,用于IPv6、IEEE 802.3和Unicast的文件,讓包與專(zhuān)門(mén)應(yīng)用及其資源能夠?qū)崿F(xiàn)最佳匹配。

    用戶(hù)可以動(dòng)態(tài)設(shè)置多種功能,例如,延遲機(jī)制(對(duì)等/端到端)和通信技術(shù)(IPv4, IPv6, 802.3),因此,設(shè)計(jì)人員開(kāi)發(fā)設(shè)備時(shí)無(wú)需考慮網(wǎng)絡(luò)結(jié)構(gòu),用戶(hù)使用設(shè)備時(shí)無(wú)需修改固件,這樣設(shè)計(jì)可以降低研制成本,讓客戶(hù)提出更吸引人的價(jià)值主張。

    STM32-F2系列微控制器在以太網(wǎng)媒體訪(fǎng)問(wèn)控制器MAC內(nèi)整合了支持IEEE 1588 (PTP V2)的硬件,具有實(shí)現(xiàn)一個(gè)高精度時(shí)序同步協(xié)議所需的全部資源。我們做了一個(gè)長(zhǎng)時(shí)間的背對(duì)背連接同步測(cè)試,采用了1個(gè)精確的主控制器(2ppm晶振),測(cè)試條件是0.125秒同步間隔,測(cè)試結(jié)果顯示,該平臺(tái)最大同步偏差為±70納秒,標(biāo)準(zhǔn)同步偏差大約是15納秒。在上電后,IXXAT的IEEE 1588協(xié)議軟件同步平均需要大約20個(gè)同步間隔。

    在一個(gè)STM32微控制器上實(shí)現(xiàn)的IEEE 1588軟件,取得1個(gè)有IPv4、端到端(E2E)和對(duì)等(P2P)延遲機(jī)制和主控制器的通用普通時(shí)鐘的典型功能,需要47KB空間保存程序代碼,7KB空間保存只讀數(shù)據(jù),23KB空間保存讀寫(xiě)數(shù)據(jù)。

    除IEEE 1588協(xié)議軟件外,IXXAT的服務(wù)還包括定制軟硬件開(kāi)發(fā)和系統(tǒng)設(shè)計(jì),以及技術(shù)研討會(huì)和代碼推介會(huì)服務(wù)。STM3210C-EVAL 評(píng)估板用戶(hù)可以從下面的網(wǎng)址下載IXXAT與意法半導(dǎo)體合作開(kāi)發(fā)的免費(fèi)版IEEE 1588軟件:http://www.ixxat.de/evaluation_kit_stm3210c_de.html.

PORT Profinet軟件棧

PORT Profinet軟件棧

 

    Port公司是市場(chǎng)領(lǐng)先的CAN/CANopen、DeviceNet現(xiàn)場(chǎng)總線(xiàn)解決方案提供商,公司加強(qiáng)了硬件和固件開(kāi)發(fā)能力,擴(kuò)大了業(yè)務(wù)組合,加強(qiáng)了協(xié)議棧和POWERLINK、PROFINET、EtherNet/IP和EtherCAT開(kāi)發(fā)工具產(chǎn)品組合。

   PROFINET是工業(yè)以太網(wǎng)版PROFIBUS總線(xiàn),而這項(xiàng)技術(shù)被業(yè)界公認(rèn)為極其耗費(fèi)資源。意法半導(dǎo)體與Port合作為STM32 F-2系列研發(fā)了一款只需128KB SRAM存儲(chǔ)容量的PROFINET軟件,讓意法半導(dǎo)體的微控制器步入一個(gè)新的應(yīng)用領(lǐng)域。STM32 F-2與Port PROFINET組合不僅適用于工業(yè)自動(dòng)化應(yīng)用,例如,工業(yè)編碼器(定位)、工業(yè)驅(qū)動(dòng)附件,而且還適用于內(nèi)置以太網(wǎng)控制功能的安全系統(tǒng)。PROFINET的STM32 F-2版協(xié)議棧為用戶(hù)提供符合IEC 61158和IEC 61784標(biāo)準(zhǔn)的PROFINET IO兼容通信所需的全部服務(wù)功能,幫助用戶(hù)輕松快速地開(kāi)發(fā)PROFINET IO設(shè)備。該解決方案是是通過(guò)一個(gè)硬件抽象層訪(fǎng)問(wèn)硬件,并為用戶(hù)提供能夠連接意法半導(dǎo)體的不同微控制器的驅(qū)動(dòng)程序,有無(wú)操作系統(tǒng)均可。為了快速獲得總線(xiàn)使用權(quán)限,符合PROFINET的技術(shù)規(guī)范,該解決方案對(duì)底層以太網(wǎng)驅(qū)動(dòng)軟件進(jìn)行了優(yōu)化。STM32 F-2支持PROFINET Conformance Class A,還可以支持PROFINET Realtime Class 1。為了幫助設(shè)計(jì)人員輕松快速地開(kāi)發(fā)項(xiàng)目,Port還提供一個(gè)PROFINET設(shè)計(jì)工具。

意法半導(dǎo)體的電機(jī)矢量控制庫(kù)

   因?yàn)榧蓛蓚€(gè)先進(jìn)的定時(shí)器外設(shè)、3個(gè)快速數(shù)模轉(zhuǎn)換器(0.5MSps)和DMA直接訪(fǎng)存功能,STM32F2x特別適合需要1個(gè)或2個(gè)電機(jī)控制驅(qū)動(dòng)器的應(yīng)用。即便驅(qū)動(dòng)兩個(gè)電機(jī)時(shí),150DMIPS的性能讓STM32F2x有充足后備動(dòng)力驅(qū)動(dòng)其它復(fù)雜的應(yīng)用任務(wù)。

   STM32F-2配備STM32 PMSM FOC軟件開(kāi)發(fā)工具,實(shí)現(xiàn)了磁場(chǎng)定向控制(FOC)驅(qū)動(dòng)3相永磁同步表面安裝電機(jī)(SM-PMSM)和內(nèi)部安裝電機(jī)(I-PMSM),最新的3.1版STM32 PMSM FOC開(kāi)發(fā)工具套件包含STM32F-2微控制器,預(yù)計(jì)2011年7月上市。

   STM32 PMSM FOC開(kāi)發(fā)工具套件可用于快速評(píng)估STM32微控制器的各種應(yīng)用和完整的應(yīng)用平臺(tái),當(dāng)開(kāi)發(fā)在意法半導(dǎo)體微控制器上運(yùn)行的電機(jī)控制算法時(shí),這套開(kāi)發(fā)工具有助于縮短的應(yīng)用的開(kāi)發(fā)周期。PMSM FOC固件的源代碼采用C語(yǔ)言,實(shí)現(xiàn)了電機(jī)控制內(nèi)核算法(參考系轉(zhuǎn)換、電流調(diào)整、速度調(diào)整、空間矢量調(diào)制、能效優(yōu)化)以及傳感器檢測(cè)算法、解碼算法(3個(gè)并聯(lián)電阻、意法半導(dǎo)體專(zhuān)利單直流鏈路并聯(lián)電阻、隔離型電流傳感器、增量編碼器、霍爾傳感器)和轉(zhuǎn)子位置重構(gòu)無(wú)傳感器算法。

為了讓大家了解STM32F-2出色的計(jì)算性能,我們做了一個(gè)性能測(cè)試。在使用兩個(gè)并聯(lián)電阻檢測(cè)電機(jī)電流的無(wú)傳感器配置中,用一個(gè)STM32F-2驅(qū)動(dòng)兩個(gè)PMSM電機(jī),按照標(biāo)準(zhǔn)雙矢量控制性能(以10kHz運(yùn)行FOC算法)測(cè)試,CPU負(fù)荷在35%的范圍內(nèi);按照高級(jí)雙矢量控制性能(以16kHz運(yùn)行FOC算法)測(cè)試,CPU負(fù)荷在50%的范圍內(nèi)。這些性能為STM32F-2系列微控制器在工廠(chǎng)自動(dòng)化領(lǐng)域開(kāi)啟了廣泛的應(yīng)用空間。

結(jié)語(yǔ)

    要求嚴(yán)格的工業(yè)通信協(xié)議軟件棧顯然能夠充分利用STM32F-2系列微控制器高于同級(jí)產(chǎn)品的優(yōu)異性能。當(dāng)執(zhí)行高性能應(yīng)用軟件和算法時(shí),STM32F-2執(zhí)行速度比上一代產(chǎn)品STM32F-1提高1倍多。

   STM32-F2系列產(chǎn)品已通過(guò)客戶(hù)檢測(cè)驗(yàn)證,目前正在提升產(chǎn)量。大多數(shù)固件和協(xié)議棧已經(jīng)上市,未上市的也準(zhǔn)備今年夏季發(fā)布。STM32-F2系列產(chǎn)品的升級(jí)產(chǎn)品目前正在設(shè)計(jì)階段,新一代產(chǎn)品包括基于Cortex-M4內(nèi)核的微控制器,能夠更好地支持需要數(shù)字信號(hào)處理器的應(yīng)用。

.

本站內(nèi)容除特別聲明的原創(chuàng)文章之外,轉(zhuǎn)載內(nèi)容只為傳遞更多信息,并不代表本網(wǎng)站贊同其觀(guān)點(diǎn)。轉(zhuǎn)載的所有的文章、圖片、音/視頻文件等資料的版權(quán)歸版權(quán)所有權(quán)人所有。本站采用的非本站原創(chuàng)文章及圖片等內(nèi)容無(wú)法一一聯(lián)系確認(rèn)版權(quán)者。如涉及作品內(nèi)容、版權(quán)和其它問(wèn)題,請(qǐng)及時(shí)通過(guò)電子郵件或電話(huà)通知我們,以便迅速采取適當(dāng)措施,避免給雙方造成不必要的經(jīng)濟(jì)損失。聯(lián)系電話(huà):010-82306118;郵箱:aet@chinaaet.com。