国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

關于DSP、MCU、MPU的區別詳解

Q4MP_gh_c472c21 ? 來源:技術讓夢想更偉大 ? 作者:李肖遙 ? 2022-05-19 14:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

CPU(Central Processing Unit,中央處理器)發展出來三個分枝,一個是DSP(Digital Signal Processing/Processor,數字信號處理),另外兩個是MCU(Micro Control Unit,微控制器單元)和MPU(Micro Processor Unit,微處理器單元)。

MCU集成了片上外圍器件;MPU不帶外圍器件(例如存儲器陣列),是高度集成的通用結構的處理器,是去除了集成外設的MCU;DSP運算能力強,擅長很多的重復數據運算,而MCU則適合不同信息源的多種數據的處理診斷和運算,側重于控制,速度并不如DSP。

MCU區別于DSP的最大特點在于它的通用性,反應在指令集和尋址模式中。DSP與MCU的結合是DSC,它終將取代這兩種芯片。

1

對密集的乘法運算的支持

GPP不是設計來做密集乘法任務的,即使是一些現代的GPP,也要求多個指令周期來做一次乘法,而DSP處理器使用專門的硬件來實現單周期乘法。

DSP處理器還增加了累加器寄存器來處理多個乘積的和,累加器寄存器通常比其他寄存器寬,增加稱為結果bits的額外bits來避免溢出。同時,為了充分體現專門的乘法-累加硬件的好處,幾乎所有的DSP的指令集都包含有顯式的MAC指令。

2

存儲器結構

傳統上,GPP使用馮·諾依曼存儲器結構,這種結構中只有一個存儲器空間通過一組總線(一個地址總線和一個數據總線)連接到處理器核。通常,做一次乘法會發生4次存儲器訪問,用掉至少四個指令周期。

大多數DSP采用了哈佛結構,將存儲器空間劃分成兩個,分別存儲程序和數據,它們有兩組總線連接到處理器核,允許同時對它們進行訪問。這種安排將處理器存儲器的帶寬加倍,更重要的是同時為處理器核提供數據與指令。在這種布局下,DSP得以實現單周期的MAC指令。

典型的高性能GPP實際上已包含兩個片內高速緩存,一個是數據,一個是指令,它們直接連接到處理器核,以加快運行時的訪問速度。從物理上說,這種片內的雙存儲器和總線的結構幾乎與哈佛結構的一樣了,然而從邏輯上說,兩者還是有重要的區別。

GPP使用控制邏輯來決定哪些數據和指令字存儲在片內的高速緩存里,其程序員并不加以指定(也可能根本不知道),與此相反,DSP使用多個片內 存儲器和多組總線來保證每個指令周期內存儲器的多次訪問。在使用DSP時,程序員要明確地控制哪些數據和指令要存儲在片內存儲器中,程序員在寫程序時,必 須保證處理器能夠有效地使用其雙總線。

此外,DSP處理器幾乎都不具備數據高速緩存。這是因為DSP的典型數據是數據流。也就是說,DSP處理器對每個數據樣本做計算后,就丟棄了,幾乎不再重復使用。

3

零開銷循環

如果了解到DSP算法的一個共同的特點,即大多數的處理時間是花在執行較小的循環上,也就容易理解,為什么大多數的DSP都有專門的硬件,用于零開銷循環。

所謂零開銷循環是指處理器在執行循環時,不用花時間去檢查循環計數器的值、條件轉移到循環的頂部、將循環計數器減1。與此相反,GPP的循環使用軟件來實現:某些高性能的GPP使用轉移預報硬件,幾乎達到與硬件支持的零開銷循環同樣的效果。

4

定點計算持

大多數DSP使用定點計算,而不是使用浮點。雖然DSP的應用必須十分注意數字的精確,用浮點來做應該容易的多,但是對DSP來說,廉價也是非常重要的。

定點機器比起相應的浮點機器來要便宜(而且更快)。為了不使用浮點機器而又保證數字的準確,DSP處理器在指令集和硬件方面都支持飽和計算、舍入和移位。

5

專門的尋址方式

DSP處理器往往都支持專門的尋址模式,它們對通常的信號處理操作和算法是很有用的。例如,模塊(循環)尋址(對實現數字濾波器延時線很有用)、位倒序尋址(對FFT很有用)。這些非常專門的尋址模式在GPP中是不常使用的,只有用軟件來實現。

6

執行時間的預測

大多數的DSP應用(如蜂窩電話和調制解調器)都是嚴格的實時應用,所有的處理必須在指定的時間內完成。這就要求程序員準確地確定每個樣本需要多少處理時間,或者至少要知道,在最壞的情況下需要多少時間。

如果打算用低成本的GPP去完成實時信號處理的任務,執行時間的預測大概不會成為什么問題,應為低成本GPP具有相對直接的結構,比較容易預測執行時間。然而,大多數實時DSP應用所要求的處理能力是低成本GPP所不能提供的。

這時候,DSP對高性能GPP的優勢在于,即便是使用了高速緩存的DSP,哪些指令會放進去也是由程序員(而不是處理器)來決定的,因此很容易判斷指令是從高速緩存還是從存儲器中讀取。

DSP一般不使用動態特性,如轉移預測和推理執行等。因此,由一段給定的代碼來預測所要求的執行時間是完全直截了當的。從而使程序員得以確定芯片的性能限制。

7

定點DSP指令集

定點DSP指令集是按兩個目標來設計的:使處理器能夠在每個指令周期內完成多個操作,從而提高每個指令周期的計算效率。將存貯DSP程序的存儲器空間減到最小(由于存儲器對整個系統的成本影響甚大,該問題在對成本敏感的DSP應用中尤為重要)。

為了實現這些目標,DSP處理器的指令集通常都允許程序員在一個指令內說明若干個并行的操作。例如,在一條指令包含了MAC操作,即同時的一個或兩個數據移動。在典型的例子里,一條指令就包含了計算FIR濾波器的一節所需要的所有操作。這種高效率付出的代價是,其指令集既不直觀,也不容易使用(與GPP的指令集相比)。

GPP的程序通常并不在意處理器的指令集是否容易使用,因為他們一般使用象C或C++等高級語言。而對于DSP的程序員來說,不幸的是主要的DSP應用程序都是用匯編語言寫的(至少部分是匯編語言優化的)。

這里有兩個理由:首先,大多數廣泛使用的高級語言,例如C,并不適合于描述典型的DSP算法。其次, DSP結構的復雜性,如多存儲器空間、多總線、不規則的指令集、高度專門化的硬件等,使得難于為其編寫高效率的編譯器。

即便用編譯器將C源代碼編譯成為DSP的匯編代碼,優化的任務仍然很重。典型的DSP應用都具有大量計算的要求,并有嚴格的開銷限制,使得程序的優化必不可少(至少是對程序的最關鍵部分)。因此,考慮選用DSP的一個關鍵因素是,是否存在足夠的能夠較好地適應DSP處理器指令集的程序員。

8

開發工具的要求

因為DSP應用要求高度優化的代碼,大多數DSP廠商都提供一些開發工具,以幫助程序員完成其優化工作。例如,大多數廠商都提供處理器的仿真工具,以準確地仿真每個指令周期內處理器的活動。無論對于確保實時操作還是代碼的優化,這些都是很有用的工具。

GPP廠商通常并不提供這樣的工具,主要是因為GPP程序員通常并不需要詳細到這一層的信息。GPP缺乏精確到指令周期的仿真工具,是DSP應用開發者所面臨的的大問題:由于幾乎不可能預測高性能GPP對于給定任務所需要的周期數,從而無法說明如何去改善代碼的性能。

審核編輯 :李倩

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

    關注

    68

    文章

    20250

    瀏覽量

    252195
  • dsp
    dsp
    +關注

    關注

    561

    文章

    8244

    瀏覽量

    366593
  • MPU
    MPU
    +關注

    關注

    0

    文章

    454

    瀏覽量

    51318

原文標題:一文弄懂DSP、MCU、MPU的區別

文章出處:【微信號:gh_c472c2199c88,微信公眾號:嵌入式微處理器】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    直播有禮 | 瑞薩邊緣AI線上技術月——AI MCU/MPU產品及邊緣AI案例集

    專為邊緣AIoT應用拓展了一系列MCU/MPU陣容,包括最新推出的集成NPU的超高性能RA8P1MCU。同時,配合RealityAITools、RUHMI等多樣化模
    的頭像 發表于 01-13 18:05 ?517次閱讀
    直播有禮 | 瑞薩邊緣AI線上技術月——AI <b class='flag-5'>MCU</b>/<b class='flag-5'>MPU</b>產品及邊緣AI案例集

    武漢芯源MCU和英飛凌MCU有什么區別

    武漢芯源MCU和英飛凌MCU有什么區別
    發表于 12-11 06:26

    MCU不同封裝都什么區別

    目前MCU不同封裝都什么區別
    發表于 12-01 06:41

    ARM架構與DSP有什么區別?哪一個更好?

    ARM架構與DSP有什么區別?哪一個更好?
    發表于 11-19 06:14

    MCUMPU、SoC 差異完全對照表

    在嵌入式開發中,經常會被三類芯片繞暈:MCUMPU、SoC。名字看起來差不多,都能“跑程序”,但在選型、設計和應用上坑不少。很多初學者甚至有錯覺:“MCU不就是MPU的低配版?”“S
    的頭像 發表于 11-17 10:53 ?1220次閱讀
    <b class='flag-5'>MCU</b>、<b class='flag-5'>MPU</b>、SoC 差異完全對照表

    如何從 MCU/MPU 角度保護物聯網應用?

    如何從 MCU/MPU 角度保護物聯網應用?
    發表于 09-08 07:33

    mcu芯片和soc芯片的區別解析

    MCU(微控制器單元)和SoC(系統級芯片)是兩種常見的芯片類型,它們在設計目標、應用場景和功能集成上有顯著區別。以下是主要差異的總結: 1. 核心結構與功能 MCU(Microcontroller
    的頭像 發表于 08-12 11:34 ?4824次閱讀
    <b class='flag-5'>mcu</b>芯片和soc芯片的<b class='flag-5'>區別</b>解析

    請問wifi SOC與 wifi MCU區別

    想詳細了解wifi SOC與 wifi MCU區別?比如說為啥54591不可以獨立運行,沒有內置協議棧嗎?
    發表于 07-09 08:30

    STM32H7的MPU配置與D-Cache沖突如何解決???

    現象??: STM32H743 MPU 與 D-Cache 沖突問題詳細描述** 硬件環境 MCU 型號 :STM32H743VIT6 開發板 :自定義板(或 STM32H743I-EVAL 等
    發表于 06-23 17:32

    #工作原理大揭秘 #單片機 #電路原理 #MCU#mcu程序開發

    mcu
    宇凡微電子
    發布于 :2025年06月19日 19:02:28

    瑞薩RZ/A3M HMI MPU介紹

    對于高質量圖形顯示的應用要求,用戶通常采用功能強大及搭載DDR高速接口的MPU來實現更多功能和更流暢的畫面。但在開發過程會遇到DDR高速總線設計的難題,同時Linux系統難以實現類似MCU的快速啟動性能。瑞薩新推出的RZ/A3M HMI
    的頭像 發表于 05-27 16:14 ?1089次閱讀
    瑞薩RZ/A3M HMI <b class='flag-5'>MPU</b>介紹

    MPU-6000和MPU-6050產品規格書

    電子發燒友網站提供《MPU-6000和MPU-6050產品規格書.pdf》資料免費下載
    發表于 04-29 16:52 ?3次下載

    為何嵌入式開發者覺得 MCU 開發無趣,更傾向 MPU(Linux)?

    咱嵌入式圈子里,最近老能聽見有人念叨:“搞 MCU 開發越來越沒勁兒了,不如轉 MPU(Linux)有意思。” 作為在這行摸爬滾打二十多年的老兵,我也算看明白了 —— 這事兒就像程序員從寫單片機裸機
    的頭像 發表于 04-25 10:48 ?797次閱讀
    為何嵌入式開發者覺得 <b class='flag-5'>MCU</b> 開發無趣,更傾向 <b class='flag-5'>MPU</b>(Linux)?

    classB認證獲取指南中的方案架構看起來都是針對MCU的架構,MPU的沒辦法完全適配,怎么解決?

    classB認證獲取指南中的方案架構看起來都是針對MCU的架構,MPU的沒辦法完全適配。ST有針對MPU的自檢解決方案嗎?我用的是STM32MP157D
    發表于 03-12 07:34

    關于mpu6050問題

    我很早之前買了一個,我現在使用這個mpu6050,我在調mpu6050數據時候,數據抖動特別大,我沒動這個mpu6050,它自己都有抖動,然后本來放在水平,他的機械中值是2.5,但是我水平抖動后,機械中值突然變成了-258,這是
    發表于 03-09 17:17