当前位置:首页 > EDA > 电子设计自动化
[导读]微机接口技术是计算机专业的核心课程之一,是学习计算机硬件系统的关键课程。搞好该课程的实验教学,对于加深对课程的理解、培养设计能力和创新能力具有重要的意义。多年来,微机接口技术课程的实验一直使用专用实验

微机接口技术是计算机专业的核心课程之一,是学习计算机硬件系统的关键课程。搞好该课程的实验教学,对于加深对课程的理解、培养设计能力和创新能力具有重要的意义。多年来,微机接口技术课程的实验一直使用专用实验箱,但存在几个方面的问题:

(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 结 语

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

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

上海2025年7月21日 /美通社/ -- 本文围绕跨域时间同步技术展开,作为智能汽车 "感知-决策-执行 -交互" 全链路的时间基准,文章介绍了 PTP、gPTP、CAN 等主流同步技术及特点,并以...

关键字: 时钟 时间同步 同步技术 智能汽车

上海 2025年6月16日 /美通社/ -- 2025年6月14日,中欧国际工商学院AMP课程二十周年庆典论坛在上海校区隆重举行。这场以「廿载砺行 创见共生」为主题的思想峰会,汇聚了十余位来自学界和商业的领袖、数百位A...

关键字: 数字化 网络 IP 接口技术

上海2025年3月21日 /美通社/ -- 值世界睡眠日来临之际,3月19日,在上海市总工会和上海市精神卫生中心的指导下,由徐汇区总工会、中智股份工会联合会主办,徐汇区职工服务中心、枫林国际•科创园、中智关爱通(上海)科...

关键字: 接口技术 数字化 楼宇 电子设备

只要FPGA设计中的所有资源不全属于一个时钟域,那么就可能存在跨时钟域问题,因为异步逻辑其实也可以看做一种特殊的跨时钟域问题。

关键字: FPGA 时钟

广州2024年10月29日 /美通社/ -- 在第136届广交会上,BrainCo强脑科技再次以前沿脑机接口技术亮相本届广交会,为全世界客商带来新技术、新产品。 BrainCo强脑科技的智能仿生手,作为2024年广交会...

关键字: 接口技术 脑机接口 AI SLEEP

在Xilinx FPGA的DDR3设计中,时钟系统扮演着至关重要的角色。它不仅决定了DDR3存储器的数据传输速率,还直接影响到FPGA与DDR3存储器之间数据交换的稳定性和效率。本文将详细介绍Xilinx FPGA DD...

关键字: Xilinx FPGA DDR3 时钟

TimeProvider 4100主时钟的附件,可扩展至200 个完全冗余的T1、E1 或CC同步输出端

关键字: 5G网络 时钟

EDA(电子设计自动化)技术可以应用于显示应用的不同方面。以下是一些主要的实现方式: PCB设计:在电子系统中,印刷电路板(PCB)是用于承载和连接各种电子元件的关键部件。在PCB上,可以焊接和配置电子元件,以实现电子...

关键字: EDA技术 电路设计

回顾EDA产业大致经历了三个发展阶段:20世纪80年代前的计算机辅助设计(CAD)时代,20世纪80年代的计算机辅助工程(CAED)时代和20世纪90年代后的电子系统设计自动化(EDA)时代。近年来,随着云计算在各行各业...

关键字: EDA技术 云计算

EDA是电子设计自动化(Electronic Design Automation)的缩写,它代表了电子设计的自动化流程。EDA技术利用计算机辅助设计(CAD)软件,来完成超大规模集成电路(VLSI)芯片的功能设计、综合、...

关键字: EDA技术 通信系统
关闭