FPGA软硬协同设计学习笔记及基础知识(一)

   

一、FPGA软件硬件协同定义:

     软件:一般以软件语言来描述,类似ARM处理器的嵌入式设计。硬件定义如FPGA,里面资源有限但可重配置性有许多优点,新的有动态可充配置技术。

     

      Xilinx开发了部分动态可重配置技术,它可以只针对需要变化的FPGA逻辑完成重配置而保持其他部分FPGA正常工作。在汽车电子应用中,汽车安全辅助驾驶功能越来越被重视,其中高级倒车后视、自动泊车和行车时离道报警两个功能都可以用摄像头完成。这两个功能的图像采集处理逻辑是一致的,但是其图像处理的算法却不同,如果专门设计一个SoC芯片的话,需要这两部分独立的IP核,或者为了降低成本尽量将算法全部在处理器中实现。而用了Zynq,因为两部分的功能并不是同时需要的,我们可以保持处理器部分代码执行不变,FPGA中图像采集模块不变,在倒车时通过部分可重配置技术加载倒车时的图像处理算法硬件,而在开车时,自动加载离道报警算法硬件。这样就可以利用同样一块逻辑单元实现两部分的硬件功能。提高并加强了实时响应的速度。

  二、“硬件加速”定义?

         硬件加速(Hardware acceleration)就是利用硬件模块来替代软件算法以充分利用硬件所固有的快速特性。硬件加速通常比软件算法的效率要高。

        硬件加速时CPU调度GPU运行,内存占用率也会升高。

 三、软件与硬件协同调试如何完成?

         硬件主要采用仿真工具,在线逻辑分析仪chipscope。

四、概括Zynq-7000在SOC嵌入式应用的优势?

      Zynq-7000 采用可扩展式处理平台架构(Extensible Processing Platform、EPP),是 Xilinx 用 28nm HKMG工艺制成的低功耗,高性能,高扩展性的新型芯片,这款新品里面集成了ARM CORTEX-A9 MPSOC 硬核以及相应的SOC系统。

     

PS: 处理系统(Processing System),与FPGA无关的ARM的SOC的部分。

PL: 可编程逻辑 (Progarmmable Logic),FPGA部分。

APU: 应用处理器单元(Application Processor Unit)。位于PS里面的中心位置。

SCU: Snoop Control Unit,用来保持双核之间的数据Cache的一致性。也就是说,第一个A9 处理器写存储时,只是写在了缓存里,没有进主存,如果第二个A9读操作,涉及到第一个写脏了的数据段,SCU要保证第二个A9的缓存里是最新的数据。如果第二个A9写同样数据段的数据,需要在第一个中体现出写的内容。SCU的存在,才使得两个核成互相联系的 “双核”,才能成为MPsoc。

 

1、正确规划单板上 FPGA 的定向并将信号分配给特定的引脚,这样可以显著改进系统整体性能、功耗设计周期。可视化 FPGA 器件与印刷电路板 (PCB) 之间的物理和逻辑互动方式,使您可以优化通过器件的数据流。未正确规划 I/O 配置则可能导致系统性能下降和设计收敛时间延长。单板上 FPGA 器件的布局与其它组件的互动会对 I/O 规划产生巨大影响。
2、首先应确定 FPGA 器件在 PCB 上的定向。还要考虑固定 PCB 组件的位置,以及内部 FPGA 资源。例如,使 FPGA 封装的 GT 接口尽量靠近在 PCB 上与其连接的组件,这样可以缩短 PCB 走线长度,同时减少 PCB 过孔数量。
3、赛灵思建议您设计时首先选择时钟资源,然后再选择管脚。您的时钟选择不仅可以确定特定的管脚,而且还可以支配逻辑布局。正确的时钟选择可以产生非常好的效果。
4、赛灵思 7 系列器件包含 32 个全局时钟缓冲器 (BUFG)。其中 16 个全局时钟缓冲器位于 FPGA 器件水平方向中心的上半部分,而另外 16 个则位于水平方向中心的下半部分。芯片上半部的 PLL 和 MMCM只能连接到水平方向中心以上的 16 个 BUFG 上。而芯片下半部的PLL 和 MMCM 只能连接到水平方向中心以下的 16 个 BUFG 上。选择 PLL 或 MMCM 时,请尽量使用 PLL,因为其具有更严格的抖动控制。在如下情况下也可以使用 MMCM :(1) PLL 已用尽 ; (2)MMCM 可提供所需的高级功能,但 PLL 则不能。
BUFG 组件可以满足设计的大多数时钟要求,但对以下要求不高 :
    • 时钟数量
    • 设计性能

BUFG 组件易于通过综合调用,并且限制较少,支持大多数普通时钟。
5、使用存储器接口生成器 (MIG) 生成管脚。
千兆位收发器 (GT) 具有特定的管脚要求。假如 GT 采用相同或邻近的 quads,则您可以在多个 GT之间共享参考时钟。赛灵思建议您使用 GT 向导生成内核。有关管脚建议,敬请参阅产品指南。
HP(高性能)和 HR(大范围)Bank在收发信号的速度上存在差异。根据所需的 I/O 速度,在 HP或 HR Bank 间做出选择。
6、从加电到断电,FPGA 器件要经过多个电源阶段,并伴有不同的功率需求 :
• 加电功率
加电功率是 FPGA 器件首次加电时发生的瞬时峰值电流。电压不同时,该电流强度也会发生变化且电流强度取决于 FPGA 器件的结构、电源上升到额定电压的能力,以及器件的工作条件(比如温度以及不同电源之间的排序)。在新型 FPGA 器件架构中,不用担心峰值电流的问题,因为它遵循了适用的上电顺序指南。
• 配置功率
配置功率是指在器件配置期间所需的功率。配置功率通常低于有效功率,因此,除非您的使用过程功耗极低,否则该瞬态不会影响供电需求
• 待机功率
待机功率(又称“设计静态功率”)是器件按设计配置后未对其施加任何外部活动或者未产生任何内部活动时提供的功率。待机功率是设计运行时电源应提供的最小连续功率。
• 有功功率
有功功率(又称“设计动态功率”)是器件运行应用程序时所需功率。有功功率包括待机功率(全部静态功率)以及因设计活动(设计动态功率)产生的功率。有功功率是瞬时发生的,且根据输入数据模式以及设计内部活动的不同每个时钟周期变化一次。
7、配置指的是将特定应用数据加载到 FPGA 器件的内部存储器的过程。
赛灵思 FPGA 配置数据储存在 CMOS 配置锁存(CCL)中,因此配置数据很不稳定,且在每次FPGA 器件断电后都必须重新加载。赛灵思 FPGA 器件可通过来自外部非易失性存储器件的配置引脚自行加载配置数据。而且还可以用外部智能源配置器件。赛灵思 FPGA 配置模式接口涵盖从带有2 引脚的基础串行模式接口到带有50 引脚的高性能主 BPI(同步)模式接口。

       

       

 
  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
课程简介 该课程是FPGA在嵌入式系统领域的应用,以XILINX的MICROBLAZE 32位软核处理器为载体,介绍嵌入式系统中软件和硬件协同设计协同调试的方法,诠释All Programmable在嵌入式系统设计中的重要意义。 分享到: 课程目录 课程讨论 第35讲:Vivado高级设计技术 5 634 第34讲:基于HLS实现矩阵相乘 5 603 第33讲:基于HLS实现时序逻辑 5 288 第32讲:在Vivado中看逻辑门的内部逻辑结构 5 857 第31讲:从组合逻辑、时序逻辑和矩阵相乘看基于HLS的数字系统实现 5 228 第30讲:HLS关键优化策略 5 304 第29讲:高级综合工具调度及C代码的关键属性 5 271 第28讲:高级综合工具Vivado应用 5 426 第27讲:基于MATLAB的模型设计 5 306 第26讲:软硬协同调试及构建中断系统 5 350 第25讲:软硬协同调试并分析系统 5 212 第24讲:用在线逻辑分析仪对系统进行硬件调试 5 274 第23讲:软硬协同调试方法 5 263 第22讲:如何修改模版并在系统中运行 5 294 第21讲:详细分析LED IP模版 5 263 第20讲:手把手教如何创建IP核 5 358 第19讲:实验:打通Micorblaze和SRAM的通道2 5 233 第18讲:实验:打通Micorblaze和SRAM的通道1 5 293 第17讲:GPIO实验详细分析 5 443 第16讲:实验:手把手教AXI GPIO核仿真 5 614 第15讲:MicroBlaze处理器结构及使用BSB建立的最小系统结构 5 486 第14讲:3位8进制计数器实现详解 5 268 第13讲:数字逻辑中的关键问题——有限状态机 5 303 第12讲:从PlanAhead及ISE综合实现中详细分析FPGA结构 5 422 第11讲:详解FPGA芯片的内部结构之查找表(LUT) 5 423 第10讲:用ISE设计工具看清FPGA内部结构 5 513 第9讲:AMBA AX14协议规范 5 535 第8讲:AMBA AHB协议规范 5 398 第7讲:AMBA APB协议规范 5 399 第6讲:AMBA协议规范概述 5 559 第5讲:Zynq平台设计学方法II 5 1028 第4讲:Xilinx可扩展处理平台导论(Zynq-7000)及设计方法 805 第3讲:Xilinx可编程SoC设计流程及开发工具概述 716 第2讲:All Programmable(全可编程)平台SoC特点 599 第1讲:可编程SoC设计导论——内容简介
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Paul安

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值