PowerMattersLibero®SoC集成开发环境使用教程——FPGA篇TheoSoCGroupPowerMatters主要内容LiberoSoC概览LiberoSoC设计流程LiberoSoC工程样例LiberoSoCLicense管理©2013MicrosemiCorporation.2PowerMatters目标熟悉LiberoSoC设计流程.熟悉LiberoSoC设计流程中各个环节的使用工具.熟练使用LiberoSoC集成开发环境进行基于FPGA的设计.©2013MicrosemiCorporation.3PowerMatters主要内容LiberoSoC概览LiberoSoC设计流程LiberoSoC工程样例LiberoSoCLicense管理©2013MicrosemiCorporation.4PowerMattersLiberoSoC概述1Libero®SoC是Microsemi提供的功能强大的SOC&FPGA设计和开发工具.除了集成有Microsemi公司的SOC&FPGA系列产品的开发工具套件外,还集成有第三方公司工具如:Synplify®,ModelSim®,andViewDraw®.©2013MicrosemiCorporation.5PowerMattersLiberoSoC概述2©2013MicrosemiCorporation.6PowerMattersLiberoSoC概述3©2013MicrosemiCorporation.7要生成供别的模块调用的子模块时候选择,默认不选。如果不使用MSS,不需要选择此选项,此选项是用于快速建立MSS实用的。单纯的FPGA设计不要选。选择器件型号及封装等PowerMattersLiberoSoC概述4©2013MicrosemiCorporation.8PowerMattersLiberoSoC概述5©2013MicrosemiCorporation.9PowerMattersLiberoSoC概述6©2013MicrosemiCorporation.10PowerMattersLiberoSoC概述7©2013MicrosemiCorporation.11PowerMattersLiberoSoC概述8©2013MicrosemiCorporation.12所有的IP,firmware等更新的3个地址这是Libero安装后,IP存放的默认目录,任何更新都会将新版本的IP下载到该目录中,你也可以根据需求自己修改该位置。PowerMattersLiberoSoC概述9©2013MicrosemiCorporation.13有黄色的锁标志,说明已经有license授权,否则需要申请license才能使用。PowerMatters主要内容LiberoSoC概览LiberoSoC设计流程LiberoSoC工程样例LiberoSoCLicense管理©2013MicrosemiCorporation.14PowerMattersLiberoSoC设计流程©2013MicrosemiCorporation.15Createdesign有3种方法创建你的设计:1、systembuilder.2、smartdesign.3、verilog或VHDL有3种类型的约束:1、IO约束:创建/导入已有的约束文件。2、floorplan约束:创建/导入已有的约束文件。3、timing约束:创建/导入已有的约束文件。编译后约束编辑:1、IO约束:编译后的IO编辑器显示已分配和未分配的引脚,以及引脚的属性。2、Timing:运行smarttime来分析最小和最大延迟约束,以及其余的Timing约束。3、Floorplan:在芯片上创建区域,并分配相应的逻辑到该区域中.PowerMattersCreatedesign:Systembuilder1©2013MicrosemiCorporation.16SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.只需要针对你的系统架构和外设需求输入相应的参数,该向导会自动为你配置,添加相应的逻辑和IP,并自动连接.PowerMattersCreatedesign:Systembuilder2©2013MicrosemiCorporation.17SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.PowerMattersCreatedesign:Systembuilder3©2013MicrosemiCorporation.18SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.面板中列出的是可以加入到Fabric中的主从外设模块.MSS中可以例化的外设,勾选是确定使用.PowerMattersCreatedesign:Systembuilder4©2013MicrosemiCorporation.19SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.系统各个模块所需要的时钟PowerMattersCreatedesign:Systembuilder5©2013MicrosemiCorporation.20SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.设置系统tick时钟周期提供event信号传递的通道,唤醒机制使用用于系统功耗管理用于debug的跟踪机制使用Cache是否使能进行重映射的Memory选择,默认是Envm.用于仲裁时候,主从设备的权重值,来确定执行的优先级.PowerMattersCreatedesign:Systembuilder6©2013MicrosemiCorporation.21SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.为了防止RAM和FIFO单元受重粒子的干扰而产生错误,专门有错误检测和纠正(EDAC)电路进行保护.可以将EDAC错误信号传递到Fabric中,供用户设计使用..发现单bit错误可以纠正,可以检测到双bit错误信息.PowerMattersCreatedesign:Systembuilder7©2013MicrosemiCorporation.22SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.出于对安全的考虑,可以通过配置来控制对MSS内存影射区间的存取可以限制对Esram,envm,Fabric,DDRbridge的读写操作,以及Fabric中主设备对MSS从设备的存取操作。PowerMattersCreatedesign:Systembuilder8©2013MicrosemiCorporation.23SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.显示是否设置有中断信号PowerMattersCreatedesign:Systembuilder9©2013MicrosemiCorporation.24SystemBuilder是专门为第四代FPGASmartfusion2和Igloo2设计的图形化设计向导.外设对应的地址空间.PowerMattersCreatedesign:SmartDesignSmartDesign就像一块画布,将各种需要的模块拉进来,进行互联互通,最后生成一个全新的功能模块。©2013MicrosemiCorporation.25MSS子系统模块,可以根据是否需要Cortex-M3,确定是否要生成该子模块。FPGAFabric中的模块,可以是用户自己写的VHDL或Verilog代码,也可以是catelog中模块或别的IPCore。单独配置MSS系统模块,包括MSS及相应的逻辑电路。MicrocontrollerSubsystem配置最后,不要忘记点击Generatecomponent来生成最终的模块。PowerMattersCreatedesign:CreatHDL使用Verilog或VHDL语言,通过文本编辑器编写代码,来创建逻辑电路模块。©2013MicrosemiCorporation.26文件名代码区间PowerMattersCreatconstraint:pdc在完成设计之后,综合和编译之前,可以加入约束文件,用来指导后面的综合,编译和布局布线等等。这些约束包括:IO,Timing和Floorplan约束。©2013MicrosemiCorporation.27这些约束文件,可以是通过导入已有的文件,或者是创建新的文件,对应的分别是PDC文件和SDC文件。如果在这个环节不导入/创建,也可以在后续的环节加入约束,在综合和编译后,系统会自动生成默认的约束文件,在这个基础上进行修改和指定。PowerMattersCreatconstraint:Timing(sdc)时序约束反映了设计的性能目标.软件根据这个时序约束,指导时序驱动的优化工具进行综合优化.可以对全局或某个特定的路径进行时序约束.可以设置的约束有:•指定要求的最小时钟周期.•设置输入输出端口时序信息.•定义指定路径的最大延迟.•False路径分析.•多周期路径分析.•指定端口的外部附载.©2013MicrosemiCorporation.28PowerMattersImplementDesign:Synthesize©2013MicrosemiCorporation.29选择导入文件,可以将时序约束文件导入近来,用于指导综合.可以手动添加源文件到关联文件框中,也可以由系统自动添加!如果你想使用系统默认的设置进行综合,只需要双击就可以了,如果你要自己定制相应的设置,则右键选择openinteractively,打开Synplify综合工具。PowerMattersImplementDesign:Synthesize©2013MicrosemiCorporation.30综合工具的一些参数设置。输出窗口PowerMattersImplementDesign:Synthesize©2013MicrosemiCorporation.31PowerMattersImplementDesign:VerifyPost-SynthesisImplementation(综合后仿真)功能仿真,是在布局布线之前进行的,旨在验证用户设计的逻辑功能的正确性。©2013MicrosemiCorporation.32在激励文件中,选择一个testbench文件,然后添加到AssociatedStimulusfiles.软件工具已经默认的对这些源文件进行了关联。PowerMattersImplementDesign:Compile©2013MicrosemiCorporation.33编译选项对话框,允许你控制SDC文件合入的方式,PDC错误时候编译的行为,高扇出网络的限制数量等。选择该选项,可以保留你事先设置的时序约束。如果你导入了新的SDC文件,那么编译工具会将原来的时序约束条件和新的时序约束文件合并在一起,对于重复的时序约束条件,则以新的SDC文件为准。该选项是用来控制当在物理设计约束文件中发现错误时候编译工具的行为,是报告错误并停止编译,还是只是将错误以告警的方式报告出来,继续完成编译过程。该选项是用来告诉编译器,只将扇出数量的最多的前10个网络显示在报告中。PowerMattersImplementDesign:Compile©2013MicrosemiCorporation.34编译器的输入源文件是综合后的.edn文件。选择时序约束工具,用来指导编译和后续的布局布线。PowerM