lunwenWord文件下载.docx
- 文档编号:17652635
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:11
- 大小:761.58KB
lunwenWord文件下载.docx
《lunwenWord文件下载.docx》由会员分享,可在线阅读,更多相关《lunwenWord文件下载.docx(11页珍藏版)》请在冰豆网上搜索。
VHDL的英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。
1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。
此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。
现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。
VHDL主要用于描述数字系统的结构,行为,功能和接口。
除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。
VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分。
在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。
这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。
2.3Protel简介
Protel是PROTEL(现为Altium)公司在20世纪80年代末推出的CAD工具,是PCB设计者的首选软件。
它较早在国内使用,普及率最高,在很多的大、中专院校的电路专业还专门开设Protel课程,几乎所在的电路公司都要用到它。
早期的Protel主要作为印刷板自动布线工具使用,其最新版本为ProtelDXP,现在普遍使用的是Protel99SE,它是个完整的全方位电路设计系统,包含了电原理图绘制、模拟电路与数字电路混合信号仿真、多层印刷电路板设计(包含印刷电路板自动布局布线),可编程逻辑器件设计、图表生成、电路表格生成、支持宏操作等功能,并具有Client/Server(客户/服务体系结构),同时还兼容一些其它设计软件的文件格式,如ORCAD、PSPICE、EXCEL等。
使用多层印制线路板的自动布线,可实现高密度PCB的100%布通率。
Protel软件功能强大(同时具有电路仿真功能和PLD开发功能)、界面友好、使用方便,但它最具代表性的是电路设计和PCB设计。
第三章设计任务与设计要求
3.1设计任务
主芯片设计:
实现步进电机双三拍控制
硬件原理图和PCB图设计:
生成硬件原理图和PCB板图
3.2设计要求
步进电机作为一种电脉冲—角位移的转换元件,由于具有价格低廉、易于控制、无积累误差和计算机接口方面等优点,在机械、仪表、工业控制等领域中获得了广泛的应用。
三相步进电动机,其定、转子铁心均由硅钢片叠成。
定子上有6个磁极,每两个相对的极绕有一相控制绕组,所以定子共有三相绕组。
转子是4个均匀分布的齿,齿宽等于定子磁靴的宽度,转子上没有绕组。
工作时,各相绕组按一定顺序先后通电。
双三拍的通电方式为:
AB-BC-CA-AB(电动机为顺时针旋转)或AB-CA-BC-AB(电动机为逆时针旋转)。
采用双三拍通电方式后,先接通
A、B两相定子绕组,接着断开A相接通C相,使B、C两相定子绕组同时通电,接着断开B相接通A相,使A、B两相定子绕组同时通电,并依次循环。
这种方式下,定子三相绕组需经过三次切换才能完成一个循环,故称为“三拍”。
3.3设计芯片、软件选用
主控芯片采用Altera公司的MAX7000S系列CPLD。
芯片仿真软件采用Altera公司配套的MAX+PLUS
,硬件原理图和PCB图设计采用Altium公司的ProtelDXP2004。
在硬件中使用的逻辑门器件是Motolora公司的器件。
3.4设计方案
㈠主控芯片设计
1、真值表
步进电机双三拍环形分配器的真值表如下:
CLK
DIR
RESET
工作状态
×
保持
升沿
1
初始状态
0
电机正转
升沿
电机反转
外部时钟端输入端CLK没有上升沿,步进电机工作状态为保持,不发生变化;
当外部时钟输入端CLK有上升沿,复位信号RESET为’1’,输出初始状态,为’0’时,正常工作状态,其中由步进电机正反转标志信号DIR控制电机的正反转。
一般状态机真值表如下:
当前状态
次态
输出PHASE[2。
。
0]
DIR=1
DIR=0
S0
S1
S2
011
110
101
2、芯片管脚分配
CLK:
外部时钟端输入,1MHz晶振DIR:
步进电机正反转标志
RESET:
复位信号标志,采用同步复位
PHASE0:
三相步进电机的A相绕组PHASE1:
三相步进电机的B相绕组
PHASE2:
三相步进电机的C相绕组
3、总体设计
本设计采用自顶向下的设计思想,采用了VHDL语言的设计方法。
芯片设计只有一个模块,STEPMOTOR模块,此为芯片的主控制模块。
设计原理图如下所示。
4、主控模块
此模块为芯片设计的核心,此模块采用一般状态机的VHDL设计方法。
可使用两个进程来描述,一个进程描述时序逻辑,包括状态寄存器的工作和寄存器状态的输出;
另一个进程描述组合逻辑,包括进程间状态值的传递以及状态转换值的输出。
S0、S1、S2分别对应为步进电机工作时的三次切换的状态,在组合逻辑进程中,根据时序逻辑进程中变量CURRENT_STATE带出的状态值确定输出值,并由组合变量PHASE[2..0]输出给三相步进电机的三相绕组。
主控程序流程图如下:
VHDL语言程序代码:
----步进电机双三拍环形分配器设计的实现
----设计者:
张毅
----设计时间:
2009年6月
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_ARITH.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYSTEPMOTORIS
PORT(CLK,RESET,DIR:
INSTD_LOGIC;
PHASE:
OUTSTD_LOGIC_VECTOR(2DOWNTO0));
ENDENTITYSTEPMOTOR;
ARCHITECTUREARTOFSTEPMOTORIS
TYPESTATESIS(S0,S1,S2);
----定义STATES为枚举型数据类型
SIGNALCURRENT_STATE:
STATES;
BEGIN
PROCESS(CLK)----时序逻辑进程
IFCLK'
EVENTANDCLK='
1'
THEN----当测到时钟上升沿时转换至下一状态
IFRESET='
THEN
CURRENT_STATE<
=S0;
----同步复位
ELSE
CASECURRENT_STATEIS
WHENS0=>
IFDIR='
THEN
CURRENT_STATE<
=S1;
ELSE
=S2;
ENDIF;
WHENS1=>
WHENS2=>
CURRENT_STATE<
ELSE
ENDIF;
WHENOTHERS=>
CURRENT_STATE<
----由CURRENT_STATE将当前状态值带出此进程,进入下面的进程
ENDCASE;
ENDPROCESS;
PROCESS(CURRENT_STATE)----组合逻辑进程
BEGIN
CASECURRENT_STATEIS----确定当前状态的状态值
WHENS0=>
PHASE<
="
011"
;
----对应S0的译码输出”011”
WHENS1=>
110"
----对应S1的译码输出”110”
WHENS2=>
101"
----对应S2的译码输出”101”
ENDCASE;
ENDPROCESS;
ENDARCHITECTUREART;
第四章硬件原理图和PCB板设计
4.1硬件原理图
硬件原理图的设计是PCB图设计的基础,也是硬件设计的关键所在。
在Protel软件中可以调用各种公司的元件库,其中就有我们我们主芯片使用的Altera公司的MAX7000S系列CPLD。
先在库存中加载上述库,然后调用我们芯片设计完成所使用的CPLD芯片(如EPM7032)放置在原理图上。
晶振时钟的设计是外围设计的重点。
我们采用1kHZ的晶振。
参考数字电子设计手册,其参考设计原理图如下所示。
基本形式是晶振与一个电容并联。
晶振与电容串联还加上非逻辑门是为了减少频率干扰。
按钮设计,参考数字电子设计手册,其参考设计原理图如下所示。
外部输出接步进电机MotorStep如下图所示,PHASE0、PHASE1、PHASE2三个输出端分别接步进电机的三相绕组,并采用Y型接法。
4.2PCB图设计
PCB设计是将电子原理设计转化为物理实现的一道环节。
由原理图生成的网络报表辅助生成PCB板图。
4.3芯片管脚分配图
芯片采用了ALTERA公司的EPM7064SLC44-6芯片。
此CPLD芯片具有44个管脚,4个逻辑单元,64个逻辑宏。
步进电机双三拍环形分配器设计用去了1个逻辑单元,占资源总数的25%。
其中39-41号管脚用于输出信号控制步进电机,43号管脚是CLK信号输入,4号管脚是正反转DIR信号输入,5号管脚是RESET复位信号输入。
4.4波形仿真图
当外部时钟信号CLK有上升沿时,电动机状态发生改变。
当RESET信号为’1’时,将初始状态打入器件,即将CURRENT_STAT赋状态值S0,并且是同步复位,当RESET信号为’1’而且CLK时钟信号端有上升沿的情况下发生复位。
DIR为’1’,电动机正转S0-S1―S2―S0;
DIR为’0’,电动机正转S0-S2―S1―S0。
4.5时序分析图
4.6理图硬件原理图
4.7PCB图
第五章设计总结
通过本次实践,进一步加强了我对VHDL语言和PROTEL的运用,本次实验完成了CPLD的步进电机双三拍环形分配器的设计,采用一般状态机的VHDL描述方法进行硬件描述,用MAX+plusⅡ软件进行时序仿真、功能仿真,并ProtelDXP2004进行原理图设计和PCB板图设计,最终完成步进电机双三拍环形分配器的设计。
让我真正将理论运用于实践中,大大提高了我的软件运用能力,为未来更复杂的设计奠定了扎实的基础。
第六章参考文献
1.谭会生,张昌凡EDA技术及运用西安电子科技大学2004
2李珩,杨杉,欧大生.电路设计与制板.西安:
西安电子科技大学出版社2004
3潘松,王国栋。
VHDL实用教程,成都:
电子科技大学出版社,2000
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- lunwen