关注并标星大同学吧

每周1次,打卡阅读

快速获取行业最新资讯

经验犹如一盏明灯的光芒

它使早已存在于头脑中

朦胧的东西豁然开朗

全文共3031字,预计阅读6分钟

笔经面经(第22期)

在2000年之后,Xilinx FPGA的工艺水平从180nm发展到150nm以及具有里程碑意义 的90nm,直至2010年的28nm,其集成度大幅提升,内嵌硬核的种类显著增加,数量也越 来越大,以至于越来越多的数字系统都出现了 FPGA的身影。FPGA的功能已经不仅仅是完成复杂的逻辑控制,而是更多地实现各种复杂的算法,成为数字系统的主芯片。本次将重点阐述采用FPGA进行数字信号处理的相关问题。

数字信号处理系统架构分析

信号处理关注的是信号及其所包含信息的表示、变换和运算。例如,希望分开两个或多 个混叠在一起的信号,或者增强某些信号分量或一个信号模型中的某些参量。在20世纪60 年代之前,信号处理的手段几乎无一例外地釆用连续时间的模拟技术。

数字计算机和微处理器的飞速发展,连同诸如快速傅里叶变换等这样一些重要理论成果的形成一起引发了由模拟 技术向数字技术的转移,从而导致了数字信号处理学科的出现。国际上,一般把1965年快 速傅里叶变换(Fast Fourier Transform, FFT)的问世,作为数字信号处理这一新学科的开端。简言之,数字信号处理是利用计算机或专用处理设备,以数值计算的方法对信号进行采 集、变换、综合、估值与识别等加工处理,借以达到提取信息和便于应用的目的〔丄这表明,在数字信号处理中,信号是用有限精度的数的序列来表示的,而后用数字运算方式来处理。因此,数字信号处理的基本对象是样本序列。

数字信号处理所研究的内容涉及采样、滤波、变换、检测、谱分析、估计、压缩以及识 别等。其中采样定理(低通采样定理和带通釆样定理)是基础,它提供了如何使模拟信号转 换为数字信号而不失真的依据。数字滤波和离散傅里叶变换(Discrete Fourier Transform, DFT)是数字信号处理领域最为普遍、最为重要的两种处理方式〔2】。DFT实现了信号在频域 的离散化,使得人们可以在频域观测信号,从而可以用通用计算机处理离散信号。而使数字 信号处理从理论走向实用的是FFT, FFT的出现大大减少了 DFT的运算量,使实时的数字 信号处理成为可能,极大地促进了该学科的发展。

数字信号处理的理论和算法是密不可分的。各种算法的不断出现丰富了数字信号处理的 理论,同时也使相应的理论转变为工程实现成为可能。本质上而言,数字信号处理系统就是 实现各种数字信号处理算法。

相对于模拟信号处理系统而言,数字信号处理系统具有体积小、功耗低、精度高、可靠 性高、灵活性大、易于大规模集成以及可进行二维与多维处理等优势。一个典型的数字信号 处理系统如图2.1所示。

在这种情况下,先要把一个连续时间的模拟信号经过抗混叠滤波器 输出带限信号,以保证A/D转换器采样率满足釆样定理的要求。A/D转换器输岀的数字信 号传送给DSP (Digital Signal Processing)芯片处理并将处理结果传送给D/A转换器,以模拟形式输出。对于这一类系统,往往希望它们能够实时工作,这就意味着数字信号处理系统 要以对模拟信号釆样的同一速率来完成处理。显然,在这个数字系统中,DSP芯片是核心器 件。随着A/D转换器工艺水平和技术的发展,所能提供的釆样率越来越高,这也使得数字 信号处理越来越靠近前端,由常规的基带处理跨越到直接中频处理,对DSP芯片的实时处 理能力提出了越来越高的要求。

数字信号处理系统的性能取决于三个因素:采样频率(Sample Frequency),架构 (Architecture)和字长(Word length,也称位宽)。这三个因素对系统性能如系统速度、系统 带宽、系统功耗以及系统资源等起着决定性的作用。

数字信号处理单元是数字信号处理系统的核心部件。目前,主流的处理单元可分为三 类:指令集处理单元、硬连线结构处理单元和可重构处理单元。

指令集处理单元的典型代表是微处理器(Micro-Processor Unit, MPU)和通用或专用 DSP处理器。以通用DSP处理器为例,它基于CPU架构,釆用顺序的工作模式,通过软件 指令的方式完成数字信号处理算法,属于软件可编程。由于它具有适用于各种数字信号处理 算法实现的通用硬件架构,因此在通用性和灵活性上有很大的优势。但是,该类处理器也有 自身的不足之处:ALU (Arith Logic Unit,算术逻辑单元)数量上的缺陷导致其并行处理能 力大打折扣。显然,随着采样速率的增加,每个釆样周期所能完成的指令数目是递减的。另 外,ALU并非独立的乘法器,而是根据算法的需要扮演着不同的角色,执行不同的功能, 如乘法运算、除法运算以及开方运算等。

硬连线结构处理单元的典型代表是ASICo它是针对完成某种特定数字信号处理算法的 集成电路器件,因此在性能指标、工作速度、可靠性和应用成本上优于DSP处理器。但 是,由于它的硬连线模式,导致它在功能重构以及应用修正方面缺乏灵活性,且开发周期 长、风险大、成本高。

可重构处理单元的典型代表是FPGA。它具有规则的可编程结构,可实现各种逻辑功 能,属于硬件可编程,因此也被称为“液体硬件”。以FPGA实现数字信号处理具有如下 优势:

第一,FPGA具有很强的运算能力。这是因为FPGA内部有大量的硬线MAC (Multiply-Accumulator),同时,这些MAC在全流水模式下可高速运行。如图2.2显示了 Xilinx 7系列FPGA中DSP48EI的最大个数和可运行的最高时钟频率。

第二,FPGA具有极大的灵活性。例如,实现一个式(2.1)所确定的乘累加运算:

P = AB + CD + EF + GH(2.1)

在FPGA内部可采用全并行、半并行和串行三种架构,如图2.3所示。这三种架构各有优势:全并行方式可提供最高的数据吞吐率,适用于高的采样率的场合;串行方式占用资源最少,适用于低的釆样率的场合;半并行方式则实现了资源与速度的折中。

图2.2 Xilinx 7系列DSP48E1性能对比

图2.3 FPGA中实现乘累加运算的三种架构

第三,通过集成可降低系统成本。这是因为FPGA容量的进一步增大,功能的进一步增 强,尤其是Xilinx Zynq系列FPGA嵌入了双核ARM Cortex-A9,使得原来需要ASIC器件 或通用DSP处理器所执行的功能可由FPGA完成,从而缩小了 PCB尺寸。

对通用DSP处理器、FPGA和ASIC做以比较,如图2.4所示。通用DSP处理器灵活,但实 时性欠佳;ASIC具有很高的性能,但灵活性欠佳;FPGA则在灵活性和高性能上取得了兼顾。

数字信号处理系统经历了单片DSP处理器、多片DSP处理器并行工作的架构模式。而 目前,主流的数字信号处理系统架构采用的是FPGA+DSPs处理器(Digital Signal Processor, DSPs)的模式或者FPGA+DSPs+ARM 处理器的模式。FPGA+DSPs处理器的模式如图2.5所示,FPGA在系统中扮演着预处理器或协处理器的角色。

作为预处理器,FPGA 对高速数据流进行处理,将处理后的低速数据流交给DSPs处理器完成后续处理;作为协处 理器,FPGA受DSPs处理器的控制,实现不同工作模式的切换。FPGA+DSPs+ARM处理器 的模式如图2.6所示。

此外,Xilinx新一代SoC FPGA Zynq系列内部嵌入了两个ARM核, 同时Zynq内部还有大量的MAC (最多可达2020个)和Block RAM (最多可达755块,每 块36Kb),可提供最大可达2622 GMACS的运算能力,这对ARM核的DSPs处理能力是一 个强有力的补充,因此,Zynq可成为一种单芯片数字系统解决方案。

灵活,但缺乏实时性能 较强的灵活性,具有ASIC性能

通用DSP处理器、FPGA和ASIC的比较

FPGA+DSPs+ARM的数字信号处理系统

综上所述,对于性能要求极高的应用,可将复杂算法划分为底层部分和顶层部分,结合 DSP处理器和FPGA各自的结构和功能特点,将算法的各部分映射到不同的硬件模块上,在 系统功能上实现互补。

底层部分用于数据处理量大、速度要求高、但是算法结构相对比较简 单的算法,适宜于用FPGA硬件的高度并行性实现,可同时兼顾速度及灵活性,如一定长度 的FFT/IFFT. FIR滤波等算法。顶层部分处理的特点是所处理的数据量较底层部分少,但算 法的控制结构复杂,适宜于运算速度高、寻址方式灵活、通信机制强大的DSP处理器或 ARM处理器。

FPGA+DSPs处理器、FPGA+ARM处理器以及SoC FPGA的架构是目前高性 能数字信号处理系统的主流方式。这种结构非常灵活,有较强的通用性,适于模块化设计, 有利于提高算法效率,缩短开发周期,并易于维护和扩展。

火火鸡有话说●●

以上为几位学长

为大家带来的笔经面经干货

希望为大家提供一定的帮助

快来后台留言你感兴趣的内容,

火火鸡等你来~

快快入群,你将获取:

1000+中英文简历模板

100+家半导体/互联网名企的笔经面经

的笔经面

推荐阅读

 ☛ 专场合集   模拟岗名企合集 | 软件岗位名企专场  ☛ 秋招 唯捷创芯| 英伟达| 地太科泰|豪威|ASML|腾讯内推| 敦泰电子 |   谱瑞集成 | ASML | 艾为 | 物奇微电子| 泰凌微 | 加特兰 | 华杰智通 |谱瑞集成| 华大半导体| 忆芯科技| 国民科技 |  中科蓝讯 | 美满电子|伏达半导体|加特兰 美满电子|卓胜微|南京恒电电子|华为云核心网|  益丰电子|圣邦微电子|唯捷创芯|豪威集团|恒润科技|  ☛ 实习 
北醒光子
 | |芯跳科技 | 武汉新芯 | 国微电子 |芯驰科技 |CVTE |美满 |经纬恒润  旷视研究院 | 华为云核心网|华大半导体 字节跳动  GE医疗  ☛ 社招  青岛若贝 | 澎湃微电子  |源微半导体 | 瞻芯电子|  苏州伊欧陆系统集成公司| 晶湛半导体 |泰凌微电子 |  |深圳芯启航 | 字节跳动 |华大九天 |瓴瑞微电子 |美光  ☛ 求职干货 2020&2019届校招报告| 简历| offer选择 | 谈薪资 | 论文查重 | 行业发展 | 研究生退税 | 笔试面试

热门招聘企业推荐

一键投递丨点击下方图片

1000+名企任你挑选

简历直达HR ,优先筛选!

大同学吧,是全国100+重点高校IT电子类等理工科大学生都在关注的校招、内推、实习的求职服务平台,提供海量互联网及半导体行业实习、校招等招聘信息,免费分享面经笔经、求职内推、行业干货,助力学子顺利拿下理想offer!!我们欢迎任何形式的合作,发布招聘信息,请添加微信号:Botong-Huang。

喜欢就分享

认同就点赞

支持就在看

一键三连,你的offer也

球分享

球点赞

球在看

qtcp多用户同时发信息的信号处理_FPGA进行数字信号处理的相关问题有哪些?来看数字信号处理系统架构分析!...相关推荐

  1. 去除警告,打电话,发信息,应用程序之间跳转,打印沙盒路径,字符串名字转换方法,包装导航控制器等的代码...

    从偏好设置中读取值: 打电话代码: 发信息代码: 打印沙盒路径代码: 应用程序之间跳转代码: 跳转到苹果商店代码: 去除警告代码: 根据字符串名称转换成相对应方法的代码: #import " ...

  2. Qt网络编程——TCP服务器与客户端互发信息

    前言 前一个博客,试了TCP的服务器与客户端的连接与断开,接下就是客户端与服务器互发信息. 客户端 1.往服务器发送信息 //发送消息 void Client::on_buttonSendMessag ...

  3. 另外一个给微信企业号发信息的python脚本

    http://chenx1242.blog.51cto.com/10430133/1954634 文章里面有一个python脚本可以用来给微信企业号发信息,如果你不喜欢那篇文章里面"titl ...

  4. python+selenium+apscheuler实现微信定时发信息

    背景 在工作中每天下班前都需要在公司的报工系统中进行工作日志的记录.但是有很多同事常常都会忘记报工 . 这种现象也让我们组长感到头疼,也每天在群里面催.就上述问题,我就想能不能每天定时的通知大家报工呢 ...

  5. 苹果手机如何用短信信息服务器,Iphone双卡双待如何发信息? 苹果双卡手机发短信的方法...

    苹果x系列的手机可以有主副卡的,支持双卡双待,用户放好卡根据自己的需要设置主副卡进行使用,那么Iphone双卡双待如何发信息呢?下面我们就来详细介绍一下. 1.在苹果xr手机的桌面找到并且点击[拨号] ...

  6. 微信屏蔽服务器发送消息,微信中对方把我屏蔽了,我也能给他发信息,他能看见吗?...

    只是朋友圈屏蔽,发信息看得见的 1.对方微信朋友圈没有动态在"详细资料"下面不会显示"个人相册"一栏.这种情况不能确定对方是否设置了"不让好友看他的朋 ...

  7. 浏览器出现无法访问该页面/无法连接服务器/服务器拒绝连接/XXX已拒绝连接,同时QQ微信可以登录发信息。

    吐槽:新买的华硕天选4,RTX4060配置,不算业内顶配,不至于网上不了吧.. 上干货!!! 有用的话记得点个赞.你的赞数 虽然不会成为我解决问题的动力,但是打开一看它有数字  好看啊! 问题如下: ...

  8. 新一配:程序员发信息给爸说996好累,结果看到回复蒙了:坚持就是胜利

    相信不少人都知道这两年互联网流行996的工作模式,就是早上9点上班,晚上9点下班,一周只休一天,而且很多人都曝出,常常都加班到凌晨的都有,即使到了下班时间都不敢走,所以不少人都觉得非常累,甚至有些人都 ...

  9. 当然领导发信息应该第一时间回复

    当然领导发信息应该第一时间回复,不过有时候没看到,领导也要理解员工,员工用什么品牌手机与工作应该没关系,只要努力工作就能得到好的待遇.

最新文章

  1. Java项目:茶叶售卖商城系统(java+SSM+JSP+EasyUi+mysql)
  2. python logging模块的作用_Python 日志模块logging分析及使用-2
  3. python定义词典_python – 自定义类是一个字典,但初始化没有字典副本?
  4. 《操作系统》实验报告——熟悉Linux基础命令及进程管理
  5. Codeforces Gym 100269G Garage 数学
  6. Java LocalDate类| minusWeeks()方法与示例
  7. Oracle plsql 月历
  8. java数组中的内存特征
  9. 学习webpack4 - ES6语法转化
  10. 单指令多数据SIMD的SSE/AVX指令集和API
  11. android 生成 kml代码,android 导入KML文件
  12. 搭建国产化统信UOS操作系统虚拟机
  13. cad 选择框不是矩形 解决方法
  14. 计算机女生考研建议,计算机专业女生考研,建议选取的部分方向
  15. Android控制所有播放器的音频切换上下首歌、播放、停止
  16. el-collapse用法
  17. golang http服务的graceful问题
  18. C语言源代码系列-管理系统之车票管理系统
  19. 解决C++中调用Python脚本的LNK2001错误
  20. 投资理财之基金一、初识基金

热门文章

  1. android注册选择国家设计师,设计师的职业资格认证,现已开通申请!
  2. matlab快捷键自动对齐|小知识
  3. java验证码图片滑动验证码_图片滑动验证码的生成
  4. 正则项的理解之正则从哪里来
  5. python字符串排序方法
  6. 2022江苏最新交安安全员模拟考试试题及答案
  7. 网络安全笔记-02-win7 粘滞键系统密码破解
  8. T1500,T1522,T3266,T1279
  9. JAVAWEB开发之权限管理(一)——权限管理详解(权限管理原理以及方案)、不使用权限框架的原始授权方式详解
  10. 根据时间戳生成6位唯一邀请码