学位论文 > 优秀研究生学位论文题录展示
一种基于JTAG的CSoC在线调试器
作 者: 韩桂丽
导 师: 师恩培
学 校: 山东大学
专 业: 计算机应用技术
关键词: 片上调试 驱动 JTAG 可配置系统芯片
分类号: TP311.52
类 型: 硕士论文
年 份: 2011年
下 载: 52次
引 用: 0次
阅 读: 论文下载
内容摘要
在半导体业界,集成电路SoC (System on Chip,片上系统)成为目前主导的设计技术。SoC通常将微处理器、模拟IP核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上,通过软硬件协同设计,使应用产品实现小型、轻量、低功耗、多功能、高速度和低成本。SoC集成度和复杂度的增大使测试难度和测试成本不断加大,使可测性/可调试性设计技术在SoC设计方法学中的重要性凸显,也促进了高效率和低成本的JTAG测试技术的标准化和广泛应用。SoC芯片流片后,系统的调试任务大部分集中在嵌入式软件调试,方便的嵌入式软件调试器是实现成功设计和加速上市的关键。CSoC (Configurable System on Chip,可配置SoC)是SoC实现技术中的一类。本文基于CSoC的硬件设计,设计并实现了一种基于JTAG的CSoC片上调试系统。针对市场需求,Agate Logic公司借助其APGA(Adaptable Programmable Gate Array,普适可编程门阵列)技术,在CSoC芯片中集成了高性能8051内核和FPGA (Field-Programmable Gate Array,即现场可编程门阵列)逻辑,使产品具备可编程特性的同时还能获得性价比上的优势。可以说,CSoC是一个可编程、可配置的嵌入式应用开发系统。在本课题中,目标机是Agate Logic公司内嵌高性能8051微控制器硬核的嵌入式系统CSoC,其调试接口为OCDS (On Chip Debugging System,片上调试系统),应用的调试标准为JTAG。宿主机安装业界广泛应用的Keil软件。从通用性与易用性等角度考虑,选择USB作为PC和调试器之间的连接方式。本课题的设计重点和难点是软件设计。为了方便软件代码的设计和维护,将软件划分为3个层次:Keil接口驱动层、USB驱动层和调试器固件层。调试器逻辑处理芯片选择福华先进微电子(FameG)的产品FS7805,本课题利用FS7805的APLIF (Advance Programmable Logic Interface,高效可编程逻辑接口)模块,透过软件来设定APLIF的传输特性,将APLIF模拟成JTAG波形信号控制接口,通过设计适合的波形描述符,利用芯片内部逻辑的命令方式实现调试信号的正确输出。本文中还尝试了另一种调试器的实现方法,即直接从PC推出JTAG逻辑。利用调试器内部的FIFO缓存数据,推出调试信号。论文中比较了两种实现方法的异同,从软件实现的角度认为直接从PC推出JTAG逻辑的方法更高效,移植性与可扩展性更好。在第七章对第二种方法实现的调试器从正确性角度进行了性能评估。本课题用较低的成本实现了软/硬件断点、单步、运行/停止、MCU复位、查看MCU寄存器、读取/修改外部存储器等调试功能,且调试的执行独立于MCU,保证了MCU运行的实时性,对其他SoC的设计具有一定的参考价值。
|
全文目录
中文摘要 10-12 ABSTRACT 12-14 第一章 绪论 14-18 1.1 课题的背景 14-15 1.2 国内外发展现状 15-16 1.3 课题来源及其研究意义 16-17 1.4 本文主要研究工作和论文安排 17-18 第二章 调试器系统架构 18-23 2.1 嵌入式系统调试器综述 18-19 2.1.1 交叉编译的概念 18 2.1.2 调试器的基本分类 18-19 2.2 系统整体架构设计 19-21 2.2.1 系统框图 19-20 2.2.2 调试主机 20 2.2.3 调试器模块 20-21 2.2.4 目标机模块 21 2.3 软件分层 21-22 2.4 实现功能 22 2.5 调试原则 22 2.6 本章小结 22-23 第三章 调试器驱动设计 23-35 3.1 Keil IDE 23-24 3.2 Keil接口函数 24-32 3.2.1 调试系统初始化 25-26 3.2.2 AGDI地址表示 26-27 3.2.3 存储器接口 27-30 3.2.4 寄存器接口 30 3.2.5 调试执行 30 3.2.6 断点接口 30-32 3.3 调试器接口函数 32-33 3.4 调试器软件架构 33-34 3.5 本章小结 34-35 第四章 JTAG协议与OCDS 35-49 4.1 调试协议背景 35 4.2 JTAG协议 35-43 4.2.1 JTAG基本原理 35-38 4.2.2 TAP控制器 38-40 4.2.3 数据访问 40-42 4.2.4 多器件测试及功能扩展 42-43 4.3 OCDS 43-48 4.3.1 OCDS结构 43-44 4.3.2 调试接口 44 4.3.3 JTAG指令寄存器 44-45 4.3.4 Nexus访问 45-46 4.3.5 特殊功能寄存器 46-48 4.4 本章小结 48-49 第五章 上位机驱动实现 49-62 5.1 OCDS的控制 50-52 5.1.1 Nexus寄存器读写 50-51 5.1.2 Memory读写 51-52 5.1.3 执行指令的实现 52 5.2 调试器功能 52-59 5.2.1 8051 Register控制 52-54 5.2.2 各存储器操作 54-57 5.2.3 Run/Step/Stop/Goto等实现 57-58 5.2.4 软件/硬件断点 58-59 5.3 USB驱动控制 59-61 5.3.1 USB链接,检测,断开 59-60 5.3.2 USB数据传输控制(读写) 60-61 5.4 本章小结 61-62 第六章 FS7805固件与系统连接 62-73 6.1 连接框图 62 6.2 FS7805固件 62-71 6.2.1 Command方式 64-69 6.2.2 FIFO方式 69-71 6.3 通信约定 71-72 6.4 固件程序流程 72 6.5 本章小结 72-73 第七章 调试实现 73-79 7.1 软件环境的建立 73-74 7.2 硬件设置 74-75 7.3 系统流程 75 7.4 Keil调试 75-76 7.4.1 开始调试 75-76 7.4.2 复位/运行/停机/单步操作 76 7.5 调试器性能评估 76-78 7.5.1 两种方法分析与比较 76-77 7.5.2 调试器性能评价 77-78 7.6 本章小结 78-79 第八章 总结与展望 79-81 附录 81-82 参考文献 82-85 致谢 85-86 攻读学位期间发表的学术论文目录 86-87 学位论文评阅及答辩情况表 87
|
相似论文
- 基于ARM9机车信号系统检测装置的设计与优化,U284.91
- 远程多轴步进电机控制驱动系统的研制,TM383.6
- 测井油泵无刷直流电动机稳速驱动系统,TM33
- 压电陶瓷驱动器迟滞补偿方法研究,TM282
- 交流永磁电机的驱动策略对损耗影响的研究,TM351
- 高性能计算机I/O总线技术研究,TP336
- 面向SMDA的服务建模方法及工具实现,TP311.52
- 面向文景转换的角色动画生成技术研究,TP391.41
- 视觉伺服四自由度机械臂的研究,TP242.6
- 一类欠驱动Lagrangian系统的最优同步控制,TP13
- 四旋翼垂直起降机控制问题的研究,TP273
- 基于windows的计算机数字控制系统实时性的研究,TG659
- 网位仪信号采集与处理平台的设计与实现,S951.2
- 物料悬浮速度智能测试系统的设计研究,S220.2
- 时间驱动作业成本法在X卷烟物流配送中心的应用探索,F253.7
- 情绪对视觉工作记忆表征稳定性的影响,B842.3
- 基于ANDROID的H.264视频编解码技术的研究与实现,TN919.81
- 掺铒光纤放大器中泵浦激光器驱动源的研究应用,TN248
- 深水软管滚筒驱动装置结构及液压系统的研究,TE973
- 龙门刨床模拟实验装置的设计,TG551.2
- 微流体脉冲驱动—控制的芯片点样系统设计及实验研究,TN402
中图分类: > 工业技术 > 自动化技术、计算机技术 > 计算技术、计算机技术 > 计算机软件 > 程序设计、软件工程 > 软件工程 > 软件开发
© 2012 www.xueweilunwen.com
|