衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

什么是硬件加速引擎?

rfdqdzdg ? 來源:數字芯片設計工程師 ? 2023-07-06 10:32 ? 次閱讀

什么是硬件加速引擎

普通計算機用指令運算速度衡量計算性能,而超算則通常用浮點運算速度來衡量其性能。但不管是指令運算還是浮點運算,都脫離不了CPU進行流水線式的指令計算。盡管我們可以通過用先進工藝、采用超標量流水線結構處理器,甚至是多核的陣列來提升CPU的計算性能,但這仍然沒有突破“重圍”,我們一直在一畝三分地徘徊。

我們在個人電腦上打開過多的應用時,由于CPU數量及性能受限,無法承載過多的應用,電腦會逐漸變得很卡。但單純提高CPU的性能,空間受限制,且代價很大。除非是超算中心等首先以性能為目標,對能耗比不那么敏感的應用,否則消費類芯片核心競爭力仍以能功耗及性能為王,承載到芯片上就是PPA(Power Performance Area)。

摩爾定律的終結,我們很難再單一的從CPU身上榨出更多的性能。如果我們將某些復雜耗時的計算,采用專用芯片實現,在完成后再將結果返回給CPU,這樣我們就實現了專用的加速引擎。典型的以個人電腦為例,采用獨立顯卡的配置遠比僅有集成顯卡電腦有著更好的體驗感,因為Nvdia/AMD顯卡的GPU,專用圖形圖像加速運算,降低了CPU的負荷,提高了整機處理應用的能力。

至此,我們的主角終于上場了,世界的最后一塊拼圖,也終于完整了,如下圖所示,為CPU計算加速的方法,終點是最新工藝下,集成硬件加速器的多核超標量流水線處理器。

2d547ad6-1b22-11ee-962d-dac502259ad0.png

而我們最后入場的觀眾,即上圖中紅色部分,就是硬件加速引擎。正如前文所述,顯然從CPU的一畝三分地,已經很難再開出質變的花,但硬件加速引擎的引入,讓我們進入了硬件加速的新時代。

我們再梳理一下新提出的概念:硬件加速引擎,也稱為硬件加速器,是一種采用專用加速芯片/模塊,替代CPU完成復雜耗時的大算力操作,其過程不需要或者僅少量CPU的參與。

典型的以GPU、DSP、ISP、NPU為例,就是專用的硬件加速引擎。硬件加速引擎的出現,一方面提升了SOC的整體計算性能,另一方面也降低了同等應用場景,對CPU的性能需求。舉例,apple在2021年WWDC上發布了采用自研SOC的全新Macbook系列產品,使用的就是最新自研的號稱地表最強的M1芯片,其規模達到了160億門晶體管,如下圖所示:

M1采用了當時最新的5nm工藝制程,集成8核的CPU,號稱在同等功耗下,達到了2倍目前CPU的最快性能。更為重要的是,M1還集成了眾多專用的硬件加速引擎,協助CPU完成了很多復雜耗時的運算,統計分析主要如下表所示:

序號 硬件加速引擎 功能/性能詳細描述
1 GPU 圖像運算單元,集成128個執行單元,可同時執行24576個線程,運算能力高達2.6TFLOPS。
2 Neural Engine 16核神經網絡加速引擎(NPU),專用卷積網絡推理計算加速,每秒可以進行11億萬次操作。
3 Media Encode & Decode Engine 多媒體視頻編解碼引擎,硬件加速完成視頻的編解碼功能,支持AVS、H.264、H.265等制式。
4 Advance Image Signal Processor 先進的圖像信號處理引擎(ISP),實現實時的圖像采集、Demosaic、3A、2/3D降噪等圖像處理功能。

勾勒了一個粗糙的M1的架構圖(其實很多多媒體芯片也是類似的),如下所示,我們簡單梳理一下相關模塊的工作流程。

2da5524e-1b22-11ee-962d-dac502259ad0.png

以一個AI人臉識別的視頻拍攝的場景為例,整體計算的流水線如下圖所示,當然每一步還需要CPU參與配置調度,以及DDR讀寫緩存。其中上半部分,采用ISP→NPU→Encode→DDR流水線,實現了實時AI人看臉識別視頻的存儲;下半部分,實現了實時人臉檢測的顯示。

2dccd300-1b22-11ee-962d-dac502259ad0.png

再以體驗一個在線游戲為例,采用下圖的流水線,實現了游戲的實時解碼,圖形圖像的加速運算,以及實時顯示功能。這個過程同樣每個模塊需要DDR參與讀寫,此外,除了少量CPU的配置及調度,CPU很少參與計算,主要由專用硬件加速引擎完成實時的運算。因此專業的事情,專用的模塊做,CPU可以用來做更為復雜的操作,比如文件管理,資源優化等。

2df15ebe-1b22-11ee-962d-dac502259ad0.png

上述例子,CPU與硬件加速引擎協同工作,一起打造了一款號稱地表最強的SOC。這里我們再舉一個例子,以采用硬件加速引擎的方式,降低了產品對CPU的性能要求,從而采用低成本的ARM,在提升性的前提下進一步降低成本。如下圖所示,為海思Hi3516A監控芯片的硬件架構框圖。

2e04f816-1b22-11ee-962d-dac502259ad0.png

該芯片采用單核A7內核作為處理器,主頻運行在600MHz,框圖左側為SoC的高速模塊,右下角為SoC的低速模塊,中下部分AES/DES/3DES為加解密模塊,右上角的CVBS/BT1120為顯示接口,MIPI/LVDS/Hispi圖像采集接口,以上這些組成了SoC的Boot最小系統,以及基本輸入輸出單元。

但這是一款IPC監控芯片,主要用以實現視頻圖像采集,編碼傳輸等功能,為了減小CPU的開銷,協同完成一些復雜的視頻運算,Hi3516A集成了幾個重要的硬件加速引擎,使得其在低碼率,高圖像質量,低功耗方面持續引領行業水平。如下表所示,為Hi3516A芯片繼承的硬件加速引擎,主要如下:

序號 硬件加速引擎 功能/性能詳細描述
1 TDE Two Dimensional Engine,硬件加速實現圖形的繪制,大大減少對CPU的占用,同時又提高了DDR的利用率。
2 IVS Intelligent Video Engine,模塊提供了常用的一些智能分析算法中的一些CV算子,采用硬件實現方式替代CPU進行OpenCV圖像運算。
3 VPSS+VGS Video Processing Sub-System/Video Graph System,硬件加速實現圖像顯示后處理功能,包括降噪、縮放、裁剪、疊加、旋轉等功能。
5 ISP 圖像信號處理引擎(ISP),實現實時的圖像采集、Demosaic、3A、2/3D降噪等圖像處理功能。。
6 Video Subsystem 視頻編碼引擎,支持H.264、H.265等制式以及ROI編碼,最大支持5M Pixel分辨率。

IPC芯片可以用規格較低的Cortex A9系列CPU,得益于芯片集成了如上表中專用的硬件加速引擎。采用專用計算模塊完成了圖像處理、視頻編碼、顯示后處理等功能,使得CPU只需要參與配置及調度,同時才有了資源去處理復雜的操作系統任務。

我們總是不斷在追求更快,所以我們窮盡一切辦法去達成目標。硬件加速引擎在傳統CPU無法實現質變的基礎上,實現了計算能力的突破。硬件加速引擎雖然有其專用的局限性,但協同CPU處理,可以以更低的成本及功耗,實現更高的性能,這是當前也是未來計算芯片的大勢所趨。

至此,相信你已經理解了硬件加速引擎的非凡意義,我們也可終于可以提出我們的主題——圖像加速引擎。Hi3516A中的硬件加速引擎都是圖像相關的,本書也將介紹一些基于圖像算法方面的加速,就是我寫本書的初衷。

本書將從傳統圖像加速算法入手,從原理到實現,介紹圖像算法的理論及設計,并且基于MatlabFPGA開發,講解如何進行硬件加速實現的流程方法。本書適合從事軟件圖像開發的朋友,可以提升你對圖像算法硬件加速的認知;本書同樣也事業FPGA開發的朋友,可以讓你全流程了解如何采用FPGA加速實現一個圖像算法。

在接下來的篇幅,我將從格式轉換、濾波、增強、二值化、銳化、縮放等傳統基礎圖算法入手,從原理到Matlab設計、FPGA加速實現進行由淺入深的詳細介紹。接著,以深度學習LeNet為例,介紹如何在FPGA實現最簡單的硬件加速卷積神經網絡。最后,作為畫龍點睛之筆,我們站上更高的層次,介紹一下傳統ISP和新興的AISP的基本理論概念,以及未來圖像硬件加速的發展走向。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • dsp
    dsp
    +關注

    關注

    554

    文章

    8059

    瀏覽量

    350403
  • 芯片
    +關注

    關注

    456

    文章

    51170

    瀏覽量

    427225
  • gpu
    gpu
    +關注

    關注

    28

    文章

    4774

    瀏覽量

    129350
  • 計算機
    +關注

    關注

    19

    文章

    7536

    瀏覽量

    88638
  • 硬件
    +關注

    關注

    11

    文章

    3381

    瀏覽量

    66447

原文標題:什么是硬件加速引擎?

文章出處:【微信號:數字芯片設計工程師,微信公眾號:數字芯片設計工程師】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    【N32L40XCL-STB 開發板評測】安全加密算法評測

    本章主要以AES和SHA算法為例,介紹算法使用,同時對比基于硬件加速引擎和純軟件算法運算速度的差異。
    的頭像 發表于 08-10 16:45 ?1324次閱讀
    【N32L40XCL-STB 開發板評測】安全加密算法評測

    MPU6050簡介

    : Digital Motion Processor)硬件加速引擎,通過主 IIC 接口,且含有一個第二 IIC 接口,可用于連接外部磁力傳感器,通過主 IIC 接口,向應用端輸出完整的 9 軸融合...
    發表于 08-04 07:27

    CAN通信總線接口和XFMC內存擴展接口

    ,144KB SRAM,多個U(S)ART、I2C、SPI、QSPI、USB、CAN通信總線接口和XFMC內存擴展接口,集成12bit ADC、DAC等模擬接口 ,內置密碼算法硬件加速引擎 關鍵特性
    發表于 08-20 07:37

    MPU6050相關資料分享

    Motion Processor)硬件加速引擎,通過主 IIC 接口,向應用端輸出完整的 9 軸融合演算數據。有了 DMP,我們可以使用 InvenSense 公司提供的運動處理資料庫,非常方便的實現姿態解算,降低了運動處理運算對操作系統的負荷,同時大大降低了開發難度。
    發表于 02-10 06:17

    N32G4FR系列芯片用戶手冊

    N32G4FR 系列采用 32 bit ARM Cortex-M4 內核,最高工作主頻 144MHz,支持浮點運算及 DSP 指令,內置密碼算法硬件加速引擎,集成高達 512KB 加密 Flash
    發表于 10-31 14:39

    N32G457系列芯片用戶手冊

    個 12bit 5Msps ADC,4 路獨立軌到軌運算放大器,7 個高速比較器,2 個 1Msps 12bit DAC,集成多路 U(S)ART、I2C、SPI、QSPI、USB、CAN、SDIO 通信接口,10/100M 以太以網及數字攝像頭接口,內置密碼算法硬件加速引擎
    發表于 11-01 07:58

    N32G452系列芯片用戶手冊

    ,多個 U(S)ART、I2C、SPI、QSPI、USB、CAN 通信總線接口,集成 12bit ADC、DAC 等模擬接口 ,內置密碼算法硬件加速引擎
    發表于 11-01 06:13

    N32L40x系列芯片產品手冊

    豐富的高性能模擬器件,內置 1 個 12bit 4.5Msps ADC,2 路獨立軌到軌運算放大器,2 個高速比較器,1 個 1Msps 12bit DAC,集成 U(S)ART、LPUART、I2C、SPI、USB、CAN 等數字通信接口,Segment LCD 驅動接口, 內置多種密碼算法硬件加速
    發表于 11-01 07:58

    N32G032系列芯片產品手冊

    ,1xOPAMP,3xCOMP,集成多路 U(S)ART、I2C、SPI、CAN 通信接口,內置密碼算法硬件加速引擎
    發表于 11-01 07:01

    N32G4FR系列芯片數據手冊

    SRAM,2x12bit 5Msps ADC,2x1Msps 12bitDAC,集成多路U(S)ART、I2C、SPI、QSPI、USB、CAN通信接口,1xSDIO接口,數字攝像頭(DVP)接口,支持主流的半導體指紋及光學傳指紋感器,內置密碼算法硬件加速引擎
    發表于 11-01 07:02

    N32G452系列芯片數據手冊

    5Msps ADC,2x1Msps 12bit DAC,集成多路U(S)ART、I2C、SPI、QSPI、USB、CAN通信接口,1xSDIO接口,內置密碼算法硬件加速引擎
    發表于 11-01 07:30

    基于MPU-3000?系列運動處理組件的三軸陀螺

      Invensense推出MPU-3000?系列產品運動處理組件,為業界第一個內建數字運動處理(DMP?: Digital Motion Processor?)硬件加速引擎的三軸
    發表于 12-23 08:53 ?887次閱讀

    基于VxWorks的硬件加速技術探討

    簡述了愛普生S1D13A05芯片的架構特征,并且介紹了其中的2D硬件加速引擎的工作模式和相關的寄存器設置,最后以VxWorks操作系統作為開發環境,基于風河公司WindML圖形開發包,對S1D13A0
    發表于 09-01 14:07 ?1112次閱讀
    基于VxWorks的<b class='flag-5'>硬件加速</b>技術探討

    圖像處理硬件加速引擎是什么 如何提高CPU芯片性能

    軟件在CPU上執行,首先是從控制器從存儲器取指(Fetch),接著控制器進行譯碼(Decode),然后由算數邏輯單元(ALU)執行指令(Execute),這就是指令周期,如下圖所示。
    的頭像 發表于 06-30 15:34 ?3835次閱讀
    圖像處理<b class='flag-5'>硬件加速</b><b class='flag-5'>引擎</b>是什么 如何提高CPU芯片性能

    上海航芯打造32位MCU芯片的新突破與挑戰

    航芯致力于開發以M0/M33為內核的32位MCU,該系列集成了國密算法硬件加速引擎,兼具通用MCU的靈活易用性和安全性。
    發表于 04-07 14:51 ?1100次閱讀
    大发888官方备用| 网上百家乐官网洗码技巧| 百家乐路单生| 现金百家乐信誉| 属蛇做生意坐向| 试玩区百家乐官网1000| 澳门百家乐官网单注下限| 百家乐官网视频双扣| 马牌娱乐城| 龙虎斗| 大发888注册就送58| 太子百家乐的玩法技巧和规则| 玩百家乐输了| 杰克百家乐玩法| 赌百家乐怎样能赢| 百家乐合理的投注法| 24山风水| 游艇会百家乐官网的玩法技巧和规则| 百家乐官网在线娱乐平台| 百家乐官网与龙虎斗怎么玩| 百家乐官网客户端软件| 99真人娱乐城| 巴塘县| 在线百家乐投注| 万全县| 百家乐官网娱乐城送分| 百家乐官网十佳投庄闲法| 百家乐官网是不是有假| 百家乐官网二代皇冠博彩| 澳门百家乐官网游戏说明书 | 澳门百家乐官网自杀| 百家乐官网平台哪个有在线支付呢| 七胜百家乐官网娱乐平台| 百家乐官网娱乐分析软件v| 百家乐游戏机在哪有| 百家乐买对子技巧| 大发888官方网| BET365备用网址| 百家乐官网模拟游戏下载| 钱隆百家乐官网破解版| 皇家百家乐官网的玩法技巧和规则 |