0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

FPGA的ECG信号采集与处理系统是怎么样设计的呢?

5CTi_cirmall 来源:与非网 作者:ygxlysdxhs 2021-03-10 14:31 次阅读

Hello! 大家好,本次项目主题是“基于FPGA的ECG信号采集与处理系统设计”,与众多STM32Arduino单片机直接利用软件编程调用库函数不同,本项目以底层逻辑为切入点进行数字电路设计,更加关注电路底层的细节,包括基础模块的划分、接口信号的定义、verilog代码设计、仿真验证以及板级调试,在满足性能要求下,同时会评估资源消耗问题,希望大家能和我一起一步一步的完成此次工程项目,而不是简单的copy。其中难免有错误,希望各位指正。

引言: FPGA开发和数字IC设计十分相似,而两者最基础是verilog代码设计,verilog是硬件描述语言,实现的数字电路具备硬件并行处理的优点,所以verilog设计思想与基于软件的编程语言是有很大不同的,复杂的verilog代码设计不是随随便便直接在板子上调试成功的。 本项目侧重对设计代码的仿真验证,而不是简简单单对代码 “搬运工”,达到所谓“快速”入门的假现象。在FPGA开发中,每一行verilog代码已经决定了电路的性能和功能,仿真是对verilog代码设计的有效验证方法,因为代码存在的bug在仿真中会一一被定位出来,“速成”FPGA开发都是假的,不能一行一行代码看懂和敲出来,verilog学习的时长都是无用功,正确设计方法+动手练习是FPGA开发/数字电路设计的正确打开方法。

以下是我个人设计的方法: 首先根据你的硬件条件包括FPGA板型和其他硬件(AD、VGA、LCD、舵机、摄像头等等),确定一个硬件的详细设计方案; 接着根据需求和参考资料将整体划分到各个小模块,并确定各个模块接口之间的数据信号和控制信号;画时序图主要是根据数据信号走向需要哪些控制信号,而控制信号主要实现方式就是cnt、enable、flag等等。

其次按照图纸就可以敲代码了,而verilog代码语法不是很难,主要是算术运算符、赋值运算符、关系运算符、逻辑运算符、条件运算符、位运算符以及移位拼接等,一般设计会这些足够了,而往往多数初学者觉FPGA设计很简单啊,大概指的这部分语法简单,但是在敲代码过程中还要考虑到组合逻辑以及时序逻辑中常用的模块,{组合逻辑主要包括常用逻辑门(与门、或门、非门、异或等)、比较器、半加器、全加器、乘法器、数据选择器、三态门,时序逻辑主要包括D触发器、两级D触发器、带异步复位的D触发器、带异步复位同步清零的D触发器、移位寄存器、单口RAM、伪双口RAM、真双口RAM、单口ROM、有限状态机等}。而这些基本单元在写代码过程做到心中有数,因为这些决定了设计的PPA(Performance,Power,Area); 最后再通过仿真工具对设计的代码进行验证,首先是功能仿真也就是RTL行为级仿真,主要是检查代码中的语法错误以及代码行为的正确性,但是不包括延时信息,验证之前“模块划分与接口定义”阶段。其次是后仿真也就是时序仿真,在设计布局布线后提供一个时序仿真模型,验证之前“画接口信号时序”阶段。

步骤一:项目框架

目的意义 在我国,随着生活节奏加快,心血管疾病的发病率有逐年递增的趋势;同时由于人们生活水平和健康意识的不断提高,对心脏类疾病进行实时监护的需求也不断增加。但是,心血管疾病本身具有无症状性(病人在发生心肌缺血时并没有胸痛、心绞痛等常见症状)和间歇性。 选择这个主题主要原因之一是开发一种可以帮主人们日常生活的非侵入性设备—基于FPGA的ECG信号采集与处理。市场上有许多ECG信号检测产品可以提高效率(尺寸较小,将数据保存在云中等等),但是其中任何一件产品都很少涉及到复杂信号处理,并没有与数据库进行比对。

内容及结构安排:

本文基于Xilinx公司的Artix-7系列芯片xc7a35tcpg236-1和AD83232采集板搭建一套硬件平台用以异常ECG信号检测系统。使用Vivado和ModelSim设计和仿真各个系统模块的功能,本系统主要有AD8232信号采集,FPGA存储和处理,C#GUI显示及matlab处理。其中FPGA处理是核心部分,由以下模块构成:AD模块、RAM模块、UART模块及滤波模块。本文采用Verilog HDL硬件描述语言进行编程,XADC具有两个专用的差分输入引脚Vp和Vn,可用于采样模拟信号,通过ADC模块完成100 MHz到360 Hz的数据采样,同时采用低通滤波器消除共模噪声;在所有存储单元中存满ECG的样本数据后,将生成一个脉冲以触发向PC的传输。UART模块将接收一个信号,该信号使用TX模块进行发送,当接收UART检测到起始位时,它将开始以称为波特率的特定频率读取输入位。

本项目主要有以下方面:

1.FPGA学习流程。编写项目详细设计方案,主要包括数据通路和控制通路的设计,模块划分与接口信号的定义,数据通路原理图以及控制通路时序图,verilog代码的具体设计,以及仿真验证,下载到FPGA开发板调试。在verilog代码设计过程会描述时序图,用到IP核,数据通路的寄存器消耗资源进行评估。

2.用到的滤波处理。在信号处理中,数字滤波器是一种对采样的离散时间信号执行数学运算以减少或增强该信号某些方面的系统。数字滤波器系统通常由一个模数转换器对输入信号进行采样,使用FPGA或ASIC代替通用微处理器或具有特定并行架构的专用DSP,以加快诸如过滤之类的操作。

项目简介: 包含四大部分:AD采集模块、RAM存储模块、滤波处理模块、UART模块。 首先,AD8232放大器输出是一个介于0至3.3V之间的模拟值,ADC模块的输入应为1V,因此需要进行分压。放置在放大器的输出和FPGA板的输入(Vp引脚)之间,AD模块包括PLL和XADC 完成100 MHz到360 Hz的数据采样。 其次,我们利用RAM模块存储通过ADC采集的样本。模块具有2个命令模式:读取和写入。这两种状态由启用写模式时为高电平和禁用写模式时为低电平的信号控制。

Step1:确定整个设计思路,ECG信号检测的总体框图,确定程序流程框图 Step2: AD模块、包括XADC和分频时钟接口定义,进行具体verilog代码设计和仿真验证 Step3:RAM读写模块、根据状态机进行接口定义,进行具体verilog代码设计和仿真验证 Step4:Digital filter模块、UART模块接口定义,进行具体verilog代码设计和仿真验证 Step5:进行功能扩展,并将以上所有模块集成在一起,并且做整个仿真验证以及板级调试,通过在C#GUI中显示及保存为.csv文件,利用MATLAB进行相关算法处理,整理打包完整的开源方案所有资料

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1603

    文章

    21328

    浏览量

    593286
  • ECG
    ECG
    +关注

    关注

    4

    文章

    120

    浏览量

    51950

原文标题:《来实战》第6期:基于FPGA的ECG信号采集与处理系统设计

文章出处:【微信号:cirmall,微信公众号:电路设计技能】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    数字图像处理系统及应用

    电子发烧友网站提供《数字图像处理系统及应用.pdf》资料免费下载
    发表于 02-23 14:49 0次下载

    EVAL-ADPD188如何同时采集ECG和PPG信号

    我购买了EVAL-ADPD188评估板,PPG信号可以准确采集。现在我想同时采集ECG和PPG信号,不知道如何设置? 如果有配置文件最好了
    发表于 12-28 06:52

    集成化信息化信号采集处理系统有哪些

    随着科技的飞速发展,集成化信息化信号采集处理系统在各个领域的应用越来越广泛。这种系统能够实现对各种信号的实时
    的头像 发表于 12-14 11:19 423次阅读

    嵌入式视频处理系统领域的FPGA验证

    FPGA在视频处理方面可能很有用处,但在验证基于FPGA的视频系统时,则需要仔细关注您所用的方法。
    的头像 发表于 10-27 17:34 184次阅读

    一种心电信号处理系统设计

    电子发烧友网站提供《一种心电信号处理系统设计.pdf》资料免费下载
    发表于 10-11 09:16 0次下载
    一种心电<b class='flag-5'>信号</b><b class='flag-5'>处理系统</b>设计

    基于PC104的实时信号采集处理系统设计

    电子发烧友网站提供《基于PC104的实时信号采集处理系统设计.pdf》资料免费下载
    发表于 10-10 09:37 1次下载
    基于PC104的实时<b class='flag-5'>信号</b><b class='flag-5'>采集</b><b class='flag-5'>处理系统</b>设计

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

    信号处理系统一般不单单是模拟信号或者数字信号,一般两者都会有。信号处理关注的是
    发表于 10-09 15:52 310次阅读
    <b class='flag-5'>FPGA</b>+DSPs+ARM的数字<b class='flag-5'>信号</b><b class='flag-5'>处理系统</b>对比

    利用FPGA设计基于LVDS的图像数据采集传输系统

    点击上方 蓝字 关注我们 引言 图像信息的获取和传输是图像处理系统的重要组成部分,直接影响图像处理系统的性能。图像信息的采集包括对图像数据、各种附带参数信息以及状态控制信号
    的头像 发表于 09-28 10:35 886次阅读

    基于ARM和FPGA设计高速图像数据采集传输系统

    点击上方 蓝字 关注我们 1.概述 随着图像处理技术的快速发展,图像采集处理系统在提高工业生产自动化程度中的应用越来越广泛。本文结合实际系统中的前端图像
    的头像 发表于 09-27 10:45 871次阅读

    基于FPGA+SRAM实现超声视频图像采集系统的设计

    为标准视频信号,  由显示器进行显示。在基于FPGA+ARM 9硬件平台的全数字化B超诊断仪中,前端探头返回的回波电信号需由实时采集系统进行
    的头像 发表于 07-25 11:55 853次阅读
    基于<b class='flag-5'>FPGA</b>+SRAM实现超声视频图像<b class='flag-5'>采集</b><b class='flag-5'>系统</b>的设计

    BAF污水处理系统如何实现数据采集到云平台进行监控

    ,将污染物转化为无害的物质。BAF污水处理系统能够有效净化废水,保护水环境,提高水资源的利用效率。 PLC数据采集在BAF污水处理系统的作用 PLC数据采集
    的头像 发表于 07-01 17:29 275次阅读

    BAF污水处理系统如何实现数据采集到云平台进行监控

    ,将污染物转化为无害的物质。BAF污水处理系统能够有效净化废水,保护水环境,提高水资源的利用效率。   PLC数据采集在BAF污水处理系统的作用   PLC数据采集
    的头像 发表于 07-01 17:20 280次阅读
    BAF污水<b class='flag-5'>处理系统</b>如何实现数据<b class='flag-5'>采集</b>到云平台进行监控

    基于FPGA的图像实时处理系统设计

    系统实时性较差的问题。本文将FPGA的IP核内置缓存模块和乒乓读写结构相结合,实现了图像数据的缓存与提取,节省了存储芯片所占用的片上空间,并且利用图像预处理重复率高,但算法相对简单的特点和F
    的头像 发表于 06-15 15:20 938次阅读
    基于<b class='flag-5'>FPGA</b>的图像实时<b class='flag-5'>处理系统</b>设计

    MD3000-C集成化信息化信号采集处理系统-功能说明

    MD3000-C集成化信息化信号采集处理系统,采用整体集成设计理念,将传统的实验平台、生物信号采集处理系
    的头像 发表于 05-18 09:01 1493次阅读
    MD3000-C集成化信息化<b class='flag-5'>信号</b><b class='flag-5'>采集</b><b class='flag-5'>处理系统</b>-功能说明

    信息化集成化信号采集处理系统,集成化信息化信号采集处理系统

    ZH-JCT集成化生物信号采集处理系统,采用整体集成设计理念,将传统的实验平台、生物信号采集处理系统
    的头像 发表于 05-14 10:42 1829次阅读
    信息化集成化<b class='flag-5'>信号</b><b class='flag-5'>采集</b>与<b class='flag-5'>处理系统</b>,集成化信息化<b class='flag-5'>信号</b><b class='flag-5'>采集</b><b class='flag-5'>处理系统</b>