基于SOPC技术的虚拟示波器设计

发布者:Meilin8888最新更新时间:2012-02-07 来源: eefocus关键字:SOPC技术  虚拟示波器  计算机 手机看文章 扫描二维码
随时随地手机看文章

  引言

  模拟示波器由于无法高效地观察实验结果、数据处理功能弱等缺点,已逐渐被数字示波器所取代,但数字示波器价格昂贵。虚拟仪器是在通用计算机平台上,用户利用软件根据自已的需求定义设计仪器的测量功能,其可以大大拓展传统仪器的功能,降低仪器成本,并可通过软件实现数据的复杂分析、运算和海量存储等功能。LabWindows/CVI是1种常用的虚拟仪器设计软件,为用户提供了功能强大的虚拟仪器系统开发平台。为此,本文以LabWindows/CVI为开发平台,利用FPGA中嵌入的NiosⅡ软核构成的SOPC系统,设计一种双通道虚拟示波器,以达到一般传统示波器的性能指标。

  1虚拟示波器硬件电路设计

  1.1虚拟示波器数据采集通道电路设计

  为减少虚拟示波器对被测电路的影响,要求虚拟示波器数据采集通道的输入阻抗在1MΩ以上,因此必须设计合适的衰减器和可控增益的放大器。虚拟示波器数据采集通道的原理方框图如图1所示。图1中,虚拟示波器的2个通道完全对称,且相互独立。从探头进来的信号经过衰减网络,获得合适的信号强度,进行AD/DC切换开关后,送到可控增益放大器,将不同幅度的信号放大为幅度大致相同的信号,经高速A/D转换获得两路独立的数字信号,同时触发电路完成触发功能,使波形能够平稳地显示。

  1.1.1衰减与AD/DC转换电路

  图2为虚拟示波器的衰减与AD/DC转换电路图。

  图2中,R1、R2、R3、C1和R4、C2组成1:10的分压网络,通过CPU控制三极管Q1、Q2和继电器K1、K2分别控制进行1/10的衰减与AD/DC切换控制。

  1.1.2可控增益放大器

  虚拟示波器需设计宽范围可调节的增益放大电路器,以实现10mV~±200V范围内的输入电压采样。本系统采用模拟多路器切换运放的反馈电阻,以达到改变增益的目的,其电路图如图3所示。

  图3中,U1内部包含两通道JFET高输入阻抗的运放,前级为跟随器,以满足示波器的高输入阻抗要求,第2级为可控增益放大器,由模拟多路器和运放共同构成。

  1.1.3A/D转换电路

  虚拟示波器的A/D转换器采用Linear公司的LTC2289,它的采样频率可达80MHz,有2个独立通道,可选内部参考或外部参考。本文选用内部参考。

  1.2虚拟示波器信息处理部分硬件设计

  虚拟示波器信息处理部分主要包括FPGA系统和USB通信部分,其组成方框图如图4所示。

  图4中,虚拟示波器模拟输入通道的模拟信号经A/D转换后获得数字信号,经过1个数据缓冲器输入到FPGA,FPGA通过逻辑电路和NiosⅡ管理将数据进行存储、上传等。SRAM用于缓存采样数据;FLASH用于存储NiosⅡ应用程序,并实现系统上电时将程序加载至SDRAM中。[page]

  系统选择的USB接口芯片CY7C68001为USB2.0标准控制器,其可工作在高速或全速状态,支持4个可配置共享4KB FIFO空间的端点,并具有一个标准8位或16位主机接口,非常适合做高速USB接口。

  2 虚拟示波器SOPC系统构建及NiosⅡ软件开发

  2.1 虚拟示波器SOPC系统构建

  本文采用ALTERA公司的NiosⅡ软核处理器,并利用FPGA设计虚拟示波器系统。ALTERA公司的NiosⅡ软核处理器是一个32位RISC嵌入式处理器,具有5级流水线、采用数据和指令分离的Harvard结构、提供众多标准外设和软件集成开发环境。

  进行基于NiosⅡ的SOPC系统开发时,可利用ALTERA提供的SOPC插件,进行外设和CPU的配置,并提供自定义IP的构建方法。在虚拟示波器系统中,需要开发符合AVALON总线的示波器模块,并加入到自定义IP中。示波器模块实体程序如下:

  

  在SOPC插件中,将示波器模块等自定义模块集成为IP核,分别将NiosⅡJTAG_UART、FLASH以及SRAM等IP核加入虚拟示波器系统中,SOPC系统配置图如图5所示。

 



  配置完成后,生成系统,并在QuartusⅡ中进行引脚配置,然后综合、布线,生成配置文件,通过JTAG对FPGA进行配置,即可获得虚拟示波器系统的信息处理部分硬件电路。

  2.2 NiosⅡ软件开发

  实践证明,当系统的复杂程度达到一定时,采用嵌入式操作系统不仅会简化程序员工作、提高CPU利用率,而且会提高系统可靠性。因此本系统的下位机软件采用嵌入式操作系统。microc/os-Ⅱ是1个性能优良的嵌入式多任务实时操作系统,稳定度高、安全性好;同时NiosⅡ开发环境中集成了性能良好的、免费的microc/os-Ⅱ估算版,因此虚拟示波器系统采用该操作系统。

  NiosⅡ的软件开发一般采用分层的方式进行,它采用类似Linux的设备文件系统来管理设备,采用HAL(硬件抽象层)完成硬件相关设备的封装操作,因此每个CPU外设都需要有相应的驱动程序。虚拟示波器系统中,NiosⅡ的驱动分层结构如图6所示。

 


  虚拟示波器系统需要为定义的IP设计相应的驱动程序,对于最底层与硬件相关的操作,NiosⅡ提供了IOWR(base,offerset,data)和IORD(base,offerset)2个宏,分别用于对寄存器的读、写操作。这里,base为虚拟示波器驱动程序的基地址,其自动生成;offerset为指被操作的寄存器在该设备中的偏移地址。

  2.3嵌入式USB协议栈开发

  USB协议复杂,虚拟示波器系统开发的USB协议栈基于microc/os-Ⅱ,并采用了如图7的分层结构,以减少开发调试的难度。

[page]

  硬件抽象层和命令接口层都与硬件相关,硬件抽象层负责对SX2的寄存器进行读写操作,而命令接口则实现与SX2的工作方式有关的操作;协议层与平台无关,其主要完成USB的枚举及各端口数据处理;应用层完成对提供调用的函数进行封装,应用层提供了简单的API接口,其利用senddata函数发送数据到主机,同时利用recdata函数从主机接收数据以及厂商请求的函数,上层程序只要简单地调试这3个函数而无需关注USB协议,即可完成虚拟示波器的USB通信。

  3虚拟示波器上位机软件设计

  3.1虚拟示波器USB通信的封装

  虚拟示波器上位机程序采用LabWindows/CVI开发,其本身并不支持USB通信,因此采用了调用外部模块的方法。采用VC++编写程序,将USB通信底层函数进行封装,编译成DLL,再供LabWindows/CVI进行调用。为此,将动态链接库的头文件和DLL文件导入进工程,生成1个FP的驱动器,这时虚拟示波器系统就可以直接调用DLL里面提供的函数。

  3.3虚拟示波器面板程序的开发

  图8中,用户对虚拟示波器面板上的垂直幅度调节、水平宽度调节等按钮操作时,系统会将相应的操作命令传送给下位机,并由下位机调节垂直幅度和水平时基等,从而实现用户对虚拟示波器系统的操作。

 

  4测试结果

  采用FPGA处理器和ALTERA公司的NiosⅡ软核完成虚拟示波器系统设计后,进行了多次测试,其性能指标如表1所示。

  由表1可知,该虚拟示波器达到了一般模拟示波器的指标。然而由于本系统采用虚拟仪器技术,在功能上增加单次采样、波形保存等功能,因此与普通示波器相比,其成本低廉,操作界面更友好、简便。

  5 结论

  本文以LabWindows/CVI为开发平台,设计了1种双通道虚拟示波器,该示波器利用FPGA中嵌入的NiosⅡ软核构成的SOPC系统,完成虚拟示波器各模块的管理;利用嵌入式USB协议,配合片外的模拟信号处理模块,通过USB总线,完成各种波形数据的采集,经上位机软件完成了波形显示和数据分析,并实现了仪器的各种操作功能。实际测试结果表明,该虚拟示波器达到了或优于一般模拟示波器的性能指标。

 

 

关键字:SOPC技术  虚拟示波器  计算机 引用地址:基于SOPC技术的虚拟示波器设计

上一篇:基于Labview的光伏发电数据监测系统的设计
下一篇:基于LabVIEW的飞机电气综合试验管理系统设计

推荐阅读最新更新时间:2024-03-30 22:23

信产部明确发展通用CPU和千万亿次计算机系统
根据近日信产部公布的《信息产业“十一五”规划》,在“重大工程”项目明确指出,“研究先进的计算机体系结构,设计开发具有自主知识产权的高性能通用CPU,研制千万亿次高性能计算机系统,实现万亿次高性能计算机产业化。” 龙芯为我国首枚通用CPU验证芯片,龙芯2E为我国第一个通过科技部863项目鉴定的高性能通用CPU。在中国自主芯片的道路上,曾经呈现多家争鸣的格局,但是上海交大汉芯造假、方舟科技搁置承接的863项目、挪用科研资金的事件严重打击了民众和舆论对于自主研发的信心。 目前比较有代表性的国产超级计算机系统均使用国外CPU,如上海超级计算机中心使用的曙光4000A超级计算机,采用2560颗AMD皓龙CPU,运算速度达10万亿次;荣获2
[焦点新闻]
DSCope虚拟示波器评测
由DreamSourceLab开发设计的DSCope,是一款具有CNC一体成型金属外壳的便携式虚拟示波器。具有11*7.4*1.6cm的超迷你外观尺寸,可以轻松的放进衬衣口袋。而且同时具有50MHz模拟带宽和200MHz最高采样率的准专业级技术指标,足以应对普通的测试测量场景。通过USB接口连接到PC就可以做为一台全功能的示波器来使用。 DSCope虚拟示波器性能 简单的测试了一下性能,用STM8的时钟输出功能在一个IO上输出CPU的时钟,因为只有一个时钟输出引脚,所以再用一个IO翻转,不加delay,同时测两路波形,红色为时钟输出,绿色为IO翻转 时钟输出16M时,已经测不出来了 上位机有一些很方便的功能能,比
[测试测量]
基于ETX的车载计算机模块的设计
1   引言 在新型驼峰无线机车信号系统中,机车主机是机车设备的神经中枢,在自动化控制过程中需实时的进行数据通讯和处理,必须具有多通讯接口、平台稳定,环境适应强等特点。本文提出了一种基于ETX的车载计算机模块的设计方法,通讯接口扩至六个串口、三个CAN口,在应用中满足了高低温、潮湿、振动、静电以及电磁干扰等使用环境的要求。 2   系统设计 2.1   硬件组成 ETX(Embedded Technology Extended嵌入式技术延伸)嵌入式计算机模块具有完整的PC功能和高效的CPU性能,为嵌入式应用提供完美的解决方案。在系统设计中采用主控制器为ETX工控模块,其核心CPU为赛扬433 CPU。它能提供VGA
[嵌入式]
三种芯片材料出奇招 让量子计算机跨越应用“冰山”
    经过60年的发展,计算机已变得更小更快,价格也越来越便宜。但硅基晶体管的尺寸和运算速度已接近极限的边缘,如何使传统计算机突破上述极限,研究人员似乎已计穷智竭。   为了解决这一问题,科学家们开始寻求用基于光子的量子计算机取代传统硅基计算机。量子计算机能更快执行各种复杂计算,研究生物系统,创建加密和大数据系统,解决许多涉及多种变量的难题。   但现有量子计算技术中,一些前沿性研究需要将材料冷却到绝对零度(-273.15℃)左右,这阻碍了量子计算机从理论到实用的进程。美国斯坦福大学电子工程系教授伊莲娜·沃科维克带领其团队,近日分别在杂志上发表了3篇论文,宣称他们已经研制出能在室温下操作的量子芯片材料,包括一种量子点、二种“色心
[半导体设计/制造]
特斯拉全自动驾驶(FSD)计算机及芯片简介
自动驾驶 Autopilot FSD是特斯拉最核心的应用软件。可以把其软件收入组成分为三块,具体而言: 1)Autopilot FSD(Full Self-Driving)完全自动驾驶选装包。特斯拉著名的自动驾驶的功能,也可以说是特斯拉汽车的灵魂。消费者付费激活后,可以享受到包括自动泊车、自动辅助导航驾驶、智能召唤等在内的高级自动驾驶功能,而且后续可以通过 OTA 空中软件持续升级自动驾驶能力。2020 年 7 月 1 号,其价格已经上涨至 8000 美元/套(国内 64000 元/套)。 2) OTA 付费升级。特斯拉此前对于软件的 OTA 升级基本上是以免费的形式提供的。2019年以来,特斯拉开始积极尝试 OTA 付费
[汽车电子]
特斯拉全自动驾驶(FSD)<font color='red'>计算机</font>及芯片简介
研祥inside:嵌入式特种计算机定位之路
英特尔的成功大多源自在PC市场的成绩,在消费者心中的地位不可动摇,许多新品牌无数次挑战,均以失败而告终。然而研祥没有选择PC市场,而是以一种“嵌入式特种计算机”的定位出现,避免了与英特尔的正面竞争,但其推出的“研祥inside”却足以形成与“Intel inside”形成并列地位,稳坐特种计算机市场交椅。 在行业壁垒不断打破、产品同质化越来越严重的今天,品牌的差异化已经成为企业参与品牌竞争的核心。只有让产品成为品牌,并形成自己独特的个性,才能使企业的产品脱颖而出。 研祥通过对自身产品在特殊性能及个性差异上的商业性决策,通过“研祥inside”一个小小的标志,建立一个与众不同的品牌形象,这种品牌形象代表一种可靠
[嵌入式]
可靠量子计算机研发获重大突破,十年内量子超算或将出炉
图片来源:《物理评论B》 美国微软公司量子部门的一组研究人员在创建可靠且实用的量子计算机方面取得了第一个里程碑式突破。最新发表在《物理评论B》杂志上的论文中,研究小组描述了这一里程碑式突破以及他们在未来25年内建造可靠量子计算机的计划。 量子超级计算机不但要能解决经典计算机无法解决的问题,还要能够扩展以解决当今世界面临的最复杂问题,它必须兼具高性能以及可靠性。 研究团队此次设计出了一种新方法来表示具有硬件稳定性的逻辑量子比特。据报道,该装置可诱导以马约拉纳零模态为特征的物质相——费米子的类型。研究团队还报告说,这些设备已显示出足够低的无序性,可通过拓扑间隙协议,证明该技术是可行的。 微软在其公告中表示,他们已经
[网络通信]
可靠量子<font color='red'>计算机</font>研发获重大突破,十年内量子超算或将出炉
工业控制计算机红外线遥控键盘的设计
0. 引言 对于工业控制微机系统来说输入设备键盘几乎是必不可少的。在按键数目较少时,一般直接利用按键控制接口线的高低电平来表示,因此需要相应的接口支持,由于单片工业控制微机系统接口线数目有限,为了减少占用接口线常常采用一键定义多功能,但这又增加了软件的复杂性;在按键数目较多时,则大多采用动态扫描的方式构成键盘矩阵,这种键盘虽然结构原理简单,驱动程序易于设计,但是在具体实现时往往需要花很多的时间去设计印刷电路板、考虑面板布局,而且在硬件资源比较紧张时,还要考虑扩充I/ O 口,从而使得电路变得越来越复杂。 2. 系统简介 本文介绍一种利用红外线发射装置作为工业控制计算机输入键盘的接口原理和实现方法,该接口可以最大限度地减少对单
[单片机]
工业控制<font color='red'>计算机</font>红外线遥控键盘的设计
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新测试测量文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved