zynq

Zynq 7000从零开始之一 -- HelloWord

匿名 (未验证) 提交于 2019-12-02 22:56:40
使用myir的z-turn开发板,做一个从uart打印hello world的实验,只用PS,不用PL部分,程序从SD卡启动,跑在PS的内部RAM. zynq 7000的PS虽然也是CPU,但是开发方法不像普通的CPU只需要一个SDK就可以了,它还需要vivado硬件设计软件. . 2. next->选RTL Project->Add Sources,Add existing IP和Add constraints界面直接点next 3. New Parts界面 4. 添加IP,在Flow Navigator的IP Integrator下点Create Block Design Create Block Design如下,点OK 在Diagram界面点击Add IP 双击ZYNQ7 Processing System,添加CPU 5. 设置CPU 在Diagram界面点击Run Block Automation,不做修改,点Finish就可以。在Diagram界面双击 进入设置界面,我们把所有的接口去掉,只留下FIXED_IO. 1> PS-PL Configuration->General->Enable Clock Resets->去掉FCLK_RESET0_N 2> PS-PL Configuration->GP Master AXI Interface->去掉 M AXI

zynq学习笔记之petalinux (3)petalinux 创建自定义工程

匿名 (未验证) 提交于 2019-12-02 21:59:42
对于特定的硬件平台(开发板),petalinux可以通过下载官方BSP来直接创建文件,可以省去很多麻烦。但是在实际运用中,不可能只是从BSP生成,现在我们开始创建一个自定义的工程。 1,在Vivado上创建硬件平台,生成*.hdf文件。(我的Vivado安装在Window下); Create Block Design Create IP 根据UG1144中对硬件的要求设置IP(默认就行) Generate output products -->Create HDL Wrapper -->Generate Bistream -->Export Hardware 2,在linux中创建一个工程目录,我的放在桌面上 $ cd ~/Desktop/ $ mkdir petalinux_proj $ cd ~/Desktop/petalinux_proj/ $ petalinux-create --type project --template zynq --name my_first_proj INFO: Create project: my_first_proj INFO: New project successfully created in /home/zhupy/Desktop/petalinux_proj/my_first_proj 4

基于Zynq的GNULinux在线编译调试记录

匿名 (未验证) 提交于 2019-12-02 21:53:52
--20171228 1、实验环境 、鼠标×2、键盘×1、USB分线器×1、ZedBoard开发板套件×1、AD-FMCOMMS2-EBZ×1、网线×1、SD卡×1。 2、软件安装 2.1、安装VMware Workstation Pro12 软件来源: http://bbs.feng.com/read-htm-tid-9815751.html 安装教程: VMware Workstation 12 Pro 虚拟机安装步骤详解_百度经验 。 2.2、安装虚拟系统ubuntu-14.04.5-desktop-amd64 软件来源: https://www.ubuntu.com/download/desktop 安装教程: VMware12安装虚拟机教程、Ubuntu16.04安装教程_百度经验 http://www.jb51.net/article/97295.htm 2.3、交叉编译环境的搭建 gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabihf.tar.xz https://releases.linaro.org/components/toolchain/binaries/7.2-2017.11/arm-linux-gnueabihf/ 2.3.2下载 gcc-linaro-7.2.1-2017.11-x86_64_arm

fatal error: sqlite3.h: No such file or directory

荒凉一梦 提交于 2019-12-02 20:27:16
I'm trying to build a C application through cross compiling for a Zynq board (ARM architecture). When I type make without mentioning the ARM arch, it works fine on my laptop. But as soon as I modify the Makefile, I get an error saying: main.c:20:43: fatal error: sqlite3.h: No such file or directory #include "sqlite3.h" //library for sqlite3 ^ compilation terminated. make: *** [ws_temp_server] Error 1 The Makefile looks like this: SOURCE=lib/base64_enc.c lib/websocket.c lib/sha1.c lib/sqlite/sqlite3.c main.c CC = arm-xilinx-linux-gnueabi-gcc LDFLAGS=-lpthread -ldl INCLUDES=lib/ PROGRAM=ws_temp

ZYNQ UBOOT主要文件简介

倖福魔咒の 提交于 2019-12-02 06:48:44
u-boot中几个关于配置信息的文件夹 u-boot-xlnx/configs文件夹 该文件夹中存在zynq_zed_defconfig,该文件用于配置板卡的功能。 u-boot-xlnx/include/configs文件夹 该文件夹下的zynq_common.h 可在内部修改uboot烧写到flash中的位置,以及程序load位置 u-boot-xlnx/arch/arm/dts文件夹 该文件下存在zynq-zed.dts 即ZED的设备树文件 u-boot-xlnx/arch/arm/mach-zynq文件夹 该文件夹下的Kconfig 文件。 ———————————————— 版权声明:本文为CSDN博主「QUIZ_csdn」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/liuxiuqi19860119/article/details/84729350 来源: https://blog.csdn.net/weixin_43048906/article/details/102732927

ZYNQ7000性能分析

夙愿已清 提交于 2019-11-30 21:03:06
提到自动驾驶,机器人视觉,高清摄像机,都要想到摄像头这个单元,先前本侠也讲过一些FPGA应用在高清摄像头和机器视觉中的深度摄像头以及双目摄像头等,FPGA在里面的作用主要是对采集的图像进行处理,对图像的处理需要硬件有着很好的并行的性能,那么它处理速度跟ARM的CPU比起来有没有优势呢?本侠今天就带领各位一起来探索一下FPGA在边缘计算方面的应用。 提起计算速度,我们首先能想到的是云计算。云计算有数不清的好处,例如计算快,计算数据的量大,等等。但智者千虑必有一失,没有云计算的厂家能够保证他能做任何的事情,云计算也有自己的不足之处,最大的不足就是计算的实时性不够高。例如,在你把一些数据送到云端去进行处理的时候总会有一些延迟,最难熬的莫过于等结果的时间。边缘计算需要很高的计算性能,而且有着很高的实时性,FPGA能够同时并行处理很多的事情,既能满足数据处理速度的要求,还能满足实时性的需求,可谓是两全其美。今年在加利福尼亚的圣塔拉拉举行的嵌入式视觉峰会上展示了基于Aldec的TySOM-2-7Z100原型板的4摄像头ADAS模型,如图.1所示。TySOM的性能很好,主要是因为里面的核心的运算处理部件是Xilinx Zynq Z-7100的SoC。 图.1 TySOM-2-7Z100原型板 如图.2可以看到Zynq在TySOM板子中的位置

怎么对ZYNQ的FCLK做时钟组约束

风流意气都作罢 提交于 2019-11-30 19:14:55
前言 对于包含PS和PL的设计,两者的数据交互PL必然会用到PS端的时钟。 对于FCLK(PS端时钟输入到PL端)的约束,此时钟的基础约束已在IP中产生。以下想约束其异步时钟的时钟组特性。 注意事项:FCLK的名字在综合时不可见,在适配阶段才可见,所以对于约束文件的属性需要选择只在适配阶段有效,否则综合时报警告(感觉无伤大雅)。 但PL中又有别的时钟,与FCLK是异步的,而且这些时钟之间并不需要进行时序分析。 则有两种选择,(1)约束false路径。但时钟之间的路径是双向的,则需要正着约束一下,反着也要约束,比较麻烦。        (2)使用clock group约束。可以划分时钟域,时序分析只会分析时钟域中的情况,不会分析跨时钟域部分。 而跨时钟域部分通常由开发者代码保证不会产生亚稳态。 流程 (1)首先我们并不清楚fclk在综合编译后叫啥名字,所以首先就是需要获取fclk名字。 打开适配后的设计,点击编辑时序约束。 找寻时钟。 在下图中点击Find查找所有时钟,左下角就会显示出时钟名,添加到右侧,就得到了command中的名字。当然也可直接使用图形工具进行相应的约束操作。 约束语句如下:三个时钟组互不相关,跨时钟域处理需要代码保证。 set_clock_groups -async -group [get_clocks -include_generated_clock i

玩转Zynq连载27——导出PS硬件配置和新建SDK工程

醉酒当歌 提交于 2019-11-30 11:57:07
玩转Zynq连载27——导出PS硬件配置和新建SDK工程 更多资料共享 腾讯微云链接:https://share.weiyun.com/5s6bA0s 百度网盘链接:https://pan.baidu.com/s/1XTQtP5LZAedkCwQtllAEyw 提取码:ld9c 腾讯微云链接:https://share.weiyun.com/5s6bA0s 百度网盘链接:https://pan.baidu.com/s/1XTQtP5LZAedkCwQtllAEyw 提取码:ld9c 1 概述 配置好PS的PL工程,在完成编译后,需要将PS的硬件配置导出,作为SDK的BSP(Board Support Package),然后SDK上可以新建软件工程,编写应用程序,实现Zynq上Cortex A9的开发。本节以zstar_ex50工程为例,演示如何将PL工程的PS硬件配置导出、在SDK新建一个最简单的HelloWorld模板工程。 2导出PS硬件配置 PL工程编译完成后,如图所示,点击菜单File --> Export --> Export Hardware。 弹出如图所示对话框,默认设置,点击OK。![在这里插入图片描述](https://img-blog.csdnimg.cn/20190925095849245.jpg?x-oss-process=image/watermark

Flush cache to DRAM

落爺英雄遲暮 提交于 2019-11-30 05:18:25
I'm using a Xilinx Zynq platform with a region of memory shared between the programmable HW and the ARM processor. I've reserved this memory using memmap on the kernel command line and then exposed it to userspace via mmap/io_remap_pfn_range calls in my driver. The problem I'm having is that it takes some time for the writes to show up in DRAM and I presume it's stuck in dcache. There's a bunch of flush_cache_* calls defined but none of them are exported, which is a clue to me that I'm barking up the wrong tree... As a trial I locally exported flush_cache_mm and just to see what would happen

ZYNQ随笔——PL端按键中断之裸机设计

筅森魡賤 提交于 2019-11-29 14:37:00
1. ZYNQ中断简述 ZYNQ中断类型:普通中断请求(IRQ, Interrupt Request)和快速中断请求(FIQ, Fast Interrupt Request)。 ZYNQ中断源:软件中断(SGI, Software Generated Interrupt)、CPU私有设备中断(PPI, Private Peripheral Interrupt)和共享设备中断(SPI, Shared Peripheral Interrupt)。而PL端的按键中断属于共享设备中断。 2. 硬件平台搭建 在Block Design里添加ZYNQ7 Processing System和AXI_GPIO模块,双击AXI_GPIO设置为输入,且允许中断,驱动外部IO器件(如KEY)。 双击ZYNQ,使能IRQ_F2P,如下图所示。 搭建好的系统结构如下图所示,橘×××的连线表示中断连接: 2. 软件SDK设计 SDK软件设计可以参考官方设计文档,主要API函数有, int XGpio_Initialize(XGpio * InstancePtr,u16 DeviceId) void XGpio_SetDataDirection(XGpio * InstancePtr,unsigned Channel,u32 DirectionMask) XScuGic_Config *XScuGic