首页 > 编程知识 正文

编译器和集成开发环境,fpga项目开发实例

时间:2023-05-06 15:43:52 阅读:165560 作者:1199

我们的FPGA集成开发环境是建立什么样的HDL设计文件进行RTL级仿真集成、技术映射门级仿真打包、布局、布线后伪码流生成码流下载我们的集成开发环境长的

FGA开发流程图

通过FPGA开发流程,可以看出我们的集成开发环境基本涵盖了FPGA开发的全过程; 各步骤的作用如下。

1 ) RTL级HDL设计RTL级(Register Transfer Level )寄存器传输级)是指在不关注使用多少个寄存器或组合逻辑门、逻辑门的连接拓扑等情况下,寄存器传输级(Register Transfer Level ) RTL级比门级抽象,同时简单高效。 RTL级的最大特点可以直接用综合工具将其综合成门级网表,其中RTL级的设计直接决定着系统的功能和效率。

2 ) RTL级别的模拟,也称为功能(举动)模拟,或者合并前模拟,在编译前进行用户设计的电路的逻辑功能验证。 此时的模拟没有延迟信息,仅检测初步功能。 在模拟之前,使用波形编辑器、HDL等创建波形文件和测试向量。 也就是说,将感兴趣的输入信号组合成序列。 模拟结果生成报告文件和输出信号波形,从中可以观察各节点的信号变化。 如果发现错误,则返回设计变更单逻辑设计。 常用的工具有Model Tech公司的ModelSim、Sysnopsys公司的VCS和Cadence公司的NC-Verilog、NC-VHDL等软件。 功能仿真不是FPGA开发过程中的必要步骤,但却是系统设计中最重要的步骤。

为了提高功能仿真的效率,需要搭建测试平台testbench,其测试激励一般采用行为级HDL语言描述,其中RTL级模块可集成,是行为级模块的子集

3 )整合是指将更高级别的抽象层次的描述转化为更低层次的描述。 综合优化基于目标和要求生成的逻辑连接,平面化分层设计,通过FPGA布局布线软件实现。 在目前的水平上,综合优化(Synthesis )是指设计输入不是实际的门级电路,而是由与门、或门、非门、RAM、触发器等基本逻辑单元组成的逻辑连接网络表实际具体的门级电路需要利用FPGA制造商的布局布线功能,基于集成生成的标准门级结构网表来产生。 为了转换成标准的闸门结构网表,HDL程序的编制必须符合特定集成器所要求的风格。 门级结构、RTL级HDL程序集成是一项成熟的技术,所有的集成器都可以适应这一级的集成。 常用的综合工具是Synplicity公司的Synplify/Synplify Pro软件和各FPGA制造商独自推出的综合开发工具。

4 )门级仿真也称为综合后仿真,综合后仿真检验综合结果是否与原设计相符。 仿真时,通过对综合产生的标准时延文件进行反标记,可以估计门时延带来的影响。 但是,由于该步骤无法估计接线延迟,因此与接线后的实际情况还有一定的差距,并不十分准确。 目前的集成工具已经成熟,一般设计中可以省略此步骤,但布局布线后发现电路结构与设计意图不一致时,需要追溯集成后的仿真来确认问题所在。 功能仿真中介绍的软件工具一般支持集成后仿真。

5 )布局布线的实现将综合生成的逻辑网表配置在具体的FPGA芯片上,使工程逻辑和时序与器件的可用资源相匹配。 布局布线是其中最重要的过程,布局需要将逻辑网表中的硬件原语和基础单元合理配置在芯片内部的固有硬件结构中,在速度优化和面积优化之间进行选择。 根据布局拓扑结构,布线利用芯片内部各种连接资源,合理准确地连接各部件。 布局布线也可以理解为FPGA内部查找表和寄存器资源的合理配置。 所述布局可视为选择实现以最佳方式连接这些查找表和寄存器资源的设计网表的最佳资源组合。

目前,FPGA的结构非常复杂,尤其是在有时序约束的情况下,需要利用时序驱动的引擎进行版图布线。 电缆连接完成后,软件工具会自动生成报告,并提供设计各部分的资源使用情况。 布局布线必须选择芯片制造商提供的工具,因为只有FPGA芯片制造商最了解芯片结构。

6 )时序仿真是指将布局布线的延时信息反拉到设计网表中,检测出有无时序违规(即不满足时序限制条件或器件固有的时序规则,如建立时间、保持时间等)的现象。 时序仿真中包含的延迟信息最完整、最准确,能够较好地反映芯片的实际工作情况。 由于不同芯片的内部延迟不同,不同的布局布线方案也会对延迟产生不同的影响。 因此,在布线布局后,有必要对系统和各模块进行时序仿真,分析其时序关系,估计系统性能,检查和消除竞争风险。

7 )将通过可编程控制器对FPGA码流的生成和板级调试布局进行布线的配置文件下载到FPGA中,对其硬件进行编程。 设定文件通常是. pof或者. sof文件形式,下载方式有AS (主动)、PS (被动)、JTAG )等方式。

使用自己的FPGA集成环境生成RISC-V例程,验证集成开发环境的健壮性

通过复杂的例程验证我们的FPGA集成开发环境的稳健性

我们想做什么? IDE集成环境软件开发逻辑集成算法高层

次综合算法   布局布线算法   逻辑、时序仿真工具 我们需要什么        我们需要有爱国情怀、能吃苦奋斗的你加入我们,和我们一起完成这个充满崎岖坎坷的旅程;如果你的情怀够、精神力足、对FPGA编译器或则集成开发环境软件开发有兴趣,那还等什么,简历走起来呗! 简历可以往哪走:centuryofmine@gmail.com 我们能提供什么       我们能伴你成长;我们能提供你一个非常温馨的工作环境;公司能提供可观的收入;

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。