项目分享| 自制FPGA最小系统板(PCB可直接打板)
不想错过我的推送,记得右上角-查看公众号-设为星标,摘下星星送给我
既然购买的价格那么昂贵,不妨自己DIY一块低成本的、能够满足入门要求的,适合用于自制的小项目的FPGA最小系统板。达尔闻特邀分享者来自西北大学的余昊、惠玉皎分享了他们第一块FPGA系统板设计,板子的原理图/PCB源文件可以在“达尔闻说”微信回复:FPGA开发板,获取。
针对自己的需求可以选择不同型号的FPGA,大家可以根据下图选择适合自己的FPGA型号。
我选择的FPGA是原ALTERA公司Cyclone ⅣE系列的EP4CE6E22C8N。选它有三个最直接的理由:
价格较低,一片仅需20元左右
TQFP封装形式,方便焊接
共92个GPIO,数量刚好够用
在电子设计竞赛中常常使用FPGA与单片机配合完成赛题的要求。对于FPGA的初学者或需要使用FPGA做一些简单的小项目,这款器件是一个很好的选择。但是由于设计的是FPGA的最小系统板,大多数的外设硬件电路需要自己设计焊接,因此还需要用户有一定的硬件设计焊接基础。
以下是FPGA最小系统板的分解部分:
首先确定最小系统板的供电,设计两种供电方式:一种是通过板载的排针直接提供5V为FPGA供电,二是通过microUSB接口为板子供电。
然后该器件一共需要三种不同电压的电源:1.2V电源为逻辑器件供电,3.3V为IO接口供电,2.5V为PLL供电。这三种电源通过AMS1117系列的LDO产生。FPGA的电源部分如下图:
上图中,J1为microUSB接口,可以为板子提供5V的电源。0Ω电阻R1可以起到保险丝的作用,可以把R1替换成自恢复保险丝,如果板子发生意外短路事故可以保护板子。如果不希望设备从USB接口获取电源则不安装R1即可。2.5V、3.3V和1.2V电源分别通过三个AMS1117产生。右侧的电容阵列是用作电源的滤波。
✦ FPGA引脚与外设:
设计完电源部分后,就得考虑FPGA的引脚与外设该如何连接了。
点击可放大
时钟电路:FPGA最小系统板上最重要的就是系统的时钟源了。FPGA内部没有振荡电路,无法像单片机一样使用无源晶振作为振荡源,只能使用有源晶振,因此这里采用一个50MHz的有源晶振连接在FPGA的CLK1引脚上,电路如下。
JTAG接口:为了方便下载代码,需要留出一个JTAG接口用于通讯。
JTAG接口的几个数据引脚需要连接10kΩ的上拉、下拉电阻,没有这些电阻或连接错误会导致代码下载失败。
按键部分:在板子上一共留了3个按键,其中两个是用户自定义的按键,另一个是用于系统复位的复位按键。
LED部分:为了方便调试代码、指示运行状态等,设计了两个LED指示灯。
FLASH部分:由于FPGA内部没有非易失性的存储器,掉电无法保存代码和数据,因此需要有外置的FLASH用于存储代码和数据。
串口通信:为了方便最小系统板与电脑通信和调试,利用CH340g设计了一个USB转串口通信电路,可以通过microUSB接口与电脑进行串行通信。
由于IO101连接的是FPGA的nCEO引脚,在使用到该IO的时候,需要将nCEO设置为普通IO模式,否则在综合时会报错。
OLED:在项目制作中经常会使用到OLED,因此也预留了SPI协议的OLED接口。
GPIO:到这里原理图设计就差不多完成了,只需要把剩余的IO、电源口连接到外部的排针上就可以了。
完整的原理图可以在“达尔闻说”微信回复:FPGA开发板,获取源文件。
✦ PCB与焊接:
PCB 3D效果图:
EP4CE6E22C8N是采用TQFP封装的,这很大程度上方便了PCB的设计和手工焊接,PCB采用2层板设计,尺寸仅6.7cm×5.5cm。板子正面安装有FPGA芯片、microUSB接口、JTAG接口、LDO、按键、LED、限流电阻、一些滤波电容等,背面安装有CH340、有源晶振、FLASH一些滤波电容和上下拉电阻。
排针可以采用加长的双排母,这样不仅方便将FPGA最小系统板插在PCB上,还方便利用板子正面的排针连接逻辑分析仪等仪器外设方便调试。
值得注意的是芯片底部的散热焊盘是芯片的第145个引脚,必须焊接到地。第一次焊这块板子的时候就嫌散热焊盘在底部不好焊,偷懒没有焊上,后来程序怎么都烧不进去,上网查了资料才发现散热焊盘是必须接地的。
一块告白女朋友,饱含理工男浪漫的开发板(板上丝印为两人姓氏缩写)
最小系统板全部物料成本约在30元/块(PCB是免费打样的
接下来,我们会分享基于这块FPGA核心板实现的自制电子琴弹奏《我的祖国》等项目分享,敬请期待哦。
写在最后:作为初学者给大家分享了自己刚完成的FPGA最小系统板,希望对想入门FPGA的小伙伴有帮助。当然上文若有不妥之处,欢迎指正。欢迎加入达尔闻技术交流群,进群方式:添加妮姐微信(459888529),备注技术交流即可邀请入群。
达尔闻项目分享系列——聚焦物联网、嵌入式、AI、FPGA等热门应用技术,开源分享原理图、代码等项目方案,做你手边的知识库。
项目分享系列集锦:
嵌入式开发板的云计算平台搭建
STM32实现最简单空中鼠标
利用树莓派与Web界面远程控制家电
我们是妮mo,达尔闻创始人,只讲技术不撩汉的小姐姐。达尔闻在线教育平台旨在服务电子行业专业人士,提供技能培训视频,覆盖各细分领域热门话题,比如嵌入式,FPGA,人工智能等。并针对不同人群量身定制分层级学习内容,例如常用知识点,拆解评测,电赛/智能车/考研等,欢迎关注。
官网:www.darwinlearns.com
B站:达尔闻
QQ群:786258064