用 GD32 內建乙太網 MAC + DAVICOM PHY 打造低成本工業網通(GD32F207 / F407 + DM9161A / DM9162)
GD32F207 / GD32F407 內建 10/100 乙太網 MAC,外接 DAVICOM DM9161A / DM9162 PHY,用 MII 或 RMII 就能組出低成本工業乙太網。本文釐清哪些 GD32 才有 MAC、MAC 如何接 PHY,以及 DM9161A 與 DM9162 的真正差別。
哪些 GD32 內建乙太網 MAC?(F405 沒有!)
GD32F207(Cortex-M3,120MHz)與 GD32F407(Cortex-M4,168MHz,含 FPU)都內建 1 組符合 IEEE 802.3 的 10/100 Mbps 乙太網 MAC,附專屬 DMA 與 SRAM、支援 IEEE 1588 PTP,兩者的 MAC 是同一套 IP,差別在核心效能。要特別注意一個常見誤解:並不是所有 GD32F4 都有乙太網——例如 GD32F405 雖然同樣是 M4@168MHz,卻沒有乙太網 MAC(也沒有相機介面);要內建 MAC 請指定 GD32F407(或更高階的 F427/F450/F470)。選型時務必逐顆確認規格表的 Ethernet 欄位。
MAC 如何接外部 PHY:MII vs RMII
GD32 的 MAC 透過 MII 或 RMII 連接外部 PHY。MII 用約 16 條訊號、由 PHY 提供兩條 25MHz 的 TX/RX 時脈;RMII 把訊號縮到約 7 條、改用單一 50MHz 參考時脈(REF_CLK)共用,省下不少腳位,適合腳位緊張的封裝。不論哪種模式,MAC 都用 MDC/MDIO(IEEE 802.3 clause-22)兩線管理介面去讀寫 PHY 的標準暫存器(如 BMCR、BMSR)做速率/雙工/自動協商設定。RMII 最常見的踩雷點是 50MHz 參考時脈:它必須讓 MAC 與 PHY 處於同一時脈域,可由外部振盪器同時供應、或由 PHY 輸出(DM9162 即標示具 RMII 50MHz 時脈輸出)。
DM9161A vs DM9162:都支援 MII/RMII,差在溫度等級
一個常被誤傳的點:DM9161A 與 DM9162 兩顆 PHY 都同時支援 MII 與 RMII(可選),DM9161A 並不是只有 MII。依 DAVICOM 官方 datasheet,兩者都符合 IEEE 802.3/802.3u 10/100、都有自動協商與 Auto-MDIX、都用 clause-22 的 MDC/MDIO 管理介面、都是單一 3.3V 供電。真正差別是:DM9162 是工業級溫度(−40~85°C)版本、提供更多封裝(LQFP-48、QFN-32 等)、並與 DM9161A/C 在 LQFP-48 腳位相容,是 DAVICOM 對 DM9161C 的後繼/替代料。因此要長料、工規溫度就選 DM9162;既有 DM9161A 設計也能平順升級。
為何這個組合划算,加設計要點
當 MCU 本身已內建 MAC(GD32F207/F407),只要外接一顆便宜的 PHY(DM9161A/DM9162)加上網路變壓器與 RJ45 即可上 100Mbps 乙太網,比「MCU 沒有 MAC、外掛一顆 SPI 介面的 MAC+PHY(如 DAVICOM DM9051)」更能吃滿頻寬——因為 SPI 介面的吞吐受 SPI 時脈限制,而 MII/RMII 是並列匯流排。反過來說,若你的 MCU 沒有 MAC(例如 GD32F405 或小型 M0/M3),DM9051 這類 SPI MAC+PHY 反而是省腳位、好整合的選擇。設計上:RMII 的 50MHz 參考時脈要同源、走受控阻抗等長線;PHY 與 RJ45 之間放網路變壓器(或用內建變壓器的 MagJack);GD32 與 DAVICOM PHY 都是 3.3V I/O、無需準位轉換。
文中提及的產品
GD32F207 Cortex-M3 乙太網路 MAC MCU
GD32F207 是 GigaDevice 高效能 32-bit Arm Cortex-M3 微控制器,主頻 120MHz,最高 3072KB Flash/256KB SRAM,並內建 10/100 乙太網路 MAC(含 IEEE 1588)—— 搭配外部乙太網路 PHY(如 DAVICOM DM9161A/DM9162)即可實作有線網路。另具 USB 2.0 FS(OTG)、雙路 CAN 2.0B、最多 3 組 12-bit ADC 與 2 組 DAC,大容量型號還含 TFT-LCD(TLI)、相機介面(DCI)與 AES/HASH/TRNG 安全模組。2.6~3.6V、LQFP64~176,適合工業閘道、人機介面與網路設備。
GD32F407 Arm Cortex-M4 高效能 MCU
GD32F407 是 GigaDevice 高效能 32-bit MCU,採 Arm Cortex-M4 核心(含 FPU/DSP)、主頻 168MHz,Flash 最高 1MB、SRAM 達 192KB,整合 USB OTG(FS+HS)、10/100 Ethernet MAC 與 CAN。封裝對齊 STM32F407(LQFP100/144),常作為 STM32F407 等級的替代方案。
DM9162 10/100M Ethernet PHY 收發器
DM9162 是聯傑 10/100Mbps Fast Ethernet 單埠 PHY 收發器,符合 IEEE 802.3/802.3u,提供 MII/RMII MAC 介面、HP Auto-MDIX 自動跳線與自動協商。單一 3.3V 供電、I/O 耐 5V,封裝 48-pin LQFP / 32-pin QFN。常與具 MII/RMII MAC 的 MCU/SoC 搭配實現有線網路。