[发明专利]用于多硬件平台飞腾服务器的I2C总线的实现方法有效
| 申请号: | 201210095026.X | 申请日: | 2012-03-31 |
| 公开(公告)号: | CN102650975A | 公开(公告)日: | 2012-08-29 |
| 发明(设计)人: | 戴华东;孙立明;邵立松;董攀;张卫华;李振钊;魏彦斌;李真能 | 申请(专利权)人: | 中国人民解放军国防科学技术大学 |
| 主分类号: | G06F13/20 | 分类号: | G06F13/20 |
| 代理公司: | 湖南兆弘专利事务所 43008 | 代理人: | 赵洪;谭武艺 |
| 地址: | 410073 湖南省长沙市砚瓦池正街47*** | 国省代码: | 湖南;43 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 硬件 平台 飞腾 服务器 i2c 总线 实现 方法 | ||
1.一种用于多硬件平台飞腾服务器的I2C总线的实现方法,其特征在于其实施步骤如下:
1)在飞腾服务器上PCIe交换单元的片上GPIO端口中指定闲置的两个GPIO端口分别外接上拉电阻并作为I2C总线接口的数据线接口和时钟线接口;
2)在初始化硬件时将PCIe交换单元的PCI内存空间映射为CPU虚拟地址空间;
3)获取PCIe交换单元的类型信息,根据所述PCIe交换单元的类型信息获取所述两个GPIO端口在CPU虚拟地址空间中的映射端口地址;
4)在操作系统中建立并注册用于操作所述两个GPIO端口对应映射端口地址的GPIO驱动程序模块;
5)在使用I2C设备前将设备连接到所述两个GPIO端口;在使用I2C设备时,操作系统中的I2C总线控制器驱动程序产生I2C总线时序的指令,且所述I2C总线时序的指令通过所述GPIO驱动程序模块与连接于所述两个GPIO端口上的I2C设备进行通信。
2.根据权利要求1所述的用于多硬件平台飞腾服务器的I2C总线的实现方法,其特征在于,所述步骤2)的详细步骤包括:在飞腾服务器启动时首先PCIe交换单元的PCI内存空间映射为CPU物理地址空间,然后将所述CPU物理地址空间映射为CPU虚拟地址空间。
3.根据权利要求1或2所述的用于多硬件平台飞腾服务器的I2C总线的实现方法,其特征在于,所述GPIO驱动程序模块包括如下子模块:
A)电平输入子模块,用于为读取指定GPIO端口的电平状态,如果所述电平状态为高电平则返回1,如果所述电平状态为低电平则返回0;所述电平输入子模块的实现方法为读取指定GPIO端口在CPU虚拟地址空间中映射端口地址中数据输入寄存器的值,并根据所述数据输入寄存器的值返回数值1或0;
B)电平输出子模块,用于为配置指定GPIO端口的电平状态,如果配置值为1则输出高电平,如果配置值为0则输出低电平;所述电平输出子模块的实现方法为读取指定GPIO端口在CPU虚拟地址空间中映射端口地址中数据输出寄存器的值,并根据所述配置值配置指定GPIO端口的电平状态;
C)配置输入方向子模块,用于配置指定GPIO端口的传输方向为输入;所述配置输入方向子模块的实现方法为读取指定GPIO端口在CPU虚拟地址空间中映射端口地址中方向寄存器的值,并根据所述配置值配置指定GPIO端口的方向为输入;
D)配置输出方向子模块,用于配置指定GPIO端口的传输方向为输出并在配置方向后在指定GPIO端口上根据配置参数输出高电平或者低电平;配置输出方向子模块的实现方法为读取指定GPIO端口在CPU虚拟地址空间中映射端口地址中方向寄存器的值,并根据配置值配置指定GPIO端口的方向为输出,然后根据配置参数调用所述电平输出子模块输出高电平或者低电平。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军国防科学技术大学,未经中国人民解放军国防科学技术大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210095026.X/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种电动车安全充电装置
- 下一篇:卡槽式可更换曝气装置





