基于dsp的回声系统设计内容摘要:
1个串行EEPROM 和主机处理器的连通。 德州仪器的 eXpress 软件开发工具可为 TMS320C67x DSP 系列提供支持,这些工具包括一个高度优化的 C/C++编译器,代码组合 Studio 集成开发环境( IDE)的 JTAG 为基础的仿真和实时调试,和 DSP/BIOS 内核。 TMS320C67x 处理器主要由三部分组成:即 CPU内核、外设和存储器。 CPU中 8个功能单元可以并行操作。 CPU具有两组寄存器,每组寄存器由 16个 32位寄存器组成。 TMS320C67x 芯片包括片内数据存储器和程序存储器;外设包括直接存储器访问( DMA)、外设存储器接口( EMIF)、低功耗逻辑、扩展总线、串口、主机口和定时器等。 如图 6为 TMS320C6713结构框图。 图 6 TMS320C6713结构框图 外围接口 TMS320C6713的芯片内部集成了许多外围设备接口,可以方便地连接片外存储器、主机、串行设备等外设。 所有外部接口都是由一些信号线和控制寄存器组成,开发人员对接口设计的主要工作就是完成接口连线和写控制寄存器两项工作 ,使得扩展外设变得更加容易。 C6713片内集成的一个 32 bit 的外部存储器接口 EMIF(External Memory Interface),可以外扩 8 bit、 16 bit、 32 bit 并行存储器。 内部的 16个独立的扩展直接存储器访问通道 EDMA(Enhanced DirectMemoryAccess)大大提高了存储器访问的效率 ,EDMA 面向实时信号处理 ,可以在 CPU 后台高效完成存储空间中数据的转移 ,具有高效的传输速率 ,C621x 和 671x 的数据传输率可高达 1 200 MB/s。 2个 McASP(multichannel audio serial port) ; 2 个 McBSP(multichannel buffered serial port),可以模拟几乎所有形式的串行接口; 2个 I2C总线接口;2个 32 bit 的通用定时器; 16通道通用 I/O 口 GPIO(generalpurpose input/output);一个 16 bit 的主机接口 HPI(HostPort Interface);还包括程序和数据存储器控制器、中断控制器、定时器、时钟发生器、 PLL(锁相环控制发生器 )及掉电逻辑等功能单元。 TMS320C6000的 EMIF 接口 ,即外部存储器接口( The External Memory Interface),支持各种外部器件的无缝接口,包括:流水线式同步猝发 SRAM( SBSRAM);同步器件 SBSRAM、 SDRAM;异步器件 SIAM、 ROM 和 FIFO 等以及外部共享存储器。 EMIF 接口将各类存储器的控制信号合并复用 , 由于不需要进行后台刷新 , 系统允许同时具有这 3 种类型的存储器。 EMIF 接口具有 32位数据总线 , 20位地址总线 , 4个存储空间选通信号和 4个字节使能信号。 EMIF 允许高度的可编程性以用于异步访问。 对于异步访问的 建立时间、猝发时间和保持时间可以进行编程设置 , 读写访问可以得到单独的建立时间、猝发时间和保持时间参数。 简单来说, EMIF 接口就相当于一个可配置的总线接口,其接口上面的信号线基本囊括了各种存储器( SRAM、 Flash RAM、 DDRRAM 等)的读写接口信号。 通过软件配置相应的寄存器,可以使 EMIF 接口工作于和设计中使用的外部存储器相匹配的固定的接口形式。 但是与其他固定接口不同的是, EMIF 接口读写时序中的高低电平的保持时间是可以通过寄存器设置的。 图 7 TMS320C6713 的 EMIF 接口信号示意 图 如果多个请求服务同时到达, EMIF 会根据每个请求优先级来进行处理。 最高为 HOLD,最低为刷新。 对 EMIF 编程时,必须了解外部存储器地址如何分配给片使能空间,即 CE 空间,每个 CE 空间可以同那些类型的存储器连接,以及用那些寄存器位来配置 CE空间。 下面就本次设计使用的 TMS320C6713 为例详细介绍一下 EMIF。 TMS320C6713的 EMIF 可以通过下面两种请求器处理外部总线请求:片内加强型直接存储器存取 EDMA 控制器;外部共享存储器的设备控制器。 如图 7 所示是 320C6713 的 EMIF接口信号示意图。 图 7 中, ECLKIN 信号是系统提供的一个外部时钟源。 ECLKOUT 信号是由内部产生(基于 ECLKIN),所有与本控制器 EMIF接口对接的存储器必须工作在 ECLKOUT下。 SBSRAM 接口、 SDRAM 接口和异步接口的信号合并复用。 这里的 CE1 片选空间支持所有的 3 种存储器接口。 表 2 列出 TMS320C6713 的 EMIF 存储器映射寄存器。 通过设置这些寄存器,既可以将 EMIF 配置成为不同类型、不同位宽的总线接口,又可以配置总线读写时序的速度。 由于 EMIF 接口的这一优势,设计者使用集成 EMIF 接口的控制芯片时,无论是 扩展外部存储设备,还是利用 EMIF 接口进行外部设备的读取,其难度都大大降低。 这在一定程度上也使得具有 EMIF 接口的高速控制核( TMS320C6000 系列的 DSP)在将来能够得到更加广泛的应用。 表 2 TMS320C6713 的 EMIF 存储器映射寄存器 在实际生活中,当声源遇到物体时,会发生反射。 反射的声波和声源声波一起传输,听者会发现反射声波部分比声源波慢一些,类似人们对山体高声呼唤后,可以再过一会听到回声的现象。 声音遇到较远的物体产生的反射,回比遇到较近的物体的反射波晚些到达声源位置,所以回声和原生的延迟会随物体的距离大小改变。 同时反射声音的物体对声波的反射能力,决定了听到回声的强弱和质量。 另外,生活中回声的成分比较复杂,有反射、漫反射、折射,还有回声的多次反、折效果。 已知一个数字音源,可以利用计算机的处理能力,用数字的方式通过计算模拟回声效应。 也就是 说可以在原声音流中叠加延迟一段时间的声流,实现回声的效果。 当然通过复杂的运算,可以计算各种效应的混响效果。 如此产生的回声,我们称之为数字回声。 该回音系统中的 I2C 接口 模块 由串行数据 SDA和串行时钟 SCL 组成, SDA 和SCL均为双向接口。 连接在同一总线上的 I2C设备可以工作在多主线工作模式下。 包括 TMS320C6713 DSP 在内的每个 I2C 设备都有唯一的设备地址可供软件寻址。 其中,主设备用于发送时钟并启动数据传输,被主设备寻址的 则为从设备。 这些设备根据各自的功能,既可以作为发送器,也可以作为接收器。 当系统进行初始化配置时, DSP通过 I2C总线将配置命令发送 TLV320AIC23,并在配置完成后 TLVAIC23开始工作。 对于 DSP 的多通道缓冲串口 (McBSP)设置,由于 TLV320AIC23采样输出的是串行数据,因此,需要协调好与之相配的 DSP 的串行传输协议。 因而必须对 DSP的串口进行正确设置。 McBSP 串口一般可通过六个引脚让数据通路和控制通路与外部设备相连。 数据经 McBSP 串口与外没的通信一般通过 DR 和 DX 脚来传输, 控制同步信号则由 CLKX、 CLKR、 FSX、 FSR等四引脚来完成。 由于 McBSP 串口的数据线 DR 和 DX 带有缓存寄存器,而帧同步信号 FSX、 FSR以及时钟信号 CLKX、 CLKR都具有可编程性,因此,它与 TLV320AIC23之间的接口设计非常灵活。 从这些特点可以看到:将 McBSP串口设置为 SPI模式,并使串口的接收器和发送器同步,然后由 TLV320AIC23的帧同步信号 LRCIN、 LRCOUT 启动串口传输,同时将发送接收的数据字长设定为 32 Bit (左声道 16Bit,右声道 16 Bit)单帧模式,就可以方便地实现与 TLV320AIC23之间的无缝连接。 输入语音信号时, TLV320AIC23先通过其中的 AD 转换采集输入的语音信号,每采集完一个信号便将数据发送到 DSP 的 McBSP 接口上,以便 DSP可以读取语音数据。 每个数据均为 16位无符号整数,左右通道各有一个数值。 语音信号输出时,可由 DSP 将语音数据通过 McBSP 接口发送给 TLV320AIC23,再由 TLV320AIC23的 DA 器件将他们变成模拟信号输出。 本系统是基于 ICETEKC6713PCI 评估板来实现的。 TVL320AIC23 与 C6713的接口有两种:数据接口(输入和输出 A/D、 D/A的数据)和控制接口(设置芯片参数改变工作状态)。 AIC23 的数据口有四种工作方式,一般采用的模式为 DSP 模式。 本文设计系统为 DSP 模式( TI 的 DSP 的专门连接模式)。 数据接口的连接方式如图 9所示,其中 BCLK 为数据口位时钟信号。 LRCIN 为 DAC 输出的帧同步信号; LRCOUT 为 ADC输入的帧同步信号; DIN 为 DAC输出的串行数据的输入; DOUT 为 ADC输出的串行数据的输出。 DSP 开发板采用标准化的扩展总线 , 对地址与数据总线 、控制总线及 EMIF 接口进行扩展。 EMIF 是外部存储器和 TMS320C6713 片内运算处理单元间的接口 ,EMIF 通过增强型直接存储器访问 (EDMA)控制器处理外部总线请求和数据传输。 数据接口卡包括 EMIF 接口电路、 A/D 转换电路和 D/A 转换电路。 A/ D、D/A 转换功能分别由 ADS5560 和 AD768 实现。 C6713 的多通道缓冲串口 MCBSP 可以配置为 SPI 总线接口、其串行数据传输格式与 TLV320AIC23 的 DSP 模式兼容 ,此外 ,这两款芯片的 I/O 电压兼容,从而使得 C6713 与 TLV320AIC23 可以无缝连接,系统设计简单。 图 12 AIC23 与 TMS320C6713 的连接 MODE 引脚作为串行接口输入模式选择端。 0为 I178。 C 模式, 1为 SPI 模式由于C6713 片内外设含有 I178。 C 模块,开发板直接使用 C6713 的 I178。 C 模块来控制TLV320AIC23,此时 C6713 作为 I178。 C总线生的主设备, TLV320AIC23 作为从设备,通过编程完成对 TLV320AIC23 的配置。 SPI 模式的数据传输方式可以参考TLV320AIC23 数据手册。 CS 接地定义 I178。 C 总线上 TLV320AIC23 的 7bit 外设地址为“ 0011010”, SCL 和 SDI 分别是 TLV320AIC23 的控制端口和数据输入端,分别和 C6713 的 I178。 C 模块端口 SCL 和 SDA 相连。 在配置 TLV320AIC23 的时候,需要注意: ( 1)写一次地址后,只能对一个寄存器进行写操作,而不能对所有的寄存器进行操作。 ( 2)在 I178。 C 模式下,数据是分为 2 个 8bit 写入的,而 TLV320AIC23 有 7 位 地址和 9 位数据,所以在编程的时候需要把数据项的最高位补充到前 8bit。 ( 3)在更改控制寄存器的时候,对应于每一次工作状态的改变,应对所有的寄存器进行重新写入,否则系统无法正常工作。 而且同时应该写 Rggister10,同时对所有的寄存器进行复位处理。 在控制接口方面, AIC23 内有 11 个可编程的控制寄存器,来控制芯片的左右声道音量、采样频率、立体声输入方式等工作状态。 控制接口可选择采用 SPI接口和接口,由外部的 MODE 引脚的电平状态来决定。 本文系统采用接口方( MODE设为低电平)对 AIC23 进行配置, AIC23 的寄存器是只写不读,其控制字的高 7位为寄存器地址,低 9 位为 写入寄存器的控制数据。 AIC23 各控制寄存器 地址及对应的控制内容如表 2 所示: 寄存器地址 寄存器 000 0000 左通道音频输入音量控制寄存器 000 0001 右通道音频输入音量控制寄存器 000 0010 左通道耳机音量控制寄存器 000 0011 右通道耳机音量控制寄存器 000 0100 模拟音频通道控制寄存器 000 0101 数字音频通道控制寄存器 000 0110 电源节省控制寄存器 000 0111 数字音频格式寄存器 000 1000 采样频率控制寄存器 000 1001 数字接口激活寄存器 000 1111 复位寄存器 表 2 控制寄存器 软件设计 AIC23 是音频信号处理芯片。 其处理过程直接从 AIC23 的模拟信号输入端输入,经过 AIC23 采样后,将数据传送到 DSP; DSP应用相应的算法对数据进行处理,并将处理后的数据传送到 AIC23 的 D/A 输入端; AIC23 对收到的数据进行数/模转换,变成声音信号后输出到相应的后端处理电路输入端;最后由后端处理电路将输入的声音信号转变成声音输出到音响设备。 系统软件设计基于 DSP 的 CCS 集成开发环境 ,采用 C 语言和汇编语言混合方式编写应用程序。 语音输入信号通过 AIC23 的 A/D 转换采集 ,DSP 通过 MCBSP 接。基于dsp的回声系统设计
相关推荐
编程。 为了满足SST39VF400A 的时序要求, XF 与 相“或”后接至。 了内部 32k 字 RAM 和 16K 字 ROM 之外,TMS320C5409 还可以扩展外部存储器。 其中, 数据总空间总共为 64k 字(0000H~FFFFH),I/O 空间为 64K 字(0000H~FFFFH),程序空 间为 8M。 8M 的程序空间的寻址是通过额外的 7
进入点设定 0 0 0 0 0 0 0 1 I/D S 指定在数据的读取与写入时,设定游标的移动方向及指定显示的移位 游标或显示移位控制 0 0 0 0 0 1 S/C R/L X X 设定游标的移动与显示的移位控制位;这个指令不改变DDRAM 的内容 功能设定 0 0 0 0 1 DL X RE X X DL=0/1:4/8 位数据 RE=1:扩充指令操作 RE=0:基本指令操作 设定
DSP 芯片所必须有的单周期乘法器。 1980 年,日本 NEC 公司推出的 mP D7720 是第一个具有硬件乘法器的商用 DSP 芯片,从而被认为是第一块单片 DSP 器件。 随着大规模集成电路技术和半导体技术的发展, 1982 年世界上诞生了第一代 DSP芯片 TMS32020 及其系列产品。 这种 DSP 器件采用微米工艺 NMOS 技术制作,虽功基于 DSP 的温度采集系统设计 8
(E7) 当 n=N时,该滤波器的输出为 DFT在频率 Wk=2π k/N处的值,亦即 ( E8) 如同将( E5)与式( E6)相比较就可验证一样。 冲激响应为 hk(n)的滤波器,他的系数函数可表示为 1()11k kNHz Wz ( E9) 该滤波器在单位圆上的频率 Wk=2π k/N处有一个极点。 因此,通过将输入的数据组输入到 N个单极点并行滤波器(谐振器)组就 可计算整个
数模转换芯片采用的是 TLV 5608,实现滤波后的信号从数字信号恢复为所需要的模拟信号。 JTGA 口供 DSP 芯片下载程序调试。 TMS320C5402 的体系结构 TMS320VC5402 处理器在本系列中处于先进水平。 它具有运算速度快,内部存储空间大,外部接口性能好等优点。 所以我选择了技术上比较先进,价格又较便宜的 C5402 作为硬件开发对象。 下面结合 C5402 的实际情况
12 引脚 名称 描述 引脚 名称 描述 1 AGND 模拟地 11 OUTB 通道 2 输出 2 OUTA 通道 1 输出 12 RFTB 通道 2 反馈电压 3 RFBA 通道 1 反馈电压 13 REFB 通道 2 参考电压 4 REFA 通道 1 参考电压 14 VDD 驱动电压 5 DGND 数字地 15 WR 读写选通 6 A/B 通道 1, 2 选通 16 CS 片选 7 DB7