FPGA引脚分配
fpga定义引脚位置和电气标准
fpga定义引脚位置和电气标准
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文件进行引脚分配,因为格式相对简单。
FPGA引脚分配方法
第二种:建立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的引脚配置
Mercury
ACEX 1K
FLEX 10K
FLEX 6000
特殊管脚不能做用户I/O
All
双向
集电极开路
上电后被器件拉低,在5US之内,被器件释放,
(当使用一个专用配置器件时,专用加载器件将控制这个脚为低长达200ms。)这个管脚必须通过一个1K电阻上拉到VCCIO;
(APEX 20KE或APEX 20KC器件为10K欧姆)
ALTERA FPGA 特殊管脚说明、
管脚名称
器件系列
使用模式
配置模式
管脚类型
描述
MSEL0
MSEL1
APEX II
APEX 20K
Mercury
ACEX 1K
FLEX 10K
特殊管脚不能做用户I/O
All
输入
设置APEX II、Mercury、ACEX 1K、APEX 20K和FLEX 10K器件配置模式
nCS
CS
APEX II
APEX 20K
Mercury
ACEX 1K
FLEX 10K
FLEX 6000
1特殊管脚
2用户I/O
1并行异步模式
2串行异步模式
输入
片选择信号:nCS为低电平且CS为高电平器件被使能可以进行配置,如果只有一个芯片选择输入被使用,那么另外一个必须被激活,(举例来说:如果只用CS作为片选择信号则nCS必须被连接到地),在配置和初始化的过程中,nCS和CS管脚必须被处于有效状态,
Mercury
ACEX 1K
FLEX 10K
FLEX 6000
1JTAG
2用户管脚
All
输入
JTAG引脚。当被用作为用户I/O引脚的时候,
FPGA(ep2c8q208c8n)引脚中文详解
1.下载口。
JTAG下载接口,对应下载的文件是SOF文件,速度快,JTAG 将程序直接下载到FPGA中,但是掉电程序丢失,平时学习推荐使用JTAG方式,最后固化程序的时候再通过AS方式将程序下载到配置芯片中即可;AS下载接口,对应下载的是POF文件,速度相对较慢,需要重新上电并且拔掉下载线,才能工作,操作相对麻烦,不推荐学习的时候使用。
2.FPGA引脚作用:(1)VCCINT:这些都是内部逻辑阵列电源电压引脚。
VCCINT还可以给输入缓冲区供电,用于LVPECL,LVDS(常规I / O和CLK引脚),差分HSTL,差分SSTL I/ O标准。
Connect all VCCINT pins to 1.2 V. Decoupling depends on the design decoupling requirementsof the specific board.所有VCCINT引脚连接至1.2 V,去耦依赖于设计脱钩的要求的具体电路板。
(2)VCCIO[1…8]: 这些I / O电源电压引脚银行1至8。
每个组可以支持不同的电压水平。
VCCIO供电到输出缓冲区,所有的I / O标准。
VCCIO供电输入缓冲区用于LVTTL,LVCMOS,1.5-V,1.8 V,2.5 V,3.3 V PCI,和3.3-V PCI-X,差分SSTL。
差分HSTL。
和LVDS lrecular我/ OL I / O标准。
验证VCCIO电压等级连接是与QuartusII软件的引脚连接一致。
去耦取决于设计去耦的具体要求的具体电路板。
(3)VREFB[1..8]N[0..3]: 为每个I / O组的输入参考电压。
这些引脚被用来作电压参考引脚。
如果没有被用,就作为普通的I/O引脚。
(4)VCCA PLL[1..4]: 模拟电源锁相环[1 ..4].将这些引脚连接到1.2 V,即使不使用PLL。
更好的,使用一个孤立的线性电源钳工性能。
FPGA管脚分配图
169
FLAS H_ CS
156
音频 CODEC 模块(大板)
信号名称
对应 FPGA 引脚
SDIN
27
SCLK
33
CS
28
音频 CODEC 模块(小板)
信号名称
对应 FPGA 引脚
SDIN
93
SCLK
94
CS
88
音源模块
RESET
86
DATA
84
BUS Y
153
时钟源模块
信号名称 CLOCK(大板) CLOCK(小板)
216 VGA 接口(大板)
对应 FPGA 引脚
R
58
G
59
B
60
HS
61
VS 信号名称
62 VGA 接口(小板)
对应 FPGA 引脚
R
239
G
238
B
237
HS
235
VS 信号名称
236 PS/2 接口(大板上)
对应 FPGA 引脚
CLOCK
49
DATA 信号名称
82 PS/2 接口(大板下)
对应 FPGA 引脚
98
DB2
95
DB3
143
DB4
141
DB5
140
DB6
139
DB7
138
DB8
136
DB9
135
DB10
134
DB11
133
DB12
132
DB13
131
DB14
128
DB15
127
DB16
116
DB17
工程师必须要知道的FPGA引脚信号分配原则
工程师必须要知道的FPGA引脚信号分配原则
工程师必须要知道的FPGA引脚信号分配原则
现在的FPGA正变得越来越复杂,向引脚分配信号的任务曾经很简单,现在也变得相当繁复。
下面这些用于向多用途引脚指配信号的指导方针有助于设计师根据最多到最少的约束信号指配原则提前考虑信号指配,并减少反复的次数。
这里有一个前提,即假定设计师已经根据设计的大概规模和信号要求确定了目标器件范围和型号。
对以下每一步都应在考虑单极信号前优先考虑差分对信号。
最先指配那些只能在特定引脚上工作的特殊信号,正常情况下是指串行I/O信号和全局时钟信号。
其次指配大型和/或高速信号总线,特别是那些要跨越多个库或区域的信号。
如果总线需要局部时钟,那幺就要考虑具有更多局部时钟引脚的库或区域,并先指配局部时钟。
如果针对FPGA器件采用了多种I/O标准,那幺设计师还必须先考虑将I/O信号映射到库/区。
这一步需要慎重考虑,因为许多I/O标准和参考电压是不兼容的。
一些I/O标准要求在特殊引脚上输入参考电压,使得这些引脚不可再用于一般用途。
将高速输出和双向信号分开指配在一定程度上可避。
FPGA的配置引脚说明
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接口,高有效,实际使用中通过电阻上拉到VCC,使其默认状态为高电平,表示芯片已加载完毕,当FPGA正在加载时,会将其驱动为低电平。
Xilinx 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就是一个专用引脚,AW A KE就是一个多功能引脚。
除非SUSPEND模式被使能,AW AKE被用作用户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,BPIflash 得写使用信号LDC:O,BPI模式配置期间为低电平HDC:O,BPI模式配置期间为高电平CSO_B:O,在并口模式下,工具链片选信号。
Quartus-II中FPGA管脚的分配策略
word格式-可编辑-感谢下载支持Quartus II中FPGA管脚的分配策略编写:***校核:审核:二〇一年月日目录目录 (I)QUARTUS II中FPGA管脚分配策略 (1)1.FPGA管脚介绍 (1)1.1.电源管脚 (1)1.2.配置管脚 (2)1.3.普通I/O管脚 (2)1.4.时钟管脚 (2)2.FPGA管脚分配方法 (3)2.1.P IN P LANNER方式 (3)2.2.I MPORT A SSIGNMENTS方式 (3)2.3.T CL S CRIPTS方式 (6)2.4.项目组统一使用方式 (8)3.编写FPGA管脚分配文件 (9)3.1.查看PDF格式的原理图 (9)3.2.查看P RJ PCB格式的原理图 (10)4.保存FPGA管脚分配文件 (11)4.1.T CL格式或CSV格式 (11)4.2.QSF格式 (11)4.3.项目组统一使用格式 (11)附录管脚类型说明 (12)Quartus II中FPGA管脚分配策略1. FPGA管脚介绍FPGA的管脚从使用对象来说可分为两大类:专用管脚和用户自定义管脚。
一般情况下,专用管脚大概占FPGA管脚数的20% ~ 30%,剩下的70% ~ 80%为用户自定义管脚。
从功能上来说可分为电源管脚、配置管脚、时钟管脚、普通I/O管脚等。
下面以Altera公司的Cyclone IV E系列芯片EP4CE30F23C8为例,如图1所示,芯片总共包含484个芯片管脚。
图中不同颜色的区域代表不同的Bank,整个芯片主要分为8个Bank,FPGA的各个管脚分布在不同的Bank中。
其中,三角形标记的管脚为电源管脚,正三角表示VCC,倒三角表示GND,三角内部的O表示I/O管脚电源,I表示内核电源。
圆形标记的管脚为普通用户I/O管脚,可以由用户随意使用。
正方形标记且内部有时钟沿符号的管脚为全局时钟管脚。
五边形标记的管脚为配置管脚。
图1 Wire Bond1.1. 电源管脚FPGA通常需要两个电压才能运行,一个是内核电压,另一个是I/O电压。
DDR3,DIMM在FPGA上引脚分配规则,完全手打中文
FPGA BANK选择页面中的图是所选部件物理表示的架构视图。
默认情况下, MIG 将使用推荐的选择,地址/控制BANK和数据BANK是根据V6对不同频率的规则限定的。
选择您想要使用的BANK for内存接口,你用不着选择的实际的引脚。
默认情况下MIG将使用所选bank中的任意引脚for内存接口。
设计规则:∙设计最大频率:o-1 FPGA 速度级器件: 400 MHzo-2 和-3 FPGA 速度级器件: 533 MHzo只有-2 FPGA 速度等级的 CXT 设备只要303 MHz支持o低功耗V6设备只需303303 MHz∙频率超过333 MHz,只有数据宽度低于72位被容许。
频率低于333 MHz 数据宽度低于144 位被允许∙内存类型、内存部件和数据宽度被限制基于所选的 FPGA 器件、 FPGA 器件速度等级和设计频率BANK的选择规则:∙地址/控制组只能选择在内部列BANK∙第一个选定的地址/控制组将有 CK [0] 和 CK #[0] 引脚∙包含CK [0] 和 CK #[0]的BANK,会有该MMCM应用与该H-Row∙对于设计频率400 MHz或更高,只有内部列BANK被允许用于数据组的选择。
对于设计频率为400 MHz以下,内部和外部列BANK被允许数据组的选择o内部或外部列BANK被唯一的允许for选择∙位于,包含CK [0]和CK #[0] 的BANK的上面一行、下面一行和同一行,的内外侧BANK,是可用的for数据组引脚选择∙此限制被一个称为vicinity box的边界箱描述∙系统时钟组只能被选择在包含GC引脚的BANK或者位于,和分配的MMCM 同一H-ROW的内部BANK。
∙控制和状态引脚即sys_rst,error等,在系统时钟BANK中分配.∙由于采用不同的电压标准,系统时钟组与其余的设计组针脚(地址/控制组和数据组)不能共存于同一BANK。
∙一个主BANK必须被选择for每个列,假如系统时钟BANK不能作为主BANK引脚分配规则:∙地址/控制组:o包含 A、BA、 CK、 CK #、 CKE、 CS #、 RAS #、 CAS #、 WE#、 ODT, RESET #o只能选择内部列BANKo内存时钟信号(CK [0] 和 CK#[0]) 分配给差分对引脚(P Npair)o VRN/VRP 引脚若被用于引脚分配,DCI级联应该被采用,用以支持地址/时钟的 DCI 标准PS: XILINX公司的Virtex系列FPGA芯片上,每个BANK都有一对VRP/VRN管脚。
fpga引脚分配注意事项
fpga引脚分配注意事项摘要:1.FPGA引脚概述2.引脚分配原则3.引脚分配方法4.引脚分配注意事项5.总结正文:FPGA(现场可编程门阵列)是一种高度集成的硬件平台,可以根据用户需求配置和修改其内部逻辑。
FPGA的核心部分是芯片上的引脚,它们用于与外部电路连接。
合理的引脚分配对于FPGA的设计和应用至关重要。
本文将介绍FPGA引脚分配的注意事项,以帮助您更好地利用这一技术。
1.FPGA引脚概述FPGA引脚分为输入引脚、输出引脚和双向引脚。
输入引脚用于接收外部信号,输出引脚用于向外部电路输出信号,而双向引脚可在输入和输出之间切换。
在实际应用中,根据需求合理分配这些引脚非常重要。
2.引脚分配原则在进行引脚分配时,应遵循以下原则:(1)尽量保持引脚数量的平衡,避免一侧过重,以降低信号干扰和电磁辐射。
(2)优先分配关键信号,如时钟、复位、电源等,以确保系统稳定运行。
(3)分组分配引脚,有助于提高模块间的隔离度和可读性。
(4)考虑引脚的电气特性,如阻抗、驱动能力等。
3.引脚分配方法常见的引脚分配方法有以下几种:(1)按功能分配:根据模块功能,将相关引脚分组,有助于模块内信号的传输和模块间的隔离。
(2)按信号优先级分配:优先分配关键信号,再分配次要信号。
(3)按布局规划分配:考虑PCB布局,将引脚分配到合适的位置,以减小互连长度,降低信号干扰。
4.引脚分配注意事项在进行引脚分配时,还需注意以下几点:(1)避免引脚相互干扰,如高频信号与低频信号、高速信号与慢速信号等。
(2)注意电源和地引脚的布局,尽量减小环路面积,降低电磁干扰。
(3)对于高速信号,考虑采用差分布局,以提高信号传输质量。
(4)预留一定的引脚冗余,以便后续优化和调整。
5.总结FPGA引脚分配是FPGA设计中的重要环节。
合理的引脚分配有助于提高系统的稳定性、可靠性和可扩展性。
通过遵循引脚分配原则和方法,我们可以更好地利用FPGA资源,实现高性能、低功耗的硬件系统。
Xilinx 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口。
AW AKE: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引脚分配
206
A1
地址线1
PORT1_58
204
A2
地址线2
PORT1_59
202
A3
地址线3
PORT1_60
200
A4
地址线4
PORT1_61
198
A5
地址线5
PORT1_62
196
A6
地址线6
PORT1_63
194
A7
地址线7
PORT1_64
188
A8
地址线8
PORT1_65
186
A9
地址线9
附录1 FPGA(EP1C6Q240C8)端口引脚分配表
实验板标注
芯片引脚号
连接对象
连接功能
下载板接插件
标注
说明
P1
100
插孔引出未连接对象
未连接
PORT2_41
P2
99
未连接
PORT2_42
P3
98
未连接
PORT2_43
P4
97
未连接
PORT2_44
P5
96
未连接
PORT2_45
P6
95
未连接
PORT2_46
6
2_8
PORT1_31
3
拨码盘3
3_1
PORT1_32
4
3_2
PORT1_33
1
3_4
PORT1_34
2
3_8
PORT1_35
239
拨码盘4
4_1
PORT1_36
240
4_2
PORT1_37
237
4_4
FPGA配特殊引脚的含义
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用来给某些差分标准提供一个参考电平。
FPGA管脚分配时需注意的一些事项(以xilinx xc4vsx55为例)
FPGA管脚分配时需注意的一些事项(以xilinx xc4vsx55为例)FPGA管脚分配时需注意的一些事项(以xilinx xc4vsx55为例)平台:XC4VSX55 ISE10.1设计过FPGA的原理图,看FPGA的手册,说管脚的分配问题,如时钟管脚要用GC类管脚,而且单端时钟输入时要用P类型的管脚,不能用N类型管脚等等。
一直以来都没有试验过,今天试验一把,以求各种验证。
1)GC类全局时钟管脚是否可用作普通IO使用?所谓GC类管脚,就是在管脚的称是诸如IO_L1P_GC_LC等带有GC的管脚。
其实手册中说的是GC类管脚可以用作IO的,但在《Xilinx FPGA开发实用教程》(清华出版社)574页倒数第八行提到:“所有从全局时钟管脚输入的信号必须经过IBUF元,否则在布局布线时会报错”,于是今天我试了一下,将某一GC 类管脚分配给一个普通的输入口(也试验了分配给一个普通的输出口),经布局布线后,未出错。
因此得出结论:GC类全局时钟管脚可以作为普通IO使用。
(不知道是不是我对书中提到的全局时钟管脚理解有误,如果是,请网友别拍我,敬请留言指正)2)非GC类全局时钟管脚是否可以作时钟使用?其实至于说能否作为时钟使用,这里有另一层函义。
当然,如果你把一个普通IO口配置成输入口,就把它的输入信号作为时钟,那是没问题的。
但我们一般不这么做,因为时钟信号对于我们来说是一个很重要的信号,因此FPGA在内部会有特殊照顾,如果你使用FPGA传门为时钟预留的管脚,并作一些处理,那么你的时钟对于各种模块的时延是可以忽略的,因为时钟在布线时是单独走的一层,而如果你就仅用普通IO 的话,经过FPGA内部布局布线后,从它的输到,再到各个使用时钟的地方,有的线长,有的线短,它的时延将是不一样的。
这些东西还是看一些FPGA结构的内容吧。
在xilinx里有专门的DCM IP核可供调用,在ISE中执行project——>New Source——>IP(CORE Generator & Architecture Wizard)——>FPGA Features andDesign——>Clocking——>Virtex-4——>Single DCM ADV v9.1i,可得如下界面:需要特别注意的是CLKIN Source需要选择是External还是Internal,各自生成的源文件如下:==========================选择External=========================`timescale 1ns / 1psmodule clk_test(CLKIN_IN,CLKIN_IBUFG_OUT,CLK0_OUT,LOCKED_OUT);input CLKIN_IN;output CLKIN_IBUFG_OUT;output CLK0_OUT;output LOCKED_OUT;wire CLKFB_IN;wire CLKIN_IBUFG;wire CLK0_BUF;wire GND_BIT;wire [6:0] GND_BUS_7;wire [15:0] GND_BUS_16;assign GND_BIT = 0;assign GND_BUS_7 = 7'b0000000;assign GND_BUS_16 = 16'b0000000000000000;assign CLKIN_IBUFG_OUT = CLKIN_IBUFG;assign CLK0_OUT = CLKFB_IN;IBUFG CLKIN_IBUFG_INST (.I(CLKIN_IN),.O(CLKIN_IBUFG));BUFG CLK0_BUFG_INST (.I(CLK0_BUF),.O(CLKFB_IN));DCM_ADV DCM_ADV_INST (.CLKFB(CLKFB_IN), .CLKIN(CLKIN_IBUFG),.DADDR(GND_BUS_7[6:0]),.DCLK(GND_BIT),.DEN(GND_BIT),.DI(GND_BUS_16[15:0]),.DWE(GND_BIT),.PSCLK(GND_BIT),.PSEN(GND_BIT),.PSINCDEC(GND_BIT),.RST(GND_BIT),.CLKDV(),.CLKFX(),.CLKFX180(),.CLK0(CLK0_BUF),.CLK2X(),.CLK2X180(),.CLK90(),.CLK180(),.CLK270(),.DO(),.DRDY(),.LOCKED(LOCKED_OUT),.PSDONE());defparam DCM_ADV_INST.CLK_FEEDBACK = "1X";defparam DCM_ADV_INST.CLKDV_DIVIDE = 2.0;defparam DCM_ADV_INST.CLKFX_DIVIDE = 1;defparam DCM_ADV_INST.CLKFX_MULTIPLY = 4;defparam DCM_ADV_INST.CLKIN_DIVIDE_BY_2 = "FALSE";defparam DCM_ADV_INST.CLKIN_PERIOD = 16.129;defparam DCM_ADV_INST.CLKOUT_PHASE_SHIFT = "NONE";defparam DCM_ADV_INST.DCM_AUTOCALIBRATION = "TRUE";defparam DCM_ADV_INST.DCM_PERFORMANCE_MODE = "MAX_SPEED";defparam DCM_ADV_INST.DESKEW_ADJUST = "SYSTEM_SYNCHRONOUS";defparam DCM_ADV_INST.DFS_FREQUENCY_MODE = "LOW";defparam DCM_ADV_INST.DLL_FREQUENCY_MODE = "LOW";defparam DCM_ADV_INST.DUTY_CYCLE_CORRECTION = "TRUE";defparam DCM_ADV_INST.FACTORY_JF = 16'hF0F0;defparam DCM_ADV_INST.PHASE_SHIFT = 0;defparam DCM_ADV_INST.STARTUP_WAIT = "FALSE";endmodule==========================选择Internal=========================`timescale 1ns / 1psmodule clk1_test(CLKIN_IN,CLK0_OUT,LOCKED_OUT);input CLKIN_IN;output CLK0_OUT;output LOCKED_OUT;wire CLKFB_IN;wire CLK0_BUF;wire GND_BIT;wire [6:0] GND_BUS_7;wire [15:0] GND_BUS_16;assign GND_BIT = 0;assign GND_BUS_7 = 7'b0000000;assign GND_BUS_16 = 16'b0000000000000000;assign CLK0_OUT = CLKFB_IN;BUFG CLK0_BUFG_INST (.I(CLK0_BUF),.O(CLKFB_IN));DCM_ADV DCM_ADV_INST (.CLKFB(CLKFB_IN),.CLKIN(CLKIN_IN),.DADDR(GND_BUS_7[6:0]),.DCLK(GND_BIT),.DEN(GND_BIT),.DI(GND_BUS_16[15:0]),.DWE(GND_BIT),.PSCLK(GND_BIT),.PSEN(GND_BIT),.PSINCDEC(GND_BIT),.RST(GND_BIT),.CLKDV(),.CLKFX(),.CLKFX180(),.CLK0(CLK0_BUF),.CLK2X(),.CLK2X180(),.CLK90(),.CLK180(),.CLK270(),.DO(),.DRDY(),.LOCKED(LOCKED_OUT),.PSDONE());defparam DCM_ADV_INST.CLK_FEEDBACK = "1X";defparam DCM_ADV_INST.CLKDV_DIVIDE = 2.0;defparam DCM_ADV_INST.CLKFX_DIVIDE = 1;defparam DCM_ADV_INST.CLKFX_MULTIPLY = 4;defparam DCM_ADV_INST.CLKIN_DIVIDE_BY_2 = "FALSE";defparam DCM_ADV_INST.CLKIN_PERIOD = 16.129;defparam DCM_ADV_INST.CLKOUT_PHASE_SHIFT = "NONE";defparam DCM_ADV_INST.DCM_AUTOCALIBRATION = "TRUE";defparam DCM_ADV_INST.DCM_PERFORMANCE_MODE = "MAX_SPEED";defparam DCM_ADV_INST.DESKEW_ADJUST = "SYSTEM_SYNCHRONOUS";defparam DCM_ADV_INST.DFS_FREQUENCY_MODE = "LOW";defparam DCM_ADV_INST.DLL_FREQUENCY_MODE = "LOW";defparam DCM_ADV_INST.DUTY_CYCLE_CORRECTION = "TRUE";defparam DCM_ADV_INST.FACTORY_JF = 16'hF0F0;defparam DCM_ADV_INST.PHASE_SHIFT = 0;defparam DCM_ADV_INST.STARTUP_WAIT = "FALSE";endmodule比较以上两段代码,区别在于选择是External时CLKIN经过了IBUFG才到的DCM_ADV,而选择Internal 的CLKIN则直接到了DCM_AV,而IBUFG就是原语“全局时钟缓冲”单元,我们使用时要选择External,只有当我们的级联两个DCM模块时,直接与外面相连的选External,而另一个选择Internal。
fpga的特殊引脚说明
fpga的特殊引脚说明用户I/O:通用输入输出引脚。
配置管脚:MSEL[1:0] 用于选择配置模式,比如AS、PS等。
DATA0 FPGA串行数据输入,连接到配置器件的串行数据输出管脚。
DCLK FPGA串行时钟输出,为配置器件提供串行时钟。
nCSO(I/O)FPGA片选信号输出,连接到配置器件的nCS管脚。
ASDO(I/O)FPGA串行数据输出,连接到配置器件的ASDI管脚。
nCEO 下载链期间始能输出。
在一条下载链中,当第一个器件配置完成后,此信号将始能下一个器件开始进行配置。
下载链上最后一个器件的nCEO悬空。
nCE 下载链器件始能输入,连接到上一个器件的nCEO,下载链的最后一个器件nCE接地。
nCNFIG 用户模式配置起始信号。
nSTATUS 配置状态信号。
CONF_DONE 配置结束信号。
电源管脚:VCCINT 内核电压。
130nm为1.5V,90nm为1.2VVCCIO 端口电压。
一般为3.3V,还可以支持多种电压,5V、1.8V、1.5VVREF 参考电压GND 信号地时钟管脚:VCC_PLL PLL管脚电压,直接连VCCIOVCCA_PLL PLL模拟电压,截止通过滤波器接到VCCINT上GNDA_PLL PLL模拟地GNDD_PLL PLL数字地CLK[n] PLL时钟输入PLL[n]_OUT PLL时钟输出特殊管脚:VCCPD 用于寻则驱动VCCSEL 用于控制配置管脚和PLL相关的输入缓冲电压PROSEL 上电复位选项NIOPULLUP 用于控制配置时所使用的用户I/O的内部上拉电阻是否工作TEMPDIODEN 用于关联温度敏感二极管*************************************************************** ******************1/1.I/O,ASDO在AS 模式下是专用输出脚,在PS 和JTAG 模式下可以当I/O 脚来用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
80
未连接
PORT2_57
P18
79
未连接
PORT2_58
P19
78
未连接
PORT2_59
P20
77
未连接
PORT2_60
P21
76
未连接
PORT2_61
P22
75
未连接
PORT2_62
P23
74
未连接
PORT2_63
P24
73
未连接
PORT2_64
P25
68
未连接
PORT2_65
P26
67
未连接
附录1 FPGA(EP1C6Q240C8)端口引脚分配表
实验板标注
芯片引脚号
连接对象
连接功能
下载板接插件
标注
说明
P1
100
插孔引出未连接对象
未连接
PORT2_41
P2
99
未连接
PORT2_42
P3
98
未连接
PORT2_43
P4
97
未连接
PORT2_44
P5
96
未连接
PORT2_45
P6
95
未连接
PORT2_46
PORT2_66
P27
66
未连接
PORT2_67
P28
65
未连接
PORT2_68
P29
64
未连接
PORT2_69
P30
63
未连接
PORT2_70
P31
62
未连接
PORT2_71
P32
61
未连接
PORT2_72
P33
60
未连接
PORT2_73
P34
59
未连接
PORT2_74
P35
58
未连接
PORT2_75
P64
173
未连接
PORT1_77
28
晶振
CLK
时钟
PORT2_9
224
CPLD
与CPLD通讯线
PORT1_48
23
FPGA按钮
AN_IN0
AN1
PORT1_16
21
AN_IN1
AN2
PORT1_17
20
AN_IN2
AN3
PORT1_18
19
AN_IN3
AN4PORT1_1918来自AN_IN4AN5
PORT1_20
6
2_8
PORT1_31
3
拨码盘3
3_1
PORT1_32
4
3_2
PORT1_33
1
3_4
PORT1_34
2
3_8
PORT1_35
239
拨码盘4
4_1
PORT1_36
240
4_2
PORT1_37
237
4_4
PORT1_38
238
4_8
PORT1_39
236
LED发光二极管
F_LED0
指示灯0
PORT1_40
P36
57
未连接
PORT2_76
P37
56
未连接
PORT2_77
P38
55
未连接
PORT2_78
P39
54
未连接
PORT2_79
P40
53
未连接
PORT2_80
P41
50
未连接
PORT2_81
P42
49
未连接
PORT2_82
P43
48
未连接
PORT2_83
P44
47
未连接
PORT2_84
P45
46
未连接
235
F_LED1
指示灯1
PORT1_41
234
F_LED2
指示灯2
PORT1_42
233
F_LED3
指示灯3
PORT1_43
228
F_LED4
指示灯4
PORT1_44
227
F_LED5
指示灯5
PORT1_45
226
F_LED6
指示灯6
PORT1_46
225
F_LED7
指示灯7
PORT1_47
223
PORT1_66
184
A10
地址线10
PORT1_67
182
A11
地址线11
PORT1_68
181
A12
地址线12
PORT1_69
180
A13
地址线13
PORT1_70
179
A14
地址线14
PORT1_71
178
A15
地址线15
PORT1_72
177
A16
地址线16
PORT1_73
176
A17
地址线17
124
E_A5
地址线5
PORT2_21
123
E_A6
地址线6
PORT2_22
122
E_A7
地址线7
PORT2_23
121
E_A8
地址线8
PORT2_24
120
E_A9
地址线9
PORT2_25
119
E_A10
地址线10
PORT2_26
118
E_A11
地址线11
PORT2_27
117
E_A12
地址线12
PORT1_57
206
A1
地址线1
PORT1_58
204
A2
地址线2
PORT1_59
202
A3
地址线3
PORT1_60
200
A4
地址线4
PORT1_61
198
A5
地址线5
PORT1_62
196
A6
地址线6
PORT1_63
194
A7
地址线7
PORT1_64
188
A8
地址线8
PORT1_65
186
A9
地址线9
PORT2_85
P46
45
未连接
PORT2_86
P47
44
未连接
PORT2_87
P48
43
未连接
PORT2_88
P49
42
未连接
PORT2_89
P50
41
未连接
PORT2_90
P51
158
未连接
PORT1_90
P52
159
未连接
PORT1_89
P53
160
未连接
PORT1_88
P54
161
未连接
PORT1_87
PORT2_28
116
E_A13
地址线13
PORT2_29
115
E_A14
地址线14
PORT2_30
114
E_A15
地址线15
PORT2_31
113
E_A16
地址线16
PORT2_32
108
E_RAM_/RD
写使能(低电平)
PORT2_33
107
E_RAM_/WR
读使能(低电平)
PORT2_34
106
P7
94
未连接
PORT2_47
P8
93
未连接
PORT2_48
P9
88
未连接
PORT2_49
P10
87
未连接
PORT2_50
P11
86
未连接
PORT2_51
P12
85
未连接
PORT2_52
P13
84
未连接
PORT2_53
P14
83
未连接
PORT2_54
P15
82
未连接
PORT2_55
P16
81
未连接
PORT2_56
P55
162
未连接
PORT1_86
P56
163
未连接
PORT1_85
P57
164
未连接
PORT1_84
P58
165
未连接
PORT1_83
P59
166
未连接
PORT1_82
P60
167
未连接
PORT1_81
P61
168
未连接
PORT1_80
P62
169
未连接
PORT1_79
P63
170
未连接
PORT1_78
数据总线
D0
数据线0
PORT1_49
222
D1
数据线1
PORT1_50
221
D2
数据线2
PORT1_51
220
D3
数据线3
PORT1_52
219
D4
数据线4
PORT1_53
218
D5
数据线5
PORT1_54
216
D6
数据线6
PORT1_55
214
D7
数据线7
PORT1_56
208
地址总线
A0
地址线0
136
E_D5
数据线5