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控制模块的地址传输路径
!"