微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > FPGA,CPLD和ASIC > 那位大牛说说综合、实现具体作了些什么工作啊?

那位大牛说说综合、实现具体作了些什么工作啊?

时间:10-02 整理:3721RD 点击:
有点不是很清楚:
综合好像就是把代码变换成系统门级的结构表示出来,
实现就是将这种门级结构按照设计者的要求连接起来,

不止是否这个意思?就当抛砖引玉吧,望大家不吝赐教!

按照 synopsys 的定义  综合 = 翻译+ 优化 + 映射

综合时,一般是把代码先翻译成通用的网表,其中的cell和最终实现的网表用到的单元不一样;然后第二步在对这种网表做优化;最后将优化后的网表映射成可实现的cell,如FPGA中的查找表的配置,乘积项的生成 或者IC中的工艺库

如果你说的实现是implement ,估计是说指最后的映射过程。这时综合只包含 翻译优化的部分

所以说这只是个概念的问题,和厂商的约定有关

综合,综合优化是把HDL语言翻译成最基本的与或非门的连接关系(网表),并根据要求(约束条件)优化所生成的门级逻辑连接,输出edf和edn等文件,导给CPLD/FPGA厂家的软件进行实现和布局布线。
      具体的实现步骤:根据hdl语言所描述的行为建立rtl技术模型(使用了综合工具自带的模型库,不在模型库里的模块被综合成黑盒子),然后是优化的过程。先根据约束条件进行高级优化(resource sharing),然后是逻辑优化(flattening,structuring),最后是门级优化(retiming,piplining,logic duplicate 并综合掉一些冗余逻辑)。最后生成门级网表。
      实现(Implement)是将综合输出的逻辑网表翻译成所选器件的底层模块与硬件原语,将设计映射到器件结构上,进行布局布线,达到在选定器件上实现设计的目的。
      实现主要分为3个步骤:翻译(Translate)逻辑网表,映射(Map)到器件单元与布局布线(Place & Route)。翻译的主要作用是将综合输出的逻辑网表翻译为Xilinx特定器件的底层结构和硬件原语(具体的源语详见ISE中language templates)。映射的主要作用是将设计映射到具体型号的器件上(LUT、FF、Carry等)。布局布线步骤调用Xilinx布局布线器,根据用户约束和物理约束,对设计模块进行实际的布局,并根据设计连接,对布局后的模块进行布线。

这么说来我们恩在评估芯片的资源利用的时候,就要以map结果为主,而不是综合的结果了对吧?

xilinx 推荐的是以综合后ff 和 lut的使用量作为参考的
一般来说这两项够用了
其他的资源就也是够用的

学习了

正在学习中!好像很有学问呀

,wice3解释的很清楚啊,学到了:)

综合简单而言就是将语言描述转换为二进制的运算符(无论是ASIC还是FPGA都有这个中间路径,可以互通,影响时序),然后再映射到工艺库元件上。
综合结果的核心还是在于设计人员的思路,如果前端电路不清晰,吐出来的就是屎。

liao jie le ~

好,太好,好极
好,太好,好极

综合,综合优化是把HDL语言翻译成最基本的与或非门的连接关系(网表),并根据要求(约束条件)优化所生成的门级逻辑连接,输出edf和edn等文件,导给CPLD/FPGA厂家的软件进行实现和布局布线。
      具体的实现步骤:根据hdl语言所描述的行为建立rtl技术模型(使用了综合工具自带的模型库,不在模型库里的模块被综合成黑盒子),然后是优化的过程。先根据约束条件进行高级优化(resource sharing),然后是逻辑优化(flattening,structuring),最后是门级优化(retiming,piplining,logic duplicate 并综合掉一些冗余逻辑)。最后生成门级网表。
      实现(Implement)是将综合输出的逻辑网表翻译成所选器件的底层模块与硬件原语,将设计映射到器件结构上,进行布局布线,达到在选定器件上实现设计的目的。
      实现主要分为3个步骤:翻译(Translate)逻辑网表,映射(Map)到器件单元与布局布线(Place & Route)。翻译的主要作用是将综合输出的逻辑网表翻译为Xilinx特定器件的底层结构和硬件原语(具体的源语详见ISE中language templates)。映射的主要作用是将设计映射到具体型号的器件上(LUT、FF、Carry等)。布局布线步骤调用Xilinx布局布线器,根据用户约束和物理约束,对设计模块进行实际的布局,并根据设计连接,对布局后的模块进行布线。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top