微处理器对外并行总线接口方式一般分为两种,一种为多路复用方式,数据与地址采用共用引脚,分时传输;另一种是非多路复用方式,数据与地址采用分离引脚,同时传输。目前国内应用广泛的MCS196MCS196和MCS51MCS51系列微处理器采用多路复用总线,设计电路时应考虑如何将数据和地址从总线上分离出来,与存储器、外围接口芯片的数据和地址引脚连接。一般利用ALE(地址锁存)信号触发锁存器(74LS373)74LS373将地址与数据信号分离出来。近几年来,随着低价位DSP芯片的出现,DSP芯片已被广泛应用到控制与测量领域中。国内使用的DSP芯片以TI公司的TMS320系列为主流。这种微处理器对外的数据和地址总线接口方式为非多路复用方式,不能与多路复用方式的外围接口芯片(如CAN控制器SJA1000)直接相连。国内和国外也没有一款专用集成电路芯片来实现非多路复用方式到多路复用方式的转换。参考文献[1]提出了一种转换方法,是将DSP的数据线作为CAN控制器的数据地址复用线,用DSP的地址线A0作为地址、数据选择线。A0=1时,地址有效;A0=0时,数据有效,即用奇数地址传送地址,用偶数地址传送数据。虽然此方法实现起来电路简单,但在编程时却需要考虑发送的数据何时作为CAN控制器的地址,何时作为CAN控制器的数据,没有从根本上解决非多路复用方式到多路复用方式的转换。本文以TMS320F206与SJA1000的连接为例,采用复杂可编程逻辑器件CPLD,完成了用硬件来实现非多路复用方式到多路复用方式的转换。 1 多路复用总线的信号和时序
1.1 SJA1000SJA1000接口的主要信号说明
CAN控制器SJA1000提供的微处理器接口方式为典型INTEL或MOTOROLA地址数据多路复用总线模式,主要信号有地址数据信号AD7~AD0、地址选通信号ALE、片选信号CS、读信号RD、写信号WR、模式选择信号MODE。当MODE=1时,为INTEL模式;当MODE=0时,为MOTOROLA模式。本文描述的地址数据多路复用总线模式均为INTEL模式。图1和图2分别为INTEL模式读、写周期时序。AD7~AD0引脚在ALE有效时,传送的是地址信号;在RD或WR有效时,传输的是数据信号。
1.2 SJA1000SJA1000的时序分析
以SJA1000的读时序为例进行说明。在设计转换桥时,多路复用总线的各信号必须满足如下时间参数要求:ALE的脉冲宽度(tW(AL))最小为8ns;地址信号(A0~A7)建立到ALE变为低电平所需时间(tsu(A-AL))最小为8ns;RD的有效脉宽(tW(R))最小为40ns;RD为低电平到数据信号(D7~D0)有效所需时间(tRLOV)最大为50ns;RD变为高电平到地址数据线释放(即高阻状态)所需时间(tRHDZ)最大为30ns。
评论