基于Avalon总线SHT11温湿度传感器自定义IP核的开发流程
SOPC(System On a Programmable Chip,可编程芯片系统)就是在一个可编程芯片上实现一个电子系统的技术。SOPC是可编程逻辑器件技术和SoC(System on Chip)技术发展与融合的产物[1?2]。
SOPC的关键技术之一就是IP核,也就是知识产权核。所谓的IP核就是指将一些比较复杂的功能模块,如音频编/解码、SDRAM等,设计成可以修改参数的模块,可以直接调用。实际的SOPC设计过程,用户常常有特殊的需求,而EDA厂商未提供该IP核。所以,在设计中添加用户自定义组件显得特别重要。
1 Avalon总线
SOPC组件通过Avalon交换架构或者Avalon总线连接在一起,SOPC系统的可定制特性要求Avalon总线也具备灵活的可定制特性。Avalon总线是一种协议较为简单的同步总线,有其规范及传输模式。
Avalon总线是由Altera公司开发的一种专用的用于连接SOPC系统组件及从组件的内部连线技术,它是由SOPC Builder自动生成,是一种理想的用于系统处理器和外设之间的内连总线。一般使用的是Avalon从端口。一个典型从端口包含的信号如表1所列。
表1 Avalon从端口信号
Avalon总线使用很少的逻辑资源支持数据总线复用、地址译码、产生等待周期和高级交换式总线传输。该总线为用户提供非常友好的接口,屏蔽搭建系统的细节,减轻了系统搭建的工作量。
2 SHT11自定义IP核的开发
2.1 SHT11温湿度传感器
SHT11是瑞士Sensirion公司推出的SHTxx系列数字温湿度传感器。它是基于先进的CMOSens数字传感技术,具有极高的可靠性和长期稳定性。全量程标定,两线数字接口,大大缩短研发时间,简化外围电路并降低费用。此外,具有体积小、响应迅速、能耗低、可浸没、抗干扰能力强、温湿一体的特点,兼有露点测量,性价比高,使该产品能够适于多种场合的应用。SHT11的高级功能是通过状态寄存器来实现的[3]。
图1为系统结构图。由图可知,系统主要分为接口模块和行为模块,行为模块实现芯片的驱动逻辑功能,接口模块通过内部总线和Avalon总线相连,实现了对行为模块的控制。利用SOPC Builder建立系统,通过数据线和时钟线来控制SHT11。其中要加上10 kΩ的上拉电阻。
图1 系统结构图
采用自定义IP核的方式,也就是把SHT11看成外部存储器或者是I/O设备,将其作为从设备连接到Nios II嵌入式处理器的Avalon总线上,系统用访问I/O设备或者是读写寄存器的方式对其进行控制。所以,编写自定义IP核的时候,根据实体SHT11的时序要求,编写驱动、接口等,灵活地控制并实现复杂的时序。其中可以按照自己的需求灵活地定义状态、标志位、控制位等。设计完成后,独立添加到SOPC Builder,用户可以直接使用。该方法比单纯利用PIO内核更加节省处理器的开销,充分发挥了处理器的能力[4?6]。
加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW
或用微信扫描左侧二维码