可重构电子设计自动化平台的设计与实现
2015-02-22李瑞娟陆大同
李瑞娟 陆大同
(1.柳州职业技术学院,广西 柳州 545006;2.百色职业学院,广西 百色 533000)
电子设计自动化(英文简称 EDA,全称为:Electronic Design Automation),它是一种集成计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)等技术的设计平台。该平台是对传统的电子设计方法、工具等进行彻底的变革与创新的产物,它的出现推动了EDA的快速发展。作为一种设计平台,EDA具有良好的通用性,设计者可以在EDA软件平台上,利用硬件描述语言VHDL完成项目的整体设计工作,通过计算机自动地完成逻辑编译和化简任务,最后实现项目的优化、布局和仿真。EDA技术的出现,对电子设计领域是一个革新的突破,通过EDA的应用使得电路设计的效率和可操作性得到提高,大大减轻了设计者的劳动强度。
开展EDA实验对提高使用者理解EDA设计的原理和方法、提高EDA应用技术有着十分重要的辅助作用。然而,目前人们在开展各种实验的过程中发现,随着人们需要进行的实验内容和实验种类不一样,所需要的实验平台也完全不同。具体而言,主要分三类实验平台,分别是基于单片机的实验平台、基于DSP的实验平台和基于FPGA的实验平台。这三类实验平台侧重点各不相同:基于单片机的实验平台更多的是为用户提供综合性的计算和控制资源,使得用户理解和掌握微控制器的运行原理和能够完成的基本的控制功能。基于DSP的实验平台更多地是为用户提供高性能的计算服务,使用户能够实现诸如图像处理、高性能计算等一些典型的应用服务。而基于FPGA的实验平台则主要为用户提供丰富的可编程逻辑资源,使用户能够根据实际的应用需求灵活地开发各种组合或者时序逻辑电路,完成特定的应用需求。然而,在这三类实验平台中,其完成的功能和平台结构有很大的相似性。为了提高实验平台的利用率,可以利用单片可编程逻辑器件强大而丰富的计算资源和控制资源,开发设计可重构的EDA实验平台,以满足用户对这三类不同的实验平台的应用需求。
1 平台组成结构
根据上述的实际情况,本文设计如图 1所示的可重构EDA实验平台,在该实验平台中包含两片FPGA芯片分别充当主处理器和从处理器的功能,在FPGA芯片外围包括由存储芯片、两片配置存储芯片、线号驱动电路、LCD接口、LED接口、键盘接口、鼠标接口、RS232接口、I2C接口、SPI接口、网线接口、A/D转换芯片以及JTAG电源模块[1]。
从图1可看出,可重构EDA实验平台从各芯片和电路模块的连接关系,首先主处理芯片和从处理芯片之间通过IO接口实现数据的传输和交换,主 FPGA芯片主要完成可重构EDACM平台中的主要的计算和控制任务,从处理芯片主要完成各种接口信号的数据结构格式转换及数据锁存等功能,因此在硬件连线上主处理FPGA芯片分别连接主存储器A/D转换芯片、从处理FPGA芯片。
而从处理FPGA芯片连接的功能模块包括有驱动电路、LCD接口电路、LED接口、键盘接口、鼠标接口、RS232接口、I2C接口、SPI接口和网线接口,除此之外JTAG接口和两片配置存储芯片分别连接主处理 FPGA芯片和从处理FPGA芯片。JTAG接口为两片FPGA芯片程序下载及更新提供数据访问通道,两片配置存储芯片分别存储主 FPGA芯片和从FPGA芯片的运行程序。
主处理FPGA芯片在运行过程中既可以使用FPGA内部自带的存储区域,也可以通过主存储器存放 FPGA运行过程中所需要的存储空间,因此主处理 FPGA芯片和主存储器之间构成一个最小的核心处理单元,其功能类似于嵌入式实验平台中的处理器和存储器之间的关系。A / D转换芯片为实验平台提供模拟信号向数字信号转换的功能,能够使该EDA实验平台完成一些需要对模拟信号采样和处理的实验应用场合,扩大了可重构EDA实验平台的应用范围。从处理FPGA芯片连接的多种接口电路使得该EDA实验平台能够满足不同的外围接口电路模块的连接和数据访问等功能,为该实验平台通过重构满足多样化的实验应用需求提供支持[2]。
图1 可重构EDA实验平台内部结构图
2 平台工作流程
下面将结合EDA实验平台的工作流程,介绍EDA实验平台的整体工作流程及各功能模块的作用。
第一,当用户需要开展电机驱动实验时,可以通过对可重构EDA实验平台中主处理FPGA芯片和从处理FPGA芯片的程序进行设计和加载。主处理FPGA芯片完成电机驱动控制的主体功能,从处理FPGA芯片则完成将主处理FPGA芯片计算得到的相关控制参数进行格式转换,传输至驱动电路。而驱动电路根据收到的信号进行放大之后,对驱动电机进行控制,从而实现利用可重构实验平台完成电机驱动的实验内容。
第二,当用户需要使用可重构实验平台完成对LCD、LED等典型显示设备进行访问和控制时,可以对可重构实验平台中的主处理FPGA芯片和从处理FPGA芯片分别进行设计,并加载所设计的程序,由主处理FPGA芯片完成对LCD、LED等显示模块的相关数据处理和控制的功能。从处理FPGA芯片则完成从主处理FPGA芯片接收的数据进行格式转换,分别传输至LCD和LED信号接口。其中,将信号传输到LED信号接口时,其控制过程相对简单,只需要将控制信号直接送到LED显示灯的信号线上即可实现对LED显示灯的控制。而对LCD信号的控制则需要在从处理FPGA芯片上开发LCD的接口电路程序,通过可编程逻辑期间运行接口电路程序,实现对 LCD访问接口协议和数据格式的转换,从而实现对LCD的访问与控制[3]。
第三,当用户需要使用可重构EDA实验平台进行数据通信实验时,由用户开发和设计主处理 FPGA程序和从处理FPGA程序。其中,主处理FPGA程序完成数据通信中的数据准备及数据接收后的相关处理工作,而从处理FPGA芯片则完成数据接口格式及信号时序的转换。通过 SPI数据总线协议,从 FPGA接口芯片将需要根据数据访问协议实现对该数据通信访问协议的模拟和实现,使得主FPGA芯片能够按规定的数据访问协议实现相应的数据访问功能。
第四,当用户需要进行图像处理的综合实验时,可以由用户开发主处理FPGA程序,并加载至FPGA芯片中。根据运算规模和计算任务的复杂程度,决定是否需要使用可重构EDA主存储器资源。如果用户开发的图像处理程序相对简单,计算复杂度不高,则该图像处理程序完全在FPGA中完成。其所需要的计算存储空间,由FPGA中的可编程逻辑单元进行模拟实现。如果用户需要完成的图像处理程序相对较为复杂,需要较大规模的存储空间进行支持,则用户设计的图像处理程序可以将主存储器中所提供的存储资源作为访问空间,最终实现图像处理实验的各种计算要求。
第五,当用户需要使用该可重构实验平台完成温度控制相关实验时,可以由用户设计主处理 FPGA程序和从处理FPGA程序,并分别加载至两个FPGA芯片中,通过A/D转换芯片对目标区域温度进行采样,并将采样得到的结果进行数据转换,并传输至主处理FPGA程序根据所收到的温度数值进行相关的控制预处理。得到的控制结果传输至从处理FPGA芯片,由从处理FPGA芯片按照一定的格式转换,最终通过驱动电路送至相关的控制单元,实现温度的连续控制目标[4]。其中,主处理FPGA芯片和A/D芯片之间的连接关系原理关系如图2所示。
图2 FPGA与A/D芯片的连接原理图
3 平台性能分析
上述设计的可重构EDA实验平台的组成结构及所提供的功能,在性能方面相对于目前传统的EDA实验平台具有以下优势:
(1)实验平台具有更为广泛的应用范围。实验平台能够通过对组重 FPGA芯片功能的重构,使得该实验平台应用特点能够分别满足嵌入式实验平台、DSP实验平台和FPGA实验平台的应用场合,极大地扩大了实验平台的应用范围。
(2)应用上述设计的 EDA实验平台能够同时连接种类多样的外围电路模块,为该实验平台进行多样化的实验内容开设提供了良好的硬件支持。
(3)应用上述设计的重构 EDA实验平台,能够将多种实验内容合并在一个实验平台上进行实验和训练,极大地降低了用户购买实验平台的成本,提高了实验平台的应用效率。
4 总结
目前,常见的EDA试验平台往往是采用基于可编程逻辑器件设计的实验平台,这种试验平台其设计目的是为了实现一些常见的EDA实验的验证及训练功能,为用户学习和掌握EDA程序编写、调试及设计相关的模拟和训练环境,使得用户理解EDA设计的基本原理,掌握EDA设计的基本方法和技巧。由于当前EDA实验平台在设计上主要是从EDA开发和设计所面临的问题而提供相应的实验及训练环境,因此目前的EDA实验平台一般只适合于对可编程逻辑器件学习、训练和研究使用。然而目前用户在进行EDA学习过程中往往也会涉及到嵌入式实验和图线处理等相关的实验和应用,而为了开展这些相关实验,用户往往需要实验平台来完成,其中嵌入式实验平台更多的是强调为用户提供丰富的外侧接口和控制资源, 使得用户能够在这种平台中完成一些复杂的控制实验的功能,而针对图像处理的实验一般需要基于DSP的实验平台,使得用户能够开发及实现高效能的图像处理程序,针对目前EDA实验平台所能够提供的功能相对单一,应用范围比较局限的情况,本文提出一种可重构的EDA实验平台,充分利用EDA实验平台中FPGA可重构的特性,针对用户的不同需求将 FPGA进行重构设计,使其在用户不同的应用场合中发挥不同的控制或计算作用,将EDA实验平台改造为具有嵌入式实验平台、DSP实验平台等多种功能特性的可重构实验平台。
[1] 潘梅勇,李瑞娟.可重构的 EDA 实验平台[P].中国:CN203149961U, 2013-08-21.
[2] 黄力.高职嵌入式系统教学与实践研究[J].柳州职业技术学院学报.2010,10(1):81-84
[3] 潘梅勇,李瑞娟.基于ChipScope的EDA调试过程辅助分析装置[P].中国:CN203149573U,2013-08-21.
[4] 潘梅勇,李瑞娟.基于FPGA芯片的EDA综合实验平台[P].中国:CN203149572U,2013-08-21.