riple

Stay Hungry, Stay Foolish.

简单同步不是滤除毛刺的好方法

记得有一位博友不久前发过一篇文章,是关于滤除毛刺的多种方法的,其中提到了用同步的方法滤除毛刺。这篇文章就是关于跨时钟域同步逻辑和毛刺滤除方法的。这些天我调试的一个系统就因为毛刺的问题出现了不稳定现象。对于毛刺我是很小心的,专门对这个18位的计数器q值进

JTAG协议学习笔记(续二)(带输出的TAP状态机代码)

TAPController是用来解析JTAG协议的状态机,它的状态图如下:今天用StateCAD画了一下TAPController的状态图,顺便生成了两个HDL文件,一个VHDL的,一个verilog的。大家感兴趣的话,在这里rar可以下载。由于没有明确应用,这两个文件都没有输出。如果大家有兴趣的话,可

江湖越老,胆子越小?

“技术这一概念包含的内容是广大的,广大到不可想象。即便我们把清醒时的每一分钟都用来努力地学习某种技术和其相关技术,我们关于这一技术的专业知识仍然会存在漏洞。不,这些不是微不足道的漏洞,而是令人目眩的鸿沟!然而我们以一种(奇怪的)热情捍卫着这些鸿

锲而不舍--使用signaltapII调试FPGA设计中的bug

工作以来,学到的最有用的调试方法就是:锲而不舍,一条路走到底。(马老师)学到的最有用的调试格言就是:“三心:细心、耐心和责任心”。(库哥)我采用signaltap的通常步骤是:1.勘查现场。bug通常不是系统停顿的直接原因;bug发生时,系统按照正常的协议

JTAG协议学习笔记(续一)

这几天把我手头上所有关于JTAG的书都查了一遍,对JTAG的实现和操作有了初步的认识。把http://www.fpga4fun.com/files/JTAG.zip的C代码在Linux下编译了一遍,运行时出现fregmentationerror。初步定位在获取器件的数据寄存器长度时出错。还要把代码的各个函数分析一下,想

学习Tcl(一)——文件操作和数值转换

今天学会了下面几个用法:1.文件操作1.1察看并打印当前目录:puts"\nOutputdirectory:[pwd]"1.2在当前目录下创建目录tmp:filemkdirtmp1.3在tmp目录下创建并打开一个文件haha:setfileid[open"tmp/haha"w+]1.4在文件中写入一些东西:puts$fileid&qu

JTAG协议学习笔记(开篇明义)

写了两个系列的JTAG在FPGA中的应用文章,真的发现自己对JTAG知之甚少。加之我所在的实验室对PCB板的测试一直不完善,不借助JTAG工具不行,我是做数字电路的,责无旁贷。所以决定自学JTAG协议,争取自己开发一套测试代码,使我们的PCB焊接测试水平上一个台阶。

学习Tcl(〇)——学习资料和链接

Tcl是个好东东。我说的不是TCL手机和电视。我说的是ToolCommandLanguage。Tcl和Java一样,是平台无关的语言,windows、linux下面都可运行;Tcl和Perl一样,是脚本语言,无须编译,解释执行;QuartusII支持Tcl;Modelsim支持Tcl,.do文件就是按照Tcl语法写的;学会了Tcl

有一天我们将不再编程,我们编处理器[内有链接]

今年是ESL工具泛滥的一年,各种号称自己是ESL的旧的、新的工具层出不穷。Xilinx专门为ESL出了一期Xcell;Altera更厉害,做出了一个C2H工具,把SOPC的概念又向前推进了一步。ESLiscool!!!记得我的同事马老师说:“ESL有什么用处?我看最合适的用处就是高性能计算

第一个有那么点用处的virtualjtag代码

今天终于把我学到的那么一点点virtualjtag的用法用到了工作中。上午,我用virtualjtag做了一个察看计数器的工具,把我们系统中对nandflash擦除操作的计数值传回来显示。以前,这样的工作要么求助于软件人员,要么就得上signaltap。一直以来,都很羡慕软件人员可以在串口

虚拟JTAG工具在FPGA调试中的应用(续一)

三、Tcl命令的使用。::quartus::jtagTcl命令包中的各条命令都有英文注释,这里就不挨个翻译了。下面,把用户指南里给出的第一个例子逐句分析一下,后面还会给出一个模板。示例如下。其中只给::quartus::jtagTcl命令包中的命令加上了绿色,其余简单的Tcl命令可以按照E文

An FPGA Designer's Nightmare

奇文共欣赏。http://www.fpgajournal.com/articles_2006/20061031_ghost.htm看完这篇文章,心情无以言表。引用一句话:“Theengineerfeelsit.Hesmiles,buthefakes.”。压抑的心情无以抒解,唯有期待有同感者共唏嘘之。TheHauntingofFab51NightmareatThirty-tw

虚拟JTAG工具在FPGA调试中的应用(续二)

四、verilog代码分析先把关键的verilog代码写在下面。完整的代码在最后,按照我的理解和习惯,对原示例代码的写法作了修改。wire[3:0]counter1;reg[3:0]feed_reg;//四位的DR寄存器,用于加载输入值wiretdi,tck,cdr,cir,e1dr,e2dr,pdr,sdr,udr,uir;regtdo,bypass_reg;wir

虚拟JTAG工具在FPGA调试中的应用(待续)

最近学习了Altera的VirtualJTAG工具的使用。下面是我的使用心得。Altera在QuartusII6.0中加入了一个sld_virtual_jtag参数化宏单元模块,并提供了相应的Tcl程序包。有了这套工具,使用sld_virtual_jtag和相应的Tcl命令,我们就可以构建自己的虚拟JTAG链路,并进行

资源受限--使用signaltapII调试FPGA设计中的bug

FPGA的资源是有限的。设计已经占用了可观的资源(%的LE,%的MB),signaltap还要和设计抢占资源。“抢占”在这里是很贴切的,既包括抢占LE、MB,还包括布局资源和布线资源。我把“抢占”造成的影响叫做“测不准原理”。这一原理是贯穿sig
Baidu
map