系统芯片fpga验证系统的软件调试环境设计

系统芯片fpga验证系统的软件调试环境设计

ID:10716976

大小:53.50 KB

页数:4页

时间:2018-07-07

系统芯片fpga验证系统的软件调试环境设计_第1页
系统芯片fpga验证系统的软件调试环境设计_第2页
系统芯片fpga验证系统的软件调试环境设计_第3页
系统芯片fpga验证系统的软件调试环境设计_第4页
资源描述:

《系统芯片fpga验证系统的软件调试环境设计》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、系统芯片FPGA验证系统的软件调试环境设计

2、第1内容显示中摘要:软件调试环境是软件与硬件间的桥梁。为了缩短SoC推向市场的时间,必须尽早建立一个好的软件开发调试环境。在SoC系统验证(项目中用FPGA做系统验证)阶段,同时建立软件开发环境,这样软硬件设计就能同步进行,就可以在PFGA上调试软件,缩短SoC的上市时间、降低成本,在FPGA上开发的软件基本可以平移到目标芯片上。本文探索的软件调试环境设计,不需要任何的硬件支持,完全用软件来实现,这又进一步简化了硬件设计,缩短SoC的开发周期和成本。  关键词:SoC;软件调试环境;监控程序  在SoC系统开发过程中,既有硬件

3、的开发,又包括软件开发[1]。传统的SoC的开发过程中,一般流程是先做硬件(CPUcore和外围IP模块)设计,再作软件(包括软件调试环境、OS和应用程序)设计。这样的流程是软硬件设计串行进行,大大延长SoC推向市场的时间。怎样才能使软硬件设计同步进行?软硬件协同设计成为SoC设计领域的热门话题[3]。笔者结合实际项目(国家863项目“空间信息应用移动用户终端原型机的研究开发和产业化”,课题编号2001AA136032),探索了软硬件协同设计的方法,使软硬件设计同步进行。实现了在FPGA验证阶段同时建立软件调试环境,同时进行OS和其他应用程序的开发。本文首先简单介绍当前

4、SoC设计的基本情况,软件调试的实现方法。重点介绍了在SoC设计的FPGA验证过程中进行软件调试环境的设计的基本原理和思路。  文中笔者结合了实际参加的项目,整个项目的基本情况是:项目所开发的是基于32bitHarvard结构的RISC处理器的嵌入式SoC,包括几个外围IP模块。如图1所示。  由于CPUCORE是自主开发的,必须尽早提供一个好的软件调试环境,所以我们在SoC的FPGA验证过程中就开始建立软件开发环境。CPUCORE的字长为32bit,采用LittleEndian的存储格式。在项目中使用的工具链(编译器、汇编器、连接器和其他转换工具),都是独立开发的。而

5、且所用的CPUCORE可以和其他外设IP一起进行FPGA综合,所以简化了SoC的FPGA验证。500)this.style.ouseg(this)">1 嵌入式SoC设计、软件调试环境概述    SoC设计中集成了复杂的IP模块和嵌入式软件,传统的以功能设计为基础的IC设计方法已经无法适应新的设计需求,IC设计方法需要变革,从以功能设计为基础的传统流程转变到以功能组装为基础的全新流程。SoC设计的关键要素包括:深入的系统级设计与分析;软硬件的协同设计与验证[1]。  在FPGA验证阶段开始建立软件调试环境意义匪浅,因为FPGA基本能正确全面仿真芯片行为,而其他仿真环境,

6、如指令模拟器不能全面仿真芯片行为,尤其是中断和外围模块没法通过指令模拟起来仿真。所以在FPGA上进行软件开发和在指令模拟器上进行软件开发都是必要的,在FPGA上开发的软件基本可以平移到目标芯片上。这样在硬件设计的FPGA验证阶段就开始开发软件,能缩短项目开发时间,降低成本。本文接下来就详细介绍这种方法。  当前用得较多的软件开发环境,基本上有两类[2]:  ① 插桩方法(软断点)。嵌入式微处理器内部不需要特别的硬件支持。软件包括PC端的HOST软件:提供用户调试程序的界面、与仿真板进行通信的接口函数等;仿真板上的监控程序(monitor),存放在仿真板上的一个具有固定地

7、址的只读存储器中。其特点是:方便廉价的方式,不需要特别的硬件支持;缺点是效率不高,只能对RAM程序调试。  ② ICE+JTAG方法。在芯片上设计ICE模块的在线仿真器。这种方法是在芯片内设计一个嵌入式ICE模块,ICE模块作为嵌入式微处理器和开发系统之间的桥梁,在线仿真器中的嵌入式微处理器即是目标系统中真实的处理器。和插桩方法相比这种方法的效率比较高,可对ROM程序调试;但需要特殊的硬件支持。  由于插桩法软件开发环境的建立不需要特殊的硬件支持(在芯片上不需要ICE模块的支持)、相对容易和廉价,可以在硬件设计的FPGA验证阶段同时开始这种软件开发环境的建立。同时为了使

8、软硬件设计能并行进行,缩短SoC的开发周期。所以选用这种插桩方法不失为一种可行的好方法,它可缩短SoC项目的开发周期,同时也降低了开发成本。后面将具体介绍这种在SoC的系统验证阶段(FGPA验证)开始建立软件开发环境。主要分两个部分介绍,一部分介绍运行于验证电路板上的监控程序(MONITOR),另一部分介绍运行于PC的HOST程序。2 在SoC设计FPGA验证过程,软件调试环境的设计2.1 基本原理  在FPGA验证过程开发的软件调试环境,基本功能包括:加载(Doouseg(this)">  在我们项目中,MONITOR始终在查询串口,在

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。