找回密码
 注册
关于网站域名变更的通知
查看: 731|回复: 2
打印 上一主题 下一主题

DSP和USB总线的高频超声数据采集系统

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-7-7 15:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 zxcvbvbnmn 于 2021-7-7 16:17 编辑
/ L% I8 I* x: x: j; `' m& `" J4 Z! R  k7 ^' e3 Q
引言+ q4 Y, P. x5 q# S6 i6 ^, C
6 R4 k7 A; c  a) y
  超声医学即利用超声波的物理特性进行诊断和治疗的一门影像学科,其临床应用范围广泛,目前已成为现代临床医学中不可缺少的诊断方法。
$ P& \+ A/ Y) L# m* A
) o& d- W3 g5 W& k9 ?0 V2 m: [  本系统是一个便携式软组织超声诊断仪的一部分,主要功能是高频超声信号采集。其工作机制,是在前端低频脉冲(20Hz~10KHz)的触发下,对由超声换能器产生的高频超声信号(1MHz~20MHz)进行采集,预处理,然后通过USB总线传输给PC机,由软件进行分析、处理。
4 B- y# R/ G7 u6 p, E. M+ k) `
" n; v+ z& E# D1 Y% h8 B' z  在本设计方案中,高速cpld芯片作为数据采集系统的核心部分,相比传统的mcu+ADC方法,CPLD是用硬件信号而不是软件编程来控制 ADC,从而在速度上有很大的优势。而目前强大的VHDL编程语言也使得CPLD能很容易地实现预想的功能逻辑。数据处理部分,选用数据处理功能强大、处理速度高的DSP芯片作为CPU。而在与上位机通信方面,采用支持即插即用且成本也相对较低的USB接口。整体系统方面,各个子系统之间的数据传输和同步问题是技术难点。在经过反复比较和测试之后,采取高速存储器作为数据缓冲区的方案。
# m6 D! ^/ v; d1 W+ O
+ M# F- d  s$ M0 a, x8 E$ {系统各组成模块  {  L) B8 Z/ l4 [7 [' |1 b

; }8 A5 F9 w' c0 ?9 z  系统组成框图包括三个子系统:CPLD子系统,DSP子系统和USB子系统。其中,CPLD+ADC实现数据采集,DSP则负责数据处理,两者之间通过一片高速RAM来交换数据;USB芯片(AN2131Q)负责把数据通过USB线上传给主机,它和DSP之间通过一片锁存器进行通信。
) ?5 `9 ?3 l) B1 e1 u6 G
  n- w) S7 E% ?数据采集子系统(CPLD子系统)
9 l/ R' C3 T" S+ j0 u8 f
9 k. h3 {. c* D$ Q! P$ x4 z/ y0 P  该子系统主要由一片Altera公司的CPLD和一片高速ADC所组成。
1 k6 W4 a# v' b% m+ }2 C1 L# K" T# t3 G# f& a3 g/ i) S
  由于要采集的超声信号最高频率为20M,根据Nyquist定律,采样频率应该在40MHz以上,为了提高精度,系统采用了ADI公司的AD9283芯片。该芯片最高工作频率为100MHz,经过测试,可很好地满足系统带宽要求。
$ x, k- \# _( F! ?  k7 e) s2 p1 }# ^) k* ]( _$ K1 i3 |
  以往的便携式数据采集系统中,下位机部分ADC-RAM模块往往采用MCU作为CPU来控制,因此,采集频率直接受到MCU速度的制约,而且和 RAM存储器的同步也成为问题。经过比较,本系统采用Altera公司的CPLD芯片来控制ADC和RAM,从而很好地解决了时序精度和同步的问题。
; `, O- I. o! Y
5 V& x& y5 |6 A0 v  CPLD作为控制芯片,实现的功能逻辑为:
7 k, r) O2 W$ h0 M' W! r& `9 B/ c+ o* z
  ● 接到DSP触发信号(START)之后,实现对ADC的控制,发出一个Start信号,ADC开始采样工作;& H% O( H3 u* Z

. V0 T) ?! G) [2 d& t  ● 与ADC控制信号同步提供RAM地址计数器(A0~A16)和写信号(/WE),使得每次ADC的结果直接存入RAM并且自动增加地址;8 e& f7 K$ @) W" C& y- s

0 n; c* J6 A- S# ~  ● 当地址计数器达到最大的时候,发出中断信号(RAM_FULL),提示DSP系统RAM已满;
+ F- e% l5 h+ q& |5 T- O, I
$ C, ?* ]/ h* R( K3 Q( X3 o5 q0 e  CPLD的功能逻辑用VHDL语言实现,其编译、仿真和综合采用Altera官方主页提供的MAXPLUXII Student10.1版,下载电缆自制。" U: D8 L& d2 w* A/ k) C! x

; p7 F! L9 I) l6 m, c数据处理子系统(DSP子系统)
5 h5 N. }( N3 _9 i" b! p0 e, i6 r4 K/ U1 z
  由于系统在后期升级中,要求对下位机部分的数据进行较为复杂的预处理,同时系统在实时性方面要求较高。因此选用TI公司的TMS320C5409作为数据处理子系统的CPU。
3 p9 P5 }5 f6 o7 S; M- d& S4 M! A  DSP子系统的主要工作流程为:5 g8 z' Q! o( ]$ J+ Y
, a6 @3 s; x& N2 N9 t% a% M
  1)接到Trigger(由前端换能模块发出)中断(INT0)触发后,拉高START信号通知信号采集模块开始工作,然后进入等待;
1 j7 ^. I! S& {4 ^' G, K4 i  o: T# [, G. T+ F: O7 R4 J
  2)接到RAM_FULL中断(INT1)之后,知道RAM已经写满,首先将START信号拉低停止CPLD和ADC。然后开始逐个读RAM中的数据,根据系统要求做相应处理,之后借助锁存器发给AN2131Q;+ q% `# E& X& f3 L, ]

6 T) z0 ]9 [% R& M! Z6 ?  3)在本系统中,DSP软件部分的几个函数体包括:主循环;int0中断(前端触发);int1中断(RAM已满)。. |7 P6 U: s! ]8 |; k$ f2 A% r- H
  • TA的每日心情
    开心
    2022-12-27 15:46
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    2#
    发表于 2021-7-7 16:16 | 只看该作者
    CPLD子系统,DSP子系统和USB子系统

    该用户从未签到

    3#
    发表于 2021-7-7 17:15 | 只看该作者
    高频超声信号采集
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-11-24 03:49 , Processed in 0.140625 second(s), 23 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表