![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Lattice FPGA/Software
文章平均质量分 85
Felix@SH
技术源于积累,成功始于执着! 个人邮箱:justlxy@mail.dhu.edu.cn QQ:1576109464
展开
-
扩频时钟(SSC)概念以及Lattice FPGA对扩频时钟的支持
由于FCC、IEC等规定电子产品的EMI辐射不能超出一定的标准。因此电路设计者需要从多个角度来思考如何降低系统的EMI辐射,如进行合理的PCB布线、滤波、屏蔽等。由于信号的辐射主要是由于信号的能量过于集中在其载波频率位置,导致信号的能量在某一频点位置处的产生过大的辐射发射。因此为了进一步有效的降低EMI辐射,芯片厂家在设计芯片时也给容易产生EMI的信号增加了SSC(Spread Spectrum Clocking)即扩频时钟的功能,采用SSC的功能可以有效的降低信号所产生的EMI。EMI一直是高速系统设原创 2021-04-07 17:29:53 · 4611 阅读 · 0 评论 -
Lattice Radiant 加密RTL设计文件简明教程
Lattice Radiant软件是Lattice近年来新推出的FPGA开发平台,主要针对的是2019以后发布的新器件。Lattice Radiant将不再支持Diamond之前使用的加密策略,以及相关的NGO文件,转而支持的是文本加密功能。本文将介绍如何使用Radiant来对RTL设计文件,进行加密:Lattice官方推荐使用IP Packager工具对需要加密的RTL设计,进行IP封装。使用该工具产生的结果可以和Radiant中可以下载的官方IP完全一致。缺点是过程繁琐,还需要些XML脚本文件。原创 2021-04-07 17:28:19 · 1833 阅读 · 1 评论 -
Synplify Pro的RTL视图与Technology视图以及优化分析
在进行Verilog/VHDL Coding的时候,很多人喜欢先通过检查设计的RTL视图是否符合预期,然后在通过功能仿真和时序仿真来验证设计的功能正确性。以Lattice Diamond/Radiant 开发工具中集成的Synplify Pro为例,用户可以在弹出的Synplify Pro的界面中的HDL-Analyst->RTL打开RTL视图(综合完成之后)。需要注意的是,RTL视图所显示的内容只是综合工具对设计的第一步优化,这一过程优化过程中会自动删除一些比较明显的没有用到的逻辑,并在Repo原创 2021-04-07 17:27:14 · 1323 阅读 · 0 评论 -
Lattice Diamond Reveal SerDes Debug Core简明教程(For ECP5)
本文将以Lattice ECP5为例,简要地介绍一下如何使用Diamond中的Reveal工具来调试SerDes/PCS。文中使用的Project在文章最后的附件中,Project是基于Lattice ECP5 Versa板写的,可以直接使用。1、插入Reveal SerDes Core使用Reveal SerDes Debug Core有一个基本前提:在使用Clarity配置SerDes/PCS的时候,必须使能SCI(SerDes Client Interface)端口。用户在完成RTL设计,确保原创 2021-04-07 17:26:12 · 1315 阅读 · 0 评论 -
Lattice Diamond EPIC工具使用简明教程(一)
由于部分复杂IP中包含了PLL等基础的Module,用户在调用(例化)这些复杂的IP时,一般不可以直接去修改其中包含的Module的配置参数,这些配置参数是由IP工具自动产生的。但是,在某些特殊的情况下,用户可能对IP工具自动产生的配置参数并不满意,想手动地修改这些配置参数。比如用户在例化MIPI Tx的IP时,对IP工具自动产生的PLL参数并不满意,想将其修改为自己想要的值。此时,可以通过EPIC工具直接对PAR产生的ncd文件进行修改。EPIC工具的位置如下图所示,打开之后的界面如下图所示,原创 2021-04-07 08:16:20 · 654 阅读 · 0 评论 -
一个关于Diamond中的Reveal如何选用参考时钟的问题
最近在调试DDR3的时候遇到一个奇怪的问题,经过一段时间的排查定位,最后发现是Reveal引起的,下面来简单地总结一下。1、问题描述:在使用Lattice DDR Controller相关IP的时候,一般建议把Clarity或者IPexpress生成的评估工程下面的lpf文件中的约束拷贝过来,稍加修改,添加至自己的工程的lpf文件中。在相关约束中有这样两句:FREQUENCY NET "sclk*" 150.000000 MHz PAR_ADJ 30.000000 ;BLOCK PATH原创 2021-04-06 21:14:36 · 856 阅读 · 0 评论 -
Lattice FPGA中的Ripple Mode之——关于加法器实现的讨论
为什么写这篇博文呢?因为鄙人无意中发现了一个有趣的问题,所以和大家分享一下。其实加法器是很简单的东西,大部分人可能并不注意其在FPGA的具体实现方式。一般情况下,对于简单的加法运算(如三个4bits的数相加),大部分人都是在HDL中直接使用了如下的写法:module top(a,b,c,d,cout,cin); input [3:0] a,b,c; output [3:0] d; input cin; output cout; assign {cout原创 2021-04-04 20:27:59 · 1132 阅读 · 0 评论 -
利用TCL脚本(do文件)管理仿真流程简明教程(一)ActiveHDL RTL仿真篇
熟悉FPGA开发的朋友都知道,仿真(Simulation)是FPGA开发中的一个重要的步骤和过程,目前来说用于FPGA仿真的引擎主要有:Aldec公司的Active-HDL / Riviera Pro;Mentor Graphics公司的ModelSim / Questa;Cadence公司的NC-Verilog / NC-VHDL / NCSim以及Synopsys公司的 VCS software。Lattice公司的IDE Diamond 集成了ActiveHDL Lattice Edition。拥有D原创 2021-04-04 20:22:00 · 2141 阅读 · 0 评论