MYD-Y7Z010/007S是基于Xilinx Zynq-7000 All Programmable SoC平台的一款ARM+FPGA的嵌入式开发板。其采用的28nm工艺制程的双/单核Cortex-A9+FPGA处理器,性能高、功耗低,并通过AXI Gigabit片上总线将ARM处理器和FPGA架构完美融合,超越传统ARM+FPGA模式,实现了高度的灵活可拓展性。
最近米尔科技又推出了一款基于Xilinx Zynq-7000系列SoC的开发板MYD-Y7Z010/007S。这款开发板配置水平在MYD-C7Z010开发板与Z-turn Board之间。
MYD-Y7Z010/007S开发板是由MYC-Y7Z010/007S核心板加MYB-Y7Z010/007S底板组成,采用邮票孔连接方式,默认可选Zynq-7010处理器及Zynq-7007S处理器(即MYD-Y7Z010开发板及MYD-Y7Z007S开发板)。两个型号的不同之处在于SoC配置不一样,主要区别在处理器上,Zynq-7010是双核Cortex-A9,Zynq-7007S是单核Cortex-A9,Zynq-7010在FPGA资源方面比Zynq-7007S多一些。
具体差异见下表:
笔者收拿的板卡是MYD-Y7Z010开发板,后面内容都以MYD-Y7Z010开发板为例。
MYD-Y7Z010开箱
言归正传,开箱了。笔者是非常激动的,终于可以拆拆拆了。拆快递包裹的感觉,你懂的。
首先是包装盒,米尔科技统一的包装盒样式,看着上面发光的灯泡就知道又一次头脑风暴要开始了。
包装盒侧边是产品标签,开发板型号:MYD-Y7Z010,确认无误。
开发板用防静电袋子包装,配件也单独分开放置,防止与开发板挤压。防静电袋里还放有防潮干燥剂,米尔想的很周到。
好了,来张全家福:
官网标配清单:
- MYD-Y7Z010/007S开发板 (1PCS)
- 12V/1.25A直流电源适配器(1PCS)
- 1.5米交叉网线(1PCS)
- DB9定制接口线(1PCS)
- DVD产品光盘(1PCS)
- 专用电源转接线(1PCS)
MYD-Y7Z010开发板电源适配官网信息是12V/1.25A,但是实际收到的电源为冠德科技12V1.5A电源适配器。
MYD-Y7Z010开发板为工业级开发板,电源接口使用的是工业绿色端子接插件,方便与工业设备连接调试,但是电源适配器为圆形DC插口,为了匹配,米尔配了一根转接线方便上电。
MYD-Y7Z010开发板设计了隔离的RS232、RS485、CAN接口,通过一个DB9接口引出。开发板配备了一根DB9转2.54mm杜邦端子的排线。同时还在排线上贴了网络名称标签,方便识别。作为工业级开发板,没有将RS485与CAN接口设计为绿色工业端子接口,可能会对连接其他工业设备带来一定麻烦,毕竟除了学习板,好多设备都不是能方便地直接用杜邦线连接。
好了,配件介绍完,接下来主角该亮相了。MYD-Y7Z010开发板长153mm宽80mm,大小适中。板卡采用邮票孔核心板加底板的连接方式,稳定抗震性能好。核心板长75mm宽50mm,核心板为10层PCB,底板为4层PCB,都采用无铅沉金工艺,质感十足。
看了正面,接下来看看背面,相对正面,背面器件较少,主要为板卡的输入电源转换电路和隔离RS232、RS485和CAN通信电路。通过背面,我们会发现,核心板的底面是没有器件的,所以底板不需要开窗露出核心板底面的阻容器件。这样的设计方便了底板设计时不用开窗减少走线路径。但芯片引脚的去耦电容势必会布的远离芯片引脚,可能会对抗干扰能力产生一定影响。
搭建一套完整的开发环境,必须要一根TTL电平的USB转UART调试线(需自备),还可以自备SD一张、Xilinx下载线等。米尔还开发一块扩展板MYD-Y7Z010 / 007S IO Cape,可以方便扩展出HDMI、Camera、LCD Touchscreen、Pmod等接口。这些接口连接着Zynq SOC芯片的FPGA部分,只可惜这块扩展板需要自己单独购买,不在MYD-Y7Z010的套件之内。
开发板配套光盘中的资料齐全,分类方式延续了米尔的一贯风格。用户手册提供中英文两个版本各五份。
MYD-Y7Z010详细硬件分析
开发板最大特点就是有3路千兆网口和隔离的RS232、RS485与CAN接口,板卡的工程取名叫POWERLINK,真是名副其实。实时通信技术Ethernet POWERLINK 是一项在标准以太网介质上,用于解决工业控制及数据采集领域数据传输实时性的最新技术。为了实现最低100uS的延迟,一般使用FPGA来实现。3路千兆网口一路直接连Zynq SOC的Cortex-A9部分,另外两路连接着FPGA部分,可做为Ethernet POWERLINK网口。
开发板正面资源功能标注图如下:
开发板背面功能标注图如下:
隔离RS485、RS232、CAN接口电路部分做了初级加TVS和滤波电感防护器件的设计。满足开发时隔离通讯调试应该是没问题的,但是如果要使用在实际工业现场,还是需要参考更加严酷的防护电路设计与PCB设计为好。
开发板功能结构框图如下所示:
再来一张核心板的靓照:
主要器件及厂家一览表:
型号
器件类型
厂家
XC7Z010
ARM+FPGA SOC
Xilinx
MT41K128M16JT-125IT ×2
DDR3L 2颗 共512MB
MICRON
MTFC4GACAJCN-4M IT
EMMC 4G
MICRON
25Q28FVEG
QSPI FLASH 16MB
WINBOND
KSZ9031RN ×3
千兆PHY
MICREL
MP2143 ×4
5.5V3A 降压器
MPS
TPS200
3A DDR终端稳压器
TI
CAT823-D
硬件看门狗
ON Semiconductor
USB3320C
USB2.0收发器
Microchip
TXS02612
SDIO端口扩展器
TI
TPS54240
42V输入2.5A降压器
TI
ISO3082
RS485隔离收发器
TI
ISO1050
CAN隔离收发器
TI
ADM3251
RS232隔离收发器
ADI
TXS0102DCTR ×4
电平转换器
TI
HY911261C
汉仁带变压器千兆双网口
HanRun
HY911130A
汉仁带变压器千兆单网口
HanRun
B0505S-1W ×2
金升阳5V1W隔离电源模块
MORNSUN
通过以上器件列表,可以看出MYD-Y7Z010开发板都使用了一线大厂的工业级器件,质量肯定没得说,杠杠的。
美中不足的就是开发板电源电路没有做防反接处理。由于使用绿色工业端子接口,板卡上还没有正负极标识,在工业调试现场,容易误操作,接反电源烧坏板子。使用时要特别小心、特别小心、特别小心,重要的事情说三遍。
MYD-Y7Z010上电测试
MYD-Y7Z010开发板出厂时就已经烧写好了系统程序文件,上电就能运行。需要注意的是把拨码开关SW1启动模式配置为QSPI启动。
同时需要使用一根USB转UATRT的TTL电平转接线连接到调试串口,使用PC终端进行调试。
板卡上电以后通过终端键入shell命令查看系统信息。开发板用户名为“root”,没有密码。可以看到MYD-Y7Z010开发板的Linux内核系统版本是3.15.0赛灵思定制。CPU为双核,最高主频667MHz。开发板使用的是EXT4文件系统,EMMC大小为4G,在这里我们没有看到QSPI FLASH,说明系统从QSPI FLASH启动后将文件系统挂载到了EMMC,程序在EMMC和DDR中执行。同时笔者还插入了16G U盘和16G的SD卡。
使用ifconfig -a 命令查看网络信息,可以看到有CAN总线和3个网卡。其中eth0是连接的Cortex-A9,eth1和eth2连接着FPGA部分。默认都没有设置IP地址,需要配置以后才能使用。同时系统启动以后没有添加telnet服务,需要安装后才能使用。
如上图红框内容所示,板卡上电以后一段时间会打印出一条EXT4文件系统错误信息,有可能与文件系统挂载过程中的错误有关,板卡在使用过程中不受影响,不过对于有强迫症的朋友那可有点闹心了,居然有错误提示。米尔需要优化一下。下图为挂载警告提示。
在/sys/class/leds/目录下已经有LED操作的驱动,可以直接使用echo命令写1和写0来控制灯的亮灭。
接着将开发板eth0网口的IP地址配置在PC机的同一网段,启动PC端FTP服务器,在开发板终端里使用wget命令,从PC FTP服务器端口下载一个名为“112.mkv”的视频文件,文件大小为1448M,经过两分钟左右,文件下载完毕,如下图所示。
下图是整个传输过程中在电脑端使用NetMeter网络速度监测软件监控的实时网速情况。从图中可以看到网速会有跳变,但多数情况下速度保持在100Mbps左右。当然这个速度不是最佳状态,和PC电脑也很有关系,但是能够反映出一般正常使用时的情况。
测试完网口eth0,接下来简单测试一下网口eth1和eth2连通性。使用网线将PC网口与eth1连接起来。
然后配置eth1 IP为192.168.31.21,PC IP为192.168.31.207。
通过PC ping 网口1 大小为40960字节的包,无丢失。连接正常。
使用网线将PC网口与eth2连接起来。
然后配置eth2 IP为192.168.31.22,PC IP为192.168.31.207。
通过PC ping 网口2 大小为40960字节的包,无丢失。连接正常。
MYD-Y7Z010开发板使用的开发环境是Xilinx_Vivado_SDK2017.1,资料光盘中分别提供了linux和FPGA的程序源码例程。
下图为MYD-Y7Z010开发板提供的Linux开发相关源码驱动信息:
下图为MYD-Y7Z010开发板提供的FPGA参考设计相关信息:
小结
在硬件方面MYD-Y7Z010开发板配有4G eMMC,512M内存,双核A9,28K逻辑单元,做工精良、高品质工业级器件用料十足。三个千兆网口能够满足工业以太网低延迟高实时性的要求。同时使用了隔离的RS23、RS485和CAN接口,使开发板抗噪效果更好。虽然也有像没电源正负极标识的不足,但是还是一块不错的硬件开发板。
在软件方面,提供了基本的例程和源码,能够满足开发使用。
资料方面,有详细的Vivado配置编译烧写教程和板卡说明书。但讲述FPGA资源编程的内容较少,怎样高效地将ARM和FPGA通过AXI总线配合起来使用,发挥Zynq-7000系列SoC最大特性与优势的资料较少。MYD-Y7Z010开发板可以从原理图工程命名为PowerLink就知道,米尔主要意图就是面向Ethernet POWERLINK工业以太网,然后资料中这部分并没有具体介绍,也没有相关例程代码说明,有点很遗憾。希望米尔能够将这部分资料后续分享出来,造福大众。
总的来说,这个板子学习资料偏少,如果是初学者想学习FPGA相关技术知识,可能不太合适,建议使用小脚丫开发板进行学习。但是这个板子用料扎实做工可靠,3X千兆网口和带隔离的RS23/RS485/CAN等配置,很适合工业以太网领域专业开发者使用。
MYD-Y7Z010/007S是基于Xilinx Zynq-7000 All Programmable SoC平台的一款ARM+FPGA的嵌入式开发板。其采用的28nm工艺制程的双/单核Cortex-A9+FPGA处理器,性能高、功耗低,并通过AXI Gigabit片上总线将ARM处理器和FPGA架构完美融合,超越传统ARM+FPGA模式,实现了高度的灵活可拓展性。
最近米尔科技又推出了一款基于Xilinx Zynq-7000系列SoC的开发板MYD-Y7Z010/007S。这款开发板配置水平在MYD-C7Z010开发板与Z-turn Board之间。
MYD-Y7Z010/007S开发板是由MYC-Y7Z010/007S核心板加MYB-Y7Z010/007S底板组成,采用邮票孔连接方式,默认可选Zynq-7010处理器及Zynq-7007S处理器(即MYD-Y7Z010开发板及MYD-Y7Z007S开发板)。两个型号的不同之处在于SoC配置不一样,主要区别在处理器上,Zynq-7010是双核Cortex-A9,Zynq-7007S是单核Cortex-A9,Zynq-7010在FPGA资源方面比Zynq-7007S多一些。
具体差异见下表:
笔者收拿的板卡是MYD-Y7Z010开发板,后面内容都以MYD-Y7Z010开发板为例。
MYD-Y7Z010开箱
言归正传,开箱了。笔者是非常激动的,终于可以拆拆拆了。拆快递包裹的感觉,你懂的。
首先是包装盒,米尔科技统一的包装盒样式,看着上面发光的灯泡就知道又一次头脑风暴要开始了。
包装盒侧边是产品标签,开发板型号:MYD-Y7Z010,确认无误。
开发板用防静电袋子包装,配件也单独分开放置,防止与开发板挤压。防静电袋里还放有防潮干燥剂,米尔想的很周到。
好了,来张全家福:
官网标配清单:
- MYD-Y7Z010/007S开发板 (1PCS)
- 12V/1.25A直流电源适配器(1PCS)
- 1.5米交叉网线(1PCS)
- DB9定制接口线(1PCS)
- DVD产品光盘(1PCS)
- 专用电源转接线(1PCS)