龙芯CPU开发系统PMON固件开发规范

需积分: 48 39 下载量 131 浏览量 更新于2024-07-16 收藏 624KB PDF 举报
"龙芯CPU开发系统PMON固件开发规范_V1.0.pdf" 这篇文档是龙芯中科技术有限公司发布的企业标准,详细规定了龙芯CPU开发系统中PMON固件的开发流程和技术要求。PMON(Power-on Monitor)是一种在计算机启动时执行的微代码,用于初始化硬件和加载操作系统内核。 1. **范围** 规范涵盖了从PMON的上电启动过程、CPU初始化状态到固件与内核接口等多方面的内容,适用于龙芯开发系统的Linux内核开发、测试和发布。 2. **术语** 文档可能定义了一些专有的术语和缩写,如PMON、CPU开发系统、固件、中断路由等,这些都是理解规范的关键。 3. **概述** - **上电启动过程**:描述了PMON在系统加电时如何启动,执行硬件初始化和环境设置。 - **复位后CPU的初始状态**:明确了CPU在复位后应有的寄存器状态和内存配置。 - **窗口配置部分约定**:规定了CPU地址空间的映射和管理规则。 - **内存初始化**:阐述了PMON如何初始化内存,确保其可用性和稳定性。 4. **PMON的系统需求** - **地址空间分配**:定义了PMON在内存中的位置以及如何分配内存资源。 - **低256M的空间分配**:详细说明了PMON对系统低端内存的使用策略。 - **板卡存储需求**:规定了对开发板上存储设备的需求和配置。 5. **PMON启动及内核加载** 描述了PMON如何启动并加载Linux内核到内存中,以便进行后续的系统启动。 6. **驱动与设备路由** - **PMON设备驱动模型**:定义了PMON如何识别和管理硬件设备。 - **PMON中断路由**:详细说明了中断处理机制,确保设备能够正确响应和处理中断请求。 7. **固件与内核接口** - **与内核接口的约定**:定义了PMON与Linux内核间的通信协议和数据交换方式。 - **运行时服务的约定**:说明了PMON提供的运行时服务,如I/O操作、时间管理等,以及这些服务如何与内核交互。 8. **PMON的人机界面** - **命令格式**:定义了用户通过命令行与PMON交互的规则。 - **命令相关的数据结构**:详细描述了命令处理的数据结构设计。 - **命令的相关的数据结构及函数实现**:介绍了如何实现这些数据结构和处理命令的函数。 - **命令分类**:列举了不同类型的PMON命令及其功能。 9. **PMON编译、配置、目录结构及代码风格** - **编译器的版本**:指定了推荐或强制使用的编译器版本。 - **PMON编译配置**:规定了编译PMON所需的配置选项和步骤。 - **PMON的目录结构**:描述了源代码的组织结构,方便开发和维护。 - **PMON代码风格**:设定了代码编写的一致性规则,提高代码可读性和可维护性。 附录部分包含了详细的参考资料和技术细节,如错误代码、常量定义、函数接口等,为开发者提供了全面的指导。 此规范的制定旨在确保龙芯CPU开发系统的稳定性和一致性,为开发者提供了一套标准的操作指南,以支持高效且可靠的固件开发。