MAX10系列FPGA设计案例简述

                                                  基于Intel(Altera)MAX10系列FPGA的设计案例简述 

                                                                                                                                 作者:Hello,Panda于北京

       书接前回,不知大家是否还记得2015年公历最后一天,熊猫君给大家推荐了Altera(当时的Altera还是Altera)的MAX10系列FPGA呢?三年后的今天,熊猫君想继续展开聊聊,分享分享这三年里实施过的或看到别人实施过的基于MAX10系列FPGA的应用方案,当然啦,这些应用还是主要集中在控制类、接口类领域,毕竟能力和定位在那里。

     案例一:工业相机系统

       对一部分工业相机而言,前端最多的是实现图像Sensor采集(或许还有一些简单预处理)和传输,算法应用处理大多在计算机上,一般的方案架构如下:

                                                                           图1  部分工业相机的架构图

     (1)如图1所示,核心是个FPGA(需要做预处理的可能会挂一片SRAM或者DDR),主要担负Sensor的配置与数据采集、与工控机的控制交互和图像数据上传等工作;

     (2)Sensor通常分辨率不会太大,也有可能是Mono的,也有可能帧率较高,输出接口则是五花八门,有可能是LVDS、Hispi、BT601/656/1120等等各种;配置总线接口则基本是SPI或IIC;通过FPGA逻辑实现数据接收和配置总线接口;

     (3)控制接口与计算机交互控制命令或状态,控制命令有可能是设置相机、同步触发等,物理层可能通过RS-232/422/485或者CAN总线等;通过FPGA IP资源实现控制接口;

     (4)这里的数据接口输出相机前端系统的数据到工业相机,物理层常用的有a)USB3.0,通常采用Cypress的转接桥片,FPGA实现一个并行存储总线逻辑;b)以太网,一般会用UDP传输,要求高一些的会走一些握手协议,GigE Vision目前用的比较多,会利用FPGA IP资源来实现(当然GigE Vison IP并不免费,有人选择花钱买第三方的,也有公司选择自主开发); c)CameraLink,这个大家都熟悉,工业相机用了好些年了;

    (5)有一些简单预处理的,会选择挂SRAM或DDR来缓存,做一些类似于几何拼接、坏点校正、简单的降噪、增强或者Gamma之类的(有的用到18*18乘法器,看具体算法);

       实际上这里选哪家的FPGA并没有什么特殊的优势或者门槛,有用Xilinx或Altera Cyclon的,也有用Lattice的。我这里想说的是,这几年用MAX10的越来越多了。大家或许是基于下面的一些原因考虑的吧:

    (1)性价比因素:比Xilinx的便宜得多,就算是MAX10系列的器件和Lattice同规模的相比较价格也在同一个水平上,但是用起来会更方便、IP资源也多、社区生态也更丰富;

    (2)单电源3.3V或者双电源(2.5V和1.2V)供电:这样能极大的简化电源方案,如果选用单电源3.3V的,基本上只要一个电轨就够了;

    (3)内置Flash:无需再外接程序或数据存储的Flash;

    (4)汽车认证:AEC-Q100认证,这对有些应用来说很重要。

   综合来讲,用MAX10系列器件能够大幅的减少电路尺寸、节省BOM成本,但是也有一些缺点,主要集中在单电源供电的器件发热稍大、部分器件的交期较长。

   案例二:电源控制

       在复杂的系统中往往有多个处理器或处理单元、模组,对掉电、上电和电源调节有特殊的要求,主要体现在时序和反馈调节上。在这里使用CPLD太弱、使用其它FPGA太费,熊猫君看到用得比较多的是单电源供电的10M02(或者10M04,毕竟还是有一些逻辑需求在里面),封装一般用M153的(8mm*8mm)。主要实现的功能如下:

     (1)上电和掉电时序控制,这个简单,GPIO输出个高低电平OK;

     (2)反馈调节:用片上的SAR ADC采样电压或者电流数据,通过SMBUS对电源管理芯片进行实时调节(也有用DAC调节电源FB基准的);

     (3)风扇控制:采样温度、PWM调节风扇转速的;

     (4)有的还会和处理器建立一个通信接口,一般是SPI或者IIC。

      用起来特别方便,一个3.3V电源,一片MAX10芯片搞定一切,占的地方小,也便宜。

    案例三、电机控制

      电机控制这一块儿的应用有用作控制步进电机的,也有用在BLDC(FOC)控制上的。

     (1)步进电机:比较简单,就是一个根据输入命令信号生成相位脉冲,真的很简单,主要还是用10M02的器件;

     (2)用作接口转接的:主要是在BLDC(FOC)控制中采样编码器之类反馈器件的值,编码器接口的协议众多,FPGA采集到后经过滤波处理(有的用到18×18乘法器,看算法)通过总线送到主处理器如TI的TMS320F28335/ TMS320F28069之类的专用的电机控制DSP上。对较为复杂的如多机械关节的地方,接入的编码器路数可能还会比较多,这一块儿主要还是用10M02和10M04的器件较多。

     案例四、图像接口

        一个是体现在其它接口与MIPI D-PHY之间的转接上,监控和显示领域用得比较多,早期主要是用的Lattice的方案(基本上自己没法改动),现在也有一些用MAX10方案的:

       (1)监控领域:主要是做sensor的采集到主处理器MIPI接口输入(早几年TI的方案上也有转并口BT1120的),监控行业现在主要是和华为海思主处理器的MIPI D-PHY CSI接口对接;

       (2)显示领域:主要是MIPI D-PHY DSI转SDI(用第三方收发器芯片)、HDMI、LVDS用于中大型屏显示的。

       这两种应用大多会用10M25和10M40双电源(单电源的LVDS工作速率要低)的器件。

       二个是一些特殊的应用,比如说模拟输出的图像在前端又不能用较大面积电路的。如制冷型探测器的图像采样:

       (1)传统的办法是分成2级或者3级:a)最前端是信号板,套在探测器的脖子上(业内人士清楚这种方式); b)中间是AD板(这一级也有可能没有,直接放到图像处理板上),主要进行ADC采样,离信号板的距离相对近(因模拟信号不适合远距离传输,即使转成差分的);c)图像板:接收AD板采样的信号(或者是板上本来就有AD采样电路)和红外图像处理。这样子带来的不利影响是模拟信号需要较长距离的线上传输,可能会带来干扰或衰减,影响图像质量(这对红外图像系统很重要);电路多且分散,也会对可靠性带来影响。

       (2)采用MAX10的方案,将低功耗ADC和信号板合并,实现模拟信号传输路径最优,转成LVDS数字信号抗干扰能增强。已知现有的主要是用M153封装(8*8mm面积)的那颗料。

       另外还有一些其他接口的应用,比如说子母时钟系统,对时码输出有秒对齐要求的,会用它来做接口板输出串口、1X9或其他接口的时码。

       总之呢,MAX10的器件在性价比、资源和易用性上还是很有优势的。不过,就目前的国际形势来看,中国还是需要有且必须有自己的真正能够达到规模商用水平的FPGA,熊猫君期待那一天尽快到来。

       另外,为了促进交流,感兴趣的同行可加入QQ群:300148644进行进一步的技术交流!

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
今年Altera推出最新的10FPGA和SoC系列产品之一MAX 10MAX 10数据手册)FPGA,小外形封装、低成本和瞬时接通可编程逻辑器件中采用了先进的工艺,是革命性的非易失FPGA。而Altera推出的评估套件MAX10M08可以作为工业和汽车等很多市场领域和应用提供通用开发平台,也可以把 10M08 评估电路板作为开始 MAX 10 FPGA 设计的高性价比起点。 那么下面就两个方面带着大家开启MAX 10体验之旅。 一、MAX 10 FPGA特性 Altera MAX 10 FPGA是集成了闪存、ADC、RAM和DSP功能的革命性可编程器件,是单芯片、双配置的最佳解决方案。继承了前一代 MAX 器件系列的单芯片特性,使用单核或者双核电压供电,其密度范围在 2K 至 50KLE 之间。MAX 10 FPGA 系列提供先进的小圆晶片级封装 (3mmx3mm),以及有大量 I/O 引脚封装的产品。 片上资源: 50,000 个逻辑单元 (LE) 500 个 用户I/O 管脚 非易失、瞬时接通体系结构 单芯片 嵌入式 SRAM DSP 模块 高性能锁相环 (PLL) 和低偏移全局时钟 外部存储器接口 (DDR3 SDRAM、DDR3L SDRAM、DDR2 SDRAM、LPDDR2) Nios:registered: II 软核嵌入式处理器支持 支持3.3 V、LVDS、PCI 等 30多个 I/O 标准 嵌入式ADCs – 12 位,1 Msps -18 路模拟输入通道 -温度传感器 可供选择的单核或者双核供电模式 嵌入式闪存 内部振荡器 低功耗特性 -休眠模式下,动态功耗降低了95% -输入缓冲关断 128 位高级加密标准 (AES) 和其他设计安全特性 RoHS6 封装 二、MAX 10-10M08评估板 MAX 10-10M08是一款基于Altera MAX 10系列FPGA的入门级评估板,核心FPGA芯片为10M08SAE144C8G。 评估板硬件框图: 评估板硬件资源: 通过该评估板,可以学到: —面向10M08SAE144C8G,144-EQFP FPGA开发设计103个通用IO口 —测量FPGA功耗(内核电压和IO端口电压) —实现不同I/O电压之间的桥接 —对FPGA的NOR闪存进行读写操作 —使用FPGA的模数转换器模块测量输入的模拟信号 —通过 Arduino UNO R3 连接器或者直通过孔实现与外部功能和器件的链接 该款评估板已经在Altera官网出售,价格为$49.95,有需要的可以到官网购买。 附件中我们提供MAX 10评估板相关硬件、软件支持和产品文档,现在就可以马上开始MAX 10 FPGA设计
Max 10系列FPGA是一种常见的可编程逻辑器件。它采用低功耗、高性能的技术,可广泛应用于不同领域的电子设计。原理图是设计FPGA时所必需的一个重要元素。 Max 10系列FPGA的原理图用于描述器件内部各个组件之间的连接关系。它以图形的方式展现了电路的结构和信号的传输路径,有助于工程师更好地理解和分析电路的功能和工作方式。 原理图中通常包含了各种基本逻辑门、寄存器、时钟控制电路等元件,以及它们之间的连接关系。通过原理图,我们可以直观地看到电路的布局和信号的流动路径,从而更好地进行调试和故障排除。 在Max 10系列FPGA的原理图中,常见的元件有: 1. 逻辑门:包括与门、或门、非门等。它们用于实现不同的逻辑功能,并通过互连线连接到其他元件。 2. 寄存器:用于存储数据并对它们进行操作。它们通常与时钟信号一起使用,实现数据的同步存储和处理。 3. 时钟控制电路:用于生成和分配时钟信号,确保电路的正常工作。 4. 存储器:用于存储大量的数据。它们通常包括RAM(随机存取内存)和ROM(只读存储器)。 5. 输入/输出接口:用于与外部设备或其他电路进行数据交换。 通过使用Max 10系列FPGA的原理图,工程师可以清晰地了解电路的结构和各个元件之间的连接关系,从而更好地进行设计、调试和优化。原理图是设计过程中不可或缺的一部分,它为我们提供了直观的视觉信息,有助于理解电路的工作原理。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

_Hello_Panda_

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

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

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

打赏作者

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

抵扣说明:

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

余额充值