在工程结构测验和剖析中,轰动信号的收集是一项基础性的作业,其收集的速度、精度和安稳度对测验的成果剖析有重要的含义。轰动数据剖析技能的不断进步要求速度更快、精度更高、功用更强、本钱更低的数据收集体系。AD7329刚好满意这些要求,它集成了可编程输入规模切换矩阵、高精度基准源和高功用A/D转化单元于一体,而Nios Ⅱ嵌入式软核CPU具有数据吞吐率高、装备灵敏、可晋级性强等特色,是一款性价比很高的微操控器,结合两者并经过高速SPI总线进行通讯,构成了高速、高精度轰动信号收集设备。
SoPC与Nios Ⅱ嵌入式体系简介
SoPC(System On Programmable Chip,可编程的片上体系)是Altera公司提出来的一种灵敏、高效的SoC解决方案。它将处理器、存储器、I/O口等体系规划需求的功用模块集成到一个可编程器材上,构成一个可编程的片上体系。SoPC是PLD和ASIC技能交融的成果,能够以为SoPC代表了半导体工业未来的发展方向。
Nios Ⅱ系列32位RISC嵌入式处理器具有超越200DMIP的功用,在低本钱FPGA中完本钱钱只要35美分。因为处理器是软核办法,具有很大的灵敏性,能够在多种体系设置组合中进行挑选,满意本钱和功用要求。选用Nios Ⅱ处理器进行规划,能够协助用户将产品敏捷推向市场,延伸产品生命周期,避免呈现处理器逐步过期的状况。
AD7329模/数转化器
AD7329是ADI公司推出的根据iCMOS(industrial CMOS)工艺的8通道12位精度1MSa/s采样速度的迫临型模/数转化器。iCMOS是一种结合了高电压CMOS和低电压CMOS的特别工艺,使得高精度模仿器材操作电压的规模到达了33V,远远高于上一代器材所能承受的极限。因为选用了此种新的工艺,AD7329在完结双极性输入的一起进步了精度,而且减小了功耗和体积。
AD7329能够完结真实的双极性输入,而且具有4种可编程输入规模,即±10V,±5V,±2.5V和0~+10V,每个模仿输入通道能够被独立设置。一起模仿输入通道也可装备成单端输入形式、差分输入形式以及伪差分形式。该器材内置了一个2.5V的基准源,一起也答应外部基准的输入,在外部基准为3V时双极性模仿输入的规模是±12V。该器材选用的是SPI高速串行接口,总线时钟频率能够安稳作业在20MHz,在给ADC供给时钟的一起完结数据的传输。
体系原理与组成
体系组成框图如图1所示,包含Nios Ⅱ嵌入式处理器、Avalon总线、JTAG操控器和调试接口、SDRAM、DM9000A网络接口以及AD7329采样操控模块。
图1 体系结构框图
在A/D采样操控器的操控下,AD7329收集得到的电压信号经过SPI接口传送到操控器的FIFO中,当数据量到达FIFO的75%时,操控器发生中止,告诉CPU读取数据。CPU收到中止后,发动DMA,将A/D采样操控器FIFO中的数据传送到以太网操控器的FIFO中,然后运用NicheStack协议栈选用UDP办法将数据发送到网上。JTAG操控器和调试接口用来软硬件调试和体系软硬件程序的装备。SDRAM用来运转软件程序和供给FIFO的物理空间。
AD7329与Nios Ⅱ接口的规划
1 接口硬件规划
SPI(Serial Peripheral Interface)即串行外围设备接口是Motorola公司推出的一种同步串行接口。SPI总线是一种4线同步总线,占用较少的I/O资源。Nios Ⅱ与外界SPI接口通讯可选用软件操控I/O、Mege IP Core以及自定义外设等办法。
软件操控I/O是运用CPU履行程序来模仿SPI接口的时序然后完结通讯,其特色是规划简略、运用方便,可是因为CPU长期进行时序模仿,不能发挥出高速信号处理的优势,故不合适本规划;Mege IP Core是Altera公司(或第三方)推出的能够完结特定功用的IP核,经过将它集成到SoPC体系中,能够快速构成SPI接口,但运用此种办法只能完结根本的通讯功用,不能完结更多的扩展,故本规划不选用;自定义外设即定制根据Avalon的用户外设,经过自行规划SPI硬件操控器,在完结通讯功用的一起,使其具有采样通道操控、FIFO缓冲以及DMA功用,使CPU不再参加通讯操作,而运用DMA中止进行采样数据的传输,能够极大的进步CPU运用率,故本规划选用此种办法。
本规划选用Verilog硬件描绘语言对自定义的A/D采样操控器进行规划。如图2所示,操控器与Avalon总线经过data_bus、addr、pro_clk、WR、RD以及interrupt进行通讯,承受CPU的操控指令和回传采样数据;操控器与AD7329经过miso、mosi、sclk以及CS进行通讯,完结收集的操控和数据的传输。操控器规划好后运用SoPC Builder对其封装成一个元件(也可称之为IP核),然后能够像Altera供给的Mege IP Core外设相同运用。
图2 SPI原理图
2 接口软件完结
为了完结A/D采样操控器的功用,除了硬件规划外,还需求开发相应的硬件笼统层(HAL)驱动程序。HAL能够看作是一个支撑使用程序开发的软件渠道,它供给API函数接口,屏蔽硬件拜访细节,尽管占用了一些额定的资源,但大大增加了使用程序的开发速度和可移植性。
驱动开发的第一步便是创立一个用于描绘设备寄存器的设备头文件,在这个文件中使用明晰易懂的宏符号描绘出寄存器调集,并给出其拜访办法;第二步为创立驱动程序,即为使用程序编写API函数,用以完结操控器初始化、作业形式设定、SPI通讯等功用;驱动程序开发结束后,还需求把源程序文件放到约好的目录下,并为它编写一个简略的Makefile文件,这样,驱动程序才干编译到HAL体系库中。下面列出了首要的API函数:
bool Init_SPI(void); //SPI操控器初始化,返回值为0表明成功,下同
bool Init_AD7329(void); //AD7329初始化
bool Set_ad7329_InputMode(unsigned int inputmode) ; //设置模仿输入形式
bool Set_ad7329_PowerMode(unsigned int powermode); //设置输入电源规模
bool Set_ad7329_WorkMode(char workmode,char startchannl,char number);
//设置作业形式:即所选通道、通道主动切换形式
int Set_ad7329_SampleStart(void); //开端采样,返回值为采样作业形式
3 仿真与测验
A/D采样操控器是在Quartus Ⅱ 7.2 SP3环境下规划的,在完结时序仿真后选用modelsim 7.2中进行功用仿真,仿真成果如图3所示。经过仿真成果能够看出,在CPU操控下,经过Avalon总线操控指令和数据传递给A/D采样操控器并写入到其内部寄存器中,在操控指令的效果下,完结AD7329的初始化、输入形式、输入电压规模和采样通道的挑选,并开端进行采样。在采样数据到达预订数量时,interrupt变低,告诉CPU发动DMA数据传输,然后,在DMA操控器的操控下,完结了数据的读取。
图3 SPI仿真时序图
定论
本体系经屡次实验室测验,能够对多种不同输出规模的模仿轰动传感器进行信号收集,而且精度高、速度快。因为将收集得到的数据实时发送到以太网上,故经过衔接在网上的作业站可一起对多套信号收集设备进行操控和记载,大大进步了体系的可扩展性。综上能够看出,本体系十分合适在对收集速度和传感器节点数量要求较高的测验范畴使用。