⑴ 關於評估DSP一個演算法優劣的指標有些什麼呢
1. MIPS. (越快越好 )2. Memory.(越小越好)
⑵ dsp求余簡便演算法
最簡單的是用減法,做一個循環不斷的減去除數,直到結果小於除數。
另外一個就是用乘法來做,做一個循環讓除數不斷跟i相乘(i從1開始),然後結果跟被除數比較,結果第一次比被除數大的時候,用被除數加上除數減去結果就得到余數了。
⑶ dsp的演算法指的是計算機演算法嗎
通常意義來說,DSP是指Digital Signal Processing,還可以指Digital Signal Processor。
前者是數字信號處理的意思,後者是用於數字信號處理的數字信號處理器。《演算法導論》一書還是有必要看一看的,因為無論你將來要從事軟體還是硬體的研發,這門課程都會起到良好的基礎作用。當然,這門課是「軟」的。此書沒有直接的東西,但是會滲透出一種軟體設計的邏輯思想,一些常用的演算法的理論。
要是將來想從事DSP的相關工作,可以再看一門《數字信號處理》的書,兩者雖然不是直接耦合,就如你自己所說,多儲備一些總是好的。
還有,進一步的深入研究可以研究FPGA,這是數字信號處理的利器。要是用專用處理器的話,可以看德州儀器的相應資料,它是DSP器件領域的老大。
祝學業順利。
⑷ 2,dsp演算法的實現方法有哪些
dsp:英文原名叫digital signal processing,簡稱DSP。數字信號處理就是用數值計算的方式對信號進行加工的理論和技術。另外DSP也是digital signal processor的簡稱,即數字信號處理器
數字信號處理的目的是對真實世界的連續模擬信號進行測量或濾波。因此在進行數字信號處理之前需要將信號從模擬域轉換到數字域,這通常通過模數轉換器實現。而數字信號處理的輸出經常也要變換到模擬域,這是通過數模轉換器實現的。即將事物的運動變化轉變為一串數字,並用計算的方法從中提取有用的信息,以滿足我們實際應用的需求。
⑸ dsp廣告投放哈斯演算法什麼意思
哈斯演算法是dsp廣告的其中一種演算法,是為了做轉化的,前提是需要有一定的數據積累。詳細的可以去問下弈米互動的dsp優化師,應該會給你更專業的解答。
⑹ 如何評估某一型號dsp的工作性能,要實現某種演算法,我應該從哪些指標來評估
這個綜合說起來就很多了:
1.DSP的MIPS其實也就是等價於主頻高低,現在低端的150MHZ,高端的有1000MHZ及以上的。
這個主要就是看你實現某種演算法的時間
2.功耗,這個在某些移動應用中也是要考慮的。
3.RAM,FLASH大小。看看片內的存儲空間大小,還有片內存儲器讀取的時間。
片外的存儲讀取時間要長於片內的。
4。你是測試一種演算法的,應該看一看,這個演算法在多長時間內實現,利用了多少資源。
有沒有為你的下一步應用預留下資源。因為你的這一演算法後期還可能加進去其他的演算法,應用介面。為了擴展性,預留資源。
當然還要考慮,PCB製作的難易程度,像6000以上的板子都不自己做的。還有片子價格,供應情況,像前一段時間,2812的片子供貨緊張,80元的炒到幾百元。
就說這么多了。也不是高手,你就看看吧。
⑺ 如何獲得DSP專用演算法
專用演算法需要花錢買的,國外有公司做這個的,ti也提供相關DSP演算法
⑻ DSP的演算法移植問題
移植:
1)如果你的演算法是基本opencv這樣的基本上開發的,你需要脫離opencv的環境。
2)如果你的演算法是C++語言,請你改成標準的C語言。雖然DSP的開發環境是支持C++的,但是不建議你這么做。
3)修改你演算法的內存分配,盡量內存一次分配好,DSP在演算法不斷的申請和釋放時會有隱患。優先使用靜態數組,會減輕很多工作量。
4)在CCS下建立工程,來調試你的演算法,內存分配函數需要使用TI提供的函數。如果你的演算法能夠長期穩定的運行,那麼恭喜你,你的演算法移植就完成了。
優化:
演算法優化,需要你能懂演算法,也懂DSP。如果你只會寫DSP程序,而不會演算法,這對整個產品來說,是不能達到最優的。有些公司怕演算法泄密,給優化人員一段或幾段程序讓其優化。我覺得這樣做是很不合理的。除非你自己能控制大局,精通優化,這樣才可行。
1)你需要對演算法原理做一個深刻苦的理解,閱讀相關的文章。
2)對你拿到的演算法做全方位的熟悉。
3)做好上面的准備工作後,你要對演算法的結構做重新的整理。依據DSP的特點,比如內存的分布。演算法結構調整完成後,你的演算法在DSP上速度應該有一個明顯的提高了。
4)結構調整完成後,找到演算法中比較費時的部分。確定我們需要優化的重點,這部分內容多是每張圖像都要處理一次或多次的部分。對於演算法啟動時初始化部分的內容,一般不需要優化。
5)確定優化內容後,你首先考慮從語言結構上去做優化,這個時候應該還是C語言的。我不建議大家用TI提供的在C語言中使用優化嵌入的C庫函數。
6)你把需要優化的函數改寫為線性匯編或匯編函數。不斷的調整軟體流水,提高速率。
⑼ DSP的演算法怎麼學
可以不知道一些復雜的演算法,但你得了解那些簡單的演算法,和數據結構。dsp是需要編程的
⑽ CPLD和DSP演算法
CPLD(Complex Programmable Logic Device)是Complex PLD的簡稱,一種較PLD為復雜的邏輯元件。CPLD是一種用戶根據各自需要而自行構造邏輯功能的數字集成電路。其基本設計方法是藉助集成開發軟體平台,用原理圖、硬體描述語言等方法,生成相應的目標文件,通過下載電纜(「在系統」編程)將代碼傳送到目標晶元中,實現設計的數字系統。
它具有編程靈活、集成度高、設計開發周期短、適用范圍寬、開發工具先進、設計製造成本低、對設計者的硬體經驗要求低、標准產品無需測試、保密性強、價格大眾化等特點,可實現較大規模的電路設計,因此被廣泛應用於產品的原型設計和產品生產(一般在10,000件以下)之中。幾乎所有應用中小規模通用數字集成電路的場合均可應用CPLD器件。CPLD器件已成為電子產品不可缺少的組成部分,它的設計和應用成為電子工程師必備的一種技能。
FPGA是英文Field-Programmable Gate Array的縮寫,即現場可編程門陣列,它是在PAL、GAL、CPLD等可編程器件的基礎上進一步發展的產物。它是作為專用集成電路(ASIC)領域中的一種半定製電路而出現的,既解決了定製電路的不足,又克服了原有可編程器件門電路數有限的缺點。
FPGA是專用集成電路(ASIC)中集成度最高的一種,用戶可對FPGA內部的邏輯模塊和I/O模塊重新配置,以實現用戶的邏輯,因而也被用於對CPU的模擬。用戶對FPGA的編程數據放在Flash晶元中,通過上電載入到FPGA中,對其進行初始化。也可在線對其編程,實現系統在線重構,這一特性可以構建一個根據計算任務不同而實時定製的CPU,這是當今研究的熱門領域。
DSP(digital singnal processor)是一種獨特的微處理器,是以數字信號來處理大量信息的器件。其工作原理是接收模擬信號,轉換為0或1的數字信號,再對數字信號進行修改、刪除、強化,並在其他系統晶元中把數字數據解譯回模擬數據或實際環境格式。它不僅具有可編程性,而且其實時運行速度可達每秒數以千萬條復雜指令程序,遠遠超過通用微處理器,是數字化電子世界中日益重要的電腦晶元。它的強大數據處理能力和高運行速度,是最值得稱道的兩大特色。
DSP晶元,也稱數字信號處理器,是一種特別適合於進行數字信號處理運算的微處理器器,其主要應用是實時快速地實現各種數字信號處理演算法。根據數字信號處理的要求,DSP晶元一般具有如下主要特點:
(1)在一個指令周期內可完成一次乘法和一次加法;
(2)程序和數據空間分開,可以同時訪問指令和數據;
(3)片內具有快速RAM,通常可通過獨立的數據匯流排在兩塊中同時訪問;
(4)具有低開銷或無開銷循環及跳轉的硬體支持;
(5)快速的中斷處理和硬體I/O支持;
(6)具有在單周期內操作的多個硬體地址產生器;
(7)可以並行執行多個操作;
(8)支持流水線操作,使取指、解碼和執行等操作可以重疊執行。
當然,與通用微處理器相比,DSP晶元的其他通用功能相對較弱些。
FPGA基於SRAM的架構,集成度高,以LE(包括查找表、觸發器及其他)為基本單元,有內嵌Memory、DSP等,支持IO標准豐富。具有易揮發性,需要有上電載入過程。在實現復雜演算法、隊列調度、數據處理、高性能設計、大容量緩存設計等領域中有廣泛應用,如Altera Stratix系列。
CPLD基於EEPROM工藝,集成度低,以MicroCell(包括組合部分與寄存器)為基本單元。具有非揮發特性,可以重復寫入。在粘合邏輯、地址解碼、簡單控制、FPGA載入等設計中有廣泛應用,如Altera MAX3000A系列。
詳細比較:盡管FPGA和CPLD都是可編程ASIC器件,有很多共同特點,但由於CPLD和FPGA結構上的差異,具有各自的特點
①CPLD更適合完成各種演算法和組合邏輯,FP GA更適合於完成時序邏輯。換句話說,FPGA更適合於觸發器豐富的結構,而CPLD更適合於觸發器有限而乘積項豐富的結構。
②CPLD的連續式布線結構決定了它的時序延遲是均勻的和可預測的,而FPGA的分段式布線結構決定了其延遲的不可預測性。
③在編程上FPGA比CPLD具有更大的靈活性。CPLD通過修改具有固定內連電路的邏輯功能來編程,FPGA主要通過改變內部連線的布線來編程;FP GA可在邏輯門下編程,而CPLD是在邏輯塊下編程。
④FPGA的集成度比CPLD高,具有更復雜的布線結構和邏輯實現。
⑤CPLD比FPGA使用起來更方便。CPLD的編程採用E2PROM或FASTFLASH技術,無需外部存儲器晶元,使用簡單。而FPGA的編程信息需存放在外部存儲器上,使用方法復雜。
⑥CPLD的速度比FPGA快,並且具有較大的時間可預測性。這是由於FPGA是門級編程,並且CLB之間採用分布式互聯,而CPLD是邏輯塊級編程,並且其邏輯塊之間的互聯是集總式的。
⑦在編程方式上,CPLD主要是基於E2PROM或FLASH存儲器編程,編程次數可達1萬次,優點是系統斷電時編程信息也不丟失。CPLD又可分為在編程器上編程和在系統編程兩類。FPGA大部分是基於SRAM編程,編程信息在系統斷電時丟失,每次上電時,需從器件外部將編程數據重新寫入SRAM中。其優點是可以編程任意次,可在工作中快速編程,從而實現板級和系統級的動態配置。
⑧CPLD保密性好,FPGA保密性差。
⑨一般情況下,CPLD的功耗要比FPGA大,且集成度越高越明顯。