本文是该系列的第15篇。数字控制振荡器(NCO)是FPGA中常用的一个模块,在《FPGA数字信号处理系列》第一篇就对其做了相关介绍。System Generator中的block大致可以分为两类:高层次封装(面向系统级,如第2篇设计中用到的Digital FIR Filter)和低层次封装(面向底层,与FPGA资源的联系更直接)。
本文将采用IIR滤波器、DDS、DDS Compile IP核3种设计原理在System Generator中实现NCO。前两种采样低层次封装block,后一种采用高层次封装block,体会其中的差别。
<strong>基于IIR滤波器的NCO实现</strong>
在需要高带宽的应用中使用高带宽内存(HBM)。
<iframe src='//players.brightcove.net/17209957001/SywTPUVC_default/index.html?videoId=5816765882001' allowfullscreen frameborder=0 width="600" height="338"></iframe>
1. 原地交换两个数字
Python 提供了一个直观的在一行代码中赋值与交换(变量值)的方法,请参见下面的示例:
x,y= 10,20print(x,y)x,y= y,xprint(x,y)#1 (10, 20)#2 (20, 10)
赋值的右侧形成了一个新的元组,左侧立即解析(unpack)那个(未被引用的)元组到变量 和 。
一旦赋值完成,新的元组变成了未被引用状态并且被标记为可被垃圾回收,最终也完成了变量的交换。
2. 链状比较操作符
比较操作符的聚合是另一个有时很方便的技巧:
n= 10result= 1< n< 20print(result)# Trueresult= 1> n<= 9print(result)# False
一 、前言
本文设计思想采用明德扬至简设计法。VGA是最常见的视频显示接口,时序也较为简单。本文从利用显示屏通过VGA方式显示测试图案及静态图片着手带大家接触图像显示应用,算是为后续VGA显示摄像头采集图像以及HDMI高清数字显示方式打个基础。
二、VGA显示原理
机器人技术研究人员和工程师可以使用 MATLAB 和 Simulink 设计和优化算法,为真实系统建立模型,并自动生成代码——所有过程均在一个软件环境下完成。
<font color="#FF8000">作者:lee神,FPGA开源工作室</font>
<strong>1. xilinx FPGA简介</strong>
回顾 UltraScale 架构中的收发器增强特性。
<iframe src='//players.brightcove.net/17209957001/SywTPUVC_default/index.html?videoId=5816767191001' allowfullscreen frameborder=0 width="600" height="338"></iframe>
本文是该系列的第14篇。第5篇中在介绍Gateway In block时谈到了System Generator中的数据类型,及不同的量化和溢出方式。本文将以两个简单的设计实例,更直观地说明不同的量化和溢出方式有什么区别。
<font color="#FF8000">作者:Steve Leibson</font>
很多嵌入式设计使用基于微处理器和微控制器的单板计算机 (SBC) 和系统级模块 (SoM)(例如,请参阅“使用 Raspberry Pi 3 构建低成本工业控制器”)。但是,更多嵌入式应用无法忍受与软件相关的响应时间所带来的延迟。
这些应用需要只有定制硬件方可实现的额外性能,而开发定制硬件的最快捷方法就是使用 FPGA。
本文将讨论使用 SoM 来开发嵌入式系统的优势,这些系统需要借由 FPGA 提供更高的处理能力。本文还将介绍各种不同的 FPGA SoM,并讨论它们在嵌入式设计开发中的使用。
了解如何使用 Xilinx SDK 创建 Linux 应用 我们还将介绍和演示 SDK 特性 - 支持 Linux 应用程序开发和调试的不同方面。过程快速简便。
<iframe src='//players.brightcove.net/17209957001/SywTPUVC_default/index.html?videoId=4027777656001' allowfullscreen frameborder=0 width="600" height="338"></iframe>
vivado:
1,打开vivado,选择菜单栏里的Tools->options
<center><img src="http://xilinx.eetrend.com/files-eetrend-xilinx/blog/201808/13334-39109-…; alt="" width="670"></center>
<strong>简介</strong>
经过一段时间的学习,这里将PCIe DMA模式的学习结果做一个总结,由于手里没有包含PCIe的板子,因此和学习PIO一样对DMA模式中的关键模块的代码进行逐条分析,希望对和我一样的初学者有所帮助。
软件:VIVADO2017.4。
全球领先的信息技术研究和顾问公司Gartner发布的2018年新兴科技技术成熟度曲线指出了35项不容错过的技术,并由此揭示出五大将模糊人机之间界限的新兴科技趋势。诸如人工智能(AI)之类的新兴科技在协助企业开展无所不在的、始终在线且与商业生态系统长久相连的业务,从而获得未来发展方面发挥着至关重要的作用。
Gartner研究副总裁Mike J. Walker表示:“商业与科技领导者将继续面对科技创新的加速发展,而这些创新将对于他们与公司员工的互动、合作伙伴的协作以及为客户打造的产品和服务带来深远影响。首席信息官与科技领导者应始终审视市场,评估并尝试各种新兴科技,以找到那些对其业务具有深刻潜在影响力和战略相关性的新商机。”
1.加号
第一种,有编程经验的人,估计都知道很多语言里面是用加号连接两个字符串,Python里面也是如此直接用“+”来连接两个字符串;
print 'Python' + 'Tab'
结果:
PythonTab
2.逗号
第二种比较特殊,使用逗号连接两个字符串,如果两个字符串用“逗号”隔开,那么这两个字符串将被连接,但是,字符串之间会多出一个空格;
print 'Python','Tab'
结果:
Python Tab
<strong>继年初发布新一代FPGA框架后,FPGA巨头赛灵思在Hot Chips大会揭露了最新一代深度神经网络推理装置xDNN的部分规格参数。随着更多定制芯片的发展,现如今AI芯片的战火已经蔓延到推理领域。赛灵思的xDNN可配置、可复写,进行多任务处理,还配有Tensor内存。</strong>
目前来看,FPGA可能没有像一些人预期的那样在深度学习的训练空间中占据一席之地,但AI推理的低功耗、高频率需求非常适合可重复编程硬件的性能曲线。
然而,现在人们越来越专注于推理与训练的新体系架构,FPGA也在努力在定制化硬件领域保持领先,而这要靠一些高级编程工具来降低编程的复杂度。
本系列第13篇简单介绍了使用RTL工程IO布局工程两种方法定义IO Ports。在I/O Planning View Layout中(IO布局工程中是Default Layout),显示了FPGA器件资源、封装管脚、I/O Ports等详细信息。设计者借助这些信息来完成I/O规划。
<strong>简介</strong>
学习PCIe有一段时间了,这里将这段时间的学习做一个总结。由于手里没有包含PCIe的板子,因此所做的也就是尽力将XILINX提供的实例工程中的关键模块进行分析,包括 PIO_RX_ENGINE.v,PIO_TX_ENGINE.v,PIO_EP_MEM_ACCESS.v ,希望对和我一样的初学者有所帮助。
软件:VIVADO2017.4
<strong>第一步:PCIe基础知识 </strong>
PCIe协议比较复杂,XILINX官方提供了相关文档(pg054),此外也有不少好的中文学习资料(PCIe入门,PCIe体系结构导读)。文章结尾会上传部分学习资料,有需要的同学可以下载。
本文主要介绍如何使用 HSI 工具来创建一个定制驱动程序,使 xparameters.h 文件驻留在 SDK 中。
<strong>第 1 步:在 IP 打包器中创建 IP</strong>

