原创 EZ-USB FX2单片机CY7C68013的特性介绍

2008-6-18 17:05 1725 1 1 分类: 工程师职场

摘要:本文主要介绍Cypress Semiconductor公司的EZ-USB FX2单片机CY7C68013,该单片机是一个带USB2.0内核、8051兼容的单片机。

关键词:USB2.0 EZ-USB FX2 单片机 CY7C68013


1 介绍


Cypress Semiconductor公司的EZ-USB FX2是世界上第一款集成USB2.0的微处理器,它集成了USB2.0收发器、SIE(串行接口引擎)、增强的8051微控制器和可编程的外围接口。FX2这种独创性结构可使数据传输率达到56Mbytes/s,即USB2.0允许的最大带宽。在FX2中,智能SIE可以硬件处理许多USB1.1和USB2.0协议,从而减少了开发时间和确保了USB的兼容性。GPIF(general Programmable Interface)和主/从端点FIFO(8位或16位数据总线)为ATA、UTOPIA、EPP、PCMCIA和DSP等提供了简单和无缝连接接口。


2 EZ-USB FX2结构


CY7C68013结构图如图1所示。它有三种封装形式:56SSOP,100TQFP和128TQFP。



CY7C68013集成了以下特性:


USB2.0收发器、SIE(串行接口引擎)和增强性8051微处理器;


软件运行:8051程序从内部RAM开始运行,可以借助下列几种方式进行程序装载:


(1) 通过USB下载;


(2) EEPROM中装载;


(3) 通过外部存储器设备。


四个可编程BULK/INTERRUPT/ISOCHRONOUS端点;<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />


可选双、三和四缓冲


8位或16位外部数据接口


通用可编程接口(GPIF


(1) 可以直接连接到并口,8位和16位;


(2) 可编程波形描述符和配置寄存器;


(3) 支持多个Ready输入和Control输出。


集成标准8051内核,且具有下列增强特性:


(1) 可以达到48MHz时钟;


(2) 每条指令占四个时钟周期;


(3) 两个USARTs


(4) 三个定时/计数器;


(5) 扩展的中断系统;


(6) 两个数据指针。


3.3V电源系统;


智能串行引擎(SIE);


矢量USB中断;


独立的数据缓冲区供SETUPDATA包控制传输;


集成I2C控制器,运行速度可达100400KHz


四个FIFO,可与ASICDSP等无缝连接;


专门的FIFOGPIF自动矢量中断;


可用于DSL ModemsATA接口、相机、Home PNAWLANMP3播放器、网络等。



3USB启动方式和枚举


上电时,内部逻辑会检查连接到I2C总线上的EEPROM中的第一个字节(0xC00xC2)。如果是0xC0,就会使用EEPROM中的VID/PID/DID来替代内部存储值;如果是0xC2,内部逻辑就会把EEPROM中的内容装入到内部RAM中;如果没有检查到EEPROMFX2就会使用内部存储的描述符来枚举。FX2缺省的VID/PID/DID0x04B4/ 0x8613/ 0xxxyy


当首次插入USB时,FX2通过USB电缆会自动枚举且下载固件和USB描述符表;接下来,FX2再次枚举,这次主要通过下载的信息来定义设备。这两个步骤就叫做重枚举,当设备插入时它们就立即执行。



4、程序/数据存储器


4.1内部数据RAM


如图2所示,FX2的内部数据RAM被分成三个不同的区域:低(LOW128、高(Upper128和特殊功能寄存器(SFR)空间。低128和高128是通用RAMSFR包括FX2控制和状态寄存器。


4.2外部程序存储器和数据存储器


FX28K片上RAM,位于0x00000x1FFF512字节Scratch RAM,位于0xE0000xE1FF。尽管Scratch RAM从物理上来说位于片内,但是通过固件可以把它作为外部RAM一样来寻址。


FX2保留7.5K0xE2000xFFFF)数据地址空间作为控制/状态寄存器和端点缓冲器。


注意:只有数据内存空间保留,而程序内存(0xE0000xFFFF)并不保留。


5、端点缓冲区


FX2包含3个64字节端点缓冲区和4K可配置成不同方式的缓冲,其中3个64字节的缓冲区为EP0、EP1IN和EP1OUT。EP0作为控制端点用,它是一个双向端点,既可为IN也可为OUT。当需要控制传输数据时,FX2固件读写EP0缓冲区,但是8个SETUP字节数据不会出现在这64字节EP0端点缓冲区中。EP1IN和EP1OUT使用独立的64字节缓冲区,FX2固件可配置这些端点为BULK、INTERRUPT或ISOCHRONOUS传输方式,这两个端点和EP0一样只能被固件访问。这一点与大端点缓冲区EP2、EP4、EP6和EP8不同,这四个端点缓冲区主要用来和片上或片外进行高带宽数据传输而无需固件的参与。EP2、EP4、EP6和EP8是高带宽、大缓冲区。它们可被配置成不同的方式来适应带宽的需求。


6、外部FIFO接口


EP2、EP4、EP6和EP8大端点缓冲区主要用来进行高速(480Mbits/s)数据传输,可以通过FIFO数据接口与外部ASIC和DSP等处理器无缝连接来实现高速数据传输。它具有通用接口:Slave(从)FIFO(外部主)或GPIF(内部主)、同步或异步时钟、内部或外部时钟等。图3、图4分别为FX2 FIFO处在“Slave FIFO”模式和“GPIF Master”模式。


7、中断资源


FX2的中断结构是在一个标准8051单片机的基础上增强和扩展了部分中断资源,中断资源如表1所示:



1 FX2中断



FX2中断


中断来源


中断向量


优先级


IE0


INT0 Pin


0x0003


1


TF0


Timer0 Overflow


0x000B


2


IE1


INT1 Pin


0x0013


3


TF1


Timer1 Overflow


0x001B


4


RI_0 & TI_0


USART0 Rx & Tx


0x0023


5


TF2


Timer2 Overflow


0x002B


6


Resume


WAKEUP/WU2 Pin


0x0033


0


RI_1 & TI_1


USART1 Rx & Tx


0x003B


7


USBINT


USB


0x0043


8


I2CINT


I2C BUS


0x004B


9


IE4


GPIF/FIFOs/INT4 Pin


0x0053


10


IE5


INT5 Pin


0x005B


11


IE6


INT6 Pin


0x0063


12


其中27个USB请求共享USB中断,14个FIFO/GPIF源共享INT4。


8、结束语


我们用EZ-USB FX2 CY7C68013单片机来实现多串口转USB,并开发了windows操作系统下的USB驱动。

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
1
关闭 站长推荐上一条 /3 下一条