时隙与帧同步信号的关系分别如图5、图6所示。为了CODEC与DSP芯片间正确收发数据,一般选择CODEC芯片在BCLK的上升沿发送数据DX,下降沿采样数据DR,而在另一端的AC48302,则在时钟下降沿采样PCMIN,上升沿发送PCMOUT。
2.5 用户线接口(SLIC)芯片
设计中为了使语音卡能够提供FXS接口功能,采用了爱立信公司的新型SLIC芯片PBL83710连接用户接口。在该芯片内部能够产生高电压铃流信号及提供自动电池馈电切换,具有环流振铃和地键检测功能及2-4线转换功能。该芯片将许多传统的振铃继电器、铃流发生器等器件集成在一个片内,节省了印制板空间和成本。
3 VoIP语音卡硬件驱动流程
硬件驱动程序主要完成以下功能:
(1)初始化PLX9030芯片,配置相关寄存器,选择本地总线工作方式。
(2)初始化AC48302芯片,启动AC48302内部的DSP内核到正常工作状态。AC48302的启动步骤按顺序分为以下几步:核代码(Kernel)下载;程序代码(Program)下载;初始化模式;启动运行。
(3)驱动语音卡的正常操作。接收处理摘挂机中断,将SLIC置于正确状态;配置CODEC芯片的各通道收发数据时隙以及CODEC芯片的增益控制;接收处理AC48302数据包处理中断,AC48302每处理完一个语音数据包就通过中断方式通知路由器CPU读取当前Buffer中的数据或向Buffer写入下一个数据包。
本文采用的是FXS接口,只要对CODEC后面部分电路稍加改动即可实现FXO或E&M接口功能。目前,该语音卡方案在路由器产品中已获广泛采用。