基于FPGA的单片机外围接口电路设计

发布者:影子猎人最新更新时间:2012-09-14 来源: 21ic关键字:FPGA  外围接口电路 手机看文章 扫描二维码
随时随地手机看文章
   

摘要:利用现场可编程门阵列 FPGA实现单片机的外设接口电路可以简化单片机系统的硬件电路,提高系统的集成度、可靠性和系统设计的灵活性。本文介绍了基于 FPGA的单片机外设接口电路的基本设计方法,分别给出了各个功能模块的设计思路和实现方法。所有功能的实现全部采用 VHDL进行描述。

0 引言

单片机具有性价比高、功能灵活、易于人机对话、数据处理能力强等特点。单片机应用系统通常由键盘、显示器、通信接口、存储器、A/D、D/A电路等部分组成。传统的单片机系统经常要用标准的逻辑电路或专用的接口芯片来组成外围电路,如地址译码、I/O扩展等功能通常由标准的TTL/COMS逻辑电路或各种专用接口芯片实现,这样就会使系统的芯片数增多,接线复杂,从而使电路板面积增大、可靠性和 EMI性能减低,难以实现设计的小型化、集成化和高可靠性。而可编程门阵列FPGA的LCA结构和它丰富的内部资源可以用来设计各种组合逻辑和时序逻辑电路,因此使用FPGA设计单片机的外围电路能够大大简化系统硬件结构,使系统的设计、修改和扩展都变的十分灵活方便。本文通过对FPGA器件进行功能设计,取代传统单片机系统中外设接口用的标准逻辑电路和专用的接口芯片,使单片机系统的硬件电路大大简化并提高其可靠性。当需要改变系统性能时,可以通过对FPGA重新编程而不用改变硬件电路,提高了系统设计的灵活性。

1 系统设计方案

根据一般单片机系统设计的需要,本文所设计的系统具有以下几个功能模块,如图1所示。

1 )通用逻辑模块:根据具体的情况产生各种不同的逻辑电路及控制信号,代替传统的标准逻辑芯片。本文将其设计为扩展存储器时用到的地址锁存器。

2 )键盘接口模块:代替传统的单片机与键盘的接口电路,用 FPGA编程完成消除抖动及按键识别功能。本文将其设计为4×4扫描键盘的通用接口。

3 )显示接口模块:代替传统的单片机与显示器的接口电路,用 FPGA编程完成译码、扫描等功能。本文将其设计为4位七段动态 LED接口。

1 )串并行接口模块:实现单片机与其外设的串行或并行数据通信。本文将其设计为串行通信接口模块。

2 )其他扩展模块:实现单片机的一些其他常用功能,如 PWM驱动、A/D、D/A转换的控制等。

本设计所采用的FPGA器件是 ALTERA公司的Cyclone-TM系列芯片 EP1C6Q240C8,它具有5980个逻辑单元, 92160个比特的嵌入 RAM。系统开发工具为硬件描述语言VHDL,开发平台为Quartus Ⅱ。[page]

 

   

2 系统模块实现

2.1 通用逻辑模块

FPGA可以设计成各种组合逻辑和时序逻辑电路,完成锁存、三态输出、多路选择、编译码、计数、寄存等功能。在实际应用中可以根据需要选择相应的功能模块组成符合设计要求的逻辑功能。

本系统中设计的为扩展存储器时用的地址锁存器(功能与带三态缓冲输出的8D锁存器

74LS373相似),其 VHDL描述为: process(oe,enable,d) begin if e=\'1\' then

q<="ZZZZZZZZ";

else   if enable=\'1\' then q<=d;   end if;

end if;

end procESS; 其中oe为三态门的使能信号,当 oe为低电平时三态门处于导通状态,允许q输出到外部,当 oe为高电平时三态门处于断开状态,输出处于浮空状态; enable为锁存控制信号,当做锁存器用时,应使oe为低电平,这时,当 enable为高电平时,锁存器输出状态与输入状态相同,当enable从高电平返回到低电平(即下降沿)时,输出不变,即输入端的数据锁入锁存器中。

2.2 键盘接口模块键盘是单片机应用系统中一个很重要的部件,它能实现向系统输入数据、传送命令等功 能,是人工干预系统工作的重要手段。本文所设计的键盘接口电路框图如图2所示,由分频电路、键盘扫描计数器电路、键盘按键检测电路、按键抖动消除电路和键盘编码电路等组成。

其中clock为时钟脉冲, col为键盘的列输入,row为键盘的行输出,scan_f为扫描频率, key_valid为按键确定信号,butt_code为按键值。首先,将外部时钟信号分频为适合键盘的扫描频率;计数器的计数值输出到按键检测电路,检测使用者是否按下键盘,同时输出到键盘编码电路对键盘数值编码;当使用者按下键盘时,按键检测电路的 key_pressed将为0,并输出到计数器使计数停止,同时抖动消除电路在确认使用者正确按键后,输出按键确定信号。

2.3 显示接口模块

显示功能是单片机应用系统中实现人机对话的基本功能之一,用户通过灵活的显示方式方便的了解系统的工作情况。在简单的应用系统中常用LED数码管或LCD显示器显示数据或工作状态。本文设计的为一个4位七段动态 LED数码管显示接口电路,电路框图如图3所示,它由BCD多路选择器、BCD对应七段显示器编码电路、计数译码电路和七段显示器扫描电路等组成。其中clk为同步时钟脉冲信号, flk_ena为扫描时钟脉冲信号, bcd_data为输入的BCD码,ledseg为七段显示器数值输出, ledcom为七段显示器输出使能。

2.4 串并行接口模块

虽然大多数单片机都带有通用的串行接口,但自行设计的接口意味着更大的使用灵活性,特别是FPGA的高速特性允许更高的数据传输速度,在实用中有重要意义。作为范例, 本文设计了基于RS232-C标准的异步串行通信接口,它主要由数据总线接口、控制逻辑、波特率发生器、发送和接收等部分组成,其功能主要包括微处理器接口,用于数据传输的缓冲器(Buffer)、帧产生、奇偶校验、并转串,用于数据接收的缓冲器、帧产生、奇偶校验、串转并等。[page]

 

   

2.4.1 接收模块

异步串行通信是逐个字符进行传输的,并且传送的每一个字符格式都相同,均以一位起始位开始,中间有若干位数据位,然后是一位校验位(可选),昀后是停止位,停止位后面是不定长度的空闲位。这样就保证了起始位开始处一定有一个下跳沿。接收逻辑首先通过检测数据的下降沿来检测起始位,产生采样时钟,然后利用采样时钟来采样串行输入数据,在缓冲器中做移位操作,同时产生校验位,在第 8位处比较校验位是否正确,在第 9位处比较停止位是否为高,然后产生错误指示信号。本文采用状态机进行设计,其 FSM状态转换图如图 4所示。

2.4.2 发送模块

发送部分检测控制信号,当有数据要发送时只要按顺序依次发送 1位起始位、 5-7位数据位、一位校验位(带校验时)和 1位(或 1.5位、2位)停止位即可。其 FSM状态转换图如图 5所示。

停止位发送完毕

无数据要发送发送停止位

3 结束语

将设计下载到芯片中,综合报告显示只消耗了FPGA很少的一部分资源。整个系统的功耗也大为降低。由于FPGA为大规模集成电路,其集成度和工作速度随着技术进步和产品升级不断提高,所以用FPGA实现单片机外围接口电路可以大大改善单片机系统的性能,系统的外围逻辑越是复杂,FPGA的潜力越能得到更好的发挥。

关键字:FPGA  外围接口电路 引用地址:基于FPGA的单片机外围接口电路设计

上一篇:FLIR借助MATLAB加速热成像FPGA的开发
下一篇:基于FPGA的c点阵显示系统设计

推荐阅读最新更新时间:2024-05-02 22:19

解析高速ADC和DAC与FPGA的配合使用
  许多数字处理系统都会使用FPGA,原因是FPGA有大量的专用DSP以及block RAM资源,可以用于实现并行和流水线算法。因此,通常情况下,FPGA都要和高性能的ADC和DAC进行接口,比如e2v EV10AQ190低功耗四通道10-bit 1.25 Gsps ADC和EV12DS130A内建4/2:1 MUX的低功耗12-bit 3 Gsps DAC。 通常情况下,这些转换器的采样率都达到了GHz的级别。对工程师团队来说,除了混合信号电路板布局之外,理解和使用这些高性能的设备也是一个挑战。   这些e2v数据转换器具有带宽宽、性能好的特点—数据手册上通常称为模拟全功率带宽—即使是在高奈奎斯特区。(这种能力是不多见的。)正是
[电源管理]
解析高速ADC和DAC与<font color='red'>FPGA</font>的配合使用
e络盟社区启动FPGA暑期活动
FPGA暑期活动将通过专题讨论会、培训课程、网络研讨会、产品测试来帮助社区成员获取有关基础组件的专业知识并将设置抽奖活动 中国上海,2021年7月5日 – 安富利旗下全球电子元器件产品与解决方案分销商e络盟通过其在线互动社区发起FPGA暑期活动,以期助力工程师在暑期进一步丰富专业知识并提升专业技能。 由于FPGA与人工智能、高性能计算、嵌入式视觉、自动驾驶汽车及 5G转型密不可分,e络盟FPGA暑期活动将重点聚焦这些应用领域,以帮助社区成员提升技能水平,从而胜任FPGA工作。 “FPGA是实现未来电子设计创新的必备组件,”e络盟社区与社交媒体全球主管Dianne Kibbey表示。“为此,我们与FPGA领域的领导
[嵌入式]
e络盟社区启动<font color='red'>FPGA</font>暑期活动
应对MCU及逻辑缺货,QuickLogic推出PolarPro 3替代品
QuickLogic日前宣布其 PolarPro® 3 系列低功耗、基于 SRAM 的 FPGA 可用于解决半导体供应可用性挑战。这个高度灵活的系列具有低至 55uA 的功耗,具有小尺寸封装并支持裸Die选项。超低功耗非常适合手持、可穿戴及移动应用。小尺寸封装可实现更小的PCB面积。不光适用于产品的原型设计,同时也支持量产。 产品多达 2,000 个基于 SRAM 的 FPGA 架构的有效逻辑单元、64Kbits SRAM 和多达 46 个可配置 I/O。高灵活性、低功耗和小尺寸使该系列非常适合手持、可穿戴、移动、物联网和其他电池供电应用中的各种功能,包括接口、电平转换、小型 CPU 内核、低速串行协议和GPIO 复用。
[嵌入式]
易用性是FPGA在更多领域获得成功的关键
以提供多种基于Flash和反熔丝技术的低功耗、高可靠性单芯片FPGA而著称的Actel公司,在全球经济出现下滑的2008年仍实现了超过了10%的营收增长率,是增长最快的FPGA公司。在2009年,Actel仍将发挥其产品在低功耗、高可靠性、低成本和易用性等方面的优势,在工业控制、机器人、手持设备、LCD和LED显示、医疗电子、汽车电子等领域积极扩展新的应用机遇。Actel公司亚太区总经理赖炫州先生和Actel中国区经理夏明威先生接受《电子系统设计》采访,分享了他们关于FPGA新一轮应用机遇及挑战的独特见解。 2009年最具增长潜力的FPGA应用是什么? 在亚太区特别是中国市场,消费电子(包括手机)仍会具有较大增长
[嵌入式]
英特尔新车载娱乐系统,能为我们带来了哪些可能?
你是否跟我一样,如果开车去陌生的地方,就会在出发前摸出手机开启在线地图进行导航。 车载导航因图像不清晰和路线更新不及时,已失宠很久。或许,你也听过一些新闻报道,比如车主在陌生的地方一直跟着车载导航指引走,有的开进了电车隧道里,有的开进了断头路,更有甚者开进了河里…… 这些听上去十分尴尬甚至像笑话的导航经历,确是我们身边真实发生的。 驾驶员也很无奈,传统的车载导航落后太多,大部分人只好购买手机支架,宁可用手机,也不用车载信息娱乐系统。如今,在英特尔® FPGA中国创新中心展厅中,展出了一款基于Intel® MAX® 10 FPGA的车载娱乐系统,它为未来的汽车信息娱乐解决方案提供了一种可能性,值得我们一探究竟。 车载
[嵌入式]
英特尔新车载娱乐系统,能为我们带来了哪些可能?
Actel FPGA的PWM IP的应用
脉冲宽度调制(PWM)是英文“Pluse Width Modulation”的缩写,简称脉宽调制。它是利用微处理器的数字输出来对 模拟 电路 进行 控制 的一种非常有效的技术,根据相应的载荷的变化来调制晶体管栅极或基极的偏置,来实现 开关 稳压 电源 输出晶体管或晶体管导通时间的改变。这种方式能使 电源 的输出电压在工作条件变化时保持恒定,广泛应用于测量、通信、功率 控制 与变化等许多领域。 Actel公司免费提供PWM IP核:CorePWM。CorePWM是基于APB 总线 形式的,它的优点是可以连接到Core8051或者是CortexM1处理器上,方便用户进行SoC设计,本文将主要介绍CorePWM的原理与应用。 1.
[模拟电子]
大容量串行e-Flash的FPGA配置方案
引 言   现场可编程门阵列FPGA(Field Programmable Gate Array)是一种集通用性强、设计灵活、集成度高和编程方便等诸多优点于一身的现场可编程ASIC。自1985年美国的Xilinx公司推出FPGA产品并取得成功以后,FPGA发展迅猛,门数不断提升,达到数百万门的规模;产品种类日益丰富,性能不断完善,在军事、通信、医疗、消费类电子等各领域发挥了巨大的作用。   Xilinx公司的FPGA具有很高的性价比,其集成开发环境ISE和Webpack效率高、界面友好,因此在业界有着广泛的应用。通常对Xilinx公司的FPGA配置采用专用的配置芯片,速度较快,其价格也正逐步降低。笔者为配合某电力测量仪表的开发,对
[嵌入式]
固定几何结构的FFT算法及其FPGA实现
作者Email: smz_wxd@sohu.com 1.引言 DFT及其快速算法FFT是信号处理领域的核心组成部分。FFT算法多种多样,按数据组合方式不同一般分时域和频域,按数据抽取方式的不同又可分为基2,基4等。各算法的优缺点视不同的制约因素而不同。FFT的实现方法也多种多样,可以用软件实现,也可以用硬件实现,用软件在PC机或工作站上实现则计算速度很慢。一般多结合具体系统用硬件实现。例如用单片机或DSP实现。但是速度仍然很慢,难以与快速的A/D器件匹配。在雷达信号处理领域主要追求的目标是速度,即实时性的要求非常高。针对这种快速信号处理的要求及FPGA器件的特点,本文采用的是一种基2固定几何结构的FFT算法。采用的是A
[半导体设计/制造]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved