999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DSP環境下C語言的編程優化

2017-04-14 00:51:10朱業騰
電子測試 2017年20期
關鍵詞:程序有效性優化

朱業騰

(中國船舶重工集團公司第七二三研究所,江蘇揚州,225000)

基于DSP環境下C語言的編程優化

朱業騰

(中國船舶重工集團公司第七二三研究所,江蘇揚州,225000)

DSP作為一項新型技術,具有實時、準時等優勢,在此類系統中,能夠運用合理的片內結構,實現對數字信號的專門性處理,提高信號處理有效性。但隨著DSP應用范圍愈發廣泛,匯編語言程序可讀性、可移植性等缺陷逐漸暴露出來,且匯編語言是非結構化語言,對于大型的結構化程序設計難以勝任,要求我們采用更為高級的語言完成該項工作。相比較現有匯編語言,C語言無疑是最為高效和靈活的,如何在DSP環境下實現對C語言編程優化受到了廣泛關注。文章將從DSP的特點出發,深入分析在DSP環境下C語言編程的優化措施,希望對DSP平臺完善提供參考。

DSP環境;C語言;編程優化

0 引言

相比較單片機,DSP多用于算法較為復雜、乘加運算量較大的通信、雷達及音視頻處理等方面。為了追求高效的代碼,一般主要采用匯編語言編寫DSP程序。隨著DSP應用范圍不斷拓展,匯編語言程序在可讀性等方面無法滿足實踐應用需求,故積極引入了C語言,有效解決上述問題。但在實踐中,C語言編程在細節上還存在諸多不足,有待進一步完善和優化,提高程序應用價值。

1 DSP概述

所謂DSP,是以電子信息技術為核心的數字信號處理,其基本概念、分析方法與信息、電路及生物醫學等相互滲透和融合。信息時代背景下,對于數字信號問題的處理存在于人們生活和工作當中[1]。DSP誕生于上個世紀八十年代,在通信與信息系統、自動控制及雷達等多個領域得到了應用。

2 DSP開發環境下C語言編程優化

2.1 數據類型

標準C語言能夠提供豐富的數據類型整型、浮點及指針等。從根本上來看,編程面對的問題,是如何將數據類型編譯成為生成的代碼小、效率高。對于整型而言,其具有signed與unsigned區別,由于缺少統一的標準和規范,這些模糊定義直接影響程序由一個處理器向另一個處理器轉移。為了避免此類影響,在編程過程中,可以根據數據類型重新定義文件。在編程中,對于浮點的使用存在一定風險,除非系統具備專門的浮點設計處理器,否則將會存在很多不確定性。考慮到DSP常用可變定位方式,如果忽視對結構的處理,會浪費大量RAM與ROM空間。

2.2 數值操作優化

對于C語言編程優化,需要加強對數值操作的優化,從如下幾個方面入手:一是利用比特移位操作,借助全新的方式,取代2次冪整數乘除法運算,能夠取得更好效果。二是利用查表法,尤其是在FFT程序中,可以將一些運行時計算的參數視為查找表,進行編譯計算,以此來提高運算有效性。三是當出現浮點設備時,要進一步明確數據類型,以此來緩解定點單位負擔。四是避免數值上下溢出,除非是算法本身需求。通過對數值的優化,能夠優化編程程序,提高編程有效性。

2.3 變量定義優化

C語言能夠將局部變量放到堆棧中,此類訪問為間接性,故整體速度較為緩慢。在優化中,更為高效的方法是將變量放在堆中,通過兩種方法來實現。具體來說,一是聲明為全局變量;二是聲明變量為static,值得注意的是,在編程中要加強對全局變量利用率的提升。針對需要多次重復訪問的for等變量,要設置為register變量,以此來提高編程效率,為工程師提供更多支持[2]。

2.4 調用函數

調用函數會產生大量代碼,當C調用一個函數時,需要將參數傳遞到寄存器中。據此,如果函數參數不斷增加,那么會在很大程度上增加調用開銷。同時,還需要大量堆棧空間,最壞的情況是函數參數所傳遞的是結構,編譯器在調用過程中,要將整個結構轉移到堆棧當中。上述過程會增加諸多成本,為此,要禁止結構傳遞,可以利用結構指針取代,以此來減少成本,提高編程有效性[3]。除了上述開銷外,還存在局部變量與返回值。如果需要返回值,需要在函數返回前,復制返回值,將其放置到指定位置,并將結果復制到調用程序當中。針對C++開發用戶來說,采用inline技術能夠完全消除函數調用開銷,但采取該項措施,會增加目標代碼的大小。

2.5 程序流程設計

在C語言中,程序流程控制主要有else、case、do等,合理選擇控制方式對于代碼生成效率與大小存在直接聯系。針對具體控制語句的選擇,可以考慮以下幾個方面:首先,選擇控制語句時要減少判斷轉移。在DSP環境中,流水線結構較為常見,如TMS320C54X中,采用了6級流水線結構,但受到頻繁轉移,在很大程度上影響流水線積極作用。如果面臨著多項選擇,switch、case語句具有較強的可讀性,但其會帶來更多的開銷。而if、else語句更為靈活,但它需要更多的C代碼。

3 結論

在DSP環境中,利用C語言開發能夠縮短開發周期,提高程序開發有效性,使得程序的可讀性等優勢更加突出,增強系統適用性。針對程序開發全過程來看,本文從流程、函數調用及數值操作等角度入手,通過對C語言編程和優化,能夠顯著提高編程有效性。隨著實時操作系統、嵌入式操作系統的不斷引入,及DSP平臺日益完善,利用C語言實現對DSP的應用將變得更為便利。

[1]陳川,閆昆,劉小劍,張坤.多核DSP供電設計及其環境適應性分析[J].電子器件,2017,40(03):577-580.

[2]張浩宇,徐建軍,張南.JPEG2000的MQ模塊在DSP環境下的優化實現[J].軟件,2016,37(09):130-134.

Programming optimization of C language based on DSP environment

Zhu Yeteng
(The 723 Research Institute of China Shipbuilding Industry Corp,Yangzhou Jiangsu, 225000)

DSP is a new technology, has the advantages of real-time, time and other advantages, in such a system, can use reasonable internal structure, special realization of digital signal processing, signal processing to improve the effectiveness of But with the increasingly widespread application of DSP,assembly language program readability, portability and other defects gradually exposed, and the assembly language is non structured language for structured programming is difficult for large, we should adopt more advanced language to complete the work. Compared to the existing assembly language, C language is undoubtedly the most efficient and flexible, and how to achieve the optimization of C programming in the DSP environment has

widespread attention This article will start from the characteristics of DSP,in-depth analysis of the DSP environment in C programming language optimization measures, hoping to provide some reference for the improvement of the DSP platform

DSP environment; C language; programming optimization

猜你喜歡
程序有效性優化
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
如何提高英語教學的有效性
甘肅教育(2020年6期)2020-09-11 07:45:28
制造業內部控制有效性的實現
提高家庭作業有效性的理論思考
甘肅教育(2020年12期)2020-04-13 06:24:56
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
主站蜘蛛池模板: 亚洲天堂视频在线观看免费| 午夜免费小视频| 99ri精品视频在线观看播放| 国产精品2| 亚洲欧美自拍一区| 日韩毛片免费| 成人在线观看不卡| 久久人搡人人玩人妻精品| 青青青国产视频| 无码精油按摩潮喷在线播放| 国产欧美精品一区二区| 蝌蚪国产精品视频第一页| 无码'专区第一页| 亚洲永久色| 18禁不卡免费网站| 欧美中文字幕在线视频| 91午夜福利在线观看| 亚洲第一av网站| 人妻熟妇日韩AV在线播放| av午夜福利一片免费看| 精品国产www| 久久99热66这里只有精品一| 日本精品中文字幕在线不卡| 无遮挡一级毛片呦女视频| a级毛片在线免费观看| 特级毛片8级毛片免费观看| 亚洲日本中文字幕天堂网| 国产精品视频免费网站| 色悠久久久| 性喷潮久久久久久久久| 亚洲av无码成人专区| 老司机午夜精品网站在线观看| 日日碰狠狠添天天爽| 91精品啪在线观看国产| 永久毛片在线播| 国产成人在线无码免费视频| 国产精品免费电影| 国产视频大全| 国外欧美一区另类中文字幕| 久久免费视频6| 欧美国产在线精品17p| 五月综合色婷婷| 97国产在线播放| 国产亚洲精品无码专| 日韩精品成人在线| 91原创视频在线| 色哟哟国产精品一区二区| 免费福利视频网站| а∨天堂一区中文字幕| 亚洲成a人片| 亚洲日韩精品伊甸| 三级毛片在线播放| 无码'专区第一页| 在线国产你懂的| 亚洲欧洲美色一区二区三区| 在线日本国产成人免费的| 国产丝袜无码精品| 中文字幕在线看| 福利小视频在线播放| 免费一极毛片| 亚洲av无码久久无遮挡| 国产青榴视频| 日本a∨在线观看| 手机精品视频在线观看免费| 91免费观看视频| 国产主播在线一区| 免费人成网站在线高清| 天天躁夜夜躁狠狠躁图片| 欧美一区二区精品久久久| 五月婷婷导航| 国产精品尹人在线观看| 亚洲视频一区在线| 国产毛片久久国产| 91九色最新地址| 国产91蝌蚪窝| 久久亚洲黄色视频| 国产农村精品一级毛片视频| 亚洲动漫h| 国产香蕉在线视频| 午夜一区二区三区| 亚洲精品福利视频| 国产波多野结衣中文在线播放|