基于ARM+FPGA多通道超声信号采集与传输系统设计

针对超声信号采集系统在多通道同步采集和高速数据传输所面临的挑战,设计并实现了一种
基于 FPGA 8通道超声信号同步采集与传输系统系统以FPGA 作为主控芯片,ADI公司的 AD9279
8通道超声信号同步采集的模拟前端和模数转换芯片,通过 DDR3SDRAM USB3.0实现数据缓存和
高速数据传输实验结果表明,该系统在多通道超声信号同步采集数据缓存和高速数据传输方面表现良
,为多通道超声信号的同步采集和高速传输提供了可靠的硬件平台
0 引言
近年来,超声检测技术在医学诊断工业无损
检测以及水下探测等领域得到了广泛应用[1],尤其
是在医学领域,超声检测技术因其无创实时和安
全的优势,已成为疾病诊断的常用手段然而,
声信号在实际应用中通常较弱,特别是在深层组织
或复杂结构中,信号强度往往会显著降低[2]为了
从微弱的超声信号中提取有效信息,超声检测系统
的精度和准确性要求不断提升在此过程中,阵列
传感器的应用,即多通道同步超声检测,成为提高系
统性能的关键其中,多通道超声信号的同步采集与
传输是超声检测的核心,采集同步性和数据传输速度
直接影响检测的精度与可靠性传统的数据采集与
传输系统一般采用单片机和 DSP作为主控芯片,
ADC、存储器与上位机的传输设备以及其他外围
电路进行数据采集与传输的工作,但传统的处理器架
构在处理高速并行数据时容易出现延迟不稳定或资
源不足等情况,且难以兼顾采集与传输的实时性和同
步性,无法满足多通道超声信号同步采集与高速传输
的要求[35]因 此,现 场 可 编 程 门 阵 列(field pro
grammablegatearray,FPGA)以其高速并行处理的能
,逐渐成为超声检测系统中的主控芯片如王晓春
[6]设计了一种基于 FPGA 的双通道高频医学超声
信号同步采集与传输系统,通过先进先出(firstinput
firstoutput,FIFO)数据缓存器进行数据缓存,并经
USB接口将数据传输至上位机以实现后续处理;
甜等[7]利用FPGA控制模拟开关和 ADC通道的依次
切换,实现了4通道伪同步数据采集方案,并通过以
太网接口进行数据传输;朱紫萌等[8]基于 AD7606
计了一种多源数据采集系统,实现了100kHz采样率
8通道并行采集,并通过 USB2.0进行数据传输,
但未考虑数据缓存模块;Savoia[9]开发的4通道
超声信号采集系统中,利用FPGA内置的嵌入式随机
存储器(randomaccessmemory,RAM)实现超声数据
的缓存,以确保采集数据的准确性
为了实现更高精度高准确性和高速率的多通
道超声信号同步采集与传输,本文设计了一种基于
FPGA 8通道超声信号同步采集与传输系统
1
硬件设计方案
1.1 整体系统设计
8通道超声信号同步采集与传输系统主要由FP
GA控制模块信号采集模块和数据传输模块3部分
组成系统总体设计如图1所示
1 系统总体设计
8通道的超声信号首先通过 AD9279评估板中
的模拟前端进行处理,通过 FPGA 调节可变增益放
大器(variablegainamplifier,VGA)、低噪声前置放
大器(low noiseamplifier,LNA)和抗 混 叠 滤 波 器
(anti aliasingfilter,AAF)的增益,A/D 转换器对
处理后的模拟信号进行模数转换,将转换后的数字
信号缓存到 DDR3SDRAM ,完成超声数据的采
USB3.0进行数据传输的过程中,上位机软
件发送一个读取数据指令,将缓存在 DDR3中的信
号通过 USB接口传输至上位机,最后将数据在上位
机上显示并保存为txt文件
1.2 FPGA控制模块
本文系统主控制板选用以Xilinx公司 Aritx 7
系 列 FPGA 芯 片 为 主 板 的 开 发 板,型 号 为
XC7A100T [10],该开发板设计紧凑精巧,只有普通
信用卡大小该开发板的核心板采用100 MHz
有源晶 振 作 为 系 统 时 钟,同 时 集 成 了 2 片 高 速
512MB容量的 DDR3SDRAM 存储芯片[11],用于
缓存超声信号;使用基于 USB3.0的通信接口与上
位机实现数据的交互,同时为板卡供电;使用对板
连接器提供扩展接口,拓展接口提供3.3V/2.5V/
1.8V 的可调电平且为差分布线,很好地满足本文
设计的需求
1.3 信号采集模块
1.3.1
AD9279评估板
在 超 声 信 号 采 集 过 程 中,模 拟 前 端 (analog
front end,AFE)和模数转换器 ADC 2个最关
键的模块,信号通过交流耦合从换能器中采集后,
通过 AFE 接 收 和 预 处 理 模 拟 超 声 信 号,ADC
AFE输出的模拟信号转换为数字信号[12]本文系
统基于采集精度同步性通道数以及成本等方面
的考虑,采用 ADI公司生产的高速集成模拟前端模
AD9279,超声信号的放大滤波模数转换和低
压差 分 信 号 (low voltagedifferentialsignaling,
LVDS)串 行 传 输 等 过 程 均 在 AD9279 中 实 现
AD9279支持8通道同步采集,其内部集成了8
道可变增益放大器低噪声前置放大器抗混叠滤
波器、12bit80MSPS模数转换器和可编程相位旋
转的I/Q 解调器[13],可以在8个通道间实现精确的
时序同步通过串行外设接口(serialperipheralin
terface,SPI)配置寄存器,从而控制各通道的增益系
,确保8通道超声信号采集的同步性和可靠性
1.3.2 AD9279 FPGA 连接板硬件设计
ADC将模拟信号转换为数字信号之后,需
要将数字信号传输至 FPGA 进行进一步处理
该过程中,最关键的问题是如何将 AD9279评估板
连接到 FPGA 开发板,使转换后的超声数字信号正
确的传输至 FPGA 以供后续处理
3 实验结果
首先,8通道同步数据采集功能进行验证,
证实验如图89所示。
最后,对系统进行水下超声采集实验,验证系
统实际采集超声信号的能力如图12所示,2
超声换能器置于水介质中,信号发生器产生电压峰
峰值Vpp 1V、频率f 3.5MHz的正弦波信号
连接至换能器 A,由换能器 A 发射超声信号,换能
B将接收到的超声信号转换为电压模拟信号后
输入至 AD9279的通道1,最后将采集到的超声
信号传输至上位机进行重建
12 水下超声信号采集实验
重建后的超声采集信号如图13所示,可以看到
信号完整,无明显失真的情况,表明系统具有良好
的采集超声信号的能力
信迈支持ARM+FPGA+AD定制。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/92066.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/92066.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络:为什么IPv6没有选择使用点分十进制

IPv6没有采用点分十进制(如IPv4的192.168.1.1),核心原因是其地址长度、设计目标与表示需求和IPv4存在本质差异,而冒号分十六进制(如2001:0db8:85a3:0000:0000:8a2e:0370:7334)是更适配其特性的选择。具体可从以下几个角度分析: 一、地址长度差异:点分十进制无法适配12…

HBM Basic(VCU128)

目录 1. 简介 1.1 硬件平台 1.2 图片 2. 硬件信息 2.1 Vivado Basic 2.1.1 GPIO 2.1.2 Clock Sources 2.1.3 Reset 2.1.4 Flash 2.1.5 烧写报错 2.2 PCIe simple 2.2.1 Block Design 2.2.2 XDMA 2.3 PCIe HBM 2.3.1 Block Design 2.3.2 HBM IP 3. HBM 知识 3…

Mybatis的应用及部分特性

初识MybatisMybatis的概念MyBatis 是一个Java 持久层框架,核心作用是简化数据库操作,把 SQL 和 Java 代码解耦。ORM框架MyBatis是一个ORM 框架所谓ORM 框架,就是把数据库里的表、字段、关系,映射成编程语言里的类、属性、对象引用…

使用Jeecg低代码平台实现计划管控系统建设方案--2平台学习

1.前后端列表练习 前端页面下的views下的system下的基本都是系统管理的东西。 在system下新建一个目录edu。 index基本就是列表页面。 modal就是新增编辑弹窗。 api就是接口。 data就是列配置。 一些组件的使用可以参考官方文档,help.jeecg.com。 在创建一个…

调试|谷歌浏览器调试长连接|调试SSE和websocket

长连接需求不常有,控制台调试的细节容易忘,在这截图备忘。本文会记录SSE、websocket连接、普通接口 在谷歌浏览器控制台的对比 文章目录SSE(Server-Sent Events)观察对象:百度翻译观察请求头和响应头观察EventStream观…

VS2019 Qt5.14.2 OpenCV4.4.0 全流程安装及开发环境搭建与配置(工业相机环境配置)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言Visual Studio 2019 安装步骤项目配置验证Qt 5.14.2 安装步骤项目配置验证Visual Studio Qt 拓展(确定项目后)OpenCV 4.4.0 安装步骤项目…

正确配置jdk环境但IntelliJ IDEA无法启动

现象:今天突然发现开发工具双击没有正常启动,之前是用着的。问题排查:是否是因为jdk环境变量导致的,之前安装过安卓的开发环境也修改过环境变量。步骤一:cmd输入java -version 或javac,如图没有反应步骤二&…

ubuntu-server安装

1.下载系统镜像: 阿里云镜像站下载服务器镜像 https://mirrors.aliyun.com/ubuntu-releases/24.04/ubuntu-24.04.2-live-server-amd64.iso 1.创建新的虚拟机 按住键盘ctrl n 打开虚拟机创建界面 用光标选择对应语言没有中文哈 然后回车确认 设置计算机名、用户名…

Docker Compose管理新范式:可视化控制台结合cpolar提升容器编排效率?

文章目录前言1. 安装Docker2. 检查本地docker环境3. 安装cpolar内网穿透4. 使用固定二级子域名地址远程访问前言 在容器化应用部署领域,Docker Compose UI为开发者提供了一种更直观的解决方案。这款工具以Web界面形式封装了Docker Compose的核心功能,在…

BSW总结

1.FBL:【有道云笔记】BSW_FBL https://share.note.youdao.com/s/NaeZWTuR 2.NM: 【有道云笔记】BSW_NM https://share.note.youdao.com/s/MKxlIpUS

spring循环依赖解决

问题描述 spring循环依赖是对于ioc容器。类A、B、C,类A依赖了B,类A依赖了C,类B依赖了A,类C依赖了A。假如现在类A需要放到ioc,属性赋值的时候会去找B这个bean,但是B不存在,于是去创建B这个bean&a…

最新安卓原生对接苹果cms App后端+app(最新优化版)

内容目录一、详细介绍二、效果展示1.部分代码2.效果图展示三、学习资料下载一、详细介绍 一定要按照教程教的来搭建! App演示图片 二、效果展示 1.部分代码 代码如下(示例): public static function apkinfo(){return self::…

嵌入式硬件中运放的基本控制原理

上次课的最后是给大家总结一些基础电子知识的,我们接着往下讲。我们知道了运放的虚短虚断的概念理论上来说 可以进行计算了是吧。 这个图实际上是一个正输入信号的同相放大电路,我们看下如何计算,第一先看虚断。运放的输入脚内部对地是阻抗十分大是吧,那么这个正输入脚上的…

聚集索引与非聚集索引的区别

聚集索引(Clustered Index)和非聚集索引(Non-Clustered Index)是索引设计的核心概念,二者的本质区别体现在 与数据物理存储的关联方式 上,这种区别直接决定了它们的性能特性和适用场景。我们平时说的 聚簇索…

《零基础入门AI:传统机器学习进阶(从拟合概念到K-Means算法)》

一、欠拟合与过拟合欠拟合(Underfitting) 欠拟合是指模型在训练数据上表现不佳,同时在新的未见过的数据上也表现不佳。这通常发生在模型过于简单,无法捕捉数据中的复杂模式时。欠拟合模型的表现特征如下: 训练误差较高。测试误差同样较高。模…

Datawhale AI夏令营 第三期 task2 稍微改进

在打造基于大语言模型(LLM)文档检索的问答系统中,财经研报类文档是最具挑战的场景之一。它包含图文混排、精细定位需求(页码、文件名)、问题措辞高度多样化等一系列复杂性。 下面的内容是大模型辅助整理的:…

LeetCood算法题~水果成篮

水果成篮 你正在探访一家农场,农场从左到右种植了一排果树。这些树用一个整数数组 fruits 表示,其中 fruits[i] 是第 i 棵树上的水果 种类 。你想要尽可能多地收集水果。然而,农场的主人设定了一些严格的规矩,你必须按照要求采摘水…

【Lua】题目小练8

-- 题目 1&#xff1a;定义一个类 Person-- 属性&#xff1a;name、age&#xff0c;其中 age 默认是 0&#xff0c;不能小于 0。-- 方法&#xff1a;introduce()&#xff0c;输出 "My name is <name>, I am <age> years old."-- 要求使用封装思想&#x…

SAP PP CK466

原因 作业价格没有维护 解决方案 KP26

如何解决pip安装报错ModuleNotFoundError: No module named ‘keras’问题

【Python系列Bug修复PyCharm控制台pip install报错】如何解决pip安装报错ModuleNotFoundError: No module named ‘keras’问题 摘要 在使用 PyCharm 进行深度学习项目开发时&#xff0c;常常需要通过 pip install keras 来安装 Keras 库。但有时即便命令执行成功&#xff0c…