随笔分类 -  SOC

芯片验证工作初有感
摘要:转眼自己已经硕士毕业快两年了,时间过得很快。保持头脑清醒找准方向比努力更重要,所以作为一名技术工程师应该每隔一段时间就要跳出技术细节好好思考下自己做过的和未来要做的事情。这次谈谈自己从事芯片验证工作中学到的知识和感受吧。 我们到底需要干什么? 芯片验证就是保证设计满足预期和需求。第一步便是制定验证计 阅读全文
posted @ 2021-05-17 22:07 没落骑士 阅读(3726) 评论(1) 推荐(7)
UVM基础总结——基于《UVM实战》示例
摘要:一、前言 工作一直在做SoC验证,更关注模块间的连接性和匹配性,所以相比于擅长随机约束激励的UVM来说,定向测试的概念更容易debug。当然前提是IP已经被充分验证。因此觉得接触UVM的机会较少。到现在发现即使在SoC验证中依然有它的用武之地。比如验证可独立于CPU工作的IP、快速对系统性能进行评估 阅读全文
posted @ 2021-01-22 09:56 没落骑士 阅读(11130) 评论(1) 推荐(4)
ZYNQ入门实例——定时器中断与程序固化
摘要:一、前言 APU系统中CPU以串行执行代码的方式完成操作,软件方式很难做到精准计时,因此调用内部定时器硬件完成计时是更好的选择。本文以定时器中断方式控制LED周期性闪烁为例学习私有定时器的使用。同时学习如何将软件程序与硬件比特流文件一起固化到SD卡中,实现上电自动配置与启动自定义系统。 功能定义:通 阅读全文
posted @ 2020-03-08 18:20 没落骑士 阅读(2727) 评论(0) 推荐(0)
ZYNQ自定义AXI总线IP应用——PWM实现呼吸灯效果
摘要:一、前言 在实时性要求较高的场合中,CPU软件执行的方式显然不能满足需求,这时需要硬件逻辑实现部分功能。要想使自定义IP核被CPU访问,就必须带有总线接口。ZYNQ采用AXI BUS实现PS和PL之间的数据交互。本文以PWM为例设计了自定义AXI总线IP,来演示如何灵活运用ARM+FPGA的架构。 阅读全文
posted @ 2020-03-02 23:01 没落骑士 阅读(3740) 评论(1) 推荐(2)
ZYNQ入门实例——三种GPIO应用、中断系统及软硬件交叉触发调试
摘要:一、前言 Xlinx的ZYNQ系列SOC集成了APU、各种专用外设资源和传统的FPGA逻辑,为ARM+FPGA的应用提供助力,降低功耗和硬件设计难度的同时极大提高两者间传输的带宽。之前在研究生课题中使用过ZYNQ搭建环路系统对算法进行板级验证,但并没有深入使用和理解这个异构平台,今天算是对入门的总结 阅读全文
posted @ 2020-02-24 22:27 没落骑士 阅读(4664) 评论(0) 推荐(1)
【转载】ZYNQ Cache问题的解决方法
摘要:Zynq Cache问题的解决方法 - Kevin_HeYongyuan - 博客园https://www.cnblogs.com/kevin-heyongyuan/articles/7738552.html 在进行PS-PL之间的DMA传输时,不可避免会遇到Cache问题。今天在这里讲一下Cach 阅读全文
posted @ 2019-05-14 10:01 没落骑士 阅读(4564) 评论(0) 推荐(0)
FPGA控制RGMII接口PHY芯片基础
摘要:一、前言 网络通信中的PHY芯片接口种类有很多,之前接触过GMII接口的PHY芯片RTL8211EG。但GMII接口数量较多,本文使用RGMII接口的88E1512搭建网络通信系统。这类接口总线位宽小,可以降低电路成本,在实际项目中应用更广泛。 二、从GMII过度到RGMII 先看看GMII和RGM 阅读全文
posted @ 2019-05-13 11:20 没落骑士 阅读(20163) 评论(1) 推荐(0)
自定义AXI总线形式SPI接口IP核,点亮OLED
摘要:一、前言 最近花费很多精力在算法仿真和实现上,外设接口的调试略有生疏。本文以FPGA控制OLED中的SPI接口为例,重新夯实下基础。重点内容为SPI时序的RTL设计以及AXI-Lite总线分析。当然做些项目时可以直接调用Xilinx提供的SPI IP核,这里仅出于练习的目的考虑。 二、接口时序分析 阅读全文
posted @ 2019-02-05 11:58 没落骑士 阅读(7539) 评论(0) 推荐(1)
利用ZYNQ SOC快速打开算法验证通路(6)——LWIP实现千兆TCP/IP网络传输
摘要:一、前言 之前ZYNQ与PC之间的网络连接依赖于外接硬件协议栈芯片,虽然C驱动非常简单,但网络带宽受限。现采用LWIP+PS端MAC控制器+PHY芯片的通用架构。关于LWIP库,已经有很多现成的资料和书籍。其有两套API,一个是SOCKET,另一个是本例中要用到的RAW。RAW API理解起来较为复 阅读全文
posted @ 2018-10-28 18:39 没落骑士 阅读(11288) 评论(3) 推荐(0)
利用ZYNQ SOC快速打开算法验证通路(6)——利用AXI总线实时配置sysGen子系统
摘要:利用ZYNQ验证算法的一大优势在于,可以在上位机发送指令借助CPU的控制能力和C语言易开发特点,实时配置算法模块的工作模式、参数等对来对其算法模块性能进行全面的评估。最重要的是无需重新综合硬件模块。 接着上篇该系列博文,在sysGen中设计模块功能为:根据模式选择输入,来完成乘2或除2两种运算,0乘 阅读全文
posted @ 2018-09-14 21:21 没落骑士 阅读(1424) 评论(1) 推荐(1)
利用ZYNQ SOC快速打开算法验证通路(5)——system generator算法IP导入IP integrator
摘要:一、前言 利用FPGA设计算法一直以来都是热点,同样也是难点。将复杂的数学公式 模型通过硬件系统来搭建,在低延时 高并行性等优势背后极大提高了设计难度和开发周期。Xilinx公司的sysGen(system generator)工具扩展了MATLAB的simulink,提供很多IP Catalog中 阅读全文
posted @ 2018-09-04 17:51 没落骑士 阅读(1785) 评论(0) 推荐(1)
利用ZYNQ SOC快速打开算法验证通路(4)——AXI DMA使用解析及环路测试
摘要:一、AXI DMA介绍 本篇博文讲述AXI DMA的一些使用总结,硬件IP子系统搭建与SDK C代码封装参考米联客ZYNQ教程。若想让ZYNQ的PS与PL两部分高速数据传输,需要利用PS的HP(高性能)接口通过AXI_DMA完成数据搬移,这正符合PG021 AXI DMA v7.1 LogiCORE 阅读全文
posted @ 2018-08-29 15:32 没落骑士 阅读(10300) 评论(0) 推荐(0)
利用ZYNQ SOC快速打开算法验证通路(3)——PS端DMA缓存数据到PS端DDR
摘要:上篇该系列博文中讲述W5500接收到上位机传输的数据,此后需要将数据缓存起来。当数据量较大或者其他数据带宽较高的情况下,片上缓存(OCM)已无法满足需求,这时需要将大量数据保存在外挂的DDR SDRAM中。 最简单的方式是使用Xilinx的读写地址库函数Xil_In32()和Xil_Out32(), 阅读全文
posted @ 2018-07-26 16:51 没落骑士 阅读(3194) 评论(0) 推荐(0)
利用ZYNQ SOC快速打开算法验证通路(2)——数据传输最简方案:网络调试助手+W5500协议栈芯片
摘要:在上一篇该系列博文中讲解了MATLAB待处理数据写入.bin二进制数据文件的过程,接下来需要将数据通过以太网发送到ZYNQ验证平台。之前了解过Xilinx公司面向DSP开发的System Generator可以通过硬件协仿真的方式,进行算法板级验证。一个是本人不熟悉这种方式,再一个缺乏通用性,也无法 阅读全文
posted @ 2018-07-05 15:34 没落骑士 阅读(2333) 评论(0) 推荐(0)
利用ZYNQ SOC快速打开算法验证通路(1)——MATLAB浮点数与定点二进制补码互转
摘要:最近本人一直在学习ZYNQ SOC的使用,目的是应对科研需要,做出通用的算法验证平台。大概思想是:ZYNQ PS端负责与MATLAB等上位机数据分析与可视化软件交互:既可传输数据,也能通过上位机配置更新硬件算法模块配置寄存器内容,同时可计算分析PL端算法实现性能指标。PL端的FPGA逻辑则负责算法的 阅读全文
posted @ 2018-06-29 18:17 没落骑士 阅读(1359) 评论(0) 推荐(0)
ZYNQ EMIO使用及可重用封装
摘要:为了快速实现算法板级验证,PC端需要通过JTAG或以太网与FPGA形成通路。最简单便捷的方案是利用协议栈芯片,用户可以无视底层,利用简单的SPI协议读写寄存器实现复杂的TCP UDP等网络协议。当然带宽会受限于SPI接口有效速率,本文采用芯片为W5500,支持10M/100M自适应,其理论值高达80 阅读全文
posted @ 2018-06-19 15:43 没落骑士 阅读(2795) 评论(0) 推荐(0)
AXI-Lite总线及其自定义IP核使用分析总结
摘要:ZYNQ的优势在于通过高效的接口总线组成了ARM+FPGA的架构。我认为两者是互为底层的,当进行算法验证时,ARM端现有的硬件控制器和库函数可以很方便地连接外设,而不像FPGA设计那样完全写出接口时序和控制状态机。这样ARM会被PL端抽象成“接口资源”;当进行多任务处理时,各个PL端IP核又作为AR 阅读全文
posted @ 2018-06-09 11:14 没落骑士 阅读(6353) 评论(1) 推荐(0)
VIVADO下的Microblaze系统搭建:永远的Hello World
摘要:目前,xilinx的zynq系列FPGA炒的火热,SOC成为FPGA发展的必然趋势。可见所有功能均用硬件描述语言设计是不科学的。硬件逻辑独有的并行性使其在实时处理和并行算法中占尽优势,但当执行串行操作时却需要使用笨重的状态机来完成。因此,要实现对实时性要求不高的串行操作,对各类IP核的总体控制调度, 阅读全文
posted @ 2018-01-02 17:31 没落骑士 阅读(22769) 评论(1) 推荐(2)