苏州科技学院。
课程设计。2023年 6 月 14 日。
摘要。本文介绍了利用行思科技的一款cpld开发套件和微机上的quartusⅱ等软件系统,使用verilog hdl语言输入方法来实现串行通信。
verilog hdl就是在用途最广泛的c语言的基础上发展起来的一种硬件描述语言,是一种以文本形式来描述数字系统硬件的结构和行为的语言,用它可以表示逻辑电路图、逻辑表达式,还可以表示数字逻辑系统所完成的逻辑功能。它是由gda(gateway design automation)公司的philmoorby在2023年末首创的,最初只设计了一个**与验证工具,之后又陆续开发了相关的故障模拟与时序分析工具。2023年moorby推出它的第三个商用**器verilog-xl,获得了巨大的成功,从而使得verilog hdl迅速得到推广应用。
本文简单介绍eda技术的发展史、说明quartusⅱ的使用过程,阐述了单片机与cpld实行最简单的串行通信(spi)相关过程。
关键词: eda(电子设计自动化);verilog hdl(硬件描述语言);quartusⅱ软件开发环境。
目录。第1章概述 1
1.1 eda的概念 1
1.1.1 eda技术及应用 2
1.1.2 eda技术发展趋势 2
1.2 eda的工作平台 3
1.2.1 eda硬件工作平台 3
1.2.2 eda 的软件工作平台 3
第2章 cpld原理图设计 4
2.1 cpld数据接收流程图: 4
2.2 cpld数据显示流程图: 5
2.3系统逻辑框图: 5
第3章单片机原理图设计 6
3.1发送数据流程图: 6
3.2硬件结构图: 7
第4章系统程序设计
4.1 设计详细分析 8
4.1.1 cpld通信协议spi 8
4.1.2实验原理 8
4.2 spi通信系统设计过程 8
4.2.1设计规划 8
4.2.2设计说明 9
4.3 程序设计 9
结论 13参考文献 13
附录与思考 14
1.1 eda的概念。
eda是电子设计自动化(electronic design automation)的缩写。由于它是一门刚刚发展起来的新技术,涉及面广,内容丰富,理解各异,所以目前尚无一个确切的定义[1]。但从eda技术的几个主要方面的内容来看,可以理解为:
eda技术是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计电子系统到硬件系统的一门新技术。可以实现逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化,逻辑布局布线、逻辑**。完成对于特定目标芯片的适配编译、逻辑映射、编程**等工作,最终形成集成电子系统或专用集成芯片[2]。
eda技术是伴随着计算机、集成电路、电子系统的设计发展起来的,至今已有30多年的历程。大致可以分为三个发展阶段。20世纪70年代的cad(计算机辅助设计)阶段:
这一阶段的主要特征是利用计算机辅助进行电路原理图编辑,pcb布同布线,使得设计师从传统高度重复繁杂的绘图劳动中解脱出来。20世纪80年代的qae(计算机辅助工程设计)阶段:这一阶段的主要特征是以逻辑摸拟、定时分析、故障**、自动布局布线为核心,重点解决电路设计的功能检测等问题,使设计能在产品制作之前预知产品的功能与性能[3]。
20世纪90年代是eda(电子设计自动化)阶段:这一阶段的主要特征是以高级描述语言,系统级**和综合技术为特点,采用“自顶向下”的设计理念,将设计前期的许多高层次设计由eda工具来完成[4]。
eda是电子技术设计自动化,也就是能够帮助人们设计电子电路或系统的软件工具。该工具可以在电子产品的各个设计阶段发挥作用,使设计更复杂的电路和系统成为可能。在原理图设计阶段,可以使用eda中的**工具论证设计的正确性;在芯片设计阶段,可以使用eda中的芯片设计工具设计制作芯片的版图;在电路板设计阶段,可以使用eda中电路板设计工具设计多层电路板。
特别是支持硬件描述语言的eda工具的出现,使复杂数字系统设计自动化成为可能,只要用硬件描述语言将数字系统的行为描述正确,就可以进行该数字系统的芯片设计与制造[5]。21世纪将是eda技术的高速发展期,eda技术将是对21世纪产生重大影响的十大技术之一。
硬件描述语言:硬件描述语言(hdl)是一种用于进行电子系统硬件设计的计算机高级语言,它采用软件的设计方法来描述电子系统的逻辑功能、电路结构和连接形式。常用硬件描述语言有hdl、verilog和vhdl语言[6]。
电子eda技术发展迅猛,逐渐在教学、科研、产品设计与制造等各方面都发挥着巨大的作用。在教学方面:几乎所有理工科(特别是电子信息)类的高校都开设了eda课程。
主要是让学生了解eda的基本原理和基本概念、硬件描述系统逻辑的方法、使用eda工具进行电子电路课程的模拟**实验并在作毕业设计时从事简单电子系统的设计,为今后工作打下基础。具有代表性的是全国每两年举办一次的大学生电子设计竞赛活动。在科研方面:
主要利用电路**工具进行电路设计与**;利用虚拟仪器进行产品调试;将fpga器件的开发应用到仪器设备中。在产品设计与制造方面:从高性能的微处理器、数字信号处理器一直到彩电、音响和电子玩具电路等,eda技术不单是应用于前期的计算机模拟**、产品调试,而且也在后期的制作、电子设备的研制与生产、电路板的焊接、器件的制作过程等有重要作用。
可以说电子eda技术已经成为电子工业领域不可缺少的技术支持[7]。
eda技术在进入21世纪后,由于更大规模的fpga器件的不断推出,在**和设计两方面支持标准硬件描述语言的功能强大的eda软件不断更新、增加,使电子eda技术得到了更大的发展。电子技术全方位纳入eda领域,eda使得电子领域各学科的界限更加模糊,更加互为包容,突出表现在以下几个方面:使电子设计成果以自主知识产权的方式得以明确表达和确认成为可能;基于eda工具的asic设计标准单元已涵盖大规模电子系统及ip核模块;软硬件ip核在电子行业的产业领域、技术领域和设计应用领域得到进一步确认;soc高效低成本设计技术的成熟。
随着半导体技术、集成技术和计算机技术的迅猛发展,电子系统的设计方法和设计手段都发生了很大的变化。可以说电子eda技术是电子设计领域的一场革命。传统的“固定功能集成块十连线”的设计方法正逐步地退出历史舞台,而基于芯片的设计方法正成为现代电子系统设计的主流。
作为高等院校有关专业的学生和广大的电子工程师了解和掌握这一先进技术是势在必行,这不仅是提高设计效率的需要,更是时代发展的需求,只有掌握了eda技术才有能力参与世界电子工业市场的竞争,才能生存与发展。随着科技的进步,电子产品的更新日新月异,eda技术作为电子产品开发研制的源动力,已成为现代电子设计的核心。所以发展eda技术将是电子设计领域和电子产业界的一场重大的技术革命,同时也对电类课程的教学和科研提出了更深更高的要求。
特别是eda技术在我国尚未普及,掌握和普及这一全新的技术,将对我国电子技术的发展具有深远的意义。
1.2 eda的工作平台。
1.计算机;
开发套件一款(max2epm1270t144c5)。
pld(programmable logic device)是一种由用户根据需要而自行构造逻辑功能的数字集成电路。目前主要有两大类型:cpld(complex pld)和fpga(field programmable gate array)。
它们的基本设计方法是借助于eda软件,用原理图、状态机、布尔表达式、硬件描述语言等方法,生成相应的目标文件,最后用编程器或**电缆,由目标器件实现。生产pld的厂家很多,但最有代表性的pld厂家为altera、xilinx和lattice 公司。
我们采用了quartusⅱ软件作为开发工具。
spi,是英语serial peripheral interface的缩写,顾名思义就是串行外围设备接口。spi,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为pcb的布局上节省空间,提供方便,正是出于这种简单易用的特性,现在越来越多的芯片集成了这种通信协议。
spi是一个环形总线结构,由ss(cs)、sck、sdi、sdo构成,其时序其实很简单,主要是在sck的控制下,两个双向移位寄存器进行数据交换。 上升沿发送、下降沿接收、高位先发送。上升沿到来的时候,sdo上的电平将被发送到从设备的寄存器中。
下降沿到来的时候,sdi上的电平将被接收到主设备的寄存器中。
第2章 cpld原理图设计。
图2-1 cpld数据接收流程图。
图2-2 cpld数据显示流程图。
第3章单片机原理图设计。
3-1 发送数据流程图。
图3-2 硬件结构图。
第4章系统程序设计。
4.1 设计详细分析。
4.1.1 cpld通信协议spi:
本次课程设计中只取了spi协议在方式0,cpol=0(scl为低时数据线空闲);
cpha=0(为第一个scl上升沿时),cpld开始采集数据。为了设计的简单,简化了数据通信协议,题目要求是用cpld接收来自51单片机的数据并在数码管上显示,把51单片机数据接收端口sdo(cpld发送端口)给省略了,还有在verilog程序设计时,省略了spi中有关寄存器的配置。
1.发送程序:
当51单片机初始化之后,会向cpld发送一个数字6;然后等待下一个按键按下,每当按键按下,就会发送对应的数字过去,每次发送时都会重新打开片选cs,每次发送完一次数据都会关闭cs。
EDA大作业
eda技术课程大作业。设计题目 4线 16线译码器设计。学生姓名。学号。专业班级 09电子信息1班 2012年5月26日。4线 8线译码器设计。1.设计背景与设计方案。1.1设计背景。译码器是组合逻辑电路的一个重要器件,它是一种将一种编码转换为另一种编码的逻辑电路,在编码时,每一种二进制 都赋予了特...
EDA大作业
eda技术课程大作业。设计题目 双二选一多路选择器。学生姓名 王行智。学号 201002050002 专业班级 电气自动化技术一班。2012 年 5 月 26日。1.设计背景 在很多时候,要完成一项工作,需要进行两次判断和选择,对于机器和人都是如此,这就需要两个选择器,双2选1多路选择器就应运而生了...
EDA大作业
一 设计方案。1 设计一个汽车尾灯控制器,利用eda软件 max plusii 进行编译及 设计输入可采用vhdl硬件描述语言输入法和原理图输入法,通过 查看设计的可行性,因条件有限,只能进行简单的 实验。2 设计要求。1 汽车尾部左右两侧各有多盏指示灯。2 汽车正常行驶时指示灯都不亮。3 汽车右转...