当前位置:首页 > 工业控制 > 电子设计自动化

摘 要: 介绍了脱离仿真器直接使用外部计算机通过网口进行程序代码加载的基本原理, 讨论分析了网络接口、FPGA接口和HPI接口的访问控制等关键技术。详述了在包含CPU、FPGA和DSP的复杂系统设计方案中基于以太网加载FPGA和DSP的实现。该技术在系统工程化的应用中具有很好的前景。
关键词: CPU;以太网;FPGA;DSP;HPI;引导加载


随着嵌入式技术的发展,嵌入式系统逐渐演变为由微处理器、大规模集成电路、软件技术和各种具体的行业应用技术相结合的结果。嵌入式设备已经在航空航天、通信、电子等行业得到广泛应用。在以微处理器为核心的嵌入式应用系统中,对其中的FPGA和DSP的传统加载都是通过硬件仿真器来完成的。这在产品的初研阶段非常适用,然而在实际工程应用中各种产品组装成一个庞杂的系统时(如需对系统进行软件更新和维护时),传统的加载方式就显得极其不方便,程序代码的引导加载就需要一种更加灵活、高效的方法来实现,而基于以太网加载FPGA和DSP的实现方法能很好地解决这个难题。
本文介绍了基于以太网加载FPGA和DSP的基本原理, 并通过该技术在某嵌入式主控设计中的应用详述了在包含CPU、FPGA和DSP的复杂系统设计方案中基于以太网加载FPGA和DSP的实现, 讨论分析了网络接口、FPGA接口和HPI接口的访问控制等关键技术。
1 基于以太网加载FPGA和DSP的基本原理
基于以太网加载FPGA和DSP的实现过程为: 首先,外部计算机通过网络接口将代码传送给微处理器,并存储到微处理器的Flash存储器模块;然后,由微处理器分别通过FPGA的从串加载模式和DSP的主机引导加载(HPI接口)实现对FPGA和DSP程序代码的引导加载。
基于TCP/IP协议的以太网是目前使用最广泛的网络。网络协议通常分不同层次进行开发,每一层负责不同的通信功能。嵌入式设备通常根据微处理器的结构特点和系统需要实现的功能,将TCP/IP协议嵌入到微处理器中,从而实现嵌入式系统的网络接口功能[1-2]。
1.1 FPGA加载
FPGA常见的配置文件的加载模式有5种:主串加载模式、从串加载模式、主并加载模式、从并加载模式及JTAG加载模式。其中,JTAG加载模式在开发调试阶段使用。其余4种加载模式可分为串行加载方式和并行加载方式,而串行加载方式和并行加载方式都有主、从两种模式。由于主模式的加载同步时钟(CCLK)由FPGA提供,从模式的加载同步时钟(CCLK)由外部时钟源或者外部控制信号提供,为了方便微处理器控制加载过程,一般选择使用从串模式。
1.2 DSP加载
DSP常见的三种引导加载方式为仿真器引导加载、ROM引导加载、主机引导加载。
(1)仿真器引导主要用于调试阶段,是一种特殊的主机引导加载方式。
(2)ROM引导加载:在DSP外部复位信号被释放后,芯片处于内部复位保持状态, DSP芯片自动地通过EDMA/QDMA将外部ROM中的1 KB程序搬入地址0处。内部复位完成后,DSP开始从地址0处执行指令。
(3)主机引导加载:DSP上电复位后, I/O部分将处于激活状态,可以进行正常的通信,但DSP的内核仍处于复位状态,一直等待主机向HPI控制寄存器中的DSPINT位置1。这样,主机就可以通过HPI接口访问DSP的整个存储空间,对它们进行初始化。完成相关设置后,向DSPINT位写入1, DSP内核结束复位状态,执行地址0处的指令。
2 嵌入式数字处理系统设计与实现
2.1 硬件设计
嵌入式数字处理系统采用微处理器PowerPC作为主控CPU,主要执行网络控制等各种控制任务,其程序代码相对固定,存储在Flash中。如图1所示,选用Xilinx公司的XC3S1000和XC4VSX35这两种FPGA分别做逻辑和变频[3-4],选用两片TI公司的DSP TMS320C6416芯片完成数据处理与算法实现,这些FPGA和DSP的程序代码需实时更新[5]。

(1)网络接口设计
以太网PHY采用Marvell公司PHY协议层千兆网卡88E1111[6]。88E1111是高性能千兆以太网收发芯片,可以完成所有PHY(物理层)功能,支持全双工或半双工的10/100/1 000 Mb/s三速以太网,支持8 bit数据总线。CPU和以太网PHY、FPGA及DSP的接口基本电路如图2所示。CPU的网络接口引脚和以太网PHY的网络接口相连接,通过硬件配置模式HWCFG MODE[3:0]来确定88E1111的操作模式,从而确定需要连接的引脚,如图2所示,该设计选择了RGMII模式,以太网PHY通过网络隔离滤波器HX5008与外部以太网接口相连。

(2)FPGA接口设计
在从串模式下进行FPGA程序加载仅需要使用CCLK、PROG_B、INIT_B、DONE、DIN这5个信号引脚,微处理器使用通用IO管脚来配置FPGA。此外还需要设置M[2:0]信号以选择配置模式,根据芯片XC3S1000和XC4VSX35的模式设置其从串模式的配置均为M[2:0]=111。
(3)HPI 接口设计
引导配置引脚BEA[19∶18]决定了TMS320C6416的引导加载模式,将DSP的EMIFB接口引脚BEA[19∶18]通过上下拉电阻配置成BEA[19∶18]=01,即选择DSP为HPI加载方式。HPI接口电路如图2所示,主控CPU的数据总线、地址总线及控制I/O连接到FPGA上,DSP的HPI接口数据总线和控制线也连接到FPGA上,通过FPGA的接口逻辑设计将CPU和DSP连接起来。
2.2 软件设计
2.2.1 网络接口程序设计
(1)网络通信协议设计
网络通信协议设计主要是实现TCP/IP 协议。根据嵌入式系统结构特点和系统设计实现的功能需求,在TCP/IP 协议的基础上实现系统所需功能。
(2)网络接口的访问控制
驱动程序设计包括以太网PHY芯片的初始化、数据包的发送和接收。Freescale的MPC8377自带了三速以太网控制器ETSEC,作为以太网接口与外部的PHY芯片相连接[7]。本设计中主控CPU与PHY之间是RGMII模式接口。88E1111可以实现多种数据速率和访问控制模式,通过HWCFG MODE[3:0]确定其操作模式,设定DIS_FC为0,可以自适应地选择FIBER、COPPER接口。
Linux网络驱动程序的实现主要是在Linux内核中提供的网络设备接口及以上层次的代码基础上,移植或编写特定网络硬件的驱动程序工作,也就是完成设备驱动功能层,主要包括数据的接收、发送等控制。
2.2.2 FPGA接口程序设计
FPGA从串模式的配置过程将配置比特流载入到FPGA,有4个主要阶段: (1)清除配置内存;(2)初始化;(3)载入配置数据;(4)设备启动。其配置时序流程图如图3所示。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

利用10Base-T1L SPE取代传统的4mA-20mA和现场总线实现IIoT网络

关键字: IIoT网络 传感器 以太网

为增进大家对工业以太网的认识,本文将对工业以太网的原理、工业以太网的关键技术以及工业以太网要解决的问题予以介绍。

关键字: 以太网 工业以太网 指数

为增进大家对工业以太网的认识,本文将对工业以太网网络优势、工业以太网和IOLINK的区别予以介绍。

关键字: 以太网 工业以太网 指数

Bluespec支持加速器功能的RISC-V处理器将Achronix的FPGA转化为可编程SoC

关键字: RISC-V处理器 FPGA SoC

为无处不在的端侧设备插上AI的翅膀,AMD发布第二代Versal™ 自适应 SoC

关键字: AMD FPGA 自适应SoC AI 边缘计算

Pmod接口可以说是数字电路板的连接革命。随着科技的飞速发展,数字电路板间的通信与连接技术也在不断创新和进步。Pmod接口,作为一种新兴的数字接口标准,正逐渐成为数字电路板间通信的桥梁,为电子设备的连接和通信带来了革命性...

关键字: pmod接口 FPGA 数字电路板

近日举办的GTC大会把人工智能/机器学习(AI/ML)领域中的算力比拼又带到了一个新的高度,这不只是说明了通用图形处理器(GPGPU)时代的来临,而是包括GPU、FPGA和NPU等一众数据处理加速器时代的来临,就像GPU...

关键字: FPGA AI 图形处理器

新的IEEE汽车以太网标准不断涌现,10BASE-T1S是最新的以太网标准之一。本文讨论汽车行业影响汽车电子/电气(E/E)架构变化的发展趋势,以及新10BASE-T1S标准如何支持和推动这种新架构的部署。

关键字: 以太网 汽车电子 传感器

该解决方案采用全新 1.6T 以太网控制器 IP、经过硅验证的224G PHY IP和验证IP,助力未来基础设施的升级建设

关键字: 数据中心 芯片 以太网

模拟与混合信号事业部将提供行业领先的技术为汽车、工业和云端市场提供全面的系统解决方案

关键字: 电源管理 传感器 以太网
关闭
关闭