戈 華,聶 陽(yáng)(集寧師范學(xué)院物理系,內(nèi)蒙古烏蘭察布,012000)
?
基于模型設(shè)計(jì)的DSP實(shí)現(xiàn)方法研究
戈 華,聶 陽(yáng)
(集寧師范學(xué)院物理系,內(nèi)蒙古烏蘭察布,012000)
摘要:為了滿足現(xiàn)代DSP算法的快速硬件實(shí)現(xiàn)需求,本文分析了傳統(tǒng)DSP設(shè)計(jì)方法的缺點(diǎn),給出基于模型設(shè)計(jì)的DSP實(shí)現(xiàn)工作流程。整個(gè)設(shè)計(jì)流程從設(shè)計(jì)的需求開(kāi)始到最后的硬件實(shí)現(xiàn)一直集中在DSP算法的設(shè)計(jì)模型。通過(guò)采用Simulink、Fixed-Point Designer、MATLAB Coder和HDL Coder等工具,給出了完整的開(kāi)發(fā)流程。這種基于模型設(shè)計(jì)的DSP算法開(kāi)發(fā)流程不僅克服了傳統(tǒng)設(shè)計(jì)方法效率低的缺點(diǎn),而且提高了DSP電路設(shè)計(jì)的可靠性。
關(guān)鍵詞:基于模型設(shè)計(jì);DSP;FPGA
隨著各項(xiàng)軟硬件技術(shù)的發(fā)展,DSP的應(yīng)用越來(lái)越廣泛,同時(shí)系統(tǒng)的復(fù)雜度也越來(lái)越高,在最短的時(shí)間內(nèi)開(kāi)發(fā)出市場(chǎng)所需的產(chǎn)品已經(jīng)成為企業(yè)成功的關(guān)鍵,也是開(kāi)發(fā)人員面臨的挑戰(zhàn)。傳統(tǒng)的DSP處理器也出現(xiàn)了諸多瓶頸限制了高速信號(hào)的處理。
傳統(tǒng)的DSP解決辦法中,整個(gè)項(xiàng)目開(kāi)發(fā)周期分成四個(gè)階段:需求和規(guī)范的定義、算法的設(shè)計(jì)與開(kāi)發(fā)、系統(tǒng)軟硬件的實(shí)現(xiàn)及測(cè)試與驗(yàn)證。在這種傳統(tǒng)的開(kāi)發(fā)流程中,四個(gè)階段不能有機(jī)的聯(lián)系起來(lái),從而導(dǎo)致了開(kāi)發(fā)過(guò)程中的種種問(wèn)題。例如基于文本的需求分析和規(guī)范定義,導(dǎo)致了不同的人產(chǎn)生不同的理解,使得最后開(kāi)發(fā)出的產(chǎn)品可能不符合客戶的需求;不同的組或不同的部門負(fù)責(zé)不同的流程, 軟、硬件工程師需要不斷地溝通,之間的傳遞錯(cuò)誤將會(huì)影響整個(gè)開(kāi)發(fā)項(xiàng)目的設(shè)計(jì)進(jìn)度。
其次,傳統(tǒng)的DSP開(kāi)發(fā)流程中,在最后的測(cè)試過(guò)程中,測(cè)試部分只能在整個(gè)設(shè)計(jì)完成后進(jìn)行。 如出現(xiàn)問(wèn)題還需要對(duì)問(wèn)題的所在進(jìn)行較長(zhǎng)時(shí)間的分析、確認(rèn)。如問(wèn)題出現(xiàn)在設(shè)計(jì)的開(kāi)始階段,那整個(gè)設(shè)計(jì)的修改將是巨大的,這給設(shè)計(jì)成本、設(shè)計(jì)周期都帶來(lái)很大的負(fù)面影響。另外,在實(shí)現(xiàn)階段,通常利用手工方法完成編碼,不但費(fèi)時(shí)費(fèi)力,而且不可避免的引入人為失誤。
近幾年中基于模型的設(shè)計(jì)在FPGA設(shè)計(jì)領(lǐng)域、嵌入式領(lǐng)域等到了快速的發(fā)展。在基于模型的開(kāi)發(fā)過(guò)程中,系統(tǒng)模型是需求開(kāi)發(fā)、模型設(shè)計(jì)、實(shí)施和測(cè)試的核心問(wèn)題,整個(gè)開(kāi)發(fā)流程如圖1所示?;谀P偷脑O(shè)計(jì)中,可以利用EDA軟件通過(guò)建立各種系統(tǒng)模型完整地呈現(xiàn)系統(tǒng)設(shè)計(jì)要求,工程師可以確認(rèn)每個(gè)設(shè)計(jì)環(huán)節(jié)上都準(zhǔn)確無(wú)誤。開(kāi)發(fā)在不同的項(xiàng)目組間使用通用的設(shè)計(jì)環(huán)境;設(shè)計(jì)直接同需求相連;通過(guò)軟件自動(dòng)生成的C代碼或HDL代碼實(shí)現(xiàn)嵌入式系統(tǒng)設(shè)計(jì)的各種應(yīng)用,并因此有效地避免手工撰寫源代碼可能產(chǎn)生的錯(cuò)誤。在開(kāi)發(fā)過(guò)程的每一階段都可應(yīng)用于基于模型的設(shè)計(jì)驗(yàn)證、測(cè)試,這將最大程度地降低了整個(gè)系統(tǒng)的最終測(cè)試產(chǎn)生錯(cuò)誤的可能,從而設(shè)計(jì)流程實(shí)現(xiàn)了最佳的優(yōu)化,最終的產(chǎn)品也能滿足設(shè)計(jì)的要求。
需求階段(Requirement):在基于模型設(shè)計(jì)的DSP算法開(kāi)發(fā)過(guò)程中,首先在Simulink要通過(guò)精確的數(shù)學(xué)模型來(lái)建立一個(gè)系統(tǒng)模型,該模型是一個(gè)可執(zhí)行的規(guī)范,它可以清晰準(zhǔn)確的描述用戶的設(shè)計(jì)需求、系統(tǒng)組件、知識(shí)產(chǎn)權(quán)和測(cè)試環(huán)境。這種可執(zhí)行的規(guī)范與傳統(tǒng)的word文檔規(guī)范有明顯的優(yōu)勢(shì)。因?yàn)樗嗣鞔_的信息,設(shè)計(jì)團(tuán)隊(duì)中的工程師可以無(wú)歧義的理解并運(yùn)行該模型,避免了不同設(shè)計(jì)部門應(yīng)理解不同而造成需求信息的錯(cuò)誤,從而工程師更加專注于系統(tǒng)模型的設(shè)計(jì)。
設(shè)計(jì)階段(Design):通過(guò)系統(tǒng)功能仿真和測(cè)試后,在基本確定系統(tǒng)浮點(diǎn)模型的可行性后,為了滿足DSP算法的硬件實(shí)現(xiàn),需要把浮點(diǎn)模型轉(zhuǎn)換為定點(diǎn)模型。Fixed-Point Designer可以完成浮點(diǎn)模型到定點(diǎn)模型的轉(zhuǎn)換。該工具可以創(chuàng)建和優(yōu)化定點(diǎn)數(shù)據(jù)類型,滿足數(shù)值精度要求和目標(biāo)硬件的限制。通過(guò)模擬設(shè)計(jì)和分析結(jié)果,比較與浮點(diǎn)模型的差異,獲得最大精度定點(diǎn)模型信息。
代碼的自動(dòng)生成(Implementation):Mathworks 公司的MATLAB Coder和HDL Coder可以將Simulink中的模型自動(dòng)轉(zhuǎn)換為嵌入式C代碼和HDL代碼,從而降低DSP算法的硬件開(kāi)發(fā)門檻。自動(dòng)生成可優(yōu)化的、可移植的代碼使得開(kāi)發(fā)團(tuán)隊(duì)專注于模型設(shè)計(jì),而不必拘泥DSP算法是用DSP處理器實(shí)現(xiàn),還是FPGA實(shí)現(xiàn)。由于代碼的自動(dòng)生成,產(chǎn)品開(kāi)發(fā)的周期更快,更容易處理需求的變化,滿足市場(chǎng)的需求。
連續(xù)的測(cè)試與驗(yàn)證(Test and Verification):在基于模型設(shè)計(jì)的整個(gè)設(shè)計(jì)過(guò)程中都在不斷的測(cè)試和驗(yàn)證。通過(guò)測(cè)試和驗(yàn)證來(lái)跟蹤系統(tǒng)的模型設(shè)計(jì)是否滿足需求,觀測(cè)系統(tǒng)各個(gè)輸出的變化情況,從而快速的追蹤錯(cuò)誤來(lái)源。
在基于模型設(shè)計(jì)的DSP算法開(kāi)發(fā)流程中,算法的模型是設(shè)計(jì)的主要信息來(lái)源。這些信息不僅包括設(shè)計(jì)規(guī)范和系統(tǒng)開(kāi)發(fā)環(huán)境,也包括產(chǎn)品知識(shí),團(tuán)隊(duì)成員的理論知識(shí)和實(shí)踐經(jīng)驗(yàn)。在整個(gè)開(kāi)發(fā)流程中,模型成為開(kāi)發(fā)團(tuán)隊(duì)成員中信息傳遞的通用語(yǔ)言。因?yàn)槟P褪强梢员粓?zhí)行和仿真,它們所包含的內(nèi)容也隨著開(kāi)發(fā)人員對(duì)系統(tǒng)的了解而增加。利用基于模型設(shè)計(jì)的方法來(lái)完成DSP算法的實(shí)現(xiàn),不僅克服了傳統(tǒng)設(shè)計(jì)方法效率低的缺點(diǎn),而且提高了產(chǎn)品的可靠性。因此,基于模型設(shè)計(jì)的開(kāi)發(fā)流程必然會(huì)在未來(lái)復(fù)雜的DSP算法實(shí)現(xiàn)中發(fā)揮重要的作用。
圖1 基于模型的開(kāi)發(fā)流程
參考文獻(xiàn)
[1]J. Liu. "Model based design workflow for FPGA compliance with DO-254 standard", Proceedings of international symposium on information technology in medicine and education, (2012), pp.1026-1030.
[2]劉杰. 基于模型的設(shè)計(jì)及其嵌入式實(shí)現(xiàn)[M]. 北京:北京航空航天大學(xué)出版社,2010.
[3] Roger Aarenstrup. Managing Model-Based Design [M]. Math Works, 2015.
中圖分類號(hào):TP332
文獻(xiàn)標(biāo)識(shí)碼:A
作者簡(jiǎn)介
戈華(1964-),男,教授,研究方向:高速信號(hào)處理。
基金項(xiàng)目:內(nèi)蒙古自治區(qū)高等學(xué)??茖W(xué)技術(shù)研究項(xiàng)目(NJZZ14288)
Research on Implementation Method of DSP Using Model-Based Design
Ge Hua,Nie Yang
(Department of Physics of Jining Normal University,Ulanqab China,012000)
Abstract:In order to meet the needs of fast hardware implementation of modern DSP algorithm,this paper analyzes the shortcomings of the traditional DSP design method,and gives the workflow of DSP implementation using Model-Based Design. The entire process which starts from design concept to hardware implementation always focuses on design model of DSP algorithm.Using Simulink,F(xiàn)ixed-Point Designer,MATLAB Coder and HDL Coder,the complete development process is given.The development process of DSP algorithm based on model design not only overcomes the disadvantage of low efficiency of traditional design method,but also improves the reliability of the circuit of DSP.
Keywords:Model-Based Design;DSP;FPGA