赛灵思 FPGA的配置与JTAG(一)_第1页
赛灵思 FPGA的配置与JTAG(一)_第2页
赛灵思 FPGA的配置与JTAG(一)_第3页
全文预览已结束

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

赛灵思FPGA的配置与JTAG(一)最近自己做了一块FPGA板子,不慎将PROM的两根引脚连错,导致在配置时无法正确识别PROM的型号,颠三倒四地排除了一个星期问题最终幸运解决。之后感叹自己实在是不小心,导致如此低级错误,不过排错过程倒是逼着我把xinlin配置和Jtag相关的文档好好研究了一番,结合自己板子的错误,颇有感慨,特此记录,算是心得体会吧。一、xilinxFPGA的PROM选择

DensityVCCINTVCCORangeVCCJRangePackages

JTAGISPSerialConfig.ParallelConfig.

XCF01S1Mbit

3.3V

1.8V-3.3V

2.5V-3.3V

VO20/VOG20

×XCF02S2Mbit

3.3V

1.8V-3.3V

2.5V-3.3V

VO20/VOG20

×XCF04S4Mbit

3.3V

1.8V-3.3V

2.5V-3.3V

VO20/VOG20

×XCF08P8Mbit

1.8V

1.5V-3.3V

2.5V-3.3V

VO48/VOG48

FS48/FSG48

XCF16P16Mbit1.8V

1.5V-3.3V

2.5V-3.3V

VO48/VOG48

FS48/FSG48

XCF32P32Mbit1.8V

1.5V-3.3V

2.5V-3.3V

VO48/VOG48

FS48/FSG48

XCFxxS是早期rom,不支持速度较快的并行配置,目前已经完全可被XCFxxP系列取代,并且XCFxxP还带有内部振荡器。

系列内具体型号的选择要看你的FPGA型号,关键在于生成的bit文件大小,不能大于PROM的容量。具体的FPGA推荐搭配的PROM可参见相关的芯片资料,或者PROM资料。值得一提的是一些大片子生成的文件可能会大于32M,这个时候必须要采用两片或以上的PROM级联起来才够用,具体连接后面再说。二、FPGA配置方式目前spartan6、Vertex6系列FPGA可以支持多种配置方式:从配置时钟的来源可分为:MasterModes、SlaveModes,从数据读取方式可分为:Parallel、SerialModes。这样排列组合以下就有如下配置方式:MasterSerial、SlaveSerial、SlaveParallel、MasterParallel另外Spartan6等新片子还支持一种SelectMAP模式,也可以分为MasterSelectMAP和SlaveSelectMAP两种,这次并没有尝试这两种新式的配置方式,所以没有发言权,所以这两种方式具体的特点参见相关datasheet:ug380等。另外还可以采用JTAG方式在线配置,不过掉电程序是不能保留的。

下面详细讲主串方式,如图是主串方式的连接图:

[[wysiwyg_imageupload:158:]]

主串方式是把FPGA、PROM等器件依照JTAG的标准,串接在同一个链路中,其中串接的含义是JTAG的TDI连接第一个器件的TDI,第一个器件的TDO又连接下一个器件的TDI,直到最后一个器件的TDO又连回到JTAG接口的TDO。这样就形成一个链状的回路,称为JTAG链路。其余两根线TMS(TestModeSelect.)、TCK(TestCLOCK)则分别与每个器件相连。这里TCK、TMS、TDI、TDO四条线均有内部上拉,所以不需要外接上拉电阻。接口上的电源VREF在datasheet上说是接VCCAUX,即2.5V,不过本人实际接到了3.3V也能工作,看了下网上其他人的心得以及实际测量得出该电源是为下载线里面的缓冲芯片HC244供电的,因此只要是能符合它的电平要求2.5~5V理论上都是可以工作的。在正确连接了这些引脚以后,利用jtag便可以识别链路上的芯片了。本人设计的板子在工作在主从模式下,经过JTAG识别到了FPGA芯片但是无法识别PROM,且读取的IDCODE全为“1”。在排除芯片问题之后,出问题的可能性就集中在这四根线上,结果发现PROM的TDI和TCK接反,导致无时钟输入,这样就解释得通了,改正过后果然一切正常了。

另外FPGA上还有两个比较重要的引脚:M0、M1,这两个引脚的高低电平组合不同代表了不同模式的选择,以Spartan6为例具体如下:

ConfigurationMode

M[1:0]

BusWidth

CCLKDirectionMasterSerial/SPI

01

1,2,4

OutputMasterSelectMAP/BPI

00

8,16

OutputJTAG

xx

1

Input(TCK)SlaveSelectMAP

10

8,16

InputSlaveSerial

11

1

Input

所以这里M1接地,M0接高电平,采用主串模式读取。

当M0、M1引脚配置无误之后FPGA在上电时就可以从PROM里读取数据了,此时相关的几个引脚有:CCLK、INTB、DONE、ProgramB和DIN如图所示可以看到它们分别与clk、OE/RESET、CE、CF、D0相连。这几个引脚的定义可以参见PROM和相关型号FPGA文档,作用分别是配置时钟、复位和使能、配置完成、串行数据传输。这几个引脚除了D0不需要上拉外在datasheet上都要求上拉了,不过在许多开发板上CCLK

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论