曙海教育集團(tuán)論壇開發(fā)語(yǔ)言培訓(xùn)專區(qū)C++語(yǔ)言開發(fā) → 用C/C++語(yǔ)言開發(fā)大規(guī)模FPGA


  共有7468人關(guān)注過本帖樹形打印

主題:用C/C++語(yǔ)言開發(fā)大規(guī)模FPGA

美女呀,離線,留言給我吧!
wangxinxin
  1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


加好友 發(fā)短信
等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
用C/C++語(yǔ)言開發(fā)大規(guī)模FPGA  發(fā)帖心情 Post By:2010-12-10 13:15:36

圖片點(diǎn)擊可在新窗口打開查看
背景
可編程邏輯器件的設(shè)計(jì)方法經(jīng)歷了布爾等式,原理圖輸入,硬件描語(yǔ)言這樣一個(gè)發(fā)展過程。隨著設(shè)計(jì)的日益復(fù)雜和可編程邏輯器件規(guī)模的不斷擴(kuò)大,人們不停地尋求更加抽象的行為級(jí)設(shè)計(jì)方法,以便在盡可能短時(shí)間內(nèi)完成自己的設(shè)計(jì)構(gòu)思。

現(xiàn)狀與問題
今天,在電子設(shè)計(jì)領(lǐng)域形成了這樣一種分工:軟件和硬件,相應(yīng)工程師也被分成軟件工程師和硬件工程師。
對(duì)于復(fù)雜算法的實(shí)現(xiàn),人們通常先建立系統(tǒng)模型,根據(jù)經(jīng)驗(yàn)分析任務(wù),然后將一部分工作劃給軟件工程師,將另一部分工作交給硬件工程師。硬件工程師為了實(shí)現(xiàn)復(fù)雜的功能,使用硬件描述語(yǔ)言設(shè)計(jì)高速執(zhí)行的芯片,而這種設(shè)計(jì)是富有挑戰(zhàn)性和花費(fèi)時(shí)間的,需要一定的硬件工程技巧。
對(duì)于軟件工程師,這些同樣的功能只要簡(jiǎn)單地使用C語(yǔ)言整合到整個(gè)系統(tǒng)的程序代碼中就可以了。但是傳統(tǒng)的處理器是順序執(zhí)行的,并且他們執(zhí)行的高速計(jì)算必須依賴于高速時(shí)鐘,這樣就限制了處理器的能力。同時(shí),軟件實(shí)現(xiàn)算法存在一個(gè)指令執(zhí)行周期的問題——軟件永遠(yuǎn)也不能達(dá)到硬件執(zhí)行的速度。
當(dāng)然,很少有嵌入式應(yīng)用是完全使用可編程邏輯器件來實(shí)現(xiàn)的。串行化的步進(jìn)式算法最好是由CPU或DSP用軟件來實(shí)現(xiàn)。(參閱文章:DSP+FPGA實(shí)時(shí)處理系統(tǒng))最佳的硬件加速性能大多是由并行執(zhí)行的功能來完成,其物理形式通常是將硬件協(xié)處理器(FPGA) 與CPU緊密的結(jié)合在一起,CPU與FPGA的緊密結(jié)合可以提供軟硬件的最佳連接方式。在這種結(jié)構(gòu)中,CPU通常運(yùn)行系統(tǒng)應(yīng)用方面的程序,實(shí)時(shí)很強(qiáng)的任務(wù)放到FPGA硬件上,這樣可以減輕處理器的負(fù)荷,從而獲得更大的帶寬。這樣我們可以通過把算法移植到硬件上來克服設(shè)計(jì)瓶頸。但是這時(shí)我們又將面臨一個(gè)問題:設(shè)計(jì)者必須使用復(fù)雜的硬件描述語(yǔ)言編寫FPGA代碼,而這些功能原本是用簡(jiǎn)單C語(yǔ)言在處理器或DSP中實(shí)現(xiàn)的。
人們希望能夠找到一種方法,在更高的層次下設(shè)計(jì)更復(fù)雜,更高速的系統(tǒng),并希望將軟件設(shè)計(jì)和硬件設(shè)計(jì)統(tǒng)一到一個(gè)平臺(tái)下。

解決方案
C/C++語(yǔ)言是軟件工程師在開發(fā)商業(yè)軟件時(shí)的標(biāo)準(zhǔn)語(yǔ)言,也是使用最為廣泛的高級(jí)語(yǔ)言,人們很早就開始嘗試在C語(yǔ)言的基礎(chǔ)上設(shè)計(jì)下一代硬件描述語(yǔ)言。
許多公司已經(jīng)提出了不少方案,目前有兩種相對(duì)成熟的硬件C語(yǔ)言:systemC和Handle-C,它們相應(yīng)的開發(fā)系統(tǒng)為:CoCentric System Stadio和Celoxica DK1。這兩種語(yǔ)言都是在C/C++的基礎(chǔ)上根據(jù)硬件設(shè)計(jì)的需求加以改進(jìn)和擴(kuò)充,用戶可以在它們的開發(fā)環(huán)境編輯代碼,調(diào)用庫(kù)文件,甚至可以引進(jìn)HDL程序,并進(jìn)行仿真,最終生成網(wǎng)表文件,放到FPGA中執(zhí)行。軟件算法工程師不需要特別的培訓(xùn),利用他們熟悉的C語(yǔ)言就可以直接進(jìn)行硬件開發(fā),減輕了硬件開發(fā)的瓶頸和壓力。隨著算法描述抽象層次的提高,使用這種C語(yǔ)言設(shè)計(jì)系統(tǒng)的優(yōu)勢(shì)將更加明顯。
現(xiàn)在有很多硬件描述語(yǔ)言的人才,也有更多的資深的C語(yǔ)言編程者,他們能夠利用這種工具,可以輕松地轉(zhuǎn)到FPGA設(shè)計(jì)上。過去因?yàn)樘珡?fù)雜而不能用硬件描述語(yǔ)言表示的算法以及由于處理器運(yùn)行速度太慢而不能處理的算法,現(xiàn)在都可以利用C語(yǔ)言在大規(guī)模FPGA硬件上得以實(shí)現(xiàn)。設(shè)計(jì)者可以利用C語(yǔ)言快速而簡(jiǎn)潔的構(gòu)建功能函數(shù),通過標(biāo)準(zhǔn)庫(kù)和函數(shù)調(diào)用技術(shù),設(shè)計(jì)者還能在很短的時(shí)間里創(chuàng)建更龐大,更復(fù)雜和更高速的系統(tǒng)。

問題與展望
正如同硬件描述語(yǔ)言與原理圖輸入的關(guān)系,或是高級(jí)語(yǔ)言和匯編語(yǔ)言的關(guān)系,抽象的設(shè)計(jì)方法會(huì)減少我們的設(shè)計(jì)時(shí)間,但也會(huì)增加對(duì)硬件資源的需求,C語(yǔ)言也不例外。目前直接使用C語(yǔ)言設(shè)計(jì)硬件系統(tǒng)的準(zhǔn)確性和可靠性還在進(jìn)一步的研究和發(fā)展中,可以說,目前各種硬件C語(yǔ)言的編譯軟件都還不夠成熟,很少能直接投入到實(shí)際產(chǎn)品的開發(fā)中。 C語(yǔ)言輸入方式的廣泛使用還有賴于更多EDA軟件廠家和FPGA公司的支持。但是可以預(yù)見,隨著EDA技術(shù)的不斷成熟,軟件和硬件的概念將日益模糊,在5-10年以后,使用單一的高級(jí)語(yǔ)言直接設(shè)計(jì)我們的整個(gè)系統(tǒng)將是一個(gè)的發(fā)展趨勢(shì)。

支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

返回版面帖子列表

用C/C++語(yǔ)言開發(fā)大規(guī)模FPGA








簽名
主站蜘蛛池模板: 又大又紧又粉嫩18p少妇| 国产精品丝袜黑色高跟鞋| 亚洲欧美色鬼久久综合| 91麻豆果冻天美精东蜜桃传媒| 欧美日韩国产在线人成| 国产福利片在线| 久久久久性色av毛片特级 | 欧美日韩亚洲国产无线码| 国产男女猛烈无遮挡免费视频网站| 久久精品一区二区国产| 美雪艾莉丝番号| 天堂在线www天堂中文在线 | 91青青青国产在观免费影视| 欧美乱人伦中文在线观看不卡 | 夜夜添无码试看一区二区三区| 亚洲国产精品一区二区第四页| 麻豆三级在线播放| 性xxxxfreexxxxx喷水欧美| 亚洲第一成年免费网站| 国产精品揄拍一区二区久久| 成年黄网站色大免费全看| 人人爽人人爽人人爽人人片av| 最新jizz欧美| 无码丰满熟妇浪潮一区二区AV| 人与禽交另类网站视频| 久碰人澡人澡人澡人澡人视频| 成人自慰女黄网站免费大全| 亚洲熟妇少妇任你躁在线观看| 黄色aaa级片| 富二代国app产下载| 亚洲人成影院午夜网站| 美女黄网站人色视频免费| 国内精品久久久久精品| 久久国产小视频| 狠狠干最新网址| 国产成人3p视频免费观看| どきどき小房东| 最近中文字幕国语免费完整| 制服丝袜一区二区三区| 亚洲色图综合在线| 少妇大战黑吊在线观看|