首次开通,自己先恭喜一下 : )
最近一直在做HLS方面的工作。目前主要致力于modular io的设计。这是实现系统级HLS不可缺少的一项,尤其是系统级SOC的设计。因为一个系统不单单包含数据流(datapath)为主的算法处理即我们通常所说的行为(behavior),还包括了behavior模块间的通信(communication)问题。业界对behavior级的综合,也已经有一些比较成熟的工具。但对于communication这一问题还没有彻底成熟的解决方案。我以为这也是HLS到目前为止,还没有为广大业内工程师接受的一个重要原因。
想要从一个抽象的层次来描述一个周期级精确(CA, Cycle Accurate)的通信行为是困难的,除非有详尽的编译导向direcitive,指导HLS综合工具。另外一方面,如何将描述出来的行为进行较好的封装,方便用户使用,也是需要考虑的问题。
catapultC算是业内在HLS领域走在比较前面的公司了。他提供了一个modular io的IO综合方法学,提供了用户精确控制IO的综合方法,并且允许用户以TLM级的抽象语法来封装用户的IO设计,通过最近一段时间的实践,工具的能力相当不错。目前已近设计出一个AHB Master的可综合的SystemC Demo,支持single、burst4/8/16的读写,面积可接受,只是效率方面不是很满意,不能连续(无时钟间隔)的发起transaction。因为,目前我还没找到modular io方法学如何实现流水级设计。
目前在尝试AHB Slave的HLS设计,有新进展或问题会及时贴上来。
大家多多捧捧场啊。
声明:本博客、以及博文中所涉及的任何商用工具都是通过网络资源获取,并作为个人学习之用,无任何商用目的。与本人所在公司所使用的任何商用工具没有任何关系。以上声明请知悉!
用户403664 2012-10-23 14:29