環球快看點丨SoC FPGA異構芯片在智能家電領域的差異化設計

2023-06-03 17:22:10 來源:HME京微齊力

智能家電的發展需求

隨著技術的進步和信息化程度的提高,人們對智能家電的要求也越來越高。智能家電產品在升級進階的過程中,針對家電產品的技術方面,包括電機運動控制、HMI的可視化控制、遠程無線控制等諸多方面的多元化應用都有了高層次的需求。


(資料圖片)

多集成強算力SoC FPGA助力AIoT快速發展

在AIoT時代,智能家電的主控IC將不再只是負責核心控制,而是需要融合推理和運算等AI能力,更將圖像分析、生物識別等多種人工智能算法融入家電領域,已經成為智能家電產品發展的必然趨勢之一。

新一代SoC FPGA憑借其強大的并行處理數據的能力和實時性的特點在AIoT領域發揮著獨特的作用。隨著集成電路的發展,SoC FPGA的性能不斷提高,同時較為先進的控制理論和控制算法的成熟,使得BLDC變頻電機等運動控制的應用越來越廣泛,各種先進的控制算法可以通過SoC FPGA中FPGA部分高效實現。圖像處理方面,相比使用單一MCUCPU,FPGA能夠達到較高的實時性,可以進行實時流水線運算。在深度神經網絡方面,FPGA對卷積神經網絡(CNN)、循環神經網絡(RNN)和較復雜的并行神經網絡算法的加速具有一定的優勢。

人機交互界面(HMI)方面,相比之前用低主頻/小存儲的單一MCU實現方案,基于強大處理能力的SoC FPGA異構芯片能夠幫助客戶快速實現定制化且精美的人機圖形界面。

目前較為流行的嵌入式圖形庫包括:LVGL(Little VGL)emWinQT和TouchGFX等,比較而言,LVGL界面更加精美,支持更多圖形控件,更重要的是消耗資源少,是一款輕量級的GUI工具。LVGL對硬件和開發環境有如下要求:

應用于16、32或64位微控制器或處理器;

Flash大于64kB,RAM大于8kB(最小內存64kB Flash,8kB RAM);

推薦主頻大于16MHz的微控制器;

LVGL的圖形緩沖區大于水平分辨率像素;

使用C編寫以獲得最大兼容性(兼容C++);

需要C99或者更新的編譯器。

SoC FPGA異構芯片在智能家電領域的優勢

結合現代智能家電的發展和應用需求,一方面需要對電氣做出快速、精準的控制,另一方面又要為消費者提供優質的人機交互界面(HMI),本文介紹的HME SoC FPGA異構芯片在性能、功耗、計算速度、人機交互處理等方面均具有一定的優勢。這類新型的異構芯片更適用于新需求下智能家電領域的解決方案。

HME-M7的特點

HME-M7系列芯片是自主研發的國產SoC FPGA,集成了ARMCortex-M3內核和高性能FPGA,采用高達12K容量的新型LP結構,優化了FPGA與Cortex-M3內核的通信接口。設計者可根據設計需求在FPGA上實現不同類型接口,如:USB2.0 Host/Device接口、PCI(33M/66M)接口、AHB2APB Bridge接口、SDR SDRAM Controller接口、FIFO/AHB接口、FIFO接口、AHB接口、EMB接口等,M7系列芯片將FPGA、CPU、SRAM、ASIC、Flash以及模擬單元等功能模塊集成在單一芯片上,不僅極大地降低了工程師的設計難度,有效減小了所需要的板間面積,還成功降低了系統成本,具備超高的系統性價比。

在智能家電方案中,該芯片可利用硬件描述語言Verilog進行電氣控制各個模塊的編寫,同時通過內嵌的Cortex-M3內核進行HMI方案的整體設計。表1是不同型號的HME-M7系列芯片的具體參數,由于HMI的開發需要較大的FramBuffer來緩存圖像數據,M7M12N5型號配置有64Mb的SDRAM可用作圖像的FramBuffer。此外,還配有11,520個LUT(Look-Up-Table查找表),7,680個寄存器,EMB(Embedded Memory Block內嵌存儲模塊)容量最大值為648Kb;在SRAM(Static Random Access Memory)方面,Instruction區有128KB,Data區有64KB,4路PLL(Phase-Locked-Loop),1個Cortex-M3內核,3路UART,2路SPI,用戶I/O有310個,結合以上資源情況M7M12N5型號芯片適用于HMI的方案設計。因此完全適合在其上集成開發HMI方案與電氣業務邏輯的功能處理。下面給出基于M7M12N5和HMI設計方案。

表1. HME-M7系列芯片具體參數

硬件方案

硬件架構如下圖所示,該方案設計的屏幕選用TFT LCD+Touch 5寸屏,分辨率480*854,每個pixel為RGB888。使用到M7 ARM部分的USB、RTC、NandFlash、IIC、UART等控制器。外設應用如下:

UART用作GUI與電氣控制的指令交互傳輸;

USB功能用于U盤下載圖片和字庫等資源到NandFlash中;

NorFlash存儲Bootloader和App程序文件;

NandFlash用于存儲圖片和字庫等資源;

LCD的觸控功能是通過IIC信號控制GT911觸控芯片實現;

Buzzer用于音效設計,通過pwm來控制;

RTC為系統提供時間功能。

軟件開發流程

1

Python腳本生成圖片和字體資源

通過Python腳本對圖片、字體、多語言的資源處理:

--該方案中移植的LVGL支-持兩種圖片資源格式:背景圖片和OSD圖片。其中背景圖片只能是和屏幕一樣大小,不支持透明度,像素格式為RGB888;OSD圖片不限制大小,像素格式為A8R5G6B5。通過Python腳本將這些圖片轉化成像素值的二進制文件的格式。

字體資源是通過Python腳本從標準的字體庫文件里面提取文字,由于字體庫包含了大量字體,所以沒有將所有字體都存儲成bin文件。為了節約NandFlash的存儲空間,需要根據實際用到的漢字進行字體選擇,獲取到字體形狀的像素值保存至字體的二進制文件中。同時,方案的GUI支持中文、英文、俄羅斯語、西班牙語等多種語言。

2

BootLoader資源下載與App程序引導

BootLoader主要有三個功能:

將U盤的圖片資源和App執行程序下載到Nandflash和NorFlash中;

初始化LCD及Touch功能;

引導App程序啟動運行。

3

APP圖形界面開發

在開發中可以使用PC端圖形模擬器對GUI進行測試和調試,能更快的設計GUI和找出設計過程中的問題。模擬器配合不同的IDE軟件即可在不同的操作系統上運行,本設計采用Windows系統下的Visual Studio。

Visual Studio模擬環境可以用來開發與硬件無關的GUI功能,直接對GUI的效果進行設計,并可與MDK工程的代碼同步,便于加速板級程序開發。為了達到流暢的視覺效果,方案中利用SDRAM實現3 FramBuffer作為圖像界面的緩存,如設計一個日期和時間顯示頁面。示例代碼和Visual Studio模擬器運行效果如下:

日期和時間顯示中使用到6個roller,分別對應年、月、日、時、分、上/下午的設定,回調函數中將roller選擇的相應日期和時間設定到RTC的時間里。Visual Studio工程的代碼會同步到MDK工程中,對GUI顯示的設計完成后可編譯APP部分的MDK工程的代碼。

總結

綜上,HME SoC FPGA適用于智能家電的經濟型產品中的HMI設計方案旨在為開發者提供簡便/美觀的人機交互與顯示設計方案。此外,基于FPGA平臺的電機控制方案可將電機控制的時延做得更小和更精準,可以將電機的能效做得更高,這樣就使得電機設備的差異化優勢更大。

隨著大數據及AIoT的發展,具備低功耗/低延時/高性能/高并發處理能力的SoC FPGA異構計算變得愈發重要,而其最大的優點是具有比傳統MCU/CPU并行計算更高效率和更低延時的計算性能。

編輯:黃飛

標簽:

上一篇:基于新能源汽車的VCU核心功能詳解 時訊
下一篇:最后一頁