-
2007-03-18
CY7C68013A速度暴快 - [硬件电路]
CY7C68013A是支持USB2.0高速传输的芯片,网上资料很丰富。我做的nandflash板上就是通过这个芯片与PC通讯的。采用slave fifo的方式,四重缓冲,EP2和EP4一个做IN,另一个做OUT,连接到板上的FPGA。测了一下,FPGA->USB->PC最高速度可以达到38MB/s,PC->USB->FPGA最高速度可以达到29MB/s,两者速度有差距,估计是在后者的传输过程中,CY7C68013A需要做一些辅助的识别操作。 -
2006-12-08
发现Altium Designer6.3的PCB向导有问题 - [硬件电路]
今天才发现AD6.3的PCB向导产生的PCB没有在机械层里画出板子的边沿,只是标出了keepout的大小,默认的是板子的四边往里缩1.3mm,标出的尺寸是keepout的尺寸.结果PCB厂家可能是误解了意思,直接将板子做成keepout大小的尺寸.费了半天才向厂家说清楚.以后做板子的时候,如果是用PCB向导产生的PCB,最好手动在机械层画出板子的边沿,同时把keepout的尺寸标注去掉,以免PCB厂家误解成板子的尺寸.如果需要的时候可以标示出板子的尺寸,千万不要标示keepout的尺寸,以我免画蛇添足.
-
由于所定的芯片还没回来,挺清闲的。导师那边在做一个东东,需要一个多串口板,让有帮忙画。这个多串口板中心也是一个FPGA,能过FPGA的引脚引出20个串口。其中的一个串口用于与PC机通讯,剩下的串口用于与分布在不同位置的器件通讯。FPGA负责将分布在不同位置器件传回来的信息进行适当的处理,传给PC机。由于器件所处的位置可能比较远,所以用RS422进行差分的收发。但FPGA不能直接接受RS422信号,所以用到了DS26C31和DS26C32芯片,用于单端信号与双端信号的转换。后来发现spartan-3 FPGA支持LVDS,而这种正是
RS-644,是串口的另一新版本,也是差分收发,比RS-422可以达到更快的速度。如果直接使用LVDS,就可以省下DS26C31和DS26C32两种芯片共10块,但由于室里也没人用过这个,导师不放心,还是让我用RS422。看到FPGA的引脚还剩好多,就专门拿一个bank来做LVDS的实验,VCCO接2.5V,同时VRN、VRP各接50Ω的上接和下拉电阻,引出三对LVDS作测试用,如果测试成功,下回就可以直接用LVDS了。板子上又引出了两个PS/2接口,用来接键盘和鼠标,还有一个15针VGA口,用于接显示器。由于引出了20个串口,如果还直接用普通的9针的串口插座的话,肯定很占板面。考虑到RS422只用了四根线,两根用来发送两根用来接收,而USB插座也是正好是四芯的,可以通过USB插座引出。后来找到USB插座有那种两个USB口封装在一起的,又节省了好多地方。布这个板子相对容易多了,需要考虑的就是差分布线。又是先用specctra自动布线,布完之后引到altium designer6.3里,再进行手工修改。现在的altium designer6.3已经支持差分布线了,比以前的protel dxp2004方便多了。还有那个引脚替换的功能也不错。总共布了四层,两层信号,两层电源和地。用了不到一个礼拜就基本搞定了。 -
电路板上的固定孔不能与地相连,否则容易造成电路板工作的不稳定。因为固定孔是用来上螺丝的,而螺丝一般是导体。如果固定孔接地,造成螺丝与电路板的地相接,而螺丝很容易接受外面的干扰,从而造成电路板的地的不稳定。整个电路板工作于一个不稳定的地,工作肯定也不稳定。
-
2006-09-24
flash的板子做完了 - [硬件电路]
终于把那块nandflash读写的PCB做完了,面积为13.2mm*9.7mm,,一共布了8层,三层电源和地,五层信号层,信号线宽5mil,电源线宽12mil,最小过孔的内径为12mil,外径20mil,整个看起来密得吓人,真怀疑能否正常工作。由于是第一次做板子,本来已经做好了,就是担心拿出去做后又发现了问题,所以一直拖着没拿去做,最后还是导师催促才赶忙又检查修正了一遍。又发现了问题,原来画芯片的焊盘的时候是看pdf上的标准数据画的,但是我们作出来的试验板只能是手工焊,所以那些焊盘应该适当加长加宽,才好上焊。原来画的flash的芯片管脚只考虑了单片封装(SLC)的,后来一看FPGA的管脚还有剩余,所以把双片封装(MLC)的管脚也考虑进去,希望如果单封装的做通之后可以接着做双片封装的。又从FPGA引出几根管脚作为测试引脚,方便调试。在电源芯片的地方加了大面积的焊盘,用于帮助电源芯片散热。最后又加了用于安装的固定孔。联系了上海的一家PCB厂家,制板费2400块,每片板子100块,做了两块,一共是2600块。问了在其它PCB厂家做过板子的同学,觉得这个PCB厂价格还是很合理的。而且,速度也很快,一个星期就拿到板子了。现在就等着所定的芯片了。芯片的焊接室里有专门的师傅做,不用我烦心。那么密的管脚,让一人新手去焊,谁放心。 -
2006-08-26
protel dxp的引脚交换功能(pin swapping) - [硬件电路]
由于FPGA工艺的不断改进,功能的不断增强,价格的不断下降,现在的电子系统设计更多的考虑FPGA的使用。现在的PCB设计更多的是以FPGA为中心。由于FPGA引脚的可配置性,在设计以FPGA为中心的PCB时,我们应该更好的利用这一特性,以更好的完成PCB的布线。通过引脚的交换,可以使原本交叉的布线不交叉,这可使布线更容易,减少布线长度和层数。protel dxp为我们提供了这个功能。在PCB完成布局后,就可以利用引脚交换功能交换FPGA的引脚配置。打开PCB,单击菜单Tools-FPGA Pin Swapping-FPGA Pin Swap Manager,弹出一对话框,提示连接到一FPGA工程,可以是已有的,也可以是新建的。完成后弹出一对话框,FPGA Pin Swap Manager for Componet,通过这个对话,我们可以设置交换组ID(Swap group ID),以更好地让dxp完成引脚交换。交换组ID可以是任意一数,引脚交换在具有相同的交换组ID的引脚间进行。可以设置几个不同的组ID,使不同组各自进行引脚交换。不设置交换组ID的引脚则不进行引脚交换。有些FPGA的引脚,比如时钟引脚,配置引脚等不能进行引脚交换,则不设组ID。完成后回到PCB,单击菜单Tools-FPGA Pin Swapping-Auto,则dxp开始进行自动引脚交换。完成后,原来交叉成一团的虚拉线现在已经总体不交叉了,这样进行布线可以容易完成。 -
2006-08-26
protel dxp与specctra的接口 - [硬件电路]
Protel dxp自带的布线器situs的自动布线功能不敢恭维,速度慢,效率也不高。先前试过几次,自己画的一个PCB如果用situs自动布线,要一个多小时,而且只布到96%,还有好多connection。后来用specctra自动布线,只要六、七分钟,可以布到99%以上,对PCB稍加改动一下,最终可以布到100%。通过对比,可以看到specctra自动布线功能的强大。难怪protel dxp也为specctra留下了接口。通过这个接口,我们可以用specctra代替situs,提高自动布线的效率。
在用protel DXP的画完原理图,映射到PCB中,完成布局,设定好布线规则后,我们就可以开始自动布线了。首先将PCB文件另存为.dsn文件,然后启动specctra,Design/Session File一栏选择刚才保存的.dsn文件,其它可以不选择,单击start specctra,PCB就载入完成。单击菜单Autoroute-Route,选择smart,然后按OK,specctra就开始自动布线。速度之快,是用situs所不能体会得到的。在specctra自动布线之前也可以设定布线规则,可以在载入PCB后通过菜单或命令行完成,也可以在选择.dsn文件的同时选择.do文件完成,其中的.do包含设定规则的命令和其它的命令。如下是一个.do文件的内容:
define (class flashv)
define (class flashv (add_net FLASHVCC3V3))
define (class flashv (add_net FLASHVCC3V3-2))
define (class flashv (add_net GND))
rule class flashv (pin_width_taper up (max_length -1))
define (pair (nets RXD+ RXD-))
define (pair (nets TXD+ TXD-))
rule pcb (edge_primary_gap 10)
smart_route (min_via_grid 11.811) (min_wire_grid 5) (auto_fanout on) (auto_fanout_via_share on) (auto_fanout_pin_share on) (auto_testpoint off) (auto_miter off)
通过.do文件,原来重复繁琐的菜单操作就只需要一步就可以完成。如果不能布到100%,可以通过查看分析specctra布线结果,在protel dxp中的PCB中作适当改动,存为.dsn文件,继续让specctra自动布线。在布完线后,可以运行菜单Autoroute-postroute中的选项,比如将90度角改为45度等。最后,单击菜单File-Write-Routes,保存布线文件为.rte文件。在protel dxp的PCB图中,单击菜单File-Import,选择所保存的.rte文件。在将.rte文件导入PCB图后,可能会出现一些虚拉线,只要稍微移动与虚拉线连接的器件,虚拉线就会变成实布线。由于是自动布线,最后还要手动修改一些走线,使PCB减少过孔,减少走线长度等,使PCB更美观。 -
今天早上上班刚一开机,显示器又出现昨天同样的问题。真的好生奇怪,昨天不是已经修好了吗?!昨天晚上我就用了整个一个晚上也没问题。于是又打开机体,查了一下按键,没问题,电阻也没问题,电容也用新的替换,再开机,问题依旧。最后干脆好一招绝的,把按键板与底板的连线拔,再一开机,问题解决了,只是现在按键就使不上了。幸好一般是不用按键的。就整到这吧,又浪费了一个上午,好花时间!
-
今天早上上班刚一开机,显示器就出了问题,OSD菜单不间断地出现又消失,而且显示器上的按键的功能也发生了紊乱。这可怎么办?这样的话谁受得了,那个OSD菜单不断地自动跳出尔后又自动消失,很是惊人。
自己解决不了,只好将情况向导师说明。导师过来看了一下,就让我将显示器机体打开。这个我可从没想过,因为显示器机壳上写有“内有高压,非专业人员切勿打开”,一般人一看到这,马上就会打住,谁还敢轻易打开机体。既然导师都这样说了,相信他以前整过这个东西,我也就无后顾之忧了。在导师的指导下,小心翼翼地将打开机壳,里面的东西一目了然:中间是个显像管,显像管后头是一高压包,显像管侧面有一块驱动电路板,靠近机体按键部位的是一小块电路板,接受用户的按键。既然问题出在OSD上,那就应该查看一下跟OSD相连的一些器件。看了一下,有个器件是24C16,是个EEPROM,应该不会是这个的问题,还有个WELTREND 6148,估计是个MCU。赶快上网查它的pdf。在网上顺便查了一下显示器OSD菜单自动跳出这个问题。我的显示器是PHILIPS 107P5。还真的有好些人碰到跟我类似的情况。其中有个说法是说出现这个问题是因为连接到按键板的信号线上的那个电容因为受潮出现了问题,可以换个等值电容或干脆不接电容。后来又下到PHILIPS 107P2的电路图,估计跟107P5的差不多。回来后跟导师一说,然后找了一个等值的电容替换掉原来的电容,用螺丝上好机体,再开机一试,问题依旧。仔细看看107P2的电路图,其按键部分是五个按键,而107P5的按键是四个按键。不过原理是一样的,不同的按键接不过的电阻,所有的电阻的一端接同一个点(这个点还接了个上拉电阻),另一端与按键相连,按键的另一端接地。只要按下不同的按键,就会将对应的电阻接到电路上去,改变电路的电流,进而改变电压,而这个电压送到MCU的一个管脚上进行采样,通过采样值,MCU可以判断用户按下了哪个键,进而响应用户的动作。问题很可能出在按键板上,将按键板卸下,用万用表各个电阻的阻值,各个电阻并未有短路的情况(我以为电阻出了问题就只有短路的情况,后来发现电阻阻值不符也会出问题)。看到我找不出问题,导师将按键板拿过去,自己亲自测量。电阻上标有不同的阻值,虽说以前学过,不过早就忘了。会不会是电阻的阻值跟所标示的阻值不一样呢?赶忙向导师提出这个问题。导师还是挺强的,一眼就能电阻的标示值。果然有两个电阻的阻值跟所标示的阻值相差较大。原来是27K和47K的电阻,测量下来只有十多K。导师找来27K和47K的两个电阻,替换掉的电阻,然后将按键板放到原来的位置,上好机壳。上电一试,没问题了。原来竟然是两个电阻出了问题。想想如果直接将显示器拿到成都去修,不但费时,还费力费钱,到头来只为这两个电阻。电阻虽小,出了问题也会让整个系统出问题。每个东西都有每个东西的价值,哪怕它再小再不起眼。 -
以前经常看见,说什么芯片是LDO的,以为是某一公司的名号。现在才知道,LDO是low dropout regulator,意为低压差线性稳压器,是相对于传统的线性稳压器来说的。传统的线性稳压器,如78xx系列的芯片都要求输入电压要比输出电压高出2v~3V以上,否则就不能正常工作。但是在一些情况下,这样的条件显然是太苛刻了,如5v转3.3v,输入与输出的压差只有1.7v,显然是不满足条件的。针对这种情况,才有了LDO类的电源转换芯片。生产LDO芯片的公司很多,常见的有ALPHA, Linear(LT), Micrel, National semiconductor,TI等。
共1页 1






