随笔 - 21  文章 - 0  评论 - 4  阅读 - 17950
  2016年8月2日

http://wenku.baidu.com/view/8363d40003d8ce2f006623e9.html  另外一个博客

 

生成Xilinx库

 

先调用ISE的simulation library compilation wizard,用Modelsim编译xilinx库单元。编译好后我放在E:\Xilinx\13.4\ISE_DS\ISE\sim_lib目录下,同时有一个modelsim.ini文件,指定library:

secureip = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/secureip

unisim = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unisim

unimacro = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unimacro

unisims_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unisims_ver

unimacro_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/unimacro_ver

simprim = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/simprim

simprims_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/simprims_ver

xilinxcorelib = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/xilinxcorelib

xilinxcorelib_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/xilinxcorelib_ver

uni9000_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/uni9000_ver

cpld = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/cpld

cpld_ver = E:\Xilinx\13.4\ISE_DS\ISE\sim_lib/cpld_ver

 

Modelsim仿真

 

写好testbench,里面加一段代码:

initial

begin

$fsdbDumpfile("..\\wave\\tb_ShearInterpPerc.fsdb");

$fsdbDumpvars(0,tb_ShearInterpPerc);

end

tb_ShearInterpPerc是testbench顶层模块,意味着该模块内所有变量都被记录在fsdb文件里。在仿真目录下建立Modelsim用的DOS脚本文件run.bat:

vlib work

vlog ../../ShearInterpPerc.v

vlog ../testbench/tb_ShearInterpPerc.v

vsim -L xilinxcorelib_ver -L unisims_ver -L unimacro_ver -L secureip -lib work -voptargs=\"+acc\" -t 1ps -c -do "run 10us" -pli D:/pli/novas.dll work.tb_ShearInterpPerc glbl

 

修改仿真目录下的modelsim.ini,把前面指定库路径的命令粘贴进去。

Novas.dll有自己手动放置在指定目录,文件来自于Debussy安装目录E:\EDA\Novas\Debussy\share\PLI\modelsim_fli54\WINNT,支持如下:

在DOS命令行模式下转到仿真目录,输入run.bat即可仿真。

 

Debussy观察波形

 

结束后打开Debussy,在nTrace界面中导入HDL源文件,然后点New Waveform,在打开的nWave界面中open生成的fsdb 文件,按g或点get signal,选择需要观察的信号确定即可开始观察。

 

Modelsim, <wbr>Debussy联合仿真Xilinx工程入门

posted @ 2016-08-02 14:15 龙骑士_01 阅读(812) 评论(0) 推荐(0) 编辑
  2013年1月23日
摘要: 现实上,数字视频编码中所说的YUV就是YCbCr。?YCbCr与RGB名目的彼此转换RGB to YUV ConversionY=(0.257 * R) + (0.504 * G) + (0.098 * B) + 16Cr = V =(0.439 * R) - (0.368 * G) - (0.071 * B) + 128Cb = U = -(0.148 * R) - (0.291 * G) + (0.439 * B) + 128假如是rgb是12bit的话Y=(0.257 * R) + (0.504 * G) + (0.098 * B) + 256Cr = V =(0.439 * R) - 阅读全文
posted @ 2013-01-23 14:31 龙骑士_01 阅读(1611) 评论(0) 推荐(0) 编辑
  2013年1月18日
摘要: 在调试FPGA电路时要遵循必须的原则和技巧,才能降低调试时间,防止误操作损坏电路。通常情况下,参考以下步骤执行 FPGA硬件系统的调试。 1、在焊接硬件电路前,首先要测试电路板的各个电源之间,各电源与地是否短路;最好是每一块板子都进行测试,这样板子焊好后如果出现电源和地短路的情况也可以首先排除是板子本身的问题。 2、在焊接硬件时,首先先焊接电源部分,然后测试,排除电源短路等情况后,上电测量电压是否正确;对于电源要求比较高的某些电路要测试电源芯片的输出电压是否处于正常工作要求的范围之内。 3、然后焊接FPGA及相关的下载电路。再次测量电源地之间有没有短路现象,上电测试各电压是否正确;将手排... 阅读全文
posted @ 2013-01-18 22:03 龙骑士_01 阅读(592) 评论(0) 推荐(0) 编辑
  2012年12月4日
摘要: FPGA 中文意思现场可编程门阵列,以逻辑资源多,D触发器多,可以完成各种同步与异步时序电路设计.DSP,ARM 数据总线与FPGA进行数据交换,涉及到两个不同时钟的逻辑时序电路.对于两个异步时钟时序电路设计,常用的设计方法就是RAM 或FIFO 进行数据存储. 算了,不瞎侃了,介绍具体设计时候怎样让FPGA与DSP或ARM总线可靠通信.DSP 或 ARM 总线 管脚介绍: 数据线 : D0~D15 ; 地址信号: A0~Ax(根据不同地址空间大小); 读写信号: 读写分开的信号(或读写就是一根信号线); 地址选通信号: 该信号有效,地址信号有效; 页地址信号: 地址空间分段表示上面介绍的典型 阅读全文
posted @ 2012-12-04 14:10 龙骑士_01 阅读(693) 评论(0) 推荐(0) 编辑
摘要: 出自http://www.asic-world.com/。==========================================================================//-----------------------------------------------------// Design Name : uart// File Name : uart.v// Function : SimpleUART// Coder : Deepak Kumar Tala//-------------------------------------------... 阅读全文
posted @ 2012-12-04 14:09 龙骑士_01 阅读(328) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2012-12-04 13:43 龙骑士_01 阅读(0) 评论(0) 推荐(0) 编辑
摘要: --基于AD56XX的VHDL控制程序--设计者 eeleaderlibrary ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity Wr_Ad56XX is port ( clk: in std_logic;------20MHZ rst: in std_logic;------低电平有效 ctl_data:in std_logic_vector(11 downto 0); sclk:out std_logic; sync_n: out std 阅读全文
posted @ 2012-12-04 13:41 龙骑士_01 阅读(480) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2012-12-04 13:38 龙骑士_01 阅读(0) 评论(0) 推荐(0) 编辑
摘要: //任意整数倍的分频器module CLK_Division(CLK_In,CLK_In_N,CLK_Out); input CLK_In; input [31:0] CLK_In_N; output CLK_Out; reg CLK_Out; reg [31:0] CLK_Count; reg [31:0] CLK_Count_H; //分频计数器高电平计数 reg [31:0] CLK_Count_L; //分频计数器低电平计数 reg CLK_Count_Odd; //分频计数器奇数分频时低电平计数校正 reg CLK_Div_1; reg CLK_Div_2; always begin 阅读全文
posted @ 2012-12-04 13:28 龙骑士_01 阅读(348) 评论(0) 推荐(0) 编辑
摘要: http://home.eeworld.com.cn/my/space-uid-210489-blogid-66899.htmlVerilog代码moduleuart#( parameterclk_freq=50000000, parameterbaud=9600)( inputsys_clk, inputsys_rst, outputrx_irq, outputtx_irq, inputuart_rx, outputuart_tx ); wire[7:0]rx_data; reg[7:0]tx_data; regtx_wr; always@(posedgesys_clk) begin ... 阅读全文
posted @ 2012-12-04 13:27 龙骑士_01 阅读(439) 评论(0) 推荐(0) 编辑
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

点击右上角即可分享
微信分享提示