
FPGA
fpga相关
真的改完最后一个bug就下班
一日不读书,无人看的出;一周不读书,开始会动粗;一月不读书,笨的像头猪。
展开
-
分享一个fpga任意分频的代码
这里以下降沿计数数,上升沿分频的,时钟最好是50%的,不然容易出问题。分享一个fpga任意分频的代码,非50%占空比的分频代码,补充一个比较简单的,可以固定脉宽的分频代码。这样输出的波形,在分频后还是分频前的脉宽。这里以16以内 的分频为例。原创 2024-06-05 15:03:34 · 343 阅读 · 0 评论 -
diamond原理图sch文件中画输入输出管脚
画sch图中,不可避免的要画IO管脚,IO管脚一般分为三类,I,O,IO。画这三类管脚时 步骤:1、首先需要在管脚上画一条延长线;2、然后给这个延长线加上netname,如果是数据总线则向这样命名data[7:0],被命名的细线会自动变为粗线;3、最后用IOport工具,画矩形,把netname包含在里面,这样就OK了,记住不要点那个线或名字,是没用的,只能在名称上面画矩形。部...原创 2017-10-20 14:38:12 · 2397 阅读 · 0 评论 -
lattice 的Synplify pro综合工具,以及RTL寄存器查看
对于diamond来说,查看RTL级的示图时,必须以LSE(自带的综合工具)来编译综合代码。而经常会出现Synplify pro编译通过,LSE编译出现bug的情况,所以用LSE编译代码,总不让人放心。默认使用Synplify pro时,是无法查看RTL图。好在lattice提供了syncplify pro for lattice工具可供我们来分析代码,同时可大概查看设计视图。原创 2017-10-23 17:03:35 · 5747 阅读 · 5 评论 -
Quartus 打开RTL Viewer时出现*** Fatal Error: Int Divide By Zero Module: quartus.exe Stack Trace: 0x103
具体的一张错误如下图:可能你的错误不是这样的,但是会出现Fatal Error。具体解决方法: intel官网解释:Internal Error: Sub-system: RVD, File: /quartus/rtlv/rvd/rvd_netlist_component.cpp, Line: 9067DescriptionDue to a problem in the Quartus® II software version 13.0 Web Edition, y...原创 2020-07-07 14:58:28 · 2432 阅读 · 2 评论 -
VHDL的几个语法结构分析记录
1、--GENERIC可以用来指定一些全局的变量,它要放在entity之后,port口映射之前entity ethernet is generic( --GENERIC语句指定的参数是全局的MIIM_PHY_ADDRESS : t_phy_address := (others => '0');MIIM_RESET_WAIT_TICKS : natural原创 2018-01-02 16:43:48 · 2641 阅读 · 0 评论 -
VHDL的port map映射时出现1166052WARNING - logical net 'clkin' has no load.
在使用lattice domiand时,出现了下面示图现象,一个输入信号总是出现在unconnected栏里,也即意味着你不能绑定管脚。logical net 'clkin' has no load.input pad net has no legal load.虽然是警告,但是这样你的功能就无法正常的测试实现了。经过几次的反复检查代码,并没有发现这个管脚的代码原创 2017-10-31 11:26:00 · 4257 阅读 · 0 评论 -
通过Synplify Pro查看FSM状态机
lattice diamond由于没法直接查看状态机,有时候是不利于分析,所以需要三方工具来辅助实现。同理使用自带集成的synplify pro分析工具来实现FSM的分析。1、使用Synplify Pro打开工程2、按照默认配置,点击Runing,3、ok后,点击Implentmentation Directory,找到fsm文件就是状态机文件,双击打开就可以看状态图了。具原创 2017-11-16 16:21:44 · 2160 阅读 · 0 评论 -
FPGA双向口inout管脚互联
比如FPGA透传I2c时,其实非常简单,直接用原理图搭建,用硬件描述语言我描述不出来这个逻辑,只要想通了,底层的直接用硬件原理图搭建,可以做成标准模块主要I2c透传时,FPGA的两路I2C的双向口 管脚都未加上下拉电阻,所以驱动能力很弱;只能使用I2c搭接的外接处理器内部的弱上拉驱动,;所以用硬件描述语言写出来的程序,观察出来的波形有很多高阻态;使用上述三态们搭建就...原创 2019-11-07 22:11:15 · 3632 阅读 · 2 评论 -
Modelsim仿真如何查看内部信号
一般Modelsim看的信号波形都是test bench中定义的默认信号。有时候需要看模块内部信号。可以选择sim窗口,查看internal,一般选择需要查看的信号在Objects窗口出现的信号,根据需要直接拖到Wave窗口即可。还可以采用的方法是在Transcript窗口输入命令add wave /testbench_name/design_unit_name/signal_name...转载 2020-04-09 10:04:36 · 4121 阅读 · 2 评论 -
[难题2] VHDL定义的信号/变量溢出了,FPGA会怎么处理
Q/T/A/TC:Question/Thinks/Answer/Test CaseQ:VHDL中,变量溢出fpga会怎么操作T:可以使用modesim仿真看看,或者在实际的fpga平台抓数据看TC:test case1tc1:使用modesim仿真integer类型变量,定义的时候规定integer取值范围,测试代码如下:library ieee;use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all;u...原创 2020-05-19 17:38:56 · 1853 阅读 · 0 评论 -
JTAG的TCK和GND短路补救方法
上百度搜索,有人说这样可以JTAG已死,没事烧纸::::::焚~~~超生方法(实验一次没成功,但是好多人都说成功过,坏了不妨一试):Cyclone III的JTAG死而复生经过durgy指点,我让ep3c40f484c8的jtag死而复生了,这里写一下过程好让后继者迅速超生。1、检查确认是否是jtag的引脚在芯片内部短路了,具体方法自己发原创 2017-10-25 18:28:19 · 5238 阅读 · 0 评论 -
Diamod生成原理图文件
首先编译通过,在工程管理第一栏点击要生成symbol的模块上右键Generate SCH Symbol。一般在当前目录下会生成.sym文件;也有在user的docment目录下的。要注意,没看到哪儿可以设置symbol的生成文件存储路径。原创 2017-10-13 16:18:45 · 1642 阅读 · 0 评论 -
modesim仿真的坑
VHDL,modesim仿真,图形输入1、使用低频的时钟上升沿作为触发信号时,必须将触发信号加入信号敏感列表 不然可能会无法触发上升沿动作原创 2020-03-13 17:51:21 · 282 阅读 · 0 评论 -
VHDL常见的语法结构,粘贴此处方便查询
原文转自:http://blog.sina.com.cn/s/blog_72cd3a5c01014wl1.html一个VHDL程序代码包含实体(entity)、结构体(architecture)、配置(configuration)、程序包(package)、库(library)等。 一、 数据类型1.用户自定义数据类型使用原创 2017-11-14 15:07:03 · 3959 阅读 · 0 评论 -
modesim仿真错误解决
1、在添加Lattice ECP3的仿真库后,调用自身的serdes IP核联合modesim仿真时出现下列错误:# Region: /topblock_tf/UUT/I1# ** Fatal: (vsim-3693) The minimum time resolution limit (10fs) in the Verilog source is smaller than原创 2017-10-16 16:59:19 · 3767 阅读 · 0 评论 -
VHDL和verilog的不可综合语句有什么用?
VHDL有很多不可综合语句,以前总是想不通,既然不能综合,要他们 干啥?比如说wait,wait on....等等,后面终于想通了,你可以用来写testbench啊,哈哈哈哈,用来写激励文件用,并不是用来用逻辑功能的,哈哈哈,这些教科书真是的,没有一本书提过这些的用途,真是的 ̄へ ̄。...原创 2018-09-17 09:54:51 · 1764 阅读 · 1 评论