FPGA调试技巧

八月,一直在debug, 编译,查信号,几乎没机会,也没心思停留下来看点东西,静心思考,做点笔记。今天,在硬盘上翻到了保存已久,但一直没想起来读的一本手册。这是我初入职场,决定从硬件工程师转FPGA的岗位时下载的,当时想着要是读完verilog那些事,FPGA STORY系列,出去找FPGA的工作岗位,我肯定会更有信心吧。结果呢,初次接触FPGA,很多知识还不具备,使得我读起这些书来很困难,缺乏具体的调试经验,当然也缺少对作者感同深受的那份体验,但是我能感觉到,作者对这套教程花了许多心思,深知FPGA小白,在自学这条道路上遇到的困惑,多次提出读者内心的疑问,并循序渐进的解答,这一点真的值得点赞。这种写教程的方式,真的是我非常喜欢的,也是我应该学习的,不用把逼格抬得太高,揣摩读者想知道的内容,而不只是列出自己想表达的。我甚至觉得,作者应该也是一位人际交往的高手,总能把话说到别人心坎里。

这套教程还没读一半,我就辞职了,不是因为我感觉知识学好了,而是原来的单位实在呆不下去了,离职后,我真的很快找到一个FPGA的岗位,现在想来,我当初能获得这个工作机会,只是因为全公司总人数小于5,并且没有一个人懂FPGA,还有一个很重要的因素是我有个高学历。从那以后,做FPGA开发快满两年了,这本册子一直躺在硬盘里,没有翻过。这两天,想静下心来读读书,翻开这本手册,有一点让我非常开心,因为我已经能很顺畅的阅读它,并理解里面的内容。学习真的就应当反反复复,每一次让自己进步一点点。

模块化设计

  1. 调用
  2. 完成
  3. 数据输入
  4. 数据输出

以下是一段自动启停的代码

模块之间的基本沟通信号

问答式沟通的最基本代码

采集时钟的频差

关于数据采集与计数

用延时来检测数据的变化

FPGA调试技巧的更多相关文章

  1. FPGA调试技巧(Quartus 15.1 Standard平台)

    1.在SignalTap II Logic Analyzer(stp)观测信号,需要将待观察寄存器.网络节点的综合器属性设为synthesis noprune和synthesis keep,防止综合器 ...

  2. 【黑金原创教程】 FPGA那些事儿 SignalTap II 调试技巧

    简介工具篇系列的第三本教程,讲述各种与SignalTap II 有关的调试技巧. 目录[黑金原创教程] FPGA那些事儿<工具篇III>:File01 - 上线调试与下线调试[黑金原创教程 ...

  3. μC/OS-II在Microblaze上的移植与使用专题--“安富利杯”赛灵思FPGA设计技巧与应用创新博文大赛参赛作品

    reference:http://xilinx.eetrend.com/d6-xilinx/blog/2010-05/682.html   随着集成电路设计与制造技术的发展,FPGA芯片的容量越来越大 ...

  4. 【工具】VS2010常用调试技巧(1)

    调试是一个程序员最基本的技能,其重要性不言自明.不会调试的程序员就意味着他即使会一门语言,却不能编制出好的软件.本文就本人在开发过程中常用的调试技巧作下简单呢介绍,希望对大家有所帮助,能力超群者请绕道 ...

  5. Visual Studio高级调试技巧

    1. 设置软件断点,运行到目标位置启动调试器 方法①:使用汇编指令(注:x64 c++不支持嵌入汇编) _asm 方法②:编译器提供的方法 __debugbreak(); 方法③:使用windows ...

  6. 【转】你所不知道的Android Studio调试技巧

    这篇写Android studio debug技巧个人觉得写得不错,转自:http://www.jianshu.com/p/011eb88f4e0d# Android Studio目前已经成为开发An ...

  7. VS调试技巧,提高调试效率(转):

    如果你还没有使用过这些技巧,希望这篇博文能帮你发现它们. 它们学起来很容易,能帮你节省很多时间. 运行到光标(Ctrl+ F10) 我经常看见人们是这样来调试应用程序的: 他们在应用程序需要调试的代码 ...

  8. iOS各种调试技巧豪华套餐

    转载自http://www.cnblogs.com/daiweilai/p/4421340.html 目录 前言 逼优鸡 知己知彼 百战不殆 抽刀断Bug 普通操作 全局断点(Global Break ...

  9. xcode调试技巧

    xode报错有时挺无厘头,完全不知道哪里出的问题,最后还得用排除法,记录一些工作中认为有用的调试技巧 1.左侧视图点断点视图,左下角点加号,选择exception breakpoint,类型选c++, ...

随机推荐

  1. 学号 20175223 《Java程序设计》第 6 周学习总结

    目录 教材学习内容总结 代码调试中的问题和解决过程 1. 编译运行时,跳过 Scanner.nextLine() 语句. 2. 提示 NullPointerException 错误. [代码托管] 学 ...

  2. mysql 的存储过程_多字段

    mysql 的存储过程 一.准备工作 新建一个表 /*Navicat MySQL Data Transfer Source Server : localhost_3306Source Server V ...

  3. JavaScript里面的arguments到底是个啥?

    类数组对象:arguments 总所周知,js是一门相当灵活的语言.当我们在js中在调用一个函数的时候,我们经常会给这个函数传递一些参数,js把传入到这个函数的全部参数存储在一个叫做arguments ...

  4. 关于while read line 循环中变量作用域的问题

    前一阵用shell写了一个从数据库中抽取数据生成.xml文件的脚本,要求是每个文件中只生成1000条数据.于是用到了while read line 作为循环. 在制作文件计数器的时候发现了一个问题,在 ...

  5. docker查看挂载目录Volume

    使用docker inspect命令查看container的volume信息,按照书本上面敲,发现一直报错: 使用命令如下: sudo docker inspect --format "{{ ...

  6. python之路之简单介绍:

    python介绍: a. python 基础 - 基础 - 基本的数据类型 - 函数 - 面向对象 python 安装 python 安装在os上 执行操作: 写一个文件,文件中按照python规则写 ...

  7. 关于linux 共享内存查看已经完整释放

    完整删除共享内存脚本 #!/bin/sh function rmshm() { zero_status=`ipcs -m|awk '{print $6}'|grep -w 0|wc -l` if [ ...

  8. for语句,range() 函式

    for 语句在任意序列 (列表或者字符串) 中迭代时, 总是按照元素在序列中的出现顺序依次迭代. 2 ... a = ['cat', 'window', 'defenestrate']3 >&g ...

  9. spark学习笔记_1

    简单的讲,Apache Spark是一个快速且通用的集群计算系统. Apache Spark 历史: 2009年由加州伯克利大学的AMP实验室开发,并在2010年开源,13年时成长为Apache旗下大 ...

  10. mariadb-my.cnf

    [client]port = 3306socket = /tmp/mysql.sockdefault-character-set=utf8 [mysqld]port = 3306socket = /t ...