您现在的位置:首页 > 技术支持技术支持

基于Xilinx FPGA的嵌入式Linux操作系统解决方案设计

发布时间:2017-10-21 06:57:54  来源:大电流电感厂家   查看:
功率电感器立的两条PLB总线和PPC连接,作为PPC的指令和数据总线。MAC单元需要加入XPS_LL_TEMAC模块来控制,本设计需要设置PHY 类型为GMII(千兆以太网),同时要指定物理地址和收发FIFO大小。FLASH单元需要加入xps_mch_emc模块,同时设置F模压电感器LASH类型和读写时间。为了方便调试,还需要加入串口控制台模块,本设计使用的是UartLite模块,设置需要的波特率和校验类型。特别注意的是,系统还需要时钟管理模块(DCM),提供各个模块需要的不同时钟,还要设置一段FPGA内部RAM区域,放置PPC的.boot文件。外部这些模块都通过PLB总线和PPC通信,需要统一编址,一般把DDR 内存空间地址分配到0x0开始,整个系统的构建如图3所示。


本设计,除了在 EDK中搭建了操作系统必须的各种模块后,还需要在ISE中编写各个时序电路程序,因此把 EDK中编写好的工程作为一个模块,加入到ISE中,然后统一编译,这样生成了我们需要的完整功能的程序。特别指出的是,PPC405数据地址采用的是大端模式,接入到ISE中时,需要把数据颠倒位置,如DATA[0:31]变为DATA[31:0],才能正常读写。

Linux操作系统的加载与烧写

  加载Linux操作系统需要利用EDK软件提供的板级升级包(BSP)配置内核。BSP 包含了所选定处理器架构的属性文件以及相关硬件的驱动源文件。首先要在EDK Project Option 中Project Peripheral Respository选项下设置Xilinx提供的 gen-mhs-devtree/edk_lib 库路径,然后在软件平台设置中选择Dts模式,编译更新升级包,生成.dts配置文件。Dts文件包含了所有模块地址分配,中断以及驱动信息,把他加入到Linux 内核中,然后配置内核选项选择对应的处理器架构、所选硬件的驱动模块以及需要的其他内核模块,之后再对完成配置的内核进行编译,生成Linux 的内核image 文件。生成内核image 文件之后,还需要生成系统运行所需要的根文件系统。根文件系统中包含了嵌入式Linux系统的所有应用程序、库以及系统配置等相关文件。根文件系统中常用的程序和命令可利用开源软件Busybox构造。构造完成之后,在Busybox 生成的目录和文件的基础上再构造根文件系统的目录树,并添加相关设备文件和配置文件以及系统运行时需要模压电感的脚本文件, 从而形成最终的根文件系统,ramdisk.image。把他拷贝到内核中的../arch/powerpc/boot目录下,在linux2.6.x根目录下运行make zlmage. initrt,生成最终的系统文件。需要指出的是,在编译linux内核时,需要设置好交叉编译环境:首先安装ELDK编译软件,然后在编辑自己的帐户目录下的 .bashrc (例如:/home/ppc/) 中加入下面内容:

  CROSS_COMPILE=ppc_4xx

  $PATH=$PATH:/home/ ppc /PowerPc/ELDK/usr/bin:/home/贴片电感 ppc /PowerPc/ELDK/binexport CROSS_COMPILE PATH

  保存,然后执行$source共模电感 .bashrc

  把生成的zlmage.initrd 文件通过 EDK 软件下的XMD调试窗口,使用dow zlmage.initrd命令下载到DDR中,然后运行 run命令,就正常启动Linux了。

  程序下载到 DDR中,掉电后,数据就丢失了,不能保存和连续使用,因此要把操作系统烧写到FLASH,上电后让它能自动运行,掉电后也不会丢失。EDK提供了专门的FLASH 烧写工具Program Flash Memory,首先要把zlmage.initrd文件转换为FLASH能识别的.SREC文件,需要在EDK Shell下运行下面命令:

  $powerpc-eabi-objcopy –I elf32-powerpc –O srec zImage.initrd.srec

  第一次烧写FLASH时需要把Program Flash Memory中Create Flash Bootlooder Application 勾上,让系统自动生成Bootlooder程序。操作系统烧写到Flash中后,需要FPGA在上电后自动从FLASH读取操作系统数据,然后自动运行,这几需要把刚刚生成的bootloadr_0工程中大电流电感的.elf加入到.bit生成新的配置文件,使用EDK下的Updata Bitstream命令就能实现。最后把生成的.mcs文件烧写到FPGA PROM中,上电后,系统就能自动运行了。

  设计结果与分析

  在Linux系统正常加载后,我们设计一个程序,它通过以太网,从上位机获得数据,存入FPGA内部BlockRam中,再在ISE中编写程序,把获得的数据取出,产生频率可变的波形发生器,并回传发送的参数给上位机。平面变压器厂家 | 平面电感厂家

本质安全电源电路理论综述1 前言作为通讯、监控、检测、报警以及控制系统的供电设备,本质安全电源主要应用在石油、化工、纺织和煤矿等含有爆炸性混合物环境中。本质安全电源电路必须符合本质安全电路标准的要求,本质安全电路是指在标准规

[稳压电源]单板电源功耗过大,容易烧掉对端设备,请附件是我们单板的电源原理图,两节3.6V串联合成7.2V,经过ASM1117转成3.3V,一部分给CPU供电,一部分给经过B0305隔离生成5V给对端供电,对端设备要求比较高,电流不能高于100mA,现在遇到两个问题:1/因为用电池供电,考虑低功耗,CPU(STM32)会进入休眠状态,但是实际测下来电流还是会有20mA;2/对端设备的5V一天只会提供两次,大约2分钟,在上电的时候会

航天器大功率DC-DC变换器热仿真分析随着电子技术的迅猛发展,电子设备的功率密度不断提高。高功率密度带来的高温对大多数电子元器件将产生严重的影响,它会导致电子元器件的失效,进而引起整个设备的失效。因此电子设备的热设计在整个产品的设计中占有

CopyRight2014
大电流电感 | 大功率电感 | 扁平线圈电感 注塑加工厂