1543.基于FPGA开发计算机接口芯片设计毕业设计

上传人:ni****g 文档编号:464321041 上传时间:2022-09-08 格式:DOC 页数:42 大小:2.32MB
返回 下载 相关 举报
1543.基于FPGA开发计算机接口芯片设计毕业设计_第1页
第1页 / 共42页
1543.基于FPGA开发计算机接口芯片设计毕业设计_第2页
第2页 / 共42页
1543.基于FPGA开发计算机接口芯片设计毕业设计_第3页
第3页 / 共42页
1543.基于FPGA开发计算机接口芯片设计毕业设计_第4页
第4页 / 共42页
1543.基于FPGA开发计算机接口芯片设计毕业设计_第5页
第5页 / 共42页
点击查看更多>>
资源描述

《1543.基于FPGA开发计算机接口芯片设计毕业设计》由会员分享,可在线阅读,更多相关《1543.基于FPGA开发计算机接口芯片设计毕业设计(42页珍藏版)》请在金锄头文库上搜索。

1、本科生毕业论文基于FPGA开发计算机接口芯片设计1 引言1.1 电子设计自动化概述EDA是电子设计自动化(Electronic Design Automation)缩写,是90年代初从CAD(计算机辅助设计)、CAM(计算机辅助制造)、CAT(计算机辅助测试)和CAE(计算机辅助工程)的概念发展而来的。EDA技术是以计算机为工具,根据硬件描述语言HDL( Hardware Description language)完成的设计文件,自动地完成逻辑编译、化简、分割、综合及优化、布局布线、仿真以及对于特定目标芯片的适配编译和编程下载等工作。典型的EDA工具中必须包含两个特殊的软件包,即综合器和适配器

2、。综合器的功能就是将设计者在EDA平台上完成的针对某个系统项目的HDL、原理图或状态图形描述,针对给定的硬件系统组件,进行编译、优化、转换和综合,最终获得我们欲实现功能的描述文件。综合器在工作前,必须给定所要实现的硬件结构参数,它的功能就是将软件描述与给定的硬件结构用一定的方式联系起来。也就是说,综合器是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换低级的、可与目标器件FPGA/CPLD相映射的网表文件。适配器的功能是将由综合器产生的王表文件配置与指定的目标器件中,产生最终的下载文件,如JED文件。适配所选定的目标器件(FPGA/CPLD芯片)必须属于在综合器中已指定的目标

3、器件系列。硬件描述语言HDL是相对于一般的计算机软件语言,如:C、PASCAL而言的。HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电路结构和连接方式。设计者可利用HDL程序来描述所希望的电路系统,规定器件结构特征和电路的行为方式;然后利用综合器和适配器将此程序编程能控制FPGA和CPLD内部结构,并实现相应逻辑功能的的门级或更底层的结构网表文件或下载文件。目前,就FPGA/CPLD开发来说,比较常用和流行的HDL主要有ABEL-HDL、AHDL和VHDL。1.2 可编程器件作为一种可编程逻辑器件,现场可编程门阵列(Field Programmable Gate A

4、rray, FPGA)的出现是可编程逻辑器件发展变化的必然,它的出现推动着可编程逻辑器件的进一步发展。因此说,了解了可编程逻辑器件的发展历程,也就了解了FPGA的发展历程。可编程逻辑器件(Programmable Logic Device, PLD)是21世纪70年代发展起来的一种新型器件。它的应用不仅简化了电路设计,降低了成本,提高了系统的可靠性,而且给数字系统的设计方法带来了革命性的变化。可编程逻辑器件的发展是以微电子制作技术的不断进步为基础的,其结构和工艺的变化经历了一个不断发展的过程。20世纪70年代,早期的可编程逻辑器件可编程只读存储器(PROM)、紫外线可擦除只读存储器(EPROM

5、)、和电可擦除只读存储器(EEPROM)3种。随后,出现了一类结构稍复杂的可编程芯片,即可编程逻辑阵列(Programmable Logic Array, PLA)。PLA在结构上由一个可编程的与阵列和可编程的或阵列构成,阵列规模小,编程过程复杂繁琐。PLA既有可编程的,也有掩膜可编程的。在这之后出现了可编程阵列逻辑(Programmable Logic Array, PLA)器件,它由一个可编程的“与”平面和一个固定的“或”平面构成,是现场可编程的。它的实现工艺反熔丝技术、EPROM技术、EEPROM3种。在PLA的基础上,又发展了一种通用阵列逻辑(Generic Array Logic,

6、GAL),如GAL16V8、GAL22V10等。它采用了输出逻辑宏单元结构和EEPROM工艺,实现了电可擦除、店可改写,由于其输出结构是可编程的逻辑宏单元,因而其设计具有很灵活性,至今仍有许多应用。这些早期的PLA器件的一个共同特点是可以实现速度特性较好的逻辑功能,但是由于其结构过于简单,因此,只能用于实现小规模电路设计。为了弥补这一缺陷,20世纪80年代中期,著名的可编程逻辑器件厂商 Altera 和 Xilinx 分别推出了扩展行的复杂可编程逻辑器件(CPLD)和类似与标准门阵列的现场可编程门阵列(FPGA)。CPLD和FPGA的功能基本相同,至是芯片得到内部原理和结构有一些差别。这两种器

7、件兼容了PLA和GAL器件的优点,具有体系结构灵活、逻辑资源丰富、集成度高以及适应范围广等特点,可用于实现较大规模的电路设计,编程也很灵活,所以,被广泛应用于产品的原型设计和小批量生产之中。几乎所有使用PLA、GAL和中小规模通用数字集成电路的场合均可应用CPLD和FPGA器件。如今,FPGA器件已经成为当前主流的可编程逻辑器件之一。经过20年的发展,可编程逻辑器件已经取得了长足的进步,资源更加丰富,使用越来越方便。将来的可编程逻辑器件,密度会更高、速度会更快、功耗会更低,同时还会增加更多新的功能,向着集成了可编程逻辑、CPU、存储器等组件的可编程单片系统(System On Programm

8、able Chip, SOPC)方向发展。1.3 开发环境软件:QuartusII 6.0。硬件:FPGA (Field Programmable Gate Array),即现场可编程门阵列。FPGA具有掩膜可编程门阵列的通用结构,它由逻辑功能块排成阵列组成,并由可编程互联资源连接这些逻辑功能块来实现不同的设计。2 并行8255电路结构分析2.1 8255的基本特性(1) 8255芯片具有两个8位(A口和B口)和两个4位(C口高低四位)并行输入输出端口,而且C口还具有按位置位/复位功能。(2) 8255能适应CPU与I/O接口之间的多种数据传送方式的要求。它设置了0方式、1方式以及2方式(双向

9、传送)三种工作方式。(3) 8255的可执行能力很强,内容丰富的两条命令(方式字和控制字)为用户如何根据外界条件(I/O设备需要那些信号线以及它能提供那些状态线)来使用8255构成多种接口电路,组建微机应用系统提供了灵活方便的编程环境。(4) 8255的C口比较特殊,除做数据口外,当工作在1方式和2方式时,它的大部分引脚被分配作专用联络信号;C口还可以进行按位控制;在CPU读取8255状态时,C口又做1,2方式的状态口用。(5) 8255芯片内部主要由控制寄存器、状态寄存器和数据寄存器组成。2.2 8255A的外部引线与内部结构2.2.1 外部引线 8255A是一个单5V电源供电,40个引脚的

10、双列直插式组件,其外部引线如图1所示。 图1 8255的引脚图作为接口电路的8255A具有面向主机系统总线和面向外设两个方向的连接能力。 (1) 面向系统总线的信号线有:D7D0:双向数据线。CPU通过它向8255A发送命令、数据;8255A通过它向CPU回送状态、数据。CS:选片信号线,该信号低电平有效,由系统地址总线经IO地址译码器产生。CPU通过发高位地址信号使它变成低电平时,才能对8255A进行读写操作。当CS为高电平时,切断CPU与芯片的联系。A1,A0:芯片内部端口地址信号线,与系统地址总线低位相连。该信号用来寻址8255A内部寄存器。两位地址,可形成片内4个端口地址。RD:读信号

11、线,该信号低电平有效。CPU通过执行IN指令,发读信号将数据或状态信号从8255A读至CPU。WR:写信号线,该信号低电平有效。CPU通过执行OUT指令,发写信号,将命令代码或数据写入8255A。RESET:复位信号线,该信号高电平有效。它清除控制寄存器并将8255A的A、B、C3个端口均置为输入方式;输出寄存器和状态寄存器被复位,并且屏蔽中断请求;24条面向外设的信号线呈现高阻悬浮状态。这种状态一直维持,直到用方式命令才能改变,使其进入用户所需的工作方式。(2) 面制IO设备的信号线有:PA0PA7:端口A的输入输出线PB0PB7:端口B的输入输出线PC0PC7:端口C的输入输出线。这24根

12、信号线均可用来连接IO设备,通过它们可以传送数字量信息或开关量信息。2.2.2 8255的内部结构 8255的内部结构如图2所示。它由以下4个部分组成:(1) 数据总线缓冲器这是一个三态双向8位缓冲器,它是8255A与CPU系统数据总线的接口。所有数据的发送与接收,以及CPU发出的控制字和8255A来的状态信息都是通过该缓冲器传送的。(2) 读写控制逻辑读写控制逻辑由读信号nRD,写领带nWR,选片信号nCS以及端口选择信号A1A0等组成。读写控制逻辑控制了总线的开放与关闭和信息传送的方向,以便把CPU的控制命令或输出数据送到相应的端口;或把外设的信息或输入数据从相应的端口送到CPU。(3)

13、数据端口A、B、C8255包括3个8位输入输出端口(POPT)。每个端口都有一个数据输入寄存器和一个数据输出寄存器,输入时端口有三态缓冲器的功能,输出时端口有数据锁存器功能。在实际应用中,PC口的8位可以分为两个4位端口(方式0下),也可以分成一个5位端口和一个3位端口(方式1下)来使用。(4) A组和B组控制电路控制A、B和C3个端口的工作方式,A组控制A口和C口的上半部(PC7PC4),B组控制B口和C口的下半部(PC3PC0)的工作方式和输入输出。A组、B组的控制寄存器还接收按位控制命令,以实现对PC口的按位置位复位操作。图 2 8255的内部结构3 8255总体设计3.1 设计方法本次

14、设计采用的是自顶向下的设计方法,首先做整体设计然后在详细的划分每一个模块,然后再对各个模块进行设计。主要设计过程如图3所示:对8255芯片的功能进行分析,主要参考intel的8255A芯片。做系统的整体设计对系统做进一步细化,主要分为七个模块。对每个模块进行设计,编程对各个模块进行软件测试,确保设计的正确性。对各个模块进行整合,组成8255芯片。对芯片进行软件测试。 图3 设计流程3.2 8255的编程命令 8255A的编程命令包括工作方式控制字和对PC口的按位操作控制字两个命令,它们是用户使用8255A来组建各种接口电路的重要工具。由于这两个命令都是送到8255A的同一个控制端口,为了让82

15、55A能识别是哪个命令,故采用特征位的方法。若写入的控制字的最高位D71,则是工作方式控制字;若写入的控制字D0,则是PC口的宾位置位复位控制字。3.2.1 工作方式控制字作用:指定3个并行端口(PA、PB、PC)是作输入还是作输出端口以及选择8255的工作方式。格式及每位的定义如表1所示:表1 方式命令字特征位D6 | D5D4D3 D2 D1 D0 1A组方式PAPC47B组方式 PB PC3000=0方式0=输出0=输出0=0方式0=输出 0=输出01=1方式1=输入1=输入1=1方式1=输入1=输入10=2方式 3.2.2 PC口按位置复位控制字作用:指定PC口的某一位输出高电平还是低电平。格式及每位的定义如表2所示:表2

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号