天天看點

在M6442核心闆上使用GPMC總線擴充

作者:ZLG緻遠電子

本文介紹了M6442核心闆GPMC 總線的基本概念、功能特點、配置方法、使用注意事項以及應用案例。GPMC 是一種并行總線接口,可實作與多種外部裝置的高速、靈活、可靠的資料通信。

M6442核心闆簡介

是我們基于 TI 公司 AM64x Sitara™處理器開發的工控核心闆,旨在滿足工業4.0嵌入式産品的複雜處理需求。核心闆預設搭配1GB DDR4記憶體和4GB eMMC存儲,型号為M6442-1GF4GLI-T。核心闆闆載CPU內建了兩個 1.0 GHz的ARM Cortex®-A53 、四個 800 MHz的ARM Cortex®-R5F ,以及一個400 MHz的ARM Cortex®-M4F,能同時滿足進階應用處理和實時控制的需求,提供更全面的功能和性能。

點選「連結」可選購M6442 Cortex®-A53工控核心闆

在M6442核心闆上使用GPMC總線擴充

M6442-EV-Board是我們基于M6442核心闆開發的評估底闆。

點選「連結」可選購M6442-EV-Board評估底闆

在M6442核心闆上使用GPMC總線擴充

M6442-EV-Board評估底闆內建了大量的外設和接口資源,如圖 1所示,其中有1個M.2接口用于評估5G子產品、1個SIM卡座、3路千兆以太網接口、1路調試接口、1路CAN接口、1路RS232接口、1路RS485接口、1路GPMC接口、1路擴充IO接口(包含4路PWM、8路ADC、4路SPI、3路UART、3路I2C、8路GPIO)、1個TF卡座、1個JTAG座,可用于工業網關、運動控制、工廠自動化等應用場合。

在M6442核心闆上使用GPMC總線擴充

圖1 M6442-EV-Board接口示意圖

GPMC 的基本概念

GPMC (General-Purpose Memory Controller)是TI公司專用的通用外部存儲器控制器接口,支援多達 8 個晶片選擇信号,可連接配接多達 8 個不同的外部裝置,例如大容量 NAND flash 或 NOR flash閃存裝置、 FPGA 或 CPLD 專用內建電路裝置等。

GPMC架構如圖2所示:

在M6442核心闆上使用GPMC總線擴充

圖2 GPMC架構示意圖

GPMC 的主要信号線包括:

  • GPMC_A[25:0]:位址線,用于傳輸位址資訊或指令資訊。
  • GPMC_AD[15:0]:資料線,用于傳輸資料資訊。
  • GPMC_ADVN_ALE:位址有效信号,用于訓示位址資訊或指令資訊的有效性。
  • GPMC_OEN_REN:輸出使能/讀使能信号,用于控制輸出或讀取操作。
  • GPMC_WEN:寫使能信号,用于控制寫入操作。
  • GPMC_CS[7:0]:晶片選擇信号,用于選擇不同的外部裝置。
  • GPMC_CLK:時鐘信号,用于同步通路操作。
  • GPMC_WAIT[3:0]:等待信号,用于訓示外部裝置的就緒狀态。

GPMC 的功能特點

1. 高速率

GPMC總線的速率取決于不同的配置和工作模式,但一般來說,它可以達到100MB/s以上的速率,實際應用中通過配置GPMC接口的時序參數和不同工作模式,速率可超過100MB/s。

2. 靈活的連接配接和配置方式

  • 支援多種外部裝置類型,如異步 SRAM、NOR flash、NAND flash、FPGA 等,可實作與不同的存儲器或邏輯裝置的通信。
  • 支援多種通路模式,如同步、異步、突發等,可根據外部裝置的性能和時序要求進行選擇和配置。
  • 支援多種時鐘源,如系統時鐘、外部時鐘或自适應時鐘,可根據外部裝置的速度要求進行選擇和配置。

3. 高可靠性

  • 支援位址/資料複用模式,可減少引腳數目和布線複雜度,提高系統內建度和可靠性。
  • 支援預取引擎,可實作高速資料傳輸和緩沖管理,提高系統性能和效率。
  • 支援 ECC 引擎,可實作資料校驗和糾錯功能,提高系統可靠性和安全性。

GPMC的配置方法

  • 選擇外部存儲器裝置。首先确定需連接配接的外部存儲器裝置的類型,例如 NOR Flash、NAND Flash 或 SRAM。
  • 配置 GPMC 寄存器。需根據外部存儲器的規格和需求來配置總線時序、片選信号、資料位寬、時鐘頻率等。
  • 配置時序參數。外部存儲器的通路需要精确的時序參數,包括資料保持時間、時鐘周期等,這些參數需根據存儲器廠商提供的規格書或資料手冊進行配置。
  • 配置中斷和片選信号。配置中斷信号以及外部存儲器的片選信号,以便在存儲器操作完成時通知處理器。
  • 初始化和測試。配置完畢後,進行初始化并測試存儲器的通路,确儲存儲器可以正确讀寫并且時序參數符合要求。

GPMC 的使用注意事項

1. 根據外部存儲器裝置的類型和特性,選擇合适的 GPMC 模式、時序和位址空間。

GPMC 模式主要有以下幾種:

  • 資料突發模式,一次尋址多次資料傳輸,适用于同步通信。
  • 單一通路模式,一次尋址一次資料傳輸,适用于異步通信。
  • 複用通路模式,位址線和資料線複用,适用于異步通信。

2. 配置好 GPMC 寄存器後,檢查是否有沖突或錯誤,如位址重疊、時序不比對等。位址重疊是指不同的片選信号對應的位址空間有重疊部分,導緻通路沖突或混亂。

3. 通路 GPMC 總線時,遵循外部存儲器裝置的協定和指令,如讀寫控制、狀态檢測等。例如,NAND flash裝置通常需要發送指令和位址來讀取或寫入資料。

4. 使用 GPMC 總線時,注意保護資料的完整性和安全性,如添加校驗碼、加密等。

GPMC的應用案例

ZMC600E EtherCAT主站控制器是我們基于M6442核心闆和FPGA開發的工控産品,其專門為實時處理和通信與應用處理的工業應用而建構。M6442核心闆與FPGA之間的GPMC總線連接配接方式如圖3所示。

在M6442核心闆上使用GPMC總線擴充

圖3 M6442核心闆與FPGA通過GPMC連接配接的示意圖

ZLG商城:https://j.youzan.com/Kt-L3L

ZLG開發者社群:https://z.zlg.cn

更多技術幹貨可關注“ZLG緻遠電子”微信公衆号