博客
SDK调试程序时都是通过JTAG,将PL的bit流文件和应用程序的ELF文件下载到Zynq中,运行查看效果。调试验证功能后需要将程序固化到板子上,使板子上电后可以从存储单元中加载程序,而无需SDK的调试环境。Zynq支持多种存储设备,本文将介绍如何将程序固化到常用的SD卡和QSPI Flash中
EMIO就是PS控制PL资源的简单例子。EMIO就是可扩展的MIO,当与PS直接相连的MIO不够用时,可以使用EMIO做“扩展”。使用体会上,感觉就是ARM直接控制了PL部分的管脚。GPIO的bank2和bank3就是通过EMIO接口与PL相连的,本文将先通过PS控制PL部分流水灯的实例感受下EMIO的使用,然后再介绍EMIO相关的基本概念
软件工具: Vivado
一、配置Multipiler
<center><img src="http://xilinx.eetrend.com/files/2019-04/%E5%8D%9A%E5%AE%A2/100042547-67…; alt=""></center>
Xilinx的MPSoC系列芯片的部分型号提供了Video Codec Unit,可用于H.264/H.265格式视频的编解码。想要用起来Video Codec Unit需要花一番功夫,大体有三步:硬件层比特流的搭建,驱动层Linux内核+驱动的编译以及rootfs制作,应用层编译
本文将介绍PS部分GPIO中MIO的使用。本文先通过一个控制LED闪烁的实例体会MIO的用法,学习GPIO相关结构体与API函数的使用;然后再系统讲解GPIO的相关概念。
上一篇简单解释了Zynq配置的相关概念,本文将对Zynq-7000的软件开发进行简单介绍。如果设计者已经对ARM的开发方法很熟悉,上手Zynq的软件开发也会更快,相关概念理解起来也更快。
上文提到,进行最小/最大延迟约束时,set_max_delay和set_min_delay命令要设置-from和-to选项。但是如果起点和终点设置的不合理(具体见第33篇),便会导致出现路径分割(Path Segmentation)。
Vivado不支持即时分析有矛盾的时序异常,需要运行report_exceptions进行完整的分析,报告所有时序异常。多周期路径的情况有很多,比较复杂,单独放在第35篇中讲述。本文介绍其余三种时序异常的相关知识。
最近使用Xilinx 7系列690T芯片的多个GTX接口传输千兆以太网数据帧时,在某些的测试情况下个别GTX接口会出现少量丢帧的问题,最后通过实验发现是时钟的分配使用问题,具体而言是GTX接口的QPLL和CPLL的使用问题。
上电自复位对FPGA的稳定性及其重要,因为对于某些设计,上电之后需要进行一些状态寄存器的初始化,或者系统自己初始化都需要一个复位信号。在这里我就介绍一个比较好用的方法,大家一起学习一下
上一篇讲述了对时钟的约束方法,时钟不仅对设计很重要,约束情况也很多、很复杂,需要一定的经验。本文将讲述另一种重要的约束:I/O延迟,但与时钟约束相比就简单的多,本文篇幅也相对较少。
上篇中介绍了Xilinx FPGA嵌入式开发的基本概念和软件特性,并以Hello World为例给出了一个操作流程,熟悉该流程相当重要。上一篇中只是简单说明了每一步应该执行哪些操作,本文将详细介绍每一步的具体含义和涉及到的相关概念。
在做FPGA的开发过程中经常会使用到移位寄存器,一般我们使用移位寄存器的目的都是为了将某个信号进行打拍,使得时序符合我们的需求。最常见的一种打拍方法就是在process过程语句中对信号进行移位。但是这里我给大家介绍一下SRL6E
在ZYNQ SOC 入门基础(二)MIO 实验中讲解了MIO的使用,本节就来讲一下EMIO的使用。在实上一章中对ZYNQ的GPIO做了简单的介绍,ZYNQ的GPIO有(multiuse I/O)MIO和(extendable multiuse I/O) EMIO。
本系列将讲述如何使用Vivado完成基于Zynq平台的嵌入式系统设计。一个完整的嵌入式系统设计要考虑硬件、软件、FPGA设计三个部分。Xilinx为了尽量简化设计流程,提供如下两个主要设计工具
背景:zynqNet运用HLS来实现相应的IPcore。相关HLS过程的信息会打印到console之中。目的:读懂HLS对IPcore代码的HLS过程,具体硬件如何实现。将报告信息存下来用于参考。
时钟信号是FPGA时序逻辑设计中必不可少的条件,一般情况下在FPGA始终资源充裕的情况下通常采用FPGA内部自带的内核生成时钟信号,例如DLL/MMC,但是一旦出现资源不够的情况,就只能另寻他法了