ISD4004系列单片语音录放电路
ISD4004系列单片语音录放电路
一、 简述
●单片8至16分钟语音录放
●内置微控制器串行通信接口
●3V单电源工作
●多段信息处理
●工作电流25-30mA,维持电流1μA
●不耗电信息保存100年(典型值)
●高质量、自然的语音还原技术
●10万次录音周期(典型值)
●自动静噪功能
●片内免调整时钟,可选用外部时钟
ISD4004系列工作电压3V,单片录放时间8至16分钟,音质好,适用于移动电话及其他便携式电子产品中。芯片采用CMOS技术,内含振荡器、防混淆滤波器、平滑滤波器、音频放大器、自动静噪及高密度多电平闪烁存贮陈列。芯片设计是基于所有操作必须由微控制器控制,操作命令可通过串行通信接口(SPI或Microwire)送入。芯片采用多电平直接模拟量存储技术, 每个采样值直接存贮在片内闪烁存贮器中,因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和"金属声"。采样频率可为 4.0,5.3,6.4,8.0kHz,频率越低,录放时间越长,而音质则有所下降,片内信息存于闪烁存贮器中,可在断电情况下保存100年(典型值),反复录音10万次。
二、引脚描述
电源:(VCCA,VCCD) 为使噪声最小,芯片的模拟和数字电路使用不同的电源总线,并且分别引到外封装的不同管脚上,模拟和数字电源端最好分别走线,尽可能在靠近供电端处相连,而去耦电容应尽量靠近器件。
地线:(VSSA,VSSD) 芯片内部的模拟和数字电路也使用不同的地线。
同相模拟输入(ANA IN+) 这是录音信号的同相输入端。输入放大器可用单端或差分驱动。单端输入时,信号由耦合电容输入,最大幅度为峰峰值32mV,耦合电容和本端的3KΩ电阻输入阻抗决定了芯片频带的低端截止频率。差分驱动时,信号最大幅度为峰峰值16mV,为ISD33000系列相同。
反相模拟输入(ANA IN-) 差分驱动时,这是录音信号的反相输入端。信号通过耦合电容输入,最大幅度为峰峰值16mV
音频输出(AUD OUT) 提供音频输出,可驱动5KΩ的负载。
片选(SS) 此端为低,即向该ISD4004芯片发送指令,两条指令之间为高电平。
串行输入(MOSI) 此端为串行输入端,主控制器应在串行时钟上升沿之前半个周期将数据放到本端,供ISD输入。
串行输出(MISO) ISD的串行输出端。ISD未选中时,本端呈高阻态。
串行时钟(SCLK) ISD的时钟输入端,由主控制器产生,用于同步MOSI和MISO的数据传输。数据在SCLK上升沿锁存到ISD,在下降沿移出ISD。
中断(/INT) 本端为漏极开路输出。ISD在任何操作(包括快进)中检测到EOM或OVF时,本端变低并保持。中断状态在下一个SPI周期开始时清除。中断状态也可用RINT指令读取。OVF标志----指示ISD的录、放操作已到达存储器的未尾。EOM标志----只在放音中检测到内部的EOM标志时,此状态位才置1。
行地址时钟(RAC) 漏极开路输出。每个RAC周期表示ISD存储器的操作进行了一行(ISD4004系列中的存贮器共2400行)。该信号175ms保持高电平,低电平为25ms。快进模式下,RAC的218.75μs是高电平,31.25μs为低电平。该端可用于存储管理技术。
25ms
外部时钟(XCLK) 本端内部有下拉元件。芯片内部的采样时钟在出厂前已调校,误差在 +1%内。商业级芯片在整个温度和电压范围内, 频率变化在+2.25%内。工业级芯片在整个温度和电压范围内,频率变化在-6/+4%内,此时建议使用稳压电源。若要求更高精度,可从本端输入外部时钟(如前表所列)。由于内部的防混淆及平滑滤波器已设定,故上述推荐的时钟频率不应改变。输入时钟的占空比无关紧要,因内部首先进行了分频。在不外接地时钟时,此端必须接地。
自动静噪(AMCAP) 当录音信号电平下降到内部设定的某一阈值以下时,自动静噪功能使信号衰弱,这样有助于养活无信号(静音)时的噪声。通常本端对地接1mF的电容,构成内部信号电平峰值检测电路的一部分。检出的峰值电平与内部设定的阈值作比较,决定自动静噪功能的翻转点。大信号时,自动静噪电路不衰减,静音时衰减6dB。1mF的电容也影响自动静噪电路对信号幅度的响应速度。本端接VCCA则禁止自动静噪。
三、SPI(串行外设接口)
ISD4004工作于SPI串行接口。SPI协议是一个同步串行数据传输协议,协议假定微控制器的SPI移位寄存器在SCLK的下降沿动作,因此对ISD4004而言,在时钟止升沿锁存MOSI引脚的数据,在下降沿将数据送至MISO引脚。协议的具体内容为:
1.所有串行数据传输开始于SS下降沿。
2.SS在传输期间必须保持为低电平,在两条指令之间则保持为高电平。
3.数据在时钟上升沿移入,在下降沿移出。
4.SS变低,输入指令和地址后,ISD才能开始录放操作。
5.指令格式是(8位控制码)加(16位地址码)。
6.ISD的任何操作(含快进)如果遇到EOM或OVF,则产生一个中断,该中断状态在下一个SPI周期开始时被清除。
7.使用"读"指令使中断状态位移出ISD的MISO引脚时,控制及地址数据也应同步从MOSI端移入。因此要注意移入的数据是否与器件当前进行的操作兼容。当然,也允许在一个SPI周期里,同时执行读状态和开始新的操作(即新移入的数据与器件当前的操作可以不兼容)。
8.所有操作在运行位(RUN)置1时开始,置0时结束。
9.所有指令都在SS端上升沿开始执行。
(一)信息快进
用户不必知道信息的确切地址,就能快进跳过一条信息。信息快进只用于放音模式。放音速度是正常的1600倍,遇到EOM后停止,然后内部地址计数器加1,指向下条信息的开始处。
(二)上电顺序
器件延时TPUD(8kHz采样时,约为25毫秒)后才能开始操作。因此,用户发完上电指令后,必须等待TPUD,才能发出一条操作指令。
例如,从00从处发音,应遵循如下时序:
1. 发POWERUP命令;
2. 等待TPUD(上电延时);
3. 发地址值为00的SETPLAY命令;
4. 发PLAY命令。
器件会从此00地址开始放音,当出现EOM时,立即中断,停止放音。
如果从00处录音,则按以下时序:
1. 发POWER UP命令;
2. 等待TPUD(上电延时);
3. 发POWER UP命令
4. 等待2倍TPUD;
5. 发地址值为00的SETREC命令;
6. 发REC命令。
器件便从00地址开始录音,一直到出现OVF(存贮器末尾)时,录音停止。
指令表
指令 |
8位控制码<16位地址> |
操作摘要 |
POWERUP |
00100XXX<XXXXXXXXXXXXXXXX> |
上电:等待TPUD后器件可以工作 |
SET PLAY |
11100XXX< A15-A0> |
从指定地址开始放音。必须后跟PLAY指令使放音继续 |
PLAY |
11110XXX< XXXXXXXXXXXXXXXX > |
从当前地址开始放音(直至EOM或OVF) |
SET REC |
10100XXX<A15 -A0> |
从指定地址开始录音。必须后跟REC指令录音继续 |
REC |
10110XXX< XXXXXXXXXXXXXXXX > |
从当前地址开始录音(直至OVF或停止) |
SET MC |
11101XXX<A15 -A0> |
从指定地址开始快进。必须后跟MC指令快进继续 |
MC |
11111XXX< XXXXXXXXXXXXXXXX > |
执行快进,直到EOM.若再无信息,则进入OVF状态 |
STOP |
0X110XXX< XXXXXXXXXXXXXXXX > |
停止当前操作 |
STOP WRDN |
0X01XXXX< XXXXXXXXXXXXXXXX > |
停止当前操作并掉电 |
RINT |
0X110XXX< XXXXXXXXXXXXXXXX > |
读状态:OVF和EOM |
注:快进只能在放音操作开始时选择。
(三)SPI端口的控制位
(四)SPI 控制寄存器
SPI控制寄存器控制器件的每个功能,如录放、录音、信息检索(快进)、上电/掉电、开始和停止操作、忽略地址指针等。详见下表:
位 |
值 |
功 能 |
位 |
值 |
功 能 | |
RUN = = |
1 0 |
允许/禁止操作 开始 停止 |
PU = = |
1 0 |
电源控制 上电 掉电 | |
P/-R = = = |
1 0 |
录/放模式 放音 录音 |
IAB = = |
1 0 |
操作是否使用指令地址 忽略输入地址寄存的内容 使用输入地址寄存的内容 | |
MC = = |
1 0 |
快进模式 允许快进 禁止 |
P15-P0 A15-A0 |
行指针寄存器输出 输入地址寄存器 |
注:IAB置0时,录、放操作从A9-A0地址开始。为了能连贯地录、放到后续的存储空间,在操作到达该行末之前,应发出第二个SPI指令将IAB置1,否则器件在同一地址上反复循环。这个特点对语音提示功能很有用。RAC脚和IAB位可用于信息管理。SPI端口简单框图如下
四、时序 SPI时序参数
Symbol |
Parameters |
Min |
Typ |
Max |
Units |
TSSS |
/SS Setup Time |
500 |
nsec | ||
TSSH |
/SS Hold Time |
500 |
nsec | ||
TDIS |
Data in Setup Time |
200 |
nsec | ||
TDIH |
Data in Hold Time |
200 |
nsec | ||
TPD |
Output Delay |
500 |
nsec | ||
TDF |
Output Delay to Hiz |
500 |
nsec | ||
TSSmin |
/SS HIGH |
1 |
μsec | ||
TSCKhi |
SCLK High Time |
400 |
nsec | ||
TSCKlow |
SCLK Low Time |
400 |
nsec | ||
F0 |
CLK(Frequency) |
1000 |
kHz |
注意一:国内用户多习惯使用8031系列芯片,与ISD33000、4000系列均可以方便地连接,ISD芯片需要3V稳压电源,信号线可直接使用5V电平。
注意二:ISD4004的控制方式与ISD33000系列完全相同,可相互参阅。
ISD4002/4003/4004芯片参数表
型号 |
存储时间(秒) |
可分 段数 |
信息分辩率(毫秒) |
采样频率(HZ) |
滤波器带宽(HZ) |
控制码+地址位 |
ISD4002-120 |
120 |
600 |
200 |
8.0K |
3.4K |
5+11 |
ISD4002-180 |
180 |
600 |
300 |
5.3k |
2.3k |
5+11 |
ISD4002-240 |
240 |
600 |
400 |
4.0k |
1.7k |
5+11 |
ISD4003-04 |
240 |
1200 |
200 |
8.0K |
3.4K |
5+11 |
ISD4003-06 |
360 |
1200 |
300 |
5.3K |
2.3K |
5+11 |
ISD4003-08 |
480 |
1200 |
400 |
4.0K |
1.7K |
5+11 |
ISD4004-08 |
480 |
2400 |
200 |
8.0K |
3.4K |
8+16 |
ISD4004-16 |
960 |
2400 |
400 |
4.0K |
1.7K |
8+16 |
以上芯片由ISD4033K编程拷贝机编程、拷贝。 |