AC609实战问题汇总
1.烧写文件格式:ALTERA的开发板在程序开发过程中,要把程序烧写到FPGA开发板上运行,上版调试,有三种文件格式sof,jic,pof。
区别见:【FPGA 学习笔记】sof文件和jic文件的区别,程序固化(将sof文件装换位jic文件)_米多奇米饼的博客-CSDN博客_sof文件
简言之:
sof是临时的,断电就丢失,上电需要通过JTAG口重新烧写到SRAM中,
jic和pof都固化在fpga的串行FLASH闪存芯片中,上电就从该芯片读取出程序。pof通过ASP端口烧写(麻烦,一般只用JTAG接口),jic需要从sof转换(最常用),通过JTAG口烧写。
2.AC609上用的存储器是华邦(winbond)电子公司的(台湾):SDRAM(同步动态存储器) W9812GKH-6 128 Mbit ; 串行FLASH:W25Q16 ,16Mbit。
ESPC:串行存储器。
SRAM:静态存储器。(断电丢数据)
SDRAM:同步动态存储器。(断电丢数据)
FLASH:非易失性( Non-Volatile )内存,在没有电流供应的条件下也能够长久地保持数据,其存储特性相当于硬盘,这项特性正是闪存得以成为各类便携型数字设备的存储介质的基础。
3.多次写入jic/pof文件,是覆盖还是共存?
答:覆盖,flash里面的原有的固件被覆盖。
4.已有固件,再烧sof文件,什么情况?
答:已有固件,则上电初始化固件程序到SRAM中运行,此时若烧录一个sof文件进入SRAM,则上电初始化的程序先被擦除。
5.烧写sof/jic的教程:小梅哥AC620实战指南。
生成sof文件在output files文件夹中。选择sof和usb,start即可。
6.系统没有usb-blaster的驱动:
但其实在quartus的驱动中有这个文件:搜索设备管理器-找到USB-blaster-驱动-手动搜索- (quartus-drivers)搜索安装即可!
完成度:
①.led flash
②.led run
③.千兆以太网发送模块:麻了,col和crs引脚不知道干啥的 , e_reset和fpga_clk不知道接在哪里。这两个随便接上了,udp发送到电脑端可以解析成功,说明引脚接的没问题。fpga接收还在测试。网络调试助手一直接收不到信息,初步怀疑是因为:我设置fpga发送目标地址的mac地址是电脑网卡,ip地址是连接的热点的ip(热点是手机开的,也就是手机的ip),由于fpga发送udp帧给了网卡,而我调试助手设置的ip是手机热点的ip,所以没有被接收到,应该在fpga程序中把目标ip改成我电脑网卡的ip,再用电脑调试助手设置网卡ip接收。试一下:不可行。
麻了。我发现wireshark可以接收网口上的数据包 ,只要格式符合,无论mac地址对不对的上,都能接收并解析出来。比如我fpga发的mac地址不是这个网卡,但是连上这个网口了,他就能就接收到。
用手机热点的ip失败了,改变方法,我把自己的ip地址设置为fpga定的目的ip,终于在网络调试助手接收到了数据。学会:ip可以手动编辑的,自动获取则是能上网。手动编辑是任意。
发送到fpga失败了,我已经用命令行窗口把fpga的ip地址和mac地址绑定了,作为本上位机的网上邻居,但还是发不出,在wireshark没有看到。
麻喽。情况是这样子的,把电脑的ip改成192.168.0.3就可以收发了。改成别的就不行...初步猜测是程序问题。0段还是1段不知道有无影响
测试了一下,在0段都可以实现收发。
④.把ad_etherner工程从ise拷贝到quartus,重建了IP核,发现ise的ucf文件是用户定义的约束文件(引脚约束吧!),cdc文件是片上逻辑分析仪(由专门电路实现,而不是仿真),对应在quartus上就是signaltap logic analyzer。
教程如下:
ISE ChipScope使用_Phenixyf的博客-CSDN博客_chipscope使用教程
彻底掌握Quartus——Signaltap篇_队长-Leader的博客-CSDN博客_quartus signaltap
⑤Altera使用fft的ip核时编译通不过,因为没有破解这个ip核,破解任意IP核的方法:QUARTUS II中IP核的调用方法之ip核破解_freedomff的博客-CSDN博客
⑥付费ip无法生成仿真文件 :解决Quartus13.0sp1数字信号处理类IP核生成卡住以及仿真模型生成报错问题_Castor0的博客-CSDN博客
⑦
文件位置不对,不要再创建子级文件 即可。
⑧Modelsim仿真问题$fscanf : Argument 1 is not a valid file descriptor.
解决:Modelsim仿真问题$fscanf : Argument 1 is not a valid file descriptor._foreverqzx的博客-CSDN博客
或者把fopen的文件复制到当前路径来。
⑨Altera中fft:
使用:生成后,先运行matlab的fft_tb文件,生成对应txt文件,然后把txt文件复制到fft的目录下(modelsim仿真时的目录),然后仿真就有结果。
⑩打开工程报错:
原因:版本不同
解决:打开qsf文件,把报错中的每一行,最前面用#注释掉,再打开即可。
11.matlab三个函数:fopen,fwrite,fread 三个函数非常好用,可以解决数据进制的疑惑