一“芯”二用,MCU+DSP處理器大盤點(diǎn)
近年來(lái),越來(lái)越多的領(lǐng)域需要用到高性能,高集成度的DSP器件,功能日益增加的多媒體處理器對(duì)DSP的需求也日益劇增,于是,基于MCU+DSP架構(gòu)的集成芯片也隨之應(yīng)運(yùn)而生,更低的成本、更小的封裝和更微的功耗所開辟的,是一條屬于DSP或者M(jìn)CU廠商們的“陽(yáng)光大道“而未來(lái),它們還將沿著這條新路繼續(xù)前行。本系列文章將為你介紹市面上比較流行的基于MCU+DSP架構(gòu)的處理器或者解決方案。
本文引用地址:http://www.ex-cimer.com/article/201612/332400.htm飛思卡爾DSP56800E
飛思卡爾在DSP與MCU領(lǐng)域深耕數(shù)年,為滿足市場(chǎng)發(fā)展需求,公司率先在56800內(nèi)核基礎(chǔ)上又推出了新一代增強(qiáng)型內(nèi)核56800E,該產(chǎn)品可在單一內(nèi)核上提供DSP和MCU雙重功能。56800E 系列DSP將為不斷增長(zhǎng)的工業(yè)、電機(jī)控制、汽車和融合中的通信與數(shù)據(jù)通信市場(chǎng)應(yīng)用提供低功耗、低成本的單芯片方案。由于這種單內(nèi)核設(shè)計(jì)消耗更少的功耗,飛思卡爾啟動(dòng)了大量新的、以電池供電、需要信號(hào)處理功能的便攜式應(yīng)用,如便攜式數(shù)字音頻、互聯(lián)網(wǎng)設(shè)備和PDA等。
DSP56800E相關(guān)資料推薦:
1.MC56F8335:基于56800E內(nèi)核的數(shù)字信號(hào)控制器
2.基于56800E數(shù)字信號(hào)處理和霍爾傳感器的三相BLDC電機(jī)控制
簡(jiǎn)介
與56800相比,56800E性能最高可改善5倍,為需要更多存儲(chǔ)空間、更高代碼編譯效率和更高的MIPS性能的客戶提供了清晰的產(chǎn)品移植路徑。DSP56800E 由幾個(gè)功能獨(dú)立的模塊組成。包括:數(shù)據(jù)算術(shù)邏輯單元(ALU),地址生成單元(AGU),程序控制器,位操作單元,強(qiáng)化的片上仿真模塊(Enhanced OnCE)和系統(tǒng)總線。如圖所示。
靈活的內(nèi)存模式是DSP56800E 結(jié)構(gòu)的一大特色,包括下面的幾個(gè)方面:
程序RAM 和ROM 模塊
數(shù)據(jù)RAM 和ROM 模塊
非易失內(nèi)存(NVM)模塊
引導(dǎo)ROM,自舉RAM 區(qū)執(zhí)行代碼的模塊
Freescale 的標(biāo)準(zhǔn)片上外圍接口總線(IP-BUS)支持多種的片上外設(shè)模塊,包括下面幾個(gè)模塊:
鎖相環(huán)(PLL)模塊
16 位定時(shí)器模塊
看門狗(COP)模塊和實(shí)時(shí)定時(shí)模塊
同步串行接口(SSI)模塊
串行外設(shè)接口(SPI)模塊
可編程的通用I/O 口(GPIO)模塊
特性
DSP56800E 結(jié)構(gòu)具有一系列新的特點(diǎn),用于提高系統(tǒng)性能,降低應(yīng)用成本,簡(jiǎn)化產(chǎn)品開發(fā)。包括以下各個(gè)方面。
高性能:DSP56800E 支持很多的DSC應(yīng)用場(chǎng)合。
兼容性:向下兼容DSP56800 系列的源代碼,DSP56800 只需要重新編譯或者重新匯編就可以在DSP56800E 系統(tǒng)上執(zhí)行。
易編程性:DSP56800E 的指令助記符類似于MCU 的指令助記符,易于從傳統(tǒng)的微控制器編程轉(zhuǎn)到DSC 編程。為了優(yōu)化算法的執(zhí)行,DSP56800E 的指令集支持小數(shù)和整數(shù)類型。
對(duì)高級(jí)語(yǔ)言的支持:C 語(yǔ)言編寫的程序非常合適DSP56800E 結(jié)構(gòu),大部分的應(yīng)用可以使用高級(jí)語(yǔ)言編寫卻不會(huì)影響DSC 的性能,靈活的指令集和編程模式使得編譯代碼的高效生成變?yōu)榭赡堋?/p>
豐富的指令集:除了支持DSC 算法的指令集,DSP56800E 還提供控制、位操作和整型處理等指令,支持多種數(shù)據(jù)類型和尋址模式。使得用戶方便地生成高效、緊湊的代碼。
高代碼密度:DSP56800E 基本的單字指令長(zhǎng)度僅為16 位,而多字指令則用于更復(fù)雜的操作,達(dá)到優(yōu)化的代碼密度目的。DSP56800E 指令集強(qiáng)調(diào)的是高效控制的編程,因?yàn)樵谝粋€(gè)應(yīng)用中最大的部分是這方面的操作。
支持多任務(wù):在DSP56800E 上執(zhí)行一個(gè)實(shí)時(shí)操作系統(tǒng)或者簡(jiǎn)單的多任務(wù)系統(tǒng)將比其他的DSC 芯片更容易。DSP56800E 完全支持軟件堆棧,快速的從系統(tǒng)堆棧中實(shí)現(xiàn)32 位上下文切換,基本的測(cè)試和設(shè)置指令,四優(yōu)先級(jí)的軟件中斷。
精確性:DSP56800E 具有精確計(jì)算的能力。
硬件循環(huán):DSP56800E 提供2 種類型大于0 的硬件循環(huán)。提高了性能,使得不再需要使用解開式循環(huán)技術(shù)。
并行性:每個(gè)片上執(zhí)行單元,內(nèi)存設(shè)備,外圍操作是獨(dú)立并行處理的。由于很高的并行性,下面的操作能在1 條指令內(nèi)被并行執(zhí)行:
—取下條指令
—16 位乘16 位,并將結(jié)果和一個(gè)36 位數(shù)累加
—可選擇性進(jìn)行結(jié)果取反、四舍五入以及飽和度處理
—2 個(gè)16 位數(shù)的移動(dòng)
—無(wú)負(fù)荷的硬件循環(huán)
—2 個(gè)地址指針的更新
不可見的指令管道(pipeline):八級(jí)指令管道提高了系統(tǒng)的性能,卻保持對(duì)編程者的不可見。開發(fā)者可以使用高級(jí)語(yǔ)言而不需要考慮到管道。
低功耗:由于使用的是CMOS 工藝,DSP56800E 本身消耗的能量是很少的, 而且DSP56800E 支持兩種更加省電模式,STOP 和WAIT 模式。電源管理模塊能關(guān)閉那些邏輯上不使用的部分
實(shí)時(shí)調(diào)試:Freescale 的加強(qiáng)型片上仿真技術(shù)提供了對(duì)DSP56800E 內(nèi)核的狀態(tài)實(shí)現(xiàn)了簡(jiǎn)單、低價(jià)、非入侵、速度無(wú)關(guān)的存取方式。通過(guò)使用這一技術(shù),在不停止內(nèi)核的運(yùn)行情況下,編程者能完全的控制處理器的操作,能簡(jiǎn)單、高速的完成調(diào)試任務(wù)。
DSP56800E 的高效指令集和總線結(jié)構(gòu),擴(kuò)展的并行性,片上編程和數(shù)據(jù)內(nèi)存,先進(jìn)的調(diào)試和測(cè)試功能使得內(nèi)核能很好地解決實(shí)時(shí)性問(wèn)題、嵌入式DSC 和控制任務(wù)。
內(nèi)核編程模式
DSP56800E 的內(nèi)核寄存器被認(rèn)為是內(nèi)核編程模式的一部分。如圖2-1 所示。片上模塊的寄存器被映射到數(shù)據(jù)存儲(chǔ)器的64 個(gè)單元上,注意,這64 個(gè)單元在特定的設(shè)備上可以位于數(shù)據(jù)存儲(chǔ)器的任何位置。使用內(nèi)存塊的實(shí)例如表2-1 所示??梢詤⒖继囟ㄆ骷挠脩羰謨?cè)得到其模塊的細(xì)節(jié)描述,包括它們的功能,存儲(chǔ)區(qū)的寄存器及其映射到內(nèi)存的位置。
雙哈佛存儲(chǔ)器
DSP56800E 具有程序存儲(chǔ)區(qū)與數(shù)據(jù)存儲(chǔ)區(qū)分開的雙哈佛結(jié)構(gòu),如圖2-2 所示。這種結(jié)構(gòu)允許同時(shí)進(jìn)行對(duì)程序存儲(chǔ)區(qū)和數(shù)據(jù)存儲(chǔ)區(qū)的讀寫操作,而且數(shù)據(jù)存儲(chǔ)器支持同時(shí)2個(gè)地址的讀操作,支持最多達(dá)3個(gè)地址單元的存儲(chǔ)器操作。
在程序存儲(chǔ)器中,包含了可以任意大小和放在任意位置的復(fù)位中斷向量。外設(shè)寄存器被映射到數(shù)據(jù)存儲(chǔ)器的64個(gè)字的地址單元。
外設(shè)寄存器的64個(gè)字的地址單元原則上可以被重映射到任意地址。為了不重疊RAM 和ROM 數(shù)據(jù)存儲(chǔ)塊,64 個(gè)字單元的地址通常被特別設(shè)定,X:《《pp 尋址模式提供了針對(duì)64 個(gè)單元的高效訪問(wèn),提供了單字,單周期轉(zhuǎn)移和位操作指令。
注意在64 個(gè)單元的最上面12 個(gè)單元被DSP56800E 內(nèi)核保留使用,用于中斷優(yōu)先級(jí),總線控制寄存器。
DSC實(shí)例
DSC 是一種能對(duì)周期性地采樣和數(shù)字化的實(shí)時(shí)信號(hào)進(jìn)行算術(shù)的處理器,DSC 實(shí)例都包含以下幾個(gè)方面:
濾波
卷積(混合兩個(gè)信號(hào))
相關(guān)(比較兩個(gè)信號(hào))
整流,放大和傳輸
圖1-3 是1 個(gè)模擬信號(hào)處理的例子。圖中的電路過(guò)濾了來(lái)自的傳感器的信號(hào),傳感器信號(hào)采集電路使用了1 個(gè)可調(diào)節(jié)的放大器,并利用該結(jié)果控制1 個(gè)動(dòng)力臂。理想的濾波器是無(wú)法設(shè)計(jì)出來(lái)的,工程師設(shè)計(jì)濾波器時(shí)必須盡量滿足:可接受的響應(yīng)性,不同溫度的變化,元器件老化,電源波動(dòng)和元器件的精度等因素。按照這樣要求設(shè)計(jì)出來(lái)的電路一般具有很低的抗干擾性,需要經(jīng)常調(diào)整參數(shù)且難于修改。
使用 DSC 的等效電路如圖1-4 所示。這個(gè)應(yīng)用除了DSC 之外,還要求1 個(gè)A/D 轉(zhuǎn)化器和D/A 轉(zhuǎn)化器。
上圖的處理電路首先通過(guò) 1 個(gè)濾波器限制輸入信號(hào)的波段,將去除了超過(guò)波段的干擾信號(hào)。然后信號(hào)被取樣,通過(guò)AD 轉(zhuǎn)換器數(shù)字化并送入DSC 進(jìn)行數(shù)字化處理。DSC的輸出通過(guò)DA 轉(zhuǎn)化成模擬信號(hào)并通過(guò)低通過(guò)濾,消除數(shù)字化的影響。
通過(guò)DSC 執(zhí)行的特定的濾波嚴(yán)格來(lái)說(shuō)是個(gè)軟件的過(guò)程。DSC 能執(zhí)行任何使用模擬技術(shù)實(shí)現(xiàn)的濾波器。而且,使用模擬技術(shù)很難實(shí)現(xiàn)的自適應(yīng)性過(guò)濾,能很容易的通過(guò)DSC 實(shí)現(xiàn)。
總之,使用DSC 的優(yōu)勢(shì)如下:
更少的元件
穩(wěn)定,確定的性能
無(wú)需調(diào)整濾波系數(shù)
廣泛的應(yīng)用范圍
更加鮮明的過(guò)濾特點(diǎn)
抗噪聲能力強(qiáng)
易實(shí)現(xiàn)自適應(yīng)性過(guò)濾
具有自測(cè)試功能
較好的電源干擾抵制機(jī)制
DSP56800E 系列不是為了一個(gè)特定的應(yīng)用專門定制的IC 芯片,而是作為一種通用目的的DSC 結(jié)構(gòu),用于高效的執(zhí)行普通DSC 算法和控制代碼。
如圖1-5 所示,DSC 關(guān)鍵的屬性如下:
乘法累加(MAC)操作
MAC 的每個(gè)指令周期取2 條操作數(shù)
強(qiáng)大的指令集保證了執(zhí)行的靈活性
移入/出DSC 數(shù)據(jù)
MAC 操作是一個(gè)在DSC 中的基本操作,DSC56800E 雙哈佛結(jié)構(gòu)優(yōu)化了MAC 操作,通過(guò)同時(shí)對(duì)兩個(gè)獨(dú)立的數(shù)據(jù)單元存取使得乘法操作和加法操作在一個(gè)MAC 時(shí)鐘周期內(nèi)完成。整個(gè)過(guò)程必須在程序的控制下才能完成從乘法器的取數(shù)和對(duì)計(jì)算結(jié)果的轉(zhuǎn)存。由于內(nèi)存和MAC 是互相獨(dú)立的,DSC 能在一條指令內(nèi)執(zhí)行兩個(gè)內(nèi)存的數(shù)據(jù)交換,一個(gè)乘法和加法運(yùn)算,兩個(gè)地址的更新等操作,使得很多DSC 級(jí)的處理器能更加高效的執(zhí)行乘法運(yùn)算。
評(píng)論