论文部分内容阅读
随着电子系统集成到芯片技术的不断发展,片上系统的优势和复杂性不断增加。这给系统软件和硬件的设计者带来了新的挑战。系统软件的设计必须考虑芯片的硬件结构。对于片上系统来说,更需要硬件和软件的协同设计(Co-design)。很多情况下,满足有上亿晶体管的系统设计效率要求,唯一的途径就是采用运行专用软件的嵌入式处理器(embedded processor)。这给系统软件的设计带来了新的意义。 同时,软件仿真器目前广泛地应用于许多研究领域。它能够用于支持体系结构的研究:通过修改相应的仿真模块来适应硬件变化;通过运行复杂的基准测试序列,可以评价新的硬件设计对计算机系统性能所造成的影响;通过对计算机系统硬件的仿真,提供与目标机相同的编程接口。仿真器可以用于支持系统软件的设计,为系统软件的开发调试提供具有良好系统可见性和再现性的模拟环境,使得软硬件的开发可以同步进行。而对应用程序执行行为的分析可以研究应用的特点,从而得到软硬件系统优化的方向。 正是基于这样的考虑,本文在研究了传统的系统软件设计方法的基础上,为我们自行设计的嵌入式RISC核设计了汇编器、连接器和软件仿真器。 本文的内容是这样安排的: 第一章对系统软件的传统设计方法进行了研究,并对为其提供设计的RISC核系统结构以及基于该RISC核的一个应用系统高清电视信源解码芯片做了说明。 第二章在研究传统汇编器设计方法的基础上,提出并实现了一种采用单遍扫描的汇编器算法。并基于汇编器输出的通用目标文件格式(COFF)设计实现了一个连接器算法。 第三章根据需要仿真的硬件环境,设计实现了一个指令集仿真器(ISS,Instruction Set Simulator)。并对仿真器的各个模块的具体实现进行了说明。 利用所设计的汇编器和仿真器,我们在第四章中用汇编程序实现了音频信号的A律压扩。根据汇编的结果将程序下载到由FPGA实现的RISC核评估板上运行,并和仿真的结果进行比较,互相进行了验证。除了给出了利用这些工具进行应用程序开发的方法之外,说明了利用仿真器进行软硬件协同设计的过程。