新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > FPGA專(zhuān)家教您如何在FPGA設(shè)計(jì)中使用HLS

FPGA專(zhuān)家教您如何在FPGA設(shè)計(jì)中使用HLS

作者: 時(shí)間:2017-10-13 來(lái)源:網(wǎng)絡(luò) 收藏

Luke Miller并非一開(kāi)始就是(高層次綜合)的倡導(dǎo)者。在使用早期的工具版本的時(shí)候,他似乎有過(guò)一些糟糕的經(jīng)歷。他寫(xiě)道: “……我的心筑起心墻,我需要幫助。”幸運(yùn)的是,現(xiàn)在的他似乎已經(jīng)通過(guò)了一個(gè)12步培訓(xùn)活動(dòng), 現(xiàn)在可以利用Xilinx Vivado 有效地開(kāi)展工作了。

本文引用地址:http://m.butianyuan.cn/article/201710/365702.htm

SemiWiki 有了一位新的博主,被稱為“The Expert(專(zhuān)家)”。通過(guò)LinkedIn簡(jiǎn)單搜索,我得知這位專(zhuān)家是Luke Miller,他最近發(fā)表了一篇博文,介紹如何使用高層次綜合(HLS)開(kāi)發(fā)從C到其他HLL版本的各種加速硬件。 雖然不像“手把手的菜譜”那樣具體詳盡,但依然非常有趣。

Miller曾經(jīng)在IBM公司擔(dān)任過(guò)ASIC設(shè)計(jì)師,在Lockheed擔(dān)任過(guò)硬件師(工程師/架構(gòu)師),目前是一位擁有軍事和航空設(shè)計(jì)經(jīng)驗(yàn)的PE。Miller的網(wǎng)站名為FPGA Expert,上面有一段特別的講述其個(gè)人經(jīng)歷的視頻,其中描述了多項(xiàng)軍事、航空和醫(yī)療項(xiàng)目(飛機(jī)、雷達(dá)和醫(yī)療成像),所以,我猜他應(yīng)該擁有非常豐富的FPGA設(shè)計(jì)經(jīng)驗(yàn)。他的網(wǎng)站證實(shí)了這個(gè)猜想。 Miller似乎也非常了解HLS。他寫(xiě)道:

“設(shè)計(jì)時(shí)間的加速并非從C到VHDL的轉(zhuǎn)換, 真正起到關(guān)鍵因素的是仿真域 —您再也無(wú)需通過(guò)RTL逐件驗(yàn)證每項(xiàng)設(shè)計(jì)。”
Luke Miller并非一直都是HLS(高層次綜合)的倡導(dǎo)者。在使用早期的工具版本的時(shí)候,他似乎有些糟糕的經(jīng)歷。。他寫(xiě)道:“……我的心筑起心墻,我需要幫助。”幸運(yùn)的是,他似乎已經(jīng)通過(guò)了一個(gè)12步HLS培訓(xùn)活動(dòng), 現(xiàn)在可以通過(guò)Xilinx Vivado HLS有效地開(kāi)展工作了。

點(diǎn)擊此處,閱讀Miller有關(guān)HLS的建議:“高層次綜合 —它真的行! ( High Level Synthesis – It’s for Real) ”%96-%92s-real.html

下面是Miller的全文供參考:

======================================================================================
High Level Synthesis – It’s for Real
by
theFPGAexpert
Published on 04-11-2013 06:30 PM

It was spring 2010 and I was asked to attend an HLS (High Level Synthesis) meeTIng. To be honest I cringed, after my bad relaTIonship with Accel DSP and broken promises my heart was all walled up and needed counseling. But my management had a way of making me an offer I could not refuse, like keeping my job. So reluctantly I went. Does your employer do lunch and learns instead of real training? You know what that equals right? A 1/8 pay cut, but let’s play nice.

Anyways after the usual introducTIons at the meeTIng they began to get into the meat of the tool. I quickly diverted and asked if we could see the tool in action and move away from the power point and boy did they. First up was a cookie cutter FIR filter but it worked, really! Then they moved into floating point designs etc. This HLS was the greatest thing since sliced bread. I saw its potential and I needed to try it. We all agreed on an evaluation period. Now I am by no means the best coder in the world, but even the best would have a hard time beating the HLS tool with respect to design time, area and latency.

What HLS is not: It is not a coder in a box, thus sit down the software guy and have him designing FPGAs. You need to understand the FPGA, no exceptions or you will have a fat, slow design. The C or its variant will need to be restructured, smartly, thus helping the tool out so it can perform better. It is not a button you press and you have a bit image. I know how program managers think.

I leverage HLS tools in this fashion. I view it as Xilinx Corgen on steroids which are driven by a C file. The speed up in design time is not in the translation from C to VHDL but really is in the simulation domain. You are no longer verifying designs piece by piece using RTL. For example, I design a Beamfomer in C. I compile it and then run ‘a.exe’ and verify that the answer matches the expects. That took about a second. For many PRIs of data that could of taken hours in ModelSim. Catching on? I then bring up the HLS tool and pull in the C file and the tool reports the latency, area, clock frequency etc. From that information I can determine which FPGA to use. I then start using directives to optimize the area / latency by using unrolls and pipeline directives. About an hour later my beamformer is done. I then simulate the RTL at my top level but I already know the math works and the tool took care of the boundary conditions. The goal of this article is by no means a recipe on HLS usage but hopefully entices you to check it out, you won’t be sorry.



關(guān)鍵詞: FPGA HLS

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉