搜索
bottom↓
回复: 0

《新起点V2之FPGA开发指南》第三章 硬件资源详解

[复制链接]

出0入234汤圆

发表于 2021-9-26 18:28:47 | 显示全部楼层 |阅读模式
本帖最后由 正点原子 于 2021-10-30 10:17 编辑

1)实验平台:正点原子新起点V2FPGA开发板
2)  章节摘自【正点原子】《新起点之FPGA开发指南 V2.1》
3)购买链接:https://detail.tmall.com/item.htm?id=609758951113
4)全套实验源码+手册+视频下载地址:http://www.openedv.com/thread-328002-1-1.html
5)正点原子官方B站:https://space.bilibili.com/394620890
6)正点原子FPGA技术交流QQ群:712557122
1.png

2.jpg


3.png



第三章 硬件资源详解

本章,我们将向大家详细介绍正点原子新起点FPGA开发板各部分的硬件原理图,让大家对该开发板的各部分硬件原理有个深入理解,并向大家介绍开发板的使用注意事项,为后面的学习做好准备。
本章包括以下几个部分:
11.1开发板原理图详解
1.2开发板使用注意事项
1.3FPGA的学习方法

1.1开发板原理图详解
新起点FPGA开发板的主控芯片选择的是Cyclone IV E系列的EP4CE10F17C8N,该芯片是极具功耗和性价比优势,它拥有10320个逻辑单元、414Kbits的嵌入式存储资源、23个18×18的嵌入式乘法器、2个通用锁相环、10个全局时钟网络、8个用户IO BANK和最大179个用户I/O,了解器件的整体硬件资源,有助于我们在设计时根据器件提供的资源,对设计进行合理的优化,以达到最佳的性价比。
1.1.1FPGA BANK原理图
新起点的板载主控FPGA芯片共有256个IO(用户可用I/O 179个),这么多的IO如果糅杂在一起是非常混乱的,因此FPGA芯片制造厂商将这些IO分成了一个一个块,而每个块就是我们所说的IO BANK。EP4CE10F17C8N拥有8个IO BANK,各个IO BANK的供电电压可以不相同,其IO BANK原理图如下图所示:
第三章 硬件资源详解536.png

图 3.1.1 BANK1-BANK4 IO引脚连接图

第三章 硬件资源详解612.png

图 3.1.2 BANK5-BANK8 IO引脚连接图

1.1.2时钟输入
新起点FPGA开发板提供给FPGA的时钟晶振电路如下图所示:
第三章 硬件资源详解721.png

图 3.1.3 50M晶振

由上图可知,晶振提供给FPGA的时钟为50MHz,当需要其它频率的时钟时可通过FPGA内部的锁相环 PLL产生,如SDRAM的驱动时钟100MHz。
1.1.3JTAG接口
第三章 硬件资源详解862.png

图 3.1.4 JTAG接口

这里,我们采用的是标准的JTAG接法(10脚),使用FPGA TCK、FPGA TDO、FPGA TDI、FPGA TMS四个引脚来对FPGA进行下载测试。
1.1.4时钟/复位/按键
新起点FPGA开发板的时钟/复位/按键电路与FPGA的引脚连接如下图所示:
第三章 硬件资源详解1049.png

图 3.1.5 时钟/复位/按键接口

其中5个输入按键(1个复位按键,4个功能按键)的电路原理图如下图所示:
第三章 硬件资源详解1133.png

图 3.1.6 按键电路

RESET为复位按键,按下时低电平复位。KEY0~KEY3为普通按键输入,外接上拉电阻,未按下时按键端口输出高电平,按下时输出低电平。按键作为最简单的输入设备,适合在需要给系统输入控制信号的场合使用。
1.1.5LED
新起点FPGA开发板板载了4个LED,电路原理图如下图所示:
第三章 硬件资源详解1343.png

图 3.1.7 四颗LED

四个LED均由FPGA驱动,当FPGA输出高电平时电亮对应的LED灯,点亮LED灯。
1.1.6有源蜂鸣器
新起点FPGA开发板板载了一个有源蜂鸣器,电路原理图如下图所示:
第三章 硬件资源详解1484.png

图 3.1.8 有源蜂鸣器

有源蜂鸣器是指自带了震荡电路的蜂鸣器,这种蜂鸣器一上电就会自己震荡发声。而如果是无源蜂鸣器,则需要外加一定频率(2~5Khz)的驱动信号,才会发声。这里我们选择使用有源蜂鸣器,方便大家使用。
1.1.7电容触摸按键
新起点FPGA开发板板载了一个电容触摸按键,电路原理图如下图所示:
第三章 硬件资源详解1680.png

图 3.1.9 电容触摸按键

图中1K电阻是电容充电电阻,TPAD直接连接在FPGA的F8引脚上。
1.1.8数码管
新起点FPGA开发板板载了6个共阳数码管,电路原理图如下图所示:
第三章 硬件资源详解1812.png

图 3.1.10 数码管

需要注意的是,这里是用PNP作为开关控制位选信号,由PNP三极管原理可知,当基极为低电平时,三极管导通,输出高电平;如对Q1而言,当SEL0_T为低电平时,选通数码管DIG1。
1.1.9HDMI 接口
新起点FPGA开发板板载了一个标准的HDMI接口,电路原理图如下图所示:
第三章 硬件资源详解2004.png

图 3.1.11 HDMI 接口

新起点FPGA开发板板载一个HDMI接口,HDMI接口英文全称是High-Definition Multimedia Interface,即高清多媒体接口。它能够同时传输视频和音频,简化了设备的接口和连线;同时提供了更高的数据传输带宽,可以传输无压缩的数字音频及高分辨率视频信号。从上图中可以看到新起点板载的HDMI接口是只支持输出不支持输入的,因为HOT PLUG被固定接地了。另外为了保证信号的质量,在设计中还加入了两块抗干扰的芯片(D5、D6),可以有效的保证HDMI四路差分信号(一路时钟,三路数据)的输出质量。
1.1.10RGB LCD 模块接口
新起点FPGA开发板板载的RGB LCD模块接口电路如下图所示:
第三章 硬件资源详解2373.png

图 3.1.12 RGB LCD 模块接口

上图就是RGB LCD接口,采用RGB565数据格式,并支持触摸屏(电容屏)。该接口仅支持RGB接口的液晶(不支持MCU接口的液晶),目前正点原子的RGB接口LCD模块有:4.3寸(ID:4342 , 480*272和 ID:4384 , 800*480)、7寸(ID:7084, 800*480和ID:7016,1024*600)和10寸(ID:1018 , 1280*800)等尺寸可选。
图中的T_MISO/T_MOSI/T_PEN/T_CS/T_SCK用于实现对液晶触摸屏的控制(支持电阻屏和电容屏),LCD_BL用于控制LCD的背光。
1.1.11红外接收头
新起点FPGA开发板板载了一个红外接收头,电路原理图如下图所示:
第三章 硬件资源详解2752.png

图 3.1.13红外接收头

HS0038是一个通用的红外接收头,几乎可以接收市面上所有红外遥控器的信号,有了它,就可以用红外遥控器来控制开发板了。REMOTE_IN为红外接收头输出的信号,即FPGA的红外输入信号。
1.1.12单总线接口
新起点FPGA开发板板载了一个单总线接口,电路原理图如下图所示:
第三章 硬件资源详解2944.png

图 3.1.14温湿度传感器接口

该接口支持DS18B20(温度传感器)/DHT11(温湿度传感器)等单总线传感器。图中的1WIRE_DQ信号是传感器的数据线。
1.1.13EEPROM
新起点FPGA开发板板载的EEPROM电路如下图所示:
第三章 硬件资源详解3105.png

图 3.1.15 EEPROM

EEPROM芯片使用的是AT24C64,该芯片的容量为64Kb,对于我们普通应用来说是足够了的。
这里我们把A0~A2均接地,对AT24C64来说也就是把地址位设置成了0了,写代码的时候要注意这点。IIC_SCL接在FPGA的D8引脚,IIC_SDA接在FPGA的C8引脚,另外AT24C64采用IIC协议进行数据的读写,而IIC的串行时钟线SCL和数据线SDA均是开漏的,所以需要接上拉电阻。
1.1.14实时时钟
新起点FPGA开发板板载了一个实时时钟RTC,电路原理图如下图所示:
第三章 硬件资源详解3404.png

图 3.1.16实时时钟 RTC

实时时钟芯片为PCF8563,采用直接供电(VCC3.3)和备用电源供电两种供电方式,采用IIC协议进行通信,与EEPROM共用IIC引脚。备用电源供电时使用纽扣电池CR1220供电,安放在开发板底部的BAT1插座。BAT54C是一款正向电压为320mV的半导体二极管。
1.1.15环境光传感器
新起点FPGA开发板板载了一个环境光传感器,电路原理图如下图所示:
第三章 硬件资源详解3643.png

图 3.1.17环境光传感器

图中的U7就是环境光传感器:AP3216C,可以用来感应周围光线强度、接近距离和红外线强度等,该芯片采用IIC接口,与EEPROM共用IIC引脚。
1.1.16SDRAM
新起点FPGA开发板板载了SDRAM,此部分电路图如下图所示:
第三章 硬件资源详解3815.png

图 3.1.18 SDRAM

图中,U23就是SDRAM芯片,型号为W9825G6KH,容量为32M字节。该芯片可以满足FPGA的各种大内存需求场合,实现数据的缓存。
1.1.17USB串口
新起点FPGA开发板板载了一个USB串口,其原理图如下图所示:
第三章 硬件资源详解3982.png

图 3.1.19 USB转串口芯片

USB转串口,我们选择的是CH340C,是国内芯片公司南京沁恒的产品,稳定性经测试还不错,所以还是多支持下国产。
USB_TYPC座子提供CH340G和电脑通信的接口,同时可以给开发板供电,VUSB就是来自电脑USB的电源,USB_UART是本开发板的可选供电口。
1.1.18OLED/摄像头模块接口
新起点FPGA开发板板载了一个OLED/摄像头模块接口,电路原理图如下图所示:
第三章 硬件资源详解4231.png

图 3.1.20 OLED/摄像头模块接口

图中P1接口可以用来连接正点原子 OLED模块或者正点原子摄像头模块。如果是OLED模块,则CMOS_PWDN和CMOS_XCLK不需要接(在板上靠左插即可),如果是摄像头模块,除了CMOS_XCLK不需要用到其他引脚都用到了。
1.1.19SD卡接口
新起点FPGA开发板板载了一个SD卡接口,电路原理图如下图所示:
第三章 硬件资源详解4452.png

图 3.1.21 SD 卡接口

图中SD_CARD为SD卡接口。SD卡采用SPI模式驱动,非常适合需要存储大量数据的情况。
1.1.20FLASH
新起点FPGA板载的SPI FLASH电路原理图如下图所示:
第三章 硬件资源详解4596.png

图 3.1.22 SPI FLASH芯片

FLASH芯片型号为W25Q16,存储容量为16Mbit(2M字节),采用SPI协议和FPGA进行通信,可做为FPGA的配置芯片(完全兼容EPCS16芯片),以保证FPGA在重新上电后仍能继续工作。
1.1.21ATK模块接口
新起点FPGA开发板板载了一个ATK模块接口,电路原理图如下图所示:
第三章 硬件资源详解4805.png

图 3.1.23 ATK 模块接口

如图所示,U3是一个1*6的排座,可以用来连接正点原子推出的一些模块,比如:蓝牙串口模块、GPS模块、MPU6050模块等。有了这个接口,我们连接模块就非常简单,插上即可工作。
1.1.22WIRELESS模块接口
新起点FPGA开发板板载了一个WIRELESS模块接口,电路如下图所示:
第三章 硬件资源详解5007.png

图 3.1.24无线模块接口

该接口用来连接NRF24L01、SPI WIFI模块等无线模块,从而实现开发板与其他设备的无线数据传输(注:NRF24L01不能和蓝牙/WIFI连接)NRF_CE/NRF_CS/NRF_IRQ连接在FPGA的J1/G2/G1上,而另外3个SPI信号则接FPGA的F1/F3/G1。
1.1.23引出IO口
新起点FPGA开发板总共有两组主IO引出口:P6和P7。其中,P6和P7分别采用2*20排针引出,总共引出72个IO口,如下图所示:
第三章 硬件资源详解5281.png

图 3.1.25引出IO口

引出的IO口可扩展用做其他用途,例如外接AD/DA模块,双目摄像头模块等。
1.1.24FPGA 电源设计
Cyclone IV FPGA需要四组供电,分别为内核供电(VCCINT)、PLL模拟电路供电(VCCA)、PLL数字电路供电(VCCD_PLL)和IO单元供电(VCCIO)。其中,内核供电电压根据器件是否为低电压版本区分,低电压版本,内核供电为1.0V,非低电压版本供电为1.2V。PLL模拟部分供电为固定的2.5V。IO供电电压值支持1.2V、1.5V、1.8V、2.5V、3.0V、3.3V多种电平标准,即有6种可选值。Cyclone IV FPGA器件供电示意图如下:
第三章 硬件资源详解5627.png

图 3.1.26 Cyclone IV E 供电示意图

由上图可知,设计FPGA供电电源可以简单的直接分两路供电:1.2V、2.5V和3.3V。一般而言,IO单元供电电压可以根据需要灵活设计,需要注意的是BANK3不支持1.2V供电。正点原子新起点开发板FPGA供电电源电路如下图所示:
第三章 硬件资源详解5816.png

图 3.1.27 FPGA供电电源电路

由图可知,新起点开发板上的IO BANK统一用3.3V供电,以提供足够大的供电电压。另外电源引脚附近一般需要加高频滤波电容以提供平滑稳定的电压。
1.1.25电源适配器输入接口
新起点FPGA开发板由电源适配器供电的电源接口原理图如下图所示:
第三章 硬件资源详解5997.png

图 3.1.28电源适配器供电电源接口

DC_IN用于外部直流电源输入,输入电压(12V)经过U16 DC-DC芯片转换为5V电源输出,其中D3是防反接二极管,避免外部直流电源极性接反的时候,烧坏开发板。
1.1.26电源按键开关
正点原子新起点FPGA开发板的供电电源可以从电源适配器供电,也可以通过USB供电,无论通过哪种方式供电,都经过电源开关K1控制是否对开发板供电,其原理图如下图所示:
第三章 硬件资源详解6235.png

图 3.1.29电源按键开关

VBTN为电源适配器输入的12V电压经电源转换芯片转换后得到的5V电压,VUSB为通过USB 接口输入的电压。TAP1引脚为开关按键控制的向开发板输出的电源电压(VCC5)。需要特别注意的是:对于供电电流需求大的器件如LCD,当使用USB供电时,由于最大电流不超过500mA,可能会导致使用时会出现LCD闪烁的现象,如果出现此种现象,改用电源适配器供电即可。
1.1.27电压转换电路
正点原子新起点FPGA开发板提供了3.3V、2.5V、1.2V的电源电压,皆由5V电源电压转换而来,其电压转换电路原理图如下图所示:
第三章 硬件资源详解6549.png

图 3.1.30电压转换电路

当电路接通后,通过电压转换芯片得到3.3V电压,点亮电源指示灯PWR,可以通过电源指示灯 PWR判断开发板供电是否正常。
1.1.28电源输入输出接口
新起点FPGA开发板板载了两组简单电源输入输出接口,其原理图如下图所示:
第三章 硬件资源详解6716.png

图 3.1.31电源输入输出接口

图中,VOUT1和VOUT2分别是3.3V和5V的电源输入输出接口,有了这2组接口,我们可以通过开发板给外部提供3.3V和5V电源了,虽然功率不大(最大1000ma),但是一般情况都够用了,大家在调试自己的小电路板的时候,有这两组电源还是比较方便的。同时这两组端口,也可以用来由外部给开发板供电。
图中D4是TVS管,可以有效避免VOUT外接电源/负载不稳的时候(尤其是开发板外接电机/继电器/电磁阀等感性负载的时候),对开发板造成的损坏。同时还能一定程度防止外接电源接反对开发板造成的损坏。
1.2开发板使用注意事项
为了让大家更好的使用正点原子新起点FPGA开发板,我们在这里总结该开发板使用的时候尤其要注意的一些问题,希望大家在使用的时候多多注意,以减少不必要的问题。
1)USB供电电流最大500mA,且由于导线电阻存在,供到开发板的电压,一般都不会有5V,如果使用了很多大负载外设,比如4.3寸屏、7寸屏、摄像头模块等,那么可能引起USB供电不足,所以开发板如果连接大负载模块的朋友,或者同时用到多个模块的时候,建议大家使用电源适配器供电。
2)当你想使用某个IO口用作其他用处的时候,请先看看开发板的原理图,该IO口是否有连接在开发板的某个外设上,如果有,该外设的这个信号是否会对你的使用造成干扰,先确定无干扰,再使用这个IO。
3)当液晶显示白屏的时候,请先检查液晶模块是否插好(拔下来重新插试试),如果还不行,可以通过SignalTap看看LCD ID是否正常,再做进一步的分析。
至此,本手册的实验平台正点原子新起点FPGA的硬件部分就介绍完了,了解了整个硬件对我们后面的学习会有很大帮助,有助于后面的管脚约束(分配),在编写程序的时候,可以事半功倍,希望大家细读!另外正点原子开发板的其他资料及教程更新,都可以在技术论坛www.openedv.com 下载到,大家可以经常去这个论坛获取更新的信息。
1.3FPGA的学习方法
FPGA作为目前最热门的非CPU类处理器,正在被越来越多的公司选择使用。学习FPGA的朋友也越来越多,初学者可能会认为FPGA很难学,以前只学过51,或者甚至连51都没学过的,一看到FPGA就懵了。其实,万事开头难,只要掌握了方法,学好FPGA,还是非常简单的,这里我们总结学习FPGA的几个要点:
1)一款实用的开发板。
这个是实验的基础,有时候软件仿真通过了,在板上并不一定能跑起来,而且有个开发板在手,什么东西都可以直观的看到,效果不是仿真能比的。但开发板不宜多,多了的话连自己都不知道该学哪个了,觉得这个也还可以,那个也不错,那就这个学半天,那个学半天,结果学个四不像。倒不如从一而终,学完一个再学另外一个。
2)掌握方法,勤学慎思。
FPGA不是妖魔鬼怪,不要畏难,FPGA的学习和普通单片机一样,基本方法就是:
1)了解FPGA的基本结构。
学习FPGA之前需要先对FPGA的基本结构和其功能有个大概的了解,如锁相环PLL、FIFO等。需要知道PLL是用来产生不同频率的时钟,如使用SDRAM时需要产生100MHz的驱动时钟,使用ES8388(音频编解码芯片)时需要生成12MHz的时钟;FIFO用于数据的缓存和异步时钟域数据的传递等。
2)了解Verilog HDL基本语法
没有软件的硬件就如同行尸走肉一般。软件是硬件的灵魂,硬件是软件的舞台。好的软件设计才能发挥硬件的性能,而软件的精髓在于代码。学习FPGA也是这样,Verilog HDL做为一种硬件描述语言,是对数字电路的一种描述,而数字电路是并行工作的,因而在编写Verilog HDL时要有并行的思想,不同于软件设计语言,软件设计语言是由CPU统一进行处理,一条指令一条指令的串行运行,所以软件设计语言是基于串行的设计思想,因而在写Verilog HDL代码的时候要注意这种差别。另外对于Verilog HDL的基本语法是务必要掌握的,如一般常用的module/endmodule、input/output/inout、wire/reg、begin/end、posedge/negedge、always/assign、if/else、case/default/endcase/parameter/localparam等关键字要清楚它们的作用和区别。掌握了Verilog HDL的基本语法和Verilog HDL的并行设计思想后,会觉得Verilog HDL和C语言一样简单。
3)多思考,多动手。
所谓熟能生巧,先要熟,才能巧。如何熟悉?这就要靠大家自己动手,多多练习了,光看或说是没什么太多用的。只有在使用FPGA的过程中,才会一点点的熟悉,也只有动手实练,才能对FPGA有切实的感受。
熟悉了之后,就应该进一步思考,也就是所谓的巧了。我们提供了几十个例程,供大家学习,跟着例程走,无非就是熟悉FPGA的过程,只有进一步思考,才能更好的掌握FPGA,也即所谓的举一反三。例程是死的,人是活的,所以,可以在例程的基础上,自由发挥,实现更多的其他功能,并总结规律,为以后的学习和使用打下坚实的基础,如此,方能信手拈来。
所以,学习一定要自己动手,光看视频,光看文档,是不行的。举个简单的例子,你看视频,教你如何煮饭,几分钟估计你就觉得学会了。实际上你可以自己测试下,是否真能煮好?机会总是留给有准备的人,只有平时多做准备,才可能抓住机会。
只要以上三点做好了,学习FPGA基本上就不会有什么太大问题了。如果遇到问题,可以在我们的技术论坛:开源电子网:www.openedv.com 提问,论坛FPGA板块有各种主题,很多疑问已经有网友提过了,所以可以在论坛先搜索一下,很多时候,就可以直接找到答案了。论坛是一个分享交流的好地方,是一个可以让大家互相学习,互相提高的平台,所以有时间,可以多上去看看。

阿莫论坛20周年了!感谢大家的支持与爱护!!

一只鸟敢站在脆弱的枝条上歇脚,它依仗的不是枝条不会断,而是自己有翅膀,会飞。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 01:48

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表