通用型FPGA开发板设计Word文档下载推荐.docx
《通用型FPGA开发板设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《通用型FPGA开发板设计Word文档下载推荐.docx(45页珍藏版)》请在冰豆网上搜索。
(3)FPGA内部有丰富的触发器和I/O引脚。
(4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。
(5)FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。
可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。
FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。
用户可以根据不同的配置模式,采用不同的编程方式。
加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。
掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。
FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。
当需要修改FPGA功能时,只需换一片EPROM即可。
这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。
因此,FPGA的使用非常灵活。
2.3FPGA的配置模式
FPGA有多种配置模式:
并行主模式为一片FPGA加一片EPROM的方式;
主从模式可以支持一片PROM编程多片FPGA;
串行模式可以采用串行PROM编程FPGA;
外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。
如何实现快速的时序收敛、降低功耗和成本、优化时钟管理并降低FPGA与PCB并行设计的复杂性等问题,一直是采用FPGA的系统设计工程师需要考虑的关键问题。
如今,随着FPGA向更高密度、更大容量、更低功耗和集成更多IP的方向发展,系统设计工程师在从这些优异性能获益的同时,不得不面对由于FPGA前所未有的性能和能力水平而带来的新的设计挑战。
2.4FPGA开发板
FPGA开发板就是把FPGA芯片以及基于FPGA芯片而设计的各种外围配置电路集成在一块板子上以满足一定功能的电路板。
根据要求的不同可以开发出不同功能,不同用途的板子。
我们可以设计作于学习用途的开发板,学生可以编程对FPGA芯片进行电路配置,结合外围电路完成一定的功能,以加强对电路系统知识的认识。
第3章EP1C20F324C8芯片介绍
这个通用型FPGA开发板我们用的芯片是Altera公司生产的属于低功耗cyclone系列的芯片,型号是EP1C20F324C8。
3.1EP1C20F324C8芯片简介
EP1C20F324C8是属于Altera公司的Cyclone®
系列FPGA芯片,Cyclone®
系列FPGA从根本上针对低成本进行设计,它具有低成本和低功耗的特点。
这些低成本器件具有专业应用特性,例如嵌入式存储器、外部存储器接口和时钟管理电路等。
Cyclone系列FPGA是成本敏感大批量应用的最佳方案。
3.2芯片的技术资料
EP1C20F324C8芯片的特征如下:
(1)2,910to20,060LEs
(2)Upto294,912RAMbits(36,864bytes)
(3)Supportsconfigurationthroughlow-costserialconfigurationdevice
(4)SupportforLVTTL,LVCMOS,SSTL-2,andSSTL-3I/Ostandards
(5)Supportfor66-MHz,32-bitPCIstandard
(6)Lowspeed(311Mbps)LVDSI/Osupport
(7)UptotwoPLLsperdeviceprovideclockmultiplicationandphaseshifting
(8)Uptoeightglobalclocklineswithsixclockresourcesavailableperlogicarrayblock(LAB)row
(9)Supportforexternalmemory,includingDDRSDRAM(133MHz),FCRAM,andsingledatarate(SDR)SDRAM
(10)Supportformultipleintellectualproperty(IP)cores,includingAltera(MegaCore)functionsandAlteraMegafunctionsPartnersProgram(AMPPSM)megafunctions
该开发板用的是具有324个引脚的EP1C20F324C8芯片,它采用BGA封装形式,长19mm,宽19mm,高1mm,面积361平方毫米。
I/O口电平是3.3伏,内部逻辑电平是1.5伏,拥有两个锁相环,最大用户I/O口是249个。
图3-1是EP1C20F324C8芯片的平面图:
图3-1EP1C20F324C8芯片的平面图
3.3芯片的端口及功能分析
表3-1列出芯片的管脚名称及功能描述。
表3-1EP1C20F324C8芯片端口详情
管脚名称
管脚类型(第一,第二,第三功能)
管脚描写
VCCIO[1..4]
电源端
这是第1到第4芯片边的I/O口电压供应端脚,能向每个片边提供不同的电压标准,VCCIO向所有标准I/O口的输出缓存器提供电源,也向;
LVTTL,LVCMOS等输入缓存器提供1.5伏,1.8伏,2.5伏的电压,和标准的PCII/O提供3.3伏的电压。
VCCINT
这是内部逻辑电压供应管脚,它也向LVDS,SSTL2,SSTL3标准I/O口的输入缓存器提供电压。
VREF[1..2]B[1..4]
I/O口,输入端
向4个芯片边提供输入基准电压,当有一片边I/O口需要基准电压时,它就被用作那个片边的基准电压端,否则它就可用作I/O口而闲置着。
VCCA_PLL[1..2]
PLLs[1..2]的模拟电压,即使不使用,设计者也要把它接到1.5伏电压。
GNDA_PLL[1..2]
接地端
PLLs[1..2]的模拟地端,设计者能够把它接到板上的地端。
GNDG_PLL[1..2]
PLLs[1..2]的接地保护端,设计者能够把它接到板上的地端。
CONF_DONE
双向性(开—关)
它是一个专用配置端,不能作为用户的I/O口使用。
·
nSTATUS
nCONFIG
输入端
配置控制引脚:
由0-1的跳变开始配置,由1-0跳变则复位器件;
当设定本管脚为0时,所有I/O为三态。
DCLK
PS模式为输入,AS模式为输出。
在被动模式下,他作为外部时钟源输入端,在主动模式下,它是内部时钟输出端,这是一个专用配置端。
DATA0
专用结构数据输入端。
nCE
低电平芯片启动动端,芯片启动输入端,用于检测被激活的器件,当它为低电平时相应的器件被激活,当它为高电平时,相应的器件被禁用。
nCEO
输出端
向已经完成配置的器件输出低电平,在多器件配置时,它与nCE配合使用。
ASDO
I/O口,输出端
主动串行数据输出端,他被用在主动串行配置模式,由芯片控制配置和地址以及控制外面ASDO信息,在被动模式下,它可作为用户I/O口使用。
nCSO
激活和禁止一序列配置器件的片选输出端,他被用在主动串行配置模式,由芯片控制配置和激活序列配置器件通过驱动nCSO低电压,在被动配置时,它可作为用户I/O口使用。
CRC_ERROR
高电平有效信号时,表明检错电路检测到SRAM配置出现错误,当CRC检错电路被激活时该端脚是可选的和习惯用的。
INIT_DONE
这是一个双用途管脚,没被启用为INIT_DONE时,它可以用作用户I/O口使用,
CLKUSR
可选的用户时钟输入端,使一个或多个器件同时初始化,经过配置后,它也可用作用户I/O口使用。
DEV_CLRn
这是一个复用端脚,他能够改写所有已知的寄存器,当它由低电平驱动时,所有寄存器都被清零。
由高电平驱动时,所有寄存器都处于程序控制状态。
DEV_OE
这是一个复用端脚,能够改写器件的三态模式,当这个管脚由低电平驱动时,所有I/O都处于三态,高电平驱动时,所有I/O在正常的程序控制状态。
MSEL[1..0]
设置器件的状态模式,是一个专用的模式状态控制端。
MSEL1MSEL0配置模式
00串行配置或使用配置器件模式10并行同步模式
11并行异步模式
TMS
模式选择输入端
这是一个专用的JTAG输入口。
TDI
测试数据输入端
TCK
时钟输入端
TDO
测试数据输出端
CLK0
输入端,LVDS输入端
专用的全局时钟输入端,它的复用功能是LVDSCLK1p,用于PLL1的微分输入端。
CLK1
专用的全局时钟输入端,它的复用功能是LVDSCLK1n,用于PLL1的微分输入端。
CLK2
专用的全局时钟输入端,它的复用功能是LVDSCLK1p,用于PLL2的微分输入端。
CLK3
输入端,LVDS输入端
专用的全局时钟输入端,它的复用功能是LVDSCLK1n,用于PLL2的微分输入端。
DPCLK[7..0]
I/O口
复用时钟口,它能够和全局时钟网络连接,他可被用于高电平输出控制信号,例如时钟,clears,IRDY,TRDY,或者DQS信号,它们都可以用在用户I/O口使用。
PLL1_OUTp
来自PLL1的外部时钟输出,它可用作微分或单端I/O口,未用PLL1外部时钟输出时,它可用作用户I/O口使用。
PLL1_OUTn
来自PLL1的外部时钟输出负端接脚,当时钟是单端输出时,它可用作用户I/O口使用。
PLL2_OUTp
来自PLL2的外部时钟输出,它可用作微分或单端I/O口,未用PLL2外部时钟输出时,它可用作用户I/O口使用。
PLL2_OUTn
来自PLL2的外部时钟输出负端接脚,当时钟是单端输出时,它可用作用户I/O口使用。
LVDS[0..128]p
I/O,LVDS收发端
0到128的复用LVDSI/O通道,它可用作收发与LVDS兼容的信号,带p后缀的是差分信道的正端信号,如果不用于LVDS的接口连接,它也可用作用作用户I/O使用。
LVDS[0..128]n
0到128的复用LVDSI/O通道,它可用作收发与LVDS兼容的信号,带n后缀的是差分信道的负端信号,如果不用于LVDS的接口连接,它也可用作用作用户I/O使用。
LVDSCLK1p
向PLL1的复用LVDS时钟输入端,如果向PLL1的差分输入没必要,它可以用作时钟CLK0的输入端。
LVDSCLK1n
向PLL1的复用LVDS时钟输入端,如果向PLL1的差分输入没必要,它可以用作时钟CLK1的输入端。
LVDSCLK2p
向PLL2的复用LVDS时钟输入端,如果向PLL2的差分输入没必要,它可以用作时钟CLK2的输入端。
LVDSCLK2n
向PLL2的复用LVDS时钟输入端,如果向PLL2的差分输入没必要,它可以用作时钟CLK3的输入端。
DQS[0..1][L,R,T,B]
外部存储器的可选的数据选通接口,它也可以作为DPCLK接口,所有,DQS信号就可以接到全局时钟网络,一个可编程的延时信道把DQS信号改变90°
或者72°
。
DQ[0..7][L,R,T,B]
外部存储器的可选数据信号接口。
DM[0..1][L,R,T,B]
外部存储器的可选数据信号屏蔽接口。
第4章FPGA开发板原理图设计
4.1FPGA开发板设计目标
1.具有4位数码管功能(可做动态扫描及静态显示实验)。
2.具有8位LED发光二极管功能(可做流水灯实验)。
3.具有蜂鸣器功能(可做开发板发声实验)。
4.具有4*4矩阵键盘功能(可做键盘检测实验)。
5.具有四个独立按键开关功能(可做按键开关相关的实验)。
6.具有复位功能(可用于复位芯片)。
7.具有电源供电电路,电平转换适应和稳压电路,电源滤波电路(为系统供应电源)。
8.具有时钟电路。
9用EPCS4作为片外静态存储器(用于存放FPGA芯片的工作配置程序)。
10.MAX232芯片RS232通讯接口(可以做为与计算机通迅的接口同时也可做为开发板下载程序的接口)。
11.具有JTAG配置接口。
12.具有ATERA_AS芯片(用于配置FPGA芯片的工作模式)。
4.2FPGA开发板结构框图
图4-1是开发板的结构框图
图4-1FPGA开发板结构框图
4.3子模块原理图设计
画电路原理图是每个电子技术人才必须掌握的一门技术,画电路原理图本身就是设计电路,设计的结果是一张原理图,元件列表和原理图网络表。
原理图网络表是画电路板图的基础。
若是从最终结果是得到电路板图的角度来看原理图,则画原理图的目的就是画电路板而不是原理图本身。
4.3.1电源电路及原理图设计
开发板的工作需要有电源供应,我们由芯片手册得知,该FPGA的I/O口基准电压是3.3伏,内部逻辑使用电压是1.5伏。
因此,我们需要对输入电压进行电平转换,把输入5伏或者9伏的电压转换为3.3伏和1.5伏的电压,并且具有稳压功能。
这里我们选用的稳压芯片是深圳微雪电子有限公司生产的稳压芯片AMS1085,其中,我们选用固定输出3.3伏电压的芯片AMS1085-3.3作为3.3伏电压供应来源,选用可调输出电压的芯片AMS1085-ADJ作为1.5伏电压供应来源。
AMS1085CM-3.3的型号标识和参数如表4-1所示:
表4-1AMS1085CM-3.3的型号标识和参数
AMS1085CM-3.3型号标识
AMS
AMS品牌标识
1085C
基本型号
M
封装类型,T0-263
3.3
输出电压3.3V
AMS1085CM-3.3参数特性
输出电流(A)
3
输出电压(V)
压差(V)
1.3
温度等级(℃)
0~125
AMS1085CM-3.3的封装为:
类型:
TO-263
引脚:
3
体宽:
8.382-9.398mm
长度:
9.906-10.541mm
厚度:
4.191-4.572mm
引脚间距:
2.286-2.794mm(3引脚)
AMS1085CM-3.3有三个引脚,分别是Vin,ADJ,Vout。
其中,Vin是第三引脚,接5V~12V的输入电压,Vout是第二引脚,输出3.3V电压,ADJ为接地端。
我们应该在输入和输出端加上接地电容进行滤波,其电路原理图如图4-2所示。
图4-23.3V稳压块电路原理图
C49,C55,C53和C57是滤波电容,它们使得输入和输出电压的波纹更平稳,波动更小,这样就得到更加稳定的电压值。
AMS1085CM-ADJ的型号标识和参数如表4-2所示:
表4-2AMS1085CM-ADJ的型号标识和参数
AMS1085CM-ADJ型号标识
ADJ
输出电压可调节版
AMS1085CM-ADJ参数特性
VREF(1+R2/R1)+IADJR2
AMS1085CM-ADJ的封装为:
AMS1085CM-ADJ有三个引脚,分别是Vin,ADJ,Vout。
其中,Vin是第三引脚,接3V~12V的输入电压,Vout是第二引脚,输出电压根据电阻R2和R1的比值不同而输出不同的电压值,其输出电压公式为Vout=Vref(1+R2/R1)+IadjR2,ADJ为接地端。
我们应该在输入和输出端加上接地电容进行滤波,其电路原理图如图4-3所示
图4-31.5V稳压块电路原理图
其中,R2电阻是图中的R38电阻,R1电阻是图中的R37电阻,
以上电路是属于电源电路,电源的供应关系到整个系统的正常运行,我们每时每刻都应该知道电源是否在工作,如果系统出现问题,也方便检测电路,因此,我们应该在3.3v电源输出处接上led发光二极管,上电后,发光二极管点亮,表示电源正常工作,直到关闭电源时,led发光二极管熄灭,led发光二级管被称为电源指示灯,我们通过观看电源指示灯的亮与灭,就可以很直观的看到电源的工作状态。
为了得到更小的电压波纹,更稳定的电压值,我们最好在1.5v和3.3v输出电压处再接上多个滤波电容,其电路原理图图4-4所示。
图4-41.5V和3.5V滤波电路原理图
EP1C20F324C8芯片有两个锁相环PLL1和PLL2,它们的电压输入是1.5v。
锁相环需要得到更加稳定的电压和电流,因此,我们需要对输入电流1.5v电压进行净化后在输给锁相环的电压输入口VCC_PLL1和VCC_PLL2。
其电路原理图图4-5所示。
图4-51.5V稳流滤波电路原理图
4.3.2EP1C20F324C8芯片电源接口
1、VCCIO电源口
芯片的四个边上分别有五个VCCIO口,它们接3.3v电压,分别向芯片的四个边的I/O口提供电压。
2、VCCINT电源口
EP1C20F324C8芯片有20个VCCINT电源接口,分布在芯片的四个边上,它们是芯片的内部逻辑电压供应接口。
它们接1.5v电压。
3、VREF电源口
芯片的每一个边上都有四个VREF电压接口,它们向芯片输入基准电压,如果芯片I/O口不需要输入基准电压时,它们还可以被用作I/O口使用。
4、VCCA_PLL电源口
这是锁相环的电压供应接口,即使不使用,设计者也要把它接到1.5v电压端。
5、GND接地端和GNDA_PLL接地端以及GNDG_PLL接地端
为了芯片的正常工作,我们要把它们接到电源地端。
4.3.3MSEL端口
EP1C20F324C8芯片有两个MSEL接口,分别是MSEL0和MSEL1。
它们结合使用,是芯片的模式状态控制接口,我们可以把它们分别接上电阻后接到地端,这时候是00状态,属于串行配