FPGA学习笔记之引脚分配
- 格式:doc
- 大小:414.00 KB
- 文档页数:4
fpga定义引脚位置和电气标准
FPGA的引脚位置和电气标准是由FPGA芯片制造商定义的。
每个FPGA芯片都有一组特定的引脚,它们的位置和功能都是根据芯片的设计和用途来确定的。
在FPGA设计中,引脚的位置是一个重要的考虑因素。
引脚的位置决定了与其他芯片或电路板的连接方式。
通常,FPGA的引脚按照特定的排列方式布局,以便于与其他组件进行连接。
电气标准是FPGA设计中另一个重要的考虑因素。
FPGA的引脚具有特定的电气特性,例如电压、电流和电阻等。
在FPGA设计中,需要根据引脚的电气特性来配置引脚的功能和连接方式。
在具体的FPGA芯片中,每个引脚都有自己的名称和编号,并且具有特定的功能。
根据引脚的功能,可以将它们分为不同的类型,例如输入引脚、输出引脚、双向引脚等。
每个引脚都具有特定的电气标准,例如电压范围、电流大小等。
在FPGA设计中,可以通过软件工具来配置引脚的位置和电气标准。
通常,FPGA设计软件会提供一个引脚编辑器,用于配置每个引脚的位置和电气特性。
用户可以通过编辑器来设置每个引脚的名称、编号、功能、电压范围、电流大小等参数。
FPGA的引脚位置和电气标准是由芯片制造商定义的,并且在FPGA设计中需要进行配置和调整,以便于实现特定的功能和满足特定的电气要求。
2021/2/10笔记一:分配引脚的四种方法:〔Quartus II 13.0sp1 (64-bit)〕1、常规方法,利用Pin Planner命令,适用于引脚使用比拟少的工程,简洁方便;2、使用.csv文件进行引脚分配:步骤一:利用记事本新建一个.csv的格式文件,内容格式如图下列图所示,然后保存;步骤二:选择菜单栏Assignments-->Import Assignment,添加刚刚生成的文件路径;步骤三:点击OK,引脚分配完成。
注意:.csv文件保存路径不要有中文,建议保存在工程文件夹下。
3、使用.qsf文件进行引脚分配:步骤一:在Quartus II中翻开.qsf文件〔系统默认生成.qsf文件,默认保存在该工程文件夹下〕步骤二:添加以下格式内容,格式如下列图所示;步骤三:点击保存,引脚分配完成。
4、使用.tcl文件进行引脚分配:步骤一:生成.tcl文件,选择菜单栏Project-->Generate Tcl File For Project,点击OK,默认保存路径为该工程文件夹;步骤二:添加以下格式内容,格式和.qsf文件格式一致;步骤三:选择菜单栏Tool-->Tcl Scripts,选择生成的.tcl文件,点击Run,引脚分配完成。
说明:在实际的应用过程中,我们应该根据工程的子模块个数和引脚的使用多少来选择适宜的引脚分配方式,笔者总结了以下几条:〔不喜勿喷,还望多多赐教〕1、工程中使用的引脚数为个位数时,并且特别少,建议使用常规方法,利用Pin Planner 命令进行引脚分配;2、文件进行引脚分配;如下图,.tcl文件中标识符和变量名已经给出,只需要输入对应引脚,比拟方便。
在多子模块的情况下,.tcl文件中没有给出标识符和变量名,这点需要注意。
3、多个子模块,使用引脚众多的情况下,利用.tcl文件、.csv文件和.qsf文件进行引脚分配大同小异,不过个人更喜欢利用.csv文件进行引脚分配,因为格式相对简单。
XilinxFPGA引脚功能详细介绍注:技术交流用,希望对大家有所帮助。
IO_LXXY_# 用户IO引脚XX代表某个Bank内唯一的一对引脚,Y=[P|N]代表对上升沿还是下降沿敏感,#代表bank号2.IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在用户IO的基本上添加一个或多个以下功能。
Dn:I/O(在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据口。
在从SelectMAP 读反馈期间,如果RDWR_B=1,则这些引脚变成输出口。
配置完成后,这些引脚又作为普通用户引脚。
D0_DIN_MISO_MISO1:I,在并口模式(SelectMAP/BPI)下,D0是数据的最低位,在Bit-serial模式下,DIN是信号数据的输入;在SPI模式下,MISO是主输入或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第二位。
D1_MISO2,D2_MISO3:I,在并口模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs。
An:O,A[25:0]为BPI模式的地址位。
配置完成后,变为用户I/O口。
AWAKE:O,电源保存挂起模式的状态输出引脚。
SUSPEND是一个专用引脚,AWAKE是一个多功能引脚。
除非SUSPEND模式被使能,AWAKE被用作用户I/O。
MOSI_CSI_B_MISO0:I/O,在SPI模式下,主输出或者从输入;在SelectMAP模式下,CSI_B是一个低电平有效的片选信号;在SPI*2或者SPI*4的模式下,MISO0是SPI总线的第一位数据。
FCS_B:O,BPI flash 的片选信号。
FOE_B:O,BPI flash的输出使能信号FWE_B:O,BPI flash 的写使用信号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为高电平CSO_B:O,在并口模式下,工具链片选信号。
XilinxFPGA引脚功能详细介绍注:技术交流用,希望对大家有所帮助。
IO_LXXY_# 用户IO引脚XX代表某个Bank内唯一的一对引脚,Y=[P|N]代表对上升沿还是下降沿敏感,#代表bank 号2.IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在用户IO的基本上添加一个或多个以下功能。
Dn:I/O(在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据口。
在从SelectMAP读反馈期间,如果RDWR_B=1,则这些引脚变成输出口。
配置完成后,这些引脚又作为普通用户引脚。
D0_DIN_MISO_MISO1:I,在并口模式(SelectMAP/BPI)下,D0是数据的最低位,在Bit-serial模式下,DIN是信号数据的输入;在SPI模式下,MISO是主输入或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第二位。
D1_MISO2,D2_MISO3:I,在并口模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs。
An:O,A[25:0]为BPI模式的地址位。
配置完成后,变为用户I/O口。
AWAKE:O,电源保存挂起模式的状态输出引脚。
SUSPEND是一个专用引脚,AWAKE是一个多功能引脚。
除非SUSPEND模式被使能,AWAKE被用作用户I/O。
MOSI_CSI_B_MISO0:I/O,在SPI模式下,主输出或者从输入;在SelectMAP模式下,CSI_B是一个低电平有效的片选信号;在SPI*2或者SPI*4的模式下,MISO0是SPI总线的第一位数据。
FCS_B:O,BPI flash 的片选信号。
FOE_B:O,BPI flash的输出使能信号FWE_B:O,BPI flash 的写使用信号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为高电平CSO_B:O,在并口模式下,工具链片选信号。
第二种:建立TCL文件进行管脚分配。
这种方法比较灵活,是比较常用的。
这种方法具有分配灵活,方便快捷,可重用性等多方面优点。
方法如下:选择Projects菜单项,并选择Generate tcl file for project选项,系统会为你自动生成相应文件,然后你只要向其中添加你的分配内容就可以了。
还有一种方法就是直接用new ,新建一个TCL文件即可,具体不再细讲。
下面是我分配的内容一部分,可供大家参考。
set_global_assignment -name FAMILY Cycloneset_global_assignment -name DEVICE EP1C3T144C8set_global_assignment -name ORIGINAL_QUARTUS_VERSION 8.0 set_global_assignment -name PROJECT_CREATION_TIME_DATE "19:14:58 JANUARY 06, 2009"set_global_assignment -name LAST_QUARTUS_VERSION 8.0set_global_assignment -nameUSE_GENERATED_PHYSICAL_CONSTRAINTS OFF -section_ideda_palaceset_global_assignment -name DEVICE_FILTER_PACKAGE "ANY QFP" set_global_assignment -name LL_ROOT_REGION ON -section_id "Root Region"set_global_assignment -name LL_MEMBER_STATE LOCKED-section_id "Root Region"set_global_assignment -name DEVICE_FILTER_PIN_COUNT 144 set_global_assignment -name DEVICE_FILTER_SPEED_GRADE 8 set_global_assignment -name FITTER_EFFORT "STANDARD FIT" set_global_assignment -name BDF_FILE topDesign.bdfset_global_assignment -name QIP_FILE nios.qipset_global_assignment -name QIP_FILE altpll0.qipset_global_assignment -name USE_CONFIGURATION_DEVICE ON set_global_assignment -name STRATIX_DEVICE_IO_STANDARD "3.3-V LVTTL"set_global_assignment -name PARTITION_NETLIST_TYPE SOURCE -section_id Topset_global_assignment -name PARTITION_COLOR 14622752-section_id Topset_location_assignment PIN_72 -to addr[7]set_location_assignment PIN_69 -to addr[6]set_location_assignment PIN_70 -to addr[5]set_location_assignment PIN_67 -to addr[4]set_location_assignment PIN_68 -to addr[3]set_location_assignment PIN_42 -to addr[2]set_location_assignment PIN_39 -to addr[1]set_location_assignment PIN_40 -to addr[0]set_location_assignment PIN_48 -to data[15]set_location_assignment PIN_47 -to data[14]set_location_assignment PIN_50 -to data[13]set_location_assignment PIN_49 -to data[12]set_location_assignment PIN_56 -to data[11]set_location_assignment PIN_55 -to data[10]set_location_assignment PIN_58 -to data[9]set_location_assignment PIN_57 -to data[8]set_location_assignment PIN_61 -to data[7]set_location_assignment PIN_62 -to data[6]set_location_assignment PIN_59 -to data[5]set_location_assignment PIN_60 -to data[4]set_location_assignment PIN_53 -to data[3]set_location_assignment PIN_54 -to data[2]set_location_assignment PIN_51 -to data[1]set_location_assignment PIN_52 -to data[0]set_location_assignment PIN_16 -to clkset_location_assignment PIN_38 -to csset_location_assignment PIN_141 -to led[3]set_location_assignment PIN_142 -to led[2]set_location_assignment PIN_143 -to led[1]set_location_assignment PIN_144 -to led[0]set_location_assignment PIN_33 -to reset_nset_location_assignment PIN_41 -to rdset_location_assignment PIN_71 -to wrset_location_assignment PIN_105 -to mosiset_location_assignment PIN_107 -to sclkset_location_assignment PIN_106 -to ssset_location_assignment PIN_73 -to motor[0]set_location_assignment PIN_74 -to motor[1]set_location_assignment PIN_75 -to motor[2]set_location_assignment PIN_76 -to motor[3]set_instance_assignment -name PARTITION_HIERARCHY root_partition -to | -section_id Top# Commit assignmentsexport_assignmentsFPGA 点滴(2008-09-30 09:44:45)转载标签:杂谈以此记录心得以及重要的知识点。
如何分配FPGA管脚在芯片的研发环节,FPGA 验证是其中的重要的组成部分,如何有效的利用 FPGA 的资源,管脚分配也是必须考虑的一个重要问题。
一般较好的方法是在综合过程中通过时序的一些约束让对应的工具自动分配,但是从研发的时间段上来考虑这种方法往往是不可取的,RTL验证与验证板设计必须是同步进行的,在验证代码出来时验证的单板也必须设计完毕,也就是管脚的分配也必须在设计代码出来之前完成。
所以,管脚的分配更多的将是依赖人,而非工具,这个时候就更需要考虑各方面的因素。
综合起来主要考虑以下的几个方面:1、FPGA 所承载逻辑的信号流向。
IC 验证中所选用的 FPGA 一般逻辑容量都非常大,外部的管脚数量也相当的丰富,这个时候就必须考虑到PCB 设计时的布线的难度,如果管脚的分配不合理,那么有可能在PCB 设计时出现大量的交叉的信号线,这给布线带来很大的困难,甚至走不通,或者是即便是布线走通了,也有可能由于外部的延时过大而不满足时序方面的要求。
所以在管脚分配前对 FPGA 工作的环境要相当的熟悉,要对其中的信号来自哪里去向何方非常的清楚,这就按照连线最短的原则将对应的信号分配到与外部器件连线最近的 BANK 中2、掌握 FPGA 内部 BANK 的分配的情况。
现在 FPGA 内部都分成几个区域,每个区域中可用的 I/O 管脚数量各不相同。
在 IC 验证中都是采用了ALTERA 与 XILINX系列的 FPGA ,这两个厂商的 FPGA中内部BANK的分配有一定的差异,这可以在设计中查阅相关的手册。
下面与 ALTERA 中 Stratix II系列的 FPGA 内部 BANK 的分配为例来进行说明。
图中详细说明了 FPGA 内部 BANK 的分配情况和每个 BANK 中所支持的 I/O 标准。
根据FPGA 中内部BANK 的分配的情况,同时结合图 1 中信号的流向也就可以大体固定FPGA 在单板中的方向,同时按照就近的原则将相关的信号分配到相关的 BANK 中,这样的方法可以完成一般信号的分配。
F PG A的配置引脚说明FPGA是基于SRAM编程的,编程信息在系统掉电时会丢失,每次上电时,都需要从器件外部的FLASH或EEPROM中存储的编程数据重现写入内部的SRAM中。
FPGA在线加载需要有CPU的帮助,并且在加载前CPU已经启动并工作。
FPGA的加载模式主要有以下几种:1).PS模式(Passive Serial Configuration Mode),即被动串行加载模式。
PS模式适合于逻辑规模小,对加载速度要求不高的FPGA加载场合。
在此模式下,加载所需的配置时钟信号CCLK由FPGA外部时钟源或外部控制信号提供。
另外,PS加载模式需要外部微控制器的支持。
2).AS模式(Active Serial Configuration Mode),即主动串行加载模式。
在AS模式下,FPGA主动从外部存储设备中读取逻辑信息来为自己进行配置,此模式的配置时钟信号CCLK由FPGA内部提供。
3).PP模式(Passive Parallel Configuration Mode),即被动并行加载模式。
此模式适合于逻辑规模较大,对加载速度要求较高的FPGA加载场合。
PP 模式下,外部设备通过8bit并行数据线对FPGA进行逻辑加载,CCLK信号由外部提供。
4).BS模式(Boundary Scan Configuration Mode),即边界扫描加载模式。
也就是我们通常所说的JTAG加载模式。
所有的FPGA芯片都有三个或四个加载模式配置管脚,通过配置MESL[0..3]来选取不同的加载模式。
首先来介绍下PS加载模式,各个厂商FPGA产品的PS加载端口定义存在一些差异,下面就对目前主流的三个FPGA厂商Altera, Xilinx,Lattice的PS加载方式进行一一介绍。
Altera公司的FPGA产品PS加载接口如下图所示。
1).CONFIG_DONE:加载完成指示输出信号,I/O接口,高有效,实际使用中通过4.7K电阻上拉到VCC,使其默认状态为高电平,表示芯片已加载完毕,当FPGA正在加载时,会将其驱动为低电平。
xilinxfpga引脚功能详细介绍注:技术交流⽤,希望对⼤家有所帮助。
IO_LXXY_# ⽤户IO引脚XX代表某个Bank内唯⼀的⼀对引脚,Y=[P|N]代表对上升沿还是下降沿敏感,#代表bank 号2.IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在⽤户IO的基本上添加⼀个或多个以下功能。
Dn:I/O(在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据⼝。
在从SelectMAP读反馈期间,如果RDWR_B=1,则这些引脚变成输出⼝。
配置完成后,这些引脚⼜作为普通⽤户引脚。
D0_DIN_MISO_MISO1:I,在并⼝模式(SelectMAP/BPI)下,D0是数据的最低位,在Bit-serial模式下,DIN是信号数据的输⼊;在SPI模式下,MISO是主输⼊或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第⼆位。
D1_MISO2,D2_MISO3:I,在并⼝模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs。
An:O,A[25:0]为BPI模式的地址位。
配置完成后,变为⽤户I/O⼝。
AWAKE:O,电源保存挂起模式的状态输出引脚。
SUSPEND是⼀个专⽤引脚,AWAKE是⼀个多功能引脚。
除⾮SUSPEND模式被使能,AWAKE被⽤作⽤户I/O。
MOSI_CSI_B_MISO0:I/O,在SPI模式下,主输出或者从输⼊;在SelectMAP模式下,CSI_B是⼀个低电平有效的⽚选信号;在SPI*2或者SPI*4的模式下,MISO0是SPI总线的第⼀位数据。
FCS_B:O,BPI flash 的⽚选信号。
FOE_B:O,BPI flash的输出使能信号FWE_B:O,BPI flash 的写使⽤信号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为⾼电平CSO_B:O,在并⼝模式下,⼯具链⽚选信号。
工程师必须要知道的FPGA引脚信号分配原则
工程师必须要知道的FPGA引脚信号分配原则
现在的FPGA正变得越来越复杂,向引脚分配信号的任务曾经很简单,现在也变得相当繁复。
下面这些用于向多用途引脚指配信号的指导方针有助于设计师根据最多到最少的约束信号指配原则提前考虑信号指配,并减少反复的次数。
这里有一个前提,即假定设计师已经根据设计的大概规模和信号要求确定了目标器件范围和型号。
对以下每一步都应在考虑单极信号前优先考虑差分对信号。
最先指配那些只能在特定引脚上工作的特殊信号,正常情况下是指串行I/O信号和全局时钟信号。
其次指配大型和/或高速信号总线,特别是那些要跨越多个库或区域的信号。
如果总线需要局部时钟,那幺就要考虑具有更多局部时钟引脚的库或区域,并先指配局部时钟。
如果针对FPGA器件采用了多种I/O标准,那幺设计师还必须先考虑将I/O信号映射到库/区。
这一步需要慎重考虑,因为许多I/O标准和参考电压是不兼容的。
一些I/O标准要求在特殊引脚上输入参考电压,使得这些引脚不可再用于一般用途。
将高速输出和双向信号分开指配在一定程度上可避。
XilinxFPGA引脚功能具体介绍之杨若古兰创作注:技术交流用,但愿对大家有所帮忙.IO_LXXY_# 用户IO引脚XX代表某个Bank内独一的一对引脚,Y=[P|N]代表对上升沿还是降低沿敏感,#代表bank号2.IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在用户IO的基本上添加一个或多个以下功能.Dn:I/O(在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据口.在从SelectMAP读反馈期间,如果RDWR_B=1,则这些引脚酿成输出口.配置完成后,这些引脚又作为普通用户引脚.D0_DIN_MISO_MISO1:I,在并口模式(SelectMAP/BPI)下,D0是数据的最低位,在Bitserial模式下,DIN是旌旗灯号数据的输入;在SPI模式下,MISO 是主输入或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第二位.D1_MISO2,D2_MISO3:I,在并口模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs.An:O,A[25:0]为BPI模式的地址位.配置完成后,变成用户I/O口.AWAKE:O,电源保管挂起模式的形态输出引脚.SUSPEND是一个公用引脚,AWAKE是一个多功能引脚.除非SUSPEND模式被使能,AWAKE被用感化户I/O.MOSI_CSI_B_MISO0:I/O,在SPI模式下,主输出或者从输入;在SelectMAP模式下,CSI_B是一个低电平无效的片选旌旗灯号;在SPI*2或者SPI*4的模式下,MISO0是SPI总线的第一名数据.FCS_B:O,BPI flash 的片选旌旗灯号.FOE_B:O,BPI flash的输出使能旌旗灯号FWE_B:O,BPI flash 的写使用旌旗灯号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为高电平CSO_B:O,在并口模式下,工具链片选旌旗灯号.在SPI模式下,为SPI flsah片选旌旗灯号.IRDY1/2,TRDY1/2:O,在PCI设计中,以LogiCORE IP方式使用.DOUT_BUSY:O,在SelectMAP模式下,BUSY暗示设备形态;在位串口模式下,DOUT提供配置数据流.RDWR_B_VREF:I,在SelectMAP模式下,这是一个低电平无效的写使能旌旗灯号;配置完成后,如果须要,RDWR_B可以在BANK2中做为Vref.HSWAPEN:I,在配置以后和配置过程中,低电平使用上拉.INIT_B:双向,开漏,低电平暗示配置内存曾经被清理;坚持低电平,配置被延迟;在配置过程中,低电平暗示配置数据错误曾经发生;配置完成后,可以用来唆使POST_CRC形态.SCPn:I,挂起控制引脚SCP[7:0],用于挂起多引脚唤醒特性.CMPMOSI,CMPMISO,CMPCLK:N/A,保存.M0,M1:I,配置模式选择.M0=并口(0)或者串口(1),M1=主机(0)或者从机(1).CCLK:I/O,配置时钟,主模式下输出,从模式下输入.USERCCLK:I,主模式下,可行用户配置时钟.GCLK:I,这些引脚连接到全局时钟缓存器,在不须要时钟的时候,这些引脚可以作为惯例用户引脚.VREF_#:N/A,这些是输入临界电压引脚.当内部的临界电压不须要时,他可以作为普通引脚.当做作bank内参考电压时,所有的VRef都必须被接上.3.多功能内存控制引脚M#DQn:I/O,bank#内存控制数据线D[15:0]M#LDQS:I/O,bank#内存控制器低数据选通脚M#LDQSN:I/O,bank#中内存控制器低数据选通NM#UDQS:I/O,bank#内存控制器高数据选通脚M#UDQSN:I/O,bank#内存控制器高数据选通NM#An:O,bank#内存控制器地址线A[14:0]M#BAn:O,bank#内存控制bank地址BA[2:0]M#LDM:O,bank#内存控制器低位掩码M#UDM:O,bank#内存控制器高位掩码M#CLK:O,bank#内存控制器时钟M#CLKN:O,bank#内存控制器时钟,低电平无效M#CASN:O,bank#内存控制器低电平无效行地址选通M#RASN:O,bank#内存控制器低电平无效列地址选通M#ODT:O,bank#内存控制器内部内存的终端旌旗灯号控制M#WE:O,bank#内存控制器写使能M#CKE:O,bank#内存控制器时钟使能M#RESET:O,bank#内存控制器复位4.公用引脚DONE_2:I/O,DONE是一个可选的带有内部上拉电阻的双向旌旗灯号.作为输出,这个引脚说明配置过程曾经完成;作为输入,配置为低电平可以延迟启动.PROGRAM_B_2:I,低电平异步复位逻辑.这个引脚有一个默认的弱上拉电阻.SUSPEND:I,电源呵护挂起模式的高电平无效控制输入引脚.SUSPEND是一个公用引脚,而AWAKE是一个复用援用.必须通过配置选项使能.如果挂起模式没有使用,这个引脚接地.TCK:I,JTAG鸿沟扫描时钟.TDI:I,JTAG鸿沟扫描数据输入.TDO:O,JTAG鸿沟扫描数据输出.TMS:I,JTAG鸿沟扫描模式选择5.保存引脚NC:N/A,CMPCS_B_2:I,保存,不接或者连VCCO_26.其它GND:VBATT:RAM内存备份电源.一旦VCCAUX利用了,VBATT可以不接;如果KEY RAM没有使用,推荐把VBATT接到VCCAUX或者GND,也能够不接.VCCAUX:辅助电路电源引脚VCCINT:内部核心逻辑电源引脚VCCO_#:输出驱动电源引脚VFS:I,(LX45不成用)编程时,key EFUSE电源供电引脚.当不编程时,这个引脚的电压应当限制在GND到3.45V;当不使用key EFUSE时,推荐把该引脚连接到VCCAUX或者GND,悬空也能够.RFUSE:I,(LX45不成用)编程时,key EFUSE接地引脚.当不编程时或者不使用key EFUSE时,推荐把该引脚连接到VCCAUX或者GND,然而,也能够悬空.7.GTP 引脚MGTAVCC:收发器混合旌旗灯号电路电源引脚MGTAVTTTX,MGTAVTTRX:发送,接收电路电源引脚MGTAVTTRCAL:电阻校订电路电源引脚MGTAVCCPLL0,MGTAVCCPLL1:锁相环电源引脚MGTREFCLK0/1P,MGTREFCLK0/1N:差分时钟正负引脚MGTRREF:内部校准终端的精密参考电阻引脚MGTRXP[1:0],MGTRXN[1:0]:差分接收端口MGTTXP[1:0],MGTTXN[1:0]:差分发送端口• 1. Spartan6系列封装概述Spartan6系列具有低成本、省空间的封装方式,能使用户引脚密度最大化.所有Spartan6 LX器件之间的引脚分配是兼容的,所有Spartan6 LXT器件之间的引脚分配是兼容的,但是Spartan6 LX和Spartan6 LXT器件之间的引脚分配是不兼容的.表格 1Spartan6系列FPGA封装2. Spartan6系列引脚分配及功能胪陈Spartan6系列有本人的公用引脚,这些引脚是不克不及作为Select IO使用的,这些公用引脚包含:公用配置引脚,表格2所示 GTP高速串行收发器引脚,表格3所示表格 2Spartan6 FPGA公用配置引脚留意:只要LX75, LX75T, LX100, LX100T, LX150, and LX150T器件才有VFS、VBATT、RFUSE引脚.表格 3Spartan6器件GTP通道数目留意:LX75T在FG(G)484 和 CS(G)484中封装4个GTP通道,而在FG(G)676中封装了8个GTP通道;LX100T在FG(G)484 和 CS(G)484中封装4个GTP通道,而在FG(G)676 和 FG(G)900中封装了8个GTP通道.如表4,每一种型号、每一种封装的器件的可用IO 引脚数目不尽不异,例如对于LX4 TQG144器件,它总共有引脚144个,其中可作为单端IO引脚使用的IO个数为102个,这102个单端引脚可作为51对差分IO使用,另外的32个引脚为电源或特殊功能如配置引脚.表格 4Spartan6系列各型号封装可用的IO资本汇总表格 5引脚功能胪陈3. Spartan6系列GTP Transceiver引脚如表6所示,对LX25T,LX45T而言,只要一个GTP Transceiver通道,它的地位是X0Y0,所再Bank号为101;其他旌旗灯号GTP Transceiver的解释类似.表格 6GTP Transceiver所在Bank编号关于XILINX FPGA中VRP/VRN管脚的使用XILINX公司的Virtex系列FPGA芯片上,每个BANK都有一对VRP/VRN管脚.VRP/VRN管脚是一对多功能管脚,当一个BANK使用到某些DCI(Digitally Controlled Impedance)接口电平尺度时,须要通过该BANK的VRP/VRN管脚接入参考电阻.此时,VRN通过一个参考电阻R上拉到Vcco,VRP通过一个参考电阻R下拉到地.VRP/VRN管脚提供一个参考电压供DCI内部电路使用,DCI内部电路根据此参考电压调整IO输出阻抗与内部参考电阻R匹配.当使用到DCI级联时,仅主BANK (master)须要通过VRP/VRN提供参考电压,从BANK (slave)不须要使用VRP/VRN,从BANK的VRP/VRN管脚可当成普通管脚使用.当VRP/VRN不必于DCI功能时,可用于普通管脚.不须要VRP/VRN外接参考电阻的DCI输出接口电平尺度有:HSTL_I_DCIHSTL_III_DCIHSTL_I_DCI_18HSTL_III_DCI_18SSTL2_I_DCISSTL18_I_DCISSTL15_DCI不须要VRP/VRN外接参考电阻的DCI输入接口电平尺度有:LVDCI_15LVDCI_18LVDCI_25LVDCI_DV2_15LVDCI_DV2_18 LVDCI_DV2_25。
XilinxFPGA引脚功能详细介绍之答禄夫天创作注:技术交流用,希望对大家有所帮忙。
IO_LXXY_# 用户IO引脚XX代表某个Bank内唯一的一对引脚,Y=[P|N]代表对上升沿还是下降沿敏感,#代表bank号2.IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在用户IO的基本上添加一个或多个以下功能。
Dn:I/O(在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据口。
在从SelectMAP读反馈期间,如果RDWR_B=1,则这些引脚酿成输出口。
配置完成后,这些引脚又作为普通用户引脚。
D0_DIN_MISO_MISO1:I,在并口模式(SelectMAP/BPI)下,D0是数据的最低位,在Bit-serial模式下,DIN是信号数据的输入;在SPI模式下,MISO是主输入或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第二位。
D1_MISO2,D2_MISO3:I,在并口模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs。
An:O,A[25:0]为BPI模式的地址位。
配置完成后,变成用户I/O口。
AWAKE:O,电源保管挂起模式的状态输出引脚。
SUSPEND是一个专用引脚,AWAKE是一个多功能引脚。
除非SUSPEND模式被使能,AWAKE被用作用户I/O。
MOSI_CSI_B_MISO0:I/O,在SPI模式下,主输出或者从输入;在SelectMAP模式下,CSI_B是一个低电平有效的片选信号;在SPI*2或者SPI*4的模式下,MISO0是SPI总线的第一位数据。
FCS_B:O,BPI flash 的片选信号。
FOE_B:O,BPI flash的输出使能信号FWE_B:O,BPI flash 的写使用信号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为高电平CSO_B:O,在并口模式下,工具链片选信号。
Xilinx FPGA 引脚功能详细介绍注:技术交流用,希望对大家有所帮助。
IO_LXXY_# 用户10引脚XX代表某个Bank内唯一的一对引脚,Y=[P|N]代表对上升沿还是下降沿敏感,#代表bank 号2. IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在用户10的基本上添加一个或多个以下功能。
Dn:I/O (在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据口。
在从SelectMAP读反馈期间,如果RDWR_B=1,则这些引脚变成输出口。
配置完成后,这些引脚又作为普通用户引脚。
DO_DIN_MISO_MISO1 : I,在并口模式(SelectMAP/BPI )下,D0 是数据的最低位,在Bit-serial模式下,DIN是信号数据的输入;在SPI模式下,MISO是主输入或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第二位。
D1_MISO2,D2_MISO3 : I,在并口模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs。
An : O, A[25:0]为BPI模式的地址位。
配置完成后,变为用户I/O 口。
AWAKE : O,电源保存挂起模式的状态输出引脚。
SUSPEND是一个专用引脚,AWAKE是一个多功能引脚。
除非SUSPEND模式被使能,AWAKE被用作用户I/O。
MOSI_CSI_B_MISO0 : I/O,在SPI模式下,主输出或者从输入;在SelectMAP模式下,CSI_B 是一个低电平有效的片选信号;在SPI*2或者SPI*4的模式下,MISOO是SPI总线的第一位数据。
FCS_B: O, BPI flash 的片选信号。
FOE_B : O, BPI flash的输出使能信号FWE_B : O, BPI flash的写使用信号LDC : O,BPI模式配置期间为低电平HDC : O,BPI模式配置期间为高电平CSO_B: O,在并口模式下,工具链片选信号。
XilinxFPGA引脚功能详细介绍注:技术交流用,希望对大家有所帮助。
IO_LXXY_# 用户IO引脚XX代表某个Bank内唯一的一对引脚,Y=[P|N]代表对上升沿还是下降沿敏感,#代表bank 号2.IO_LXXY_ZZZ_# 多功能引脚ZZZ代表在用户IO的基本上添加一个或多个以下功能。
Dn:I/O(在readback期间),在selectMAP或者BPI模式下,D[15:0]配置为数据口。
在从SelectMAP读反馈期间,如果RDWR_B=1,则这些引脚变成输出口。
配置完成后,这些引脚又作为普通用户引脚。
D0_DIN_MISO_MISO1:I,在并口模式(SelectMAP/BPI)下,D0是数据的最低位,在Bit-serial模式下,DIN是信号数据的输入;在SPI模式下,MISO是主输入或者从输出;在SPI*2或者SPI*4模式下,MISO1是SPI总线的第二位。
D1_MISO2,D2_MISO3:I,在并口模式下,D1和D2是数据总线的低位;在SPI*4模式下,MISO2和MISO3是SPI总线的MSBs。
An:O,A[25:0]为BPI模式的地址位。
配置完成后,变为用户I/O口。
AWAKE:O,电源保存挂起模式的状态输出引脚。
SUSPEND是一个专用引脚,AWAKE是一个多功能引脚。
除非SUSPEND模式被使能,AWAKE被用作用户I/O。
MOSI_CSI_B_MISO0:I/O,在SPI模式下,主输出或者从输入;在SelectMAP模式下,CSI_B是一个低电平有效的片选信号;在SPI*2或者SPI*4的模式下,MISO0是SPI总线的第一位数据。
FCS_B:O,BPI flash 的片选信号。
FOE_B:O,BPI flash的输出使能信号FWE_B:O,BPI flash 的写使用信号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为高电平CSO_B:O,在并口模式下,工具链片选信号。
vivado管脚分配方式Vivado是Xilinx公司提供的一款全集成化的高级开发环境,用于FPGA (Field Programmable Gate Array)和SoC(System on Chip)的设计、验证和实现。
在进行FPGA设计时,管脚分配是非常重要的一步。
本文将详细讨论Vivado的管脚分配方式,包括基本概念、常用方法和注意事项。
一、引言(150-200字)FPGA设计中的管脚分配是指将逻辑电路中的输入输出信号与FPGA芯片上的物理引脚进行对应的过程。
正确的管脚分配是保证设计能够正确工作的基础。
Vivado提供了多种方法来进行管脚分配,可以根据设计需求和设计人员的经验选择合适的方式。
二、基本概念(200-300字)1. 管脚:管脚是芯片在外部世界与之交互的接口,包括输入输出引脚以及供电、时钟等特殊功能引脚。
2. 约束:管脚约束是一种描述设计元素与硬件资源之间关系的文本规范。
它包括芯片引脚和逻辑设计信号之间的映射以及时序要求等信息。
三、常用方法(700-900字)根据设计的复杂度和需求,Vivado提供了多种管脚分配的方法。
1. 自动分配(200-300字)Vivado提供了自动分配功能,通过分析设计的逻辑连接关系和芯片引脚的约束信息,自动将逻辑信号分配到合适的引脚上。
这种方式适用于简单的设计,能够快速完成管脚分配。
2. 手动分配(200-300字)对于复杂的设计,设计人员可以选择手动分配管脚。
手动分配可以更好地控制信号的布局和引脚的使用,能够满足一些特殊的设计要求。
在Vivado 中,可以通过物理视图和引脚规则编辑器来进行手动分配。
3. 约束文件(200-300字)Vivado使用约束文件来指定管脚分配的规则。
约束文件是一种以文本形式描述的设计约束规范,包括芯片引脚和逻辑信号之间的映射以及时序约束等信息。
设计人员可以在约束文件中指定每个信号的引脚位置和特性要求,并在Vivado中进行综合和实现时引用这些约束文件。
FPGA配特殊引脚的含义FPGA配特殊引脚的含义1.I/O, ASDO在AS 模式下是专用输出脚,在PS 和JTAG 模式下可以当I/O 脚来用。
在AS 模式下,这个脚是CII 向串行配置芯片发送控制信号的脚。
也是用来从配置芯片中读配置数据的脚。
在AS 模式下,ASDO 有一个内部的上拉电阻,一直有效,配置完成后,该脚就变成三态输入脚。
ASDO 脚直接接到配置芯片的ASDI 脚(第5 脚)。
2.I/O,nCSO在AS 模式下是专用输出脚,在PS 和JTAG 模式下可以当I/O 脚来用.在AS 模式下,这个脚是CII 用来给外面的串行配置芯片发送的使能脚。
在AS 模式下,ASDO 有一个内部的上拉电阻,一直有效。
这个脚是低电平有效的。
直接接到配置芯片的/CS 脚(第1 脚)。
3.I/O,CRC_ERROR当错误检测CRC 电路被选用时,这个脚就被作为CRC_ERROR 脚,如果不用默认就用来做I/O。
但要注意,这个脚是不支持漏极开路和反向的。
当它作为CRC_ERROR 时,高电平输出则表示出现了CRC 校验错误(在配置SRAM 各个比特时出现了错误)。
CRC 电路的支持可以在setting 中加上。
这个脚一般与nCONFIG 脚配合起来用。
即如果配置过程出错,重新配置.4.I/O,CLKUSR当在软件中打开Enable User-supplled start-up clock(CLKUSR)选项后,这个脚就只可以作为用户提供的初始化时钟输入脚。
在所有配置数据都已经被接收后,CONF_DONE 脚会变成高电平,CII 器件还需要299 个时钟周期来初始化寄存器,I/O 等等状态,FPGA 有两种方式,一种是用内部的晶振(10MHz),另一种就是从CLKUSR 接进来的时钟(最大不能超过100MHz)。
有这个功能,可以延缓FPGA 开始工作的时间,可以在需要和其它器件进行同步的特殊应用中用到。
5.I/O,VREF用来给某些差分标准提供一个参考电平。
2016/2/10
笔记一:分配引脚的四种方法:(Quartus II (64-bit))
1、常规方法,利用Pin Planner命令,适用于引脚使用比较少的工程,简洁方便;
2、使用.csv文件进行引脚分配:
步骤一:利用记事本新建一个.csv的格式文件,内容格式如图下图所示,然后保存;
步骤二:选择菜单栏Assignments-->Import Assignment,添加刚才生成的文件路径;
步骤三:点击OK,引脚分配完成。
注意:.csv文件保存路径不要有中文,建议保存在工程文件夹下。
3、使用.qsf文件进行引脚分配:
步骤一:在Quartus II中打开.qsf文件(系统默认生成.qsf文件,默认保存在该工程文件夹下)
步骤二:添加以下格式内容,格式如下图所示;
步骤三:点击保存,引脚分配完成。
4、使用.tcl文件进行引脚分配:
步骤一:生成.tcl文件,选择菜单栏Project-->Generate Tcl File For Project,点击OK,默认保存路径为该工程文件夹;
步骤二:添加以下格式内容,格式和.qsf文件格式一致;
步骤三:选择菜单栏Tool-->Tcl Scripts,选择生成的.tcl文件,点击Run,引脚分配完成。
说明:在实际的应用过程中,我们应该根据工程的子模块个数和引脚的使用多少来选择合适的引脚分配方式,笔者总结了以下几条:(不喜勿喷,还望多多赐教)
1、工程中使用的引脚数为个位数时,并且特别少,建议使用常规方法,利用Pin Planner 命令进行引脚分配;
2、工程中只有一个子模块时,如果引脚众多,尤其使用到数码管显示时,建议使用.tcl 文件进行引脚分配;
如图所示,.tcl文件中标识符和变量名已经给出,只需要输入对应引脚,比较方便。
在多子模块的情况下,.tcl文件中没有给出标识符和变量名,这点需要注意。
3、多个子模块,使用引脚众多的情况下,利用.tcl文件、.csv文件和.qsf文件进行引脚分配大同小异,不过个人更喜欢利
用.csv文件进行引脚分配,因为格式相对简单。