系统背景:输入时钟5MHz,FPGA内以这个时钟做计数器,0-311循环,case计数器:0-63时按照5MHz往FD[15-0]发自增数据0x0000-0xffff(SLWR<=‘0’)64-311时SLWR<='1';68013在从fifo模式下,autoin模式,512*的缓冲区。上位机就是普通的线程内循环,begin;wait;finish;但是数据写到文件以后会有这样的错误:集中在0x3FFF后的下一包数本应是0x4000,但是经常接受为0x8000,再过512后,又回到0x4100,然后继续正确,具体见图。
CPUCS = 0x10;
48MHz
IFCONFIG = 0x43;
从FIFO,时钟从外部输入
SYNCDELAY;
REVCTL = 0x03;
SYNCDELAY;
EP6CFG = 0xE2;
SYNCDELAY;
EP8FIFOCFG= 0x0D;
SYNCDELAY;
EP6FIFOCFG= 0x0D; 16位auto in
SYNCDELAY; |