动态电能质量监测仪的设计与实现 (三) 3.2.4逻辑控制单元CPLO 可编程逻辑器件不仅使系统设计趋于小型化、集成化和高可靠性,而且器件所具有的用户编程特性,将大大地缩短系统设计周期,减少设计费用,降低设计风险。不仅如此,部分器件除了具有用户可编程能力,还具有简单的在线可编程(sIP)能力,这就为工程师进行电子系统设计和开发提供了可实现的最新手段。采用系统内可再编程技术,使系统内硬件的功能可以像软件一样被编程配置,从而可以实时地进行灵活和方便的更改和开发。这种“软硬件”的全新系统设计概念,使新一代电子系统具有极强的灵活性和适应性,它不仅使电子的适应能力,为实现许多复杂的信号处理和信息处理提供新的思路和方法。可编程逻辑器件及其应用是70年代诞生的一门新兴技术。PLD具有集成度高、可靠性强和可重复编程的优点,已广泛用于计算机硬件、工业控制、智能仪表、数字电路系统、家用电器等各个领域PDL器件的应用不仅简化了电路设计、降低了成本、提高了系统的可靠性和保密性,而且给数字系统的设计方法带来了革命性的变化PLD器件包括PRoM(可编程序的只读存储器)、PAL(可编程逻辑阵列)、GAL(门阵列逻辑)、PLD、FP以刚]。CPDL是复杂的(ComPlxe)PLD,专指那些集成规模大于1000门以上的编程器件,这里的门是指等效门(E叫ivalnetGate),相当于4只晶体管。其基本结构与GA工(通用逻辑阵列)无本质区别,可以认为CPLD是将多个可编程阵列逻辑(PAL)器件集成到一个芯片上。CPLD器件中至少含有三种结构:可编程逻辑功能块(FB);可编程FO单元;可编程内部连线。部分CPLD还集成了RAM、FFIO或双口RAM等存储器,以适应DSP应用设计的要求。现场可编程逻辑门阵列FpGA(Fieldporgra“unableGateArray)是20世纪80年代中期出现的一种新型可编程逻辑器件。FPGA采用类似于俺膜可编程门阵列的结构,并结合可编程逻辑器件的特性,使它既继承了门阵列逻辑器件密度高和通用性强的优点,又具备可编程逻辑器件的可编程特性。它的结构可以分为三部分:可编程逻辑块CLB(ConfiugrbaelLogioB10kc)、可编程FO模块IoB(Inpu灯oPututBloek)和可编程内部连线pl(por『mmabalelnterconnect)。表3.ICPDL和「pAG结构、性能对照FLEX600O系列为大容量设计提供了一种低成本可编程的交织式门阵列。该器件由逻辑单元(LE)组成,有可重构的SRAM单元,能使设计人员在设计初期直到设计测试过程中可以灵活、迅速地更改设计。此外,FLEX600O能够实现在线重新配置并提供多电压Fo接口操作[44]。本设计中就采用14-4PniTQFP封装的FLEX6016A,拥有16000个逻辑门即1320个等效逻辑单元,有117个可编程输出脚,完全满足该监测系统的逻辑控制和数字锁相倍频的要求。 3.2.5数据和程序存储单元 这里介绍的数据和程序存储单元包括三个部分,初始程序存储区FLAHSMEMORY用于存放DSP的执行程序,在DSP上电复位后从FLASHMEMORY中BootLodaer到SRMA中或DSP的片内R户扒中进行高速运行;运行程序存储区SRAM,用于存放DPS的运行程序或数据;另一个就是计算结果存储区双口RAM(DARM),用于存放运算结果,也作为工AS总线通讯时的数据存放区。由DSP构成的数字信号处理系统中程序存储区是必不可少的,但存储器有多种选择,如存储初始程序的有RMO(只读存储器)、FLAHsMMEOYR(闪存)等,本文采用了FLAHSMEMOYR,这也是数字信号处理系统发展的趋势。作为计算结果的存储区本文选择了DRAM,主要是考虑可以方便通讯直接读取,而不用DSP作为中间周转,上位机可以通过工AS总线与DPS建立通讯后直接在DRA扒中读取数据,而DSP只需要将计算结果放入DARM中,并处理通讯连接在建立通讯连接后就交出DRAM的控制权,由SIA总线对DRAM进行读写。 3.3软件结构 电能质量监测与分析系统中软件设计主要包括两个方面,一个是CPDL的硬件结构设计,另一个是DSP的程序设计。CPDL的设计采用ALTEAR公司的可编程器件开发软件MAX+PLUSn进行设计,可以通过创建图形设计文件、创建HVDL文本设计文件或AHDL文本设计文件。MAX十PLUSn的设计过程如图3.2所示。CPLD的程序设计在硬件结构中已经就各功能模块分别介绍了。 电能质量监测与分析系统的主要计算功能都由DSP完成,DSP不但要计算各项电能质量指标,还要通过sIA总线与上位机交换数据。另外DSP还要控制系统各部分的运行。因此DSP的程序主要包括三个部分:系统主程序、数据采集和处理子程序和通讯子程序。其中,系统主程序完成程序的引导,硬件的初始化和硬件的自检循环等功能;数据采集和处理子程序于数据采样的控制和各项电能质量指标的计算;通讯子程序则完成DSP模块与上位机的通讯和数据交换。由于DSP单元的软件结构较为复杂,涉及的算法较多,故采用了模块化、由顶向下、逐步细化的结构化程序设计方法。整个软件流程如图3.3所示。四力I大学工程硕士学位论文(2005)工程领域电气工程由于电能质量监测与分析系统中,数据采集与数据处理是同时进行的,互不影响。因此在数据采集与处理子程序中主要包括DSP从FFIO读取数据和对数据的处理。DPS从FFIO中读数的采用直接存储器访问方式(D撇)方式[5lJ,DMA可以在DSP运算时使用外部地址和数据线传输FIOF中的数据。这样就能使采样和数据处理同时进行,互不冲突,实现无缝同步采样分析。FFIO较双口RAM简单的是只有数据线,而没有地址线,采用顺序储存、先进现出的方式。F工F0与DSP的连接如图3.4所示。 DMA传输数据包括两个操作5]ll:从一个储存位置读出和写入到一个储存位置。而D做控制器能读出和写入到DPs储存器的任一位置,包括所有的储存器映射的外围设备。D撇操作由四个寄存器控制,分别是总体控制寄存器、源地 址寄存器、目的地址寄存器、传输计数寄存器。D撇的运行情况如图3.5所示。通讯子程序的结构框图如图3.6所示,在DPS与上位机之间我们采用了双口RAM(DAUL一POTRSTATICRAM)和工SA总线进行连接,硬件接口电路前一节己经介绍过了。通讯软件上设计了基于校验码通讯协议,协议如下: 1.在进行通信之前,上位机发送呼叫码,DSP在巡查DRAM时接收到呼叫码之后发送应答码。呼叫码和应答码都正确后,才能进行正常的数据传送。 2.上位机发送的给定命令格式和一般的命令格式和一般的命令格式,以及DSP向上位机发送的数据格式见表3.2。 3.DSP接收到数据之后,首先查询异步串行通讯的接收错误中断标志,如果有错误发生,则本次接收的数据作为无效数据。 4.所有接收数据,先判断校验码,如校验码错误,则接收数据无效。保保护断点点
|