首页 > 范文大全 > 正文

基于LabVIEW的数字虚拟芯片构建方法及应用

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于LabVIEW的数字虚拟芯片构建方法及应用范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘 要:基于labview的信号处理功能,构建数字逻辑虚拟芯片,进而形成虚拟芯片库,在系统中便认进行各类逻辑图的连接及数字电路原理图设计,分析数字电路的逻辑功能及开展基于虚拟仪器的数字电路实验和教学,还能拓展虚拟仪器新的应用领域。讨论了基于LabVIEW的数字电路虚拟芯片构建方法应用方法。关键词:虚拟芯片; 虚拟仪器; 数字逻辑; 仿真系统

中图分类号:TN911-34; TP216+.3 文献标识码:A

文章编号:1004-373X(2010)16-0181-03

Design Method and Application of Digital Logic Virtual Chip Based on LabVIEW

HUANG Jin-wen, WANG Shan-fa, WANG Xiao-min

(Physics Department, Baoshan College, Baoshan 678000, China)

Abstract: The virtual chips were structured and the database of the virtual chips was formed on the basis of the signal processing function of LabVIEW. With the virtual chips, digital logic circuit diagrams can be designed, even the function analysis of logic circuits or experiment for the logical circuit teaching can be done. It is a new application domain of LabVIEW. The design method of the virtual chipis researched based on LabVIEW.

Keywords: virtual chip; virtual instrument; digital logic; simulation system

0 引 言

虚拟仪器LabVIEW目前已广泛应用于测试领域,其出发点和归宿是“软件化的真实仪器”。LabVIEW同时又是一个优秀的仿真系统,但真正处于仿真目的使用的并不多见,本文提出数字“虚拟芯片”概念,并基于LabVIEW实现仿真运用。

所谓“虚拟芯片”,是在充分利用LabVIEW图形化语言风格和强大信号处理功能的基础上,设计具有一定显示界面的虚拟输入/输出端子、能完成相应的数字逻辑运算功能或数字信号处理功能的计算机程序,也就是LabVIEW的VI。应当说这是新时期数字逻辑电路设计、实验或教学的一种新举措,基于LabVIEW的数字虚拟芯片和原理图设计与其他仿真系统相比,不但有自身的特点,也是对虚拟仪器系统LabVIEW应用新领域的拓展和补充[1-2]。

1 基于LabVIEW实现虚拟数字逻辑电路仿真的可行性及优点

由前面板实现数字电路的各种控制和显示,由程序流程图实现数字电路的逻辑运算功能,是基于虚拟仪器LabVIEW进行数字逻辑电路仿真设计的基础[3]。LabVIEW的前面板提供了大量数值、布尔控件。后面板提供了大量的函数模块,使用这些函数可以很方便地调用或设计出各种门电路、编码器、译码器、运算器、存储器、触发器、定时器、ADC/DAC等数字电路设计中常用的器件模块。在数字电路中,高电平和低电平2种逻辑状态可用前面板中的布尔控件提供;而电路设计中的各种模拟量可以用各种数值型控件及函数信号发生器产生和提供[4-5]。

基于LabVIEW实现虚拟数字逻辑电路的可行性及优点,还表现在以下几方面[6-7]:

(1) 可充分使用LabVIEW强大的输入/输出控件资源

(2)LabVIEW中的图形化语言风格适合数字电路的逻辑图构建:

布尔控件图标与数字逻辑门电路符号相近;图形化的G语言风格适合逻辑图的连接。

(3)可开发通用或专用的数字虚拟芯片库(模块库)

(4)LabVIEW虚拟仪器可实现与外部数据的交换

2 基于LabVIEW的数字虚拟芯片设计方法

下面从一个有异步复位、置位端子的虚拟触发器单元设计开始,以LabVIEW中逻辑运算VI作为虚拟“门电路”单元,构建通用数字逻辑芯片、计数器74160虚拟“芯片”,讨论并实现该虚拟芯片的仿真应用。

2.1 具备异步复位、置位端的虚拟触发器设计

低电平有效的异步置位、复位功能的虚拟JK触发器特性方程可表示为:

Qn+1=RD(JQn+KQn+SD)(1)

当满足约束条件RD+SD=1,即RD、SD不同时为有效电平(逻辑值0)时,这2个端子可作为异步置位端(SD)和异步复位端(RD),即有:

RD=0且SD=1时,Qn+1=0,

RD=1且SD=0时,Qn+1=1,

RD=1且SD=1时,Qn+1=JQn+KQn

使用过程中应当注意满足约束条件(当RD+SD=0时,始终有Qn+1=0)。

根据式(1)构建的低电平有效的异步置位、复位功能的JK触发器LabVIEW后面板如图1所示,其异步置位、复位端动作不受同步CP控制,直接实现操作(触发器状态直接被置位或复位)。为实现CP输入下降沿有效的动作方式,程序中引入了条件结构控制。当无有效CP边沿输入时,输入触发器端子的数据是J=K=“false”,等价于J=K=0,触发器处于保持状态;只有当有效CP下降沿输入时,触发器才接收输入控件J,K的数据,实现相应的动作。图1中左下角部分程序就是实现CP下降沿输入有效的控制程序部份。

图1 异步置位、复位功能的虚拟JK触发器后面板

定义图1中VI的各输入、输出端子,编辑好相应的VI图标,将其保存为一独立VI文件,最后得到对应的VI图标及连线如图2所示。这样的VI图标即可看作一个虚拟触发器。

图2中2个图标为同一VI在LabVIEW中的2种不同显示方式,且2个图标为同一VI分别以不同文件名保存的2个文件。(程序完全相同)

2.2 基于虚拟JK触发器及LabVIEW虚拟“逻辑门”构建74161芯片

虚拟仪器LabVIEW中的逻辑运算VI,可以完成各种基本逻辑运算,在仿真数字逻辑电路时可当作虚拟的“门电路”直接使用[8-9],部份图标如图3所示。

图2 异步置位、复位功能的虚拟JK触发器图标及连线端子

图3 LabVIEW中的逻辑运算VI

集成计数器74161的内部逻辑图如图4所示[10]。

图4 74161逻辑图

它是4位二进制同步加法计数器,有异步清零、预置数端子和两个使能控制端子,各端子的含义如下[10]:

(1) RD:异步清零端,低电平有效

(2) LD:预置数使能控制端,低电平有效

(3) 预置数据输入端:A、B、C、D

(4) CP:时钟输入端,上升沿有效

(5) 状态输出端:QA~QD

(6) RCO:进位输出

74161的逻辑功能[10]:

(1) 异步清零功能:当RD=0时,不管其余输入端状态如何,计数器均被置零,且不受CP控制,故称为“异步清零”。