1第二版USBCPLD开发板使用手册一、开发板简介简介:板载大容量ALTERAMAXII系列CPLD芯片EPM1270,和USB2.0高速CY7C68013A芯片和ISSI61V25616SRAM存储器,构成完美的逻辑和数据传输系统。CPLD的所以管脚全部引出,而且在板子丝印层上全部标出管脚的编号,方便实际使用。68013芯片外部扩展了大容量的24LC64EEPROM存储芯片,足够CY7C68013A用于存储程序。CPLD的管脚大部分都已经扩展出去,排针上扩展了80个IO口,足够与外部其他板卡连接。第二版在设计上比第一版更加完善。板上主要芯片:USB芯片:CY7C68013A-56PVXCALTERAMAXIICPLD:EPM1270T144C5NEEPROM芯片:24LC64CPLD外扩SRAM存储器:ISSI61V25616-103.3V电源LDO:ASM1117-3.3有源时钟:48MHZ全钽电容电源滤波本电路板适合人群:1.学习USB2.0通信技术的开发者2.学习CPLD学习开发者3.高速数据采集开发应用者4.8051单片机学习者2二、CY7C68013与EPM1270连接管脚定义表EPM1270T144管脚编号CY7C68013A管脚名称37SLWR38SLRD39PD7/FD1540PD6/FD1441PD5/FD1342PD4/FD1243PD3/FD1144PD2/FD1045PD1/FD948PD0/FD849PA7/SLCS#50PA6/PKTEND51PA5/FIFOADR152PA4/FIFOADR053PA3/*WU255PA2/*SLOE57PA1/INT1#58PA0/INT0#59CTL2/*FLAGC60CTL1/*FLAGB61CTL0/*FLAGA62PB7/FD763PB6/FD666PB5/FD567PB4/FD468PB3/FD369PB2/FD270PB1/FD171PB0/FD072IFCLKISSI61LV25616管脚分配ISSI61LV25616EPM12701/A0962/A1953/A2944/A3935/A49136/CE#897/IO0888/IO1879/IO28610/IO38511/VCCVCC12/GNDGND13/IO48414/IO58115/IO68016/IO77917/WE#7818/A57719/A67620/A77521/A87422/A97323/A1011824/A1111725/A1211426/A1311327/A1411228/NC11129/IO811030/IO910931/IO1010832/IO1110733/VCCVCC34/GNDGND35/IO129736/IO139837/IO1410138/IO1510239/LB#GND40/UB#GND41/OE#10342/A1510443/A1610544/A17106三、其它管脚定义说明1.板卡背面有源晶振连接CPLDPIN20时钟输入管脚。42.两个LED灯连接CPLDPIN27,PIN28管脚,在板子的丝印层已经标出。3.EEPROM相关R8是给EEPROM的A0脚上拉,R9是给A0脚下拉,我们板子上使用24LC64芯片,所以焊接R8,针对24LC00,24LC02,24LC04芯片,请去掉R8电阻,将R9短路。P4的4个针脚是IIC总线的信号线,我们将3,4短路,则EEPROM连接至IIC总线上,如果断开,则跟总线断开。1,2脚分别是IIC总线的SCL,SDA信号。使用的时候,如果你将板卡的EEPROM里面烧写了数据,不能被EZUSBCONTROLPANNEL识别,那么请将3,4断开,安装EEPROM恢复步骤来擦除24LC64里面的内容。4.按键板子上有3个按键,S1是68013的复位按键。S2,S3连接到EPM1270芯片上。S2,S3分别对应PIN32,PIN31管脚。5.CPLD下载接口5接口为标准的JTAG口,管脚定义如下:6.外部电源输入和5V电源指示灯D5是5V电源指示灯,当USB线插入或者外部5V电源输入,D5都会亮。5.CPLD的其它管脚在板子的丝印层已经标出,请查看板卡。排针上扩展了80个IO口。6四、开发入门1.CY7C68013A开发入门7请参照《CY7C68013A开发入门资料》文件夹的文档来学习CY7C68013A芯片。2.CPLD开发入门A.LED灯控制板子带两个LED灯,由CPLD控制。控制LED具体代码如下:modulecountpro(sys_clk,led);inputsys_clk;output[2:0]led;reg[23:0]count;reg[1:0]led;always@(posedgesys_clk)begincount=count+1;if(count==24'b1111_1111_1111_1111_1111_1110)beginled={~led[0],led[1]};endelseled=led;endendmoduleB.按键读取3.USB与CPLD通信A.8通道逻辑分析仪使用方法一、操作步骤:1.烧写68013固件代码文件LA.iic文件到EEPROM里2.下载CPLD固件到EPM1270芯片上3.安装上位机软件LogicSetup.exe4.打开上位机软件LOGIC,如何使用请看LogicUsersGuide.pdf文档。5.接上开发板,提示安装驱动,自动安装驱动6.进行逻辑分析仪测试二、信号管脚说明8路外部逻辑信号从P5插座输入:外部扩展管脚68013管脚14425/PB014326/PB114227/PB214128/PB314029/PB413930/PB513831/PB613732/PB78外部信号从P5排针输入。从而实现8通道逻辑分析仪功能。三、测试结果B.BULKIN数据传输安装软件包第一次使用时,首先要安装CYPRESS开发包,安装完毕后,在目录“windows\system32\drivers”中有一个文件ezusb.sys,用驱动程序目录下的ezusb.sys将其代替,两个驱动程序文件的区别是,后者将缓冲区的大小扩展为6M字节,详见驱动代码。9图4.1插上开发板后,系统默认采用USB接口供电,PC上安装好下载线,并将下载线与开发板CPLD的JTAG下载口连接好,下载采用JTAG方式,将CPLD程序下载到芯片中,打开ALTERA的编译软件Quartus8.0,将“\开发板测试程序\FPGA读写FIFO传输程序\写FIFO”下的wr_fifo.qpf项目文件打开,界面见图4.2,点击“changefile”,在弹出界面中选择下载文件,将wr_fifo.pof下载到cpld中。10图4.2接着打开CYPRESSEZUSB控制面板,见图4.3,将“\开发板测试程序\FPGA读写FIFO传输程序\固件源代码/fw”目录下的固件程序slavefifo.hex,通过USB接口下载到FX2中,下载成功后,提示slavefifo设备安装成功。图4.3下载完CPLD程序与固件程序后,就可以通过应用程序进行USB传输测试,同步写FIFO测试中,FPGA程序内部生成一个16位递增计数器,写入FX2FIFO中,并通过FX2发送给PC,如果FX2内部FIFO满,则计数器停止计数,非满则计数并写入FX2的FIFO中。应用程序位于“\开发板测试程序\FPGA读写FIFO传输程序\写FIFO\写FIFO\Apptest/Release”目录下.,打开应用程序界面如图4.4,打开应用程序后,首先在下面文本显示框中,出现“打开设备成功”的提示,接下来点击界面上启动读线程,在文本框中开始显示测试结果(包括测试速度,传输字节与花费时间),并在上面显示通过的包数与出现的错误情况。点击“读测试”可以在当前目录下保存读到到的测试数据,并且可以在Ultraedit编辑软件下打开.bin数据文件,查看16位计数器计数数据是否完整,从而测试数据传输中是否有数据丢失,如图4.5。11图4.412图4.5根据主机主板不同,测试速度也不一样,一般数据传输可以在40MB/S左右。注意:1、USB测试在USB2.0主板上进行。2、如果主机USB口通过PCI卡扩展出来的,将影响测试速度。C.USB读写SRAM程序测试基本原理:同步读写FIFO测试中,将60K数据写入RAM(PC-USB2.0-FPGA-RAM),再将数据读回(PC-USB2.0-FPGA-RAM),进行数据比较,测试数据传输可靠性,显示测试速度。将“\开发板测试程序\FPGA读写FIFO传输程序/读写FIFO/rd_wr_fifo”目录下,FPGA文件rd_wr_fifo.pof下载到CPLD中,相应操作与以上读FIFO模式基本相同,然后通过CYPRESSEZUSB控制面板,将“开发板测试程序\FPGA读写FIFO传输程序\固件源代码/固件源代码/fw”目录下,固件程序slavefifo.hex下载到FX2中。打开光盘“\开发板测试程序\FPGA读写FIFO传输程序\读写FIFO\读写FIFO\Apptest/Release”目录下的应用程序,见图4.7,点击“启动BLK线程”按钮,“通过”中显示读写FIFO时正确次数,否则在“错误”中显示错误次数,下面文本框中显示是单次读写速度。开发板上的信号定义详见原理图13