亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于DSP環(huán)境下C語(yǔ)言的編程優(yōu)化

        2017-04-14 00:51:10朱業(yè)騰
        電子測(cè)試 2017年20期
        關(guān)鍵詞:匯編語(yǔ)言浮點(diǎn)數(shù)據(jù)類型

        朱業(yè)騰

        (中國(guó)船舶重工集團(tuán)公司第七二三研究所,江蘇揚(yáng)州,225000)

        基于DSP環(huán)境下C語(yǔ)言的編程優(yōu)化

        朱業(yè)騰

        (中國(guó)船舶重工集團(tuán)公司第七二三研究所,江蘇揚(yáng)州,225000)

        DSP作為一項(xiàng)新型技術(shù),具有實(shí)時(shí)、準(zhǔn)時(shí)等優(yōu)勢(shì),在此類系統(tǒng)中,能夠運(yùn)用合理的片內(nèi)結(jié)構(gòu),實(shí)現(xiàn)對(duì)數(shù)字信號(hào)的專門性處理,提高信號(hào)處理有效性。但隨著DSP應(yīng)用范圍愈發(fā)廣泛,匯編語(yǔ)言程序可讀性、可移植性等缺陷逐漸暴露出來(lái),且匯編語(yǔ)言是非結(jié)構(gòu)化語(yǔ)言,對(duì)于大型的結(jié)構(gòu)化程序設(shè)計(jì)難以勝任,要求我們采用更為高級(jí)的語(yǔ)言完成該項(xiàng)工作。相比較現(xiàn)有匯編語(yǔ)言,C語(yǔ)言無(wú)疑是最為高效和靈活的,如何在DSP環(huán)境下實(shí)現(xiàn)對(duì)C語(yǔ)言編程優(yōu)化受到了廣泛關(guān)注。文章將從DSP的特點(diǎn)出發(fā),深入分析在DSP環(huán)境下C語(yǔ)言編程的優(yōu)化措施,希望對(duì)DSP平臺(tái)完善提供參考。

        DSP環(huán)境;C語(yǔ)言;編程優(yōu)化

        0 引言

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

        1 DSP概述

        所謂DSP,是以電子信息技術(shù)為核心的數(shù)字信號(hào)處理,其基本概念、分析方法與信息、電路及生物醫(yī)學(xué)等相互滲透和融合。信息時(shí)代背景下,對(duì)于數(shù)字信號(hào)問(wèn)題的處理存在于人們生活和工作當(dāng)中[1]。DSP誕生于上個(gè)世紀(jì)八十年代,在通信與信息系統(tǒng)、自動(dòng)控制及雷達(dá)等多個(gè)領(lǐng)域得到了應(yīng)用。

        2 DSP開(kāi)發(fā)環(huán)境下C語(yǔ)言編程優(yōu)化

        2.1 數(shù)據(jù)類型

        標(biāo)準(zhǔn)C語(yǔ)言能夠提供豐富的數(shù)據(jù)類型整型、浮點(diǎn)及指針等。從根本上來(lái)看,編程面對(duì)的問(wèn)題,是如何將數(shù)據(jù)類型編譯成為生成的代碼小、效率高。對(duì)于整型而言,其具有signed與unsigned區(qū)別,由于缺少統(tǒng)一的標(biāo)準(zhǔn)和規(guī)范,這些模糊定義直接影響程序由一個(gè)處理器向另一個(gè)處理器轉(zhuǎn)移。為了避免此類影響,在編程過(guò)程中,可以根據(jù)數(shù)據(jù)類型重新定義文件。在編程中,對(duì)于浮點(diǎn)的使用存在一定風(fēng)險(xiǎn),除非系統(tǒng)具備專門的浮點(diǎn)設(shè)計(jì)處理器,否則將會(huì)存在很多不確定性??紤]到DSP常用可變定位方式,如果忽視對(duì)結(jié)構(gòu)的處理,會(huì)浪費(fèi)大量RAM與ROM空間。

        2.2 數(shù)值操作優(yōu)化

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

        2.3 變量定義優(yōu)化

        C語(yǔ)言能夠?qū)⒕植孔兞糠诺蕉褩V?,此類訪問(wèn)為間接性,故整體速度較為緩慢。在優(yōu)化中,更為高效的方法是將變量放在堆中,通過(guò)兩種方法來(lái)實(shí)現(xiàn)。具體來(lái)說(shuō),一是聲明為全局變量;二是聲明變量為static,值得注意的是,在編程中要加強(qiáng)對(duì)全局變量利用率的提升。針對(duì)需要多次重復(fù)訪問(wèn)的for等變量,要設(shè)置為register變量,以此來(lái)提高編程效率,為工程師提供更多支持[2]。

        2.4 調(diào)用函數(shù)

        調(diào)用函數(shù)會(huì)產(chǎn)生大量代碼,當(dāng)C調(diào)用一個(gè)函數(shù)時(shí),需要將參數(shù)傳遞到寄存器中。據(jù)此,如果函數(shù)參數(shù)不斷增加,那么會(huì)在很大程度上增加調(diào)用開(kāi)銷。同時(shí),還需要大量堆??臻g,最壞的情況是函數(shù)參數(shù)所傳遞的是結(jié)構(gòu),編譯器在調(diào)用過(guò)程中,要將整個(gè)結(jié)構(gòu)轉(zhuǎn)移到堆棧當(dāng)中。上述過(guò)程會(huì)增加諸多成本,為此,要禁止結(jié)構(gòu)傳遞,可以利用結(jié)構(gòu)指針取代,以此來(lái)減少成本,提高編程有效性[3]。除了上述開(kāi)銷外,還存在局部變量與返回值。如果需要返回值,需要在函數(shù)返回前,復(fù)制返回值,將其放置到指定位置,并將結(jié)果復(fù)制到調(diào)用程序當(dāng)中。針對(duì)C++開(kāi)發(fā)用戶來(lái)說(shuō),采用inline技術(shù)能夠完全消除函數(shù)調(diào)用開(kāi)銷,但采取該項(xiàng)措施,會(huì)增加目標(biāo)代碼的大小。

        2.5 程序流程設(shè)計(jì)

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

        3 結(jié)論

        在DSP環(huán)境中,利用C語(yǔ)言開(kāi)發(fā)能夠縮短開(kāi)發(fā)周期,提高程序開(kāi)發(fā)有效性,使得程序的可讀性等優(yōu)勢(shì)更加突出,增強(qiáng)系統(tǒng)適用性。針對(duì)程序開(kāi)發(fā)全過(guò)程來(lái)看,本文從流程、函數(shù)調(diào)用及數(shù)值操作等角度入手,通過(guò)對(duì)C語(yǔ)言編程和優(yōu)化,能夠顯著提高編程有效性。隨著實(shí)時(shí)操作系統(tǒng)、嵌入式操作系統(tǒng)的不斷引入,及DSP平臺(tái)日益完善,利用C語(yǔ)言實(shí)現(xiàn)對(duì)DSP的應(yīng)用將變得更為便利。

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

        [2]張浩宇,徐建軍,張南.JPEG2000的MQ模塊在DSP環(huán)境下的優(yōu)化實(shí)現(xiàn)[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

        猜你喜歡
        匯編語(yǔ)言浮點(diǎn)數(shù)據(jù)類型
        LEO星座增強(qiáng)GNSS PPP模糊度浮點(diǎn)解與固定解性能評(píng)估
        詳談Java中的基本數(shù)據(jù)類型與引用數(shù)據(jù)類型
        高等學(xué)校計(jì)算機(jī)專業(yè)課程教學(xué)改革實(shí)踐——以匯編語(yǔ)言與接口技術(shù)課程為例
        如何理解數(shù)據(jù)結(jié)構(gòu)中的抽象數(shù)據(jù)類型
        基于浮點(diǎn)DSP的鐵路FSK信號(hào)檢測(cè)
        匯編語(yǔ)言與C語(yǔ)言的混合程序設(shè)計(jì)技術(shù)研究
        電子制作(2019年10期)2019-06-17 11:45:16
        提高《匯編語(yǔ)言程序設(shè)計(jì)》教學(xué)效率的思考與實(shí)踐
        基于FPGA的浮點(diǎn)FIR濾波器設(shè)計(jì)
        改進(jìn)的Goldschmidt雙精度浮點(diǎn)除法器
        在.NET環(huán)境下進(jìn)行nashRemoting開(kāi)發(fā)
        偷拍一区二区三区在线观看| 亚洲AV成人无码久久精品在 | 囯产精品无码一区二区三区| 久久国产精品岛国搬运工| 亚洲精品精品日本日本| 隔壁的日本人妻bd高清中字| 自拍偷拍 视频一区二区| 成人水蜜桃视频在线观看| 国产午夜视频一区二区三区| 女的扒开尿口让男人桶30分钟| 黑人巨大av在线播放无码| 国产精品美女久久久久久2018| 国产v综合v亚洲欧美大天堂| 91国产自拍视频在线| 日本女优久久精品久久| 洲色熟女图激情另类图区| 先锋五月婷婷丁香草草| 免费国产裸体美女视频全黄 | 大尺度无遮挡激烈床震网站| 国模无码一区二区三区不卡| 欧美成人精品一区二区综合| 精品视频在线观看免费无码| 亚洲美女性生活一级片 | 青青草高中生在线视频| 内射口爆少妇麻豆| 无码人妻一区二区三区在线视频| 精品久久久久久久久午夜福利| 亚洲av毛片成人精品| 日本男人精品一区二区| 色偷偷噜噜噜亚洲男人| 国产免费久久精品国产传媒| 国产成社区在线视频观看| 一本大道加勒比东京热| 偷拍美女上厕所一区二区三区| 蜜臀av在线播放一区二区三区| 狠狠躁夜夜躁人人爽天天天天97| 亚洲视频高清| 亚洲不卡av二区三区四区| 亚洲国产精品久久精品| 欧美日韩亚洲国产精品| 亚洲AV无码成人精品区天堂|