加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

Simulink HDL Coder

(2011-03-28 11:41:54)
标签:

it

Simulink HDL Coder
http://www.hirain.com/images/dot.gifHDL Coder" TITLE="Simulink HDL Coder" />

——  将Simulink模型和MATLAB代码生成可综合的HDL代码

      Simulink HDL Coder可以把Simulink模型、MATLAB代码和Stateflow框图生成位真(bit-true)、周期精确(cycle-accurate)、可综合的Verilog和VHDL代码。通过使用工业标准化设计工具,可以对自动生成的HDL代码进行仿真和综合,并进一步映射到FPGA和ASIC芯片上。

       Simulink HDL Coder可以控制HDL的体系架构和实施,突出模型中的关键路径,生成硬件资源利用评估。Simulink HDL Code还能够生成测试验证平台以及EDA Simulator Link的仿真模型,并提供支持DO-254工作流的代码跟踪能力,从而对生成的HDL代码进行快速验证。

特点:

  • 将Simulink模型、MATLAB代码和Stateflow框图生成独立于目标器件、可综合的HDL代码;
  • 支持Mealy / Moore有限状态机以及控制逻辑的实现;
  • 生成测试验证平台和EDA Simulator Link协同仿真模型;
  • 资源共享和子系统级重定时,以实现面积与速度的权衡;
  • 利用时间约束信息和HDL合成工具箱进行Simulink模型的优化;
  • 支持DO-254规范从代码到模型,模型到代码的跟踪能力;
  • 遗产代码集成;

http://www.hirain.com/eWebEditor/UploadFile/201012916523250.jpgHDL Coder" TITLE="Simulink HDL Coder" />
将Simulink模型生成HDL代码;Simulink HDL Coder能够为系统建模,自动生成位真、周期精确(cycle-accurate)、可综合的Verilog和VHDL代码,以及测试平台。

使用Simulink HDL Coder

      从建模到FPGA和ASIC的实现,Simulink HDL Coder能够使得算法设计过程自动化,步骤如下:

  • 配置参数,以选择实现不同的HDL模块
  • 优化模型以达到面积与速度的设计指标
  • 利用HDL Workflow Advisor或者Configuration Parameters GUI生成HDL代码
  • 根据测试平台验证生成的代码,并自动生成协同仿真模型

      通过使用Simulink HDL Coder,用户可以首先在Simulink、MATLAB和Stateflow中构建系统模型,然后对模型进行HDL代码的生成。Simulink提供了160多个模块供用户选择,来进行信号处理和通信的算法建模。例如,可以使用Viterbi译码器或者Reed-Solomon译码器来建立通信接收端模型,并生产HDL代码。同样,可以使用信号处理FFT函数和滤波算法,如CIC插值法、FIR插值法,以及抽取滤波器等。

      Simulink中的Embedded MATLAB功能模块可以将MATLAB代码生成HDL代码。Simulink HDL Coder提供了一个现有的通用逻辑单元库,如可以写入MALAB代码中的计数器和定时器等。用户还可以在Stateflow中建立有限状态机(FSM)模型,并且通过黑箱接口将手写代码或者HDL遗产代码与Simulink模型合成为一体。

      用户创建好模型之后, 通过HDL Work Advisor或者Configuration Parameters GUI,并应用代码生成控制文件来生成HDL代码。

http://www.hirain.com/eWebEditor/UploadFile/20101291678284.jpgHDL Coder" TITLE="Simulink HDL Coder" />
通过Configuration Parameters GUI设置代码生成选项并生成Verilog及VHDL Code

      Simulink HDL Coder与EDA仿真器共同生成协同仿真测试平台模型,并由HDL仿真器进行配置,包括Cadence Incisive,Mentor Graphics ModelSim和Synopsys Discovery。除此之外,还可以生成HDL测试平台和脚本文件,从而在仿真环境中进行独立的测试验证。

优化设计

http://www.hirain.com/eWebEditor/UploadFile/20101291683197.jpgHDL Coder" TITLE="Simulink HDL Coder" />
面积与速度权衡的资源利用报告

      Simulink HDL Coder使得用户可以通过模型的模块和子系统来控制HDL代码的体系结构。例如,将分布式流水线、连续数据流以及资源共享应用到子系统、Stateflow框图和Embedded MATLAB功能模块,在实现FPGA和ASIC时获得速度与面积的权衡。用户还可以实现多通道设计和序列化技术,这些技术通常用于信号处理和多媒体应用程序当中。

http://www.hirain.com/eWebEditor/UploadFile/201012916853814.jpgHDL Coder" TITLE="Simulink HDL Coder" />
资源优化举例。数据速率提高4倍,使得设计面积减少为原来的1/4

文档记录及代码跟踪

       Simulink HDL Coder帮助用户对生成的代码进行验证,具体如下:

  • 用户自定义注释及描述,增强代码可读性
  • 模型到代码,以及代码到模型的双向可跟踪性
  • 生成的代码中包含需求,且符合DO-254标准

http://www.hirain.com/eWebEditor/UploadFile/2010129161112370.jpgHDL Coder" TITLE="Simulink HDL Coder" />
模型与代码之间的相互跟踪。Simulink HDL Coder促进DO-254标准的符合以及对所做设计的检验和确认

      Simulink HDL Coder以HTML报告的形式记录生成的代码,报告中全面描述了代码的模型结构以及在HDL代码生成过程中应用的模型优化设置。报告中包含与Simulink模型直接相关的摘要和生成的源文件列表。在MATLAB Help浏览器中选择一个源文件使得模型中相应的模块突出显示,方便对相应的代码跟踪和回顾。用户还能够对Simulink模块,Stateflow状态及转移,Embedded MATLAB突触显示HDL代码,以实现代码和模型之间的双向跟踪。使用Simulink Verification and Validation时,Simulink HDL Code将系统需求作为注释嵌入到HDL代码中。因此,从系统需求到HDL代码实现,用户可以对整个流程完整地把握。

协同仿真及测试平台生成

      Simulink HDL Coder生成VHDL和Verilog测试平台,对生成的HDL代码快速验证。用户能够通过若干选项来激励HDL代码,从而实现自定义HDL测试平台。还能够生成脚本文件,使得在HDL仿真器中,代码编译和仿真过程自动化。

      Simulink HDL Coder与EDA仿真器共同生成协同仿真模型。为实现Simulink仿真及协同仿真,由HDL仿真器对自动生成的模型进行配置,如Cadence Incisive,Mentor Graphics ModelSim和Synopsys Discovery等。

http://www.hirain.com/eWebEditor/UploadFile/2010129161234951.jpgHDL Coder" TITLE="Simulink HDL Coder" />
利用Simulink HDL Coder自动生成协同仿真模型(左下)和HDL(右上)测试平台

FPGA自动化设计

http://www.hirain.com/eWebEditor/UploadFile/2010129161329278.jpgHDL Coder" TITLE="Simulink HDL Coder" />
Simulink HDL Coder下的FPGA设计流程。将HDL Workflow Advisor与第三方合成工具,如Xilinx ISE和Altera Quartus共同使用,以实现迭代次数的快速设计。

      Simulink HDL Coder使得用户快速地将Simulink模型应用到Xilinx和Altera FPGA中。HDL Workflow Advisor支持FPGA设计过程的全部阶段,包括:

  • 检测Simulink模型对HDL代码生成的兼容性
  • 生成RTL代码,RTL测试平台,以及协同仿真模型
  • 在与Xilinx ISE和Altera Quartus II的集成过程中进行综合时序分析
  • 根据为达到设计指标所作出的模型修改,提供资源利用评估报告和指导
  • 根据关键路径信息,对Simulink模型后端注释

http://www.hirain.com/eWebEditor/UploadFile/2010129161537506.jpgHDL Coder" TITLE="Simulink HDL Coder" />
HDL Workflow Advisor支持在Simulink环境中进行FPGA设计过程的全部阶段

      用户可以查看到综合时序分析报告,并对Simulink模型后端注释以鉴别时序限制瓶颈。与合成工具的综合使用,为迭代次数快速设计提供了途径,并且使得FPGA的设计流程时间显著减少。

http://www.hirain.com/eWebEditor/UploadFile/201012916172445.jpgHDL Coder" TITLE="Simulink HDL Coder" />
Simulink中合成前期和后期时序信息的关键路径突出显示。能够快速迭代设计,以规避时序限制瓶颈。

      Simulink HDL Coder能够生成可读的,独立于目标机的HDL代码,并且支持遗产代码集成。因此,用户能够根据设计需求在FPGA和ASIC的实现之间快速转换。


 



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有