fpga板制作调试过程记录
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板制作调试过程记录的更多相关文章
- ZCU板级调试Bug记录
本帖用以记录在ZCU102板级调试间遇到的Bug. 1.PL端的AXI总线在读取DDR中的数据的时候,在一个burst内不能跨越page boundary.跨越page boundary会在该burs ...
- PCIE 调试过程记录
遇到的问题 PCIE link不稳定 配置空间读写正常,Memory mapping空间读写异常 缘由 之前对PCIE的认识一直停留在概念的阶段,只知道是一个高速通讯协议,主要用于板内.板间的高速BU ...
- 用fluent模拟内循环床气化燃烧(调试过程记录)
模拟对象为文献Combined gasification of coal and biomass in internal circulating fluidized bed[1]中的内循环气化炉.[1]h ...
- SpringMVC中的java.lang.ClassNotFoundException: org.aspectj.weaver.BCException 调试过程记录
报错原因 上文本描述 java.lang.NoClassDefFoundError: org/aspectj/weaver/BCException at java.lang.Class.getDecl ...
- 开源项目weiciyuan运行前gradle调试过程记录
折腾了几个小时,终于能成功运行了,由于该项目使用的gradle版本过旧,需要做一些调整,具体如下 1.将使用gradle版本号改为你现在用的 2.将build tools版本号改为同上 3.将defa ...
- usb鼠标制作调试记录
2010-07-26 20:07:00 制作调试过程 1,串口通信硬件设计.焊接了串口通信电路实验.由于我的usb转串口线是不能配max232的.而是要配一个反向器.于是自己焊接了74ls00.并且把 ...
- 升级Windows 10 正式版过程记录与经验
升级Windows 10 正式版过程记录与经验 [多图预警]共50张,约4.6MB 系统概要: 预装Windows 8.1中文版 64位 C盘Users 文件夹已经挪动到D盘,并在原处建立了符号链接. ...
- 双系统Ubuntu分区扩容过程记录
本人电脑上安装了Win10 + Ubuntu 12.04双系统.前段时间因为在Ubuntu上做项目要安装一个比较大的软件,导致Ubuntu根分区的空间不够了.于是,从硬盘又分出来一部分空间,分给Ubu ...
- xp硬盘安装Fedora14 过程记录及心得体会(fedora14 live版本680M 和fedora14 DVD版本3.2G的选择)
这次电脑奔溃了,奇怪的是直接ghost覆盖c盘竟然不中.之前电脑上硬盘安装的fedora14操作系统,也是双系统.不知道是不是这个问题,记得同学说过,在硬盘装fedora之后,要手动修改c盘隐藏的那个 ...
随机推荐
- laravel5.8笔记二:部署
部署项目之前需要知道的几件事 1.有几个模块(admin,index,wap,api) 2.有几个数据库(mysql1,mysql2,mysql3) 3.有那些缓存(redis1,redis2,red ...
- python设计模式之猴子补丁模式
1.所有书中都没有把猴子补丁作为一种设计模式来看待.因为设计模式的模式的命名是根据java中提炼出来的,语言方式决定了java绝对不会有也不需要有这种操作,不存在的.那自然设计模式不会包括猴子补丁模式 ...
- js插件解读
1.calendar.js:日期插件:2.html5shiv.js:用于解决IE9以下版本浏览器对HTML5新增标签不识别,并导致CSS不起作用的问题的js文件:3.jquery.js里的代码是没有进 ...
- Nessus中文报告自动化脚本
前言 Nessus扫描完成,总要花挺多时间去整理报告,为此写了一个小脚本,用于自动化生成中文漏洞报告. 解析导出的html报告,自动翻译成中文,并提供修复建议,减少整理报告的时间,提升工作效率. gi ...
- ARM7与GSM实现的简单的远程控制
幸好单从控制GSM上来说,并不是太难,它是基于串口通信的,而且全是基于AT指令的控制,说起来,就只是熟悉下指令,而且这次比赛用到的指令也比较少,主要是关于短消息方面的指令.我们用到的指令如下: AT& ...
- JS 浅谈函数柯里化,不明觉厉
在计算机科学中,柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术.这个技术由 Christopher ...
- electron打包后, 使用NSIS再打包成安装包 .exe文件
NSIS下载地址
- Educational Codeforces Round 50
1036A - Function Height 20180907 \(ans=\left \lceil \frac{k}{n} \right \rceil\) #include<bits/ ...
- java的方法重载
1丶java的方法重载特性 满足以下条件的两个或多个方法构成“重载”关系:(1)方法名相同 (2)参数类型不同,参数个数不同或者参数类型的顺序不同 像System.out.println一样,就是重载 ...
- springmvc02,使用注解
unit04_01 a.RequestMappingHandlerMapping组件 @RequestMapping("/login.do") 该标记用在Controller业务方 ...