基于FS7805 APLIF模块的应用设计

时间:2022-10-11 05:14:17

基于FS7805 APLIF模块的应用设计

[摘要] 本文主要介绍了一款内嵌安全加密模块的USB2.0控制芯片FS7805,及其APLIF模块的应用设计,包括硬件连接、UDMA 5 波形设计与分析及其函数流程。

[关键词] FS7805 APLIF UDMA

未来的应用产品功能越来越复杂,透过整合多颗芯片的系统越来越多,随着处理器的效能不断提高,在不同芯片之间的控制传输效能就越显得重要,因此FS7805提供了高速的控制传输接口,高速I2C接口的速度可达3MHz,400KHz,100Khz,高速SPI接口波特率可达15Mbps,甚至透过APLIF来实现客制化的高速传输协议,让FS7805与周边MCU或DSP之间连接时的传输控制更容易且更快速。

FS7805概述

FS7805是由福华先进微电子推出的一款基于安全特性的、业界领先的KSoC(Kernel System-on -Chip)――内嵌安全加密模块的USB2.0可编程周边控制器。此芯片内嵌了运算速度高达60MHz的1T RISC 8051核心,USB2.0高速传输界面,无须透过PC软件运算即可进行实时加密的DES/TDES加密模块,新一代的高速高容量的SD2.0 / MMC4.0读卡界面,可透过软件设定为多种高速传输接口(ATA7 / NAND FLASH / CF)的高速可程序化逻辑界面。FS7805的功能模块如图1所示。FS7805的独特架构以及高扩充性的设计能处理所有基本的USB功能,让主系统微处理器能专注于处理各种应用的功能,确保数据在不同接口之间高速传输效能。此芯片应用领域包含:结合指纹辨识的安全储存,便携式媒体播放装置,DVB-TV,USB dongle,多种接口之间的数据传输转换(SPI to SD,UART to USB)等,为设计者提供了高度的设计灵活性。

FS7805的高速USB传输接口,可完全兼容于USB2.0高速传输的规范,达到480Mbps的传输速率,其内建了可程序化的Endpoint FIFO,可依据传输速率的需求设置为512KB / 1024KB,确保维持高效能的数据传输速度。

APLIF (Advance Programmable Logic Interface) 高效能可程序化逻辑接口,可透过软件来设定APLIF的传输特性,将APLIF模拟成多种不同的硬件接口,例如:CF / ATA7(IDE) / Serial、Parallel、Half / Full Dupley等,设计者不再需为各种不同的接口寻找不同的芯片,不同的开发平台,徙增开发时程,只要透过FS7805即可实现设计者多种不同的应用,在同一开发平台发展不同应用,缩短开发时程。

APLIF 模块

APLIF使用波形描述符来操作FIFO,可以将FIFO读波形和FIFO写波形分配到任何一个FS7805的端点FIFO上。APLIF状态机产生特定的触发和握手信号来和外部接口进行通信。APLIF的数据传输时,可以选择8位总线数据宽度或16位总线数据宽度。

在APLIF模式下,读和写的操作都是从FS7805的角度来说的,一般包括FIFORead、FIFOWrite、SingleRead和SingleWrite这四种操作。FIFORead表示数据从外部设备传输到FS7805内部的FIFO;FIFOWrite表示数据从FS7805内部的FIFO发送到外部设备;SingleRead表示数据从外部设备传输到MCU;SingleWrite表示数据从MCU发送到外部设备。

一、硬件设计

APLIF的主要引脚及功能:

(1) APLIF_CTL[5:0]:输出控制信号,通常用作使能脉冲信号及读/写脉冲信号等;

(2) APLIF_RDY[5:0]:输入Ready信号,可对指定的信号进行连续采样,以确定APLIF动作继续、等待或是反复不断采样,直到信号的指定状态出现;

(3) APLIF_DATA[15:0]:16位数据总线,也可以配置位8位数据总线;

(4) APLIF_ADDR[8:0]:地址总线,在数据传输时具有自动增一功能;

(5) XFIFO_CLK:APLIF接口时钟;

(6) APLIF_STATE[2:0]:当前APLIF状态数,用于调试模式。

APLIF与IDE硬件连接如图2所示:

二、软件设计

APLIF的波形描述符保存在内部RAM中,描述了每个APLIF信号的行为。在FS7805初始化的时候,通过固件程序将这些波形描述符装载到指定的RAM区,然后便可以实现APLIF接口的数据传输。

APLIF波形设计就是对128字节片内RAM编程。128字节被分为4部分,分别被定义为Single Read、Single Write、FIFO Read、FIFO write四种波形。可以根据不同器件的时序定义设计相应的波形以满足要求。下面以UDMA5读操作波形为例进行分析。

如图3所示CTL0是STOP信号,CTL1是HDMARDY信号,CTL2是DMACK信号,RDY0是DSTROBE信号,RDY1是DMARQ信号。UDMA的波形设计如表1所示。

S0,关键点,判断DMARQ信号是否为高,是则跳转到S1状态,否则在S0状态等待。CTL2=1,CTL1=1,CTL0=1;

If(RDY1 && RDY1){ go to S1 ; } Else { go to S0 ; }

S1,非关键点,回送DMACK,延时1个周期。CTL2=0, CTL1=1,CTL0=1;

S2(flowstate:在flowstate内,数据的采样以及CTRL[5:0]输出均由硬件控制,直至跳转条件满足后才跳出),关键点,STOP和HDMARDY置0,判断FIFO FLAG是否为1和DMARQ是否为0,是则跳转至S3,否则一直等待数据传送完毕。CTL2=0,CTL1=0,CTL0=0;

If ( !RDY1 && FIFO FLAG ) { go to S3 ; } Else { go to S2; }

S3,非关键点,HDMARDY置1,延时1个周期。CTL2=0, CTL1=1,CTL0=0;

S4,非关键点,STOP置0延时1个周期。CTL2=0,CTL1=1,CTL0=1;

S5,非关键点,将CRC送上数据总线,延时2个周期。CTL2=0,CTL1=1,CTL0=1;

S6,非关键点,发送CRC,延时1个周期。CTL2=1, CTL1=1,CTL0=1;

S7,空闲状态。

结语

本文介绍的FS7805 APLIF接口在CF卡、NandFlash及移动单(双)硬盘都有很好的应用,在市场上已有相关产品出现。利用APLIF还可以开发多功能产品,只需FS7805就能提供多种接口,就可以在移动硬盘上扩充SD卡的功能,或在CDROM上扩充U盘功能等等。因此可以预见FS7805将具有很好的应用前景。

参考文献:

[1]福华先进微电子,FS7805 Data Sheet.

[2]薛园园.USB应用开发技术大全.北京:人民邮电出版社,2007,8.

(作者单位:江苏苏州大学计算机科学与技术学院)

上一篇:关于互联互通的研究 下一篇:论软件工程及其开发方法