2010-09-11 22:49:00

昨天淘宝准备买块fpga核心板学习,为了练习焊接,我让老板给我散料及pcb板自己焊接。
一,在物料到之前的准备:
我先设计了一下焊接测试计划

1,检查电路板:特别是TQFP-144芯片引脚引出线。
2,研究原理图,一块一块看懂。如果有些外围测试电路就可以不用焊接了。
3,决定焊接顺序。先焊接焊接稳压ic,3.3v及外围。便于测量及时发现问题。再焊接1.2v稳压外围,进行并进行测量。
4,焊接TQFP-144芯片。并进行电压、GND及相邻引脚间短路测试。
5,焊接下载配置外围。便于连接电脑下载测试。
二,实际测试结果

对应计划3:
    3.3V稳压芯片没有问题正常输出。1.2V稳压芯片也没有问题正常输出。

对应计划4:
    TQFP-144的ic焊接完后通过万用表进行短路测试发现如下引脚短路:
68(GND).69(IO)短路
66(VCCIO),67(IO)短路
61(GND),62(VCCINT)短路-----
135(IO),136(IO)短路
呵呵!相关引脚弄了点松香拉一下就ok了。

对应计划5:
下载测试

第1次用jtag下载程序,怎么回事,没反应?
到网上搜类似情况。有个人说首先看nce片选是否为低电平,低电平则工作,我就测了下我的nce(16

脚),发现怎么和clk(17脚)的波形一样,结果一测,发现16,17脚短路。在放大镜下怎么也看不出

短路,还查了是否其他引脚短路导致它们短路,但是查不出为什么短路,最后死马当活马医,放了点

松香拉了一下,就好了,他们之间不短路了,原来真的是这2脚短路了,但是阻值为154ohm。不管了,

不短路就ok。

第2次用jtag下载程序,还是没有反应。怎么回事。我的nce是接个10k啦到地的。但是测了此脚出现的

是一个clk的波形,虽然已经不短路了,但是波形还是和晶振(17脚)类似,只不过电压小了。这个引

脚应该不是地电平就是高电平,怎么会是一个正弦波。难道是电磁干扰?接着,查了网上多个fpga的

jtag电路配置,第一个nce要接地,最后一个nce要悬空。那么我就一个fpga怎么办?到altera网站下

载ep2c5t资料看,发现nce直接短路到低这样的参考电路,于是把10k电阻去掉,直接短路。

第3次下载,终于是配置成功了,我设置的输出脚有反应了。同时又仔细的了解了.nSTATUS(82脚)和

CONF_DONE(83脚)在配置过程(复位、配置和初始化)中的电平状况,并且进行了验证,完全符合。
但是问题又出来了。我用之前做的分频器作为测试电路程序,输入为50m,输出为3分频,结果输出脚

有反应但是它是100m,接着我改成5分频,输出也差不多100m。怎么回这样呢?我不是已经配置成功了

吗?而且输出都是正弦信号,不是方波。可能输入电压即输出电压,而且我也没在fpga中加数字门电

路。但是总体感觉硬件是没有问题,jtag配置也没有问题,可能是程序设置有问题。

今天不测量好,我是不会死心的,至少我要知道我的硬件焊接到底有没有问题。
我还是静下心来重新写一个程序吧!越简单越好的那种。
`timescale 1 ps/ 1 ps
module fpgatest(
input clk,
output testpin
);
reg[0:0] regtestpin;

assign testpin=regtestpin;

initial
regtestpin=0;

always @ (posedge clk)
regtestpin<=~regtestpin;   //2分频
endmodule
软件引脚配置,综合,写testbench,分配其他引脚为三态输入,设置时序约束,管脚电流限制等,再用modelsim做function test。一切软件上的事情都完成了。

第4次下载。查看我分配的testpin引脚波形。非常成功了进行了2分频,后来又改为4分频,16分频。都

非常成功。于是又改了引脚分配,在4个bank中分别选了个别用户引脚作输出,也如愿输出设计了波形。

fpga核心板硬件测试画上了一个完美的句号。(as配置下我先不测,因为程序下载到配置芯片后如何

清空我不会,并且用as下载我暂时还用不到)自己焊了一块板,而且还调试成功,很有成就感,一定要记录一笔

,夜深了,我可以做一个美梦了,明天还要上一天的课,早点休息了。

fpga板制作调试过程记录的更多相关文章

  1. ZCU板级调试Bug记录

    本帖用以记录在ZCU102板级调试间遇到的Bug. 1.PL端的AXI总线在读取DDR中的数据的时候,在一个burst内不能跨越page boundary.跨越page boundary会在该burs ...

  2. PCIE 调试过程记录

    遇到的问题 PCIE link不稳定 配置空间读写正常,Memory mapping空间读写异常 缘由 之前对PCIE的认识一直停留在概念的阶段,只知道是一个高速通讯协议,主要用于板内.板间的高速BU ...

  3. 用fluent模拟内循环床气化燃烧(调试过程记录)

    模拟对象为文献Combined gasification of coal and biomass in internal circulating fluidized bed[1]中的内循环气化炉.[1]h ...

  4. SpringMVC中的java.lang.ClassNotFoundException: org.aspectj.weaver.BCException 调试过程记录

    报错原因 上文本描述 java.lang.NoClassDefFoundError: org/aspectj/weaver/BCException at java.lang.Class.getDecl ...

  5. 开源项目weiciyuan运行前gradle调试过程记录

    折腾了几个小时,终于能成功运行了,由于该项目使用的gradle版本过旧,需要做一些调整,具体如下 1.将使用gradle版本号改为你现在用的 2.将build tools版本号改为同上 3.将defa ...

  6. usb鼠标制作调试记录

    2010-07-26 20:07:00 制作调试过程 1,串口通信硬件设计.焊接了串口通信电路实验.由于我的usb转串口线是不能配max232的.而是要配一个反向器.于是自己焊接了74ls00.并且把 ...

  7. 升级Windows 10 正式版过程记录与经验

    升级Windows 10 正式版过程记录与经验 [多图预警]共50张,约4.6MB 系统概要: 预装Windows 8.1中文版 64位 C盘Users 文件夹已经挪动到D盘,并在原处建立了符号链接. ...

  8. 双系统Ubuntu分区扩容过程记录

    本人电脑上安装了Win10 + Ubuntu 12.04双系统.前段时间因为在Ubuntu上做项目要安装一个比较大的软件,导致Ubuntu根分区的空间不够了.于是,从硬盘又分出来一部分空间,分给Ubu ...

  9. xp硬盘安装Fedora14 过程记录及心得体会(fedora14 live版本680M 和fedora14 DVD版本3.2G的选择)

    这次电脑奔溃了,奇怪的是直接ghost覆盖c盘竟然不中.之前电脑上硬盘安装的fedora14操作系统,也是双系统.不知道是不是这个问题,记得同学说过,在硬盘装fedora之后,要手动修改c盘隐藏的那个 ...

随机推荐

  1. DBA-mysql-授权

    权限系统介绍 权限系统的作用是授予来自某个主机的某个用户可以查询.插入.修改.删除等数据库操作的权限. 不能明确的指定拒绝某个用户的连接. 权限控制(授权与回收)的执行语句包括create user, ...

  2. Git忽略已经被版本控制的文件(添加.gitignore不会起作用)

    说明:已经被维护起来的文件(需要被远程仓库控制),即使加入.gitignore也会无济于事. .gitignore只对那些只存在在本地,而不在远程仓库的文件起作用.(untraked file). 操 ...

  3. kaggle竞赛-保险转化-homesite

    时间格式的转化 查看数据类型 查看DataFrame的详细信息 填充缺失值 category 数据类型转化 模型参数设定 结论 该项目是针对kaggle中的homesite进行的算法预测,使用xgbo ...

  4. mysql获取相隔时间段的数据

    思路:为时间段内的数据进行编序号,然后计算好相隔时间,拿到id作为搜索条件 SELECT * FROM ( SELECT (@i:=@i+1) as i, id, data_send_time FRO ...

  5. CXF Spring开发WebService,基于SOAP和REST方式

    版本CXF2.6.9 添加的包文件 这个版本的不可在Tomcat7上运行,会出错. 配置文件 applicationContext.xml <?xml version="1.0&quo ...

  6. Nestjs 增加全局前缀

    文档 const app = await NestFactory.create(AppModule); app.setGlobalPrefix('v1'); // http://localhost:5 ...

  7. JWT(Json Web Token—)的定义及组成

    JWT定义及其组成 JWT(JSON Web Token)是一个非常轻巧的规范.这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息. 一个JWT实际上就是一个字符串,它由三部分组成,头部. ...

  8. common lisp里的几个操作符

    setf  赋值操作符,定义一个全局变量.返回值是最后一个赋值的结果. let 局部变量操作符.let表达式有两部分组成.第一部分是任意多的变量赋值,他们被包裹在一个()中,第二部分是任意数量的表示式 ...

  9. kubernetes组成

    kubernetes组成 k8s主要包括: kubectl 客户端命令行工具: 将接收的命令,发送给kube-apiserver,作为对整个平台操作的入口. kube-apiserver REST A ...

  10. python全栈开发 * 12 知识点汇总 * 180530

    12 知识点总结 装饰器进阶 ⼀. 通⽤装饰器的回顾1.开闭原则: 对增加功能开放. 对修改代码封闭2.装饰器的作⽤: 在不改变原有代码的基础上给⼀个函数增加功能3.通⽤装饰器的写法:def wrap ...