您的位置 首页 报告

在OpenBus体系基础上的FPGA嵌入式设计方案详解

在OpenBus系统基础上的FPGA嵌入式设计方案详解-现场可编程门阵列FPGA(Field Programmable Gate Array)是美国Xilinx公司于1984年首先开发的一种通用型用户可编程器件。FPGA内部由可绾程逻辑单元阵列、布线资源和可编程的I/O单元阵列构成,包含丰富的逻辑门、寄存器和I/O资源。目前,面向大规模可编程器件附的广泛应用,正在不断地加速电子设计技术从硬件电路设计向“软”设计的过渡。Altium Designer是传统电路设计软件Protel的高端设计版本,除了具备基本的电路原理图设计和PCB设计功能外,它的特色主要在于增强了FPGA开发功能,将电子产品的板级设计、可缩程逻辑设计和嵌入式设计开发融合在一起。

现场可编程门阵列FPGA(Field Programmable Gate Array)是美国Xilinx公司于1984年首要开发的一种通用型用户可编程器材。FPGA内部由可绾程逻辑单元阵列、布线资源和可编程的I/O单元阵列构成,包含丰厚的逻辑门、寄存器和I/O资源。现在,面向大规模可编程器材附的广泛运用,正在不断地加快电子规划技能从硬件电路规划向“软”规划的过渡。Altium Designer是传统电路规划软件Protel的高端规划版别,除了具有根本的电路原理图规划和PCB规划功用外,它的特征首要在于增强了FPGA开发功用,将电子产品的板级规划、可缩程逻辑规划和嵌入式规划开发交融在一同。

传统的FPGA体系规划多是依据硬件描绘言语VHDL或许Verilog来完结的,需求开发者具有必定的硬件描绘言语常识,并且这种办法的规划就可读性而言具有必定的复杂度。Altium Designer提出了一种体系级的规划概念——OpenBus体系,这是一种全新的体系级的FPGA规划办法。这种规划办法避开了传统的FPGA规划顶用硬件描绘言语来编程、仿真和验证等进程,以愈加笼统的办法标明了处理器与外围设备间的互联,降低了FPGA规划的复杂度,简化了FPGA规划。

AlTIum Designer的立异电子规划渠道NanoBoard 3000供给了将嵌入式智能作为规划中心的规划环境,在这个渠道上能够调试、下载FPGA嵌入式规划,完结电路硬件规划和依据“软核”处理器的嵌入式软件规划。

1 依据OpenBus体系的规划要素

1.1 OpenBus瞄体系

“OpenBus体系”是一个描绘一种运用一般总线完结整个体系内逻辑功用性“模块”衔接的术语。经过这种办法,用户能够很快地安装一个包含满意运用需求的各种功用在内的体系。具体来说,OpenBus体系是AlTIum Designer软件自带的高端IP模块,包含Connectors(衔接器)、Processors(处理器)、Memories(存储器)、Peripherals(外围设备)等,如图1的OpenBus Palette面板所示。规划时能够依据规划需求,直接在OpenBus Palette面板调用相关的IP模块,即OpenBus器材,衔接构成规划体系。但要留意的是,这些IP模块在调用后,还需求进行相应的参数装备才干运用。这种OpenBus体系的规划办法与传统的将处理器和外围电路作为元件放置在电路板上不同,它移除了一切初级其他走线和互连细节,能够快速地构建体系。

1.2 FPGA规划元件库与软件渠道树立器

除了OpenBus Palette面板中的OpenBus器材,要完结FPGA嵌入式规划,还需求运用AlTIum Designer软件中的FPGA规划元件库。这些元件库供给了FPGA规划中所需的外围器材。AlTIum Designer软件供给的常用的FPGA规划元件库有:FPGA NB3000 Port-Plugin.IntLib、FPGA Peripherial.IntLib、FPGA Generic.IntLib、FPGA Configumble Generic.IntLib、FPGA Instruments.IntLib等。

与OpenBus体系合作进行FPGA嵌入式规划的,还有软件渠道树立器SwPlatform。由于进行FPGA嵌入式规划时,FPGA器材的外围引脚常需求驱动如LED、触摸屏、扬声器等硬件设备。而要使这些硬件设备能正常作业,就要在规划中包含相应的驱动代码。这些硬件的驱动代码无需自行编写,Altium Designer的软件渠道树立器SwPlatform能够把一切衔接外设所需的低阶驱动代码整合一同。软件渠道树立器SwPlatform选用图形化办法衔接用户的运用程序与底层硬件。在进行FPGA规划时,软件渠道树立器SwPlatform能够主动地由FPGA规划的硬件部分获取底层硬件的信息。如图2所示,软件渠道树立器SwPlatform主动依据底层信息(Wrapper,栈层中的HARDWARE部分)供给关于硬件的驱动(Driver,栈层中的SOFTWARE PLATFORM部分)以及服务程序(Context,栈层中的APPLICATION CODE部分)。规划时只需重视构建规划自身的运用程序代码,不需求考虑过多的底层驱动代码。

1.3 立异电子规划渠道NanoBoard 3000

Altium Designer的立异电子规划渠道NanoBoard 3000,板载Xilinx公司的FPGA芯片Spartam XC3S 1400AN。经过USB接口,将装有Altium Designer软件的PC机与NanoBoard3000衔接,Altium Designer软件就能够与NanoBoard 3000直接通讯,下载并交互地开发和调试程序。规划进程中无需仿真环境,加快了开发流程。

NanoBoard 3000板上资源丰厚,含高档的I2S立体声体系,有板载放大器、混音器及立体声扬声器。全面的视频输出,包含S-Video、混合视频的输入输出及VGA输出。规范的存储器接口,包含IDE、Compact flash及SD内存卡。各种规范通讯接口,包含USB、Ethemet、RS-232串口、CAN、pS/2 miniDIN。别的,还有各种通用开关和LED。FPGA规划下载前需求装备管脚束缚文件,目的是让规划输入输出端口与方针FPGA器材的管脚对应起来。在Altium Designer软件中进行FPGA嵌入式规划,下载程序时,挑选主动装备束缚文件功用,就可为FPGA规划主动增加管脚束缚文件。

2 依据OpenBus体系的规划与完结

文中依据OpenBus体系规划完结了一个32位处理器TSK3000A操控LED的FPGA嵌入式工程。将嵌入式程序代码“嵌入”到TSK3000A处理器中,在软件渠道树立器SwPlatform供给底层驱动程序的基础上,用C言语编写运用程序代码,操控NanoBoard 3000开发板上的LED。一起,主动装备FPGA束缚文件,在立异电子渠道NanoBoard 3000上下载程序。程序下载调试成功后,能够看到LED的亮暗状况与嵌入式代码中预先规划的相同,标明规划是完全正确的。

2.1 OpenBus 体系规划与顶层原理图规划

在Altium Designer中新建一个FPGA工程,为工程增加原理图文件和OpenBus文件。翻开OpenBus Palette面板,调用LED Controller、衔接器Interconnect、32-bit RISC Processor TSK3000A、SBAM Controller等元件,合理装备OpenBus器材参数,完结OpenBus文件的规划,如图3所示。

将图3的OpenBus文件生成原理图符号,在规划的顶层原理图中调用。调用FPGA规划元件库中的其他外围组成电路的元器材,连线完结顶层原理图的规划,如图4所示。

2.2 软件渠道树立器SwPlatform与嵌入式代码规划

本规划中要用32-bit RISC Processor TSK3000A处理器来操控LED,需求增加LED的驱动程序,如图5所示。在器材栈中挑选Import from FPGA按钮,Altium Designer将主动查看FPGA工程,增加LED Controller和LED Controller Drive,这样就为LED器材完结了硬件驱动程序的增加。

在软件渠道树立器SwPlatform完结LED器材底层硬件驱动代码的基础上,用C言语规划运用程序代码,完结32—bit RISC Processor TSK3000A处理器操控LED器材的功用。NanoBoard 3000上有一组共8个LED(RGBUSERLEDS)。程序代码拟操控LED7的亮度值为最大值的一半,LED0的亮度每隔必定的时刻,逐步增强然后平息。程序代码清单如下:

上述程序中的led_open函数、led_set_intensity函数都能够在Altium Designer软件的常识中心面板查看到其具体意义和调用办法。

2.3 FPGA管脚映射与规划下载

FPGA规划必不可少的一步是经过束缚文件,树立规划端口与实践方针FPGA器材实在引脚之间的衔接联系。束缚文件中具体列出了端口到引脚的映射及其它相关的规划特性,如时钟分配等。装备管理器会主动翻开,显现检测到的束缚文件并增加到工程中,束缚装备文件就创立完结了。衔接NanoBoard 3000与装有Altium Designer软件的电脑,成功下载规划后,占用的资源状况,如图6所示。在NanoBoard 3000开发板上能够看到,最左边的LED7的亮度是程序中设定的数值,而最右侧的LED0亮度则是逐步改变的,LED的亮暗改变状况与规划目的共同。

3 定论

依据OpenBus体系的FPGA嵌入式规划没有硬件描绘语育的编程,OpenBus文件的规划像制作原理图相同便利,软件渠道树立器SwPlatform为FPGA嵌入式规划完结了底层的驱动代码。结合Altium Designer的立异电子渠道NanoBoard3000可片内在线调试,能及时发现规划中的问题,节省项目的研制与规划时刻。这种规划办法相对传统的FPGA规划开发,规划进程大大简化,契合FPGA嵌入式“软”规划的规划运用发展趋势。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/baogao/341254.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部