首页-达尔闻    全部    【项目分享】自制FPGA最小系统板(PCB可直接打板)

【项目分享】自制FPGA最小系统板(PCB可直接打板)

FPGA开发板价格昂贵,不妨自己DIY一块低成本的、能够满足入门要求的,适合用于自制的小项目的FPGA最小系统板。达尔闻特邀分享者来自西北大学的余昊、惠玉皎分享了他们第一块FPGA系统板设计。
收藏
  • 板子的原理图/PCB源文件:点击下载


    自从开始入手FPGA,就发现市场上的FPGA开发板都相当昂贵,价格从几百到几千不等,就连入门级的FPGA最小系统板也要数十乃至上百元。对于想入门FPGA或经常使用FPGA做一些小项目的同学可是一个不小的门槛。

    既然购买的价格那么昂贵,不妨自己DIY一块低成本的、能够满足入门要求的,适合用于自制的小项目的FPGA最小系统板。达尔闻特邀分享者来自西北大学的余昊、惠玉皎分享了他们第一块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用于存储代码和数据。

    根据官方数据手册连接flash和配置引脚上下拉电阻。

    串口通信:为了方便最小系统板与电脑通信和调试,利用CH340g设计了一个USB转串口通信电路,可以通过microUSB接口与电脑进行串行通信。

    由于IO101连接的是FPGA的nCEO引脚,在使用到该IO的时候,需要将nCEO设置为普通IO模式,否则在综合时会报错。

    OLED:在项目制作中经常会使用到OLED,因此也预留了SPI协议的OLED接口。

    GPIO:到这里原理图设计就差不多完成了,只需要把剩余的IO、电源口连接到外部的排针上就可以了。

     

     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核心板实现的自制电子琴弹奏《我的祖国》等项目分享,敬请期待哦。

    写在最后:作为初学者给大家分享了自己刚完成的FPGA最小系统板,希望对想入门FPGA的小伙伴有帮助。当然上文若有不妥之处,欢迎指正。欢迎加入达尔闻技术交流群,进群方式:添加妮姐微信(459888529),备注技术交流即可邀请入群。

Control Render Error!ControlType:productSlideBind,StyleName:Style1,ColorName:Item0,Message:InitError, ControlType:productSlideBind Error:未将对象引用设置到对象的实例。