论文部分内容阅读
1 前言
EDA课程是高校电子类教学及实验的最重要的技术基础课程,EDA课程概念性、实践性、工程性极强,教学中应理论联系实际,并要结合现代计算机仿真技术和具体的项目实践。目前,大多数高校还在采用成套的CPLD/FPGA实验箱来开展EDA课程的实验教学。而实际上,在基于Verilog HDL或VHDL硬件设计语言的学习上,CPLD与FPGA的开发是完全相同的,其中CPLD价格较低。为了激发学生学习的主动性,笔者针对实验教学的创新性特色,开发设计出一套适用于高校EDA课程的CPLD教学实验系统。
2 实验系统的硬件设计
笔者选用Lattice公司的ispMACHTM4000系列CPLD设计了教学实验系统,该系列CPLD是Lattice器件中最完善也是性价比最高的。系统整体构架如图1所示,分为9个部分:CPLD系统核心单元、数码显示界面、键盘输入、扩展接口、继电器单元、蜂鸣器、LED模组及RS232接口和电机驱动模块。
如图2所示,CPLD系统核心单元包括CPLD芯片、电源管理模组及JTAG。这里采用CPLD LC4032V作为系统核心。LC4032V是超快低功耗CPLD芯片,可达到400 MHz工作频率,内嵌E2PROM配置空间。
LC4032V需要3.3 V供电电压。电源管理模组采用USB口供电,经LDO芯片输出 3.3 V电压,输出电流可达800 mA,精度在±1%以内,同时还有电流限制和热保护功能,输出端有两个10 uF的钽电容来改善瞬态响应和稳定性。
程序的下载及调试采用Lattice公司提出的标准10脚JTAG仿真接口,JTAG信号的定义简单,与LC4032V连接的各信号线接4.7 K上拉电阻。
2.2 RS232接口
CPLD实验系统与PC机之间的通信实验是用串口实现的,实验系统上没有串行控制器,本实验项目在CPLD中做一个RS232通信协议的收发器,将晶振换为11.0592 MHz, 以波 特 率 为9 600、8位数据位、1位停止位的格式进行数据传输。由于系统是3.3 V系统,所以使用了SP3232E进行RS232电平转换,SP3232E是3 V工作电源的RS232转换芯片。
2.3 电机驱动模组
在CPLD教学实验系统上可以设计制作一个10位的D/A转换器。设置一个10位时钟计数器并对时钟进行计数,同时读取该时刻的数字量并与计数寄存器的值相比较。若计数值小于读取的数字量,则在电机驱动接口上输出高电平,否则输出低电平。由于数据量的不同,输出高低电平的时刻也不同(占空比),从而达到控制电机转速快慢的目的[1]。
这里输入的数字量分别由按键KEY0和KEY1来调节,其中KEY0进行加1的控制,KEY1进行减1的控制,转换后的结果送到电机控制板上,可以观察到电机的转速由快到慢或由慢到快在变化。
同时,实验系统上扩展有CPLD芯片所有引脚,可接入单片机系统。另外配备多种扩展电路板,如液晶显示、语音模块等,以搭配实现更多复杂的实验项目。
3 实验流程简介
LC4032V芯片使用Lattice公司最新推出的一套EDA软件ispLEVER。设计输入可采用原理图、硬件描述语言、混合输入3种方式。能对所设计的数字电子系统进行功能仿真和时序仿真。软件中的Constraints Editor工具允许经由一个图形用户接口选择I/O设置和引脚分配。软件包含Synolicity公司的“Synplify”综合工具和Lattice的ispVM 器件编程工具[2]。
设计语言采用Verilog HDL语言。一般V语言采用文本文档编辑源文件,采用ispLEVER综合软件生成扩展名为JED的烧录文件,通过并口由JTAG下载线将烧录文件下载到CPLD器件,结果从I/O端口反映出来,详细的流程如图3所示:
笔者给出一个实验用于实现LED的循环。采用复杂逻辑中常用的Mealy程序状态机StateMachine的设计方法,将LED模组看成是8位的二进制数,控制执行简单的移位的动作。程序烧入CPLD后,按下复位键即复位所有状态,除LED0外,熄灭其他的LED。当按下KEY0或KEY1后,LED即走动,KEY0为从左向右走动,KEY1为从右向左走动。走动的频率从4 MHz的晶振获得,因为4 MHz的频率太高,程序中采用19位的计数器将4 MHz分频得到周期为l30 ms的方波,作为LED走动的时钟,这样就可以看到程序烧录以后的运行情况了。
4 结束语
随着电子设计自动化技术的普及,将EDA技术引入教学实验,不但提高了学生的设计开发能力,也为他们尽快将所学知识应用到社会实践中创造了良好条件。通过课程设计,学生应用先进的编程技术设计系统电路,提高了学习积极性。笔者下一步将研制ARM微控制器与CPLD的一体化实验平台,将最先进的数字电路设计用于教学实验。
参考文献:
[1]周立功等.《单片机与CPLD应用技术》[M].北京:北京航空航天大学出版社,2003
[2]Lattice. ispMACH 4000 High Density PLDs Data Sheet. 2007
EDA课程是高校电子类教学及实验的最重要的技术基础课程,EDA课程概念性、实践性、工程性极强,教学中应理论联系实际,并要结合现代计算机仿真技术和具体的项目实践。目前,大多数高校还在采用成套的CPLD/FPGA实验箱来开展EDA课程的实验教学。而实际上,在基于Verilog HDL或VHDL硬件设计语言的学习上,CPLD与FPGA的开发是完全相同的,其中CPLD价格较低。为了激发学生学习的主动性,笔者针对实验教学的创新性特色,开发设计出一套适用于高校EDA课程的CPLD教学实验系统。
2 实验系统的硬件设计
笔者选用Lattice公司的ispMACHTM4000系列CPLD设计了教学实验系统,该系列CPLD是Lattice器件中最完善也是性价比最高的。系统整体构架如图1所示,分为9个部分:CPLD系统核心单元、数码显示界面、键盘输入、扩展接口、继电器单元、蜂鸣器、LED模组及RS232接口和电机驱动模块。
如图2所示,CPLD系统核心单元包括CPLD芯片、电源管理模组及JTAG。这里采用CPLD LC4032V作为系统核心。LC4032V是超快低功耗CPLD芯片,可达到400 MHz工作频率,内嵌E2PROM配置空间。
LC4032V需要3.3 V供电电压。电源管理模组采用USB口供电,经LDO芯片输出 3.3 V电压,输出电流可达800 mA,精度在±1%以内,同时还有电流限制和热保护功能,输出端有两个10 uF的钽电容来改善瞬态响应和稳定性。
程序的下载及调试采用Lattice公司提出的标准10脚JTAG仿真接口,JTAG信号的定义简单,与LC4032V连接的各信号线接4.7 K上拉电阻。
2.2 RS232接口
CPLD实验系统与PC机之间的通信实验是用串口实现的,实验系统上没有串行控制器,本实验项目在CPLD中做一个RS232通信协议的收发器,将晶振换为11.0592 MHz, 以波 特 率 为9 600、8位数据位、1位停止位的格式进行数据传输。由于系统是3.3 V系统,所以使用了SP3232E进行RS232电平转换,SP3232E是3 V工作电源的RS232转换芯片。
2.3 电机驱动模组
在CPLD教学实验系统上可以设计制作一个10位的D/A转换器。设置一个10位时钟计数器并对时钟进行计数,同时读取该时刻的数字量并与计数寄存器的值相比较。若计数值小于读取的数字量,则在电机驱动接口上输出高电平,否则输出低电平。由于数据量的不同,输出高低电平的时刻也不同(占空比),从而达到控制电机转速快慢的目的[1]。
这里输入的数字量分别由按键KEY0和KEY1来调节,其中KEY0进行加1的控制,KEY1进行减1的控制,转换后的结果送到电机控制板上,可以观察到电机的转速由快到慢或由慢到快在变化。
同时,实验系统上扩展有CPLD芯片所有引脚,可接入单片机系统。另外配备多种扩展电路板,如液晶显示、语音模块等,以搭配实现更多复杂的实验项目。
3 实验流程简介
LC4032V芯片使用Lattice公司最新推出的一套EDA软件ispLEVER。设计输入可采用原理图、硬件描述语言、混合输入3种方式。能对所设计的数字电子系统进行功能仿真和时序仿真。软件中的Constraints Editor工具允许经由一个图形用户接口选择I/O设置和引脚分配。软件包含Synolicity公司的“Synplify”综合工具和Lattice的ispVM 器件编程工具[2]。
设计语言采用Verilog HDL语言。一般V语言采用文本文档编辑源文件,采用ispLEVER综合软件生成扩展名为JED的烧录文件,通过并口由JTAG下载线将烧录文件下载到CPLD器件,结果从I/O端口反映出来,详细的流程如图3所示:
笔者给出一个实验用于实现LED的循环。采用复杂逻辑中常用的Mealy程序状态机StateMachine的设计方法,将LED模组看成是8位的二进制数,控制执行简单的移位的动作。程序烧入CPLD后,按下复位键即复位所有状态,除LED0外,熄灭其他的LED。当按下KEY0或KEY1后,LED即走动,KEY0为从左向右走动,KEY1为从右向左走动。走动的频率从4 MHz的晶振获得,因为4 MHz的频率太高,程序中采用19位的计数器将4 MHz分频得到周期为l30 ms的方波,作为LED走动的时钟,这样就可以看到程序烧录以后的运行情况了。
4 结束语
随着电子设计自动化技术的普及,将EDA技术引入教学实验,不但提高了学生的设计开发能力,也为他们尽快将所学知识应用到社会实践中创造了良好条件。通过课程设计,学生应用先进的编程技术设计系统电路,提高了学习积极性。笔者下一步将研制ARM微控制器与CPLD的一体化实验平台,将最先进的数字电路设计用于教学实验。
参考文献:
[1]周立功等.《单片机与CPLD应用技术》[M].北京:北京航空航天大学出版社,2003
[2]Lattice. ispMACH 4000 High Density PLDs Data Sheet. 2007