![]() |
|
||||||||||||||
| . 网站首页 . 产品新知 . 业界资讯 . 技术文库 . 下载中心 . 服务导航 . 邮购需知 . 技术论坛 . | ||
|
||
|
|||||
| 数字拷贝机的FPGA设计 | |||||
作者:刘 佳 仇… 文章来源:东华大学 点击数: 更新时间:2008-7-27 ![]() |
|||||
|
东华大学 | 刘 佳 仇润鹤 光盘拷贝机通常由一台CD-ROM驱动器、数台CD-R或CD-RW刻录机和一个拷贝控制器组成。拷贝控制器首先从CD-ROM驱动器中读出源盘数据,然后将数据流分多路传输到各个刻录机,控制所有的刻录机同步刻录CD-R光盘。目前市场上的光盘拷贝机主要有联机拷贝机、脱机拷贝机和自动拷贝机三种类型。 (1)联机拷贝机 联机光盘拷贝机由一台通用PC机和一个装有SCSI接口刻录机的塔式机箱组成,塔箱与PC机之间用SCSI电缆相连。联机拷贝机使用PC机作为光盘拷贝机控制器,并利用专门的CD-R拷贝软件将刻录数据通过SCSI母线传输给各个刻录机。由于联机拷贝机采用软件进行数据分配和多路传输,所以数据传输速度较低。为了避免产生缓存器欠载运行(Buffer Underrun)错误,一般将SCSI接口上连接的刻录机数量限制在4台以内。 (2)脱机拷贝机 脱机拷贝机是所有CD-R光盘拷贝机中使用最简单的一种,也是使用最多的一种。脱机拷贝机使用专用的硬件控制器进行源盘读取和多路数据传输。因此数据传输的速度很快,不易产生缓存器欠载运行错误,复制CD-R光盘的成功率高于联机拷贝机。 (3)自动拷贝机 自动拷贝机是在脱机拷贝机的基础上又增加了一套机械手装置,用机械手自动将CD-R空盘放入刻录机。完成拷贝后,机械手将已刻录的CD-R光盘从刻录机中取出,再放入新的CD-R空盘。有些自动拷贝机带有光盘打印机,可直接在CD-R光盘背面打印用户设计的盘标。 本设计应用Xilinx(R) SpartanTM-3 FPGA、CoolRunnerTM II CPLD和微处理器来开发ATA/IDE接口之间用于数据存储的脱机数字拷贝机。 1 数字拷贝机系统硬件部分 1.1 系统组成和工作原理 数字拷贝机系统由FPGA、CPLD、4MB Flash、4MBDRAM、256MB SDRAM、微型处理器和操控按钮、液晶显示屏、IDE/ATA接口等组成。数字拷贝机系统框图如图1所示。其中FPGA和MPU组成控制单元, Flash为BOOT单元,SDRAM和DRAM为存储交换单元,CPLD为加密单元,按钮和显示屏为人机接口单元。
系统通过各模块之间的相互协作,完成数据的高速传输、自动拷贝功能。 (1)系统硬件连接好之后,系统上电(连接5V直流电源); 系统中DRAM的主要作用是扩展CPU内存。例如液晶显示和数据交换等过程中的一些数据和资料需要在这里调用和存放,以加快系统速度。 1.2 系统组成模块分析 整个电路可划分成二个功能模块。 (1)非数据拷贝期的CPU控制模块:用于系统上电后,数据拷贝之前的系统初始化、系统配置检测、菜单显示和操作以及数据拷贝后数据的校验、系统安全退出等。 (2)数据拷贝期的DMA数据传输模块:用于数据拷贝期FPGA中内构的DMAC与CPU的通信、控制数据与内存之间的传输及FPGA与外设IDE/ATA接口之间的数据传输等。
1.2.1 非数据拷贝期的CPU控制模块 非数据拷贝期的CPU控制模块原理如图2所示。 此功能模块中的Flash是一个重要的环节,主要起BOOT UP的作用。4MB的Flash与CPU、FPGA、DRAM和CPLD均有联系,而且Flash中存储了很多与系统有重要关系的数据,相当于BIOS。其中有用于整个系统运行的主程序,有用于数据DMA模式传输的FPGA核(IP),还有一些令系统初始化的程序和自检程序等。当系统上电时,在CPU的控制下启动整个系统,Flash将其中的IP核经过CPLD加密,下载到FPGA中,为拷贝做好准备。同时,键盘的接口连接至CPU,由CPU控制按下按键后的操作;液晶显示器的数据线与CPLD相连, CPLD将要显示的某些信息作为密钥进行加密,防止他人盗用。 1.2.2 数据拷贝期的DMA数据传输模块 在这个模块中,主要由FPGA构成的一个DMA控制器控制IDE/ATA设备与拷贝机内存之间的数据交换。选用的FPGA为SpartanTM-3E 系列器件,它是开创性的低成本Spartan系列的第7类器件,也是采用先进的90nm工艺技术生产的第三类Xilinx器件系列。 Spartan-3E FPGA有高达160万的系统门、376个I/O、1.8MB的块RAM,并且具有业界单位逻辑成本最低的通用平台FPGA架构。FPGA所实现DMAC 控制器的内部逻辑结构如图3所示。
DMA控制器提供地址码以指明I/O设备变换数据的存储器起始地址;提供读/写脉冲,以规定数据在存储器与I/O设备之间的传输方向;修改内存地址指针并计算传送的字节数,以判断何时传送结束。具体信号时序如下: (1)I/O设备向DMAC发出请求信号DRQ; 数据拷贝期的DMA数据传输模块原理如图4所示。
2 数字拷贝机系统软件流程 非数据拷贝期系统主程序流程如图5所示。数据拷贝期FPGA内部DMA控制器的程序流程如图6所示。拷贝机数据输入输出IDE端口的程序流程如图7所示。
检查CDROM是否就绪程序: 系统经过了ISE开发环境的设计、仿真、定时分析,其目的是测试设计的逻辑功能和延时特性,仿真包括功能仿真和时序仿真,ISE6.1中能够提供和完成这些功能。仿真结果符合实际需要。 (1)系统能实现拷贝、测试、对比校对。 本系统符合当前技术的主流,有着广阔的技术前景。 参考文献 1 何 宁,熊剑平,蒋昌龙等.基于FPGA的实时持续数据记录系统设计[J].微电子学与计算机,2003;(1) |
|||||
| 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| 没有相关文章 |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告 | 管理登录 | | |||
|