ZHCABI8 March 2022 AM2631 , AM2631-Q1 , AM2632 , AM2632-Q1 , AM2634 , AM2634-Q1
AM263x 是一個(gè)片上系統(tǒng) (SoC),具有 Arm? Cortex?-R5F 集群和專用于實(shí)時(shí)控制的加速器。集群可以配置為雙核模式或鎖步模式。加速器命名為控制子系統(tǒng),包括 ADC、DAC 和 PWM 等接口模塊。本文以內(nèi)核 0-0 為例,演示了一個(gè) R5F 內(nèi)核的特性和一個(gè)牽引逆變器的一組接口模塊。此部分簡(jiǎn)要介紹 R5F 集群和控制子系統(tǒng)。有關(guān) SoC 的更多詳情,可參見(jiàn) AM263x Sitara? 微控制器數(shù)據(jù)表和 AM263x Sitara 處理器技術(shù)參考手冊(cè)。有關(guān)逆變器硬件的詳情,可參見(jiàn)經(jīng)過(guò) ASIL D 等級(jí)功能安全認(rèn)證的高速牽引和雙向直流/直流轉(zhuǎn)換參考設(shè)計(jì)。
Arm? Cortex?-R5F 集群包括兩個(gè) R5F 內(nèi)核,附帶 L1 緩存和緊耦合存儲(chǔ)器 (TCM) 之類的存儲(chǔ)器、標(biāo)準(zhǔn) Arm CoreSight? 調(diào)試和布線架構(gòu)、集成式矢量中斷管理器 (VIM)、ECC 聚合器以及支持協(xié)議轉(zhuǎn)換和地址轉(zhuǎn)換的各種其他模塊,以便于集成到 SoC。更詳細(xì)的方框圖可參見(jiàn) AM263x 技術(shù)參考手冊(cè)。解決實(shí)時(shí)控制問(wèn)題的關(guān)鍵在于了解緩存和 TCM 的影響。在編寫(xiě)程序時(shí),可以通過(guò)鏈接命令文件將指令和數(shù)據(jù)分配給片上 RAM 或 TCM。在執(zhí)行過(guò)程中,片上 RAM 中經(jīng)常使用的指令和數(shù)據(jù)會(huì)自動(dòng)進(jìn)入緩存。因此,執(zhí)行時(shí)間顯著改善。但是,片上 RAM 中的數(shù)據(jù)直到從緩存寫(xiě)回后才更新。當(dāng)數(shù)據(jù)在緩存中時(shí),只能通過(guò)內(nèi)核中運(yùn)行的指令訪問(wèn)它,Code Composer Studio? (CCS) 等集成開(kāi)發(fā)環(huán)境 (IDE) 的存儲(chǔ)器視圖無(wú)法讀取緩存。然而,通過(guò)在內(nèi)核內(nèi)部運(yùn)行通用異步接收器/發(fā)送器 (UART) 的一段程序,也可以使用 CSS 讀取緩存。UART 方法的詳情將在下一部分中介紹。另一方面,分配給 TCM 的指令和數(shù)據(jù)保存在地址中,可隨時(shí)提供給存儲(chǔ)器視圖。通常情況下,程序在緩存和 TCM 中的執(zhí)行時(shí)間非常接近,而片上 RAM 中的程序執(zhí)行則要慢得多。從片上 RAM 向緩存轉(zhuǎn)移程序的操作需要一些時(shí)間,并導(dǎo)致不可預(yù)測(cè)的延遲。如果延遲對(duì)于應(yīng)用要求很重要,強(qiáng)烈建議將應(yīng)用程序存儲(chǔ)在 TCM 中。有關(guān) TCM 地址的詳情可參見(jiàn) AM263x 技術(shù)參考手冊(cè)。本文中,場(chǎng)定向控制的中斷程序和軟件旋轉(zhuǎn)變壓器數(shù)字轉(zhuǎn)換器位于 TCM 中。鏈接命令文件作為示例放在 CCS 項(xiàng)目文件夾中。
實(shí)時(shí)控制加速器繼承了全球廣泛使用的德州儀器 (TI) 經(jīng)典 C2000 控制模塊。它包括模數(shù)轉(zhuǎn)換器 (ADC)、模擬比較器、緩沖數(shù)模轉(zhuǎn)換器、增強(qiáng)型脈寬調(diào)制器 (EPWM)、增強(qiáng)型捕捉、增強(qiáng)型正交編碼器脈沖、快速串行接口、Σ-Δ 濾波器模塊和縱橫制。有關(guān)模塊的詳情可參見(jiàn) AM263x 技術(shù)參考手冊(cè)。在直觀的系統(tǒng)配置工具 SYSCONFIG 的幫助下,還可以通過(guò)在配置這些模塊時(shí)減少對(duì)實(shí)施細(xì)節(jié)的暴露。有關(guān) SYSCONFIG 的詳情可參見(jiàn) AM263x 軟件開(kāi)發(fā)套件 (SDK)。模塊同步的關(guān)鍵是在 EPWM 時(shí)基部分中配置 PWM 同步輸入/輸出,在 EPWM 事件觸發(fā)器部分中配置 ADC 轉(zhuǎn)換開(kāi)始 (SOC) 觸發(fā)器。時(shí)基用于對(duì)齊多個(gè) PWM 通道,而事件觸發(fā)器用于同步 ADC、DMA 和中斷等特性。牽引逆變器演示的 CCS 項(xiàng)目文件夾中有一個(gè)牽引逆變器示例。本例中設(shè)置了一個(gè) PWM 通道,通過(guò) DMA 和 DAC 以更高的頻率觸發(fā)旋轉(zhuǎn)變壓器激勵(lì)信號(hào)更新,還使用三個(gè) PWM 通道生成逆變器信號(hào)和 ADC SOC。這樣,來(lái)自 DAC 的旋轉(zhuǎn)變壓器激勵(lì)信號(hào)將對(duì)齊到所需的 ADC 采樣相位。多個(gè) ADC 器件可以共享同一個(gè) SOC。也就是說(shuō),可以在多個(gè) ADC 器件中同時(shí)采集多個(gè)樣本。在一個(gè) ADC 器件中,可以在 SOC 配置部分中配置采樣序列。ADC 中斷可在 INT 配置中設(shè)置。中斷可以在一個(gè) ADC 轉(zhuǎn)換開(kāi)始或結(jié)束時(shí)觸發(fā)。有關(guān) PWM 和 ADC 的部分簡(jiǎn)單示例可在 AM263x SDK 的“\examples\drivers\epwm”和“\examples\drivers\adc”下找到。有關(guān) API 的更多詳情,可在 AM263x SDK 的“\source\drivers”下找到。頭文件的很多細(xì)節(jié)都在注釋中。
前面提到,在開(kāi)發(fā)過(guò)程中需要考慮一些主題,例如 SoC 架構(gòu)和 SDK API。有關(guān)它們的更多詳情,可參見(jiàn) AM263x 技術(shù)參考手冊(cè)和 SDK 軟件包。在后面部分中,本文將重點(diǎn)介紹如何使用示例項(xiàng)目為框架,以加快開(kāi)發(fā)牽引逆變器,以及如何將現(xiàn)有項(xiàng)目代碼遷移到 AM263x。
框架包括圖 1-1 中突出顯示的資源,并內(nèi)置到圖 1-2 中的牽引系統(tǒng)。TIDM-02009 是牽引逆變器參考設(shè)計(jì)硬件。它包括電源模型、柵極驅(qū)動(dòng)器、電流和電壓采樣、旋轉(zhuǎn)變壓器模擬前端以及一些連接接口。電機(jī)包括接受正弦波激勵(lì)并發(fā)送調(diào)制反饋、以檢測(cè)位置的旋轉(zhuǎn)變壓器。場(chǎng)定向控制使用集群 0 內(nèi)核 0 實(shí)現(xiàn)。ADC INT1 的實(shí)時(shí)控制部分將分配給 TCM,以精準(zhǔn)確定執(zhí)行時(shí)間。