王学兵和范冰冰MPC8272是Motorola公司2004年推出的第2代PowerQUICC通信处理器。该通信处理器采用MPC603e核心处理器,核心处理器工作频率达400 MHz,外部总线 MHz,总线位数据位宽操作。另外该通信处理器内嵌一个32位RISC处理器的通信处理模块,集成有MAC、FCC、SMC、 ATM、HDLC、UART、T1、USB、PCI等设备通信接口,以及1个60x总线接口连接通用外围设备,非常适用于通信控制领域的应用。
MPC8272总线对外部器件的读、写访问是通过存储器控制模块来实现的,存储器控制模块生成8个外部存储器地址空间片选信号CSO~CS7,每个片选信号对应2个主要控制寄存器BR和OR,用它们来定义片选信号所定义的地址空间和对等待状态数、读写选通信号的建立时间、激活时间、保持时间等的设置。 MPC8272对外部器件数据读、写时序如图1、图2所示。其中tc是外部总线工作时钟Clock的时钟周期,tRC和tWC分别是读写指令周期,tW是读写指令周期内插入的Clock时钟周期。当不使用外部输入信号TA(数据传输确认信号)时,插入的时钟周期数由0R寄存器的SCY值确定,其值最大为 15个时钟周期;当使用外部输入信号TA时,插入的时钟周期数由其确定;当输入信号TA变低时(即外设数据准备好时),处理器即可完成此次数据的读写操作。
MPC8272的外部总线 MHz。当读写指令周期不插入时钟周期时,其外部总线个时钟周期20 ns,外部总线×N)Mbps(其中N为总线数据位宽)。该速率对于一般通用外设来说是很高的,需调整OR寄存器的SCY值以降低总线速率与外设进行读写操作。插入最大15个时钟周期时,外部总线个时钟周期170 ns,此时外部总线×N)Mbps,该速率满足常用外设的总线读写要求。对于通信的一些特殊外设,如交换网络电MT90826、双口 RAMIDT71V321、数字信号处理器TMS320VC5416等接口,需采用处理器MPC8272的外部数据传输确认信号TA并设计相应的外部硬件等待逻辑电进一步降低总线速率或动态插入任何数目的等待时钟周期tW,以避免数据读写冲突,提高处理器总线效率和数据传输可靠性。
作为语音通信产品,嵌入式处理器主要外设的工作是:话音交换矩阵完成话音交换;DSP完成DTMF收发号、FSK来电号码显示以及会场话音融合等;双口RAM完成嵌入式处理器与其他处理器间的数据通信;显示器用于参数设置或功能显示等。各外设的总线接口具有读、写周期长且不确定等特点,不能直接与MPC8272总线连接,需设计相应的外部硬件电以满足外设的读写时序要求。以下分别对各外设接口进行介绍。
MT90826是卓联公司开发的4 096×4 096通道无阻塞大型线.384.Mbps等STBUS格式数据流。电采用顺序写入控制读出交换机理,每个输出通道对应一个连接寄存器。嵌入式处理器通过在输出通道的连接寄存器中写入输入通道的地址,完成输入与输出通道话音数据流的交换。嵌入式处理器对MT90826的读写操作是否完成,可通过MT90826的数据传输确认信号DTA,其时序如图3所示。当DTA信号在片选周期内由高变低后,表示嵌入式处理器可以结束本次总线的读写操作了。tAKD时间长短并不确定,其最大值为240 ns,最小值为0。
在一个系统中,可能存在多片数字信号处理器TMS320VC5416,它们分别完成 DTMF收发号、FSK来电号码显示和会场线位HPI接口与嵌入式处理器进行数据交换,其通信原理与两个处理器之间采用双口RAM进行数据通信相似,即两处理器共享一段内存空间,分不同时间对其读写操作。当处理器1正在对一个内存地址操作(读或写),而处理器2也需对其进行操作(写或读)时,此时输出忙占用信号,处理器2需等待忙占用信号结束后才能完成本次写或读操作。TMS320VC5416与双口RAM IDT71V321的不同之处在于:嵌入式处理器操作IDT71V321是直接内存操作,而嵌入式处理器操作TMS320VC5416是通过HPI接口地址、数据寄存器间接操作TMS320VC5416的内存空间的。另外,TMS320VC5416的HPI接口忙信号HRDY为高电平有效,IDT71V321接口忙信号BUSY为低电平有效。HRDY和BUSY信号的产生均具有随机性,且随着总线操作频率的增加而加大;忙等待时间 tRDY和tBUSY也具有不确定性,与其通信的处理器运行速度的快慢有关,读写时序如图4所示。
VGGl2864E是维信诺科技有限公司开发的128×64点阵OLED显示模块,读写时序如图5所示。该OLED模块的使能信号E的周期tEC最小为1 000 ns(相当于固定1 Mbps的总线速率),使能信号脉冲宽度tEH、tEL最小为450 ns。嵌入式处理器MPC8272若采用总线 ns,其读、写时序不能满足该OLED模块的要求,需设计相应的外部硬件等待逻辑电来扩展MPC8272的读、写周期时长,以满足OLED模块的要求。
快速嵌入式处理器与慢速外设的总线种:降低外部总线频率、调整片选控制寄存器时钟周期数和使用外部输入确认信号TA(Intel处理器名为数据准备好信号RDY,三星处理器名为总线周期延长请求信号nwait,它们的工作原理相同)。
降低嵌入式处理器外部总线频率可加长总线数据传输周期,达到与低速外设匹配的目的,但大大降低了处理器的利用率和效率。该方法不可取。
调整嵌入式处理器片选控制寄存器的插入时钟周期数,可以满足总线周期固定且不大于处理器外部总线周期的外设的要求,但不能满足总线周期不确定和大于处理器外部总线周期的外设的要求。例如,MPC8272的外部总线 ns,可以满足总线 ns的外设的要求,但不能与0LED模块(周期为l000 ns)连接。由于TMS320VC5416和IDT71V321接口的不确定性,其总线也不能与嵌入式处理器总线直接连接,需使用其外部输入确认信号TA 并设计外部逻辑电进行适配,以满足稳定、可靠的外部总线读写需要,其硬件连接如图6所示。MT90826数据总线位宽与其匹配;其他外设数据总线,并与高位地址线进行地址译码产生其他外设的片选使能信号。CPLDEPM3064的详细设计如图7所示。