使用modelsin对quartusII仿真时遇到问题的解决方法.docx_第1页
使用modelsin对quartusII仿真时遇到问题的解决方法.docx_第2页
使用modelsin对quartusII仿真时遇到问题的解决方法.docx_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、FFT core可以设置成两种不同的引擎结构,四输出(Quadoutput)和单输出(signal output),对于要求转换时间尽量小的应用,四输出的是最佳的结构,对于要求资源尽量小的应用,单输出的引擎结构比较合适,为了增加吞吐量,可以采用并行引擎结构。FFT core支持的数据流:FFT core支持三种I/O数据流结构,连续(streaming)、缓冲突发(buffered burst)、突发(burst)。连续I/o数据流允许处理连续输入数据,输出连续复数数据流,而不中断输入和输出数据;缓冲突发结构于连续相比,需要更少的存储资源,但是这是以减少平均吞吐量为代价的;突发数据流的操作于缓冲突发的方法基本上一致,但是突发方式需要更少的存储资源,这也是以降低吞吐量为代价的、。2、用modelsim对fft模块进行仿真的时候出现此类问题的解决方法:* Error: (vsim-3033) E:/Quartus II projects/fft_1024_t/fft_1024_ip.v(92): Instantiation of asj_fft_sglstream_fft_130 failed. The design unit was not found.出现这种情况,第一可能是quartus破解不完整,导致有些库已经器件不能够使用,重新破解,在破解 的时候有时候可能有好几个网卡,则选择前两个网卡号对license.dat进行破解。在完整破解的时候,在仿真的时候需要加进去.vo文件以及测试文件,顶层文件,同时将生成fft核的时候产生.hex,.txt文件,在进行仿真的时候需要将其放到所建的modelsim工程文件夹下面。第二种情况就是在不同版本的quartus上建立了ip核,比如说在9.0上建立的文件,在8.0上进行综合编译,就会出现这样的问题。解决方法就是在现有的版本上重新建一个fft核之后进行仿真,应该就可以解决问题了。3、在高版本的quartus中打开低版本的quartus工程的时候,存储原来quartus工程的路径不要包含汉字,否则会造成打不开文件的情况。4、在modelsim中对rom核进行仿真的时候可能会出现这样的问题:#warning:(vsim3524)【FOFIR】Failed to open filesimulation_ip.hexfor reading.#No such file for directory.(error=ENOENT)出现这样的情况是因为在quartus 中建立的是.mif的文件,但是在modelsim中进行仿真的时候识别的是.hex文件,不会识别.mif文件,所以需要首先将他们转换成.hex格式的文件,然后将其拷到modelsim工程下面。同时,缺少一个文件,convert_hex2ver.dll,所以需要将其加到modelsim下的win32目录中,同时在modelsim中找到modelsim.ini文件,找到List of dynamically loaded objects for Verilog PLI applications;然后在下面一行中加上 Veriuser =D:modelsimprogramwin32convert_hex2ver.dll(convert_hex2ver.dll的保存路径)。这样处理之后就可以进行modelsim的仿真了。5、在verilog中进行编译的时候可能会出现这样的警告:Warning (10230): Verilog HDL assignment warning at mult.v(98): truncated value with size 32 to match size of target (15)。这是因为在前面的语句中没有指定出错的这条语句的位宽,所以会导致出现这样的错误,按照定义的位宽的长度指定所需要变量的位宽,这样的警告就会消失。6、verilog中如何进行截位:在quartus中,做完fft或者ifft操作之后,会使得结果的位宽比输入数据的位宽扩大一倍,在进行处理时,会造成fpga的资源的大量消耗,为了避免这个问题,就需要对操作完的数据进行截位处理,处理方法如下:首先在matlab中得到操作完成之后的复数的实部和虚部的绝对值的最大两个数,变成二进制之后看其位宽,对于无符号数,这个数如果超过了65535,则用这个数除以2n,选择合适的n值,使得结果在065535之间,然后需要截位的部分就是(m:n),m为最大的这个值的位宽。具体的verliog语言的书写方式为:Datin_width=16, Datout_width=31;Assign datout_realDatin_width-1=source_realDatout_width-1;assign datout_realDatin_width-2:0=source_real29:15;assign datout_imagDatin_width-1=source_imagDatout_width-1;assign datout_imagDatin_width-2:0=source_imag29:15;如上例中,输入数据位16位,进行fft运算之后的结果最大的值是29位的,所以从1529进行截位操作。6

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论