由于在FPGA内部采用VGA控制器IP核,选择模拟仪器公司的10位高速视频DAC芯片。
SRAM采用IDT公司的IDT71V416器件,利用2片IDT71V416器件构成32位存储器,以与NiosⅡ的32位CPU的总线匹配。对SRAM的控制,选用Altera公司提供SRAM控制器核,其控制信号由SoPC自动生成。SDRAM为系统中的数据及堆栈提供暂存空间。系统启动后,程序代码调入SDRAM中运行,以提高系统的运行速度。系统中采用HYNIX公司的64MBSDRAM,型号为HY57V561620HT。它提供LVTTL接口,分为4个BANK,每个BANK容量为4M×16b。由BA0,BA1的状态决定选定那个BANK。FLASH存储器的设计采用AMD公司的AM29LV128M器件。可以自由选择数据的位数为16b或者8b,但是最高位是模式位,采用IP核完成设计,具有比较优越的性能。
2.1通信模块的设计
采用非常普遍的串行口通信。RS232串行总线具有结构简易,成本低廉,硬软件支持丰富,安装方便等特点。虽然RS232的速度稍微慢了点,但是对于频率小于100Hz信号的采集还是足能满足的。采用MAXIM公司的max3232作为串口转换芯片,其供电电压为3~5V,速度可以达到1Mb/s,具有良好的性能。
2.2脉象采集模块的设计
脉象采集模块包括传感器、仪器放大器、采样保持器、A/D转换器等,是脉象采集仪的关键部分。
脉象采集仪的传感器决定着采集的质量,设计采用硬面压力传感器,型号为华科公司的HK2000G脉搏传感器。利用这种传感器合理设计系统,采集到的脉搏信号能较好地达到要求标准。
选用ADI公司的仪器放大器AD620来放大采集到的脉搏信号。AD620非常适合于压力感测方面的应用。设计系统需要采集三路脉象信号,为了节省脉象信号模拟数字转换和滤波的成本,在信号的前端,设计模拟多路开关,进行多路复用功能。脉象信号较微弱时,为了较少地引入噪声,采用AD7501模拟开关。
3FPGA模块的关键电路设计
3.1脉象采样控制器的设计
为了使设计简单化,对于脉象采集控制的FPGA设计,采用在SoPC系统外做控制电路部分,然后通过SoPC的PIO与SoPC连接。由脉象信号采样的组成可知,脉象采集与FPGA相连的只有数据线接口和控制线,3路脉搏信号和3路信号共用一个ADC。
完整编译综合采集部分后由两部分组成,如图2所示。
3.2基于NiosⅡ的SoPC硬件设计
利用Altera公司的QuartusⅡ软件和SoPCBuilder开发工具,可以方便地定制一个从硬件到软件的完整系统。FPGA内部需要设计以下模块:NiosⅡ、SRAM控制器、SDRAM控制器、EPCS控制器、FLASH控制器、定时器、VGA控制器、RS232控制器、脉象采集控制器等。除脉象采集控制器没有现成的IP核可用,需开发控制时序外,其他控制器采用Altera公司提供的IP核。
SoPC系统生成完成后,在QuartusⅡ下建立原理图窗口,调用设计好的NiosⅡ系统与自己设计的脉象采集系统的控制连接,设计完成后,锁定引脚,进行完整编译。完成后的电路如图3所示。
编译后配置到系统中的FPGA去,后面的工作就是嵌入式操作系统的移植和嵌入式应用程序的开发,这时会利用到该硬件平台。
4结语
设计出嵌入式脉象采集仪的总体方案,并完成了基于FPGA的脉象采集仪硬件电路设计。根据脉象采集的特点,设计脉象采集部分电路,利用IP核构建了脉象采集的SoPC系统。设计的脉象采集仪具有成本低,功耗低,体积小,便于扩展,使用方便,稳定性高,可靠性高,系统维护方便等特点。