首页 > > > 中文usb控制芯片CY7C68013.pdf

中文usb控制芯片CY7C68013.pdf

中文usb控制芯片CY7C68013.pdf

上传者: 用户nht9v86kip 2013-12-08 评分1 评论0 下载0 收藏10 阅读量523 暂无简介 简介 举报

简介:本文档为《中文usb控制芯片CY7C68013pdf》,可适用于硬件技术领域,主题内容包含CYCA,CYCACYCA,CYCAEZUSBFXLP(TM)USB微控制器高速USB外设控制器CypressSemiconductorCorpor符等。

CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A EZ-USB FX2LP (TM) USB 微控制器 高速 USB 外设控制器 Cypress Semiconductor Corporation • 198 Champion Court • San Jose, CA 95134-1709 • 408-943-2600 文件编号:001-50431 修订版 ** 修订时间 2008年 12月 11日 1. 特色 (CY7C68013A/14A/15A/16A) USB 2.0 USB IF 高速性能且经过认证 (TID # 40460272) 单芯片集成 USB 2.0 收发器、智能串行接口引擎 (SIE) 和增强 型 8051 微处理器 适用性、外观和功能均与 FX2兼容 引脚兼容 目标代码兼容 功能兼容(FX2LP 是超集) 超低功耗:ICC 在任何模式下都不超过 85 mA 适合总线和电池供电的应用 软件:8051 代码运行介质: 内部 RAM,通过 USB 下载 内部 RAM,从 EEPROM 加载 外部存储设备(128 引脚封装) 16 K 字节片上代码 / 数据 RAM 四个可编程的 BULK/INTERRUPT/ISOCHRONOUS 端点 缓冲区大小选项:两倍,三倍,四倍 附加的可编程 (BULK/INTERRUPT) 64 位端点 8 位或 16 位外部数据接口 可生成智能介质标准错误校正码 ECC 通用可编程接口 (General Programmable Interface, GPIF) 可与大多数并行接口直接连接 由可编程波形描述符和配置寄存器定义波形 支持多个 Ready (RDY) 输入和 Control (CTL) 输出 符合行业标准的集成增强型 8051 48 MHz、 24 MHz 或 12 MHz CPU 操作 每个指令周期四个时钟 两个 USART 三个计数器 / 定时器 扩展的中断系统 两个数据指针 3.3V 工作电压,容限输入为 5V 向量化 USB 中断和 GPIF/FIFO 中断 分离的 CONTROL 传输设置部分和数据部分数据缓冲 集成 I2C 控制器,在 100 或 400 kHz 下运行 集成的四个先进先出 (FIFO) 缓冲 集成胶合逻辑和 FIFO 有助于降低系统成本 与 16 位总线之间的自动转换 可主 -从操作 使用外部时钟或异步选通脉冲 易于与 ASIC 和 DSP IC 相连的接口 有商业和工业温度等级供选择(除 VFBGA 外的所有封装) [+] Feedback Administrator 高亮 Administrator 高亮 Administrator 高亮 Administrator 高亮 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 2 页,共 61 页 1.1 特色(仅限 CY7C68013A/14A) CY7C68014A:适合电池供电应用 挂起电流:100 μA (typ) CY7C68013A:适合非电池供电应用 挂起电流:300 μA (typ) 有五种无铅封装供选择,可包含多达 40 个 GPIO 128 引脚 TQFP(40 个 GPIO)、 100 引脚 TQFP(40 个 GPIO)、 56 引脚 QFN(24 个 GPIO)、 56 引脚 SSOP (24 个 GPIO)和 56 引脚 VFBGA(24 个 GPIO) 1.2 特色(仅限 CY7C68015A/16A) CY7C68016A:适合电池供电应用 挂起电流:100 μA (typ) CY7C68015A:适合非电池供电应用 挂起电流:300 μA (typ) 采用无铅 56 引脚 QFN 封装(26 个 GPIO) 比 CY7C68013A/14A 多 2 个 GPIO,可在同样的空间内实现 额外的功能 赛普拉斯半导体公司(赛普拉斯)的 EZ-USB FX2LP (CY7C68013A/14A) 是高集成、低功耗 USB 2.0 微控制器 EZ-USB FX2 (CY7C68013) 的一个低功耗版本。通过将 USB 2.0 收发器、串行接口引擎 (SIE)、增强型 8051 微控制器,以及 可编程外设接口集成到一个芯片中,赛普拉斯研发出一个极具成 本优势的解决方案,不仅能在极短时间内完成从立项到投放市场 的过程,而且其低功耗特点使得总线供电应用成为可能。 FX2LP 的创新型体系架构让数据传输速率达到每秒 53 MB 以 上,即可允许的最大 USB 2.0 带宽,而为此所使用的仍然是放在 如 56 VFBGA (5mm x 5mm) 一样小的封装中的低成本 8051 微 控制器。由于集成了 USB 2.0 收发器, FX2LP 更为经济,与使 用 USB 2.0 SIE 或外部收发器的情况相比,可提供占据空间更少 的解决方案。借助 EZ-USB FX2LP,赛普拉斯的智能 SIE 可处理 硬件方面的大多数 USB 1.1 和 2.0 协议,从而减轻了嵌入式微控 制器的负担,使其得以处理应用程序特定的功能,并缩短开发时 间以确保 USB 兼容性。 通用可编程接口 (GPIF) 和主 / 从端点 FIFO(8 位或 16 位数据总 线)为 ATA、 UTOPIA、 EPP、 PCMCIA 等主流接口和大多数 DSP/ 处理器提供了简易的无胶合接口。 FX2LP 的耗电量小于 FX2 (CY7C68013),而片上代码 / 数据 RAM 是后者的两倍,并且其适用性、外观和功能均与 56、100 和 128 引脚 FX2 兼容。 此系列包含五种封装:56VFBGA、 56 SSOP、 56 QFN、 100 TQFP 和 128 TQFP。 地 址 (1 6) x20 PLL /0.5 /1.0 /2.0 8051 内核 12/24/48 MHz, 四个时钟 /周期 I2C VCC 1.5k D+ D– 地 址 (1 6) / 数 据 总 线 (8 ) FX2LP GPIF CY 智能 USB 1.1/2.0 引擎 USB 2.0 XCVR 16 KB RAM 4 KB FIFO 附加 IO (24) ADDR (9) CTL (6) RDY (6) 8/16 数 据 (8 ) 24 MHz 外部 XTAL 高性能微型 使用标准工具 具有低功耗选项 主控端 ECC 通用可编程 I/F 符合 ASIC/DSP 或 总线标准,例如 ATAPI、 EPP 等 丰富的 I/O 接口包含 两个 USART 高达 96 MB/s 突发速率 FIFO 和端点存储器 (主控端或从属端操作) “软配置”容易 进行固件更换 增强型 USB 核 简化 8051 代码 集成全速和高速 XCVR 连接后可 实现全速 逻辑方框图逻辑方框图 [+] Feedback mark 铅笔 mark 铅笔 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 3 页,共 61 页 2. 应用 便携式录像机 MPEG/TV 转换 DSL 调制解调器 ATA 接口 存储器卡读取器 旧式转换设备 照相机 扫描仪 家用 PNA 无线 LAN MP3 播放器 网络设备 赛普拉斯网站的“Reference Designs”(参考设计)部分为 USB2.0 的典型应用提供了附加工具。每个参考设计都包含固件的源代码和 目标代码、原理图以及文档。有关详细信息,请访问赛普拉斯网站。 3. 功能概述 3.1 USB 信号传输速度 FX2LP 按照 2000 年 4 月 27 日发布的《USB 规范修订版 2.0》 中定义的三种速率中的两种运行: 全速,信号传输比特率为 12 Mbps 高速,信号传输比特率为 480 Mbps FX2LP 不支持 1.5 Mbps 的低速信号发射模式。 3.2 8051 微处理器 FX2LP 系列中内嵌的 8051 微处理器具有 256 字节的寄存器 RAM、扩展的中断系统、三个定时器/计数器和两个 USART。 3.2.1 8051 时钟频率 FX2LP 有一个片上振荡器电路,它使用具有以下特性的外部 24 MHz (100 ppm) 晶体: 并联谐振 基础模式 500 μW 驱动级别 12-pF(5% 的允许偏差)负载电容 片上 PLL 可根据收发器 /PHY 的需要将 24 MHz 振荡器倍频到 480 MHz,而内部计数器可将其分频以用作 8051 时钟。默认的 8051 时钟频率是 12 MHz。 8051 的时钟频率可以由 8051 通过 CPUCS 寄存器动态更改。 可以使用内部控制位实现三态和反相的 CLKOUT 引脚会按照以 下选定的 8051 时钟频率输出占空比为 50% 的 8051 时钟:48 MHz、 24 MHz 或 12 MHz。 3.2.2 USART FX2LP 含有两个标准 8051 USART,它们通过特殊功能寄存器 (SFR) 位来进行寻址。USART 接口引脚可以使用单独 I/O,不与 端口引脚进行多路复用。 UART0 和 UART1 可以使用内部时钟以 230 KBaud(误差不超 过 1%) 的速率运行。以 230 KBaud 的速率运行是通过可在适当 时间生成溢出脉冲的内部派生时钟源实现的。内部时钟会根据 8051 时钟速率(48 MHz、 24 MHz 和 12 MHz)进行调整,从 而使它始终为以 230 KBaud 的速率运行提供正确的频率。 [1] 3.2.3 特殊功能寄存器 在某些 8051 SFR 地址添加了 SFR 以便能快速访问关键的 FX2LP 功能。这些添加的 SFR 如第 4 页的表 1 所示。粗体部分 表示非标准的增强型 8051 寄存器。以 “0” 和 “8” 结尾的两个 SFR 行中包含可以位寻址的寄存器。A 到 D 四个 IO 端口使用在标准 8051 中用于端口 0 到 3 的 SFR 地址,这些地址在 FX2LP 中未 实现。由于 SFR 寻址更快、更有效,因此 FX2LP IO 端口在外部 RAM 空间中不可寻址(使用 MOVX 指令)。 3.3 I2C 总线 FX2LP 仅支持在 100/400 KHz 下将 I2C 总线用作主控端。 SCL 和 SDA 引脚具有开漏输出和滞后输入。即使未连接 I2C 设备,这 些信号也必须上拉至 3.3V。 3.4 总线 所有封装(8 位或 16 位 “FIFO” 双向数据总线)均在 IO 端口 B 和 D 上多路复用。 128 引脚封装:添加仅 16 位输出 8051 地址 总线和 8 位双向数据总线。 图 1. 晶体配置 12 pf12 pf 24 MHz 20 Þ PLL C1 C2 12-pF 电容值采用跟踪电容为: 四层 FR4 PCA 上每侧 3 pF 注 1. 以 115 KBaud 的速率运行也是可能的,只要分别针对 UART0、 UART1 或针对二者将 8051 SMOD0 或 SMOD1 位编程为 “1”即可。 [+] Feedback Administrator 高亮 mark 铅笔 mark 铅笔 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 4 页,共 61 页 3.5 USB 引导方法 在加电序列中,内部逻辑会检查 I2C 端口是否连接了第一个字节 为 0xC0 或 0xC2 的 EEPROM。如果找到,则会使用 EEPROM 中的 VID/PID/DID 值来代替内部存储的值 (0xC0),或者在引导时 将 EEPROM 内容加载到内部 RAM (0xC2) 中。如果未检测到 EEPROM,FX2LP 会使用内部存储的描述符进行枚举。FX2LP 的默认 ID 值为 VID/PID/DID(0x04B4、 0x8613、 0xAxxx,其 中 xxx = 芯片修订版本)。 [2] 3.6 ReNumeration 由于 FX2LP 的配置为软配置,因此一个芯片可以被识别成多个 不同 USB 设备。 当首次插入 USB 时,FX2LP 会自动进行枚举,并通过 USB 电缆 下载固件和 USB 描述符表。接着,FX2LP 会再次进行枚举,但这 次的 USB 设备由下载的信息所定义。这种名为 ReNumeration 的专利性两步式过程会在插入设备后立即发生,而不提示初始下 载步骤已经发生。 USBCS(USB Control 和 Status)寄存器中有两个控制位对 ReNumeration 过程进行控制,它们是:DISCON 和 RENUM。 为了模拟 USB 断开连接,固件会将 DISCON 设为 1。为了重新 连接,固件会将 DISCON 清除为 0。 在重新连接前,固件会设置或清除 RENUM 位,以指明是由固件 还是由默认的 USB 设备处理通过端点零传输的设备请求:如果 RENUM = 0,则由默认的 USB 设备处理设备请求,如果 RENUM = 1,则由固件处理请求。 3.7 总线供电应用 通过按照 USB 2.0 规范要求的小于 100 mA 进行枚举,FX2LP 完 全支持总线供电设计。 3.8 中断系统 3.8.1 INT2 中断请求和使能寄存器 FX2LP 针对 INT2 和 INT4 实现自动向量化功能。有 27 个 INT2 (USB) 向量和 14 个 INT4 (FIFO/GPIF) 向量。有关详细信息,请 参见《EZ-USB 技术参考手册》 (TRM)。 3.8.2 USB 中断自动向量化 主 USB 中断由 27 个中断源共享。为节省确定独立 USB 中断源 所需的编码和处理时间,FX2LP 提供一个辅助级别的中断向量化 功能,叫做自动向量化。当触发 USB 中断时,FX2LP 会将程序 计数器推到其堆栈中,然后跳转到地址 0x0043,在那里它应该 会找到用于跳转到 USB 中断服务子程序的 “Jump” 指令。 表 1. 特殊功能寄存器 x 8x 9x Ax Bx Cx Dx Ex Fx 0 IOA IOB IOC IOD SCON1 PSW ACC B 1 SP EXIF INT2CLR IOE SBUF1 2 DPL0 MPAGE INT4CLR OEA 3 DPH0 OEB 4 DPL1 OEC 5 DPH1 OED 6 DPS OEE 7 PCON 8 TCON SCON0 IE IP T2CON EICON EIE EIP 9 TMOD SBUF0 A TL0 AUTOPTRH1 EP2468STAT EP01STAT RCAP2L B TL1 AUTOPTRL1 EP24FIFOFLGS GPIFTRIG RCAP2H C TH0 保留 EP68FIFOFLGS TL2 D TH1 AUTOPTRH2 GPIFSGLDATH TH2 E CKCON AUTOPTRL2 GPIFSGLDATLX F 保留 AUTOPTRSET-UP GPIFSGLDATLNOX 表 2. FX2LP 的默认 ID 值 默认 VID/PID/DID 厂商 ID 0x04B4 赛普拉斯半导体公司 产品 ID 0x8613 EZ-USB FX2LP 设备发行 0xAnnn 取决于芯片修订版本 (nnn = 芯片修订版本,其中第一 个硅片 = 001) 注 2. I2C 总线 SCL 和 SDA 引脚必须上拉,即使未接连 EEPROM 也是如此。否则,这种检测方法无法正常工作。 [+] Feedback Administrator 高亮 Administrator 高亮 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 5 页,共 61 页 FX2LP jump 指令的编码如下所示: 如果使能了自动向量化(在 INTSET-UP 寄存器中 AV2EN = 1), 则 FX2LP 会替换其 INT2VEC 字节。因此,如果在位置 0x0044 预加载了跳转表地址的高字节 (“page”),则在 0x0045 自动插入 的 INT2VEC 字节将跳转至该页面内 27 个地址以外的正确地址。 3.8.3 FIFO/GPIF 中断 (INT4) 正如 USB 中断由 27 个独立的 USB 中断源共享一样,FIFO/GPIF 中断由 14 个独立的 FIFO/GPIF 源共享。FIFO/GPIF 中断和 USB 中断一样,可以利用自动向量化。表 4 显示了 14 个 FIFO/GPIF 中断源的优先级和 INT4VEC 值。 表 3. INT2 USB 中断 INT2 USB 中断表 优先级 INT2VEC 值 源 注 1 00 SUDAV Setup 数据可用 2 04 SOF 帧(或微型帧)起始 3 08 SUTOK 设置权标已收到 4 0C SUSPEND USB 挂起请求 5 10 USB RESET 总线复位 6 14 HISPEED 已进入高速运行 7 18 EP0ACK FX2LP 确认了 CONTROL 握手 8 1C 保留 9 20 EP0-IN EP0-IN 已做好加载数据的准备 10 24 EP0-OUT EP0-OUT 有 USB 数据 11 28 EP1-IN EP1-IN 已做好加载数据的准备 12 2C EP1-OUT EP1-OUT 有 USB 数据 13 30 EP2 IN: 缓冲区可用。 OUT: 缓冲区有数据 14 34 EP4 IN: 缓冲区可用。 OUT: 缓冲区有数据 15 38 EP6 IN: 缓冲区可用。 OUT: 缓冲区有数据 16 3C EP8 IN: 缓冲区可用。 OUT: 缓冲区有数据 17 40 IBN IN-Bulk-NAK(任意 IN 端点) 18 44 保留 19 48 EP0PING EP0 OUT 已被 Ping 过而且被否认 20 4C EP1PING EP1 OUT 已被 Ping 过而且被否认 21 50 EP2PING EP2 OUT 已被 Ping 过而且被否认 22 54 EP4PING EP4 OUT 已被 Ping 过而且被否认 23 58 EP6PING EP6 OUT 已被 Ping 过而且被否认 24 5C EP8PING EP8 OUT 已被 Ping 过而且被否认 25 60 ERRLIMIT 总线错误超过了程序设定的限制值 26 64 27 68 保留 28 6C 保留 29 70 EP2ISOERR ISO EP2 OUT PID 序列错误 30 74 EP4ISOERR ISO EP4 OUT PID 序列错误 31 78 EP6ISOERR ISO EP6 OUT PID 序列错误 32 7C EP8ISOERR ISO EP8 OUT PID 序列错误 [+] Feedback CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 6 页,共 61 页 如果使能了自动向量化(在 INTSET-UP 寄存器中设置 AV4EN = 1),则 FX 2LP 会替换其 INT4VEC 字节。因此,如果在位置 0x0054 预加载了跳转表地址的高字节 (“page”),则在 0x0055 自 动插入的 INT4VEC 字节将跳转至该页面内 14 个地址以外的正 确地址。当发生 ISR 时,FX2LP 会将程序计数器推到其堆栈中, 然后跳转到地址 0x0053,在那里它应该会找到用于跳转到 ISR 中断服务子程序的 “Jump”指令。 3.9 复位和唤醒 3.9.1 复位引脚 输入引脚 RESET# 会在触发时复位 FX2LP。该引脚有滞后,而 且为低电平有效。当对 CY7C680xxA 使用晶体时,复位的时间 必须足以让晶体和 PLL 达到稳定状态。该复位时间必须是在 VCC 达到 3.0V 后大约 5 ms。如果晶体输入引脚由时钟信号驱 动,则内部 PLL 会在 VCC 达到 3.0V 后的 200 μs 内稳定。 [3] 第 7 页的图 2 显示了加电时复位条件以及运行期间应用的复位。 加电时复位是指在对电路加电时触发的时间复位。加电后复位表 示在 FX2LP 已加电运行并且 RESET# 引脚被触发。 赛普拉斯将提供有关加电时复位实现介绍和建议的应用手册。 有关 FX2 系列产品的复位实现的详细信息,请访问 http://www.cypress.com。 表 4. 独立 FIFO/GPIF 中断源 优先级 INT4VEC 值 源 注 1 80 EP2PF 端点 2 可编程标志 2 84 EP4PF 端点 4 可编程标志 3 88 EP6PF 端点 6 可编程标志 4 8C EP8PF 端点 8 可编程标志 5 90 EP2EF 端点 2 空标志 6 94 EP4EF 端点 4 空标志 7 98 EP6EF 端点 6 空标志 8 9C EP8EF 端点 8 空标志 9 A0 EP2FF 端点 2 满标志 10 A4 EP4FF 端点 4 满标志 11 A8 EP6FF 端点 6 满标志 12 AC EP8FF 端点 8 满标志 13 B0 GPIFDONE GPIF 运行完成 14 B4 GPIFWF GPIF 波形 注 3. 如果外部时钟和 CY7C680xxA 同时加电,而且需要等待一段时间才能稳定,则它必须增加到 200 μs。 [+] Feedback Administrator 附注 中断向量值 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 7 页,共 61 页 3.9.2 唤醒引脚 通过设置 PCON.0 = 1,8051 将自身和芯片的其余部分置入断电 模式。这会停止振荡器和 PLL。当外部逻辑触发 WAKEUP 时, 振荡器会在 PLL 稳定后重新启动,并且 8051 会收到唤醒中断。 无论 FX2LP 是否与 USB 连接,都会发生这种情况。 FX2LP 使用下列方法之一退出断电(USB 挂起)状态: USB 总线活动(如果 D+/D– 线保持浮空,则这些线上的杂讯 可能向 FX2LP 表明活动并启动唤醒) 外部逻辑触发 WAKEUP 引脚 外部逻辑触发 PA3/WU2 引脚 第二个唤醒引脚 WU2 也可以配置为通用 IO 引脚。这可以将一个 简单的外部 R-C 网络用作定时唤醒源。在默认情况下,WAKEUP 为低电平有效。 3.10 程序/数据 RAM 3.10.1 大小 FX2LP 具有 16 KB 的内部程序/数据 RAM,其中 PSEN#/RD# 信 号被内部 OR 操作,从而使 8051 能够将其兼用作程序存储器和 数据存储器进行访问。在此空间中没有任何 USB 控制寄存器。 以下图表为两种存储器分配图: 第 8 页的图 3 显示内部程序存储器, EA = 0。 第 9 页的图 4 显示外部程序存储器, EA = 1。 3.10.2 内部程序存储器, EA = 0 该模式将内部 16 KB RAM 存储块(从 0 开始)用作组合的程序 和数据存储器。当添加外部 RAM 或 ROM 时,会抑制外部读写 选通脉冲,以获得芯片内的存储器空间。这可让用户连接 64 KB 的存储器,而无需执行地址解码来保持内部存储器空间可用。 只有内部 16 KB 和便笺式 0.5 KB RAM 空间具有以下访问权限: USB 下载 USB 上载 Setup 数据指针 I2C 接口引导下载。 3.10.3 外部程序存储器, EA = 1 程序存储器末端的 16 KB 是外部的,因此内部 RAM 末端的 16 KB 只能用作数据存储器。 图 2. 复位时序图 VIL 0V 3.3V 3.0V TRESET VCC RESET# 加电时复位 TRESET VCC RESET# VIL 加电后复位 3.3V 0V 表 5. 复位时序值 条件 TRESET 使用晶体的加电时复位 5 ms 使用外部时钟的加电时复位 200 μs + 时钟稳定时间 加电后复位 200 μs [+] Feedback Administrator 高亮 Administrator 高亮 Administrator 高亮 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 8 页,共 61 页 图 3. 内部程序存储器, EA = 0 FX2LP 内部 FX2LP 外部 7.5 KB USB 寄存器和 4K FIFO 缓冲区 (RD#,WR#) 0.5 KB RAM 数据 (RD#,WR#)* (OK 以将数据 存储器填充在此 处 — RD#/WR# 选通脉冲未处于 有效) 40 KB 外部 数据 存储器 (RD#,WR#) (Ok 以将数据 存储器填充在此 处 — RD#/WR# 选通脉冲未处于 有效) 16 KB RAM 程序和数据 (PSEN#,RD#,WR#)* 48 KB 外部 程序 存储器 (PSEN#) (OK 以将程序 存储器填充在此 处 — PSEN# 选通脉冲未处于 活动状态) *SUDPTR、USB 上载 /下载、I2C 接口引导访问 FFFF E200 E1FF E000 3FFF 0000 数据 程序 [+] Feedback CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 9 页,共 61 页 图 4. 外部程序存储器, EA = 1 3.11 寄存器地址 FX2LP 内部 FX2LP 外部 7.5 KB USB 寄存器和 4K FIFO 缓冲区 (RD#,WR#) 0.5 KB RAM 数据 (RD#,WR#)* (OK 以将数据 存储器填充在此 处 — RD#/WR# 选通脉冲未处于 活动状态) 40 KB 外部 数据 存储器 (RD#,WR#) (Ok 以将数据 存储器填充在此 处 — RD#/WR# 选通脉冲未处于 活动状态) 16 KB RAM 数据 (RD#,WR#)* 64 KB 外部 程序 存储器 (PSEN#) *SUDPTR、USB 上载 /下载、I2C 接口引导访问 FFFF E200 E1FF E000 3FFF 0000 数据 程序 FFFF E800 E7BF E740 E73F E700 E6FF E500 E4FF E480 E47F E400 E200 E1FF E000 E3FF EFFF 2 KB 保留 64 字节 EP0 IN/OUT 64 字节保留 8051 可寻址寄存器 保留 (128) 128 字节 GPIF 波形 512 字节 8051 xdata RAM F000 (512) 保留 (512) E780 64 字节 EP1OUT E77F 64 字节 EP1INE7FFE7C0 4 KB EP2-EP8 缓冲区 (8 x 512) [+] Feedback CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 10 页,共 61 页 3.12 端点 RAM 3.12.1 大小 3 Þ 64 字节 (端点 0 和 1) 8 Þ 512 字节 (端点 2、 4、 6 和 8) 3.12.2 组织 EP0 双向端点 0, 64 字节缓冲区 EP1IN, EP1OUT 64 字节缓冲区,批量或中断 EP2、 4、 6、 8 8 个 512 字节缓冲区,批量、中断或同步。EP4 和 EP8 可以是 双缓冲; EP2 和 EP6 可以是双缓冲、三缓冲或四缓冲。有关 高速端点配置选项,请参见图 5。 3.12.3 Setup 数据缓冲区 位于 0xE6B8-0xE6BF 的独立的 8 字节缓冲区保存来自 CONTROL 传输的 setup 数据。 3.12.4 端点配置(高速模式) 端点 0 和 1 对于每个配置都是相同的。端点 0 是唯一的 CONTROL 端点,端点 1 可以是 BULK 或 INTERRUPT。 端点缓冲区可以按以下垂直列中显示的 12 种配置中的任何一种 进行配置。在全速 BULK 模式下运行时,仅会使用每个缓冲区的 前 64 个字节。例如,在高速模式下,最大数据包大小为 512 字 节,而在全速模式下,该大小为 64 字节。即使缓冲区配置为 512 字节,在全速模式下,仍然仅会使用前 64 个字节。未使用的端 点缓冲区空间不可用于其他操作。端点配置示例包括 EP2–1024 双缓冲; EP6–512 四缓冲(第 8 列)。 图 5. 端点配置 64 64 64 512 512 1024 1024 1024 1024 1024 1024 1024 512 512 512 512 512 512 512 512 512 512 EP2 EP2 EP2 EP6 EP6 EP8 EP8 EP0 IN 和 OUT EP1 IN EP1 OUT 1024 1024 EP6 1024 512 512 EP8 512 512 EP6 512 512 512 512 EP2 512 512 EP4 512 512 EP2 512 512 EP4 512 512 EP2 512 512 EP4 512 512 EP2 512 512 512 512 EP2 512 512 512 512 EP2 512 512 1024 EP2 1024 1024 EP2 1024 1024 EP2 1024 512 512 EP6 1024 1024 EP6 512 512 EP8 512 512 EP6 512 512 512 512 EP6 1024 1024 EP6 512 512 EP8 512 512 EP6 512 512 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 64 1 2 3 4 5 6 7 8 9 10 11 12 [+] Feedback Administrator 高亮 Administrator 高亮 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 11 页,共 61 页 3.12.5 默认的全速备选设置 3.12.6 默认的高速备选设置 3.13 外部 FIFO 接口 3.13.1 体系架构 FX2LP Slave FIFO 体系架构中,在端点 RAM 中有 8 个 512 字 节存储块,它们直接充当 FIFO 存储器,并由 FIFO 控制信号(如 IFCLK、SLCS#、SLRD、SLWR、SLOE、PKTEND 和标志)所 控制。 在运行中,SIE 会填充或清空这 8 个 RAM 存储块中一部分,其余 部分则与 IO 传输逻辑连接。传输逻辑采取了两种形式,GPIF 用 于内部生成的控制信号, Slave FIFO 接口用于外部控制的传输。 3.13.2 主/从控制信号 FX2LP 端点 FIFOS 是作为 8 个物理上完全不同的 256x16 RAM 存储块而实现的。 8051/SIE 可以在两个域(USB (SIE) 域和 8051-IO Unit 域)之间对这些 RAM 存储块进行任意切换。这种 切换实际上是瞬时完成的,“USB FIFOS” 和 “Slave FIFOS” 之间 的传输时间基本上等于零。由于它们在物理上是同一个存储器, 所以实际上没有字节在缓冲区之间传输。 在任意给定时刻,某些 RAM 存储块会在 SIE 控制下填充/清空 USB 数据,而其他 RAM 存储块可用于 8051、 IO 控制单元或二 者。RAM 存储块在 USB 域中作为单端口运行,而在 8051-IO 域 中则作为双端口运行。这些存储块可以像前面所说的那样,配置 为单、双、三或四缓冲。 IO 控制单元实现内部主控端(M 表示主控端)或外部主控端 (S 表示从属端)接口。 在主控 (M) 模式下, GPIF 在内部控制 FIFOADR[1..0] 以选择 FIFO。RDY 引脚(56 引脚封装中有两个,100 引脚和 128 引脚 封装中有六个)可以根据需要用作外部 FIFO 或其他逻辑的标志 输入端。 GPIF 可以根据内部派生的时钟或外部提供的时钟 (IFCLK) 运行,传输速率可达 96 MB/s(48-MHz IFCLK,16 位 接口)。 在从属 (S) 模式下,FX2LP 接受内部派生的时钟或外部提供的时 钟(IFCLK,最大频率 48 MHz),以及外部逻辑发来的 SLCS#、 SLRD、SLWR、SLOE、PKTEND 信号。当使用外部 IFCLK 时, 外部时钟必须在通过 IFCLKSRC 位切换到外部时钟前已产生。 每个端点都可以单独被内部配置位选择用于字节或字运行, Slave FIFO 输出使能信号 SLOE 会使能选定宽度的数据。外部 逻辑必须确保在向 Slave FIFO 写入数据时输出使能信号处于非 活动状态。从属接口还可以以异步方式运行,这时 SLRD 和 SLWR 信号直接充当选通脉冲,而不是像同步模式下那样作为时 钟限定符。信号 SLRD、 SLWR、 SLOE 和 PKTEND 由信号 SLCS# 选择传送。 表 6. 默认的全速备选设置 [4, 5] 备选设置 0 1 2 3 ep0 64 64 64 64 ep1out 0 64 bulk 64 int 64 int ep1in 0 64 bulk 64 int 64 int ep2 0 64 bulk out (2) 64 int out (2) 64 iso out (2) ep4 0 64 bulk out (2) 64 bulk out (2) 64 bulk out (2) ep6 0 64 bulk in (2) 64 int in (2) 64 iso in (2) ep8 0 64 bulk in (2) 64 bulk in (2) 64 bulk in (2) 注 4. “0”表示“未实施”。 5. “2”表示“双缓冲”。 6. 即使这些缓冲区是 64 字节,它们也会被报告为 512,以便与 USB 2.0 兼容。用户永远不得向 EP1 传输大于 64 字节的数据包。 表 7. 默认的高速备选设置 [4, 5] 备选设置 0 1 2 3 ep0 64 64 64 64 ep1out 0 512 bulk[6] 64 int 64 int ep1in 0 512 bulk[6] 64 int 64 int ep2 0 512 bulk out (2) 512 int out (2) 512 iso out (2) ep4 0 512 bulk out (2) 512 bulk out (2) 512 bulk out (2) ep6 0 512 bulk in (2) 512 int in (2) 512 iso in (2) ep8 0 512 bulk in (2) 512 bulk in (2) 512 bulk in (2) [+] Feedback Administrator 高亮 Administrator 高亮 Administrator 高亮 Administrator 高亮 Administrator 高亮 Administrator 下划线 Administrator 附注 “Administrator”设置的“Marked” CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 12 页,共 61 页 3.13.3 GPIF 和 FIFO 时钟速率 8051 寄存器位选择内部提供的接口时钟的两个频率中的一个: 30 MHz 和 48 MHz。或者,为 IFCLK 引脚提供输入的 5 MHz–48 MHz 外部提供时钟也可以用作接口时钟。在 GPIF 和 FIFO 由内部 提供时钟时, IFCLK 可配置为输出时钟。 IFCONFIG 寄存器中的 输出使能位会在需要时关闭该时钟输出。无论 IFCLK 信号是来源 于内部还是外部,IFCONFIG 寄存器中的另一个位都会将其反相。 3.14 GPIF GPIF 是一个灵活的 8 位或 16 位并行接口,由用户可编程的有限 状态机驱动。它能让 CY7C68013A/15A 执行本地总线主控,而 且可以实现众多协议,如 ATA 接口、打印机并行端口和 Utopia。 GPIF 有六个可编程 Control 输出 (CTL)、九个 Address 输出 (GPIFADRx) 和六个通用 Ready 输入 (RDY)。数据总线宽度可以 是 8 或 16 位。每个 GPIF 向量均定义 Control 输出的状态,并确 定 Ready 输入(或多个输入)必须处于什么状态才能继续。可 以对 GPIF 向量进行编程,从而将 FIFO 前移至下一个数据值、 前移一个地址,等等。一系列 GPIF 向量组成一个波形,执行这 个波形便可以在 FX2LP 与外部设备之间进行所需的数据移动。 3.14.1 六个 Control 输出信号 100 引脚和 128 引脚封装带有全部六个 Control 输出引脚 (CTL0-CTL5)。 8051 可对 GPIF 单元进行编程,以定义 CTL 波 形。 56 引脚封装只包含 CTL0-CTL2。可以对 CTLx 波形边缘进 行编程,使起变换速度达到每时钟周期一次(使用 48-MHz 时钟 时为 20.8 ns)。 3.14.2 六个 Ready 输入信号 100 引脚和 128 引脚封装可产生全部六个 Ready 输入 (RDY0- RDY5)。8051 可对 GPIF单元进行编程,以测试 RDY 引脚的 GPIF 分支。 56 引脚封装可产生这些信号中的两个,即 RDY0-RDY1。 3.14.3 九个 GPIF Address 输出信号 在 100 引脚和 128 引脚封装中有九个 GPIF 地址线可供使用,即 GPIFADR[8..0]。GPIF 地址线支持最大访问 512 字节的 RAM 存 储块。如果需要更多地址线,则可使用 IO 端口引脚。 3.14.4 长传输模式 在主控模式下, 8051 相应地设置 GPIF 事务处理计数寄存器 (GPIFTCB3、GPIFTCB2、GPIFTCB1 或 GPIFTCB0),以便 自动传输多达 232 个事务处理。GPIF 会自动对数据流进行节流, 以防止不足或溢出,直到所有被请求事务处理完成为止。 GPIF 通过递减这些寄存器中的值,以显示事务处理的当前状态。 3.15 ECC 生成 [7] EZ-USB 可对经过其 GPIF 或 Slave FIFO 接口的数据计算 ECC (Error Correcting Code,错误纠正代码)。FX2LP 有两种 ECC 配置:两个 ECC,每个都计算 256 以上的字节(SmartMedia 标 准);一个 ECC,计算 512 以上的字节。 ECC 可以纠正任何一位错误或检测任何两位错误。 3.15.1 ECC 实现 这两种 ECC 配置由 ECCM 位选择: ECCM = 0 两个 3 字节 ECC,每个计算 256 字节以上的数据块。该配置符 合 SmartMedia 标准。 向 ECCRESET 写入任意值,然后经 GPIF 或 Slave FIFO 接口传 输数据。第一个 256 字节数据的 ECC 经过计算后存储在 ECC1 中。下一个 256 字节的 ECC 存储在 ECC2 中。在计算第二个 ECC 后,ECCx 寄存器中的值只有在重新写入 ECCRESET 后才 会更新,即使还有后续数据传过该接口也是如此。 ECCM = 1 一个 3 字节 ECC,计算 512 字节以上的数据块。 向 ECCRESET 写入任意值,然后经 GPIF 或 Slave FIFO 接口传 输数据。前 512 字节的数据的 ECC 经过计算后存储在 ECC1 中; ECC2 未使用。在计算 ECC 后, ECC1 中的值只有在重新写入 ECCRESET后才会更新,即使后面还有数据传过该接口也是如此。 3.16 USB 上载和下载 通过厂商特定的指令,内核能够直接编辑内部 16 KB RAM 和内 部 512 字节便笺式 RAM 的数据内容。这种功能通常在软件下载 用户代码时使用,并且只能是上载或下载到内部 RAM 并且让 8051 处于复位状态下时才可用。可用的 RAM 空间为 16 KB (0x0000–0x3FFF,程序 /数据)和 512 字节(0xE000–0xE1FF, 便笺式数据 RAM)。 [8] 3.17 自动指针访问 FX2LP 提供两个完全相同的自动指针。它们与内部 8051 数据指 针类似,但具有更多功能:它们可以在每次存储器访问后选择性的 递增。这种功能可用于进出内部和外部 RAM。自动指针可以在模 式位 (AUTOPTRSET-UP.0)控制下的外部 FX2LP 寄存器中找到。 通过使用外部 FX2LP 自动指针进行访问(0xE67B–0xE67C), 可以让自动指针访问所有内部和外部 RAM。 此外,自动指针还可以指向任何 FX2LP 寄存器或端点缓冲区空 间。当使能自动指针对外部存储器的访问权限时,XDATA 和代码 空间中的位置 0xE67B 与 0xE67C 是无法使用的。 注 7. 为使用 ECC 逻辑, GPIF 或 Slave FIFO 接口必须配置为适合于字节范围内的操作。 8. 从主机下载数据后,“加载器”可以从内部 RAM 执行,以便将下载的数据传输到外部存储器中。 [+] Feedback Administrator 高亮 Administrator 高亮 Administrator 高亮 Administrator 高亮 Administrator 高亮 CY7C68013A, CY7C68014A CY7C68015A, CY7C68016A 文件编号:001-50431 修订版 ** 第 13 页,共 61 页 3.18 I2C 控制器 FX2LP 有一个 I2C 端口,该端口由两个内部控制器驱动,其中一 个在引导时自动运行,以加载 VID/PID/DID 和配置信息,另一个 由 8051 在运行时用于控制外部 I2C 设备。I2C 端口仅在主控模式 下运行。 3.18.1 I2C 端口引脚 I2C 引脚 SCL 和 SDA 必须有 2.2 kΩ 外部上拉电阻,即使没有 EEPROM 连接到 FX2LP 也要如此。外部 EEPROM 设备地址引 脚必须正确配置。请参见表 8,以了解如何配置设备地址引脚。 3.18.2 I2C 接口引导加载访问 在执行加电时复位时, I2C 接口引导加载器会加载 VID/PID/DID 配置字节和多达 16 KB 的程序 /数据。可用 RAM 空间为 16 KB (0x0000–0x3FFF)和 512 字节(0xE000–0xE1FF)。8051 处 于复位状态。 I2C 接口引导加载只有在执行加电时复位之后才会 发生。 3.18.3 I2C 接口的通用访问 8051 可以使用 I2CTL 和 I2DAT 寄存器来控制与 I2C 总线连接的 外设。 FX2LP 仅提供 I2C 主控制,永远不提供 I2C 从属控制。 3.19 与上一代 EZ-USB FX2 兼容 EZ-USB FX2LP 与其前身 EZ-USB FX2 在适用性、外观上兼容, 仅在功能上略有不同。这便于设计人员将系统从 FX2 升级到 FX2LP 的转换。引脚和封装选择是一致的,而且 FX2LP 中的大 多数固件是以前为 FX2 功能开发的。 对于从 FX2 移植到 FX2LP 的设计人员来说,必须更改材料清单 并复查存储器分配(因为增大了内部存储器)。有关从 EZ-USB FX2 移植到 EZ-USB FX2LP 的详细信息,请参见位于赛普拉斯 网站上题为《Migrating from EZ-USB FX2 to EZ-USB FX2LP》 (从 EZ-USB FX2 移植到 EZ-USB FX2LP)的应用手册。 表 8. 将 EEPROM 地址线引导到这些值 字节 示例 EEPROM A2 A1 A0 16 24LC00[9] N/A N/A N/A 128 24LC01 0 0 0 256 24LC02 0 0 0 4K 24LC32 0 0 1 8K 24LC64 0 0 1 16K 24LC128 0 0 1 表 9. 部件编号转换表 EZ-USB FX2 部件编号 EZ-USB FX2LP 部件编号 封装说明 CY7C68013-56PVC CY7C68013A-56PVXC 或 CY7C68014A-56PVXC 56 引脚 SSOP CY7C68013-56PVCT CY7C68013A-56PVXCT 或 CY7C68014A-56PVXCT 56 引脚 SSOP — 带式和卷轴式 CY7C68013-56LFC CY7C68013A-56LFXC 或 CY7C68014A-56LFXC 56 引脚 QFN CY7C68013-100AC CY7C68013A-100AXC 或 CY7C68014A-100AXC 100 引脚

编辑推荐

  • 名称/格式
  • 评分
  • 下载次数
  • 资料大小
  • 上传时间

用户评论

0/200
    暂无评论
上传我的资料

相关资料

资料评价:

/ 61
所需积分:2 立即下载
返回
顶部
举报
资料
关闭

温馨提示

感谢您对爱问共享资料的支持,精彩活动将尽快为您呈现,敬请期待!