日常·唠嗑
好久没唠嗑了,进入正文前,讲点打工心得。
打工是真的会磨人心志,也不是上班说有多累,主要是深圳通勤一般比较长,我在南山上班,住宝安,早上地铁加步行一般一小时。最近晚上经常睡不着,白天就没精神,每天下班,到家就是直接躺尸,真的啥事都不想干,打游戏都嫌累。🌒🌒🌒🌒
(PS:上班的时候,看看芯片架构,写写逻辑还是很快乐滴)
目录
- 日常·唠嗑
- FTUSB-0和FTUSB-1搞反了
- 起因:
FTUSB-0和FTUSB-1搞反了
起因:
买了一块Lattice的LCMXO3LF-9400C 开发板,烧录的时候,选择JTAG,结果老是报下面这个错误:
Device#1 LCMXO3LF-9400C: Failed to verify the ID
(Expected: 0x00000000 Read: 0x7FFFFFFF).
ERROR - Check configuration setup: Unsuccessful.
ERROR: pgr_program failed.
ERROR - Programming failed.
搞了2天都没发现什么导致的,全网很多人问这个问题,结果都是极限拉扯,没有正确答案。
1、开始,我怀疑软件有问题,就重整了最新版,没用;
2、以为JTAG没连,重新点了Scan,没用;
3、以为能在XCF或者JED文件中修改ID,没用;
4、以为接口坏了(没道理啊,新的板子,还自带的FTDI),测了JTAG接口,没波形。好,开始怀疑JTAGENB(JTAG可以设置成通用IO),结果不是;
5、开始,准备怀疑地球是不是圆的🐷🐷🐷🐷
没辙,打电话问一下师父吧,最起码有一线希望;然后师父看了一会也没头绪,说,要不你就把TCK前面那个0K的电阻(有个下拉,影响测试),拆下来,测一下,有没有信号,再没信号,那就是FTDI坏的,没得玩。
拆完之后,选择FTUSB-0,点了一下烧录,发现TCK还是没信号。玩完。。。。然后无意间,选成FTUSB-1,烧录,TCK有信号,并且此时FTUSB-1也不能烧录了。
我:
这还不明显?我的Fuck,FTUSB-1才是JTAG,FTUSB-0,才是IIC,我就说,IIC烧录我记得配置相当复杂,什么时候这么简单了,JTAG不可以,IIC这么顺畅?????
下面就是官方文档:IIC,是FTUSB-1。😓😓😓😓
怪不得他们公司的FAE自己都说:
干这行的,一定要有怀疑的精神,怀疑的不仅仅是客户芯片厂家也是完全可能出现问题的,厂家的bug也是正常的,厂家没有BUG,FAE就没有存在的意义了。上述发现的BUG不是芯片本身的bug,是提供的参考C代码的bug.
所以,各位,厂家的文档,也不一定是100%对的,多去测试,多质疑。当然,地球是圆的,不用质疑😄😄😄😄
至于上面刚开始那个问题,多半是IIC没配好(今天测试完就下班了,还没去看IIC),有遇到这个问题的小伙伴,可以外接烧录器或者看看这篇文章:
IIC加载以及存在的问题—lattice XO3
https://www.cnblogs.com/xiaozhuge/p/6442125.html
也就是上面这个FAE大佬写的文章,哈哈哈,写的挺好的,深受感触。
另外提一点,XO3有个Feature Row,主要是用来设置配置模式的,他能读码流的信息然后汇总到UI(但不是实时去读FPGA里面的信息,别搞错了)