周一写了一个用于测试模块的FPGA设计(在学习用FPGA烧制CPU(MIPS指令集的,刚淘到一本好书,不敢浪费)),结果调试发生了很多奇怪的问题,比如开关的抖动引起的奇怪的跳数现象,寄存器VHDL设计失误引起的七段液晶管奇怪的数字,还有开关拨动没有反应等等一些列问题,而且这些稀奇古怪的现象都纠结到一块,更让我吐血加撞墙而不解抓狂...但是没有办法,慢慢调试吧。说来也是,这是第一次调试FPGA开发板(之前没有下载电缆,笔记本没并口,后来买了个USB-BLASTER算是OK了),所以过程及其痛苦,一点经验都没有,毕竟这是很硬件的东西,很多信号都是硬件直接产生的,所以摸着石头过河吧。举例跳数问题,本来看是没有什么规律的,但是再分析电路,发现可能是移位存储器的信号问题有误,所以回过头来重新设计了一下移位寄存器(测试的时候直接把移位功能去掉),结果算是跳数问题解决了,但是还是没法显示结果,后来发现原因竟然是之前为了测试部分把输入的一个信号截断了...狂晕。后来又陆续部分重写了设计,修改电路看中间信号结果等等,知道今天才算是没有问题了,说实话,第一次调试成功还是很有成就感的。虽说VC的调试也是异常痛苦(尤其是嵌入汇编那一块,几乎内存指的全是错的),但是和这个比起来还是这个更甚而无不及,因为不能随便的设个断点直接监视变量值,刚开始几乎全靠猜测和检查.......刚开始学编程的时候有个感觉,编译通过就OK了,如果输出有问题就让程序O了吧...但是现在看来如果要写一个能运行的程序,调试还是十分重要的,虽说过程是痛苦的。
最重要的是调试,而且最痛苦的是调试
最新推荐文章于 2025-08-08 14:40:19 发布