首页 PCI接口DMA传输方式的FPGA实现

PCI接口DMA传输方式的FPGA实现

举报
开通vip

PCI接口DMA传输方式的FPGA实现 CIC中国集成电路China lntegrated Circult设计技术 http://www.cicmag.com2004·11·( 总第 ! 6期) 引言 !"#总线是微型计算机中处理器! 存储器与外 围控制部件!扩展卡之间的互连接口"其独立于处理 器的独特设计和高性能!开放性等优势"使其得到迅 速普及和发展# 目前 !"$总线已成为微型计算机事 实上的总线标准" 并在嵌入式计算机和工控计算机 方面具有广泛的应用前景$同时"随着可编程逻辑器 件 %!&’的快速发展"在 (!&’上实现 !)$接口"来 ...

PCI接口DMA传输方式的FPGA实现
CIC中国集成电路China lntegrated Circult 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 技术 http://www.cicmag.com2004·11·( 总第 ! 6期) 引言 !"#总线是微型计算机中处理器! 存储器与外 围控制部件!扩展卡之间的互连接口"其独立于处理 器的独特设计和高性能!开放性等优势"使其得到迅 速普及和发展# 目前 !"$总线已成为微型计算机事 实上的总线 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 " 并在嵌入式计算机和工控计算机 方面具有广泛的应用前景$同时"随着可编程逻辑器 件 %!&’的快速发展"在 (!&’上实现 !)$接口"来 降低成本和满足某些特殊要求的做法得到了越来越 广泛的关注$ !"$接口的实现 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 有两种%!采用专用的 !"$ 接口芯片" 可以避免复杂的 !"$协议" 缩短开发周 期"降低开发难度$ 但系统结构受接口芯片的限制" 不能灵活地设计目标系统"且成本较高$"使用可编 程逻辑器件 (!&’实现$ 这种方案可以根据整个系 统的实际需要仅选择实现 !"$协议的某些子集"同 时将另外一些重要的功能集成到同一个器件上"这 样就使得所设计的 !"$接口具很强的针对性和灵活 性"与此同时又可以极大地降低这个系统的成本$我 们在设计高速视频压缩系统时" 就采用了第二种方 法" 即采用 (!&’来设计简化的 *+位 !)#接口"同 时集成了 ,-.&,/0123 -14506 .22177’块模式传输 方式"既实现了 !)$总线的高速传输"同时又大量减 少 )!8处理时间"从两方面保证了视频处理的实时 性$ 所设计的高速视频压缩处理系统的框架如图 9 所示$在视频处理过程中"由于算法复杂同时要保证 实时性"需要将算法的一部分由计算机完成"处理后 的数据再送入 !:$卡完成算法的剩余部分$ 为提高 处理速度"实现软硬件两部分的高速并行"需要将中 间数据通过计算机的 !:$接口以 ,-.方式传送给 机外硬件模块$考虑到系统的集成度及灵活性"我们 使用 %!;.自主开发 !:$接口芯片" 符合 !:$协议 +<+$ PCI接口DMA传输方式的FPGA实现 摘要:本文介绍了一种使用FPGA进行32位PCI接口芯片设计的方法,并实现了DMA块模式传输方式, 既发挥了PCI总线的高性能又不占用CPU处理时间,实现计算机软件处理与机外的硬件处理的并行执 行,广泛适用于高速视频处理。 同济大学超大规模集成电路研究所 曲红 林争辉 焦孟草 于超 图1高速视频压缩系统框架 图2 PCI接口芯片框架 !! 中国集成电路 2004·11·http://www.cicmag.com ( 总第 ! 6期) 设计技术China lntegrated CircultCIC 1芯片构成及功能描述 芯片的总体框架如图 !所示! 芯片由 "#$接口模块"%&’控制模块及本地总 线接口模块三部分构成! "($接口模块实现了简化 的 ))&*+工作时钟"),位总线宽度的接口功能#支 持内存空间及配置空间的读写$ 还负责遵循 "($协 议 !-,与 "($总线通信#实现接口芯片的即插即用! %&.控制模块负责接收计算机的 %&.请求# 接管 总线控制权# 以 %&.方式将计算机存储器的数据 以块方式读出并写到连接本地总线的存储器#%&. 结束后发出中断通知计算机# 然后释放对总线的控 制权!%&.控制模块也以同样的原理实现本地总线 到 "($总线的 %&.传输因此# 本文只需对 "($总 线到本地总线的 %&.传输实现方法加以阐述! 本 地总线接口模块负责根据本地总线的协议# 同步 %&.控制模块对其操作#因为它的功能实现随具体 采用的本地总线的不同而变化# 故这里不作详细说 明! 下面从 "($总线信号定义""($接口模块"%&. 控制模块三方面具体介绍! 2 PCI总线信号定义 "($ 的外部设备既可以作为 "($ 总线从设备 /012345#实现基本的传送要求6也可以作为 "($总线 的主设备7&2894:;#访问其他 "($总线设备及系统的 其他资源! 为使此接口芯片可以不通过计算机的 ("<# 直接访问计算机的存储器#%&’传输过程中 将接口芯片设置为 &2894:模式# 计算机为 01234模 式#两者间的接口信号遵从 "($协议 ,-,版!在本设 计中接口芯片是以 %&’方式把数据从计算机的存 储器中读出并写入机外硬件处理模块#因此 01234=> &2894:的主要接口信号如图 )所示# 各信号的含义 如下% %&’?0@’A@ 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 示从设备请求 %&’传输 ABC 表示主设备向仲裁器发出要占用 "($ 总线的请求 DE@ 表示仲裁器允许主设备占用 "($总线 .%FGHIJK 时分复用地址!数据信号#在帧信 号有效的第一个时钟为地址信号 LA’&B 表示帧信号有效# 指明传输的起 始时间和终止时间 (MNBFGIJK 命令!字节使能信号#在帧信号有 效的第一个时钟为命令信号 (&% $A%O 表示主设备已准备好接受数据 %BP0BQ 设备选择信号# 表示读地址在该 从设备的地址范围内 @A%O 表示从设备正把有效数据放在数据总 线上 0@R" 从设备停止请求信号 图3 PCI接口信号 图4 PCI总线上DMA传输的时序 !" CIC中国集成电路China lntegrated Circult设计技术 http://www.cicmag.com2004·11·( 总第 ! 6期) !"#$%& 表示主设备完成 ’(& 传输!请 求中断 注:除AD[31:0]和C/BE[3:0]信号外,其余信 号均为低电平有效。 )*!总线上 +(,传输的时序见图 -!信号配合过 程是"(./012 接收到 34.51 发送的 +(,%3#,$# 请 求信号后!发送 $67请求占用 )8!总线!接到 9"# 允许信号后! 发送帧有效信号 :$,(6# 在 :$,(6 有效的第一个时钟! 发送读数据块的地址 ,+;.<<2= 及读命令 *(+! 在随后时钟当 !$+>$+6?36@$ #$+>有效且 3#A)无效时!在字节使能信号 B6的 同步下!接收读数据块 ,+;<.0.=#结束后!发 !"#$%, 中断且释放 )*!总线# 3 PCI接口模块 要实现简化的 CC(DE 工作时钟$CF 位总线宽 度的 )*!主设备接口功能!必须具备配置空间设置$ 地址命令译码和主设备状态机三部分# 配置空间提供了支持 )*! 设备自动配置的机 制!大小为 FGH字节!前 H- 字节是必需的!记录了 )8!设备的基本信息!包括 )8!设备的设备编号$生 产厂商$类型$当前状态$设备的基地址等#当系统上 电时!主机通过配置空间的信息识别出设备# 地址译码是根据 ,+ICJKLM信号线上地址值 ,+ %.<<2&!与设备的基地址作比较!判断当前的总线操 作对象是否为本设备# 命令译码是根据 8NB6ICKLM信 号线上命令信号 8(+的值!索引命令表!译成具体 命令# 在本接口模块中支持的总线命令为配置空间 读写操作和存储器多行读操作# 主设备状态机是对 )8!主设备从一个状态到另 一个状态的转化的条件$时序描述!是接口模块中最 重要的部分! 本接口模块在不违反 )8!协议的前提 下简化了主设备状态机!如图 G所示# 各状态含义为"!<41是 (./012等待状态!.<<2表 示 (./012开始发送地址!<.0.是表示 (./012开始接 收数据!0O2P表示完成数据块接收#转化条件中的表 达式为各信号电平值!含义参照 )8!总线信号定义# 4 DMA控制模块 +(,控制模块包含数据传输路径和地址传输 路径!数据传输路径负责数据流的传递!地址传输路 径负责初始化和更新源地址和目的地址! 以及产生 +(,中断!结束 +(,传输过程# 4.1数据传输路径 +(,数据传送有单字节传送和块传送两种模 式#为简化设计从实际需求出发!在本设计中实现了 块模式的 +(,传输# 块模式的 +(,传输!需要三 个参数寄存器!分别为源地址寄存器$目的地址寄存 器$字节数寄存器#分别指定待传输的数据块在存储 器中的读出首地址和写入的首地址及传输数据块的 大小即字节数#+(,控制模块的数据传输路径如图 H所示!+(,控制模块负责将源地址的 "个字节数 的数据块读出放入 :!:A缓冲器! 同时将数据块从 :!:A中输出写到本地总线的目的地址# 图5简化的主设备状态机 图6 DMA控制模块的数据传输路径 !" 中国集成电路 2004·11·http://www.cicmag.com ( 总第 ! 6期) 设计技术China lntegrated CircultCIC 4.2地址传输路径 在块模式传输之前!计算机要通过驱动程序初始 化源地址寄存器"目的地址寄存器"字节数寄存器! 即配置 !"#参数# 在传输过程中!模块首先把字节 数寄存器值赋给实时读写字节数寄存器! 然后模块 每次从计算机存储器向 $%$&中读入一个字节!相 应的就把源地址加 ’! 读字节数减 ’! 模块每次从 $%$&中输出一个字节写到本地总线的存储器!就相 应的把目的地址加 ’!写字节数减 ’!模块以更新后 的源地址继续对计算机存储器进行读操作! 以更新 后的目的地址对硬件模块存储器进行写操作$ 当读 字节数为零时则中断通知计算机已完成 !"# 传 输!写字节数为零时中断通知本地总线$ 4.3 DMA控制模块的工作过程 首先 !"#控制模块处于等待状态! 检测 !"# 传输请求$ 当计算机要求传输数据时就以 !"# ()#*)中断通知!并设置好源地址寄存器!目的地 址寄存器!字节数寄存器!然后 !"#控制模块接受 请求!发出总线控制的申请$当获取 +,%总线和本地 总线双方的控制权后!开始传输数据%一方面它输出 源地址给计算机!读出计算机存储器的 -个字节的 数据块!装载到 $%$&中&另一方面!输出目的地址 给机外硬件模块! 把 -个字节的数据块从 $%$&中 卸载!写到本地总线$传输结束!!"#控制模块中断 通知计算机!同时释放双方总线控制权$ .硬件仿真与测试 本 +,%接口设计采用硬件描述语言 /012345 编 写代码! 在 623278的 (9:1;:7%%6,<(=>>? 器件上实 现! 该器件共有 @A’=个 B452C,033! 实际占用 ’.@> 个!占有率为 <>>操作系统下运行!数 据传输速率可以达到 K>"L9G!满足了高速视频处理 要求$ 结束语 本文介绍了在 $+M#上实现 +,%接口 !"#传 输方式的设计方法! 可以发现使用 $+M#实现是一 种灵活"实用的方法!既可以简化 +,% 接口模块功能! 又可以集成 !"# 功 能! 从而实现了 +,%接口的高速数据 传输! 解决了视频处理系统中软硬模 块间数据交换的瓶颈问题! 适用于视 频处理"数据采集和处理等领域$ 参考文献 【 1】PCI Local Bus Specification. Revision 2.2,1998 【 2】李贵山,陈金鹏.PCI局部总线及其应用.西安: 西安电子科技大学出版社,2003 【 3】张亮.数字电路设计与 Verilog HDL.北京:人 民邮电出版社,2000 【 4】周明德.微型计算机原理及应用.北京:清华大 学出版社,1997 【 5】The programmable Logic Products Data Book.Xilinx Company,2001 作者简介 曲红,硕士研究生,主要研究方向IC设计,视音频处理 林争辉,教授、博士生导师 焦孟草,老师 于超,硕士研究生 图7 DMA控制模块的地址传输路径 !"
本文档为【PCI接口DMA传输方式的FPGA实现】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_767171
暂无简介~
格式:pdf
大小:228KB
软件:PDF阅读器
页数:4
分类:互联网
上传时间:2012-01-17
浏览量:22