XIlinx Zynq
中国思想史
山河无恙 烟火寻常 孩子们啊 安睡梦乡 可是你如愿的眺望
展开
-
fatal error: openssl/evp.h: 没有那个文件或目录
在陆佳华《嵌入式系统软硬件协同设计实战指南 第2版》一书的第13章节 编译U-boot时会遇到2个错误。原因很简单,就从一开始的错误提示着手: fatal error: openssl/evp.h: 没有那个文件或目录。当然在网上也可以搜索到相关的解决方法。在此仅作为记录:如果你在编译时遇到这个错误,这可能是下面的原因:你尝试编译的程序使用OpenSSL,但是需要和OpenSSL链接的文件(库和头原创 2015-12-15 15:44:46 · 22927 阅读 · 2 评论 -
Zynq嵌入式系统软硬件协同设计总结
1、陆佳华书《嵌入式系统软硬件协同设计实战指南 第2版》这本书中的实例着实浪费了我不少时间。从本书第一个实例我就碰了一鼻子灰。当然显然是自己时新手的原因。首先第一个实验其实真的特别简单,为什么我花费那么久呢。就因为一个串口驱动问题。其实只要你确保在实验之前安装好了串口驱动,那么接下来简直So-Easy.但是初学者没有人教总是要走弯路的,在所难免。就像现在,我依然经常碰一鼻子灰。说实话,到目前为止,...原创 2015-12-15 15:58:46 · 3629 阅读 · 0 评论 -
嵌入式软硬件协同设计概念篇
JTAGJTAG 是一种嵌入式调试技术,它在芯片内部封装了专门的测试电路 TAP ( Test Access Port ,测试访问口),通过专用的 JTAG 测试工具对内部节点进行测试。CPU可通过JTAG接口访问CPU的内部寄存器和挂在CPU总线上的设备,如FLASH,RAM,SOC。标准的 JTAG 接口是 4 线: TMS 、 TCK 、 TDI 、 TDO ,分别为测试模式选择、测...原创 2016-07-11 18:20:51 · 7099 阅读 · 0 评论 -
嵌入式软硬件协同设计阶段性总结(Zynq7000系列)
一切不过是几根线的连接,几条命令的书写,但是不知道原理,没有基础,是无论如何也找不到路子的。所以说只是重在积累,而学习贵在持之以恒。 要学习那本陆佳华的《嵌入式软硬件协同设计实战指南》或者是实际使用zynq7000系列的开发板进行科研试验,都要明确开发板上的PL与PS资源分布。因此首先要明白什么是MIO什么是EMIO。MIO:多功能IO接口,属于Zynq的PS部分原创 2016-08-31 19:45:09 · 2702 阅读 · 0 评论 -
ARM Linux Kernel浮点运算(软浮点、硬浮点)
硬浮点Hard-float编译器将代码直接编译后给硬件浮点协处理器(浮点运算单元FPU)去执行。FPU通常有一套额外的寄存器来完成浮点参数传递和运算。使用实际的硬件浮点运算单元FPU当然会带来性能的提升。因为往往一个浮点的函数调用需要几个或者几十个时钟周期。软浮点 Soft-float编译器把浮点运算转换成浮点运算的函数调用和库函数调用,没有FPU的指令调用,也没有浮点寄存器的参数传递原创 2016-12-23 11:19:20 · 9437 阅读 · 1 评论 -
RS232/485、UART及波特率相关
波特率描述了单片机或计算机在串口通信时的速率。如每秒钟传送960个字符,而每个字符格式包含10位(1个起始位,1个停止位,8个数据位),这时的波特率为960Bd,比特率为10位*960个/秒=9600bps。又比如每秒钟传送960个二进制位,这时的波特率为960Bd,比特率也是960bps。波特率,可以通俗的理解为一个设备在一秒钟内发送(或接收)了多少码元的数据。它是对符号传输速率的一种度量,原创 2017-12-15 10:43:26 · 13634 阅读 · 0 评论 -
PetaLinux启动过程解析
1、BootROM部分在器件上电运行后,处理器自动开始Stage-0 Boot,也就是执行片内BootROM中的代码BootROM会初始化CPU和一些外设,以便读取下一个启动阶段所需的程序代码,FSBL(First2、BOOT.bin部分BootROM会去读取MIO[2..8],从而确定启动设备方式(Zynq支持多种启动设备方式,可以使用跳线帽设置),将选定设备的头192Kbyte内容,也就是FS...原创 2017-10-20 20:18:41 · 10480 阅读 · 0 评论 -
Petalinux BSP设计中的问题及注意事项
相比从Xilinx官方网站上下载的u-boot源码包、linux源码包、设备树文件夹制作BSP的方式,Petalinux工具直接制作BSP有很大的改动。1、之前应用程序是采用交叉编译链Xilinx ARM GNU/Linux Toolchain,使用Petalinux工具制作的BSP运行应用程序需要使用交叉编译链Xilinx ARM v7 GNU/Linux Toolchain虽然差别不大...原创 2017-04-21 15:37:33 · 5718 阅读 · 3 评论 -
嵌入式系统watchdog详解
嵌入式系统的工作常会受到外界电磁场的干扰,造成程序的跑飞,而陷入死循环,程序的正常运行被打断,会造成整个系统的陷入停滞状态,发生不可预料的后果,所以需要对嵌入式系统运行状态进行实时监测,便产生了一种专门用于监测嵌入式系统运行状态的芯片,称"看门狗"。 Linux 自带了一个watchdog 的实现,用于监视系统的运行,包括一个内核 watchdog module 和一个用户空间的 watc原创 2017-12-25 11:16:52 · 5578 阅读 · 0 评论 -
了解赛灵思Vivado开发套件与IP核的原理、作用
IP核(IP Core) Vivado中有很多IP核可以直接使用,例如数学运算(乘法器、除法器、浮点运算器等)、信号处理(FFT、DFT、DDS等)。IP核类似编程中的函数库(例如C语言中的printf()函数),可以直接调用,非常方便,大大加快了开发速度。 IP内核的三种类型IP核有三种不同的存在形式:HDL语言形式,网表形式、版图形式。分别对应我们常说的三类IP内核:软核、原创 2017-09-04 14:23:02 · 2905 阅读 · 0 评论 -
嵌入式项目开发中的问题及解决方法
High-precisionmeasurement司南板卡串口阻塞读(select)超时(timeout)原因:1、波特率设置不正确,出厂时为115200.因为BSP设计时加入的uartlite模块波特率为9600。解决方法:【1】通过CRU将司南板卡波特率修改为9600.(有一些其它的设置也需要注意,比如设置采样数据直接从串口输出保存到核心板的存储设备(如eMMC)中,不保存在司南板原创 2017-09-04 14:21:24 · 3973 阅读 · 0 评论