下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、用FPGA实现DSP与液晶显示器的快速接口 摘要:高速处理器与慢速设备之间的接口是电子系统设计中经常遇到的问题。以液晶显示器为例,提出了一种以FPGA为基础的快速接口电路设计方案。该方案可有效地减小慢速设备对高速处理器的影响。 关键词:可编程器件 DSP 液晶显示器 微指令 快速接口随着器件集成工艺的发展和Soc器件的出现,现在的数字系统正在越来越多地采用可编程器件设计。这样,不仅开发周期短,而且在价格和使用难易度上也显示了很大的优势。更为重要的是,还能利用器件的现场可编程特性,根据应用的要求对器件进行动态配置,简便易行地完成功能的添加或变化。在高
2、速的数字信号处理系统中,要涉及到大量的计算,为了提高运算速度,正大量使用DSP器件。目前的可编程器件,其时钟频率可以很高,在高速数字信号处理系统中将发挥越来越大的作用。因此,DSP+FPGA的方案正越来越多地被电子工程师们采用。在很多的实际数字系统中,往往需要良好的用户界面,其中LCD是被大量采用的显示器件。由于LCD是典型的慢速设备(相对于DSP来讲),在与高速微处理器接口时,会耗费大量时间,这在高速系统设计中是不允许的。如果DSP有不太富裕的处理余量,如何利用它对LCD完成控制呢?仅仅在两者之间加入锁存器之类的简单接口电路,往往不能对LCD完成控制。不过,有了FPGA,就可以在不增加成本的
3、情况下,在DSP和LCD之间设计一条双向的快速通道。图1 DSP时序较(对I/O空间的操作)1 DSP和LCD的时序TI公司是DSP在全球的主要供应商,其低价位的TMS320VC54x系列DSP深受广大电子工程师的青睐。下面以TMS320VC5416为例介绍DSP的时序。TMS320VC5416将寻址范围分为存储器空间、程序空间和I/O空间。其中,对I/O空间的操作由地址线、数据线和三根信号线IOSTRB、R/W和IS来完成,其时序图如图1所示。读操作和写操作由R/W信号线上的高低电平决定。如果不采用外部插入等待周期的方法,仅靠内部的等待周期设置寄存器,访问外部I/O空间时最多可以插入14个等
4、待周期。如果DSP运行在100MHz的主频上(实际上TMS320VC16可以运行在最高160MHz的主频上),也只有0.14s。这对于LCD来说来远远不够的。图2 LCD时序图(写操作)常见的192×64点阵的LCD(FM19264)实际上是由3块独立的64×64点阵LCD构成的,共享地址线和数据线,可由CS1、CS2和CS3分别选中。每小块LCD都有各自独立的指令寄存器和数据寄存器,由控制线D/I上的高低电平选择。数据的锁存或出现在数据线上由E信号决定。LCD主要控制管脚的功能如表1所示。对LCD写操作的时序图如图2所示。LCD的每次读写操作最少要1s。如果能使DSP对L
5、CD的访问象对高速设备访问一样,就能够最大限度地减小DSP资源的浪费,并且能够减少系统的复杂性,这就需要在FPGA中添加一个DSP与LCD之间的高速双向通道。表1 LCD主要控制管脚功能管脚名称功能描述CS1选中左边LCD,低有效CS2选中中间LCD,低有效CS3选中右边LCD,低有效D/I高:对数据寄存器操作低:对指令寄存器操作R/W高:读操作低:写操作ER/W为低(写操作)时,E信号的下降沿锁存数据R/W为高(读操作)、E为高时、LCD的数据出现在数据线上RESET复位信号,低有效D7D0数据对每块LCD的控制,是通过操作指令寄存器和数据寄存器实现的。在屏幕指定位置写入数据,要分三步(写入
6、行地址,写入列地址,写入数据)才能完成,不但耗时而且增加了软件编程的复杂程度。如果能够将指令和数据合在一起作为一条指令,那么设计一套简单的指令译码电路执行电路就可完成这项任务。2 硬件电路设计硬件框图如图3所示。LCD的原始控制指令如表2所示。表2 LCD原始控制指令指 令 码功 能R/WD/ID7D6D5D4D3D2D1D00000111111/0控制显示器的开关0011显示起始行(063)设定显示器从哪一行显示数据0010111页地址(07)设定页地址0001列埴 (063)设定列地址01写入LCD的数据 给显示器写数据11读出的状态读显示器状态10读出的数据读显示器数据LCD的显示画面按
7、8行为一页的方式进行划分,共64行分成8页。LCD具有列循环寻址功能,如果第一步设定了页地址和列地址,那么以后每次向LCD写入显示数据,列地址计数器就自动加一。除非再设定列地址,否则列地址就一直累加下去,直到63。这样就简化了写入工作。考虑到实际应用方便,可把一些常用的操作按指令的方式编码。所得到的DSP控制指令如下:控制显示器开关:0010 0000 1111 111x指定显示起始行:0100 0000 11xx xxxx指定列地址和页地址:0110 0yyy yyyy yxxxy:列地址(0191)x:行地址写入数据:1000 0000 xxxx xxxx读显示器状态:1010 0000
8、0000 0000读显示数据:1100 0000 0000 0000框图中微指令ROM在接口控制中起着决定性的作用,每条指令的执行都被看作一系列单步时序操作的集合。如果从ROM的某一地址开始依次读出ROM里的数据,那么在每一个数据位上就会出现随时间变化的电平跳变。这样就可以用它作为控制信号进行控制操作。由于ROM是并行输出的,如果用不同的数据位代表不同的控制信号线,就能很容量地实现各个信号线之间的同步操作。这样就能很容易形成时序图中的时序逻辑,而且扩展方便。在上述的指令表示中,通过对高3位进行译码,可以得到ROM寻址时的起始地址。ROM各个数据位的含义如下:LDRDFREED/IR/WERES
9、ETCS1CS2CS3其中,低七位是控制LCD的接口线,FREE是微程序执行完标志,每条指令所对应的微程序分为招待状态(有多条微指令,FREE位为0)和闲置状态(一条指令,FREE位为1)。当指令执行状态机检测到FREE位的上跳沿时,加载下一条指令。LD是数字寄存器从DSP获得数据时的加载信号,微程序执行过程中,在某些指令执行时需要加载数据,可由该信号完成。RD是数据寄存器从LCD读入数据的加载信号,主要完成从LCD读入数据。取指控制逻辑主要功能是根据FIFO的状态决定是否写入新的指令以及根据执行状态机的状态读入新的指令,填写状态寄存器,给出中断信号。page_break根据上述硬件设计,DSP的软件设计就大大简化了。以写入数据为例,在写入数据前先查询一下接口模块的状态,如果可以写入就写入数据;否则保持现有数据指针,等待下次写入。一读一写两次外部I/O操作,如果按7个等待周期、主频100MHz计算,只有140ns,加上判断所需时间,200ns内就可以完成写入数据。这里,7个等待周期是考虑到系统内还其它器件。如果只是对该接口模块操作,两三个等待周期是没有问题的。这样,100ns内就可完成写入数据。在实际应用中,采用上述接口控制模块来完成LCD控制大大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 餐厨厂员工培训
- 2026校招:奥克斯试题及答案
- 2026校招:AI产品经理题库及答案
- 2026中考冲刺动员大会校长发言稿:不负韶华我们陪你全力以赴
- 餐厅楼面培训内容
- 2026年康复治疗师高级专业技术资格专项技能考核试题及答案
- 小学2026学年度第二学期防溺水应急演练方案、总结
- 2025年统计与数据分析基础期末考试题及答案
- 劳模创新工作室技能大师工作室经费使用管理办法
- 监理单位总监理工程师安全责任书与监理合同协议书(一)
- NB-SH-T 0945-2017 合成有机酯型电气绝缘液 含2025年第1号修改单
- 2026年细胞治疗 免疫性疾病治疗项目商业计划书
- 化工复产安全培训
- NBT 11898-2025《绿色电力消费评价技术规范》
- 2026年总经理工作计划
- 四年级数学(三位数乘两位数)计算题专项练习及答案
- 肋骨骨折护理查房
- 家具制造工艺流程及质量检验标准
- 《老年视功能衰退评估规范》
- 项目资金预警管理办法
- 社会不教、精英不讲坎儿还得自己过(揭秘人才成长规律)
评论
0/150
提交评论