版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、收稿日期:2005207222;修返日期:2005210231基金项目:国家“863”计划资助项目(2002AA1Z1490;国家教育部博士点基金资助项目(20040486049基于A MBA 总线的DMA 控制器I P 核设计与分析3谢琅,杨艳(武汉大学电子信息学院,湖北武汉430079摘要:介绍了一种设计基于AMBA 总线的DMA 控制器I P 核的方法。用硬件描述语言(VHDL 来设计实现挂接在AMBA AHB 总线上的DMA 控制器,并通过可编程逻辑器件(FPG A 完成对设计的验证,最终形成可复用的I P 软核,用到ASI C 或FPG A 中。关键词:DMA 控制器;AMBA 总线
2、;I P;VHDL中图法分类号:TP336文献标识码:A 文章编号:100123695(20061220213202Design and Analysis of DMA Contr oller I P Core on AMBA BusX I E Lang,Y ANG Yan(College of Electronic Infor m ation,W uhan U niversity,W uhan Hubei 430079,China Abstract:I ntr oduce a design of D MA contr oller I P core based on AMBA bus .The
3、 contr oller I P core was i m p le mented in VHDLand then the whole design was targeted t o a FPG A device,for verificati on .This I P core can be reused in ASI C or FPG A.Key words:DMA Contr oller;AMBA Bus;I P;VHDLI P 核就是具有知识产权的模块,随着片上系统和系统级设计的出现,I P 核的设计及其复用成为集成电路设计的关键手段。在大容量FPG A 设计乃至S OPC 设计中采用I
4、 P 模块是十分必要的,这样可以缩短设计周期和上市时间,降低风险,减少投入,提高系统的性能和可靠性。在一个由嵌入式微处理器为主控的应用系统中,当有大量的数据传输时,尽管中断驱动I/O 比简单的编程控制I/O 有效,但仍需处理器及时干预才能在存储器与I/O 模块之间进行数据传送。任何I/O 设备与存储器的数据传送都必须通过处理器,因此大大降低了处理器的效率。这两种形式的I/O 存在以下两种缺点:I/O 传送数据速度受处理器处理能力和I/O 设备本身提供服务的速度限制;处理器负责管理I/O 数据传送,对于每一次I/O 数据传送,处理器必须执行一些指令,浪费了处理器的时间。为了避免这两种I/O 数据
5、传送方式的缺点,可以使用直接存储器存取(DMA 技术。DMA 是一种快速传送数据的机制,由DMA 控制器实现。DMA 控制器与系统中的很多部件打交道,包括微处理器核、数据总线、存储器、外部接口等。本文首先使用硬件描述语言(VHDL 来实现DMA 控制器的功能,并利用E DA 工具与可编程芯片(FPG A 进行验证和调试;最终,将设计原码形成I P 软核,以便嵌入到不同系统中重复利用。1AMBA 总线简介AMBA (Advanced M icr op r ocess or Bus A rchitecture 总线架构是由AR M L i m ited 公司提出并用于SoC 设计中。AMBA 规范
6、1内定义了三个不同的总线,即高级高性能总线(AHB 、高级系统总线(AS B 和高级外设总线(AP B 。AMBA 总线架构广泛应用于嵌入式微处理器中,而DMA 控制器需要高性能总线AHB Master/Slave 的编程接口。AHB 总线可支持多个主模块和多个从模块,采用中心多路总线而不是三态驱动的双向总线进行连接。该总线使用单一时钟沿控制所有操作,有利于综合和设计验证。它还支持分时处理。2DMA 控制器工作过程DMA 是外设与主存之间的一种数据传输机制。DMA 方式就是直接存储器存取工作方式2。在DMA 方式下,外设通过DMA 控制器向处理器提出接管总线控制权的总线要求,处理器在当前总线周
7、期结束后,响应DMA 请求,并将总线控制权交给DMA 控制器。在DMA 控制器的管理下,外设与寄存器之间就可以直接进行数据交换。DMA 控制器的结构如图1所示。其工作过程3如下:(1微处理器通过DMA 控制器的Slave 接口向其内部控制寄存器写入配置信息。DMA 控制器内部的控制寄存器分为主控寄存器和通道控制寄存器两种。主控寄存器负责整个DMA 控制器的工作;通道控制寄存器负责控制本通道的工作。写入的配置信息包括DMA 传输的数据块大小、源地址、目的地址等。(2配置信息写入完毕后,DMA 控制器开始传输数据。如果配置信息指示只使用一个Master 接口传输数据,则DMA 控制器通过该Mast
8、er 接口从数据读出方读取数据,经过缓存后,再通过同一个M aster 接口向数据写入方发送数据。(3测试传输是否完成,如果完成则将系统复位;否则将继续进行传输。312第12期谢琅等:基于AMBA 总线的DMA 控制器I P 核设计与分析 3DMA 控制器I P 核设计及分析根据T op 2Down 4的设计方法,对DMA 控制器功能进行整体分析研究,将其划分为包括寄存器模块、总线缓存模块、时序控制模块、地址译码模块、仲裁器模块等的主要功能模块。结构如图1所示。该DMA 控制器I P 核的特性如下:(1基于AMBA AHB 2.0总线结构,支持的数据位宽从32bits 1024bits;(2使
9、用以F I F O 形式组织的内部寄存器来实现双向数据传输;(3既支持单个数据传输,又支持块数据传输;(4支持四种可能的传输,包括外围设备到存储器,存储器到外围设备,外围设备到外围设备和存储器到存储器。311寄存器模块寄存器模块包括32bits 的缓冲寄存器和32bits 的计数器。缓冲寄存器主要用来暂存数据,而计数器用来对传输计数,每传送一个字则计数器加1。312总线缓存模块它是双向三态缓冲寄存器,是与系统数据总线的接口。313时序控制模块初始时,总线处于空闲状态,等待DMA 传输请求信号;收到请求信号后,初始化AMBA 总线读周期,从系统存储器中读取一个字,结束读取过程;初始化写入的地址,
10、允许从对方的存储器设备读取写入的字,结束总线写过程;检测DMA 传输过程是否结束,如果完成,执行复位操作。这个状态如图2所示 。314地址译码模块译码器对数据传输地址进行译码。315仲裁器模块因为系统的AMBA 总线上不止有一个主设备(DMA 控制器、微处理器,因此需要有一个总线仲裁器,由仲裁器选择哪个主设备有权限使用总线。但微处理器比DMA 控制器具有更高的优先级。4DMA 控制器I P 核仿真及验证采用VHDL 5语言实现该DMA 控制器方案的代码,在M ent or 公司的ModelSi m 中通过了RT L 级的行为设计,功能仿真图(图3表示的过程为DMA 控制器从源地址读取单个字5A
11、5A5A5A 到其内部Buffer 中,然后将其写到目的地址。使用A ltera 的Quartus 进行综合调试,将所有模块综合映射到A l 2tera 公司的ACEX1K EP1K10QC20821上,得到正确的门级电路网表。所有模块占用的逻辑元件数是521(90%,管脚数是115(95%,最大频率可达到127.81MHz 。验证表明可以满足 实际需要。整个验证流程如图4所示。5结束语I P 核在集成电路中的应用越来越广泛,尤其是目前的工艺朝着深亚微米发展,其设计和复用更变得异常重要。I P 核技术的出现提高了设计效率和质量,缩短了产品的开发周期,有利于优化设计资源,避免重复劳动,使超大规模
12、的系统芯片设计方便、快捷。因此,设计可重用的I P 软核成为了一种趋势。本文采用VHDL 语言设计的基于AMBA 总线的DMA 控制器的软核可复用于多种芯片中。参考文献:1AR M L td .AMBA Bus S pecificati on Z.UK:AR M L td .,1999.2218.2Gareth Morris,M ichael Meier .A H igh Perf or mance DMA Contr ollerData SheetZ.Ne wYork:I ntel L td .,1985.1132157.3史昕蕾,杨军,陆生礼.嵌入式SoC 中的DMA 控制器的设计与优化J .电子工程师,2004,30(1:527.4李涛,高德远,樊晓桠.可编程DMA 控制器I P 设计J .计算机工程与应用,20
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年业务合作意向陈述函5篇
- 团队协作沟通会议纪要模板
- 产品运输问题协商解决函8篇
- 采购部门成本控制流程模板
- 市场营销策略制定模板多功能应用版
- 守秘义务践行与诚信合作承诺函范文3篇
- 路面失陷处理方案范本
- 河道汛期防汛方案范本
- 建材低价处理方案范本
- 店铺用具维护方案范本
- 上海市社区慢性病健康管理工作规范-慢性病综合防治(2025年版)
- 五星级酒店节能排风系统技术分析
- 《法医学尸体解剖规范》
- 2025初中英语词汇3500词汇表
- DB32-T 5236-2025 粮食生产“无人化农场”建设规范
- 2025年矿业工程采矿工程真题试卷(含答案)
- 2025年(新)基础考试电力交易员高级试题与答案
- 《四川省农村居住建筑抗震技术规程(修订)》
- 网络安防基本知识培训课件
- 物理竞赛中力学弹簧弹力问题试题及答案
- 青海省-玉树藏族自治州区划代码
评论
0/150
提交评论