當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]摘要:從系統(tǒng)總線設(shè)計(jì)、用戶自定義指令和FPGA協(xié)處理器的應(yīng)用這三個(gè)方面詳細(xì)介紹了如何應(yīng)用SOPC設(shè)計(jì)思想和SoPC Builder工具來(lái)開發(fā)電子系統(tǒng)。通過(guò)應(yīng)用SOPC Builder開發(fā)工具,設(shè)計(jì)者可以擺脫傳統(tǒng)的、易于出錯(cuò)的軟硬件設(shè)

摘要:從系統(tǒng)總線設(shè)計(jì)、用戶自定義指令和FPGA協(xié)處理器的應(yīng)用這三個(gè)方面詳細(xì)介紹了如何應(yīng)用SOPC設(shè)計(jì)思想和SoPC Builder工具來(lái)開發(fā)電子系統(tǒng)。通過(guò)應(yīng)用SOPC Builder開發(fā)工具,設(shè)計(jì)者可以擺脫傳統(tǒng)的、易于出錯(cuò)的軟硬件設(shè)計(jì)細(xì)節(jié),從而達(dá)到加快項(xiàng)目開發(fā)、縮短開發(fā)周期、節(jié)約開發(fā)成本的目的。
關(guān)鍵詞:SoPC;SoPC Builder;FPGA

O 引言
    隨著科學(xué)技術(shù)的進(jìn)一步發(fā)展,SoC設(shè)計(jì)面臨著一些諸如如何進(jìn)行軟硬件協(xié)同設(shè)計(jì),如何縮短電子產(chǎn)品開發(fā)周期的難題。為了解決SoC設(shè)計(jì)中遇到的難題,設(shè)計(jì)方法必須進(jìn)一步優(yōu)化。因此,人們提出了基于FPGA的SoC設(shè)計(jì)方案——SoPC(System on a programmable chlp)。隨著百萬(wàn)門級(jí)的FPGA芯片、功能復(fù)雜的IP核和可重構(gòu)的嵌入式處理器軟核的出現(xiàn),SoPC設(shè)計(jì)成為一種確實(shí)可行的、重要的設(shè)計(jì)方法。
    Altera公司在其開發(fā)工具QuartusⅡ中集成了SoPC Builder工具。在該工具的輔助下,設(shè)計(jì)者可以非常方便地完成系統(tǒng)集成,軟硬件協(xié)同設(shè)計(jì)和驗(yàn)證,最大限度地提高電子系統(tǒng)的性能,加快設(shè)計(jì)速度和節(jié)約設(shè)計(jì)成本。

1 SOPC Builder工具的簡(jiǎn)介
    SoPC Builder是一個(gè)自動(dòng)化的系統(tǒng)開發(fā)工具,它能夠極大地簡(jiǎn)化高性能SoPC的設(shè)計(jì)工作。該工具提供一個(gè)直觀的圖形用戶界面,用戶可以通過(guò)圖形界面簡(jiǎn)化系統(tǒng)的定義工作。由于SoPC Builder不需要直接編寫HDL代碼來(lái)定義系統(tǒng),這極大地節(jié)約了設(shè)計(jì)開發(fā)時(shí)間。SoPC Builder為每個(gè)元件提供了一個(gè)向?qū)?,利用該向?qū)芎苋菀椎囟x元件功能。例如通過(guò)向?qū)軌蚍浅H菀椎卦谝粋€(gè)設(shè)計(jì)中加入Nios處理器,外設(shè)接口等。為了將徽處理器核、外圍設(shè)備、存儲(chǔ)器和其它IP核相互連接起來(lái),SoPC Builder能夠自動(dòng)生成片上總線和總線仲裁器等所需的邏輯。通過(guò)自動(dòng)完成以前易于出錯(cuò)的工作,SOPC Builder可以節(jié)約幾周甚至幾個(gè)月的開發(fā)時(shí)間。SoPC Builder在一個(gè)工具中實(shí)現(xiàn)了嵌入式系統(tǒng)各個(gè)方面的開發(fā),包括軟件的設(shè)計(jì)和驗(yàn)證,為充分利用SoPC技術(shù)提高電子系統(tǒng)的性能和降低成本提供了強(qiáng)有力的支持。本文將從系統(tǒng)總線的設(shè)計(jì)、用戶自定義指令、FPGA協(xié)處理器的應(yīng)用這三個(gè)不同的方面展開討論,介紹如何利用SoPC Builder加快電子系統(tǒng)的開發(fā)。

2 系統(tǒng)總線的設(shè)計(jì)
    系統(tǒng)總線主要解決多個(gè)主控制器相互連接、協(xié)調(diào)工作和資源共享的問(wèn)題。例如一個(gè)系統(tǒng)包含多個(gè)處理器,或是一個(gè)處理器和一個(gè)具有DMA控制器的外圍設(shè)備時(shí),SoPC Builder會(huì)自動(dòng)生成總線仲裁邏輯,使得這些處理器和DMA控制器能夠共享從屬外圍設(shè)備或存儲(chǔ)器。SoPCBui-lder運(yùn)用了一項(xiàng)被稱為從屬設(shè)備仲裁的技術(shù),該技術(shù)允許多個(gè)主控制器同時(shí)訪問(wèn)數(shù)據(jù)。除非多個(gè)主控制器同時(shí)存取同一個(gè)從屬單元,否則仲裁邏輯不會(huì)拒絕任何一個(gè)主控制器的訪問(wèn)。運(yùn)用 SoPCBuilder圖形用戶界面可以非常方便地指定仲裁優(yōu)先級(jí)。SoPC Builder將自動(dòng)生成—個(gè)與目標(biāo)硬件相匹配的軟件開發(fā)環(huán)境,在此過(guò)程中還自動(dòng)生成—個(gè)相關(guān)的頭文件和整個(gè)系統(tǒng)的仿真模型,包括ModelSim工程文件、標(biāo)準(zhǔn)化總線接口波形文件和驗(yàn)證基于目標(biāo)硬件的testbench文件。
    運(yùn)用DMA技術(shù)能夠提高數(shù)據(jù)讀取速度以增強(qiáng)系統(tǒng)的性能,從而使系統(tǒng)能夠更充分地利用CPU或總線的帶寬。這一設(shè)計(jì)思想在SoPC Builder中通過(guò)創(chuàng)建特定功能的外圍設(shè)備進(jìn)一步加強(qiáng)。用戶自己可以定義用Verilog或VHDL語(yǔ)言描述的邏輯,并把它們加人到SoPC Builder的開發(fā)環(huán)境中。在圖形用戶界面的交互下,SoPC Builder會(huì)自動(dòng)為這些用戶定義的邏輯創(chuàng)建必要的總線接口,使DMA控制器能夠訪問(wèn)這些用戶定義的外圍邏輯。在數(shù)字信號(hào)處理領(lǐng)域,快速傅立葉變換或離散余弦變換就是很好的例子。這些變換對(duì)數(shù)據(jù)的處理是基于數(shù)據(jù)塊進(jìn)行操作的。DMA控制器從系統(tǒng)外部讀取數(shù)據(jù),并把數(shù)據(jù)存儲(chǔ)到預(yù)處理存儲(chǔ)單元中。這一過(guò)程不需要處理器的干預(yù),因此在這一期間處理器可以完成其它事情。等到DMA接收完數(shù)據(jù)后,處理器從預(yù)處理存儲(chǔ)單元中讀取數(shù)據(jù)進(jìn)行處理,而DMA則把剛才處理器的處理結(jié)果讀出來(lái)送到指定的外圍設(shè)備中,并且繼續(xù)接收數(shù)據(jù)。在這樣的系統(tǒng)中,總線起到至關(guān)重要的作用。設(shè)計(jì)這樣的系統(tǒng)總線是一件非常繁瑣而且極易出錯(cuò)的事情?,F(xiàn)在這一切都由SoPC
Builder工具自動(dòng)生成,大大地減輕了設(shè)計(jì)者的負(fù)擔(dān),提高了設(shè)計(jì)效率,加快了電子系統(tǒng)的設(shè)計(jì)速度。

3 用戶自定義指令
    當(dāng)數(shù)據(jù)塊比較小而且處理過(guò)程已確定時(shí)(只需幾個(gè)確定的CPU指令周期),最有效的處理方法是通過(guò)SoPC Builder為Nios處理器自定義用戶指令來(lái)實(shí)現(xiàn)。設(shè)計(jì)者可以直接在Nios處理器的算術(shù)邏輯單元(ALU)中加入具有特定功能的組合或時(shí)序邏輯塊,然后在SoPC Builder中將這些特定功能的邏輯塊和用戶自定義指令聯(lián)系起來(lái),通過(guò)Ra和Rb兩個(gè)寄存器來(lái)實(shí)現(xiàn)。處理器的處理結(jié)果存儲(chǔ)在Ra寄存器中。這些用戶定義的功能僅由器件中的邏輯單元決定。在系統(tǒng)生成時(shí),SoPC Builder自動(dòng)為每一個(gè)用戶定義的指令創(chuàng)建一個(gè)宏。軟件通過(guò)在Nios嵌入式處理器指令集中用戶自己定義的操作碼來(lái)訪問(wèn)這些特定功能硬件。由于采用硬件實(shí)現(xiàn)復(fù)雜的算術(shù)邏輯運(yùn)算比用軟件更快捷、更高效,因此設(shè)計(jì)者在設(shè)計(jì)電子系統(tǒng)時(shí)應(yīng)該著重考慮系統(tǒng)內(nèi)部重要的循環(huán)運(yùn)算,讓這一部分盡量用硬件來(lái)實(shí)現(xiàn),把原先需要幾個(gè)指令周期才能實(shí)現(xiàn)的循環(huán)運(yùn)算減少到只需一個(gè)指令周期就能實(shí)現(xiàn)。例如在循環(huán)冗余校驗(yàn)計(jì)算中,設(shè)計(jì)者可以用非常簡(jiǎn)單的硬件邏輯來(lái)代替需要多行軟件代碼才能完成的工作。這樣,原來(lái)需要多個(gè)時(shí)鐘周期才能完成的工作在一個(gè)時(shí)鐘周期內(nèi)就完成了。在創(chuàng)建或編輯Nios處理器時(shí),將這部分硬件邏輯添加到處理器算術(shù)邏輯單元中,并為該邏輯塊定義—個(gè)指令。然后為該指令選擇操作碼,并導(dǎo)入描述這一硬件邏輯的HDL文件。SoPC Builder向?qū)?huì)自動(dòng)掃描頂層模塊的端口,產(chǎn)生相應(yīng)的連接。最后,向?qū)?huì)為用戶定義的指令分配所需的CPU時(shí)鐘周期并命名這些指令。

4 FPGA協(xié)處理器的應(yīng)用
    在進(jìn)行復(fù)雜的數(shù)字信號(hào)處理時(shí),利用協(xié)處理器能夠大幅度地增強(qiáng)數(shù)字信號(hào)處理器的處理能力。因此在某些應(yīng)用領(lǐng)域中,軟件開發(fā)者會(huì)利用硬件協(xié)處理器來(lái)減少各種復(fù)雜的數(shù)學(xué)運(yùn)算,包括Viterbi解碼、Turbo編解碼、離散余弦變換等。與傳統(tǒng)基于DSP處理器的結(jié)構(gòu)相比,整合FPGA協(xié)處理器和DSP處理器的系統(tǒng)在性能上提高了1O倍,開發(fā)費(fèi)用卻只有原來(lái)的1/10。作為數(shù)據(jù)的接收和發(fā)送者的FPGA協(xié)處理器可與DSP處理器相連接,這一結(jié)構(gòu)以處理特定數(shù)據(jù)流的硬件加速器為典型代表。在數(shù)字信號(hào)處理數(shù)據(jù)流中,F(xiàn)PGA協(xié)處理器可對(duì)數(shù)據(jù)流進(jìn)行預(yù)處理和后處理。當(dāng)需要處理的數(shù)據(jù)速率超過(guò)了DSP處理器所能處理的范圍時(shí),這種結(jié)構(gòu)明顯地體現(xiàn)出其優(yōu)越性。它可以大大地提高系統(tǒng)的性能,減少設(shè)計(jì)開發(fā)成本。
    由Altem公司定義的協(xié)處理器至少包含一個(gè)控制接口和一個(gè)數(shù)據(jù)接口。處理器或DSP可以用控制接口來(lái)設(shè)置協(xié)處理器并且監(jiān)視它的工作情況,用數(shù)據(jù)接口與存儲(chǔ)器、外圍設(shè)備或其它協(xié)處理器交換數(shù)據(jù)。系統(tǒng)開發(fā)者先創(chuàng)建FPGA協(xié)處理器,然后將該協(xié)處理器導(dǎo)入到SoPC Builder開發(fā)環(huán)境中,使之能夠非常方便地集成到整個(gè)設(shè)計(jì)系統(tǒng)中。在整個(gè)開發(fā)過(guò)程中,SoPC Builder可以自動(dòng)為每個(gè)處理器單元或系統(tǒng)接口生成軟件開發(fā)組件,成功地解決了系統(tǒng)開發(fā)中軟硬件協(xié)同設(shè)計(jì)的問(wèn)題。軟件開發(fā)組件增強(qiáng)了軟件驅(qū)動(dòng)能力,使得所有功能模塊對(duì)該處理器是可見的??傊ㄟ^(guò)創(chuàng)建FPGA協(xié)處理器可以極大地提高系統(tǒng)的性能,減少開發(fā)成本,縮短設(shè)計(jì)周期。

5 結(jié)束語(yǔ)
    SoPC是當(dāng)前IC設(shè)計(jì)的發(fā)展主流,代表了半導(dǎo)體技術(shù)和ASIC設(shè)計(jì)的未來(lái)。Alters公司將SoPC設(shè)計(jì)思想集成到其開發(fā)工具SoPC Builder中,極大地提高了電子工程師的設(shè)計(jì)效率,加快了電子系統(tǒng)的開發(fā)速度,節(jié)約了設(shè)計(jì)成本,縮短了設(shè)計(jì)周期。

 

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉