CoolRunner-Ⅱ器件的微处理器接口逻辑
发布时间:2008/9/19 0:00:00 访问次数:489
uc接口是一个异步接口,与i2c之间的交互流程如图1所示。
如图 uc与i2c之间的交互流程
uc总线协议在coo1runner-ⅱ中是由一个状态机实现的,如图2所示。
在空闲状态,微控制器将地址送上地址总经,并设置r_w、as和ds状态。如果在定周期,微控制器也会将待写数据送上数据总线。as有效表示地址总线上的地址有效,ds有效表示数据总线上数据有效;如果是在读周期,微控制器驱动数据总线为三态。同样,as有效表示地址总线上的地址有效,但是ds有效表示i2c控制器可以将数据送到数据总线。
图2 uc总线接口状态机
在as有效的情况下,i2c控制器状态进入addr状态。在此状态,一方面进行地址译码;另一方面将判断此设备是不是被寻址的设备,并使能内部寄存器。如果被寻址的是coolrunner-ⅱ i2c设备,并且ds有效,则i2c控制器将进入data_trs状态。如果是读操作,被请求的数据会被送到数据总线;如果是写操作,则数据总线上的数据被锁存在内部被寻址的寄存器中,coolrunner-ii i2c设备自动进入assert_dtack状态,dtack有效。读操作时表示总线上数据准各好,写操作时表示数据已经被接收到。
在dtack有效的情况下,写操作时,uc将撤销数据;读操作时,uc锁存总线上的数据。r_w信号线被置为读,并且释放as和ds,表明数据传输完毕。as和ds的释放会促使coolrunner-ii i2c控制器释放dtack,状态机进入idle状态。
欢迎转载,信息来自维库电子市场网(www.dzsc.com)
uc接口是一个异步接口,与i2c之间的交互流程如图1所示。
如图 uc与i2c之间的交互流程
uc总线协议在coo1runner-ⅱ中是由一个状态机实现的,如图2所示。
在空闲状态,微控制器将地址送上地址总经,并设置r_w、as和ds状态。如果在定周期,微控制器也会将待写数据送上数据总线。as有效表示地址总线上的地址有效,ds有效表示数据总线上数据有效;如果是在读周期,微控制器驱动数据总线为三态。同样,as有效表示地址总线上的地址有效,但是ds有效表示i2c控制器可以将数据送到数据总线。
图2 uc总线接口状态机
在as有效的情况下,i2c控制器状态进入addr状态。在此状态,一方面进行地址译码;另一方面将判断此设备是不是被寻址的设备,并使能内部寄存器。如果被寻址的是coolrunner-ⅱ i2c设备,并且ds有效,则i2c控制器将进入data_trs状态。如果是读操作,被请求的数据会被送到数据总线;如果是写操作,则数据总线上的数据被锁存在内部被寻址的寄存器中,coolrunner-ii i2c设备自动进入assert_dtack状态,dtack有效。读操作时表示总线上数据准各好,写操作时表示数据已经被接收到。
在dtack有效的情况下,写操作时,uc将撤销数据;读操作时,uc锁存总线上的数据。r_w信号线被置为读,并且释放as和ds,表明数据传输完毕。as和ds的释放会促使coolrunner-ii i2c控制器释放dtack,状态机进入idle状态。
欢迎转载,信息来自维库电子市场网(www.dzsc.com)
上一篇:数字锁相环设计步骤