zynq

Zynq_7000 sOC的初次使用

眉间皱痕 提交于 2019-11-29 14:36:23
工具:vivado 2015、SDK 目的:初步掌握在Vivado集成开发环境下基于Zynq--7000 Soc实现嵌入式系统基本硬件和软件设计的方法和实现流程。 1、创建工程 注意:建议大家首先讲该文件 zedboard 复制到自己的vivado安装目录下: 安装盘符:\xilinx\vivado\2015.4\data\boards\board_files.否则图1.2可能找不到板子哦。 1.1 1.2 2、Then,使用IP集成器创建处理器系统 使用vivado集成开发环境提供的IP集成器创建一个新的设计块,用于生成基于ARM Cortex- A9处理器的嵌入式硬件系统。 2.1create block design 输入zynq搜索,选中标红,回车 点击标红的绿色字 可以得到如下,自动为ddr和固定IO添加了端口,同时也出现很多多余的端口。 下面准备修改zynq的默认设置,移除那些多余的端口。 双击zynq符号,出现re-customize IP:ZYNQ7 Processing System。 得到如下图。其中凡是可配置的块,都是以绿色高亮显示。 在本设计中只使用UART1,所以其余的都取消勾选。 右侧电压也要选3.3 点击OK退出,右键,重新布局。 得到如下最小系统 有效性验证: OK,表示当前设计正确。 3、生成顶层HDL并导出设计到SDK. 将生成IP集成器输出

了解XILINX XC7Z010/20开发板资源

随声附和 提交于 2019-11-29 14:33:54
Xilinx基于28nm工艺流程的Zynq-7000 All Programmable SoC平台是ARM处理器和FPGA结合的单芯片解决方案,十分适合既需要FPGA又需要处理器的应用场合,经过这么多年的发展,市场上的应用已经非常多了,是一个十分热门的嵌入式开发平台,MYD-C7Z010/20开发板( http://www.myir-tech.com/product/myc_C7Z010_20.htm ) 深圳米尔科技有限公司比较早推出的一款高性能高品质ZYNQ开发板,感谢米尔科技和面包板社区共同举办的这次试用活动,本人有幸获得一个试用机会可以近距离地感受和体验这款热门的嵌入式开发平台,我们首先对开发板的硬件做个了解,外设情况用图片看可能更直观点,参见米尔科技提供的下面的图片: 这里说明下: 1、SFP,PCIEx2,SATA等外设需要接ZYNQ-7015核心板时才可以用。 2、3个PMOD接口只有接ZYNQ-7020核心板时才可以用, ZYNQ-7010不可以用。 3、开发板没有板载下载器,右上部留有2X7针的JTAG接口,注意是2.54的间距,连接时有三角型的为第一脚,可以参见MYC_C7Z01020入门指导手册.pdf第40页,如下图示: 两个红圈处的三角型表示为第一脚,脚位对应起来就行,考虑到有些下载器连接线不一定很规范

米联客 ZYNQ/SOC 精品教程 S02-CH20 利用EMIF进行PS与PL间数据交互

蹲街弑〆低调 提交于 2019-11-29 04:10:38
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 20.1 概述 AXI-EMC IP是一个可以可以支持各种内存型号的控制器,利用这个IP可以非常方便地模拟各种类型的内存或者FLASH接口实现数据的交互和通信。以下是AXI-EMC IP的功能特性: 1、支持AXI4 Slave Memory Map接口,数据宽度为32位和64位 2、支持写入/读取寄存器的可选AXI4-Lite Slave数据宽度为32位 3、支持AXI4增量和包传输 4、支持AXI4窄带和非对齐传输 5、最多支持四个外部存储器组 6、支持具有可配置字节奇偶校验和流水线级的同步SRAM 7、支持的内存类型 ° 同步SRAM ° 异步SRAM ° 线性闪存(或并行NOR闪存) ° PSRAM(或蜂窝RAM) 8、提供配置寄存器,动态更改PSRAM和Micron®闪存的访问机制 9、为同步SRAM存储器提供奇偶校验错误状态寄存器 本课程中,利用EMC实现异步SRAM的功能,实现数据的读写操作。 20.2 FPGA BD工程 以下是搭建好的FPGA BD工程,搭建工程如果不熟悉的用户请参考“CH01 HelloWold/DDR/网口测试及固化”这一节课。

Flush cache to DRAM

对着背影说爱祢 提交于 2019-11-29 03:15:00
问题 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

【转】

自作多情 提交于 2019-11-28 22:34:37
原 zynq中三种实现GPIO的方式 2016年08月04日 21:47:06 husipeng86 阅读数 8380 更多 分类专栏: zynq 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 本文链接: https://blog.csdn.net/husipeng86/article/details/52123465 本文介绍在zynq中三种实现GPIO的方式,分别为MIO、EMIO和IP方式。 MIO和EMIO方式是使用PS部分的GPIO模块来实现GPIO功能的,支持54个MIO(可输出三态)、64个输入和128个输出(64个输出和64个输出使能)EMIO 而IP方式是在PL部分实现 GPIO功能,PS部分通过M_AXI_GP接口来控制该GPIO IP模块;另外EMIO模块虽然使用PS部分GPIO但也使用了PL部分的管脚资源。 MIO方式实现GPIO vivado中zynq设置如下图 由图中可见要选中打开GPIO,其下自动显示可用于GPIO的MIO(当MIO作为其他功能时就不能作为GPIO使用了),其中MIO 7、MIO 8只能作为输出使用,因为它们用于VMODE管脚(参考UG585第14章:14.2.3) 软件部分如下 #include <stdio.h> #include "platform.h" #include

米联客 ZYNQ/SOC精品教程 S02-CH08 定时器中断实验

纵然是瞬间 提交于 2019-11-28 21:49:31
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 8.1 概述 本课将中断对于实时系统是非常重要。本课简要介绍了ZYNQ的中断原理和中断类型,详细介绍了私有定时器,在ZYNQ的纯PS里实现私有定时器中断。每隔一秒钟中断一次,在中断函数里计数加1,通过串口打印输出。 8.2 中断原理 中断对于保证任务的实时性非常必要,ZYNQ中集成了中断控制器GIC(Generic Interrupt Controller).GIC可以接受I/O外设中断IOP和PL中断,将这些中断发给CPU。 中断体系结构框图图下: 8.2.1 软件中断(SGI) SGI通过写ICDSGIR寄存器产生SGI. 8.2.2 共享中断SPI 通过PS和PL内各种I/O和存储器控制器产生。 8.2.3 私有中断(PPI) 包含:全局定时器,私有看门狗定时器,私有定时器以及来自PL的FIQ/IRQ。本文主要介绍PPI,其它的请参考官方手册ug585_Zynq_7000_TRM.pdf。 ZYNQ每个CPU连接5个私有外设中断,所有中断的触发类型固定不变。并且来自PL的快速中断信号FIQ和中断信号IRQ反向。尽管在ICDICFR1寄存器内反应它们是低电平触发,但是PS

米联客 ZYNQ/SOC精品教程 S02-CH07 PL中断请求实验

China☆狼群 提交于 2019-11-28 19:22:19
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 7.1 概述 本课节对ZYNQ的中断进行了介绍,并通过PL端按键输入中断信号,PS端进行处理,讲解了外部中断使用。 7.2 ZYNQ 中断介绍 7.2.1 ZYNQ中断框图 上图为ZYNQ中断分布框图。可以看到部分PL到PS部分的中断,经过中断控制分配器(ICD),同时进入CPU1 和CPU0。查询下面表格,可以看到PL到PS部分一共有20个中断可以使用。4个快速中断(PPI),即IRQF2P[19:16];16个共享中断(SPI),即IRQF2P[7:0]、IRQF2P[15:8]。这16个中断可以任意定义,本课涉及使用。 7.2.2 ZYNQ CPU软件中断 (SGI) ZYNQ共有两个CPU,每个 CPU具备各自的16个软件中断。 7.2.3 ZYNQ CPU 私有端口中断 私有中断不能修改。这里有2个PL到 CPU 的快速中断nFIQ 7.2.4 ZYNQ PS和PL共享中断 共享中断就是PL的中断可以发送给PS处理。上图中,黄色区域是16个PL的中断,它们可以设置为高电平或者低电平触发。 7.3 搭建BD工程 Step1:新建一个名为为Miz_sys的工程。 Step2

米联客 ZYNQ/SOC精品教程 S02-CH03 XADC 实验

╄→尐↘猪︶ㄣ 提交于 2019-11-28 17:34:18
软件版本:VIVADO2017.4 操作系统:WIN10 64bit 硬件平台:适用米联客 ZYNQ系列开发板 米联客(MSXBO)论坛: www.osrc.cn 答疑解惑专栏开通,欢迎大家给我提问!! 3.1 概述 本课讲解了使用芯片内部XADC采集片上电压以及温度的方法。 Xilinx 7系列的ADC是一个双12位分辨率的而且每秒一兆(MSPS, 1 Mega sample per second)采样速率的模数转换器,是一种通用的、高精度的模数转换器,双通道的ADC支持单极和差分输入工作模式,其最多可支持17路外部模拟输入通道。 上图为XADC的一个内部实现框图,从图中可以看出ADC分为12位的A和B两个,故称为双12位。其中ADC A可以对供电电压进行采样,供电电压包括VCCINT、VCCAUX、VCCBRAM,其中Zynq-7000系列的芯片还支持对VCCPINT、VCCPAUX和VCCO_DDR的采样,还包括温度的采样和外部模拟输入的采样。ADC B只能对外部模拟输入进行采样转换。 XADC内部包括16位的控制寄存器和状态寄存器,控制寄存器可以通过DRP(DynamicReconfiguration Port)进行读写操作,从而实现对XADC的初始化配置,而状态寄存器只能进行读取,ADC将采样转换后的值保存在对应的状态寄存器,通过DRP便可以将其读出

uboot中Kconfig架构的理解

此生再无相见时 提交于 2019-11-28 00:33:12
1./u-boot-2019.07/Kconfig 是顶层Kconfig mainmenu "U-Boot $UBOOTVERSION Configuration" #这是总menu 2.source "arch/Kconfig" #然后就引用了arch目录下的Kconfig 这个Kconfig中可以选择不同的架构,有arm M68K MIPS等 choice prompt "Architecture select" default SANDBOX config ARC bool "ARC architecture" select ARCH_EARLY_INIT_R select ARC_TIMER select CLK select HAVE_PRIVATE_LIBGCC select SUPPORT_OF_CONTROL select TIMER config ARM bool "ARM architecture" select CREATE_ARCH_SYMLINK select HAVE_PRIVATE_LIBGCC if !ARM64 select SUPPORT_OF_CONTROL config M68K bool "M68000 architecture" select HAVE_PRIVATE_LIBGCC select SYS_BOOT_GET_CMDLINE