出故障了。
可以这样做:1、关闭工程后重新打开ISE,将下载电缆重新安装(或进行更换),必要时重启电脑。2、若(1)方案失败,则右击“Processes”窗口中的"GenerateProgrammingFile",点击“ProcessProperties”左边的“ConfigurationOptions”,找到“UnusedIOBPins”选项,将其修改为“float”。3、若(2)方案也失效,则进入第三步,在iMpact界面中的Edit——>Preferences——>IMPACT-ConfigurationPreferences中选中“UseHighZintsteadofBypass”一项即可。4、若(3)方案也失效,则进入第四步,在生成Bit文件之前,右击“Processes”窗口中的“GenerateProgrammingFile”,点击“StartupOptions”,找到"MatchCycle",将该项修改为最大值“6”。ISE123。
软件是一系列按照特定顺序组织的计算机数据和指令的集合。一般来讲软件被划分为系统软件、应用软件和介于这两者之间的中间件。软件并不只是包括可以在计算机(这里的计算机是指广义的计算机)上运行的电脑程序,与这些电脑程序相关的文档一般也被认为是软件的一部分。简单的说软件就是程序加文档的集合体。另也泛指社会结构中的管理系统、思想意识形态、思想政治觉悟、法律法规等等。
安卓设备作为usbhost,在安卓端开发一个简单的app,带有简单的UI,如pwm波频率、占空比设置按钮。该app检测usb设备是否插入,若有设备插入,获取端点号,通过收发信息。
Zedboard作为usb device。Zedboard官方给出的资料比较散和少(相对其他嵌入式学习套件),故通过修改ZedBoard_Standalone_USB_Device_Tutorial_14_6_01(zedboard设计案例,在zedboardorg可以下)来实现。在ZedBoard_Standalone_USB_Device_Tutorial_14_6_01中,zedboard模拟一个usb massstorage类设备(U盘)。故本实验安卓设备和zedboard的通信过程模拟读写U盘的过程。
在Zedboard的zynq芯片PS部分实现pwm波比较简单,为了了解zynq芯片软硬件的协同开发流程,决定在PL(FPGA)部分实现PWM。
否。
PL部分不供电是不可以检测到芯片的,因为JTAG编程方式是在线编程,必须接入电源,JTAG才可以检测到芯片。
JTAG最初是用来对芯片进行测试的,基本原理是在器件内部定义一个TAP(TestAccessPort)通过专用的JTAG测试工具对进行内部节点进行测试。JTAG测试允许多个器件通过JTAG接口串联在一起,形成一个JTAG链,能实现对各个器件分别测试。现在,JTAG接口还常用于实现ISP(In-Systemrogrammable在线编程),对FLASH等器件进行编程。
Z YNQ目前用于实际项目很成熟了,ZYNQ的ARM硬核弥补了纯FPGA缺陷,纯FPGA如果用软核实现ARM功能消耗资源特别多效果也不理想,ZYNQ的ARM资源不够就用IP消耗逻辑资源实现功能,PL作为ARM的补充,如果没使用过该芯片建议学习下,对以后工作肯定有帮助。
目前我工作中比较高端的项目都是使用ZYNQ系列芯片,集成度高同样功能体积更小,功能更加方便实现,欢迎同行多交流学习,互相关注学习
1,vivado硬件配置,要选择EMMC代表的SD1;
2,编译petalinux:执行petalinux-config。
(1)选择Subsystem AUTO Hardware Setting
-> Advanced bootable images storage settings
->boot image settings;
选择primary flash,这里是将BOOTbin设置为从qspi flash启动
(2)选择Subsystem AUTO Hardware Setting
-> Advanced bootable images storage settings
->kernel image settings;
选择primary sd,进入后我们看到这里实际就是设置imageub的存放区域。
(3)选择Image Packaging Configuration,设置启动启动文件系统所在位置;
在设置启动方式的时候,如下两张图这样设置读取根文件系统的位置/dev/mmcblk1p2。
(4)设置你的驱动然后编译,依次执行:petalinux-config -c kernel;petalinux-config -c rootfs;
petalinux-build;petalinux-package --boot --fsbl /images/linux/zynq_fsblelf --fpga --u-boot --force;
3,做之前先分区(把EMMC分区),先做一个SD卡启动的petalinux文件,
petalinux系统在zynq上面启动起来以后就进行如下分区:即是mmcblk1分为mmcblk1p1和mmcblk1p2
具体步骤如下:
(1) 把EMMC进行分区,执行命令: fdisk /dev/mmcblk1
(2)使用n命令,添加一个新的分区
Command (m for help): n
Command action
e extended
p primary partition (1-4)
选择p,添加主分区
,(3)选择分区号,选择1,
Partition number (1-4): 1 // 选择分区号
First cylinder (1-238592, default 1): Using default value 1 // 选择分区的第一个柱面,选择1
Last cylinder or +size or +sizeM or +sizeK (1-238592, default 238592): Using default value 238592 // 选择最后一个柱面
注意:1-238592,first要选第一个数,last要选择的比238592小,其中1024就是表示1M
(4)使用t命令,设置分区格式
Command (m for help): t
Selected partition 1
Hex code (type L to list codes): b
Changed system type of partition 1 to b (Win95 FAT32)
(5)使用w命令,保存配置,必须保存配置
Command (m for help): w
The partition table has been altered
Calling ioctl() to re-read partition table
(6)使用对应文件系统工具对分析进行格式化(只能在debian里面才能识别命令)
mkfsfat /dev/mmcblk1p1 设置为fat32格式
mkfsext4 /dev/mmcblk1p2设置为ext4格式
注意:执行完w命令然后才算分区成功,执行完mkfs命令才算格设置内存属性成功。
以上分区完成后,可以使用p命令,显示分区信息;也可以使用用d命令表示删除分区
Command (m for help): p
Disk /dev/mmcblk0: 7818 MB, 7818182656 bytes
4 heads, 16 sectors/track, 238592 cylinders
Units = cylinders of 64 512 = 32768 bytes
Device Boot Start End Blocks Id System
/dev/mmcblk0p1 1 238592 7634936 83 Linux
(7)执行这句:mkdosfs -F 32 /dev/mmcblk0p1
当然,可以重复上述步骤,多分几个区,用来存放不同的状态:
FLASH要要用来存放BOOTbin
第一个分区用来存放imageub或者设备树(比如uImage和devicetreedtb)等文件;--可以设置为128MB
第二个分区用来存放用户数据(比如可执行程序);可以设置为2048MB
第三个分区用来存放程序执行需要的库文件(opencv的库,qtcreator库,相机库,视频编码解码库等);剩余的1个多GB
4,把系统同步到ext4里面
先把sd卡里面系统挂载进来 :mount /dev/mmcblk0p2 /mnt
再把刚刚弄好的系统挂进来: mount /dev/mmcblk1p2 /tmp , 然后cd /mnt
然后进入把SD卡里面的系统同步到emmc里面:rsync -av / /tmp ,时间有点久,直到结束为止。
(要是不用SD卡也可以挂载U盘,解压,然后进行系统同步到EMMC所挂载的地方/tmp)
5,然后将BOOTBIN和imageub烧录到QSPI-FLASH中
首先擦除QSPI-FLASH:flash_eraseall /dev/mtd0
存放BOOTbin到flash : flashcp BOOTbin /dev/mtd0
此处若是将imageub写入emmc的FAT分区中(不存放到flash中),先使用mount挂载eMMC的FAT分区,
然后将imageub使用cp指令拷贝进 /mnt/mmcFat即可,也就是把uImage 拷贝到 /dev/mmcblk1p1;
进入uImage所在目录,然后执行 cp uImage /tmp;也就是把uImage存放到了 /dev/mmcblk1p1里面。
6,最后断电拔出SD卡,将拨码开关设置为flash启动,就能看到petalinux启动起来;
7,报错及其解决办法
————————————————
版权声明:本文为CSDN博主「寒听雪落」的原创文章,遵循CC 40 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:>
如何在苹果的ipad上执行android的应用程式
从现在技术来说,在苹果的ipad上无法通过任何方法执行android的应用程式apk档案。
apk是安卓系统安装程式档案的一种格式,ipa是苹果安装档案的格式,apk和ipa只是用在不同的系统上。
如何在Zedboard上执行linux下的应用程式可以参考如下方法以实现Linux执行windows软体: 1、安装linux版的vmware,然后通过vmware建立windows虚拟机器,通过vnc实现linux物理机和windows虚拟机器的共享,从而执行windows软体。 2、在Linux上安装Wine,
linux上的可执行程式是没有后缀名之分的。只要有可以执行许可权就可以执行。
执行也是非常简单的,只需要在终端敲出路径+使用者名称就OK
例如,需要执行的档名叫test
如果你就在可执行档案所在的路径下就可以使用这个
root~#/test
如果不在test坐在的路径可以使用绝对路径,加入你的test所在的路径是/home 下面就这样了
root~#/home/test
这样就可以执行了
1 从命令列执行:
从命令列或者 shell 提示符执行应用程式的一个常用方法是使用 / 命令。如果您在 Linux 中使用句号 (。) 和正斜杠 (/),就意味着告诉环境您想要以可执行档案执行该档案。例如,执行一个名为 myapp 的可执行档案,您可以使用 /myapp 命令。
2从桌面执行应用程式
在 Linux 中从桌面执行图形使用者介面 (GUI) 应用程式与在 Windows 中没多大区别。通常,您需要了解特定的桌面环境下应用程式在选单中是如何分组的。Linux 有足够的桌面应用程式,可用于各种任务。有一些应用程式是 Linux 本机固有的,还有另外一些应用程式可能是在一个常用执行时环境中使用 C# 开发的跨平台应用程式,比如,。NET Framework 应用程式。您会发现,使用一个 Wine 这样的虚拟环境,您甚至可以在 Linux 上执行您最喜爱的 Windows 应用程式。
参考文件::elecfans/pld/PLDkaifaban/306232
ZedBoard开发板上的Zynq是一个ARM PS(processing system, 双核A9 + 储存管理 + 外设)+ PL(programable Logic) 结构,如果不使用PL,zynq的开发和普通的ARM 开发一样。不同的是ARM PS是可配置,因而硬体资讯是不固定的。这也是zynq灵活性的一个表现。电子发烧友网编辑现为读者整合《玩转赛灵思Zedboard开发板》系列文章, 其中包括在ZedBoard开发板上的一些应用例项。其内容包括:
玩转赛灵思Zedboard开发板(1):ZedBoard详解
玩转赛灵思Zedboard开发板(2):ZedBoard最简单的测试工程
玩转赛灵思Zedboard开发板(3):基于Zynq PL的流水灯
玩转赛灵思Zedboard开发板(4):如何使用自带外设IP让ARM PS访问FPGA
玩转赛灵思Zedboard开发板(5):基于AXI Lite 汇流排的从装置IP设计
从本小节开始,讲着重介绍Zedboard上的嵌入式linux应用,包括使用SDK设计最简单的linux应用程式、linux交叉编译环境搭建、装置驱动编写等内容。本小节使用的linux系统是Digilent官方提供的OOB设计,它是Digilent官网给出的一个完整的、Zedboard可执行的linux 系统,包含了Zedboard上的几个重要的装置驱动如串列埠、USB、乙太网、OLED、HDMI等。当linux在Zedboard上执行起来后,Zedboard就是一个小型的嵌入式系统,使用SDK及Xilinx ARM Linux工具链编译生成的可执行档案可以在这个系统执行。
硬体平台:Digilent ZedBoard;开发环境:Windows XP 32 bit;软体: SDK 142。
一、获取Zedboard可执行的linux
Digilent官网给出Zedboard的可执行linux设计ZedBoard_OOB_Design包,可从:digilentinc/Data/Documents/Other/ZedBoard_OOB_Designzip获取,下载后解压,可以看到包的结构和内容:
boot_image目录:
-- systembit – 配置FPGA的bit档案
-- u-bootelf – 引导linux需要的Second-Stage boot loader
-- zynq_f lelf – 配置ARM PS系统的First-Stage boot loader(FSBL)
doc目录:
-- READMEtxt – 说明档案
hw目录:
-- EDK 141版本的XPS工程,用来生成硬体档案和bit档案
linux目录:
-- devicetree_ramdiskdts – 装置树原始码
-- config – Linux核心配置档案,用来生成zImage
sd_image目录:
-- BOOTBIN – 使用boot_images中的三个档案生成的Zynq配置档案
-- devicetree_ramdiskdtb – 编译后的装置树档案
-- ramdisk8Mimagegz – 编译后的档案系统
-- README – 介绍如何执行OOB设计的说明文件
-- zImage – 编译后的核心
sw目录:
--硬体配置
--FSBL原始码
其中sd_image目录中包含了ZedBoard上能够执行linux的所有档案。将SD卡格式化为Fat32,把sd_image目录档案拷贝到SD 卡根目录下;然后将JP7~JP11设定为SD卡启动模式,将JP2短路,JP3断开,这样可以下一步我们可以把U盘作为USB 从装置挂载到Zedboard上。
图 Zedboard的连线和短路块设定
上电后,等待ARM PS的配置、FPGA的配置(蓝色LED DONE 亮起),之后开始引导Linux系统了。可以从超级终端上看到一系列的引导资讯:
1 U-Boot 20120401-00297-gc319bf9-dirty (Sep 13 2012 - 09:30:49)
2
3 DRAM: 512 MiB
4 WARNING: Caches not enabled
5 MMC: SDHCI: 0
6 Using default environment
直接在命令列输入该档名字;在档案之前加上路径即可; 比如当下目录下的test 执行/test ps:点斜杠表示当前目录
如何在CDH 5上执行Spark应用程式几个基本概念:
(1)job:包含多个task组成的平行计算,往往由action催生。
(2)stage:job的排程单位。
(3)task:被送到某个executor上的工作单元。
(4)taskSet:一组关联的,相互之间没有shuffle依赖关系的任务组成的任务集。
一个应用程式由一个driver program和多个job构成。一个job由多个stage组成。一个stage由多个没有shuffle关系的task组成。
spark应用程式的执行架构:
(1)简单的说:
由driver向丛集申请资源,丛集分配资源,启动executor。driver将spark应用程式的程式码和档案传送给executor。executor上执行task,执行完之后将结果返回给driver或者写入外界。
(2)复杂点说:
提交应用程式,构建sparkContext,构建DAG图,提交给scheduler进行解析,解析成一个个stage,提交给丛集,由丛集工作管理员进行排程,丛集启动spark executor。driver把程式码和档案传给executor。executor进行各种运算完成task任务。driver上的block tracker记录executor在各个节点上产生的资料块。task执行完之后,将资料写入HDFS上或者其他型别资料库里。
(3)全面点说:
spark应用程式进行各种transformation的计算,最后通过action触发job。提交之后首先通过sparkContext根据RDD的依赖关系构建DAG图,DAG图提交给DAGScheduler进行解析,解析时是以shuffle为边界,反向解析,构建stage,stage之间也有依赖关系。这个过程就是对DAG图进行解析划分stage,并且计算出各个stage之间的依赖关系。然后将一个个TaskSet提交给底层排程器,在spark中是提交给taskScheduler处理,生成TaskSet manager,最后提交给executor进行计算,executor多执行绪计算,计算完反馈给TaskSetmanager,再反馈给taskScheduler,然后再反馈回DAGScheduler。全部执行完之后写入资料。
本文主要记录在 CDH5 丛集环境上如何建立一个 Scala 的 maven 工程并且编写、编译和执行一个简单的 Spark 程式
:tuicool/articles/Ajuyqan
:iteblog/archives/1073
上面有教程、程式码演示,请参考了。
建立 maven 工程
使用下面命令建立一个普通的 maven 工程:
bash
$ mvn archetype:generate -DgroupId=clouderasparkwordcount -DartifactId=sparkwordcount -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
将 sparkwordcount 目录重新命名为simplesparkapp,然后,在 simplesparkapp 目录下新增 scala 原始档目录:
bash
$ mkdir -p sparkwordcount/src/main/scalacloudera/sparkwordcount
修改 pomxml 新增 scala 和 spark 依赖:
以上就是关于zynq烧录成功但done不拉高全部的内容,包括:zynq烧录成功但done不拉高、zedboard 上怎么移植android、ZYNQ的PL部分不供电JTAG是否可以检测到芯片等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)