电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 接口/总线/驱动 > 详细信息
接口/总线/驱动:EDA技术在微机接口技术实验教学中的应用
来源:   时间: 2007-6-28 23:50:57    
微机接口技术是计算机专业的核心课程之一,是学习计算机硬件系统的关键课程。搞好该课程的实验教学,对于加深对课程的理解、培养设计能力和创新能力具有重要的意义。多年来,微机接口技术课程的实验一直使用专用实验箱,但存在几个方面的问题:

(1) 实验箱系统中的硬件结构基本固定,器件的品种、数量扩展困难,因此以验证型的实验为主,学生的设计难以突破实验箱的限制;

(2) 实验方法与前期课程脱节,与技术的发展脱节;

(3) 由于实验箱中需学生插接的连线很多,只要一个接触不良就会影响实验的完成。因此有必要改革微机接口课程的实验模式。EDA技术的出现,革新了传统的手工设计过程。微机接口设计作为一个典型的复杂数字系统设计,其设计方法发生了根本性的变革,因此应用EDA技术是微机接口课程实验改革的方向。

1 EDA技术简介

EDA技术是指以计算机为工作平台,以EDA软件工具为开发环境,以硬件描述语言为设计语言,以可编程器件为实验载体,以专用集成电路、片上系统芯片为目标器件,以电子系统设计为应用方向的电子产品自动化设计过程,是一种基于芯片的现代电子系统设计方法。EDA技术主要包括4个方面的内容:

大规模可编程逻辑器件;硬件描述语言;开发软件工具;实验开发系统。

其中,大规模可编程逻辑器件是利用EDA技术进行电子系统设计的载体硬件,描述语言是利用EDA技术进行电子系统设计的主要表达手段,开发软件工具是利用EDA技术进行电子系统设计的智能化的自动化设计工具,实验开发系统则是提供芯片下载电路及EDA实验/开发的外围资源,供硬件验证用。在实验教学中,实验硬件使用了我们开发研制的CPLD开发系统,其中的CPLD器件为Xilinx公司XC95系列的XC95144PQ160,实验使用VHDL为设计语言,选用了XilinxISE7.1i作为实验软件。

2 设计实例——键盘接口设计

下面以键盘接口设计为例,说明EDA技术在微机接口技术实验教学中的应用。

2.1 硬件设计

硬件实现框图如图1所示。

2.2 按键扫描

本设计采用16.384 MHz时钟,缓冲后除了为其他芯片提供工作时钟外,还可采用计数的方法进行分频,以得到125 Hz的参考时钟。这个时钟,就用来作几个与键盘处理息息相关的进程敏感事件。按键采用通用的扫描方式,4组行扫描线是在每一个分频时钟的下降沿,利用1个预先设计的4位状态机产生,在每一个扫描线送出的同时,读取列值(COL),即按键码。按键行扫描时序图如图2所示。

2.3 按键的识别

如果本次扫描没有键按下,按键码赋值为00H。如果扫描到键码不为0(即有键按下),将该键码对应的键值送至存储器指定地址data key暂存。然后再触发中断,接受处理器的访问。本设计中CPLD将键码转换为标准键盘按键的ASCII码,可以直接送至数据线由处理器做读取、判断处理,而无需再做转换。

2.4 按键长按、去抖及相关问题的解决

本设计中,如果长时间(超过2个扫描周期)按同一按键视为单次按键,处理方法如下:每次扫描到的键码与暂存在data_key的键码相比,如果相等则说明按键未释放,不作处理;如果不等说明有新的按键按下,则触发中断。这样设计解决了长按键的问题,但产生了新的问题:如果下次(间隔了若干个扫描周期)还是同一键按下,那么会扫描到同一键码,按照上述处理机制,这个键码是不送数据线的,这是不正确的。

我们注意到,同一按键按下间隔的时钟周期理论上为4个周期(按本设计4行扫描线计算),在本设计中,采用16.384 MHz时钟,采用计数的方法进行分频,得到125 Hz的参考时钟,故需要32 ms。在实际应用中,任何操作人员也达不到这个速度。所以,这里可以采用一个小技巧:

设计一个计数器,每扫描到一次为0键码(无键按下),计数器加1。如果有键按下,即扫描到的键码不为0,则计数器清零;如果计数到某一数值(即时间大于一个扫描周期),则保持当前计数不变。这样通过综合分析,得出触发中断、要求得到响应的条件为:

(1) 扫描到的键码不为0;

(2) 本次扫描到的键码和寄存器data key中的暂存码不同;

(3) 计数器当前计数值大于3;

这样就解决了不同按键的响应问题,或者:

(1) 扫描到的键码不为0;

(2) 计数器当前计数值大于等于5。

这样就解决了在以上功能实现前提下同一按键连续按下的响应问题。

大量实践经验证明,按键抖动时间一般为10 ms(保守估计),本设计中扫描时钟为8 ms,在满足快速响应按键的同时,在较大程度上也实现了键盘去抖的功能。

2.5 VHDL程序设计

限于篇幅,这里只给出一组扫描线情况(ROW=“1110”)下按键识别的设计实现方法:

3 结 语

与以往传统的实验方法相比,学生在实验过程中可以节省大量的接线时间,把重点放在微机接口的设计和仿真、验证上,使本实践环节更好地达到教学目的。软件设计调试阶段完成后的硬件下载和测试,又使学生能够学习硬件环境下的调试方法。实验教学的实践表明,新的实验模式激发了学生学习的积极性,加深了对本课程的掌握程度,同时还能够学到先进的设计技术,学生普遍欢迎这种改革新的实验模式,有效地锻炼了学生的设计能力和实践能力,为学生提供了充分的创造空间,收到了传统实验方法难以获得的效果。

相关信息
发表评论
打印本页 关闭本页
高速数字系统中信号完整性及实施方案
  摘要:描述了高速数字电路中典型的信号完整性问题,分析了各种破坏信号完整性的原因及解决方案,并结合一个实际的高速DSP系统,阐述实现信号完整性的具体方法。关键词:信号完整性 端接 DSP系统 现在的高速数字系统的时钟频率可能高达数百兆Hz,其快斜率瞬变和极高的工作频率,以及很大的电路密集度,必将使得系统表现出与低速设计截然不同的行为,出现了信号完整性问题...
>>详细内容
基于PCI总线CAN卡设计与实现
  摘要:介绍了PCI桥接口芯片PCI9052和CAN接口芯片SJA1000,给出了基于PCI总线的CAN总线适配卡软硬件的设计思路、过程及实现方法。关键词:PCI总线  PCI9052 CAN总线 SJA1000 现场总线CAN(Controller Area Network控制器局域网络)以其高性能、高可靠性及独特的设计,越来越受到人们的重视和青睐,不但在汽车行业中应用广泛,而且在工业控制、机器人、医疗器械、传感器等...
>>详细内容
专用键盘接口芯片一种CPLD实现方案
  摘要:对用于单片机的键盘子系统的专用键盘接口芯片进行功能分析,就芯片中核心部件的时序设计进行状态描述,并利用可编程逻辑技术和原理图输入方式对键盘接口芯片的内部结构加以实现。关键词:键盘子系统 专用键盘接口 CPLD 状态描述 在单片机应用系统中,存在多种形式的外部数据输入接口界面,例如RS-232C串行通信、键盘输入等[1,4] 。其中利用键盘接口输入数据,是实现...
>>详细内容
基于StrongARM视频采集与处理系统
  摘要:介绍一个基于StrongARM的视频数据采集处理系统。该系统将采集到的连续视频图像数据以MJPEG的方式进行压缩处理,然后由StrongARM进行打包处理,生成UDP包,向网络发送。视频服务器可以通过网络(局域网或广域网)获取视频采集器发送的图像数据,并对图像数据进行显示、存储、回放等管理,同时视频服务器也可以通过网络控制视频采集器上的摄像机及云台。该系统为实现远程实时...
>>详细内容
AD6620工作原理/在中频数字化直扩接收机应用
  摘要:介绍了AD公司推出的数字信号处理器AD6620的工作原理,结合中频数字化直扩接收机的实现,分析了其工作参数设置,对AD6620的应用进行了深入的研究。关键词:AD6620 中频数字化 直扩数字接收机 软件无线电的核心思想就是将宽带A/D尽可能地靠近射频天线以便将接收到的模拟信号尽可能早地数字化,尽量在统一的硬件平台上通过不同的软件来实现无线电台的各种功能。直接在...
>>详细内容
开关电容滤波器的"共振"现象及其对策
  摘要:分析了开关电容滤波器的"共振"现象及其产生机理。针对该现象提出了解决办法,并结合信号处理仪器系统给出了采用MAX293制作抗混滤波器的方案。关键词:开关电容滤波器 "共振"现象 抗混 编程 在信号处理仪器的硬件系统中抗混滤波器是一重要的部件。根据信号分析的要求,抗混滤波器的截止频率范围控制在10Hz~20kHz。为了提高信号的频率分辨率,要求抗混滤波器的带宽是...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com